(issues) issues - Add "execute JMP FF on startup" issue
This commit is contained in:
parent
aafeeb572b
commit
68ae53a245
|
|
@ -17,4 +17,30 @@ Full list of flags I want:
|
||||||
-p --prettydisplay
|
-p --prettydisplay
|
||||||
-mc --machinecode
|
-mc --machinecode
|
||||||
|
|
||||||
|
### #2 - Startup: Execute `JMP $FF`
|
||||||
|
|
||||||
|
See [2023-08-24](../2023-08-24--dev-notes.md#cpu-start-up)
|
||||||
|
|
||||||
|
... say that there's a 1-byte ROM at $FF.
|
||||||
|
|
||||||
|
- `00-19` - display (5x5)
|
||||||
|
- `1A ` - pointer to display memory
|
||||||
|
- `1B ` - keypad: value of latest key pressed
|
||||||
|
- `1C ` - reserved for future use (bank switching flag)
|
||||||
|
- `1D ` - initial IP
|
||||||
|
- `1D-FE` - free
|
||||||
|
- `FF ` - ROM (unwriteable) - pointer to initial IP
|
||||||
|
|
||||||
|
- store `$1D` at `$FF`
|
||||||
|
- make CPU execute `JMP $FF` on startup
|
||||||
|
- make ROM unwriteable
|
||||||
|
|
||||||
|
More step-by-step:
|
||||||
|
|
||||||
|
- Change memory from a Uint8Array to a regular array,
|
||||||
|
and make every entry { number | { type: 'ROM', value: number }}
|
||||||
|
- Store ROM as an object in machine.config.js
|
||||||
|
- Load ROM data into memory at CPU startup (`startCPU(RAM, ROM)`)
|
||||||
|
|
||||||
|
|
||||||
## Closed
|
## Closed
|
||||||
Loading…
Reference in New Issue