1
0
mirror of https://github.com/sehugg/8bitworkshop.git synced 2024-11-22 14:33:51 +00:00
8bitworkshop/doc/notes.txt

170 lines
4.7 KiB
Plaintext
Raw Normal View History

2016-12-16 01:21:51 +00:00
TODO:
- NaN in cycle count for macros
- debugging of scan line overflow
- confuse code/data in listing
- show memory locations hovering over lines
- don't check against ROM signatures
- support 6502 test cases
- DASM: macro forward refs
- asm: support macro expansion
2016-12-16 01:21:51 +00:00
- support narrow screens
- case sensisitvity looking for mismatch variables
- remove pulldown when no preset?
- can't step after reset (or when funky frame; TIA frame is out of sync)
- break on BRK/illegal opcode?
- multiple breakpoints, expression breakpoints
- watchpoints
- breakpoints
- debug inspector
- MAME single step (?)
2018-12-05 13:33:40 +00:00
- step over (line, instruction)
- slowdown beam for all platforms?
2018-06-26 23:57:03 +00:00
- PC x86 support
- show errors in list (maybe window list?)
2018-08-13 14:52:58 +00:00
- can't see 1st line in editor sometimes (when scrolling cursor past bottom of screen)
2018-06-30 14:26:41 +00:00
- online help
- show self-modifying code insns left of editor
- facade/kbd shortcuts for emulators, focus
- update Javatari version? (and others?)
2018-07-04 15:36:32 +00:00
- unify versioning
2018-07-06 06:42:01 +00:00
- disassembler for uploaded ROMs
- verilog debugging/reloading makes it slow
2018-07-13 19:39:08 +00:00
- remove FPS and play controls when Verilog scope paused
- compile stuck when errors unchanged
- sound mute?
- $error updates source editor
- go to error in include files
- online tools for music etc
- text log debugging script
2018-08-21 14:16:47 +00:00
- NES crt should mark raster pos when debugging
- intro/help text for each platform (+ memory map)
2018-08-23 12:49:14 +00:00
- vscode/atom extension?
2018-08-23 22:27:07 +00:00
- navigator.getGamepads
- VCS library
- better VCS single stepping, maybe also listings
2018-08-27 13:28:31 +00:00
- VCS skips step on lsr/lsr after run to line
- bring back the profiler!
2018-08-28 22:11:22 +00:00
- links to external tools in ide
2018-08-29 01:41:51 +00:00
- error msg when #link doesn't work
- figure out folders for projects for real
- why loadState() on verilog kill perf?
2018-08-29 17:43:46 +00:00
- click to break on raster position
- restructure src/ folders
2018-09-12 02:28:30 +00:00
- quantify verilog "graph iterations"
- debug bankswitching for funky formats
- spaces in filename don't parse code listing (DASM, maybe more)
- zmac: item_lookup needs better hash function
- 'undefined' for bitmap replacer
- astrocade: run to cursor in hello world messes up emulation
- requestInterrupt needs to be disabled after breakpoint?
- verilog: when paused scope doesn't work
- C/asm formatter
2018-09-24 14:18:08 +00:00
- fix WebAudio (https://news.ycombinator.com/item?id=18066474)
2018-10-01 17:36:26 +00:00
- share playable link w/ verilog?
2018-10-02 13:44:34 +00:00
- allow download of JSASM output
- update bootstrap
- $readmemb/h
- batariBasic: proper line numbers, debugging
2018-11-21 17:54:59 +00:00
- show player controls for each platform, allow touch support
- granular control over time scrubbing, show CPU state
2018-11-23 18:29:11 +00:00
- error showing replay div before rom starts
- compiler flags for final ROM build
- workermain: split build functions, better msg types
- vcs: INPTx needs to be added to control state
- rename, delete, save as
2018-12-05 13:33:40 +00:00
- sdcc: can't link asm files before c files (e.g. acheader.s must be last)
- what if >1 file with same name? (local/nonlocal/directory)
2018-11-27 20:14:22 +00:00
- what if .c and .s names collide?
2018-11-27 22:37:45 +00:00
- live coding URL
- memory viewer: ROM/RAM/VRAM/etc
2018-12-05 13:33:40 +00:00
- resize memory browser when split resize (any div resize)
- preroll the emulator so optimizer does its thing before loading rom
2018-12-03 15:51:47 +00:00
- wasm dynamic linking of emulators (https://github.com/WebAssembly/tool-conventions/blob/master/DynamicLinking.md)
2018-12-08 00:28:11 +00:00
- use alternate confirm/prompt dialogs
- https://github.com/jvilk/BrowserFS
- what if error in include file you can't edit b/c it never appears?
2018-08-07 20:15:45 +00:00
WEB WORKER FORMAT
{code,platform,tool,dependencies}
{preload}
new:
2018-07-04 15:36:32 +00:00
{updates,buildsteps}
[{filepath,platform,tool}]
implicit rules
- push/shift build steps
- preprocessor, compile, assemble, link
- access to intermediate files
only build files that have changed
build options
2018-06-25 23:47:40 +00:00
BUILD PROJECT
local/foo.project/*.*
build all files in project
send update for dependencies at startup (single file version)
should be able to change file w/o reloading (Not platform tho)
pulldown selects file in project, or goes back to parent
gotta preserve editor windows for each one - window list
make source/disasm window visible when debugging
gutter info/errors in all files
UI REFACTOR
editor
debugger
disasm view
memory
profile
errors
separate into files
window methods:
- set
- mode
- get
- changes
- cursorActivity (inspect)
- gutters (setCompileOutput)
- current line / gutter marker (setCurrentLine / clearCurrentLine)
- source map
- global symbols
- pixel editor / find comment (openBitmapEditorAtCursor)
- update debug window (200 ms)
- inspect variable
file store mirrors that on worker
worker result:
{
output:<rom>
sources:{
<path>:{lines, asmlines, listing}
}
}
add file to errors
http://www.playvectrex.com/designit/chrissalo/vectordisplay.htm
http://oldies.malban.de/secondvectrex/index.htm
2018-12-07 15:03:01 +00:00
PIXEL EDITOR
everything is an editor
back/forward propogation
encoded <-> raw + spec + palette(s) <-> full tilemap <-> selected tile/sprite/metasprite