Yet another GameBoy and GameBoy Color emulator! A lot of the information had been figured out by reverse engineering software and hardware, complemented by the Pandocs and various online sources/blogs. The project is not in a perfect state but it works well with my childhood games. I would not have been able to kick things off this fast without the amazing help of the people over at the Emulation Development Discord server.
Pokemon Red Version (DMG) | Pokemon Gold Version (GBC) | Legend of Zelda - Link's Awakening DX (GBC) | Déjà Vu I & II: The Casebooks of Ace Harding (GBC) | Debug View (GBC) |
---|---|---|---|---|
- DMG and GBC support (incl. double speed mode)
- Support for ROM, MBC1, MBC3 and MBC5 (although none of the mappers I'd consider to be in a 100% functional state)
- MBC5 rumble pak support through Lovense sex toys
- Sound (mostly taken from this blog and this emulator)
- RAM-based save games (RAM is simply written to disk on emulator exit and loaded on startup if a
.sav
file exists) - Built-in open-source boot ROMs for DMG and GBC
- Scanline based renderer (no pixel FIFO)
- Various debug views
- ZIP file support
You might be wondering why I bothered implementing sex toy support. I do not have a clear answer to this question! I wondered how I could implement rumble support and since a PC cannot (usually?) vibrate, my brain came up with a vibrator feature.
Lovense support is not compiled-in by default, however, it is available through the nsfw
feature flag during compilation. Enabling this flag will force the emulator to start searching for nearby Lovense BLE products and connect to the first that matches a specific regex if rumble support is detected for a game.
Open me to see a demo of a game controlling the Lush 2
IMG_5048.MOV
Compile the emulator yourself or download a release. Note that providing a bootrom is completely optional and that --log-to-file
will enable instruction tracing be default.
Usage: ayyboy.exe [OPTIONS] <ROM>
Arguments:
<ROM>
Options:
--bios <BIOS>
--log-to-file
-h, --help Print help
- The CPU has been verified against the following tests and passes all of them:
- The PPU has been tested with
dmg-acid2
andcgb-acid2
and passes both
dmg-acid2 | cgb-acid2 |
---|---|