26 lines
840 B
Markdown
26 lines
840 B
Markdown
# Dev notes — 2023-08-28
|
|
|
|
Two current goals:
|
|
|
|
## 1. Implement a new CLI interface
|
|
|
|
- New arg-parser
|
|
- Allow setting clock speed with a command line flag
|
|
|
|
|
|
## 2. Re-architect
|
|
|
|
- Move the bulk of cpu.js to cpu.lib.js
|
|
- Add a way to register functions to be called each cycle
|
|
- Create a new 'cardiograph.js'
|
|
- imports cpu.lib.js
|
|
- registers functions for logging, updating display
|
|
- (split those apart)
|
|
- provides terminal interface
|
|
- get machine code input from stdin (or like, file stream?)
|
|
- `./assembler.js | ./cardiograph.js
|
|
- see below re: changes to assembler
|
|
- Assembler
|
|
- Move CLI interface into assembler.js and delete run-assembler.js
|
|
- Add a --json flag, which causes the assembler to print the json of {machineCode, debugInfo} on stdin
|
|
- Otherwise, print hex/bin to stdin |