cardiograph-computer/notes/todo.md

1.8 KiB

To do

Research

Documentation

  • Improve docs for flags register
  • Play with JSDoc

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
  • Consider adding a VIP-style keypad-based machine code monitor

For consideration

Programming

  • Write some more complex test programs
    • Display (hex) numbers
    • Greater than
    • Minimal LOGO-ish interpreter for turtle graphics

Run-scripts

  • Replace with running ./cpu.js and ./assembler.js diretly

Simulator

Assembler

  • Validate labels
  • Return pure machine code when printing to stdout (and not in debug mode)

CPU

  • Add a mode that prints the display as text, but still animates

  • Make single-stepping work with simulated keypad

  • Allow running pre-compiled machine code

    I'm thinking of an interface like this...

      $ ./cpu.js -mc code.bin  
      $ ./cpu.js code.asm
      $ ./cpu.js --debug code.asm
    

    Full list of flags I want:

      -d --debug
      -s --singlestep
      -p --prettydisplay
      -mc --machinecode
    

Possible under-the-hood improvements

  • Do a proper binary version... (or lose the typed arrays?)
  • Extract debugging to its own module
  • DRY out addition and subtraction