mGBA Splitscreen - RetroBIOS¶
Technical notes
mGBA Splitscreen is a fork of mGBA that runs 2-4 linked GBA cores in a single libretro instance over mGBA's lockstep SIO driver. Built from the upstream mGBA tree with -DBUILD_LIBRETRO_SPLITSCREEN=ON (CMakeLists.txt:1036-1058), the fork adds the mgba-splitscreen link fixes (Four Swords handshake assist and a gated deadlock kick) on top of mGBA's library layer. The player instances live in src/platform/libretro-splitscreen/instances.c and reject anything that is not a GBA ROM (instances.c:114-119).
The splitscreen wrapper never performs its own BIOS lookup. Each per-player mCore reaches mGBA's shared GBA core, which looks for gba_bios.bin in the system directory and uses the built-in HLE BIOS (src/gba/hle-bios.c) when it is missing. The core-info declares one optional firmware entry (gba_bios.bin) and only accepts the .gba extension, so GB/GBC/SGB BIOS files that upstream mGBA supports are unreachable here.
1 files | 0 required, 1 optional | 1 in repo, 0 missing | 1 with HLE fallback
gba_bios.bin optional in repo HLE fallback
- System: nintendo-gba
- Size: 16.0 KB
- Validation: size
- Source:
src/platform/libretro-splitscreen/mgba_splitscreen_libretro.info:34-37,src/gba/gba.c:520-551 - Platforms: batocera, bizhawk, lakka, misterfpga, recalbox, retroarch, retrobat, retrodeck, retropie, rocknix, romm
- GBA BIOS, same file upstream mGBA uses. HLE replacement built in.
Generated on 2026-10-10T11:26:01Z