SameBoy
SameBoy emulates Nintendo Game Boy, Nintendo Game Boy Color and Nintendo Super Game Boy. It reads 5 files, none of them required: it starts games without them.
About this profile
Install this emulator's files
The installer finds your setup and its BIOS folder, then downloads only the files this emulator reads there and checks each one.
Open the Start menu. Type PowerShell and open it. Paste the line. Press Enter.
&([scriptblock]::Create((irm https://abdess.github.io/retrobios/i.ps1))) --emulator sameboyOpen Terminal, in Applications, then Utilities. Paste the line. Press Return.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator sameboyOpen a terminal. Paste the line. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator sameboySwitch to Desktop Mode. Open Konsole. Paste with Ctrl+Shift+V. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator sameboyInstall Termux, a terminal app. Run pkg install python and termux-setup-storage once. Then paste the line. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator sameboyOpen a terminal on the device. Or connect from a computer with SSH, a terminal over the network. Paste the line. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator sameboyTechnical 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/libretro.c:129-130). These are SameBoy-authored replacements, not Nintendo originals.
The libretro port (boot_rom_load, libretro/libretro.c:513-589) 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.
5 files: 0 required, 5 optional. 5 have an HLE fallback.
In this collection: 5 in repo and 0 missing.
Optional
Section titled “Optional”dmg_boot.bin optional in repo HLE fallback
Game Boy (DMG) boot ROM
- System: Nintendo Game Boy
- Size: 256 B
- Collection copy:
bios/Nintendo/ Game Boy/ dmg_boot.bin - Platforms:
gb/dmg_boot.bin: Recalbox
Packages and source
- Installed by the platform's own package on: recalbox
- Asked for by: libretro glue and emulator code, libretro port
- Source:
libretro/libretro.c:519(libretro glue),libretro/libretro.c:530(libretro glue),libretro/libretro.c:556(libretro glue),Core/gb.c:1594(emulator code, libretro port)
sgb_boot.bin optional in repo HLE fallback
Super Game Boy (SGB) boot ROM
- System: Nintendo Super Game Boy
- Used for SGB_NTSC, SGB_PAL models. Also loaded when borrowing SGB border (Core/gb.c:264).
- Size: 256 B
- Collection copy:
bios/Nintendo/ Super Game Boy/ sgb_boot.bin - Platforms:
sgb/sgb_boot.bin: Recalbox
Packages and source
- Installed by the platform's own package on: recalbox
- Asked for by: libretro glue and emulator code, libretro port
- Source:
libretro/libretro.c:521(libretro glue),libretro/libretro.c:532(libretro glue),libretro/libretro.c:556(libretro glue),Core/gb.c:1600-1604(emulator code, libretro port)
sgb2_boot.bin optional in repo HLE fallback
Super Game Boy 2 (SGB2) boot ROM
- System: Nintendo Super Game Boy
- Size: 256 B
- Collection copy:
bios/Nintendo/ Super Game Boy/ sgb2_boot.bin - Platforms:
sgb/sgb2_boot.bin: Recalbox
Packages and source
- Installed by the platform's own package on: recalbox
- Asked for by: libretro glue and emulator code, libretro port
- Source:
libretro/libretro.c:522(libretro glue),libretro/libretro.c:533(libretro glue),libretro/libretro.c:556(libretro glue),Core/gb.c:1607(emulator code, libretro port)
cgb_boot.bin optional in repo HLE fallback
Game Boy Color (CGB) boot ROM
- System: Nintendo Game Boy Color
- Used for CGB revisions A through E in the libretro port.
- Size: 2.2 KB
- Collection copy:
bios/Nintendo/ Game Boy Color/ cgb_boot.bin - Platforms:
gbc/cgb_boot.bin: Recalbox
Packages and source
- Installed by the platform's own package on: recalbox
- Asked for by: libretro glue and emulator code, libretro port
- Source:
libretro/libretro.c:524(libretro glue),libretro/libretro.c:535(libretro glue),libretro/libretro.c:556(libretro glue),Core/gb.c:1613-1618(emulator code, libretro port)
agb_boot.bin optional in repo HLE fallback
Game Boy Advance in GBC mode (AGB) boot ROM
- System: Nintendo Game Boy Color
- Enables GBA-enhanced palettes in compatible GBC games.
- Size: 2.2 KB
- Collection copy:
bios/Nintendo/ Game Boy Color/ agb_boot.bin - Platforms:
gbc/agb_boot.bin: Recalbox
Packages and source
- Installed by the platform's own package on: recalbox
- Asked for by: libretro glue and emulator code, libretro port
- Source:
libretro/libretro.c:525(libretro glue),libretro/libretro.c:536(libretro glue),libretro/libretro.c:556(libretro glue),Core/gb.c:1621(emulator code, libretro port)
Profile data
Section titled “Profile data”Built-in 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
-
Next steps
Section titled “Next steps”- Get your files, for the setup you play on
- Every system, and the files each one needs
- When a game does not start