mirror of
https://github.com/FranLMSP/rmg-001.git
synced 2024-11-26 19:21:32 +00:00
Rust Matrix Game - 001: Yet another Rust Gameboy emulator
roms | ||
screenshots | ||
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
README.md |
RMG-001
Rust Matrix Game - 001: Yet Another Rust Gameboy Emulator.
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
Any help or suggestion is welcome!
Screenshots
TODO
- CPU implementation
- Interrupts
- Timer
- Joypad (not configurable yet)
- PPU implementations
- MBC Implementations
- NoMBC
- MBC1 (Multicart not implemented)
- MBC2
- MBC3 (partially implemented, RTC missing)
- MBC5
- MBC6
- MBC7
- HuC1
- Save files
- Gameboy boot ROM (not important for now)
- Gameboy Color compatibility (WIP)
- Sound (WIP)
- Many code refactors and optimizations
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
- Blargg's test ROMs: https://github.com/retrio/gb-test-roms
- Mooneye test ROMs: https://github.com/Gekkio/mooneye-test-suite
- Sound emulation guide: https://nightshade256.github.io/2021/03/27/gb-sound-emulation.html
- The Ultimate Gameboy talk: https://youtu.be/HyzD8pNlpwI