Azayaka is a free and open-source Game Boy and Game Boy Color emulator written in C++.
- Cycle-Accurate emulation.
- Console based Debugger.
- Audio emulation.
- Real-Time Clock support.
- Screen shots.
- Audio recording.
- Save states.
- Rewind.
- Disassembler(With Code/Data Log).
- Automated testing system.
- Emulates both the Game Boy(DMG) and Game Boy Color(CGB).
- Game Boy Printer.
- Link Cable(Experimental)
- Passes all of blargg's tests except oam_bug.
- Passes most of gekkio's Mooneye GB tests.
Azayaka supports the following cartridge-mappers:
- MBC1
- MBC1M
- MBC2
- MBC3
- MBC3+RTC
- MBC5
- Linux
- Mac OS
- Windows (Coming soon!)
Note: You can map different keys to the buttons by editing Azayaka's INI file.
Button | Key |
---|---|
A | Z |
B | X |
Start | Enter |
Select | Space |
Up | ↑ |
Down | ↓ |
Left | ← |
Right | → |
Function | Key |
---|---|
Turbo | Shift |
Slow-Motion | Alt |
Rewind | Backspace |
Toggle Fullscreen | Ctrl+F |
Pause/Unpause | Ctrl+P |
Reset | Ctrl+R |
Trigger Debugger | Ctrl+C |
Increase Volume | Plus |
Decrease Volume | Minus |
Load Savestate | F1-F10 |
Save Savestate | Ctrl + F1-F10 |
Take Screenshot | F11 |
Start/Stop recording Audio | F12 |
Requires CMake
- SDL2: For the frontend.
- libpng: For PNG screenshots. If you don't have it, BMPs will be used instead.
- OpenGL: For hardware accelerated graphics. If you don't have it, SDL will be used for the rendering.
mkdir build
cd build
cmake ..
make
Sorry, but I don't currently have a Windows Dev machine, but I should have a setup in just a couple of weeks. But in the mean time, I can't guaranty that Azayaka will compile on a Windows Box. My apologies.
./Azayaka-SDL [ROM or Directory Path] [Options...]
-d, --debug Run the emulator in debug mode
-s, --scale Scales the screen by the factor given
-g, --force-gb Force the emulator into GameBoy mode
-c, --force-gbc Force the emulator into GameBoy-Color mode
-l, --link Enable GameBoy Link-Cable
-p, --printer Enable GameBoy Printer
-D, --dump-usage Saves the ROM usage(CDL) to a file
--verbose Enable verbose debugging information
--force-sdl Force the emulator to use SDL as the Video-Driver
./Azayaka-tester [Test ROMs path] [Correct-Results CSV Path]
- Shay Green for blargg's tests.
- Joonas Javanainen for Mooneye GB tests.
- Antonio Niño Díaz for TCAGBD.
- Ben Smith(binji) for his article on implementing rewind.
- To all of the authors of the emulators that I used for inspiration.
- To you, for looking at my emulator!
Azayaka is licensed under GPL3. Copyright © 2020-2021 Zach Collins
"Game Boy" and "Game Boy Color" are trademarks of Nintendo. Azayaka is not affiliated with Nintendo in any way.