Nintendo - Game Boy / Color (Gambatte)

Background

Gambatte is an accuracy-focused, open-source, cross-platform Game Boy Color emulator written in C++. It is based on hundreds of corner case hardware tests, as well as previous documentation and reverse engineering efforts.

The Gambatte core has been authored by

The Gambatte core is licensed under

A summary of the licenses behind RetroArch and its cores have found here.

BIOS

Required or optional firmware files go in the frontend's system directory.

Attention

The 'Use official bootloader' core option must be set to On in order for these BIOS files to be used.

Filename Description md5sum
gb_bios.bin Game Boy BIOS - Optional 32fbbd84168d3482956eb3c5051637f5
gbc_bios.bin Game Boy Color BIOS - Optional dbfce9db9deaa2567f6a84fde55f9680

Extensions

Content that can be loaded by the Gambatte core have the following file extensions:

RetroArch database(s) that are associated with the Gambatte core:

Features

Frontend-level settings or features that the Gambatte core respects.

Feature Supported
Restart
Saves
States
Rewind
Netplay
Core Options
RetroAchievements
RetroArch Cheats
Native Cheats
Controls
Remapping
Multi-Mouse
Rumble
Sensors
Camera
Location
Subsystem
Softpatching
Disk Control
Username
Language
Crop Overscan
LEDs

Directories

The Gambatte core's library name is 'Gambatte'

The Gambatte core saves/loads to/from these directories.

Frontend's Save directory

File Description
*.srm Cartridge battery save

Frontend's State directory

File Description
*.state# State

*Frontend's System directory

File Description
palettes/Default.pal Global custom palette
palettes/'content-name'.pal Per-game custom palette

Geometry and timing

Custom palettes for Game Boy games

The 'GB Colorization' core option must be set to custom.

Create a folder called "palettes" in RetroArch's system directory. Then, you can place custom palette files (.pal) inside the "palettes" folder

You can define different palettes for specific games by creating a .pal file in the "palettes" folder with 'INTERNALROMNAME.pal' or "rom-name.pal". If no specific palette is found for a ROM then the default palette is used.

You can also define a palette to be used for all Game Boy games by creating a .pal file in the "palettes" folder named "Default.pal"

??? note "Custom palettes can be created from the GUI in standalone Gambatte"

Core options

The Gambatte core has the following option(s) 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.

??? note "GB Colorization: Off"

??? note "GB Colorization: auto (in this case, a game-specific SGB palette is auto-selected)"

??? note "GB Colorization: GBC"

??? note "Internal Palette: GB - DMG"

??? note "Internal Palette: GB - Pocket"

??? note "Internal Palette: GB - Light"

??? note "Internal Palette: GBC - Blue"

??? note "Internal Palette: GBC - Brown"

??? note "Internal Palette: GBC - Dark Blue"

??? note "Internal Palette: GBC - Dark Brown"

??? note "Internal Palette: GBC - Dark Green"

??? note "Internal Palette: GBC - Grayscale"

??? note "Internal Palette: GBC - Green"

??? note "Internal Palette: GBC - Inverted"

??? note "Internal Palette: GBC - Orange"

??? note "Internal Palette: GBC - Pastel Mix"

??? note "Internal Palette: GBC - Red"

??? note "Internal Palette: GBC - Yellow"

??? note "Internal Palette: SGB - 1A"

??? note "Internal Palette: SGB - 1B"

??? note "Internal Palette: SGB - 1C"

??? note "Internal Palette: SGB - 1D"

??? note "Internal Palette: SGB - 1E"

??? note "Internal Palette: SGB - 1F"

??? note "Internal Palette: SGB - 1G"

??? note "Internal Palette: SGB - 1H"

??? note "Internal Palette: SGB - 2A"

??? note "Internal Palette: SGB - 2B"

??? note "Internal Palette: SGB - 2C"

??? note "Internal Palette: SGB - 2D"

??? note "Internal Palette: SGB - 2E"

??? note "Internal Palette: SGB - 2F"

??? note "Internal Palette: SGB - 2G"

??? note "Internal Palette: SGB - 2H"

??? note "Internal Palette: SGB - 3A"

??? note "Internal Palette: SGB - 3B"

??? note "Internal Palette: SGB - 3C"

??? note "Internal Palette: SGB - 3D"

??? note "Internal Palette: SGB - 3E"

??? note "Internal Palette: SGB - 3F"

??? note "Internal Palette: SGB - 3G"

??? note "Internal Palette: SGB - 3H"

??? note "Internal Palette: SGB - 4A"

??? note "Internal Palette: SGB - 4B"

??? note "Internal Palette: SGB - 4C"

??? note "Internal Palette: SGB - 4D"

??? note "Internal Palette: SGB - 4E"

??? note "Internal Palette: SGB - 4F"

??? note "Internal Palette: SGB - 4G"

??? note "Internal Palette: SGB - 4H"

??? note "Internal Palette: Special 1"

??? note "Internal Palette: Special 2"

??? note "Internal Palette: Special 3"

Attention

Setting this option to 'always' will result in unexpected/suboptimal output when using 'GB' or 'SGB' internal color palettes, since these are intended for display on a normal TV/monitor rather than a Game Boy Color LCD panel.

??? note "Color correction: Off"

??? note "Color correction: fast"

??? note "Color correction: accurate"

Attention

This setting only takes effect when 'Color correction mode' is set to 'accurate'.

??? note "Color correction - frontlight position: central"

??? note "Color correction - frontlight position: above screen"

??? note "Color correction - frontlight position: below screen"

??? note "Dark Filter Level: 0%"

??? note "Dark Filter Level: 30%"

??? note "Game Boy bootloader"

??? note "Game Boy Color bootloader"

Attention

A number of games generate transparency effects (or additional shades of color) by drawing objects on alternate frames, relying on the LCD ghosting of original hardware to 'smooth out' the result. Notable examples are Wave Race, Ballistic and Chikyuu Kaihou Gun ZAS. In order for these games to render correctly, 'Mix frames' must be set to 'accurate' or 'fast'. More importantly, the rapid flickering that is produced by these games when 'Mix frames' is disabled can lead to a form of screen burn-in on certain types of LCD panel (that of the 3DS in particular).

??? note "Mix frames: Off"

??? note "Mix frames: accurate"

??? note "Mix frames: fast"

Joypad

RetroPad Inputs User 1 input descriptors
B
Select
Start
D-Pad Up
D-Pad Down
D-Pad Left
D-Pad Right
A

Compatibility

Game Issue
Command Master Crashes on start. Unemulated MBC7 mapper.
Game Boy Camera Crashes on start. Unemulated Pocket Camera mapper.
Game de Hakken!! Tamagotchi - Osutchi to Mesutchi Crashes on start. Unemulated TAMA5 mapper.
Kirby Tilt 'n' Tumble Crashes on start. Unemulated MBC7 mapper.
Net de Get: Mini-Game @ 100 Crashes on start. Unemulated MBC6 mapper.

Nintendo - Game Boy (+ Color)