Commit Graph
352 Commits
Author SHA1 Message Date
Abdessamad Derraz 5dbde15f72 chore: regenerate artifacts, name sharpx1 2026-11-09 10:57:29 +01:00
Abdessamad Derraz 31bdccbe8b chore: index the xbox 360 system update 2026-11-09 09:00:54 +01:00
Abdessamad Derraz 78fbd6d6cd chore: rebuild the database 2026-11-09 08:15:40 +01:00
Abdessamad Derraz 13a10da993 fix: serve the dump a name's hashes prove
dsi_bios7.bin and dsi_bios9.bin hold the DSi Panda devkit boot ROMs, eMMC
key-Y zeroed. Every md5 and crc32 declared under those names designates
a retail dump in the same directory, yet hashless entries (RetroBat,
dsperate) got the devkit ROMs by name. by_proven_name maps such a name to
the proven primaries beside it. kick13.rom, dsi_firmware.bin and
spectrum.zip follow the same rule.
2026-11-06 15:00:28 +01:00
Abdessamad Derraz 7a03578dd9 fix: count name holders with case folded
A hashless profile entry adopted the only exact holder of its name as the file its aliases designate. dosbox's SC-55 ROM2.BIN found Galaksija's ROM2.BIN, and ROM2_ST.BIN was indexed against a 4 KiB BASIC ROM while SC-55's rom2.bin sat under the same folded name. The name now has to designate one file once case is folded, a primary and its own variants counted as one.
2026-11-06 08:21:47 +01:00
Abdessamad Derraz 172639d0dd chore: merge demul profile 2026-11-06 01:01:37 +01:00
Abdessamad Derraz 43b71ded72 feat: collect dcdev 0.260 and build demul dc.zip
set5v0.972.ic507 (Katana Set5 v0.972, crc32 1a2f2a91, sha1 08df891f) entered MAME's dcdev set in 0.260. It comes from the archive.org item MAME_0.278_ROMs_non-merged_2025, whose dcdev.zip is the TorrentZip of the 0.260+ recipe. It becomes the primary dcdev.zip, and the five-member pre-0.260 set is kept as a variant.

Demul's dc set (11 rows of demul.exe's table) is built with build_torrentzip from members checked against the table's crc32 and sha1, in bios/Other/demul/. Only Demul reads dc.zip, so only its manifest entries move.
2026-11-05 23:40:43 +01:00
Abdessamad Derraz 755259517f feat: assemble the naomi.zip demul reads
Demul 0.7 reads 44 NAOMI BIOS rows from naomi.zip, the HOTD2, F355 and Airline Pilots BIOS among them. No copy held them all. The set is built with build_torrentzip from members already in the collection, each checked against the crc32 and sha1 of demul.exe's table, and kept in bios/Other/demul/. Batocera, KNULLI and RetroBat place it at bios/naomi.zip, the file MAME cores there also open, so it carries the nine MAME members the Demul table does not list.

The resolver left another emulator's own copy out of the member and superset ranking, so Flycast and the MAME cores keep the copies they were served.
2026-11-05 23:37:06 +01:00
Abdessamad Derraz d1ebd411ab fix: narrow hashless name matches to their maker
AmberELEC's nec-pc-88 declares DISK.ROM with an empty md5. QUASI88 reads
that name as n88sub.rom, the 2 KB PC-88 disk ROM (libretro.c:1085), but
the name step served the 16 KB MSX disk ROM, the only primary of that
name. The quasi88 alias never reached by_name, which refuses an alias a
primary already carries.

load_platform_config now writes each entry's system as platform_system.
A platform entry with no hash and no owning emulator, whose system id
names a maker, takes no name candidate filed under another maker, in
the name step and in the hash_mismatch step after it. When nothing is
left, by_shadowed_alias, the profile aliases by_name refuses, answers
within the system's maker folder. names_manufacturer and BUCKET_FOLDERS
move to common.py, and generate_site imports them.

