Commit Graph

157 Commits

Author SHA1 Message Date
Abdessamad Derraz
37acc8d0fc feat: add --verbose flag and ground truth rendering 2026-03-27 23:38:43 +01:00
Abdessamad Derraz
2cf1398786 feat: attach ground truth to emulator verification results 2026-03-27 23:33:53 +01:00
Abdessamad Derraz
6b14b5e2b1 feat: attach ground truth to platform verification results 2026-03-27 23:30:49 +01:00
Abdessamad Derraz
6d959ff2b0 feat: add per-emulator ground truth to validation index 2026-03-27 23:25:42 +01:00
Abdessamad Derraz
569781c104 fix: rename misleading exclusion label in verify report 2026-03-27 22:44:05 +01:00
Abdessamad Derraz
7f265b3cb2 refactor: split pack check into baseline and cores with clear counts 2026-03-27 20:37:48 +01:00
Abdessamad Derraz
3ea1e09cb0 feat: verify core extras presence in pack alongside baseline 2026-03-27 19:41:47 +01:00
Abdessamad Derraz
89d6dd2eee feat: add platform conformance check to pack verification 2026-03-27 19:21:29 +01:00
Abdessamad Derraz
acd2daf7c1 fix: filter pattern placeholders, skip standalone exclusions for standalone platforms 2026-03-27 18:30:18 +01:00
Abdessamad Derraz
0ad8324d46 refactor: clearer verify report for core files coverage 2026-03-27 18:11:26 +01:00
Abdessamad Derraz
181248b6db fix: case-sensitive packs for linux platforms, remove empty bios placeholder 2026-03-27 12:58:08 +01:00
Abdessamad Derraz
a117b13b49 fix: data directory path construction avoids double slash duplicates 2026-03-27 12:42:21 +01:00
Abdessamad Derraz
8f1c7e47de fix: emudeck scraper outputs cores field, base_scraper uses generate_platform_yaml 2026-03-27 12:27:51 +01:00
Abdessamad Derraz
106130ca52 refactor: extract _norm_system_id, apply to resolve_platform_cores fallback 2026-03-27 12:23:18 +01:00
Abdessamad Derraz
17631f741c fix: normalize system IDs for target filtering cross-platform matching 2026-03-27 11:14:24 +01:00
Abdessamad Derraz
0a1880f606 fix: filter baseline by platform-scoped cores, include retroarch cores in emudeck targets 2026-03-26 10:20:43 +01:00
Abdessamad Derraz
6402b77374 fix: filter baseline systems by target-available cores 2026-03-26 09:54:28 +01:00
Abdessamad Derraz
a3de47dd88 fix: normalize core names in emudeck and retropie scrapers 2026-03-26 09:44:11 +01:00
Abdessamad Derraz
7e8491fdf7 fix: resolve upstream core names to profile keys via reverse index 2026-03-26 09:42:08 +01:00
Abdessamad Derraz
16b4dcc270 feat: rewrite retropie scraper using scriptmodules 2026-03-26 09:31:37 +01:00
Abdessamad Derraz
15e8c0eccb feat: add Vita target via libretro-super recipes 2026-03-26 09:31:34 +01:00
Abdessamad Derraz
dfb7d9a25a fix: correct scraper paths and patterns, populate target files 2026-03-26 09:18:39 +01:00
Abdessamad Derraz
03a9fa3276 fix: batocera targets scraper es_systems path and condition parser
- Fix es_systems.yml URL (batocera-emulationstation -> batocera-es-system)
- Replace if/endif block parser with select-if condition parser that
  matches the actual Config.in structure (select PACKAGE if CONDITION)
- Add Kconfig boolean condition checker (handles &&, ||, !, parentheses)
- Add meta-flag expansion (X86_64_ANY, GLES3, ROCKCHIP_GLES3, etc.)
  iterated to fixpoint for chained derivations
