Gearboy is a cross-platform Game Boy / Game Boy Color emulator written in C++ that runs on Windows, macOS, Linux, BSD, iOS, Raspberry Pi and RetroArch.
* Accurate CPU emulation, passes cpu_instrs.gb from blargg's tests.
* Accurate instruction and memory timing, passes instr_timing.gb and mem_timing.gb from blargg's tests.
* Supported cartridges: ROM, ROM + RAM, MBC1, MBC2, MBC3 + RTC, MBC5, HuC-1 and MBC1M (multicart).
* Accurate LCD controller emulation with correct timings and priorities including mid-scanline effects.
* Game Boy Color support.
* LCD screen ghosting effect as seen in the original Game Boy.
* LCD dot matrix effect.
* Sound emulation using SDL Audio and Gb_Snd_Emu library.
* Battery powered RAM save support.
* Save states.
* Compressed rom support (ZIP).
* Bootrom (bios) support.
* Game Genie and GameShark cheat support.
* Supported platforms (standalone): Windows, Linux, BSD, macOS, Raspberry Pi and iOS.
* Supported platforms (libretro): Windows, Linux, macOS, Raspberry Pi, Android, iOS, tvOS, PlayStation Vita, PlayStation 3, Nintendo 3DS, Nintendo GameCube, Nintendo Wii, Nintendo WiiU, Nintendo Switch, Emscripten, Classic Mini systems (NES, SNES, C64, ...), OpenDingux, RetroFW and QNX.
* Full debugger with just-in-time disassembler, cpu breakpoints, memory access breakpoints, code navigation (goto address, JP JR and CALL double clicking), debug symbols, memory editor, IO inspector and VRAM viewer including tiles, sprites, backgrounds and palettes.
* Windows and Linux Portable Mode by creating a file named portable.ini in the same directory as the application binary.
* Support for modern game controllers through gamecontrollerdb.txt file located in the same directory as the application binary.