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 play sound when debugging - 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 - show other TIA internal values - 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 - run apple CPU until boot - 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 - online help - show self-modifying code insns left of editor - facade/kbd shortcuts for emulators, focus - update Javatari version? (and others?) - WASM takes too long to load (esp. verilog) (https://developers.google.com/web/updates/2018/04/loading-wasm) - 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 - fix VCS mame - remove FPS and play controls when Verilog scope paused - compile stuck when errors unchanged - sound mute? 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