- Fix es_systems.yml parser for the actual dict format with requireAnyOf
2026-03-26 09:16:06 +01:00
Abdessamad Derraz
6b86c543af feat: add emudeck and retropie target scrapers 2026-03-26 08:55:58 +01:00
Abdessamad Derraz
8e91552b16 feat: add batocera per-board emulator target scraper 2026-03-26 08:55:54 +01:00
Abdessamad Derraz
c6ab8e9c3a feat: add target scraper infra and retroarch buildbot scraper 2026-03-26 08:55:50 +01:00
Abdessamad Derraz
de58f3f28e feat: add --platform and --target to cross_reference.py 2026-03-26 08:48:41 +01:00
Abdessamad Derraz
89054084b7 feat: target-aware fingerprint in group_identical_platforms 2026-03-26 08:48:40 +01:00
Abdessamad Derraz
ea9cd93e83 feat: propagate --target through pipeline.py 2026-03-26 08:48:34 +01:00
Abdessamad Derraz
5ac14079d6 feat: add --target and --list-targets to generate_pack.py 2026-03-26 08:48:31 +01:00
Abdessamad Derraz
1e939f1470 feat: add --target and --list-targets to verify.py 2026-03-26 08:48:29 +01:00
Abdessamad Derraz
1c34790737 feat: propagate target_cores through find_undeclared_files, find_exclusion_notes, verify_platform, _collect_emulator_extras 2026-03-26 08:44:44 +01:00
Abdessamad Derraz
e17d771710 feat: add target_cores filter to resolve_platform_cores
Optional target_cores parameter intersects the resolved core set,
enabling per-target filtering without changing existing call sites.
Includes 2 E2E tests covering intersection and None pass-through.
2026-03-26 08:42:08 +01:00
Abdessamad Derraz
0549b8945e feat: add load_target_config and list_available_targets to common.py
Loads per-platform target YAML files from platforms/targets/,
resolves aliases and applies add_cores/remove_cores from _overrides.yml.
Includes 7 E2E tests covering alias resolution, overrides, and error paths.
2026-03-26 08:41:37 +01:00
Abdessamad Derraz
8ac64d6143 docs: add build guide and documentation site section to readme
Quick start commands for generating packs by platform, emulator, or
system. Documentation site section explains what users can find there.
2026-03-26 07:15:01 +01:00
Abdessamad Derraz
3f676b75e8 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.
2026-03-26 00:44:21 +01:00
Abdessamad Derraz
d2cc9b8f29 feat: add doom engine wad files, emulatorjs base config 2026-03-25 23:12:53 +01:00
Roël Couwenberg
32b391ef69 feat: Addition of a RomM package (#37)
* feat: Initial addition of the RomM scraper and package

* docs: Added RomM to the verification modes table

* chore: Clean up scraper by removing workaround code from main() and an unused system translation map
2026-03-25 19:24:59 +01:00
Abdessamad Derraz
1ad10eddb7 feat: include platform version in pack filenames 2026-03-25 18:55:35 +01:00
Abdessamad Derraz
69131f4ad1 fix: emulator validation is informational, not a platform failure 2026-03-25 17:34:56 +01:00
Abdessamad Derraz
c61d40d8ef docs: rewrite readme for clarity and discoverability 2026-03-25 17:18:43 +01:00
Abdessamad Derraz
4b09205bc9 fix: zero warnings on mkdocs build, update actions to v4/v5 2026-03-25 16:30:08 +01:00
Abdessamad Derraz
c5b267a6fb fix: anchor mismatches in platform and emulator index pages 2026-03-25 16:23:25 +01:00
Abdessamad Derraz
851f53ba7f refactor: extract wiki to source files, use deploy-pages action 2026-03-25 16:02:11 +01:00
Abdessamad Derraz
a6150a43bd feat: group emulators by classification, slim mkdocs nav, add pymdownx extensions 2026-03-25 15:29:58 +01:00
Abdessamad Derraz
0196fff8c7 feat: improve site UX (quick start, system summary, collapsible sections, wiki index, actionable gaps) 2026-03-25 15:24:38 +01:00
Abdessamad Derraz
904edd65e4 docs: document CI workflows, inheritance, MAME clones, tests, scrapers 2026-03-25 15:14:29 +01:00
Abdessamad Derraz
02a7c58fca docs: complete wiki coverage, document all scripts and edge cases 2026-03-25 15:02:23 +01:00
Abdessamad Derraz
f8a325260f feat: add wiki pages (architecture, tools, profiling, data model) 2026-03-25 14:56:37 +01:00
Abdessamad Derraz
313637663a docs: soften tone, explain methodology without dismissing other sources 2026-03-25 14:51:57 +01:00