wasmboy
wasmboy copied to clipboard
WasmBoy 1.0 GB/GBC Roadmap
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)
- [x] Add this roadmap to the README
- [x] Fix reported Github Languages to include Wasm
Phase 2 (Immediate TAS issues)
- [x] Fix remaining Blarggs timing tests (interrupt timing)
- [x] #190
- [x] #162
Phase 3 (Benchmarking App)
- [x] #189
Phase 4 (Debugger / Lib Features)
- [x] #168
- [x] #143
- [x] #170
- [x] #46
- [x] #47
- [x] #44
- [x] #43
- [x] #45
- [x] #196
- [x] #93
- [x] #186
- [x] #198
- [x] #217
- [x] #226
- [x] #237
- [x] #238
- [x] #239
- [x] #240
- [x] Update README with all the new Debugger Goodness. And Add a Privacy Section.
Phase 5 (Remaining MVP Core Work)
- [ ] #35 / Get horizontal scroll working.
- [x] #280
- [x] Fix WebAssembly not being listed as a project language.
- [x] #83
- [x] #191
- [x] #92
- [x] #261
- [x] Create / test a plugin API
- [x] Make an hqx plugin
- [ ] Create a GBC Tint Plugin
- [x] Pass blarggs cgb_sound test
- [x] Zombie mode for prehistorik man
- [ ] look through the Pandocs and gbdev wiki for additional issues
- [ ] Update vaporboy with new features
- [ ] #96
Phase 6 (More Tests)
- [ ] #283
- [ ] #284
- [ ] #285
- Some more mooneye tests.
Phase 7 (Game Compatibility/Accuracy)
- [x] #142
- [ ] #49
- [x] #60
- [x] #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
- [x] Performance optimizations, compare to closure, and do any/all function inlinging
- [ ] GB Performance optimizations. Improve tile cache, look through gameboyonline and binjgb.
- [ ] #194
- [ ] #185
- [ ] #165
- [ ] #158
- [ ] #145
- [ ] #140
- [ ] #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
Benchmark was a complete success! See the medium article: https://medium.com/@torch2424/webassembly-is-fast-a-real-world-benchmark-of-webassembly-vs-es6-d85a23f8e193