feat: shared groups, scraper subdir prefixes, arcade + emulator profiles

shared groups in _shared.yml: np2kai, keropi, quasi88, kronos, ep128emu
with source references for each subdirectory requirement.

libretro_scraper: CORE_SUBDIR_MAP applies subdirectory prefixes at
generation time (np2kai/, keropi/, dc/). EXTRA_SYSTEMS adds QUASI88.
SYSTEM_SHARED_GROUPS injects includes for kronos/np2kai/keropi.

new BIOS: CPS3 (23 ZIPs), Cannonball OutRun (40 ROMs), PCem PC BIOS
(73 files), VICE Commodore ROMs, Spectrum ZIPs, dc_bios.bin, X1 fonts.

new emulator profiles: redream, melonds_ds, lrps2 with doc vs source
notes. platforms/README.md documents shared groups architecture.
This commit is contained in:
Abdessamad Derraz
2026-03-18 13:49:59 +01:00
parent 7653d5d108
commit c71378a71c
207 changed files with 3074 additions and 44 deletions

30
emulators/lrps2.yml Normal file
View File

@@ -0,0 +1,30 @@
# LRPS2 — Sony PlayStation 2 (libretro)
# ref: libretro/lrps2, docs.libretro.com/library/lrps2
# Same BIOS as PCSX2 standalone, placed in pcsx2/bios/ subfolder.
# Also needs GameIndex.yaml for game compatibility database.
#
# doc vs source: docs say "no specific filename required" for BIOS, any
# valid 4 MB PS2 BIOS dump works. Docs do not list GameIndex.yaml as a
# BIOS file, but the source code loads it from pcsx2/resources/ and it
# is needed for game-specific patches and compatibility fixes.
# SCPH-10000 not recommended per docs (lower compatibility).
emulator: LRPS2
type: libretro
cores: [lrps2]
source: "https://github.com/libretro/lrps2"
systems:
- sony-playstation-2
notes: |
Libretro port of PCSX2. Uses the same BIOS files as standalone PCSX2.
BIOS must NOT be zipped. Any valid PS2 BIOS works (SCPH-10000 not
recommended due to lower compatibility). BIOS goes in pcsx2/bios/.
GameIndex.yaml goes in pcsx2/resources/ and is needed for proper
game-specific settings (patches, fixes).
files:
- name: GameIndex.yaml
system: sony-playstation-2
required: true
note: "game compatibility database, not a BIOS — pcsx2/resources/GameIndex.yaml"
source_ref: "pcsx2/GameIndex.yaml"

55
emulators/melonds_ds.yml Normal file
View File

@@ -0,0 +1,55 @@
# melonDS DS — Nintendo DS/DSi (libretro, newer fork)
# ref: JesseTG/melonds-ds, docs.libretro.com/library/melonds_ds
# Prefers files in "melonDS DS/" subfolder. DS mode has HLE fallback.
# DSi mode requires real BIOS + NAND dump.
#
# doc vs source: docs use bios7.bin/bios9.bin (NDS) and dsi_bios7.bin/
# dsi_bios9.bin (DSi). The older melonDS core uses the same names.
# Repo stores NDS ARM7/ARM9 as biosdsi7.bin/biosdsi9.bin (DSi dumps that
# also work for NDS). The md5 in docs (df692a80/a392174e) are for the
# smaller NDS-only dumps, different from the DSi dumps in the repo.
emulator: melonDS DS
type: libretro
cores: [melonds_ds]
source: "https://github.com/JesseTG/melonds-ds"
systems:
- nintendo-ds
- nintendo-dsi
notes: |
Newer fork of melonDS for libretro with DSi support.
DS BIOS files are optional (built-in FreeBIOS used as fallback).
DSi mode requires all four DSi-specific files.
Core searches "melonDS DS/" subfolder first, then system root.
files:
# DS mode (optional, FreeBIOS fallback)
- name: bios7.bin
system: nintendo-ds
required: false
md5: df692a80a5b1bc90728bc3dfc76cd948
note: "NDS ARM7 BIOS"
- name: bios9.bin
system: nintendo-ds
required: false
md5: a392174eb3e572fed6447e956bde4b25
note: "NDS ARM9 BIOS"
- name: firmware.bin
system: nintendo-ds
required: false
sha1: 8497afdd16af92d6887b71582846c40514e9039f
md5: 145eaef5bd3037cbc247c213bb3da1b3
size: 262144
# DSi mode (required)
- name: dsi_firmware.bin
system: nintendo-dsi
required: true
sha1: d2a5af338f09c5cbdd5d7628db5b9c075c69b616
md5: 8daa89fd280b3e5ec79fbab73ad6684e
size: 131072
- name: dsi_nand.bin
system: nintendo-dsi
required: true
sha1: b48f44194fe918aaaec5298861479512b581d661
md5: dfafb1908da8f527df7a372e649b50be
size: 251658304

28
emulators/redream.yml Normal file
View File

@@ -0,0 +1,28 @@
# Redream — Sega Dreamcast (libretro)
# ref: libretro/redream, docs.libretro.com/library/redream
# Uses dc/boot.bin and dc/flash.bin (different names from Flycast)
# Same BIOS data as Flycast's dc_boot.bin / dc_flash.bin
#
# doc vs source: docs list boot.bin md5 e10c53c2f8b90bab96ead2d368858623
# which matches dc_bios.bin in the repo. Flycast uses dc_boot.bin (same
# data, 2 MB) while Redream calls it boot.bin. The flash.bin is identical
# across both cores.
emulator: Redream
type: libretro
source: "https://github.com/libretro/redream"
systems:
- sega-dreamcast
files:
sega-dreamcast:
- name: dc_bios.bin
destination: dc/boot.bin
required: true
sha1: 8951d1bb219ab2ff8583033d2119c899cc81f18c
md5: e10c53c2f8b90bab96ead2d368858623
size: 2097152
- name: dc_flash.bin
destination: dc/flash.bin
required: true
sha1: 94d44d7f9529ec1642ba3771ed3c5f756d5bc872
md5: 0a93f7940c455905bea6e392dfde92a4
size: 131072