-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathTODO
67 lines (63 loc) · 3.08 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
TODO:
_FUNCTIONAL:
* Verify 65816 core
- Update (2023-06-28): in progress... waiting on ZEDIAC to be functional so some
"real HW" tests can be done to verify the online documentation available.
- Update (2023-08-22): Some testing is complete. (ProcessorTests)
* Check 65816 disassembler output
* Figure out how to detect of the socket closed in the UART (almost there...)
* Clean up UART code
* Add correct resetting of UART IRQ flags in IIR (16C750)
* Figure out why the program black screen freezes on startup sometimes
- Update (2023-06-10): I have not had this happen in a long time; it may be fixed
* Instruction history has blank space at top if all are NOPs/BRKs (i.e. nothing's changing)
- Update (2023-06-24): This happens when the instr hist. is taller than the max inst hist
memory depth.
* ^Z does not resume properly if another TUI program is opened during backgrounded time (for example, emacs)
- Update (2023-06-28): This only *sometimes* happens
_FEATURES:
* Add save (and restore) of full sim state to a file (oh boy...)
* Update cli parser to use option-parser from SLIME
* Look into nl()/nonl() in ncurses
* Allow multiple symbols at same address
* Disassembler to use symbol table for operands
* Improve help menu to have "tabs" which are accessible via the number keys to access multiple pages
* Consider sigwinch handler for screen resize?
* Enable/disable mouse
* Command to switch mouse scrolling direction
* Click on CPU flags to toggle (what, you thought this wasn't a GUI? ;)
TODONE:
* Help menu (multi-level)
* Instruction history display
* Properly initialize hist and watch structs
* irq [set|clear]
* nmi [set|clear]
* Add memory store command syntax
* "exit" command
* "save" command -> dumps memory & CPU
* Add file loading
* move save/load to functions to enable cli arg loading of files
* Add cli loading of files
* Add commands 'cpu [reg] val' to directly modify the CPU
* Add "fast run mode"
* Add block write/read functions to memory_t wrapper functions (to facilitate overlay of simulated I/O devices)
* Add break points
* Optimize memory in memory_t so each address location doesn't take 64bits
* Add a socket listener (AF_UNIX, SOCK_STREAM) to emulate some form of UART (65C51 with and w/o TX flag bug)
* Manually changing the PC via commands incorrectly adds previous PC instruction to history. (Fix this)
* Add macro file or command line quoted command parsing
* Fix crash on F6 during RUN mode
* Pressing F12 while running does not exit
* Clean up UART interface
* Add UART to docs (help & README)
* Enable setting of UART port #
* Enable disabling of UART on startup so a port is not always requested to run the sim
* Rename "Step Over" (F6) to "Skip instruction"
* Add ^Z backgrounding support
* Move cpu core into its own folder
* Fix bug where `mw2 mem c000` causes a blank window to appear
* Allow loading a symbol list file for breakpoints
* Add command history
* Clean up build system
* Pressing "Enter" to execute a blank command still adds that to the history
* Fix uppercase-auto-lowercased issue with command parser for symbols with upppercase letters