Open
Description
Been working on this project for almost a year now, and want to take a break. Will definitely be handling other things while completing this roadmap. Once this hits 1.0, will try and let the project sit for a bit before doing any more ports or anything like that.
Phase 1 (Starting the Roadmap)
- Add this roadmap to the README
- Fix reported Github Languages to include Wasm
Phase 2 (Immediate TAS issues)
- Fix remaining Blarggs timing tests (interrupt timing)
- Track Total Executed Cycles #190
- Create an executeMultipleFrames() #162
Phase 3 (Benchmarking App)
Phase 4 (Debugger / Lib Features)
- Rebuild Debugger / Demo #168
- Update responsive-gamepad #143
- Add basic Keyboard controls to the debugger. #170
- Add Additional Values to IO Map / Value Tables #46
- Write a basic dissambler for debugger #47
- Add OAM / Sprite Viewer #44
- Add Color support to tile data viewer #43
- Add Palette Viewer #45
- #196
- Make a Key for save states on the debugger #93
- Fix Debugger Service Worker #186
- List Google Analytics Triggers for Benchmark / Debugger on README #198
- Allow Audio Debugging #217
- Write a basic memory viewer for debugger #226
- Debugger: Recently Loaded ROMs #237
- Allow CRUD Operations on Save States / Memory Storage for ROMs #238
- Move Out Shareable Code Between WasmBoy Debugger, and VaporBoy #239
- Remove the Google Memory Spreadsheet #240
- Update README with all the new Debugger Goodness. And Add a Privacy Section.
Phase 5 (Remaining MVP Core Work)
- Implement a Pixel FIFO / Don't Draw Entire Scanline at HBLANK #35 / Get horizontal scroll working.
- Add Wasm SF Talk to README and Wiki #280
- Fix WebAssembly not being listed as a project language.
- Change CPU cycles per frame...again #83
- Optional BIOS Selection #191
- Add Support for Inserting Boot ROM #92
- Support the GBC Enhanced Color Palettes for GB Games #261
- Create / test a plugin API
- Make an hqx plugin
- Create a GBC Tint Plugin
- Pass blarggs cgb_sound test
- Zombie mode for prehistorik man
- look through the Pandocs and gbdev wiki for additional issues
- Update vaporboy with new features
- Get the WasmBoy Debugger Verified by Google for Google Drive Picker #96
Phase 6 (More Tests)
- Pass blarggs dmg_sound test #283
- Pass blarggs interrupt_time test #284
- Pass blargg's oam_bug test #285
- Some more mooneye tests.
Phase 7 (Game Compatibility/Accuracy)
- Fix Link's Awakening Sword Crash #142
- Notable Games with Issues #49
- Debug Aevilia for better game compatibility #60
- Pokemon Red Intro messes up ScrollX in graphics #146
- Get Is that a Demo in your pocket working.
Phase 8 (Cleanup)
- Fix general TODO's around the project
- Code Cleanup
- Update / Finalize dependant npm packages made for the project
- Performance optimizations, compare to closure, and do any/all function inlinging
- GB Performance optimizations. Improve tile cache, look through gameboyonline and binjgb.
- Implement Batch processing on Timers with New Timer Implementation #194
- Fixed Circular Dependency Warnings #185
- Allowing deploying / using wasmboy outside of npm #165
- Reddit feedback #158
- Fix Eventual Sound Desync #145
- Configuring, or Resetting Wasmboy makes volume really quiet #140
- Move SmartWorkers into it's own NPM Module #258
- Cleanup API. May want to refactor the whole thing. See the Responsive Gamepad
design/
folder. And or do the design with tests. - Remove callback system in favor of plugins.
- Write docs