feat: commit the corrected file of each platform

exports/ now holds the twelve platforms' own files, corrected, with a
report of every change, read by the site's corrected files page. Two
summaries are reworded for the page: an addition the format cannot
carry is counted as left out, and RetroPie names each skipped package
by sentence instead of joining reasons with semicolons. Its parser no
longer reads "e.g" as a file name.
This commit is contained in:
Abdessamad Derraz committed 2026-10-20 09:26:12 +02:00
1 parent b3b3880c19
commit b6a1304893
39 files changed
+32056 -7

No files matched your search

+25
View File
@@ -0,0 +1,25 @@
{
"platform": "batocera",
"originals": {
"batocera-systems": "https://raw.githubusercontent.com/batocera-linux/batocera.linux/batocera-43.1/package/batocera/core/batocera-scripts/scripts/batocera-systems"
},
"files": [
"batocera-systems"
],
"summary": "692 kept, 232 added, 6 hashes corrected, 0 requirements corrected, 1479 additions left out",
"hashes_corrected": [
"psx/scph1001.bin md5",
"nds/dsi_bios7.bin md5",
"nds/dsi_bios9.bin md5",
"msx/MSX.ROM md5",
"pc98/BIOS.ROM md5",
"scummvm/MT32_CONTROL.ROM md5"
],
"hashes_filled": [],
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
"requirements_corrected": 0,
"withheld": [],
"invalid": []
}
File diff suppressed because it is too large. Load diff
+18
View File
@@ -0,0 +1,18 @@
{
"platform": "bizhawk",
"originals": {
"FirmwareDatabase.cs": "https://raw.githubusercontent.com/TASEmulators/BizHawk/2.11.1/src/BizHawk.Emulation.Common/Database/FirmwareDatabase.cs"
},
"files": [
"FirmwareDatabase.cs"
],
"summary": "121 kept, 0 added, 0 hashes corrected, 0 requirements corrected",
"hashes_corrected": [],
"hashes_filled": [],
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
"requirements_corrected": 0,
"withheld": [],
"invalid": []
}
+678
View File
@@ -0,0 +1,678 @@
#nullable disable
using System.Collections.Generic;
using System.Linq;
using BizHawk.Common;
// ReSharper disable IdentifierTypo
// ReSharper disable InconsistentNaming
// ReSharper disable StringLiteralTypo
namespace BizHawk.Emulation.Common
{
public static class FirmwareDatabase
{
public static IEnumerable<FirmwareFile> FirmwareFiles => FirmwareFilesByHash.Values;
public static readonly IReadOnlyDictionary<string, FirmwareFile> FirmwareFilesByHash;
public static readonly IReadOnlyDictionary<FirmwareOption, FirmwareFile> FirmwareFilesByOption;
public static readonly IReadOnlyCollection<FirmwareOption> FirmwareOptions;
public static readonly IReadOnlyCollection<FirmwareRecord> FirmwareRecords;
public static readonly IReadOnlyList<FirmwarePatchOption> AllPatches;
static FirmwareDatabase()
{
List<FirmwarePatchOption> allPatches = new();
Dictionary<string, FirmwareFile> filesByHash = new();
Dictionary<FirmwareOption, FirmwareFile> filesByOption = new();
List<FirmwareOption> options = new();
List<FirmwareRecord> records = new();
FirmwareFile File(
string hash,
long size,
string recommendedName,
string desc,
string additionalInfo = "",
bool isBad = false)
{
FirmwareFile ff = new(
hash: hash,
size: size,
recommendedName: recommendedName,
desc: desc,
additionalInfo: additionalInfo,
isBad: isBad);
return filesByHash[ff.Hash/*may have been reformatted*/] = ff;
}
void Option(string systemId, string id, in FirmwareFile ff, FirmwareOptionStatus status = FirmwareOptionStatus.Acceptable)
{
var option = new FirmwareOption(new(systemId, id), ff.Hash, ff.Size, ff.IsBad ? FirmwareOptionStatus.Bad : status);
options.Add(option);
filesByOption[option] = ff;
}
void Firmware(string systemId, string id, string desc)
=> records.Add(new(new(systemId, id), desc));
void FirmwareAndOption(string hash, long size, string systemId, string id, string name, string desc)
{
Firmware(systemId, id, desc);
Option(
systemId,
id,
File(hash, size, name, desc),
hash is SHA1Checksum.Dummy ? FirmwareOptionStatus.Unknown : FirmwareOptionStatus.Ideal);
}
void AddPatchAndMaybeReverse(FirmwarePatchOption fpo)
{
allPatches.Add(fpo);
if (fpo.Patches.Any(fpd => fpd.Overwrite)) return;
allPatches.Add(new(fpo.TargetHash, fpo.Patches.Reverse().ToArray(), fpo.BaseHash));
}
// 32X
FirmwareAndOption("DBEBD76A448447CB6E524AC3CB0FD19FC065D944", 256, "32X", "G", "32X_G_BIOS.BIN", "32x 68k BIOS");
FirmwareAndOption("1E5B0B2441A4979B6966D942B20CC76C413B8C5E", 2048, "32X", "M", "32X_M_BIOS.BIN", "32x SH2 MASTER BIOS");
FirmwareAndOption("4103668C1BBD66C5E24558E73D4F3F92061A109A", 1024, "32X", "S", "32X_S_BIOS.BIN", "32x SH2 SLAVE BIOS");
// 3DO
// Information obtained from https://3dodev.com/software/roms
Firmware("3DO", "Panasonic_FZ1_U", "Panasonic FZ-1 (U)");
Option("3DO", "Panasonic_FZ1_U", File("34BF189111295F74D7B7DFC1F304D98B8D36325A", 1048576, "panafz1.bin", "Panasonic FZ-1 (U)"), FirmwareOptionStatus.Ideal);
Option("3DO", "Panasonic_FZ1_U", File("DE3C55490733E6C69724D87E149B52ED955638ED", 1048576, "panafz1_dev_0.9.bin", "Panasonic FZ-1 (U) v0.9 dev build"));
Option("3DO", "Panasonic_FZ1_U", File("4CB4EE36E0F5BC0995D34992B4F241C420D49B2E", 1048576, "panafz1_dev.bin", "Panasonic FZ-1 (U) dev build"));
Firmware("3DO", "Panasonic_FZ1_E", "Panasonic FZ-1 (E)");
Option("3DO", "Panasonic_FZ1_E", File("1D0DB81E171EBC1D07CEFC8CE8AB082306186E56", 1048576, "panafz1e.bin", "Panasonic FZ-1 (E)"), FirmwareOptionStatus.Ideal);
Option("3DO", "Panasonic_FZ1_E", File("4696951E492E5526772A860EA2C0F35411A80927", 1048576, "panafz1e-unencrypted.bin", "Panasonic FZ-1 (E) (unencrypted)"));
Firmware("3DO", "Panasonic_FZ1_J", "Panasonic FZ-1 (J)");
Option("3DO", "Panasonic_FZ1_J", File("EC7EC62D60EC0459A14ED56EBC66761EF3C80EFC", 1048576, "panafz1j.bin", "Panasonic FZ-1 (J)"), FirmwareOptionStatus.Ideal);
Option("3DO", "Panasonic_FZ1_J", File("A417587AE3B0B8EF00C830920C21AF8BEE88E419", 1048576, "panafz1j - norsa.bin", "Panasonic FZ-1(J)(RSA check disabled)"));
Firmware("3DO", "Panasonic_FZ10_U", "Panasonic FZ-10 (U)");
Option("3DO", "Panasonic_FZ10_U", File("3C912300775D1AD730DC35757E279C274C0ACAAD", 1048576, "panafz10.bin", "Panasonic FZ-10 (U)"), FirmwareOptionStatus.Ideal);
Option("3DO", "Panasonic_FZ10_U", File("F05E642322C03694F06A809C0B90FC27AC73C002", 1048576, "panafz10-norsa.bin", "Panasonic FZ-10 (U) (RSA check disabled)"));
Firmware("3DO", "Panasonic_FZ10_E", "Panasonic FZ-10 (E)");
Option("3DO", "Panasonic_FZ10_E", File("A900371F0CDCDC03F79557F11D406FD71251A5FD", 1048576, "panafz10e-anvil.bin", "Panasonic FZ-10 (E) [ANVIL]"), FirmwareOptionStatus.Ideal);
Option("3DO", "Panasonic_FZ10_E", File("2765C7B4557CC838B32567D2428D088980295159", 1048576, "panafz10e-anvil-norsa.bin", "Panasonic FZ-10 (E) [ANVIL] (RSA check disabled)"));
Firmware("3DO", "Panasonic_FZ10_J", "Panasonic FZ-10 (J)");
Option("3DO", "Panasonic_FZ10_J", File("FE7F9C9C6A98910013BF13F2CF798DE9FEA52ACD", 1048576, "panafz10j.bin", "Panasonic FZ-10 (J)"), FirmwareOptionStatus.Ideal);
Firmware("3DO", "Goldstar_GDO101P", "Goldstar GDO-101P");
Option("3DO", "Goldstar_GDO101P", File("C4A2E5336F77FB5F743DE1EEA2CDA43675EE2DE7", 1048576, "goldstar.bin", "Goldstar GDO-101P"), FirmwareOptionStatus.Ideal);
Firmware("3DO", "Goldstar_FC1", "Goldstar FC-1");
Option("3DO", "Goldstar_FC1", File("8EF7503C948314D242DA47B7FDC272F68DAC2AEE", 1048576, "goldstar_fc1_enc.bin", "Goldstar FC-1 (encrypted)"), FirmwareOptionStatus.Ideal);
Firmware("3DO", "Sanyo_IMP21J_Try", "Sanyo IMP-21J Try");
Option("3DO", "Sanyo_IMP21J_Try", File("B01C53DA256DDE43FFEC4AD3FC3ADFA8D635E943", 1048576, "sanyotry.bin", "Sanyo IMP-21J Try"), FirmwareOptionStatus.Ideal);
Firmware("3DO", "Sanyo_HC21", "Sanyo HC-21");
Option("3DO", "Sanyo_HC21", File("C389AF32BCADF0D86826927DC3D20B7072F90069", 1048576, "sanyo_hc21_b3_unenc.bin", "Sanyo HC-21 B3 (unencrypted)"), FirmwareOptionStatus.Ideal);
Option("3DO", "Sanyo_HC21", File("29C40515DC1174FF13975BAA59EB532083E4A3D3", 1048576, "sanyo_hc21_alpha.bin", "Sanyo HC-21 (alpha 3/21/94)"));
Firmware("3DO", "Shootout_At_Old_Tucson", "(3DO Arcade) Shootout At Old Tucson");
Option("3DO", "Shootout_At_Old_Tucson", File("520D3D1B5897800AF47F92EFD2444A26B7A7DEAD", 524288, "3do_arcade_saot.bin", "Shootout At Old Tucson"), FirmwareOptionStatus.Ideal);
Firmware("3DO", "3DO_NTSC_1fc2", "3DO-NTSC-1.0fc2");
Option("3DO", "3DO_NTSC_1fc2", File("BD325C869E1DDE8A3872FC21565E0646A3D5B525", 1048576, "3do_devkit_1.0fc2.bin", "3DO-NTSC-1.0fc2 encrypted development kit"), FirmwareOptionStatus.Ideal);
Firmware("3DO", "Kanji_ROM_Panasonic_FZ1", "Kanji ROM for Panasonic FZ-1");
Option("3DO", "Kanji_ROM_Panasonic_FZ1", File("ACD39A8FEE1B9D2950D5AB447846C11FB31AF63E", 933636, "panafz1-kanji.bin", "Kanji ROM for Panasonic FZ-1 (J)"), FirmwareOptionStatus.Ideal);
Option("3DO", "Kanji_ROM_Panasonic_FZ1", File("884515605EE243577AB20767EF8C1A7368E4E407", 1048576, "panafz1j-kanji.bin", "Kanji ROM for Panasonic FZ-1 (J) / Panasonic FZ-10 (J)"));
Firmware("3DO", "Kanji_ROM_Panasonic_FZ10", "Kanji ROM for Panasonic FZ-10");
Option("3DO", "Kanji_ROM_Panasonic_FZ10", File("2E857B957803D0331FD229328DF01F3FFAB69EEE", 1048576, "panafz10ja-anvil-kanji.bin", "Kanji ROM for: Panasonic FZ-10 (J) [ANVIL]"), FirmwareOptionStatus.Ideal);
Option("3DO", "Kanji_ROM_Panasonic_FZ10", File("884515605EE243577AB20767EF8C1A7368E4E407", 1048576, "panafz1j-kanji.bin", "Kanji ROM for Panasonic FZ-1 (J) / Panasonic FZ-10 (J)"));
// 3DS
// bleh, undefined hash AND size...
FirmwareAndOption(SHA1Checksum.Dummy, 0, "3DS", "aes_keys", "aes_keys.txt", "AES Keys");
FirmwareAndOption(SHA1Checksum.Dummy, 0, "3DS", "seeddb", "seeddb.bin", "SEEDDB");
// Amiga
Firmware("Amiga", "A500", "A500 Kickstart");
Option("Amiga", "A500", File("891E9A547772FE0C6C19B610BAF8BC4EA7FCB785", 262144, "amiga-os-130.rom", "Kickstart v1.3 r34.005 (1987-12)(Commodore)(A500-A1000-A2000-CDTV)[!]"), FirmwareOptionStatus.Ideal);
Option("Amiga", "A500", File("11F9E62CF299F72184835B7B2A70A16333FC0D88", 262144, "amiga-os-120.rom", "Kickstart v1.2 r33.180 (1986-10)(Commodore)(A500-A1000-A2000)[!]"));
Option("Amiga", "A500", File("3B7F1493B27E212830F989F26CA76C02049F09CA", 524288, "amiga-os-310-a600.rom", "Kickstart v3.1 r40.063 (1993-07)(Commodore)(A500-A600-A2000)[!]"));
Firmware("Amiga", "A600", "A500+/A600/A600HD Kickstart");
Option("Amiga", "A600", File("02843C4253BBD29ABA535B0AA3BD9A85034ECDE4", 524288, "amiga-os-205-a600.rom", "Kickstart v2.05 r37.350 (1992-04)(Commodore)(A600HD)[!]"), FirmwareOptionStatus.Ideal);
Option("Amiga", "A600", File("C5839F5CB98A7A8947065C3ED2F14F5F42E334A1", 524288, "amiga-os-204.rom", "Kickstart v2.04 r37.175 (1991-05)(Commodore)(A500+)[!]"));
Option("Amiga", "A600", File("3B7F1493B27E212830F989F26CA76C02049F09CA", 524288, "amiga-os-310-a600.rom", "Kickstart v3.1 r40.063 (1993-07)(Commodore)(A500-A600-A2000)[!]"));
Firmware("Amiga", "A1200", "A1200 Kickstart");
Option("Amiga", "A1200", File("E21545723FE8374E91342617604F1B3D703094F1", 524288, "amiga-os-310-a1200.rom", "Kickstart v3.1 r40.068 (1993-12)(Commodore)(A1200)[!]"), FirmwareOptionStatus.Ideal);
Option("Amiga", "A1200", File("70033828182FFFC7ED106E5373A8B89DDA76FAA5", 524288, "amiga-os-300-a1200.rom", "Kickstart v3.0 r39.106 (1992-09)(Commodore)(A1200)[!]"));
Firmware("Amiga", "A4000", "A4000/A4000T Kickstart");
Option("Amiga", "A4000", File("5FE04842D04A489720F0F4BB0E46948199406F49", 524288, "amiga-os-310-a4000.rom", "Kickstart v3.1 r40.068 (1993-12)(Commodore)(A4000)[!]"), FirmwareOptionStatus.Ideal);
Option("Amiga", "A4000", File("F0B4E9E29E12218C2D5BD7020E4E785297D91FD7", 524288, "amiga-os-300-a4000.rom", "Kickstart v3.0 r39.106 (1992-09)(Commodore)(A4000)[!]"));
Option("Amiga", "A4000", File("B0EC8B84D6768321E01209F11E6248F2F5281A21", 524288, "amiga-os-310-a4000t.rom", "Kickstart v3.1 r40.070 (1994-02)(Commodore)(A4000T)[!]"));
Firmware("Amiga", "CD32", "CD32 Kickstart");
Option("Amiga", "CD32", File("3525BE8887F79B5929E017B42380A79EDFEE542D", 524288, "amiga-os-310-cd32.rom", "Kickstart v3.1 r40.060 (1993-05)(Commodore)(CD32)[!].rom"), FirmwareOptionStatus.Ideal);
Firmware("Amiga", "CD32ext", "CD32 Extended ROM");
Option("Amiga", "CD32ext", File("5BEF3D628CE59CC02A66E6E4AE0DA48F60E78F7F", 524288, "amiga-os-310-cd32-ext.rom", "CD32 Extended-ROM r40.60 (1993)(Commodore)(CD32).rom"), FirmwareOptionStatus.Ideal);
// A7800
Firmware("A78", "Bios_NTSC", "NTSC Bios");
#if false
Option("A78", "Bios_NTSC", File("CE236581AB7921B59DB95BA12837C22F160896CB", 4096, "A78_NTSC_speed_bios.bin", "NTSC Bios speed"));
#endif
Option("A78", "Bios_NTSC", File("D9D134BB6B36907C615A594CC7688F7BFCEF5B43", 4096, "A78_NTSC_bios.bin", "NTSC Bios"), FirmwareOptionStatus.Ideal);
FirmwareAndOption("5A140136A16D1D83E4FF32A19409CA376A8DF874", 16384, "A78", "Bios_PAL", "A78_PAL_BIOS.bin", "PAL Bios");
FirmwareAndOption("A3AF676991391A6DD716C79022D4947206B78164", 4096, "A78", "Bios_HSC", "A78_highscore.bin", "Highscore Bios");
// AppleII
Firmware("AppleII", "AppleIIe", "AppleIIe.rom");
var appleII_AppleIIe = File("B8EA90ABE135A0031065E01697C4A3A20D51198B", 16384, "AppleIIe.rom", "Apple II e");
Option("AppleII", "AppleIIe", in appleII_AppleIIe, FirmwareOptionStatus.Ideal);
Firmware("AppleII", "DiskII", "DiskII.rom");
var appleII_DiskII = File("D4181C9F046AAFC3FB326B381BAAC809D9E38D16", 256, "AppleIIe_DiskII.rom", "Disk II");
Option("AppleII", "DiskII", in appleII_DiskII, FirmwareOptionStatus.Ideal);
// C64
FirmwareAndOption("1D503E56DF85A62FEE696E7618DC5B4E781DF1BB", 8192, "C64", "Kernal", "C64_Kernal.bin", "Kernal Rom");
FirmwareAndOption("79015323128650C742A3694C9429AA91F355905E", 8192, "C64", "Basic", "C64_Basic.bin", "Basic Rom");
FirmwareAndOption("ADC7C31E18C7C7413D54802EF2F4193DA14711AA", 4096, "C64", "Chargen", "C64_Chargen.bin", "Chargen Rom");
FirmwareAndOption("AB16F56989B27D89BABE5F89C5A8CB3DA71A82F0", 16384, "C64", "Drive1541", "C64_Drive-1541.bin", "1541 Disk Drive Rom");
FirmwareAndOption("D3B78C3DBAC55F5199F33F3FE0036439811F7FB3", 16384, "C64", "Drive1541II", "C64_Drive-1541ii.bin", "1541-II Disk Drive Rom");
// Channel F
FirmwareAndOption("81193965A374D77B99B4743D317824B53C3E3C78", 1024, "ChannelF", "ChannelF_sl131253", "ChannelF_SL31253.rom", "Channel F BIOS (PSU1)");
FirmwareAndOption("8F70D1B74483BA3A37E86CF16C849D601A8C3D2C", 1024, "ChannelF", "ChannelF_sl131254", "ChannelF_SL31254.rom", "Channel F BIOS (PSU2)");
FirmwareAndOption("759E2ED31FBDE4A2D8DAF8B9F3E0DFFEBC90DAE2", 1024, "ChannelF", "ChannelF_sl90025", "ChannelF_sl90025.rom", "Channel F II BIOS (PSU1)");
// Coleco
FirmwareAndOption("45BEDC4CBDEAC66C7DF59E9E599195C778D86A92", 8192, "Coleco", "Bios", "Coleco_Bios.bin", "Bios");
// Doom
FirmwareAndOption("7EC7652FCFCE8DDC6E801839291F0E28EF1D5AE7", 14604584, "Doom", "Doom2_IWAD", "doom2.wad", "Base game for Doom 2 PWADs");
// GBA
var gbaNormal = File("300C20DF6731A33952DED8C436F7F186D25D3492", 16384, "GBA_bios.rom", "Bios (World)");
var gbaJDebug = File("AA98A2AD32B86106340665D1222D7D973A1361C7", 16384, "GBA_bios_Debug-(J).rom", "Bios (J Debug)");
Firmware("GBA", "Bios", "Bios");
Option("GBA", "Bios", in gbaNormal, FirmwareOptionStatus.Ideal);
Option("GBA", "Bios", in gbaJDebug);
// GB
Firmware("GB", "World", "Game Boy Boot Rom");
Option("GB", "World", File("4ED31EC6B0B175BB109C0EB5FD3D193DA823339F", 256, "GB_dmg.bin", "Game Boy Boot Rom"), FirmwareOptionStatus.Ideal);
// Early revisions of GB/C boot ROMs are not well-supported because the corresponding CPU differences are not emulated.
Option("GB", "World", File("8BD501E31921E9601788316DBD3CE9833A97BCBC", 256, "GB_dmg0.bin", "Game Boy Boot Rom (Early J Revision)"), FirmwareOptionStatus.Unacceptable);
Option("GB", "World", File("4E68F9DA03C310E84C523654B9026E51F26CE7F0", 256, "GB_mgb.bin", "Game Boy Boot Rom (Pocket)"), FirmwareOptionStatus.Acceptable);
FirmwarePatchData gbCommonPatchAt0xFD = new(0xFD, new byte[] { 0xFE }); // 2 pairs, all have either 0x01 or 0xFF at this octet
AddPatchAndMaybeReverse(new(
"4ED31EC6B0B175BB109C0EB5FD3D193DA823339F",
gbCommonPatchAt0xFD,
"4E68F9DA03C310E84C523654B9026E51F26CE7F0"));
// these are only used for supported SGB cores
// placed in GB as these are within the Game Boy side rather than the SNES side
Firmware("GB", "SGB", "Super Game Boy Boot Rom");
Option("GB", "SGB", File("AA2F50A77DFB4823DA96BA99309085A3C6278515", 256, "GB_sgb.bin", "Super Game Boy Boot Rom"), FirmwareOptionStatus.Ideal);
Firmware("GB", "SGB2", "Super Game Boy 2 Boot Rom");
Option("GB", "SGB2", File("93407EA10D2F30AB96A314D8ECA44FE160AEA734", 256, "GB_sgb2.bin", "Super Game Boy 2 Boot Rom"), FirmwareOptionStatus.Ideal);
AddPatchAndMaybeReverse(new(
"AA2F50A77DFB4823DA96BA99309085A3C6278515",
gbCommonPatchAt0xFD,
"93407EA10D2F30AB96A314D8ECA44FE160AEA734"));
// GBC
Firmware("GBC", "World", "Game Boy Color Boot Rom");
Option("GBC", "World", File("1293D68BF9643BC4F36954C1E80E38F39864528D", 2304, "GBC_cgb.bin", "Game Boy Color Boot Rom"), FirmwareOptionStatus.Ideal);
// CGB E models have the logo reading TOCTOU patched (only relevant for bootlegs that logo swap)
Option("GBC", "World", File("F5F33729A956131D9C44310F0AE3BB0599E9EC3E", 2304, "GBC_cgbE.bin", "Game Boy Color Boot Rom (Late Revision)"));
Option("GBC", "World", File("DF5A0D2D49DE38FBD31CC2AAB8E62C8550E655C0", 2304, "GBC_cgb0.bin", "Game Boy Color Boot Rom (Early Revision)"), FirmwareOptionStatus.Unacceptable);
Firmware("GBC", "AGB", "Game Boy Color Boot Rom (GBA)");
Option("GBC", "AGB", File("FA5287E24B0FA533B3B5EF2B28A81245346C1A0F", 2304, "GBC_agb.bin", "Game Boy Color Boot Rom (GBA)"), FirmwareOptionStatus.Ideal);
// early GBAs did not patch the logo reading TOCTOU (only relevant for bootlegs that logo swap)
Option("GBC", "AGB", File("0DAAC31ACB6CB346FC954368ACB02ACB3ADCC3AB", 2304, "GBC_agb0.bin", "Game Boy Color Boot Rom (GBA, Early Revision)"));
// functionally equal to agb0.bin (no TOCTOU patch)
Option("GBC", "AGB", File("1ECAFA77AB3172193F3305486A857F443E28EBD9", 2304, "GBC_agb_gambatte.bin", "Game Boy Color Boot Rom (GBA, Gambatte RE)"), FirmwareOptionStatus.Bad);
AddPatchAndMaybeReverse(new(
"1293D68BF9643BC4F36954C1E80E38F39864528D",
new FirmwarePatchData(0xF3, new byte[] { 0x03, 0x00, 0xCD, 0x1D, 0xD5, 0xAA, 0x4F, 0x90, 0x74 }),
"1ECAFA77AB3172193F3305486A857F443E28EBD9"));
// Genesis/CD
FirmwareAndOption("3F50B76B0529DB7F79C396B5E808CC0786FFC311", 2048, "GEN", "Boot", "GEN_boot.md", "Genesis Boot Rom (World)");
Firmware("GEN", "CD_BIOS_EU", "Mega CD Bios (Europe)");
Firmware("GEN", "CD_BIOS_JP", "Mega CD Bios (Japan)");
Firmware("GEN", "CD_BIOS_US", "Sega CD Bios (USA)");
var jp_mcda_211c = File("219D284DCF63CE366A4DC6D1FF767A0D2EEA283D", 131072, "MCD_aiwa_jp_211c.bin", "Mega CD Aiwa JP (v2.11c)");
var us_scd1_100 = File("C5C24E6439A148B7F4C7EA269D09B7A23FE25075", 131072, "SCD_m1_us_100.bin", "Sega CD Model 1 US (v1.00)");
var us_scd1_100_h = File("2F397218764502F184F23055055BC5728C71F259", 131072, "SCD_m1_us_100[h].bin", "Sega CD Model 1 US (v1.00) [h]", isBad: true);
var us_scd1_110 = File("F4F315ADCEF9B8FEB0364C21AB7F0EAF5457F3ED", 131072, "SCD_m1_us_110.bin", "Sega CD Model 1 US (v1.10)");
var us_scd2_200 = File("5A8C4B91D3034C1448AAC4B5DC9A6484FCE51636", 131072, "SCD_m2_us_200.bin", "Sega CD Model 2 US (v2.00)");
var us_scd2_200_b = File("BD3EE0C8AB732468748BF98953603CE772612704", 131072, "SCD_m2_us_200[b].bin", "Sega CD Model 2 US (v2.00) [b]", isBad: true);
var us_scd2_200w = File("5ADB6C3AF218C60868E6B723EC47E36BBDF5E6F0", 131072, "SCD_m2_us_200w.bin", "Sega CD Model 2 US (v2.00w)");
var us_scd2_200w_b = File("27358448FE5514C90AC25430851EF075B7ADC0DB", 131072, "SCD_m2_us_200w[b].bin", "Sega CD Model 2 US (v2.00w) [b]", isBad: true);
var us_scd2_211x = File("328A3228C29FBA244B9DB2055ADC1EC4F7A87E6B", 131072, "SCD_m2_us_211x.bin", "Sega CD Model 2 US (v2.11x)");
var us_scd2_211x_b = File("0CCB6A3589F2FA6E70BD4996578AD106B8C6D35C", 131072, "SCD_m2_us_211x[b].bin", "Sega CD Model 2 US (v2.11x) [b]", isBad: true);
var us_gcdx_221x = File("2B125C0545AFA089B617F2558E686EA723BDC06E", 131072, "GCDX_us_221x.bin", "Genesis CDX US (v2.21x)");
var us_gcdx_221x_b = File("830B414197F388DA0ABF2B5FF55DAFC84781D9E5", 131072, "GCDX_us_221x[b].bin", "Genesis CDX US (v2.21x) [b]", isBad: true);
var jp_mcd2_200c = File("D203CFE22C03AE479DD8CA33840CF8D9776EB3FF", 131072, "MCD_2_jp_200c.bin", "Mega CD 2 JP (v2.00c)");
var jp_mcd2_200c_b2 = File("DC68146AD1FF50FAEEB2A3F685FAB1A2961DABB2", 131072, "MCD_2_jp_200c[b2].bin", "Mega CD 2 JP (v2.00c) [b2]", isBad: true);
var jp_mcd2_200c_b = File("762D20EBB85B980C17C53F928C002D747920A281", 131072, "MCD_2_jp_200c[b].bin", "Mega CD 2 JP (v2.00c) [b]", isBad: true);
var eu_mcd_100 = File("F891E0EA651E2232AF0C5C4CB46A0CAE2EE8F356", 131072, "MCD_eu_100.bin", "Mega CD EU (v1.00)");
var jp_mcd_100g = File("6A40A5CEC00C3B49A4FD013505C5580BAA733A29", 131072, "MCD_jp_100g.bin", "Mega CD JP (v1.00g)");
var jp_mcd_100l = File("0D5485E67C3F033C41D677CC9936AFD6AD618D5F", 131072, "MCD_jp_100l.bin", "Mega CD JP (v1.00l)");
var jp_mcd_100o = File("9E1495E62B000E1E1C868C0F3B6982E1ABBB8A94", 131072, "MCD_jp_100o.bin", "Mega CD JP (v1.00o)");
var jp_mcd_100p = File("4846F448160059A7DA0215A5DF12CA160F26DD69", 131072, "MCD_jp_100p.bin", "Mega CD JP (v1.00p)");
var jp_mcd_100p_b = File("2BD871E53960BC0202C948525C02584399BC2478", 131074, "MCD_jp_100p[b].bin", "Mega CD JP (v1.00p) [b]", isBad: true);
var as_mcd_100s = File("E4193C6AE44C3CEA002707D2A88F1FBCCED664DE", 131072, "MCD_as_100s.bin", "Mega CD AS (v1.00s)");
var jp_mcd_100s = File("230EBFC49DC9E15422089474BCC9FA040F2C57EB", 131072, "MCD_jp_100s.bin", "Mega CD JP (v1.00s)");
var eu_mcdii_200 = File("7063192AE9F6B696C5B81BC8F0A9FE6F0C400E58", 131072, "MCD_eu_200.bin", "Mega CD II EU (v2.00)");
var eu_mcdii_200_b2 = File("CFCF092E0A70779FC5912DA0FBD154838DF997DA", 131072, "MCD_eu_200[b2].bin", "Mega CD II EU (v2.00) [b2]", isBad: true);
var eu_mcdii_200_b = File("0CBA6B33B306A293471D3697CF30F2A4D20673EB", 131072, "MCD_eu_200[b].bin", "Mega CD II EU (v2.00) [b]", isBad: true);
var eu_mcdii_200w = File("F5F60F03501908962446EE02FC27D98694DD157D", 131072, "MCD_eu_200w.bin", "Mega CD II EU (v2.00w)");
var eu_mcdii_200w_b2 = File("45134EF8655B9D06B130726786EFE2F8B1D430A3", 131072, "MCD_eu_200w[b2].bin", "Mega CD II EU (v2.00w) [b2]", isBad: true);
var eu_mcdii_200w_b = File("523B3125FB0AC094E16AA072BC6CCDCA22E520E5", 131072, "MCD_eu_200w[b].bin", "Mega CD II EU (v2.00w) [b]", isBad: true);
var eu_mm_221x = File("75548AC9AAA6E81224499F9A1403B2B42433F5B7", 131072, "MM_eu_221x.bin", "Multi Mega EU (v2.21x)");
var eu_mm_221x_b2 = File("73FC9C014AD803E9E7D8076B3642A8A5224B3E51", 131072, "MM_eu_221x[b].bin", "Multi Mega EU (v2.21x) [b]", isBad: true);
var jp_wm_m2 = File("B3F32E409BD5508C89ED8BE33D41A58D791D0E5D", 131072, "WM_jp_m2.bin", "Wondermega M2 JP");
var jp_wm_100W = File("3FC9358072F74BD24E3E297EA11B2BF15A7AF891", 131072, "WM_jp_100W.bin", "Wondermega JP (v1.00W)");
var us_xeye = File("651F14D5A5E0ECB974A60C0F43B1D2006323FB09", 131072, "XEye_us.bin", "X'Eye US");
var us_la_104 = File("AA811861F8874775075BD3F53008C8AAF59B07DB", 131072, "LA_us_104.bin", "LaserActive US (v1.04)");
var jp_la_105 = File("B3B1D880E288B6DC79EEC0FF1B0480C229EC141D", 131072, "LA_jp_105.bin", "LaserActive JP (v1.05)");
var jp_la_102 = File("26237B333DB4A4C6770297FA5E655EA95840D5D9", 131072, "LA_jp_102.bin", "LaserActive JP (v1.02)");
var us_la_102 = File("8AF162223BB12FC19B414F126022910372790103", 131072, "LA_us_102.bin", "LaserActive US (v1.02)");
var jp_mcd_111b = File("204758D5A64C24E96E1A9FE6BD82E1878FEF7ADE", 131072, "MCD_jp_111b.bin", "Mega CD JP (v1.11b)");
var jp_mcd_reva = File("062E6A912E3683F7F127CBFD6314B44F93C42DB7", 131072, "MCD_jp_reva.bin", "Mega CD JP (Rev A)");
var jp_mcd_beta = File("F30D109D1C2F7C9FEAF38600C65834261DB73D1F", 131072, "MCD_jp_beta.bin", "Mega CD JP (Beta)");
var eu_mcd_221 = File("9DE4EDA59F544DB2D5FD7E6514601F7B648D8EB4", 131072, "MCD_eu_221.bin", "Mega CD EU (v2.21)");
Option("GEN", "CD_BIOS_EU", in eu_mcd_100, FirmwareOptionStatus.Ideal);
Option("GEN", "CD_BIOS_EU", in eu_mcdii_200);
Option("GEN", "CD_BIOS_EU", in eu_mcdii_200_b2);
Option("GEN", "CD_BIOS_EU", in eu_mcdii_200_b);
Option("GEN", "CD_BIOS_EU", in eu_mcdii_200w);
Option("GEN", "CD_BIOS_EU", in eu_mcdii_200w_b2);
Option("GEN", "CD_BIOS_EU", in eu_mcdii_200w_b);
Option("GEN", "CD_BIOS_EU", in eu_mm_221x);
Option("GEN", "CD_BIOS_EU", in eu_mm_221x_b2);
Option("GEN", "CD_BIOS_EU", in eu_mcd_221);
Option("GEN", "CD_BIOS_JP", in jp_mcda_211c);
Option("GEN", "CD_BIOS_JP", in jp_mcd2_200c);
Option("GEN", "CD_BIOS_JP", in jp_mcd2_200c_b2);
Option("GEN", "CD_BIOS_JP", in jp_mcd2_200c_b);
Option("GEN", "CD_BIOS_JP", in jp_mcd_100g);
Option("GEN", "CD_BIOS_JP", in jp_mcd_100l);
Option("GEN", "CD_BIOS_JP", in jp_mcd_100o);
Option("GEN", "CD_BIOS_JP", in jp_mcd_100p, FirmwareOptionStatus.Ideal);
Option("GEN", "CD_BIOS_JP", in jp_mcd_100p_b);
Option("GEN", "CD_BIOS_JP", in as_mcd_100s);
Option("GEN", "CD_BIOS_JP", in jp_mcd_100s);
Option("GEN", "CD_BIOS_JP", in jp_wm_m2);
Option("GEN", "CD_BIOS_JP", in jp_wm_100W);
Option("GEN", "CD_BIOS_JP", in jp_la_105);
Option("GEN", "CD_BIOS_JP", in jp_la_102);
Option("GEN", "CD_BIOS_JP", in jp_mcd_111b);
Option("GEN", "CD_BIOS_JP", in jp_mcd_reva);
Option("GEN", "CD_BIOS_JP", in jp_mcd_beta);
Option("GEN", "CD_BIOS_US", in us_scd1_100);
Option("GEN", "CD_BIOS_US", in us_scd1_100_h);
Option("GEN", "CD_BIOS_US", in us_scd1_110, FirmwareOptionStatus.Ideal);
Option("GEN", "CD_BIOS_US", in us_scd2_200);
Option("GEN", "CD_BIOS_US", in us_scd2_200_b);
Option("GEN", "CD_BIOS_US", in us_scd2_200w);
Option("GEN", "CD_BIOS_US", in us_scd2_200w_b);
Option("GEN", "CD_BIOS_US", in us_scd2_211x);
Option("GEN", "CD_BIOS_US", in us_scd2_211x_b);
Option("GEN", "CD_BIOS_US", in us_gcdx_221x);
Option("GEN", "CD_BIOS_US", in us_gcdx_221x_b);
Option("GEN", "CD_BIOS_US", in us_xeye);
Option("GEN", "CD_BIOS_US", in us_la_104);
Option("GEN", "CD_BIOS_US", in us_la_102);
// GG
FirmwareAndOption("914AA165E3D879F060BE77870D345B60CFEB4EDE", 1024, "GG", "Majesco", "GG_majesco.gg", "GG BIOS (USA/Majesco)");
// INTV
FirmwareAndOption("5A65B922B562CB1F57DAB51B73151283F0E20C7A", 8192, "INTV", "EROM", "INTV_EROM.bin", "Executive Rom");
FirmwareAndOption("F9608BB4AD1CFE3640D02844C7AD8E0BCD974917", 2048, "INTV", "GROM", "INTV_GROM.bin", "Graphics Rom");
// Lynx
FirmwareAndOption("E4ED47FAE31693E016B081C6BDA48DA5B70D7CCB", 512, "Lynx", "Boot", "Atari_LYNX_boot.img", "Boot Rom");
// MSX
FirmwareAndOption("2F997E8A57528518C82AB3693FDAE243DBBCC508", 32768, "MSX", "bios_test_ext", "MSX_cbios_main_msx1.rom", "MSX BIOS (C-BIOS v0.29a)");
//FirmwareAndOption("E998F0C441F4F1800EF44E42CD1659150206CF79", 16384, "MSX", "bios_pal", "MSX_8020-20bios.rom", "MSX BIOS (Philips VG-8020)");
//FirmwareAndOption("DF48902F5F12AF8867AE1A87F255145F0E5E0774", 16384, "MSX", "bios_jp", "MSX_4000bios.rom", "MSX BIOS (FS-4000)");
FirmwareAndOption("409E82ADAC40F6BDD18EB6C84E8B2FBDC7FB5498", 32768, "MSX", "bios_basic_usa", "MSX.rom", "MSX BIOS and BASIC");
FirmwareAndOption("3656BB3BBC17D280D2016FE4F6FF3CDED3082A41", 32768, "MSX", "bios_basic_usa", "MSX_1.0.rom", "MSX 1.0 BIOS and BASIC");
FirmwareAndOption("302AFB5D8BE26C758309CA3DF611AE69CCED2821", 32768, "MSX", "bios_basic_jpn", "MSX_jpn.rom", "MSX 1.0 JPN BIOS and BASIC");
// N64DD
Firmware("N64DD", "IPL_JPN", "N64DD Japan IPL");
var ddv10 = File("58670C0063793A8F3BE957D71D937B618829BA9E", 4 * 1024 * 1024, "64DD_IPL_v10_JPN.bin", "N64DD JPN IPL v1.0 (Beta)");
var ddv11 = File("B3E26DBB4E945F78C918FABC5B9E60FCF262C47B", 4 * 1024 * 1024, "64DD_IPL_v11_JPN.bin", "N64DD JPN IPL v1.1 (Beta)");
var ddv12 = File("BF861922DCB78C316360E3E742F4F70FF63C9BC3", 4 * 1024 * 1024, "64DD_IPL_v12_JPN.bin", "N64DD JPN IPL v1.2 (Retail)");
Option("N64DD", "IPL_JPN", in ddv10, FirmwareOptionStatus.Unacceptable);
Option("N64DD", "IPL_JPN", in ddv11, FirmwareOptionStatus.Unacceptable);
Option("N64DD", "IPL_JPN", in ddv12, FirmwareOptionStatus.Ideal);
FirmwareAndOption("10C4173C2A7EB09C6579818F72EF18FA0B6D32DE", 4 * 1024 * 1024, "N64DD", "IPL_DEV", "64DD_IPL_DEV.bin", "N64DD Development IPL");
FirmwareAndOption("3C5B93CA231550C68693A14F03CEA8D5DBD1BE9E", 4 * 1024 * 1024, "N64DD", "IPL_USA", "64DD_IPL_USA.bin", "N64DD Prototype USA IPL");
// NDS/i
FirmwareAndOption("24F67BDEA115A2C847C8813A262502EE1607B7DF", 16384, "NDS", "bios7", "NDS_Bios7.bin", "ARM7 BIOS");
FirmwareAndOption("BFAAC75F101C135E32E2AAF541DE6B1BE4C8C62D", 4096, "NDS", "bios9", "NDS_Bios9.bin", "ARM9 BIOS");
// CHECKME: bios7i supposedly is different due to crypto keys and such, but yet it seems to work for various different NAND dumps?
// supposedly two different systems dumped the same bios7i too? (according to nointro)
FirmwareAndOption("C7C7570BFE51C3C7C5DA3B01331B94E7E7CB4F53", 65536, "NDS", "bios7i", "NDS_Bios7i.bin", "ARM7i BIOS");
// full hash according to nointro, although incomplete dumps work just as well...
FirmwareAndOption("719B9EEF33692406D7170FF526069615759C4DFC", 65536, "NDS", "bios9i", "NDS_Bios9i.bin", "ARM9i BIOS");
Firmware("NDS", "firmware", "NDS Firmware");
// throwing a ton of hashes from various reported firmware
// TODO: Probably should just add in no-intro hashes
var knownhack1 = File("22A7547DBC302BCBFB4005CFB5A2D426D3F85AC6", 262144, "NDS_Firmware [b1].bin", "NDS Firmware", "known hack", true);
var knownhack2 = File("AE22DE59FBF3F35CCFBEACAEBA6FA87AC5E7B14B", 262144, "NDS_Firmware [b2].bin", "NDS Firmware", "known hack", true);
var knownhack3 = File("1CF9E67C2C703BB9961BBCDD39CD2C7E319A803B", 262144, "NDS_Firmware [b3].bin", "NDS Firmware", "known hack", true);
var likelygood1 = File("EDE9ADD041614EAA232059C63D8613B83FE4E954", 262144, "NDS_Firmware_1.bin", "NDS Firmware", "likely good");
var likelygood2 = File("2EF20B45D12CF00657D4B1BD37A5CC8506923440", 262144, "NDS_Firmware_2.bin", "NDS Firmware", "likely good");
var likelygood3 = File("87DAE2500E889737AF51F4A5B5845770A62482F5", 262144, "NDS_Lite_Firmware.bin", "NDS-Lite Firmware", "likely good");
Option("NDS", "firmware", in knownhack1);
Option("NDS", "firmware", in knownhack2);
Option("NDS", "firmware", in knownhack3);
Option("NDS", "firmware", in likelygood1);
Option("NDS", "firmware", in likelygood2);
Option("NDS", "firmware", in likelygood3, FirmwareOptionStatus.Ideal);
// really, this is pointless, firmwarei would just contain user settings for old DS mode? some wifi settings too? (maybe some crypto keys?)
FirmwareAndOption(SHA1Checksum.Dummy, 131072, "NDS", "firmwarei", "DSi_Firmware.bin", "DSi Firmware");
// options for each region due to region locking of the DSi
// also, the sizes include the "nocash footer" which contains the eMMC CID and CPU/Console ID
FirmwareAndOption(SHA1Checksum.Dummy, 251658240 + 64, "NDS", "NAND_JPN", "DSi_Nand_JPN.bin", "DSi NAND (Japan)");
FirmwareAndOption(SHA1Checksum.Dummy, 251658240 + 64, "NDS", "NAND_EUR", "DSi_Nand_EUR.bin", "DSi NAND (Europe)");
FirmwareAndOption(SHA1Checksum.Dummy, 251658240 + 64, "NDS", "NAND_USA", "DSi_Nand_USA.bin", "DSi NAND (USA)");
FirmwareAndOption(SHA1Checksum.Dummy, 251658240 + 64, "NDS", "NAND_AUS", "DSi_Nand_AUS.bin", "DSi NAND (Australia)");
FirmwareAndOption(SHA1Checksum.Dummy, 251658240 + 64, "NDS", "NAND_CHN", "DSi_Nand_CHN.bin", "DSi NAND (China)");
FirmwareAndOption(SHA1Checksum.Dummy, 251658240 + 64, "NDS", "NAND_KOR", "DSi_Nand_KOR.bin", "DSi NAND (Korea)");
// NES
// FDS has two OK variants (http://tcrf.net/Family_Computer_Disk_System)
var fdsNintendo = File("57FE1BDEE955BB48D357E463CCBF129496930B62", 8192, "FDS_disksys-nintendo.rom", "Bios (Nintendo)");
var fdsTwinFc = File("E4E41472C454F928E53EB10E0509BF7D1146ECC1", 8192, "FDS_disksys-twinfc.rom", "Bios (TwinFC)");
Firmware("NES", "Bios_FDS", "Bios");
Option("NES", "Bios_FDS", in fdsNintendo, FirmwareOptionStatus.Ideal);
Option("NES", "Bios_FDS", in fdsTwinFc);
// O2
FirmwareAndOption("B2E1955D957A475DE2411770452EFF4EA19F4CEE", 1024, "O2", "BIOS-O2", "O2_Odyssey2.bin", "Odyssey 2 Bios");
FirmwareAndOption("A6120AED50831C9C0D95DBDF707820F601D9452E", 1024, "O2", "BIOS-C52", "O2_PhillipsC52.bin", "Phillips C52 Bios");
FirmwareAndOption("5130243429B40B01A14E1304D0394B8459A6FBAE", 1024, "O2", "BIOS-G7400", "O2_G7400_bios.bin", "G7400 Bios");
// PCECD
FirmwareAndOption("79F5FF55DD10187C7FD7B8DAAB0B3FFBD1F56A2C", 262144, "PCECD", "Bios", "PCECD_3.0-(J).pce", "Super CD Bios (J)");
FirmwareAndOption("014881A959E045E00F4DB8F52955200865D40280", 32768, "PCECD", "GE-Bios", "PCECD_gecard.pce", "Games Express CD Card (Japan)");
// PCFX
Firmware("PCFX", "BIOS", "PCFX bios");
var pcfxbios = File("1A77FD83E337F906AECAB27A1604DB064CF10074", 1024 * 1024, "PCFX_bios.bin", "PCFX BIOS 1.00");
var pcfxv101 = File("8B662F7548078BE52A871565E19511CCCA28C5C8", 1024 * 1024, "PCFX_v101.bin", "PCFX BIOS 1.01");
Option("PCFX", "BIOS", in pcfxbios, FirmwareOptionStatus.Ideal);
Option("PCFX", "BIOS", in pcfxv101, FirmwareOptionStatus.Acceptable);
Firmware("PCFX", "SCSIROM", "fx-scsi.rom");
var fxscsi = File("65482A23AC5C10A6095AEE1DB5824CCA54EAD6E5", 512 * 1024, "PCFX_fx-scsi.rom", "PCFX SCSI ROM");
Option("PCFX", "SCSIROM", in fxscsi, FirmwareOptionStatus.Ideal);
// PSX
// http://forum.fobby.net/index.php?t=msg&goto=2763 [f]
// http://www.psxdev.net/forum/viewtopic.php?f=69&t=56 [p]
// https://en.wikipedia.org/wiki/PlayStation_models#Comparison_of_models [w]
// https://github.com/petrockblog/RetroPie-Setup/wiki/PCSX-Core-Playstation-1 [g]
// http://redump.org/datfile/psx-bios/ also
// http://emulation.gametechwiki.com/index.php/File_Hashes [t]
var ps_10j = File("343883A7B555646DA8CEE54AADD2795B6E7DD070", 524288, "PSX_1.0(J).bin", "PSX BIOS (Version 1.0 J)", "Used on SCPH-1000, DTL-H1000 [g]. This is Rev for A hardware [w].");
var ps_11j = File("B06F4A861F74270BE819AA2A07DB8D0563A7CC4E", 524288, "PSX_1.1(J).bin", "PSX BIOS (Version 1.1 01/22/95)", "Used on SCPH-3000, DTL-H1000H [g]. This is for Rev B hardware [w].");
var ps_20a = File("649895EFD79D14790EABB362E94EB0622093DFB9", 524288, "PSX_2.0(A).bin", "PSX BIOS (Version 2.0 05/07/95 A)", "Used on DTL-H1001 [g]. This is for Rev B hardware [w].");
var ps_20e = File("20B98F3D80F11CBF5A7BFD0779B0E63760ECC62C", 524288, "PSX_2.0(E).bin", "PSX BIOS (Version 2.0 05/10/95 E)", "Used on DTL-H1002, SCPH-1002 [g]. This is for Rev B hardware [w].");
var ps_21j = File("E38466A4BA8005FBA7E9E3C7B9EFEBA7205BEE3F", 524288, "PSX_2.1(J).bin", "PSX BIOS (Version 2.1 07/17/95 J)", "Used on SCPH-3500 [g]. This is for Rev B hardware [w].");
var ps_21a = File("CA7AF30B50D9756CBD764640126C454CFF658479", 524288, "PSX_2.1(A).bin", "PSX BIOS (Version 2.1 07/17/95 A)", "Used on DTL-H1101 [g]. This is for Rev B hardware, presumably.");
var ps_21e = File("76CF6B1B2A7C571A6AD07F2BAC0DB6CD8F71E2CC", 524288, "PSX_2.1(E).bin", "PSX BIOS (Version 2.1 07/17/95 E)", "Used on SCPH-1002, DTL-H1102 [g]. This is for Rev B hardware [w].");
var ps_22j = File("FFA7F9A7FB19D773A0C3985A541C8E5623D2C30D", 524288, "PSX_2.2(J).bin", "PSX BIOS (Version 2.2 12/04/95 J)", "Used on SCPH-5000, DTL-H1200, DTL-H3000 [g]. This is for Rev C hardware [w].");
var ps_22j_bad = File("E340DB2696274DDA5FDC25E434A914DB71E8B02B", 524288, "PSX_2.2(J)-bad.bin", "(bad dump) PSX BIOS (Version 2.2 12/04/95 J)", "BAD DUMP OF SCPH-5000. Found on [p].", isBad: true);
var ps_22j_bad2 = File("81622ACE63E25696A5D884692E554D350DDF57A6", 526083, "PSX_2.2(J)-bad2.bin", "(bad dump) PSX BIOS (Version 2.2 12/04/95 J)", "BAD DUMP OF SCPH-5000.", isBad: true);
var ps_22a = File("10155D8D6E6E832D6EA66DB9BC098321FB5E8EBF", 524288, "PSX_2.2(A).bin", "PSX BIOS (Version 2.2 12/04/95 A)", "Used on SCPH-1001, DTL-H1201, DTL-H3001 [g]. This is for Rev C hardware [w].");
var ps_22e = File("B6A11579CAEF3875504FCF3831B8E3922746DF2C", 524288, "PSX_2.2(E).bin", "PSX BIOS (Version 2.2 12/04/95 E)", "Used on SCPH-1002, DTL-H1202, DTL-H3002 [g]. This is for Rev C hardware [w].");
var ps_22d = File("73107D468FC7CB1D2C5B18B269715DD889ECEF06", 524288, "PSX_2.2(D).bin", "PSX BIOS (Version 2.2 03/06/96 D)", "Used on DTL-H1100 [g]. This is for Rev C hardware, presumably.");
var ps_22jv = File("15C94DA3CC5A38A582429575AF4198C487FE893C", 1048576, "PSX_2.2(J)-V.bin", "PSX BIOS (Version 2.2 12/04/95 J)", "Used on SCPH-5903 [t].");
var ps_30j = File("B05DEF971D8EC59F346F2D9AC21FB742E3EB6917", 524288, "PSX_3.0(J).bin", "PSX BIOS (Version 3.0 09/09/96 J)", "Used on SCPH-5500 [g]. This is for Rev C hardware [w]. Recommended for (J) [f].");
var ps_30a = File("0555C6FAE8906F3F09BAF5988F00E55F88E9F30B", 524288, "PSX_3.0(A).bin", "PSX BIOS (Version 3.0 11/18/96 A)", "Used on SCPH-5501, SCPH-5503, SCPH-7003 [g]. This is for Rev C hardware [w]. Recommended for (U) [f].");
var ps_30e = File("F6BC2D1F5EB6593DE7D089C425AC681D6FFFD3F0", 524288, "PSX_3.0(E).bin", "PSX BIOS (Version 3.0 01/06/97 E)", "Used on SCPH-5502, SCPH-5552 [g]. This is for Rev C hardware [w]. Recommended for (E) [f].");
var ps_30e_bad = File("F8DE9325FC36FCFA4B29124D291C9251094F2E54", 524288, "PSX_3.0(E)-bad.bin", "PSX BIOS (Version 3.0 01/06/97 E)", "BAD DUMP OF SCPH-5502. Found on [p].", isBad: true);
var ps_40j = File("77B10118D21AC7FFA9B35F9C4FD814DA240EB3E9", 524288, "PSX_4.0(J).bin", "PSX BIOS (Version 4.0 08/18/97 J)", "Used on SCPH-7000, SCPH-7500, SCPH-9000 [g]. This is for Rev C hardware [w].");
var ps_41a = File("14DF4F6C1E367CE097C11DEAE21566B4FE5647A9", 524288, "PSX_4.1(A).bin", "PSX BIOS (Version 4.1 12/16/97 A)", "Used on SCPH-7001, SCPH-7501, SCPH-7503, SCPH-9001, SCPH-9003, SCPH-9903 [g]. This is for Rev C hardware [w].");
var ps_41e = File("8D5DE56A79954F29E9006929BA3FED9B6A418C1D", 524288, "PSX_4.1(E).bin", "PSX BIOS (Version 4.1 12/16/97 E)", "Used on SCPH-7002, SCPH-7502, SCPH-9002 [g]. This is for Rev C hardware [w].");
var ps_41aw = File("1B0DBDB23DA9DC0776AAC58D0755DC80FEA20975", 524288, "PSX_4.1(A)-W.bin", "PSX BIOS (Version 4.1 11/14/97 A)", "Used on SCPH-7000W [t].");
var psone_43j = File("339A48F4FCF63E10B5B867B8C93CFD40945FAF6C", 524288, "PSX_4.3(J).bin", "PSX BIOS (Version 4.3 03/11/00 J)", "Used on PSone SCPH-100 [g]. This is for Rev C PSone hardware [w].");
var psone_44e = File("BEB0AC693C0DC26DAF5665B3314DB81480FA5C7C", 524288, "PSX_4.4(E).bin", "PSX BIOS (Version 4.4 03/24/00 E)", "Used on PSone SCPH-102 [g]. This is for Rev C PSone hardware [w].");
var psone_45a = File("DCFFE16BD90A723499AD46C641424981338D8378", 524288, "PSX_4.5(A).bin", "PSX BIOS (Version 4.5 05/25/00 A)", "Used on PSone SCPH-101 [g]. This is for Rev C PSone hardware [w].");
var psone_r5e = File("DBC7339E5D85827C095764FC077B41F78FD2ECAE", 524288, "PSX_4.5(E).bin", "PSX BIOS (Version 4.5 05/25/00 E)", "Used on PSone SCPH-102 [g]. This is for Rev C PSone hardware [w].");
var ps2_50j = File("D7D6BE084F51354BC951D8FA2D8D912AA70ABC5E", 4194304, "PSX_5.0(J).bin", "PSX BIOS (Version 5.0 10/27/00 J)", "Found on a PS2 [p]. May be known as SCPH18000.BIN.");
var ps_dtl_h2000 = File("1A8D6F9453111B1D317BB7DAE300495FBF54600C", 524288, "PSX_DTLH2000.bin", "DTL-H2000 Devkit [t]");
var psxOnPSP = File("96880D1CA92A016FF054BE5159BB06FE03CB4E14", 524288, "PSXONPSP660.BIN", "PSX on PSP", "From PSP. Allegedly based on PSone v4.5 BIOS.");
var ps_ps3 = File("C40146361EB8CF670B19FDC9759190257803CAB7", 524288, "PSX_rom.bin", "PSX BIOS (Version 5.0 06/23/03 A)", "Found on a PS3. [t]");
Firmware("PSX", "U", "BIOS (U)");
Firmware("PSX", "J", "BIOS (J)");
Firmware("PSX", "E", "BIOS (E)");
Option("PSX", "U", in ps_30a, FirmwareOptionStatus.Ideal);
Option("PSX", "J", in ps_30j, FirmwareOptionStatus.Ideal);
Option("PSX", "E", in ps_30e, FirmwareOptionStatus.Ideal);
// in general, alternates aren't allowed.. their quality isn't known.
// we have this comment from fobby.net: "SCPH7502 works fine for European games" (TBD)
// however, we're sticking with the 3.0 series.
// please note: 2.1 or 2.2 would be a better choice, as the dates are the same and the bioses are more likely to matching in terms of entry points and such.
// but 3.0 is what mednafen used
Option("PSX", "J", in ps_10j, FirmwareOptionStatus.Unacceptable);
Option("PSX", "J", in ps_11j, FirmwareOptionStatus.Unacceptable);
Option("PSX", "U", in ps_20a, FirmwareOptionStatus.Unacceptable);
Option("PSX", "E", in ps_20e, FirmwareOptionStatus.Unacceptable);
Option("PSX", "J", in ps_21j, FirmwareOptionStatus.Unacceptable);
Option("PSX", "U", in ps_21a, FirmwareOptionStatus.Unacceptable);
Option("PSX", "E", in ps_21e, FirmwareOptionStatus.Unacceptable);
Option("PSX", "J", in ps_22j, FirmwareOptionStatus.Unacceptable);
Option("PSX", "J", in ps_22j_bad, FirmwareOptionStatus.Bad);
Option("PSX", "J", in ps_22j_bad2, FirmwareOptionStatus.Bad);
Option("PSX", "U", in ps_22a, FirmwareOptionStatus.Unacceptable);
Option("PSX", "E", in ps_22e, FirmwareOptionStatus.Unacceptable);
Option("PSX", "J", in ps_22d, FirmwareOptionStatus.Unacceptable);
Option("PSX", "E", in ps_30e_bad, FirmwareOptionStatus.Bad);
Option("PSX", "J", in ps_40j, FirmwareOptionStatus.Unacceptable);
Option("PSX", "U", in ps_41a, FirmwareOptionStatus.Unacceptable);
Option("PSX", "E", in ps_41e, FirmwareOptionStatus.Unacceptable);
Option("PSX", "J", in psone_43j, FirmwareOptionStatus.Unacceptable);
Option("PSX", "E", in psone_44e, FirmwareOptionStatus.Unacceptable);
Option("PSX", "U", in psone_45a, FirmwareOptionStatus.Unacceptable);
Option("PSX", "E", in psone_r5e, FirmwareOptionStatus.Unacceptable);
Option("PSX", "J", in ps2_50j, FirmwareOptionStatus.Unacceptable);
Option("PSX", "J", in ps_22jv, FirmwareOptionStatus.Unacceptable);
Option("PSX", "U", in ps_41aw, FirmwareOptionStatus.Unacceptable);
Option("PSX", "U", in psxOnPSP, FirmwareOptionStatus.Unacceptable);
Option("PSX", "E", in psxOnPSP, FirmwareOptionStatus.Unacceptable); // doesn't work w/ PAL titles
Option("PSX", "J", in psxOnPSP, FirmwareOptionStatus.Unacceptable);
Option("PSX", "U", in ps_ps3, FirmwareOptionStatus.Unacceptable);
Option("PSX", "U", in ps_dtl_h2000, FirmwareOptionStatus.Unacceptable); //not really sure what to do with this one, let's just call it region free
Option("PSX", "E", in ps_dtl_h2000, FirmwareOptionStatus.Unacceptable);
Option("PSX", "J", in ps_dtl_h2000, FirmwareOptionStatus.Unacceptable);
// Saturn
var ss_100_j = File("2B8CB4F87580683EB4D760E4ED210813D667F0A2", 524288, "SAT_1.00-(J).bin", "Bios v1.00 (J)");
var ss_100_ue = File("FAA8EA183A6D7BBE5D4E03BB1332519800D3FBC3", 524288, "SAT_1.00-(U+E).bin", "Bios v1.00 (U+E)");
var ss_100a_ue = File("3BB41FEB82838AB9A35601AC666DE5AACFD17A58", 524288, "SAT_1.00a-(U+E).bin", "Bios v1.00a (U+E)");
var ss_101_j = File("DF94C5B4D47EB3CC404D88B33A8FDA237EAF4720", 524288, "SAT_1.01-(J).bin", "Bios v1.01 (J)");
// set mednafen's preferred bios files to ideal (we'll consider other known bios files to be acceptable)
Firmware("SAT", "J", "Bios (J)");
Option("SAT", "J", in ss_100_j);
Option("SAT", "J", in ss_101_j, FirmwareOptionStatus.Ideal);
Firmware("SAT", "U", "Bios (U)");
Option("SAT", "U", in ss_100_ue, FirmwareOptionStatus.Ideal);
Option("SAT", "U", in ss_100a_ue);
Firmware("SAT", "E", "Bios (E)");
Option("SAT", "E", in ss_100_ue, FirmwareOptionStatus.Ideal);
Option("SAT", "E", in ss_100a_ue);
FirmwareAndOption("A67CD4F550751F8B91DE2B8B74528AB4E0C11C77", 2 * 1024 * 1024, "SAT", "KOF95", "SAT_KoF95.bin", "King of Fighters cartridge");
FirmwareAndOption("56C1B93DA6B660BF393FBF48CA47569000EF4047", 2 * 1024 * 1024, "SAT", "ULTRAMAN", "SAT_Ultraman.bin", "Ultraman cartridge");
// Saturn ST-V (arcade variant, which mednafen supports)
// hashes taken from MAME's db: https://github.com/mamedev/mame/blob/e9bdabea3702683e8b962acf8dbe61f2a5f46de0/src/mame/sega/stv.cpp#L1893-L1955
var ss_stv_j = File("1A31B6B1A4257FCB6AC6A91E67DD798F91505F48", 524288, "SAT_STV_23603-(J).bin", "ST-V BIOS EPR-23603 (J)");
var ss_stv_j1 = File("EFF0F54C70BCE05FF3A289BF30B1027E1C8CD117", 524288, "SAT_STV_20091-(J).bin", "ST-V BIOS EPR-20091 (J)");
var ss_stv_j2 = File("FAE53107C894E0C41C49E191DBE706C9CD6E50BD", 524288, "SAT_STV_19730-(J).bin", "ST-V BIOS EPR-19730 (J)");
var ss_stv_j3 = File("63CF4A6432F6C87952F9CF3AB0F977AED2367303", 524288, "SAT_STV_17951A-(J).bin", "ST-V BIOS EPR-17951A (J)");
var ss_stv_j4 = File("F9B282FD27693E9891843597B2E1823DA3D23C7B", 524288, "SAT_STV_17740A-(J).bin", "ST-V BIOS EPR-17740A (J)");
var ss_stv_j5 = File("06860D96923B81AFBC21E0AD32EE19487D8FF6E7", 524288, "SAT_STV_17740-(J).bin", "ST-V BIOS EPR-17740 (J)");
var ss_stv_u = File("EAF1C3E5D602E1139D2090A78D7E19F04F916794", 524288, "SAT_STV_17952A-(U).bin", "ST-V BIOS EPR-17952A (U)");
var ss_stv_u1 = File("CC41D30DE06160083D77E0DC5D69E61FEC7FDCB5", 524288, "SAT_STV_17741A-(U).bin", "ST-V BIOS EPR-17741A (U)");
var ss_stv_e = File("AF79CFF317E5B57D49E463AF16A9F616ED1EEE08", 524288, "SAT_STV_17954A-(E).bin", "ST-V BIOS EPR-17954A (E)");
var ss_stv_t = File("B55CDCB45B2A5B0B35E352CF7625F0BD659084DF", 524288, "SAT_STV_19854-(T).bin", "ST-V BIOS EPR-19854 (T)");
var ss_stv_t1 = File("9EFC73717EC8A13417E65C54344DED9FC25BF5EF", 524288, "SAT_STV_17953A-(T).bin", "ST-V BIOS EPR-17953A (T)");
var ss_stv_t2 = File("23185BEB1CE9C09B8719E57D1ADB7B28C8141FD5", 524288, "SAT_STV_17742A-(T).bin", "ST-V BIOS EPR-17742A (T)");
Firmware("SAT", "STV_J", "ST-V Bios (J)");
// mame appears to order bios files from newest to oldest, so reverse the order of presentation here
// similarly to regular saturn bios files, set mednafen's preferred bios files to ideal
Option("SAT", "STV_J", in ss_stv_j5);
Option("SAT", "STV_J", in ss_stv_j4);
Option("SAT", "STV_J", in ss_stv_j3);
Option("SAT", "STV_J", in ss_stv_j2);
Option("SAT", "STV_J", in ss_stv_j1, FirmwareOptionStatus.Ideal);
Option("SAT", "STV_J", in ss_stv_j);
// mednafen appears to consider Taiwan as Japan for purposes of bios files, so we'll do that too
Option("SAT", "STV_J", in ss_stv_t2);
Option("SAT", "STV_J", in ss_stv_t1);
Option("SAT", "STV_J", in ss_stv_t);
Firmware("SAT", "STV_U", "ST-V Bios (U)");
Option("SAT", "STV_U", in ss_stv_u1);
Option("SAT", "STV_U", in ss_stv_u, FirmwareOptionStatus.Ideal);
Firmware("SAT", "STV_E", "ST-V Bios (E)");
Option("SAT", "STV_E", in ss_stv_e, FirmwareOptionStatus.Ideal);
// SMS
var sms_us_13 = File("C315672807D8DDB8D91443729405C766DD95CAE7", 8192, "SMS_us_1.3.sms", "SMS BIOS 1.3 (USA, Europe)");
var sms_jp_21 = File("A8C1B39A2E41137835EDA6A5DE6D46DD9FADBAF2", 8192, "SMS_jp_2.1.sms", "SMS BIOS 2.1 (Japan)");
var sms_us_1b = File("29091FF60EF4C22B1EE17AA21E0E75BAC6B36474", 8192, "SMS_us_1.0b.sms", "SMS BIOS 1.0 (USA) (Proto)"); // ?? is this size correct?
var sms_m404 = File("4A06C8E66261611DCE0305217C42138B71331701", 8192, "SMS_m404.sms", "SMS BIOS (USA) (M404) (Proto)"); // ?? is this size correct?
var sms_kr = File("2FEAFD8F1C40FDF1BD5668F8C5C02E5560945B17", 131072, "SMS_kr.sms", "SMS BIOS (Kr)"); // ?? is this size correct?
Firmware("SMS", "Export", "SMS Bios (USA/Export)");
Firmware("SMS", "Japan", "SMS Bios (Japan)");
Firmware("SMS", "Korea", "SMS Bios (Korea)");
Option("SMS", "Export", in sms_us_13, FirmwareOptionStatus.Ideal);
Option("SMS", "Export", in sms_us_1b);
Option("SMS", "Export", in sms_m404);
Option("SMS", "Japan", in sms_jp_21, FirmwareOptionStatus.Ideal);
Option("SMS", "Korea", in sms_kr, FirmwareOptionStatus.Ideal);
// SNES
var sgb = File("6ED55C4368333B57F6A2F8BBD70CCD87ED48058E", 262144, "SNES_SGB_(JU).sfc", "Super Game Boy Rom (JU)");
var sgbA = File("6380A5913ACE3041A305FBAF822B5A8847FEA7ED", 262144, "SNES_SGB_RevA_(JU).sfc", "Super Game Boy Rom (JU, Rev A)");
var sgbA_Beta = File("4ED5621A9022E1D94B673CC0F68EA24764E8D6BB", 262144, "SNES_SGB_RevABeta_(JU).sfc", "Super Game Boy Rom (JU, Rev A Beta)");
var sgbB = File("973E10840DB683CF3FAF61BD443090786B3A9F04", 262144, "SNES_SGB_RevB_(World).sfc", "Super Game Boy Rom (World, Rev B)");
var sgb2 = File("E5B2922CA137051059E4269B236D07A22C07BC84", 524288, "SNES_SGB2_(J).sfc", "Super Game Boy 2 Rom (J)");
Firmware("SNES", "Rom_SGB", "Super Game Boy Rom");
Firmware("SNES", "Rom_SGB2", "Super Game Boy 2 Rom");
Option("SNES", "Rom_SGB", in sgb, FirmwareOptionStatus.Ideal);
Option("SNES", "Rom_SGB", in sgbA, FirmwareOptionStatus.Ideal);
Option("SNES", "Rom_SGB", in sgbA_Beta);
Option("SNES", "Rom_SGB", in sgbB, FirmwareOptionStatus.Ideal);
Option("SNES", "Rom_SGB2", in sgb2, FirmwareOptionStatus.Ideal);
FirmwareAndOption("A002F4EFBA42775A31185D443F3ED1790B0E949A", 3072, "SNES", "CX4", "SNES_cx4.rom", "CX4 Rom");
FirmwareAndOption("188D471FEFEA71EB53F0EE7064697FF0971B1014", 8192, "SNES", "DSP1", "SNES_dsp1.rom", "DSP1 Rom");
FirmwareAndOption("78B724811F5F18D8C67669D9390397EB1A47A5E2", 8192, "SNES", "DSP1b", "SNES_dsp1b.rom", "DSP1b Rom");
FirmwareAndOption("198C4B1C3BFC6D69E734C5957AF3DBFA26238DFB", 8192, "SNES", "DSP2", "SNES_dsp2.rom", "DSP2 Rom");
FirmwareAndOption("558DA7CB3BD3876A6CA693661FFC6C110E948CF9", 8192, "SNES", "DSP3", "SNES_dsp3.rom", "DSP3 Rom");
FirmwareAndOption("AF6478AECB6F1B67177E79C82CA04C56250A8C72", 8192, "SNES", "DSP4", "SNES_dsp4.rom", "DSP4 Rom");
FirmwareAndOption("6472828403DE3589433A906E2C3F3D274C0FF008", 53248, "SNES", "ST010", "SNES_st010.rom", "ST010 Rom");
FirmwareAndOption("FECBAE2CEC76C710422486BAA186FFA7CA1CF925", 53248, "SNES", "ST011", "SNES_st011.rom", "ST011 Rom");
FirmwareAndOption("91383B92745CC7CC4F15409AC5BC2C2F699A43F1", 163840, "SNES", "ST018", "SNES_st018.rom", "ST018 Rom");
// see SATELLAVIEW_CARTRIDGE enum in BsnesCore
FirmwareAndOption("604556B2E62860AF18DB5A77F2956EBC75450020", 1048576, "BSX", "Rom_BSX", "Satellaview_BS-X.sfc", "BS-X Rom");
FirmwareAndOption("8417556B5CE22FB9BC4026FE28F7AEE348A76FD9", 1048576, "BSX", "Rom_Mahjong", "Satellaview_Mahjong.sfc", "Joushou Mahjong Tenpai Rom");
FirmwareAndOption("356A3D60E9FABFF4B4CEC66277C9A6B717C958CE", 1572864, "BSX", "Rom_GNEXT", "Satellaview_GNEXT.sfc", "SD Gundam G-Next Rom");
FirmwareAndOption("95F31DFB31200E31E80007CC66A32E2C1A7B02BE", 2097152, "BSX", "Rom_RPG_Tsukuru", "Satellaview_RPG_Tsukuru.sfc", "RPG Tsukūru 2 Rom");
FirmwareAndOption("A6AD0F89C3E75327D70AA0F0239C7B06F151E0A4", 1048576, "BSX", "Rom_SameGame", "Satellaview_SameGame.sfc", "SameGame Rom");
FirmwareAndOption("24AF9A5A78635EC493BBBC2540AB98BD161C5798", 3145728, "BSX", "Rom_DS96", "Satellaview_Derby_Stallion_96.sfc", "Derby Stallion 96 Rom");
FirmwareAndOption("337E0C4BDBF544787B543A1FB83AFBA7526191B9", 1048576, "BSX", "Rom_Ongaku_Tsukuru", "Satellaview_Ongaku_Tsukuru.sfc", "Ongaku Tsukūru: Kanadēru Rom");
FirmwareAndOption("A9B124948A19BB5A295EC208FCA8180476BDFEBB", 3145728, "BSX", "Rom_SoundNovel_Tsukuru", "Satellaview_SoundNovel_Tsukuru.sfc", "Sound-Novel Tsukūru Rom");
FirmwareAndOption("357AC4826297A6496035E3951CACDA55DCAE4B1B", 4194304, "BSX", "Rom_Tsuri", "Satellaview_Bass_Tsuri.sfc", "Itoi Shigesato no Bass Tsuri No. 1 Rom");
// TI83
// MAME "ti83"
var ti83_102 = File("CE08F6A808701FC6672230A790167EE485157561", 262144, "TI83_102.rom", "TI-83 Rom v1.02");
var ti83_103 = File("8399E384804D8D29866CAA4C8763D7A61946A467", 262144, "TI83_103.rom", "TI-83 Rom v1.03");
var ti83_104 = File("33877FF637DC5F4C5388799FD7E2159B48E72893", 262144, "TI83_104.rom", "TI-83 Rom v1.04");
var ti83_106 = File("3D65C2A1B771CE8E5E5A0476EC1AA9C9CDC0E833", 262144, "TI83_106.rom", "TI-83 Rom v1.06");
var ti83_107 = File("EF66DAD3E7B2B6A86F326765E7DFD7D1A308AD8F", 262144, "TI83_107.rom", "TI-83 Rom v1.07");
var ti83_108 = File("9C74F0B61655E9E160E92164DB472AD7EE02B0F8", 262144, "TI83_108.rom", "TI-83 Rom v1.08");
var ti83_110 = File("25B373B58523647BB7B904001D391615E0B79BEE", 262144, "TI83_110.rom", "TI-83 Rom v1.10");
// MAME "ti83p"
var ti83p_103 = File("37EAEEB9FB5C18FB494E322B75070E80CC4D858E", 524288, "TI83p_103.rom", "TI-83 Plus Rom v1.03");
var ti83p_110 = File("F86CDEFE4ED5EF9965CD9EB667CB859E2CB10E19", 524288, "TI83p_110.rom", "TI-83 Plus Rom v1.10");
var ti83p_112 = File("6615DF5554076B6B81BD128BF847D2FF046E556B", 524288, "TI83p_112.rom", "TI-83 Plus Rom v1.12");
var ti83p_113 = File("9B79E994EA1CE7AF05B68F8ECEE8B1B1FC3F0810", 524288, "TI83p_113.rom", "TI-83 Plus Rom v1.13");
var ti83p_114 = File("46C66BA0421C03FC42F5AFB06C7D3AF812786140", 524288, "TI83p_114.rom", "TI-83 Plus Rom v1.14");
var ti83p_115 = File("8BD05FD47CAB4028F275D1CC5383FD4F0E193474", 524288, "TI83p_115.rom", "TI-83 Plus Rom v1.15");
var ti83p_116 = File("290BC81159EA061D8CCB56A6F63E042F150AFB32", 524288, "TI83p_116.rom", "TI-83 Plus Rom v1.16");
Firmware("TI83", "Rom", "TI-83 Rom");
Option("TI83", "Rom", in ti83_102);
Option("TI83", "Rom", in ti83_103);
Option("TI83", "Rom", in ti83_104);
Option("TI83", "Rom", in ti83_106);
Option("TI83", "Rom", in ti83_107);
Option("TI83", "Rom", in ti83_108);
Option("TI83", "Rom", in ti83_110, FirmwareOptionStatus.Ideal);
Option("TI83", "Rom", in ti83p_103, FirmwareOptionStatus.Unacceptable);
Option("TI83", "Rom", in ti83p_110, FirmwareOptionStatus.Unacceptable);
Option("TI83", "Rom", in ti83p_112, FirmwareOptionStatus.Unacceptable);
Option("TI83", "Rom", in ti83p_113, FirmwareOptionStatus.Unacceptable);
Option("TI83", "Rom", in ti83p_114, FirmwareOptionStatus.Unacceptable);
Option("TI83", "Rom", in ti83p_115, FirmwareOptionStatus.Unacceptable);
Option("TI83", "Rom", in ti83p_116, FirmwareOptionStatus.Unacceptable);
// VEC
FirmwareAndOption("B9BBF5BB0EAC52D039A4A993A2D8064B862C9E28", 4096, "VEC", "Bios", "VEC_Bios.bin", "Bios");
FirmwareAndOption("65D07426B520DDD3115D40F255511E0FD2E20AE7", 8192, "VEC", "Minestorm", "VEC_Minestorm.vec", "Game");
// ZX Spectrum
FirmwareAndOption("A584272F21DC82C14B7D4F1ED440E23A976E71F0", 32768, "ZXSpectrum", "PentagonROM", "ZX_pentagon.rom", "Russian Pentagon Clone ROM");
FirmwareAndOption("282EB7BC819AAD2A12FD954E76F7838A4E1A7929", 16384, "ZXSpectrum", "TRDOSROM", "ZX_trdos.rom", "TRDOS ROM");
/*
Firmware("PS2", "BIOS", "PS2 Bios");
Option("PS2", "BIOS", File("FBD54BFC020AF34008B317DCB80B812DD29B3759", 4 * 1024 * 1024, "ps2-0230j-20080220.bin", "PS2 Bios"));
Option("PS2", "BIOS", File("8361D615CC895962E0F0838489337574DBDC9173", 4 * 1024 * 1024, "ps2-0220a-20060905.bin", "PS2 Bios"));
Option("PS2", "BIOS", File("DA5AACEAD2FB55807D6D4E70B1F10F4FDCFD3281", 4 * 1024 * 1024, "ps2-0220e-20060905.bin", "PS2 Bios"));
Option("PS2", "BIOS", File("3BAF847C1C217AA71AC6D298389C88EDB3DB32E2", 4 * 1024 * 1024, "ps2-0220j-20060905.bin", "PS2 Bios"));
Option("PS2", "BIOS", File("F9229FE159D0353B9F0632F3FDC66819C9030458", 4 * 1024 * 1024, "ps2-0230a-20080220.bin", "PS2 Bios"), FirmwareOptionStatus.Ideal);
Option("PS2", "BIOS", File("9915B5BA56798F4027AC1BD8D10ABE0C1C9C326A", 4 * 1024 * 1024, "ps2-0230e-20080220.bin", "PS2 Bios"));
*/
AllPatches = allPatches;
FirmwareFilesByHash = filesByHash;
FirmwareFilesByOption = filesByOption;
FirmwareOptions = options;
FirmwareRecords = records;
}
} // static class FirmwareDatabase
}
+18
View File
@@ -0,0 +1,18 @@
{
"platform": "emudeck",
"originals": {
"checkBIOS.sh": "https://raw.githubusercontent.com/dragoonDorise/EmuDeck/dddb30229adbbd54d5ff7283cfd70e11c4322c26/functions/checkBIOS.sh"
},
"files": [
"checkBIOS.sh"
],
"summary": "170 kept, 0 added, 0 hashes corrected, 0 requirements corrected, 1443 additions left out",
"hashes_corrected": [],
"hashes_filled": [],
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
"requirements_corrected": 0,
"withheld": [],
"invalid": []
}
+242
View File
@@ -0,0 +1,242 @@
#!/usr/bin/env bash
checkPS1BIOS(){
PSXBIOS="NULL"
for entry in "$biosPath/"*
do
if [ -f "$entry" ]; then
md5=($(md5sum "$entry"))
if [[ "$PSXBIOS" != true ]]; then
PSBios=(239665b1a3dade1b5a52c06338011044 2118230527a9f51bd9216e32fa912842 849515939161e62f6b866f6853006780 dc2b9bf8da62ec93e868cfd29f0d067d 54847e693405ffeb0359c6287434cbef cba733ceeff5aef5c32254f1d617fa62 da27e8b6dab242d8f91a9b25d80c63b8 417b34706319da7cf001e76e40136c23 57a06303dfa9cf9351222dfcbb4a29d9 81328b966e6dcf7ea1e32e55e1c104bb 924e392ed05558ffdb115408c263dccf e2110b8a2b97a8e0b857a45d32f7e187 ca5cfc321f916756e3f0effbfaeba13b 8dd7d5296a650fac7319bce665a6a53c 490f666e1afb15b7362b406ed1cea246 32736f17079d0b2b7024407c39bd3050 8e4c14f567745eff2f0408c8129f72a6 b84be139db3ee6cbd075630aa20a6553 1e68c231d0896b7eadcad1d7d8e76129 b9d9a0286c33dc6b7237bb13cd46fdee 8abc1b549a4a80954addc48ef02c4521 9a09ab7e49b422c007e6d54d7c49b965 b10f5e0e3d9eb60e5159690680b1e774 6e3735ff4c7dc899ee98981385f6f3d0 de93caec13d1a141a40a79f5c86168d6 c53ca5908936d412331790f4426c6c33 476d68a94ccec3b9c8303bbd1daf2810 d8f485717a5237285e4d7c5f881b7f32 fbb5f59ec332451debccf1e377017237 81bbe60ba7a3d1cea1d48c14cbcc647b)
for i in "${PSBios[@]}"
do
if [[ "$md5" == *"${i}"* ]]; then
PSXBIOS=true
#mv "$entry" "${entry,,}"
break
else
PSXBIOS=false
fi
done
fi
fi
done
if [ $PSXBIOS == true ]; then
echo "$entry true";
else
echo "false";
fi
}
checkPS2BIOS(){
PS2BIOS="NULL"
for entry in "$biosPath/"*
do
if [ -f "$entry" ]; then
md5=($(md5sum "$entry"))
if [[ "$PS2BIOS" != true ]]; then
PS2Bios=(32f2e4d5ff5ee11072a6bc45530f5765 acf4730ceb38ac9d8c7d8e21f2614600 acf9968c8f596d2b15f42272082513d1 b1459d7446c69e3e97e6ace3ae23dd1c d3f1853a16c2ec18f3cd1ae655213308 63e6fd9b3c72e0d7b920e80cf76645cd a20c97c02210f16678ca3010127caf36 8db2fbbac7413bf3e7154c1e0715e565 91c87cb2f2eb6ce529a2360f80ce2457 3016b3dd42148a67e2c048595ca4d7ce b7fa11e87d51752a98b38e3e691cbf17 f63bc530bd7ad7c026fcd6f7bd0d9525 cee06bd68c333fc5768244eae77e4495 0bf988e9c7aaa4c051805b0fa6eb3387 8accc3c49ac45f5ae2c5db0adc854633 6f9a6feb749f0533aaae2cc45090b0ed 838544f12de9b0abc90811279ee223c8 bb6bbc850458fff08af30e969ffd0175 815ac991d8bc3b364696bead3457de7d b107b5710042abe887c0f6175f6e94bb ab55cceea548303c22c72570cfd4dd71 18bcaadb9ff74ed3add26cdf709fff2e 491209dd815ceee9de02dbbc408c06d6 7200a03d51cacc4c14fcdfdbc4898431 8359638e857c8bc18c3c18ac17d9cc3c 352d2ff9b3f68be7e6fa7e6dd8389346 d5ce2c7d119f563ce04bc04dbc3a323e 0d2228e6fd4fb639c9c39d077a9ec10c 72da56fccb8fcd77bba16d1b6f479914 5b1f47fbeb277c6be2fccdd6344ff2fd 315a4003535dfda689752cb25f24785c 312ad4816c232a9606e56f946bc0678a 666018ffec65c5c7e04796081295c6c7 6e69920fa6eef8522a1d688a11e41bc6 eb960de68f0c0f7f9fa083e9f79d0360 8aa12ce243210128c5074552d3b86251 240d4c5ddd4b54069bdc4a3cd2faf99d 1c6cd089e6c83da618fbf2a081eb4888 463d87789c555a4a7604e97d7db545d1 35461cecaa51712b300b2d6798825048 bd6415094e1ce9e05daabe85de807666 2e70ad008d4ec8549aada8002fdf42fb b53d51edc7fc086685e31b811dc32aad 1b6e631b536247756287b916f9396872 00da1b177096cfd2532c8fa22b43e667 afde410bd026c16be605a1ae4bd651fd 81f4336c1de607dd0865011c0447052e 0eee5d1c779aa50e94edd168b4ebf42e d333558cc14561c1fdc334c75d5f37b7 dc752f160044f2ed5fc1f4964db2a095 63ead1d74893bf7f36880af81f68a82d 3e3e030c0f600442fa05b94f87a1e238 1ad977bb539fc9448a08ab276a836bbc eb4f40fcf4911ede39c1bbfe91e7a89a 9959ad7a8685cad66206e7752ca23f8b 929a14baca1776b00869f983aa6e14d2 573f7d4a430c32b3cc0fd0c41e104bbd df63a604e8bff5b0599bd1a6c2721bd0 5b1ba4bb914406fae75ab8e38901684d cb801b7920a7d536ba07b6534d2433ca af60e6d1a939019d55e5b330d24b1c25 549a66d0c698635ca9fa3ab012da7129 5de9d0d730ff1e7ad122806335332524 21fe4cad111f7dc0f9af29477057f88d 40c11c063b3b9409aa5e4058e984e30c 80bbb237a6af9c611df43b16b930b683 c37bce95d32b2be480f87dd32704e664 80ac46fa7e77b8ab4366e86948e54f83 21038400dc633070a78ad53090c53017 dc69f0643a3030aaa4797501b483d6c4 30d56e79d89fbddf10938fa67fe3f34e 93ea3bcee4252627919175ff1b16a1d9 d3e81e95db25f5a86a7b7474550a2155)
for i in "${PS2Bios[@]}"
do
if [[ "$md5" == *"${i}"* ]]; then
PS2BIOS=true
#mv "$entry" "${entry,,}"
break
else
PS2BIOS=false
fi
done
fi
fi
done
if [ $PS2BIOS == true ]; then
echo "true";
else
echo "false";
fi
}
checkCitronBios(){
local FIRMWARE="$biosPath/citron/firmware"
local KEYS="$biosPath/citron/keys/prod.keys"
if [[ -f "$KEYS" ]] && [[ "$( ls -A "$FIRMWARE")" ]]; then
echo "true";
else
echo "false";
fi
}
checkRyujinxBios(){
local FIRMWARE="$HOME/.config/Ryujinx/bis/system/Contents/registered"
local KEYS="$HOME/.config/Ryujinx/system/prod.keys"
if [[ -f "$KEYS" ]] && [[ "$( ls -A "$FIRMWARE")" ]]; then
echo "true";
else
echo "false";
fi
}
checkYuzuBios(){
local FIRMWARE="$biosPath/yuzu/firmware"
local KEYS="$biosPath/yuzu/keys/prod.keys"
if [[ -f "$KEYS" ]] && [[ "$( ls -A "$FIRMWARE")" ]]; then
echo "true";
else
echo "false";
fi
}
checkEdenBios(){
local FIRMWARE="$biosPath/eden/firmware"
local KEYS="$biosPath/eden/keys/prod.keys"
if [[ -f "$KEYS" ]] && [[ "$( ls -A "$FIRMWARE")" ]]; then
echo "true";
else
echo "false";
fi
}
checkSegaCDBios(){
SEGACDBIOS="NULL"
for entry in "$biosPath/"*
do
if [ -f "$entry" ]; then
md5=($(md5sum "$entry"))
if [[ "$SEGACDBIOS" != true ]]; then
CDBios=(bc6ae4e1db01a2f349d9af392bf7e2bd 29ad9ce848b49d0f9cefc294137f653c cc049159d7e744c15eee080c241273b4 278a9397d192149e84e820ac621a8edd a3ddcc8483b0368141adfd99d9a1e466 bdeb4c47da613946d422d97d98b21cda 96ea588d647f2ab1f291279fc691663c 2efd74e3232ff260e371b99f84024f7f e66fa1dc5820d254611fdcdba0662372 683a8a9e273662561172468dfa2858eb 310a9081d2edf2d316ab38813136725e 9b562ebf2d095bf1dabadbc1881f519a 854b9150240a198070150e4566ae1290 b10c0a97abc57b758497d3fae6ab35a4 ecc837c31d77b774c6e27e38f828aa9a baca1df271d7c11fe50087c0358f4eb5)
for i in "${CDBios[@]}"
do
if [[ "$md5" == *"${i}"* ]]; then
SEGACDBIOS=true
break
else
SEGACDBIOS=false
fi
done
fi
fi
done
if [ $SEGACDBIOS == true ]; then
echo "true";
else
echo "false";
fi
}
checkSaturnBios(){
SATURNBIOS="NULL"
for entry in "$biosPath/"*
do
if [ -f "$entry" ]; then
md5=($(md5sum "$entry"))
if [[ "$SATURNBIOS" != true ]]; then
SaturnBios=(af5828fdff51384f99b3c4926be27762 85ec9ca47d8f6807718151cbcca8b964 f273555d7d91e8a5a6bfd9bcf066331c 3240872c70984b6cbfda1586cab68dbe ac4e4b6522e200c0d23d371a8cecbfd3 3ea3202e2634cb47cb90f3a05c015010 cb2cebc1b6e573b7c44523d037edcd45 0306c0e408d6682dd2d86324bd4ac661)
for i in "${SaturnBios[@]}"
do
if [[ "$md5" == *"${i}"* ]]; then
SATURNBIOS=true
break
else
SATURNBIOS=false
fi
done
fi
fi
done
if [ $SATURNBIOS == true ]; then
echo "true";
else
echo "false";
fi
}
checkDreamcastBios(){
local BIOS="NULL"
for entry in "$biosPath/dc/"*
do
if [ -f "$entry" ]; then
md5=($(md5sum "$entry"))
if [[ "$BIOS" != true ]]; then
local hashes=(d407fcf70b56acb84b8c77c93b0e5327 e10c53c2f8b90bab96ead2d368858623 93a9766f14159b403178ac77417c6b68 0a93f7940c455905bea6e392dfde92a4)
for i in "${hashes[@]}"
do
if [[ "$md5" == *"${i}"* ]]; then
BIOS=true
break
else
BIOS=false
fi
done
fi
fi
done
if [ $BIOS == true ]; then
echo "true";
else
echo "false";
fi
}
checkDSBios(){
local BIOS="NULL"
for entry in "$biosPath/"*
do
if [ -f "$entry" ]; then
md5=($(md5sum "$entry"))
if [[ "$BIOS" != true ]]; then
local hashes=(145eaef5bd3037cbc247c213bb3da1b3 df692a80a5b1bc90728bc3dfc76cd948 a392174eb3e572fed6447e956bde4b25)
for i in "${hashes[@]}"
do
if [[ "$md5" == *"${i}"* ]]; then
BIOS=true
break
else
BIOS=false
fi
done
fi
fi
done
if [ $BIOS == true ]; then
echo "true";
else
echo "false";
fi
}
+145
View File
@@ -0,0 +1,145 @@
{
"platform": "lakka",
"originals": {
"System.dat": "https://raw.githubusercontent.com/libretro/libretro-database/12c21cf79f1e20eff6ac68b80875816c717d0a7a/dat/System.dat"
},
"files": [
"System.dat"
],
"summary": "516 kept, 359 added, 94 hashes corrected, 0 requirements corrected, 25 sizes corrected, 1 size removed, 3 hashes cleared, 647 additions left out",
"hashes_corrected": [
"Arcade/aes.zip sha1",
"Arcade/aes.zip md5",
"Arcade/aes.zip crc32",
"Atari - 400-800/ATARIOSB.ROM sha1",
"Atari - 400-800/ATARIOSB.ROM md5",
"Atari - 400-800/ATARIOSB.ROM crc32",
"DOS/MT32_CONTROL.ROM md5",
"DOS/MT32_CONTROL.ROM crc32",
"DOS/CM32L_CONTROL.ROM md5",
"DOS/CM32L_CONTROL.ROM crc32",
"Microsoft - MSX/MSX.rom sha1",
"Microsoft - MSX/MSX.rom md5",
"Nintendo - Nintendo DSi/dsi_bios7.bin sha1",
"Nintendo - Nintendo DSi/dsi_bios7.bin md5",
"Nintendo - Nintendo DSi/dsi_bios7.bin crc32",
"Nintendo - Nintendo DSi/dsi_bios9.bin sha1",
"Nintendo - Nintendo DSi/dsi_bios9.bin md5",
"Nintendo - Nintendo DSi/dsi_bios9.bin crc32",
"SNK - NeoGeo CD/neocdz.zip md5",
"Sony - PlayStation/scph5000.bin sha1",
"Sony - PlayStation/scph5000.bin md5",
"Sony - PlayStation/scph5000.bin crc32",
"Sony - PlayStation 2/GameIndex.yaml sha1",
"Sony - PlayStation 2/GameIndex.yaml md5",
"Sony - PlayStation 2/GameIndex.yaml crc32",
"ScummVM/access.dat sha1",
"ScummVM/access.dat md5",
"ScummVM/access.dat crc32",
"ScummVM/cryomni3d.dat sha1",
"ScummVM/cryomni3d.dat md5",
"ScummVM/cryomni3d.dat crc32",
"ScummVM/drascula.dat sha1",
"ScummVM/drascula.dat md5",
"ScummVM/drascula.dat crc32",
"ScummVM/fonts.dat sha1",
"ScummVM/fonts.dat md5",
"ScummVM/fonts.dat crc32",
"ScummVM/freescape.dat sha1",
"ScummVM/freescape.dat md5",
"ScummVM/freescape.dat crc32",
"ScummVM/hugo.dat sha1",
"ScummVM/hugo.dat md5",
"ScummVM/hugo.dat crc32",
"ScummVM/kyra.dat sha1",
"ScummVM/kyra.dat md5",
"ScummVM/kyra.dat crc32",
"ScummVM/lure.dat sha1",
"ScummVM/lure.dat md5",
"ScummVM/lure.dat crc32",
"ScummVM/macventure.dat sha1",
"ScummVM/macventure.dat md5",
"ScummVM/macventure.dat crc32",
"ScummVM/mm.dat sha1",
"ScummVM/mm.dat md5",
"ScummVM/mm.dat crc32",
"ScummVM/nancy.dat sha1",
"ScummVM/nancy.dat md5",
"ScummVM/nancy.dat crc32",
"ScummVM/queen.tbl sha1",
"ScummVM/queen.tbl md5",
"ScummVM/queen.tbl crc32",
"ScummVM/supernova.dat sha1",
"ScummVM/supernova.dat md5",
"ScummVM/supernova.dat crc32",
"ScummVM/teenagent.dat sha1",
"ScummVM/teenagent.dat md5",
"ScummVM/teenagent.dat crc32",
"ScummVM/toon.dat sha1",
"ScummVM/toon.dat md5",
"ScummVM/toon.dat crc32",
"ScummVM/ultima.dat sha1",
"ScummVM/ultima.dat md5",
"ScummVM/ultima.dat crc32",
"ScummVM/wintermute.zip sha1",
"ScummVM/wintermute.zip md5",
"ScummVM/wintermute.zip crc32",
"ScummVM/gui-icons.dat sha1",
"ScummVM/gui-icons.dat md5",
"ScummVM/gui-icons.dat crc32",
"ScummVM/residualvm.zip sha1",
"ScummVM/residualvm.zip md5",
"ScummVM/residualvm.zip crc32",
"ScummVM/scummclassic.zip sha1",
"ScummVM/scummclassic.zip md5",
"ScummVM/scummclassic.zip crc32",
"ScummVM/scummmodern.zip sha1",
"ScummVM/scummmodern.zip md5",
"ScummVM/scummmodern.zip crc32",
"ScummVM/scummremastered.zip sha1",
"ScummVM/scummremastered.zip md5",
"ScummVM/scummremastered.zip crc32",
"ScummVM/translations.dat sha1",
"ScummVM/translations.dat md5",
"ScummVM/translations.dat crc32"
],
"hashes_filled": [],
"sizes_corrected": [
"Arcade/aes.zip",
"Sony - PlayStation 2/GameIndex.yaml",
"ScummVM/access.dat",
"ScummVM/cryomni3d.dat",
"ScummVM/drascula.dat",
"ScummVM/fonts.dat",
"ScummVM/freescape.dat",
"ScummVM/hugo.dat",
"ScummVM/kyra.dat",
"ScummVM/lure.dat",
"ScummVM/macventure.dat",
"ScummVM/mm.dat",
"ScummVM/nancy.dat",
"ScummVM/queen.tbl",
"ScummVM/supernova.dat",
"ScummVM/teenagent.dat",
"ScummVM/toon.dat",
"ScummVM/ultima.dat",
"ScummVM/wintermute.zip",
"ScummVM/gui-icons.dat",
"ScummVM/residualvm.zip",
"ScummVM/scummclassic.zip",
"ScummVM/scummmodern.zip",
"ScummVM/scummremastered.zip",
"ScummVM/translations.dat"
],
"sizes_removed": [
"SNK - NeoGeo CD/neocdz.zip"
],
"hashes_cleared": [
"Microsoft - MSX/MSX.rom crc32",
"SNK - NeoGeo CD/neocdz.zip sha1",
"SNK - NeoGeo CD/neocdz.zip crc32"
],
"requirements_corrected": 0,
"withheld": [],
"invalid": []
}
File diff suppressed because it is too large. Load diff
+18
View File
@@ -0,0 +1,18 @@
{
"platform": "misterfpga",
"originals": {
"bios_db.json.zip": "https://raw.githubusercontent.com/ajgowans/BiosDB_MiSTer/7cfa7a3e84af078d0efba74fa46c50357c4f567c/bios_db.json.zip"
},
"files": [
"bios_db.json"
],
"summary": "81 kept, 0 added, 0 hashes corrected, 0 requirements corrected",
"hashes_corrected": [],
"hashes_filled": [],
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
"requirements_corrected": 0,
"withheld": [],
"invalid": []
}
File diff suppressed because it is too large. Load diff
+27
View File
@@ -0,0 +1,27 @@
{
"platform": "recalbox",
"originals": {
"es_bios.xml": "https://gitlab.com/recalbox/recalbox/-/raw/10.1.1/board/recalbox/fsoverlay/recalbox/share_init/system/.emulationstation/es_bios.xml",
"es_bios.xsd": "https://gitlab.com/recalbox/recalbox/-/raw/10.1.1/board/recalbox/fsoverlay/recalbox/share_init/system/.emulationstation/es_bios.xsd"
},
"files": [
"es_bios.xml"
],
"summary": "357 kept, 221 added, 7 hashes corrected, 129 requirements corrected, 566 additions left out",
"hashes_corrected": [
"atari800/ATARIOSB.ROM md5",
"msx1,msx2,msxturbor/MSX.rom md5",
"msx1,msx2,msxturbor/MSX2P.rom md5",
"neogeocd/neocdz.zip md5",
"neogeocd/neocd.zip md5",
"ti994a/TI-994A.ctg md5",
"ti994a/ti-disk.ctg md5"
],
"hashes_filled": [],
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
"requirements_corrected": 129,
"withheld": [],
"invalid": []
}
+795
View File
@@ -0,0 +1,795 @@
<?xml version="1.0" encoding="UTF-8"?>
<biosList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="es_bios.xsd">
<system fullname="Amiga 600 (ECS/OCS)" platform="amiga600">
<bios path="amiga/bios/kick33180.A500" md5="85ad74194e87c08904327de1a9443b7a" core="amiberry" mandatory="false" />
<bios path="amiga/bios/kick34005.A500" md5="82a21c1890cae844b3df741f2762d48d" core="amiberry,libretro/amiberry,libretro/uae,libretro/uae4arm,libretro/uae4all" />
<bios path="amiga/bios/kick37175.A500" md5="dc10d7bdd1b6f450773dfb558477c230" core="amiberry,libretro/uae" mandatory="false" />
<bios path="amiga/bios/kick40063.A600" md5="e40a5dfb3d017ba8779faba30cbd1c8e" mandatory="false" core="amiberry,libretro/amiberry,libretro/uae,libretro/uae4arm" />
<bios path="amiga/bios/kick02019.AROS.ext" md5="4fa7042d73d0f77bf5723cf8430989bf" mandatory="false" core="amiberry,libretro/uae,libretro/uae4arm" note="AROS Free bios" />
<bios path="amiga/bios/kick02019.AROS" md5="186d23cccd9fbd6336d0f988b39dce4d" mandatory="false" core="amiberry,libretro/uae,libretro/uae4arm" note="AROS Free bios" />
<bios path="aros-ext.bin" md5="d2ce6748e8e42222662e14359f68dad5" core="amiberry" mandatory="false" />
<bios path="aros-rom.bin" md5="48d38fc3fcf2ad7bca5ec5191d02e451" core="amiberry" mandatory="false" />
<bios path="amiga/aros-amiga-m68k-rom.bin" md5="8c9e0e3b3686c362ccf2dfd8a86669b2" core="libretro/uae4all" mandatory="false" />
<bios path="amiga/aros-amiga-m68k-ext.bin" md5="272c1306032674b4fa120d56a0b1b99a" core="libretro/uae4all" mandatory="false" />
</system>
<system fullname="Amiga 1200 (AGA)" platform="amiga1200">
<bios path="amiga/bios/kick39106.A1200" md5="b7cc148386aa631136f510cd29e42fc3" core="amiberry" mandatory="false" />
<bios path="amiga/bios/kick40068.A1200" md5="646773759326fbac3b2311fd8c8793ee" core="amiberry,libretro/amiberry,libretro/uae,libretro/uae4arm" />
<bios path="amiga/bios/kick40068.A4000" md5="9bdedde6a4f33555b4a270c8ca53297d" core="amiberry,libretro/amiberry,libretro/uae" mandatory="false" note="This bios is required only for A4000 emulation" />
</system>
<system fullname="Amiga CDTV" platform="amigacdtv">
<bios path="amiga/bios/kick34005.CDTV" md5="89da1838a24460e4b93f4f0c5d92d48d,d98112f18792ee3714df16a6eb421b89,
d1145ab3a0f89340f94c9e734762c198" hashMatchMandatory="true" core="amiberry,libretro/amiberry,libretro/uae,libretro/uae4arm" mandatory="true" note="This bios is required only for CDTV emulation" />
</system>
<system fullname="Amiga CD32" platform="amigacd32">
<bios path="amiga/bios/kick40060.CD32" md5="f2f241bf094168cfb9e7805dc2856433,5f8924d013dd57a89cf349f4cdedc6b1" hashMatchMandatory="false" core="amiberry,libretro/amiberry,libretro/uae,libretro/uae4arm" mandatory="true" note="Use the combined ROM 'KS + extended v3.1 rev 40.060' or separate ROMs 'KS v3.1 rev 40.060 + Extended ROM rev 40.060'" />
<bios path="amiga/bios/kick40060.CD32.ext" md5="bb72565701b1b6faece07d68ea5da639" core="amiberry,libretro/amiberry,libretro/uae,libretro/uae4arm" note="Extended ROM rev 40.060" />
</system>
<system fullname="Apple IIGS" platform="apple2gs">
<bios path="apple2gs1.rom" md5="20a0334c447cb069a040ae5be1d938df" core="gsplus" />
<bios path="apple2gs3.rom" md5="ba89edf2729a28a17cd9e0f7a0ac9a39" core="gsplus" />
</system>
<system fullname="Apple Macintosh" platform="macintosh">
<bios path="macintosh/MacII.ROM" md5="66223be1497460f1e60885eeb35e03cc" core="libretro/minivmac" />
<bios path="macintosh/MinivMacBootv2.dsk" md5="16ddb8838d48be26e471a2f2bb85a961,e66dc7952c8b9673868ad2faba3c0d20" hashMatchMandatory="false" core="libretro/minivmac" />
</system>
<system fullname="Atari 8Bits" platform="atari800">
<bios path="atari800/ATARIBAS.ROM" md5="0bac0c6a50104045d902df4503a4c30b" core="libretro/atari800" mandatory="false" />
<bios path="atari800/ATARIOSA.ROM" md5="eb1f32f5d9f382db1bbfb8d7f9cb343a" core="libretro/atari800" mandatory="false" />
<bios path="atari800/ATARIOSB.ROM" md5="4177f386a3bac989a981d3fe3388cb6c" core="libretro/atari800" mandatory="false" />
<bios path="atari800/ATARIXL.ROM" md5="06daac977823773a3eea3422fd26a703" core="libretro/atari800" mandatory="false" />
</system>
<system fullname="Atari 5200" platform="atari5200">
<bios path="atari5200/5200.rom" md5="281f20ea4320404ec820fb7ec0693b38" mandatory="false" core="libretro/a5200,libretro/atari800" />
</system>
<system fullname="Atari 7800" platform="atari7800">
<bios path="atari7800/7800 BIOS (U).rom" md5="0763f1ffb006ddbe32e52d497ee848ae" mandatory="false" core="libretro/prosystem" note="RUN ONLY US GAMES! Display official Atari logo." />
<bios path="atari7800/7800 BIOS (E).rom" md5="397bb566584be7b9764e7a68974c4263" mandatory="false" core="libretro/prosystem" note="RUN ONLY EUROPEAN GAMES! Display official Atari logo." />
</system>
<system fullname="Elektronika BK" platform="bk">
<bios path="bk/B11M_BOS.ROM" md5="fe4627d1e3a1535874085050733263e7" core="libretro/bk" mandatory="false" />
<bios path="bk/B11M_EXT.ROM" md5="dc52f365d56fa1951f5d35b1101b9e3f" core="libretro/bk" mandatory="false" />
<bios path="bk/BAS11M_0.ROM" md5="946f6f23ded03c0e26187f0b3ca75993" core="libretro/bk" mandatory="false" />
<bios path="bk/BAS11M_1.ROM" md5="1e6637f32aa7d1de03510030cac40bcf" core="libretro/bk" mandatory="false" />
<bios path="bk/DISK_327.ROM" md5="5015228eeeb238e65da8edcd1b6dfac7" core="libretro/bk" mandatory="false" />
<bios path="bk/FOCAL10.ROM" md5="5737f972e8638831ab71e9139abae052" core="libretro/bk" mandatory="false" />
<bios path="bk/MONIT10.ROM" md5="95f8c41c6abf7640e35a6a03cecebd01" core="libretro/bk" />
</system>
<system fullname="Sammy Atomiswave" platform="atomiswave">
<bios path="dc/awbios.zip" md5="a420c0e56135c2e7e87399c887d7ef4a,abb0a508c83e689fc5e9230c623dabd0,
042a0adecf2d616ccfb915a5cd71fde5,27fb8181fd9a0df18c7f6f941e9d60ab,
74f5e994ecff655f18f0f9f998c9b1d9" core="libretro/flycast" />
</system>
<system fullname="Sega Naomi" platform="naomi">
<bios path="dc/naomi.zip" md5="7300a99a4fc856d1a3c36b4485789897,40ae83a9552df0f340d5eeeadc5436ea,
7ed453bda92b25156536ff055b8685b6,a48e7a735b9036be8f150018155370ad,
e1dcb105789296b93bf58e37b7f38fc6,3c6b0fb04ab3eae5dc6a99f63507dbd4" core="libretro/flycast" />
<bios path="dc/airlbios.zip" md5="06dd41b614a6d6d079ec1ee73e2bf87d,5b7de05fb2dea6fb0408149c9bada27c,
987e08b1786a93653281ca8a5b21dc7f" mandatory="false" hashMatchMandatory="false" core="libretro/flycast" note="Required only for the game 'Airline Pilots'" />
<bios path="dc/hod2bios.zip" md5="09b92ad1240fba7954985bdee59d1741,2c08c42cc8c6eb3a4e07bff07db5102f,
9e1f4846028b18b5ef8a6bd8efd6c67d,fbdf7e1cef86d3ffd23754c0a303a4af,
729A623576CB9D8F7FD7C4E44ECE3066" mandatory="false" hashMatchMandatory="false" core="libretro/flycast" note="Required only for the game 'The House of the Dead 2'" />
</system>
<system fullname="Sega Naomi GD-Rom" platform="naomigd">
<bios path="dc/naomigd.zip" md5="288cde03a112e7726fa8093e05d46853,416b5914acb3d0b4a190a1d358c8710d,
bd9f19b4be0692e92e272d0eb82402f7,be57d3744e71a3396fb8dc59830e880a" core="libretro/flycast" />
</system>
<system fullname="Commodore 64" platform="c64">
<bios path="vice/JiffyDOS_C64.bin" md5="be09394f0576cf81fa8bacf634daf9a2" mandatory="false" core="libretro/vice_x64,libretro/vice_x64sc,libretro/vice_x128" note="JiffyDOS support" />
<bios path="vice/JiffyDOS_C128.bin" md5="cbbd1bbcb5e4fd8046b6030ab71fc021" mandatory="false" core="libretro/vice_x64,libretro/vice_x64sc,libretro/vice_x128" note="JiffyDOS support" />
<bios path="vice/JiffyDOS_1541-II.bin" md5="1b1e985ea5325a1f46eb7fd9681707bf" mandatory="false" core="libretro/vice_x64,libretro/vice_x64sc,libretro/vice_x128" note="JiffyDOS support" />
<bios path="vice/JiffyDOS_1571_repl310654.bin" md5="41c6cc528e9515ffd0ed9b180f8467c0" mandatory="false" core="libretro/vice_x64,libretro/vice_x64sc,libretro/vice_x128" note="JiffyDOS support" />
<bios path="vice/JiffyDOS_1581.bin" md5="20b6885c6dc2d42c38754a365b043d71" mandatory="false" core="libretro/vice_x64,libretro/vice_x64sc,libretro/vice_x128" note="JiffyDOS support" />
<bios path="vice/SCPU64/scpu-dos-1.4.bin" md5="cda2fcd2e1f0412029383e51dd472095" mandatory="false" core="libretro/xscpu64" note="1.4 SuperCPU dos from SuperCPU64" />
<bios path="vice/SCPU64/scpu-dos-2.04.bin" md5="b2869f8678b8b274227f35aad26ba509" mandatory="false" core="libretro/xscpu64" note="2.04 SuperCPU dos from SuperCPU128" />
<bios path="vice/C64/basic-901226-01.bin" md5="57af4ae21d4b705c2991d98ed5c1f7b8" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/C64/kernal-901227-03.bin" md5="39065497630802346bce17963f13c092" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/C64/kernal-901227-01.bin" md5="1ae0ea224f2b291dafa2c20b990bb7d4" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/C64/kernal-901227-02.bin" md5="7360b296d64e18b88f6cf52289fd99a1" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/C64/kernal-390852-01.bin" md5="ddee89b0fed19572da5245ea68ff11b5" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/C64/kernal-251104-04.bin" md5="187b8c713b51931e070872bd390b472a" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/C64/kernal-901246-01.bin" md5="da92801e3a03b005b746a4dd0b639c7c" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/C64/kernal-906145-02.bin" md5="479553fd53346ec84054f0b1c6237397" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/C64/chargen-901225-01.bin" md5="12a4202f5331d45af846af6c58fba946" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/C64/chargen-906143-02.bin" md5="cf32a93c0a693ed359a4f483ef6db53d" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/SCPU64/scpu64" md5="006862e9a52d987970435988e3803c71" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/SCPU64/chargen-901225-01.bin" md5="12a4202f5331d45af846af6c58fba946" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/SCPU64/chargen-906143-02.bin" md5="cf32a93c0a693ed359a4f483ef6db53d" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/DRIVES/dos1540-325302+3-01.bin" md5="87e849da3c87549848550fe4dd4d1aae" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/DRIVES/dos1541-325302-01+901229-05.bin" md5="a0ce8439d1b8dcf2e1430461f7233a72" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/DRIVES/dos1541ii-251968-03.bin" md5="ada295382a1f2df772a7e5c5c6f34215" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/DRIVES/dos1570-315090-01.bin" md5="f0799353f0e22cf7d783e447adcafde2" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/DRIVES/dos1571-310654-05.bin" md5="dae964d64b7843ff86c008d396dda208" core="libretro/vice_x64" mandatory="false" />
<bios path="vice/DRIVES/dos1581-318045-02.bin" md5="6a82f92aea2a3afa190fe32d565f39e7" core="libretro/vice_x64" mandatory="false" />
</system>
<system fullname="Sega Dreamcast" platform="dreamcast">
<bios path="dc/dc_boot.bin" md5="e10c53c2f8b90bab96ead2d368858623,d552d8b577faa079e580659cd3517f86,d407fcf70b56acb84b8c77c93b0e5327" core="libretro/flycast,reicast" mandatory="false" hashMatchMandatory="false" />
<bios path="dc/dc_flash.bin" md5="d6e11a23f1fa01cddb5dfccf7e4cc8d7,93a9766f14159b403178ac77417c6b68,
0a93f7940c455905bea6e392dfde92a4,23df18aa53c8b30784cd9a84e061d008,
69c036adfca4ebea0b0c6fa4acfc8538,74e3f69c2bb92bc1fc5d9a53dcf6ffe2,
2f818338f47701c606ade664a3e16a8a" hashMatchMandatory="false" core="libretro/flycast,reicast" />
<bios path="boot.bin" md5="a5c6a00818f97c5e3e91569ee22416dc,37c921eb47532cae8fb70e5d987ce91c,f2cd29d09f3e29984bcea22ab2e006fe,e10c53c2f8b90bab96ead2d368858623" core="libretro/retrodream" mandatory="false" />
</system>
<system fullname="NEC PC-8800 Series" platform="pc88">
<bios path="quasi88/n88.rom" md5="22be239bc0c4298bc0561252eed98633,f7cba6a308c2718dbe97e60e46ddd66a,4f984e04a99d56c4cfe36115415d6eb8" core="libretro/quasi88" note="BASIC rom" />
<bios path="quasi88/n88_0.rom" md5="e28fe3f520bea594350ea8fb00395370,c254685f00ca9c31b97203d6ef19f5e2,d675a2ca186c6efcd6277b835de4c7e5" core="libretro/quasi88" note="BASIC rom #1" />
<bios path="quasi88/n88_1.rom" md5="e844534dfe5744b381444dbe61ef1b66,a8e298da7ac947669bcb1ff25cee0a83" core="libretro/quasi88" mandatory="false" note="BASIC rom #2" />
<bios path="quasi88/n88_2.rom" md5="6548fa45061274dee1ea8ae1e9e93910,9d03154fd9abfc28c4e6d4dc705e6e23" core="libretro/quasi88" mandatory="false" note="BASIC rom #3" />
<bios path="quasi88/n88_3.rom" md5="fc4b76a402ba501e6ba6de4b3e8b4273,e1791f8154f1cdf22b576a1a365b6e1f" core="libretro/quasi88" mandatory="false" note="BASIC rom #4" />
<bios path="quasi88/n88n.rom" md5="5d6854624dd01cd791f58727fc43a525,93cd1d78b7b9c50b80041ed330332ece,2ff07b8769367321128e03924af668a0" core="libretro/quasi88" mandatory="false" note="N BASIC rom" />
<bios path="quasi88/disk.rom" md5="793f86784e5608352a5d7f03f03e0858,01b1af474fcabe93c40d779b234a3825" core="libretro/quasi88" note="Required to load disk images" />
<bios path="quasi88/n88knj1.rom" md5="d81c6d5d7ad1a4bbbd6ae22a01257603" mandatory="false" hashMatchMandatory="false" core="libretro/quasi88" note="Required to view Kanji" />
<!--bios path="quasi88/n88knj2.rom" md5="41d2e2c0c0edfccf76fa1c3e38bc1cf2,898a3b7b6c3326e8b2069765bca2b944" mandatory="false" hashMatchMandatory="false" core="libretro/quasi88" note="Required to view Kanji" /-->
<!--bios path="quasi88/n88jisho.rom" md5="2e548679423370262f36cbde38a22789" core="libretro/quasi88" mandatory="false" /-->
</system>
<system fullname="NEC PC-9800 Series" platform="pc98">
<bios path="np2kai/bios.rom" md5="052f5f6010877522f78803498a625727,0c052b1f1bfd0ece11286d2ff45d296f,
36293e23fe0c86cb115d59b653c13876,3af0ae018c5710eec6e2891064814138,
50274bb5dcb707e4450011b09accffcb,c70ee9df11794bd5cc8aadb3721b4a03,
cd237e16e7e77c06bb58540e9e9fca68,e246140dec5124c5e404869a84caefce" hashMatchMandatory="false" core="libretro/np2kai" />
<bios path="np2kai/font.bmp" md5="0c8624e9ced7cca8769e5c7b0dd4279b,7da1e5b7c482d4108d22a5b09631d967" core="libretro/np2kai" mandatory="false" hashMatchMandatory="false" />
<bios path="np2kai/font.rom" md5="38d32748ae49d1815b0614970849fd40,fd0b856899aec843cbe69d2940df547f,
4133b0be0d470920da60b9ed28d2614f,693fd1da3239d4bbeafc77d211718fc5,
829b963e21334e0fc2092ebd58f2ab4a,add4a225048c85ca2bc588696c6ecdc5,
ca87908a99ea423093f6d497fc367f7d" hashMatchMandatory="false" core="libretro/np2kai" />
<bios path="np2kai/itf.rom" md5="1d295699ffeab0f0e24e09381299259d,72ea51443070f0e9212bfc9b793ee28e,
a13d96da03a28af8418d7f86ab951f1a,b49ea39a1f730f1c966babc11961dc9a,
e9fc3890963b12cf15d0a2eea5815b72" hashMatchMandatory="false" core="libretro/np2kai" />
<bios path="np2kai/sound.rom" md5="42c271f8b720e796a484cc1165ff4914,524473c1a5a03b17e21d86a0408ff827,a77fc2bc7c696dd68dba18e02f89d386,caf90f22197aed6f14c471c21e64658d" core="libretro/np2kai" mandatory="false" hashMatchMandatory="false" />
<bios path="np2kai/2608_bd.wav" md5="9c6637930b1779abe00b8b63e4e41f50,d94546e70f17fd899be8df3544ab6cbb" mandatory="false" hashMatchMandatory="false" core="libretro/np2kai" />
<bios path="np2kai/2608_hh.wav" md5="73548a1391631ff54a1f7c838d67917e,08c54a0c1f774a5538a848a6665a34b4" mandatory="false" hashMatchMandatory="false" core="libretro/np2kai" />
<bios path="np2kai/2608_rim.wav" md5="43d54b3e05c081fa280c9bace3af1043,465ea0768b27da404aec45dfc501404b" mandatory="false" hashMatchMandatory="false" core="libretro/np2kai" />
<bios path="np2kai/2608_sd.wav" md5="08124ccb84a9f65e2affc29581e690c9,d71004351c8bbfdad53b18222c061d49" mandatory="false" hashMatchMandatory="false" core="libretro/np2kai" />
<bios path="np2kai/2608_tom.wav" md5="0faed5664a2dd8b1b2308e8a50ac25ea,96a4ead13f364734f79b0c58af2f0e1f" mandatory="false" hashMatchMandatory="false" core="libretro/np2kai" />
<bios path="np2kai/2608_top.wav" md5="3721ace646ffd56439aebbb2154e9263,593cff6597ab9380d822b8f824fd2c28" mandatory="false" hashMatchMandatory="false" core="libretro/np2kai" />
<bios path="BeebFile/BIOS.rom" md5="de72efe184f74f1cb98f92b1fbf532bb" core="beebem,libretro/np2kai" mandatory="false" />
</system>
<system fullname="Sega MEGA CD" platform="segacd">
<bios path="segacd/bios_CD_E.bin" md5="e66fa1dc5820d254611fdcdba0662372" core="libretro/genesisplusgx,libretro/picodrive" />
<bios path="segacd/bios_CD_U.bin" md5="2efd74e3232ff260e371b99f84024f7f" core="libretro/genesisplusgx,libretro/picodrive" />
<bios path="segacd/bios_CD_J.bin" md5="278a9397d192149e84e820ac621a8edd,bdeb4c47da613946d422d97d98b21cda" core="libretro/genesisplusgx,libretro/picodrive" />
</system>
<system fullname="Nintendo Family Computer Disk System" platform="fds">
<bios path="fds/disksys.rom" md5="ca30b50f880eb660a320674ed365ef7a" core="libretro/fceumm,libretro/nestopia,libretro/mesen" />
</system>
<system fullname="Nintendo Gameboy Advance" platform="gba">
<bios path="gba/gba_bios.bin" md5="a860e8c0b6d573d191e4ec7db1b1e4f6" mandatory="false" core="libretro/gpsp,libretro/mgba,libretro/meteor" />
<bios path="gba/open_gba_bios.bin" md5="1876f71b0d8c65eef3454547896ffb11" mandatory="false" core="libretro/gpsp" />
</system>
<system fullname="Nintendo Satellaview" platform="satellaview">
<bios path="satellaview/BS-X.bin" md5="96cf17bf589fcbfa6f8de2dc84f19fa2,d5af0ab2545c053b90ffa0866074ecf1,9c72de0cf4c9c88003292a79ddd0144d,fed4d8242cfbed61343d53d48432aced" mandatory="true" core="libretro/snes9x,libretro/mesen_s,libretro/bsnes,libretro/bsnes-hd" />
</system>
<system fullname="Nintendo Sufami Turbo" platform="sufami">
<bios path="sufami/STBIOS.bin" md5="d3a44ba7d42a74d3ac58cb9c14c6a5ca" core="libretro/snes9x" mandatory="false" />
</system>
<system fullname="NEC PC-Engine" platform="pcengine">
<bios path="pcengine/gexpress.pce" md5="6d2cb14fc3e1f65ceb135633d1694122" mandatory="false" core="libretro/mednafen_supergrafx,libretro/mednafen_pce_fast" />
</system>
<system fullname="NEC SuperGrafx" platform="supergrafx">
<bios path="pcengine/gexpress.pce" md5="6d2cb14fc3e1f65ceb135633d1694122" mandatory="false" core="libretro/mednafen_supergrafx,libretro/mednafen_pce_fast,libretro/geargrafx" />
</system>
<system fullname="NEC PC-Engine CD" platform="pcenginecd">
<bios path="pcenginecd/syscard3.pce" md5="ff1a674273fe3540ccef576376407d1d,1e47a1780aaa7e277a3896c1ba00e317,38179df8f4ac870017db21ebcbf53114" core="libretro/mednafen_supergrafx,libretro/mednafen_pce_fast,libretro/geargrafx" />
<bios path="pcenginecd/syscard1.pce" md5="9f770275393b8627cf9d24e5c56d2ab9" mandatory="false" core="libretro/mednafen_supergrafx,libretro/mednafen_pce_fast,libretro/geargrafx" />
<bios path="pcenginecd/syscard2.pce" md5="424f1d6bf93259bf255afa7d1dc9f721" mandatory="false" core="libretro/mednafen_supergrafx,libretro/mednafen_pce_fast,libretro/geargrafx" />
<bios path="pcenginecd/syscard2u.pce" md5="94279f315e8b52904f65ab3108542afe" mandatory="false" core="libretro/mednafen_pce_fast" />
<bios path="pcenginecd/syscard3u.pce" md5="0754f903b52e3b3342202bdafb13efa5" mandatory="false" core="libretro/mednafen_pce_fast" />
<bios path="pcengine/gexpress.pce" md5="6d2cb14fc3e1f65ceb135633d1694122" mandatory="false" core="libretro/mednafen_supergrafx,libretro/mednafen_pce_fast,libretro/geargrafx" />
</system>
<system fullname="NEC PC-FX" platform="pcfx">
<bios path="pcfx/pcfx.rom" md5="08e36edbea28a017f79f8d4f7ff9b6d7" core="libretro/pcfx" />
</system>
<system fullname="MSX Familly" platform="msx1,msx2">
<bios path="msx/CARTS.SHA" md5="74b0f217fa0e2b8bb5a2f8e2ecc69da3,d6dedca1112ddfda94cc9b2e426b818b" core="libretro/fmsx" mandatory="false" />
<bios path="msx/CYRILLIC.FNT" md5="85b38e4128bbc300e675f55b278683a8" core="libretro/fmsx" mandatory="false" />
<bios path="msx/DISK.ROM" md5="80dcd1ad1a4cf65d64b7ba10504e8190" core="libretro/fmsx" mandatory="false" />
<bios path="msx/FMPAC16.ROM" md5="af8537262df8df267072f359399a7635" core="libretro/fmsx" />
<bios path="msx/FMPAC.ROM" md5="6f69cc8b5ed761b03afd78000dfb0e19" core="libretro/fmsx" />
<bios path="msx/ITALIC.FNT" md5="c83e50e9f33b8dd893c414691822740d" core="libretro/fmsx" mandatory="false" />
<bios path="msx/KANJI.ROM" md5="febe8782b466d7c3b16de6d104826b34" core="libretro/fmsx" mandatory="false" />
<bios path="msx/MSX2EXT.ROM" md5="2183c2aff17cf4297bdb496de78c2e8a" core="libretro/fmsx" />
<bios path="msx/MSX2PEXT.ROM" md5="7c8243c71d8f143b2531f01afa6a05dc" core="libretro/fmsx" />
<bios path="msx/MSX2P.ROM" md5="6d8c0ca64e726c82a4b726e9b01cdf1e" core="libretro/fmsx" />
<bios path="msx/MSX2.ROM" md5="ec3a01c91f24fbddcbcab0ad301bc9ef" core="libretro/fmsx" />
<bios path="msx/MSXDOS2.ROM" md5="6418d091cd6907bbcf940324339e43bb" core="libretro/fmsx" mandatory="false" />
<bios path="msx/MSX.ROM" md5="aa95aea2563cd5ec0a0919b44cc17d47" core="libretro/fmsx" />
<bios path="msx/PAINTER.ROM" md5="403cdea1cbd2bb24fae506941f8f655e" core="libretro/fmsx" mandatory="false" />
<bios path="msx/RS232.ROM" md5="279efd1eae0d358eecd4edc7d9adedf3" core="libretro/fmsx" mandatory="false" />
<bios path="INTERNAT.FNT" md5="ac4f4a90c1b1887db48ded39c9d9c847" core="libretro/fmsx" mandatory="false" />
<bios path="KOREAN.FNT" md5="73291e76638a2f5aa2eceb843df468f4" core="libretro/fmsx" mandatory="false" />
<bios path="JAPANESE.FNT" md5="aa28f0703b951a6be8df3e28e20d263d" core="libretro/fmsx" mandatory="false" />
</system>
<system fullname="Atari Lynx" platform="lynx">
<bios path="lynx/lynxboot.img" md5="fcd403db69f54290b51035d82f835e7b" core="libretro/handy,libretro/mednafen_lynx" />
</system>
<system fullname="Atari ST/STE/MegaSTE/TT/Falcon" platform="atarist">
<bios path="atarist/tos.img|tos.img" md5="27ac71b59d59f65571b972e0f894054a,5d65c6a384d847a0b8013d5e22ec0887,f62bc9777f28bc6876422738758db365,d41ae4efaa2c97f632dbe75d24d51bea,c87a52c277f7952b41c639fc7bf0a43b,e0444d8c51a8093a3f09665d8099c0af,d0f682ee6237497004339fb02172638b,5491b3755992feaf743ceecaa3b18f34,25789a649faff0a1176dc7d9b98105c0,b9e37f0f0a700fc673049794870bdb85,91ce7c1903006da75c823ff3c938e5d2,091a4d95f6c600231a3f1391a309ac26,a622cc35d8d78703905592dfaa4d2ccb,d6521785627d20c51edc566808a6bf28,b2a8570de2e850c5acf81cb80512d9f6,696ba04b3bc963aee2ba769298e342de,c1c57ce48e8ee4135885cee9e63a68a2,91fb61080d27d0376e1a3da409727468,f6a8fa31d0d1bac1a08d47502244408d,41b7dae4e24735f330b63ad923a0bfbc,143343f7b8e0b1162af206fe8f46b002,800d48825be45ec7f39ba7bb2c3f0b59,0087e2707c57efa2106a0aa7576655c0,036c5ae4f885cbf62c9bed651c6c58a8,52248cc70ae48b3050e197e270917130,7c040857bdcfcd7d748ca82205463efa,736adb2dc835df4d323191fdc8926cc9,992bac38e01633a529121a2a65f0779e,30f69d70fe7c210300ed83f991b12de9,bc7b224d0dc3f0cc14c8897db89c5787,6033f2b9364edfed321c6931a8181fd2,f3f92cd4e2c331aef8970a156be03b7c,a0982e760f9807d82667ff5a69e78f6b,94a75c1c65408d9f974b0463e15a3b11,61168619b5109d314638c9409f44bca2,4759f2c7bace6c2f440d27acd2ab6ed4,ed5fbaabe0219092df74c6c14cea3f8e,a4cfd3c7412002dd693f69a15d4d961c,1cbc4f55295e469fc8cd72b7efdea1da,6f9471098a521214fad1e2c6f2dd3d08,febb00ba8784798293a7ae709a1dafcb,4689ef3694ac86e7289923190e6cd10d,7aeabdc25f8134590e25643a405210ca,7449b131681f1dfe62ebed1392847057,61b620ad951815a25cb37895c81a947c,7e87d8fe7e24e0b4c55ad1b7955beae3,1c92855316a33faee602b8007f22d2cb,7cdd45b6aac66a21bfb357d9334e46db,0604dbb85928f0598d04144a8b554bbe,b2873004a408b8db36321f98daafa251,886b9b6bb6afa287211a594e16f6ca67,e690bec90d902024beed549d22150755,4a0d4f282c3f2a0196681adf88862dd4,332fe3803a7e20cd625b27a69f07ae69,a7dc40dc5c1086bce1a8f3d44fd29051,c9093f27159e7d13ac0d1501a95e53d4,066f39a7ea5789d5afd59dd7b3104fa6,2a8e39c60317b921eabd7e25b5d74395,dd1010ec566efbd71047d6c4919feba5,ed2647936ce4bd283c4d7dfd7ae09d1c,9e880168d0a004f7f5e852be758f39e4,919fd0f045299f101cf7757e5e058c41,b2ecabc15b65afef96331be46f2a2cd4,e5ea0f216fb446f1c4a4f476bc5f03d4,941baac767269649f92f7918dd5740b8" core="hatari,libretro/hatari" hashMatchMandatory="false" note="Default bios" />
<bios path="atarist/st.img" md5="c87a52c277f7952b41c639fc7bf0a43b,e0444d8c51a8093a3f09665d8099c0af,
d0f682ee6237497004339fb02172638b,5491b3755992feaf743ceecaa3b18f34,
25789a649faff0a1176dc7d9b98105c0,b9e37f0f0a700fc673049794870bdb85,
91ce7c1903006da75c823ff3c938e5d2,091a4d95f6c600231a3f1391a309ac26,
a622cc35d8d78703905592dfaa4d2ccb,d6521785627d20c51edc566808a6bf28,
b2a8570de2e850c5acf81cb80512d9f6,696ba04b3bc963aee2ba769298e342de,
c1c57ce48e8ee4135885cee9e63a68a2,91fb61080d27d0376e1a3da409727468,
f6a8fa31d0d1bac1a08d47502244408d,41b7dae4e24735f330b63ad923a0bfbc,
143343f7b8e0b1162af206fe8f46b002,800d48825be45ec7f39ba7bb2c3f0b59,
0087e2707c57efa2106a0aa7576655c0,036c5ae4f885cbf62c9bed651c6c58a8,
52248cc70ae48b3050e197e270917130,7c040857bdcfcd7d748ca82205463efa,
0604dbb85928f0598d04144a8b554bbe,b2873004a408b8db36321f98daafa251,
886b9b6bb6afa287211a594e16f6ca67,e690bec90d902024beed549d22150755,
4a0d4f282c3f2a0196681adf88862dd4,332fe3803a7e20cd625b27a69f07ae69,
a7dc40dc5c1086bce1a8f3d44fd29051,c9093f27159e7d13ac0d1501a95e53d4,
736adb2dc835df4d323191fdc8926cc9" mandatory="true" hashMatchMandatory="false" core="hatari,libretro/hatari" note="Atari ST/Mega-ST (not STE!) bios." />
<bios path="atarist/ste.img" md5="992bac38e01633a529121a2a65f0779e,30f69d70fe7c210300ed83f991b12de9,
bc7b224d0dc3f0cc14c8897db89c5787,6033f2b9364edfed321c6931a8181fd2,
f3f92cd4e2c331aef8970a156be03b7c,a0982e760f9807d82667ff5a69e78f6b,
94a75c1c65408d9f974b0463e15a3b11,61168619b5109d314638c9409f44bca2,
4759f2c7bace6c2f440d27acd2ab6ed4,ed5fbaabe0219092df74c6c14cea3f8e,
a4cfd3c7412002dd693f69a15d4d961c,1cbc4f55295e469fc8cd72b7efdea1da,
6f9471098a521214fad1e2c6f2dd3d08,febb00ba8784798293a7ae709a1dafcb,
0604dbb85928f0598d04144a8b554bbe,b2873004a408b8db36321f98daafa251,
886b9b6bb6afa287211a594e16f6ca67,e690bec90d902024beed549d22150755,
4a0d4f282c3f2a0196681adf88862dd4,332fe3803a7e20cd625b27a69f07ae69,
a7dc40dc5c1086bce1a8f3d44fd29051,c9093f27159e7d13ac0d1501a95e53d4" mandatory="true" hashMatchMandatory="false" core="hatari,libretro/hatari" note="Atari STE bios." />
<bios path="atarist/megaste.img" md5="4689ef3694ac86e7289923190e6cd10d,7aeabdc25f8134590e25643a405210ca,
7449b131681f1dfe62ebed1392847057,61b620ad951815a25cb37895c81a947c,
7e87d8fe7e24e0b4c55ad1b7955beae3,1c92855316a33faee602b8007f22d2cb,
7cdd45b6aac66a21bfb357d9334e46db,0604dbb85928f0598d04144a8b554bbe,
b2873004a408b8db36321f98daafa251,886b9b6bb6afa287211a594e16f6ca67,
e690bec90d902024beed549d22150755,4a0d4f282c3f2a0196681adf88862dd4,
332fe3803a7e20cd625b27a69f07ae69,a7dc40dc5c1086bce1a8f3d44fd29051,
c9093f27159e7d13ac0d1501a95e53d4" mandatory="false" hashMatchMandatory="true" core="hatari,libretro/hatari" note="Atari Mega-STE bios." />
<bios path="atarist/tt.img" md5="066f39a7ea5789d5afd59dd7b3104fa6,2a8e39c60317b921eabd7e25b5d74395,
dd1010ec566efbd71047d6c4919feba5,19cd81e1c3049bf408ad426dc5c3b2e0,
ac6ca0f0ed42a1603dfd409c4bf8eb89" mandatory="false" hashMatchMandatory="true" core="hatari,libretro/hatari" note="Atari TT bios." />
<bios path="atarist/falcon.img" md5="ed2647936ce4bd283c4d7dfd7ae09d1c,9e880168d0a004f7f5e852be758f39e4,
919fd0f045299f101cf7757e5e058c41,b2ecabc15b65afef96331be46f2a2cd4,
e5ea0f216fb446f1c4a4f476bc5f03d4,941baac767269649f92f7918dd5740b8,
b338bacb2fc453bab61bcc1e2cf5076b" core="hatari,libretro-hatari" note="FALCON 30/40 bios." />
<bios path="atarist/emutos.img" md5="e2c861c588fca2d0cf6be3df3aaf05f2" mandatory="true" hashMatchMandatory="true" core="hatari,libretro/hatari" note="EMUTOS Open-source bios. 99% Compatible with all Atari machines." />
<bios path="etos1024k.img" md5="1cb3775c4775bad75d24447a90a2890b" core="libretro/hatarib" mandatory="false" />
<bios path="etos192uk.img" md5="5f5730d9b557c44ddb9bc410ce2925d8" core="libretro/hatarib" mandatory="false" />
<bios path="etos192us.img" md5="796f62574413bc59ca767063b3184f90" core="libretro/hatarib" mandatory="false" />
</system>
<system fullname="Magnavox Odyssey²" platform="o2em">
<bios path="o2em/o2rom.bin" md5="562d5ebf9e030a40d6fabfc2f33139fd" core="libretro/o2em" />
<bios path="o2em/c52.bin" md5="f1071cdb0b6b10dde94d3bc8a6146387" core="libretro/o2em" />
</system>
<system fullname="Philips VideoPac+" platform="videopacplus">
<bios path="o2em/g7400.bin" md5="c500ff71236068e0dc0d0603d265ae76" core="libretro/o2em" />
<bios path="o2em/jopac.bin" md5="279008e4a0db2dc5f1c048853b033828" core="libretro/o2em" />
</system>
<system fullname="Panasonic 3DO" platform="3do">
<bios path="3do/panafz1.bin" md5="f47264dd47fe30f73ab3c010015c155b" core="libretro/opera" mandatory="false" note="Panasonic FZ-1 (U)" />
<bios path="3do/panafz1j.bin" md5="a496cfdded3da562759be3561317b605" core="libretro/opera" mandatory="false" note="Panasonic FZ-1 (J)" />
<bios path="3do/panafz1j-norsa.bin" md5="f6c71de7470d16abe4f71b1444883dc8" core="libretro/opera" mandatory="false" note="Panasonic FZ-1 (J) (RSA check disabled)" />
<bios path="3do/panafz10.bin" md5="51f2f43ae2f3508a14d9f56597e2d3ce" mandatory="false" core="libretro/opera" note="Panasonic FZ-10 (U)" />
<bios path="3do/panafz10-norsa.bin" md5="1477bda80dc33731a65468c1f5bcbee9" mandatory="false" core="libretro/opera" note="Panasonic FZ-10 (U) (RSA check disabled)" />
<bios path="3do/panafz10e-anvil.bin" md5="a48e6746bd7edec0f40cff078f0bb19f" mandatory="false" core="libretro/opera" note="Panasonic FZ-10 (E) w/ ANVIL" />
<bios path="3do/panafz10e-anvil-norsa.bin" md5="cf11bbb5a16d7af9875cca9de9a15e09" mandatory="false" core="libretro/opera" note="Panasonic FZ-10 (E) w/ ANVIL (RSA check disabled)" />
<bios path="3do/goldstar.bin" md5="8639fd5e549bd6238cfee79e3e749114" mandatory="false" core="libretro/opera" note="Goldstar GDO-101M" />
<bios path="3do/sanyotry.bin" md5="35fa1a1ebaaeea286dc5cd15487c13ea" mandatory="false" core="libretro/opera" note="Sanyo IMP-21J TRY" />
<bios path="3do/3do_arcade_saot.bin" md5="8970fc987ab89a7f64da9f8a8c4333ff" mandatory="false" core="libretro/opera" note="Shootout At Old Tucson" />
<bios path="3do/panafz1-kanji.bin" md5="b8dc97f778a6245c58e064b0312e8281" mandatory="false" core="libretro/opera" note="Panasonic FZ-1 (J) Kanji ROM. Useful for some Japanese games" />
<bios path="3do/panafz1j-kanji.bin" md5="c23fb5d5e6bb1c240d02cf968972be37" mandatory="false" core="libretro/opera" note="Panasonic FZ-1 (J) Kanji ROM. Useful for some Japanese games" />
<bios path="3do/panafz10ja-anvil-kanji.bin" md5="428577250f43edc902ea239c50d2240d" mandatory="false" core="libretro/opera" note="Panasonic FZ-10 (J) w/ ANVIL Kanji ROM. Useful for some Japanese games" />
<bios path="opera-boot.bin" md5="ad43f7905ba53da48c0b8d9643fb8cec" core="libretro/opera" mandatory="false" />
</system>
<system fullname="Sharp X68000" platform="x68000">
<bios path="keropi/iplrom.dat" md5="7fd4caabac1d9169e289f0f7bbf71d8e" core="libretro/px68k" />
<bios path="keropi/cgrom.dat" md5="cb0a5cfcf7247a7eab74bb2716260269" core="libretro/px68k" />
<bios path="keropi/iplrom30.dat" md5="f373003710ab4322642f527f567e020a" core="libretro/px68k" mandatory="false" />
<bios path="keropi/iplromco.dat" md5="cc78d4f4900f622bd6de1aed7f52592f" core="libretro/px68k" mandatory="false" />
<bios path="keropi/iplromxv.dat" md5="0617321daa182c3f3d6f41fd02fb3275" core="libretro/px68k" mandatory="false" />
</system>
<system fullname="Sharp X1" platform="x1">
<bios path="xmil/IPLROM.X1" md5="eeeea1cd29c6e0e8b094790ae969bfa7,59074727a953fe965109b7dbe3298e30" core="libretro/xmil" mandatory="false" />
<bios path="xmil/IPLROM.X1T" md5="56c28adcf1f3a2f87cf3d57c378013f5" core="libretro/xmil" mandatory="false" />
</system>
<system fullname="Sony Playstation" platform="psx">
<bios path="scph5500.bin" md5="8dd7d5296a650fac7319bce665a6a53c" core="libretro/mednafen_psx,libretro/mednafen_psx_hw,libretro/swanstation,duckstation" />
<bios path="scph5501.bin" md5="490f666e1afb15b7362b406ed1cea246" core="libretro/pcsx_rearmed,libretro/mednafen_psx,libretro/mednafen_psx_hw,libretro/swanstation,duckstation" />
<bios path="scph5502.bin" md5="32736f17079d0b2b7024407c39bd3050" core="libretro/mednafen_psx,libretro/mednafen_psx_hw,libretro/swanstation,duckstation" />
<bios path="scph101.bin" md5="6e3735ff4c7dc899ee98981385f6f3d0" core="libretro/pcsx_rearmed" mandatory="false" note="Recommended for better compatibility." />
<bios path="scph7001.bin" md5="1e68c231d0896b7eadcad1d7d8e76129" core="libretro/pcsx_rearmed" mandatory="false" note="Recommended for better compatibility." />
<bios path="scph1001.bin" md5="924e392ed05558ffdb115408c263dccf,dc2b9bf8da62ec93e868cfd29f0d067d" core="libretro/pcsx_rearmed" mandatory="false" note="Recommended for better compatibility." />
<bios path="ps1_rom.bin" md5="81bbe60ba7a3d1cea1d48c14cbcc647b" core="libretro/swanstation,duckstation" mandatory="false" note="Bios you can grab in PS3 firmware upgrade. Compatible with all regions, can replace all others bios." />
<bios path="scph5000.bin" md5="57a06303dfa9cf9351222dfcbb4a29d9" core="duckstation" mandatory="false" />
<bios path="scph1002a.bin" md5="54847e693405ffeb0359c6287434cbef" core="duckstation" mandatory="false" />
<bios path="scph1002b.bin" md5="417b34706319da7cf001e76e40136c23" core="duckstation" mandatory="false" />
<bios path="scph1002c.bin" md5="e2110b8a2b97a8e0b857a45d32f7e187" core="duckstation" mandatory="false" />
<bios path="scph3000.bin" md5="849515939161e62f6b866f6853006780" core="duckstation" mandatory="false" />
<bios path="scph1001_v20.bin" md5="dc2b9bf8da62ec93e868cfd29f0d067d" core="duckstation" mandatory="false" />
<bios path="scph3500.bin" md5="cba733ceeff5aef5c32254f1d617fa62" core="duckstation" mandatory="false" />
<bios path="scph1001_v21.bin" md5="da27e8b6dab242d8f91a9b25d80c63b8" core="duckstation" mandatory="false" />
<bios path="scph7000.bin" md5="8e4c14f567745eff2f0408c8129f72a6" core="duckstation" mandatory="false" />
<bios path="scph7000w.bin" md5="b84be139db3ee6cbd075630aa20a6553" core="duckstation" mandatory="false" />
<bios path="scph7002.bin" md5="b9d9a0286c33dc6b7237bb13cd46fdee" core="duckstation" mandatory="false" />
<bios path="scph100.bin" md5="8abc1b549a4a80954addc48ef02c4521" core="duckstation" mandatory="false" />
<bios path="scph101_v44.bin" md5="9a09ab7e49b422c007e6d54d7c49b965" core="duckstation" mandatory="false" />
<bios path="scph1000r.bin" md5="476d68a94ccec3b9c8303bbd1daf2810" core="duckstation" mandatory="false" />
<bios path="dtlh1100.bin" md5="ca5cfc321f916756e3f0effbfaeba13b" core="duckstation" mandatory="false" />
<bios path="scph102_v44.bin" md5="b10f5e0e3d9eb60e5159690680b1e774" core="duckstation" mandatory="false" />
<bios path="scph102_v45.bin" md5="de93caec13d1a141a40a79f5c86168d6" core="duckstation" mandatory="false" />
<bios path="scph1000.bin" md5="239665b1a3dade1b5a52c06338011044" core="duckstation" mandatory="false" />
<bios path="ps2_scph18000.bin" md5="d8f485717a5237285e4d7c5f881b7f32" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh10000_0117.bin" md5="32f2e4d5ff5ee11072a6bc45530f5765" core="duckstation" mandatory="false" />
<bios path="ps2_scph10000_0117.bin" md5="acf4730ceb38ac9d8c7d8e21f2614600" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh10000_0217.bin" md5="acf9968c8f596d2b15f42272082513d1" core="duckstation" mandatory="false" />
<bios path="ps2_scph10000_15000.bin" md5="b1459d7446c69e3e97e6ace3ae23dd1c" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh10000_0224.bin" md5="d3f1853a16c2ec18f3cd1ae655213308" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh30001.bin" md5="63e6fd9b3c72e0d7b920e80cf76645cd" core="duckstation" mandatory="false" />
<bios path="ps2_scph30001_0727.bin" md5="a20c97c02210f16678ca3010127caf36" core="duckstation" mandatory="false" />
<bios path="ps2_scph30001_0902.bin" md5="8db2fbbac7413bf3e7154c1e0715e565" core="duckstation" mandatory="false" />
<bios path="ps2_scph30002_0902.bin" md5="b7fa11e87d51752a98b38e3e691cbf17" core="duckstation" mandatory="false" />
<bios path="ps2_scph18000_gh003.bin" md5="f63bc530bd7ad7c026fcd6f7bd0d9525" core="duckstation" mandatory="false" />
<bios path="ps2_scph18000_gh008.bin" md5="cee06bd68c333fc5768244eae77e4495" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh30101.bin" md5="0bf988e9c7aaa4c051805b0fa6eb3387" core="duckstation" mandatory="false" />
<bios path="ps2_scph30001_35001.bin" md5="8accc3c49ac45f5ae2c5db0adc854633" core="duckstation" mandatory="false" />
<bios path="ps2_scph30002_1228.bin" md5="838544f12de9b0abc90811279ee223c8" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh30000.bin" md5="bb6bbc850458fff08af30e969ffd0175" core="duckstation" mandatory="false" />
<bios path="ps2_scph30000_35000.bin" md5="815ac991d8bc3b364696bead3457de7d" core="duckstation" mandatory="false" />
<bios path="ps2_scph30001r_0427.bin" md5="b107b5710042abe887c0f6175f6e94bb" core="duckstation" mandatory="false" />
<bios path="ps2_scph30000_0427.bin" md5="ab55cceea548303c22c72570cfd4dd71" core="duckstation" mandatory="false" />
<bios path="ps2_scph30001r_0704.bin" md5="18bcaadb9ff74ed3add26cdf709fff2e" core="duckstation" mandatory="false" />
<bios path="ps2_scph30002r_0704.bin" md5="491209dd815ceee9de02dbbc408c06d6" core="duckstation" mandatory="false" />
<bios path="ps2_scph30001r_1004.bin" md5="7200a03d51cacc4c14fcdfdbc4898431" core="duckstation" mandatory="false" />
<bios path="ps2_scph30002r_1004.bin" md5="8359638e857c8bc18c3c18ac17d9cc3c" core="duckstation" mandatory="false" />
<bios path="ps2_scph30005r.bin" md5="352d2ff9b3f68be7e6fa7e6dd8389346" core="duckstation" mandatory="false" />
<bios path="ps2_scph39001.bin" md5="d5ce2c7d119f563ce04bc04dbc3a323e" core="duckstation" mandatory="false" />
<bios path="ps2_scph39002.bin" md5="0d2228e6fd4fb639c9c39d077a9ec10c" core="duckstation" mandatory="false" />
<bios path="ps2_scph37000_39000.bin" md5="72da56fccb8fcd77bba16d1b6f479914" core="duckstation" mandatory="false" />
<bios path="ps2_scph39005.bin" md5="315a4003535dfda689752cb25f24785c" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh50000.bin" md5="54ecde087258557e2ddb5c3ddb004028" core="duckstation" mandatory="false" />
<bios path="ps2_scph50000_55000.bin" md5="312ad4816c232a9606e56f946bc0678a" core="duckstation" mandatory="false" />
<bios path="ps2_scph50002_0227.bin" md5="6e69920fa6eef8522a1d688a11e41bc6" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh50001_0325.bin" md5="eb960de68f0c0f7f9fa083e9f79d0360" core="duckstation" mandatory="false" />
<bios path="ps2_scph50001_0325.bin" md5="8aa12ce243210128c5074552d3b86251" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh50009.bin" md5="240d4c5ddd4b54069bdc4a3cd2faf99d" core="duckstation" mandatory="false" />
<bios path="ps2_desr5000.bin" md5="1c6cd089e6c83da618fbf2a081eb4888" core="duckstation" mandatory="false" />
<bios path="ps2_scph55000_0623.bin" md5="463d87789c555a4a7604e97d7db545d1" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh50001_0623.bin" md5="ab9d49ad40ae49f19856ad187777b1b3" core="duckstation" mandatory="false" />
<bios path="ps2_scph50001_0623.bin" md5="35461cecaa51712b300b2d6798825048" core="duckstation" mandatory="false" />
<bios path="ps2_scph50002_0623.bin" md5="bd6415094e1ce9e05daabe85de807666" core="duckstation" mandatory="false" />
<bios path="ps2_scph50006.bin" md5="2e70ad008d4ec8549aada8002fdf42fb" core="duckstation" mandatory="false" />
<bios path="ps2_scph50005.bin" md5="50d5b97b57d8c9b6534adcb46c2027d4" core="duckstation" mandatory="false" />
<bios path="ps2_scph50009.bin" md5="1b6e631b536247756287b916f9396872" core="duckstation" mandatory="false" />
<bios path="ps2_scph50000_0822.bin" md5="00da1b177096cfd2532c8fa22b43e667" core="duckstation" mandatory="false" />
<bios path="ps2_scph50011.bin" md5="81f4336c1de607dd0865011c0447052e" core="duckstation" mandatory="false" />
<bios path="ps2_scph70000.bin" md5="0eee5d1c779aa50e94edd168b4ebf42e" core="duckstation" mandatory="false" />
<bios path="ps2_scph70001.bin" md5="d333558cc14561c1fdc334c75d5f37b7" core="duckstation" mandatory="false" />
<bios path="ps2_scph70002.bin" md5="dc752f160044f2ed5fc1f4964db2a095" core="duckstation" mandatory="false" />
<bios path="ps2_scph70005.bin" md5="3e3e030c0f600442fa05b94f87a1e238" core="duckstation" mandatory="false" />
<bios path="ps2_desr5500.bin" md5="1ad977bb539fc9448a08ab276a836bbc" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh75000.bin" md5="bf0078ba5e19d57eae18047407f3b6e5" core="duckstation" mandatory="false" />
<bios path="ps2_scph75000.bin" md5="eb4f40fcf4911ede39c1bbfe91e7a89a" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh75000a.bin" md5="9959ad7a8685cad66206e7752ca23f8b" core="duckstation" mandatory="false" />
<bios path="ps2_scph75001.bin" md5="929a14baca1776b00869f983aa6e14d2" core="duckstation" mandatory="false" />
<bios path="ps2_scph75002.bin" md5="573f7d4a430c32b3cc0fd0c41e104bbd" core="duckstation" mandatory="false" />
<bios path="ps2_scph75006.bin" md5="df63a604e8bff5b0599bd1a6c2721bd0" core="duckstation" mandatory="false" />
<bios path="ps2_scph77000.bin" md5="5b1ba4bb914406fae75ab8e38901684d" core="duckstation" mandatory="false" />
<bios path="ps2_scph77001.bin" md5="cb801b7920a7d536ba07b6534d2433ca" core="duckstation" mandatory="false" />
<bios path="ps2_scph77002.bin" md5="af60e6d1a939019d55e5b330d24b1c25" core="duckstation" mandatory="false" />
<bios path="ps2_scph77006.bin" md5="549a66d0c698635ca9fa3ab012da7129" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh90000_j.bin" md5="5e2014472c88f74f7547d8c2c60eca45" core="duckstation" mandatory="false" />
<bios path="ps2_scph79000_90000.bin" md5="5de9d0d730ff1e7ad122806335332524" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh90000_a.bin" md5="21fe4cad111f7dc0f9af29477057f88d" core="duckstation" mandatory="false" />
<bios path="ps2_scph79001_90001.bin" md5="40c11c063b3b9409aa5e4058e984e30c" core="duckstation" mandatory="false" />
<bios path="ps2_scph79002_90002.bin" md5="80bbb237a6af9c611df43b16b930b683" core="duckstation" mandatory="false" />
<bios path="ps2_scph79006_90006.bin" md5="c37bce95d32b2be480f87dd32704e664" core="duckstation" mandatory="false" />
<bios path="ps2_scph90000_0220.bin" md5="80ac46fa7e77b8ab4366e86948e54f83" core="duckstation" mandatory="false" />
<bios path="ps2_scph90001_0220.bin" md5="21038400dc633070a78ad53090c53017" core="duckstation" mandatory="false" />
<bios path="ps2_scph90002_0220.bin" md5="dc69f0643a3030aaa4797501b483d6c4" core="duckstation" mandatory="false" />
<bios path="ps2_scph90005_0220.bin" md5="30d56e79d89fbddf10938fa67fe3f34e" core="duckstation" mandatory="false" />
<bios path="ps2_scph30003.bin" md5="71f50ef4f4e17c163c78908e16244f7d" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh30002.bin" md5="91c87cb2f2eb6ce529a2360f80ce2457" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh30102_0902.bin" md5="3016b3dd42148a67e2c048595ca4d7ce" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh30102_1228.bin" md5="6f9a6feb749f0533aaae2cc45090b0ed" core="duckstation" mandatory="false" />
<bios path="ps2_scph39008.bin" md5="5b1f47fbeb277c6be2fccdd6344ff2fd" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh50002.bin" md5="666018ffec65c5c7e04796081295c6c7" core="duckstation" mandatory="false" />
<bios path="ps2_scph50008.bin" md5="b53d51edc7fc086685e31b811dc32aad" core="duckstation" mandatory="false" />
<bios path="ps2_scph50004_0822.bin" md5="afde410bd026c16be605a1ae4bd651fd" core="duckstation" mandatory="false" />
<bios path="ps2_scph70002_alt.bin" md5="7ebb4fc5eab6f79a27d76ac9aad392b2" core="duckstation" mandatory="false" />
<bios path="ps2_dtlh70002.bin" md5="63ead1d74893bf7f36880af81f68a82d" core="duckstation" mandatory="false" />
<bios path="ps2_kdl22px300.bin" md5="93ea3bcee4252627919175ff1b16a1d9" core="duckstation" mandatory="false" />
<bios path="scph5903.bin" md5="81328b966e6dcf7ea1e32e55e1c104bb" core="libretro/mednafen_psx" mandatory="false" />
<bios path="psxonpsp660.bin" md5="c53ca5908936d412331790f4426c6c33" core="libretro/mednafen_psx,libretro/pcsx_rearmed,libretro/swanstation" mandatory="false" />
</system>
<system fullname="Sony Playstation 2" platform="ps2">
<bios path="ps2/ps2-0230a-20080220.bin" md5="21038400dc633070a78ad53090c53017" core="libretro/pcsx2,pcsx2" note="Recommended for better compatibility." />
<bios path="ps2/ps2-0230e-20080220.bin" md5="dc69f0643a3030aaa4797501b483d6c4" core="libretro/pcsx2,pcsx2" />
<bios path="ps2/ps2-0230h-20080220.bin" md5="30d56e79d89fbddf10938fa67fe3f34e" core="libretro/pcsx2,pcsx2" />
<bios path="ps2/ps2-0230j-20080220.bin" md5="80ac46fa7e77b8ab4366e86948e54f83" core="libretro/pcsx2,pcsx2" />
<bios path="resources/GameIndex.yaml" md5="fc3c14208a929c386445635b19baa3f2" core="pcsx2" mandatory="false" />
<bios path="resources/RedumpDatabase.yaml" md5="0525ad1f1381152f20bfb05775cf39cd" core="pcsx2" mandatory="false" />
</system>
<system fullname="Fairchild Channel-F" platform="channelf">
<bios path="channelf/sl31254.bin" md5="da98f4bb3242ab80d76629021bb27585" core="libretro/freechaf" />
<bios path="channelf/sl31253.bin" md5="ac9804d4c0e9d07e33472e3726ed15c3" core="libretro/freechaf" />
<bios path="channelf/sl90025.bin" md5="95d339631d867c8f1d15a5f2ec26069d" core="libretro/freechaf" mandatory="false" note="Optional replacement for sl31254.bin"/>
</system>
<system fullname="Mattel Intellivision" platform="intellivision">
<bios path="intellivision/exec.bin" md5="62e761035cb657903761800f4437b8af" core="libretro/freeintv" />
<bios path="intellivision/grom.bin" md5="0cd5946c6473e42e8e4c2137785e427f" core="libretro/freeintv" />
</system>
<system fullname="Nintendo Pokémon Mini" platform="pokemini">
<bios path="pokemini/bios.min" md5="1e4fb124a3a886865acb574f388c803d" mandatory="false" core="libretro/pokemini" />
</system>
<system fullname="Nintendo DS" platform="nds">
<bios path="nds/bios7.bin" md5="df692a80a5b1bc90728bc3dfc76cd948" core="libretro/melonds,libretro/desmume" mandatory="false" />
<bios path="nds/bios9.bin" md5="a392174eb3e572fed6447e956bde4b25" core="libretro/melonds,libretro/desmume" mandatory="false" />
<bios path="nds/firmware.bin" md5="145eaef5bd3037cbc247c213bb3da1b3,e45033d9b0fa6b0de071292bba7c9d13,3ad72b2c9a736b24953f2d391da4bfcc" core="libretro/melonds,libretro/desmume" mandatory="false" />
</system>
<system fullname="Palm Pilot" platform="palm">
<bios path="palm/palmos41-en-m515.rom" md5="83cb1d1c76e568b916dc2e7c0bf669f6" core="libretro/mu" />
<bios path="palm/bootloader-dbvz.rom" md5="9da101cd2317830649a31f8fa46debec" core="libretro/mu" mandatory="false" />
</system>
<system fullname="Tangerine Oric/Atmos" platform="oricatmos">
<bios path="oricutron/basic11b.rom" md5="a330779c42ad7d0c4ac6ef9e92788ec6" core="oricutron" />
<bios path="oricutron/basic10.rom" md5="ebe418ec8a6c85d5ac32956c9a96c179" core="oricutron" />
<bios path="oricutron/bd500.rom" md5="2b6498fd29a0adbf1c529762c02c33ab" core="oricutron" mandatory="false" />
<bios path="oricutron/jasmin.rom" md5="5136f764a7dbd1352519351fbb53a9f3" core="oricutron" mandatory="false" />
<bios path="oricutron/microdis.rom" md5="df864344d2a2091c3f952bd1c5ce1707" core="oricutron" mandatory="false" />
<bios path="oricutron/pravetzt.rom" md5="8712a22e7e078de3343667d9fc1f2390" core="oricutron" />
<bios path="oricutron/8dos2.rom" md5="5f3cd5a4307fed7a9dfe8faa4c044273" core="oricutron" mandatory="false" />
<bios path="oricutron/teleass.rom" md5="2324c9cc227c1327a72a667c97ed2990" core="oricutron" />
<bios path="oricutron/hyperbas.rom" md5="364bf095e0dc4222d75354d50b8cddfc" core="oricutron" />
<bios path="oricutron/telmon24.rom" md5="9a432244d9ee4a49e8ddcde64af94e05" core="oricutron" />
</system>
<system fullname="Spectravideo" platform="spectravideo">
<bios path="Machines/SVI - Spectravideo SVI-318/svi318.rom" md5="ee6ad7ea29e791b03a28a9443e622648" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/SVI - Spectravideo SVI-328 80 Column/svi328a.rom" md5="352f054ab09605070bdff49d73f335cc" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/SVI - Spectravideo SVI-328 80 Column/svi806.rom" md5="82f7bc9c08f43db1d79bcb565a0de12b" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/SVI - Spectravideo SVI-328 80 Swedish/svi328a.rom" md5="352f054ab09605070bdff49d73f335cc" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/SVI - Spectravideo SVI-328 80 Swedish/svi806se.rom" md5="6a5536c1eb4f0477c4f76488cd8ca3ad" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/SVI - Spectravideo SVI-328 MK2/svi328a.rom" md5="352f054ab09605070bdff49d73f335cc" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/SVI - Spectravideo SVI-328 MK2/svi806.rom" md5="82f7bc9c08f43db1d79bcb565a0de12b" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/SVI - Spectravideo SVI-328/svi328.rom" md5="2cebd1db9dda475a011b7bce65c984a2" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
</system>
<system fullname="Colecovision" platform="colecovision">
<bios path="Machines/COL - Bit Corporation Dina/czz50-1.rom" md5="1de922acdd742d31349c2801e9768c35" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/COL - Bit Corporation Dina/czz50-2.rom" md5="72b089dc55b7fe7ffb5028f365e8c045" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/COL - ColecoVision with Opcode Memory Extension/coleco.rom" md5="2c66f5911e5b42b8ebe113403548eee7" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/COL - ColecoVision/coleco.rom" md5="2c66f5911e5b42b8ebe113403548eee7" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/COL - Spectravideo SVI-603 Coleco/SVI603.ROM" md5="c60a2e85572c0ccb69505a7646d5c1b6" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="coleco/boot.rom" md5="2c66f5911e5b42b8ebe113403548eee7" core="libretro/gearcoleco" mandatory="true" />
</system>
<system fullname="MSX and MSX2 Series" platform="msx1,msx2,msxturbor">
<bios path="Machines/Forte II Games - Pesadelo/pesadelo.rom" md5="ba53d700ec25bcb08020ce693319cd28" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX - C-BIOS/cbios_logo_msx1.rom" md5="25b5cdea5040883a206b89845cdf55f1" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX - C-BIOS/cbios_main_msx1.rom" md5="87b27f48cc25e2b6f749c019587d5f23" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2 - C-BIOS/cbios_logo_msx2.rom" md5="659db9142e62c51f2f75fd52fac78e44" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2 - C-BIOS/cbios_main_msx2.rom" md5="98b94c2d99066f272bb5de07778f7fd1" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2 - C-BIOS/cbios_sub.rom" md5="9dd9a69432cc116d0f1d4ec7a51053e0" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - C-BIOS/cbios_logo_msx2+.rom" md5="462d6ecb52a8c35dd7d48c2d46687f14" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - C-BIOS/cbios_main_msx2+.rom" md5="0a34c660614ead31dab78638ce7745e9" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - C-BIOS/cbios_music.rom" md5="e09783c4ec6d4770c5395c42bb0e1d91" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - C-BIOS/cbios_sub.rom" md5="9dd9a69432cc116d0f1d4ec7a51053e0" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - European/KANJI.rom" md5="acf53887c2d2783dc059a9b442c86b90" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - European/MSX2PMUS.rom" md5="f877f32e6d8687474ac5ee83e40de23b" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - European/MSXKANJI.rom" md5="9dfdebfaa6b547222a40aab8bb2e29f8" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - European/Msx2pe.rom" md5="277fd57c13f301fb4b366845a32d673a" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - European/Msx2pexte.rom" md5="f78ab735aaad7045badbda8f4c8ac751" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - European/PANASONICDISK.rom" md5="00aa02b6077de40a0b51d71a3c3e1d5f" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/MSX2+ - European/XBASIC2.rom" md5="0b6120f289336538bc564548109f97c6" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/SEGA - SF-7000/sf7000.rom" md5="561b362f9aa4cbcb240461abf83c2e0d" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/ARAB1.ROM" md5="7fa0558bcec9dba310579521623d9f6a" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/ARABIC.rom" md5="20c4b5d1d9469c201b145f082ec32658" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/BEERIDE.ROM" md5="b32279f2700652a5ce0a809318626763" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/FMPAC.rom" md5="6f69cc8b5ed761b03afd78000dfb0e19" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/GCVMX80.ROM" md5="fd0b8f1766dc6dcc03a43d9c79dc4e37" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/HANGUL.rom" md5="9baf17b190f631405b6b0eeeeb162b87" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/KANJI.rom" md5="acf53887c2d2783dc059a9b442c86b90" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MICROSOLDISK.ROM" md5="02e8b1f96049f09d6d3a735647cbbb2a" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MOONSOUND.rom" md5="42af93619160ef2116416f74a6cb12f2" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX.rom" md5="aa95aea2563cd5ec0a0919b44cc17d47" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2.rom" md5="ec3a01c91f24fbddcbcab0ad301bc9ef" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2AR.ROM" md5="91764e84f977671ac7caa50b36273fd2" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2AREXT.ROM" md5="be5d1ec8001d945ca1432285722e9d16" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2BR.rom" md5="d3df424728a225b301510f5384cae583" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2BREXT.rom" md5="355c6d5ee31da441d485cd89ca906413" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2EXT.rom" md5="2183c2aff17cf4297bdb496de78c2e8a" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2FR.rom" md5="7af9e84da1520a8a7fb82e73703e5075" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2FREXT.rom" md5="6ffe789cca2eca9d2e71ca7b69b97e6b" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2G.rom" md5="b6c33b7b3508d691d7872589c778f808" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2GEXT.rom" md5="4047ce143a8bf391e21991835aa65b59" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2HAN.rom" md5="7b9466546009d419ebd0dc27db90c30e" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2J.rom" md5="53bec1c22b30c0a15263e04b91a7814f" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2JEXT.rom" md5="8aabde714a42256bef36ea9b04f6ef59" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2KR.rom" md5="6819a1533502261bfdd52436b8346073" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2KREXT.rom" md5="30a0b3402a0a13b516af76d39f45a365" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2P.rom" md5="6d8c0ca64e726c82a4b726e9b01cdf1e" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2PEXT.rom" md5="7c8243c71d8f143b2531f01afa6a05dc" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2PMUS.rom" md5="f877f32e6d8687474ac5ee83e40de23b" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2R.rom" md5="db56360c85ef8410dc4bcf8e8602f61e" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2R2.ROM" md5="96ac231b718e88ce64d5a9b4a5e9ae12" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2REXT.rom" md5="8e4af1124e2b82fbdc74a7bc5f20dc6e" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2SE.rom" md5="fb8f7ab15e32a91147204bd7f7a1b451" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2SP.rom" md5="79caefa20a0d056fb42eaeca856c6f82" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSX2SPEXT.rom" md5="d71842ce8f559a8aed2721766bc15f2b" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXAR.ROM" md5="793e3b833c33be7aaf834beacb8fb926" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXBR.rom" md5="d13c1fc9ad4897c322f51aab3ad3b30d" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXDOS23.ROM" md5="56bf5b02fed377b7bb9d91f914965431" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXFR.rom" md5="6f43d28ac4a69182c860c2db0e18ee6d" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXG.rom" md5="4655329d3f37bf1a655d05f2abd1aa62" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXHAN.rom" md5="394efbc50fb7df1151130d8c162f85c3" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXJ.rom" md5="f005e55c680ba6e7b19f6d4dc8f73ce5" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXKANJI.rom" md5="9dfdebfaa6b547222a40aab8bb2e29f8" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXKR.rom" md5="c84f362c44192659273d45ae97462362" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXR.rom" md5="0db9592930488259fc1a5c127215e784" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXR2.ROM" md5="704bdd980fa56c6be5c680358458eeeb" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXSE.ROM" md5="161cb768c52a13f5b38ba46e721b68c1" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXSP.rom" md5="51af5b19aeccf94eb8e03bce0b5d33c4" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXTR.ROM" md5="fd9513736823e470965949f2a3ec6a43" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXTREXT.ROM" md5="824b1c4475a3bd3b91c5ae81ea940aa2" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXTRMUS.ROM" md5="c688a229f834f95f8c64df7d33188cd8" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/MSXTROPT.ROM" md5="2cba0d812ec445cfe63ffa2cac8d42c2" core="libretro/bluemsx" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/NATIONALDISK.rom" md5="86269da485e852d9f581ac27f4ba32ff" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/NOVAXIS.rom" md5="20989124671593ab04eeb01d52a1e25c" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/PAINT.rom" md5="41db0d7b37be479296ffd59fcd6775f0" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/PANASONICDISK.rom" md5="00aa02b6077de40a0b51d71a3c3e1d5f" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/PHILIPSDISK.rom" md5="01dd1d72ed9bb6afe8a9b441c198a1cd" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/RS232.ROM" md5="55cca200bbbdd0a1ec5c9d70966c05c0" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/SUNRISEIDE.rom" md5="7b564497beb2c0de0847f107dec00ddf" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/SWP.rom" md5="490db04e2a3c1c993a2a9d3611949c76" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/XBASIC2.rom" md5="0b6120f289336538bc564548109f97c6" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/nowindDos1.rom" md5="8c294a75f14fc30fce0c8642d28ccec1" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
<bios path="Machines/Shared Roms/nowindDos2.rom" md5="1847398c014384b833868c64f149f338" core="libretro/bluemsx" mandatory="false" note="Get from http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip" />
</system>
<system fullname="Sega GameGear" platform="gamegear">
<bios path="gamegear/bios.gg" md5="672e104c3be3a238301aceffc3b23fd6" mandatory="false" core="libretro/genesisplusgx,libretro/gearsystem" />
</system>
<system fullname="Sega MasterSystem" platform="mastersystem">
<bios path="mastersystem/bios_E.sms" md5="840481177270d5642a14ca71ee72844c,4187d96beaf36385e681a3cf3bd1663d,
e8b26871629b938887757a64798df6dc,02cbb2e348945c9ac41e37502a58ca76,
5cd8f62cd8786af0226e6d2248279338,08b81aa6be18b92daef1b875deecf824,
bdb34f2c471e5d0c358eeec621f9d029" mandatory="false" core="libretro/genesisplusgx" />
<bios path="mastersystem/bios_U.sms" md5="840481177270d5642a14ca71ee72844c,b264bef9bda264ffe83afcebac21b81f,
e8b26871629b938887757a64798df6dc,02cbb2e348945c9ac41e37502a58ca76,
5cd8f62cd8786af0226e6d2248279338,08b81aa6be18b92daef1b875deecf824" mandatory="false" core="libretro/genesisplusgx,libretro/gearsystem" />
<bios path="mastersystem/bios_J.sms" md5="24a519c53f67b00640d0048ef7089105" mandatory="false" core="libretro/genesisplusgx" />
</system>
<system fullname="Sega Megadrive/Genesis" platform="megadrive">
<bios path="megadrive/bios_MD.bin" md5="45e298905a08f9cfb38fd504cd6dbc84" mandatory="false" core="libretro/genesisplusgx,libretro/genesisplusgxwide" />
<bios path="segacd/bios_CD_E.bin" md5="e66fa1dc5820d254611fdcdba0662372" core="libretro/genesisplusgx" />
<bios path="segacd/bios_CD_U.bin" md5="2efd74e3232ff260e371b99f84024f7f" core="libretro/genesisplusgx" />
<bios path="segacd/bios_CD_J.bin" md5="278a9397d192149e84e820ac621a8edd,bdeb4c47da613946d422d97d98b21cda" core="libretro/genesisplusgx" />
</system>
<system fullname="Nintendo Gameboy" platform="gb">
<bios path="gb/gb_bios.bin" md5="32fbbd84168d3482956eb3c5051637f5" mandatory="false" core="libretro/mgba,libretro/gambatte,libretro/mesen_s" />
<bios path="gb/dmg_boot.bin" md5="57f6a79fb41d6b2c8987fa529c3a90f2,60f1d849a435e9053b8ac0fd5776804a,6344d08bbbcbedbbaef9ddbdf7632c74" mandatory="false" core="libretro/sameboy,libretro/mesen_s" />
<bios path="gb/mgb_boot.bin" md5="df79723ee8093b0580496f3df436e4c4" mandatory="false" core="libretro/sameboy" />
</system>
<system fullname="Nintendo Super Gameboy" platform="gb,gbc">
<bios path="sgb/sgb_bios.bin" md5="d574d4f9c12f305074798f54c091a8b4" mandatory="false" core="libretro/mgba,libretro/mesen_s" />
<bios path="sgb/sgb_boot.bin" md5="be77bbd03f8675478f6e3d2176f3cb56,a43cbd0ab271990f434412fc5c500eff" mandatory="false" core="libretro/mesen_s,libretro/sameboy" />
<bios path="sgb/sgb2_boot.bin" md5="b4331a9e612b4738867a30af9c96df52,6d507dcf3b61ce45a5717421cdd0ae95" mandatory="false" core="libretro/mesen_s,libretro/sameboy" />
<bios path="sgb/SGB1.sfc" md5="b15ddb15721c657d82c5bab6db982ee9" core="libretro/bsnes,libretro/mesen_s" mandatory="false" />
<bios path="sgb/SGB2.sfc" md5="8ecd73eb4edf7ed7e81aef1be80031d5" core="libretro/bsnes,libretro/mesen_s" mandatory="false" />
</system>
<system fullname="Nintendo Gameboy Color" platform="gbc">
<bios path="gbc/gbc_bios.bin" md5="dbfce9db9deaa2567f6a84fde55f9680" mandatory="false" core="libretro/mgba,libretro/gambatte,libretro/mesen_s" />
<bios path="gbc/cgb_boot.bin" md5="b560efd759d87634a03b243f22bba27a,6b68be48dab6a7298a8c07e00c136b4e,62cfda90d22405cdff59700c388a57f6" mandatory="false" core="libretro/sameboy,libretro/mesen_s" />
<bios path="gbc/agb_boot.bin" md5="8e29ae4f331830d54ae764f3e10cebae" mandatory="false" core="libretro/sameboy" />
</system>
<system fullname="Pentagon 128/512/1024 (ZX Spectrum clone)" platform="zxspectrum">
<bios path="fuse/128p-0.rom" md5="a249565f03b98d004ee7f019570069cd" core="libretro/fuse" note="Only required if you want to emulate Pentagon machines" />
<bios path="fuse/128p-1.rom" md5="6e09e5d3c4aef166601669feaaadc01c" mandatory="false" core="libretro/fuse" note="Only required if you want to emulate Pentagon machines" />
<bios path="fuse/gluck.rom" md5="d5869034604dbfd2c1d54170e874fd0a" core="libretro/fuse" note="Only required if you want to emulate Pentagon 512/1024 machine" />
<bios path="fuse/trdos.rom" md5="b6d8db853c24621cbd5fef3c892c976c,5c097b0fb75bb7147104d6e77db0300a,dd70541ed6a6e8176e8dace64f9344ad,b08fa49b5de8448e94936a9d061dc0f5,4a3e2b04982ac6c594adb6793be4d6e7,4123fd0b5c218ef704770596dc6533e1,6459c606ff23a610e504d0387383148a,aa9f9acf05382aff569dfdadde4ef8f2,48b5da4079ff8394852429e53cfc607f,14399030d8228ca1b16872ed426a5835,7031f2610845d39c54c97097afa8fa03,4da473775c4badcc83ab5d86dc8231de,3f8a2a239a10b6694ec79148a292cfb4,62cbbdca554c8c23676618d4c83ef40e,c511eaa8fcc968cc13baf7ad80f3aea3,a92db09c9aa3cfda478a9bf1eec7ff90,0da70a5d2a0e733398e005b96b7e4ba6,a701f54355b53fa93fb8599933d518b7,0c42e3b9ab8dd91ea096f1d0c07c55e5,b4c9634312b796063015450daef13dfa,d6f43c70c003f07d0a694f81ff55db95,a3242d31a0624a64a56f3a6cb5484e7c,cc46c7bacbbaf528a864113c76d9b9c9,53e2f417c6996df9af170e147df8e369" core="libretro/fuse" note="Only required if you want to emulate Pentagon machines" />
<bios path="fuse/48.rom" md5="4c42a2f075212361c3117015b107ff68" core="libretro/fuse" mandatory="false" />
<bios path="fuse/128-0.rom" md5="b4d2692115a9f2924df92a3cbfb358fb" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plus2-0.rom" md5="4ed7af4636308b8a48d7a35e6c5b546b" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plus2-1.rom" md5="b3db95931cc844efaeb82db9c171b9f3" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plus3-0.rom" md5="9833b8b73384dd5fa3678377ff00a2bb" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plus3-1.rom" md5="0f711ceb5ab801b4701989982e0f334c" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plus3-2.rom" md5="3b6dd659d5e4ec97f0e2f7878152c987" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plus3-3.rom" md5="a148bcc575e51389e84fdf5d555c3196" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plus3e-0.rom" md5="bc123f625e245c225f92ef05933ed134" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plus3e-1.rom" md5="617364264c587d20c9fc4746c29679f2" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plus3e-2.rom" md5="c363e95dcd0a90e6e7f847e6e47e0179" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plus3e-3.rom" md5="a148bcc575e51389e84fdf5d555c3196" core="libretro/fuse" mandatory="false" />
<bios path="fuse/se-0.rom" md5="fb3f86eb1e5a695d9c50c124e7cfb875" core="libretro/fuse" mandatory="false" />
<bios path="fuse/se-1.rom" md5="88de4a3129086f34bb9ca559acc51e6c" core="libretro/fuse" mandatory="false" />
<bios path="fuse/tc2048.rom" md5="9dd7ecf784a6c04265c073c236f5fadb" core="libretro/fuse" mandatory="false" />
<bios path="fuse/tc2068-0.rom" md5="55d462fccc6c536037404ef4ced08bec" core="libretro/fuse" mandatory="false" />
<bios path="fuse/tc2068-1.rom" md5="575d203c6e15e679fba0b73f854ec7a2" core="libretro/fuse" mandatory="false" />
<bios path="fuse/disciple.rom" md5="78e61a2a02121873c1756b21fd1398b1" core="libretro/fuse" mandatory="false" />
<bios path="fuse/plusd.rom" md5="42e5de16fb5e50082bb954ec7ce45851" core="libretro/fuse" mandatory="false" />
<bios path="fuse/speccyboot-1.4.rom" md5="c54aa8f374b0971f51546c29d5d1eba1" core="libretro/fuse" mandatory="false" />
</system>
<system fullname="Scorpion 256K (ZX Spectrum clone)" platform="zxspectrum">
<bios path="fuse/256s-0.rom" md5="b9fda5b6a747ff037365b0e2d8c4379a" core="libretro/fuse" note="Only required if you want to emulate Scorpion 256K machine" />
<bios path="fuse/256s-1.rom" md5="643861ad34831b255bf2eb64e8b6ecb8" core="libretro/fuse" note="Only required if you want to emulate Scorpion 256K machine" />
<bios path="fuse/256s-2.rom" md5="d8ad507b1c915a9acfe0d73957082926" core="libretro/fuse" note="Only required if you want to emulate Scorpion 256K machine" />
<bios path="fuse/256s-3.rom" md5="ce0723f9bc02f4948c15d3b3230ae831" core="libretro/fuse" note="Only required if you want to emulate Scorpion 256K machine" />
</system>
<system fullname="Nintendo Gamecube" platform="gamecube">
<bios path="gamecube/EUR/IPL.bin" md5="0cdda509e2da83c85bfe423dd87346cc" mandatory="false" core="libretro/dolphin,dolphin" note="Only required if you want the European Gamecube menu and the boot animation" />
<bios path="gamecube/JAP/IPL.bin" md5="fc924a7c879b661abc37cec4f018fdf3" mandatory="false" core="libretro/dolphin,dolphin" note="Only required if you want the Japanese Gamecube menu and the boot animation" />
<bios path="gamecube/USA/IPL.bin" md5="339848a0b7c2124cf155276c1e79cbd0" mandatory="false" core="libretro/dolphin,dolphin" note="Only required if you want the US Gamecube menu and the boot animation" />
<bios path="codehandler.bin" md5="1f118b8735fcf40c20b38c3184eebfd9" core="dolphin" mandatory="false" />
</system>
<system fullname="Nintendo 64DD" platform="64dd">
<bios path="Mupen64plus/IPL.n64" md5="8d3d9f294b6e174bc7b1d2fd1c727530" core="libretro/mupen64plus_next,libretro/parallel_n64" mandatory="false" note="IPL.n64 (64DD_IPL.bin renamed) - Required for Nintendo 64 DD" />
</system>
<system fullname="Super Cassette Vision" platform="scv">
<bios path="scv/upd7801g.s01" md5="635A978FD40DB9A18EE44EFF449FC126" mandatory="true" core="libretro/emuscv" />
</system>
<system fullname="Sega Saturn" platform="saturn">
<bios path="saturn/saturn_bios.bin" md5="af5828fdff51384f99b3c4926be27762" hashMatchMandatory="false" mandatory="true" core="libretro/yabause,libretro/yabasanshiro,libretro/kronos" />
<bios path="saturn/sega_101.bin" md5="85ec9ca47d8f6807718151cbcca8b964" core="libretro/mednafen_saturn" note="Saturn JP BIOS - Required for JP games" />
<bios path="saturn/mpr-17933.bin" md5="3240872c70984b6cbfda1586cab68dbe" core="libretro/mednafen_saturn" note="Saturn US/EU BIOS - Required for US/EU games" />
<bios path="saturn/mpr-18811-mx.ic1" md5="255113ba943c92a54facd25a10fd780c" core="libretro/mednafen_saturn,libretro/kronos" mandatory="false" note="Required for The King of Fighters '95 ROM Cartridge" />
<bios path="saturn/mpr-19367-mx.ic1" md5="1cd19988d1d72a3e7caa0b73234c96b4" core="libretro/mednafen_saturn,libretro/kronos" mandatory="false" note="Required for Ultraman: Hikari no Kyojin Densetsu ROM Cartridge" />
</system>
<system fullname="SNK Neo-Geo" platform="neogeo">
<bios path="neogeo.zip|/recalbox/share/roms/neogeo/neogeo.zip" md5="e023d0a4b5249fdff2a4620c28963944,8cbdff53661f41ddbe486a98915e1ec9,
42e359e394f0be1d61b94ddca0efbe6c,c1e0a738d266926f604186aa9d63e4db,
d12bba59121229ff13702878b415cb7c,2b4ffdf24d5d4f24c4b116c50c4bafc3,
005b843b6e70b939c2cca41887cbc371,42e359e394f0be1d61b94ddca0efbe6c,
4b9432a4571d03cc8bae9d24d8d6eb40,4cd64313e26537c04cdb561b8f84b0e4,
50bbfd6bf297038b085e29265c65723a,76ee7390ccd537cddea1018025ca29a8,
84d6c35aad790a77ba3cfc1b319e1061,912c0a56bafe0fba39d0c668b139b250,
94748719c0ef31e7375b0c357d82fc89,ab25b9e25052a6064901a7a221037eb6,
ae9e5825cde82c58e39dfd48534f7060,b18f83feef474b8a1306ef199cd810a2,
b4519df27a352c2a6e42e06d31330d91,bf00272e7150b31156a8995d60bf185d,
ca66fd463ef7dcab492a6de8ce5f45eb,f4a125538dfd7a8044e025fc5188fb88,
a3b2c9a69c28ad0bd4ea07877b744bbe,00dad01abdbf8ea9e79ad2fe11bdb182" hashMatchMandatory="false" core="libretro/fbneo,libretro/fba2x,libretro/mame2000,libretro/mame2003,libretro/ mame2003-plus,libretro/mame2010,libretro/mame2015" />
<bios path="geolith/aes.zip" md5="ad9585c72130c56f04ae26aae87c289d,7a4dcd56b3924215aac7f903ff907339" mandatory="true" hashMatchMandatory="false" core="libretro/geolith" />
<bios path="geolith/neogeo.zip" md5="00dad01abdbf8ea9e79ad2fe11bdb182,912c0a56bafe0fba39d0c668b139b250,
b2c8175567ab9e0bd72d4e2633f2c650" mandatory="true" hashMatchMandatory="false" core="libretro/geolith" />
</system>
<system fullname="SNK Neo-Geo CD" platform="neogeocd">
<bios path="neogeo.zip" md5="00dad01abdbf8ea9e79ad2fe11bdb182,e023d0a4b5249fdff2a4620c28963944,8cbdff53661f41ddbe486a98915e1ec9,42e359e394f0be1d61b94ddca0efbe6c,c1e0a738d266926f604186aa9d63e4db,d12bba59121229ff13702878b415cb7c,2b4ffdf24d5d4f24c4b116c50c4bafc3,005b843b6e70b939c2cca41887cbc371,42e359e394f0be1d61b94ddca0efbe6c,4b9432a4571d03cc8bae9d24d8d6eb40,4cd64313e26537c04cdb561b8f84b0e4,50bbfd6bf297038b085e29265c65723a,76ee7390ccd537cddea1018025ca29a8,84d6c35aad790a77ba3cfc1b319e1061,912c0a56bafe0fba39d0c668b139b250,94748719c0ef31e7375b0c357d82fc89,ab25b9e25052a6064901a7a221037eb6,ae9e5825cde82c58e39dfd48534f7060,b18f83feef474b8a1306ef199cd810a2,b4519df27a352c2a6e42e06d31330d91,bf00272e7150b31156a8995d60bf185d,ca66fd463ef7dcab492a6de8ce5f45eb,f4a125538dfd7a8044e025fc5188fb88,a3b2c9a69c28ad0bd4ea07877b744bbe" core="libretro/fbneo,libretro/fba2x,libretro/mame2000,libretro/mame2003,libretro/mame2003-plus,libretro/mame2010,libretro/mame2015" hashMatchMandatory="false" />
<bios path="neocdz.zip" md5="b31a246b69493c35194fe0bac120dc37" core="libretro/fbneo,libretro/fba2x,libretro/mame2000,libretro/mame2003,libretro/mame2003-plus,libretro/mame2010,libretro/mame2015" hashMatchMandatory="false" />
<bios path="neocd/neocd.bin" md5="f39572af7584cb5b3f70ae8cc848aba2" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="CDZ BIOS (MAME)" />
<bios path="neocd/uni-bioscd.rom" md5="08ca8b2dba6662e8024f9e789711c6fc" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="Universe BIOS CD 3.3" />
<bios path="neocd/top-sp1.bin" md5="122aee210324c72e8a11116e6ef9c0d0" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="Top Loader BIOS (MAME)" />
<bios path="neocd/front-sp1.bin" md5="5c2366f25ff92d71788468ca492ebeca" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="Front Loader BIOS (MAME)" />
<bios path="neocd/neocd_sz.rom" md5="971ee8a36fb72da57aed01758f0a37f5" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="CDZ BIOS (SMKDAN 0.7b DEC 2010)" />
<bios path="neocd/neocd_z.rom" md5="11526d58d4c524daef7d5d677dc6b004" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="CDZ BIOS" />
<bios path="neocd/neocd_st.rom" md5="f6325a33c6d63ea4b9162a3fa8c32727" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="Top Loader BIOS (SMKDAN 0.7b DEC 2010)" />
<bios path="neocd/neocd_t.rom" md5="de3cf45d227ad44645b22aa83b49f450" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="Top Loader BIOS" />
<bios path="neocd/neocd_sf.rom" md5="043d76d5f0ef836500700c34faef774d" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="Front Loader BIOS (SMKDAN 0.7b DEC 2010)" />
<bios path="neocd/neocd_f.rom" md5="8834880c33164ccbe6476b559f3e37de" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="Front Loader BIOS" />
<bios path="neocd/000-lo.lo" md5="fc7599f3f871578fe9a0453662d1c966" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="ZOOM Rom" />
<bios path="neocd/ng-lo.rom" md5="e255264d85d5765013b1b2fa8109dd53" core="libretro/neocd" mandatory="false" hashMatchMandatory="false" note="ZOOM Rom" />
<bios path="geolith/neocd.zip" md5="006a881532f2caffc3fe9fb5593f2ed5" core="libretro/geolith" mandatory="false" hashMatchMandatory="false" note="Neo-Geo CD Bios" />
<bios path="geolith/neocdz.zip" md5="724bc64e63d073cf81f986adfb1f1b78" core="libretro/geolith" mandatory="true" hashMatchMandatory="false" note="Neo-Geo CDZ Bios" />
</system>
<system fullname="Texas Instrument TI-99/4A" platform="ti994a">
<bios path="ti994a/TI-994A.ctg" md5="fb1ca5c58357896a0be5d6725894845d" core="ti99sim" mandatory="true" hashMatchMandatory="false" note="System cartridge" />
<bios path="ti994a/spchrom.bin" md5="7adcaf64272248f7a7161cfc02fd5b3f" core="ti99sim" mandatory="false" hashMatchMandatory="false" note="Speech synthesis" />
<bios path="ti994a/ti-disk.ctg" md5="0281841b5ea4227526e7612c0bb55cbb" core="ti99sim" mandatory="false" hashMatchMandatory="false" note="Disk Operating System" />
<bios path="Gram Kracker.ctg" md5="7551f1d578a32cccd97efd1adff15252" core="ti99sim" mandatory="false" />
<bios path="ti-pcard.ctg" md5="63f161f0d634e6092a1729b97efb00d1" core="ti99sim" mandatory="false" />
<bios path="cf7+.ctg" md5="d3fd9bc1fcaf48e5ed681c5ac31bc194" core="ti99sim" mandatory="false" />
</system>
<system fullname="Dragon 32/64" platform="dragon">
<bios path="dragon/d32.rom" md5="3420b96031078a4ef408cad7bf21a33f" core="xroar" mandatory="true" hashMatchMandatory="false" note="Dragon32 system rom" />
<bios path="dragon/d64rom1.rom" md5="5f0bee59710e55f5880e74890912ed78" core="xroar" mandatory="true" hashMatchMandatory="false" note="Dragon64 system rom #1" />
<bios path="dragon/d64rom2.rom" md5="fd91edce7be5e7c2d88e46b76956a8aa" core="xroar" mandatory="false" hashMatchMandatory="false" note="Dragon64 system rom #2" />
<bios path="dragon/d64tano.rom" md5="be9bc86ee5eb401d0a40d0377f65fefa" core="xroar" mandatory="true" hashMatchMandatory="false" note="Tano system rom #1" />
<bios path="dragon/d64tano2.rom" md5="fd91edce7be5e7c2d88e46b76956a8aa" core="xroar" mandatory="true" hashMatchMandatory="false" note="Tano system rom #2" />
<bios path="dragon/d200rom1.rom" md5="be9bc86ee5eb401d0a40d0377f65fefa" core="xroar" hashMatchMandatory="false" note="Dragon 200e system rom #1" />
<bios path="dragon/d200rom2.rom" md5="fd91edce7be5e7c2d88e46b76956a8aa" core="xroar" mandatory="false" hashMatchMandatory="false" note="Dragon 200e system rom #2" />
<bios path="dragon/ddos10.rom" md5="1c965da49b6c5459b8353630aa1482e7" core="xroar" mandatory="false" hashMatchMandatory="false" note="Dragon DOS 1.0" />
<bios path="dragon/ddos11c.rom" md5="d8429af1a12f7438a4bf88a5b934cb3a" core="xroar" mandatory="false" hashMatchMandatory="false" note="Dragon DOS 1.1" />
<bios path="dragon/ddos12a.rom" md5="55e2535dbbed7f1a26b5f263d7c72c63" core="xroar" mandatory="false" hashMatchMandatory="false" note="Dragon DOS 1.2" />
<bios path="dragon/ddos40.rom" md5="9ddc388632cd3c376b164ba5cfc64329" core="xroar" mandatory="false" hashMatchMandatory="false" note="Dragon DOS 4.0" />
<bios path="dragon/ddos42.rom" md5="c956a854cbc4b9d1e69c000f78368668" core="xroar" mandatory="false" hashMatchMandatory="false" note="Dragon DOS 4.2" />
<bios path="dragon/deltados.rom" md5="024eac3db20f1b5cf98c30a0e4743201" core="xroar" mandatory="false" hashMatchMandatory="false" note="Delta DOS" />
<bios path="dragon/dplus48.rom" md5="ee6f24d893a52b8efea9f787855456b5" core="xroar" mandatory="false" hashMatchMandatory="false" note="DOS Plus 4.8" />
<bios path="dragon/dplus49b.rom" md5="56f1b97314e4ca82491c465bb887059e" core="xroar" mandatory="false" hashMatchMandatory="false" note="DOS Plus 4.9" />
<bios path="dragon/dplus50.rom" md5="35de5d28da507ebb213a26e04241d940" core="xroar" mandatory="false" hashMatchMandatory="false" note="DOS Plus 5.0" />
<bios path="dragon/sdose6.rom" md5="9d85e6b7133f915c021156f4b9cdb512" core="xroar" mandatory="false" hashMatchMandatory="false" note="Super DOS E6" />
<bios path="dragon/sdose8.rom" md5="167f409b7a4b992faabb784b061ab4c6" core="xroar" mandatory="false" hashMatchMandatory="false" note="Super DOS E8" />
<bios path="d200e_1.rom" md5="03f25edd487df4c98a79b2d504469653" core="xroar" />
<bios path="d200e_2.rom" md5="b5f63a88710fbe6e22579fbc8d72393a" core="xroar" mandatory="false" />
<bios path="d200e_26.rom" md5="eef971f21318759f15cc9f0328557140" core="xroar" mandatory="false" />
<bios path="alpha-boot-v1.0.rom" md5="283726f0f22603d3e60c27865babccf4" core="xroar" />
<bios path="alpha-boot-v0.4.rom" md5="01e5577ef5dd9eac00bba3698e046afb" core="xroar" mandatory="false" />
</system>
<system fullname="TRS-80 Color Computer 1/2" platform="trs80coco">
<bios path="trs80coco/bas10.rom" md5="a74f3d95b395dad7cdca19d560eeea74" core="xroar" mandatory="false" hashMatchMandatory="false" note="CoCo 1 BASIC" />
<bios path="trs80coco/bas11.rom" md5="c73fb4bff9621c5ab17f6220b20db82f" core="xroar" mandatory="false" hashMatchMandatory="false" note="CoCo 1 BASIC" />
<bios path="trs80coco/bas12.rom" md5="c933316c7d939532a13648850c1c2aa6" core="xroar" mandatory="false" hashMatchMandatory="false" note="CoCo 2 BASIC" />
<bios path="trs80coco/bas13.rom" md5="c2fc43556eb6b7b25bdf5955bd9df825" core="xroar" mandatory="true" hashMatchMandatory="false" note="CoCo 2 BASIC" />
<bios path="trs80coco/extbas10.rom" md5="fda72f415afe99b36f953bb9bc1253da" core="xroar" mandatory="false" hashMatchMandatory="false" note="CoCo 1 Extended BASIC" />
<bios path="trs80coco/extbas11.rom" md5="21070aa0496142b886c562bf76d7c113" core="xroar" mandatory="true" hashMatchMandatory="false" note="CoCo 2 Extended BASIC" />
<bios path="trs80coco/mx1600bas.rom" md5="88d1504e93366f498105a846cdbf7fb7" core="xroar" hashMatchMandatory="false" note="MX1600 BASIC" />
<bios path="trs80coco/disk10.rom" md5="a64b3ef9efcc066b18d35b134068d1cc" core="xroar" mandatory="false" hashMatchMandatory="false" note="RSDos 1.0" />
<bios path="trs80coco/disk11.rom" md5="8cab28f4b7311b8df63c07bb3b59bfd5" core="xroar" mandatory="false" hashMatchMandatory="false" note="RSDos 1.1" />
<bios path="trs80coco/hdbdw3bck.rom" md5="ef750d93d24d7bc87a8ecd6e5a15a845" core="xroar" mandatory="false" hashMatchMandatory="false" note="RSDos Becker" />
<bios path="trs80coco/mc10.rom" md5="f29e94ff36577ffb6a787959e45bfe85" core="xroar" hashMatchMandatory="false" note="MC-10" />
<bios path="trs80coco/coco3.rom" md5="7233c6c429f3ce1c7392f28a933e0b6f" core="xroar" hashMatchMandatory="false" note="Coco 3 Basic" />
<bios path="trs80coco/coco3p.rom" md5="4ae57e5a8e7494e5485446fefedb580b" core="xroar" hashMatchMandatory="false" note="Coco 3 Basic" />
<bios path="trs80coco/alice32.rom" md5="79ea46603d716578d5f2b52eb4c33ca2" core="xroar" mandatory="false" hashMatchMandatory="false" note="Alice" />
<bios path="trs80coco/alice4k.rom" md5="78af465c2f31cf4e05dec1efda77da01" core="xroar" mandatory="false" hashMatchMandatory="false" note="Alice" />
<bios path="deluxe.rom" md5="e27c02fd766e8710240c59ef5424a6ef" core="xroar" />
<bios path="mx1600extbas.rom" md5="6fc82178ae8abe07fa8f6939062291dc" core="xroar" />
<bios path="cp400bas.rom" md5="f73da4d73d6db5cdb8b3cb6a50415e38" core="xroar" />
<bios path="cp400ext.rom" md5="091581001577b4a83ccfd511829de0f1" core="xroar" />
<bios path="orch90.rom" md5="171fb7a5d3b808565295b45c773abaaf" core="xroar" mandatory="false" />
</system>
<system fullname="Philips CD-I" platform="cdi">
<bios path="cdi/cdimono1.zip" md5="ce590c4787460161359f2b680136cb60,bbe6636ac11d3744f0710e8e820187e7,1a7c3c98c46555ff5fc93ee3feae4b47" core="libretro/cdi2015,libretro/same_cdi" mandatory="true" hashMatchMandatory="false" />
<bios path="cdi/cdibios.zip" md5="9fd6b277cd877d51426427a33d1d19bb" core="libretro/same_cdi" hashMatchMandatory="false" />
<bios path="cdi/cdimono2.zip" md5="2ac8cd5bb23287e022ca17d616949255" core="libretro/same_cdi" mandatory="false" hashMatchMandatory="false" />
</system>
<system fullname="Sega Naomi 2" platform="naomi2">
<bios path="dc/naomi2.zip" md5="34f9c1acdaf53d6a50dd8de052e506ca" core="libretro/flycast" />
</system>
<system fullname="Microsoft Xbox" platform="xbox">
<bios path="xbox/Complex_4627.bin" md5="39cee882148a87f93cb440b99dde3ceb" core="xemu" mandatory="true" hashMatchMandatory="true" />
<bios path="xbox/mcpx_1.0.bin" md5="d49c52a4102f6df7bcf8d0617ac475ed" core="xemu" mandatory="true" hashMatchMandatory="true" />
</system>
<system fullname="ScummVM" platform="scummvm">
<bios path="scummvm/MT32_CONTROL.ROM" md5="5626206284b22c2734f3e9efefcd2675" mandatory="false" hashMatchMandatory="true" core="libretro/scummvm,scummvm" />
<bios path="scummvm/MT32_PCM.ROM" md5="89e42e386e82e0cacb4a2704a03706ca" mandatory="false" hashMatchMandatory="true" core="libretro/scummvm,scummvm" />
<bios path="scummvm/extra/MT32_CONTROL.ROM" md5="c5233e4594f9b7bc4f773ae6ba5aa87d" core="libretro/dosbox,libretro/dosbox_pure,libretro/scummvm" mandatory="false" />
<bios path="scummvm/theme/scummmodern.zip" md5="ee71d6cd464c618c632e6fd62b430d2c" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/theme/scummclassic.zip" md5="8f37bd19dd51be456ac8f005fd5669a8" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/theme/scummremastered.zip" md5="0d990484d0dfc1680b20cfabcae373cd" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/theme/residualvm.zip" md5="b2811fa9b209733b61cd49ddb21e1e95" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/theme/gui-icons.dat" md5="9c59e0e9875434456ec1b7eb8e51666f" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/theme/shaders.dat" md5="f073f17187d0bfa3e7ebb7f328847969" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/theme/translations.dat" md5="a206e54bac1af13559ac8b2d9e550577" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/achievements.dat" md5="73cf5bd61896442a990e363f284a0bc2" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/classicmacfonts.dat" md5="d4264d4573f22d290e033e1d834d7221" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/encoding.dat" md5="f2e88b2faec499a4914c3a0bcffc7db1" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/helpdialog.zip" md5="a9584a928c0f52ef28b33d8702983c35" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/macgui.dat" md5="d97f2965013b343dd3d4fdbbc7192f15" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/access.dat" md5="4f9dd40b455876d5c54b5ebd93aec88c" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/bagel.dat" md5="f6d90885f6962f89de02e34031111599" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/cryo.dat" md5="fc5886ea5388f20eae299bb408da5bcc" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/cryomni3d.dat" md5="7224c7a94074addeb69015b1346695d2" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/darkseed.dat" md5="9a9cfe40dcca517f130d4430bd1af643" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/drascula.dat" md5="b304979ed642a6dcaf26f43f8a37a1de" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/freescape.dat" md5="71697f90fb0c7747616dbb0799ce966b" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/got.aud" md5="d13cc3c481e84e787ec8aa86dffc565f" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/got.gfx" md5="a29f591769bd731df0d9ddd3a191fe8c" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/hadesch_translations.dat" md5="7857da7e56a11e0749fb45100c323b3c" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/hugo.dat" md5="a865e70f1b0998a500f522dab441c8fc" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/kyra.dat" md5="ebddd7bbd97135a427083db5daf6f9fc" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/lure.dat" md5="6f90cf73f36453d332d5c9cee311f81c" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/macventure.dat" md5="3b1faf40e685b955372e02f54ed70263" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/mm.dat" md5="01f074a6ac34dd86fcc6d1e8090614f0" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/mort.dat" md5="3cfb16d7bab4d77606b3b1274b8ae870" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/myst3.dat" md5="54e9056211f2fff255b6f66a3fe39a8d" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/nancy.dat" md5="eb7cfdb3f74972beb8f43196e4e44001" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/neverhood.dat" md5="dfaab12ffb265646f31f51b6904246d1" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/prince_translation.dat" md5="993adab2fd44277d5fd7aa5971e7099c" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/queen.tbl" md5="93c6d6379eb0290ce93854a6888ec3f4" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/sky.cpt" md5="9d00157b1cebd6368cbf88135c098f40" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/supernova.dat" md5="89664136c503a30894d5c713be5bfe90" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/teenagent.dat" md5="4594620989a0bfd8b120da2de7ac30de" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/titanic.dat" md5="4b2fb71201dc3795cff45df6200a1918" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/tony.dat" md5="891022a4e2917bb54b5cdc9a46f5b3df" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/toon.dat" md5="2b71a5d9aa19219d46711e8a77451f0f" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/ultima.dat" md5="e359fb7f14c4cb072b6e9300a23a6d62" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/ultima8.dat" md5="e5b95811b05b9f0f593b49c860391200" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/wintermute.zip" md5="9783248899f9cb531f0a3e0a711ab8b3" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/fonts.dat" md5="6df29d218962e155d0a2114006af45c0" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/fonts-cjk.dat" md5="18b8811c1bbc297be45f38c3bd6a0728" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/fonts-imgui.dat" md5="9eb64ec7aa31dc2f5b55541415ecdf8b" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/grim-patch.lab" md5="32b777b824f02b1e1259903740964058" core="libretro/scummvm" mandatory="false" />
<bios path="scummvm/extra/monkey4-patch.m4b" md5="9eb7b7e7cc7dad1fe08be6e73d749abe" core="libretro/scummvm" mandatory="false" />
</system>
<system fullname="ST-V" platform="stv">
<bios path="stv/epr-20091.ic8" md5="34175c7ad31acbe44f2baccc7ea065c7" mandatory="true" core="libretro/mednafen_stv" note="Required for Japan-region ST-V games." />
<bios path="stv/epr-17952a.ic8" md5="249b67334cfae53810c1d1e3b93957a3" mandatory="true" core="libretro/mednafen_stv" note="Required for North America/US-region ST-V games." />
<bios path="stv/epr-17954a.ic8" md5="ba2cb634c15e59d7ea5552729306f2ef" mandatory="true" core="libretro/mednafen_stv" note="Required for Europe-region ST-V games." />
<bios path="stv/stvbios.zip" md5="2b99d9dcecde22db4371580b6bb33f32,53a094ad3a188f86de4e64624fe9b3ca,
17116d2aea72454096b3f80ab714bfba,2b99d9dcecde22db4371580b6bb33f32,
4cb34733b741ada074f11e3abcdc56d8,6b6d422a6c392eaec178b64b92987e99,
88b9da6cda268ba1d9e37dd82d038801,8c34608cc140e1bfbf9c945a12fed0e8,
b876d86e244d00b336980b4e26e94132" hashMatchMandatory="false" mandatory="true" core="libretro/kronos" />
<bios path="hiscore.dat" md5="2490bad5079ec0991c23c579092cca19" core="advancemame" mandatory="false" />
<bios path="mame2003/cheat.dat" md5="69c6bbe7194e4bc62d53764dd6c6d890" core="advancemame,libretro/mame2003,libretro/mame2003_plus" mandatory="false" />
<bios path="event.dat" md5="ee99bb541116967f8785a5bc09932475" core="advancemame" mandatory="false" />
<bios path="mame2003/hiscore.dat" md5="c6f35123264db9cdfb216e8fdb673679" core="libretro/mame2003" mandatory="false" />
<bios path="mame2003-plus/hiscore.dat" md5="2f60c1ed69c152dea95e734979ca2ecb" core="libretro/mame2003_plus" mandatory="false" />
</system>
</biosList>
+145
View File
@@ -0,0 +1,145 @@
{
"platform": "retroarch",
"originals": {
"System.dat": "https://raw.githubusercontent.com/libretro/libretro-database/12c21cf79f1e20eff6ac68b80875816c717d0a7a/dat/System.dat"
},
"files": [
"System.dat"
],
"summary": "516 kept, 359 added, 94 hashes corrected, 0 requirements corrected, 25 sizes corrected, 1 size removed, 3 hashes cleared, 647 additions left out",
"hashes_corrected": [
"Arcade/aes.zip sha1",
"Arcade/aes.zip md5",
"Arcade/aes.zip crc32",
"Atari - 400-800/ATARIOSB.ROM sha1",
"Atari - 400-800/ATARIOSB.ROM md5",
"Atari - 400-800/ATARIOSB.ROM crc32",
"DOS/MT32_CONTROL.ROM md5",
"DOS/MT32_CONTROL.ROM crc32",
"DOS/CM32L_CONTROL.ROM md5",
"DOS/CM32L_CONTROL.ROM crc32",
"Microsoft - MSX/MSX.rom sha1",
"Microsoft - MSX/MSX.rom md5",
"Nintendo - Nintendo DSi/dsi_bios7.bin sha1",
"Nintendo - Nintendo DSi/dsi_bios7.bin md5",
"Nintendo - Nintendo DSi/dsi_bios7.bin crc32",
"Nintendo - Nintendo DSi/dsi_bios9.bin sha1",
"Nintendo - Nintendo DSi/dsi_bios9.bin md5",
"Nintendo - Nintendo DSi/dsi_bios9.bin crc32",
"SNK - NeoGeo CD/neocdz.zip md5",
"Sony - PlayStation/scph5000.bin sha1",
"Sony - PlayStation/scph5000.bin md5",
"Sony - PlayStation/scph5000.bin crc32",
"Sony - PlayStation 2/GameIndex.yaml sha1",
"Sony - PlayStation 2/GameIndex.yaml md5",
"Sony - PlayStation 2/GameIndex.yaml crc32",
"ScummVM/access.dat sha1",
"ScummVM/access.dat md5",
"ScummVM/access.dat crc32",
"ScummVM/cryomni3d.dat sha1",
"ScummVM/cryomni3d.dat md5",
"ScummVM/cryomni3d.dat crc32",
"ScummVM/drascula.dat sha1",
"ScummVM/drascula.dat md5",
"ScummVM/drascula.dat crc32",
"ScummVM/fonts.dat sha1",
"ScummVM/fonts.dat md5",
"ScummVM/fonts.dat crc32",
"ScummVM/freescape.dat sha1",
"ScummVM/freescape.dat md5",
"ScummVM/freescape.dat crc32",
"ScummVM/hugo.dat sha1",
"ScummVM/hugo.dat md5",
"ScummVM/hugo.dat crc32",
"ScummVM/kyra.dat sha1",
"ScummVM/kyra.dat md5",
"ScummVM/kyra.dat crc32",
"ScummVM/lure.dat sha1",
"ScummVM/lure.dat md5",
"ScummVM/lure.dat crc32",
"ScummVM/macventure.dat sha1",
"ScummVM/macventure.dat md5",
"ScummVM/macventure.dat crc32",
"ScummVM/mm.dat sha1",
"ScummVM/mm.dat md5",
"ScummVM/mm.dat crc32",
"ScummVM/nancy.dat sha1",
"ScummVM/nancy.dat md5",
"ScummVM/nancy.dat crc32",
"ScummVM/queen.tbl sha1",
"ScummVM/queen.tbl md5",
"ScummVM/queen.tbl crc32",
"ScummVM/supernova.dat sha1",
"ScummVM/supernova.dat md5",
"ScummVM/supernova.dat crc32",
"ScummVM/teenagent.dat sha1",
"ScummVM/teenagent.dat md5",
"ScummVM/teenagent.dat crc32",
"ScummVM/toon.dat sha1",
"ScummVM/toon.dat md5",
"ScummVM/toon.dat crc32",
"ScummVM/ultima.dat sha1",
"ScummVM/ultima.dat md5",
"ScummVM/ultima.dat crc32",
"ScummVM/wintermute.zip sha1",
"ScummVM/wintermute.zip md5",
"ScummVM/wintermute.zip crc32",
"ScummVM/gui-icons.dat sha1",
"ScummVM/gui-icons.dat md5",
"ScummVM/gui-icons.dat crc32",
"ScummVM/residualvm.zip sha1",
"ScummVM/residualvm.zip md5",
"ScummVM/residualvm.zip crc32",
"ScummVM/scummclassic.zip sha1",
"ScummVM/scummclassic.zip md5",
"ScummVM/scummclassic.zip crc32",
"ScummVM/scummmodern.zip sha1",
"ScummVM/scummmodern.zip md5",
"ScummVM/scummmodern.zip crc32",
"ScummVM/scummremastered.zip sha1",
"ScummVM/scummremastered.zip md5",
"ScummVM/scummremastered.zip crc32",
"ScummVM/translations.dat sha1",
"ScummVM/translations.dat md5",
"ScummVM/translations.dat crc32"
],
"hashes_filled": [],
"sizes_corrected": [
"Arcade/aes.zip",
"Sony - PlayStation 2/GameIndex.yaml",
"ScummVM/access.dat",
"ScummVM/cryomni3d.dat",
"ScummVM/drascula.dat",
"ScummVM/fonts.dat",
"ScummVM/freescape.dat",
"ScummVM/hugo.dat",
"ScummVM/kyra.dat",
"ScummVM/lure.dat",
"ScummVM/macventure.dat",
"ScummVM/mm.dat",
"ScummVM/nancy.dat",
"ScummVM/queen.tbl",
"ScummVM/supernova.dat",
"ScummVM/teenagent.dat",
"ScummVM/toon.dat",
"ScummVM/ultima.dat",
"ScummVM/wintermute.zip",
"ScummVM/gui-icons.dat",
"ScummVM/residualvm.zip",
"ScummVM/scummclassic.zip",
"ScummVM/scummmodern.zip",
"ScummVM/scummremastered.zip",
"ScummVM/translations.dat"
],
"sizes_removed": [
"SNK - NeoGeo CD/neocdz.zip"
],
"hashes_cleared": [
"Microsoft - MSX/MSX.rom crc32",
"SNK - NeoGeo CD/neocdz.zip sha1",
"SNK - NeoGeo CD/neocdz.zip crc32"
],
"requirements_corrected": 0,
"withheld": [],
"invalid": []
}
File diff suppressed because it is too large. Load diff
+40
View File
@@ -0,0 +1,40 @@
{
"platform": "retrobat",
"originals": {
"batocera-systems.json": "https://raw.githubusercontent.com/RetroBat-Official/emulatorlauncher/48cdc61623c5943bb17647b80a60d32d395c3725/batocera-systems/Resources/batocera-systems.json"
},
"files": [
"batocera-systems.json"
],
"summary": "360 kept, 338 added, 7 hashes corrected, 0 requirements corrected, 13 hashes filled, 1368 additions left out",
"hashes_corrected": [
"bk/BASIC10.ROM md5",
"colecovision/coleco.rom md5",
"dragon32/d64_1.rom md5",
"msx/MSX.ROM md5",
"neogeocd/neogeo.zip md5",
"neogeocd/neocdz.zip md5",
"scummvm/MT32_CONTROL.ROM md5"
],
"hashes_filled": [
"apple2/AppleIIe_DiskII.rom md5",
"apple2/AppleIIe.rom md5",
"atari7800/A78_highscore.bin md5",
"chihiro/chihiro_xbox_bios.bin md5",
"mastersystem/[BIOS] Sega Master System (USA, Europe) (v1.3).sms md5",
"mastersystem/[BIOS] Sega Master System (Japan) (v2.1).sms md5",
"nds/dsi_bios9.bin md5",
"nds/dsi_bios7.bin md5",
"pcfx/fx-scsi.rom md5",
"sega32x/32X_G_BIOS.BIN md5",
"sega32x/32X_M_BIOS.BIN md5",
"sega32x/32X_S_BIOS.BIN md5",
"vectrex/Vectrex_Bios.bin md5"
],
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
"requirements_corrected": 0,
"withheld": [],
"invalid": []
}
File diff suppressed because it is too large. Load diff
+168
View File
@@ -0,0 +1,168 @@
{
"platform": "retrodeck",
"originals": {
"dolphin/component_manifest.json": "https://raw.githubusercontent.com/RetroDECK/components/fcd0d72995d7aa2e741e2753ac6914025b2ff1ac/dolphin/component_manifest.json",
"duckstation/component_manifest.json": "https://raw.githubusercontent.com/RetroDECK/components/fcd0d72995d7aa2e741e2753ac6914025b2ff1ac/duckstation/component_manifest.json",
"mame/component_manifest.json": "https://raw.githubusercontent.com/RetroDECK/components/fcd0d72995d7aa2e741e2753ac6914025b2ff1ac/mame/component_manifest.json",
"melonds/component_manifest.json": "https://raw.githubusercontent.com/RetroDECK/components/fcd0d72995d7aa2e741e2753ac6914025b2ff1ac/melonds/component_manifest.json",
"pcsx2/component_manifest.json": "https://raw.githubusercontent.com/RetroDECK/components/fcd0d72995d7aa2e741e2753ac6914025b2ff1ac/pcsx2/component_manifest.json",
"pico-8/component_manifest.json": "https://raw.githubusercontent.com/RetroDECK/components/fcd0d72995d7aa2e741e2753ac6914025b2ff1ac/pico-8/component_manifest.json",
"ppsspp/component_manifest.json": "https://raw.githubusercontent.com/RetroDECK/components/fcd0d72995d7aa2e741e2753ac6914025b2ff1ac/ppsspp/component_manifest.json",
"retroarch/component_manifest.json": "https://raw.githubusercontent.com/RetroDECK/components/fcd0d72995d7aa2e741e2753ac6914025b2ff1ac/retroarch/component_manifest.json",
"xemu/component_manifest.json": "https://raw.githubusercontent.com/RetroDECK/components/fcd0d72995d7aa2e741e2753ac6914025b2ff1ac/xemu/component_manifest.json",
"xroar/component_manifest.json": "https://raw.githubusercontent.com/RetroDECK/components/fcd0d72995d7aa2e741e2753ac6914025b2ff1ac/xroar/component_manifest.json"
},
"files": [
"dolphin/component_manifest.json",
"duckstation/component_manifest.json",
"mame/component_manifest.json",
"melonds/component_manifest.json",
"pcsx2/component_manifest.json",
"pico-8/component_manifest.json",
"ppsspp/component_manifest.json",
"retroarch/component_manifest.json",
"xemu/component_manifest.json",
"xroar/component_manifest.json"
],
"summary": "2021 kept, 133 added, 3 hashes corrected, 43 requirements corrected, 127 hashes filled, 977 additions left out",
"hashes_corrected": [
"psx/scph5000.bin md5",
"fbneo/neocdz.zip md5",
"coco/disk.rom md5"
],
"hashes_filled": [
"gba/gba_bios.bin sha256",
"psx/psxonpsp660.bin sha256",
"psx/scph5500.bin sha256",
"psx/scph5501.bin sha256",
"psx/scph5502.bin sha256",
"psx/scph7001.bin sha256",
"psx/scph7002.bin sha256",
"psx/ps1_rom.bin sha256",
"psx/scph1000.bin sha256",
"psx/scph1001.bin sha256",
"psx/scph1002.bin sha256",
"psx/scph100.bin sha256",
"psx/scph101.bin sha256",
"psx/scph102A.bin sha256",
"psx/scph102B.bin sha256",
"psx/scph3000.bin sha256",
"psx/scph3500.bin sha256",
"psx/scph5000.bin sha256",
"3do/panafz1.bin sha256",
"3do/panafz10.bin sha256",
"3do/panafz10-norsa.bin sha256",
"3do/panafz10e-anvil.bin sha256",
"3do/panafz10e-anvil-norsa.bin sha256",
"3do/panafz1j.bin sha256",
"3do/panafz1j-norsa.bin sha256",
"3do/goldstar.bin sha256",
"3do/sanyotry.bin sha256",
"3do/3do_arcade_saot.bin sha256",
"3do/panafz1-kanji.bin sha256",
"3do/panafz10ja-anvil-kanji.bin sha256",
"3do/panafz1j-kanji.bin sha256",
"amiga/kick33180.A500 sha256",
"amiga/kick34005.A500 sha256",
"amiga/kick37175.A500 sha256",
"amiga/kick34005.CDTV sha256",
"amiga/kick40060.CD32 sha256",
"amiga/kick40060.CD32.ext sha256",
"amiga/AmigaVision.rom sha256",
"atari5200/ATARIXL.ROM sha256",
"atari5200/ATARIBAS.ROM sha256",
"atari5200/ATARIOSA.ROM sha256",
"atari5200/ATARIOSB.ROM sha256",
"atarilynx/lynxboot.img sha256",
"enterprise/tvc22_ext.rom sha256",
"enterprise/tvc22_sys.rom sha256",
"enterprise/tvc_dos12d.rom sha256",
"enterprise/hun.rom sha256",
"enterprise/epdos16f.rom sha256",
"enterprise/exdos14isdos10uk.rom sha256",
"enterprise/brd.rom sha256",
"enterprise/exos20.rom sha256",
"enterprise/exos21.rom sha256",
"enterprise/zt19uk.rom sha256",
"enterprise/basic20.rom sha256",
"enterprise/basic21.rom sha256",
"enterprise/exdos13.rom sha256",
"enterprise/epfileio.rom sha256",
"enterprise/exos24uk.rom sha256",
"enterprise/tvcfileio.rom sha256",
"neogeo/aes.zip md5",
"neogeo/aes.zip sha256",
"odyssey2/o2rom.bin sha256",
"odyssey2/c52.bin sha256",
"odyssey2/g7400.bin sha256",
"odyssey2/jopac.bin sha256",
"msx/MSXDOS2.ROM sha256",
"msx/PAINTER.ROM sha256",
"msx/KANJI.ROM sha256",
"msx/CARTS.SHA sha256",
"msx/RS232.ROM sha256",
"msx/CYRILLIC.FNT sha256",
"msx/DEFAULT.FNT sha256",
"msx/INTERNAT.FNT sha256",
"msx/ITALIC.FNT sha256",
"msx/JAPANESE.FNT sha256",
"msx/KOREAN.FNT sha256",
"gbc/gbc_bios.bin sha256",
"nes/disksys.rom sha256",
"dreamcast/flash.bin sha256",
"mastersystem/bios.sms sha256",
"gamegear/bios.gg sha256",
"colecovision/colecovision.rom sha256",
"saturn/sega_101.bin sha256",
"saturn/mpr-17933.bin sha256",
"zxspectrum/128p-1.rom sha256",
"zxspectrum/zxs:48.rom sha256",
"zxspectrum/disciple.rom sha256",
"zxspectrum/plus2-0.rom sha256",
"zxspectrum/plus2-1.rom sha256",
"zxspectrum/plus3-3.rom sha256",
"zxspectrum/plusd.rom sha256",
"zxspectrum/se-0.rom sha256",
"zxspectrum/se-1.rom sha256",
"zxspectrum/speccyboot-1.4.rom sha256",
"zxspectrum/tc2048.rom sha256",
"zxspectrum/tc2068-0.rom sha256",
"zxspectrum/tc2068-1.rom sha256",
"doom/prboom.wad sha256",
"pcfx/pcfx.rom sha256",
"snes/BS-X.bin sha256",
"snes/SGB2.sfc sha256",
"snes/sgb_bios.bin sha256",
"snes/cx4.data.rom sha256",
"amstradcpc/cpc464.rom sha256",
"amstradcpc/cpc664.rom sha256",
"amstradcpc/cpc6128.rom sha256",
"amstradcpc/cpc_amsdos.rom sha256",
"scv/upd7801g.s01 sha256",
"tanodragon/d32.rom sha256",
"tanodragon/d64tano.rom sha256",
"tanodragon/d64tano2.rom sha256",
"tanodragon/d200rom1.rom sha256",
"tanodragon/deltados.rom sha256",
"tanodragon/dplus49b.rom sha256",
"tanodragon/sdose6.rom sha256",
"tanodragon/cp400bas.rom sha256",
"coco/cp400extbas.rom sha256",
"coco/bas10.rom sha256",
"coco/bas11.rom sha256",
"coco/bas12.rom sha256",
"coco/bas13.rom sha256",
"coco/coco3.rom sha256",
"coco/extbas10.rom sha256",
"coco/extbas11.rom sha256",
"coco/disk11.rom sha256",
"coco/coco3p.rom sha256",
"coco/disk.rom sha256"
],
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
"requirements_corrected": 43,
"withheld": [],
"invalid": []
}
@@ -0,0 +1,341 @@
{
"dolphin": {
"name": "Dolphin",
"description": "Dolphin is a Nintendo Wii (wii) and Gamecube (gc) emulator.",
"component_type": "Emulator",
"url_rdwiki": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/dolphin-primehack/dolphin-primehack-guide/",
"url_webpage": "https://dolphin-emu.org",
"url_donation_purchase": "",
"url_source": "https://github.com/dolphin-emu/dolphin",
"system": [
"gc",
"wii"
],
"system_friendly_name": [
"GameCube",
"Wii"
],
"compatible_presets": {
"ask_to_exit": [
"false",
"true"
],
"cheevos": [
"false",
"true"
],
"cheevos_hardcore": [
"false",
"true"
],
"universal_dyn_input": [
"false",
"true"
]
},
"preset_actions": {
"config_file_format": "dolphin",
"ask_to_exit": [
{
"enabled_states": [
"true"
],
"setting_name": "ConfirmStop",
"action": "change",
"new_setting_value": "True",
"section": "Interface",
"target_file": "$dolphin_config",
"defaults_file": "$dolphin_rd_config_dir/Dolphin.ini"
}
],
"cheevos": [
{
"enabled_states": [
"true"
],
"setting_name": "Enabled",
"action": "change",
"new_setting_value": "True",
"section": "Achievements",
"target_file": "$dolphin_config_RetroAchievements",
"defaults_file": "$dolphin_rd_config_dir/RetroAchievements.ini"
},
{
"enabled_states": [
"true"
],
"setting_name": "Username",
"action": "change",
"new_setting_value": "$cheevos_username",
"section": "Achievements",
"target_file": "$dolphin_config_RetroAchievements",
"defaults_file": "$dolphin_rd_config_dir/RetroAchievements.ini"
},
{
"enabled_states": [
"true"
],
"setting_name": "ApiToken",
"action": "change",
"new_setting_value": "$cheevos_token",
"section": "Achievements",
"target_file": "$dolphin_config_RetroAchievements",
"defaults_file": "$dolphin_rd_config_dir/RetroAchievements.ini"
}
],
"cheevos_hardcore": [
{
"enabled_states": [
"true"
],
"setting_name": "HardcoreEnabled",
"action": "change",
"new_setting_value": "True",
"section": "Achievements",
"target_file": "$dolphin_config_RetroAchievements",
"defaults_file": "$dolphin_rd_config_dir/RetroAchievements.ini"
}
],
"universal_dyn_input": [
{
"enabled_states": [
"true"
],
"setting_name": "Universal Dynamic Input",
"action": "install",
"source": "/app/retrodeck/components/shared-data/DynamicInputTextures/",
"destination": "$XDG_DATA_HOME/dolphin-emu/Load/DynamicInputTextures/",
"cleanup_type": "purge"
}
],
"bios": [
{
"filename": "gc-dvd-20010608.bin",
"md5": "561532ad496f644897952d2cef5bb431",
"system": "gc",
"paths": [
"$saves_path/gc/dolphin/EU",
"$saves_path/gc/dolphin/US",
"$saves_path/gc/dolphin/JP"
],
"description": "GameCube DVD BIOS",
"required": "Optional"
},
{
"filename": "gc-dvd-20010831.bin",
"md5": "b953eb1a8fc9922b3f7051c1cdc451f1",
"system": "gc",
"paths": [
"$saves_path/gc/dolphin/EU",
"$saves_path/gc/dolphin/US",
"$saves_path/gc/dolphin/JP"
],
"description": "GameCube DVD BIOS",
"required": "Optional"
},
{
"filename": "gc-dvd-20020402.bin",
"md5": "413154dd0e2c824c9b18b807fd03ec4e",
"system": "gc",
"paths": [
"$saves_paths_path/gc/dolphin/EU",
"$saves_paths_paths_path/gc/dolphin/US",
"$saves_path/gc/dolphin/JP"
],
"description": "GameCube DVD BIOS",
"required": "Optional"
},
{
"filename": "gc-dvd-20020823.bin",
"md5": "c03f6bbaf644eb9b3ee261dbe199eb42",
"system": "gc",
"paths": [
"$saves_path/gc/dolphin/EU",
"$saves_path/gc/dolphin/US",
"$saves_path/gc/dolphin/JP"
],
"description": "GameCube DVD BIOS",
"required": "Optional"
},
{
"filename": "gc-ntsc-10.bin",
"md5": "fc924a7c879b661abc37cec4f018fdf3",
"system": "gc",
"paths": [
"$saves_path/gc/dolphin/US",
"$saves_path/gc/dolphin/JP"
],
"description": "GameCube USA BIOS",
"required": "Optional, for boot logo"
},
{
"filename": "gc-ntsc-11.bin",
"md5": "019e39822a9ca3029124f74dd4d55ac4",
"system": "gc",
"paths": [
"$saves_path/gc/dolphin/US",
"$saves_path/gc/dolphin/JP"
],
"description": "GameCube USA BIOS",
"required": "Optional, for boot logo"
},
{
"filename": "gc-ntsc-12.bin",
"md5": "b17148254a5799684c7d783206504926",
"system": "gc",
"paths": [
"$saves_path/gc/dolphin/US",
"$saves_path/gc/dolphin/JP"
],
"description": "GameCube USA BIOS",
"required": "Optional, for boot logo"
},
{
"filename": "gc-pal-10.bin",
"md5": "0cdda509e2da83c85bfe423dd87346cc",
"system": "gc",
"paths": "$saves_path/gc/dolphin/EU",
"description": "GameCube EU BIOS",
"required": "Optional, for boot logo"
},
{
"filename": "gc-pal-11.bin",
"md5": "339848a0b7c2124cf155276c1e79cbd0",
"system": "gc",
"paths": "$saves_path/gc/dolphin/EU",
"description": "GameCube EU BIOS",
"required": "Optional, for boot logo"
},
{
"filename": "gc-pal-12.bin",
"md5": "db92574caab77a7ec99d4605fd6f2450",
"system": "gc",
"paths": "$saves_path/gc/dolphin/EU",
"description": "GameCube EU BIOS",
"required": "Optional, for boot logo"
},
{
"filename": "segaboot.gcm",
"md5": "e35756db213e6521cd72dbaa68202f42",
"system": "triforce",
"paths": "$bios_path/Triforce",
"description": "Triforce BIOS",
"required": "Required"
},
{
"filename": "gba_bios.bin",
"md5": "a860e8c0b6d573d191e4ec7db1b1e4f6",
"system": "gba",
"description": "Game Boy Advance BIOS",
"required": "Optional, for boot logo",
"sha256": "fd2547724b505f487e6dcb29ec2ecff3af35a841a77ab2e85fd87350abd36570"
},
{
"filename": "dsp_rom.bin",
"system": "triforce",
"paths": "$bios_path/dolphin-emu/Sys/GC"
},
{
"filename": "dsp_coef.bin",
"system": "triforce",
"paths": "$bios_path/dolphin-emu/Sys/GC"
},
{
"filename": "font_western.bin",
"system": "triforce",
"paths": "$bios_path/dolphin-emu/Sys/GC"
},
{
"filename": "font_japanese.bin",
"system": "triforce",
"paths": "$bios_path/dolphin-emu/Sys/GC"
},
{
"filename": "keys.bin",
"system": "triforce"
},
{
"filename": "codehandler.bin",
"md5": "1f118b8735fcf40c20b38c3184eebfd9",
"sha256": "2b2ff0716aeb9b806cc61181e559041312957f25f04c435bd7da80a78917b33b",
"system": "triforce"
},
{
"filename": "rtl8723a_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8723b_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8723d_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8761a_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8761bu_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8821a_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8821c_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8822b_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8822cu_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8851bu_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8852au_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8852bu_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8852cu_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8852btu_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
},
{
"filename": "rtl8922au_fw.bin",
"system": "triforce",
"paths": "$bios_path/Load/Firmware/rtl_bt"
}
]
}
}
}
@@ -0,0 +1,911 @@
{
"duckstation": {
"name": "Duckstation (Legacy)",
"description": "Duckstation is a Playstation 1 (psx) emulator.",
"component_type": "Emulator",
"url_rdwiki": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/duckstation/duckstation-guide/",
"url_donation_purchase": "",
"system_friendly_name": "Playstation 1 (PSX)",
"system": "psx",
"compatible_presets": {
"cheevos": [
"false",
"true"
],
"cheevos_hardcore": [
"false",
"true"
],
"ask_to_exit": [
"false",
"true"
],
"savestate_on_exit": [
"false",
"true"
]
},
"preset_actions": {
"config_file_format": "duckstation",
"cheevos": [
{
"enabled_states": [
"true"
],
"setting_name": "Enabled",
"action": "change",
"new_setting_value": "true",
"section": "Cheevos",
"target_file": "$duckstation_config",
"defaults_file": "$duckstation_rd_config_dir/settings.ini"
},
{
"enabled_states": [
"true"
],
"setting_name": "Username",
"action": "change",
"new_setting_value": "$cheevos_username",
"section": "Cheevos",
"target_file": "$duckstation_config",
"defaults_file": "$duckstation_rd_config_dir/settings.ini"
},
{
"enabled_states": [
"true"
],
"setting_name": "Token",
"action": "change",
"new_setting_value": "$cheevos_token",
"section": "Cheevos",
"target_file": "$duckstation_config",
"defaults_file": "$duckstation_rd_config_dir/settings.ini"
},
{
"enabled_states": [
"true"
],
"setting_name": "LoginTimestamp",
"action": "change",
"new_setting_value": "$cheevos_login_timestamp",
"section": "Cheevos",
"target_file": "$duckstation_config",
"defaults_file": "$duckstation_rd_config_dir/settings.ini"
}
],
"cheevos_hardcore": [
{
"enabled_states": [
"true"
],
"setting_name": "ChallengeMode",
"action": "change",
"new_setting_value": "true",
"section": "Cheevos",
"target_file": "$duckstation_config",
"defaults_file": "$duckstation_rd_config_dir/settings.ini"
}
],
"savestate_on_exit": [
{
"enabled_states": [
"true"
],
"setting_name": "SaveStateOnExit",
"action": "change",
"new_setting_value": "true",
"section": "Main",
"target_file": "$duckstation_config",
"defaults_file": "$duckstation_rd_config_dir/settings.ini"
}
],
"ask_to_exit": [
{
"enabled_states": [
"true"
],
"setting_name": "ConfirmPowerOff",
"action": "change",
"new_setting_value": "true",
"section": "Main",
"target_file": "$duckstation_config",
"defaults_file": "$duckstation_rd_config_dir/settings.ini"
}
],
"bios": [
{
"filename": "psxonpsp660.bin",
"md5": "c53ca5908936d412331790f4426c6c33",
"system": "psx",
"description": "PlayStation BIOS extracted from PSP - Japan",
"required": "At least one BIOS file required",
"sha256": "cbe758e1c8ece593c8e14ce1e8b3436428a01c608032a02613b3a4b442b4d712"
},
{
"filename": "scph5500.bin",
"md5": "8dd7d5296a650fac7319bce665a6a53c",
"system": "psx",
"description": "PlayStation BIOS - SCPH-5500 - Japan",
"required": "At least one BIOS file required",
"sha256": "9c0421858e217805f4abe18698afea8d5aa36ff0727eb8484944e00eb5e7eadb"
},
{
"filename": "scph5501.bin",
"md5": "490f666e1afb15b7362b406ed1cea246",
"system": "psx",
"description": "PlayStation BIOS - SCPH-5501 - USA",
"required": "At least one BIOS file required",
"sha256": "11052b6499e466bbf0a709b1f9cb6834a9418e66680387912451e971cf8a1fef"
},
{
"filename": "scph5502.bin",
"md5": "32736f17079d0b2b7024407c39bd3050",
"system": "psx",
"description": "PlayStation BIOS - SCPH-5502 - Europe)",
"required": "At least one BIOS file required",
"sha256": "1faaa18fa820a0225e488d9f086296b8e6c46df739666093987ff7d8fd352c09"
},
{
"filename": "scph7001.bin",
"md5": "1e68c231d0896b7eadcad1d7d8e76129",
"system": "psx",
"description": "PlayStation BIOS - SCPH-7001 - Japan",
"required": "At least one BIOS file required",
"sha256": "39dcc1a0717036c9b6ac52fefd1ee7a57d3808e8cfbc755879fa685a0a738278"
},
{
"filename": "scph7002.bin",
"md5": "b9d9a0286c33dc6b7237bb13cd46fdee",
"system": "psx",
"description": "PlayStation BIOS - SCPH-7002 - USA)",
"required": "At least one BIOS file required",
"sha256": "5e84a94818cf5282f4217591fefd88be36b9b174b3cc7cb0bcd75199beb450f1"
},
{
"filename": "scph7003.bin",
"md5": "490f666e1afb15b7362b406ed1cea246",
"system": "psx",
"description": "PlayStation BIOS - SCPH-7003 - Europe",
"required": "At least one BIOS file required"
},
{
"filename": "scph7502.bin",
"md5": "b9d9a0286c33dc6b7237bb13cd46fdee",
"system": "psx",
"description": "PlayStation BIOS - SCPH-7502 - Europe",
"required": "At least one BIOS file required"
},
{
"filename": "scph9002(7502).bin",
"md5": "b9d9a0286c33dc6b7237bb13cd46fdee",
"system": "psx",
"description": "PlayStation BIOS - SCPH-9002 - Europe",
"required": "At least one BIOS file required"
},
{
"filename": "ps1_rom.bin",
"md5": "81bbe60ba7a3d1cea1d48c14cbcc647b",
"system": "psx",
"description": "Generic PlayStation BIOS from the Playstation 3",
"required": "At least one BIOS file required",
"sha256": "ab05d7bed4980fe1ddde6828b10b4968ab63d3f75dee3ef1deda16391ec29fb5"
},
{
"filename": "scph1000.bin",
"md5": "239665b1a3dade1b5a52c06338011044",
"system": "psx",
"description": "PlayStation 1 BIOS - USA",
"required": "At least one BIOS file required",
"sha256": "cfc1fc38eb442f6f80781452119e931bcae28100c1c97e7e6c5f2725bbb0f8bb"
},
{
"filename": "scph1001.bin",
"md5": "924e392ed05558ffdb115408c263dccf",
"system": "psx",
"description": "PlayStation 1 BIOS - EUROPE",
"required": "At least one BIOS file required",
"sha256": "71af94d1e47a68c11e8fdb9f8368040601514a42a5a399cda48c7d3bff1e99d3"
},
{
"filename": "scph1002.bin",
"md5": "54847e693405ffeb0359c6287434cbef",
"system": "psx",
"description": "PlayStation 1 BIOS - JAPAN",
"required": "At least one BIOS file required",
"sha256": "0af2be3468d30b6018b3c3b0d98b8b64347e255e16d874d55f0363648973dbf0"
},
{
"filename": "scph100.bin",
"md5": "8abc1b549a4a80954addc48ef02c4521",
"system": "psx",
"description": "PlayStation 1 BIOS",
"required": "At least one BIOS file required",
"sha256": "b29b4b5fcddef369bd6640acacda0865e0366fcf7ea54e40b2f1a8178004f89a"
},
{
"filename": "scph101.bin",
"md5": "6e3735ff4c7dc899ee98981385f6f3d0",
"system": "psx",
"description": "PlayStation 1 BIOS - USA",
"required": "At least one BIOS file required",
"sha256": "aca9cbfa974b933646baad6556a867eca9b81ce65d8af343a7843f7775b9ffc8"
},
{
"filename": "scph102A.bin",
"md5": "b10f5e0e3d9eb60e5159690680b1e774",
"system": "psx",
"description": "PlayStation 1 BIOS - EUROPE",
"required": "At least one BIOS file required",
"sha256": "5c0166da24e27deaa82246de8ff0108267fe4bb59f6df0fdec50e05e62448ca4"
},
{
"filename": "scph102B.bin",
"md5": "de93caec13d1a141a40a79f5c86168d6",
"system": "psx",
"description": "PlayStation 1 BIOS - JAPAN",
"required": "At least one BIOS file required",
"sha256": "42244b0c650821519751b7e77ad1d3222a0125e75586df2b4e84ba693b9809dc"
},
{
"filename": "scph102C.bin",
"md5": "de93caec13d1a141a40a79f5c86168d6",
"system": "psx",
"description": "PlayStation 1 BIOS",
"required": "At least one BIOS file required"
},
{
"filename": "scph3000.bin",
"md5": "849515939161e62f6b866f6853006780",
"system": "psx",
"description": "PlayStation 1 BIOS",
"required": "At least one BIOS file required",
"sha256": "5eb3aee495937558312b83b54323d76a4a015190decd4051214f1b6df06ac34b"
},
{
"filename": "scph3500.bin",
"md5": "cba733ceeff5aef5c32254f1d617fa62",
"system": "psx",
"description": "PlayStation 1 BIOS",
"required": "At least one BIOS file required",
"sha256": "6f71ca1e716da761dc53187bd39e00c213f566e55090708fd3e2b4b425c8c989"
},
{
"filename": "scph5000.bin",
"md5": "57a06303dfa9cf9351222dfcbb4a29d9",
"system": "psx",
"description": "PlayStation 1 BIOS",
"required": "At least one BIOS file required",
"sha256": "0c8359870cbac0ea091f1c87f188cd332dcc709753b91cafd9fd44a4a6188197"
},
{
"filename": "scph1002b.bin",
"md5": "417b34706319da7cf001e76e40136c23",
"sha256": "1efb0cfc5db8a8751a884c5312e9c6265ca1bc580dc0c2663eb2dea3bde9fcf7",
"system": "psx",
"description": "SCPH-1002, DTL-H1102 (v2.1 07-17-95 E)"
},
{
"filename": "scph1002c.bin",
"md5": "e2110b8a2b97a8e0b857a45d32f7e187",
"sha256": "3d06d2c469313c2a2128d24fe2e0c71ff99bc2032be89a829a62337187f500b7",
"system": "psx",
"description": "SCPH-1002, DTL-H1202, H3002 (v2.2 12-04-95 E)"
},
{
"filename": "scph1001_v20.bin",
"md5": "dc2b9bf8da62ec93e868cfd29f0d067d",
"sha256": "42e4124be7623e2e28b1db0d8d426539646faee49d74b71166d8ba5bd7c472ed",
"system": "psx",
"description": "SCPH-1001, DTL-H1001 (v2.0 05-07-95 A)"
},
{
"filename": "scph1001_v21.bin",
"md5": "da27e8b6dab242d8f91a9b25d80c63b8",
"sha256": "6ad5521d105a6b86741f1af8da2e6ea1c732d34459940618c70305a105e8ec10",
"system": "psx",
"description": "SCPH-1001, DTL-H1101 (v2.1 07-17-95 A)"
},
{
"filename": "scph7000.bin",
"md5": "8e4c14f567745eff2f0408c8129f72a6",
"sha256": "e900504d1755f021f861b82c8258c5e6658c7b592f800cccd91f5d32ea380d28",
"system": "psx",
"description": "SCPH-7000, 7500, 9000 (v4.0 08-18-97 J)"
},
{
"filename": "scph7000w.bin",
"md5": "b84be139db3ee6cbd075630aa20a6553",
"sha256": "b3aa63cf30c81e0a40641740f4a43e25fda0b21b792fa9aaef60ce1675761479",
"system": "psx",
"description": "SCPH-7000W (v4.1 11-14-97 A)"
},
{
"filename": "scph101_v44.bin",
"md5": "9a09ab7e49b422c007e6d54d7c49b965",
"sha256": "8434528690df0d444dfe4e931eb5501be53df70497e63f4c9a21184631cdbb87",
"system": "psx",
"description": "SCPH-101 (v4.4 03-24-00 A)"
},
{
"filename": "scph1000r.bin",
"md5": "476d68a94ccec3b9c8303bbd1daf2810",
"sha256": "f597f4a8811c1207256f871a8b551be5fce7144051bb0baa9f9c21e94f79307f",
"system": "psx",
"description": "SCPH-1000R (v4.5 05-25-00 J)"
},
{
"filename": "dtlh1100.bin",
"md5": "ca5cfc321f916756e3f0effbfaeba13b",
"sha256": "4018749b3698b8694387beebcbabfb48470513066840f9441459ee4c9f0f39bc",
"system": "psx",
"description": "DTL-H1100 (v2.2 03-06-96 D)"
},
{
"filename": "ps2_scph18000.bin",
"md5": "d8f485717a5237285e4d7c5f881b7f32",
"sha256": "51019af1a7928c90470bb9cbc724a5679873af85dc897c07ec27d4e8c0478b03",
"system": "psx",
"description": "PS2, SCPH-18000 (v5.0 10-27-00 J)"
},
{
"filename": "ps2_dtlh10000_0117.bin",
"md5": "32f2e4d5ff5ee11072a6bc45530f5765",
"sha256": "76f465dc8961c3b905ac2882351c5c86bf5ff9ff03e7349775c65924e73fa3f0",
"system": "psx",
"description": "PS2, DTL-H10000 (v5.0 01/17/00 T)"
},
{
"filename": "ps2_scph10000_0117.bin",
"md5": "acf4730ceb38ac9d8c7d8e21f2614600",
"sha256": "c4dad3b5c6ad58bce70a47fc332602880f041c0338ac6be89061c928f6919ab1",
"system": "psx",
"description": "PS2, SCPH-10000 (v5.0 01/17/00 T)"
},
{
"filename": "ps2_dtlh10000_0217.bin",
"md5": "acf9968c8f596d2b15f42272082513d1",
"sha256": "a15fe29628a94b38efc8989bddd17ae243e510da080e711bb52e7d3b3ef34b55",
"system": "psx",
"description": "PS2, DTL-H10000 (v5.0 02/17/00 T)"
},
{
"filename": "ps2_scph10000_15000.bin",
"md5": "b1459d7446c69e3e97e6ace3ae23dd1c",
"sha256": "4aa33132cfc93d785c5b3f0541ef67725e02d9ded66ae1b6beb25f8c97736b84",
"system": "psx",
"description": "PS2, SCPH-10000/SCPH-15000 (v5.0 02/17/00 T)"
},
{
"filename": "ps2_dtlh10000_0224.bin",
"md5": "d3f1853a16c2ec18f3cd1ae655213308",
"sha256": "4737c76a87ff738aeeeb65096c39ce9d164dcaa1b48497bbf451cade3310e753",
"system": "psx",
"description": "PS2, DTL-H10000 (v5.0 02/24/00 T)"
},
{
"filename": "ps2_dtlh30001.bin",
"md5": "63e6fd9b3c72e0d7b920e80cf76645cd",
"sha256": "62d372752c6362883e1734fac06dd947af9bf3db2d626d379a89dace5434e9e3",
"system": "psx",
"description": "PS2, DTL-H30001 (v5.0 07/27/00 A)"
},
{
"filename": "ps2_scph30001_0727.bin",
"md5": "a20c97c02210f16678ca3010127caf36",
"sha256": "b0bf7184d50a209cf7ceb1ab0eb3a0c9b8c583f5f6b3c819e6536f282b93063b",
"system": "psx",
"description": "PS2, SCPH-30001 (v5.0 07/27/00 A)"
},
{
"filename": "ps2_scph30001_0902.bin",
"md5": "8db2fbbac7413bf3e7154c1e0715e565",
"sha256": "87f6b61cf51876f676f4962e94cf68c250b90a93b09d28a9b5d54d0a531f439f",
"system": "psx",
"description": "PS2, SCPH-30001 (v5.0 09/02/00 A)"
},
{
"filename": "ps2_scph30002_0902.bin",
"md5": "b7fa11e87d51752a98b38e3e691cbf17",
"sha256": "5a9e4aab4af2fa94ed0c1ac7ba9aa0544125b1792ca375a702437d850b5096d0",
"system": "psx",
"description": "PS2, SCPH-30002/SCPH-30003/SCPH-30004 (v5.0 09/02/00 E)"
},
{
"filename": "ps2_scph18000_gh003.bin",
"md5": "f63bc530bd7ad7c026fcd6f7bd0d9525",
"sha256": "fb05637eaa8f9528c6424780d7f603c847434e5c77d1f0ce7058c8cd8785d9d5",
"system": "psx",
"description": "PS2, SCPH-18000 (GH-003) (v5.0 10/27/00 J)"
},
{
"filename": "ps2_scph18000_gh008.bin",
"md5": "cee06bd68c333fc5768244eae77e4495",
"sha256": "5d6157bab61b40de134d5796af03284211eaab5120705b88e8bb4978d6387e71",
"system": "psx",
"description": "PS2, SCPH-18000 (GH-008) (v5.0 10/27/00 J)"
},
{
"filename": "ps2_dtlh30101.bin",
"md5": "0bf988e9c7aaa4c051805b0fa6eb3387",
"sha256": "79c55576524ee8aae590d85d7581b1b725e6519c427071392e36b3b1f7662856",
"system": "psx",
"description": "PS2, DTL-H30101 (v5.0 12/28/00 A)"
},
{
"filename": "ps2_scph30001_35001.bin",
"md5": "8accc3c49ac45f5ae2c5db0adc854633",
"sha256": "c641edbd8fcc1ef363639710795a670850b4549efa0de7dbadabc2b6eb363c4a",
"system": "psx",
"description": "PS2, SCPH-30001/SCPH-35001 (v5.0 12/28/00 A)"
},
{
"filename": "ps2_scph30002_1228.bin",
"md5": "838544f12de9b0abc90811279ee223c8",
"sha256": "ea635b3dad3eb90fedd8113134819d0af2a2f4d4797d1fb5d99b9c9062f41efd",
"system": "psx",
"description": "PS2, SCPH-30002/SCPH-30003/SCPH-30004/SCHP-35002/SCPH-35003/SCPH-35004 (v5.0 12/28/00 E)"
},
{
"filename": "ps2_dtlh30000.bin",
"md5": "bb6bbc850458fff08af30e969ffd0175",
"sha256": "01f0f761aaa69029e3509ed3404acfb529376e8a1830550f8ce7ed534813ffdd",
"system": "psx",
"description": "PS2, DTL-H30000 (v5.0 01/18/01 J)"
},
{
"filename": "ps2_scph30000_35000.bin",
"md5": "815ac991d8bc3b364696bead3457de7d",
"sha256": "6943d96a246f61ebc3d1af2b9dc4f4435283244c1d1d3334ed74065c0cd30947",
"system": "psx",
"description": "PS2, SCPH-30000/SCPH-35000 (v5.0 01/18/01 J)"
},
{
"filename": "ps2_scph30001r_0427.bin",
"md5": "b107b5710042abe887c0f6175f6e94bb",
"sha256": "868545167e795e7975628d0c5f41614cbe79e53ba5c2b2d2c7e6750208268482",
"system": "psx",
"description": "PS2, SCPH-30001R (v5.0 04/27/01 A)"
},
{
"filename": "ps2_scph30000_0427.bin",
"md5": "ab55cceea548303c22c72570cfd4dd71",
"sha256": "630a1ea45e214535d5dcd6db425ebd68c3e5ec11aa0e95b44782a5de3d4a74ca",
"system": "psx",
"description": "PS2, SCPH-30000 (v5.0 04/27/01 J)"
},
{
"filename": "ps2_scph30001r_0704.bin",
"md5": "18bcaadb9ff74ed3add26cdf709fff2e",
"sha256": "02211f5a70f9b8c29c87925a27c1daf1ad6607adb94d64c73a37c606d6b55ac1",
"system": "psx",
"description": "PS2, SCPH-30001R (v5.0 07/04/01 A)"
},
{
"filename": "ps2_scph30002r_0704.bin",
"md5": "491209dd815ceee9de02dbbc408c06d6",
"sha256": "9c076c04c345229d7f4150fd295193719a620a97d3e32ea9752ff951597cc96e",
"system": "psx",
"description": "PS2, SCPH-30002R/SCPH-30003R/SCPH-30004R (v5.0 07/04/01 E)"
},
{
"filename": "ps2_scph30001r_1004.bin",
"md5": "7200a03d51cacc4c14fcdfdbc4898431",
"sha256": "089c73b4dea8a181ba3ef7eaa5057a2ce3cd5521f036b713d3bd08937a8b2790",
"system": "psx",
"description": "PS2, SCPH-30001R (v5.0 10/04/01 A)"
},
{
"filename": "ps2_scph30002r_1004.bin",
"md5": "8359638e857c8bc18c3c18ac17d9cc3c",
"sha256": "b6e08640bce5ad6f75c5f503ad969e6c416dc0eb7393d203c4cbdf708938bae9",
"system": "psx",
"description": "PS2, SCPH-30002R/SCPH-30003R/SCPH-30004R (v5.0 10/04/01 E)"
},
{
"filename": "ps2_scph30005r.bin",
"md5": "352d2ff9b3f68be7e6fa7e6dd8389346",
"sha256": "8f3a9759d10cd75521af5631e7b89c3f57fd25d60d26ac835b79c2397f797f03",
"system": "psx",
"description": "PS2, SCPH-30005R/SCPH-30006R/SCPH-30007R (v5.0 07/30/01 J)"
},
{
"filename": "ps2_scph39001.bin",
"md5": "d5ce2c7d119f563ce04bc04dbc3a323e",
"sha256": "f4c948e61a291d4b3f92a141e550cf8357204287a31ff784caccbedaef910c9d",
"system": "psx",
"description": "PS2, SCPH-39001 (v5.0 02/07/02 A)"
},
{
"filename": "ps2_scph39002.bin",
"md5": "0d2228e6fd4fb639c9c39d077a9ec10c",
"sha256": "5b7cfc4dfdcf556d70ea975b754da6ec26542f6a0e3dfa43a6fcef2902e8f60d",
"system": "psx",
"description": "PS2, SCPH-39002/SCPH-39003/SCPH-39004 (v5.0 03/19/02 E)"
},
{
"filename": "ps2_scph37000_39000.bin",
"md5": "72da56fccb8fcd77bba16d1b6f479914",
"sha256": "51ed0afe0d806871e7fa7b9c87cc3f87cb0271915484832a3a8114c30f00b8f3",
"system": "psx",
"description": "PS2, SCPH-37000/SCPH-39000 (v5.0 04/26/02 J)"
},
{
"filename": "ps2_scph39005.bin",
"md5": "315a4003535dfda689752cb25f24785c",
"sha256": "9ea2c64c0d1df4208208e0aeb7aefbd5d24e9540029e7f4cf703b3d9b5662257",
"system": "psx",
"description": "PS2, SCPH-39005/SCPH-39006/SCPH-39007 (v5.0 04/26/02 J)"
},
{
"filename": "ps2_dtlh50000.bin",
"md5": "54ecde087258557e2ddb5c3ddb004028",
"sha256": "8c9468efa963e350a3b8836db2f5aaf835b52ff4bf358e797cea711b99ca04b0",
"system": "psx",
"description": "PS2, DTL-H50000 (v5.0 02/06/03 J)"
},
{
"filename": "ps2_scph50000_55000.bin",
"md5": "312ad4816c232a9606e56f946bc0678a",
"sha256": "6c003a0ca1beb501fba2063b12573521c9b3ec8cdcfb7f5e6a310771ebf166da",
"system": "psx",
"description": "PS2, SCPH-50000/SCPH-55000 (v5.0 02/06/03 J)"
},
{
"filename": "ps2_scph50002_0227.bin",
"md5": "6e69920fa6eef8522a1d688a11e41bc6",
"sha256": "3e5b57d30d703245edec4b9b504574f849139c61c497725e837427b5f3404647",
"system": "psx",
"description": "PS2, SCPH-50002/SCPH-50003/SCPH-50004 (v5.0 02/27/03 E)"
},
{
"filename": "ps2_dtlh50001_0325.bin",
"md5": "eb960de68f0c0f7f9fa083e9f79d0360",
"sha256": "4844a181b51032b772624f8d38eb0307645175f579d697a255ba27b63c62a4bf",
"system": "psx",
"description": "PS2, DTL-H50001 (v5.0 03/25/03 A)"
},
{
"filename": "ps2_scph50001_0325.bin",
"md5": "8aa12ce243210128c5074552d3b86251",
"sha256": "5b3832b97baa0886e7ceddd542bacef3237896eb9bd3f270581e274c2337fb2e",
"system": "psx",
"description": "PS2, SCPH-50001 (v5.0 03/25/03 A)"
},
{
"filename": "ps2_dtlh50009.bin",
"md5": "240d4c5ddd4b54069bdc4a3cd2faf99d",
"sha256": "6dafc33b4376f8da0c9865ffd4ace6ca90f522666b13f73f67c805b9406123e2",
"system": "psx",
"description": "PS2, DTL-H50009 (v5.0 02/24/03 J)"
},
{
"filename": "ps2_desr5000.bin",
"md5": "1c6cd089e6c83da618fbf2a081eb4888",
"sha256": "c6b51566ae5f2004c779f62bd5bf88ba837be6a47d3bced28a94471e760738b9",
"system": "psx",
"description": "PS2, DESR-5000/DESR-5100/DESR-7000/DESR-7100 (v5.0 10/28/03 J)"
},
{
"filename": "ps2_scph55000_0623.bin",
"md5": "463d87789c555a4a7604e97d7db545d1",
"sha256": "a8837d7aa51481593e6bd87b6ffe37682d33c017a3618793a69310b1ff21ee64",
"system": "psx",
"description": "PS2, SCPH-55000 (v5.0 06/23/03 J)"
},
{
"filename": "ps2_dtlh50001_0623.bin",
"md5": "ab9d49ad40ae49f19856ad187777b1b3",
"sha256": "ce5c3a6e62f815fc30d1d6689e368e07c238cb741919990a884adb84a2a39b0e",
"system": "psx",
"description": "PS2, DTL-H50001 (v5.0 06/23/03 A)"
},
{
"filename": "ps2_scph50001_0623.bin",
"md5": "35461cecaa51712b300b2d6798825048",
"sha256": "3eebdc1250c9737b8c9d5ed4c4ad3db7e454e5c69024b6b2bc5f783230cba517",
"system": "psx",
"description": "PS2, SCPH-50001/SCPH-50010 (v5.0 06/23/03 A)"
},
{
"filename": "ps2_scph50002_0623.bin",
"md5": "bd6415094e1ce9e05daabe85de807666",
"sha256": "0fcb0bd98a33e77a99f30d3b4095f43a219ea36f3506589dbba5189ff2b4c337",
"system": "psx",
"description": "PS2, SCPH-50002/SCPH-50003/SCPH-50004 (v5.0 06/23/03 E)"
},
{
"filename": "ps2_scph50006.bin",
"md5": "2e70ad008d4ec8549aada8002fdf42fb",
"sha256": "6b61e27861c288a99ee9b4878862ed824173a037ebaca2bef0581017a85241e1",
"system": "psx",
"description": "PS2, SCPH-50006/SCPH-50007 (v5.0 06/23/03 J)"
},
{
"filename": "ps2_scph50005.bin",
"md5": "50d5b97b57d8c9b6534adcb46c2027d4",
"sha256": "0330e785f2228d4f30ebc9f19efc102ac4c1466513ede0e2b51993821dcd8d83",
"system": "psx",
"description": "PS2, SCPH-50005 (v5.0 06/23/03 J)"
},
{
"filename": "ps2_scph50009.bin",
"md5": "1b6e631b536247756287b916f9396872",
"sha256": "a7af55393f114b2f7ee4eacfb4a9689224b2163bf28e89a76e8c7375daec6f3e",
"system": "psx",
"description": "PS2, SCPH-50009 (v5.0 06/23/03 J)"
},
{
"filename": "ps2_scph50000_0822.bin",
"md5": "00da1b177096cfd2532c8fa22b43e667",
"sha256": "8876e0d1f81edb0378b0e744d15a884f75cdf38969190499257ad7ae35d2a664",
"system": "psx",
"description": "PS2, SCPH-50000 (v5.0 08/22/03 J)"
},
{
"filename": "ps2_scph50011.bin",
"md5": "81f4336c1de607dd0865011c0447052e",
"sha256": "e6fe40f5add81143af683e767c0e9694b651bded2fbd25c6676321dd82fb0108",
"system": "psx",
"description": "PS2, SCPH-50011 (v5.0 03/29/04 A)"
},
{
"filename": "ps2_scph70000.bin",
"md5": "0eee5d1c779aa50e94edd168b4ebf42e",
"sha256": "3b377ce5f7bb8d880260851867a5452b59149aeb8bb189c5df41e3bace7b8e09",
"system": "psx",
"description": "PS2, SCPH-70000 (v5.0 06/14/04 J)"
},
{
"filename": "ps2_scph70001.bin",
"md5": "d333558cc14561c1fdc334c75d5f37b7",
"sha256": "6d23d001daf2a0fa8b381a5d49f51753c36e3622d0f04be46af1a0c548be4744",
"system": "psx",
"description": "PS2, SCPH-70001/SCPH-70011/SCPH-70012 (v5.0 06/14/04 A)"
},
{
"filename": "ps2_scph70002.bin",
"md5": "dc752f160044f2ed5fc1f4964db2a095",
"sha256": "d6653f4e93be2f6f9e9d690a934f26cf0f6ad4e348b69f41ef736732c3a6685b",
"system": "psx",
"description": "PS2, SCPH-70002/SCPH-70003/SCPH-70004/SCPH-70008 (v5.0 06/14/04 E)"
},
{
"filename": "ps2_scph70005.bin",
"md5": "3e3e030c0f600442fa05b94f87a1e238",
"sha256": "79b89a771d6f36fd96a0c4267df2559d034e5c96cd140e536a20f3c0c97efe16",
"system": "psx",
"description": "PS2, SCPH-70005/SCPH-70006/SCPH-70007 (v5.0 06/14/04 J)"
},
{
"filename": "ps2_desr5500.bin",
"md5": "1ad977bb539fc9448a08ab276a836bbc",
"sha256": "1065ca6d4b3d9753ec206f4f66ec411137c108b0bee86fe20be8007c8cb95a81",
"system": "psx",
"description": "PS2, DESR-5500/DESR-5700/DESR-7500/DESR-7700 (v5.0 09/17/04 J)"
},
{
"filename": "ps2_dtlh75000.bin",
"md5": "bf0078ba5e19d57eae18047407f3b6e5",
"sha256": "03c0a3798e588f081f24c23e9a14f78f13e8ddc471fbff270e902d7f37c87cd1",
"system": "psx",
"description": "PS2, DTL-H75000 (v5.0 06/20/05 J)"
},
{
"filename": "ps2_scph75000.bin",
"md5": "eb4f40fcf4911ede39c1bbfe91e7a89a",
"sha256": "5aff52ae270a519b52e3c7c50f780c63b771da4634d565c4f954b37ce250b620",
"system": "psx",
"description": "PS2, SCPH-75000 (v5.0 06/20/05 J)"
},
{
"filename": "ps2_dtlh75000a.bin",
"md5": "9959ad7a8685cad66206e7752ca23f8b",
"sha256": "0e216b4e1a9985452db34ba933eef9422a6138205a79b9fdc1eed7da06b39953",
"system": "psx",
"description": "PS2, DTL-H75000A (v5.0 06/20/05 A)"
},
{
"filename": "ps2_scph75001.bin",
"md5": "929a14baca1776b00869f983aa6e14d2",
"sha256": "040cadcc57760082fcd42bcaa9c7cfb627f6d40660b0986dcea133f5700f65b6",
"system": "psx",
"description": "PS2, SCPH-75001/SCPH-75010 (v5.0 06/20/05 A)"
},
{
"filename": "ps2_scph75002.bin",
"md5": "573f7d4a430c32b3cc0fd0c41e104bbd",
"sha256": "d8c41bc3b26a015840f10abaced57806bfa1e602dff166d929e961af12346321",
"system": "psx",
"description": "PS2, SCPH-75002/SCPH-75003/SCPH-75004/SCPH-75008 (v5.0 06/20/05 E)"
},
{
"filename": "ps2_scph75006.bin",
"md5": "df63a604e8bff5b0599bd1a6c2721bd0",
"sha256": "76c6c82491f9d123b254df0cd31d5515818e113205070ecbaf1c96cf0df28dc6",
"system": "psx",
"description": "PS2, SCPH-75006 (v5.0 06/20/05 J)"
},
{
"filename": "ps2_scph77000.bin",
"md5": "5b1ba4bb914406fae75ab8e38901684d",
"sha256": "ae5e5d6b9301d9c097fb693cabd1abb1b8e93a110f49c7046c35ae7cd19051a5",
"system": "psx",
"description": "PS2, SCPH-77000 (v5.0 02/10/06 J)"
},
{
"filename": "ps2_scph77001.bin",
"md5": "cb801b7920a7d536ba07b6534d2433ca",
"sha256": "c7628a01da23d7d38851aec8403e535581d0f2a781fee5b86b1c648b13a9970d",
"system": "psx",
"description": "PS2, SCPH-77001/SCPH-77010 (v5.0 02/10/06 A)"
},
{
"filename": "ps2_scph77002.bin",
"md5": "af60e6d1a939019d55e5b330d24b1c25",
"sha256": "8921e73006ac2c01922fcc7b76da6b9caed6b20fbd4e69f165635e18542de6ab",
"system": "psx",
"description": "PS2, SCPH-77002/SCPH-77003/SCPH-77004/SCPH-77008 (v5.0 02/10/06 E)"
},
{
"filename": "ps2_scph77006.bin",
"md5": "549a66d0c698635ca9fa3ab012da7129",
"sha256": "d1382662830786dd8b7e3f3931be7ad73420e5c2e7be0fd832d2ccf104f4be9f",
"system": "psx",
"description": "PS2, SCPH-77006/SCPH-77007 (v5.0 02/10/06 J)"
},
{
"filename": "ps2_dtlh90000_j.bin",
"md5": "5e2014472c88f74f7547d8c2c60eca45",
"sha256": "79614b495dcae4e6867f6aff40466a331c6408e966ffac1f2af0bf4dee94b027",
"system": "psx",
"description": "PS2, DTL-H90000 (v5.0 09/05/06 J)"
},
{
"filename": "ps2_scph79000_90000.bin",
"md5": "5de9d0d730ff1e7ad122806335332524",
"sha256": "e093ef89810ed826a86c0fdb9ccef5761bd69b48fdc8480c96cbf33cdaa970a3",
"system": "psx",
"description": "PS2, SCPH-79000/SCPH-90000 (v5.0 09/05/06 J)"
},
{
"filename": "ps2_dtlh90000_a.bin",
"md5": "21fe4cad111f7dc0f9af29477057f88d",
"sha256": "55c1380236cad07a6018784a1b3ba4ef1d073cc0a4de89826d9cda59000013fc",
"system": "psx",
"description": "PS2, DTL-H90000 (v5.0 09/05/06 A)"
},
{
"filename": "ps2_scph79001_90001.bin",
"md5": "40c11c063b3b9409aa5e4058e984e30c",
"sha256": "e76d9c8f4019041fb17f41fff25d57d608c1a3f205c99bda9eb47402c43e8c93",
"system": "psx",
"description": "PS2, SCPH-79001/SCPH-79010/SCPH-90001 (v5.0 09/05/06 A)"
},
{
"filename": "ps2_scph79002_90002.bin",
"md5": "80bbb237a6af9c611df43b16b930b683",
"sha256": "a4c762498379a722398efc9a7d392f1d5464bd6dc23601070548e91282c783f3",
"system": "psx",
"description": "PS2, SCPH-79002/SCPH-79003/SCPH-79004/SCPH-79008/SCPH-90002/SCPH-90003/SCPH-90004 (v5.0 09/05/06 E)"
},
{
"filename": "ps2_scph79006_90006.bin",
"md5": "c37bce95d32b2be480f87dd32704e664",
"sha256": "7d280652ed921d455a48fe9e4f6134a2c30e7bda1ee4af83ae24433efa3fd219",
"system": "psx",
"description": "PS2, SCPH-79006/SCPH-79007/SCPH-90006/SCPH-90007 (v5.0 09/05/06 J)"
},
{
"filename": "ps2_scph90000_0220.bin",
"md5": "80ac46fa7e77b8ab4366e86948e54f83",
"sha256": "9e9540f7ace6651a029942c1d29b6694a9b55a80becf40b92e2033d00da9de3b",
"system": "psx",
"description": "PS2, SCPH-90000 (v5.0 02/20/08 J)"
},
{
"filename": "ps2_scph90001_0220.bin",
"md5": "21038400dc633070a78ad53090c53017",
"sha256": "f609ed1ca62437519828cdd824b5ea79417fd756e71a4178443483e3781fedd2",
"system": "psx",
"description": "PS2, SCPH-90001/SCPH-90010 (v5.0 02/20/08 A)"
},
{
"filename": "ps2_scph90002_0220.bin",
"md5": "dc69f0643a3030aaa4797501b483d6c4",
"sha256": "cb5a91fda0e8e2b2a012c0b4d7db5831281c32a89cd659c6e8f64df1fe204e69",
"system": "psx",
"description": "PS2, SCPH-90002/SCPH-90003/SCPH-90004/SCPH-90008 (v5.0 02/20/08 E)"
},
{
"filename": "ps2_scph90005_0220.bin",
"md5": "30d56e79d89fbddf10938fa67fe3f34e",
"sha256": "ae052523f69be651770e21b700e2c195c4e97c41e5ed08580deaa5feaf4247c4",
"system": "psx",
"description": "PS2, SCPH-90005/SCPH-90006/SCPH-90007 (v5.0 02/20/08 J)"
},
{
"filename": "ps2_scph30003.bin",
"md5": "71f50ef4f4e17c163c78908e16244f7d",
"sha256": "a42c16a9be754f8f665c56611bd3a83eabb231c818b8de64744d0ea1a1d0e74d",
"system": "psx",
"description": "PS2, SCPH-30003 (v5.0 09-02-00 E)"
},
{
"filename": "ps2_dtlh30002.bin",
"md5": "91c87cb2f2eb6ce529a2360f80ce2457",
"sha256": "97362769363ad65f0432eb97f661a6912d51497f915f3fe312718bae470bc141",
"system": "psx",
"description": "PS2, DTL-H30002 (v5.0 09/02/00 E)"
},
{
"filename": "ps2_dtlh30102_0902.bin",
"md5": "3016b3dd42148a67e2c048595ca4d7ce",
"sha256": "936d408dc91230fe9715aedd7339c4d4aff279ef56ab4e2a2031d5c466e9f4af",
"system": "psx",
"description": "PS2, DTL-H30102 (v5.0 09/02/00 E)"
},
{
"filename": "ps2_dtlh30102_1228.bin",
"md5": "6f9a6feb749f0533aaae2cc45090b0ed",
"sha256": "e25227b01cda1f0ef4b56e8f85596f0e50cfc303026a23c3d55e161d9e346d8b",
"system": "psx",
"description": "PS2, DTL-H30102 (v5.0 12/28/00 E)"
},
{
"filename": "ps2_scph39008.bin",
"md5": "5b1f47fbeb277c6be2fccdd6344ff2fd",
"sha256": "7b5fdb035668e7241aad447dfaae6484865de923dc75192c9f3d837569a6cb30",
"system": "psx",
"description": "PS2, SCPH-39008 (v5.0 04/26/02 E)"
},
{
"filename": "ps2_dtlh50002.bin",
"md5": "666018ffec65c5c7e04796081295c6c7",
"sha256": "a9f7262f4ba8ac2523cdcf2765c40b326954b99c51b0c2d29f19296c5cf08277",
"system": "psx",
"description": "PS2, DTL-H50002 (v5.0 02/27/03 E)"
},
{
"filename": "ps2_scph50008.bin",
"md5": "b53d51edc7fc086685e31b811dc32aad",
"sha256": "e8eed9831c39fc298be087ba11d620673134bc683b97ccc909c555d29cc1b207",
"system": "psx",
"description": "PS2, SCPH-50008 (v5.0 06/23/03 E)"
},
{
"filename": "ps2_scph50004_0822.bin",
"md5": "afde410bd026c16be605a1ae4bd651fd",
"sha256": "cc7b333bf7dc7c77a7c8818b1d34be715bc85bd1c5ecd89d785cc879a935bc4e",
"system": "psx",
"description": "PS2, SCPH-50004 (v5.0 08/22/03 E)"
},
{
"filename": "ps2_scph70002_alt.bin",
"md5": "7ebb4fc5eab6f79a27d76ac9aad392b2",
"sha256": "7f7dd27cbddba7067fca250ef02b81dc5fe50083e8c20b83017343df6a34d411",
"system": "psx",
"description": "PS2, SCPH-70002 (v5.0 06/14/04 E)"
},
{
"filename": "ps2_dtlh70002.bin",
"md5": "63ead1d74893bf7f36880af81f68a82d",
"sha256": "c2eacbbf2538c64269411abc45eea706e657f943288ecfe9c66475793aa03b0d",
"system": "psx",
"description": "PS2, DTL-H70002 (v5.0 06/14/04 E)"
},
{
"filename": "ps2_kdl22px300.bin",
"md5": "93ea3bcee4252627919175ff1b16a1d9",
"sha256": "b384f663c0202794207659d5a4767e317a904bbbea63c93ed17f5ef205d33995",
"system": "psx",
"description": "PS2, KDL-22PX300 (v5.0 04/15/10 E)"
},
{
"filename": "openbios.bin",
"system": "psx",
"description": "OpenBIOS (open-source PS1 HLE BIOS, region-free override)"
}
]
}
}
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,69 @@
{
"melonds": {
"description": "MelonDS is a Nintendo DS (nds) emulator.",
"name": "melonDS",
"component_type": "Emulator",
"url_rdwiki": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/melonds/melonds-guide/",
"url_webpage": "https://melonds.kuribo64.net/",
"url_donation_purchase": [
"https://www.patreon.com/Arisotura",
"https://paypal.me/Arisotura"
],
"url_source": "https://github.com/melonDS-emu/melonDS",
"system_friendly_name": "Nintendo DS",
"system": "nds",
"bios": [
{
"filename": "bios7.bin",
"md5": "df692a80a5b1bc90728bc3dfc76cd948",
"system": "nds",
"description": "Nintendo DS ARM7 BIOS",
"required": "Optional"
},
{
"filename": "bios9.bin",
"md5": "a392174eb3e572fed6447e956bde4b25",
"system": "nds",
"description": "Nintendo DS ARM9 BIOS",
"required": "Optional"
},
{
"filename": "firmware.bin",
"md5": "e45033d9b0fa6b0de071292bba7c9d13",
"system": "nds",
"description": "Nintendo DS firmware",
"required": "Required"
},
{
"filename": "biosdsi7.bin",
"sha256": "2946281e730e71f7cafdb125f5cb60fed944ca5d610ee1e082c441b602b5f4e2",
"system": "nds",
"description": "Nintendo DSi ARM7 BIOS",
"required": "Required",
"md5": null
},
{
"filename": "biosdsi9.bin",
"sha256": "47538922a8e8a8e79b922ff1203863ef5c40d9c54656a8d2c89c56ece52029ce",
"system": "nds",
"description": "Nintendo DSi ARM9 BIOS",
"required": "Required",
"md5": null
},
{
"filename": "dsifirmware.bin",
"sha256": "11a150e3729bdde3ae8f5e7fc8be67d8bfbc548a1d2e523da58aa826ca0ffa99",
"system": "nds",
"description": "Nintendo DSi firmware",
"required": "Required",
"md5": null
},
{
"filename": "firmware.bin",
"system": "nds",
"description": "NDS firmware image",
"paths": "$bios_path/SkyEmu"
}
]
}
}
@@ -0,0 +1,482 @@
{
"pcsx2": {
"name": "PCSX2",
"url_rdwiki": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/pcsx2/pcsx2-guide/",
"url_webpage": "https://pcsx2.net/",
"url_donation_purchase": "",
"url_source": "https://github.com/PCSX2/pcsx2",
"description": "PCSX2 is a PlayStation 2 (ps2) emulator.",
"component_type": "Emulator",
"system_friendly_name": "PlayStation 2",
"system": "ps2",
"compatible_presets": {
"ask_to_exit": [
"false",
"true"
],
"cheevos": [
"false",
"true"
],
"cheevos_hardcore": [
"false",
"true"
],
"savestate_on_exit": [
"false",
"true"
]
},
"preset_actions": {
"config_file_format": "pcsx2",
"cheevos": [
{
"enabled_states": [
"true"
],
"setting_name": "Enabled",
"action": "change",
"new_setting_value": "true",
"section": "Achievements",
"target_file": "$pcsx2_config",
"defaults_file": "$pcsx2_rd_config_dir/PCSX2.ini"
},
{
"enabled_states": [
"true"
],
"setting_name": "Username",
"action": "change",
"new_setting_value": "$cheevos_username",
"section": "Achievements",
"target_file": "$pcsx2_config",
"defaults_file": "$pcsx2_rd_config_dir/PCSX2.ini"
},
{
"enabled_states": [
"true"
],
"setting_name": "Token",
"action": "change",
"new_setting_value": "$cheevos_token",
"section": "Achievements",
"target_file": "$pcsx2_secrets_ini",
"defaults_file": "$pcsx2_rd_config_dir/secrets.ini"
},
{
"enabled_states": [
"true"
],
"setting_name": "LoginTimestamp",
"action": "change",
"new_setting_value": "$cheevos_login_timestamp",
"section": "Achievements",
"target_file": "$pcsx2_config",
"defaults_file": "$pcsx2_rd_config_dir/PCSX2.ini"
}
],
"cheevos_hardcore": [
{
"enabled_states": [
"true"
],
"setting_name": "ChallengeMode",
"action": "change",
"new_setting_value": "true",
"section": "Achievements",
"target_file": "$pcsx2_config",
"defaults_file": "$pcsx2_rd_config_dir/PCSX2.ini"
}
],
"savestate_on_exit": [
{
"enabled_states": [
"true"
],
"setting_name": "SaveStateOnShutdown",
"action": "change",
"new_setting_value": "true",
"section": "EmuCore",
"target_file": "$pcsx2_config",
"defaults_file": "$pcsx2_rd_config_dir/PCSX2.ini"
}
],
"ask_to_exit": [
{
"enabled_states": [
"true"
],
"setting_name": "ConfirmShutdown",
"action": "change",
"new_setting_value": "true",
"section": "UI",
"target_file": "$pcsx2_config",
"defaults_file": "$pcsx2_rd_config_dir/PCSX2.ini"
}
],
"bios": [
{
"filename": "ps2-0100j-20000117.bin",
"md5": "acf4730ceb38ac9d8c7d8e21f2614600",
"system": "ps2",
"description": "PlayStation 2 BIOS - Japan",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0101j-20000217.bin",
"md5": "b1459d7446c69e3e97e6ace3ae23dd1c",
"system": "ps2",
"description": "PlayStation 2 BIOS - Japan",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0120j-20001027-185015.bin",
"md5": "f63bc530bd7ad7c026fcd6f7bd0d9525",
"system": "ps2",
"description": "PlayStation 2 BIOS - Japan",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0120j-20001027-191435.bin",
"md5": "cee06bd68c333fc5768244eae77e4495",
"system": "ps2",
"description": "PlayStation 2 BIOS - Japan",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0150j-20010118.bin",
"md5": "815ac991d8bc3b364696bead3457de7d",
"system": "ps2",
"description": "PlayStation 2 BIOS - Japan",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0160j-20010427.bin",
"md5": "ab55cceea548303c22c72570cfd4dd71",
"system": "ps2",
"description": "PlayStation 2 BIOS - Japan",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0170j-20030206.bin",
"md5": "312ad4816c232a9606e56f946bc0678a",
"system": "ps2",
"description": "PlayStation 2 BIOS - Japan",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0200j-20040614.bin",
"md5": "0eee5d1c779aa50e94edd168b4ebf42e",
"system": "ps2",
"description": "PlayStation 2 BIOS - Japan",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0210j-20040917.bin",
"md5": "1ad977bb539fc9448a08ab276a836bbc",
"system": "ps2",
"description": "PlayStation 2 BIOS - Japan",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0210j-20040917.bin",
"md5": "1ad977bb539fc9448a08ab276a836bbc",
"system": "ps2",
"description": "PlayStation 2 BIOS - Japan",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0110a-20000727.bin",
"md5": "a20c97c02210f16678ca3010127caf36",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0120a-20000902.bin",
"md5": "8db2fbbac7413bf3e7154c1e0715e565",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0150a-20001228.bin",
"md5": "8accc3c49ac45f5ae2c5db0adc854633",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0160a-20010427.bin",
"md5": "b107b5710042abe887c0f6175f6e94bb",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0160a-20011004.bin",
"md5": "7200a03d51cacc4c14fcdfdbc4898431",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0160a-20020207.bin",
"md5": "d5ce2c7d119f563ce04bc04dbc3a323e",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0170a-20030325.bin",
"md5": "8aa12ce243210128c5074552d3b86251",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0190a-20030623.bin",
"md5": "35461cecaa51712b300b2d6798825048",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0200a-20040614.bin",
"md5": "d333558cc14561c1fdc334c75d5f37b7",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0220a-20050620.bin",
"md5": "929a14baca1776b00869f983aa6e14d2",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0220a-20060210.bin",
"md5": "cb801b7920a7d536ba07b6534d2433ca",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0220a-20060905.bin",
"md5": "40c11c063b3b9409aa5e4058e984e30c",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0230a-20080220.bin",
"md5": "21038400dc633070a78ad53090c53017",
"system": "ps2",
"description": "PlayStation 2 BIOS - USA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0120e-20000902.bin",
"md5": "b7fa11e87d51752a98b38e3e691cbf17",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0150e-20001228.bin",
"md5": "838544f12de9b0abc90811279ee223c8",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0160e-20010704.bin",
"md5": "491209dd815ceee9de02dbbc408c06d6",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0160e-20011004.bin",
"md5": "8359638e857c8bc18c3c18ac17d9cc3c",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0160e-20020319.bin",
"md5": "0d2228e6fd4fb639c9c39d077a9ec10c",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0170e-20030227.bin",
"md5": "6e69920fa6eef8522a1d688a11e41bc6",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0190e-20030623.bin",
"md5": "bd6415094e1ce9e05daabe85de807666",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0200e-20040614.bin",
"md5": "dc752f160044f2ed5fc1f4964db2a095",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0220e-20050620.bin",
"md5": "573f7d4a430c32b3cc0fd0c41e104bbd",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0220e-20060210.bin",
"md5": "af60e6d1a939019d55e5b330d24b1c25",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0220e-20060905.bin",
"md5": "80bbb237a6af9c611df43b16b930b683",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0230e-20080220.bin",
"md5": "dc69f0643a3030aaa4797501b483d6c4",
"system": "ps2",
"description": "PlayStation 2 BIOS - EUROPE",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0160h-20010730.bin",
"md5": "352d2ff9b3f68be7e6fa7e6dd8389346",
"system": "ps2",
"description": "PlayStation 2 BIOS - HONG KONG",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0160h-20020426.bin",
"md5": "315a4003535dfda689752cb25f24785c",
"system": "ps2",
"description": "PlayStation 2 BIOS - HONG KONG",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0190h-20030623.bin",
"md5": "07b562a3f0c4b9a55834df9bbc9bd0c3",
"system": "ps2",
"description": "PlayStation 2 BIOS - HONG KONG",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0200h-20040614.bin",
"md5": "3e3e030c0f600442fa05b94f87a1e238",
"system": "ps2",
"description": "PlayStation 2 BIOS - HONG KONG",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0220h-20060905.bin",
"md5": "c37bce95d32b2be480f87dd32704e664",
"system": "ps2",
"description": "PlayStation 2 BIOS - HONG KONG",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0220h-20060210.bin",
"md5": "549a66d0c698635ca9fa3ab012da7129",
"system": "ps2",
"description": "PlayStation 2 BIOS - HONG KONG",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0190c-20030623.bin",
"md5": "1b6e631b536247756287b916f9396872",
"system": "ps2",
"description": "PlayStation 2 BIOS - CHINA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0190r-20030623.bin",
"md5": "0c13357c01a25a886db2356bbe73d9f0",
"system": "ps2",
"description": "PlayStation 2 BIOS - RUSSIA",
"required": "At least one BIOS file required"
},
{
"filename": "ps2-0230a-20080220.bin",
"system": "ps2",
"description": "PS2 BIOS image",
"required": "Required",
"paths": "$bios_path/pcsx2/bios"
},
{
"filename": "ps2-0230a-20080220.rom1",
"system": "ps2",
"description": "DVD player ROM",
"paths": "$bios_path/pcsx2/bios"
},
{
"filename": "ps2-0230a-20080220.rom2",
"system": "ps2",
"description": "Chinese ROM extension",
"paths": "$bios_path/pcsx2/bios"
},
{
"filename": "ps2-0230a-20080220.nvm",
"system": "ps2",
"description": "Console NVRAM",
"paths": "$bios_path/pcsx2/bios"
},
{
"filename": "ps2-0230a-20080220.mec",
"system": "ps2",
"description": "Mechacon version",
"paths": "$bios_path/pcsx2/bios"
},
{
"filename": "eeprom.dat",
"system": "ps2",
"description": "DEV9 EEPROM"
},
{
"filename": "RedumpDatabase.yaml",
"md5": "0525ad1f1381152f20bfb05775cf39cd",
"sha256": "302b57fdd1f9472ef590789e4b347381cc8442a04a765c7eae3d3f2e4b06394c",
"system": "ps2",
"description": "Disc track hash database",
"paths": "$bios_path/pcsx2/resources"
},
{
"filename": "patches.zip",
"md5": "809868f006eebec4e4615dd8bc397ef7",
"sha256": "8d95f1fba3acc83195bbac2d3e042b5f34c3c399856d9865e681d173f4cee609",
"system": "ps2",
"description": "Game patch archive",
"paths": "$bios_path/pcsx2/resources"
},
{
"filename": "GameIndex.yaml",
"md5": "fc3c14208a929c386445635b19baa3f2",
"sha256": "6531239315d759d0588985b31576696d2672c1a0e192633ea2d4f3d011bfdb37",
"system": "ps2",
"description": "per-title compatibility and fix database",
"paths": "$bios_path/resources"
}
]
}
}
}
@@ -0,0 +1,38 @@
{
"pico-8": {
"name": "PICO-8",
"url_rdwiki": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/pico-8/pico-8-guide/",
"url_webpage": "https://www.lexaloffle.com/pico-8.php",
"url_donation_purchase": "",
"description": "PICO-8 is a fantasy console for playing tiny, retro-style games.",
"system_friendly_name": "PICO-8 Fantasy Console",
"component_type": "Emulator",
"system": "pico8",
"bios": [
{
"filename": "pico8",
"system": "pico8",
"description": "PICO-8 executable",
"required": "Required",
"paths": "$bios_path/pico-8",
"md5": null
},
{
"filename": "pico8.dat",
"system": "pico8",
"description": "PICO-8 system data file",
"required": "Required",
"paths": "$bios_path/pico-8",
"md5": null
},
{
"filename": "pico8_dyn",
"system": "pico8",
"description": "Dynamic library for PICO-8",
"required": "Optional",
"paths": "$bios_path/pico-8",
"md5": null
}
]
}
}
@@ -0,0 +1,107 @@
{
"ppsspp": {
"name": "PPSSPP",
"description": "PPSSPP is a PlayStation Portable (psp) emulator.",
"url_rdwiki": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/ppsspp/ppsspp-guide/",
"url_webpage": "https://www.ppsspp.org/",
"url_donation_purchase": "https://www.ppsspp.org/buygold",
"url_source": "https://github.com/hrydgard/ppsspp",
"component_type": "Emulator",
"system": "psp",
"system_friendly_name": "Playstation Portable",
"compatible_presets": {
"savestate_auto_load": [
"false",
"true"
],
"cheevos": [
"false",
"true"
],
"cheevos_hardcore": [
"false",
"true"
]
},
"preset_actions": {
"config_file_format": "ppsspp",
"savestate_auto_load": [
{
"enabled_states": [
"true"
],
"setting_name": "AutoLoadSaveState",
"action": "change",
"new_setting_value": "2",
"section": "General",
"target_file": "$ppsspp_config",
"defaults_file": "$ppsspp_rd_config_dir/ppsspp.ini"
}
],
"cheevos": [
{
"enabled_states": [
"true"
],
"setting_name": "AchievementsEnable",
"action": "change",
"new_setting_value": "True",
"section": "Achievements",
"target_file": "$ppsspp_config",
"defaults_file": "$ppsspp_rd_config_dir/ppsspp.ini"
},
{
"enabled_states": [
"true"
],
"setting_name": "AchievementsUserName",
"action": "change",
"new_setting_value": "$cheevos_username",
"section": "Achievements",
"target_file": "$ppsspp_config",
"defaults_file": "$ppsspp_rd_config_dir/ppsspp.ini"
},
{
"enabled_states": [
"true"
],
"setting_name": "cheevos_token",
"action": "change",
"new_setting_value": "$cheevos_token",
"section": "",
"target_file": "$ppsspp_retroachievements_dat",
"defaults_file": "$ppsspp_rd_config_dir/ppsspp_retroachievements.dat"
}
],
"cheevos_hardcore": [
{
"enabled_states": [
"true"
],
"setting_name": "AchievementsChallengeMode",
"action": "change",
"new_setting_value": "True",
"section": "Achievements",
"target_file": "$ppsspp_config",
"defaults_file": "$ppsspp_rd_config_dir/ppsspp.ini"
}
],
"bios": [
{
"filename": "ppge_atlas.zim",
"md5": "866855cc330b9b95cc69135fb7b41d38",
"sha256": "3ab7fcf6956d0281ada94d501fc6d1cfa8fc034f139e25fed6c829f723d92a95",
"system": "psp",
"description": "PSP Atlas ZIM - asset package for PSP homebrew",
"required": "Optional"
},
{
"filename": "ppge_atlas.meta",
"system": "psp",
"description": "PPGe atlas metadata (glyph positions, UV coords)",
"paths": "$bios_path/assets"
}
]
}
}
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,52 @@
{
"xemu": {
"description": "xemu is a Microsoft Xbox (xbox) emulator.",
"name": "xemu",
"url_rdwiki": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/xemu/xemu-guide/",
"url_webpage": "https://xemu.app/",
"url_donation_purchase": "https://www.patreon.com/mborgerson",
"url_source": "https://github.com/xemu-project/xemu",
"component_type": "Emulator",
"system_friendly_name": "Xbox",
"system": "xbox",
"bios": [
{
"filename": "mcpx_1.0.bin",
"md5": "d49c52a4102f6df7bcf8d0617ac475ed",
"system": "xbox",
"description": "Xbox BIOS",
"required": "Required"
},
{
"filename": "Complex.bin",
"system": "xbox",
"description": "XBOX Complex BIOS",
"md5": null
},
{
"filename": "Complex_4627v1.03.bin",
"system": "xbox",
"description": "XBOX Complex BIOS 1.03",
"md5": null
},
{
"filename": "Complex_4627.bin",
"system": "xbox",
"description": "XBOX Complex BIOS 4627",
"required": "Required",
"md5": null
},
{
"filename": "xbox_eeprom.bin",
"system": "xbox",
"description": "Xbox EEPROM image"
},
{
"filename": "xbox_hdd.qcow2",
"system": "xbox",
"description": "Xbox hard disk image, 8 GB with the retail partition layout",
"required": "Required"
}
]
}
}
@@ -0,0 +1,376 @@
{
"xroar": {
"name": "XRoar",
"url_rdwiki": "https://retrodeck.readthedocs.io/en/latest/wiki_emulator_guides/xroar/xroar-guide/",
"url_webpage": "https://www.6809.org.uk/xroar/",
"url_donation_purchase": "",
"url_source": "https://www.6809.org.uk/git/xroar.git/",
"description": "XRoar is a Dragon/Tandy 8-bit Computer emulator.",
"component_type": "Emulator",
"system_friendly_name": [
"Dragon 32",
"Dragon 64",
"Tano Dragon",
"Eurohard Dragon 200-E",
"Tandy Colour Computer 1",
"Tandy Colour Computer 2",
"Tandy Colour Computer 3",
"Tandy MC-10",
"Matra & Hachette Alice 4K",
"Dragon Professional",
"Tandy Deluxe Colour Computer"
],
"system": [
"coco",
"dragon32",
"tanodragon"
],
"bios": [
{
"filename": "d32.rom",
"md5": [
"d35177f73cf303c5565aa13ef8ca5251",
"3420b96031078a4ef408cad7bf21a33f"
],
"system": "tanodragon",
"description": "Tano Dragon BASIC OS firmware",
"required": "Required",
"sha256": "fc0e900bfec6b52f0f80ba1e65a4712808d2a411b5b00496639ef1a2152351f1"
},
{
"filename": "d64rom1.rom",
"md5": [
"5f0bee59710e55f5880e74890912ed78",
"6ab639e65c6e8fd832cb0d8ad4da1b60"
],
"system": "tanodragon",
"description": "Tano Dragon BASIC OS firmware",
"required": "Required"
},
{
"filename": "d64tano.rom",
"md5": "be9bc86ee5eb401d0a40d0377f65fefa",
"system": "tanodragon",
"description": "Tano Dragon BASIC OS firmware",
"sha256": "0486c51d3b6f7b6b4bcdde661d54f076278fd6a4ee92cbf9d1bc791554e16bd7",
"required": "Required"
},
{
"filename": "d64tano2.rom",
"md5": "fd91edce7be5e7c2d88e46b76956a8aa",
"system": "tanodragon",
"description": "Tano Dragon BASIC OS firmware",
"sha256": "c3d0b8fd92020c939ec97388402d10b3890e6e26455963d50cc00b5f9cd68fa5"
},
{
"filename": "d200rom1.rom",
"md5": "be9bc86ee5eb401d0a40d0377f65fefa",
"system": "tanodragon",
"description": "Tano Dragon BASIC OS firmware",
"sha256": "0486c51d3b6f7b6b4bcdde661d54f076278fd6a4ee92cbf9d1bc791554e16bd7",
"required": "Required"
},
{
"filename": "d200rom2.rom",
"md5": "fd91edce7be5e7c2d88e46b76956a8aa",
"system": "tanodragon",
"description": "Tano Dragon BASIC OS firmware"
},
{
"filename": "ddos10.rom",
"md5": "1c965da49b6c5459b8353630aa1482e7",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (version 10)",
"required": "Required"
},
{
"filename": "ddos11c.rom",
"md5": "d8429af1a12f7438a4bf88a5b934cb3a",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (version 11c)"
},
{
"filename": "ddos12a.rom",
"md5": "55e2535dbbed7f1a26b5f263d7c72c63",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (version 12a)"
},
{
"filename": "ddos40.rom",
"md5": "9ddc388632cd3c376b164ba5cfc64329",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (version 40)"
},
{
"filename": "ddos42.rom",
"md5": "c956a854cbc4b9d1e69c000f78368668",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (version 42)"
},
{
"filename": "deltados.rom",
"md5": "024eac3db20f1b5cf98c30a0e4743201",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (Delta release)",
"sha256": "10ada56bf876e15d5e9324a84a4e8f150eee8175c5f7faed20a1a5851b016f41"
},
{
"filename": "dplus48.rom",
"md5": "ee6f24d893a52b8efea9f787855456b5",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (plus 48)"
},
{
"filename": "dplus49b.rom",
"md5": "56f1b97314e4ca82491c465bb887059e",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (plus 49b)",
"sha256": "a36d5534851140b48642ea1fa37a2865bb6e598a84bcd4c1610bed0207948cd8"
},
{
"filename": "dplus50.rom",
"md5": "35de5d28da507ebb213a26e04241d940",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (plus 50)"
},
{
"filename": "sdose6.rom",
"md5": "9d85e6b7133f915c021156f4b9cdb512",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (SD-6)",
"sha256": "09e8573e31effc16e9f1a177f46514ed9f332a6c5e4e46a550574bd969319c11"
},
{
"filename": "sdose8.rom",
"md5": "167f409b7a4b992faabb784b061ab4c6",
"system": "tanodragon",
"description": "Tano Dragon DOS OS firmware (SD-8)"
},
{
"filename": "cp400bas.rom",
"md5": "f73da4d73d6db5cdb8b3cb6a50415e38",
"system": "tanodragon",
"description": "Prológica CP-400 BASIC OS firmware",
"sha256": "8fd3fc95f4a495d508147c15a527314ec2379965ffc569f23a790169268649a4",
"required": "Required"
},
{
"filename": "cp400extbas.rom",
"md5": "091581001577b4a83ccfd511829de0f1",
"system": "coco",
"description": "Prológica CP-400 extended BASIC firmware",
"sha256": "c086f74e0e4388b3d8bb3dc3bab0c8ea1497dcd37b0ecd6ad9fa778bafe78a53",
"required": "Required"
},
{
"filename": "cp400dsk.rom",
"md5": "16d3ab9bc935f0d5651ca3f0e3030846",
"system": "coco",
"description": "Prológica CP-400 DOS firmware"
},
{
"filename": "color64extbas.rom",
"md5": "0d9264ffa95ba493f2b5b0d488a49e13",
"system": "coco",
"description": "CoCo 64 Extended Color BASIC ROM"
},
{
"filename": "xroarbios.rom",
"md5": "28dc97df470fb8660ef61b81dfd34f4a",
"system": "coco",
"description": "XRoar emulator BIOS"
},
{
"filename": "bas10.rom",
"md5": "a74f3d95b395dad7cdca19d560eeea74",
"system": "coco",
"description": "Color BASIC 1.0 ROM",
"sha256": "384183abb962aa298c38a4de7f86b6712feddf6ba4c85b49e05e3c76318335dc"
},
{
"filename": "bas11.rom",
"md5": "c73fb4bff9621c5ab17f6220b20db82f",
"system": "coco",
"description": "Color BASIC 1.1 ROM",
"sha256": "f772ee5ec3ce3bfc455098c0c9aca2b5c42b6aa1f998bb5113ca2250bfbf2c27"
},
{
"filename": "bas12.rom",
"md5": "c933316c7d939532a13648850c1c2aa6",
"system": "coco",
"description": "Color BASIC 1.2 ROM",
"sha256": "40413d0f8bc1bb345ffe49404b3bf645a5417b02f32266536f6566dbf9ca70fb"
},
{
"filename": "bas13.rom",
"md5": "c2fc43556eb6b7b25bdf5955bd9df825",
"system": "coco",
"description": "Color BASIC 1.3 ROM",
"required": "Required",
"sha256": "5375b1caef9df815b781d9cd6df81ecdaddd2642b06a01adac521e40f1329751"
},
{
"filename": "bas14.rom",
"md5": "ac33e16f677b4db52548d426174b1aaa",
"system": "coco",
"description": "Color BASIC 1.4 ROM"
},
{
"filename": "coco3.rom",
"md5": "7233c6c429f3ce1c7392f28a933e0b6f",
"system": "coco",
"description": "CoCo 3 system ROM 6809 CPU",
"sha256": "ad358430568250eb8330a37f85361d9ce67e5ae6d5a28c17b31802cd3953a5d2",
"required": "Required"
},
{
"filename": "extbas10.rom",
"md5": "fda72f415afe99b36f953bb9bc1253da",
"system": "coco",
"description": "Extended BASIC 1.0 ROM",
"sha256": "ccd347508f177cb3eeb2e17fd60d3cccb64312d069c5084771467cfbbc04a27c"
},
{
"filename": "extbas11.rom",
"md5": "21070aa0496142b886c562bf76d7c113",
"system": "coco",
"description": "Extended BASIC 1.1 ROM",
"sha256": "a18f270d3495d82b9f515de049f46253a623a2d9b1bb226c9ad338508344c5ee",
"required": "Required"
},
{
"filename": "disk10.rom",
"md5": "a64b3ef9efcc066b18d35b134068d1cc",
"system": "coco",
"description": "Disk Operating System (DOS) ROM for CoCo 1/2"
},
{
"filename": "disk11.rom",
"md5": "8cab28f4b7311b8df63c07bb3b59bfd5",
"system": "coco",
"description": "DOS 1.1 ROM",
"required": "Optional",
"sha256": "1c40c5a74e72edaeecc2511fee1aab347eae2c3d5fc6778cb622e3df14d63157"
},
{
"filename": "fd502.rom",
"md5": "8cab28f4b7311b8df63c07bb3b59bfd5",
"system": "coco",
"description": "Single-sided RSDOS ROM CoCo "
},
{
"filename": "fd502ds.rom",
"md5": "b2d43757dc6851d866021ff6c4f59205",
"system": "coco",
"description": "Double-sided RSDOS ROM"
},
{
"filename": "coco3p.rom",
"md5": "4ae57e5a8e7494e5485446fefedb580b",
"system": "coco",
"description": "Plus-style CoCo 3 ROM",
"sha256": "c89c9df29cf93351ad5056dfe1bf861d533ad4382b0e5a98e9043aff0a4480d6",
"required": "Required"
},
{
"filename": "CCNPATCH.cas",
"md5": "2c395ad58a842711931679b554483a90",
"system": "coco",
"description": "Cassette patch (CAS format)"
},
{
"filename": "CCNPATCH.wav",
"md5": "a17397fb5408647a11d23bab959d1f97",
"system": "coco",
"description": "Audio"
},
{
"filename": "DBPATCH.cas",
"md5": "65e1aab5fc5cba1b7374d9dddec25d62",
"system": "coco",
"description": "Cassette patch"
},
{
"filename": "DBPATCH.wav",
"md5": "6a07aeee664d81047672e6ff3541a12a",
"system": "coco",
"description": "Audio"
},
{
"filename": "disk.rom",
"md5": "80dcd1ad1a4cf65d64b7ba10504e8190",
"system": "coco",
"description": "Generic disk ROM",
"sha256": "31740a761447d7590c304338d389b0ae114546a8b9f79c9ffd5e374f80b7d354"
},
{
"filename": "d200e_1.rom",
"md5": "03f25edd487df4c98a79b2d504469653",
"sha256": "790f79fc4347b146e39bec48038b4eed082b1b04034536bd638f7fd222c14e82",
"system": "tanodragon",
"description": "Dragon 200-E BASIC IC18 (Spanish)",
"required": "Required"
},
{
"filename": "d200e_2.rom",
"md5": "b5f63a88710fbe6e22579fbc8d72393a",
"sha256": "6596444b7e50cdb50a67887d9fb35f64f8bcf56336098d592b827dce700f014a",
"system": "tanodragon",
"description": "Dragon 200-E BASIC IC17 (Spanish)"
},
{
"filename": "d200e_26.rom",
"md5": "eef971f21318759f15cc9f0328557140",
"sha256": "aa3ea353b019f0ce4ca2ae1baa1e0a9e8b2fe701079958d9d9b7622cd3455697",
"system": "tanodragon",
"description": "Dragon 200-E external character generator ROM"
},
{
"filename": "alpha-boot-v1.0.rom",
"md5": "283726f0f22603d3e60c27865babccf4",
"sha256": "dd236210b88447c8f185fd4ed72df9879cd9d2c2077ce68d935e45a7559c2e17",
"system": "tanodragon",
"description": "Dragon Professional (Alpha) boot ROM v1.0",
"required": "Required"
},
{
"filename": "alpha-boot-v0.4.rom",
"md5": "01e5577ef5dd9eac00bba3698e046afb",
"sha256": "411de6824f154f82d49e56c43630fb250b3720ab06daa96a618e16cbf314ec35",
"system": "tanodragon",
"description": "Dragon Professional (Alpha) boot ROM v0.4"
},
{
"filename": "deluxe.rom",
"md5": "e27c02fd766e8710240c59ef5424a6ef",
"sha256": "04183f5d658b6f9860c51c4c4778b3325a4c1529b66cc6c7a53cd1ff5e8c5676",
"system": "coco",
"description": "Tandy Deluxe CoCo Advanced BASIC (bank 0)",
"required": "Required"
},
{
"filename": "mx1600bas.rom",
"md5": "88d1504e93366f498105a846cdbf7fb7",
"sha256": "05720aa2694b61e9f254f441a487d0b64667d75bb9bf4d6fa2ac8eb3355d3d46",
"system": "coco",
"description": "Dynacom MX-1600 Colour BASIC",
"required": "Required"
},
{
"filename": "mx1600extbas.rom",
"md5": "6fc82178ae8abe07fa8f6939062291dc",
"sha256": "e9314d9b2f0f39deeb8ea274fca84d97de12d15371bfb40e3a72a6c430bfab4f",
"system": "coco",
"description": "Dynacom MX-1600 Extended Colour BASIC",
"required": "Required"
},
{
"filename": "orch90.rom",
"md5": "171fb7a5d3b808565295b45c773abaaf",
"sha256": "1a5a3e95522296f66a192e9a7ca0725ecc88862f9bb31f50ef37ae789404692f",
"system": "coco",
"description": "Orchestra-90 CC sound cartridge ROM"
}
]
}
}
+20
View File
@@ -0,0 +1,20 @@
{
"platform": "retropie",
"originals": {
"RetroPie-Setup.tar.gz": "https://codeload.github.com/RetroPie/RetroPie-Setup/tar.gz/46128cd252cdecae852a4d0bafa2aaf9d03ab563"
},
"files": [
"scriptmodules/emulators/gngeopi.sh",
"scriptmodules/libretrocores/lr-geargrafx.sh",
"scriptmodules/libretrocores/lr-o2em.sh"
],
"summary": "3 packages corrected. amiberry, fs-uae, uae4all, uae4arm: names a file we have never seen (kick13.rom). sdltrs: names a file we have never seen (level3.rom, level4.rom, level4p.rom). lr-opera: names a file we have never seen (panazf10.bin). amiberry, fs-uae, lr-beetle-saturn, lr-bluemsx and 7 more: names no file to extend. dgen, lr-freechaf: no core of ours packages it",
"hashes_corrected": [],
"hashes_filled": [],
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
"requirements_corrected": 0,
"withheld": [],
"invalid": []
}
@@ -0,0 +1,64 @@
#!/usr/bin/env bash
# This file is part of The RetroPie Project
#
# The RetroPie Project is the legal property of its developers, whose names are
# too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source.
#
# See the LICENSE.md file at the top-level directory of this distribution and
# at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md
#
rp_module_id="gngeopi"
rp_module_desc="NeoGeo emulator GnGeoPi"
rp_module_help="ROM Extension: .zip\n\nCopy your GnGeoPi roms to $romdir/neogeo\n\nCopy the required BIOS files neogeo.zip and gngeo_data.zip BIOS to $romdir/neogeo"
rp_module_licence="NONCOM https://raw.githubusercontent.com/ymartel06/GnGeo-Pi/master/gngeo/COPYING"
rp_module_repo="git https://github.com/ymartel06/GnGeo-Pi.git master"
rp_module_section="opt"
rp_module_flags="!all arm !mali !kms"
function depends_gngeopi() {
getDepends libsdl1.2-dev
}
function sources_gngeopi() {
gitPullOrClone
}
function build_gngeopi() {
cd gngeo
chmod +x configure
./configure --disable-i386asm --prefix="$md_inst"
make clean
# not safe for building in parallel
make -j1
md_ret_require="$md_build/gngeo/src/gngeo"
}
function install_gngeopi() {
cd gngeo
make install
mkdir -p "$md_inst/neogeobios"
}
function configure_gngeopi() {
mkRomDir "arcade"
mkRomDir "neogeo"
# move old config to new location
moveConfigDir "$home/.gngeo" "$md_conf_root/neogeo"
if [[ ! -f "$md_conf_root/neogeo/gngeorc" ]]; then
# add default controls for keyboard p1/p2
cat > "$md_conf_root/neogeo/gngeorc" <<\_EOF_
p1control A=K122,B=K120,C=K97,D=K115,START=K49,COIN=K51,UP=K273,DOWN=K274,LEFT=K276,RIGHT=K275,MENU=K27
p2control A=K108,B=K59,C=K111,D=K112,START=K50,COIN=K52,UP=K264,DOWN=K261,LEFT=K260,RIGHT=K262,MENU=K27
_EOF_
chown -R "$__user":"$__group" "$md_conf_root/neogeo/gngeorc"
fi
addEmulator 0 "$md_id" "arcade" "$md_inst/bin/gngeo -i $romdir/neogeo -B $md_inst/neogeobios %ROM%"
addEmulator 0 "$md_id" "neogeo" "$md_inst/bin/gngeo -i $romdir/neogeo -B $md_inst/neogeobios %ROM%"
addSystem "arcade"
addSystem "neogeo"
}
@@ -0,0 +1,43 @@
#!/usr/bin/env bash
# This file is part of The RetroPie Project
#
# The RetroPie Project is the legal property of its developers, whose names are
# too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source.
#
# See the LICENSE.md file at the top-level directory of this distribution and
# at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md
#
rp_module_id="lr-geargrafx"
rp_module_desc="PC Engine/TurboGrafx-16/SuperGrafx/PCE CD-ROM² emulator"
rp_module_help="ROM Extensions: .7z .chd .cue .pce .sgx .zip\n\nCopy your PC Engine roms to $romdir/pcengine\n\nCopy the required BIOS files syscard3.pce, gexpress.pce, pac-n1.bin and pac-n10.bin to $biosdir"
rp_module_licence="GPL3 https://raw.githubusercontent.com/drhelius/Geargrafx/refs/heads/main/LICENSE"
rp_module_repo="git https://github.com/drhelius/Geargrafx.git main"
rp_module_section="opt"
function sources_lr-geargrafx() {
gitPullOrClone
}
function build_lr-geargrafx() {
make -C platforms/libretro clean
make -C platforms/libretro
md_ret_require="$md_build/platforms/libretro/geargrafx_libretro.so"
}
function install_lr-geargrafx() {
md_ret_files=(
'platforms/libretro/geargrafx_libretro.so'
'LICENSE'
'README.md'
)
}
function configure_lr-geargrafx() {
mkRomDir "pcengine"
defaultRAConfig "pcengine"
addEmulator 0 "$md_id" "pcengine" "$md_inst/geargrafx_libretro.so"
addSystem "pcengine"
}
@@ -0,0 +1,42 @@
#!/usr/bin/env bash
# This file is part of The RetroPie Project
#
# The RetroPie Project is the legal property of its developers, whose names are
# too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source.
#
# See the LICENSE.md file at the top-level directory of this distribution and
# at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md
#
rp_module_id="lr-o2em"
rp_module_desc="Odyssey 2 / Videopac emu - O2EM port for libretro"
rp_module_help="ROM Extensions: .bin .zip\n\nCopy your Odyssey 2 / Videopac roms to $romdir/videopac\n\nCopy the required BIOS files o2rom.bin, c52.bin, g7400.bin and jopac.bin to $biosdir"
rp_module_licence="OTHER"
rp_module_repo="git https://github.com/libretro/libretro-o2em master"
rp_module_section="opt"
function sources_lr-o2em() {
gitPullOrClone
}
function build_lr-o2em() {
make clean
make
md_ret_require="$md_build/o2em_libretro.so"
}
function install_lr-o2em() {
md_ret_files=(
'o2em_libretro.so'
'README.md'
)
}
function configure_lr-o2em() {
mkRomDir "videopac"
defaultRAConfig "videopac"
addEmulator 1 "$md_id" "videopac" "$md_inst/o2em_libretro.so"
addSystem "videopac"
}
+21
View File
@@ -0,0 +1,21 @@
{
"platform": "rocknix",
"originals": {
"rocknix-systems": "https://raw.githubusercontent.com/ROCKNIX/distribution/20261001/projects/ROCKNIX/packages/rocknix/sources/scripts/rocknix-systems",
"emulators/package.mk": "https://raw.githubusercontent.com/ROCKNIX/distribution/20261001/projects/ROCKNIX/packages/virtual/emulators/package.mk"
},
"files": [
"rocknix-systems"
],
"summary": "38 kept, 106 added, 1 hash corrected, 0 requirements corrected, 1338 additions left out",
"hashes_corrected": [
"psx/scph1001.bin md5"
],
"hashes_filled": [],
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
"requirements_corrected": 0,
"withheld": [],
"invalid": []
}
+355
View File
@@ -0,0 +1,355 @@
#!/usr/bin/env python
from __future__ import print_function
from hashlib import md5
from os.path import isfile
from collections import OrderedDict
import sys
import zipfile
import xml.etree.ElementTree as elementTree
systems = {
# ---------- Microsoft ---------- #
"xbox": { "name": "Microsoft Xbox", "biosFiles": [ { "md5": "d49c52a4102f6df7bcf8d0617ac475ed", "file": "bios/xemu/bios/mcpx_1.0.bin" },
{ "md5": "21445c6f28fca7285b0f167ea770d1e5", "file": "bios/xemu/bios/Complex_4627v1.03.bin" }] },
# ---------- Nintendo ---------- #
"gamecube": { "name": "Nintendo GameCube", "biosFiles": [
{ "md5": "db92574caab77a7ec99d4605fd6f2450", "file": "bios/GC/EUR/IPL.bin" },
{ "md5": "b17148254a5799684c7d783206504926", "file": "bios/GC/JAP/IPL.bin" },
{ "md5": "b17148254a5799684c7d783206504926", "file": "bios/GC/USA/IPL.bin" },
{ "md5": "1f118b8735fcf40c20b38c3184eebfd9", "file": "bios/codehandler.bin", "emulator": "dolphin", "core": "dolphin-qt-gc" }
] },
"nds": { "name": "Nintendo DS", "biosFiles": [
{ "md5": "94bc5094607c5e6598d50472c52f27f2", "file": "bios/firmware.bin" },
{ "md5": "df692a80a5b1bc90728bc3dfc76cd948", "file": "bios/bios7.bin" },
{ "md5": "a392174eb3e572fed6447e956bde4b25", "file": "bios/bios9.bin" },
{ "md5": "559dae4ea78eb9d67702c56c1d791e81", "file": "bios/dsi_bios7.bin" },
{ "md5": "87b665fce118f76251271c3732532777", "file": "bios/dsi_bios9.bin" },
{ "md5": "74f23348012d7b3e1cc216c47192ffeb", "file": "bios/dsi_firmware.bin" },
{ "md5": "d71edf897ddd06bf335feeb68edeb272", "file": "bios/dsi_nand.bin" },
{ "md5": "4986e446825453695d2e0b22dca6affe", "file": "bios/drastic_logo_0.raw", "emulator": "drastic", "core": "drastic-sa" },
{ "md5": "f590deaba5027125ff1fcfd8f0922503", "file": "bios/drastic_logo_1.raw", "emulator": "drastic", "core": "drastic-sa" }
] },
"gb": { "name": "Nintendo Gameboy", "biosFiles": [ { "md5": "32fbbd84168d3482956eb3c5051637f5", "file": "bios/gb_bios.bin" } ] },
"gba": { "name": "Nintendo Gameboy Advance", "biosFiles": [ { "md5": "a860e8c0b6d573d191e4ec7db1b1e4f6", "file": "bios/gba_bios.bin" } ] },
"gbc": { "name": "Nintendo Gameboy Color", "biosFiles": [ { "md5": "dbfce9db9deaa2567f6a84fde55f9680", "file": "bios/gbc_bios.bin" } ] },
# ---------- Sega ---------- #
"dreamcast": { "name": "Sega Dreamcast", "biosFiles": [ { "md5": "e10c53c2f8b90bab96ead2d368858623", "file": "bios/dc/dc_boot.bin" },
{ "md5": "0a93f7940c455905bea6e392dfde92a4", "file": "bios/dc/dc_flash.bin" },
{ "md5": "3bffafac42a7767d8dcecf771f5552ba", "file": "bios/dc/naomi_boot.bin" } ] },
"gamegear": { "name": "Sega Game Gear", "biosFiles": [ { "md5": "672e104c3be3a238301aceffc3b23fd6", "file": "bios/bios.gg" } ] },
"mastersystem": { "name": "Sega Master System", "biosFiles": [ { "md5": "840481177270d5642a14ca71ee72844c", "file": "bios/bios.sms" } ] },
"segacd": { "name": "Sega CD", "biosFiles": [ { "md5": "e66fa1dc5820d254611fdcdba0662372", "file": "bios/bios_CD_E.bin" },
{ "md5": "2efd74e3232ff260e371b99f84024f7f", "file": "bios/bios_CD_U.bin" },
{ "md5": "278a9397d192149e84e820ac621a8edd", "file": "bios/bios_CD_J.bin" } ] },
"saturn": { "name": "Sega Saturn", "biosFiles": [ { "md5": "85ec9ca47d8f6807718151cbcca8b964", "file": "bios/sega_101.bin" },
{ "md5": "3240872c70984b6cbfda1586cab68dbe", "file": "bios/mpr-17933.bin" },
{ "md5": "255113ba943c92a54facd25a10fd780c", "file": "bios/mpr-18811-mx.ic1" },
{ "md5": "1cd19988d1d72a3e7caa0b73234c96b4", "file": "bios/mpr-19367-mx.ic1" },
{ "md5": "af5828fdff51384f99b3c4926be27762", "file": "bios/saturn_bios.bin" } ] },
# ---------- Sony ---------- #
"psx": { "name": "PSX", "biosFiles": [
{ "md5": "c53ca5908936d412331790f4426c6c33", "file": "bios/psxonpsp660.bin" },
{ "md5": "6e3735ff4c7dc899ee98981385f6f3d0", "file": "bios/scph101.bin" },
{ "md5": "924e392ed05558ffdb115408c263dccf", "file": "bios/scph1001.bin" },
{ "md5": "8dd7d5296a650fac7319bce665a6a53c", "file": "bios/scph5500.bin" },
{ "md5": "490f666e1afb15b7362b406ed1cea246", "file": "bios/scph5501.bin" },
{ "md5": "32736f17079d0b2b7024407c39bd3050", "file": "bios/scph5502.bin" },
{ "md5": "1e68c231d0896b7eadcad1d7d8e76129", "file": "bios/scph7001.bin" },
{ "md5": "57a06303dfa9cf9351222dfcbb4a29d9", "file": "bios/scph5000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "54847e693405ffeb0359c6287434cbef", "file": "bios/scph1002a.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "417b34706319da7cf001e76e40136c23", "file": "bios/scph1002b.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "e2110b8a2b97a8e0b857a45d32f7e187", "file": "bios/scph1002c.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "849515939161e62f6b866f6853006780", "file": "bios/scph3000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "dc2b9bf8da62ec93e868cfd29f0d067d", "file": "bios/scph1001_v20.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "cba733ceeff5aef5c32254f1d617fa62", "file": "bios/scph3500.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "da27e8b6dab242d8f91a9b25d80c63b8", "file": "bios/scph1001_v21.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "8e4c14f567745eff2f0408c8129f72a6", "file": "bios/scph7000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "b84be139db3ee6cbd075630aa20a6553", "file": "bios/scph7000w.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "b9d9a0286c33dc6b7237bb13cd46fdee", "file": "bios/scph7002.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "8abc1b549a4a80954addc48ef02c4521", "file": "bios/scph100.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "9a09ab7e49b422c007e6d54d7c49b965", "file": "bios/scph101_v44.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "476d68a94ccec3b9c8303bbd1daf2810", "file": "bios/scph1000r.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "ca5cfc321f916756e3f0effbfaeba13b", "file": "bios/dtlh1100.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "b10f5e0e3d9eb60e5159690680b1e774", "file": "bios/scph102_v44.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "de93caec13d1a141a40a79f5c86168d6", "file": "bios/scph102_v45.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "239665b1a3dade1b5a52c06338011044", "file": "bios/scph1000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "d8f485717a5237285e4d7c5f881b7f32", "file": "bios/ps2_scph18000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "32f2e4d5ff5ee11072a6bc45530f5765", "file": "bios/ps2_dtlh10000_0117.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "acf4730ceb38ac9d8c7d8e21f2614600", "file": "bios/ps2_scph10000_0117.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "acf9968c8f596d2b15f42272082513d1", "file": "bios/ps2_dtlh10000_0217.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "b1459d7446c69e3e97e6ace3ae23dd1c", "file": "bios/ps2_scph10000_15000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "d3f1853a16c2ec18f3cd1ae655213308", "file": "bios/ps2_dtlh10000_0224.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "63e6fd9b3c72e0d7b920e80cf76645cd", "file": "bios/ps2_dtlh30001.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "a20c97c02210f16678ca3010127caf36", "file": "bios/ps2_scph30001_0727.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "8db2fbbac7413bf3e7154c1e0715e565", "file": "bios/ps2_scph30001_0902.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "b7fa11e87d51752a98b38e3e691cbf17", "file": "bios/ps2_scph30002_0902.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "f63bc530bd7ad7c026fcd6f7bd0d9525", "file": "bios/ps2_scph18000_gh003.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "cee06bd68c333fc5768244eae77e4495", "file": "bios/ps2_scph18000_gh008.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "0bf988e9c7aaa4c051805b0fa6eb3387", "file": "bios/ps2_dtlh30101.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "8accc3c49ac45f5ae2c5db0adc854633", "file": "bios/ps2_scph30001_35001.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "838544f12de9b0abc90811279ee223c8", "file": "bios/ps2_scph30002_1228.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "bb6bbc850458fff08af30e969ffd0175", "file": "bios/ps2_dtlh30000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "815ac991d8bc3b364696bead3457de7d", "file": "bios/ps2_scph30000_35000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "b107b5710042abe887c0f6175f6e94bb", "file": "bios/ps2_scph30001r_0427.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "ab55cceea548303c22c72570cfd4dd71", "file": "bios/ps2_scph30000_0427.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "18bcaadb9ff74ed3add26cdf709fff2e", "file": "bios/ps2_scph30001r_0704.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "491209dd815ceee9de02dbbc408c06d6", "file": "bios/ps2_scph30002r_0704.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "7200a03d51cacc4c14fcdfdbc4898431", "file": "bios/ps2_scph30001r_1004.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "8359638e857c8bc18c3c18ac17d9cc3c", "file": "bios/ps2_scph30002r_1004.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "352d2ff9b3f68be7e6fa7e6dd8389346", "file": "bios/ps2_scph30005r.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "d5ce2c7d119f563ce04bc04dbc3a323e", "file": "bios/ps2_scph39001.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "0d2228e6fd4fb639c9c39d077a9ec10c", "file": "bios/ps2_scph39002.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "72da56fccb8fcd77bba16d1b6f479914", "file": "bios/ps2_scph37000_39000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "315a4003535dfda689752cb25f24785c", "file": "bios/ps2_scph39005.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "54ecde087258557e2ddb5c3ddb004028", "file": "bios/ps2_dtlh50000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "312ad4816c232a9606e56f946bc0678a", "file": "bios/ps2_scph50000_55000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "6e69920fa6eef8522a1d688a11e41bc6", "file": "bios/ps2_scph50002_0227.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "eb960de68f0c0f7f9fa083e9f79d0360", "file": "bios/ps2_dtlh50001_0325.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "8aa12ce243210128c5074552d3b86251", "file": "bios/ps2_scph50001_0325.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "240d4c5ddd4b54069bdc4a3cd2faf99d", "file": "bios/ps2_dtlh50009.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "1c6cd089e6c83da618fbf2a081eb4888", "file": "bios/ps2_desr5000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "463d87789c555a4a7604e97d7db545d1", "file": "bios/ps2_scph55000_0623.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "ab9d49ad40ae49f19856ad187777b1b3", "file": "bios/ps2_dtlh50001_0623.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "35461cecaa51712b300b2d6798825048", "file": "bios/ps2_scph50001_0623.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "bd6415094e1ce9e05daabe85de807666", "file": "bios/ps2_scph50002_0623.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "2e70ad008d4ec8549aada8002fdf42fb", "file": "bios/ps2_scph50006.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "50d5b97b57d8c9b6534adcb46c2027d4", "file": "bios/ps2_scph50005.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "1b6e631b536247756287b916f9396872", "file": "bios/ps2_scph50009.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "00da1b177096cfd2532c8fa22b43e667", "file": "bios/ps2_scph50000_0822.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "81f4336c1de607dd0865011c0447052e", "file": "bios/ps2_scph50011.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "0eee5d1c779aa50e94edd168b4ebf42e", "file": "bios/ps2_scph70000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "d333558cc14561c1fdc334c75d5f37b7", "file": "bios/ps2_scph70001.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "dc752f160044f2ed5fc1f4964db2a095", "file": "bios/ps2_scph70002.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "3e3e030c0f600442fa05b94f87a1e238", "file": "bios/ps2_scph70005.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "1ad977bb539fc9448a08ab276a836bbc", "file": "bios/ps2_desr5500.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "bf0078ba5e19d57eae18047407f3b6e5", "file": "bios/ps2_dtlh75000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "eb4f40fcf4911ede39c1bbfe91e7a89a", "file": "bios/ps2_scph75000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "9959ad7a8685cad66206e7752ca23f8b", "file": "bios/ps2_dtlh75000a.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "929a14baca1776b00869f983aa6e14d2", "file": "bios/ps2_scph75001.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "573f7d4a430c32b3cc0fd0c41e104bbd", "file": "bios/ps2_scph75002.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "df63a604e8bff5b0599bd1a6c2721bd0", "file": "bios/ps2_scph75006.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "5b1ba4bb914406fae75ab8e38901684d", "file": "bios/ps2_scph77000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "cb801b7920a7d536ba07b6534d2433ca", "file": "bios/ps2_scph77001.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "af60e6d1a939019d55e5b330d24b1c25", "file": "bios/ps2_scph77002.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "549a66d0c698635ca9fa3ab012da7129", "file": "bios/ps2_scph77006.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "5e2014472c88f74f7547d8c2c60eca45", "file": "bios/ps2_dtlh90000_j.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "5de9d0d730ff1e7ad122806335332524", "file": "bios/ps2_scph79000_90000.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "21fe4cad111f7dc0f9af29477057f88d", "file": "bios/ps2_dtlh90000_a.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "40c11c063b3b9409aa5e4058e984e30c", "file": "bios/ps2_scph79001_90001.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "80bbb237a6af9c611df43b16b930b683", "file": "bios/ps2_scph79002_90002.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "c37bce95d32b2be480f87dd32704e664", "file": "bios/ps2_scph79006_90006.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "80ac46fa7e77b8ab4366e86948e54f83", "file": "bios/ps2_scph90000_0220.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "21038400dc633070a78ad53090c53017", "file": "bios/ps2_scph90001_0220.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "dc69f0643a3030aaa4797501b483d6c4", "file": "bios/ps2_scph90002_0220.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "30d56e79d89fbddf10938fa67fe3f34e", "file": "bios/ps2_scph90005_0220.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "71f50ef4f4e17c163c78908e16244f7d", "file": "bios/ps2_scph30003.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "91c87cb2f2eb6ce529a2360f80ce2457", "file": "bios/ps2_dtlh30002.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "3016b3dd42148a67e2c048595ca4d7ce", "file": "bios/ps2_dtlh30102_0902.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "6f9a6feb749f0533aaae2cc45090b0ed", "file": "bios/ps2_dtlh30102_1228.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "5b1f47fbeb277c6be2fccdd6344ff2fd", "file": "bios/ps2_scph39008.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "666018ffec65c5c7e04796081295c6c7", "file": "bios/ps2_dtlh50002.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "b53d51edc7fc086685e31b811dc32aad", "file": "bios/ps2_scph50008.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "afde410bd026c16be605a1ae4bd651fd", "file": "bios/ps2_scph50004_0822.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "7ebb4fc5eab6f79a27d76ac9aad392b2", "file": "bios/ps2_scph70002_alt.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "63ead1d74893bf7f36880af81f68a82d", "file": "bios/ps2_dtlh70002.bin", "emulator": "duckstation", "core": "duckstation-sa" },
{ "md5": "93ea3bcee4252627919175ff1b16a1d9", "file": "bios/ps2_kdl22px300.bin", "emulator": "duckstation", "core": "duckstation-sa" }
] },
"ps2": { "name": "PS2", "biosFiles": [
{ "md5": "21038400dc633070a78ad53090c53017", "file": "bios/pcsx2/bios/ps2-0230a-20080220.bin" },
{ "md5": "21038400dc633070a78ad53090c53017", "file": "bios/aethersx2/bios/ps2-0230a-20080220.bin" },
{ "md5": "ec65dbfe7379cfac816b4d02259c0ca5", "file": "bios/pcsx2/resources/GameIndex.yaml", "emulator": "armsx2", "core": "armsx2-sa" },
{ "md5": "0525ad1f1381152f20bfb05775cf39cd", "file": "bios/pcsx2/resources/RedumpDatabase.yaml", "emulator": "armsx2", "core": "armsx2-sa" },
{ "md5": "809868f006eebec4e4615dd8bc397ef7", "file": "bios/pcsx2/resources/patches.zip", "emulator": "armsx2", "core": "armsx2-sa" },
{ "md5": "deb7394a31184990c78c9753a293ff60", "file": "bios/pcsx2/resources/shaders/vulkan/cas.glsl", "emulator": "armsx2", "core": "armsx2-sa" },
{ "md5": "d5a884f20ade826001ea9fd93be86345", "file": "bios/pcsx2/resources/sounds/achievements/unlock.wav", "emulator": "armsx2", "core": "armsx2-sa" }
] },
"ps3": { "name": "PS3", "biosFiles": [ { "md5": "a2b60b6ac1d2e49e230144345616927c", "file": "bios/PS3UPDAT.PUP" } ] }, #4.93
#"psvita": { "name": "PS Vita", "biosFiles": [ { "md5": "59dcf059d3328fb67be7e51f8aa33418", "file": "bios/psvita/PSP2UPDAT.PUP" },
# { "md5": "f2c7b12fe85496ec88a0391b514d6e3b", "file": "bios/psvita/PSVUPDAT.PUP"} ] },
}
class BiosStatus:
MISSING = "MISSING"
UNTESTED = "UNTESTED"
def md5sum(filename, blocksize=65536):
hash = md5()
with open(filename, "rb") as f:
for block in iter(lambda: f.read(blocksize), b""):
hash.update(block)
return hash.hexdigest()
def checkInsideZip(container, fileName, md5sum):
# Check inside Zip files
try:
archive = zipfile.ZipFile(container)
except Exception as e:
print ('Error opening file {}: {}.'.format(container, e))
return False
blocksize = 1024**2 #1M chunks
for fname in archive.namelist():
# Only check if the file matches
if fname.casefold() == fileName.casefold():
if md5sum == "":
return True
archive = zipfile.ZipFile(container)
blocksize = 1024**2 #1M chunks
for fname in archive.namelist():
if fname == fileName:
entry = archive.open(fname)
zippedHash = md5()
while True:
block = entry.read(blocksize)
if not block:
break
zippedHash.update(block)
if zippedHash.hexdigest() == md5sum:
return True
else:
print('Mismatch inside .zip: File {} in {} has MD5 {} (expected {})'.format(fileName, container, zippedHash.hexdigest(), md5sum))
return False
# File was not found in zip.
print('Missing file inside .zip: File {} not found in {}'.format(fileName, container))
return False
def coreExists(checkMe, emuDict):
if "emulator" in checkMe:
if checkMe["emulator"] in emuDict.keys():
hasEmu = True
else:
hasEmu = False
else:
# Emulator not defined, check BIOS
hasEmu = True
if hasEmu and "core" in checkMe:
if checkMe["core"] in emuDict[checkMe["emulator"]]:
hasCore = True
else:
hasCore = False
else:
# Either core is undefined or emulator is not installed.
# Set core presence to emulator presence, we'll assume there's only one core or it applies to all.
hasCore = hasEmu
return hasCore
def checkBios(systems, prefix, filterROMs):
systemDict = {}
emuDict = {}
systemName = ""
configFile = "/storage/.config/emulationstation/es_systems.cfg"
configData = elementTree.parse(configFile)
configRoot = configData.getroot()
if filterROMs:
# Load systems & emulators from es_systems.cfg
# System full name stored but not currently used, may be useful for the readme function.
for activeSystem in configRoot:
for systemTag in activeSystem:
if systemTag.tag == "fullname":
systemName = systemTag.text
elif systemTag.tag == "name":
systemDict[systemTag.text] = systemName
systemName = ""
elif systemTag.tag == "emulators":
for emulatorTag in systemTag:
emulatorName = emulatorTag.attrib['name']
for coreTag in emulatorTag[0]:
if emulatorName in emuDict.keys():
if not coreTag.text in emuDict[emulatorName]:
emuDict[emulatorName].append(coreTag.text)
else:
emuDict[emulatorName] = [coreTag.text]
else:
for system in systems.keys():
systemDict[system] = systems[system]['name']
missingBios = {}
for system in systems.keys():
if system in systemDict.keys():
if coreExists(systems[system], emuDict) or filterROMs == False:
for file in systems[system]["biosFiles"]:
if coreExists(file, emuDict) or filterROMs == False:
filepath = prefix + "/" + file["file"]
if isfile(filepath):
if not "zippedFile" in file:
md5 = md5sum(filepath)
if md5 != file["md5"] and file["md5"] != "":
if system not in missingBios:
missingBios[system] = {}
missingBios[system][file["file"]] = { "status": BiosStatus.UNTESTED, "md5": file["md5"], "file": file["file"] }
else:
if 'altmd5' in file:
if not checkInsideZip(filepath, file["zippedFile"], file["md5"], file["altmd5"]):
if system not in missingBios:
missingBios[system] = {}
missingBios[system][file["file"]] = { "status": BiosStatus.UNTESTED, "md5": file["md5"], "file": file["file"] }
else:
if not checkInsideZip(filepath, file["zippedFile"], file["md5"]):
if system not in missingBios:
missingBios[system] = {}
missingBios[system][file["file"]] = { "status": BiosStatus.UNTESTED, "md5": file["md5"], "file": file["file"] }
else:
if system not in missingBios:
missingBios[system] = {}
missingBios[system][file["file"]] = { "status": BiosStatus.MISSING, "md5": file["md5"], "file": file["file"] }
return missingBios
def displayMissingBios(systems, missingBios):
sortedMissingBios = OrderedDict(sorted(missingBios.items()))
if sortedMissingBios:
for system in sortedMissingBios:
print("> {}".format(system))
for file in sortedMissingBios[system].keys():
md5str = "-"
if sortedMissingBios[system][file]["md5"] != "":
md5str = sortedMissingBios[system][file]["md5"]
print("{} {} {}".format(sortedMissingBios[system][file]["status"], md5str, sortedMissingBios[system][file]["file"]))
else:
print("No missing bios")
def createReadme(systems):
for system in sorted(systems):
print("{}:".format(systems[system]["name"]))
for bios in systems[system]["biosFiles"]:
print("{} {}".format(bios["md5"], bios["file"]))
print("")
if __name__ == '__main__':
if len(sys.argv) == 1:
prefix = "/storage/roms"
displayMissingBios(systems, checkBios(systems, prefix, True))
elif sys.argv[1] == "--noFilter":
prefix = "/storage/roms"
displayMissingBios(systems, checkBios(systems, prefix, False))
elif sys.argv[1] == "--createReadme":
createReadme(systems)
elif len(sys.argv) == 3 and sys.argv[1] == "--filter":
prefix = "/storage/roms"
lowered_name = sys.argv[2].lower()
filtered_systems = {}
for system in systems:
if lowered_name in system.lower() or lowered_name in systems[system]['name'].lower():
filtered_systems[system] = systems[system]
if len(filtered_systems) == 0:
print("No system named {} found".format(sys.argv[2]))
exit(1)
displayMissingBios(filtered_systems, checkBios(filtered_systems, prefix, True))
+23
View File
@@ -0,0 +1,23 @@
{
"platform": "romm",
"originals": {
"known_bios_files.json": "https://raw.githubusercontent.com/rommapp/romm/5.4.0/backend/models/fixtures/known_bios_files.json"
},
"files": [
"known_bios_files.json"
],
"summary": "374 kept, 81 added, 4 hashes corrected, 0 requirements corrected, 308 additions left out",
"hashes_corrected": [
"atari8bit/ATARIOSB.ROM sha1",
"atari8bit/ATARIOSB.ROM md5",
"atari8bit/ATARIOSB.ROM crc32",
"doom/PLUTONIA.WAD sha1"
],
"hashes_filled": [],
"sizes_corrected": [],
"sizes_removed": [],
"hashes_cleared": [],
"requirements_corrected": 0,
"withheld": [],
"invalid": []
}
File diff suppressed because it is too large. Load diff
+4 -4
View File
@@ -374,9 +374,9 @@ class LandedChanges:
requirements: int = 0
def _count(number: int, noun: str) -> str:
def _count(number: int, noun: str, plural: str = "") -> str:
""""1 hash", "2 hashes": a count with its noun in the right number."""
plural = noun + ("es" if noun.endswith(("sh", "ch", "s", "x")) else "s")
plural = plural or noun + ("es" if noun.endswith(("sh", "ch", "s", "x")) else "s")
return f"{number} {noun if number == 1 else plural}"
@@ -529,9 +529,9 @@ def export_platform(
if cleared:
summary += f", {_count(len(cleared), 'hash')} cleared"
if refused:
summary += f", {refused} the format cannot state"
summary += f", {_count(refused, 'addition')} left out"
if lost:
summary += f", {lost} of theirs dropped"
summary += f", {_count(lost, 'entry', 'entries')} of theirs the format drops"
withheld = exporter.withheld()
if withheld:
summary += f", {_count(len(withheld), 'correction')} withheld"
+5 -3
View File
@@ -42,6 +42,8 @@ MAX_NAMES = 6
_MODULE_ID = re.compile(r'rp_module_id="([^"]+)"')
_MODULE_HELP = re.compile(r'rp_module_help="((?:[^"\\]|\\.)*)"')
_FILENAME = re.compile(r"[A-Za-z0-9][\w.+-]*\.[A-Za-z0-9]{1,5}\b")
# fs-uae's help reads "(e.g, kick13.rom)": e.g and i.e have a file name's shape.
_ABBREVIATION = re.compile(r"[a-z]\.[a-z]", re.I)
# RetroPie words the instruction several ways ("Copy the required BIOS files
# a.bin and b.bin to $biosdir", "The Sega CD requires the BIOS files a.bin,
# b.bin copied to $biosdir"), so the clause is found by the word BIOS rather
@@ -131,7 +133,7 @@ class Exporter(BaseExporter):
found: list[re.Match[str]] = []
for match in _FILENAME.finditer(text):
before = text[match.start() - 1 : match.start()]
if before in (".", "/", "\\"):
if before in (".", "/", "\\") or _ABBREVIATION.fullmatch(match.group(0)):
continue
found.append(match)
return found
@@ -369,8 +371,8 @@ class Exporter(BaseExporter):
shown = ", ".join(sorted(modules)[:4])
if len(modules) > 4:
shown += f" and {len(modules) - 4} more"
parts.append(f"{len(modules)} {reason} ({shown})")
return "; ".join(parts)
parts.append(f"{shown}: {reason}")
return ". ".join(parts)
def validate(
self,
+5
View File
@@ -77,6 +77,11 @@ def generate_exports_page(reports: list[dict], names: dict[str, str]) -> str:
"so a maintainer can diff it against theirs and take the changes "
"line by line.",
"",
"A file the emulators read and the list lacks is added only when the "
"format can carry it. Most platforms check an md5, so a file whose "
"source states no md5 is left out, and so is one filed under a system "
"the platform's checker never reads. Those are counted as left out.",
"",
]
if not reports:
lines.extend([
+20
View File
@@ -104,5 +104,25 @@ class CorrectedFilesPage(unittest.TestCase):
self.assertIn('"exports/**"', workflow)
class SummariesReadAsSentences(unittest.TestCase):
"""The page shows each run's summary. RetroPie's joined its parts with
semicolons and read fs-uae's "(e.g, kick13.rom)" as two file names."""
def test_an_abbreviation_is_not_a_file_name(self):
from exporter.retropie_exporter import Exporter as RetroPieExporter
names = RetroPieExporter._listed("BIOS files (e.g, kick13.rom) i.e. Kickstart")
self.assertEqual(names, {"kick13.rom"})
def test_retropie_outcome_has_no_semicolon(self):
from exporter.retropie_exporter import Exporter as RetroPieExporter
exporter = RetroPieExporter()
exporter._skipped = {"names no file to extend": ["fs-uae", "amiberry"]}
text = exporter.outcome({}, {"a.sh": ""})
self.assertNotIn(";", text)
self.assertIn("amiberry, fs-uae: names no file to extend", text)
if __name__ == "__main__":
unittest.main()