Regenerate database and update emulator profiles

Regenerate database.json and update README counts/timestamps; add and normalize numerous BIOS entries and hashes. Key changes: update generated_at timestamp and system count (355→357) in README; add OpenBIOS / HLE fallback and additional aliases to beetle_psx, include beetle_psx core name and profiled_date update; add laseractive to ares systems; adjust atari800 systems and source_ref line numbers; mark dinothawr as a system and expand its note; update gsplus upstream/profile date, add apple-iie system and tweak source_refs; add pcsx2 core to lrps2; refresh mame profiled_date and add multiple systems and BIOS root sets. Miscellaneous script changes and other JSON normalization to reflect newly discovered/merged BIOS files.
This commit is contained in:
Abdessamad Derraz
2026-03-29 22:41:01 +02:00
parent daa396618d
commit 463fca7e7d
15 changed files with 2244 additions and 312 deletions

View File

@@ -2,7 +2,7 @@
Complete BIOS and firmware packs for Batocera, BizHawk, EmuDeck, Lakka, Recalbox, RetroArch, RetroBat, RetroDECK, RetroPie, and RomM.
**7,245** verified files across **355** systems, ready to extract into your emulator's BIOS directory.
**7,245** verified files across **357** systems, ready to extract into your emulator's BIOS directory.
## Quick Install
@@ -45,13 +45,13 @@ Each file is checked against the emulator's source code to match what the code a
- **10 platforms** supported with platform-specific verification
- **328 emulators** profiled from source (RetroArch cores + standalone)
- **355 systems** covered (NES, SNES, PlayStation, Saturn, Dreamcast, ...)
- **357 systems** covered (NES, SNES, PlayStation, Saturn, Dreamcast, ...)
- **7,245 files** verified with MD5, SHA1, CRC32 checksums
- **9266 MB** total collection size
## Supported systems
NES, SNES, Nintendo 64, GameCube, Wii, Game Boy, Game Boy Advance, Nintendo DS, Nintendo 3DS, Switch, PlayStation, PlayStation 2, PlayStation 3, PSP, PS Vita, Mega Drive, Saturn, Dreamcast, Game Gear, Master System, Neo Geo, Atari 2600, Atari 7800, Atari Lynx, Atari ST, MSX, PC Engine, TurboGrafx-16, ColecoVision, Intellivision, Commodore 64, Amiga, ZX Spectrum, Arcade (MAME), and 321+ more.
NES, SNES, Nintendo 64, GameCube, Wii, Game Boy, Game Boy Advance, Nintendo DS, Nintendo 3DS, Switch, PlayStation, PlayStation 2, PlayStation 3, PSP, PS Vita, Mega Drive, Saturn, Dreamcast, Game Gear, Master System, Neo Geo, Atari 2600, Atari 7800, Atari Lynx, Atari ST, MSX, PC Engine, TurboGrafx-16, ColecoVision, Intellivision, Commodore 64, Amiga, ZX Spectrum, Arcade (MAME), and 323+ more.
Full list with per-file details: **[https://abdess.github.io/retrobios/](https://abdess.github.io/retrobios/)**
@@ -66,7 +66,7 @@ Full list with per-file details: **[https://abdess.github.io/retrobios/](https:/
| Recalbox | 276/346 (79.8%) | 273 | 3 | 70 |
| RetroArch | 443/448 (98.9%) | 443 | 0 | 5 |
| RetroBat | 330/331 (99.7%) | 326 | 4 | 1 |
| RetroDECK | 1958/2007 (97.6%) | 1876 | 82 | 49 |
| RetroDECK | 1958/2007 (97.6%) | 1932 | 26 | 49 |
| RetroPie | 443/448 (98.9%) | 443 | 0 | 5 |
| RomM | 372/374 (99.5%) | 372 | 0 | 2 |
@@ -130,4 +130,4 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
This repository provides BIOS files for personal backup and archival purposes.
*Auto-generated on 2026-03-29T14:04:16Z*
*Auto-generated on 2026-03-29T14:15:30Z*

View File

@@ -1,5 +1,5 @@
{
"generated_at": "2026-03-29T14:00:48Z",
"generated_at": "2026-03-29T20:39:20Z",
"total_files": 7245,
"total_size": 9715681216,
"files": {
@@ -100070,40 +100070,94 @@
"2ae988416d74273b0213e0be6513eabc3d974d49"
],
"c64_geocable.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c",
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"cgenie_printer.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c",
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"dmv_k210.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c",
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"fdc37c93x.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c",
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"isa_lpt.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c",
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"pc_lpt.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c",
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"pofo_hpc101.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c",
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"sv802.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c",
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"vtech_printer.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c",
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"82c606.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"bk_ay.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"bk_covox.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"bk_printer.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"cocopakram.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"distomeb_rtime.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"electron_fbprint.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"fdc37c665gt.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"fdc37m707.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"isa_bblue2.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"it8703f_device.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"it8705f.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"pc87306.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"pc97338.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"psion_parallel.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"psion_3link_par.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"spectrum_kempcentrs.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"upc82c710.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"upc82c711.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"w83977tf.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"w83787f.zip": [
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c"
],
"atom_econet.zip": [
"2d7d999e2acb4da55c26d1517934d39e7d0a0c86",
@@ -100114,16 +100168,22 @@
"eb7ff2179f102be63f217466f643bd93b4910f9e"
],
"c64_music64.zip": [
"122dea22f51ad868ca111e045d2ae6d1bec4fc91",
"1927797dd8fba39987906d8c90c8b182968783eb"
"122dea22f51ad868ca111e045d2ae6d1bec4fc91"
],
"c64_sfxse.zip": [
"122dea22f51ad868ca111e045d2ae6d1bec4fc91",
"1927797dd8fba39987906d8c90c8b182968783eb"
"122dea22f51ad868ca111e045d2ae6d1bec4fc91"
],
"c64_supercpu.zip": [
"122dea22f51ad868ca111e045d2ae6d1bec4fc91",
"1927797dd8fba39987906d8c90c8b182968783eb"
"122dea22f51ad868ca111e045d2ae6d1bec4fc91"
],
"c64_buscard.zip": [
"122dea22f51ad868ca111e045d2ae6d1bec4fc91"
],
"c64_ieee488.zip": [
"122dea22f51ad868ca111e045d2ae6d1bec4fc91"
],
"c64_buscard2.zip": [
"122dea22f51ad868ca111e045d2ae6d1bec4fc91"
],
"c64_swiftlink.zip": [
"17409b32b33cd1474b1aa1417dd3467b15589e16",
@@ -100282,24 +100342,19 @@
"da272af2fb1da8883c539b19c1bda97c5301dc80"
],
"cpc_mface2.zip": [
"d3b68c28975704af68fb2016e1fe611d10177495",
"949b9b362e1dc615a2e5783016207ff0d87de465"
"d3b68c28975704af68fb2016e1fe611d10177495"
],
"cpc_playcity.zip": [
"d3b68c28975704af68fb2016e1fe611d10177495",
"949b9b362e1dc615a2e5783016207ff0d87de465"
"d3b68c28975704af68fb2016e1fe611d10177495"
],
"cpc_ser.zip": [
"d3b68c28975704af68fb2016e1fe611d10177495",
"949b9b362e1dc615a2e5783016207ff0d87de465"
"d3b68c28975704af68fb2016e1fe611d10177495"
],
"cpc_serams.zip": [
"d3b68c28975704af68fb2016e1fe611d10177495",
"949b9b362e1dc615a2e5783016207ff0d87de465"
"d3b68c28975704af68fb2016e1fe611d10177495"
],
"cpc_ssa1.zip": [
"d3b68c28975704af68fb2016e1fe611d10177495",
"949b9b362e1dc615a2e5783016207ff0d87de465"
"d3b68c28975704af68fb2016e1fe611d10177495"
],
"d2fdc.zip": [
"af56c948598291b284a528f3fce06b961dba55e3",
@@ -100341,16 +100396,20 @@
"75de4163ec975c736f71eff860d5d656e2806333"
],
"pofo_hpc104.zip": [
"e92c1797f962812e911c85cbfd7f91169738e9ac",
"9f9ab9a092e0936758ad2fb93a537533231468c8"
"e92c1797f962812e911c85cbfd7f91169738e9ac"
],
"pofo_hpc104_2.zip": [
"e92c1797f962812e911c85cbfd7f91169738e9ac",
"9f9ab9a092e0936758ad2fb93a537533231468c8"
"e92c1797f962812e911c85cbfd7f91169738e9ac"
],
"to7_io_line.zip": [
"e92c1797f962812e911c85cbfd7f91169738e9ac"
],
"psion_serpar.zip": [
"e92c1797f962812e911c85cbfd7f91169738e9ac"
],
"psion_siena_ssd.zip": [
"e92c1797f962812e911c85cbfd7f91169738e9ac"
],
"isa_hdc_ec1841.zip": [
"2561d3c19ab5fcf397a46af37cff1097555a7464"
],
@@ -100378,22 +100437,20 @@
],
"peribox_genmod.zip": [
"827512b74c2d90c34a992036fb974ddd4e9454bd",
"e037089e7f53382950a6e8d3939af2cae5d4a7d5"
"b58fe2dbbc254d363c2ec4a459e6ec1d91b2ac86"
],
"peribox_sg.zip": [
"0a6aa44fe3d86af0ecbf428b49fd8053e4da8e11",
"e037089e7f53382950a6e8d3939af2cae5d4a7d5"
"b58fe2dbbc254d363c2ec4a459e6ec1d91b2ac86"
],
"popn9.zip": [
"207e34befb36e945bbbaf9012156b70a1be97819"
],
"ql_sqboard512.zip": [
"ce84f25384217a1280f1fddbf8919967d6ddca14",
"7e37e3dae0c4ddff1912bf02fca3fb2019326b78"
"ce84f25384217a1280f1fddbf8919967d6ddca14"
],
"ql_sqmouse512.zip": [
"ce84f25384217a1280f1fddbf8919967d6ddca14",
"7e37e3dae0c4ddff1912bf02fca3fb2019326b78"
"ce84f25384217a1280f1fddbf8919967d6ddca14"
],
"ql_trump256.zip": [
"c34662ee1d51ae0ae2899f923694f1d8024559fa"
@@ -100414,16 +100471,88 @@
"634008f34b031c0e5d0186936c065e6e20808264"
],
"spectrum_intf1.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3",
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_melodik.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3",
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_uslot.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3",
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_betacbi.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_betaplus.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_betav3.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_betav2.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_beta128.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_betaclone.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_disciple.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_gamma.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_flpone.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_kempdisc.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_mface1.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_mface128v1.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_mface128.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_mface1v1.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_mface1v2.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_mface1v3.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_lprint3.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_mprint.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_speccydos.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_spdos.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_specmate.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_swiftdisc2.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_vtx5000.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_swiftdisc.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"spectrum_wafa.zip": [
"0cb430aea9354d8c151933a12c33fa2bb69c16d3"
],
"sv602.zip": [
"befce08c839e414535478e4efd44e1b30dbec598",
@@ -102538,69 +102667,6 @@
"flash.bin": [
"94d44d7f9529ec1642ba3771ed3c5f756d5bc872"
],
"82c606.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"bk_ay.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"bk_covox.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"bk_printer.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"cocopakram.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"distomeb_rtime.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"electron_fbprint.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"fdc37c665gt.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"fdc37m707.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"isa_bblue2.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"it8703f_device.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"it8705f.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"pc87306.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"pc97338.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"psion_parallel.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"psion_3link_par.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"spectrum_kempcentrs.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"upc82c710.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"upc82c711.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"w83977tf.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"w83787f.zip": [
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea"
],
"a2bufgrapplerplusa.zip": [
"7c54fb94853478d23ec155a8e38b76d830f52e46"
],
@@ -102838,15 +102904,6 @@
"bbc_usersplit.zip": [
"90f1c144839c5269ff8567dd6685ae356027f146"
],
"c64_buscard.zip": [
"1927797dd8fba39987906d8c90c8b182968783eb"
],
"c64_ieee488.zip": [
"1927797dd8fba39987906d8c90c8b182968783eb"
],
"c64_buscard2.zip": [
"1927797dd8fba39987906d8c90c8b182968783eb"
],
"centronics_chessmec.zip": [
"e908b954f3c4b25f59de1e17e51cbd020540c243"
],
@@ -103034,19 +103091,13 @@
"eaabc1ef9448c297ef7cbae90278b265acd48169"
],
"peribox_ev1.zip": [
"e037089e7f53382950a6e8d3939af2cae5d4a7d5"
"b58fe2dbbc254d363c2ec4a459e6ec1d91b2ac86"
],
"ti99_iosplit.zip": [
"e037089e7f53382950a6e8d3939af2cae5d4a7d5"
"b58fe2dbbc254d363c2ec4a459e6ec1d91b2ac86"
],
"ti99_speechconn.zip": [
"e037089e7f53382950a6e8d3939af2cae5d4a7d5"
],
"psion_serpar.zip": [
"9f9ab9a092e0936758ad2fb93a537533231468c8"
],
"psion_siena_ssd.zip": [
"9f9ab9a092e0936758ad2fb93a537533231468c8"
"b58fe2dbbc254d363c2ec4a459e6ec1d91b2ac86"
],
"profighterqb.zip": [
"631ccd946400978b10ee225e008eed199027fd8c"
@@ -103075,81 +103126,6 @@
"sis85c496_host.zip": [
"7d3363b91d27ac3ff9fb91aee36d798a5331e2be"
],
"spectrum_betacbi.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_betaplus.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_betav3.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_betav2.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_beta128.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_betaclone.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_disciple.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_gamma.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_flpone.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_kempdisc.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_mface1.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_mface128v1.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_mface128.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_mface1v1.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_mface1v2.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_mface1v3.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_lprint3.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_mprint.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_speccydos.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_spdos.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_specmate.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_swiftdisc2.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_vtx5000.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_swiftdisc.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_wafa.zip": [
"8aaa6099ccaa133cb8f54846f65348dff3851c19"
],
"spectrum_d80.zip": [
"28fce4b27babe26a6bf5d139df489302764c5ad4"
],
@@ -103373,6 +103349,9 @@
"MCX_Basic_21_AZERTY": [
"c8fd92705fc42deb6a0ffac6274e27fd61ecd4cc"
],
"OPENBIOS.bin": [
"389df7981873d9e6e46c84c20cd43af0e4226cf8"
],
"N88_0.ROM": [
"d1ae642aed4f0584eeb81ff50180db694e5101d4"
],
@@ -124358,20 +124337,26 @@
"e35eda0cc2c11da92c0a6c222f314d84e623b29e",
"9ecb4cae3fe19cd3faef4a22fe5d3a189ac8810c",
"3a5718ea19c8e4c900a77bfd6bee701597feaa56",
"bbf1cb3e776129524d54d1f885c54d0f1b8d489c",
"122dea22f51ad868ca111e045d2ae6d1bec4fc91",
"17409b32b33cd1474b1aa1417dd3467b15589e16",
"9ae8707d814dc197315fb1d49571209e48ab29f3",
"893deaeff7ac79fbde19817678b63905d9f9b9cb",
"da272af2fb1da8883c539b19c1bda97c5301dc80",
"d3b68c28975704af68fb2016e1fe611d10177495",
"af56c948598291b284a528f3fce06b961dba55e3",
"d375f64dc02703eee6751bd9723978c6633348c9",
"eda0107f44a9a5b15471aea99e847701f4899a96",
"e92c1797f962812e911c85cbfd7f91169738e9ac",
"87ecc7a33627b1fac62ffb87e79a5aa36fe746cf",
"4fc37b52d4313ff57f5557c2c3191e885b0e3fcb",
"4d217c4a72a4450b75faaf7da871e8fe7b64ff60",
"ce84f25384217a1280f1fddbf8919967d6ddca14",
"c34662ee1d51ae0ae2899f923694f1d8024559fa",
"a0e6f65f2eca69c22c8d405af11c5d9c262efa1d",
"b06ad209ef30db63711cc5bc46a5371465223ed0",
"634008f34b031c0e5d0186936c065e6e20808264",
"0cb430aea9354d8c151933a12c33fa2bb69c16d3",
"9139c00e5986b7a86c7e8dcbce39986126ab7db4",
"14a5ff2c8ca68d35a77ebfbc227ed9c8e19d7524",
"c4d0f820dbfa135db40ce94c2253cae7814cf2f2",
@@ -124638,7 +124623,6 @@
"c3efedda7ab947a06d9345f7b8261076fa7ceeef",
"94d44d7f9529ec1642ba3771ed3c5f756d5bc872",
"f119506eaa3b4b70b9aa0dd83761e8cbe043d042",
"b22847ad1d8c5ee0fff41b3bd31aab6cbf8778ea",
"7c54fb94853478d23ec155a8e38b76d830f52e46",
"1a1826d7962e6bf6b94fc1bc2b17b8633eaaa0f5",
"270c84df833b196e214738bbe158f4ea2203c272",
@@ -124653,12 +124637,10 @@
"67b9199bc22c6fe2b3a4725ec291c158edd01151",
"b1abcb49eded4fcafa76198b5f7efc65fcc940e6",
"90f1c144839c5269ff8567dd6685ae356027f146",
"1927797dd8fba39987906d8c90c8b182968783eb",
"275b6409633ffaf3c3fa5e191de9aa7294b8cf64",
"0013eb127aa3af9dee5a881c590af5ebda0edef5",
"e908b954f3c4b25f59de1e17e51cbd020540c243",
"2ed5c4f7350701a4eb279f7111e22f12afbf51b4",
"949b9b362e1dc615a2e5783016207ff0d87de465",
"9d73e22ee590cec56a8a1f0af0735b586f50602f",
"e9aee50fcf87177493095237dc2446d67fe57252",
"d5a80dd0b4ef0d22b533a3771f374dc446b63e11",
@@ -124685,17 +124667,14 @@
"18889ed623d8c635966de0947076066f3732d2aa",
"06fc753d015b43ca1787f4cfd9331b1674202e64",
"eaabc1ef9448c297ef7cbae90278b265acd48169",
"e037089e7f53382950a6e8d3939af2cae5d4a7d5",
"9f9ab9a092e0936758ad2fb93a537533231468c8",
"b58fe2dbbc254d363c2ec4a459e6ec1d91b2ac86",
"631ccd946400978b10ee225e008eed199027fd8c",
"7e37e3dae0c4ddff1912bf02fca3fb2019326b78",
"bf946b98e9314ac877e67af84c82418604f4bade",
"bfa36e6517ba0744618e6778581beb85067be171",
"134760c0544d633cb475ad58b87f92483826cb2a",
"b8b8f5030a64769d27b784aeb5efca94cd72149a",
"b32303333a66101a83d008af1a8c1966751ed156",
"7d3363b91d27ac3ff9fb91aee36d798a5331e2be",
"8aaa6099ccaa133cb8f54846f65348dff3851c19",
"28fce4b27babe26a6bf5d139df489302764c5ad4",
"d9d692484446ac37e992478d60d9478bfe1fd9a6",
"423b488154c36a97a160cae7d43e79089ddee16d",
@@ -124749,6 +124728,7 @@
"9513091f37adf330f66a0c08f4e200344ad2e082",
"36c30d0f198a1bffee88ef29d92f2401447a91f4",
"c8fd92705fc42deb6a0ffac6274e27fd61ecd4cc",
"389df7981873d9e6e46c84c20cd43af0e4226cf8",
"d1ae642aed4f0584eeb81ff50180db694e5101d4",
"4ae4d37409ff99411a623da9f6a44192170a854e",
"e94278682ef9e9bbb82201f72c50382748dcea2a",

View File

@@ -26,6 +26,7 @@ systems:
- mega-cd
- mega-cd-32x
- mega-ld
- laseractive
- msx
- msx2
- neo-geo

View File

@@ -7,7 +7,7 @@ profiled_date: "2026-03-23"
core_version: "3.1.0"
display_name: "Atari - 400/800/600XL/800XL/130XE/5200 (Atari800)"
cores: [atari800]
systems: [atari-400, atari-800, atari-800xl, atari-130xe, atari-5200, atari-xegs]
systems: [atari-400-800, atari-5200]
# Atari800 emulates the Atari 8-bit family (400/800/XL/XE) and the 5200 console.
# All BIOS files are optional -- the core ships built-in Altirra OS replacements
@@ -43,7 +43,7 @@ files:
note: >
Atari 5200 BIOS (original). Mapped at $F800-$FFFF.
Altirra 5200 OS is used when this file is absent.
source_ref: "atari800/src/sysrom.c:101-102,254-255"
source_ref: "atari800/src/sysrom.c:101-102,255"
# -- Atari BASIC ROM --
# Atari BASIC interpreter (8 KB). Three known revisions:
@@ -63,7 +63,7 @@ files:
note: >
Atari BASIC Rev C. Required for 400/800 software that needs BASIC.
Altirra BASIC is used as fallback. Enable via core option atari800_opt2.
source_ref: "atari800/src/sysrom.c:103-105,256"
source_ref: "atari800/src/sysrom.c:103-105,257"
# -- Atari 400/800 OS A --
# Original Atari 400/800 OS (10 KB). Two known CRC32 values:

View File

@@ -3,18 +3,19 @@ type: libretro
core_classification: community_fork
source: "https://github.com/libretro/beetle-psx-libretro"
upstream: "https://mednafen.github.io/"
profiled_date: "2026-03-24"
profiled_date: "2026-03-29"
core_version: "v0.9.44.1"
display_name: "Sony - PlayStation (Beetle PSX)"
cores: [mednafen_psx, mednafen_psx_hw]
cores: [beetle_psx, mednafen_psx, mednafen_psx_hw]
systems: [sony-playstation]
notes: >
Region-based BIOS selection: the core picks JP/NA/EU firmware based on disc region.
SHA1 validated with warning on mismatch (does not block loading).
SHA1 and alternate filenames sourced from MAME psx.cpp (libretro.cpp:184).
Override option allows using PSP or PS3 extracted PS1 BIOS as region-free alternative.
SHA1 and alternate filenames sourced from MAME psx.cpp (libretro.cpp:186).
Override option allows using PSP, PS3, or OpenBIOS as region-free alternative.
Embedded OpenBIOS (512KB) compiled into the binary serves as HLE fallback when no BIOS found.
"Skip BIOS" option patches BIOS ROM but causes compatibility issues.
Upstream Mednafen loads the same 3 region BIOS; override BIOS are libretro additions.
Upstream Mednafen loads the same 3 region BIOS; override BIOS and HLE fallback are libretro additions.
files:
# -- Region: Japan (REGION_JP) --
@@ -23,12 +24,13 @@ files:
description: "SCPH-5500 (v3.0 09-09-96 J)"
region: "NTSC-J"
required: true
hle_fallback: true
size: 524288
sha1: "b05def971d8ec59f346f2d9ac21fb742e3eb6917"
md5: "8dd7d5296a650fac7319bce665a6a53c"
validation: [sha1]
mode: both
source_ref: "libretro.cpp:252-256"
source_ref: "libretro.cpp:261-269"
aliases: ["SCPH5500.bin", "SCPH-5500.bin"]
# -- Region: North America (REGION_NA) --
@@ -37,12 +39,13 @@ files:
description: "SCPH-5501, 5503, 7003 (v3.0 11-18-96 A)"
region: "NTSC-U"
required: true
hle_fallback: true
size: 524288
sha1: "0555c6fae8906f3f09baf5988f00e55f88e9f30b"
md5: "490f666e1afb15b7362b406ed1cea246"
validation: [sha1]
mode: both
source_ref: "libretro.cpp:258-270"
source_ref: "libretro.cpp:271-289"
aliases:
- "SCPH5501.bin"
- "SCPH-5501.bin"
@@ -59,12 +62,13 @@ files:
description: "SCPH-5502, 5552 (v3.0 01-06-97 E)"
region: "PAL"
required: true
hle_fallback: true
size: 524288
sha1: "f6bc2d1f5eb6593de7d089c425ac681d6fffd3f0"
md5: "32736f17079d0b2b7024407c39bd3050"
validation: [sha1]
mode: both
source_ref: "libretro.cpp:272-282"
source_ref: "libretro.cpp:291-305"
aliases:
- "SCPH5502.bin"
- "SCPH-5502.bin"
@@ -83,7 +87,7 @@ files:
md5: "c53ca5908936d412331790f4426c6c33"
validation: [sha1]
mode: libretro
source_ref: "libretro.cpp:190-195"
source_ref: "libretro.cpp:192-198"
aliases: ["PSXONPSP660.bin"]
note: "override_bios=1. Falls back to region BIOS if not found."
@@ -96,6 +100,16 @@ files:
md5: "81bbe60ba7a3d1cea1d48c14cbcc647b"
validation: [sha1]
mode: libretro
source_ref: "libretro.cpp:198-203"
source_ref: "libretro.cpp:200-206"
aliases: ["PS1_ROM.bin"]
note: "override_bios=2. Falls back to region BIOS if not found."
- name: "openbios.bin"
description: "OpenBIOS (open-source PS1 HLE BIOS, region-free override)"
region: "Auto"
required: false
size: 524288
mode: libretro
source_ref: "libretro.cpp:208-214"
aliases: ["OPENBIOS.bin"]
note: "override_bios=3. No SHA1 validation. Falls back to region BIOS if not found. Also embedded in binary as HLE fallback (libretro.cpp:2157-2159)."

View File

@@ -7,10 +7,10 @@ profiled_date: "2026-03-23"
core_version: "v1.0"
display_name: "Dinothawr"
cores: [dinothawr]
systems: []
systems: [dinothawr]
notes: |
Puzzle game by the libretro team. Push blocks on ice.
Puzzle game by the libretro team (Themaister, Agnes Heyer). Push blocks on ice.
Game data (TMX levels, sprites, music) needed for the core to work.
Two loading modes:

View File

@@ -1,14 +1,16 @@
emulator: GSplus
type: standalone
core_classification: community_fork
source: "https://github.com/digarok/gsplus"
upstream: "https://github.com/digarok/gsplus"
profiled_date: "2026-03-26"
upstream: "https://kegs.sourceforge.net/"
profiled_date: "2026-03-29"
core_version: "KEGS 1.38"
display_name: "Apple - Apple IIGS (GSplus)"
cores:
- gsplus
systems:
- apple-iigs
- apple-iie
notes: |
Fork of KEGS (Kent's Emulated GS) by digarok. Cross-platform Apple IIGS
@@ -28,7 +30,7 @@ files:
aliases: [ROM.01, ROM.03, APPLE2GS.ROM, APPLE2GS.ROM2, xgs.rom, XGS.ROM, Rom03gd, 342-0077-b]
required: true
description: "Apple IIGS system ROM"
source_ref: "config.c:131,403-407,1092-1149"
source_ref: "config.c:131,403-406,1092-1149"
note: "Accepted sizes: 32768 (Apple //e), 131072 (ROM 01), 262144 (ROM 03)"
validation: [size]
@@ -39,5 +41,5 @@ files:
size: 256
description: "Disk II controller PROM (slot 6)"
validation: [size]
source_ref: "config.c:414-415,1188-1220"
source_ref: "config.c:414-415,1168-1220"
note: "Built-in PROM generated from XOR diffs against main ROM"

View File

@@ -10,7 +10,7 @@ upstream: "https://github.com/PCSX2/pcsx2"
profiled_date: "2026-03-25"
core_version: "Git"
display_name: "Sony - PlayStation 2 (LRPS2)"
cores: [lrps2]
cores: [lrps2, pcsx2]
systems: [sony-playstation-2]
bios_directory: "pcsx2/bios/"

View File

@@ -4,7 +4,7 @@ core_classification: official_port
source: "https://github.com/libretro/mame"
upstream: "https://github.com/mamedev/mame"
logo: "https://raw.githubusercontent.com/mamedev/mame/master/docs/source/images/MAMElogo.svg"
profiled_date: "2026-03-22"
profiled_date: "2026-03-29"
core_version: "0.286"
display_name: "Arcade (MAME)"
@@ -43,13 +43,29 @@ systems:
- konami-twinkle
- panasonic-3do
- hyper-neogeo64
- apple2gs
- apf-m1000
- bally-astrocade
- coleco-adam
- crvision
- entex-advision
- sega-beena
- camplynx
- tiger-game-com
- gamepark-gp32
- gamate
- gamepock
- hartung-game-master
- fm7
- laser310
- casio-loopy
- casio-pv1000
- pegasus
- pcw
notes: |
Rolling release tracking mamedev/mame upstream (currently 0.286).
80 BIOS root sets + 3 system ROM sets (adam, advision, apfm1000). romload.cpp
80 BIOS root sets + 18 system ROM sets (apple2gs, astrocade, adam, advision, apfm1000, beena, camplynx, casloopy, crvision, fm7, gamate, gamecom, gamepock, gmaster, gp32, laser310, pcw, pegasus). romload.cpp
unmodified. No hiscore support.
Paths under system_dir/mame/ (artwork, cheat, hash, ini, plugins,
samples, crosshair). ROM search: content_dir + system_dir/mame/bios +
@@ -515,6 +531,80 @@ files:
category: bios_zip
source_ref: "src/mame/misc/xtom3d.cpp:996"
# Bally Astrocade
- name: astrocde.zip
required: true
category: bios_zip
system: astrocde
source_ref: "src/mame/midway/astrohome.cpp:244-247"
contents:
- name: astro.bin
description: "On-board BIOS ROM (Bally Professional Arcade)"
size: 8192
crc32: ebc77f3a
- name: astrocdl.zip
required: false
category: bios_zip
system: astrocde
source_ref: "src/mame/midway/astrohome.cpp:249-251"
contents:
- name: ballyhlc.bin
description: "Bally Home Library Computer BIOS"
size: 8192
crc32: d7c517ba
- name: astrocdw.zip
required: false
category: bios_zip
system: astrocde
source_ref: "src/mame/midway/astrohome.cpp:254-257"
contents:
- name: bioswhit.bin
description: "Bally Computer System BIOS"
size: 8192
crc32: 6eb53e79
# Apple IIgs
- name: apple2gs.zip
required: true
category: bios_zip
system: apple2gs
source_ref: "src/mame/apple/apple2gs.cpp:3898-3912"
contents:
- name: 341s0632-2.bin
description: "ADB microcontroller ROM (M50740/50741)"
size: 4096
crc32: e1c11fb0
- name: 344s0047.bin
description: "Mega II character ROM"
size: 16384
crc32: 2d541944
- name: 341-0728
description: "IIgs ROM03 FC-FD main CPU"
size: 131072
crc32: 8d410067
- name: 341-0748
description: "IIgs ROM03 FE-FF main CPU"
size: 131072
crc32: "18190283"
# Casio Loopy
- name: casloopy.zip
required: true
category: bios_zip
system: casio-loopy
source_ref: "src/mame/casio/casloopy.cpp:2456-2462"
contents:
- name: hd6437021.lsi302
description: "SH-1 CPU internal mask ROM"
size: 32768
crc32: 8c57ff9f
- name: hn62434fa.lsi352
description: "HN62434 sound/wave data mask ROM"
size: 524288
crc32: 8f51fa17
# Coleco Adam
- name: adam.zip
required: true
@@ -661,3 +751,410 @@ files:
size: 4096
crc32: f320aba6
# Sega Advanced Pico BEENA
- name: beena.zip
required: true
category: bios_zip
system: sega-beena
source_ref: "src/mame/sega/sega_beena.cpp:2233-2245"
contents:
- name: 9h0-0008.bios.ic1
description: "SoC internal BIOS (ARM7, dumped via JTAG)"
size: 131072
crc32: 5471aaf8
- name: 9h0-0008.midipcm.ic1
description: "SoC MIDI synthesizer PCM data"
size: 32768
crc32: ed336d29
# Camputers Lynx 48K
- name: lynx48k.zip
required: true
category: bios_zip
system: camplynx
source_ref: "src/mame/camputers/camplynx.cpp:995-1004"
contents:
- name: lynx48-1.ic46
description: "BASIC ROM bank 1 (Set1)"
size: 8192
crc32: 56feec44
- name: lynx48-2.ic45
description: "BASIC ROM bank 2 (Set1)"
size: 8192
crc32: d894562e
- name: lynx4811.ic46
description: "BASIC ROM bank 1 (Set2)"
size: 8192
crc32: a933e577
- name: lynx4812.ic45
description: "BASIC ROM bank 2 (Set2)"
size: 8192
crc32: 3d3fdd0e
# Camputers Lynx 96K
- name: lynx96k.zip
required: true
category: bios_zip
system: camplynx
source_ref: "src/mame/camputers/camplynx.cpp:1006-1018"
contents:
- name: lynx9646.ic46
description: "BASIC ROM bank 1"
size: 8192
crc32: f86c5514
- name: lynx9645.ic45
description: "BASIC ROM bank 2"
size: 8192
crc32: f596b9a3
- name: lynx9644.ic44
description: "Extension ROM (original)"
size: 4096
crc32: 4b96b0de
- name: skorprom.ic44
description: "Scorpion ROM v2.1 (RLUG)"
size: 8192
crc32: 698d3de9
- name: danish96k3.ic44
description: "Danish extension ROM"
size: 8192
crc32: 795c22ea
- name: dosrom.rom
description: "Floppy DOS ROM"
size: 8192
crc32: 011e106a
# Camputers Lynx 128K
- name: lynx128k.zip
required: true
category: bios_zip
system: camplynx
source_ref: "src/mame/camputers/camplynx.cpp:1020-1026"
contents:
- name: lynx128-1.ic1
description: "BASIC ROM bank 1"
size: 8192
crc32: 65d292ce
- name: lynx128-2.ic2
description: "BASIC ROM bank 2"
size: 8192
crc32: 23288773
- name: lynx128-3.ic3
description: "BASIC ROM bank 3"
size: 8192
crc32: 9827b9e9
- name: dosrom.rom
description: "Floppy DOS ROM"
size: 8192
crc32: 011e106a
# VTech CreatiVision
- name: crvision.zip
required: true
category: bios_zip
system: crvision
source_ref: "src/mame/vtech/crvision.cpp:934-937"
contents:
- name: crvision.u20
description: "Microsoft BASIC ROM"
size: 2048
crc32: c3c590c6
- name: fnvision.zip
required: false
category: bios_zip
system: crvision
source_ref: "src/mame/vtech/crvision.cpp:939-942"
note: "FunVision clone with alternate BIOS"
contents:
- name: funboot.rom
description: "FunVision alternate BIOS ROM"
size: 2048
crc32: "05602697"
- name: lasr2001.zip
required: false
category: bios_zip
system: crvision
source_ref: "src/mame/vtech/crvision.cpp:950-953"
note: "VTech Laser 2001 home computer (CreatiVision successor)"
contents:
- name: laser2001.rom
description: "Laser 2001 BASIC + OS ROM"
size: 16384
crc32: 4dc35c39
- name: manager.zip
required: false
category: bios_zip
system: crvision
source_ref: "src/mame/vtech/crvision.cpp:955-959"
note: "Salora Manager (Finnish variant)"
contents:
- name: "01"
description: "ROM bank 0-1"
size: 8192
crc32: 702f4cf5
- name: "23"
description: "ROM bank 2-3"
size: 8192
crc32: 46489d88
# VTech Laser 310 (VZ-300)
- name: laser310.zip
required: true
category: bios_zip
system: laser310
source_ref: "src/mame/vtech/vtech1.cpp:602-608"
note: "Z80-based home computer (1984). Clones: VZ-300, Laser 310 SHRG."
contents:
- name: vtechv20.u12
description: "BASIC V2.0 ROM (default)"
size: 16384
crc32: 613de12c
- name: vtechv21.u12
description: "BASIC V2.1 ROM (hack)"
size: 16384
crc32: f7df980f
# Bit Corporation Gamate
- name: gamate.zip
required: true
category: bios_zip
system: gamate
source_ref: "src/mame/bitcorp/gamate.cpp:228-234"
contents:
- name: gamate_bios_umc.bin
description: "UMC/NCR ICASC00002 BIOS (default)"
size: 4096
crc32: "07090415"
- name: gamate_bios_bit.bin
description: "BIT ICASC00001 BIOS (1994)"
size: 4096
crc32: 03a5f3a7
# Epoch Game Pocket Computer
- name: gamepock.zip
required: true
category: bios_zip
system: gamepock
source_ref: "src/mame/epoch/gamepock.cpp:248-251"
contents:
- name: egpcboot.bin
description: "NEC uPD78C06AG internal ROM"
size: 4096
crc32: ee1ea65d
# Hartung Game Master
- name: gmaster.zip
required: true
category: bios_zip
system: hartung-game-master
source_ref: "src/mame/handheld/gmaster.cpp:261-263"
contents:
- name: d78c11agf_e19.u1
description: "NEC D78C11AGF internal ROM"
size: 4096
crc32: 05cc45e5
# Tiger game.com
- name: gamecom.zip
required: true
category: bios_zip
system: tiger-game-com
source_ref: "src/mame/tiger/gamecom.cpp:293-299"
contents:
- name: internal.bin
description: "SM8521 CPU internal ROM"
size: 4096
crc32: a0cec361
- name: external.bin
description: "External flash ROM (PDA software)"
size: 262144
crc32: e235a589
# GamePark GP32
- name: gp32.zip
required: true
category: bios_zip
system: gamepark-gp32
source_ref: "src/mame/gamepark/gp32.cpp:1710-1727"
contents:
- name: gp32157e.bin
description: "Firmware 1.5.7 (English, default)"
size: 524288
crc32: b1e35643
- name: gp32100k.bin
description: "Firmware 1.0.0 (Korean)"
size: 524288
crc32: d9925ac9
- name: gp32156k.bin
description: "Firmware 1.5.6 (Korean)"
size: 524288
crc32: "667fb1c8"
- name: gp32166m.bin
description: "Firmware 1.6.6 (European)"
size: 524288
crc32: "4548a840"
- name: gp32mfv2.bin
description: "Mr. Spiv Multi Firmware V2"
size: 524288
crc32: "7ddaaaeb"
- name: x2c32.jed
description: "32 Macrocell CoolRunner-II CPLD (JEDEC)"
size: 15291
crc32: eeec10d8
# Fujitsu FM-7 family
- name: fm7.zip
required: true
category: bios_zip
system: fm7
source_ref: "src/mame/fujitsu/fm7.cpp:2188-2209"
contents:
- name: fbasic300.rom
description: "F-BASIC 3.00 ROM"
size: 31744
crc32: 87c98494
- name: subsys_c.rom
description: "Sub-CPU system ROM"
size: 10240
crc32: 24cec93f
- name: boot_bas.rom
description: "Boot BASIC ROM"
size: 512
crc32: c70f0c74
- name: boot_dos_a.rom
description: "Boot DOS-A ROM"
size: 512
crc32: bf441864
- name: kanji.rom
description: "Kanji ROM (optional, JIS level 1)"
size: 131072
crc32: 62402ac9
- name: fm77av.zip
required: true
category: bios_zip
system: fm7
source_ref: "src/mame/fujitsu/fm7.cpp:2211-2232"
contents:
- name: initiate.rom
description: "Initiate ROM (boot sequencer)"
size: 8192
crc32: 785cb06c
- name: fbasic30.rom
description: "F-BASIC 3.0 ROM"
size: 31744
crc32: a96d19b6
- name: subsys_a.rom
description: "Sub system A ROM"
size: 8192
crc32: e8014fbb
- name: subsys_b.rom
description: "Sub system B ROM"
size: 8192
crc32: 9be69fac
- name: subsyscg.rom
description: "Sub system CG ROM (character generator)"
size: 8192
crc32: e9f16c42
- name: fmnew7.zip
required: false
category: bios_zip
system: fm7
source_ref: "src/mame/fujitsu/fm7.cpp:2170-2186"
note: "FM-NEW7 clone, inherits shared ROMs from fm7.zip parent"
contents:
- name: fbasic302.rom
description: "F-BASIC 3.02 ROM"
size: 31744
crc32: a96d19b6
- name: boot_dos.rom
description: "Boot DOS ROM"
size: 512
crc32: 198614ff
# Technosys Aamber Pegasus
- name: pegasus.zip
required: true
category: bios_zip
system: pegasus
source_ref: "src/mame/ausnz/pegasus.cpp:ROM_START"
note: "6809-based home computer (1981, New Zealand). 8 monitor BIOS variants, 5 cartridge expansion slots."
contents:
- name: mon11_2674.bin
description: "Monitor 1.1 r2674 (default)"
size: 4096
crc32: 1640ff7e
- name: mon10_2569.bin
description: "Monitor 1.0 r2569"
size: 4096
crc32: 910fc930
- name: mon11_2569.bin
description: "Monitor 1.1 r2569"
size: 4096
crc32: "07b92002"
- name: mon11_2669.bin
description: "Monitor 1.1 r2669"
size: 4096
crc32: f3ee23c8
- name: mon22_2856.bin
description: "Monitor 2.2 r2856"
size: 4096
crc32: 5f5f688a
- name: mon22b_2856.bin
description: "Monitor 2.2B r2856"
size: 4096
crc32: a47b0308
- name: mon23_2601.bin
description: "Monitor 2.3 r2601"
size: 4096
crc32: 0e024222
- name: mon23a_2569.bin
description: "Monitor 2.3A r2569"
size: 4096
crc32: 248e62c9
- name: 6571.bin
description: "MCM6571A character generator"
size: 2048
crc32: 5a25144b
# Amstrad PCW (Joyce)
- name: pcw8256.zip
required: true
category: bios_zip
system: pcw
source_ref: "src/mame/amstrad/pcw.cpp:1402"
note: |
Amstrad PCW8256 parent ROM set. Z80-based word processor/computer (1985).
6 machines: pcw8256 (parent), pcw8512, pcw9256, pcw9512, pcw9512+, pcw10.
All MACHINE_NOT_WORKING. No main CPU ROM (boots from CP/M floppy).
Printer MCU boot code copied into Z80 RAM at machine_reset.
Clones pcw8512/pcw9256/pcw10 share parent ROMs. pcw9512/pcw9512+ use
separate daisywheel printer MCU (pcw9512.zip).
contents:
- name: 40026.ic701
description: "i8041 9-pin dot-matrix printer MCU"
size: 1024
crc32: ee8890ae
- name: 40027.ic801
description: "i8048 keyboard MCU"
size: 1024
crc32: "25260958"
- name: pcw9512.zip
required: true
category: bios_zip
system: pcw
source_ref: "src/mame/amstrad/pcw.cpp:1429"
note: |
Amstrad PCW9512 clone ROM set. Daisywheel printer variant (1987).
Uses different printer MCU (40103.ic109) than 9-pin models.
Keyboard MCU (40027.ic801) inherited from parent pcw8256.zip.
contents:
- name: 40103.ic109
description: "i8041 daisywheel printer MCU"
size: 8192
crc32: a64d450a

File diff suppressed because it is too large Load Diff

View File

@@ -3,13 +3,14 @@ type: libretro
core_classification: community_fork
source: "https://github.com/libretro/quasi88-libretro"
upstream: "https://www.retropc.net/showzoh/quasi88/"
profiled_date: "2026-03-25"
profiled_date: "2026-03-29"
core_version: "0.6.4"
display_name: "NEC - PC-8000 / PC-8800 series (QUASI88)"
cores:
- quasi88
systems:
- pc-8801
- nec-pc-88
- nec-pc-80
# QUASI88 by Showzoh Fukunaga, libretro port by Celerizer.
# Includes pseudo-BIOS (pbios_n88, pbios_disk) by cisc compiled into the core.
@@ -35,6 +36,16 @@ systems:
#
# Upstream supports 2HD disk ROM (8 KB) via memory.c:356-368.
# The libretro port reads only 2 KB (2D type) at libretro.c:552.
#
# font.rom divergence: libretro.c:566-571 loads 0x1000 bytes then
# overwrites the buffer with kanji ROM + built-in graph. The font.rom
# data is not actually used (bug). Upstream memory.c:427 loads FONT_SZ
# (2048) and keeps the font data in the first half.
#
# OPNA rhythm samples (2608_BD.WAV etc.): loaded by upstream via
# fmgen/opna.cpp:1271 LoadRhythmSample(), but osd_dir_rom() returns
# NULL in the libretro port (dir_rom never initialized), so the samples
# cannot be loaded. OPNA rhythm playback is silent in the libretro core.
notes: |
Files go in <system_dir>/quasi88/ or directly in <system_dir>/.
@@ -43,7 +54,8 @@ notes: |
kanji display), real ROM files are needed.
Core option "quasi88_basic_mode" selects N88 V2, N88 V1H, N88 V1S,
or N mode. Each mode requires its corresponding ROM.
or N mode. Each mode requires its corresponding ROM. N mode emulates
PC-8001 series (N-BASIC) and requires n88n.rom.
files:
- name: n88.rom

View File

@@ -409,7 +409,7 @@ systems:
required: true
sha1: e5b2922ca137051059e4269b236d07a22c07bc84
size: 524288
nintendo-bsx:
nintendo-satellaview:
files:
- name: Satellaview_BS-X.sfc
destination: Satellaview_BS-X.sfc

View File

@@ -732,14 +732,30 @@ def derive_manufacturer(system_id: str, system_data: dict) -> str:
return "Other"
# Abbreviations that normalization alone cannot resolve.
# Maps platform-specific short names to canonical profile system IDs.
SYSTEM_ALIASES: dict[str, str] = {
"gmaster": "hartung-game-master",
"n64dd": "nintendo-64dd",
"neogeo64": "hyper-neogeo64",
# Platform IDs missing the manufacturer-prefix hyphen
"atari5200": "atari-5200",
"atari7800": "atari-7800",
"atarist": "atari-st",
"sega32x": "sega-32x",
"segastv": "sega-stv",
}
def _norm_system_id(sid: str) -> str:
"""Normalize system ID for cross-platform matching.
Strips manufacturer prefixes and separators so that platform-specific
IDs (e.g., "xbox", "nintendo-wiiu") match profile IDs
(e.g., "microsoft-xbox", "nintendo-wii-u").
Resolves known aliases, then strips manufacturer prefixes and separators
so that platform-specific IDs (e.g., "xbox", "nintendo-wiiu") match
profile IDs (e.g., "microsoft-xbox", "nintendo-wii-u").
"""
s = sid.lower().replace("_", "-")
s = SYSTEM_ALIASES.get(s, s)
for prefix in MANUFACTURER_PREFIXES:
if s.startswith(prefix):
s = s[len(prefix):]

View File

@@ -429,6 +429,202 @@ def _collect_emulator_extras(
return extras
def _build_readme(platform_name: str, platform_display: str,
base_dest: str, total_files: int, num_systems: int) -> str:
"""Build a personalized step-by-step README for each platform pack."""
sep = "=" * 50
header = (
f"{sep}\n"
f" RETROBIOS - {platform_display} BIOS Pack\n"
f" {total_files} files for {num_systems} systems\n"
f"{sep}\n\n"
)
guides: dict[str, str] = {
"retroarch": (
"INSTALLATION GUIDE\n\n"
" Option A: Automatic (recommended)\n"
" ---------------------------------\n"
" Run this in a terminal:\n\n"
" curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh\n\n"
" The script auto-detects your RetroArch install and copies\n"
" files to the correct location.\n\n"
" Option B: Manual (PC)\n"
" ---------------------\n"
" 1. Find your RetroArch system directory:\n"
" - RetroArch > Settings > Directory > System/BIOS\n"
" - Default: retroarch/system/\n"
" 2. Open the \"system\" folder from this archive\n"
" 3. Copy ALL contents into your system directory\n"
" 4. Overwrite if asked\n\n"
" Option C: Manual (handheld / SD card)\n"
" -------------------------------------\n"
" Anbernic, Retroid, Miyoo, Trimui, etc.:\n"
" 1. Connect your SD card to your PC\n"
" 2. Find the BIOS folder (usually BIOS/ or system/)\n"
" 3. Copy ALL contents of \"system\" from this archive\n"
" 4. Eject SD card and reboot your device\n\n"
" Common paths by device:\n"
" Anbernic (ArkOS/JELOS): BIOS/\n"
" Retroid (RetroArch): RetroArch/system/\n"
" Miyoo Mini (Onion OS): BIOS/\n"
" Steam Deck (RetroArch): ~/.config/retroarch/system/\n\n"
),
"batocera": (
"INSTALLATION GUIDE\n\n"
" Option A: Automatic (recommended)\n"
" ---------------------------------\n"
" Open a terminal (F1 from Batocera menu) and run:\n\n"
" curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh\n\n"
" Option B: Manual (network share)\n"
" --------------------------------\n"
" 1. On your PC, open the Batocera network share:\n"
" - Windows: \\\\BATOCERA\\share\\bios\\\n"
" - Mac/Linux: smb://batocera/share/bios/\n"
" 2. Open the \"bios\" folder from this archive\n"
" 3. Copy ALL contents into the share\n"
" 4. Overwrite if asked\n\n"
" Option C: Manual (SD card)\n"
" --------------------------\n"
" 1. Put the SD card in your PC\n"
" 2. Navigate to /userdata/bios/ on the SHARE partition\n"
" 3. Copy ALL contents of \"bios\" from this archive\n\n"
" NOTE: Dreamcast flash memory is named dc_nvmem.bin\n"
" (if your setup asks for dc_flash.bin, same file).\n\n"
),
"recalbox": (
"INSTALLATION GUIDE\n\n"
" Option A: Automatic\n"
" -------------------\n"
" curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh\n\n"
" Option B: Manual (network share)\n"
" --------------------------------\n"
" 1. On your PC, open the Recalbox network share:\n"
" - Windows: \\\\RECALBOX\\share\\bios\\\n"
" - Mac/Linux: smb://recalbox/share/bios/\n"
" 2. Open the \"bios\" folder from this archive\n"
" 3. Copy ALL contents into the share\n\n"
" Option C: Manual (SD card)\n"
" --------------------------\n"
" 1. Put the SD card in your PC\n"
" 2. Navigate to /recalbox/share/bios/\n"
" 3. Copy ALL contents of \"bios\" from this archive\n\n"
),
"emudeck": (
"INSTALLATION GUIDE (Steam Deck / Linux)\n\n"
" Option A: Automatic (recommended)\n"
" ---------------------------------\n"
" Open Konsole (or any terminal) and run:\n\n"
" curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh\n\n"
" The script places BIOS files AND sets up standalone\n"
" emulator keys automatically.\n\n"
" Option B: Manual\n"
" ----------------\n"
" 1. Open Dolphin file manager\n"
" 2. Navigate to ~/Emulation/bios/\n"
" 3. Open the \"bios\" folder from this archive\n"
" 4. Copy ALL contents into ~/Emulation/bios/\n\n"
" STANDALONE EMULATORS (extra step)\n"
" Switch and 3DS emulators need keys in specific folders:\n"
" prod.keys -> ~/.local/share/yuzu/keys/\n"
" prod.keys -> ~/.local/share/eden/keys/\n"
" prod.keys -> ~/.config/Ryujinx/system/\n"
" aes_keys.txt -> ~/Emulation/bios/citra/keys/\n"
" The automatic installer handles this for you.\n\n"
),
"retrodeck": (
"INSTALLATION GUIDE (Steam Deck / Linux)\n\n"
" Option A: Automatic (recommended)\n"
" ---------------------------------\n"
" Open Konsole (or any terminal) and run:\n\n"
" curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh\n\n"
" Option B: Manual\n"
" ----------------\n"
" 1. Open Dolphin file manager\n"
" 2. Show hidden files (Ctrl+H)\n"
" 3. Navigate to ~/retrodeck/bios/\n"
" 4. Open this archive and go into the top-level folder\n"
" 5. Copy ALL contents into ~/retrodeck/bios/\n\n"
" NOTE: RetroDECK uses its own BIOS checker. After\n"
" copying, open RetroDECK > Tools > BIOS Checker to\n"
" verify everything is detected.\n\n"
),
"retrobat": (
"INSTALLATION GUIDE (Windows)\n\n"
" Option A: Automatic (recommended)\n"
" ---------------------------------\n"
" Download and run install.bat from:\n"
" https://github.com/Abdess/retrobios/releases\n\n"
" Option B: Manual\n"
" ----------------\n"
" 1. Open your RetroBat installation folder\n"
" 2. Navigate to the bios\\ subfolder\n"
" (default: C:\\RetroBat\\bios\\)\n"
" 3. Open the \"bios\" folder from this archive\n"
" 4. Copy ALL contents into your bios\\ folder\n"
" 5. Overwrite if asked\n\n"
),
"bizhawk": (
"INSTALLATION GUIDE\n\n"
" 1. Open your BizHawk installation folder\n"
" 2. Navigate to the Firmware subfolder:\n"
" - Windows: BizHawk\\Firmware\\\n"
" - Linux: ~/.config/BizHawk/Firmware/\n"
" 3. Open the \"Firmware\" folder from this archive\n"
" 4. Copy ALL contents into your Firmware folder\n"
" 5. In BizHawk: Config > Paths > Firmware should\n"
" point to this folder\n\n"
),
"romm": (
"INSTALLATION GUIDE (RomM server)\n\n"
" 1. Locate your RomM library folder\n"
" 2. Navigate to the bios/ subdirectory\n"
" 3. Copy ALL contents of \"bios\" from this archive\n"
" 4. Restart the RomM service to detect new files\n\n"
),
"retropie": (
"INSTALLATION GUIDE (Raspberry Pi)\n\n"
" Option A: Via network share\n"
" --------------------------\n"
" 1. On your PC, open: \\\\RETROPIE\\bios\\\n"
" 2. Copy ALL contents of \"BIOS\" from this archive\n\n"
" Option B: Via SSH\n"
" -----------------\n"
" 1. SSH into your Pi: ssh pi@retropie\n"
" 2. Copy files to ~/RetroPie/BIOS/\n\n"
" Option C: Via SD card\n"
" ---------------------\n"
" 1. Put the SD card in your PC\n"
" 2. Navigate to /home/pi/RetroPie/BIOS/\n"
" 3. Copy ALL contents of \"BIOS\" from this archive\n\n"
),
}
# Lakka uses same guide as RetroArch
guides["lakka"] = guides["retroarch"]
guide = guides.get(platform_name, (
f"INSTALLATION\n\n"
f" 1. Open the \"{base_dest or 'files'}\" folder in this archive\n"
f" 2. Copy ALL contents to your BIOS directory\n"
f" 3. Overwrite if asked\n\n"
))
footer = (
"TROUBLESHOOTING\n\n"
" - Core says BIOS missing? Check the exact filename\n"
" and make sure it's in the right subfolder.\n"
" - Wrong region? Some systems have regional BIOS\n"
" variants (USA/EUR/JAP). All are included.\n"
" - Need help? https://github.com/Abdess/retrobios/issues\n\n"
f"{sep}\n"
f" https://github.com/Abdess/retrobios\n"
f"{sep}\n"
)
return header + guide + footer
def generate_pack(
platform_name: str,
platforms_dir: str,
@@ -765,66 +961,10 @@ def generate_pack(
zf.write(src, full)
total_files += 1
# README.txt for users
extract_paths = {
"retroarch": "system/", "lakka": "system/",
"batocera": "/userdata/bios/", "recalbox": "/recalbox/share/bios/",
"emudeck": "Emulation/bios/", "retrobat": "bios/",
"retrodeck": "~/retrodeck/bios/", "romm": "bios/",
"bizhawk": "Firmware/", "retropie": "BIOS/",
}
extract_to = extract_paths.get(platform_name, f"{base_dest}/")
# README.txt for users — personalized step-by-step per platform
num_systems = len(pack_systems)
# Platform-specific notes
platform_notes = {
"emudeck": (
"\nSTANDALONE EMULATORS\n"
" Switch emulators (Yuzu, Eden, Ryujinx) and Citra need\n"
" keys in their own folders, not in Emulation/bios/.\n"
" Use the automatic installer to set this up, or copy\n"
" manually:\n"
" prod.keys -> ~/.local/share/yuzu/keys/\n"
" prod.keys -> ~/.local/share/eden/keys/\n"
" prod.keys -> ~/.config/Ryujinx/system/\n"
" aes_keys.txt -> Emulation/bios/citra/keys/\n\n"
),
"retroarch": (
"\nHANDHELDS (Anbernic, Retroid, Miyoo, etc.)\n"
" Copy the contents of \"system/\" to your SD card's\n"
" BIOS folder (usually BIOS/ or system/).\n\n"
),
"batocera": (
"\nDREAMCAST NOTE\n"
" The flash memory file is named dc_nvmem.bin\n"
" (Flycast's canonical name). If your setup asks for\n"
" dc_flash.bin, it serves the same purpose.\n\n"
),
}
extra_notes = platform_notes.get(platform_name, "")
# Lakka shares RetroArch notes
if platform_name == "lakka":
extra_notes = platform_notes.get("retroarch", "")
readme_text = (
f"{'=' * 43}\n"
f" RETROBIOS - {platform_display} BIOS Pack\n"
f" {total_files} files for {num_systems} systems\n"
f"{'=' * 43}\n\n"
f"HOW TO INSTALL\n\n"
f" 1. Open the \"{base_dest or 'files'}\" folder in this archive\n"
f" 2. Select everything inside (Ctrl+A)\n"
f" 3. Copy (Ctrl+C)\n"
f" 4. Go to: {extract_to}\n"
f" 5. Paste (Ctrl+V)\n\n"
f"IMPORTANT\n"
f" - Copy the FILES, not the folder itself\n"
f" - If asked to replace, click Yes\n"
f"{extra_notes}"
f"AUTOMATIC INSTALL (recommended)\n"
f" curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh\n\n"
f"PROJECT: https://github.com/Abdess/retrobios\n"
f"{'=' * 43}\n"
)
readme_text = _build_readme(platform_name, platform_display,
base_dest, total_files, num_systems)
zf.writestr("README.txt", readme_text)
files_ok = sum(1 for s in file_status.values() if s == "ok")

View File

@@ -65,7 +65,7 @@ SYSTEM_ID_MAP: dict[str, str] = {
"Amiga": "commodore-amiga",
"AmstradCPC": "amstrad-cpc",
"AppleII": "apple-ii",
"BSX": "nintendo-bsx",
"BSX": "nintendo-satellaview",
"C64": "commodore-c64",
"ChannelF": "fairchild-channel-f",
"Coleco": "coleco-colecovision",