fix: source-verified corrections from review

dosbox/dosbox_pure: added validation: [sha1, size] to MT-32 ROM
entries — MUNT rejects unrecognized SHA1 (ROMInfo.cpp:171-180).
duckstation: fixed BIOS count to 105 (24 PS1 + 80 PS2 + 1 OpenBIOS).
added exclusion_note to 6 profiles with files: [] (dosbox_svn,
dosbox_svn_ce, doukutsu_rs, emux_chip8, emux_nes, fake08).
This commit is contained in:
Abdessamad Derraz
2026-03-24 12:21:32 +01:00
parent 491ea2f9ba
commit cda012b10a
9 changed files with 35 additions and 3 deletions

View File

@@ -26,6 +26,9 @@ files:
# -- MT-32 Control ROM -- # -- MT-32 Control ROM --
# Loaded from system_directory/MT32_CONTROL.ROM. # Loaded from system_directory/MT32_CONTROL.ROM.
# MUNT validates by SHA1+size against known ROM database. # MUNT validates by SHA1+size against known ROM database.
# Unrecognized ROMs rejected: ROMInfo::getROMInfo returns NULL,
# loadControlROM/loadPCMROM abort, Synth::open fails.
# ref: munt/ROMInfo.cpp:175, munt/Synth.cpp:556-562,590-594
# CM-32L control ROMs also accepted under this filename. # CM-32L control ROMs also accepted under this filename.
- name: "MT32_CONTROL.ROM" - name: "MT32_CONTROL.ROM"
@@ -34,6 +37,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "5a5cb5a77d7d55ee69657c2f870416daed52dea7" sha1: "5a5cb5a77d7d55ee69657c2f870416daed52dea7"
validation: [sha1, size]
mode: libretro mode: libretro
source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:30" source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:30"
@@ -43,6 +47,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "e17a3a6d265bf1fa150312061134293d2b58288c" sha1: "e17a3a6d265bf1fa150312061134293d2b58288c"
validation: [sha1, size]
mode: libretro mode: libretro
source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:31" source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:31"
@@ -52,6 +57,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "a553481f4e2794c10cfe597fef154eef0d8257de" sha1: "a553481f4e2794c10cfe597fef154eef0d8257de"
validation: [sha1, size]
mode: libretro mode: libretro
source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:32" source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:32"
@@ -61,6 +67,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "b083518fffb7f66b03c23b7eb4f868e62dc5a987" sha1: "b083518fffb7f66b03c23b7eb4f868e62dc5a987"
validation: [sha1, size]
mode: libretro mode: libretro
source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:33" source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:33"
@@ -70,6 +77,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "7b8c2a5ddb42fd0732e2f22b3340dcf5360edf92" sha1: "7b8c2a5ddb42fd0732e2f22b3340dcf5360edf92"
validation: [sha1, size]
mode: libretro mode: libretro
source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:34" source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:34"
@@ -82,6 +90,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "73683d585cd6948cc19547942ca0e14a0319456d" sha1: "73683d585cd6948cc19547942ca0e14a0319456d"
validation: [sha1, size]
mode: libretro mode: libretro
source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:36" source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:36"
@@ -91,6 +100,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "a439fbb390da38cada95a7cbb1d6ca199cd66ef8" sha1: "a439fbb390da38cada95a7cbb1d6ca199cd66ef8"
validation: [sha1, size]
mode: libretro mode: libretro
source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:37" source_ref: "midi_mt32.h:92, munt/ROMInfo.cpp:37"
@@ -104,6 +114,7 @@ files:
hle_fallback: true hle_fallback: true
size: 524288 size: 524288
sha1: "f6b1eebc4b2d200ec6d3d21d51325d5b48c60252" sha1: "f6b1eebc4b2d200ec6d3d21d51325d5b48c60252"
validation: [sha1, size]
mode: libretro mode: libretro
source_ref: "midi_mt32.h:99, munt/ROMInfo.cpp:39" source_ref: "midi_mt32.h:99, munt/ROMInfo.cpp:39"
@@ -113,5 +124,6 @@ files:
hle_fallback: true hle_fallback: true
size: 1048576 size: 1048576
sha1: "289cc298ad532b702461bfc738009d9ebe8025ea" sha1: "289cc298ad532b702461bfc738009d9ebe8025ea"
validation: [sha1, size]
mode: libretro mode: libretro
source_ref: "midi_mt32.h:99, munt/ROMInfo.cpp:40" source_ref: "midi_mt32.h:99, munt/ROMInfo.cpp:40"

View File

