Commit Graph

4 Commits

Author SHA1 Message Date
Bobbi Webber-Manners 6dbf45c39c
v0.70: disassembler, immediate mode VM ops
- VM now prompts for filename to load bytecode from
- Added new EightBall disassembler (`disass`), removed disassembly printout from compiler
- Fixes to interpreter / compiler error reporting.  Should no longer report completely incorrect line numbers!
- Added new immediate mode VM instructions for load (`LDAWI`, `LDABI`, `LDRWI`, `LDRBI`), store (`STAWI`, `STABI`, `STRWI`, `STRBI`), and flow control (`JSRI`, `JMPI`, `BRCI`).  Modified compiler to use these new instructions.  This significantly improves code density and VM execution speed.
2018-05-21 13:58:41 -04:00
Bobbi Webber-Manners ea3a6a83e2
v0.68: compiler bug fixes, improved efficiency
- Fixed indentation of VM code. Turned on stack checks for GCC only.
- Added new `VM_DISCARD` VM instruction (and compiler support).  This makes the VM significantly more efficient.
- Configured Linux VM to be compatible with Apple II environment.
- Added line to force to interpret mode to prevent surprises.
- Compiler: fixed bug when exiting `for` loop using `return`.  The compiler was leaking a word on the evalutation stack after jumping out of the body of the `for` loop.
2018-05-13 13:59:40 -04:00
Bobbi Webber-Manners ed032c11ea
v0.58: Allow constant exprs for array dimensions 2018-05-03 01:12:21 -04:00
Bobbi Webber-Manners 11f99c9840
EightBall v0.5 - With Compile and Virtual Machine 2018-04-27 23:47:22 -04:00