feat: re-profile 22 emulators, refactor validation to common.py

batch re-profiled nekop2 through pokemini. mupen64plus renamed to
mupen64plus_next. new profiles: nes, mupen64plus_next.
validation functions (_build_validation_index, check_file_validation)
consolidated in common.py — single source of truth for verify.py
and generate_pack.py. pipeline 100% consistent on all 6 platforms.
This commit is contained in:
Abdessamad Derraz
2026-03-24 22:31:22 +01:00
parent 94000bdaef
commit 0543165ed2
33 changed files with 1449 additions and 783 deletions
+12 -19
View File
@@ -1,7 +1,9 @@
emulator: OpenLara
type: libretro
core_classification: game_engine
source: "https://github.com/libretro/OpenLara"
profiled_date: "2026-03-18"
upstream: "https://github.com/XProger/OpenLara"
profiled_date: "2026-03-24"
core_version: "v1"
display_name: "Tomb Raider (OpenLara)"
cores: [openlara]
@@ -9,23 +11,14 @@ systems: [tomb-raider]
verification: existence
notes: >
Open-source reimplementation of the classic Tomb Raider engine (TR1-TR4).
Supports PC (.PHD, .TR2, .TR4), PlayStation (.PSX), and Saturn (.SAT)
level formats. The core accepts phd|psx|tr2|sat extensions
(retro_get_system_info sets valid_extensions, main.cpp:246).
need_fullpath is true - the core resolves sibling game assets relative
to the content directory. retro_load_game (main.cpp:602) derives
contentDir from the loaded level file path and strips the level/
subdirectory if present, then passes a relative levelpath to the engine.
Game version is auto-detected by probing for known level files:
DATA/GYM.PHD (TR1 PC), PSXDATA/GYM.PSX (TR1 PSX), DATA/GYM.SAT
(TR1 Saturn), data/ASSAULT.TR2 (TR2 PC), DATA/ASSAULT.PSX (TR2 PSX),
data/JUNGLE.TR2 (TR3 PC), DATA/JUNGLE.PSX (TR3 PSX), data/angkor1.tr4
(TR4 PC) - see gameflow.h:1047-1071. Audio tracks are loaded from
audio/ subdirectories as .ogg files or cdaudio.wad containers
(gameflow.h:1248-1350). The system directory is used only to create
a cache folder at {system_dir}/openlara/cache/ (main.cpp:177-197).
No BIOS, firmware, or engine data files are required in the system
directory. All required data comes from the original game files loaded
as content.
Accepts phd|psx|tr2|sat extensions (main.cpp:246). need_fullpath is true -
the core resolves game assets relative to the content directory.
retro_load_game (main.cpp:602) derives contentDir from the level file path
and strips level/ if present. Game version auto-detected by probing for
known level files (gameflow.h:1047-1071). Audio tracks loaded from audio/
subdirectories as .ogg/.mp3/.wav files or cdaudio.wad (gameflow.h:1272-1356).
System directory used only for shader cache at {system_dir}/openlara/cache/
(main.cpp:177-197). No BIOS, firmware, or engine data files required in
system directory. .info omits sat from supported_extensions (code declares it).
files: []