feat: standalone emulator support for batocera and multi-platform name mapping

resolve_platform_cores() builds reverse index from profile cores: field,
fixing 17 name mismatches across Batocera, RetroBat, and Recalbox
(genesisplusgx, pce_fast, pcfx, vb, mame078plus, vice cores, etc.).

standalone_path field on file entries + standalone_cores on platform
YAMLs enable mode-aware pack generation. find_undeclared_files() uses
standalone_path for cores the platform runs standalone, filters by
mode: libretro/standalone per file.

batocera.yml gains standalone_cores (92 entries from configgen-defaults).
generate_readme.py dynamically lists platforms from registry.
3 profiles updated for standalone type/path (mame, hatari, mupen64plus_next).
78 E2E tests pass, pipeline verified.
This commit is contained in:
Abdessamad Derraz
2026-03-26 00:44:21 +01:00
parent 44dc946217
commit 3f676b75e8
31 changed files with 1492 additions and 40 deletions

View File

@@ -1,7 +1,7 @@
emulator: Beetle PC-FX (Mednafen)
type: libretro
core_classification: community_fork
cores: [mednafen_pcfx]
cores: [mednafen_pcfx, pcfx]
source: "https://github.com/libretro/beetle-pcfx-libretro"
upstream: "https://mednafen.github.io/"
profiled_date: "2026-03-24"

View File

@@ -6,7 +6,7 @@ upstream: "https://mednafen.github.io/"
profiled_date: "2026-03-24"
core_version: "v0.9.36.1"
display_name: "Nintendo - Virtual Boy (Beetle VB)"
cores: [mednafen_vb]
cores: [mednafen_vb, vb]
systems: [nintendo-virtualboy]
notes: |

View File

@@ -6,7 +6,7 @@ upstream: "https://github.com/bsnes-emu/bsnes"
profiled_date: "2026-03-23"
core_version: "v10.6"
display_name: "Nintendo - SNES / SFC (bsnes-hd beta)"
cores: [bsnes_hd_beta]
cores: [bsnes_hd_beta, bsneshd]
systems:
- nintendo-snes
- nintendo-sgb

1248
emulators/clk.yml Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -8,6 +8,7 @@ core_version: "v1.7.4"
display_name: "Sega - MS/GG/MD/CD (Genesis Plus GX)"
cores:
- genesis_plus_gx
- genesisplusgx
systems:
- sega-megadrive
- sega-megacd

View File

@@ -8,6 +8,7 @@ core_version: "v1.7.4"
display_name: "Sega - MS/GG/MD/CD (Genesis Plus GX Wide)"
cores:
- genesis_plus_gx_wide
- genesisplusgxwide
systems:
- sega-megadrive
- sega-megacd

View File

@@ -1,5 +1,5 @@
emulator: Hatari
type: libretro
type: standalone + libretro
core_classification: frozen_snapshot
source: "https://github.com/libretro/hatari"
upstream: "https://github.com/hatari/hatari"

View File

@@ -1,5 +1,5 @@
emulator: MAME
type: libretro
type: standalone + libretro
core_classification: official_port
source: "https://github.com/libretro/mame"
upstream: "https://github.com/mamedev/mame"

View File

@@ -11,6 +11,7 @@ mame_version: "0.78 (plus backports)"
cores:
- mame2003_plus
- mame078plus
systems:
- snk-neogeo-mvs

View File

@@ -6,7 +6,7 @@ upstream: "https://mednafen.github.io/"
profiled_date: "2026-03-24"
core_version: "v1.31.0.0"
display_name: "NEC - PC Engine / CD (Beetle PCE FAST)"
cores: [mednafen_pce_fast]
cores: [mednafen_pce_fast, pce_fast]
systems: [nec-pc-engine]
verification: existence
notes: >

View File

@@ -9,7 +9,7 @@ source: "https://github.com/libretro/Mesen-S"
upstream: "https://github.com/SourMesen/Mesen-S"
profiled_date: "2026-03-24"
core_version: "0.4.0"
cores: [mesen-s]
cores: [mesen-s, mesen_s]
systems: [nintendo-snes, nintendo-gb, nintendo-gbc, nintendo-super-game-boy, nintendo-satellaview]
notes: >

View File