Across every registered platform the only resolution that moves is
AmberELEC nec-pc-88 DISK.ROM, from bios/Microsoft/MSX/DISK.ROM to
bios/NEC/PC-88/N88SUB.ROM. Manifests, truth and exports are otherwise
byte-identical.
2026-11-05 23:17:04 +01:00
Abdessamad Derraz 0428588a6c fix: give the SMS v1.3 BIOS its pinned names
Genesis Plus GX declares bios_U.sms and bios_E.sms with no hash. Only
.variants/ copies carried those names, so the name step served the Store
Display Unit BIOS and a 256 KB BIOS, while every platform pins v1.3 under
both. Two causes in generate_db: the v1.3 content's path was ZEsarUX's
sms.rom, which the resolver sets aside as another emulator's file, and a
name pinned by hash was refused when only variants carried it.

The scan now prefers a copy filed under its machine over one in an
emulator's own tree, and a name only variants carry can name the content
a hash pins it to.

Manifests: six contents change repo_path only (v1.3 SMS BIOS and five
ZEsarUX Spectrum ROMs, same sha1). On batocera, knulli, recalbox and
retrodeck the Genesis Plus GX bios_E.sms and bios_U.sms extras move from
the two variants to v1.3.
2026-11-05 19:38:07 +01:00
Abdessamad Derraz 439b2cdaba fix: split the np2 V98 font from font.bmp
NP2kai and meowPC98 read font.bmp (PC-98 bitmap) and FONT.ROM (V98) as
separate files, each through its own reader (NP2kai font/font.c:192-195,
meowPC98 font/font.c:180-181). The V98 names hung on font.bmp as aliases
let a collection without font.bmp serve the PC-88 2 KB font.rom there.
FONT.ROM is now its own entry, at least 0x46800 bytes (fontv98.c:8, 51).

