Skip to content

Flycast - RetroBIOS

Type standalone + libretro
Classification Official ports
Source https://github.com/libretro/flycast
Upstream https://github.com/flyinghead/flycast
Version 0.1
Profiled 2026-03-23
Cores flycast, flycast_dev, flycastvl
Systems sega-dreamcast, sega-naomi, sega-naomi2, sega-atomiswave
Platform details

dreamcast: - bios_size: 2097152 - flash_size: 131072 - ram_size: 16777216 - hle_available: True - source_ref: core/nullDC.cpp:333-345 naomi: - bios_size: 2097152 - sram_size: 32768 - ram_size: 33554432 - hle_available: False - source_ref: core/nullDC.cpp:346-354 naomi2: - bios_size: 2097152 - sram_size: 32768 - ram_size: 33554432 - hle_available: False - note: Treated as NAOMI in the libretro port. Separate platform only in upstream. - source_ref: core/nullDC.cpp:355-363 atomiswave: - bios_size: 131072 - sram_size: 131072 - ram_size: 16777216 - hle_available: False - source_ref: core/nullDC.cpp:364-375

Technical notes

Flycast has a built-in HLE BIOS (reios) for Dreamcast that can boot most games without real BIOS files. Arcade systems (NAOMI, Atomiswave) require MAME-format BIOS ROM archives.

The libretro port (libretro/flycast, last updated 2025-12-12) is significantly behind upstream (flyinghead/flycast). Key divergences: - NAOMI 2 has no separate BIOS entry or platform detection; NAOMI 2 games run as NAOMI using naomi.zip. Upstream has naomi2.zip with dedicated ROMs. - System SP is not supported. Upstream has segasp.zip support. - The n2_ prefix for NAOMI 2 flat boot ROMs is dead code (DC_PLATFORM_NAOMI2 is never assigned to settings.System in the libretro port). - Flash search includes legacy names (%flash_wb.bin, %flash.bin, %flash.bin.bin) that upstream has removed. - NAOMI flat boot ROM search includes epr-21576d.bin fallback not in upstream.

BIOS file search uses prefix + name pattern. The libretro port appends "dc/" to the system directory (libretro.cpp:1972). All files below are relative to system_dir/dc/.

The prefix is determined by platform (sb_mem.cpp:32-49): Dreamcast -> dc_ Dev Unit -> hkt_ NAOMI -> naomi_ Atomiswave -> (no prefix, BIOS loaded from awbios.zip)

Boot ROM search pattern (sb_mem.cpp:51-68): {prefix}boot.bin, {prefix}boot.bin.bin, {prefix}bios.bin, {prefix}bios.bin.bin NAOMI also tries: epr-21576d.bin (sb_mem.cpp:59) Flash/NVRAM search pattern (sb_mem.cpp:231): {prefix}nvmem.bin, {prefix}flash_wb.bin, {prefix}flash.bin, {prefix}flash.bin.bin

BIOS[] also declares airlbios and naomigd. No entry of Games[] carries either name in its bios field and naomi_LoadBios is only ever called with that field or the literal naomi, so neither archive is opened. ref: naomi_cart.cpp:79,229-240,476-479, naomi_roms.h:79,191

9 files | 2 required, 7 optional | 9 in repo, 0 missing | 2 with HLE fallback

dc_boot.bin optional in repo HLE fallback

dc_nvmem.bin optional in repo HLE fallback

font.bin optional in repo

naomi_boot.bin optional in repo

naomi.zip required in repo

f355bios.zip optional in repo

f355dlx.zip optional in repo

hod2bios.zip optional in repo

awbios.zip required in repo

Generated on 2026-09-14T09:03:09Z