mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-21 11:19:11 -05:00
With colorization set to custom, a DMG game reads palettes/<rom>.pal, then <header title>.pal, then default.pal under the system directory (libretro.cpp:2012-2091). A user-made file, so the entry is unsourceable.
71 lines
3.1 KiB
YAML
71 lines
3.1 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: "d9d6cd06382d1ced30de34d56d3609452323dab1"
|
|
core_version: "v0.5.0"
|
|
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."
|