Files
libretro/emulators/flycast2021.yml
T
Abdessamad Derraz d9c74888e8 feat: list rocknix cores per device
ROCKNIX builds a different emulator set per SoC, and without a target
list an H700 handheld received the PS2, PS3 and GameCube firmware of
emulators its image lacks. The new target scraper reads the emulators
metapackage per device; seven cores ROCKNIX ships get profiles and the
Super Famicom Box ROMs one of them needs are collected.
2026-10-17 15:38:07 +02:00

181 lines
7.5 KiB
YAML

emulator: "Flycast 2021"
type: libretro
core_classification: frozen_snapshot
source: "https://github.com/metallic77/flycast"
upstream: "https://github.com/libretro/flycast"
profiled_date: "2026-10-17"
source_commit: "603814c9f73b773c455d9a497f389d2f93a257fd"
upstream_commit: "4c293f306bc16a265c2d768af5d0cea138426054"
pin_frozen: "ROCKNIX 20261001 builds this revision. No branch of metallic77/flycast holds it any more: master was put back on the libretro merge base 4c293f30, so HEAD is the code before the fork's own commits."
core_version: "0.1"
display_name: "Sega - Dreamcast/Naomi (Flycast 2021)"
cores:
- "flycast2021"
systems:
- sega-dreamcast
- sega-naomi
- sega-atomiswave
notes: |
The libretro/flycast tree as of April 2022 (merge base 4c293f30), from before
the libretro fork was rebased on flyinghead's Flycast, with 22 commits by
metallic77 on top that tune defaults and build flags for low-end handhelds.
ROCKNIX renames the core option prefix from reicast to flycast2021 and
installs the library as flycast2021_libretro.so.
ref: core/libretro/libretro.cpp:2296-2300
Every system file lives in <system>/dc/.
ref: core/libretro/libretro.cpp:1893-1896
Dreamcast: the boot ROM is looked for as dc_boot.bin, dc_boot.bin.bin,
dc_bios.bin, dc_bios.bin.bin, the first that yields a full 2 MB read wins.
The HLE BIOS core option (hle_bios) defaults to enabled, and when it is on, or
when no boot ROM loads, reios boots the disc instead. Booting to the BIOS menu,
or starting without a disc, needs the real boot ROM and fails with -3 without
it.
ref: core/hw/holly/sb_mem.cpp:32-65, core/hw/holly/sb_mem.cpp:215-233,
core/hw/flashrom/flashrom.h:54-67, core/hw/flashrom/flashrom.h:84-118,
core/nullDC.cpp:420-431, core/nullDC.cpp:455-463,
core/libretro/libretro_core_options.h:133-145, core/libretro/libretro.cpp:726-731
NAOMI and Atomiswave: a BIOS archive is opened as <system>/dc/<name> with .7z
then .zip appended. Each member is looked for in the game archive, its parent,
then the BIOS archive, by CRC32 and then by name; the BIOS table carries no
CRC32, so only the name matches. The member for the configured region is
tried first, then the first member listed. A game whose table entry names a
BIOS refuses to start without it; the others default to naomi. Five archive
names are reachable from the game table: naomi, awbios, f355bios, f355dlx,
hod2bios. airlbios and naomigd have table entries but no game names them.
ref: core/hw/naomi/naomi_cart.cpp:76-176, core/hw/naomi/naomi_cart.cpp:227-247,
core/archive/archive.cpp:26-42, core/hw/naomi/naomi_roms.h:76-217
LoadRomFiles also reads naomi_boot.bin, naomi_boot.bin.bin, naomi_bios.bin,
naomi_bios.bin.bin and epr-21576d.bin for NAOMI, but naomi_cart_Close clears
bios_loaded before the cartridge loads, so that file never stands in for
naomi.zip.
ref: core/hw/holly/sb_mem.cpp:59, core/hw/naomi/naomi_cart.cpp:427-444,
core/hw/naomi/naomi_cart.cpp:472-484
files:
- name: "dc_boot.bin"
path: "dc/dc_boot.bin"
aliases: ["dc_boot.bin.bin", "dc_bios.bin", "dc_bios.bin.bin"]
system: sega-dreamcast
required: false
hle_fallback: true
min_size: 2097152
validation: [size]
description: "Dreamcast boot ROM"
note: "Read as 2 MB into the system ROM; a shorter file is rejected. Needed only to boot to the BIOS menu or when the HLE BIOS option is disabled."
source_ref: "core/hw/holly/sb_mem.cpp:50-65, core/hw/holly/sb_mem.cpp:215-229, core/hw/flashrom/flashrom.h:54-67, core/nullDC.cpp:420-431"
- name: "dc_nvmem.bin"
path: "dc/dc_nvmem.bin"
aliases: ["dc_flash_wb.bin", "dc_flash.bin", "dc_flash.bin.bin"]
system: sega-dreamcast
required: false
min_size: 131072
validation: [size]
description: "Dreamcast flash ROM"
note: "Loaded with the boot ROM and by the HLE path; a missing file leaves the flash blank and the core runs. Written back as dc_nvmem.bin."
source_ref: "core/hw/holly/sb_mem.cpp:196-213, core/hw/holly/sb_mem.cpp:231, core/hw/holly/sb_mem.cpp:236-243, core/hw/holly/sb_mem.cpp:271-278"
- name: "font.bin"
path: "dc/font.bin"
system: sega-dreamcast
required: false
description: "Dreamcast system font for the HLE BIOS"
note: "Read whole into the font table of the reios ROM image. Absent, a built-in font is copied there."
source_ref: "core/reios/reios.cpp:736-755"
- name: "naomi.zip"
path: "dc/naomi.zip"
category: bios_zip
system: sega-naomi
required: true
description: "NAOMI BIOS archive"
note: "Default BIOS of every NAOMI game whose table entry names none, cartridge, .lst, .bin and .dat images alike. One member is loaded: the one for the configured region, else epr-21576h.ic27."
source_ref: "core/hw/naomi/naomi_roms.h:132-189, core/hw/naomi/naomi_cart.cpp:227-247, core/hw/naomi/naomi_cart.cpp:472-484"
contents:
- name: "epr-21576h.ic27"
size: 2097152
description: "Japan"
- name: "epr-21578h.ic27"
size: 2097152
description: "Export"
- name: "epr-21577h.ic27"
size: 2097152
description: "USA"
- name: "epr-21579d.ic27"
size: 2097152
description: "Korea"
- name: "awbios.zip"
path: "dc/awbios.zip"
category: bios_zip
system: sega-atomiswave
required: true
description: "Atomiswave BIOS archive"
note: "Named by all 34 Atomiswave games. Loaded into the flash chip, whose writable part is then reloaded from the save directory."
source_ref: "core/hw/naomi/naomi_roms.h:86-94, core/hw/naomi/naomi_cart.cpp:89-92, core/hw/naomi/naomi_cart.cpp:171-173"
contents:
- name: "bios0.ic23"
size: 131072
- name: "f355bios.zip"
path: "dc/f355bios.zip"
category: bios_zip
system: sega-naomi
required: true
description: "Ferrari F355 Challenge BIOS archive"
note: "Named by three Ferrari F355 Challenge entries, which refuse to start without it."
source_ref: "core/hw/naomi/naomi_roms.h:95-103, core/hw/naomi/naomi_cart.cpp:238-243"
contents:
- name: "epr-22851.ic27"
size: 2097152
description: "Export"
- name: "epr-22850.ic27"
size: 2097152
description: "USA"
- name: "epr-22849.ic27"
size: 2097152
description: "Japan"
- name: "f355dlx.zip"
path: "dc/f355dlx.zip"
category: bios_zip
system: sega-naomi
required: true
description: "Ferrari F355 Challenge Deluxe BIOS archive"
note: "Named by the f355 entry, which refuses to start without it."
source_ref: "core/hw/naomi/naomi_roms.h:104-119, core/hw/naomi/naomi_roms.h:1701, core/hw/naomi/naomi_cart.cpp:238-243"
contents:
- name: "epr-21864.ic27"
size: 2097152
description: "Export"
- name: "epr-21863.ic27"
size: 2097152
description: "USA"
- name: "epr-21862.ic27"
size: 2097152
description: "Japan"
- name: "hod2bios.zip"
path: "dc/hod2bios.zip"
category: bios_zip
system: sega-naomi
required: true
description: "The House of the Dead 2 BIOS archive"
note: "Named by four House of the Dead 2 entries, which refuse to start without it."
source_ref: "core/hw/naomi/naomi_roms.h:120-131, core/hw/naomi/naomi_cart.cpp:238-243"
contents:
- name: "epr-21331.ic27"
size: 2097152
description: "Export"
- name: "epr-21330.ic27"
size: 2097152
description: "USA"
- name: "epr-21329.ic27"
size: 2097152
description: "Japan"