A simple esolang interpreter
-
@LucasJG25 yeah should of said I haven't checked it out... my bigger fuze product is done, but I keep wanting to add more to it
-
@JMM161437 Have you got a shared code for that?
-
I do but never posted it... not sure if I'm allowed to post showcase submission codes or not
-
@JMM161437 I see. Is this the digital circuits project you told me about?
-
@LucasJG25 no that one I'm working on now and it ain't even close to done... the one I'm working on that's basically done but feels needs more to it is my small 3 level 3D game called Galactic Bolts... I just implemented a lot of suggestions to it and am excited to show it off just not too sure if sharing the share ID would make sense if it gets into the showcase for everyone to download
-
@JMM161437 I see
-
@LucasJG25 yeah.. as for the electronics it's in the planning stages as for now with a small buggy prototype... so far I have logic gates, LEDs, power suppy, and switches to toggle
-
Sounds really interesting. Looking forward to try it out.
-
well when It's done I'll definitely let you know!
-
Added more commands. Now you can branch with B or b and return back to that point in the code where you branched and continue as is.
-
Ok, I think that will be enough for this Esolang now. With increase RAM/ROM capacity and larger screen buffer size. That should enable you guys to do whatever you like. As said above this will be my last upgrade to this language. Hope you guys have fun with it! :D
-
thanks! so much memory... endless possiblities -evil insane laughter-
-
@JMM161437 I've also changed the instruction operands. Now it's more easier to load and save to RAM, use RAM as a pointer, or with registers.
-
@LucasJG25 thats awesome! oh btw my Circuit Designer project I need help... should I simulate wire resistance and component overload if the voltage is too high on the power supply/ resistor value is too low to limit the current... also should I add a simulated AC power source or is that too much
-
@JMM161437 I think those are great ideas for your project. Plus, this could be a great way to teach electronics as well. So I'd say go for it!
-
good point @LucasJG25... might make it an educational type of project to learn at least the basics or electronics... thanks for your feedback!
-
The latest update is now live. Enjoy!!
-
So, I've been doing some reading on the 6502 assembly language and I'm thinking of adjusting the Esolang to enable labels to be used within the operands. I'm thinking that this will enable even more flexibility with the Esolang as I'm sure it's still difficult to create labels in the current version. Here is a BNF (Backus-Naur form) of the updated language and how it would work.
L -> <reg>, (<sym><num> | "*"<label>) C -> <reg>, (<sym><num> | "*"<label>) A -> <reg>, (<sym><num> | "*"<label>) a -> <reg>, (<sym><num> | "*"<label>) S -> <reg>, ("*"<label> | <sym><num>) J -> "*"<label> | <sym><num> j -> "*"<label> | <sym><num> g -> Get data from screen buffer--------------------------- P -> Display entire screen buffer | Imperative instruction p -> Acc => screenBuffer(reg_y * screenWidth + reg_x) | No operands for these | instructions. i -> input stream | R -> Return back to (B | b) | M -> switch modes | char | number ------------------------- B -> "*"<label> | <sym><num> b -> "*"<label> | <sym><num> Label Declaration: <label> "=" "$"<num> | @<label> <label> ::= ("a-z" | "A-Z")
-
UPDATE:
The labels are becoming more flexible. Lol, wow I just keep adding to this thing!Labels can now be assigned RAM addresses and be given names.
foo = $5; // This makes label foo become RAM[5] @example // This label is called an anonymous label since it is not assigned a RAM address and will instead use the current line number it resides on.
So instead of using #<number> all the time. You can now just give a RAM address a name. Say for example the RAM address for keyboard input 3999. You can put that into a label
Keyboard = $3999
Now you can use that label to load from input stream to the X register if you wanted
L X, Keyboard
-
Just did a little code test. Now this is looking like a real language. This is on the PC version by the way. Will port it to Fuze soon. Right now I need a break!!
//Test M; keyboard = $254; @loop L Acc, #0; i; L Acc, keyboard; C Acc, #0; J loop; P; C Acc, #10; J end; j loop; @end