@@ -28,7 +28,8 @@ notes: |
ref: dosbox_pure_libretro.cpp:1393-1413 ref: dosbox_pure_libretro.cpp:1393-1413
Bundled MUNT (header-only mt32emu.h) for MT-32 emulation. Bundled MUNT (header-only mt32emu.h) for MT-32 emulation.
SHA1-based ROM identification (mt32emu.h:5112-5127,5185). SHA1+size validation at load: unrecognized ROMs rejected (Synth::open fails).
ref: mt32emu.h:2982-2988,3016-3019,5183-5187
12 full control ROMs + 2 PCM ROMs supported (no split ROMs in this MUNT). 12 full control ROMs + 2 PCM ROMs supported (no split ROMs in this MUNT).
TinySoundFont (tsf.h) for SF2/SF3 playback. TinySoundFont (tsf.h) for SF2/SF3 playback.
No firmware entries in .info file — all MIDI files optional. No firmware entries in .info file — all MIDI files optional.
@@ -45,6 +46,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "5a5cb5a77d7d55ee69657c2f870416daed52dea7" sha1: "5a5cb5a77d7d55ee69657c2f870416daed52dea7"
validation: [sha1, size]
source_ref: "mt32emu.h:5112,5129" source_ref: "mt32emu.h:5112,5129"
- name: "MT32_CONTROL.ROM" - name: "MT32_CONTROL.ROM"
@@ -53,6 +55,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "e17a3a6d265bf1fa150312061134293d2b58288c" sha1: "e17a3a6d265bf1fa150312061134293d2b58288c"
validation: [sha1, size]
source_ref: "mt32emu.h:5113,5130" source_ref: "mt32emu.h:5113,5130"
- name: "MT32_CONTROL.ROM" - name: "MT32_CONTROL.ROM"
@@ -61,6 +64,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "a553481f4e2794c10cfe597fef154eef0d8257de" sha1: "a553481f4e2794c10cfe597fef154eef0d8257de"
validation: [sha1, size]
source_ref: "mt32emu.h:5114,5131" source_ref: "mt32emu.h:5114,5131"
- name: "MT32_CONTROL.ROM" - name: "MT32_CONTROL.ROM"
@@ -69,6 +73,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "b083518fffb7f66b03c23b7eb4f868e62dc5a987" sha1: "b083518fffb7f66b03c23b7eb4f868e62dc5a987"
validation: [sha1, size]
source_ref: "mt32emu.h:5115,5132" source_ref: "mt32emu.h:5115,5132"
- name: "MT32_CONTROL.ROM" - name: "MT32_CONTROL.ROM"
@@ -77,6 +82,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "7b8c2a5ddb42fd0732e2f22b3340dcf5360edf92" sha1: "7b8c2a5ddb42fd0732e2f22b3340dcf5360edf92"
validation: [sha1, size]
source_ref: "mt32emu.h:5116,5133" source_ref: "mt32emu.h:5116,5133"
# -- MT-32 v2.x Control ROMs (128 KB) -- # -- MT-32 v2.x Control ROMs (128 KB) --
@@ -87,6 +93,7 @@ files:
hle_fallback: true hle_fallback: true
size: 131072 size: 131072
sha1: "5837064c9df4741a55f7c4d8787ac158dff2d3ce" sha1: "5837064c9df4741a55f7c4d8787ac158dff2d3ce"
validation: [sha1, size]
source_ref: "mt32emu.h:5118,5135" source_ref: "mt32emu.h:5118,5135"
- name: "MT32_CONTROL.ROM" - name: "MT32_CONTROL.ROM"
@@ -95,6 +102,7 @@ files:
hle_fallback: true hle_fallback: true
size: 131072 size: 131072
sha1: "2c16432b6c73dd2a3947cba950a0f4c19d6180eb" sha1: "2c16432b6c73dd2a3947cba950a0f4c19d6180eb"
validation: [sha1, size]
source_ref: "mt32emu.h:5119,5136" source_ref: "mt32emu.h:5119,5136"
- name: "MT32_CONTROL.ROM" - name: "MT32_CONTROL.ROM"
@@ -103,6 +111,7 @@ files:
hle_fallback: true hle_fallback: true
size: 131072 size: 131072
sha1: "2869cf4c235d671668cfcb62415e2ce8323ad4ed" sha1: "2869cf4c235d671668cfcb62415e2ce8323ad4ed"
validation: [sha1, size]
source_ref: "mt32emu.h:5120,5137" source_ref: "mt32emu.h:5120,5137"
- name: "MT32_CONTROL.ROM" - name: "MT32_CONTROL.ROM"
@@ -111,6 +120,7 @@ files:
hle_fallback: true hle_fallback: true
size: 131072 size: 131072
sha1: "47b52adefedaec475c925e54340e37673c11707c" sha1: "47b52adefedaec475c925e54340e37673c11707c"
validation: [sha1, size]
source_ref: "mt32emu.h:5121,5138" source_ref: "mt32emu.h:5121,5138"
# -- CM-32L / LAPC-I Control ROMs (64 KB) -- # -- CM-32L / LAPC-I Control ROMs (64 KB) --
@@ -121,6 +131,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "73683d585cd6948cc19547942ca0e14a0319456d" sha1: "73683d585cd6948cc19547942ca0e14a0319456d"
validation: [sha1, size]
source_ref: "mt32emu.h:5122,5139" source_ref: "mt32emu.h:5122,5139"
- name: "CM32L_CONTROL.ROM" - name: "CM32L_CONTROL.ROM"
@@ -129,6 +140,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "a439fbb390da38cada95a7cbb1d6ca199cd66ef8" sha1: "a439fbb390da38cada95a7cbb1d6ca199cd66ef8"
validation: [sha1, size]
source_ref: "mt32emu.h:5123,5140" source_ref: "mt32emu.h:5123,5140"
# -- CM-32LN / CM-500 / LAPC-N Control ROM (64 KB) -- # -- CM-32LN / CM-500 / LAPC-N Control ROM (64 KB) --
@@ -139,6 +151,7 @@ files:
hle_fallback: true hle_fallback: true
size: 65536 size: 65536
sha1: "dc1c5b1b90a4646d00f7daf3679733c7badc7077" sha1: "dc1c5b1b90a4646d00f7daf3679733c7badc7077"
validation: [sha1, size]
source_ref: "mt32emu.h:5124,5141" source_ref: "mt32emu.h:5124,5141"
# -- PCM ROMs -- # -- PCM ROMs --
@@ -149,6 +162,7 @@ files:
hle_fallback: true hle_fallback: true
size: 524288 size: 524288
sha1: "f6b1eebc4b2d200ec6d3d21d51325d5b48c60252" sha1: "f6b1eebc4b2d200ec6d3d21d51325d5b48c60252"
validation: [sha1, size]
source_ref: "mt32emu.h:5126,5143" source_ref: "mt32emu.h:5126,5143"
notes: "pairs with any MT-32 v1.x control ROM" notes: "pairs with any MT-32 v1.x control ROM"
@@ -158,6 +172,7 @@ files:
hle_fallback: true hle_fallback: true
size: 1048576 size: 1048576
sha1: "289cc298ad532b702461bfc738009d9ebe8025ea" sha1: "289cc298ad532b702461bfc738009d9ebe8025ea"
validation: [sha1, size]
source_ref: "mt32emu.h:5127,5144" source_ref: "mt32emu.h:5127,5144"
notes: "pairs with MT-32 v2.x or CM-32L control ROMs. Lower half aliases MT-32 PCM." notes: "pairs with MT-32 v2.x or CM-32L control ROMs. Lower half aliases MT-32 PCM."

