mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-04-13 04:12:33 -05:00
240 file-level entries used notes: instead of the canonical note: field. verify.py and cross_reference.py only read note:, so these were silently ignored.
124 lines
4.5 KiB
YAML
124 lines
4.5 KiB
YAML
emulator: SameBoy
|
|
type: libretro
|
|
core_classification: official_port
|
|
source: "https://github.com/libretro/SameBoy"
|
|
upstream: "https://github.com/LIJI32/SameBoy"
|
|
profiled_date: "2026-03-25"
|
|
core_version: "0.15.4"
|
|
display_name: "Nintendo - Game Boy / Color (SameBoy)"
|
|
cores:
|
|
- sameboy
|
|
systems:
|
|
- nintendo-gb
|
|
- nintendo-gbc
|
|
- nintendo-sgb
|
|
|
|
notes: |
|
|
SameBoy is a high-accuracy Game Boy, Game Boy Color and Super Game Boy
|
|
emulator by LIJI32 (official_port: same author maintains upstream and
|
|
libretro fork).
|
|
|
|
All boot ROMs are optional. SameBoy compiles open-source boot ROM
|
|
replacements from BootROMs/*.asm and embeds them into the libretro
|
|
binary (extern arrays dmg_boot, cgb_boot, agb_boot, sgb_boot,
|
|
sgb2_boot in libretro.c:129-130). These are SameBoy-authored
|
|
replacements, not Nintendo originals.
|
|
|
|
The libretro port (boot_rom_load, libretro.c:512-588) tries to load
|
|
an external boot ROM from the system directory first. Filename is
|
|
constructed as "{model}_boot.bin". If missing, the embedded boot ROM
|
|
is used as fallback.
|
|
|
|
Boot ROM selection depends on the sameboy_model core option
|
|
(request_boot_rom in Core/gb.c:1587-1625):
|
|
DMG_B -> GB_BOOT_ROM_DMG -> dmg_boot.bin
|
|
SGB_NTSC/PAL -> GB_BOOT_ROM_SGB -> sgb_boot.bin
|
|
SGB2 -> GB_BOOT_ROM_SGB2 -> sgb2_boot.bin
|
|
CGB_A..E -> GB_BOOT_ROM_CGB -> cgb_boot.bin
|
|
AGB_A/GBP_A -> GB_BOOT_ROM_AGB -> agb_boot.bin
|
|
|
|
.info declares firmware_count=2 (dmg, cgb only). Actual reachable
|
|
files in the libretro port are 5 (adds sgb, sgb2, agb).
|
|
|
|
Unreachable boot ROMs in the libretro port (array entries exist in
|
|
boot_rom_load but no model option triggers them):
|
|
- dmg0_boot.bin: GB_MODEL_DMG_0 commented out (Core/gb.h:100)
|
|
- mgb_boot.bin: GB_MODEL_MGB active but not exposed by core options
|
|
- cgb0_boot.bin: GB_MODEL_CGB_0 active but not exposed by core options
|
|
Upstream standalone (v1.0.3) supports these plus cgbE_boot.bin and
|
|
agb0_boot.bin (10 boot ROM types total).
|
|
|
|
No validation performed on loaded boot ROMs. GB_load_boot_rom_from_buffer
|
|
(Core/gb.c:266-273) does a plain memcpy capped at 0x900 bytes.
|
|
|
|
files:
|
|
- name: "dmg_boot.bin"
|
|
system: nintendo-gb
|
|
description: "Game Boy (DMG) boot ROM"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 256
|
|
source_ref: "libretro.c:519,530,556 (boot_rom_load); Core/gb.c:1594 (request_boot_rom)"
|
|
|
|
- name: "sgb_boot.bin"
|
|
system: nintendo-sgb
|
|
description: "Super Game Boy (SGB) boot ROM"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 256
|
|
source_ref: "libretro.c:521,532,556; Core/gb.c:1600-1604"
|
|
note: "Used for SGB_NTSC, SGB_PAL models. Also loaded when borrowing SGB border (Core/gb.c:264)."
|
|
|
|
- name: "sgb2_boot.bin"
|
|
system: nintendo-sgb
|
|
description: "Super Game Boy 2 (SGB2) boot ROM"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 256
|
|
source_ref: "libretro.c:522,533,556; Core/gb.c:1607"
|
|
|
|
- name: "cgb_boot.bin"
|
|
system: nintendo-gbc
|
|
description: "Game Boy Color (CGB) boot ROM"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 2304
|
|
source_ref: "libretro.c:524,535,556; Core/gb.c:1613-1618"
|
|
note: "Used for CGB revisions A through E in the libretro port."
|
|
|
|
- name: "agb_boot.bin"
|
|
system: nintendo-gbc
|
|
description: "Game Boy Advance in GBC mode (AGB) boot ROM"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 2304
|
|
source_ref: "libretro.c:525,536,556; Core/gb.c:1621"
|
|
note: "Enables GBA-enhanced palettes in compatible GBC games."
|
|
|
|
builtin_boot_roms:
|
|
description: |
|
|
Open-source boot ROM replacements compiled from BootROMs/ assembly.
|
|
Not Nintendo originals.
|
|
sources:
|
|
- "BootROMs/dmg_boot.asm -> dmg_boot (256 bytes)"
|
|
- "BootROMs/sgb_boot.asm -> sgb_boot (256 bytes)"
|
|
- "BootROMs/sgb2_boot.asm -> sgb2_boot (256 bytes)"
|
|
- "BootROMs/cgb_boot.asm -> cgb_boot (2304 bytes)"
|
|
- "BootROMs/agb_boot.asm -> agb_boot (2304 bytes)"
|
|
prebuilt_hashes:
|
|
dmg_boot.bin:
|
|
md5: "60f1d849a435e9053b8ac0fd5776804a"
|
|
sha1: "da853c8102acfff6b8e5a973ce0cd181f3dbb709"
|
|
sgb_boot.bin:
|
|
md5: "be77bbd03f8675478f6e3d2176f3cb56"
|
|
sha1: "27267e45c8408857267231ba6c18bfbd052536e2"
|
|
sgb2_boot.bin:
|
|
md5: "b4331a9e612b4738867a30af9c96df52"
|
|
sha1: "576678d0fc3892b80471d7067ce6014e6af77ed5"
|
|
cgb_boot.bin:
|
|
md5: "6b68be48dab6a7298a8c07e00c136b4e"
|
|
sha1: "9884b972110a63c9e86fb3bd241bd2e39ca82bb9"
|
|
agb_boot.bin:
|
|
md5: "7e095aa30941da3086fa0e9221335370"
|
|
sha1: "3b6231bdf840fb889f402d0ae89f21adb077323a"
|