feat: 4-source verified emulator profiles (A-E cores)

33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.

New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.

Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
This commit is contained in:
Abdessamad Derraz
2026-03-19 08:09:34 +01:00
parent 86dbdf28e5
commit 71b127efb5
33 changed files with 1400 additions and 260 deletions

View File

@@ -1,24 +1,40 @@
emulator: DOSBox Pure
type: libretro
type: standalone + 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-18"
profiled_date: "2026-03-19"
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.
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.
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
files:
# -- MT-32 Control ROMs (64 KB) --
@@ -28,35 +44,35 @@ files:
required: false
size: 65536
sha1: "5a5cb5a77d7d55ee69657c2f870416daed52dea7"
source_ref: "mt32emu.h:CTRL_MT32_V1_04"
source_ref: "mt32emu.h:5112,5129"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.05"
required: false
size: 65536
sha1: "e17a3a6d265bf1fa150312061134293d2b58288c"
source_ref: "mt32emu.h:CTRL_MT32_V1_05"
source_ref: "mt32emu.h:5113,5130"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.06"
required: false
size: 65536
sha1: "a553481f4e2794c10cfe597fef154eef0d8257de"
source_ref: "mt32emu.h:CTRL_MT32_V1_06"
source_ref: "mt32emu.h:5114,5131"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v1.07"
required: false
size: 65536
sha1: "b083518fffb7f66b03c23b7eb4f868e62dc5a987"
source_ref: "mt32emu.h:CTRL_MT32_V1_07"
source_ref: "mt32emu.h:5115,5132"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control BlueRidge"
required: false
size: 65536
sha1: "7b8c2a5ddb42fd0732e2f22b3340dcf5360edf92"
source_ref: "mt32emu.h:CTRL_MT32_BLUER"
source_ref: "mt32emu.h:5116,5133"
# -- MT-32 v2.x Control ROMs (128 KB) --
@@ -65,28 +81,28 @@ files:
required: false
size: 131072
sha1: "5837064c9df4741a55f7c4d8787ac158dff2d3ce"
source_ref: "mt32emu.h:CTRL_MT32_V2_03"
source_ref: "mt32emu.h:5118,5135"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.04"
required: false
size: 131072
sha1: "2c16432b6c73dd2a3947cba950a0f4c19d6180eb"
source_ref: "mt32emu.h:CTRL_MT32_V2_04"
source_ref: "mt32emu.h:5119,5136"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.06"
required: false
size: 131072
sha1: "2869cf4c235d671668cfcb62415e2ce8323ad4ed"
source_ref: "mt32emu.h:CTRL_MT32_V2_06"
source_ref: "mt32emu.h:5120,5137"
- name: "MT32_CONTROL.ROM"
description: "MT-32 Control v2.07"
required: false
size: 131072
sha1: "47b52adefedaec475c925e54340e37673c11707c"
source_ref: "mt32emu.h:CTRL_MT32_V2_07"
source_ref: "mt32emu.h:5121,5138"
# -- CM-32L / LAPC-I Control ROMs (64 KB) --
@@ -95,14 +111,14 @@ files:
required: false
size: 65536
sha1: "73683d585cd6948cc19547942ca0e14a0319456d"
source_ref: "mt32emu.h:CTRL_CM32L_V1_00"
source_ref: "mt32emu.h:5122,5139"
- name: "CM32L_CONTROL.ROM"
description: "CM-32L/LAPC-I Control v1.02"
required: false
size: 65536
sha1: "a439fbb390da38cada95a7cbb1d6ca199cd66ef8"
source_ref: "mt32emu.h:CTRL_CM32L_V1_02"
source_ref: "mt32emu.h:5123,5140"
# -- CM-32LN / CM-500 / LAPC-N Control ROM (64 KB) --
@@ -111,7 +127,7 @@ files:
required: false
size: 65536
sha1: "dc1c5b1b90a4646d00f7daf3679733c7badc7077"
source_ref: "mt32emu.h:CTRL_CM32LN_V1_00"
source_ref: "mt32emu.h:5124,5141"
# -- PCM ROMs --
@@ -120,7 +136,7 @@ files:
required: false
size: 524288
sha1: "f6b1eebc4b2d200ec6d3d21d51325d5b48c60252"
source_ref: "mt32emu.h:PCM_MT32"
source_ref: "mt32emu.h:5126,5143"
notes: "pairs with any MT-32 v1.x control ROM"
- name: "CM32L_PCM.ROM"
@@ -128,7 +144,7 @@ files:
required: false
size: 1048576
sha1: "289cc298ad532b702461bfc738009d9ebe8025ea"
source_ref: "mt32emu.h:PCM_CM32L"
source_ref: "mt32emu.h:5127,5144"
notes: "pairs with MT-32 v2.x or CM-32L control ROMs. Lower half aliases MT-32 PCM."
# -- General MIDI SoundFont --