Nintendo - Game Boy / Color (Gearboy)¶
Background¶
Gearboy is an open source, cross-platform, Nintendo Game Boy (DMG) / Game Boy Color (GBC) emulator written in C++.
- 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.
- Sound emulation using SDL Audio and Gb_Snd_Emu library.
- Battery powered RAM save support.
- Save states.
- Game Genie and GameShark cheat support.
- Bootrom (BIOS) 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, ...) 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 bootrom (BIOS) files to work but they can be used optionally.
When the bootrom is enabled it will execute as in original hardware, causing invalid roms to lock or forcing hardware like GB Pocket or GBA, depending on the bootrom file.
Required or optional firmware files go in the frontend's system directory.
Attention
If you’d like to use any bootrom, you can place the following files in RetroArch's system directory. Then, you need to enable DMG Bootrom and/or Game Boy Color Bootrom core options for these bootrom files to be used.
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 | ✔ |
RetroAchievements | ✔ |
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 core provided FPS is 59.7275005696
- The Gearboy core's core provided sample rate is 44100 Hz
- The Gearboy core's base width is 160
- The Gearboy core's base height is 144
- The Gearboy core's max width is 160
- The Gearboy core's max height is 144
- The Gearboy core's core provided aspect ratio is 10/9
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 in the rom.
- 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)
Select which Memory Bank Controller (MBC or mapper) is emulated.
- Auto selects the best MBC based in the rom.
- ROM Only forces no MBC.
- MBC 1 forces MBC 1.
- MBC 2 forces MBC 2.
- MBC 3 forces MBC 3 + RTC.
- MBC 5 forces MBC 5.
- MBC 1 Multicart forces MBC 1 Multicart.
-
DMG Palette [gearboy_palette] (Original|Sharp|B/W|Autumn|Soft|Slime)
Select a color palette for Game Boy DMG games.
-
DMG Bootrom [gearboy_bootrom_dmg] (Disabled|Enabled)
This option will enable/disable bootrom for Game Boy DMG model. For this to work, the
dmg_boot.bin
file must exist in the Retro Arch's system directory. -
Game Boy Color Bootrom [gearboy_bootrom_gbc] (Disabled|Enabled)
This option will enable/disable bootrom for Game Boy Color model. For this to work, the
cgb_boot.bin
file must exist in the Retro Arch's system directory. -
Allow Up+Down / Left+Right [gearboy_up_down_allowed] (Disabled|Enabled)
Enabling this will allow pressing / quickly alternating / holding both left and right (or up and down in some games) directions at the same time.
This may cause movement based glitches to occur in certain games.
It's best to keep this core option disabled.
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)