Files
libretro/platforms/_registry.yml
Abdessamad Derraz 9052a6b750 feat: add emulator profiles and cross-reference engine (tier 2)
New two-tier architecture:
- Tier 1: Platform configs (what the UI checks) - unchanged
- Tier 2: Emulator profiles (what the code actually loads)

11 emulator profiles from source code analysis:
  cemu, citra, dolphin, duckstation, flycast,
  melonds, pcsx2, ppsspp, rpcs3, vita3k, xemu

Each profile documents every file the emulator loads with
source code references (file:line), hashes, and notes.

New scripts/cross_reference.py computes gaps between what
platforms declare and what emulators need.

Current gap: 200 undeclared files, 24 already in repo.
DuckStation alone recognizes 105 PS1/PS2 BIOS variants.

generate_pack.py gains --include-extras flag (future use).
_registry.yml maps platforms to their emulators.
2026-03-17 20:08:27 +01:00

72 lines
2.4 KiB
YAML

# Platform Registry
# Central configuration for all supported platforms and their scraper sources.
# Adding a new platform = adding an entry here + creating its YAML config.
#
# status: active | archived
# active -- included in automated releases, scraped weekly/monthly
# archived -- config preserved, user can generate pack manually, excluded from CI releases
platforms:
retroarch:
config: retroarch.yml
status: active
scraper: libretro
source_url: "https://raw.githubusercontent.com/libretro/libretro-database/master/dat/System.dat"
source_format: clrmamepro_dat
hash_type: sha1
schedule: weekly
emulators: [pcsx_rearmed, beetle_psx, genesis_plus_gx, flycast, melonds, mgba, snes9x, mupen64plus, beetle_saturn, dolphin]
batocera:
config: batocera.yml
status: active
scraper: batocera
source_url: "https://raw.githubusercontent.com/batocera-linux/batocera.linux/master/package/batocera/core/batocera-scripts/scripts/batocera-systems"
source_format: python_dict
hash_type: md5
schedule: weekly
recalbox:
config: recalbox.yml
status: active
scraper: recalbox
source_url: "https://gitlab.com/recalbox/recalbox/-/raw/master/board/recalbox/fsoverlay/recalbox/share_init/system/.emulationstation/es_bios.xml"
source_format: xml
hash_type: md5
schedule: monthly
retrobat:
config: retrobat.yml
status: active
scraper: retrobat
source_url: "https://raw.githubusercontent.com/RetroBat-Official/emulatorlauncher/master/batocera-systems/Resources/batocera-systems.json"
source_format: json
hash_type: md5
schedule: weekly
emudeck:
config: emudeck.yml
status: active
scraper: emudeck
source_url: "https://raw.githubusercontent.com/dragoonDorise/EmuDeck/main/functions/checkBIOS.sh"
source_wiki: "https://raw.githubusercontent.com/EmuDeck/emudeck.github.io/main/docs/tables/"
source_format: bash_script+csv
hash_type: md5
schedule: weekly
emulators: [duckstation, pcsx2, dolphin, rpcs3, ppsspp, cemu, xemu, vita3k, citra, melonds]
# dragoonDorise/EmuDeck = official repo (creator's account, 3.4k stars)
# EmuDeck/emudeck.github.io = official wiki (org account)
lakka:
config: lakka.yml
status: active
scraper: libretro
inherits_from: retroarch
schedule: weekly
retropie:
config: retropie.yml
status: archived # Last release: v4.8 (March 2022) - no update in 4 years
scraper: null
schedule: null