Commit Graph
287 Commits
Author SHA1 Message Date
Abdessamad Derraz 66dae2a974 fix: refuse a cores folder that cannot be listed 2026-11-05 19:20:14 +01:00
Abdessamad Derraz c0bb3443c0 fix: read a batocera zen3 board as its target 2026-11-05 19:18:50 +01:00
Abdessamad Derraz 289c180bfa feat: narrow a knulli install to its board 2026-11-05 19:18:29 +01:00
Abdessamad Derraz 83f5d161ab fix: say a config detection fails to read 2026-11-05 19:15:35 +01:00
Abdessamad Derraz 59c8217280 fix: say a settings file detection cannot read 2026-11-05 19:11:08 +01:00
Abdessamad Derraz 494e390de8 fix: take an elec bios folder as its games part 2026-11-05 19:09:43 +01:00
Abdessamad Derraz 4b02ab33da fix: one sha1 rule at the manifest boundary 2026-11-05 19:08:03 +01:00
Abdessamad Derraz c624a820f0 chore: regenerate install lists after the merges
ide12.rom is collected: the manifests that run ep128emu serve it
instead of listing it among the files they leave out.
2026-11-05 17:11:46 +01:00
Abdessamad Derraz b90f8bb0b9 chore: merge tooling batch 2026-11-05 15:57:19 +01:00
Abdessamad Derraz 46302de5bb chore: merge installer batch 2026-11-05 15:21:48 +01:00
Abdessamad Derraz feab2d5ff0 chore: merge origin/main 2026-11-05 13:22:26 +01:00
Abdessamad Derraz da5f24b74a chore: regenerate lists after the audit batches
The resolver now keeps a name inside its own emulator tree and the retail Xbox dashboard files moved to bios/Microsoft/Xbox/C/, so the install lists, README counts, installer samples and games index are rebuilt from the merged tree. Built twice, identical.
2026-11-05 13:22:19 +01:00
Abdessamad Derraz 2753387905 chore: merge main 2026-11-05 13:14:01 +01:00
Abdessamad Derraz fe8033f477 chore: index the POM2 Apple II dumps
Database, RetroArch install list, README counts and the installer page samples after the merge of #86, so the installer serves the 27 Apple II files.
2026-11-05 13:07:33 +01:00
Abdessamad Derraz d73728737f chore: regenerate readme, games and source paths
One Bermuda Syndrome slug, the model ROMs without a territory, and the
redream and hatari pins.
2026-11-05 12:59:49 +01:00
Abdessamad Derraz a6aea140f0 chore: merge review tag cleanup 2026-11-05 12:52:29 +01:00
Abdessamad Derraz 97b72c95c5 chore: merge knulli target scraper 2026-11-05 12:42:54 +01:00
Abdessamad Derraz a9ecfea1a6 feat: add knulli target scraper
KNULLI builds per board on Batocera's Kconfig model from its own tree (knulli-cfw/knulli-linux at the tag platforms/knulli.yml pins): configs/knulli-*.board, package/system/knulli-system/Config.in, knulli-es-system/es_systems.yml and the knulli-cfw/buildroot submodule. Ten boards, the armhf library builds excluded.
2026-11-05 12:42:23 +01:00
Abdessamad Derraz 313693e58b fix: settle batocera kconfig before mapping cores
Continued if-conditions were cut at their first line, so GLES3 held on every board, and selects guarded by a negation stayed on once fired. Derived flags are read line by line, each pass rebuilds the symbol set from the board, and the architecture comes from the board's BR2_<arch> choice.
2026-11-05 12:42:19 +01:00
Abdessamad Derraz 9c128e46b2 feat: apply the board a mounted card names 2026-11-05 12:34:38 +01:00
Abdessamad Derraz ddafc2ff42 feat: carry the board list in the pack 2026-11-05 12:30:06 +01:00
Abdessamad Derraz fd36670532 fix: name --from-pack and the packs beside a typo 2026-11-05 12:20:44 +01:00
Abdessamad Derraz 3d694c7d70 feat: tell RomM users to scan after an install 2026-11-05 12:20:08 +01:00
Abdessamad Derraz 964812f977 chore: drop review tags from comments
Comments, docstrings and test texts ended on tags that name private review notes no clone holds. The tags go, the facts stay. Test methods named after a finding number are named after what they hold. test_prose_style refuses a tag that comes back. install.py changes in comments only: its pin and the launcher index follow.
2026-11-05 12:19:12 +01:00
Abdessamad Derraz bc6bd590f1 fix: keep the dry-run total in view 2026-11-05 12:13:04 +01:00
Abdessamad Derraz 0d5911f614 fix: name only the platform's cores as readers 2026-11-05 12:12:03 +01:00
Abdessamad Derraz 860fa575d9 feat: link each emulator page under a needed file 2026-11-05 12:11:29 +01:00
Abdessamad Derraz 505cfc044b fix: say what a platform's own check compares 2026-11-05 12:10:51 +01:00
Abdessamad Derraz 2c81e1a1af feat: watch the rom folder pins 2026-11-05 12:09:10 +01:00
Abdessamad Derraz 3389651549 fix: name a sign-in page sent for the file list 2026-11-05 12:08:12 +01:00
Abdessamad Derraz f6de9a0ae3 feat: answer ES-DE, LaunchBox and Android by name 2026-11-05 12:07:25 +01:00
Abdessamad Derraz da4773a0be fix: answer the system names the listing prints 2026-11-05 12:06:36 +01:00
Abdessamad Derraz 94b5195590 fix: exit 2 on an unknown name, as for an option 2026-11-05 12:05:44 +01:00
Abdessamad Derraz 3f0dfbce31 feat: emit an error event for an unknown name 2026-11-05 11:59:02 +01:00
Abdessamad Derraz 7da6e117a3 fix: read a RetroDECK bios dest as its folder 2026-11-05 11:56:00 +01:00
Abdessamad Derraz 896dbc8660 fix: say a platform has no hardware targets 2026-11-05 11:54:53 +01:00
Abdessamad Derraz bcedd22a9e fix: pick a Python that can do HTTPS 2026-11-05 11:53:49 +01:00
Abdessamad Derraz 4d46587693 fix: name a Python built without ssl or zlib 2026-11-05 11:48:50 +01:00
Abdessamad Derraz f78da21656 fix: say why the games index did not download 2026-11-05 11:46:40 +01:00
Abdessamad Derraz 0c384e0446 fix: say when retroarch.cfg cannot be read 2026-11-05 11:45:53 +01:00
Abdessamad Derraz d38cd58036 feat: scrape recalbox rom folders per board
GitLab refused the hundred raw reads per IP. A GitLab directory is now
read from one archive request, else a shallow sparse git fetch, and the
cache keeps its file list so offline runs know what is absent.

