Abdessamad Derraz
a5f549a1c6
fix: name rom members as their source names them
...
Four archives carried member names no MAME version uses. Each is decided
against MAME 0.289 at the revision the profiles cite:
manager.zip 1 -> 01 crvision.cpp:957
sys573.zip 700a01(gchgchmp).22g -> , ksys573.cpp:3575
cedmag.zip Magnet-Master-VID-E03.BIN cedar_magnet.cpp:1040
advision.zip b225__/b8223__ prefixes cut advision.cpp:456,459
Content is untouched: every member keeps its crc32 and size. The
archives are rebuilt with torrentzip so their bytes depend only on their
contents, which is the repository convention (51 of 60 sampled archives)
and what two of these four already were.
Batocera, RetroBat and RetroDECK pin the older naming, so the upstream
archives stay verbatim under .variants/ and resolve_local_file serves
each layer the copy it expects.
2026-08-10 13:35:53 +02:00
Abdessamad Derraz
09c43be11a
fix: rename fbneo archives to runtime names
2026-08-08 06:37:37 +02:00
Abdessamad Derraz
0a59af3279
feat: add advancemame event definitions
2026-08-08 06:19:38 +02:00
Abdessamad Derraz
3a5cbc4c6c
fix: resolve large file assets renamed by github
2026-08-07 11:53:29 +02:00
Abdessamad Derraz
79306f462d
fix: drop empty placeholder file
2026-08-06 20:13:53 +02:00
Abdessamad Derraz
65062dd2be
feat: add bios harvested from platform packs
2026-08-06 19:10:14 +02:00
Abdessamad Derraz
1a915e67f1
feat: add bios recovered from verified sources
2026-08-06 16:41:55 +02:00
Abdessamad Derraz
f88aeee6ff
feat: add bios from verified upstream sources
2026-08-06 10:40:18 +02:00
Abdessamad Derraz
d685ad111d
feat: add 63 missing BIOS files from multiple sources
...
MAME/MESS ROM sets (23 ZIPs from archive.org MESS 0.151 + MAME 0.285 split),
Dolphin BT firmware (15 files from linux-firmware), Commodore VIC-20/Plus4
regional ROMs (8 from zimmers.net), IBM AT 5170 BIOS + BASIC (3 from
minuszerodegrees.net + PCem), Apple DiskII boot/state-machine ROMs (4 from
Asimov mirror), Commodore 1540/1541 drive ROMs (2 reconstructed from MAME
chips), Oric Microdisc ROM, SMS Japanese BIOS, Videoton TVC64 + BK-0010
enriched ZIPs. All platforms at 0 required missing except Batocera bk0010.zip
(2/11 ROM chips unavailable).
2026-03-31 11:00:31 +02:00
Abdessamad Derraz
a800ded477
chore: remove 4 remaining bios/data duplicates
2026-03-29 13:25:33 +02:00
Abdessamad Derraz
ce6c218942
fix: restore original ZIPs to match platform MD5 hashes
...
Agents enriched neogeo/pgm/stvbios/neocdz/nmk004/channelf
ZIPs with extra ROMs, breaking platform MD5 verification.
Restore originals from git history. RetroBat: 0 untested.
RetroDECK 2 untested remain (upstream scraper bug).
2026-03-29 09:28:52 +02:00
Abdessamad Derraz
6c4f18056b
feat: add Rustation PS1 aliases, FBNeo arcade BIOS, misc
...
8 Rustation PS1 BIOS (SHA256-verified copies of existing files
under Rustation-expected names). 4 FBNeo arcade BIOS extracted
from MAME game ROMs (236-bios.sp1, bios.u42, svg_bios.u49).
DuckStation ps2_scph18000.bin resolved from existing ps2-50j.
2026-03-28 20:53:23 +01:00
Abdessamad Derraz
a418f7ef68
feat: add Dragon CoCo ROMs and mameinfo.dat
...
cdos20.rom (Cumana DOS 2.0), yados.rom (YA-DOS 0.5a),
dragonfly-1.3.rom (Ikon Ultra Drive v1.3) from World of
Dragon Archive and CCHDD GitHub. delta-premier.rom variant.
mameinfo.dat for MAME 2000/2003/2003-Plus game info.
2026-03-28 19:09:42 +01:00
Abdessamad Derraz
31ec407c91
feat: add FBNeo st010/st011/sfiii3na, PCem rivatnt, misc
...
sfiii3na.zip (CPS3 Asia No-CD), st010.zip and st011.zip
(SNES coprocessors) complete FBNeo required coverage.
rivatnt.bin completes PCem at 139/139. Also add QEMU
firmware (4), FM Towns Marty ROMs (4), Fuse mf1.rom,
Hatari BOOT.ST, PS1 extracts (2), ZC210 data (2).
2026-03-28 17:42:53 +01:00
Abdessamad Derraz
3d5d5b601c
feat: mass BIOS collection (+1020 files, 7520 total)
...
Add ~1500 BIOS, firmware and game data files sourced from
24 parallel agents. Migrate game engine data (ScummVM,
SDLPAL, OpenTyrian, Cave Story, Syobon Action) from bios/
to data/ via _data_dirs.yml. Add Roland MT-32/CM-32L ROMs
to bios/Roland/. Upload large files (EDK2, SDLPAL, ScummVM,
arcade ZIPs, EasyRPG soundfont) to large-files release.
New coverage: QEMU firmware (67), PCem (137), VICE (53),
Cemu Wii U (58), shadPS4 (14), Amiga (24), MAME ZIPs (724),
O2EM voice (270), Azahar 3DS (4), EightyOne ZX81 (35),
Stella KidVid (14), XRoar (12), and 77 emulators total.
2026-03-28 16:51:43 +01:00
Abdessamad Derraz
1ee8623b2e
feat: add 47 missing bios files and fix cross-reference false positives
...
Add BIOS files for CLK (Apple II, Mac, Atari ST, Enterprise, MSX,
Commodore, Thomson, PC, Acorn), FBNeo (CPS3 redearthn/sfiii2h),
and QEMU variants. Sources: Asimov mirror, MAME chip extraction,
86Box, Theodore, XRoar upstream, official QEMU repo.
Fix cross-reference in verify.py to group archived files by archive
unit instead of reporting individual ROMs as missing. Add path-based
fallback for descriptive names. Update generate_pack.py extras to
use archive name for resolution. 6 new E2E tests.
MISSING required: 321 -> 6 (zero false positives).
2026-03-28 13:59:48 +01:00
Abdessamad Derraz
1f65662fd2
feat: add ~110 missing bios files from archive.org and bizhawk
...
Sources: emularity_bios_v1, mame-bios-0.282, mame-bios-devices,
mame251, MAME216, bizhawk-firmware-2.11.0, neogeo_bios, retrobat.
Neo Geo: neogeo.zip upgraded 6 to 38 files, ngp.zip added.
Arcade: dsp1-4, jojoa/jojoba/jojobar1, fdsbios, decocass, neocdz.
Multi-platform: 3DO, Atari 7800/Lynx, C64, Channel F, ColecoVision,
Vectrex, Intellivision, GB/GBC/GBA, NDS, N64DD, SNES DSP/Satellaview,
PC Engine CD, PC-FX, SMS, Game Gear, Mega Drive, Mega-CD, Saturn STV,
Videopac, MSX, Amiga, ZX Spectrum, TI-83.
2026-03-28 10:26:30 +01:00
Abdessamad Derraz
e94ce6b194
feat: source 10 missing bios variants for romm and retrobat coverage
2026-03-27 16:00:10 +01:00
Abdessamad Derraz
fb1007496d
chore: deduplicate bios/ — remove 427 files, save 227 MB
...
true duplicates (same file in multiple dirs): removed copies, kept
canonical. MAME device clones (different names, identical content):
removed copies, created _mame_clones.json mapping for pack-time
assembly via deterministic ZIP rebuild. generate_pack.py resolves
clones transparently. 95 canonical ZIPs serve 392 clone names.
2026-03-24 21:35:50 +01:00
Abdessamad Derraz
4a76c5ca15
chore: add Atari OS-A NTSC, XEGS, doc format ares
2026-03-20 09:50:59 +01:00
Abdessamad Derraz
6ee162f8fb
chore: add MAME and RetroDECK ROM sets
2026-03-19 23:26:49 +01:00
Abdessamad Derraz
c71378a71c
feat: shared groups, scraper subdir prefixes, arcade + emulator profiles
...
shared groups in _shared.yml: np2kai, keropi, quasi88, kronos, ep128emu
with source references for each subdirectory requirement.
libretro_scraper: CORE_SUBDIR_MAP applies subdirectory prefixes at
generation time (np2kai/, keropi/, dc/). EXTRA_SYSTEMS adds QUASI88.
SYSTEM_SHARED_GROUPS injects includes for kronos/np2kai/keropi.
new BIOS: CPS3 (23 ZIPs), Cannonball OutRun (40 ROMs), PCem PC BIOS
(73 files), VICE Commodore ROMs, Spectrum ZIPs, dc_bios.bin, X1 fonts.
new emulator profiles: redream, melonds_ds, lrps2 with doc vs source
notes. platforms/README.md documents shared groups architecture.
2026-03-18 13:49:59 +01:00
Abdessamad Derraz
7653d5d108
feat: add 19 BIOS files, fix cross_reference resolution
...
New files: OpenTyrian data (11), Cave Story (2), SeaBIOS,
VGA BIOS, OpenSBI, Cromwell, xbox_hdd, Sega CD Model 2 (3),
NGP Color BIOS, Pentagon 128p-1.rom, X1 font, BK TERAK.
cross_reference.py: basename + case-insensitive lookup.
2026-03-18 12:50:55 +01:00
Abdessamad Derraz
36a17b315a
feat: batocera 678/680, add 6 naomi2 roms from mame 0.278
...
Add missing NAOMI 2 ROMs (315-6146, 315-6215, sp5001/a/b, sp5002-a)
from MAME 0.278 non-merged set. Clean up naomi2 variant files.
Recalbox composite naomi2.zip kept as variant (.da79eca4).
Batocera 678/680 (2 untested: sc3000, triforce)
Recalbox 345/346 (1 untested: naomi2 composite mismatch)
2026-03-17 16:19:21 +01:00
Abdessamad Derraz
bb1855d3f7
feat: recalbox 346/346 via md5_composite, add mame variants
...
Add md5_composite() to verify.py replicating Recalbox Zip::Md5Composite
(sorted filenames, sequential content hash). Independent of ZIP
compression level, resolves all 9 MAME arcade untested entries.
Add Recalbox-specific MAME ZIP variants from Recalbox 10 pack.
Batocera 671/680 (9 untested MAME-specific), all others 100%.
2026-03-17 16:08:39 +01:00
Abdessamad Derraz
4bf62b8126
feat: fix enterprise zips, restore deleted files, add sms aliases
...
- Create ep64.zip/ep128.zip MAME sets from existing ROMs
- Restore Complex_4627v1.03.bin, N64DD IPL, PS2 SCPH-70004 files
(accidentally deleted by background agent)
- Add Xbox Complex_4627.bin alias for Batocera
- Add SMS BIOS aliases for RetroBat naming convention
All platforms at 0 missing:
Batocera 677/680, Recalbox 337/346, all others 100%
2026-03-17 15:44:12 +01:00
Abdessamad Derraz
5ab82a7898
refactor: security hardening + mame arcade bios updates
...
Security fixes:
- Zip-slip protection in _extract_zip_to_archive (sanitize paths)
- Hash verification for large file downloads (cache + post-download)
- Sanitize YAML destination fields against path traversal
- Size limit on ZIP entry reads (512MB cap, prevents zip bombs)
- Download size limits in auto_fetch (100MB cap)
- Reject hashless external downloads
- Sanitize filenames in place_file with basename()
MAME arcade updates from Batocera v38 pack:
- Updated naomi, naomi2, naomigd, awbios, airlbios, hod2bios, hikaru
- Old versions preserved in .variants/ for RetroBat compatibility
Batocera 675/680 (+9), all other platforms unchanged at 0 missing
2026-03-17 15:32:14 +01:00
Abdessamad Derraz
0ffb8cbd0d
feat: complete retrobat coverage, fix large file resolution
2026-03-17 13:03:57 +01:00
Abdessamad Derraz
4d98f17308
feat: add dolphin dsp, mame hash xmls, scummvm fonts from retrobat-bios
2026-03-17 12:42:55 +01:00
Abdessamad Derraz
e6ea0484a8
expand bios collection, retrobat at 93% coverage
2026-03-17 11:53:42 +01:00
Abdessamad Derraz
13c561888d
v2: automated BIOS platform with full pipeline
...
Reorganized 6 branches into bios/Manufacturer/Console/.
Scrapers for RetroArch, Batocera, Recalbox, and libretro core-info.
Platform-aware verification replicating native logic per platform.
Pack generation with dedup, alias resolution, variant support.
CI/CD: weekly auto-scrape, auto-release, PR validation.
Large files (>50MB) stored as GitHub Release assets, auto-fetched at build time.
2026-03-17 10:54:39 +01:00