Manifests: np2/FONT.ROM and np2kai/FONT.ROM are added where the platform
did not declare them, served by the V98 font bios/NEC/PC-98/font.rom.
2026-11-05 19:33:04 +01:00
Abdessamad Derraz b90f8bb0b9 chore: merge tooling batch 2026-11-05 15:57: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 8db1ee7743 feat: collect ep128emu ide12.rom
Extracted from the ep128emu ROM package (http://ep128.hu/Emu/ep128emu_roms-2.0.11.bin, sha256 775f65b4...0441) that installer/makecfg.cpp downloads, unpacked with Ep128Emu::decompressData from src/decompm2.cpp and split per the makecfg.cpp table. The ROM identifies as EPIDE version 1.2.
2026-11-05 11:53:31 +01:00
Abdessamad Derraz 1a7389076d fix: file the xbox dashboard under the console
x1-box and hakuX both import the retail partition C tree. It sat in
hakuX's tree, so for x1-box the C/xbox.xtf tail was set aside as foreign
and the name step served Xenia's Xbox 360 dashboard font. xbox.xtf and
xboxdash.xbe now live in bios/Microsoft/Xbox/C/ and resolve by path for
both. msdash.xbe stays: its bytes are cxbx-reloaded's xboxdash.xbe, whose
path the RetroBat manifest names.
2026-11-05 11:49:27 +01:00
Abdessamad Derraz aa0158c65a fix: read redump bios dats from /bios/<code>
redump.info moved its BIOS DAT links from /static/bios/<name>.dat to one
route per system (/bios/PSX, /bios/PS2, /bios/GC, /bios/XBOX), served as
an attachment. The scraper matched only the old shape and found nothing.
Both shapes are read now.

Refreshed snapshot: the PS2 DAT moved from 2026-06-16 to 2026-10-10,
191 entries become 225 (34 mechacon, DVD and font ROMs added, the
ps2-dvd-302c.bin sha1 corrected, five descriptions completed). Only
the provenance fields of database.json change.
2026-11-03 14:37:09 +01:00
Abdessamad Derraz 358226f012 chore: regenerate database.json
Indexes the upper-case beetle_psx aliases the profile already carried.
2026-10-28 09:27:42 +01:00
Abdessamad Derraz 78a5aca760 fix: lead mpeg_card.bin with the Movie Card
The copy shipped first was the European MK-80310 Video CD card (its header reads VIDEO CD PLAYER PAL MK-80310, version 1.105). Lunar Silver Star Story MPEG, the Saturn game that needs a card, names the Movie Card, so the Japanese HSS-0119 (V1.102) now leads and the MK-80310 stays as a variant. No emulator tested reads the card's content today (records in measurements/beetle_saturn.jsonl), and no platform pins a hash for this file. Issue 85.
2026-10-27 11:33:56 +01:00
Abdessamad Derraz b870083413 chore: regenerate readme, database and manifests
After the third bring-to-head pass and the amiberry whdboot files.
Database and manifests generated twice, identical.
2026-10-26 23:17:29 +01:00
Abdessamad Derraz 67a6f49d8b chore: regenerate readme, database and manifests
After the second bring-to-head pass: 40 bumps, ten profiles by hand,
five off-forge apps, the G-NET BIOS sets and the new hiscore.dat.
Manifests generated twice, identical.
2026-10-26 21:03:54 +01:00
Abdessamad Derraz eb7b265758 chore: regenerate readme, database and manifests
After section A of the round 5 audit and the ROCKNIX standalone profiles
(data_root on 58 profiles, 67 display names, three alias folds, 33 core
names mapped, scummvm and vice standalone, yabasanshiro both modes).
Manifests generated twice, identical.
2026-10-24 02:08:25 +02:00
Abdessamad Derraz b764b5eba4 chore: regenerate database and readme
The genuine XeFu set (16 files, RSA-verified against Microsoft's retail
key) and the held and advanced pins. Generated twice, identical.
2026-10-23 18:21:10 +02:00
Abdessamad Derraz 123d5a6bf3 chore: regenerate database and readme
183 files collected today: 178 Amiga expansion ROMs, mame2003_plus
hiscore.dat and dotron artwork, jazz2-native's Plus.j2d, boom3's VR
paks. Generated twice, identical.
2026-10-23 17:00:06 +02:00
Abdessamad Derraz 8b4cc0db41 chore: one folder for fbalpha 2012 samples 2026-10-23 14:47:59 +02:00
Abdessamad Derraz 6d7304725f chore: one folder for fbalpha 2012 samples
The three committed samples sat under FBAlpha 2012 while the four
release assets and the profile use fba2012/samples. The folder check
now folds Alpha to A and also reads database paths, which list the
release assets the index never holds.
2026-10-23 14:35:22 +02:00
Abdessamad Derraz 15f69a2212 chore: file QEMU, Roland, Chihiro and Oric
QEMU's 79 files go to QEMU/QEMU and Roland's four loose ROMs to MT-32
and CM-32L. The mt32-roms, soundcanvas-roms and sounddata trees stay as
the code addresses them. Chihiro joins Sega and the Oric joins
Tangerine, the names the site and libretro already use. No destination
held other bytes.

The three QEMU EDK2 images are release assets, and their .gitignore
lines follow them. Database and manifests are regenerated together.
verify --all and cross_reference give the same output once moved paths
are mapped.
2026-10-23 13:49:37 +02:00
Abdessamad Derraz c2875a3851 fix: attach profile aliases by held content
A profile entry without a hash matched the collection by name, but
only primary names were looked up, and which copy of identical bytes is
primary follows path order. After the refile, project64's
64DD_IPL_v12_JPN.bin was a copy, so 64dd_ipl_J.bin and 64dd_ipl_U.bin left
the name index. The lookup now counts every copy's name, and a name held
by two contents still names neither.
2026-10-23 12:58:06 +02:00
Abdessamad Derraz 3de2d52629 chore: one folder per console
DS and DSi split into Nintendo DS and Nintendo DSi. 64DD, Mega-CD,
ZXSpectrum, VSmile, BBC and Game Engines/DOOM merge into the folder
of the same console. Same-named dumps with other bytes are kept:
BBC Micro's earlier zips in .variants/, the vsmilem set in vsmilem/,
the Doom II 1.666 IWAD in v1.666/, BizHawk's DSi firmware in bizhawk/.
Galaksija and Vircon get a console folder, sdlpal's desc.dat joins
its tree, VICE's PET and CBM-II ROMs leave C128 with their vice/ tail.

Database and manifests regenerated together. Verify and cross
reference give the same result once moved paths are mapped.
2026-10-23 10:15:49 +02:00
Abdessamad Derraz 3b1ea6b5d2 chore: regenerate database and manifests 2026-10-22 15:27:59 +02:00
Abdessamad Derraz 02ea24d887 chore: regenerate database, manifests and exports 2026-10-22 11:59:28 +02:00
Abdessamad Derraz 96d6238edf chore: regenerate database and manifests 2026-10-22 11:19:47 +02:00
Abdessamad Derraz 4366db574a chore: regenerate database and manifests 2026-10-22 11:08:12 +02:00
Abdessamad Derraz e0b9f3d45b chore: regenerate database and manifests 2026-10-22 10:48:41 +02:00
Abdessamad Derraz ccac829b54 chore: regenerate database and manifests 2026-10-22 07:59:31 +02:00
Abdessamad Derraz 361a3840e0 chore: regenerate database, manifests and exports 2026-10-22 07:52:13 +02:00
Abdessamad Derraz bde78bff45 chore: regenerate database, manifests and exports 2026-10-21 17:46:37 +02:00
Abdessamad Derraz 85c4f55544 chore: regenerate database, manifests and exports 2026-10-21 11:10:38 +02:00
Abdessamad Derraz 2f327fbd37 chore: drop two hiscore.dat copies cores install
groovymame, mame4droid-2024 and raine install their hiscore.dat with the
emulator; each profile records the sha1 of its copy.
2026-10-21 07:32:34 +02:00
Abdessamad Derraz 91a9d2279e chore: drop the dolphin-mmjr codehandler copy
Only dolphin-mmjr's bundled entry reaches it, and that entry records its
sha1 and size: the APK installs the file with the emulator.
2026-10-21 06:50:10 +02:00
Abdessamad Derraz e1a4f19737 feat: re-profile amiberry at 8.4.2
Pin moves to 2de3bf8 (v8.4.2). roms/aros-ext.bin, roms/aros-rom.bin and whdboot/game-data/whdload_db.json changed upstream and are collected at that revision. The WHDLoad database is matched on the archive SHA1 first and refreshed from the bundled copy when newer. kick02019.AROS and its .ext are names the Recalbox launcher writes, so the profile now documents the kickstart_rom_file settings instead.
2026-10-21 06:18:10 +02:00
Abdessamad Derraz 9fd50a21fd chore: regenerate the database and README
The last pushes changed the data without regenerating them, and Deploy Site requires the committed README to match what the generator writes.
2026-10-21 03:23:57 +02:00
Abdessamad Derraz eaba9ce901 chore: regenerate the database and manifests 2026-10-20 21:46:10 +02:00
Abdessamad Derraz 2faf971aa3 chore: regenerate the database and manifests 2026-10-20 19:21:48 +02:00
Abdessamad Derraz 75e688f6ce chore: regenerate the database and manifests 2026-10-20 17:03:22 +02:00
Abdessamad Derraz dd5680300a feat: collect the missing MAME 0.289 device sets
55 device sets the collection lacked or held incomplete. 24 are rebuilt from ROMs already in bios/, 31 come from the archive.org item mame-roms-non-merged. Every member matches the 0.289 listxml size, crc32 and sha1, and each archive is built with build_torrentzip. The complete nss_tvinterface goes to .variants since RetroDECK pins the incomplete copy. The old at_keybc.zip held two of the three ROMs, its md5 is pinned by no platform, and is replaced by the complete set RetroDECK pins (63536a7d). Database and install manifests are regenerated with the files, including the vMac.ROM move.
2026-10-20 15:35:08 +02:00
Abdessamad Derraz e607c6c8ad chore: regenerate the database
Indexes the aliases added to the profiles.
2026-10-20 14:26:25 +02:00
Abdessamad Derraz dd9afc8190 chore: regenerate the generated artifacts
Database, install manifests, README, site config and the corrected platform files, rebuilt after the profile work and the collection cleanup.
2026-10-20 12:16:11 +02:00
Abdessamad Derraz eee091cc8b chore: regenerate the database
Indexes the files collected for tyrquake, prboom, PUAE, amiberry, mame2003-plus and MAME, and the LaserActive firmware.
2026-10-20 10:37:33 +02:00
Abdessamad Derraz ef8b372810 chore: drop copies only an install provides
A file that arrives with the emulator is already on the user's machine
and the packs leave it out. 4558 collected copies (1.4 GB) were reached
only by such entries, with no platform, other profile entry or install
manifest needing them. They are removed, and two release-asset copies
leave the ignore list. bundled_only.py now lists every copy of a listed
file, since the database keeps one path per content, and pipeline step
4d fails while one remains.
2026-10-20 10:17:08 +02:00