This project is a really simple LC-3 VM written in Go. LC-3 or Little Computer 3 is a fictional computer system that is designed to teach students how to code in assembly language. My VM is originally based on an article written by Justin Meiners and Ryan Pendleton.
The VM is now able to execute the following programs:
- Fix 100% CPU issue when running programs
- Fix failing unit tests
- Fixed Trap Routines for displaying output.
- Fixed the STI Op Code.
- Migrated to Termbox for display and key input
- Added a flag for verbose debug output
- Added a flag to specify the target program
- Added support for CPU profiling
- Fixed an issue where GETC was not waiting for input
These resources came in handy when developing this VM:
- https://wchargin.github.io/lc3web/: I could load the programs and compare the expected behaviour against my VM.
MIT, See the LICENSE file.