diff --git a/notes/todo.md b/notes/todo.md index fbe5cdb..e2a0647 100644 --- a/notes/todo.md +++ b/notes/todo.md @@ -1,8 +1,11 @@ # To do +## Next + +- [ ] **Implement "At start up, `JMP ($FF)`** + ## Research -- [ ] Learn how the C64's PC gets initialized (what is the initial value? how is it set?) - [ ] Review CHIP-8 - read about the spec / ISA - read these, and add them to the bibliography: @@ -16,8 +19,6 @@ ## Design - [ ] Add a flag for bank-switching to the ~zero-page -- [ ] Move the initial IP value, to eliminate the gap between it and the keypad pointer - - see paper notes - [ ] Consider adding a VIP-style keypad-based machine code monitor - [ ] reconsider ISA order in light of supercat comment here - [Why didn't the 6503 have increment/decrement opcodes for A?](https://retrocomputing.stackexchange.com/questions/13023/why-didnt-the-6502-have-increment-decrement-opcodes-for-a) @@ -46,8 +47,9 @@ - [ ] Return pure machine code when printing to stdout (and not in debug mode) - [ ] Pass asm line thru to cpu to print when debugging - - asm: create a second array that stores every line with code (nor blank or comment only lines) + its line number - - cpu: accept an optional debugging array, print line # and statement + - [x] asm: create a second array that stores every line with code (nor blank or comment only lines) + its line number + - [ ] asm: pass that array as a return value + - [ ] cpu: accept an optional debugging array, print line # and statement - [ ] Validate labels ### CPU