diff --git a/.gitignore b/.gitignore index f7add29e..f87de54e 100644 --- a/.gitignore +++ b/.gitignore @@ -82,3 +82,4 @@ bios/Nintendo/Wii/nand.bin bios/Other/fbneo/fbneo/samples/sfz3mix.zip bios/Other/fbneo/fbneo/samples/twotiger.zip bios/Other/starboard/starboard-rootfs.tar.gz +bios/Other/cspect/cspect-next-8gb.zip diff --git a/bios/IBM/PC/ibm-vga.bin b/bios/IBM/PC/ibm-vga.bin new file mode 100644 index 00000000..5bd409b1 Binary files /dev/null and b/bios/IBM/PC/ibm-vga.bin differ diff --git a/bios/Other/cxbx-reloaded/EEPROM.bin b/bios/Other/cxbx-reloaded/EEPROM.bin index 6b9458be..86529cf6 100644 Binary files a/bios/Other/cxbx-reloaded/EEPROM.bin and b/bios/Other/cxbx-reloaded/EEPROM.bin differ diff --git a/bios/Other/cxbx-reloaded/keys.bin b/bios/Other/cxbx-reloaded/keys.bin new file mode 100644 index 00000000..1fdfbc1d --- /dev/null +++ b/bios/Other/cxbx-reloaded/keys.bin @@ -0,0 +1,2 @@ +*;­,±”O“ªÍÍ~ +ÂîZ\3®÷èºy“ýÍ/à \ No newline at end of file diff --git a/bios/Other/dolphin-mmjr2/mii.bin b/bios/Other/dolphin-mmjr2/mii.bin new file mode 100644 index 00000000..1d83b8a7 Binary files /dev/null and b/bios/Other/dolphin-mmjr2/mii.bin differ diff --git a/bios/Other/dosbox-x/FONTS/courier.ttf b/bios/Other/dosbox-x/FONTS/courier.ttf new file mode 100644 index 00000000..9b06e57e Binary files /dev/null and b/bios/Other/dosbox-x/FONTS/courier.ttf differ diff --git a/bios/Other/dosbox-x/FONTS/ocra.ttf b/bios/Other/dosbox-x/FONTS/ocra.ttf new file mode 100644 index 00000000..0e77e208 Binary files /dev/null and b/bios/Other/dosbox-x/FONTS/ocra.ttf differ diff --git a/bios/Other/dosbox-x/FONTS/roman.ttf b/bios/Other/dosbox-x/FONTS/roman.ttf new file mode 100644 index 00000000..55f734ab Binary files /dev/null and b/bios/Other/dosbox-x/FONTS/roman.ttf differ diff --git a/bios/Other/dosbox-x/FONTS/sansserif.ttf b/bios/Other/dosbox-x/FONTS/sansserif.ttf new file mode 100644 index 00000000..7ff88f22 Binary files /dev/null and b/bios/Other/dosbox-x/FONTS/sansserif.ttf differ diff --git a/bios/Other/dosbox-x/FONTS/script.ttf b/bios/Other/dosbox-x/FONTS/script.ttf new file mode 100644 index 00000000..196c56c8 Binary files /dev/null and b/bios/Other/dosbox-x/FONTS/script.ttf differ diff --git a/bios/Other/dosbox-x/IBMROMBASIC-F6000h-1982-10-27.ROM b/bios/Other/dosbox-x/IBMROMBASIC-F6000h-1982-10-27.ROM deleted file mode 100644 index 897e689b..00000000 Binary files a/bios/Other/dosbox-x/IBMROMBASIC-F6000h-1982-10-27.ROM and /dev/null differ diff --git a/emulators/cspect.yml b/emulators/cspect.yml index 4ccc8b7e..1310ad08 100644 --- a/emulators/cspect.yml +++ b/emulators/cspect.yml @@ -118,17 +118,25 @@ files: 0x6000. A .fw file named on the command line takes the same route. source_ref: "CSpect.exe 3.3.1.0 a.H::e() IL_0016-IL_00bb, A.h::A(string[]) IL_0164-IL_0197, a.d::C(string) IL_014b-IL_01db" - - name: ".img" + - name: "cspect-next-8gb.zip" system: sinclair-zx-spectrum-next required: true - description: "ZX Spectrum Next SD card image" - unsourceable: >- - A FAT image the user builds or downloads, under whatever name is passed to - -mmc= or given as the positional argument. CSpect fetches the current one - from https://zxnext.uk/hosted/ on demand, and the machine writes to it. + storage: large_file + size: 62112587 + md5: "a01533a8fd22beb525af18bacfb21434" + sha1: "0e93b884b5eb9682171b9934327d2b01fd378821" + description: "ZX Spectrum Next SD card image, zipped as CSpect downloads it" note: >- - The only route to the ROMs above. SDCard.Open reads its MBR and boot - sector, which is also the test that decides whether a positional argument - is a card or a game, and the DivMMC opens the same path read write as its - card. A second image mounts on the second slot through -sd2=. + The only route to the ROMs above. Any FAT image serves, under whatever + name is passed to -mmc= or given as the positional argument: SDCard.Open + reads its MBR and boot sector, which is also the test that decides + whether a positional argument is a card or a game, and the DivMMC opens + the same path read write as its card. A second image mounts on the + second slot through -sd2=. When no card is given CSpect fetches + https://zxnext.uk/hosted/, takes the first link holding 8gb, which is + index_files/hdfimages/cspect-next-8gb.zip, and unpacks 8gb/cspect-next-8gb.img + (8589934592 bytes, one FAT32 partition of type 0x0C at LBA 63) beside a + version.txt. The site rebuilds the image nightly, so the hashes here + identify the 2026-09-03 build (System/Next 24.11, NextZXOS 2.09, + cores 3.02.01, 3.02.04 and 3.02.03, firmware 1.45). source_ref: "CSpect.exe 3.3.1.0 a.H::e() IL_000b-IL_0015, A.h::A(string) IL_0000-IL_00b6, A.h::A(string[]) IL_0697-IL_0773, B.R::.ctor(string), SDCardAccess.dll SDCard.cs:600-635" diff --git a/emulators/cxbx-reloaded.yml b/emulators/cxbx-reloaded.yml index a4a0cb41..07fb4f9b 100644 --- a/emulators/cxbx-reloaded.yml +++ b/emulators/cxbx-reloaded.yml @@ -185,9 +185,13 @@ files: note: >- Opened at startup and mapped read/write; the file is created and filled with defaults when it does not exist, and a file that is not 256 bytes ends - the run. Section checksums are recomputed on every load. The hard disk key - is taken from it, and the game region it carries becomes the factory - region. The GUI exposes an editor over the same file. + the run. Section checksums are recomputed on every load. The encrypted + section is read as plaintext: the stored checksum is compared with the + HMAC-SHA1 of the confounder, hard disk key and game region as they sit + in the file, keyed with the EEPROM key of keys.bin, so a retail dump has + to be RC4-decrypted first, which leaves the checksum unchanged. The hard + disk key is taken from it, and the game region it carries becomes the + factory region. The GUI exposes an editor over the same file. source_ref: "src/common/EmuEEPROM.cpp:93-193, src/common/FilePaths.cpp:125, src/core/kernel/init/CxbxKrnl.cpp:958, src/gui/DlgEepromConfig.cpp:212-230" - name: keys.bin diff --git a/emulators/dosbox-staging.yml b/emulators/dosbox-staging.yml index f38f988b..a5e5557c 100644 --- a/emulators/dosbox-staging.yml +++ b/emulators/dosbox-staging.yml @@ -607,7 +607,9 @@ files: - name: "system.rom" description: "IBM PCjr system ROM" + sha1: "1f5f7013f18c08ff50d7942e76c4fbd782412414" required: false + aliases: ["bios.rom"] min_size: 57344 validation: [size] note: > @@ -624,6 +626,8 @@ files: - name: "IBM PC Cassette BASIC ROM" description: "IBM BASIC ROM image mapped at F600:0" required: false + aliases: ["ibm-basic-1.10.rom", "IBMROMBASIC-F6000h-1982-10-27.ROM"] + sha1: "07449ebca18f979b9ab748582b736e402f2bf940" size: 32768 validation: [size] note: > @@ -631,8 +635,9 @@ files: carries the string IBM at offset 0x4CD4 source_ref: "src/dos/programs/loadrom.cpp:56-80, src/dos/programs/loadrom.cpp:95" - - name: "Video BIOS ROM" - description: "Option ROM image mapped at C000:0 and initialised" + - name: "ibm-vga.bin" + description: "IBM VGA option ROM of 10/27/86, laid out as mapped at C000:0" + sha1: "dce6491424f1726203776dfae9a967a98a4ba7b5" required: false min_size: 16384 max_size: 32768 diff --git a/emulators/dosbox-x.yml b/emulators/dosbox-x.yml index 669913be..6653ecd6 100644 --- a/emulators/dosbox-x.yml +++ b/emulators/dosbox-x.yml @@ -391,15 +391,18 @@ files: - name: "TRIO64 (Ver. 1.5-07) [VGA] (S3 Incorporated).bin" description: "S3 Trio64 video BIOS" + sha1: "a308b15f93da34961c0141ec95b98c211557e2d5" required: false + aliases: ["86c764x1.bin"] min_size: 1024 max_size: 65536 validation: [size] note: "default file name for machine = svga_s3" source_ref: "src/dosbox.cpp:943-945, src/dosbox.cpp:2745-2757" - - name: "Video BIOS option ROM" - description: "Option ROM image mapped at C000:0 and initialised" + - name: "ibm-vga.bin" + description: "IBM VGA option ROM of 10/27/86, laid out as mapped at C000:0" + sha1: "dce6491424f1726203776dfae9a967a98a4ba7b5" required: false min_size: 16384 max_size: 32768 @@ -414,6 +417,8 @@ files: - name: "IBMROMBASIC-F6000h-1982-10-27.ROM" description: "IBM 5150 Cassette BASIC ROM" + aliases: ["ibm-basic-1.10.rom"] + sha1: "07449ebca18f979b9ab748582b736e402f2bf940" required: false min_size: 32768 max_size: 65536 @@ -429,7 +434,9 @@ files: - name: "system.rom" description: "IBM PCjr system ROM" + sha1: "1f5f7013f18c08ff50d7942e76c4fbd782412414" required: false + aliases: ["bios.rom"] min_size: 57344 validation: [size] note: > diff --git a/emulators/flycast-dojo.yml b/emulators/flycast-dojo.yml index 585985c2..f3ef4fb9 100644 --- a/emulators/flycast-dojo.yml +++ b/emulators/flycast-dojo.yml @@ -108,8 +108,8 @@ files: required: false min_size: 131072 validation: [size] - note: "Flash memory used once Dojo mode is enabled, keeping netplay settings apart from local ones." - source_ref: "core/hw/holly/sb_mem.cpp:192-195" + note: "Flash memory used once Dojo mode is enabled, keeping netplay settings apart from local ones. Absent, the emulator logs that the flash is missing and creates it: the factory partition is rewritten, the user partition erased and ISP blocks and a random console id seeded (core/hw/flashrom/flashrom.h:494-524). Nothing distributed seeds it, and SaveRomFiles writes dc_nvmem.bin, never this name (core/hw/holly/sb_mem.cpp:279-286)." + source_ref: "core/hw/holly/sb_mem.cpp:189-230" - name: font.bin system: sega-dreamcast