Each board builds system.ini against its defconfig: a core whose package
the board does not enable is dropped (pisnes was the SNES default
everywhere), and a system with no core is not built. The row names the
default most boards share, board_defaults the others. A files: list
names whole files and is carried as files through the index and the
installer.

A folder no name resolves, run by a core of several machines, now holds
those machines: thomson, multivision and pcv2 had no fallback, so their
games got no file. Arcade-indexed cores keep naming files per set.
2026-11-04 16:48:34 +01:00
Abdessamad Derraz 33add072cb chore: merge installer page refresh 2026-11-04 05:52:02 +01:00
Abdessamad Derraz fd7dd0efe5 fix: games tools write whole files, name options
The games importers wrote through fixed .part names, the new options had
no help text, and romfolders stopped on the first setup the offline cache
lacked. RetroArch's rom folder map is regenerated from its source spec
(path null, as the schema says). The installer's Python 3.8 job imports
the games tests without pyyaml, so the region rules load lazily.
2026-11-03 22:46:17 +01:00
Abdessamad Derraz af2e930d32 chore: merge games on card installer mode 2026-11-03 21:06:04 +01:00
Abdessamad Derraz c75fd661e8 fix: read fbneo console sets by driver name
In a console folder an FBNeo set is looked up under its driver name
(msx_1942), the bare name being the arcade set's. A run given its list as
a file reads the games index from beside it or the cache only when
--for-games was not asked. The installer keeps to Python 3.8 syntax, and
the testing guide names test_install_games.
2026-11-03 19:12:42 +01:00
Abdessamad Derraz 8ba0a8c3f6 chore: merge main 2026-11-03 19:12:38 +01:00
Abdessamad Derraz 52fc01109e chore: regenerate manifests after the data merges
Same files per platform. The manifests catch up with the per-system MAME
filing, the platform system join and declared_in, and name sfiii2a.zip as
missing. The games index fallback sets and the installer page samples
follow.
2026-11-03 19:05:39 +01:00
Abdessamad Derraz 2e9175a8e9 feat: install for the games on the card
--for-games reads the card's rom folders through install/games/ and keeps
what the games need: per system what its default core reads, one region
where the content proves it (crc32 and size, a disc serial, a header the
core reads), an arcade set's BIOS parents. A game not recognised gets
every BIOS of its system and is named. --required-only keeps only what
starts. The plan and the line menu open on it when the card holds games,
everything one press away. A cache keeps what reading a card found.
2026-11-03 18:51:21 +01:00
Abdessamad Derraz ff1f94e473 feat: read 0.78 era arcade parents from code
mame2000, mame2003 and mame2003-plus carry a DAT their code moved past. Their parents and BIOS sets now come from src/driver.c and src/drivers/ at the pin, named by the src tree sha. The DAT is still read to report gaps. FBNeo DATs are read one namespace each, console sets keyed by driver. A BIOS with no dumped ROM is no longer listed.
2026-11-03 18:46:45 +01:00
Abdessamad Derraz b69b33178b feat: publish board sets and sets with no bios
The games index now names, per arcade core, the game sets that load no
BIOS set and every BIOS set, so a set on a card the DAT does not know is
told apart from one that needs nothing. Each board default core of a rom
folder gets its own fallback set, and index.json maps every folder name
a setup uses to its systems, for a games folder on a computer.
2026-11-03 18:17:03 +01:00