- Basic protobuf setup
- Ack
- Client/server setup
- Create initial emulator
- Options
- Ack
- OpenGL and UI
- Initial startup screen (emulator or serial)
- Run emulator (as thread)
- Initial ack
- Treat errors
- Connect to real hardware
- Auto-detect serial port
- Start real hardware CHIP-8 project
- Memory commands in proto
- Memory commands in library (client/server)
- Memory in emulator
- Memory in debugger
- Create debugger model
- Memory in computer (CHIP-8)
- Ready signal
- Treat communication errors
- Can the user emulator be a DLL?
- Main menu
- Config window
- Demo window
- Move machine id to Lua and library
- Move compilation to library
- Implement Compile & Upload
- Run emulator independently
- What else can be moved to the library
- Start emulator from client
- Serial port synchronization
- Refactor UI debugger
- Review model
- Add emulator path
- Create own ini management
- Fix error when loading machine multiple times
- Install and test chip-8 compiler
- Create interfaces (debugging info, compiler output, ROM, and file list, location in memory)
- Compile
- Upload to ROM
- Memory is not uploading
- Ordering issue when building in parallel
- ./findserial.py path
- Protobuf messages
- Registers in machine definition
- Library request/response
- Show code in window
- Color PC
- Syntax highlighting
- Step (simple, advanced)
- Protobuf
- Library
- UI
- Move selected line
- Breakpoints
- Protobuf
- Library
- UI
- Clear breakpoints button
- What else is missing?
- Registers/flags window
- Stack in memory window
- Show PC in memory window
- Cycle window
- Run
- Start running
- UI running (restrict buttons, show running indication)
- Breakpoint hit
- Scroll to position when breakpoint hit/pause
- Get run updates
- Start running
- Pause
- Next
- Watch source code
- Recompilation support
- Check if responses from server are correct (ex. number of registers match)
- Choose theme
- Configuration: debugging level
- Check for message sizes
- Remove malloc from server
- Autogenerate max from options file (?)
- Increase message size (2 bytes or protobuf format)
- Increase size of the arrays (max 2 kB)
- Reduce int sizes
- Terminal size from Lua
- Protobuf commands:
- Terminal RX/TX proto
- Client/server
- Terminal UI
- Terminal
- Choose raw/ANSI
- New line (CR, LF, CR+LF)
- Clear button
- Write to the terminal
- Raw
- ANSI
- Save terminal config
- Terminal
- Keyboard input
- Mid-step
- While running
- Multiple memories (for SDCard, etc...)
-
memories
in Lua/machine - Protobuf / library
- Multiple memories in debugger
-
- Config
- Windows are keeping visible on restart, even after closed
- UI
- Cycle in reverse order
- Lua library (client, server)
- Documentation (sample emulator)
- Server function to push character
- Push character when running
- Key capture: fix issue with SHIFT
- Report error on incorrect instruction (or other error)
- Versioning, packaging
- Build release by default
- Fix tests
- make install
- check for dependencies
- compile on Linux
- Documentation
- Redo build system
- Reorganize dependencies
- Fetch git submodules
- Test on linux
- Fix warnings
- Debugging build?
- Autodetect
- Sample emulator?
- Adjust README
- Fix tests
- Separate library in a different repo
- Fix tabs in the editor
- Backspace not deleting previous character
- Restart debugger
- Add breakpoint while running
- Save if last execution was emulator or real hardware
- Better syntax highlighting (?)
- Documentation
- LuaJIT and emulator in Lua (FFI support?)
- Unix socket support (for emulator faster speed), TCP socket (for microcontroller wifi support)
- Improve config class to manage variables as if they were C++ variables
- Logging into a Window (see Demo -> Configuration -> Capture)