mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-11-01 00:27:20 -05:00
refactor: cite psx bios checks once per profile
The check each core runs on every listed file is cited in the profile notes instead of on each entry: the per-entry citations pushed the RomM platform pages past their byte budget (573900 against 572487).
This commit is contained in:
1 parent
cbed064613
commit
e24b2675a2
2 files changed
+15
-14
No files matched your search
@@ -15,7 +15,7 @@ cores: [beetle_psx, mednafen_psx, mednafen_psx_hw, "beetle-psx"]
|
||||
systems: [sony-playstation]
|
||||
notes: >
|
||||
Region-based BIOS selection: the core picks JP/NA/EU firmware based on disc region.
|
||||
SHA1 validated with warning on mismatch (does not block loading).
|
||||
SHA1 validated with warning on mismatch (does not block loading): libretro.c:744-756, 853-860.
|
||||
SHA1 and alternate filenames sourced from MAME (mame src/mame/sony/psx.cpp).
|
||||
The lists and the checksum search live in libretro.c:622-676,684-776.
|
||||
Override option allows using PSP, PS3, or OpenBIOS as region-free alternative.
|
||||
@@ -45,7 +45,7 @@ files:
|
||||
validation: [sha1]
|
||||
on_mismatch: "warn"
|
||||
mode: both
|
||||
source_ref: "libretro.c:768-776, 853-860, 3425-3511"
|
||||
source_ref: "libretro.c:768-776, 3425-3511"
|
||||
aliases: ["SCPH5500.bin", "SCPH-5500.bin"]
|
||||
note: "Without it the core logs 'Firmware is missing' and maps its built-in OpenBIOS (libretro.c:846-851, 3425-3511): the runs cited for required booted on OpenBIOS, the other regions' files refused."
|
||||
evidence:
|
||||
@@ -77,7 +77,7 @@ files:
|
||||
on_mismatch: "warn"
|
||||
mode: both
|
||||
note: "Picked for REGION_NA: a SYSTEM.CNF serial whose third letter is U (SCUS, SLUS), a licence string naming America, and content whose region cannot be read while the region option stays on auto (libretro.c:2436-2438, 2279, 2330-2335, 3252-3266, 4517). Without it the core logs 'Firmware is missing' and maps its built-in OpenBIOS (libretro.c:846-851, 3425-3511): the runs cited for required booted on OpenBIOS, the other regions' files refused."
|
||||
source_ref: "libretro.c:787-805, 853-860, 3425-3511"
|
||||
source_ref: "libretro.c:787-805, 3425-3511"
|
||||
aliases:
|
||||
- "SCPH5501.bin"
|
||||
- "SCPH-5501.bin"
|
||||
@@ -112,7 +112,7 @@ files:
|
||||
validation: [sha1]
|
||||
on_mismatch: "warn"
|
||||
mode: both
|
||||
source_ref: "libretro.c:807-821, 853-860, 3425-3511"
|
||||
source_ref: "libretro.c:807-821, 3425-3511"
|
||||
aliases:
|
||||
- "SCPH5502.bin"
|
||||
- "SCPH-5502.bin"
|
||||
@@ -134,7 +134,7 @@ files:
|
||||
validation: [sha1]
|
||||
on_mismatch: "warn"
|
||||
mode: libretro
|
||||
source_ref: "libretro.c:697-703, 744-756"
|
||||
source_ref: "libretro.c:697-703"
|
||||
aliases: ["PSXONPSP660.bin"]
|
||||
note: "override_bios=1. Tried as psxonpsp660.bin, PSXONPSP660.bin, then PSXONPSP660.BIN. Falls back to region BIOS if not found."
|
||||
|
||||
@@ -146,7 +146,7 @@ files:
|
||||
validation: [sha1]
|
||||
on_mismatch: "warn"
|
||||
mode: libretro
|
||||
source_ref: "libretro.c:705-711, 744-756"
|
||||
source_ref: "libretro.c:705-711"
|
||||
aliases: ["PS1_ROM.bin"]
|
||||
note: "override_bios=2. Tried as ps1_rom.bin, PS1_ROM.bin, then PS1_ROM.BIN. Falls back to region BIOS if not found."
|
||||
|
||||
|
||||
@@ -19,7 +19,8 @@ notes: >
|
||||
Default is "auto" which searches system dir for listed filenames, then scans all files.
|
||||
Region detection reads bytes at offset 0x7ff51: " E" = EU, " J" = JP, else US.
|
||||
Three CRC32 hardcoded as JP override: 0x18D0F7D8, 0x3B601FC8, 0x3539DEF6 (psxonpsp, scph1000).
|
||||
BIOS validity check: byte pattern at offset 1 (\x00\x08\x3c\x3f) or string "PS compatible" at 0x12c.
|
||||
BIOS validity check: byte pattern at offset 1 (\x00\x08\x3c\x3f) or string "PS compatible" at 0x12c
|
||||
(frontend/libretro.c:3632, 3646-3651): a file failing it is skipped, hence validation [size, signature].
|
||||
Files named "unirom" (case-insensitive) are explicitly skipped.
|
||||
Region fallback: if the matching-region BIOS is missing, any available region BIOS is used over HLE.
|
||||
Three region slots: US (index 0), JP (index 1), EU (index 2) stored in Config.Bios[].
|
||||
@@ -34,7 +35,7 @@ files:
|
||||
required: false
|
||||
hle_fallback: true
|
||||
validation: ["size", "signature"]
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[0]), source frontend/libretro.c:3604-3680 (try_use_bios)"
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[0])"
|
||||
note: "Preferred JP BIOS, searched first by exact filename."
|
||||
|
||||
# -- Region: North America (PSX_REGION_US = 0) --
|
||||
@@ -46,7 +47,7 @@ files:
|
||||
required: false
|
||||
hle_fallback: true
|
||||
validation: ["size", "signature"]
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[1]), source frontend/libretro.c:3604-3680 (try_use_bios)"
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[1])"
|
||||
note: "Preferred US BIOS, searched first by exact filename. The US slot is the detector's default: a disc takes it for both America licence strings and for any licence that is neither \"Inc.\" (JP) nor \"Euro pe\" (EU), and content without a disc boots it too (libpcsxcore/misc.c:422-453, frontend/libretro.c:2167-2171)."
|
||||
evidence:
|
||||
hle_fallback: ["2026-10-27-82bf6de00b8a", "2026-10-27-1d4eb1daebe5"]
|
||||
@@ -61,7 +62,7 @@ files:
|
||||
required: false
|
||||
hle_fallback: true
|
||||
validation: ["size", "signature"]
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[2]), source frontend/libretro.c:3604-3680 (try_use_bios)"
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[2])"
|
||||
note: "Preferred EU BIOS, searched first by exact filename."
|
||||
|
||||
# -- Fallback BIOS filenames (searched in order after scph550x) --
|
||||
@@ -73,7 +74,7 @@ files:
|
||||
required: false
|
||||
hle_fallback: true
|
||||
validation: ["size", "signature"]
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[3]), source frontend/libretro.c:3604-3680 (try_use_bios, region guess at 3654-3669)"
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[3]), source frontend/libretro.c:3654-3669 (try_use_bios region guess)"
|
||||
note: "The core reads the region out of the image: bytes 0x7ff51 are ' J' in this dump, so it takes the JP slot (' E' takes EU, anything else US), one image per slot, first found kept. The disc licence picks the slot at boot (Config.Bios[Config.PsxRegion]), and a US or EU disc only reaches this file when its own slot is empty. Must be 512 KB."
|
||||
|
||||
- name: "scph101.bin"
|
||||
@@ -83,7 +84,7 @@ files:
|
||||
required: false
|
||||
hle_fallback: true
|
||||
validation: ["size", "signature"]
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[4]), source frontend/libretro.c:3604-3680 (try_use_bios)"
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[4])"
|
||||
note: "PSone slim model."
|
||||
evidence:
|
||||
hle_fallback: ["2026-10-27-82bf6de00b8a", "2026-10-27-1d4eb1daebe5"]
|
||||
@@ -96,7 +97,7 @@ files:
|
||||
required: false
|
||||
hle_fallback: true
|
||||
validation: ["size", "signature"]
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[5]), source frontend/libretro.c:3604-3680 (try_use_bios)"
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[5])"
|
||||
evidence:
|
||||
hle_fallback: ["2026-10-27-82bf6de00b8a", "2026-10-27-1d4eb1daebe5"]
|
||||
validation: ["2026-10-27-1d4eb1daebe5", "2026-10-27-1a14651aeda0"]
|
||||
@@ -108,7 +109,7 @@ files:
|
||||
required: false
|
||||
hle_fallback: true
|
||||
validation: ["size", "signature"]
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[6]), source frontend/libretro.c:3604-3680 (try_use_bios)"
|
||||
source_ref: "source frontend/libretro.c:3864-3867 (listed_bios[6])"
|
||||
note: "Original US model. Last in the explicit filename search list."
|
||||
evidence:
|
||||
hle_fallback: ["2026-10-27-82bf6de00b8a", "2026-10-27-1d4eb1daebe5"]
|
||||
|
||||
Reference in new issue
Block a user