# To do — Summary This is a quick todo list. For extended commentary, see [issues](issues.md). ## Open ### Todo - Finish WIP on run-cli arg parsing - Pass CYCLE_COUNT as a cli arg - (cpu) !! Fix overflow flag - Add a flag for bank-switching to the ~zero-page - Remove run-scripts and add the ability to run `./cpu.js` and `./assembler.js` directly -- cf. [#1](issues.md#1---improve-cli-interface) - [fix] (cpu) Make single-stepping work with simulated keypad ### Features - (cpu) allow arrow keys, too - [fix] (cpu) Execute `JMP $FF` on startup / Implement ROM — see [#2](issues.md#2---startup-execute-jmp-ff) - (assembler) Validate labels - (assembler) Extract debugging to its own module - (cpu) Consider adding a VIP-style keypad-based machine code monitor - (cpu) Add a mode that prints the display as text, but still animates - (cpu) Allow running pre-compiled machine code - (cpu) DRY out addition and subtraction - [Extended system (secret bonus operations)](../notes/2023-08-07--dev-notes.md) - (research) Review CHIP-8 - read about the spec / ISA - read these, and add them to the bibliography: - Steve Losh: https://stevelosh.com/blog/2016/12/chip8-input/ - https://tonisagrista.com/blog/2021/chip8-spec/ ### Documentation - Improve docs for flags register ### Testing - Display (hex) numbers - Greater than - Minimal LOGO-ish interpreter for turtle graphics ## Closed - 2023-08-26 - [fix] (logging) - 'undefined operand' situation is caused by assembling to an initial IP of $1C, which is an odd number - (assembler) Pass asm line thru to cpu to print when debugging ## Abandoned - (assembler) Return pure machine code when printing to stdout (and not in debug mode)