Files
libretro/emulators/gambatte.yml
T
Abdessamad Derraz e7aa9e870b fix: state libretro core versions from their code
Each libretro profile records version_basis and core_version is read
there at its pin. snes9x states 1.63 in snes9x.h, nestopia 2.0.0, mgba
0.11.0, vice 3.10, atari800's libretro tree 7.0.0. Cores whose build
takes its version from git carry the nearest tag in describe form
(flycast v2.7-90-ge88b0ce, ppsspp, duckstation, gearcoleco), placeholders
copied from .info files (Git, SVN) are replaced by the code's statement,
and a code that states none is null with kind none.
2026-10-27 19:21:27 +01:00

75 lines
3.3 KiB
YAML

emulator: Gambatte
type: libretro
core_classification: community_fork
source: "https://github.com/libretro/gambatte-libretro"
upstream: "https://github.com/sinamas/gambatte"
profiled_date: "2026-03-23"
source_commit: "7809bb68ee96c3e6c74e9d9c4c8bb09aa7c6801d"
core_version: "v0.5.0"
version_basis:
kind: file
path: "libgambatte/libretro/libretro.cpp"
pattern: 'library_version\s*=\s*"(v[0-9.]+)"\s*GIT_VERSION'
display_name: "Nintendo - Game Boy / Color (Gambatte)"
cores:
- gambatte
systems: [nintendo-gb, nintendo-gbc]
notes: |
Accuracy-focused GB/GBC emulator. No BIOS required for normal operation:
the built-in HLE boot sequence skips the Nintendo logo animation.
Core option gambatte_gb_bootloader (default: enabled) enables loading
official boot ROMs from the system directory for the real startup animation.
If missing, emulation works without them.
Boot ROM selection by hardware mode:
- DMG: gb_bios.bin (256 bytes)
- CGB or GBA: gbc_bios.bin (2304 bytes)
In GBA mode the core patches the CGB boot ROM at 0xF2 to fake GBA
detection (ld b,0x01), enabling GBA-enhanced features in compatible
GBC games.
The upstream standalone supports SGB boot ROM loading, but the libretro
port does not implement this.
With GB Colorization set to "custom", a DMG game reads the first of
palettes/<rom name>.pal, palettes/<header title>.pal and
palettes/default.pal under the system directory. Each line sets one of
the twelve background and sprite colours as Background0= to Sprite%2023=
with a 24-bit RGB value. Colours the file leaves out keep their previous
value (libgambatte/libretro/libretro.cpp:2012-2191,
libgambatte/libretro/libretro.cpp:2521-2522,
libgambatte/libretro/libretro.cpp:2582-2583).
files:
- name: "gb_bios.bin"
system: nintendo-gb
description: "Original Game Boy (DMG-01) boot ROM"
required: false
hle_fallback: true
min_size: 256
validation: [size]
source_ref: "source libgambatte/libretro/libretro.cpp:1426-1486 (get_bootloader_from_file), source libgambatte/libretro/libretro.cpp:1734-1742, source libgambatte/src/bootloader.cpp:30-65 (load)"
note: "Mapped at 0x0000-0x00FF, swapped out when register 0xFF50 is written."
- name: "gbc_bios.bin"
system: nintendo-gbc
description: "Game Boy Color (CGB-001) boot ROM"
required: false
hle_fallback: true
min_size: 2304
validation: [size]
source_ref: "source libgambatte/libretro/libretro.cpp:1426-1486 (get_bootloader_from_file), source libgambatte/libretro/libretro.cpp:1734-1742, source libgambatte/src/bootloader.cpp:30-65 (load)"
note: "Mapped at 0x0000-0x08FF with cartridge data preserved at 0x0100-0x01FF. Also used for GBA mode with a patch at 0xF2. Presence required for FORCE_CGB flag when hw mode is GBC or GBA."
- name: "default.pal"
path: "palettes/default.pal"
system: nintendo-gb
description: "Custom DMG colour palette"
required: false
unsourceable: "user-created palette, the core and its repository distribute none"
source_ref: "source libgambatte/libretro/libretro.cpp:2012-2091, source libgambatte/libretro/libretro.cpp:2521-2522, source libgambatte/libretro/libretro.cpp:2582-2583"
note: "Read only when GB Colorization is custom and no palette named after the ROM file or the header title exists."