Commit Graph
509 Commits
Author SHA1 Message Date
Abdessamad Derraz b3b3880c19 chore: say which repository each source_ref cites
Profiles that read two repositories, a libretro port and its upstream,
now prefix each citation with source or upstream, decided by which tree
carries the cited value at its pin. The emulator pages use the word to
tell libretro glue, emulator code as the port carries it, and the
upstream emulator apart.
2026-10-20 09:23:41 +02:00
Abdessamad Derraz 9b630a39bb fix: hold the new profiles to the shared checks
BizHawk's NDS firmware slot accepts six dumps, two of which the collection holds, and the profile named one. Kega Fusion's US Mega CD BIOS covers the Americas. Sonic 3 A.I.R. data is installed by Batocera in unpacked form. izApple2 downloads its ProDOS images when a card is added, which is no install. The Lakka list now equals a case-keeping RetroArch install less what Lakka's packages install, and the profile hash contradiction count leaves out entries no pack ships. The pipeline table names step 8b.
2026-10-20 08:12:03 +02:00
Abdessamad Derraz ceaca2bf1d chore: record what each platform installs
Each platform's own packages were read at the revision our data pins, for every emulator and core it ships: Batocera, Recalbox, RetroPie, ROCKNIX, Lakka, RetroDECK, RetroBat and EmuDeck. Files a package installs where the emulator reads them are recorded with installed_on, and files a release bundles but a package leaves out with not_bundled_on, so each platform's pack brings what its users lack and nothing they already have. The standalone profiles never checked before were held against their releases the same way. Batocera's imame4all is the mame2000 core. The primary neogeo.zip was a 7.7 KB placeholder no platform pins and no pack served: removed, the real dumps stay in .variants.
2026-10-20 07:17:05 +02:00
Abdessamad Derraz 8b203e397c chore: mark what the new profiles' installs bring
The profiles written for RetroBat and RetroPie were checked the same way: UZDoom, LZDoom, SRB2 and AdvanceMAME data ship with their releases, RetroPie installs the shareware Doom, Quake III and Wolfenstein data, the Aleph One scenarios and 4DOS beside the ports it builds, RetroBat installs Jynx's ROMs, and Recalbox's uae4all core comes without the AROS ROMs.
2026-10-20 06:21:34 +02:00
Abdessamad Derraz bb19a6d5cf feat: profile what RetroBat and RetroPie run
100 emulator names the two platforms run had no profile, so their packs carried nothing for them. Each was read from the platform's own launcher or scriptmodule: the same program as an existing profile takes the name in cores:, a different build gets its own profile read from that version, a launcher or self-contained game goes to remove_cores, and the rest are new profiles written from their source or shipped binary. The files they need that the collection lacked are collected from the upstream distributions. Bungie and splitwolf trees are read by path and stay out of dedup.
2026-10-20 06:14:10 +02:00
Abdessamad Derraz 9f8a2a9fe2 chore: mark what each emulator install brings
Every bundled flag was checked against the release or the build recipe of the build that reads the file. A libretro core zip holds the core alone: fMSX, Nuance, ep128emu and PCEE2 files the source tree carries are no longer bundled, and blueMSX, ARMSX2, YAPS2, Cemu and Jazz2 entries are split per build. Files the release ships and the profile missed are now bundled (POM2, ZQuest Classic, EmuCoreX, Linux Loader). Platform packages that differ are named: Batocera installs hcl and Hurrican without their data, ROCKNIX ships touchHLE's Liberation Sans fonts only, Batocera and RetroPie install blueMSX's machines beside the core.
2026-10-20 06:11:39 +02:00
Abdessamad Derraz ddc7432825 feat: packs leave out what the emulator installs
A file or tree installed with the emulator is already on the user's machine, so packs, install manifests and verify's pack count leave it out. bundled is scoped by mode like any entry: Dolphin's Sys and PPSSPP's assets ship with the standalone releases, not with the libretro cores, so they now follow the libretro build only and still reach RetroArch packs. PrimeHack, standalone only, ships its own Sys.
2026-10-20 06:04:10 +02:00
Abdessamad Derraz d7439de393 chore: re-profile the Pizza Boy cores
The native refs move to the newest genuine Basic builds (GBA 2.3.20, GBC 4.1.14, SC 1.2.14), which add a save-state check of the BIOS area and new zip handling. The Pro releases the store announces circulate only rebuilt, so the Pro Java reading stays on the last genuine build and the release is named in no_genuine_copy.
2026-10-20 04:59:01 +02:00
Abdessamad Derraz 3c92823ba0 chore: no genuine MasterGear 4.9.13 found 2026-10-20 04:58:06 +02:00
Abdessamad Derraz 65c0f60ca0 chore: re-profile DroidArcadia 4.74 2026-10-20 04:58:06 +02:00
Abdessamad Derraz ed40e1a834 chore: re-profile SUPER ZSNES v0.320 2026-10-20 04:58:06 +02:00
Abdessamad Derraz a5da20d897 chore: re-profile BigPEmu 1.221
The binary reads two optional settings, BootROM and CDBIOS, each a path the user picks. The retail Jaguar CD BIOS is recognised by a 64-bit FNV-1a of its first 16 KB, which the collected dump matches.
2026-10-20 04:58:06 +02:00
Abdessamad Derraz 85f020794d chore: re-profile Speccy 5.9.13 2026-10-20 04:58:06 +02:00
Abdessamad Derraz 2c99e73d3c chore: re-profile iNES 6.1.12
6.1.12 no longer bundles ROOT.chts and its seven cheat sets: the cheat browser reads the home folder, then unpacks Downloads/iNES-Cheats.zip. The seven sets are collected from the author-signed 6.1.4 package, each file covered by its signature. Controls.png and the backdrop pictures the app reads are documented.
2026-10-20 04:58:05 +02:00
Abdessamad Derraz 8a44161810 chore: re-profile Linkboy 3.11.4
Linkboy 3.11.4 adds a cartridge logo check before the BIOS boot and a second built-in BIOS variant. My Boy! 2.1.1, My OldBoy! 2.0.3, FPse 13.0 and FPseNG 1.17 circulate only rebuilt: their profiles stay on the last genuine build and name the release.
2026-10-20 04:49:24 +02:00
Abdessamad Derraz b45f269b31 chore: re-profile ACE-DL 2026/10/16 2026-10-20 04:46:46 +02:00
Abdessamad Derraz 672c6ca4e0 chore: re-profile XM6 Pro-68k 260920 2026-10-20 04:46:46 +02:00
Abdessamad Derraz fcfc10b985 chore: re-profile XRoar 1.12.1
Refs moved to the 1.12.1 tree and its src/ layout. The new rom.c table names the crc32 of nine ROMs, two of which the code checks.
2026-10-20 04:46:46 +02:00
Abdessamad Derraz cf9406ab67 chore: watch release pages of off-forge profiles
38 profiles published outside a forge now name the page that announces their releases, so profile_sync and check_freshness see a new version. EDuke32 and Fury take the synthesis build label as core_version, the name the project gives that build.
2026-10-20 04:36:46 +02:00
Abdessamad Derraz b1f20fb8e0 feat: collect a Mac OS ROM for SheepShaver
SheepShaver opens ROM or Mac OS ROM, decodes a CHRP-BOOT image and requires a nanokernel ID it knows. By name its entry was served the 128 KB Apple IIGS ROM, which it rejects. Mac OS ROM 1.4 is taken byte for byte from the System Folder of Apple's iMac Software Restore CD 691-2313-A (archive.org, ISO sha1 as listed). Its LZSS payload decodes to 4 MB with the NewWorld nanokernel ID, and a size floor derived from the decoder keeps the IIGS ROM out.
2026-10-20 03:37:57 +02:00
Abdessamad Derraz 96981b79d8 fix: boot Basilisk II from the 1 MB Mac ROM
Basilisk II opens a file named ROM, checks its size, its version word and the code PatchROM rewrites, and no hash. By name the only candidate was the 128 KB Apple IIGS ROM, which the size gate rejects, so the pack shipped nothing. The collection's mac.rom (Performa/Quadra 630, version 0x067c) passes every gate, and the entry now names it as an alias. KEGS and GSplus keep the IIGS file.
2026-10-20 03:19:17 +02:00
Abdessamad Derraz fd6d4d5563 fix: give DOSBox Pure an SC-55 mk1 slot
DOSBox Pure builds every Sound Canvas companion name from the ROM1 file the user picks and reads the third wave ROM only for an SC-55 mk1 or CM-300 (midi_sc55.h:71-124). The profile put every model in the SC-55/ folder holding the mkII set, so WAVEROM3 could never be met. The mkII group stays there, and the v1.00 mk1 set the collection holds gets its own folder under the names the code builds from sc55_rom1.bin.
2026-10-20 03:17:57 +02:00
Abdessamad Derraz 63ded27336 feat: extract the DSi font tables from held NANDs
DSperate reads TWLFontTable.dat for DSiWare run without a NAND. The file sits in nand:/sys/ of the DSi NAND dumps the collection holds. Decrypted with the console ID and CID in each dump's nocash footer, as DSperate's own NAND reader does, the four western and Japanese consoles give one table, the Chinese and Korean ones their own: 863296, 581664 and 162688 bytes, the sizes and sha1 already known for them.
2026-10-20 03:17:57 +02:00
Abdessamad Derraz 834d53c0fd feat: collect POM2's Virtual II sounds
POM2 reads nine Virtual ][ sounds from roms/virtual_ii_sons/. All nine are inside VirtualII.dmg from virtualii.com (13.3). The five AIFF files are taken as they are. The four .raw files are signed 16-bit little-endian mono at 44100 Hz, as Virtual ]['s own playback code declares them, and are wrapped in a WAV header, the data chunk being the raw file byte for byte. pom2 verifies 78/78.
2026-10-20 03:17:57 +02:00
Abdessamad Derraz f40342de13 feat: profile the GameTank core
The buildbot now publishes gametank, a libretro port of GameTankEmulator by SundownerSport. The console has no boot ROM and the core opens no system file, only its flash save in the save directory. Every buildbot core name must reach a profile, or target filtering skips it.
2026-10-20 02:28:14 +02:00
Abdessamad Derraz 676f322a62 fix: tag PAL and AUS files oceania
simple64 picks the PAL PIF for the European and Australian country codes, and New Zealand carts carry one of them. Citra MMJ's AUS font archives serve the region sold in Australia and New Zealand alike. Tagged australia, a leaf New Zealand is not under, --region new-zealand dropped them. They are tagged oceania, as every other PAL file is.
2026-10-20 01:19:56 +02:00
Abdessamad Derraz 8f8020f27d fix: the US Mega-CD BIOS also serves Latin America
jgenesis picks it for GenesisRegion::Americas, md-emu for boot byte 0x7a, ares for an NTSC-U disc: one code for every disc of the Americas, Brazilian Tec Toy releases included. The three tagged it north-america alone, so --region brazil dropped the BIOS those discs need. genesis_plus_gx and picodrive already carried both.
2026-10-20 01:19:16 +02:00
Abdessamad Derraz cae30d1e8f feat: collect Visual Pinball plugin data trees
Nixie's layouts at vpinball e4a79a5, PinMAME memmaps at tomlogic/pinball-memory-maps 68c1b337 and game definitions at vpinball/pinmame-game-defs 6eece7e5: the subset every platform build copies into third-party/. 1,280 files, each matched to its upstream git blob, documented as three directory entries.
2026-10-20 00:34:58 +02:00
Abdessamad Derraz 03a10841fb feat: collect J2ME-Loader 1.8.2-dev-1964 files
The five native libraries the reprofile added, and the assets and libraries whose copies dated from 1.8.2-open, now come from the official build of 752b93a (release continuous, CI run 39297510978, signing certificate de1bd54d as on 1.8.2). Assets match the repository blobs byte for byte. The profile carries their hashes, and the bundled-identity table now records each fall exactly.
2026-10-20 00:34:58 +02:00
Abdessamad Derraz 9011f1c863 fix: reprofile visual-pinball at e4a79a5
ScoreView became Nixie with .nix layouts, B2SLegacy was removed, the PinMAME plugin ships memmaps/ and gamedefs/, the HRTF file is bundled, fonts are looked up by TextRenderer and a table gets a .info file. PinMAME refs are re-read at 5386aa17, the revision the build fetches.
2026-10-20 00:29:17 +02:00
Abdessamad Derraz 53a1c6e0d8 fix: reprofile j2me-loader at 752b93a
The native build split into m3g/ and micro3d/ makefiles, micro3d moved to ru.woesss.j2me.micro3d, c++_shared now loads ahead of every native module and MIDI can play through a user sound bank (EAS or TinySoundFont). appcenter.cer is no longer read. The new libraries are marked unsourceable until the release's own copies are collected.
2026-10-20 00:29:17 +02:00
Abdessamad Derraz 8edaca0925 fix: reprofile linapple at 86bee1c
Upstream moved the mouse card firmware into MouseRom.h behind ENABLE_PERIPHERAL_MOUSE, renamed the generated ROM symbols from g_rom_* to rom_*, added a hard disk controller with its own firmware and an XDG fallback for the data path. Every reference is re-read at the new pin, and Master.dsk carries the hashes the upstream build test pins.
2026-10-20 00:29:17 +02:00
Abdessamad Derraz 843f0ddc0e fix: ares labels name ares's own dumps
ares matches its firmware by sha256 and opens no file by name, so its entry names are labels. Five reused names that other cores give to different dumps (MSX.ROM, MSX2.ROM, bios_CD_E/J/U.bin). On RetroBat that put ares's revision where the platform pins another, slots blamed the platform's declaration, and the pack dropped ares's own dump behind the platform's file. The labels now name the dumps the hashes identify.
2026-10-19 23:11:44 +02:00
Abdessamad Derraz 4231902a6c docs: write prose without dashes or semicolons
Profiles, the wiki, comments, docstrings, command output and schema descriptions carried em-dashes, clause-joining semicolons, unicode arrows, box-drawing banners and check-mark glyphs. Each sentence was rewritten rather than having its character swapped. Hashes, paths, source_ref values and every cited file:line are unchanged, which a comparison of each parsed profile against the previous revision confirms.

validate_pr comments now say PASS and FAIL in words, and source_ref values in a profile's structured blocks render as code. test_prose_style fails if any of these comes back, in tracked files or in the generated site.
2026-10-19 06:47:31 +02:00
Abdessamad Derraz 2804665b6c fix: tag ares's PlayStation BIOS with its region 2026-10-18 20:33:25 +02:00
Abdessamad Derraz 7482cfefab fix: index the standalone layout for regions
GC/EUR/IPL.bin fell through to its bare name and the union of five regions, so a Batocera or standalone Dolphin pack never reduced it. The GameCube IPLs of four Dolphin-family profiles now name their system, as the MMJR profiles do.
2026-10-18 19:51:03 +02:00
Abdessamad Derraz 47babe0bf4 fix: profile wqxemu's firmware discovery by type
Upstream reads any .rom/.bin, .fls/.nor, .nand and .nand0 in the model directory and refuses two files in one slot. The pc1000.fls alias described a name that would now stop the PC1000.
2026-10-18 19:37:23 +02:00
Abdessamad Derraz 88fae89369 feat: profile opera's built-in Opera Boot ROM
Upstream compiles Opera Boot into the core as the default BIOS and reads opera-boot.bin from the system directory. Every retail BIOS becomes optional; opera-boot.bin is collected from the opera-boot release, identical to the embedded image.
2026-10-18 19:35:40 +02:00
Abdessamad Derraz 9a6c0d1862 fix: cite Play's definition in Source/CMakeLists 2026-10-18 19:33:23 +02:00
Abdessamad Derraz 67c199c9f1 fix: pin rustation upstream to its submodule
The libretro core vendors rustation@1daf4faa, which diverged from master; the db.rs refs describe that revision.
2026-10-18 19:33:10 +02:00
Abdessamad Derraz d42236fc84 fix: cite the gam4980 fork at the revision pinned
The refs described upstream's libretro.c while source_commit named the fork, where the loader moved to src/ and a missing ROM now shuts the core down cleanly. A bump no longer advances a pin no ref resolves in.
2026-10-18 19:32:14 +02:00
Abdessamad Derraz a08827257d fix: tag regions by the branch the code takes
Mega CD US BIOS serves every non-EU, non-JP disc; Dolphin boots
Korean discs from the JAP directory; Beetle never opens scph5903.bin
under that name.
2026-10-18 14:48:14 +02:00
Abdessamad Derraz 57e9df6e1a fix: tag the US SMS boot ROM for Europe too 2026-10-18 13:59:15 +02:00
Abdessamad Derraz 37633043db fix: pin ryujinx to its Gitea mirror
Gitea answers /raw/commit with an HTML proof-of-work page, so
Forgejo-family files are fetched through the API raw route.
2026-10-18 13:40:50 +02:00
Abdessamad Derraz 658c5a4959 fix: attest vitaquake2 prose at its pin 2026-10-18 13:38:36 +02:00
Abdessamad Derraz db3eba1cfc fix: find the branch in a URL into a folder
A /tree/<branch>/<dir> URL was read as one branch name, so the
repository never resolved. Each prefix is tried, shortest first.
A repository that answers nothing now says so, or reports the
declared upstream_gone.
2026-10-18 13:34:37 +02:00
Abdessamad Derraz 16c0b27213 fix: give legacy hiscore parsers their own file
The new-format hiscore.dat was served by name to cores whose parser reads
only legacy lines. Eight cores now pin the hiscore.dat their own
repository ships, four revisions newly collected.
2026-10-18 13:31:31 +02:00
Abdessamad Derraz de0b494ee5 fix: pin clownmdemu upstream to the vendored core 2026-10-18 13:21:33 +02:00
Abdessamad Derraz 2b535525ef fix: let a declared size contest another size
System.dat pins the 2 KiB X1 font as xmil/IPLROM.X1T, where xmil reads
a 32 KiB Turbo IPL. A held copy of the exact size a profile declares now
proves its claim against a file of another size, so the existence packs
ship the IPL. The font's duplicate under the IPL name is removed.
2026-10-18 13:08:40 +02:00
Abdessamad Derraz e75482777d fix: leave aliases out of the fileless audit 2026-10-18 07:41:54 +02:00