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 - better errors when ROM format wrong - debugging inside of bank switching??? relocated segs? - support 6502 test cases - DASM: macro forward refs - asm: support macro expansion - 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 - better disasm/listing selection - disasm for z80 - watchpoints - breakpoints - debug inspector - MAME single step (?) - step over - slowdown beam for all platforms? - kbd shortcuts - PC x86 support - show errors in list (maybe window list?) - can't see 1st line in editor sometimes (when scrolling cursor past bottom of screen) - online help - show self-modifying code insns left of editor - facade/kbd shortcuts for emulators, focus - update Javatari version? (and others?) - unify versioning - more UI tests - base-36 encoding for LZG - disassembler for uploaded ROMs - show tool-specific (readonly) include files - verilog debugging/reloading makes it slow - remove FPS and play controls when Verilog scope paused - compile stuck when errors unchanged - sound mute? - $error updates source editor - Verilog compile spins forever? - go to error in include files - BOM in upload/download? - stack view for Z80 platforms using memory map - online tools for music etc - tools (memory, disasm) use debugging state - text log debugging script - NES crt should mark raster pos when debugging - intro/help text for each platform - vscode/atom extension? - navigator.getGamepads FYI: Image links for the books on http://8bitworkshop.com/ are broken On the website the additional grey spacing next to the program line numbers is not dynamically resized when the web browser window size is changed. Intentional? WEB WORKER FORMAT {code,platform,tool,dependencies} {preload} new: {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 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: sources:{ :{lines, asmlines, listing} } } add file to errors