@@ -12,10 +12,11 @@ cores: [mupen64plus_next, mupen64plus_next_develop, mupen64plus_next_gles3, mupe
files:
- name: "IPL.n64"
path: "Mupen64plus/IPL.n64"
standalone_path: "64DD_IPL.bin"
aliases: ["64DD_IPL.bin"]
size: 4194304
required: false
description: "64DD IPL ROM"
note: "Only needed for N64 Disk Drive games (.ndd) via subsystem API. Accepts Z64, N64, and V64 byte-swap formats."
source_ref: "mupen64plus-core/src/main/main.c:940-1024"
- name: "font.ttf"

View File

@@ -6,7 +6,7 @@ upstream: "https://github.com/opentyrian/opentyrian"
profiled_date: "2026-03-24"
core_version: "1.0.0.6"
display_name: "Tyrian (OpenTyrian)"
cores: [opentyrian]
cores: [opentyrian, tyrian]
systems: [tyrian]
verification: existence

View File

@@ -6,7 +6,7 @@ upstream: "https://sourceforge.net/projects/vice-emu/"
profiled_date: "2026-03-25"
core_version: "3.10"
display_name: "Commodore - C128 (VICE x128)"
cores: [vice_x128]
cores: [vice_x128, x128]
systems: [commodore-c128]
notes: >
System ROMs embedded in binary: C128 kernal (318020-05), chargen (390059-01),

View File

@@ -6,7 +6,7 @@ upstream: "https://sourceforge.net/projects/vice-emu/"
profiled_date: "2026-03-25"
core_version: "3.10"
display_name: "Commodore - C64 (VICE x64, fast)"
cores: [vice_x64]
cores: [vice_x64, x64]
systems: [commodore-c64]
notes: >
System ROMs embedded in binary: C64 BASIC (901226-01), chargen (901225-01),

View File

@@ -6,7 +6,7 @@ upstream: "https://sourceforge.net/projects/vice-emu/"
profiled_date: "2026-03-25"
core_version: "3.10"
display_name: "Commodore - CBM-II 6x0/7x0 (VICE xcbm2)"
cores: [vice_xcbm2]
cores: [vice_xcbm2, xcbm2]
systems: [commodore-cbm-ii]
notes: >
System ROMs embedded in binary: chargen 600 (901237-01), chargen 700 (901232-01),

View File

@@ -6,7 +6,7 @@ upstream: "https://sourceforge.net/projects/vice-emu/"
profiled_date: "2026-03-25"
core_version: "3.10"
display_name: "Commodore - CBM-II 5x0 (VICE xcbm5x0)"
cores: [vice_xcbm5x0]
cores: [vice_xcbm5x0, xcbm5x0]
systems: [commodore-cbm-ii]
notes: >
System ROMs embedded in binary: chargen 500 (901225-01), kernal 500

View File

@@ -6,7 +6,7 @@ upstream: "https://sourceforge.net/projects/vice-emu/"
profiled_date: "2026-03-25"
core_version: "3.10"
display_name: "Commodore - PET (VICE xpet)"
cores: [vice_xpet]
cores: [vice_xpet, xpet]
systems: [commodore-pet]
notes: >
System ROMs embedded in binary: kernal 1 (901439-04-07), kernal 2 (901465-03),

View File

@@ -6,7 +6,7 @@ upstream: "https://sourceforge.net/projects/vice-emu/"
profiled_date: "2026-03-25"
core_version: "3.10"
display_name: "Commodore - PLUS/4 (VICE xplus4)"
cores: [vice_xplus4]
cores: [vice_xplus4, xplus4]
systems: [commodore-plus4]
notes: >
All system ROMs embedded in binary: BASIC (318006-01), kernal PAL (318004-05),

View File

@@ -6,7 +6,7 @@ upstream: "https://sourceforge.net/projects/vice-emu/"
profiled_date: "2026-03-25"
core_version: "3.10"
display_name: "Commodore - C64 SuperCPU (VICE xscpu64)"
cores: [vice_xscpu64]
cores: [vice_xscpu64, xscpu64]
systems: [commodore-c64-supercpu]
notes: >
Embedded SCPU64 ROM V0.07 (free replacement by Soci/Singular, 64 KB), chargen

View File

@@ -6,7 +6,7 @@ upstream: "https://sourceforge.net/projects/vice-emu/"
profiled_date: "2026-03-25"
core_version: "3.10"
display_name: "Commodore - VIC-20 (VICE xvic)"
cores: [vice_xvic]
cores: [vice_xvic, xvic]
systems: [commodore-vic20]
notes: >
System ROMs embedded in binary: BASIC (901486-01), chargen (901460-03),