rmg-001/README.md

38 lines
1.2 KiB
Markdown
Raw Normal View History

2021-10-20 19:33:11 +00:00
# RMG-001
Rust Matrix Game - 001: Yet Another Rust Gameboy Emulator.
2021-10-11 19:51:24 +00:00
2021-11-10 00:52:14 +00:00
This is just a fun project I'm making for learning and practice purposes. If you want a fully-featured Gameboy emulator, this is probably not the best one :P
2021-10-11 19:51:24 +00:00
Any help or suggestion is welcome!
## TODO
2021-10-29 00:42:15 +00:00
- [x] CPU implementation
2021-11-09 21:33:56 +00:00
- [x] Interrupts
2021-11-01 02:09:10 +00:00
- [x] Timer
- [x] Joypad (not configurable yet)
2021-11-09 21:33:56 +00:00
- [X] PPU implementations
2021-10-29 00:42:15 +00:00
- [x] Render the pixels
2021-11-09 21:33:56 +00:00
- [ ] MBC Implementations
- [x] NoMBC
2021-11-16 13:28:15 +00:00
- [x] MBC1
- [x] MBC2
2021-11-09 21:33:56 +00:00
- [ ] MBC3
- [ ] MBC5
- [ ] MBC6
- [ ] MBC7
- [ ] HuC1
- [ ] Web Assembly support (because this is a Rust project and it has to support Web Assembly)
- [ ] Gameboy boot ROM (Not important for now)
2021-10-11 19:51:24 +00:00
- [ ] Gameboy Color compatibility
- [ ] Sound
2021-11-09 21:33:56 +00:00
- [ ] Many code refactors and optimizations are needed
2021-11-10 00:52:14 +00:00
# Resources
This project would have been completely impossible without all the documentation and help that exists online for the Nintendo Gameboy:
- The EmuDev community
- Pandocs: https://gbdev.io/pandocs/
- Gameboy emulation guide: https://hacktixme.ga/GBEDG/
- CPU opcodes table: https://izik1.github.io/gbops/
- Opcodes behaviour: https://rgbds.gbdev.io/docs/v0.5.1/gbz80.7
- The Ultimate Gameboy talk: https://youtu.be/HyzD8pNlpwI