Files
libretro/emulators/flycast.yml
Abdessamad Derraz 9052a6b750 feat: add emulator profiles and cross-reference engine (tier 2)
New two-tier architecture:
- Tier 1: Platform configs (what the UI checks) - unchanged
- Tier 2: Emulator profiles (what the code actually loads)

11 emulator profiles from source code analysis:
  cemu, citra, dolphin, duckstation, flycast,
  melonds, pcsx2, ppsspp, rpcs3, vita3k, xemu

Each profile documents every file the emulator loads with
source code references (file:line), hashes, and notes.

New scripts/cross_reference.py computes gaps between what
platforms declare and what emulators need.

Current gap: 200 undeclared files, 24 already in repo.
DuckStation alone recognizes 105 PS1/PS2 BIOS variants.

generate_pack.py gains --include-extras flag (future use).
_registry.yml maps platforms to their emulators.
2026-03-17 20:08:27 +01:00

186 lines
6.0 KiB
YAML

emulator: Flycast
type: standalone + libretro
source: "https://github.com/flyinghead/flycast"
systems:
- sega-dreamcast
- sega-naomi
- sega-naomi2
- sega-atomiswave
- sega-systemsp
notes: |
Flycast has a built-in HLE BIOS (reios) for Dreamcast that can boot most
games without real BIOS files. Arcade systems (NAOMI, NAOMI2, Atomiswave,
System SP) require MAME-format BIOS ROM archives.
Hikaru and Triforce are NOT supported by Flycast.
BIOS file search uses prefix + name pattern. The emulator looks in configured
"Content Path" directories for these files (standalone) or the system directory
(libretro).
File loading logic: core/hw/flashrom/nvmem.cpp loadFiles() and
core/hw/naomi/naomi_cart.cpp loadBios().
The prefix is determined by platform (nvmem.cpp:36-49):
Dreamcast -> dc_
NAOMI -> naomi_
NAOMI 2 -> naomi2_
Atomiswave -> aw_
Boot ROM search pattern (nvmem.cpp:287):
{prefix}boot.bin, {prefix}boot.bin.bin, {prefix}bios.bin, {prefix}bios.bin.bin
files:
# -------------------------------------------------------
# Sega Dreamcast
# -------------------------------------------------------
- name: "dc_boot.bin"
system: sega-dreamcast
required: false
size: 2097152 # 2 MB
note: "Dreamcast boot ROM. HLE BIOS (reios) used as fallback."
source_ref: "core/hw/flashrom/nvmem.cpp:287"
- name: "dc_bios.bin"
system: sega-dreamcast
required: false
size: 2097152
note: "Alternate name for Dreamcast boot ROM."
source_ref: "core/hw/flashrom/nvmem.cpp:287"
- name: "dc_flash.bin"
system: sega-dreamcast
required: false
size: 131072 # 128 KB
note: "Dreamcast flash memory (settings, saves). Created if missing."
source_ref: "core/hw/flashrom/nvmem.cpp:246"
# -------------------------------------------------------
# Sega NAOMI
# -------------------------------------------------------
- name: "naomi_boot.bin"
system: sega-naomi
required: false
size: 2097152 # 2 MB
note: "NAOMI boot ROM (flat binary). Alternative to naomi.zip."
source_ref: "core/hw/flashrom/nvmem.cpp:287"
- name: "naomi.zip"
system: sega-naomi
required: true
note: >
NAOMI system BIOS archive (MAME format). Contains region-specific
BIOS ROMs: epr-21576h.ic27 (Japan), epr-21577h.ic27 (USA),
epr-21578h.ic27 (Export), epr-21579d.ic27 (Korea).
source_ref: "core/hw/naomi/naomi_roms.cpp:87-143"
# NAOMI special BIOS sets (game-specific, loaded from game archive or standalone)
- name: "airlbios.zip"
system: sega-naomi
required: false
note: "Airline Pilots Deluxe BIOS. epr-21802.ic27 (Export), epr-21801.ic27 (USA)."
source_ref: "core/hw/naomi/naomi_roms.cpp:30-37"
- name: "f355bios.zip"
system: sega-naomi
required: false
note: "Ferrari F355 Challenge BIOS. Japan/USA/Export variants."
source_ref: "core/hw/naomi/naomi_roms.cpp:49-58"
- name: "f355dlx.zip"
system: sega-naomi
required: false
note: "Ferrari F355 Challenge Deluxe BIOS. Japan/USA/Export variants."
source_ref: "core/hw/naomi/naomi_roms.cpp:60-74"
- name: "hod2bios.zip"
system: sega-naomi
required: false
note: "House of the Dead 2 BIOS. Japan/USA/Export variants."
source_ref: "core/hw/naomi/naomi_roms.cpp:76-85"
- name: "naomigd.zip"
system: sega-naomi
required: false
note: "NAOMI GD-ROM BIOS. Used by GD-ROM based NAOMI games."
source_ref: "core/hw/naomi/naomi_roms.cpp:158-181"
# -------------------------------------------------------
# Sega NAOMI 2
# -------------------------------------------------------
- name: "naomi2_boot.bin"
system: sega-naomi2
required: false
size: 2097152 # 2 MB
note: "NAOMI 2 boot ROM (flat binary). Alternative to naomi2.zip."
source_ref: "core/hw/flashrom/nvmem.cpp:287"
- name: "naomi2.zip"
system: sega-naomi2
required: true
note: >
NAOMI 2 system BIOS archive (MAME format). Contains region-specific
ROMs: epr-23605c.ic27 (Japan), epr-23607c.ic27 (USA),
epr-23608c.ic27 (Export), epr-23609b.ic27 (Korea).
source_ref: "core/hw/naomi/naomi_roms.cpp:183-201"
# -------------------------------------------------------
# Sega Atomiswave
# -------------------------------------------------------
- name: "awbios.zip"
system: sega-atomiswave
required: true
note: >
Atomiswave system BIOS archive (MAME format). Contains
bios0.ic23 (Sammy, 128 KB). BIOS size is 128 KB.
source_ref: "core/hw/naomi/naomi_roms.cpp:39-48"
# -------------------------------------------------------
# Sega System SP
# -------------------------------------------------------
- name: "segasp.zip"
system: sega-systemsp
required: true
note: >
Sega System SP BIOS archive (MAME format). Contains
epr-24328a.ic50 (BOOT VER 2.01, 2 MB) and region-specific
EEPROM files mb_eeprom_us.ic54s, mb_eeprom_exp.ic54s.
source_ref: "core/hw/naomi/naomi_roms.cpp:204-218"
platform_details:
dreamcast:
bios_size: 2097152 # 2 MB
flash_size: 131072 # 128 KB
ram_size: 16777216 # 16 MB (32 MB with mod)
hle_available: true
source_ref: "core/emulator.cpp:446-452"
naomi:
bios_size: 2097152 # 2 MB
flash_size: 32768 # 32 KB (battery-backed SRAM)
ram_size: 33554432 # 32 MB
hle_available: false
source_ref: "core/emulator.cpp:453-459"
naomi2:
bios_size: 2097152 # 2 MB
flash_size: 32768 # 32 KB (battery-backed SRAM)
ram_size: 33554432 # 32 MB
eram_size: 33554432 # 32 MB (ELAN)
hle_available: false
source_ref: "core/emulator.cpp:460-467"
atomiswave:
bios_size: 131072 # 128 KB
flash_size: 131072 # 128 KB (SRAM)
ram_size: 16777216 # 16 MB
hle_available: false
source_ref: "core/emulator.cpp:468-474"
systemsp:
bios_size: 2097152 # 2 MB
flash_size: 131072 # 128 KB (SRAM)
ram_size: 33554432 # 32 MB
hle_available: false
source_ref: "core/emulator.cpp:475-481"