lc3-vm/TODO.txt
dogeystamp d8a2bfd906
added extras
- TODO.txt
- programs/boys.obj
- programs/rogue.obj
2024-01-20 12:58:35 -05:00

45 lines
864 B
Plaintext

https://www.jmeiners.com/lc3-vm/
https://www.jmeiners.com/lc3-vm/supplies/lc3-isa.pdf
https://www.rodrigoaraujo.me/posts/lets-build-an-lc-3-virtual-machine/
[x] opcode enum
[x] register getter/setter
[x] condition flags enum
[x] function to update the condition flags based on a register
[x] memory getter/setter
[x] read file as big-endian 2-byte instructions into memory
[x] fetch-execute loop
[x] implement execute
[x] function: get opcode from instruction
[x] match opcode to function
[x] implement opcodes
[x] LEA
[x] ADD (reg)
[x] ADD (immediate)
[x] AND (reg)
[x] AND (immediate)
[x] BR
[x] JMP
[x] JSR
[x] JSRR
[x] LD
[x] LDI
[x] LDR
[x] LEA
[x] NOT
[x] RET
[!] RTI
[x] ST
[x] STI
[x] STR
[x] TRAP (see jmeiners article)
[x] getc
[x] out
[x] puts
[x] in
[x] putsp
[x] halt
[x] keyboard mem-mapped i/o
[x] KBSR
[x] KBDR