View File

@@ -25,4 +25,5 @@ notes: |
.info firmware_count=0, matches code. .info firmware_count=0, matches code.
exclusion_note: "system_directory set but never used for file loading"
files: [] files: []

View File

@@ -25,4 +25,5 @@ notes: |
.info firmware_count=0, matches code. .info firmware_count=0, matches code.
exclusion_note: "system_directory set but never used for file loading"
files: [] files: []

View File

@@ -56,4 +56,5 @@ notes: |
All engine-internal resources (fonts, wavetables, controller mappings) are All engine-internal resources (fonts, wavetables, controller mappings) are
built into the core binary. built into the core binary.
exclusion_note: "game data loaded relative to content path, not from system directory"
files: [] files: []

View File

@@ -20,7 +20,7 @@ notes: |
ref: src/core/bios.h:24-26 (BIOS_SIZE, BIOS_SIZE_PS2, BIOS_SIZE_PS3) 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). Only the first 512 KB are mapped (bios.cpp:212).
104 known BIOS entries (24 PS1 + 80 PS2) identified by MD5. 105 known BIOS entries: 24 PS1 + 80 PS2 (identified by MD5) + 1 OpenBIOS (by signature).
ref: src/core/bios.cpp:34-139 (s_image_info_by_hash) ref: src/core/bios.cpp:34-139 (s_image_info_by_hash)
Each image has: region, region_check, fast_boot_patch type, priority score. Each image has: region, region_check, fast_boot_patch type, priority score.
Lower priority = preferred. PS2 deprioritized (>= 100) for dynamic fast boot. Lower priority = preferred. PS2 deprioritized (>= 100) for dynamic fast boot.

View File

@@ -36,6 +36,7 @@ notes: |
RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY (libretro/libretro.c:34) but RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY (libretro/libretro.c:34) but
only uses it as a general config path, not for BIOS loading. only uses it as a general config path, not for BIOS loading.
exclusion_note: "CHIP-8 has no BIOS, font data hardcoded in char_mem[]"
files: [] files: []
platform_details: platform_details:

View File

@@ -48,5 +48,5 @@ notes: |
is_experimental=true. No save states, rewind, or netplay support. is_experimental=true. No save states, rewind, or netplay support.
Supported extensions: nes, bin, rom. Supported extensions: nes, bin, rom.
exclusion_note: "NES has no boot ROM, CPU starts at reset vector from cartridge"
files: [] files: []
# No BIOS, firmware, or system files of any kind.

View File

@@ -30,6 +30,7 @@ notes: |
(libretro.cpp:258). Content is loaded either via the libretro data buffer (libretro.cpp:258). Content is loaded either via the libretro data buffer
or full path depending on the _NEED_FULL_PATH_ compile flag. or full path depending on the _NEED_FULL_PATH_ compile flag.
exclusion_note: "all engine resources compiled into binary via include_bytes!"
files: [] files: []
platform_details: platform_details: