1 Commits

Author SHA1 Message Date
github-actions[bot] 5657130cb5 regenerate database and docs 2026-03-18 17:30:41 +00:00
119 changed files with 884 additions and 4687 deletions
+2 -2
View File
@@ -2,7 +2,7 @@
Complete, verified collection of BIOS, firmware, and system files for retrogaming emulators.
> **8085** files | **4686.1 MB** | **7** platforms | **265** emulator profiles
> **5567** files | **4680.9 MB** | **7** platforms | **265** emulator profiles
## Download
@@ -40,4 +40,4 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
This repository provides BIOS files for personal backup and archival purposes.
*Auto-generated on 2026-03-18T14:18:36Z*
*Auto-generated on 2026-03-18T17:29:35Z*
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+148 -707
View File
File diff suppressed because it is too large Load Diff
+17 -250
View File
@@ -5,273 +5,40 @@ upstream: "https://github.com/charlierobson/EightyOne"
profiled_date: "2026-03-18"
core_version: "1.0a"
display_name: "Sinclair - ZX 81 (EightyOne)"
cores: [81]
cores:
- 81
systems:
- sinclair-zx81
- sinclair-zx80
- jupiter-ace
- timex-ts1500
- timex-ts2068
- lambda-8300
- ringo-r470
- microdigital-tk85
notes: |
Libretro port embeds zx81.rom and dkchr.rom as C arrays (xxd -i).
Core never accesses filesystem for ROMs. Hardcodes MACHINEZX81.
ref: 81-libretro/81/zx81/snap.c:37-38, 487-508
Libretro core embeds zx81.rom and dkchr.rom as C arrays (xxd -i at build).
Core never calls RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY.
Standalone EightyOne loads ROMs from filesystem (cwd/ROM/<filename>).
Original EightyOne supports 15+ machines, loads ROMs from ROM/ directory.
ref: EightyOne/Source/zx81/snap.cpp:1219-1279 — open(cwd/ROM/filename)
ref: EightyOne/Source/HW_.cpp:2734 — LoadRomBox() per-machine ROM list
No platform currently requires these files (libretro core embeds them).
Archived for museum preservation and future standalone platform use.
Original emulator supports ~15 machines (ZX80, ZX81, Jupiter ACE, TS1500,
Lambda, R470, TK85, ZX97LE, Spectrum variants). Libretro port hardcodes
MACHINEZX81 — only zx81.rom and dkchr.rom are embedded.
files:
# --- libretro core: embedded, no external files needed ---
# mode: standalone = needed only for standalone emulator
# mode: libretro = needed only for libretro core
# mode: both = needed in both modes (default if absent)
# mode: standalone = only needed when running as standalone emulator
# mode: libretro = only needed when running as libretro core
# mode: both (default if absent) = needed in both modes
# ZX81 (default machine for libretro port)
# ref: 81-libretro/81/zx81/snap.c:37,489-496 — embedded as bin_ROM_zx81_rom
# ref: EightyOne/Source/zx81/snap.cpp:1219-1279 — open(cwd/ROM/zx81.rom)
- name: zx81.rom
system: sinclair-zx81
required: true
mode: standalone
size: 8192
md5: db398d4e4e93a6d4dee3bfe146918219
note: "ZX81 8K BASIC ROM (edition 3). Embedded in libretro core."
source_ref: "81-libretro/81/zx81/snap.c:489, EightyOne/Source/HW_.cpp:2744"
- name: zx81.edition1.rom
system: sinclair-zx81
required: false
mode: standalone
size: 8192
md5: 56efa70bbaf311915c56cfdc70584e96
note: "ZX81 ROM edition 1"
source_ref: "EightyOne/Source/HW_.cpp:2742"
- name: zx81.edition2.rom
system: sinclair-zx81
required: false
mode: standalone
size: 8192
md5: b9fd58d324b6297f2a696d40722f95dc
note: "ZX81 ROM edition 2"
source_ref: "EightyOne/Source/HW_.cpp:2743"
note: "ZX81 8K BASIC ROM. Embedded in libretro core, external for standalone."
source_ref: "EightyOne/Source/zx81/snap.cpp:1264, 81-libretro/81/zx81/snap.c:489"
# ref: 81-libretro/81/zx81/snap.c:38,499-508 — embedded as bin_ROM_dkchr_rom
- name: dkchr.rom
system: sinclair-zx81
required: false
mode: standalone
size: 4096
md5: ""
note: "dK'tronics character ROM. Embedded in libretro core."
source_ref: "81-libretro/81/zx81/snap.c:499"
# ZX80
- name: zx80.rom
system: sinclair-zx80
required: true
mode: standalone
size: 4096
md5: e03bd725f98be45aac39c85f7fd41ce4
note: "ZX80 4K ROM"
source_ref: "EightyOne/Source/HW_.cpp:2737"
# ZX97LE
- name: zx97.rom
system: sinclair-zx81
required: false
mode: standalone
size: 32768
md5: cc69fdd6195acdfd1e533b2eb4c2a632
note: "ZX97LE 32K ROM"
source_ref: "EightyOne/Source/HW_.cpp:2789"
# Jupiter ACE
- name: jupiterace.rom
system: jupiter-ace
required: true
mode: standalone
size: 8192
md5: db6efdfd82cebdfbb493d85b1a5efc3c
note: "Jupiter ACE Forth ROM"
source_ref: "EightyOne/Source/HW_.cpp:2753"
# Timex TS1500
- name: ts1500.rom
system: timex-ts1500
required: true
mode: standalone
size: 8192
md5: dea07eb23c5768ddf3ed90740eab85cb
source_ref: "EightyOne/Source/HW_.cpp:2757"
# Timex TS2068
- name: ts2068.rom
system: timex-ts2068
required: true
mode: standalone
size: 24576
md5: 9194283503a105f3f3dfba13e61e993f
source_ref: "EightyOne/Source/ROMs/ts2068.rom"
# Lambda 8300
- name: lambda8300.rom
system: lambda-8300
required: true
mode: standalone
size: 8192
md5: e232dfce1dcae65953583f66af146232
source_ref: "EightyOne/Source/HW_.cpp:2773"
- name: lambda8300colour.rom
system: lambda-8300
required: false
mode: standalone
size: 8192
md5: 03aeea3abc7b1ca5f241935477ce71be
source_ref: "EightyOne/Source/ROMs/lambda8300colour.rom"
# Ringo R470
- name: ringo470.rom
system: ringo-r470
required: true
mode: standalone
size: 8192
md5: a70bbb0dfe4bb8556e74258062766f5d
source_ref: "EightyOne/Source/HW_.cpp:2769"
# Microdigital TK85
- name: tk85.rom
system: microdigital-tk85
required: true
mode: standalone
size: 10240
md5: b301cdad72448d92598197b45bead8fe
source_ref: "EightyOne/Source/HW_.cpp:2777"
# Timex TC2048
- name: tc2048.rom
system: sinclair-zx81
required: false
mode: standalone
size: 16384
md5: 9dd7ecf784a6c04265c073c236f5fadb
source_ref: "EightyOne/Source/ROMs/tc2048.rom"
# ZX Spectrum variants (standalone mode, multiple localizations)
- name: spectrum48.rom
system: sinclair-zx81
required: false
mode: standalone
size: 16384
md5: 4c42a2f075212361c3117015b107ff68
note: "Spectrum 48K"
source_ref: "EightyOne/Source/HW_.cpp:2802"
- name: spectrum48.spanish.rom
system: sinclair-zx81
required: false
mode: standalone
size: 16384
md5: 60e1bd8b4d59b55e5b2175126239517f
- name: spectrum48.arabic.rom
system: sinclair-zx81
required: false
mode: standalone
size: 16384
md5: 9f6f56003307b9d55be96f406fdbf2b1
- name: spectrum48.arabic.version1.rom
system: sinclair-zx81
required: false
mode: standalone
size: 16384
md5: a6a1e3a68bb5523997103c3925a46fe4
- name: spectrum48.arabic.version2.rom
system: sinclair-zx81
required: false
mode: standalone
size: 16384
md5: fac3d08455328c34f0d06344d89cec0e
- name: spectrum48.nordic.rom
system: sinclair-zx81
required: false
mode: standalone
size: 16384
md5: f058f27ae61af225fe5baacc1d89adfc
- name: spectrum128.rom
system: sinclair-zx81
required: false
mode: standalone
size: 32768
md5: 85fede415f4294cc777517d7eada482e
note: "Spectrum 128K"
- name: spectrum128.spanish.rom
system: sinclair-zx81
required: false
mode: standalone
size: 32768
md5: 84aef735da122d55e41a33455c7c3506
- name: spectrum+2.rom
system: sinclair-zx81
required: false
mode: standalone
size: 32768
md5: 238f77692156a5c49d20c0aa2862e8bb
note: "Spectrum +2"
- name: spectrum+2.french.rom
system: sinclair-zx81
required: false
mode: standalone
size: 32768
md5: 1fff14aeca8e1dd3670142982cc6bb36
- name: spectrum+2.spanish.rom
system: sinclair-zx81
required: false
mode: standalone
size: 32768
md5: 43cf648e27efc9be8186bb7049505d79
- name: spectrum+3.version4-0.rom
system: sinclair-zx81
required: false
mode: standalone
size: 65536
md5: 05de80a055b5e7866f55769db0584d6e
note: "Spectrum +3"
- name: spectrum+3.version4-0.spanish.rom
system: sinclair-zx81
required: false
mode: standalone
size: 65536
md5: 990dfe9d37b48595f5befe0e4ff4b7c6
- name: spectrum+3.version4-1.rom
system: sinclair-zx81
required: false
mode: standalone
size: 65536
md5: 7e00ed3562abfd188d0d4da03e80bc0a
- name: spectrum+3.version4-1.spanish.rom
system: sinclair-zx81
required: false
mode: standalone
size: 65536
md5: 52d130178c1106fef765b5f119fb43bc
- name: spectrum+3.arabic3-a.english4-0.rom
system: sinclair-zx81
required: false
mode: standalone
size: 131072
md5: 30316fa0ed7ee6682933960e11b48d60
- name: tk90.rom
system: sinclair-zx81
required: false
mode: standalone
size: 16384
md5: b7893ad25728fbf6410f08eddd4a1cad
note: "Microdigital TK90X"
- name: tk95.rom
system: sinclair-zx81
required: false
mode: standalone
size: 16384
md5: b7893ad25728fbf6410f08eddd4a1cad
note: "Microdigital TK95"
-1
View File
@@ -32,7 +32,6 @@ files:
path: "5200.rom"
size: 2048
required: false
hle_fallback: true
note: >
Atari 5200 OS ROM. Provides the built-in OS routines used by all 5200
cartridges. Without it, the core uses the Altirra open-source replacement
+1 -5
View File
@@ -35,8 +35,4 @@ notes: |
No BIOS files required. The emulator has no external firmware dependencies.
Game ROMs are identified by CRC32 for automatic machine configuration.
files: []
# closed-source core — cannot verify via source code scan.
# firmware_count=0 in .info and docs confirm no BIOS needed.
# signetics 2636/2637 systems have no separate system ROM.
bios_files: []
-122
View File
@@ -1,122 +0,0 @@
emulator: Amiberry
type: standalone + libretro
source: "https://github.com/BlitterStudio/amiberry"
upstream: "https://github.com/tonioni/WinUAE"
profiled_date: "2026-03-18"
core_version: "v6.3.4"
display_name: "Commodore - Amiga (Amiberry)"
cores: [amiberry]
systems:
- commodore-amiga
- commodore-cd32
- commodore-cdtv
notes: |
Amiberry is an Amiga emulator based on WinUAE, available as both
standalone and libretro core. No built-in kickstart fallback — a real
Kickstart ROM is required.
Core option "amiberry_kickstart" selects the ROM file:
auto, kick.rom, kick13.rom, kick20.rom, kick31.rom, kick205.rom,
kick40068.A1200, kick40068.A4000, cd32.rom, cdtv.rom.
"auto" selects based on the model option.
ref: BlitterStudio/amiberry/libretro/libretro.cpp:558,621-634
Standalone mode ships with data/ directory (UI icons, virtual keyboards,
floppy sounds, AmigaTopaz.ttf font, gamecontrollerdb.txt). These are
compiled into the standalone binary but the libretro core may look for
them in the system directory.
files:
# --- Required Kickstart ROMs (from .info) ---
# ref: BlitterStudio/amiberry/libretro/libretro.cpp:558
# ref: WinUAE rommgr.cpp for ROM identification
- name: kick34005.A500
system: commodore-amiga
required: true
size: 262144
crc32: c4f0f55f
note: "A500 Kickstart v1.3 rev 34.5"
source_ref: "libretro-super/dist/info/amiberry_libretro.info firmware0"
- name: kick37350.A600
system: commodore-amiga
required: true
size: 524288
crc32: 43b0df7b
note: "A600 Kickstart v2.05 rev 37.350"
source_ref: "amiberry_libretro.info firmware1"
- name: kick40068.A1200
system: commodore-amiga
required: true
size: 524288
crc32: 1483a091
note: "A1200 Kickstart v3.1 rev 40.68"
source_ref: "amiberry_libretro.info firmware2"
# --- Optional Kickstart ROMs ---
- name: kick33180.A500
system: commodore-amiga
required: false
size: 262144
crc32: a6ce1636
note: "A500 Kickstart v1.2 rev 33.180"
source_ref: "amiberry_libretro.info firmware3"
- name: kick40068.A4000
system: commodore-amiga
required: false
size: 524288
crc32: d6bae334
note: "A4000 Kickstart v3.1 rev 40.68"
source_ref: "amiberry_libretro.info firmware4"
- name: kick40060.CD32
system: commodore-cd32
required: false
size: 524288
crc32: 1e62d4a5
note: "CD32 Kickstart v3.1 rev 40.60"
source_ref: "amiberry_libretro.info firmware5"
- name: kick40060.CD32.ext
system: commodore-cd32
required: false
size: 524288
crc32: 87746be2
note: "CD32 Extended ROM rev 40.60"
source_ref: "amiberry_libretro.info firmware6"
# --- Alternative names accepted by core option ---
# these are common user-facing names, same ROMs as above
- name: kick13.rom
system: commodore-amiga
required: false
note: "alias for kick34005.A500 (v1.3)"
source_ref: "libretro.cpp:630"
- name: kick34005.CDTV
system: commodore-cdtv
required: false
note: "CDTV extended ROM"
source_ref: "libretro.cpp:558 cdtv.rom option"
# --- Standalone data files ---
- name: AmigaTopaz.ttf
system: commodore-amiga
required: false
mode: standalone
note: "Amiga Topaz font for UI rendering"
source_ref: "BlitterStudio/amiberry/data/AmigaTopaz.ttf"
- name: gamecontrollerdb.txt
system: commodore-amiga
required: false
mode: standalone
note: "SDL gamepad mapping database"
source_ref: "BlitterStudio/amiberry/controllers/gamecontrollerdb.txt"
+2 -14
View File
@@ -1,7 +1,6 @@
emulator: Atari800
type: standalone + libretro
type: libretro
source: "https://github.com/libretro/libretro-atari800"
upstream: "https://github.com/atari800/atari800"
profiled_date: "2026-03-18"
core_version: "3.1.0"
display_name: "Atari - 400/800/600XL/800XL/130XE/5200 (Atari800)"
@@ -33,7 +32,6 @@ files:
- name: "5200.rom"
path: "5200.rom"
required: false
hle_fallback: true
size: 2048
md5: 281f20ea4320404ec820fb7ec0693b38
note: >
@@ -51,7 +49,6 @@ files:
- name: "ATARIBAS.ROM"
path: "ATARIBAS.ROM"
required: false
hle_fallback: true
size: 8192
md5: 0bac0c6a50104045d902df4503a4c30b
note: >
@@ -67,7 +64,6 @@ files:
- name: "ATARIOSA.ROM"
path: "ATARIOSA.ROM"
required: false
hle_fallback: true
size: 10240
md5: eb1f32f5d9f382db1bbfb8d7f9cb343a
note: >
@@ -82,16 +78,10 @@ files:
- name: "ATARIOSB.ROM"
path: "ATARIOSB.ROM"
required: false
hle_fallback: true
size: 10240
md5: 4177f386a3bac989a981d3fe3388cb6c
crc32: 0e86d61d
note: >
Atari 400/800 OS Rev B (NTSC). CRC32 0x0e86d61d matches sysrom.c
SYSROM_B_NTSC. Preferred over Rev A for 400/800 mode.
Note: .info lists md5 a3e8d617c95d08031fe1b20d541434b2 which is a
different dump (crc32 3e28a1fe) — both in repo, the CRC32-matched
version is the one sysrom.c auto-detects.
Atari 400/800 OS Rev B (NTSC). Preferred over Rev A for 400/800 mode.
source_ref: "atari800/src/sysrom.c:89, libretro info firmware3"
# -- Atari XL/XE OS --
@@ -105,7 +95,6 @@ files:
- name: "ATARIXL.ROM"
path: "ATARIXL.ROM"
required: false
hle_fallback: true
size: 16384
md5: 06daac977823773a3eea3422fd26a703
note: >
@@ -120,7 +109,6 @@ files:
- name: "BB01R4_OS.ROM"
path: "BB01R4_OS.ROM"
required: false
hle_fallback: true
size: 16384
md5: b7a2a04677d34f069eeb643d5238bf86
note: >
+5 -88
View File
@@ -1,91 +1,8 @@
emulator: Azahar
type: standalone + libretro
source: "https://github.com/azahar-emu/azahar"
upstream: "https://github.com/azahar-emu/azahar"
emulator: "azahar"
type: alias
alias_of: "citra"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Nintendo - 3DS (Azahar)"
cores: [azahar]
systems:
- nintendo-3ds
notes: |
Azahar is the successor to Citra (via Lime3DS). Different codebase
from libretro/citra — has additional files not in the old Citra.
Data dir: azahar-emu (legacy: citra-emu, lime3ds-emu).
ref: src/common/common_paths.h:41-47
Key file: keys.txt (NOT aes_keys.txt like libretro/citra).
ref: src/common/common_paths.h:83
Uses RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY.
ref: src/citra_libretro/environment.cpp:194
.info has firmware_count=0 but core uses system_dir for files.
files:
# --- sysdata/ ---
- name: keys.txt
path: sysdata/keys.txt
system: nintendo-3ds
required: false
note: "AES keys (named keys.txt in Azahar, aes_keys.txt in old Citra)"
source_ref: "src/common/common_paths.h:83, src/core/hw/aes/key.cpp:291"
- name: boot9.bin
path: sysdata/boot9.bin
system: nintendo-3ds
required: false
source_ref: "src/common/common_paths.h:84"
- name: sector0x96.bin
path: sysdata/sector0x96.bin
system: nintendo-3ds
required: false
source_ref: "src/common/common_paths.h:85"
- name: shared_font.bin
path: sysdata/shared_font.bin
system: nintendo-3ds
required: false
hle_fallback: true
note: "HLE fallback if missing"
source_ref: "src/common/common_paths.h:82"
- name: seeddb.bin
path: sysdata/seeddb.bin
system: nintendo-3ds
required: false
note: "game seed database for 9.6+ titles"
source_ref: "src/core/file_sys/seed_db.cpp:15"
# --- Azahar-only (not in libretro/citra) ---
# These require src/core/hw/unique_data.cpp which only exists in Azahar
- name: otp.bin
path: sysdata/otp.bin
system: nintendo-3ds
required: false
note: "OTP data for key derivation. Azahar-only."
source_ref: "src/core/hw/unique_data.cpp:214"
- name: movable.sed
path: nand/private/movable.sed
system: nintendo-3ds
required: false
note: "console-unique key seed. Azahar-only."
source_ref: "src/core/hw/unique_data.cpp:218"
- name: SecureInfo_A
path: nand/rw/sys/SecureInfo_A
system: nintendo-3ds
required: false
note: "console serial/region. Azahar-only."
source_ref: "src/core/hw/unique_data.cpp:206"
- name: LocalFriendCodeSeed_B
path: nand/rw/sys/LocalFriendCodeSeed_B
system: nintendo-3ds
required: false
note: "friend code generation. Azahar-only."
source_ref: "src/core/hw/unique_data.cpp:210"
note: "This core uses the same BIOS/firmware as citra. See emulators/citra.yml for details."
files: []
+94 -33
View File
@@ -1,45 +1,106 @@
emulator: b2
type: standalone + libretro
source: "https://github.com/zoltanvb/b2-libretro"
upstream: "https://github.com/tom-seddon/b2"
type: standalone
source: "https://github.com/tom-seddon/b2"
profiled_date: "2026-03-18"
core_version: "v0.1"
display_name: "Acorn - BBC Micro (b2)"
cores: [b2]
cores: []
systems:
- bbc-micro-b
- bbc-micro-bplus
- bbc-master-128
- bbc-master-compact
# b2 is a standalone BBC Micro emulator by Tom Seddon. It is NOT a libretro
# core -- there is no libretro port. The emulator uses SDL2 and Dear ImGui.
#
# Emulated models (src/b2/BeebConfig.cpp:211-433):
# - BBC Model B (with various disc interfaces: Acorn 1770, Watford, Opus)
# - BBC Model B+ / B+128
# - BBC Master 128 (MOS 3.20 and 3.50)
# - BBC Master Turbo (MOS 3.20 and 3.50, with 65C102 parasite)
# - BBC Model B + 6502 second processor
# - BBC Master Compact (MOS 5.00, 5.10, I5.10C)
# - Olivetti PC 128 S (Master Compact variant)
#
# ROM handling:
# All ROMs ship in the repo under etc/roms/. The emulator loads them via
# GetAssetPath("roms", path) at runtime. No external BIOS files needed.
# ROM paths are defined in src/b2/roms.cpp as BeebROM structs with
# {filename, display_name, StandardROM_enum}.
#
# ROM inventory (etc/roms/):
#
# BBC Model B:
# OS12.ROM 16384 md5:0a59a5ba15fe8557b5f7fee32bbd393a OS 1.20
# BASIC2.ROM 16384 md5:2cc67be4624df4dc66617742571a8e3d BASIC II
#
# BBC Model B+:
# B+MOS.rom 16384 md5:47a1eff6c7fbb47be780c87dfd50ece1 B+ MOS
# BASIC2.ROM 16384 (shared with Model B)
#
# Disc interfaces (sideways ROMs, slot 14):
# acorn/DFS-2.26.rom 16384 md5:f083f49d6fe66344c650d7e74249cb96 Acorn 1770 DFS
# watford/DDFS-1.53.rom 16384 md5:d2b71fa664f6cdf8c24b9b304777998c Watford DDFS (DDB2)
# watford/DDFS-1.54T.rom 16384 md5:e73a0417278504a6dfac2ccd9a73e9a9 Watford DDFS (DDB3)
# opus/OPUS-DDOS-3.45.rom 16384 md5:d98316eaff56ceab4fe3bfe54d2f92b2 Opus DDOS
# opus/challenger-1.01.rom 16384 md5:67e086a11834f8cc69175b601c4e5a5f Opus Challenger
#
# BBC Master 128 MOS 3.20 (M128/3.20/):
# mos.rom 16384 md5:9087f772447038a00178488b3591347b MOS 3.20 OS
# terminal.rom 16384 md5:7e053353b78b4631c274280931d96f02 Terminal (slot f)
# view.rom 16384 md5:178d09285727d596f8863f94a2fc8dad View (slot e)
# adfs.rom 16384 md5:10f08b255d6a6e3e888631946b628f1a ADFS (slot d)
# basic4.rom 16384 md5:63a6f43cbf491533cb03ceca2d2728d4 BASIC IV (slot c)
# edit.rom 16384 md5:cb3d762eaab6130d1360e1ac575589de Edit (slot b)
# viewsht.rom 16384 md5:7d5a80a8ce929d0a0f6ca8626cb9f436 Viewsheet (slot a)
# dfs.rom 16384 md5:865a0f7a5d6f10f48798801bf514d761 DFS (slot 9)
#
# BBC Master 128 MOS 3.50 (M128/3.50/):
# mos.rom 16384 md5:d7a046b1e6a9991748cee05332f1e258 MOS 3.50 OS
# terminal.rom 16384 md5:b1fa51fd49d31224ecb7e10e6908ec01 Terminal (slot f)
# view.rom 16384 md5:1566fab2f1827fb7ba61b283b828731d View (slot e)
# adfs.rom 16384 md5:fb8ceb72c5fbd9dd80eedd10d076b1a2 ADFS (slot d)
# basic4.rom 16384 md5:e11eed95d1caba8aa9772e9001590585 BASIC IV (slot c)
# edit.rom 16384 md5:8c72c7f24567cb4a2fb15eb0b0aeb55b Edit (slot b)
# viewsht.rom 16384 md5:1bc68b7c5eba6a2de2a43c9d1d9d983b Viewsheet (slot a)
# dfs.rom 16384 md5:22c2b7f14f244da21d630a7828541c79 DFS (slot 9)
#
# Parasite processors:
# MasterTurboParasite.rom 2048 md5:83d73e0e78693bb4b43e7cb18e58d556 65C102 TUBE 1.20
# TUBE110.rom 2048 md5:a77c7946128ca0b2c5e5a66b17c99dae 6502 TUBE 1.10
#
# BBC Master Compact MOS 5.00 (MCompact/5.00/):
# mos.rom 16384 md5:5d1b635e39aa461f17db2344870dda36 MOS 5.00 OS
# utils.rom 16384 md5:4f9ded16f44278a4ca0ef4e66822e316 UTILS (slot f)
# basic4.rom 16384 md5:64b3cd52e36b5262ac6ca3a9823c6ee2 BASIC IV (slot e)
# adfs.rom 16384 md5:bfbd0a7dbbfb1f1f4ba5ac0343c1f8ce ADFS (slot d)
#
# BBC Master Compact MOS 5.10 (MCompact/5.10/):
# mos.rom 16384 md5:f65eb89c7044e328b79f2ef8e51b7fd8 MOS 5.10 OS
# utils.rom 16384 md5:48a197850113b00a1eb141fb6d3ea135 UTILS (slot f)
# basic4.rom 16384 md5:64b3cd52e36b5262ac6ca3a9823c6ee2 BASIC IV (slot e, same as 5.00)
# adfs.rom 16384 md5:c2afc1cabb135e6f2254bcf9300a9b83 ADFS (slot d)
#
# Olivetti PC 128 S / MOS I5.10C (MCompact/I5.10C/):
# mos.rom 16384 md5:5e16a38bd7fd6f07f26b5a64826e4ec6 MOS I5.10C OS
# utils.rom 16384 md5:75364aa6fd5e134a40051d9ee772df37 UTILS (slot f)
# basic4.rom 16384 md5:717df34edae5b6bf5bbd8879c0d13022 BASIC IV (slot e)
# adfs.rom 16384 md5:10f23a239dde39b7fe09d72083709e93 ADFS (slot d)
#
# ROM type system (src/beeb/include/beeb/roms.inl):
# Sideways ROMs support banked mappers: 16KB (standard), CCIWORD (32KB),
# CCIBASE (64KB), CCISPELL (128KB), PALQST/PALWAP/PALTED, ABEP, ABE,
# Trilogy (64KB), MO2 (128KB). OS ROM types: 16KB, Compact (64KB),
# MegaROM (128KB), Multi-OS (512KB with 4 banks).
#
# Memory map (src/beeb/include/beeb/type.h):
# OS ROM mapped at $C000-$FFFF (MOS big pages). Sideways ROMs in 16 banks
# at $8000-$BFFF, selected via ROMSEL register at $FE30.
notes: |
b2 is a BBC Micro emulator by Tom Seddon. Libretro port by Zoltan Balogh.
ref: zoltanvb/b2-libretro, tom-seddon/b2
b2 is a standalone BBC Micro emulator (SDL2 + Dear ImGui). Not a libretro core.
All required ROMs are bundled in the repository under etc/roms/.
No external BIOS files need to be provided by the user.
Standalone: loads ROMs from etc/roms/ via GetAssetPath().
ref: tom-seddon/b2/src/b2/roms.cpp:9-10
Libretro port (experimental): GetAssetPath stubbed in
src/libretro/adapters.cpp to return relative paths. LoadFile also
stubbed (returns false). ROM loading mechanism unclear — the 256 ROM
files are in the repo but the stub suggests they may not load at runtime.
is_experimental=true in .info.
ref: zoltanvb/b2-libretro/src/libretro/adapters.cpp
256 ROM files in etc/roms/ cover: BBC Model B (OS 1.20, BASIC II),
Model B+ (B+MOS), Master 128 (MOS 3.20, 3.50), Master Compact
(MOS 5.00, 5.10, I5.10C/Olivetti), parasite processors (65C102 TUBE,
6502 TUBE), disc interfaces (Acorn 1770, Watford, Opus).
All ROMs ship with both standalone and libretro repos.
No external BIOS files needed by the user for either mode.
files: []
# 256 ROMs bundled in repo etc/roms/ — not loaded from system dir
# standalone loads via GetAssetPath("roms", path) -> etc/roms/
# libretro port has LoadFile stubbed — ROM loading mechanism TBD
# is_experimental=true, core may not fully function
# closed-source analysis note: core binary on buildbot contains
# "Retro ROM DIRECTORY" and "system_dir" strings but LoadFile stub
# returns false. needs further investigation when port matures.
bios_files: []
+5 -5
View File
@@ -26,7 +26,7 @@ files:
sha1: "b05def971d8ec59f346f2d9ac21fb742e3eb6917"
md5: "8dd7d5296a650fac7319bce665a6a53c"
source_ref: "libretro.cpp:252-256"
aliases: ["SCPH5500.bin", "SCPH-5500.bin"]
alt_names: ["SCPH5500.bin", "SCPH-5500.bin"]
# -- Region: North America (REGION_NA) --
@@ -37,7 +37,7 @@ files:
sha1: "0555c6fae8906f3f09baf5988f00e55f88e9f30b"
md5: "490f666e1afb15b7362b406ed1cea246"
source_ref: "libretro.cpp:258-270"
aliases:
alt_names:
- "SCPH5501.bin"
- "SCPH-5501.bin"
- "scph5503.bin"
@@ -56,7 +56,7 @@ files:
sha1: "f6bc2d1f5eb6593de7d089c425ac681d6fffd3f0"
md5: "32736f17079d0b2b7024407c39bd3050"
source_ref: "libretro.cpp:272-282"
aliases:
alt_names:
- "SCPH5502.bin"
- "SCPH-5502.bin"
- "scph5552.bin"
@@ -72,7 +72,7 @@ files:
sha1: "96880d1ca92a016ff054be5159bb06fe03cb4e14"
md5: "c53ca5908936d412331790f4426c6c33"
source_ref: "libretro.cpp:190-196"
aliases: ["PSXONPSP660.bin"]
alt_names: ["PSXONPSP660.bin"]
notes: "override_bios=1 (psxonpsp option). Falls back to region BIOS if not found."
- name: "ps1_rom.bin"
@@ -82,5 +82,5 @@ files:
sha1: "c40146361eb8cf670b19fdc9759190257803cab7"
md5: "81bbe60ba7a3d1cea1d48c14cbcc647b"
source_ref: "libretro.cpp:198-204"
aliases: ["PS1_ROM.bin"]
alt_names: ["PS1_ROM.bin"]
notes: "override_bios=2 (ps1_rom option). Falls back to region BIOS if not found."
+4 -4
View File
@@ -19,16 +19,16 @@ systems:
# Slow BK-0011M (model 4) - same ROMs as model 3
# Terak 8510/a (model 9)
#
# ROM loading (boot.c:84-117):
# ROM loading (boot.c:83-116):
# BK-0010 models use load_rom() which maps ROM into emulated memory at
# specific addresses: monitor at 0100000 (8 KB), BASIC/FOCAL at 0120000
# (24448-24576 bytes), disk controller at 0160000 (4 KB).
# BK-0011M uses load_rom11() which loads into separate ROM buffer arrays.
#
# ROM file resolution (libretro.c:1051-1094):
# Files are loaded from {system_dir}/bk/{filename} (libretro.c:720-728).
# ROM file resolution (libretro.c:1051-1108):
# Files are loaded from {system_dir}/bk/{filename} (libretro.c:724-726).
# If not found with original casing, the loader retries with lowercase
# filename (libretro.c:1071-1081).
# filename (libretro.c:1074-1079).
#
# All ROM files are required for their respective model. The core calls
# environ_cb(RETRO_ENVIRONMENT_SHUTDOWN) if any ROM file is missing.
+2 -25
View File
@@ -1,7 +1,6 @@
emulator: BlastEm
type: standalone + libretro
type: libretro
source: "https://github.com/libretro/blastem"
upstream: "https://www.retrodev.com/blastem/"
profiled_date: "2026-03-18"
core_version: "v0.6.3-pre"
display_name: "Sega - Mega Drive - Genesis (BlastEm)"
@@ -29,29 +28,7 @@ notes: |
Sega CD / Mega CD is not supported (only a TODO comment in system.c:16).
No BIOS files are required or loaded by the libretro core.
files:
# rom.db is embedded in the libretro binary (libblastem.c:532-540,
# extern const char rom_db_data[]). The external file is an optional
# override — .info lists it as firmware0_opt=true.
# .info sha1 E5414FB1C4CC7D7F5101C07E4547316779BA3D97 does not match
# the version in our repo (sha1 02c287d1...) — rom.db changes between
# BlastEm releases.
- name: rom.db
system: sega-megadrive
required: false
hle_fallback: true
note: "ROM feature database (game-specific mapper/save config). Embedded in core, external is optional override."
source_ref: "libblastem.c:532-540 read_bundled_file()"
# TMSS ROM — only used in standalone mode with tmss-enabled model
# libretro build returns NULL for tmss.md (libblastem.c:541)
- name: tmss.md
system: sega-megadrive
required: false
mode: standalone
size: 2048
note: "TMSS startup ROM. Standalone only (models md1va6, md2va1+). Libretro core uses md1va3 (tmss off), no way to change."
source_ref: "genesis.c:1910-1923"
files: []
analysis:
tmss:
+1 -9
View File
@@ -1,7 +1,6 @@
emulator: blueMSX
type: standalone + libretro
type: libretro
source: "https://github.com/libretro/blueMSX-libretro"
upstream: "http://bluemsx.msxblue.com/"
profiled_date: "2026-03-18"
core_version: "SVN"
display_name: "MSX/SVI/ColecoVision/SG-1000 (blueMSX)"
@@ -53,13 +52,6 @@ notes: |
C-BIOS machines work for cartridge-based games without any copyrighted BIOS.
For disk/tape support, real BIOS ROMs are required.
data_directories:
# 302 files: 296 in Machines/ (200 machine configs + ROMs) + 6 in Databases/
# buildbot source: https://buildbot.libretro.com/assets/system/blueMSX.zip
# ref: libretro.c:1118-1119 — system_dir/Machines/ + system_dir/Databases/
- ref: bluemsx
source_ref: "libretro.c:1118-1119"
files:
# ============================================================
# Shared ROMs (Machines/Shared Roms/)
+13 -14
View File
@@ -14,17 +14,16 @@ notes: |
to libretro by Ryphecha. It is a lightweight, accuracy-focused NES core.
The core loads cartridge data entirely through retro_load_game with
need_fullpath=false (libretro/libretro.cpp:129). ROM data is passed as a
memory buffer and parsed by Cartridge::load (nes/cartridge/cartridge.cpp:18-31),
which detects iNES headers (16-byte offset) and delegates to Board::load.
need_fullpath=false (libretro.cpp:129). ROM data is passed as a memory
buffer and parsed by Cartridge::load (cartridge.cpp:18-31), which detects
iNES headers (16-byte offset) and delegates to Board::load for mapper setup.
The PPU generates its palette from a hardcoded color table in
libretro/libretro.cpp:20-37 with emphasis factor tables. No external
palette file is loaded.
The PPU generates its palette from a hardcoded color table in libretro.cpp
(lines 20-37) with emphasis factor tables. No external palette file is loaded.
System::init (nes/system/system.cpp:62-66) only sets up the interface
pointer and default input devices. No system ROM, BIOS, or firmware is
loaded at any stage of initialization or cartridge loading.
System::init (system.cpp:62-66) only sets up the interface pointer and
default input devices. No system ROM, BIOS, or firmware is loaded at any
stage of initialization or cartridge loading.
The core does not call RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY and has no
file I/O for BIOS or firmware. FDS (Famicom Disk System) is not supported,
@@ -36,11 +35,11 @@ files: []
analysis:
bios_search:
retro_load_game: "libretro/libretro.cpp:181-211 - loads cartridge data only, no BIOS"
cartridge_load: "nes/cartridge/cartridge.cpp:18-31 - parses iNES header + ROM data"
system_init: "nes/system/system.cpp:62-66 - sets interface pointer, no ROM loading"
system_power: "nes/system/system.cpp:43-50 - powers subsystems, no file I/O"
interface_init: "nes/interface/interface.cpp - stores derived pointer, calls system.init"
retro_load_game: "libretro.cpp:181-211 - loads cartridge data only, no BIOS"
cartridge_load: "cartridge.cpp:18-31 - parses iNES header + ROM data"
system_init: "system.cpp:62-66 - sets interface pointer, no ROM loading"
system_power: "system.cpp:43-50 - powers subsystems, no file I/O"
interface_init: "interface.cpp:17-20 - stores derived pointer, calls system.init"
supported_mappers:
- NROM
- SxROM (MMC1)
+56 -81
View File
@@ -1,7 +1,6 @@
emulator: Boytacean
type: standalone + libretro
type: libretro
source: "https://github.com/joamag/boytacean"
upstream: "https://github.com/joamag/boytacean"
profiled_date: "2026-03-18"
core_version: "0.10.13"
display_name: "Nintendo - Game Boy / Color (Boytacean)"
@@ -12,89 +11,65 @@ systems:
- nintendo-gbc
notes: |
Boytacean is a Game Boy / Game Boy Color emulator written in Rust.
Boytacean is a Game Boy / Game Boy Color emulator written in Rust by Joao Magalhaes.
No external BIOS or boot ROM files are needed.
Libretro: boot ROMs compiled into binary as static byte arrays in
src/data.rs. load_boot_static() copies from arrays. No filesystem
access, no RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY. No external files.
ref: frontends/libretro/src/core.rs:402 instance.load(true)
The core ships with multiple boot ROMs compiled directly into the binary as static
byte arrays in src/data.rs. For DMG mode the default is "DMG Bootix" (an open-source
boot ROM forked from SameBoy's Bootix project, 256 bytes). For CGB mode the default
is "CGB Boytacean" (a custom open-source CGB boot ROM, 2304 bytes). The original
Nintendo DMG, SGB, and CGB boot ROMs are also embedded as static arrays (DMG_BOOT,
SGB_BOOT, CGB_BOOT) but the defaults use the open-source replacements.
Standalone (SDL): loads boot ROMs from ./res/boot/*.bin via
load_boot_path() at gb.rs:1363-1368. 8 boot ROM files shipped in repo.
ref: frontends/sdl/src/main.rs, src/gb.rs:1341
The libretro frontend (frontends/libretro/src/core.rs) calls instance.load(true) in
retro_load_game(), which routes through load_dmg() or load_cgb() depending on the
cartridge header. These call load_boot_static() which copies one of the embedded byte
arrays into MMU memory. There is no RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY call, no
filesystem access for boot ROMs, and no core option to load external boot ROM files.
Boot ROM defaults:
- DMG: BootRom::DmgBootix (gb.rs:1352) - open-source, 256 bytes
- CGB: BootRom::CgbBoytacean (gb.rs:1355) - open-source, 2304 bytes
The .info file (boytacean_libretro.info) lists no firmware entries.
files:
# Standalone mode loads from res/boot/ — libretro embeds all as arrays
- name: dmg_boot.bin
system: nintendo-gb
required: false
hle_fallback: true
mode: standalone
size: 256
note: "Original Nintendo DMG boot ROM"
source_ref: "gb.rs:1363, data.rs:14 (embedded as DMG_BOOT)"
Boot ROM selection defaults:
- DMG: BootRom::DmgBootix (gb.rs:1389) - open-source, 256 bytes
- CGB: BootRom::CgbBoytacean (gb.rs:1398) - open-source, 2304 bytes
- name: sgb_boot.bin
system: nintendo-gb
required: false
hle_fallback: true
mode: standalone
size: 256
note: "Super Game Boy boot ROM"
source_ref: "gb.rs:1364, data.rs:29 (embedded as SGB_BOOT)"
All boot ROM source code lives in src/boot/, forked from SameBoy and assembled
with rgbds. The compiled binaries are then converted to Rust const arrays in data.rs.
- name: dmg_bootix.bin
system: nintendo-gb
required: false
hle_fallback: true
mode: standalone
size: 256
note: "Open-source DMG boot ROM from Bootix (default)"
source_ref: "gb.rs:1365, data.rs:44 (embedded as DMG_BOOTIX)"
files: []
- name: mgb_bootix.bin
system: nintendo-gb
required: false
hle_fallback: true
mode: standalone
size: 256
note: "Open-source MGB (Pocket) boot ROM from Bootix"
source_ref: "gb.rs:1366, data.rs:59 (embedded as MGB_BOOTIX)"
- name: cgb_boot.bin
system: nintendo-gbc
required: false
hle_fallback: true
mode: standalone
size: 2304
note: "Original Nintendo CGB boot ROM"
source_ref: "gb.rs:1367, data.rs:74 (embedded as CGB_BOOT)"
- name: cgb_boytacean.bin
system: nintendo-gbc
required: false
hle_fallback: true
mode: standalone
size: 2304
note: "Custom open-source CGB boot ROM (default)"
source_ref: "gb.rs:1368, data.rs:177 (embedded as CGB_BOYTACEAN)"
- name: dmg_pyboy.bin
system: nintendo-gb
required: false
hle_fallback: true
mode: standalone
note: "PyBoy DMG boot ROM variant (in res/boot/, not embedded in data.rs)"
source_ref: "res/boot/dmg_pyboy.bin"
- name: cgb_pyboy.bin
system: nintendo-gbc
required: false
hle_fallback: true
mode: standalone
note: "PyBoy CGB boot ROM variant (in res/boot/, not embedded in data.rs)"
source_ref: "res/boot/cgb_pyboy.bin"
analysis:
embedded_boot_roms:
dmg_boot:
constant: DMG_BOOT
size: 256
description: "Original Nintendo DMG boot ROM (embedded, not default)"
source_ref: "data.rs:14-27"
sgb_boot:
constant: SGB_BOOT
size: 256
description: "Super Game Boy boot ROM (embedded, not default)"
source_ref: "data.rs:29-42"
dmg_bootix:
constant: DMG_BOOTIX
size: 256
description: "Open-source DMG boot ROM from Bootix project (default for DMG)"
source_ref: "data.rs:44-57"
mgb_bootix:
constant: MGB_BOOTIX
size: 256
description: "Open-source MGB (Game Boy Pocket) boot ROM from Bootix project"
source_ref: "data.rs:59-72"
cgb_boot:
constant: CGB_BOOT
size: 2304
description: "Original Nintendo CGB boot ROM (embedded, not default)"
source_ref: "data.rs:74-175"
cgb_boytacean:
constant: CGB_BOYTACEAN
size: 2304
description: "Custom open-source CGB boot ROM (default for CGB)"
source_ref: "data.rs:177-275"
filesystem_access: false
system_directory_used: false
boot_rom_source: "src/boot/ (assembly, forked from SameBoy)"
-120
View File
@@ -1,120 +0,0 @@
emulator: bsnes-jg
type: libretro
source: "https://github.com/libretro/bsnes-jg"
upstream: "https://github.com/libretro/bsnes-jg"
profiled_date: "2026-03-18"
core_version: "2.0.0"
display_name: "Nintendo - SNES / SFC (bsnes-jg)"
cores: [bsnes-jg]
systems:
- nintendo-snes
- nintendo-sgb
- nintendo-satellaview
- nintendo-sufami-turbo
notes: |
bsnes-jg is a fork of bsnes v115 by Rupert Carmichael, rewritten for
C++ standard library. Coprocessor firmware loaded from system_dir via
openFileCallback. SGB boot ROMs and CX4/HitachiDSP data ROM embedded.
BML game databases embedded as C++ string literals.
ref: libretro/libretro.cpp:722 RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY
ref: libretro/libretro.cpp:428-470 firmware path construction (sysdir + filename)
ref: src/cartridge.cpp:774-786 openFileCallback for DSP/ST .program.rom/.data.rom
ref: src/coprocessor/icd.cpp:249,260 SGB1/SGB2 boot ROMs embedded
ref: src/cartridge.cpp:62 HitachiDSP static data ROM embedded (3072 bytes)
ref: libretro/libretro.cpp:30-33,410-416 BML databases embedded
files:
# SNES coprocessor firmware — loaded from system_dir, all optional
# Games using these coprocessors won't work without the firmware
# but most SNES games don't use coprocessors
- name: dsp1.program.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp:428-429"
- name: dsp1.data.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp:431-432"
- name: dsp1b.program.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp:434-435"
- name: dsp1b.data.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp:437-438"
- name: dsp2.program.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp:440-441"
- name: dsp2.data.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp:443-444"
- name: dsp3.program.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp:446-447"
- name: dsp3.data.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp:450-451"
- name: dsp4.program.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp:455"
- name: dsp4.data.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp"
- name: st010.program.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp"
- name: st010.data.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp"
- name: st011.program.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp"
- name: st011.data.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp"
- name: st018.program.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp"
- name: st018.data.rom
system: nintendo-snes
required: false
source_ref: "libretro/libretro.cpp"
# Embedded (no external file needed):
# SGB1BootROM[256] — src/coprocessor/icd.cpp:249
# SGB2BootROM[256] — src/coprocessor/icd.cpp:260
# hitachidspStaticDataROM[3072] — src/cartridge.cpp:62
# boards_bml — libretro/boards_bml.hpp
# SuperFamicom_bml — libretro/SuperFamicom_bml.hpp
# BSMemory_bml — libretro/BSMemory_bml.hpp
# SufamiTurbo_bml — libretro/SufamiTurbo_bml.hpp
+2 -14
View File
@@ -28,42 +28,36 @@ files:
- name: "dsp1.program.rom"
size: 6144 # 0x1800
required: false
hle_fallback: true
note: "NEC uPD7725 program ROM for DSP1. HLE fallback available"
source_ref: "sfc/cartridge/load.cpp:490-494, heuristics/super-famicom.cpp:601"
- name: "dsp1.data.rom"
size: 2048 # 0x800
required: false
hle_fallback: true
note: "NEC uPD7725 data ROM for DSP1. HLE fallback available"
source_ref: "sfc/cartridge/load.cpp:498-503"
- name: "dsp1b.program.rom"
size: 6144 # 0x1800
required: false
hle_fallback: true
note: "NEC uPD7725 program ROM for DSP1B (default NEC identifier). HLE fallback available"
source_ref: "heuristics/super-famicom.cpp:606"
- name: "dsp1b.data.rom"
size: 2048 # 0x800
required: false
hle_fallback: true
note: "NEC uPD7725 data ROM for DSP1B. HLE fallback available"
source_ref: "heuristics/super-famicom.cpp:606"
- name: "dsp2.program.rom"
size: 6144 # 0x1800
required: false
hle_fallback: true
note: "NEC uPD7725 program ROM for DSP2 (Dungeon Master). HLE fallback available"
source_ref: "sfc/cartridge/load.cpp:515-520, heuristics/super-famicom.cpp:602"
- name: "dsp2.data.rom"
size: 2048 # 0x800
required: false
hle_fallback: true
note: "NEC uPD7725 data ROM for DSP2. HLE fallback available"
source_ref: "sfc/cartridge/load.cpp:498-503"
@@ -82,14 +76,12 @@ files:
- name: "dsp4.program.rom"
size: 6144 # 0x1800
required: false
hle_fallback: true
note: "NEC uPD7725 program ROM for DSP4 (Top Gear 3000). HLE fallback available"
source_ref: "sfc/cartridge/load.cpp:522-528, heuristics/super-famicom.cpp:604-605"
- name: "dsp4.data.rom"
size: 2048 # 0x800
required: false
hle_fallback: true
note: "NEC uPD7725 data ROM for DSP4. HLE fallback available"
source_ref: "sfc/cartridge/load.cpp:498-503"
@@ -100,14 +92,12 @@ files:
- name: "st010.program.rom"
size: 49152 # 0xC000
required: false
hle_fallback: true
note: "NEC uPD96050 program ROM for ST010. HLE fallback available"
source_ref: "sfc/cartridge/load.cpp:570-574, heuristics/super-famicom.cpp:583-587"
- name: "st010.data.rom"
size: 4096 # 0x1000
required: false
hle_fallback: true
note: "NEC uPD96050 data ROM for ST010. HLE fallback available"
source_ref: "sfc/cartridge/load.cpp:578-583"
@@ -147,7 +137,6 @@ files:
- name: "cx4.data.rom"
size: 3072 # 0xC00
required: false
hle_fallback: true
note: "Hitachi HG51BS169 data ROM for Cx4 (Mega Man X2/X3). HLE fallback and built-in static ROM available"
source_ref: "sfc/cartridge/load.cpp:444-456, hitachidsp/hitachidsp.hpp:49, heuristics/super-famicom.cpp:597"
@@ -172,9 +161,8 @@ files:
- name: "BS-X.bin"
required: true
md5: fed4d8242cfbed61343d53d48432aced
note: "BS-X Satellaview BIOS ROM. Required for .bs games. .info md5=fed4d824, repo has 96cf17bf (Rev 1 vs original)"
source_ref: "target-libretro/libretro.cpp:948"
note: "BS-X Satellaview BIOS ROM. Required for .bs format Satellaview games"
source_ref: "target-libretro/libretro.cpp:948, target-libretro/program.cpp:790-799"
notes:
hle_available: true
-122
View File
@@ -1,122 +0,0 @@
emulator: bsnes 2014
type: libretro
source: "https://github.com/libretro/bsnes2014"
upstream: "https://github.com/bsnes-emu/bsnes"
profiled_date: "2026-03-18"
core_version: "v094"
display_name: "Nintendo - SNES / SFC (bsnes 2014)"
cores: [bsnes2014_accuracy, bsnes2014_balanced, bsnes2014_performance]
systems:
- nintendo-snes
- nintendo-sgb
- nintendo-satellaview
- nintendo-sufami-turbo
notes: |
bsnes 2014 is based on bsnes v094. Three build profiles:
accuracy (dot-based PPU), balanced, performance (scanline PPU).
All 3 profiles use the same 18 firmware files. Profiles differ only
in PPU implementation (sfc/profile-*.hpp: CPU/SMP/DSP/PPU alternates),
not in coprocessor support. CX4/Hitachi compiled in all profiles.
.info says performance has 17 (no cx4) — this is wrong, verified in
sfc/profile-performance.hpp which only changes CPU/SMP/DSP/PPU.
Unlike modern bsnes (v115+), v094 does NOT have HLE fallback for
coprocessors. CX4 is NOT embedded — cx4.data.rom is required
externally. SGB boot ROM is NOT embedded — sgb.boot.rom required.
Firmware loaded from system_dir via file::exists() + mmapstream.
ref: target-libretro/libretro.cpp — penviron(RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY)
ref: ananke/heuristics/super-famicom.hpp — firmware name definitions
ref: ananke/super-famicom.cpp:120 — sgb.boot.rom copy
files:
# DSP coprocessor split ROMs (program + data)
- name: dsp1.program.rom
system: nintendo-snes
required: false
source_ref: "ananke/heuristics/super-famicom.hpp:381"
- name: dsp1.data.rom
system: nintendo-snes
required: false
source_ref: "ananke/heuristics/super-famicom.hpp:382"
- name: dsp1b.program.rom
system: nintendo-snes
required: false
source_ref: "ananke/heuristics/super-famicom.hpp:381"
- name: dsp1b.data.rom
system: nintendo-snes
required: false
source_ref: "ananke/heuristics/super-famicom.hpp:382"
- name: dsp2.program.rom
system: nintendo-snes
required: false
- name: dsp2.data.rom
system: nintendo-snes
required: false
- name: dsp3.program.rom
system: nintendo-snes
required: false
note: "no HLE fallback in v094 — required for SD Gundam GX"
- name: dsp3.data.rom
system: nintendo-snes
required: false
- name: dsp4.program.rom
system: nintendo-snes
required: false
- name: dsp4.data.rom
system: nintendo-snes
required: false
# CX4 (Hitachi) — NOT embedded in v094 unlike bsnes v115+
- name: cx4.data.rom
system: nintendo-snes
required: false
size: 3072
note: "Capcom CX4 coprocessor data. Required for Mega Man X2/X3. Used in all 3 profiles (.info performance is wrong). NOT embedded in v094."
source_ref: "ananke/heuristics/super-famicom.hpp:146"
# Seta coprocessors
- name: st010.program.rom
system: nintendo-snes
required: false
- name: st010.data.rom
system: nintendo-snes
required: false
- name: st011.program.rom
system: nintendo-snes
required: false
note: "no HLE fallback — required for Hayazashi Nidan Morita Shougi"
- name: st011.data.rom
system: nintendo-snes
required: false
- name: st018.program.rom
system: nintendo-snes
required: false
note: "ARM coprocessor. Required for Hayazashi Nidan Morita Shougi 2"
source_ref: "ananke/heuristics/super-famicom.hpp:475-476"
- name: st018.data.rom
system: nintendo-snes
required: false
# SGB boot ROM — NOT embedded in v094 unlike bsnes-jg/v115+
- name: sgb.boot.rom
system: nintendo-sgb
required: false
size: 256
note: "SGB boot ROM (256 bytes). NOT embedded in v094. Present in all 3 profiles."
source_ref: "ananke/heuristics/super-famicom.hpp:133, ananke/super-famicom.cpp:120"
-36
View File
@@ -1,36 +0,0 @@
emulator: bsnes C++98
type: libretro
source: "https://github.com/libretro/bsnes-libretro-cplusplus98"
upstream: "https://github.com/bsnes-emu/bsnes"
profiled_date: "2026-03-18"
core_version: "v085 (Performance)"
display_name: "Nintendo - SNES / SFC (bsnes C++98 (v085))"
cores: [bsnes_cplusplus98]
systems:
- nintendo-snes
notes: |
bsnes C++98 is bsnes v085 downgraded to C++98 for old compilers.
Performance profile only. is_experimental=true.
Firmware loading differs from newer bsnes versions:
- NEC DSP (dsp1/2/3/4) and Hitachi DSP (cx4) firmware loaded from
the SAME DIRECTORY as the ROM, not from system_dir.
- Path: dir(interface->path(Slot::Base, ".dsp")) + firmware_name
ref: snes/cartridge/markup.cpp:231
- interface->path() returns basename + hint
ref: snes/libretro/libretro.cpp path() method
- Firmware name comes from the game's XML/BML markup (root["firmware"])
NOT fixed names like dsp1.program.rom
- Files are COMBINED (program+data in one file), not split
ref: snes/cartridge/markup.cpp:243-244 reads promsize*3 + dromsize*2
.info has firmware_count=0 because firmware is loaded from ROM dir,
not from system_dir — RetroArch can't pre-populate them.
The core warns "NEC DSP firmware X is missing" if not found but
continues without the coprocessor (games using it won't work).
files: []
# firmware loaded from ROM directory, not system directory
# no files to declare for system_dir placement
-125
View File
@@ -1,125 +0,0 @@
emulator: bsnes-hd beta
type: libretro
source: "https://github.com/DerKoun/bsnes-hd"
upstream: "https://github.com/bsnes-emu/bsnes"
profiled_date: "2026-03-18"
core_version: "v10.6"
# .info says v112.v12 but repo shows Version = "10.6", SerializerVersion = "114.2"
display_name: "Nintendo - SNES / SFC (bsnes-hd beta)"
cores: [bsnes_hd_beta]
systems:
- nintendo-snes
- nintendo-sgb
- nintendo-satellaview
- nintendo-sufami-turbo
notes: |
bsnes-hd beta is bsnes ~v114 by DerKoun with widescreen and
increased color depth. Same firmware as bsnes v115.
repo Version="10.6", SerializerVersion="114.2"
ref: bsnes/emulator/emulator.hpp:34,40
SGB boot ROMs embedded in binary (icd/boot-roms.cpp:1,12).
SGB1.sfc/SGB2.sfc are SGB cartridge ROMs (not boot ROMs).
HLE available for DSP1/2/4, ST010, CX4 — LLE firmware optional.
DSP3, ST011, ST018 have no HLE — LLE firmware required for those.
ref: bsnes/sfc/coprocessor/icd/boot-roms.cpp:1,12
ref: bsnes/sfc/coprocessor/icd/icd.cpp:87,90
ref: bsnes/heuristics/super-famicom.cpp:115
files:
# Split DSP coprocessor firmware
- name: dsp1.program.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp1.data.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp1b.program.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp1b.data.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp2.program.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp2.data.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp3.program.rom
system: nintendo-snes
required: false
note: "no HLE — required for SD Gundam GX"
- name: dsp3.data.rom
system: nintendo-snes
required: false
- name: dsp4.program.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp4.data.rom
system: nintendo-snes
required: false
hle_fallback: true
# CX4 (Hitachi)
- name: cx4.data.rom
system: nintendo-snes
required: false
hle_fallback: true
size: 3072
note: "HLE available — LLE optional for Mega Man X2/X3"
# Seta coprocessors
- name: st010.program.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: st010.data.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: st011.program.rom
system: nintendo-snes
required: false
note: "no HLE — required for Hayazashi Nidan Morita Shougi"
- name: st011.data.rom
system: nintendo-snes
required: false
- name: st018.program.rom
system: nintendo-snes
required: false
note: "no HLE — required for Hayazashi Nidan Morita Shougi 2"
- name: st018.data.rom
system: nintendo-snes
required: false
# SGB cartridge ROMs (NOT boot ROMs — boot ROMs are embedded)
# sgb_bios variable set by core option bsnes_sgb_bios (libretro.cpp:280-285)
- name: SGB1.sfc
system: nintendo-sgb
required: false
md5: b15ddb15721c657d82c5bab6db982ee9
note: "SGB1 cartridge ROM. Boot ROM embedded in icd/boot-roms.cpp:1"
source_ref: "libretro.cpp:1022,1040"
- name: SGB2.sfc
system: nintendo-sgb
required: false
md5: 8ecd73eb4edf7ed7e81aef1be80031d5
note: "SGB2 cartridge ROM. Boot ROM embedded in icd/boot-roms.cpp:12"
source_ref: "libretro.cpp:1022,1040"
# Satellaview BIOS — required for .bs files
- name: BS-X.bin
system: nintendo-satellaview
required: false
note: "Satellaview BIOS. Required when loading .bs files. Core returns false if missing."
source_ref: "libretro.cpp:1054-1060"
-112
View File
@@ -1,112 +0,0 @@
emulator: bsnes-mercury
type: libretro
source: "https://github.com/libretro/bsnes-mercury"
upstream: "https://github.com/bsnes-emu/bsnes"
profiled_date: "2026-03-18"
core_version: "v094 (Mercury)"
display_name: "Nintendo - SNES / SFC (bsnes-mercury)"
cores: [bsnes_mercury_accuracy, bsnes_mercury_balanced, bsnes_mercury_performance]
systems:
- nintendo-snes
- nintendo-sgb
- nintendo-satellaview
- nintendo-sufami-turbo
notes: |
bsnes-mercury is bsnes v094 with Mercury optimizations: HLE for DSP
and Hitachi coprocessors, firmware_appended support, overclocking.
Three profiles: accuracy, balanced, performance (PPU differs, not firmware).
.info says performance has 17 fw (no cx4) but the code compiles CX4 LLE
in all profiles — cx4.data.rom works in performance too. The .info is wrong.
Core option bsnes_chip_hle (default LLE) controls HLE/LLE at runtime.
ref: target-libretro/libretro.cpp altImplementation(), "bsnes_chip_hle"
Same firmware loading as bsnes2014: system_dir via file::exists +
mmapstream. No BS-X auto-load from system_dir (subsystem only).
ref: target-libretro/libretro.cpp:245-254
HLE fallback for DSP1/1B/2/4, Hitachi/CX4, ST010.
ref: sfc/cartridge/markup.cpp:351,404,618
firmware_appended: firmware can be appended to end of ROM file.
ref: ananke/heuristics/super-famicom.hpp:83
SGB boot ROM NOT embedded (sgb.boot.rom from system_dir).
CX4 NOT embedded (cx4.data.rom from system_dir).
files:
# Same 18 files as bsnes2014 accuracy — see bsnes2014.yml for details
# DSP1-4 split (program+data), CX4, ST010-018, sgb.boot.rom
- name: dsp1.program.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp1.data.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp1b.program.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp1b.data.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp2.program.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp2.data.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp3.program.rom
system: nintendo-snes
required: false
note: "no HLE — required for SD Gundam GX"
- name: dsp3.data.rom
system: nintendo-snes
required: false
- name: dsp4.program.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: dsp4.data.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: cx4.data.rom
system: nintendo-snes
required: false
hle_fallback: true
size: 3072
note: "HLE available via Mercury — LLE optional"
source_ref: "ananke/heuristics/super-famicom.hpp:146"
- name: st010.program.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: st010.data.rom
system: nintendo-snes
required: false
hle_fallback: true
- name: st011.program.rom
system: nintendo-snes
required: false
note: "no HLE — required for Hayazashi Nidan Morita Shougi"
- name: st011.data.rom
system: nintendo-snes
required: false
- name: st018.program.rom
system: nintendo-snes
required: false
- name: st018.data.rom
system: nintendo-snes
required: false
- name: sgb.boot.rom
system: nintendo-sgb
required: false
size: 256
note: "SGB boot ROM. NOT embedded in v094."
source_ref: "ananke/heuristics/super-famicom.hpp:133"
+1 -2
View File
@@ -1,7 +1,6 @@
emulator: Cannonball
type: standalone + libretro
type: libretro
source: "https://github.com/libretro/cannonball"
upstream: "https://github.com/djyt/cannonball"
profiled_date: "2026-03-18"
core_version: "1.0"
display_name: "Cannonball"
+2 -45
View File
@@ -1,7 +1,6 @@
emulator: Caprice32
type: standalone + libretro
type: libretro
source: "https://github.com/libretro/libretro-cap32"
upstream: "https://github.com/ColinPitrat/caprice32"
profiled_date: "2026-03-18"
core_version: "v4.2.0"
display_name: "Amstrad - CPC/GX4000 (Caprice32)"
@@ -43,49 +42,7 @@ notes: |
CP/M support loads a pre-built snapshot (cpm.h) into memory via
snapshot_load_mem() in slots.c:87.
files:
# Standalone loads from rom_path/ — libretro embeds all as C arrays
# ref: ColinPitrat/caprice32/src/cap32.cpp:1006-1007,1159-1171
- name: cpc464.rom
system: amstrad-cpc
required: true
mode: standalone
size: 32768
note: "CPC 464 OS + BASIC 1.0"
source_ref: "caprice32/src/cap32.cpp:1006, rom/cpc464.rom"
- name: cpc664.rom
system: amstrad-cpc
required: false
mode: standalone
size: 32768
note: "CPC 664 OS + BASIC 1.0"
source_ref: "caprice32/rom/cpc664.rom"
- name: cpc6128.rom
system: amstrad-cpc
required: false
mode: standalone
size: 32768
note: "CPC 6128 OS + BASIC 1.1"
source_ref: "caprice32/rom/cpc6128.rom"
- name: amsdos.rom
system: amstrad-cpc
required: false
mode: standalone
size: 16384
note: "AMSDOS disc ROM (sideways slot 7)"
source_ref: "caprice32/src/cap32.cpp:1166"
- name: system.cpr
system: amstrad-cpc
required: false
mode: standalone
note: "CPC+ system cartridge"
source_ref: "caprice32/rom/system.cpr"
- name: MF2.rom
system: amstrad-cpc
required: false
mode: standalone
note: "Multiface 2 ROM"
source_ref: "caprice32/rom/MF2.rom"
files: []
platform_details:
bios_mapping:
+5 -32
View File
@@ -1,35 +1,8 @@
emulator: CDi 2015
type: libretro
source: "https://github.com/libretro/mame2015-libretro"
upstream: "https://github.com/mamedev/mame"
emulator: "cdi2015"
type: alias
alias_of: "same_cdi"
profiled_date: "2026-03-18"
core_version: "0.160"
display_name: "Philips CDi (CDi 2015)"
cores: [cdi2015]
systems:
- philips-cdi
notes: |
MAME 0.160 compiled with SUBTARGET=cdi (CDi driver only).
ref: libretro-super/rules.d/core-rules.sh — SUBTARGET=cdi
source: libretro/mame2015-libretro
Loads cdimono1.zip from system_dir.
ref: src/osd/retro/retromain.c:1989 —
sprintf(tmp_dir, "%s%ccdimono1.zip", retro_system_directory, slash)
If not found as ZIP, falls back to system_dir as rompath.
ref: src/osd/retro/retromain.c:1991
ROM_START(cdimono1) in src/mame/drivers/cdi.c:421 defines:
cdi200.rom (0x80000, CRC 279683ca, SHA1 53360a1f21ddac952e95306ced64186a3fc0b93e)
cdic.bin (MCU, undumped)
slave.bin (MCU, undumped)
The ZIP contains the MAME romset for cdimono1 — user provides it.
files:
- name: cdimono1.zip
system: philips-cdi
required: true
note: "MAME cdimono1 romset ZIP. Contains cdi200.rom + MCU dumps."
source_ref: "src/osd/retro/retromain.c:1989, src/mame/drivers/cdi.c:421"
note: "This core uses the same BIOS/firmware as same_cdi. See emulators/same_cdi.yml for details."
files: []
+6 -26
View File
@@ -1,29 +1,9 @@
emulator: ChimeraSNES
type: libretro
source: "https://github.com/jamsilva/chimerasnes"
upstream: "https://github.com/snes9xgit/snes9x"
profiled_date: "2026-03-18"
emulator: "chimerasnes"
type: alias
alias_of: "snes9x"
core_version: ""
display_name: "Nintendo - SNES / SFC (ChimeraSNES)"
cores: [chimerasnes]
systems:
- nintendo-snes
notes: |
Fork of Snes9x ~2005, optimized for slow hardware.
NOT identical to snes9x — different firmware behavior.
All coprocessor data is HLE with static ROM tables embedded:
DSP1: DSP1ROM[1024] in source/dsp1.c:6
DSP3: DSP3_DataROM[1024] in source/dsp3.c:7
No external DSP/ST/CX4 firmware files needed.
BS-X: path constructed in source/bsx.c:873 as romdir/BS-X.bios
(relative to ROM directory, NOT system_dir). No
RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY for firmware loading.
firmware_count absent in .info (= 0). Confirmed in source.
profiled_date: "2026-03-18"
display_name: "Nintendo - SNES / SFC (ChimeraSNES)"
note: "This core uses the same BIOS/firmware as snes9x. See emulators/snes9x.yml for details."
files: []
# all coprocessors HLE with embedded data
# BS-X.bios loaded from ROM directory, not system_dir
+46 -27
View File
@@ -1,54 +1,49 @@
emulator: Citra
emulator: Citra / Lime3DS / Azahar
type: standalone + libretro
source: "https://github.com/libretro/citra"
upstream: "https://github.com/citra-emu/citra"
source: "https://github.com/azahar-emu/azahar"
logo: "https://raw.githubusercontent.com/wheremyfoodat/citra/master/dist/citra.svg"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Nintendo - 3DS (Citra)"
cores: [citra]
systems: [nintendo-3ds]
notes: |
Citra 3DS emulator (pre-Azahar). Data dir: citra-emu.
HLE for most services — files optional. AES keys most important.
File locations: sysdata/ for keys/boot/font/seeddb,
Citra (now Azahar, formerly Lime3DS) uses HLE for most system services,
so many files are optional. AES keys are the most important for decrypting
games and system data. Shared font has a built-in fallback.
File locations relative to user dir: sysdata/ for keys/boot/font/otp/seeddb,
nand/ for NAND filesystem, nand/private/ for movable.sed.
ref: src/common/common_paths.h:67-70
Key file: aes_keys.txt (NOT keys.txt — that's Azahar).
ref: src/common/common_paths.h:68
Azahar fork: see emulators/azahar.yml (uses keys.txt, data dir azahar-emu).
citra_canary: same repo, see emulators/citra_canary.yml.
Legacy data dirs: citra-emu, lime3ds-emu -> azahar-emu.
files:
# --- sysdata/ directory ---
- name: "aes_keys.txt"
path: "sysdata/aes_keys.txt"
- name: "keys.txt"
path: "sysdata/keys.txt"
description: "AES encryption keys"
required: false
source_ref: "src/common/common_paths.h:68, src/core/hw/aes/key.cpp LoadPresetKeys()"
notes: "Named aes_keys.txt in libretro/citra (keys.txt in Azahar)"
source_ref: "src/common/common_paths.h:83, src/core/hw/aes/key.cpp:291"
notes: "Contains AES key slots (X/Y/N types) for game decryption; has built-in encrypted fallback keys (key.cpp:300-306)"
- name: "boot9.bin"
path: "sysdata/boot9.bin"
description: "ARM9 bootrom"
required: false
source_ref: "src/common/common_paths.h:69"
source_ref: "src/common/common_paths.h:84"
notes: "3DS ARM9 boot ROM; used for hardware key derivation"
- name: "sector0x96.bin"
path: "sysdata/sector0x96.bin"
description: "Secret sector from NAND"
required: false
source_ref: "src/common/common_paths.h:70"
source_ref: "src/common/common_paths.h:85"
notes: "OTP-encrypted sector 0x96 from 3DS NAND; used for key derivation"
- name: "shared_font.bin"
path: "sysdata/shared_font.bin"
description: "System shared font"
required: false
hle_fallback: true
source_ref: "src/common/common_paths.h:67"
notes: "HLE fallback if missing"
source_ref: "src/common/common_paths.h:82, src/core/hle/service/apt/apt.cpp:284"
notes: "Fallback if NAND system archive not available; built-in font data also exists (archive_ncch.cpp:28,189)"
- name: "seeddb.bin"
path: "sysdata/seeddb.bin"
@@ -57,10 +52,34 @@ files:
source_ref: "src/core/file_sys/seed_db.cpp:15"
notes: "Required for some seed-encrypted games (9.6+ titles)"
# otp.bin, movable.sed, SecureInfo_A, LocalFriendCodeSeed_B
# do NOT exist in libretro/citra — they are Azahar-only features
# (src/core/hw/unique_data.cpp exists in azahar, not in libretro/citra)
# See emulators/azahar.yml for those files.
- name: "otp.bin"
path: "sysdata/otp.bin"
description: "One-time programmable memory dump"
required: false
source_ref: "src/core/hw/unique_data.cpp:214"
notes: "Console-unique OTP data; used for hardware key derivation"
# --- nand/ directory ---
- name: "movable.sed"
path: "nand/private/movable.sed"
description: "Movable unique key"
required: false
source_ref: "src/core/hw/unique_data.cpp:218"
notes: "Console-unique key seed for SD/NAND encryption; signature verified at load (unique_data.cpp:197)"
- name: "SecureInfo_A"
path: "nand/rw/sys/SecureInfo_A"
description: "Console serial and region info"
required: false
source_ref: "src/core/hw/unique_data.cpp:206"
notes: "Contains console serial number and region data"
- name: "LocalFriendCodeSeed_B"
path: "nand/rw/sys/LocalFriendCodeSeed_B"
description: "Friend code seed"
required: false
source_ref: "src/core/hw/unique_data.cpp:210"
notes: "Used for friend code generation"
# --- NAND system archives (installed titles) ---
- name: "shared font (system archive)"
-44
View File
@@ -1,44 +0,0 @@
emulator: Citra 2018
type: libretro
source: "https://github.com/libretro/citra2018"
upstream: "https://github.com/citra-emu/citra"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Nintendo - 3DS (Citra 2018)"
cores: [citra2018]
systems:
- nintendo-3ds
notes: |
Citra 2018 is a 2018 snapshot of the Citra 3DS emulator.
Older than current Azahar/Citra — fewer firmware files.
Data dir: citra-emu (not azahar-emu).
ref: src/common/common_paths.h:24
Uses RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY.
ref: src/citra_libretro/environment.cpp:107
Loads from sysdata/:
aes_keys.txt (not keys.txt like current Citra)
shared_font.bin
ref: src/core/hw/aes/key.cpp:72-73, src/core/hle/service/apt/apt.cpp:174
Does NOT load (added in later versions):
boot9.bin, sector0x96.bin, seeddb.bin, otp.bin,
movable.sed, SecureInfo_A, LocalFriendCodeSeed_B
firmware_count absent in .info (= 0). Files are optional (HLE).
files:
- name: aes_keys.txt
system: nintendo-3ds
required: false
note: "AES encryption keys (named aes_keys.txt, not keys.txt like current Citra)"
source_ref: "src/core/hw/aes/key.cpp:72-73"
- name: shared_font.bin
system: nintendo-3ds
required: false
hle_fallback: true
note: "system shared font, HLE fallback if missing"
source_ref: "src/core/hle/service/apt/apt.cpp:174"
-63
View File
@@ -1,63 +0,0 @@
emulator: Citra Canary
type: libretro
source: "https://github.com/libretro/citra"
upstream: "https://github.com/citra-emu/citra"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Nintendo - 3DS (Citra Canary/Experimental)"
cores: [citra_canary]
systems:
- nintendo-3ds
notes: |
Same repo as citra (libretro/citra master branch). Canary = experimental.
Data dir: citra-emu (not azahar-emu — this is pre-Azahar Citra).
ref: src/common/common_paths.h
Key file: aes_keys.txt (NOT keys.txt like Azahar).
ref: src/common/common_paths.h:68
Uses RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY.
ref: src/citra_libretro/environment.cpp:149
Files in sysdata/:
aes_keys.txt — AES encryption keys (common_paths.h:68)
boot9.bin — ARM9 bootrom (common_paths.h:69)
sector0x96.bin — secret NAND sector (common_paths.h:70)
shared_font.bin — system shared font, HLE fallback (common_paths.h:67)
seeddb.bin — game seed database (file_sys/seed_db.cpp:15)
NOTE: citra.yml profiles Azahar which uses keys.txt (not aes_keys.txt).
This core uses the pre-Azahar naming convention.
files:
- name: aes_keys.txt
system: nintendo-3ds
required: false
note: "AES keys (named aes_keys.txt in pre-Azahar Citra)"
source_ref: "src/common/common_paths.h:68, src/core/hw/aes/key.cpp"
- name: boot9.bin
system: nintendo-3ds
required: false
note: "ARM9 bootrom for key derivation"
source_ref: "src/common/common_paths.h:69"
- name: sector0x96.bin
system: nintendo-3ds
required: false
note: "OTP-encrypted NAND sector for key derivation"
source_ref: "src/common/common_paths.h:70"
- name: shared_font.bin
system: nintendo-3ds
required: false
hle_fallback: true
note: "system shared font, HLE fallback if missing"
source_ref: "src/common/common_paths.h:67"
- name: seeddb.bin
system: nintendo-3ds
required: false
note: "game seed database for seed-encrypted games (9.6+ titles)"
source_ref: "src/core/file_sys/seed_db.cpp:15"
+2 -3
View File
@@ -1,7 +1,6 @@
emulator: ClownMDEmu
type: standalone + libretro
source: "https://github.com/Clownacy/clownmdemu-libretro"
upstream: "https://github.com/Clownacy/clownmdemu"
type: libretro
source: "https://github.com/libretro/clownmdemu-libretro"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Sega - MD/CD (ClownMDEmu)"
+1 -2
View File
@@ -1,7 +1,6 @@
emulator: Daphne
type: standalone + libretro
type: libretro
source: "https://github.com/libretro/daphne"
upstream: "https://github.com/DirtBagXon/hypseus-singe"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Arcade (Daphne)"
+1 -4
View File
@@ -4,7 +4,7 @@ source: "https://github.com/libretro/desmume"
profiled_date: "2026-03-18"
core_version: "SVN"
display_name: "Nintendo - DS (DeSmuME)"
cores: [desmume]
cores: [desmume, desmume2015]
systems: [nintendo-ds]
notes: |
@@ -24,7 +24,6 @@ files:
system: nintendo-ds
description: "ARM7 BIOS"
required: false
hle_fallback: true
size: 16384
source_ref: "desmume/src/NDSSystem.cpp:2178-2182, frontend/libretro/libretro.cpp:763"
notes: "HLE fallback covers all SWI calls; native file needed for firmware boot and SWI-from-BIOS accuracy"
@@ -33,7 +32,6 @@ files:
system: nintendo-ds
description: "ARM9 BIOS"
required: false
hle_fallback: true
size: 4096
source_ref: "desmume/src/NDSSystem.cpp:2236-2239, frontend/libretro/libretro.cpp:764"
notes: "HLE fallback covers all SWI calls; native file needed for firmware boot and logo comparison (Pal Park)"
@@ -42,6 +40,5 @@ files:
system: nintendo-ds
description: "NDS firmware image"
required: false
hle_fallback: true
source_ref: "desmume/src/NDSSystem.cpp:2653-2655, frontend/libretro/libretro.cpp:765"
notes: "Dummy firmware generated when absent; native firmware needed for boot animation, wifi config, user settings"
-17
View File
@@ -1,17 +0,0 @@
emulator: DeSmuME 2015
type: libretro
source: "https://github.com/libretro/desmume2015"
profiled_date: "2026-03-19"
core_version: "SVN (2015 snapshot)"
display_name: "Nintendo - DS (DeSmuME 2015)"
cores: [desmume2015]
systems: [nintendo-ds]
exclusion_note: ".info declares firmware_count=3 but code never loads external BIOS (desmume_use_external_bios absent)"
notes: |
Frozen 2015 snapshot of DeSmuME. The external BIOS loading feature
(desmume_use_external_bios) does NOT exist in this version.
Verified: libretro.cpp has no bios7/bios9/firmware path construction.
ref: desmume2015/desmume/src/frontend/libretro/libretro.cpp
files: []
+5 -20
View File
@@ -6,24 +6,9 @@ core_version: "v1.0"
display_name: "Dinothawr"
cores: [dinothawr]
systems: []
notes: |
Puzzle game by the libretro team. Push blocks on ice.
Game data (TMX levels, sprites, music) needed for the core to work.
Two loading modes:
1. Load dinothawr.game as content (data in content directory)
2. supports_no_game=true: loads from system_dir/dinothawr/
ref: libretro.cpp:267-271 —
game_path_dir = join(system_dir, "/", "dinothawr")
game_path = join(game_path_dir, "/", "dinothawr.game")
Buildbot provides Dinothawr.zip via Core System Files Downloader.
ref: buildbot.libretro.com/assets/system/Dinothawr.zip
data_directories:
- ref: dinothawr
source_ref: "libretro.cpp:270-271"
files: []
# no BIOS/firmware — game data loaded via data_directories or content
notes: >
Puzzle game developed by the libretro team as a reference libretro core.
Push blocks on ice to solve puzzles. Game data (maps, sprites, music)
ships in the libretro repo and is loaded as content.
No BIOS, firmware, or system directory files required.
+5 -38
View File
@@ -1,41 +1,8 @@
emulator: DirkSimple
type: standalone + libretro
source: "https://github.com/icculus/DirkSimple"
upstream: "https://github.com/icculus/DirkSimple"
profiled_date: "2026-03-19"
emulator: "dirksimple"
type: alias
alias_of: "daphne"
profiled_date: "2026-03-18"
core_version: "0.2"
display_name: "Laserdisc arcade game (DirkSimple)"
cores: [dirksimple]
systems:
- laserdisc-arcade
notes: |
DirkSimple by Ryan C. Gordon (icculus). Plays laserdisc arcade games
via Lua scripts + Ogg Theora video. NOT related to Daphne — completely
different architecture.
Libretro port loads from system_dir/DirkSimple/.
ref: dirksimple_libretro.c:782,795 —
sysdir from RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY
basedir = sysdir + "/DirkSimple/"
DirkSimple_startup(basedir, info->path, ...) at line 798
Standalone loads from data/ in the binary's directory.
ref: README.md — "data directory must be included in same directory as binary"
Game data in data/games/<gamename>/game.lua + assets (PNG, WAV).
User provides the OGV laserdisc video as content.
Supported games: Dragon's Lair (lair), Cliff Hanger (cliff).
10 data files in the repo (game.lua scripts, sprites, sounds).
Buildbot provides DirkSimple.zip via Core System Files Downloader.
ref: buildbot.libretro.com/assets/system/DirkSimple.zip
data_directories:
- ref: dirksimple
source_ref: "dirksimple_libretro.c:795"
note: "This core uses the same BIOS/firmware as daphne. See emulators/daphne.yml for details."
files: []
# no BIOS/firmware — game data via data_directories
# user provides OGV video as content
-152
View File
@@ -22,7 +22,6 @@ files:
path: "GC/USA/IPL.bin"
size: 2097152 # 0x200000 (2 MB)
required: false
hle_fallback: true
note: "GameCube NTSC-U boot ROM. HLE available but real IPL needed for GC menu boot and accurate fonts"
source_ref: "Source/Core/Common/CommonPaths.h:139, Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:108"
@@ -30,7 +29,6 @@ files:
path: "GC/EUR/IPL.bin"
size: 2097152
required: false
hle_fallback: true
note: "GameCube PAL boot ROM"
source_ref: "Source/Core/Core/Config/MainSettings.cpp:744-750"
@@ -38,7 +36,6 @@ files:
path: "GC/JAP/IPL.bin"
size: 2097152
required: false
hle_fallback: true
note: "GameCube NTSC-J boot ROM"
source_ref: "Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:185"
@@ -50,7 +47,6 @@ files:
path: "GC/dsp_rom.bin"
size: 8192 # 0x2000 (DSP_IROM_BYTE_SIZE)
required: false
hle_fallback: true
note: "DSP instruction ROM for LLE audio. Free replacement included with Dolphin, real dump improves accuracy"
known_hash_adler32: "0x66f334fe" # official Nintendo ROM
source_ref: "Source/Core/Common/CommonPaths.h:136, Source/Core/Core/HW/DSPLLE/DSPLLE.cpp:106-117"
@@ -59,7 +55,6 @@ files:
path: "GC/dsp_coef.bin"
size: 4096 # 0x1000 (DSP_COEF_BYTE_SIZE)
required: false
hle_fallback: true
note: "DSP coefficient ROM for LLE audio and HLE polyphase resampling. Free replacement included"
known_hash_adler32: "0xf3b93527" # official Nintendo ROM
source_ref: "Source/Core/Common/CommonPaths.h:137, Source/Core/Core/DSP/DSPCore.cpp:32-33, Source/Core/Core/HW/DSPHLE/UCodes/AX.cpp:55-62"
@@ -72,7 +67,6 @@ files:
path: "GC/font_western.bin"
size: 9589 # 0x2575
required: false
hle_fallback: true
note: "Windows-1252 font for GC/Wii text rendering. Free alternative bundled, real one from IPL dump preferred"
source_ref: "Source/Core/Common/CommonPaths.h:133, Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:130,202-239"
@@ -80,7 +74,6 @@ files:
path: "GC/font_japanese.bin"
size: 303693 # 0x4A24D
required: false
hle_fallback: true
note: "Shift-JIS font for Japanese text. Free alternative bundled, real one from IPL dump preferred"
source_ref: "Source/Core/Common/CommonPaths.h:134, Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:129,234"
@@ -89,7 +82,6 @@ files:
- name: "gba_bios.bin"
path: "GBA/gba_bios.bin"
required: false
hle_fallback: true
note: "GBA BIOS for GC-GBA link feature (uses integrated mGBA). Path configurable in settings"
source_ref: "Source/Core/Common/CommonPaths.h:145, Source/Core/Core/HW/GBACore.cpp:346-363"
@@ -100,7 +92,6 @@ files:
- name: "SYSCONF"
path: "Wii/shared2/sys/SYSCONF"
required: false
hle_fallback: true
note: "Wii system configuration. Auto-generated by Dolphin, can be imported from NAND backup"
source_ref: "Source/Core/Common/CommonPaths.h:118, Source/Core/Common/FileUtil.cpp:900"
@@ -108,7 +99,6 @@ files:
path: "Wii/title/00000001/00000002/data/setting.txt"
size: 256
required: false
hle_fallback: true
note: "Wii region/language settings. Auto-generated by Dolphin during Wii boot emulation"
source_ref: "Source/Core/Common/CommonPaths.h:153, Source/Core/Core/Boot/Boot_BS2Emu.cpp:384-460"
@@ -116,7 +106,6 @@ files:
- name: "nand.bin"
path: null # user-selected via file dialog
required: false
hle_fallback: true
note: "BootMii NAND backup. Can be imported to populate Wii NAND with channels, saves, system menu"
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:26-39,42-89"
@@ -124,7 +113,6 @@ files:
path: null # user-selected, or appended to nand.bin
size: 1024 # 0x400 (NAND_KEYS_SIZE)
required: false
hle_fallback: true
note: "OTP/SEEPROM dump (Wii encryption keys). Needed if not appended to nand.bin for NAND import"
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:19,76-88, Source/Core/DiscIO/NANDImporter.h:28"
@@ -132,7 +120,6 @@ files:
- name: "WiiSD.raw"
path: "Load/WiiSD.raw"
required: false
hle_fallback: true
note: "Virtual SD card image for Wii homebrew. Auto-created by Dolphin, supports SD/SDHC up to 4GB"
source_ref: "Source/Core/Common/CommonPaths.h:150"
@@ -140,7 +127,6 @@ files:
- name: "codehandler.bin"
path: null # in Sys directory, shipped with Dolphin
required: false
hle_fallback: true
note: "Gecko/Ocarina cheat code handler. Shipped with Dolphin in Sys/, not user-supplied"
source_ref: "Source/Core/Common/CommonPaths.h:155, Source/Core/Core/GeckoCode.cpp:120"
@@ -148,7 +134,6 @@ files:
- name: "Wii System Menu"
path: null # installed to NAND via WAD import
required: false
hle_fallback: true
note: "Wii System Menu WAD. Installed to NAND via Tools > Install WAD, needed for Wii Menu boot"
source_ref: "Source/Core/DolphinQt/MainWindow.cpp:1581-1583, Source/Core/DolphinQt/MenuBar.cpp:1174-1188"
@@ -156,151 +141,21 @@ files:
- name: "clientca.pem"
path: "Wii/clientca.pem"
required: false
hle_fallback: true
note: "SSL client certificate. Auto-extracted from IOS13 content during NAND import"
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:201-285"
- name: "clientcakey.pem"
path: "Wii/clientcakey.pem"
required: false
hle_fallback: true
note: "SSL client private key. Auto-extracted from IOS13 content during NAND import"
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:237"
- name: "rootca.pem"
path: "Wii/rootca.pem"
required: false
hle_fallback: true
note: "SSL root CA certificate. Auto-extracted from IOS13 content during NAND import"
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:238"
# -- Realtek Bluetooth firmware (Wiimote passthrough) --
# Required for real Wiimote connectivity via USB Bluetooth adapters with Realtek chipsets.
# Dolphin can auto-download these from gitlab.com/kernel-firmware/linux-firmware.
# Placed in Load/Firmware/rtl_bt/ (standalone) or User/Load/Firmware/rtl_bt/ (libretro save dir).
# Each device needs _fw.bin (required) and _config.bin (optional, some devices).
# ref: Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:382-425,427-481
- name: "rtl8723a_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8723a_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8723A BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:387"
- name: "rtl8723b_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8723b_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8723B BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:389"
- name: "rtl8723d_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8723d_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8723D BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:391"
- name: "rtl8761a_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8761a_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8761A BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:393"
- name: "rtl8761bu_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8761bu_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8761BU BT firmware for Wiimote passthrough (most common USB dongle)"
source_ref: "RealtekFirmwareLoader.cpp:395"
- name: "rtl8821a_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8821a_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8821A BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:397"
- name: "rtl8821c_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8821c_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8821C BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:399"
- name: "rtl8822b_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8822b_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8822B BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:403"
- name: "rtl8822cu_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8822cu_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8822CU BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:401"
- name: "rtl8851bu_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8851bu_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8851BU BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:405"
- name: "rtl8852au_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8852au_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8852AU BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:407"
- name: "rtl8852bu_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8852bu_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8852BU BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:409"
- name: "rtl8852cu_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8852cu_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8852CU BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:411"
- name: "rtl8852btu_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8852btu_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8852BT/8852BE-VT BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:413"
- name: "rtl8922au_fw.bin"
path: "Load/Firmware/rtl_bt/rtl8922au_fw.bin"
required: false
hle_fallback: true
mode: standalone
note: "Realtek 8922AU BT firmware for Wiimote passthrough"
source_ref: "RealtekFirmwareLoader.cpp:415"
notes:
hle_available: true
hle_note: >
@@ -329,10 +184,3 @@ notes:
Wii NAND content (channels, saves, system menu) is managed by Dolphin internally.
Users can import a BootMii NAND backup (nand.bin + optional keys.bin) to populate it.
Most Wii games do not require a real NAND dump.
bt_passthrough_note: >
Bluetooth passthrough allows connecting real Wiimotes via USB Bluetooth adapters.
Realtek chipsets (very common) require firmware files in Load/Firmware/rtl_bt/.
Dolphin can auto-download these from kernel-firmware/linux-firmware on GitLab.
15 device families supported (8723A/B/D, 8761A/BU, 8821A/C, 8822B/CU, 8851BU,
8852AU/BU/CU/BTU, 8922AU). Each needs _fw.bin (required) + _config.bin (optional).
ref: RealtekFirmwareLoader.cpp:75-179 (device IDs), 382-420 (firmware names)
-1
View File
@@ -1,6 +1,5 @@
emulator: "Dolphin Launcher"
type: launcher
exclusion_note: "stub core calls standalone Dolphin — all BIOS in Dolphin's own directory"
source: "https://github.com/RobLoach/libretro-dolphin-launcher"
profiled_date: "2026-03-18"
core_version: "1.2.0"
+14 -183
View File
@@ -1,37 +1,25 @@
emulator: DOSBox-core
type: standalone + libretro
type: libretro
source: "https://github.com/libretro/dosbox-core"
upstream: "https://github.com/dosbox-staging/dosbox-staging"
profiled_date: "2026-03-19"
profiled_date: "2026-03-18"
core_version: "SVN"
display_name: "DOS (DOSBox-core)"
cores: [dosbox_core]
systems: [dos]
verification: sha1
notes: |
notes: >
No BIOS required. MT-32 and SoundFont support is optional for MIDI music.
Libretro mode:
MT-32 ROMs loaded by exact filename from system directory.
mt32.romdir = system_dir (libretro.cpp:652). CM-32L is default type.
ref: src/gui/midi_mt32.cpp:35,51-66
FluidSynth reads .sf2/.sf3/.dls/.gig from system/soundfonts/.
ref: libretro/src/libretro.cpp:1086-1097
BASSMIDI reads .sf2/.sfz from system/soundfonts/, requires BASS +
BASSMIDI shared libs in system dir (dlopen'd at runtime).
ref: libretro/src/midi_bassmidi.cpp:232-254
.info declares firmware_count=10 (4 ROMs + 6 BASS libs).
Standalone mode (DOSBox Staging):
MT-32 ROMs identified by SHA1 hash (MUNT), not filename. Any file in
mt32-roms/ dir scanned and matched. Split ROM pairs supported (_a+_b).
ref: dosbox-staging src/midi/mt32.cpp:109-148 (ROM defs), 470-484 (dir scan)
Default dir: config_dir/mt32-roms/ (dosbox.h:173)
Models: MT-32 v1.04-1.07, BlueRidge, v2.03-2.07, CM-32L v1.00-1.02, CM-32LN v1.00
Sound Canvas (SC-55/SC-155/SC-88) emulation with soundcanvas-roms/ dir.
ref: src/midi/soundcanvas.cpp, dosbox.h:174
SoundFonts in config_dir/soundfonts/ (dosbox.h:175)
ref: src/midi/fluidsynth.cpp:68-69,211
Unlike DOSBox Pure, this core expects MT-32 ROMs with exact filenames
directly in the system directory (no recursive scan, no ZIP support).
The mt32.romdir config option is set to the system directory by the
libretro frontend. CM-32L is the default emulated hardware type.
FluidSynth support reads .sf2/.sf3/.dls/.gig from system/soundfonts/.
BASSMIDI support reads .sf2/.sfz from system/soundfonts/ but also
requires the BASS and BASSMIDI shared libraries (downloaded separately
from https://www.un4seen.com) placed in the system directory.
Uses bundled MUNT (mt32emu) for MT-32 emulation, bundled FluidSynth
for SF2 playback. BASSMIDI is optional and loaded at runtime via dlopen.
The .info file declares firmware_count=10 (4 ROMs + 6 BASS libs).
files:
# -- MT-32 Control ROM --
@@ -41,7 +29,6 @@ files:
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.04"
required: false
hle_fallback: true
size: 65536
sha1: "5a5cb5a77d7d55ee69657c2f870416daed52dea7"
source_ref: "midi_mt32.cpp:55"
@@ -49,7 +36,6 @@ files:
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.05"
required: false
hle_fallback: true
size: 65536
sha1: "e17a3a6d265bf1fa150312061134293d2b58288c"
source_ref: "midi_mt32.cpp:55"
@@ -57,7 +43,6 @@ files:
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.06"
required: false
hle_fallback: true
size: 65536
sha1: "a553481f4e2794c10cfe597fef154eef0d8257de"
source_ref: "midi_mt32.cpp:55"
@@ -65,7 +50,6 @@ files:
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.07"
required: false
hle_fallback: true
size: 65536
sha1: "b083518fffb7f66b03c23b7eb4f868e62dc5a987"
source_ref: "midi_mt32.cpp:55, dosbox_core_libretro.info:firmware0"
@@ -74,7 +58,6 @@ files:
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control BlueRidge"
required: false
hle_fallback: true
size: 65536
sha1: "7b8c2a5ddb42fd0732e2f22b3340dcf5360edf92"
source_ref: "midi_mt32.cpp:55"
@@ -84,7 +67,6 @@ files:
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.03 (new MT-32)"
required: false
hle_fallback: true
size: 131072
sha1: "5837064c9df4741a55f7c4d8787ac158dff2d3ce"
source_ref: "midi_mt32.cpp:55"
@@ -92,7 +74,6 @@ files:
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.04"
required: false
hle_fallback: true
size: 131072
sha1: "2c16432b6c73dd2a3947cba950a0f4c19d6180eb"
source_ref: "midi_mt32.cpp:55"
@@ -100,7 +81,6 @@ files:
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.06"
required: false
hle_fallback: true
size: 131072
sha1: "2869cf4c235d671668cfcb62415e2ce8323ad4ed"
source_ref: "midi_mt32.cpp:55"
@@ -108,7 +88,6 @@ files:
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.07"
required: false
hle_fallback: true
size: 131072
sha1: "47b52adefedaec475c925e54340e37673c11707c"
source_ref: "midi_mt32.cpp:55"
@@ -119,7 +98,6 @@ files:
- name: "CM32L_CONTROL.ROM"
description: "CM-32L/LAPC-I Control v1.00"
required: false
hle_fallback: true
size: 65536
sha1: "73683d585cd6948cc19547942ca0e14a0319456d"
source_ref: "midi_mt32.cpp:53"
@@ -127,7 +105,6 @@ files:
- name: "CM32L_CONTROL.ROM"
description: "CM-32L/LAPC-I Control v1.02"
required: false
hle_fallback: true
size: 65536
sha1: "a439fbb390da38cada95a7cbb1d6ca199cd66ef8"
source_ref: "midi_mt32.cpp:53, dosbox_core_libretro.info:firmware2"
@@ -138,7 +115,6 @@ files:
- name: "MT32_PCM.ROM"
description: "MT-32 PCM ROM"
required: false
hle_fallback: true
size: 524288
sha1: "f6b1eebc4b2d200ec6d3d21d51325d5b48c60252"
source_ref: "midi_mt32.cpp:66, dosbox_core_libretro.info:firmware1"
@@ -147,150 +123,11 @@ files:
- name: "CM32L_PCM.ROM"
description: "CM-32L/CM-64/LAPC-I PCM ROM"
required: false
hle_fallback: true
size: 1048576
sha1: "289cc298ad532b702461bfc738009d9ebe8025ea"
source_ref: "midi_mt32.cpp:64, dosbox_core_libretro.info:firmware3"
notes: "pairs with MT-32 v2.x or CM-32L control ROMs (md5: 08cdcfa0ed93e9cb16afa76e6ac5f0a4)"
# -- CM-32LN / CM-500 / LAPC-N Control ROM (standalone) --
# Supported by MUNT (ROMInfo.cpp:77) but dosbox-core libretro only loads
# MT32_CONTROL.ROM or CM32L_CONTROL.ROM by exact name. Standalone DOSBox
# Staging identifies this ROM by SHA1 hash scan.
- name: "CM32LN_CONTROL.ROM"
description: "CM-32LN/CM-500/LAPC-N Control v1.00"
required: false
hle_fallback: true
size: 65536
sha1: "dc1c5b1b90a4646d00f7daf3679733c7badc7077"
mode: standalone
source_ref: "ROMInfo.cpp:77, dosbox-staging src/midi/mt32.cpp:145,242"
# -- Split ROM pairs (standalone mode) --
# MUNT supports split Control ROMs (_a + _b, 32KB each, interleaved) and
# split PCM ROMs (_l + _h, half-size each, appended).
# Only useful in standalone mode with SHA1 scan. Libretro mode needs full ROMs.
# ref: ROMInfo.cpp:56-70 (control splits), 79-84 (PCM splits)
- name: "MT-32 Control v1.04 half A"
description: "MT-32 Control v1.04 split (Mux0)"
required: false
hle_fallback: true
size: 32768
sha1: "9cd4858014c4e8a9dff96053f784bfaac1092a2e"
mode: standalone
source_ref: "ROMInfo.cpp:56"
- name: "MT-32 Control v1.04 half B"
description: "MT-32 Control v1.04 split (Mux1)"
required: false
hle_fallback: true
size: 32768
sha1: "fe8db469b5bfeb37edb269fd47e3ce6d91014652"
mode: standalone
source_ref: "ROMInfo.cpp:57"
- name: "MT-32 Control v1.05 half A"
description: "MT-32 Control v1.05 split (Mux0)"
required: false
hle_fallback: true
size: 32768
sha1: "57a09d80d2f7ca5b9734edbe9645e6e700f83701"
mode: standalone
source_ref: "ROMInfo.cpp:59"
- name: "MT-32 Control v1.05 half B"
description: "MT-32 Control v1.05 split (Mux1)"
required: false
hle_fallback: true
size: 32768
sha1: "52e3c6666db9ef962591a8ee99be0cde17f3a6b6"
mode: standalone
source_ref: "ROMInfo.cpp:60"
- name: "MT-32 Control v1.06 half A"
description: "MT-32 Control v1.06 split (Mux0)"
required: false
hle_fallback: true
size: 32768
sha1: "cc83bf23cee533097fb4c7e2c116e43b50ebacc8"
mode: standalone
source_ref: "ROMInfo.cpp:62"
- name: "MT-32 Control v1.06 half B"
description: "MT-32 Control v1.06 split (Mux1)"
required: false
hle_fallback: true
size: 32768
sha1: "bf4f15666bc46679579498386704893b630c1171"
mode: standalone
source_ref: "ROMInfo.cpp:63"
- name: "MT-32 Control v1.07 half A"
description: "MT-32 Control v1.07 split (Mux0)"
required: false
hle_fallback: true
size: 32768
sha1: "13f06b38f0d9e0fc050b6503ab777bb938603260"
mode: standalone
source_ref: "ROMInfo.cpp:65"
- name: "MT-32 Control v1.07 half B"
description: "MT-32 Control v1.07 split (Mux1)"
required: false
hle_fallback: true
size: 32768
sha1: "c55e165487d71fa88bd8c5e9c083bc456c1a89aa"
mode: standalone
source_ref: "ROMInfo.cpp:66"
- name: "MT-32 Control BlueRidge half A"
description: "MT-32 Control BlueRidge split (Mux0)"
required: false
hle_fallback: true
size: 32768
sha1: "11a6ae5d8b6ee328b371af7f1e40b82125aa6b4d"
mode: standalone
source_ref: "ROMInfo.cpp:68"
- name: "MT-32 Control BlueRidge half B"
description: "MT-32 Control BlueRidge split (Mux1)"
required: false
hle_fallback: true
size: 32768
sha1: "e0934320d7cbb5edfaa29e0d01ae835ef620085b"
mode: standalone
source_ref: "ROMInfo.cpp:69"
- name: "MT-32 PCM ROM low half"
description: "MT-32 PCM ROM first half (262144 bytes)"
required: false
hle_fallback: true
size: 262144
sha1: "3a1e19b0cd4036623fd1d1d11f5f25995585962b"
mode: standalone
source_ref: "ROMInfo.cpp:79"
- name: "MT-32 PCM ROM high half"
description: "MT-32 PCM ROM second half (262144 bytes)"
required: false
hle_fallback: true
size: 262144
sha1: "2cadb99d21a6a4a6f5b61b6218d16e9b43f61d01"
mode: standalone
source_ref: "ROMInfo.cpp:80"
- name: "CM-32L PCM ROM high half"
description: "CM-32L/CM-64/LAPC-I PCM upper half (524288 bytes)"
required: false
hle_fallback: true
size: 524288
sha1: "3ad889fde5db5b6437cbc2eb6e305312fec3df93"
mode: standalone
note: "lower half is identical to full MT-32 PCM ROM"
source_ref: "ROMInfo.cpp:84"
# -- BASS shared libraries (BASSMIDI driver) --
# Downloaded from https://www.un4seen.com, placed in system directory.
# Loaded at runtime via dlopen. Not redistributable ROMs.
@@ -298,42 +135,36 @@ files:
- name: "libbass.so"
description: "BASS audio library (Linux)"
required: false
hle_fallback: true
source_ref: "midi_bassmidi.cpp:238, dosbox_core_libretro.info:firmware4"
notes: "proprietary library from un4seen.com, not a ROM"
- name: "libbassmidi.so"
description: "BASSMIDI addon library (Linux)"
required: false
hle_fallback: true
source_ref: "midi_bassmidi.cpp:239, dosbox_core_libretro.info:firmware5"
notes: "proprietary library from un4seen.com, not a ROM"
- name: "bass.dll"
description: "BASS audio library (Windows)"
required: false
hle_fallback: true
source_ref: "midi_bassmidi.cpp:232, dosbox_core_libretro.info:firmware6"
notes: "proprietary library from un4seen.com, not a ROM"
- name: "bassmidi.dll"
description: "BASSMIDI addon library (Windows)"
required: false
hle_fallback: true
source_ref: "midi_bassmidi.cpp:233, dosbox_core_libretro.info:firmware7"
notes: "proprietary library from un4seen.com, not a ROM"
- name: "libbass.dylib"
description: "BASS audio library (macOS)"
required: false
hle_fallback: true
source_ref: "midi_bassmidi.cpp:235, dosbox_core_libretro.info:firmware8"
notes: "proprietary library from un4seen.com, not a ROM"
- name: "libbassmidi.dylib"
description: "BASSMIDI addon library (macOS)"
required: false
hle_fallback: true
source_ref: "midi_bassmidi.cpp:236, dosbox_core_libretro.info:firmware9"
notes: "proprietary library from un4seen.com, not a ROM"
+26 -57
View File
@@ -1,40 +1,24 @@
emulator: DOSBox Pure
type: standalone + libretro
type: libretro
source: "https://github.com/libretro/dosbox-pure"
upstream: "https://github.com/schellingb/dosbox-pure"
logo: "https://raw.githubusercontent.com/schellingb/dosbox-pure/main/images/logo.png"
profiled_date: "2026-03-19"
profiled_date: "2026-03-18"
core_version: "0.9.9"
display_name: "DOS (DOSBox-Pure)"
cores: [dosbox_pure]
systems: [dos]
verification: sha1
notes: |
notes: >
No BIOS required. MT-32 and SoundFont support is optional for MIDI music.
ROM scanning (both modes):
Recursive scan of system directory for *_CONTROL.ROM and *.SF2/*.SF3.
ref: dosbox_pure_libretro.cpp:1367-1378
MT-32 requires matched pair: *_CONTROL.ROM + *_PCM.ROM (PCM name derived
from CONTROL name by replacing CONTROL with PCM, preserving case).
ref: dosbox_pure_libretro.cpp:182-199
ZIP archives also supported — scanned for files by size (65536/131072 =
control, 524288/1048576 = PCM), not by name.
ref: midi_mt32.h:160-166
Files can also be on mounted C: drive (DOSBOX.SF2, MT32_CONTROL.ROM).
ref: dosbox_pure_libretro.cpp:2760-2762
Cache file DOSBoxPureMidiCache.txt written when scan >2s.
ref: dosbox_pure_libretro.cpp:1393-1413
Bundled MUNT (header-only mt32emu.h) for MT-32 emulation.
SHA1-based ROM identification (mt32emu.h:5112-5127,5185).
13 full control ROMs + 2 PCM ROMs supported (no split ROMs in this MUNT).
Includes MT-32 v2.03 (not in dosbox-core's MUNT).
TinySoundFont (tsf.h) for SF2/SF3 playback.
No firmware entries in .info file — all MIDI files optional.
DBP_STANDALONE build mode exists (same MIDI logic, different I/O layer).
ref: dosbox_pure_libretro.cpp:81,1558,2270
The core scans the RetroArch system directory (and subdirectories) for files
ending in _CONTROL.ROM (MT-32/CM-32L) and .SF2/.SF3 (General MIDI SoundFont).
MT-32 requires a matched pair: *_CONTROL.ROM + *_PCM.ROM in the same directory.
Files can also be placed inside the game content as DOSBOX.SF2 or MT32_CONTROL.ROM
+ MT32_PCM.ROM on the mounted C: drive. ZIP archives containing both ROMs are
also supported (identified by file size, not name). A cache file
DOSBoxPureMidiCache.txt is written to system dir when scan takes >2s.
Uses bundled MUNT (mt32emu) for MT-32 emulation, TinySoundFont for SF2 playback.
No firmware entries in the .info file - all MIDI files are optional enhancements.
files:
# -- MT-32 Control ROMs (64 KB) --
@@ -42,123 +26,109 @@ files:
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.04"
required: false
hle_fallback: true
size: 65536
sha1: "5a5cb5a77d7d55ee69657c2f870416daed52dea7"
source_ref: "mt32emu.h:5112,5129"
source_ref: "mt32emu.h:CTRL_MT32_V1_04"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.05"
required: false
hle_fallback: true
size: 65536
sha1: "e17a3a6d265bf1fa150312061134293d2b58288c"
source_ref: "mt32emu.h:5113,5130"
source_ref: "mt32emu.h:CTRL_MT32_V1_05"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.06"
required: false
hle_fallback: true
size: 65536
sha1: "a553481f4e2794c10cfe597fef154eef0d8257de"
source_ref: "mt32emu.h:5114,5131"
source_ref: "mt32emu.h:CTRL_MT32_V1_06"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.07"
required: false
hle_fallback: true
size: 65536
sha1: "b083518fffb7f66b03c23b7eb4f868e62dc5a987"
source_ref: "mt32emu.h:5115,5132"
source_ref: "mt32emu.h:CTRL_MT32_V1_07"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control BlueRidge"
required: false
hle_fallback: true
size: 65536
sha1: "7b8c2a5ddb42fd0732e2f22b3340dcf5360edf92"
source_ref: "mt32emu.h:5116,5133"
source_ref: "mt32emu.h:CTRL_MT32_BLUER"
# -- MT-32 v2.x Control ROMs (128 KB) --
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.03 (new MT-32)"
required: false
hle_fallback: true
size: 131072
sha1: "5837064c9df4741a55f7c4d8787ac158dff2d3ce"
source_ref: "mt32emu.h:5118,5135"
source_ref: "mt32emu.h:CTRL_MT32_V2_03"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.04"
required: false
hle_fallback: true
size: 131072
sha1: "2c16432b6c73dd2a3947cba950a0f4c19d6180eb"
source_ref: "mt32emu.h:5119,5136"
source_ref: "mt32emu.h:CTRL_MT32_V2_04"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.06"
required: false
hle_fallback: true
size: 131072
sha1: "2869cf4c235d671668cfcb62415e2ce8323ad4ed"
source_ref: "mt32emu.h:5120,5137"
source_ref: "mt32emu.h:CTRL_MT32_V2_06"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.07"
required: false
hle_fallback: true
size: 131072
sha1: "47b52adefedaec475c925e54340e37673c11707c"
source_ref: "mt32emu.h:5121,5138"
source_ref: "mt32emu.h:CTRL_MT32_V2_07"
# -- CM-32L / LAPC-I Control ROMs (64 KB) --
- name: "CM32L_CONTROL.ROM"
description: "CM-32L/LAPC-I Control v1.00"
required: false
hle_fallback: true
size: 65536
sha1: "73683d585cd6948cc19547942ca0e14a0319456d"
source_ref: "mt32emu.h:5122,5139"
source_ref: "mt32emu.h:CTRL_CM32L_V1_00"
- name: "CM32L_CONTROL.ROM"
description: "CM-32L/LAPC-I Control v1.02"
required: false
hle_fallback: true
size: 65536
sha1: "a439fbb390da38cada95a7cbb1d6ca199cd66ef8"
source_ref: "mt32emu.h:5123,5140"
source_ref: "mt32emu.h:CTRL_CM32L_V1_02"
# -- CM-32LN / CM-500 / LAPC-N Control ROM (64 KB) --
- name: "CM32LN_CONTROL.ROM"
description: "CM-32LN/CM-500/LAPC-N Control v1.00"
required: false
hle_fallback: true
size: 65536
sha1: "dc1c5b1b90a4646d00f7daf3679733c7badc7077"
source_ref: "mt32emu.h:5124,5141"
source_ref: "mt32emu.h:CTRL_CM32LN_V1_00"
# -- PCM ROMs --
- name: "MT32_PCM.ROM"
description: "MT-32 PCM ROM"
required: false
hle_fallback: true
size: 524288
sha1: "f6b1eebc4b2d200ec6d3d21d51325d5b48c60252"
source_ref: "mt32emu.h:5126,5143"
source_ref: "mt32emu.h:PCM_MT32"
notes: "pairs with any MT-32 v1.x control ROM"
- name: "CM32L_PCM.ROM"
description: "CM-32L/CM-64/LAPC-I PCM ROM"
required: false
hle_fallback: true
size: 1048576
sha1: "289cc298ad532b702461bfc738009d9ebe8025ea"
source_ref: "mt32emu.h:5127,5144"
source_ref: "mt32emu.h:PCM_CM32L"
notes: "pairs with MT-32 v2.x or CM-32L control ROMs. Lower half aliases MT-32 PCM."
# -- General MIDI SoundFont --
@@ -166,7 +136,6 @@ files:
- name: "DOSBOX.SF2"
description: "General MIDI SoundFont (any .sf2/.sf3 accepted)"
required: false
hle_fallback: true
source_ref: "dosbox_pure_libretro.cpp:1375,2760"
notes: >
Any .SF2 or .SF3 file in the system directory works. The core lists all
+5 -24
View File
@@ -1,27 +1,8 @@
emulator: DOSBox-SVN
type: libretro
source: "https://github.com/libretro/dosbox-svn"
upstream: "https://sourceforge.net/projects/dosbox/"
profiled_date: "2026-03-19"
emulator: "dosbox_svn"
type: alias
alias_of: "dosbox_core"
profiled_date: "2026-03-18"
core_version: "SVN"
display_name: "DOS (DOSBox-SVN)"
cores: [dosbox_svn]
systems: [dos]
notes: |
DOSBox-SVN is the same codebase as dosbox_svn_ce but builds with a fake
SDL shim (WITH_FAKE_SDL=1) instead of real SDL, for broader platform compat.
ref: libretro/Makefile.libretro, libretro/fakesdl/
No MT-32 emulation — no MUNT bundled, no mt32emu, no FluidSynth, no BASS.
The src/midi/munt directory referenced in Makefile.common does not exist.
MIDI output is hardware-only via fake SDL stubs.
ref: src/gui/midi.cpp
system_directory is read (libretro.cpp:1399) but only logged, never used
to load any files.
NOT an alias of dosbox_core — completely different MIDI capabilities.
dosbox_core has MUNT + FluidSynth + BASSMIDI. This core has none.
note: "This core uses the same BIOS/firmware as dosbox_core. See emulators/dosbox_core.yml for details."
files: []
# No BIOS, firmware, ROMs, or system files of any kind.
+5 -26
View File
@@ -1,29 +1,8 @@
emulator: DOSBox-SVN CE
type: libretro
source: "https://github.com/libretro/dosbox-svn"
upstream: "https://sourceforge.net/projects/dosbox/"
profiled_date: "2026-03-19"
emulator: "dosbox_svn_ce"
type: alias
alias_of: "dosbox_core"
profiled_date: "2026-03-18"
core_version: "SVN CE"
display_name: "DOS (DOSBox-SVN CE)"
cores: [dosbox_svn_ce]
systems: [dos]
notes: |
DOSBox-SVN CE (Community Edition) is the same codebase as dosbox_svn but
builds against real SDL 1.2 + SDL_net instead of the fake SDL shim.
ref: libretro/Makefile.libretro (WITH_FAKE_SDL flag)
No MT-32 emulation — no MUNT bundled, no mt32emu, no FluidSynth, no BASS.
The src/midi/munt directory referenced in Makefile.common does not exist.
MIDI output is hardware-only (ALSA, CoreAudio, CoreMIDI, Win32, OSS).
ref: src/gui/midi.cpp, src/gui/midi_alsa.h, midi_coreaudio.h, etc.
system_directory is read (libretro.cpp:1399) but only logged, never used
to load any files.
NOT an alias of dosbox_core — completely different MIDI capabilities.
dosbox_core has MUNT + FluidSynth + BASSMIDI. This core has none.
Requires libsdl1.2 and libsdl-net1.2 at runtime (.info notes).
note: "This core uses the same BIOS/firmware as dosbox_core. See emulators/dosbox_core.yml for details."
files: []
# No BIOS, firmware, ROMs, or system files of any kind.
+4 -5
View File
@@ -1,8 +1,7 @@
emulator: doukutsu-rs
type: standalone + libretro
source: "https://github.com/DrGlaucous/doukutsu-rs-nm"
upstream: "https://github.com/doukutsu-rs/doukutsu-rs"
profiled_date: "2026-03-19"
emulator: "doukutsu-rs"
type: libretro
source: "https://github.com/DrGlaucous/doukutsu-rs-libretro"
profiled_date: "2026-03-18"
core_version: "1.2.0 - 0.101.0"
display_name: "Cave Story (drs)"
cores:
+10 -26
View File
@@ -1,36 +1,20 @@
emulator: DuckStation
type: standalone + libretro
type: standalone
source: "https://github.com/stenzek/duckstation"
logo: "https://raw.githubusercontent.com/stenzek/duckstation/master/data/resources/images/duck.png"
profiled_date: "2026-03-19"
profiled_date: "2026-03-18"
core_version: "v0.1"
display_name: "Sony - PlayStation (DuckStation)"
cores: [duckstation]
systems: [sony-playstation]
bios_size: 524288 # 0x80000 (512 KB), also accepts PS2 (4 MB) and PS3 (0x3E66F0)
bios_size: 524288 # 0x80000 (512 KB), also accepts PS2 (4 MB) and PS3 BIOS
verification: md5
notes: |
DuckStation auto-detects BIOS by MD5 hash from a flat scan of the BIOS directory.
ref: src/core/bios.cpp:459-481 (FindBIOSImagesInDirectory — scans all files by size)
ref: src/core/bios.cpp:208 (MD5Digest::HashData identification)
Accepts PS1 (512 KB), PS2 (4 MB), and PS3 (0x3E66F0) BIOS images.
ref: src/core/bios.h:24-26 (BIOS_SIZE, BIOS_SIZE_PS2, BIOS_SIZE_PS3)
Only the first 512 KB are mapped (bios.cpp:212).
105 known BIOS entries (24 PS1 + 80 PS2 + 1 KDL-22PX300) identified by MD5.
ref: src/core/bios.cpp:34-139 (s_image_info_by_hash)
Each image has: region, region_check, fast_boot_patch type, priority score.
Lower priority = preferred. PS2 deprioritized (>= 100) for dynamic fast boot.
Late PAL deprioritized (>= 150) due to additional regional checks.
OpenBIOS detected by signature at offset 0x78, not by hash.
ref: src/core/bios.cpp:142-147
Standalone: BIOS dir = EmuFolders::Bios (configurable, default bios/).
ref: src/core/bios.cpp:375,380
Libretro: BIOS dir = RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY (flat).
The libretro core was removed by the author (license change to non-commercial).
The .info file and buildbot builds still exist from community forks.
notes: >
DuckStation auto-detects BIOS by MD5 hash. It accepts PS1, PS2 and PS3 BIOS images
(only the first 512 KB are mapped). Each image has a priority score - lower is better.
Images with region_check=true enforce region matching for disc booting.
PS2 BIOS images are deprioritized (priority >= 100) due to requiring dynamic fast boot patches.
Late PAL revisions are further deprioritized due to additional regional checks.
OpenBIOS is detected by signature at offset 0x78, not by hash.
files:
# -- PS1 BIOS images (priority <= 20, preferred) --
+2 -7
View File
@@ -1,8 +1,7 @@
emulator: EasyRPG Player
type: standalone + libretro
type: libretro
source: "https://github.com/libretro/easyrpg-libretro"
upstream: "https://github.com/EasyRPG/Player"
profiled_date: "2026-03-19"
profiled_date: "2026-03-18"
core_version: "0.8.1.0"
display_name: "RPG Maker 2000/2003 (EasyRPG)"
cores:
@@ -67,7 +66,6 @@ files:
- name: "easyrpg.soundfont"
path: "easyrpg.soundfont"
required: false
hle_fallback: true
source_ref: "decoder_fluidsynth.cpp:125, scene_logo.cpp:261"
note: >
General MIDI soundfont (SF2 format) for MIDI music playback. Many RPG
@@ -83,7 +81,6 @@ files:
- name: "wildmidi.cfg"
path: "wildmidi.cfg"
required: false
hle_fallback: true
source_ref: "decoder_wildmidi.cpp:103-104"
note: >
WildMidi configuration file pointing to GUS patch sets for MIDI
@@ -98,7 +95,6 @@ files:
- name: "RPG Maker 2000 RTP"
path: "rtp/2000/"
required: false
hle_fallback: true
type: directory
source_ref: "filefinder_rtp.cpp:73-74"
note: >
@@ -117,7 +113,6 @@ files:
- name: "RPG Maker 2003 RTP"
path: "rtp/2003/"
required: false
hle_fallback: true
type: directory
source_ref: "filefinder_rtp.cpp:73-74"
note: >
+16 -25
View File
@@ -1,34 +1,25 @@
emulator: ECWolf
type: standalone + libretro
type: libretro
source: "https://github.com/libretro/ecwolf"
upstream: "https://bitbucket.org/ecwolf/ecwolf"
profiled_date: "2026-03-19"
core_version: "1.4.1"
profiled_date: "2026-03-18"
core_version: ""
display_name: "Wolfenstein 3D (ECWolf)"
display_name: "Wolfenstein 3D (ECWolf)"
cores: [ecwolf]
systems: [wolfenstein3d]
verification: md5
notes: |
Wolfenstein 3D source port by Braden Obrzut. Plays Wolf3D (wl6/wl1),
Spear of Destiny (sod/sdm), Super 3D Noah's Ark (n3d), and community pk3 mods.
Requires ecwolf.pk3 — engine data package built from wadsrc/static/.
Contains IWADINFO (game detection rules), palettes, sprites, map configs,
DECORATE actor definitions, MAPINFO, SNDINFO, fonts, and localization strings.
Without this file: "Could not open ecwolf.pk3!" fatal error.
ref: version.h:12 (MAIN_PK3), wl_iwad.cpp:642-657 (load + fatal)
Libretro: ecwolf.pk3 searched in system_dir.
ref: libretro/libretro.cpp:831-832 (sysDir passed to SelectGame)
Standalone: ecwolf.pk3 searched in progdir (binary directory).
ref: wl_main.cpp:1289 (progdir passed to SelectGame)
Also: INSTALL_PREFIX/share/ecwolf/ on Linux (wl_iwad.cpp:648)
Game data files (vswap, gamemaps, vgagraph, audiot) loaded from content
directory, not system directory. Auto-detects game variant by scanning
lump contents against IWADINFO MustContain rules.
Blake Stone and Rise of the Triad support flagged as Preview.
notes: >
Wolfenstein 3D source port. Plays Wolf3D (wl6/wl1), Spear of Destiny (sod/sdm),
Super 3D Noah's Ark (n3d), and community pk3 mods. The core requires ecwolf.pk3
in the system directory - this is the engine data package built from wadsrc/static/
containing IWADINFO definitions, palettes, sprites, map configs, and lump remappers.
Game data files (vswap, gamemaps, vgagraph, audiot) are loaded from the content
directory, not the system directory. The core auto-detects the game variant by
scanning lump contents against IWADINFO MustContain rules. Spear of Destiny
mission packs (sd2/sd3) and Mac Wolfenstein variants are also supported.
Blake Stone and Rise of the Triad support is flagged as Preview.
The SelectGame path searches: content directory, system directory, BaseDataPaths
config, then platform-specific paths (Steam, GOG installs on desktop).
files:
- name: "ecwolf.pk3"
+3 -3
View File
@@ -1,10 +1,10 @@
emulator: EmuSCV
type: standalone + libretro
type: libretro
source: "https://github.com/wzcwzc/emuscv"
upstream: "https://github.com/wzcwzc/emuscv"
profiled_date: "2026-03-19"
profiled_date: "2026-03-18"
core_version: ""
display_name: "EPOCH/YENO Super Cassette Vision"
display_name: "EPOCH/YENO Super Cassette Vision"
cores:
- emuscv
systems:
-22
View File
@@ -69,7 +69,6 @@ files:
path: ep128emu/roms/exos21.rom
md5: f36f24cbb87745fbd2714e4df881db09
required: false
hle_fallback: true
system: enterprise-128
has_builtin: true
note: "Enterprise 128 EXOS 2.1. Default OS for EP128 machines."
@@ -79,7 +78,6 @@ files:
path: ep128emu/roms/exos20.rom
md5: 5ad3baaad3b5156d6b60b34229a676fb
required: false
hle_fallback: true
system: enterprise-64
has_builtin: true
note: "Enterprise 64 EXOS 2.0. Used when EP64 machine type is selected."
@@ -89,7 +87,6 @@ files:
path: ep128emu/roms/exos24uk.rom
md5: 55af78f877a21ca45eb2df68a74fcc60
required: false
hle_fallback: true
system: enterprise-128
has_builtin: true
note: "Enterprise 128 EXOS 2.4 (UK). Used when enhanced ROM mode is enabled. 64K, loaded across segments 0-3."
@@ -103,7 +100,6 @@ files:
path: ep128emu/roms/basic21.rom
md5: e972fe42b398c9ff1d93ff014786aec6
required: false
hle_fallback: true
system: enterprise-128
has_builtin: true
note: "Enterprise 128 BASIC 2.1. Loaded when cartridge mode is active (default)."
@@ -113,7 +109,6 @@ files:
path: ep128emu/roms/basic20.rom
md5: 8e18edce4a7acb2c33cc0ab18f988482
required: false
hle_fallback: true
system: enterprise-64
has_builtin: true
note: "Enterprise 64 BASIC 2.0. Used with EP64 machine type."
@@ -127,7 +122,6 @@ files:
path: ep128emu/roms/exdos13.rom
md5: ddff70c014d1958dc75378b6c9aab6f8
required: false
hle_fallback: true
system: enterprise-128
has_builtin: true
note: "EXDOS 1.3 disk controller. Loaded for EP128_DISK and EP64_DISK modes. 32K across segments 0x20-0x21."
@@ -136,7 +130,6 @@ files:
- name: exdos14isdos10uk.rom
path: ep128emu/roms/exdos14isdos10uk.rom
required: false
hle_fallback: true
system: enterprise-128
has_builtin: true
note: "EXDOS 1.4 + IS-DOS 1.0 (UK). Used for IS-DOS disk mode instead of exdos13.rom."
@@ -150,7 +143,6 @@ files:
path: ep128emu/roms/epfileio.rom
md5: a68ebcbc73a4d2178d755b7755bf18fe
required: false
hle_fallback: true
system: enterprise-128
has_builtin: true
bundled: true
@@ -161,7 +153,6 @@ files:
path: ep128emu/roms/zt19uk.rom
md5: 228540b6be83ae2acd7569c8ff0f91d0
required: false
hle_fallback: true
system: enterprise-128
has_builtin: true
note: "ZozoTools 1.9 (UK). Loaded for DTF (direct tape file) mode. 32K across segments 0x40-0x41."
@@ -175,7 +166,6 @@ files:
path: ep128emu/roms/hun.rom
md5: 22167938f142c222f40992839aa21a06
required: false
hle_fallback: true
system: enterprise-128
has_builtin: true
note: "Hungarian language extension. Auto-loaded when content locale is Hungarian."
@@ -184,7 +174,6 @@ files:
- name: epdos16f.rom
path: ep128emu/roms/epdos16f.rom
required: false
hle_fallback: true
system: enterprise-128
has_builtin: true
note: "EP-DOS 1.6f. Provides HFONT and CLKOFF for Hungarian locale. 32K across segments 0x06-0x07."
@@ -194,7 +183,6 @@ files:
path: ep128emu/roms/brd.rom
md5: 6af0402906944fd134004b85097c8524
required: false
hle_fallback: true
system: enterprise-128
has_builtin: true
note: "German (BRD) language extension. Auto-loaded when content locale is German."
@@ -228,7 +216,6 @@ files:
path: ep128emu/roms/tvc22_sys.rom
md5: 8c54285f541930cde766069942bad0f2
required: false
hle_fallback: true
system: videoton-tvc
has_builtin: true
note: "TVC system ROM v2.2. Main BIOS for all TVC modes."
@@ -238,7 +225,6 @@ files:
path: ep128emu/roms/tvc22_ext.rom
md5: 5ce95a26ceed5bec73995d83568da9cf
required: false
hle_fallback: true
system: videoton-tvc
has_builtin: true
note: "TVC extension ROM v2.2. Loaded alongside tvc22_sys.rom."
@@ -248,7 +234,6 @@ files:
path: ep128emu/roms/tvcfileio.rom
md5: a2cf86ba8e7fc58b242137fe59036832
required: false
hle_fallback: true
system: videoton-tvc
has_builtin: true
bundled: true
@@ -259,7 +244,6 @@ files:
path: ep128emu/roms/tvc_dos12d.rom
md5: 88dc7876d584f90e4106f91444ab23b7
required: false
hle_fallback: true
system: videoton-tvc
has_builtin: true
note: "TVC DOS 1.2d. Loaded for TVC64_DISK mode."
@@ -273,7 +257,6 @@ files:
path: ep128emu/roms/cpc464.rom
md5: a993f85b88ac4350cf4d41554e87fe4f
required: false
hle_fallback: true
system: amstrad-cpc
has_builtin: true
note: "CPC 464 combined ROM (OS + BASIC). 32K loaded at segments 0x10 (OS) and 0x00 (BASIC) with offset."
@@ -283,7 +266,6 @@ files:
path: ep128emu/roms/cpc664.rom
md5: 5a384a2310f472c7857888371c00ed66
required: false
hle_fallback: true
system: amstrad-cpc
has_builtin: true
note: "CPC 664 combined ROM (OS + BASIC). Used for CPC_664_DISK mode."
@@ -293,7 +275,6 @@ files:
path: ep128emu/roms/cpc6128.rom
md5: b96280dc6c95a48857b4b8eb931533ae
required: false
hle_fallback: true
system: amstrad-cpc
has_builtin: true
note: "CPC 6128 combined ROM (OS + BASIC). Default CPC machine when no specific model requested."
@@ -303,7 +284,6 @@ files:
path: ep128emu/roms/cpc_amsdos.rom
md5: 25629dfe870d097469c217b95fdc1c95
required: false
hle_fallback: true
system: amstrad-cpc
has_builtin: true
note: "AMSDOS disk controller ROM. Loaded for CPC_DISK and CPC_664_DISK modes."
@@ -317,7 +297,6 @@ files:
path: ep128emu/roms/zx128.rom
md5: 85fede415f4294cc777517d7eada482e
required: false
hle_fallback: true
system: zx-spectrum
has_builtin: true
note: "ZX Spectrum 128K ROM. 32K loaded at segments 0x00-0x01."
@@ -327,7 +306,6 @@ files:
path: ep128emu/roms/zx48.rom
md5: 4c42a2f075212361c3117015b107ff68
required: false
hle_fallback: true
system: zx-spectrum
has_builtin: true
note: "ZX Spectrum 48K ROM. Used for ZX16 and ZX48 modes."
-1
View File
@@ -38,7 +38,6 @@ files:
system: nintendo-gbc
description: "Game Boy Color (CGB-001) boot ROM"
required: false
hle_fallback: true
size: 2304
md5: "dbfce9db9deaa2567f6a84fde55f9680"
sha1: "1293d68bf9643bc4f36954c1e80e38f39864528d"
-3
View File
@@ -41,7 +41,6 @@ files:
- name: "dc_boot.bin"
system: sega-dreamcast
required: false
hle_fallback: true
size: 2097152 # 2 MB
note: "Dreamcast boot ROM. HLE BIOS (reios) used as fallback."
source_ref: "core/hw/flashrom/nvmem.cpp:287"
@@ -49,7 +48,6 @@ files:
- name: "dc_bios.bin"
system: sega-dreamcast
required: false
hle_fallback: true
size: 2097152
note: "Alternate name for Dreamcast boot ROM."
source_ref: "core/hw/flashrom/nvmem.cpp:287"
@@ -57,7 +55,6 @@ files:
- name: "dc_flash.bin"
system: sega-dreamcast
required: false
hle_fallback: true
size: 131072 # 128 KB
note: "Dreamcast flash memory (settings, saves). Created if missing."
source_ref: "core/hw/flashrom/nvmem.cpp:246"
+1 -8
View File
@@ -26,10 +26,7 @@ notes: |
ROM-specific overlays are optional 370x600 PNG files placed by the user in
system/freeintv_overlays/<rom_name>.png. These are cosmetic per-game keypad
images loaded via stbi_load() (src/libretro.c:273). Core falls back to
embedded default_keypad_image.h if no per-game overlay found.
90 overlays available in Assets/Overlays.zip in the core repo.
Not on RetroArch buildbot — sourced from core repo via _data_dirs.yml.
images and are not BIOS files.
BIOS loading is unchanged from the base FreeIntv core. retro_load_game()
(src/libretro.c:1169-1174) loads exec.bin and grom.bin from the system
@@ -37,10 +34,6 @@ notes: |
bios_identical_to: freeintv
data_directories:
- ref: freeintv-overlays
destination: freeintv_overlays
files:
- name: "exec.bin"
system: intellivision
-4
View File
@@ -57,7 +57,6 @@ files:
system: commodore-c64
description: "C64 BASIC V2 ROM"
required: false
hle_fallback: true
embedded: true
size: 8192
note: "Embedded as builtin_basic_rom[] in Basic_ROM.h. External file never loaded in practice (DATADIR is empty, path is bare filename in cwd)."
@@ -67,7 +66,6 @@ files:
system: commodore-c64
description: "C64 Kernal ROM"
required: false
hle_fallback: true
embedded: true
size: 8192
note: "Embedded as builtin_kernal_rom[] in Kernal_ROM.h. Patched at runtime for fast reset and 1541 IEC traps."
@@ -77,7 +75,6 @@ files:
system: commodore-c64
description: "C64 Character Generator ROM"
required: false
hle_fallback: true
embedded: true
size: 4096
note: "Embedded as builtin_char_rom[] in Char_ROM.h. Used by VIC-II for text/bitmap rendering."
@@ -87,7 +84,6 @@ files:
system: commodore-c64
description: "Commodore 1541 floppy drive ROM"
required: false
hle_fallback: true
embedded: true
size: 16384
note: "Embedded as builtin_drive_rom[] in 1541_ROM.h. Patched at runtime to disable checksum and trap disk I/O."
-18
View File
@@ -37,7 +37,6 @@ files:
- name: "fuse/48.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 4c42a2f075212361c3117015b107ff68
sha1: 5ea7c2b824672e914525d1d5c419d71b84a426a2
size: 16384
@@ -47,7 +46,6 @@ files:
- name: "fuse/128-0.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: b4d2692115a9f2924df92a3cbfb358fb
sha1: 4f4b11ec22326280bdb96e3baf9db4b4cb1d02c5
size: 16384
@@ -57,7 +55,6 @@ files:
- name: "fuse/128-1.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 6e09e5d3c4aef166601669feaaadc01c
sha1: 80080644289ed93d71a1103992a154cc9802b2fa
size: 16384
@@ -67,7 +64,6 @@ files:
- name: "fuse/plus2-0.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 4ed7af4636308b8a48d7a35e6c5b546b
sha1: 72703f9a3e734f3c23ec34c0727aae4ccbef9a91
size: 16384
@@ -77,7 +73,6 @@ files:
- name: "fuse/plus2-1.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: b3db95931cc844efaeb82db9c171b9f3
sha1: de8b0d2d0379cfe7c39322a086ca6da68c7f23cb
size: 16384
@@ -87,7 +82,6 @@ files:
- name: "fuse/plus3-0.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 9833b8b73384dd5fa3678377ff00a2bb
sha1: e319ed08b4d53a5e421a75ea00ea02039ba6555b
size: 16384
@@ -97,7 +91,6 @@ files:
- name: "fuse/plus3-1.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 0f711ceb5ab801b4701989982e0f334c
sha1: c9969fc36095a59787554026a9adc3b87678c794
size: 16384
@@ -107,7 +100,6 @@ files:
- name: "fuse/plus3-2.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 3b6dd659d5e4ec97f0e2f7878152c987
sha1: 22e50c6ba4157a3f6a821bd9937cd26e292775c6
size: 16384
@@ -117,7 +109,6 @@ files:
- name: "fuse/plus3-3.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: a148bcc575e51389e84fdf5d555c3196
sha1: 65f031caa8148a5493afe42c41f4929deab26b4e
size: 16384
@@ -127,7 +118,6 @@ files:
- name: "fuse/plus3e-0.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: bc123f625e245c225f92ef05933ed134
sha1: 649fbd233490bf58b35350b0123d36caaaa011eb
size: 16384
@@ -137,7 +127,6 @@ files:
- name: "fuse/plus3e-1.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 617364264c587d20c9fc4746c29679f2
sha1: f12198108cbb14de4f03c6695bc16d08c85ee214
size: 16384
@@ -147,7 +136,6 @@ files:
- name: "fuse/plus3e-2.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: c363e95dcd0a90e6e7f847e6e47e0179
sha1: 773633dce5ba323a9e00d9d0f9e4d8c295df7c87
size: 16384
@@ -157,7 +145,6 @@ files:
- name: "fuse/plus3e-3.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: a148bcc575e51389e84fdf5d555c3196
sha1: 65f031caa8148a5493afe42c41f4929deab26b4e
size: 16384
@@ -167,7 +154,6 @@ files:
- name: "fuse/se-0.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: fb3f86eb1e5a695d9c50c124e7cfb875
sha1: 8608328d7dd66602a4846f046b24fed500f7d828
size: 16384
@@ -177,7 +163,6 @@ files:
- name: "fuse/se-1.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 88de4a3129086f34bb9ca559acc51e6c
sha1: 3be5de57dd3bd0a9d15c57cabe9179afe2906a52
size: 16384
@@ -187,7 +172,6 @@ files:
- name: "fuse/tc2048.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 9dd7ecf784a6c04265c073c236f5fadb
sha1: febb2d495b6eda7cdcb4074935d6e9d9f328972d
size: 16384
@@ -197,7 +181,6 @@ files:
- name: "fuse/tc2068-0.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 55d462fccc6c536037404ef4ced08bec
sha1: 1446cb2780a9dedf640404a639fa3ae518b2d8aa
size: 16384
@@ -207,7 +190,6 @@ files:
- name: "fuse/tc2068-1.rom"
system: sinclair-zxspectrum
required: false
hle_fallback: true
md5: 575d203c6e15e679fba0b73f854ec7a2
sha1: 7e265a2c1f621ed365ea23bdcafdedbc79c1299c
size: 8192
-3
View File
@@ -39,7 +39,6 @@ files:
path: "galaksija/CHRGEN.BIN"
size: 2048
required: false
hle_fallback: true
note: >
Character generator ROM. Defines the 128-character bitmap font (8x13 pixels
each). The core has this embedded compressed in rom.c and only loads the
@@ -50,7 +49,6 @@ files:
path: "galaksija/ROM1.BIN"
size: 4096
required: false
hle_fallback: true
note: >
System ROM / BASIC interpreter. Mapped at 0x0000-0x0FFF. Contains the
Galaksija BASIC language and boot routines. Embedded in rom.c as fallback.
@@ -60,7 +58,6 @@ files:
path: "galaksija/ROM2.BIN"
size: 4096
required: false
hle_fallback: true
note: >
Math extension ROM. Mapped at 0x1000-0x1FFF. Adds floating-point math
functions (SIN, COS, TG, SQR, LN, EXP, POW, etc). Optional even when
-2
View File
@@ -38,7 +38,6 @@ files:
system: nintendo-gb
description: "Original Game Boy (DMG-01) boot ROM"
required: false
hle_fallback: true
size: 256
md5: "32fbbd84168d3482956eb3c5051637f5"
sha1: "4ed31ec6b0b175bb109c0eb5fd3d193da823339f"
@@ -50,7 +49,6 @@ files:
system: nintendo-gbc
description: "Game Boy Color (CGB-001) boot ROM"
required: false
hle_fallback: true
size: 2304
md5: "dbfce9db9deaa2567f6a84fde55f9680"
sha1: "1293d68bf9643bc4f36954c1e80e38f39864528d"
-1
View File
@@ -42,7 +42,6 @@ files:
- name: gba_bios.bin
system: nintendo-gba
required: false
hle_fallback: true
size: 16384 # 16 KB (0x4000)
note: "Official GBA BIOS. Built-in open-source BIOS used as fallback. Real BIOS needed for full SWI accuracy and boot logo."
source_ref: "libretro/libretro.c:1111"
-1
View File
@@ -34,7 +34,6 @@ files:
system: atari-lynx
description: "Atari Lynx boot ROM (Mikie internal 512B ROM)"
required: false
hle_fallback: true
size: 512
md5: "fcd403db69f54290b51035d82f835e7b"
sha1: "e4ed47fae31693e016b081c6bda48da5b70d7ccb"
-1
View File
@@ -35,7 +35,6 @@ files:
description: "Atari Lynx boot ROM"
region: "World"
required: false
hle_fallback: true
size: 512
sha1: "e4ed47fae31693e016b081c6bda48da5b70d7ccb"
md5: "fcd403db69f54290b51035d82f835e7b"
-7
View File
@@ -27,7 +27,6 @@ files:
path: "GC/USA/IPL.bin"
size: 2097152
required: false
hle_fallback: true
note: "GC NTSC-U boot ROM, same as Dolphin. HLE available"
source_ref: "Source/Core/Common/CommonPaths.h:115"
@@ -35,14 +34,12 @@ files:
path: "GC/EUR/IPL.bin"
size: 2097152
required: false
hle_fallback: true
note: "GC PAL boot ROM"
- name: "IPL.bin"
path: "GC/JAP/IPL.bin"
size: 2097152
required: false
hle_fallback: true
note: "GC NTSC-J boot ROM"
# -- DSP ROMs --
@@ -52,7 +49,6 @@ files:
path: "GC/dsp_rom.bin"
size: 8192
required: false
hle_fallback: true
note: "DSP instruction ROM for LLE audio. Free replacement included, real dump more accurate"
source_ref: "Source/Core/Common/CommonPaths.h:112, Source/Core/Core/HW/DSPLLE/DSPLLE.cpp:142-150"
@@ -60,7 +56,6 @@ files:
path: "GC/dsp_coef.bin"
size: 4096
required: false
hle_fallback: true
note: "DSP coefficient ROM for LLE audio. Free replacement included"
source_ref: "Source/Core/Common/CommonPaths.h:113, Source/Core/Core/HW/DSPLLE/DSPLLE.cpp:143-152"
@@ -69,14 +64,12 @@ files:
- name: "font_western.bin"
path: "GC/font_western.bin"
required: false
hle_fallback: true
note: "Windows-1252 font for GC/Wii text. Free alternative bundled"
source_ref: "Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:123"
- name: "font_japanese.bin"
path: "GC/font_japanese.bin"
required: false
hle_fallback: true
note: "Shift-JIS font for Japanese text. Free alternative bundled"
source_ref: "Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:122"
-3
View File
@@ -22,7 +22,6 @@ files:
system: nintendo-ds
description: "ARM9 BIOS (NDS mode)"
required: false
hle_fallback: true
size: 4096
crc32: "0x2ab23573"
source_ref: "src/MemConstants.h:30,37"
@@ -32,7 +31,6 @@ files:
system: nintendo-ds
description: "ARM7 BIOS (NDS mode)"
required: false
hle_fallback: true
size: 16384
crc32: "0x1280f0d5"
source_ref: "src/MemConstants.h:31,36"
@@ -42,7 +40,6 @@ files:
system: nintendo-ds
description: "NDS firmware image"
required: false
hle_fallback: true
source_ref: "src/frontend/qt_sdl/EmuInstance.cpp:561"
notes: "Generated firmware used as default; native firmware needed for boot animation and wifi settings"
-3
View File
@@ -27,19 +27,16 @@ files:
- name: bios7.bin
system: nintendo-ds
required: false
hle_fallback: true
md5: df692a80a5b1bc90728bc3dfc76cd948
note: "NDS ARM7 BIOS"
- name: bios9.bin
system: nintendo-ds
required: false
hle_fallback: true
md5: a392174eb3e572fed6447e956bde4b25
note: "NDS ARM9 BIOS"
- name: firmware.bin
system: nintendo-ds
required: false
hle_fallback: true
sha1: 8497afdd16af92d6887b71582846c40514e9039f
md5: 145eaef5bd3037cbc247c213bb3da1b3
size: 262144
-1
View File
@@ -48,7 +48,6 @@ files:
- name: gba_bios.bin
system: nintendo-gba
required: false
hle_fallback: true
size: 16384 # 16 KB (0x4000, GBA_SIZE_BIOS)
note: "GBA BIOS. HLE replacement built in. Real BIOS adds boot logo and full SWI accuracy."
source_ref: "src/platform/libretro/libretro.c:2099"
-2
View File
@@ -53,7 +53,6 @@ files:
system: nintendo-nes
description: "Nestopia game database for region and mapper autodetection"
required: false
hle_fallback: true
size: 1022369
md5: "0ee6cbdc6f5c96ce9c8aa5edb59066f4"
sha1: ~
@@ -65,7 +64,6 @@ files:
system: nintendo-nes
description: "External NES color palette"
required: false
hle_fallback: true
size: 192
md5: ~
sha1: ~
-4
View File
@@ -26,7 +26,6 @@ files:
system: nintendo-ds
description: "ARM9 BIOS"
required: false
hle_fallback: true
size: 4096
md5: "a392174eb3e572fed6447e956bde4b25"
source_ref: "src/memory.cpp:130-142, src/memory.h:73"
@@ -36,7 +35,6 @@ files:
system: nintendo-ds
description: "ARM7 BIOS"
required: false
hle_fallback: true
size: 16384
md5: "df692a80a5b1bc90728bc3dfc76cd948"
source_ref: "src/memory.cpp:144-156, src/memory.h:74"
@@ -46,7 +44,6 @@ files:
system: nintendo-ds
description: "NDS firmware image"
required: false
hle_fallback: true
source_ref: "src/spi.cpp:62-160, src/settings.cpp:42"
notes: "Auto-generated 128KB non-bootable firmware as fallback; native dump (>128KB) needed for firmware boot"
@@ -54,7 +51,6 @@ files:
system: nintendo-gba
description: "GBA BIOS"
required: false
hle_fallback: true
size: 16384
md5: "a860e8c0b6d573d191e4ec7db1b1e4f6"
source_ref: "src/memory.cpp:158-169, src/memory.h:75, src/core.cpp:244-252"
+9 -17
View File
@@ -29,7 +29,6 @@ files:
- name: "bios.rom"
path: "np2kai/bios.rom"
required: false
hle_fallback: true
note: >
PC-9801 system BIOS ROM (96 KB). Provides full hardware compatibility.
The core can boot without it using the built-in BIOS simulator, but
@@ -44,7 +43,6 @@ files:
- name: "itf.rom"
path: "np2kai/itf.rom"
required: false
hle_fallback: true
note: >
Initial Test Firmware ROM (32 KB). Used for hardware initialization
and memory check at boot. Only loaded when the built-in ITF simulator
@@ -59,12 +57,10 @@ files:
- name: "font.bmp"
path: "np2kai/font.bmp"
required: false
hle_fallback: true
aliases: ["FONT.ROM", "font.rom", "FONT.BMP"]
note: >
PC-98 font bitmap (288 KB). Required for correct Japanese kanji display.
Without this file, only basic ASCII characters render correctly using
built-in data.
The core also accepts FONT.ROM (V98 format). Without this file,
only basic ASCII characters render correctly using built-in data.
source_ref: "sdl/libretro/libretro.c:1813, font/fontdata.c:11-14"
# -- Sound BIOS ROM --
@@ -74,7 +70,6 @@ files:
- name: "sound.rom"
path: "np2kai/sound.rom"
required: false
hle_fallback: true
note: >
FM sound board BIOS ROM (16 KB). Used by the PC-9801-26K/86/118
sound boards. The core falls back to a minimal built-in default
@@ -120,9 +115,8 @@ files:
- name: "2608_rim.wav"
path: "np2kai/2608_rim.wav"
required: false
aliases: ["2608_RYM.WAV"]
note: "YM2608 OPNA rhythm sample: rim shot. fmgen also accepts 2608_RYM.WAV"
source_ref: "sound/rhythmc.c:16, sound/fmgen/fmgen_opna.cpp:1413-1443"
note: "YM2608 OPNA rhythm sample: rim shot"
source_ref: "sound/rhythmc.c:16"
# -- IDE BIOS ROM --
# Loaded by ideio.c:1913-1931. Tried in order: ide.rom, d8000.rom,
@@ -131,11 +125,11 @@ files:
- name: "ide.rom"
path: "np2kai/ide.rom"
required: false
hle_fallback: true
aliases: ["d8000.rom", "bank3.bin", "bios9821.rom"]
note: >
IDE controller BIOS ROM (8 KB). Required for real IDE BIOS emulation
(HDD boot from IDE). Without this, a simulated IDE BIOS is used.
(HDD boot from IDE). The core also checks d8000.rom, bank3.bin,
and bios9821.rom as fallback filenames. Without this, a simulated
IDE BIOS is used.
source_ref: "cbus/ideio.c:1913-1931"
# -- SCSI BIOS ROM --
@@ -143,7 +137,6 @@ files:
- name: "scsi.rom"
path: "np2kai/scsi.rom"
required: false
hle_fallback: true
note: >
SCSI controller BIOS ROM (16 KB). For PC-98 SCSI HDD support.
The core includes a built-in SCSI BIOS stub as fallback.
@@ -155,11 +148,10 @@ files:
- name: "pci.rom"
path: "np2kai/pci.rom"
required: false
hle_fallback: true
aliases: ["bank0.bin"]
note: >
PCI BIOS ROM (32 KB). For PC-9821 PCI bus emulation.
Without this, the built-in PCI BIOS simulator is used.
The core also checks bank0.bin as fallback. Without this,
the built-in PCI BIOS simulator is used.
source_ref: "io/pcidev.c:360-382"
# -- GPIB BIOS ROM --
-3
View File
@@ -74,7 +74,6 @@ files:
- name: "<biosname>.nvm"
pattern: "{biosbase}.nvm"
required: false
hle_fallback: true
size: 1024 # NVRAM_SIZE = 1024 bytes
source_ref: "pcsx2/CDVD/CDVD.cpp:160-238"
note: >
@@ -87,7 +86,6 @@ files:
- name: "<biosname>.mec"
pattern: "{biosbase}.mec"
required: false
hle_fallback: true
size: 4 # u32 s_mecha_version
source_ref: "pcsx2/CDVD/CDVD.cpp:190-204"
note: >
@@ -108,7 +106,6 @@ files:
# -- DEV9 EEPROM (optional, network adapter) --
- name: "eeprom.dat"
required: false
hle_fallback: true
size: 64 # 64 bytes, mmap'd
source_ref: "pcsx2/DEV9/DEV9.cpp:110-160"
note: >
-7
View File
@@ -26,7 +26,6 @@ files:
description: "SCPH-5500 (v3.0 09-09-96 J)"
region: "NTSC-J"
required: false
hle_fallback: true
md5: "8dd7d5296a650fac7319bce665a6a53c"
source_ref: "frontend/libretro.c:3710 (listed_bios[0])"
notes: "Preferred JP BIOS, searched first by exact filename."
@@ -37,7 +36,6 @@ files:
description: "SCPH-5501 (v3.0 11-18-96 A)"
region: "NTSC-U"
required: false
hle_fallback: true
md5: "490f666e1afb15b7362b406ed1cea246"
source_ref: "frontend/libretro.c:3710 (listed_bios[1])"
notes: "Preferred US BIOS, searched first by exact filename."
@@ -48,7 +46,6 @@ files:
description: "SCPH-5502 (v3.0 01-06-97 E)"
region: "PAL"
required: false
hle_fallback: true
md5: "32736f17079d0b2b7024407c39bd3050"
source_ref: "frontend/libretro.c:3710 (listed_bios[2])"
notes: "Preferred EU BIOS, searched first by exact filename."
@@ -59,7 +56,6 @@ files:
description: "PSP embedded PS1 BIOS (region-free, 512 KB or 4 MB accepted)"
region: "Auto"
required: false
hle_fallback: true
md5: "c53ca5908936d412331790f4426c6c33"
source_ref: "frontend/libretro.c:3711 (listed_bios[3])"
notes: "Region detected from content at runtime. 4 MB combo image accepted but only first 512 KB read."
@@ -68,7 +64,6 @@ files:
description: "SCPH-101 (v4.4 03-24-00 A) - PSone US"
region: "NTSC-U"
required: false
hle_fallback: true
md5: "6e3735ff4c7dc899ee98981c18c3666d"
source_ref: "frontend/libretro.c:3711 (listed_bios[4])"
notes: "PSone slim model. Searched by filename after scph550x and psxonpsp660."
@@ -77,7 +72,6 @@ files:
description: "SCPH-7001 (v4.1 12-16-97 A)"
region: "NTSC-U"
required: false
hle_fallback: true
md5: "1e68c231d0896b7eadcad1d7d8e76129"
source_ref: "frontend/libretro.c:3711 (listed_bios[5])"
notes: "Searched by filename after psxonpsp660 and scph101."
@@ -86,7 +80,6 @@ files:
description: "SCPH-1001 (v2.2 12-04-95 A)"
region: "NTSC-U"
required: false
hle_fallback: true
md5: "924e392ed05558ffdb115408c263dccf"
source_ref: "frontend/libretro.c:3711 (listed_bios[6])"
notes: "Original US model. Last in the explicit filename search list."
-3
View File
@@ -139,7 +139,6 @@ files:
- name: "32X_G_BIOS.BIN"
system: sega-32x
required: false
hle_fallback: true
size: 256 # 0x100
note: "32X 68K (Genesis-side) BIOS. HLE replacement generated when NULL."
source_ref: "pico/32x/memory.c:2207-2243"
@@ -147,7 +146,6 @@ files:
- name: "32X_M_BIOS.BIN"
system: sega-32x
required: false
hle_fallback: true
size: 2048 # 0x800
note: "32X Master SH2 BIOS. HLE replacement generated when NULL."
source_ref: "pico/32x/memory.c:2250-2277"
@@ -155,7 +153,6 @@ files:
- name: "32X_S_BIOS.BIN"
system: sega-32x
required: false
hle_fallback: true
size: 1024 # 0x400
note: "32X Slave SH2 BIOS. HLE replacement generated when NULL."
source_ref: "pico/32x/memory.c:2280-2298"
-1
View File
@@ -54,7 +54,6 @@ files:
system: nintendo-pokemon-mini
description: "Pokemon Mini official BIOS"
required: false
hle_fallback: true
size: 4096
md5: "1e4fb124a3a886865acb574f388c803d"
sha1: "daad4113713ed776fbd47727762bca81ba74915f"
-1
View File
@@ -42,7 +42,6 @@ files:
system: doom
description: "PrBoom engine data WAD (fonts, palette, colormaps, tables, menu graphics)"
required: false
hle_fallback: true
size: 143312
md5: "72ae1b47820fcc93cc0df9c428d0face"
sha1: "5f4aed208301449c2e9514edfd325fe9dead76fa"
-2
View File
@@ -29,7 +29,6 @@ files:
- name: "7800 BIOS (U).rom"
system: atari-7800
required: false
hle_fallback: true
size: 4096 # 4 KB
note: "NTSC/US Atari 7800 BIOS. Loaded when cartridge_region != REGION_PAL."
source_ref: "core/libretro.c:585"
@@ -37,7 +36,6 @@ files:
- name: "7800 BIOS (E).rom"
system: atari-7800
required: false
hle_fallback: true
size: 16384 # 16 KB (PAL BIOS is larger than NTSC)
note: "PAL/EU Atari 7800 BIOS. Loaded when cartridge_region == REGION_PAL."
source_ref: "core/libretro.c:583"
-9
View File
@@ -62,7 +62,6 @@ files:
- name: "kick31034.A1000"
system: commodore-amiga
required: false
hle_fallback: true
size: 262144 # 256 KB
note: "Kickstart 1.1 rev 31.34 (1985) NTSC. A1000 only."
aliases:
@@ -73,7 +72,6 @@ files:
- name: "kick32034.A1000"
system: commodore-amiga
required: false
hle_fallback: true
size: 262144 # 256 KB
note: "Kickstart 1.1 rev 32.34 (1986) PAL. A1000 only."
aliases:
@@ -87,7 +85,6 @@ files:
- name: "kick33180.A500"
system: commodore-amiga
required: false
hle_fallback: true
size: 262144 # 256 KB
note: "Kickstart 1.2 rev 33.180 (1986). A500/A2000. Also used by WHDLoad."
aliases:
@@ -110,7 +107,6 @@ files:
- name: "kick37175.A500"
system: commodore-amiga
required: false
hle_fallback: true
size: 262144 # 256 KB
note: "Kickstart 2.04 rev 37.175 (1991). Default for A500+ model."
aliases:
@@ -125,7 +121,6 @@ files:
- name: "kick37350.A600"
system: commodore-amiga
required: false
hle_fallback: true
size: 262144 # 256 KB
note: "Kickstart 2.05 rev 37.350 (1992). A600HD."
aliases:
@@ -136,7 +131,6 @@ files:
- name: "kick40063.A600"
system: commodore-amiga
required: false
hle_fallback: true
size: 524288 # 512 KB
note: "Kickstart 3.1 rev 40.63 (1993). Default for A600/A2000 models. Also used by WHDLoad."
aliases:
@@ -151,7 +145,6 @@ files:
- name: "kick39106.A1200"
system: commodore-amiga
required: false
hle_fallback: true
size: 524288 # 512 KB
note: "Kickstart 3.0 rev 39.106 (1992). A1200."
aliases:
@@ -176,7 +169,6 @@ files:
- name: "kick39106.A4000"
system: commodore-amiga
required: false
hle_fallback: true
size: 524288 # 512 KB
note: "Kickstart 3.0 rev 39.106 (1992). A4000."
aliases:
@@ -187,7 +179,6 @@ files:
- name: "kick40068.A4000"
system: commodore-amiga
required: false
hle_fallback: true
size: 524288 # 512 KB
note: "Kickstart 3.1 rev 40.68 (1993). Default for A4030/A4040 models."
aliases:
-4
View File
@@ -103,7 +103,6 @@ files:
path: "quasi88/disk.rom"
size: 2048
required: false
hle_fallback: true
note: "Disk subsystem ROM (2 KB, 2D type). Core falls back to pseudo-BIOS if missing. 8 KB variant (2HD type) also accepted."
source_ref: "src/LIBRETRO/libretro.c:552"
aliases: ["DISK.ROM", "N88SUB.ROM", "n88sub.rom"]
@@ -138,7 +137,6 @@ files:
path: "quasi88/font.rom"
size: 4096
required: false
hle_fallback: true
note: "ANK font ROM (4 KB). Falls back to built-in font or kanji ROM glyphs."
source_ref: "src/LIBRETRO/libretro.c:566"
aliases: ["FONT.ROM"]
@@ -147,7 +145,6 @@ files:
path: "quasi88/font2.rom"
size: 4096
required: false
hle_fallback: true
note: "Second font ROM (4 KB). Falls back to built-in ANH font."
source_ref: "src/LIBRETRO/libretro.c:576"
aliases: ["FONT2.ROM"]
@@ -156,7 +153,6 @@ files:
path: "quasi88/font3.rom"
size: 4096
required: false
hle_fallback: true
note: "Third font ROM (4 KB). Zeroed out if missing."
source_ref: "src/LIBRETRO/libretro.c:588"
aliases: ["FONT3.ROM"]
+1 -1
View File
@@ -1,6 +1,6 @@
emulator: SAME CDi
type: libretro
cores: [same_cdi]
cores: [same_cdi, cdi2015]
source: "https://github.com/libretro/same_cdi"
profiled_date: "2026-03-18"
core_version: "Git"
-8
View File
@@ -54,7 +54,6 @@ files:
system: nintendo-gb
description: "Original Game Boy (DMG) boot ROM"
required: false
hle_fallback: true
size: 256
source_ref: "libretro.c:519,530,556 (boot_rom_load)"
notes: "Also used as fallback for DMG_0 and MGB models when dedicated boot ROMs are absent."
@@ -64,7 +63,6 @@ files:
system: nintendo-gb
description: "Game Boy Pocket (MGB) boot ROM"
required: false
hle_fallback: true
size: 256
source_ref: "libretro.c:520,531,556"
notes: "Built-in fallback reuses dmg_boot (mgb not separately implemented yet)."
@@ -74,7 +72,6 @@ files:
system: nintendo-sgb
description: "Super Game Boy (SGB) boot ROM"
required: false
hle_fallback: true
size: 256
source_ref: "libretro.c:521,532,556"
notes: "Used for SGB and SGB_NTSC models. Also loaded temporarily when borrowing SGB border for non-SGB games."
@@ -84,7 +81,6 @@ files:
system: nintendo-sgb
description: "Super Game Boy 2 (SGB2) boot ROM"
required: false
hle_fallback: true
size: 256
source_ref: "libretro.c:522,533,556"
notes: "Separate from sgb_boot.bin, unlike some other cores that merge SGB/SGB2."
@@ -94,7 +90,6 @@ files:
system: nintendo-gbc
description: "Game Boy Color (CGB) boot ROM"
required: false
hle_fallback: true
size: 2304
source_ref: "libretro.c:524,535,556"
notes: "Also used as fallback for CGB_0 model (not separately implemented yet)."
@@ -104,7 +99,6 @@ files:
system: nintendo-gbc
description: "Game Boy Color early revision (CGB-0) boot ROM"
required: false
hle_fallback: true
size: 2304
source_ref: "libretro.c:523,534,556"
notes: "Built-in fallback reuses cgb_boot (cgb0 not separately implemented yet)."
@@ -114,7 +108,6 @@ files:
system: nintendo-gbc
description: "Game Boy Advance in GBC mode (AGB) boot ROM"
required: false
hle_fallback: true
size: 2304
source_ref: "libretro.c:525,536,556"
notes: "Used when emulating a GBA running GB/GBC software. Enables GBA-enhanced palettes in compatible GBC games."
@@ -124,7 +117,6 @@ files:
system: nintendo-gb
description: "Original Game Boy early revision (DMG-0) boot ROM"
required: false
hle_fallback: true
size: 256
source_ref: "SDL/main.c:640 (standalone), libretro.c:518,529"
notes: "Only referenced in standalone SDL build filename list. Built-in fallback reuses dmg_boot."

Some files were not shown because too many files have changed in this diff Show More