Nintendo - Game Boy / Color (Gearboy)¶
Background¶
Gearboy is an open source, cross-platform Nintendo Game Boy (DMG), Game Boy Color (GBC), and Super Game Boy (SGB) emulator written in C++.
- Accurate emulation with support for ROM-only cartridges and MBC1, MBC1M, MBC2, MBC3, MBC5, MBC7, HuC-1, HuC-3, MMM01, Pocket Camera, TAMA5, Wisdom Tree, M161, Sachen MMC1/MMC2, PKJD, Bung/EMS, and Poke 2-in-1 mappers.
- Game Boy Color support.
- Super Game Boy support, including borders and color palettes.
- Battery-backed RAM save support.
- Save states.
- Boot ROM (BIOS) support.
- Game Genie and GameShark cheat support.
- 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.
The Gearboy core has been authored by:
The Gearboy core is licensed under:
A summary of the licenses behind RetroArch and its cores can be found here.
BIOS¶
Gearboy does not require boot ROM (BIOS) files, but they can be used optionally.
When enabled, a boot ROM runs as it does on original hardware. Invalid ROMs may fail to boot, and the selected boot ROM may enable hardware differences for systems such as Game Boy Pocket or Game Boy Advance.
Required or optional firmware files go in the frontend's system directory.
Attention
Place boot ROM files in RetroArch's system directory, then enable the DMG Bootrom or GBC Bootrom core option.
| Filename | Description | md5sum |
|---|---|---|
| dmg_boot.bin | Game Boy boot ROM - Optional | 32fbbd84168d3482956eb3c5051637f5 |
| cgb_boot.bin | Game Boy Color boot ROM - Optional | dbfce9db9deaa2567f6a84fde55f9680 |
Extensions¶
Content that can be loaded by the Gearboy core have the following file extensions:
- .gb
- .dmg
- .gbc
- .cgb
- .sgb
RetroArch database(s) that are associated with the Gearboy core:
Features¶
Frontend-level settings or features that the Gearboy core respects.
| Feature | Supported |
|---|---|
| Restart | ✔ |
| Screenshots | ✔ |
| Saves | ✔ |
| States | ✔ |
| Rewind | ✔ |
| Netplay | ✔ |
| Core Options | ✔ |
| Memory Monitoring (achievements) | ✔ |
| RetroArch Cheats - Game Genie | ✔ |
| RetroArch Cheats - GameShark | ✔ |
| Native Cheats | ✕ |
| Controls | ✔ |
| Remapping | ✔ |
| Multi-Mouse | ✕ |
| Rumble | ✕ |
| Sensors | ✔ |
| Camera | ✕ |
| Location | ✕ |
| Subsystem | ✕ |
| Softpatching | ✔ |
| Disk Control | ✕ |
| Username | ✕ |
| Language | ✕ |
| Crop Overscan | ✕ |
| LEDs | ✕ |
Directories¶
The Gearboy core's library name is 'Gearboy'
The Gearboy core saves/loads to/from these directories.
Frontend's Save directory
| File | Description |
|---|---|
| *.srm | Cartridge battery save |
| *.rtc | Real time clock save |
Frontend's State directory
| File | Description |
|---|---|
| *.state# | State |
Geometry and timing¶
- The Gearboy core's provided FPS is 59.7275005696
- The Gearboy core's provided sample rate is 44100 Hz
- The Gearboy core's base size is 160x144, or 256x224 when an SGB border is displayed
- The Gearboy core's max width is 256
- The Gearboy core's max height is 224
- The Gearboy core's provided aspect ratio is 10:9 without an SGB border and 8:7 with a border
Core options¶
The Gearboy core has the following options that can be tweaked from the core options menu. The default setting is bolded.
Settings with (restart) means that core has to be closed for the new setting to be applied on next launch.
-
Game Boy Model (restart) [gearboy_model] (Auto|Game Boy DMG|Game Boy Advance)
Select which hardware/model is emulated.
- Auto selects the best hardware based on the ROM header.
- Game Boy DMG forces original Game Boy hardware.
- Game Boy Advance enables Game Boy Advance hardware.
-
Mapper (restart) [gearboy_mapper] (Auto|ROM Only|MBC 1|MBC 2|MBC 3|MBC 5|MBC 1 Multicart|HuC 1|HuC 3|MMM01|Camera|MBC 7|TAMA5|Wisdom Tree|M161|Sachen MMC1|Sachen MMC2|PKJD|Bung/EMS|Poke 2-in-1)
Select which Memory Bank Controller (MBC or mapper) is emulated.
- Auto selects the best mapper based on the ROM header.
- ROM Only forces no MBC.
- MBC 1 forces MBC 1.
- MBC 2 forces MBC 2.
- MBC 3 forces MBC 3.
- MBC 5 forces MBC 5.
- MBC 1 Multicart forces MBC 1 Multicart.
- HuC 1 forces HuC 1.
- HuC 3 forces HuC 3.
- MMM01 forces MMM01.
- Camera forces Pocket Camera.
- MBC 7 forces MBC 7.
- TAMA5 forces TAMA5.
- Wisdom Tree forces the Wisdom Tree mapper.
- M161 forces the M161 mapper.
- Sachen MMC1 forces the Sachen MMC1 mapper.
- Sachen MMC2 forces the Sachen MMC2 mapper.
- PKJD forces the PKJD mapper.
- Bung/EMS forces the Bung/EMS flash cartridge mapper.
- Poke 2-in-1 forces the Poke 2-in-1 mapper.
-
Super Game Boy (restart) [gearboy_sgb] (Enabled|Disabled)
Run compatible games in Super Game Boy mode. Disable this option to run them as standard Game Boy games.
-
Super Game Boy Border [gearboy_sgb_border] (Enabled|Disabled)
Display the Super Game Boy border around the game screen. Disable this option to show only the 160x144 game screen.
-
DMG Palette [gearboy_palette] (Original|Sharp|B/W|Autumn|Soft|Slime)
Select a color palette for Game Boy DMG games.
-
GBC Color Correction [gearboy_color_correction] (Disabled|Enabled)
Enables color correction for Game Boy Color games to simulate the original GBC LCD screen output.
-
DMG Bootrom (restart) [gearboy_bootrom_dmg] (Disabled|Enabled)
Enable or disable the original Game Boy bootrom. For this to work, the
dmg_boot.binfile must exist in RetroArch's system directory. -
GBC Bootrom (restart) [gearboy_bootrom_gbc] (Disabled|Enabled)
Enable or disable the Game Boy Color bootrom. For this to work, the
cgb_boot.binfile must exist in RetroArch's system directory. -
Allow Up+Down / Left+Right [gearboy_up_down_allowed] (Disabled|Enabled)
Allow pressing, quickly alternating, or holding both left and right, or up and down, at the same time. This may cause movement-based glitches in some games.
-
Tilt Source (MBC7) [gearboy_tilt_source] (Mouse|Sensor|Analog Stick)
Select the input source for MBC7 tilt controls.
-
Sensor Sensitivity X (MBC7) [gearboy_sensor_sensitivity_x] (5|1-10)
Set the horizontal sensitivity when using sensor input for MBC7 tilt controls.
-
Sensor Sensitivity Y (MBC7) [gearboy_sensor_sensitivity_y] (5|1-10)
Set the vertical sensitivity when using sensor input for MBC7 tilt controls.
-
Sensor Invert X (MBC7) [gearboy_sensor_invert_x] (Disabled|Enabled)
Invert the horizontal axis when using sensor input for MBC7 tilt controls.
-
Sensor Invert Y (MBC7) [gearboy_sensor_invert_y] (Disabled|Enabled)
Invert the vertical axis when using sensor input for MBC7 tilt controls.
-
Mouse Sensitivity X (MBC7) [gearboy_mouse_sensitivity_x] (5|1-10)
Set the horizontal sensitivity when using mouse input for MBC7 tilt controls.
-
Mouse Sensitivity Y (MBC7) [gearboy_mouse_sensitivity_y] (5|1-10)
Set the vertical sensitivity when using mouse input for MBC7 tilt controls.
-
Mouse Invert X (MBC7) [gearboy_mouse_invert_x] (Disabled|Enabled)
Invert the horizontal axis when using mouse input for MBC7 tilt controls.
-
Mouse Invert Y (MBC7) [gearboy_mouse_invert_y] (Disabled|Enabled)
Invert the vertical axis when using mouse input for MBC7 tilt controls.
-
Analog Sensitivity X (MBC7) [gearboy_analog_sensitivity_x] (5|1-10)
Set the horizontal sensitivity when using analog stick input for MBC7 tilt controls.
-
Analog Sensitivity Y (MBC7) [gearboy_analog_sensitivity_y] (5|1-10)
Set the vertical sensitivity when using analog stick input for MBC7 tilt controls.
-
Analog Invert X (MBC7) [gearboy_analog_invert_x] (Disabled|Enabled)
Invert the horizontal axis when using analog stick input for MBC7 tilt controls.
-
Analog Invert Y (MBC7) [gearboy_analog_invert_y] (Disabled|Enabled)
Invert the vertical axis when using analog stick input for MBC7 tilt controls.
Joypad¶

| User 1 input descriptors | RetroPad Inputs |
|---|---|
| B | ![]() |
| Select | ![]() |
| Start | ![]() |
| Up | ![]() |
| Down | ![]() |
| Left | ![]() |
| Right | ![]() |
| A | ![]() |
Compatibility¶
External Links¶
- Official Gearboy Github Repository
- Libretro Gearboy Core info file
- Report Libretro Gearboy Core Issues Here
See also¶
Nintendo - Game Boy (+ Color)¶
- Nintendo - Game Boy / Color (Emux GB)
- Nintendo - Game Boy / Color (Gambatte)
- Nintendo - Game Boy / Color (SameBoy)
- Nintendo - Game Boy / Color (TGB Dual)
- Nintendo - Game Boy Advance (mGBA)
- Nintendo - Game Boy Advance (VBA-M)
- Nintendo - SNES / Famicom (higan Accuracy)
- Nintendo - SNES / Famicom (nSide Balanced)
- Nintendo - SNES / Famicom (Mesen-S)







