diff --git a/emulators/2600-emu.yml b/emulators/2600-emu.yml index 654b1669..100178e3 100644 --- a/emulators/2600-emu.yml +++ b/emulators/2600-emu.yml @@ -5,7 +5,7 @@ source: "https://github.com/Rakashazi/emu-ex-plus-alpha" upstream: "https://github.com/stella-emu/stella" profiled_date: "2026-08-11" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" -upstream_commit: "d55b1aec0d067a4c901a6dcdf81cb8f579685659" +upstream_commit: "2c3d7023e9136f75c789803b44f119d8749dc104" core_version: "1.5.85" display_name: "Atari - 2600 (2600.emu)" mode: standalone diff --git a/emulators/a7800.yml b/emulators/a7800.yml index 6d01e419..57220562 100644 --- a/emulators/a7800.yml +++ b/emulators/a7800.yml @@ -5,6 +5,7 @@ source: "https://github.com/7800-devtools/a7800" upstream: "https://github.com/mamedev/mame" profiled_date: "2026-08-08" source_commit: "7a2afdc1ea08fc331b16b750d8c1f02d4ef62fc8" +upstream_commit: "61a222977fd29f22ce11fbea3f7c290fd7ced091" core_version: "5.2" display_name: "Atari - 7800 (A7800)" cores: diff --git a/emulators/aethersx2.yml b/emulators/aethersx2.yml index 1fc014b5..7655a4e2 100644 --- a/emulators/aethersx2.yml +++ b/emulators/aethersx2.yml @@ -6,6 +6,7 @@ source: "https://github.com/Trixarian/AetherSX2" upstream: "https://github.com/PCSX2/pcsx2" profiled_date: "2026-08-11" source_commit: "1d1f795dfc70e38da67724c7298779260f513889" +upstream_commit: "7fe1e5525a2c219c119aa9586cee4ceae2f54ce1" core_version: "1.5-3939" display_name: "Sony - PlayStation 2 (AetherSX2)" cores: diff --git a/emulators/applewin.yml b/emulators/applewin.yml index fda1f0cc..9e6855d4 100644 --- a/emulators/applewin.yml +++ b/emulators/applewin.yml @@ -4,7 +4,8 @@ core_classification: community_fork source: "https://github.com/audetto/AppleWin" upstream: "https://github.com/AppleWin/AppleWin" profiled_date: "2026-03-23" -source_commit: "7062ae417896da6050e2e39030215062bb4672ee" +source_commit: "a1e20c0362f392dc25f1a3b218d2f84d4f1a25da" +upstream_commit: "35366c56439701b58ce9efd4039118e26d725c44" core_version: "1.31.0.1" display_name: "Apple II (AppleWin)" cores: diff --git a/emulators/arcadeduck.yml b/emulators/arcadeduck.yml index a17dfe63..62733392 100644 --- a/emulators/arcadeduck.yml +++ b/emulators/arcadeduck.yml @@ -4,6 +4,7 @@ core_classification: community_fork source: "https://github.com/StillJC/ArcadeDuck" upstream: "https://github.com/stenzek/duckstation" source_commit: "26caf9cd27915a331fa32dc174489383b308ecad" +upstream_commit: "938c6d2a03e523d0e4275aa753f289a987bcb016" profiled_date: "2026-10-20" core_version: "latest (26caf9c)" display_name: "Arcade - Sony ZN-1, Namco System 11, Konami GV/GQ (ArcadeDuck)" diff --git a/emulators/ardens.yml b/emulators/ardens.yml index fa099f1a..f92f2163 100644 --- a/emulators/ardens.yml +++ b/emulators/ardens.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/tiberiusbrown/ardens" upstream: "https://github.com/tiberiusbrown/ardens" profiled_date: "2026-03-23" -source_commit: "ba7ad0dcfc196459859d304a8c483b38621c7cfa" +source_commit: "e811cc6be72c8a802bd3265a84daf4165c177b93" core_version: "Git" display_name: "Arduboy (Ardens)" cores: diff --git a/emulators/atari800.yml b/emulators/atari800.yml index 9fa6c1f5..6419902b 100644 --- a/emulators/atari800.yml +++ b/emulators/atari800.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/libretro-atari800" upstream: "https://github.com/atari800/atari800" profiled_date: "2026-03-23" source_commit: "4e7fbc73765c1a9670c7506616046ad1d4ccda51" +upstream_commit: "98cc2dc749867c9c7317a0271ba062a6c797f886" core_version: "3.1.0" display_name: "Atari - 400/800/600XL/800XL/130XE/5200 (Atari800)" cores: [atari800] diff --git a/emulators/ax360e.yml b/emulators/ax360e.yml index 0b7cd530..bf79215a 100644 --- a/emulators/ax360e.yml +++ b/emulators/ax360e.yml @@ -6,7 +6,7 @@ source_branch: main upstream: "https://github.com/xenia-canary/xenia-canary" profiled_date: "2026-08-11" source_commit: "b8c1838f21761ac463724e24105eda97b990e704" -upstream_commit: "dc561e4df578c903087f9bdf56ff61d9ef9f2a93" +upstream_commit: "534aeb64ea1937361573e3933d121e636463b135" core_version: "1.18" display_name: "Microsoft - Xbox 360 (aX360e)" cores: diff --git a/emulators/azaharplus.yml b/emulators/azaharplus.yml index 68941289..107d3f63 100644 --- a/emulators/azaharplus.yml +++ b/emulators/azaharplus.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/AzaharPlus/AzaharPlus" upstream: "https://github.com/AzaharPlus/AzaharPlus" profiled_date: "2026-08-08" -source_commit: "dab27d996555ca220b7dbd106a2e5f03b6af34ac" +source_commit: "cf9068844820f819a6eabbeeeb6a70d546e3e85a" core_version: "2126.0-A" display_name: "Nintendo - 3DS (AzaharPlus)" cores: @@ -23,7 +23,7 @@ notes: | keys.txt has an AES-encrypted key blob compiled into the binary, used when the file is absent. ENABLE_BUILTIN_KEYBLOB defaults to ON. - ref: src/core/hw/aes/key.cpp:483-611, CMakeLists.txt:153 + ref: src/core/hw/aes/key.cpp:483-611, CMakeLists.txt:160 1861 title seeds are compiled in and loaded before seeddb.bin is read. ref: src/core/file_sys/seed_db.cpp:50-52, src/core/file_sys/seed_db.cpp:218 @@ -32,17 +32,17 @@ notes: | open-source replacements embedded in the binary, and ClCertA falls back to an embedded certificate and key pair. ref: src/core/file_sys/archive_ncch.cpp:174-203, - src/core/hle/service/http/http_c.cpp:2107-2133 + src/core/hle/service/http/http_c.cpp:2262-2288 otp.bin, movable.sed, SecureInfo_A and LocalFriendCodeSeed_B are replaced by embedded dummy data when enable_required_online_lle_modules is set. That setting defaults to false, and every loader returns a not-found status without it. - ref: src/common/settings.h:492-493 + ref: src/common/settings.h:493-494 System titles are downloaded and installed in-app from the Nintendo CDN, so the NAND title tree is not user-supplied. - ref: src/core/nus_download.cpp:13, src/core/hle/service/am/am.cpp:1219-1242 + ref: src/core/nus_download.cpp:13, src/core/hle/service/am/am.cpp:1357-1380 sector0x96.bin is defined but read by no code path. ref: src/common/common_paths.h:86 diff --git a/emulators/bbkemu.yml b/emulators/bbkemu.yml index e8d44da3..ec9a4aeb 100644 --- a/emulators/bbkemu.yml +++ b/emulators/bbkemu.yml @@ -4,7 +4,7 @@ core_classification: pure_libretro source: "https://github.com/AloysHF/BBKEmu" upstream: "https://github.com/AloysHF/BBKEmu" profiled_date: "2026-09-03" -source_commit: "09bc66de868c8d2d6e1e1a6339552baf0c778b34" +source_commit: "aef61bd59d5eb65780ace33e288086dd98f709c5" core_version: "0.1.0" display_name: "BBK - Electronic Dictionary (BBKEmu)" cores: diff --git a/emulators/beetle_psx.yml b/emulators/beetle_psx.yml index d2df9ecf..5461b7f5 100644 --- a/emulators/beetle_psx.yml +++ b/emulators/beetle_psx.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/beetle-psx-libretro" upstream: "https://mednafen.github.io/" profiled_date: "2026-03-29" -source_commit: "5ec9909f2654fb2041315a13fac0b704c5065c0e" +source_commit: "9bcc75d0a3e8310a273afb8fac1409224ff42c29" core_version: "v0.9.44.1" display_name: "Sony - PlayStation (Beetle PSX)" cores: [beetle_psx, mednafen_psx, mednafen_psx_hw] @@ -13,18 +13,18 @@ notes: > Region-based BIOS selection: the core picks JP/NA/EU firmware based on disc region. SHA1 validated with warning on mismatch (does not block loading). SHA1 and alternate filenames sourced from MAME (mame src/mame/sony/psx.cpp). - The lists and the checksum search live in libretro.c:448-502,510-602. + The lists and the checksum search live in libretro.c:541-595,603-695. Override option allows using PSP, PS3, or OpenBIOS as region-free alternative. Embedded OpenBIOS (512KB) compiled into the binary serves as HLE fallback when no BIOS found. "Skip BIOS" option patches BIOS ROM but causes compatibility issues. Upstream Mednafen loads the same 3 region BIOS. Override BIOS and HLE fallback are libretro additions. Two BIOS geometries are accepted: the stock 512 KB kernel and the 1 MB SCPH-5903 part, - selected by file size at load time (libretro.c:3203-3217). A 1 MB image switches Video CD - from HLE to daughterboard emulation (libretro.c:6159). Reached through the BIOS path + selected by file size at load time (libretro.c:3386-3400). A 1 MB image switches Video CD + from HLE to daughterboard emulation (libretro.c:6515). Reached through the BIOS path override only: the region name lists carry no SCPH-5903 entry, and the firmware scan - compares against the region SHA1, so a 1 MB file never matches there (libretro.c:485-493). + compares against the region SHA1, so a 1 MB file never matches there (libretro.c:578-586). Mednafen rejects a BIOS that is not 524288 bytes (mednafen psx.cpp:1777), and the - fork keeps that geometry as BIOS_SIZE_STD (libretro.c:1126), so this geometry is + fork keeps that geometry as BIOS_SIZE_STD (libretro.c:1219), so this geometry is libretro only. files: @@ -40,19 +40,19 @@ files: md5: "8dd7d5296a650fac7319bce665a6a53c" validation: [sha1] mode: both - source_ref: "libretro.c:594-602" + source_ref: "libretro.c:687-695" aliases: ["SCPH5500.bin", "SCPH-5500.bin"] - name: "scph5903.bin" description: "SCPH-5903 (System ROM Version 2.2 12/04/95 J), Video CD daughterboard" required: false - note: "No code path opens this name: the Japanese name list and the SHA-1 scan look for scph5500.bin (libretro.c:594-602, 486-490). Copied as scph5500.bin it loads with a SHA-1 warning (libretro.c:680-687) and enables the Video CD daughterboard." + note: "No code path opens this name: the Japanese name list and the SHA-1 scan look for scph5500.bin (libretro.c:687-695, 579-583). Copied as scph5500.bin it loads with a SHA-1 warning (libretro.c:773-780) and enables the Video CD daughterboard." size: 1048576 sha1: "15c94da3cc5a38a582429575af4198c487fe893c" md5: "81328b966e6dcf7ea1e32e55e1c104bb" validation: [size, sha1] mode: libretro - source_ref: "libretro.c:604-611, libretro.c:3203-3217, libretro.c:3236-3238, libretro.c:6159" + source_ref: "libretro.c:697-704, libretro.c:3386-3400, libretro.c:3419-3421, libretro.c:6515" # -- Region: North America (REGION_NA) -- @@ -66,8 +66,8 @@ files: md5: "490f666e1afb15b7362b406ed1cea246" validation: [sha1] mode: both - note: "Picked for REGION_NA: a SYSTEM.CNF serial whose third letter is U (SCUS, SLUS), a licence string naming America, and content whose region cannot be read while the region option stays on auto (libretro.c:2172-2174, 2198, 2249-2254, 3171-3185, 4436)." - source_ref: "libretro.c:613-631" + note: "Picked for REGION_NA: a SYSTEM.CNF serial whose third letter is U (SCUS, SLUS), a licence string naming America, and content whose region cannot be read while the region option stays on auto (libretro.c:2355-2357, 2198, 2249-2254, 3171-3185, 4436)." + source_ref: "libretro.c:706-724" aliases: - "SCPH5501.bin" - "SCPH-5501.bin" @@ -90,7 +90,7 @@ files: md5: "32736f17079d0b2b7024407c39bd3050" validation: [sha1] mode: both - source_ref: "libretro.c:633-647" + source_ref: "libretro.c:726-740" aliases: - "SCPH5502.bin" - "SCPH-5502.bin" @@ -108,7 +108,7 @@ files: md5: "c53ca5908936d412331790f4426c6c33" validation: [sha1] mode: libretro - source_ref: "libretro.c:523-529" + source_ref: "libretro.c:616-622" aliases: ["PSXONPSP660.bin"] note: "override_bios=1. Tried as psxonpsp660.bin, PSXONPSP660.bin, then PSXONPSP660.BIN. Falls back to region BIOS if not found." @@ -119,7 +119,7 @@ files: md5: "81bbe60ba7a3d1cea1d48c14cbcc647b" validation: [sha1] mode: libretro - source_ref: "libretro.c:531-537" + source_ref: "libretro.c:624-630" aliases: ["PS1_ROM.bin"] note: "override_bios=2. Tried as ps1_rom.bin, PS1_ROM.bin, then PS1_ROM.BIN. Falls back to region BIOS if not found." @@ -128,6 +128,6 @@ files: required: false size: 524288 mode: libretro - source_ref: "libretro.c:539-545" + source_ref: "libretro.c:632-638" aliases: ["OPENBIOS.bin"] - note: "override_bios=3. No SHA1 validation. Falls back to region BIOS if not found. Also embedded in binary as HLE fallback (libretro.c:2264-2266)." + note: "override_bios=3. No SHA1 validation. Falls back to region BIOS if not found. Also embedded in binary as HLE fallback (libretro.c:2447-2449)." diff --git a/emulators/beetle_saturn.yml b/emulators/beetle_saturn.yml index 6f9b4123..e5446406 100644 --- a/emulators/beetle_saturn.yml +++ b/emulators/beetle_saturn.yml @@ -5,7 +5,7 @@ core: mednafen_saturn_libretro source: "https://github.com/libretro/beetle-saturn-libretro" upstream: "https://mednafen.github.io/" profiled_date: "2026-10-05" -source_commit: "65f05fa66f83e65e33be83aa433d883b4fd9509a" +source_commit: "d0d841784845da0278a9a49554cc4cc01597ee2c" core_version: "v1.32.1" display_name: "Sega - Saturn (Beetle Saturn)" cores: @@ -17,46 +17,46 @@ systems: notes: | Libretro port of Mednafen's Saturn emulation module, converted to C and - reporting v1.32.1 (libretro.c:57). Every firmware file is read from the + reporting v1.32.1 (libretro.c:58). Every firmware file is read from the system directory: MDFN_MakeFName joins retro_base_directory and the bare - name for MDFNMKF_FIRMWARE (libretro.c:2267-2268), and the BIOS path is + name for MDFNMKF_FIRMWARE (libretro.c:2347-2348), and the BIOS path is built the same way (mednafen/ss/ss.c:1867-1869). Region comes from the disc header and the region table of - mednafen/ss/db.c (libretro.c:1147-1149) and can be forced by the - beetle_saturn_region option (libretro.c:488-510, libretro.c:1153-1154). + mednafen/ss/db.c (libretro.c:1113-1115) and can be forced by the + beetle_saturn_region option (libretro.c:454-476, libretro.c:1119-1120). With no content loaded the region defaults to North America - (libretro.c:1103, libretro.c:1300-1301). The BIOS filename is hard-coded + (libretro.c:1069, libretro.c:1266-1267). The BIOS filename is hard-coded per region (mednafen/ss/ss.c:1845-1848): sega_101.bin for Japan and Asia NTSC, mpr-17933.bin for every other area. The file must be exactly 524288 bytes and InitCommon returns false when it is absent, of another size or short on read (mednafen/ss/ss.c:1943-1947, mednafen/ss/ss.c:1961-1984). The sha256 of the loaded image is kept only to refuse a save state made - under another BIOS (mednafen/ss/ss.c:1988, mednafen/ss/ss.c:2589-2608). + under another BIOS (mednafen/ss/ss.c:1988, mednafen/ss/ss.c:2594-2613). ss.bios_sanity answers true (mednafen/settings.c:50-51) but nothing in the port reads it: the name and hash table that upstream checks under that setting is not carried over. The cartridge is chosen by the game table of mednafen/ss/db.c or by the - beetle_saturn_cart option (libretro.c:512-530, libretro.c:1157-1158). The + beetle_saturn_cart option (libretro.c:478-496, libretro.c:1123-1124). The KOF95 and Ultraman ROM carts are opened from the system directory under the names of mednafen/settings.c:62-65 (mednafen/ss/cart.c:197-216). An absent file leaves the cart slot on the dummy handlers and the load goes on (mednafen/ss/cart.c:209). ST-V content is a game ZIP or a bare ROM matched against the ST-V game - table (libretro.c:1207-1227, libretro.c:1261-1281). The cabinet region of + table (libretro.c:1173-1193, libretro.c:1227-1247). The cabinet region of the matched game selects one of three ST-V BIOS images (mednafen/ss/ss.c:1829-1843), and the beetle_saturn_region option is not - applied on that path (libretro.c:1217, libretro.c:1275). The image is read + applied on that path (libretro.c:1183, libretro.c:1241). The image is read as a bare file from the system directory or, when that file is absent, as the member of the same name in stvbios.zip there, matched without regard - to case (mednafen/ss/ss.c:1875-1949, zip_reader.c:358-365). Either form + to case (mednafen/ss/ss.c:1875-1949, zip_reader.c:350-357). Either form may be 131072 or 524288 bytes (mednafen/ss/ss.c:1911-1912, mednafen/ss/ss.c:1962). The Video CD Card is driven through the CD block. With the - beetle_saturn_mpeg_card option enabled (libretro.c:578-586, default + beetle_saturn_mpeg_card option enabled (libretro.c:544-552, default disabled), CDB_Init opens mpeg_card.bin in the system directory and MPEG_Init keeps up to 0x80000 bytes of it (mednafen/settings.c:52-53, mednafen/settings.c:68-69, mednafen/ss/cdb.c:1315-1332, @@ -86,7 +86,7 @@ files: validation: {core: [size], upstream: [size, sha256]} sha256: "96e106f740ab448cf89f0dd49dfbac7fe5391cb6bd6e14ad5e3061c13330266f" note: "Saturn BIOS v1.00a (North America and Europe), loaded for every area other than Japan and Asia NTSC, and when no content is loaded. Disc area E maps to EU_PAL and the code has no Oceania area (disc.c:162-165). The port checks the size only. The sha256 is the value upstream Mednafen 1.32.1 holds for this filename in its ss.bios_sanity table (src/ss/ss.cpp, BIOSDB)." - source_ref: "mednafen/ss/ss.c:1847-1848 (region filename), mednafen/ss/ss.c:1867-1873 (open), mednafen/ss/ss.c:1961-1984 (size check, read), mednafen/ss/ss.c:1988 (sha256 for save states), libretro.c:1103 (default area)" + source_ref: "mednafen/ss/ss.c:1847-1848 (region filename), mednafen/ss/ss.c:1867-1873 (open), mednafen/ss/ss.c:1961-1984 (size check, read), mednafen/ss/ss.c:1988 (sha256 for save states), libretro.c:1069 (default area)" - name: "mpr-18811-mx.ic1" system: sega-saturn @@ -94,7 +94,7 @@ files: min_size: 2097152 validation: [size] note: "King of Fighters '95 ROM cart. Selected by the game table for MK-81088 and T-3101G or by the beetle_saturn_cart option. The first 0x200000 bytes are read. A shorter file installs a zeroed cart, an absent file leaves the slot empty." - source_ref: "mednafen/settings.c:62-63 (filename), mednafen/ss/cart.c:197-216 (open), mednafen/ss/cart/rom.c:67-68 (read), mednafen/ss/db.c:90-91 (game table), libretro.c:527 (option)" + source_ref: "mednafen/settings.c:62-63 (filename), mednafen/ss/cart.c:197-216 (open), mednafen/ss/cart/rom.c:67-68 (read), mednafen/ss/db.c:90-91 (game table), libretro.c:493 (option)" - name: "mpr-19367-mx.ic1" system: sega-saturn @@ -102,7 +102,7 @@ files: min_size: 2097152 validation: [size] note: "Ultraman: Hikari no Kyojin Densetsu ROM cart. Selected by the game table for T-13308G or by the beetle_saturn_cart option. The first 0x200000 bytes are read. A shorter file installs a zeroed cart, an absent file leaves the slot empty." - source_ref: "mednafen/settings.c:64-65 (filename), mednafen/ss/cart.c:197-216 (open), mednafen/ss/cart/rom.c:67-68 (read), mednafen/ss/db.c:92 (game table), libretro.c:529 (option)" + source_ref: "mednafen/settings.c:64-65 (filename), mednafen/ss/cart.c:197-216 (open), mednafen/ss/cart/rom.c:67-68 (read), mednafen/ss/db.c:92 (game table), libretro.c:495 (option)" - name: "epr-20091.ic8" system: sega-stv @@ -137,7 +137,7 @@ files: required: false description: "ST-V BIOS archive" note: "Opened only when the bare ST-V BIOS file for the cabinet region is absent. The member of the same name is matched without regard to case and must be 131072 or 524288 bytes. No hash is checked." - source_ref: "mednafen/ss/ss.c:1888-1941 (open, member lookup, size check, extract), zip_reader.c:358-365 (case-insensitive lookup)" + source_ref: "mednafen/ss/ss.c:1888-1941 (open, member lookup, size check, extract), zip_reader.c:350-357 (case-insensitive lookup)" contents: - name: "epr-20091.ic8" description: "Japan and Asia NTSC" @@ -158,5 +158,5 @@ files: required: false min_size: 262144 validation: [size] - note: "Action Replay 4M Plus firmware. The first 0x40000 bytes are read as big-endian words and a shorter file leaves the cart slot empty. No hash is checked. Unfinished in source (mednafen/ss/cart/ar4mp.c:22-24), needs CPU UBC emulation. Neither the beetle_saturn_cart option (libretro.c:512-530) nor the game table of mednafen/ss/db.c yields CART_AR4MP, so the case is not reached." + note: "Action Replay 4M Plus firmware. The first 0x40000 bytes are read as big-endian words and a shorter file leaves the cart slot empty. No hash is checked. Unfinished in source (mednafen/ss/cart/ar4mp.c:22-24), needs CPU UBC emulation. Neither the beetle_saturn_cart option (libretro.c:478-496) nor the game table of mednafen/ss/db.c yields CART_AR4MP, so the case is not reached." source_ref: "mednafen/settings.c:66-67 (filename), mednafen/ss/cart.c:218-236 (CART_AR4MP case), mednafen/ss/cart/ar4mp.c:181 (0x40000-byte read)" diff --git a/emulators/beetle_vb.yml b/emulators/beetle_vb.yml index f263ec8d..138ba9bc 100644 --- a/emulators/beetle_vb.yml +++ b/emulators/beetle_vb.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/beetle-vb-libretro" upstream: "https://mednafen.github.io/" profiled_date: "2026-03-24" -source_commit: "83ed42608601fb7b01d41e4f8fb2007a37b8c84e" +source_commit: "d5ae54c8e23b573a3b34e888b2d48a588027e92c" core_version: "v0.9.36.1" display_name: "Nintendo - Virtual Boy (Beetle VB)" cores: [mednafen_vb, vb] @@ -14,7 +14,7 @@ notes: | Libretro port of Mednafen's Virtual Boy emulation module. No external BIOS or firmware files. The Virtual Boy has no boot ROM: the V810 CPU executes directly from the game ROM mapped at - 0x07000000. Load() in libretro.cpp:1810 takes only ROM data. + 0x07000000. Load() in libretro.cpp:490 takes only ROM data. Upstream Mednafen supports an optional vb.pal palette file (Documentation/vb.html), while the libretro port handles palette via core options instead. diff --git a/emulators/blastem.yml b/emulators/blastem.yml index fa5d09a8..38fa80bb 100644 --- a/emulators/blastem.yml +++ b/emulators/blastem.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/libretro/blastem" upstream: "https://www.retrodev.com/blastem/" profiled_date: "2026-10-20" -source_commit: "1e0de94dc7e669c0925a22c0fccf6cdc837af0a0" +source_commit: "ab743653ed110eeb7b1fe64d00cc5f9279c2bfec" prose_written_at: "1e0de94dc7e669c0925a22c0fccf6cdc837af0a0" core_version: "1.0.1-pre" display_name: "Sega - Mega Drive - Genesis (BlastEm)" diff --git a/emulators/bsnes.yml b/emulators/bsnes.yml index 35e87c63..0c0b74ab 100644 --- a/emulators/bsnes.yml +++ b/emulators/bsnes.yml @@ -6,6 +6,7 @@ upstream: "https://github.com/bsnes-emu/bsnes" logo: "https://raw.githubusercontent.com/bsnes-emu/bsnes/master/bsnes/target-bsnes/resource/bsnes.svg" profiled_date: "2026-04-05" source_commit: "05439f96121d2b9d7ad7a5fc1f29d7eebdcc8c43" +upstream_commit: "78474e5d39f58872dc21aca18cf9eb583b147fe7" core_version: "115" display_name: "Nintendo - SNES / SFC (bsnes)" cores: [bsnes] diff --git a/emulators/bsnes2014.yml b/emulators/bsnes2014.yml index 8a11f5ed..cf0a8146 100644 --- a/emulators/bsnes2014.yml +++ b/emulators/bsnes2014.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/bsnes2014" upstream: "https://github.com/bsnes-emu/bsnes" profiled_date: "2026-03-25" source_commit: "3c1394e042ee444c8248e1b9210e14ea55e836e9" +upstream_commit: "78474e5d39f58872dc21aca18cf9eb583b147fe7" core_version: "v094" display_name: "Nintendo - SNES / SFC (bsnes 2014)" cores: [bsnes2014_accuracy, bsnes2014_balanced, bsnes2014_performance] diff --git a/emulators/bsnes_hd_beta.yml b/emulators/bsnes_hd_beta.yml index b77faad2..32f9f80b 100644 --- a/emulators/bsnes_hd_beta.yml +++ b/emulators/bsnes_hd_beta.yml @@ -5,6 +5,7 @@ source: "https://github.com/DerKoun/bsnes-hd" upstream: "https://github.com/bsnes-emu/bsnes" profiled_date: "2026-03-23" source_commit: "fc26b25ea236f0f877f0265d2a2c37dfd93dfde9" +upstream_commit: "78474e5d39f58872dc21aca18cf9eb583b147fe7" core_version: "v10.6" display_name: "Nintendo - SNES / SFC (bsnes-hd beta)" cores: [bsnes_hd_beta, bsneshd, bsnes_hd] diff --git a/emulators/c64-emu.yml b/emulators/c64-emu.yml index 5ac3c477..a45f9b32 100644 --- a/emulators/c64-emu.yml +++ b/emulators/c64-emu.yml @@ -5,6 +5,7 @@ source: "https://github.com/Rakashazi/emu-ex-plus-alpha" upstream: "https://github.com/VICE-Team/svn-mirror" profiled_date: "2026-08-11" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" +upstream_commit: "283fa5e7df83bdf524187f9dac41ad2a66f1d315" core_version: "1.5.85" display_name: "Commodore - C64 (C64.emu)" mode: standalone diff --git a/emulators/catacombgl.yml b/emulators/catacombgl.yml index eff25478..5a93a19e 100644 --- a/emulators/catacombgl.yml +++ b/emulators/catacombgl.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/ArnoAnsems/CatacombGL" upstream: "https://github.com/ArnoAnsems/CatacombGL" profiled_date: "2026-10-04" -source_commit: "7d3b859a17f7edf02ce47f2d22e8b291e4ef0c91" +source_commit: "dd7d337fff89c32285b096190f6419828860bfe0" core_version: "0.5.7 Beta" display_name: "Catacomb 3-D (CatacombGL)" cores: [catacombgl] diff --git a/emulators/chimerasnes.yml b/emulators/chimerasnes.yml index 7e99a7b9..5641c312 100644 --- a/emulators/chimerasnes.yml +++ b/emulators/chimerasnes.yml @@ -5,6 +5,7 @@ source: "https://github.com/jamsilva/chimerasnes" upstream: "https://github.com/snes9xgit/snes9x" profiled_date: "2026-03-23" source_commit: "04c57c2902c25f36ae5a5d9c57aff851a772c868" +upstream_commit: "1bcc369e89f08243e0a462882fb1f3e42e51de3a" core_version: "" display_name: "Nintendo - SNES / SFC (ChimeraSNES)" cores: [chimerasnes] diff --git a/emulators/clk.yml b/emulators/clk.yml index e38d61ff..cb183990 100644 --- a/emulators/clk.yml +++ b/emulators/clk.yml @@ -3,7 +3,7 @@ type: standalone source: "https://github.com/TomHarte/CLK" upstream: "https://github.com/TomHarte/CLK" profiled_date: "2026-03-26" -source_commit: "53a1ee78f2f6857815f50247dbf4f76bc5c8c3d9" +source_commit: "0f49993b4d0992ebba1fad5032d96637f3a84d1f" core_version: "2026-07-28" display_name: "Clock Signal" cores: [clk] @@ -746,7 +746,7 @@ files: size: 32768 crc32: "ee229390" required: false - note: "Alternative to msx.rom for the Japan region, which the analyser never sets. Only the user picks it (Analyser/Static/MSX/Target.hpp:34, Analyser/Static/MSX/StaticAnalyser.cpp:217-219)." + note: "Alternative to msx.rom for the Japan region, which the analyser never sets. Only the user picks it (Analyser/Static/MSX/Target.hpp:34, Analyser/Static/MSX/StaticAnalyser.cpp:218-220)." source_ref: "Machines/Utility/ROMCatalogue.cpp:785-792" - name: msx-american.rom @@ -755,7 +755,7 @@ files: description: "American MSX BIOS" size: 32768 required: false - note: "Alternative to msx.rom for the USA region, which the analyser sets whenever no tape is loaded (Analyser/Static/MSX/StaticAnalyser.cpp:217-219, Machines/MSX/MSX.cpp:250-259)." + note: "Alternative to msx.rom for the USA region, which the analyser sets whenever no tape is loaded (Analyser/Static/MSX/StaticAnalyser.cpp:218-220, Machines/MSX/MSX.cpp:251-260)." source_ref: "Machines/Utility/ROMCatalogue.cpp:793-800" - name: msx-european.rom @@ -764,7 +764,7 @@ files: description: "European MSX BIOS" size: 32768 required: false - note: "Alternative to msx.rom for the Europe region, which the analyser sets whenever a tape is loaded or the user picks (Analyser/Static/MSX/StaticAnalyser.cpp:217-219, Machines/MSX/MSX.cpp:261-269)." + note: "Alternative to msx.rom for the Europe region, which the analyser sets whenever a tape is loaded or the user picks (Analyser/Static/MSX/StaticAnalyser.cpp:218-220, Machines/MSX/MSX.cpp:262-270)." source_ref: "Machines/Utility/ROMCatalogue.cpp:801-808" - name: disk.rom diff --git a/emulators/cruzes.yml b/emulators/cruzes.yml index 0ad0fd8d..8214d492 100644 --- a/emulators/cruzes.yml +++ b/emulators/cruzes.yml @@ -3,7 +3,7 @@ type: libretro core_classification: pure_libretro source: "https://github.com/libretro/libretro-samples/tree/master/tests/cruzes" profiled_date: "2026-03-23" -source_commit: "bce193bc1b8c9a3da43b2ead0158a69e28b37ed8" +source_commit: "7c2ad112d7a5176de2191e473369668da8946b16" core_version: "0.1" display_name: "Cruzes" cores: @@ -15,9 +15,9 @@ notes: | Unfinished Picross puzzle game, part of the libretro-samples repository. No separate upstream -- written directly for the libretro API. - supports_no_game true (cruzes.c:772), valid_extensions "" (cruzes.c:749). - Puzzle grid hardcoded in retro_init (cruzes.c:706-717) via load_challenge. - retro_load_game (cruzes.c:728-732) sets pixel format and returns true. + supports_no_game true (tests/cruzes/cruzes.c:772), valid_extensions "" (tests/cruzes/cruzes.c:749). + Puzzle grid hardcoded in retro_init (tests/cruzes/cruzes.c:706-717) via load_challenge. + retro_load_game (tests/cruzes/cruzes.c:728-732) sets pixel format and returns true. No file I/O, no RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY call. Font data (Carlito-Regular.ttf) compiled in via ttf2c (font10.h, font16.h, diff --git a/emulators/desmume.yml b/emulators/desmume.yml index e8d6898e..e9d80a26 100644 --- a/emulators/desmume.yml +++ b/emulators/desmume.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/desmume" upstream: "https://github.com/TASEmulators/desmume" profiled_date: "2026-03-23" source_commit: "95b4d798731caa809125b6c3c11d17cc332ff6ef" +upstream_commit: "1275dc64f5d1f5ef18dc1bc1fa9e012024b6df1a" core_version: "SVN" display_name: "Nintendo - DS (DeSmuME)" cores: [desmume] diff --git a/emulators/desmume2015.yml b/emulators/desmume2015.yml index 96960fd8..48359d6b 100644 --- a/emulators/desmume2015.yml +++ b/emulators/desmume2015.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/desmume2015" upstream: "https://github.com/TASEmulators/desmume" profiled_date: "2026-03-23" source_commit: "422b688009ccb9f2917c086a8fe79c8cecb030ae" +upstream_commit: "1275dc64f5d1f5ef18dc1bc1fa9e012024b6df1a" core_version: "SVN (2015 snapshot)" display_name: "Nintendo - DS (DeSmuME 2015)" cores: [desmume2015, desmume_2015] diff --git a/emulators/dice.yml b/emulators/dice.yml index 41504eb2..86d96ed8 100644 --- a/emulators/dice.yml +++ b/emulators/dice.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/mittonk/dice-libretro" upstream: "https://sourceforge.net/projects/dice/" profiled_date: "2026-03-23" -source_commit: "ab766aa25c6ed970ece28f2df5be7daa26b9e439" +source_commit: "4b4596b8dd2252b9d08bd6aaa02afda4be834db3" core_version: "v0.4.2" display_name: "Arcade (DICE)" cores: diff --git a/emulators/dosbox-staging.yml b/emulators/dosbox-staging.yml index 3f63ba72..bcc71381 100644 --- a/emulators/dosbox-staging.yml +++ b/emulators/dosbox-staging.yml @@ -3,7 +3,7 @@ type: standalone core_classification: enhanced_fork source: "https://github.com/dosbox-staging/dosbox-staging" upstream: "https://github.com/dosbox-staging/dosbox-staging" -source_commit: "54bafc7c17e1cbb06f94dddb5803629369d6e219" +source_commit: "400bc406cac0b2e7cd3e5f93e34d6fb9f08c80bd" profiled_date: "2026-08-08" core_version: "0.84.0-alpha" display_name: "DOS (DOSBox Staging)" @@ -82,7 +82,7 @@ notes: | SoundFont name from the RIFF INFO chunk and the stem of the file, symbolic links resolved, select reverb, chorus and filter presets for four known banks. - ref: src/midi/fluidsynth.cpp:107-230, 672-689, 816-883, 1229-1252 + ref: src/midi/fluidsynth.cpp:107-230, 673-690, 776-843, 1058-1081 Bundled data ships with the program and is read from the resources directory next to the executable: FreeDOS codepages and keyboard layouts, translations, @@ -90,11 +90,11 @@ notes: | mounted Y: drive utilities, the web interface and the manual pages. ref: src/misc/support.cpp:300-320, src/dos/dos_code_page.cpp:1828, src/dos/dos_keyboard_layout.cpp:70, src/misc/messages.cpp:1073, src/gui/render/shader_manager.cpp:236,404, src/ints/int10_modes.cpp:2302, - src/audio/disk_noise.cpp:187, src/shell/autoexec.cpp:759 + src/audio/disk_noise.cpp:185, src/shell/autoexec.cpp:764 BIOSTEST.COM loads an arbitrary BIOS image at F000:0 and is compiled only when the debugger is enabled, which is off by default. - ref: src/dos/CMakeLists.txt:81-83, biostest.h + ref: src/dos/CMakeLists.txt:82-84, biostest.h files: # File names are documentation only: libmt32emu and the Sound Canvas plugin @@ -605,7 +605,7 @@ files: Any SoundFont loads. GeneralUser GS, Fluid R3, the AWE32 4MB GM/GS/MT bank and the Trevor0402 SC-55 SoundFont are recognised by filename or RIFF INFO name and get their own reverb, chorus and filter presets - source_ref: "src/midi/fluidsynth.cpp:133-154, src/midi/fluidsynth.cpp:672-689, src/midi/fluidsynth.cpp:816-883, src/midi/fluidsynth.cpp:1227-1242" + source_ref: "src/midi/fluidsynth.cpp:133-154, src/midi/fluidsynth.cpp:673-690, src/midi/fluidsynth.cpp:776-843, src/midi/fluidsynth.cpp:1056-1071" - name: "GeneralUser-GS.sf2" path: "soundfonts/GeneralUser-GS.sf2" @@ -618,7 +618,7 @@ files: SoundFont directories. A file whose stem or RIFF INFO name contains GeneralUser is identified as GeneralUser GS, whatever the rest of the name, and gets its own chorus and reverb parameters in auto mode - source_ref: "src/midi/fluidsynth.cpp:194-230, src/midi/fluidsynth.cpp:842-848, src/midi/fluidsynth.cpp:430-434, src/midi/fluidsynth.cpp:573-577, src/midi/fluidsynth.cpp:1133-1158" + source_ref: "src/midi/fluidsynth.cpp:194-230, src/midi/fluidsynth.cpp:802-808, src/midi/fluidsynth.cpp:430-434, src/midi/fluidsynth.cpp:573-577, src/midi/fluidsynth.cpp:962-987" - name: "FluidR3_GM.sf2" path: "soundfonts/FluidR3_GM.sf2" @@ -629,7 +629,7 @@ files: .sf2 extension. A file whose RIFF INFO name contains Fluid R3, or whose stem contains FluidR3, Fluid_R3 or Fluid-R3, is identified as Fluid R3: auto mode then turns the chorus off and keeps the default reverb - source_ref: "src/midi/fluidsynth.cpp:194-230, src/midi/fluidsynth.cpp:863-868, src/midi/fluidsynth.cpp:443-446, src/midi/fluidsynth.cpp:567-571, src/midi/fluidsynth.cpp:1133-1158" + source_ref: "src/midi/fluidsynth.cpp:194-230, src/midi/fluidsynth.cpp:823-828, src/midi/fluidsynth.cpp:443-446, src/midi/fluidsynth.cpp:567-571, src/midi/fluidsynth.cpp:962-987" # -- PCjr system ROM -- diff --git a/emulators/doukutsu_rs.yml b/emulators/doukutsu_rs.yml index f39dacbe..c7a4cf5b 100644 --- a/emulators/doukutsu_rs.yml +++ b/emulators/doukutsu_rs.yml @@ -5,6 +5,7 @@ source: "https://github.com/DrGlaucous/doukutsu-rs-nm" upstream: "https://github.com/doukutsu-rs/doukutsu-rs" profiled_date: "2026-03-23" source_commit: "51e64c2e9615bcd476034c69b58927877fe73494" +upstream_commit: "d05995b2ce88e583491fcecfbd5883735d3527ea" core_version: "1.2.0 - 0.101.0" display_name: "Cave Story (drs)" cores: diff --git a/emulators/duckstation.yml b/emulators/duckstation.yml index adc25e36..60d93115 100644 --- a/emulators/duckstation.yml +++ b/emulators/duckstation.yml @@ -5,7 +5,7 @@ source: "https://github.com/stenzek/duckstation" upstream: "https://github.com/stenzek/duckstation" logo: "https://raw.githubusercontent.com/stenzek/duckstation/master/data/resources/images/duck.png" profiled_date: "2026-03-23" -source_commit: "4122fed9ad3e6e5c2ecf1516cd51675a5931623e" +source_commit: "938c6d2a03e523d0e4275aa753f289a987bcb016" core_version: "v0.1-12070" display_name: "Sony - PlayStation (DuckStation)" cores: [duckstation, "Duckstation"] @@ -28,19 +28,19 @@ notes: | The console region picks the image, Auto by default. NTSC-U answers the licence string `Sony Computer Entertainment Amer ica` (two spaces, as - src/core/system.cpp:959 spells it), a SCUS or SLUS + src/core/system.cpp:972 spells it), a SCUS or SLUS executable, and every disc whose region the detector cannot read (DiscRegion::Other, NonPS1), so a disc of any other market boots an NTSC-U image. - ref: src/core/system.cpp:650-662, 926-995, 1723-1724, 1755 + ref: src/core/system.cpp:663-675, 939-1008, 1738-1739, 1755 ref: src/core/bios.cpp:397-436 (FindBIOSImageInDirectory keeps a region match) - ref: src/core/settings.h:595 (DEFAULT_CONSOLE_REGION = Auto) + ref: src/core/settings.h:605 (DEFAULT_CONSOLE_REGION = Auto) ImageInfo gained a version and an expected_filename field after the previous profiling pass. Neither takes part in identification: expected_filename is read only by the two settings screens, which fall back to the real filename when it is null. ref: src/core/bios.h:41-43 (field declarations) - ref: src/duckstation-qt/biossettingswidget.cpp:149, src/core/fullscreenui_settings.cpp:3281 + ref: src/duckstation-qt/biossettingswidget.cpp:153, src/core/fullscreenui_settings.cpp:3317 Lower priority = preferred. PS2 deprioritized (>= 100) for dynamic fast boot. Late PAL deprioritized (>= 150) due to additional regional checks. OpenBIOS detected by signature at offset 0x78, not by hash. diff --git a/emulators/dxx-rebirth.yml b/emulators/dxx-rebirth.yml index 357b9888..b8fd9558 100644 --- a/emulators/dxx-rebirth.yml +++ b/emulators/dxx-rebirth.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/dxx-rebirth/dxx-rebirth" upstream: ~ profiled_date: "2026-10-04" -source_commit: "db1996a7fd18c7bf11c9b18b881aa4f11a84f017" +source_commit: "6943b924bea749543ef5729f31a28345e79716d2" core_version: "git" display_name: "Descent 1 & 2 (DXX-Rebirth)" cores: [dxx-rebirth, d1x-rebirth, d2x-rebirth] @@ -235,7 +235,7 @@ files: category: game_data required: false description: "Descent 2 intro cinematic (high-res)" - source_ref: "d2x-rebirth/main/movie.cpp:93-95 (movielib_files), 660 (name format); similar/main/titles.cpp:292 (intro.mve)" + source_ref: "d2x-rebirth/main/movie.cpp:93-95 (movielib_files), 660 (name format), similar/main/titles.cpp:354 (intro.mve)" - name: robots-h.mvl path: robots-h.mvl @@ -266,7 +266,7 @@ files: required: false description: "High resolution title, briefing and ending screens for Descent 1" note: "Mounted at startup when present, and its files extend or replace the game content." - source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4362" + source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4364" - name: "d1xr-briefings-ger.dxa" path: "d1x-rebirth/d1xr-briefings-ger.dxa" @@ -275,7 +275,7 @@ files: required: false description: "German briefing texts for Descent 1" note: "Mounted at startup when present, and its files extend or replace the game content." - source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4362" + source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4364" - name: "d1xr-mac-demo-sounds.dxa" path: "d1x-rebirth/d1xr-mac-demo-sounds.dxa" @@ -284,7 +284,7 @@ files: required: false description: "Sound set of the Macintosh Descent 1 demo" note: "Mounted at startup when present, and its files extend or replace the game content." - source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4362" + source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4364" - name: "d1xr-opl3-music.dxa" path: "d1x-rebirth/d1xr-opl3-music.dxa" @@ -293,7 +293,7 @@ files: required: false description: "Descent 1 music as Ogg Vorbis files, OPL3 rendering" note: "Mounted at startup when present, and its files extend or replace the game content." - source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4362" + source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4364" - name: "d1xr-sc55-music.dxa" installed_on: [retropie] @@ -303,7 +303,7 @@ files: required: false description: "Descent 1 music as Ogg Vorbis files, Roland SC-55 rendering" note: "Mounted at startup when present, and its files extend or replace the game content." - source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4362" + source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4364" - name: "editor.dxa" path: "d1x-rebirth/editor.dxa" @@ -312,7 +312,7 @@ files: required: false description: "Level editor data for the Descent 1 build" note: "Mounted only by a build with the editor enabled, when the editor opens." - source_ref: "similar/editor/med.cpp:367-370, SConstruct:4362" + source_ref: "similar/editor/med.cpp:367-370, SConstruct:4364" - name: "d2xr-briefings-ger.dxa" path: "d2x-rebirth/d2xr-briefings-ger.dxa" @@ -321,7 +321,7 @@ files: required: false description: "German briefing texts for Descent 2" note: "Mounted at startup when present, and its files extend or replace the game content." - source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4362" + source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4364" - name: "d2xr-opl3-music.dxa" path: "d2x-rebirth/d2xr-opl3-music.dxa" @@ -330,7 +330,7 @@ files: required: false description: "Descent 2 music as Ogg Vorbis files, OPL3 rendering" note: "Mounted at startup when present, and its files extend or replace the game content." - source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4362" + source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4364" - name: "d2xr-sc55-music.dxa" installed_on: [retropie] @@ -340,7 +340,7 @@ files: required: false description: "Descent 2 music as Ogg Vorbis files, Roland SC-55 rendering" note: "Mounted at startup when present, and its files extend or replace the game content." - source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4362" + source_ref: "common/misc/physfsx.cpp:23, 377-394, similar/main/inferno.cpp:603, SConstruct:4364" - name: "editor.dxa" path: "d2x-rebirth/editor.dxa" @@ -349,4 +349,4 @@ files: required: false description: "Level editor data for the Descent 2 build" note: "Mounted only by a build with the editor enabled, when the editor opens." - source_ref: "similar/editor/med.cpp:367-370, SConstruct:4362" + source_ref: "similar/editor/med.cpp:367-370, SConstruct:4364" diff --git a/emulators/easyrpg.yml b/emulators/easyrpg.yml index 9a4231f8..277f4a96 100644 --- a/emulators/easyrpg.yml +++ b/emulators/easyrpg.yml @@ -5,7 +5,7 @@ source: "https://github.com/libretro/easyrpg-libretro" upstream: "https://github.com/EasyRPG/Player" profiled_date: "2026-03-23" source_commit: "a3fbb7c24fd5a39fd95388d09135256a6b19f1e4" -upstream_commit: "8acd2e17c6a8a0a75cb7ce95625c6bdc89aebe1a" +upstream_commit: "096c004def987f3545198304b1b7a8352f284a50" core_version: "0.8.1.0" display_name: "RPG Maker 2000/2003 (EasyRPG)" cores: diff --git a/emulators/eternal.yml b/emulators/eternal.yml index 5ed54916..774d61ee 100644 --- a/emulators/eternal.yml +++ b/emulators/eternal.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://codeberg.org/iyzsong/eternal-libretro" upstream: "https://github.com/adriancable/eternal" source_commit: "13adf143aea822ebc1ee23722a80e93a7979e4c9" -upstream_commit: "17c8ab87de7f308f48f4990ed62c48b86173797d" +upstream_commit: "23d4d6c7c9f930fa72568ce795c9147af09d56ee" profiled_date: "2026-09-17" core_version: "0.0" display_name: "Eternal Computer" diff --git a/emulators/fbneo_cps12.yml b/emulators/fbneo_cps12.yml index a74a5cb2..6f6efbe2 100644 --- a/emulators/fbneo_cps12.yml +++ b/emulators/fbneo_cps12.yml @@ -4,7 +4,8 @@ core_classification: official_port source: "https://github.com/libretro/FBNeo" upstream: "https://github.com/finalburnneo/FBNeo" profiled_date: "2026-03-23" -source_commit: "63c4190785cadd5ff84483399375871ed6e98754" +source_commit: "2b0c1c0679df115cada7df9199ea2762222e58fd" +upstream_commit: "c89fdfe3abe118dc4a006f3d887094f0d83360f0" core_version: "v1.0.0.2" display_name: "Arcade (FinalBurn Neo) (CPS-1 / CPS-2)" cores: diff --git a/emulators/fceumm.yml b/emulators/fceumm.yml index 758f2d25..b210da2a 100644 --- a/emulators/fceumm.yml +++ b/emulators/fceumm.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/libretro-fceumm" upstream: "https://sourceforge.net/projects/fceumm/" profiled_date: "2026-03-23" -source_commit: "7a542dab1e87679921962a9f056186eca425c0c2" +source_commit: "ac0d00a7fc01166f84c7bac01d1084ebfd2b865e" core_version: "SVN" display_name: "Nintendo - NES / Famicom (FCEUmm)" cores: diff --git a/emulators/flycast.yml b/emulators/flycast.yml index 0417b266..b2507a1c 100644 --- a/emulators/flycast.yml +++ b/emulators/flycast.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/flyinghead/flycast" logo: "https://raw.githubusercontent.com/flyinghead/flycast/master/shell/linux/flycast.png" profiled_date: "2026-10-21" -source_commit: "34ad8c8262c82db237a8b9cee0d8046d9cdd6f78" +source_commit: "6d81b998169b916ad7d7d6f403f7dc2c18e2aea5" core_version: "Git" display_name: "Sega - Dreamcast/Naomi (Flycast)" cores: @@ -41,7 +41,7 @@ notes: | System SP) load MAME-format BIOS archives. The libretro port appends "dc/" to the system directory - (shell/libretro/libretro.cpp:2249-2250). All files below are relative to + (shell/libretro/libretro.cpp:2252-2253). All files below are relative to system_dir/dc/. The standalone emulator looks for each file in the BIOS paths the user diff --git a/emulators/freej2me.yml b/emulators/freej2me.yml index 7ffa0868..9300db0b 100644 --- a/emulators/freej2me.yml +++ b/emulators/freej2me.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/hex007/freej2me" upstream: "https://github.com/hex007/freej2me" profiled_date: "2026-03-23" -source_commit: "fae9304b85ac1c61d0117f6c8efe528612388278" +source_commit: "eb4ac87e9a0b212ba701691eb67ee4892b2b1173" core_version: "GIT" display_name: "Mobile - J2ME (FreeJ2ME)" cores: @@ -26,5 +26,5 @@ files: description: "FreeJ2ME libretro Java application" required: true installed_on: [retrobat, rocknix] - source_ref: "src/libretro/freej2me_libretro.c:483-486 (GET_SYSTEM_DIRECTORY + fill_pathname_join + java -jar)" + source_ref: "src/libretro/freej2me_libretro.c:487-490 (GET_SYSTEM_DIRECTORY + fill_pathname_join + java -jar)" note: "Not a BIOS dump. Java emulator loaded by the native core at startup via execvp('java', '-jar', path). Built from source via 'ant'. Must be in the system directory root. ROCKNIX builds the core and the jar from freej2me-plus 1.52, which keeps the freej2me-lr.jar name, and copies the jar into its BIOS folder before each launch when it is missing." diff --git a/emulators/freej2me_plus.yml b/emulators/freej2me_plus.yml index cbdf4fa0..081bb077 100644 --- a/emulators/freej2me_plus.yml +++ b/emulators/freej2me_plus.yml @@ -4,8 +4,8 @@ core_classification: enhanced_fork source: "https://github.com/TASEmulators/freej2me-plus" upstream: "https://github.com/hex007/freej2me" profiled_date: "2026-10-04" -source_commit: "68069d79aa6ed106eb788a640a8294a0db55fdcd" -upstream_commit: "8b9bc8a19baf26e3d92f88934a64a32f1cbc2795" +source_commit: "3933e75ef927a95eab9f5e065f0b76dabf336069" +upstream_commit: "eb4ac87e9a0b212ba701691eb67ee4892b2b1173" core_version: "1.53" display_name: "Mobile - J2ME (FreeJ2ME-Plus)" cores: @@ -26,10 +26,10 @@ notes: | the host PATH, and the start failure message asks for Java 6 or newer. The jar is built by ant from build.xml, which writes the libretro variant as freej2me_plus-lr.jar. - ref: src/libretro/freej2me_libretro.c:38-45, - src/libretro/freej2me_libretro.c:859-888, - src/libretro/freej2me_libretro.c:1556-1582, - src/libretro/freej2me_libretro.c:1679-1688, + ref: src/libretro/freej2me_libretro.c:39-46, + src/libretro/freej2me_libretro.c:875-904, + src/libretro/freej2me_libretro.c:1567-1593, + src/libretro/freej2me_libretro.c:1690-1699, src/libretro/freej2me_libretro.h:80, build.xml:86-99 @@ -37,8 +37,8 @@ notes: | SYSTEM_NOT_FOUND message and returns from retro_init before any process is created, so nothing loads. The message text still names freej2me-lr.jar, the file the original core opens. This core opens freej2me_plus-lr.jar. - ref: src/libretro/freej2me_libretro.c:339-346, - src/libretro/freej2me_libretro.c:866-872, + ref: src/libretro/freej2me_libretro.c:340-347, + src/libretro/freej2me_libretro.c:867-873, src/libretro/freej2me_libretro.h:73-79 Every relative path the jar opens resolves against the system directory, @@ -54,7 +54,7 @@ notes: | src/org/recompile/freej2me/Config.java:186-206, src/org/recompile/mobile/Mobile.java:121-123, src/org/recompile/mobile/Mobile.java:135, - src/libretro/freej2me_libretro.c:926-934, + src/libretro/freej2me_libretro.c:937-945, src/org/recompile/freej2me/Libretro.java:201-205, src/javax/microedition/rms/RecordStore.java:111 @@ -66,13 +66,13 @@ notes: | freej2me_system/customFont/. Off, the AWT SansSerif, Monospaced and Dialog faces are used. Both directories are created with a placeholder file when missing, and neither file has a fixed name. - ref: src/libretro/freej2me_libretro.c:464-469, - src/libretro/freej2me_libretro.c:480-485, + ref: src/libretro/freej2me_libretro.c:465-470, + src/libretro/freej2me_libretro.c:481-486, src/org/recompile/freej2me/Libretro.java:240, src/org/recompile/freej2me/Libretro.java:254, src/org/recompile/mobile/Mobile.java:1056-1064, src/javax/microedition/media/Manager.java:55, - src/javax/microedition/media/Manager.java:328-351, + src/javax/microedition/media/Manager.java:329-352, src/org/recompile/mobile/PlatformFont.java:63, src/org/recompile/mobile/PlatformFont.java:133-154 @@ -84,7 +84,7 @@ files: validation: [existence] description: "FreeJ2ME-Plus libretro Java application" note: "Java program the native core launches with java -jar from the system directory root. Built by ant from build.xml at the pinned revision. The code reads no size and no hash." - source_ref: "source src/libretro/freej2me_libretro.c:38-45 (freej2meapp), source src/libretro/freej2me_libretro.c:859-875 (GET_SYSTEM_DIRECTORY, freej2me_present, SYSTEM_NOT_FOUND_MSG), source src/libretro/freej2me_libretro.c:339-346 (access F_OK), upstream src/libretro/freej2me_libretro.c:877-888 (java -jar argv), source build.xml:86-99 (destfile)" + source_ref: "source src/libretro/freej2me_libretro.c:39-46 (freej2meapp), source src/libretro/freej2me_libretro.c:860-876 (GET_SYSTEM_DIRECTORY, freej2me_present, SYSTEM_NOT_FOUND_MSG), source src/libretro/freej2me_libretro.c:340-347 (access F_OK), upstream src/libretro/freej2me_libretro.c:893-904 (java -jar argv), source build.xml:86-99 (destfile)" - name: ".sf2" system: j2me @@ -94,7 +94,7 @@ files: category: game_data description: "MIDI soundbank for J2ME audio" note: "First .sf2 or .gm in the directory listing, loaded through MidiSystem.getSoundbank when the freej2me_midifont option is on. A rejected file is logged and the JVM default soundbank stays." - source_ref: "source src/javax/microedition/media/Manager.java:55, source src/javax/microedition/media/Manager.java:328-351, source src/org/recompile/mobile/Mobile.java:1056-1058" + source_ref: "source src/javax/microedition/media/Manager.java:55, source src/javax/microedition/media/Manager.java:329-352, source src/org/recompile/mobile/Mobile.java:1056-1058" - name: ".ttf" system: j2me diff --git a/emulators/frotz.yml b/emulators/frotz.yml index fc5db1ab..f9b6cdf7 100644 --- a/emulators/frotz.yml +++ b/emulators/frotz.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://gitlab.com/DavidGriffith/frotz" upstream: "https://gitlab.com/DavidGriffith/frotz" profiled_date: "2026-10-17" -source_commit: "2f17d64f23f3d6e68cd676d35c9d1789e17bc9fc" +source_commit: "042d7bcadc1e2a8090cf737c841d8b7fc14b6eff" core_version: "2.55pre" display_name: "Infocom Z-Machine (SDL Frotz)" cores: @@ -19,15 +19,15 @@ notes: | sf_initfonts() builds the text and fixed-width fonts from the bitmap compiled into sf_deffont.c (ref: src/sdl/sf_deffont.c:22) and the - character graphics font from SF_font3 (ref: src/sdl/sf_fonts.c:979-989). + character graphics font from SF_font3 (ref: src/sdl/sf_fonts.c:990-1000). TrueType fonts are loaded only when the config file names them under - [Fonts] (ref: src/sdl/sf_resource.c:402-413), and a font that fails to - load is reported and skipped (ref: src/sdl/sf_fonts.c:959-973). No + [Fonts] (ref: src/sdl/sf_resource.c:401-412), and a font that fails to + load is reported and skipped (ref: src/sdl/sf_fonts.c:970-984). No default font path exists. Pictures and sounds come from the story's Blorb data or from loose resource files under the [Resources] Dir setting, "./" by default - (ref: src/sdl/sf_resource.c:75, 415). Both belong to the game. + (ref: src/sdl/sf_resource.c:74, 415). Both belong to the game. exclusion_note: "fonts compiled into the binary, external TrueType fonts only when the user config names them" files: [] diff --git a/emulators/gam4980.yml b/emulators/gam4980.yml index 2a4cada6..a0ced2aa 100644 --- a/emulators/gam4980.yml +++ b/emulators/gam4980.yml @@ -5,6 +5,7 @@ source: "https://github.com/ThisBoringWorld/gam4980" upstream: "https://codeberg.org/iyzsong/gam4980" profiled_date: "2026-03-23" source_commit: "eeaa531b55e7127ab4b5e0bdc5ceba686df59c6a" +upstream_commit: "32c531d3e7159081afd8dee72e8266153821095d" core_version: "0.2" display_name: "GAM4980" cores: diff --git a/emulators/gambatte.yml b/emulators/gambatte.yml index bc144cc4..e1ff8f20 100644 --- a/emulators/gambatte.yml +++ b/emulators/gambatte.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/gambatte-libretro" upstream: "https://github.com/sinamas/gambatte" profiled_date: "2026-03-23" -source_commit: "d9d6cd06382d1ced30de34d56d3609452323dab1" +source_commit: "7809bb68ee96c3e6c74e9d9c4c8bb09aa7c6801d" core_version: "v0.5.0" display_name: "Nintendo - Game Boy / Color (Gambatte)" cores: diff --git a/emulators/gametank.yml b/emulators/gametank.yml index 97799476..7479a732 100644 --- a/emulators/gametank.yml +++ b/emulators/gametank.yml @@ -5,7 +5,7 @@ source: "https://github.com/Sundownersport/gametank-libretro" upstream: "https://github.com/clydeshaffer/GameTankEmulator" profiled_date: "2026-10-20" source_commit: "1a6f2608ae302d613ac17ae8584c7239ae47044b" -upstream_commit: "9896544460d5bb7dd89c2d2bc0f5c97a6f31d2e0" +upstream_commit: "be32deab74b7778647273fa5616d1ea92e3e1267" core_version: "1.0.1" display_name: "Clydeware - GameTank (GameTank)" cores: diff --git a/emulators/gba-emu.yml b/emulators/gba-emu.yml index 996f7659..dda29ecd 100644 --- a/emulators/gba-emu.yml +++ b/emulators/gba-emu.yml @@ -5,7 +5,7 @@ source: "https://github.com/Rakashazi/emu-ex-plus-alpha" upstream: "https://github.com/visualboyadvance-m/visualboyadvance-m" profiled_date: "2026-08-11" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" -upstream_commit: "fbd043dea0920a2356c44e1458a160455403c640" +upstream_commit: "8124d84a655e5261bee5eeb9f43c18630ec58a61" core_version: "1.5.85" display_name: "Nintendo - Game Boy Advance (GBA.emu)" mode: standalone @@ -37,7 +37,7 @@ notes: | (GBA.emu/src/core/gba/gba.cpp:3758-3778). Nothing else about the file is examined: CPUIsGBABios, the extension test upstream passes to utilLoad, has no caller here (GBA.emu/src/core/gba/gba.cpp:1655-1675, upstream - src/core/gba/gba.cpp:4975-4986). + src/core/gba/gba.cpp:5165-5176). Without a file the app runs on the built-in myROM stub copied into the BIOS area (GBA.emu/src/core/gba/gba.cpp:131-305,3776-3778) and on the service call diff --git a/emulators/gearboy.yml b/emulators/gearboy.yml index 82dad098..5b36121d 100644 --- a/emulators/gearboy.yml +++ b/emulators/gearboy.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/drhelius/Gearboy" upstream: "https://github.com/drhelius/Gearboy" profiled_date: "2026-03-23" -source_commit: "214b84ed64cefc41071197cd52863deb0658a64d" +source_commit: "8231b17f9c9007732977cd4b286eee80957e3414" core_version: "3.4.1" display_name: "Nintendo - Game Boy / Color (Gearboy)" cores: @@ -27,7 +27,7 @@ files: required: false hle_fallback: true validation: [size] - source_ref: "platforms/libretro/libretro.cpp:964, platforms/libretro/libretro.cpp:408, platforms/libretro/libretro.cpp:408" + source_ref: "platforms/libretro/libretro.cpp:1043, platforms/libretro/libretro.cpp:474, platforms/libretro/libretro.cpp:474" - name: cgb_boot.bin description: Game Boy Color bootrom @@ -35,4 +35,4 @@ files: required: false hle_fallback: true validation: [size] - source_ref: "platforms/libretro/libretro.cpp:965, platforms/libretro/libretro.cpp:409, platforms/libretro/libretro.cpp:409" + source_ref: "platforms/libretro/libretro.cpp:1044, platforms/libretro/libretro.cpp:475, platforms/libretro/libretro.cpp:475" diff --git a/emulators/geargrafx.yml b/emulators/geargrafx.yml index 717a372f..a5425a43 100644 --- a/emulators/geargrafx.yml +++ b/emulators/geargrafx.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/drhelius/Geargrafx" upstream: "https://github.com/drhelius/Geargrafx" profiled_date: "2026-10-04" -source_commit: "d0307bfbe4aebb67e1969502b6ccec752fd04b1d" +source_commit: "57c257dda25f441fff3c63a63bbc4ba7cbb713e3" core_version: "1.8.1" display_name: "NEC - PC Engine / SuperGrafx / CD (Geargrafx)" cores: @@ -20,63 +20,63 @@ notes: | Ignacio Sanchez (drhelius). HuCard games run without any external file. CD-ROM content (cue, chd, mmi) needs a System Card image from the frontend - system directory. load_bios() in platforms/libretro/libretro.cpp:709-750 + system directory. load_bios() in platforms/libretro/libretro.cpp:721-762 picks the file name from the core option geargrafx_cdrom_bios - (platforms/libretro/libretro.cpp:1568-1591): System Card 1 loads + (platforms/libretro/libretro.cpp:1605-1628): System Card 1 loads syscard1.pce, System Card 2 loads syscard2.pce, System Card 3 (the default) and Force Game Express load syscard3.pce. The older values Auto and Game Express are still accepted and map to the same. The path is - "{system_directory}/{name}" (platforms/libretro/libretro.cpp:736). When the + "{system_directory}/{name}" (platforms/libretro/libretro.cpp:748). When the card is missing the core posts "CD-ROM BIOS not found" and continues - (platforms/libretro/libretro.cpp:737-746). gexpress.pce is then always - attempted from the same directory (platforms/libretro/libretro.cpp:748-749). + (platforms/libretro/libretro.cpp:749-758). gexpress.pce is then always + attempted from the same directory (platforms/libretro/libretro.cpp:760-761). load_bios() runs from retro_load_game() for CD content only - (platforms/libretro/libretro.cpp:518-519) and again on retro_reset() when a - CD is loaded (platforms/libretro/libretro.cpp:355-356). With the libretro + (platforms/libretro/libretro.cpp:520-521) and again on retro_reset() when a + CD is loaded (platforms/libretro/libretro.cpp:357-358). With the libretro VFS the file goes through load_bios_file() into LoadBiosFromBuffer(), - otherwise through Media::LoadBios() (platforms/libretro/libretro.cpp:672-707, - src/media.cpp:448-491). + otherwise through Media::LoadBios() (platforms/libretro/libretro.cpp:684-719, + src/media.cpp:457-500). - Media::LoadBiosData() (src/media.cpp:662-705) strips a 512-byte header when + Media::LoadBiosData() (src/media.cpp:671-714) strips a 512-byte header when the size is the expected size plus 512, then rejects any image whose size is not GG_BIOS_SYSCARD_SIZE (0x40000) or GG_BIOS_GAME_EXPRESS_SIZE (0x8000) - (src/defines.h:53-54). CRC32 is computed over the accepted image. - GatherBIOSInfoFromDB() (src/media.cpp:1027-1061) looks the CRC up in + (src/defines.h:51-52). CRC32 is computed over the accepted image. + GatherBIOSInfoFromDB() (src/media.cpp:1052-1086) looks the CRC up in k_game_database entries flagged GG_GAMEDB_BIOS_SYSCARD or GG_GAMEDB_BIOS_GAME_EXPRESS (src/game_db.h:48-56). An unknown CRC marks the image "Unknown" and invalid but it is still used. For CD content the ROM banks map onto the System Card buffer, or onto the Game Express buffer when the disc is a Game Express title - (src/media.cpp:1094-1103). A Game Express disc is detected by its CRC in - game_db.h (GG_GAMEDB_GAME_EXPRESS, src/media.cpp:993-997), named by the - card field of an MMI image (src/media.cpp:821-823) or forced by the option - (src/media.cpp:835-839). With no card loaded the buffer is zeros and the CD + (src/media.cpp:1119-1128). A Game Express disc is detected by its CRC in + game_db.h (GG_GAMEDB_GAME_EXPRESS, src/media.cpp:1018-1022), named by the + card field of an MMI image (src/media.cpp:846-848) or forced by the option + (src/media.cpp:860-864). With no card loaded the buffer is zeros and the CD does not boot. Arcade Card titles are also detected from game_db.h and run on the selected System Card. MMI content is a LaserActive LD-ROM2 image. retro_load_game() also calls - load_pac_bios() for it (platforms/libretro/libretro.cpp:521-522), which + load_pac_bios() for it (platforms/libretro/libretro.cpp:523-524), which reads the NEC PAC firmware from the system directory according to the core - option geargrafx_laseractive_region (platforms/libretro/libretro.cpp:1603-1614): + option geargrafx_laseractive_region (platforms/libretro/libretro.cpp:1640-1651): Japan loads pac-n1.bin and falls back to pce-lp1.bin, US loads pac-n10.bin, Auto (the default) loads both regions - (platforms/libretro/libretro.cpp:775-797). Media::LoadPacBiosData() - (src/media.cpp:570-632) accepts 0x80000 bytes (GG_BIOS_LASERACTIVE_SIZE, - src/defines.h:55), with or without a 512-byte header, and compares the + (platforms/libretro/libretro.cpp:787-809). Media::LoadPacBiosData() + (src/media.cpp:579-641) accepts 0x80000 bytes (GG_BIOS_LASERACTIVE_SIZE, + src/defines.h:53), with or without a 512-byte header, and compares the CRC32 with the values hardcoded for the region. An unknown CRC is logged - and the image is still used. SelectPacBios() (src/media.cpp:634-660) follows + and the image is still used. SelectPacBios() (src/media.cpp:643-669) follows the option, then the regionCode of the MMI image, then whichever region is loaded. An MMI image that names no card maps the PAC firmware - (src/media.cpp:1094-1103), and one that names a card uses the System Card or + (src/media.cpp:1119-1128), and one that names a card uses the System Card or Game Express buffer. retro_load_game() fails when the firmware the MMI - image needs is not loaded (platforms/libretro/libretro.cpp:534-549). + image needs is not loaded (platforms/libretro/libretro.cpp:546-561). Backup RAM is exposed through RETRO_MEMORY_SAVE_RAM - (platforms/libretro/libretro.cpp:632-640) and saved by the frontend. A + (platforms/libretro/libretro.cpp:644-652) and saved by the frontend. A connected Memory Base 128 is persisted by the core itself as geargrafx_mb128.sav in the frontend save directory - (platforms/libretro/libretro.cpp:799-879). Both are state the core writes, + (platforms/libretro/libretro.cpp:811-891). Both are state the core writes, not files a user obtains. files: @@ -87,7 +87,7 @@ files: required: true crc32: ["6d9a73ef", "0ecea1f3", "2b5b75fe"] validation: [size] - source_ref: "platforms/libretro/libretro.cpp:714, platforms/libretro/libretro.cpp:726-731, platforms/libretro/libretro.cpp:736-746, src/media.cpp:662-705, src/defines.h:53, src/game_db.h:51-52, src/game_db.h:54" + source_ref: "platforms/libretro/libretro.cpp:726, platforms/libretro/libretro.cpp:738-743, platforms/libretro/libretro.cpp:748-758, src/media.cpp:671-714, src/defines.h:51, src/game_db.h:51-52, src/game_db.h:54" note: > Loaded for the default option value System Card 3 and for Force Game Express. game_db.h accepts three images under this name: Japan @@ -102,7 +102,7 @@ files: required: false crc32: ["52520bc6", "283b74e0", "ff2a5ec3"] validation: [size] - source_ref: "platforms/libretro/libretro.cpp:713, platforms/libretro/libretro.cpp:723-724, src/media.cpp:662-705, src/defines.h:53, src/game_db.h:49-50, src/game_db.h:53" + source_ref: "platforms/libretro/libretro.cpp:725, platforms/libretro/libretro.cpp:735-736, src/media.cpp:671-714, src/defines.h:51, src/game_db.h:49-50, src/game_db.h:53" note: > Loaded when geargrafx_cdrom_bios is System Card 2. game_db.h accepts v2.0 Japan (CRC32 52520BC6), v2.1 Japan (CRC32 283B74E0) and USA @@ -115,7 +115,7 @@ files: crc32: "3F9F95A4" required: false validation: [size] - source_ref: "platforms/libretro/libretro.cpp:712, platforms/libretro/libretro.cpp:720-721, src/media.cpp:662-705, src/defines.h:53, src/game_db.h:48" + source_ref: "platforms/libretro/libretro.cpp:724, platforms/libretro/libretro.cpp:732-733, src/media.cpp:671-714, src/defines.h:51, src/game_db.h:48" note: "Loaded when geargrafx_cdrom_bios is System Card 1." - name: "gexpress.pce" @@ -125,7 +125,7 @@ files: required: false crc32: ["51a12d90", "16aaf05a"] validation: [size] - source_ref: "platforms/libretro/libretro.cpp:715, platforms/libretro/libretro.cpp:748-749, src/media.cpp:662-705, src/media.cpp:821-823, src/media.cpp:835-839, src/media.cpp:993-997, src/defines.h:54, src/game_db.h:55-56" + source_ref: "platforms/libretro/libretro.cpp:727, platforms/libretro/libretro.cpp:760-761, src/media.cpp:671-714, src/media.cpp:846-848, src/media.cpp:860-864, src/media.cpp:1018-1022, src/defines.h:52, src/game_db.h:55-56" note: > Always attempted after the System Card, used for discs flagged GG_GAMEDB_GAME_EXPRESS in game_db.h, for MMI images whose card is @@ -143,7 +143,7 @@ files: region: [japan] required: true validation: [size] - source_ref: "platforms/libretro/libretro.cpp:507, platforms/libretro/libretro.cpp:521-522, platforms/libretro/libretro.cpp:780-784, platforms/libretro/libretro.cpp:534-549, src/media.cpp:570-632, src/defines.h:55" + source_ref: "platforms/libretro/libretro.cpp:509, platforms/libretro/libretro.cpp:523-524, platforms/libretro/libretro.cpp:792-796, platforms/libretro/libretro.cpp:546-561, src/media.cpp:579-641, src/defines.h:53" note: > Japanese PAC firmware, read for MMI content when geargrafx_laseractive_region is Auto or Japan. The Japanese slot @@ -157,7 +157,7 @@ files: region: [japan] required: false validation: [size] - source_ref: "platforms/libretro/libretro.cpp:785-789, src/media.cpp:570-632, src/defines.h:55" + source_ref: "platforms/libretro/libretro.cpp:797-801, src/media.cpp:579-641, src/defines.h:53" note: "Read only when pac-n1.bin did not load." - name: "pac-n10.bin" @@ -168,7 +168,7 @@ files: region: [north-america] required: true validation: [size] - source_ref: "platforms/libretro/libretro.cpp:507, platforms/libretro/libretro.cpp:521-522, platforms/libretro/libretro.cpp:792-796, platforms/libretro/libretro.cpp:534-549, src/media.cpp:570-632, src/defines.h:55" + source_ref: "platforms/libretro/libretro.cpp:509, platforms/libretro/libretro.cpp:523-524, platforms/libretro/libretro.cpp:804-808, platforms/libretro/libretro.cpp:546-561, src/media.cpp:579-641, src/defines.h:53" note: > US PAC firmware, read for MMI content when geargrafx_laseractive_region is Auto or US. diff --git a/emulators/gearlynx.yml b/emulators/gearlynx.yml index c84c8a2a..46be319d 100644 --- a/emulators/gearlynx.yml +++ b/emulators/gearlynx.yml @@ -3,7 +3,7 @@ type: libretro core_classification: official_port source: "https://github.com/drhelius/Gearlynx" profiled_date: "2026-10-04" -source_commit: "6a939afbca387ca615d96433928866e9d16ba2de" +source_commit: "675201c62f77b6683d7943cac2b69a23eb2ae573" core_version: "1.2.33" display_name: "Atari - Lynx (GearLynx)" cores: [gearlynx] @@ -18,10 +18,10 @@ notes: | Path is built as: system_directory + "/lynxboot.img", no subdirectory. With the libretro VFS the file is read by load_bios_file() and handed to LoadBiosFromBuffer(), otherwise Media::LoadBios() opens it - (platforms/libretro/libretro.cpp:130-168, src/media.cpp:578-620). + (platforms/libretro/libretro.cpp:130-168, src/media.cpp:583-625). - LoadBiosData in src/media.cpp:633-683 takes exactly 512 bytes - (GLYNX_BIOS_SIZE = 0x200, src/defines.h:52). If the file size is not + LoadBiosData in src/media.cpp:638-688 takes exactly 512 bytes + (GLYNX_BIOS_SIZE = 0x200, src/defines.h:50). If the file size is not 0x200, the load is rejected with BIOS_LOAD_INVALID_SIZE. After loading, bytes at offset 0x1F8 and 0x1F9 are patched (RAM/MAPCTL registers), then CRC32 is computed and compared against GLYNX_DB_BIOS_CRC (0x0D973C9D, @@ -29,7 +29,7 @@ notes: | is still marked as loaded (m_is_bios_loaded = true). No HLE fallback. If the BIOS is not loaded (IsBiosLoaded() returns - false), RunToVBlank in src/gearlynx_core.cpp:216-221 renders a static + false), RunToVBlank in src/gearlynx_core.cpp:223-228 renders a static "no bios" image and returns false, refusing to emulate. The BIOS is required for any ROM to run. Homebrew (.o, BS93 format) bypasses the normal boot sequence via PrepareForHomebrew() but still requires the @@ -44,5 +44,5 @@ files: size: 512 crc32: "0d973c9d" validation: [size, crc32] - source_ref: "platforms/libretro/libretro.cpp:170-212 (load_bootroms), src/media.cpp:633-683 (LoadBiosData), src/defines.h:52 (GLYNX_BIOS_SIZE=0x200), src/game_db.h:47 (GLYNX_DB_BIOS_CRC=0x0D973C9D), src/gearlynx_core.cpp:216-221 (no-bios guard)" + source_ref: "platforms/libretro/libretro.cpp:170-212 (load_bootroms), src/media.cpp:638-688 (LoadBiosData), src/defines.h:50 (GLYNX_BIOS_SIZE=0x200), src/game_db.h:47 (GLYNX_DB_BIOS_CRC=0x0D973C9D), src/gearlynx_core.cpp:223-228 (no-bios guard)" note: "512-byte boot ROM validated by CRC32 after load. Invalid CRC logs a warning but still works. Missing or wrong-size file blocks emulation entirely (no HLE fallback)." diff --git a/emulators/gearsystem.yml b/emulators/gearsystem.yml index 7ec19122..fc791a2d 100644 --- a/emulators/gearsystem.yml +++ b/emulators/gearsystem.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/drhelius/Gearsystem" upstream: "https://github.com/drhelius/Gearsystem" profiled_date: "2026-03-23" -source_commit: "3c86cbefe71cb7b18df54d0bc3aeedf552081da5" +source_commit: "e18e795ad3bb421a81e416c95248eae885a5e3ab" core_version: "3.2.0" display_name: "Sega - MS/GG/SG-1000 (Gearsystem)" cores: @@ -44,7 +44,7 @@ files: platform_details: mastersystem: bios_filename: "bios.sms" - source_ref: "src/Memory.cpp:267-272" + source_ref: "src/Memory.cpp:238-243" note: | Boot ROM loaded via LoadBootromSMS() -> LoadBootroom(path, false). Raw binary read, stored in m_pBootromSMS. Bank count computed as @@ -52,7 +52,7 @@ platform_details: gamegear: bios_filename: "bios.gg" - source_ref: "src/Memory.cpp:274-279" + source_ref: "src/Memory.cpp:245-250" note: | Boot ROM loaded via LoadBootromGG() -> LoadBootroom(path, true). Raw binary read, stored in m_pBootromGG. Same bank computation. @@ -61,5 +61,5 @@ platform_details: sg1000: bios_filename: null note: | - No BIOS support. src/Memory.cpp:381-384 returns false from IsBootromEnabled() + No BIOS support. src/Memory.cpp:352-355 returns false from IsBootromEnabled() when IsSG1000() or IsGameGearInSMSMode() is true. diff --git a/emulators/genesis_plus_gx.yml b/emulators/genesis_plus_gx.yml index e6d9561b..2582044d 100644 --- a/emulators/genesis_plus_gx.yml +++ b/emulators/genesis_plus_gx.yml @@ -4,7 +4,8 @@ core_classification: community_fork source: "https://github.com/libretro/Genesis-Plus-GX" upstream: "https://github.com/ekeeke/Genesis-Plus-GX" profiled_date: "2026-03-23" -source_commit: "58c341487e5bfcf979ea68413c7987633adb0c56" +source_commit: "aa74d79634cd230f65cce4180e92688e53883d2f" +upstream_commit: "49c584764893b0505ac7f768a754f97330fa4392" core_version: "v1.7.4" display_name: "Sega - MS/GG/MD/CD (Genesis Plus GX)" cores: diff --git a/emulators/genesis_plus_gx_wide.yml b/emulators/genesis_plus_gx_wide.yml index ae9d229b..43db7ad7 100644 --- a/emulators/genesis_plus_gx_wide.yml +++ b/emulators/genesis_plus_gx_wide.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/Genesis-Plus-GX-Wide" upstream: "https://github.com/ekeeke/Genesis-Plus-GX" profiled_date: "2026-03-23" source_commit: "b7ad005431f5f0b55e559f6d598d1ed2479bf13b" +upstream_commit: "49c584764893b0505ac7f768a754f97330fa4392" core_version: "v1.7.4" display_name: "Sega - MS/GG/MD/CD (Genesis Plus GX Wide)" cores: diff --git a/emulators/geolith.yml b/emulators/geolith.yml index 984c0ce9..a5ff28bd 100644 --- a/emulators/geolith.yml +++ b/emulators/geolith.yml @@ -4,8 +4,8 @@ core_classification: official_port source: "https://github.com/libretro/geolith-libretro" upstream: "https://gitlab.com/jgemu/geolith" profiled_date: "2026-08-07" -source_commit: "194024931935eff2092e36fc4f8e53e62ed11097" -upstream_commit: "1bb5a84fbd87dc1f1c510cb3ff81332573e22452" +source_commit: "2dc88e3fa72ff404213a65d6eb5bb33baa687f73" +upstream_commit: "05ddef568212e7225ceec22f3ecb20b5a9b640e6" core_version: "0.4.1" display_name: "SNK - Neo Geo AES/MVS (Geolith)" cores: diff --git a/emulators/hakux.yml b/emulators/hakux.yml index 9b56a189..94cbe61f 100644 --- a/emulators/hakux.yml +++ b/emulators/hakux.yml @@ -6,7 +6,7 @@ upstream: "https://github.com/xemu-project/xemu" author: "rfandango" profiled_date: "2026-08-11" source_commit: "e64e336d27dc8a56b67f441ec36bfddc1379cb6e" -upstream_commit: "26fcbe54f17e496bdf530dad9f237e74e2f943fc" +upstream_commit: "25e1ee2fd59a451f2ab57e825b4f8a5414220c8b" core_version: "0.3.1" display_name: "Microsoft - Xbox (hakuX)" cores: diff --git a/emulators/hatari2014.yml b/emulators/hatari2014.yml index 5430986b..9e94a5f0 100644 --- a/emulators/hatari2014.yml +++ b/emulators/hatari2014.yml @@ -5,7 +5,7 @@ source: "https://github.com/libretro/hatari" source_branch: hitari2014-mercurial upstream: "https://github.com/hatari/hatari" profiled_date: "2026-09-03" -source_commit: "3919d702b7013e8d05222345066747d4f8559c3f" +source_commit: "ab55c3ed0e620c91e7f059a6d3fbef7acf9bfca8" upstream_commit: "c1a5c88bc06e56778b6b7f8483becfd58a7da2b4" core_version: "1.8.0" display_name: "Atari - ST/STE/TT/Falcon (Hatari 2014)" @@ -24,29 +24,29 @@ notes: | carries the Mercurial history up to the 1.8.0 release commit plus the port commits started in November 2014. It builds as hatari2014 (Makefile.libretro:22, .gitlab-ci-libretro.yml:12) and reports - library_name Hatari2014, version 1.8 (libretro/libretro.c:1466-1468). + library_name Hatari2014, version 1.8 (libretro/libretro.c:1476-1478). No hatari2014 .info exists in libretro-core-info yet. Directory layout under the libretro system directory: the Hatari working - and data directories are /hatari (src/paths.c:323-324, or the - system directory itself on Vita and PS3, src/paths.c:313-319), the + and data directories are /hatari (src/paths.c:324-325, or the + system directory itself on Vita and PS3, src/paths.c:314-320), the default TOS is /tos.img, extra TOS images go in /hatari/tos, BOOT.ST in /hatari, floppy.raw and the global hatari.cfg in and /hatari. The Hatari home directory, which holds the user hatari.cfg and hatari.nvram, is - $HOME/.hatari on desktop builds (src/paths.c:40, src/paths.c:283-284), - /hatari on Wii U and Vita (src/paths.c:209-212, - src/paths.c:223-225), the system directory itself on PS3 - (src/paths.c:237-239). + $HOME/.hatari on desktop builds (src/paths.c:41, src/paths.c:284-285), + /hatari on Wii U and Vita (src/paths.c:210-213, + src/paths.c:224-226), the system directory itself on PS3 + (src/paths.c:238-240). TOS selection: retro_set_environment lists /tos.img and every entry of /hatari/tos (libretro/libretro.c:393-411). The hatari_tosimage option offers those ending in img (libretro/libretro.c:270-299) and the choice becomes RETRO_TOS (libretro/libretro.c:640-649). retro_load_game refuses content when that - path does not exist (libretro/libretro.c:1602-1607) and hmain writes it + path does not exist (libretro/libretro.c:1612-1617) and hmain writes it into szTosImageFileName after the configuration files, so hatari.cfg - cannot override it (src/main.c:905-907). TOS_LoadImage reads the file + cannot override it (src/main.c:914-916). TOS_LoadImage reads the file whole, strips the 256-byte (or 34-byte for 4.92) loader of a RAM TOS, detects EmuTOS by ETOS at offset 0x2c, and rejects an image whose version word is outside 0x100-0x4FF, whose load address is neither 0xE00000 nor @@ -56,7 +56,7 @@ notes: | patches are applied for TOS 1.00, 1.02, 1.04, 1.06, 1.62, 2.05, 2.06, 3.06, 4.00 to 4.04 and 4.92 (src/tos.c:146-220). HFile_Read also accepts .img, .rom and .tos as fallback extensions and reads the first member of - a .zip or a .gz (src/file.c:203-230, libretro/include/config.h:20), which + a .zip or a .gz (src/file.c:217-244, libretro/include/config.h:20), which only matters for a path picked in the in-core ROM dialog (libretro/gui-retro/dlgRom.c:69-76). EmuTOS is not embedded. @@ -68,8 +68,8 @@ notes: | Floppy, ACSI, IDE and GEMDOS images are content. When a .gem folder is loaded, /hatari/BOOT.ST is inserted into drive A so TOS boots - with the GEMDOS drive (libretro/libretro.c:1663-1671). Memory snapshots - for retro_serialize stay in memory (libretro/libretro.c:1768-1793), and + with the GEMDOS drive (libretro/libretro.c:1673-1681). Memory snapshots + for retro_serialize stay in memory (libretro/libretro.c:1778-1803), and hatari.sav, auto.sav, hatari.prn, hatari.wav and hatari.avi are output names under /hatari. DESKTOP.INF and NEWDESK.INF are created or rewritten inside the emulated C: directory when extended VDI is on @@ -82,7 +82,7 @@ files: required: true max_size: 1048576 validation: [size] - source_ref: "source libretro/libretro.c:393-411, source libretro/libretro.c:640-649, source libretro/libretro.c:1602-1607, source src/main.c:905-907, source src/tos.c:48-53, source src/tos.c:575-651" + source_ref: "source libretro/libretro.c:393-411, source libretro/libretro.c:640-649, source libretro/libretro.c:1612-1617, source src/main.c:914-916, source src/tos.c:48-53, source src/tos.c:575-651" note: > Any TOS 1.00 to 4.04, TOS 0.00, a RAM TOS or EmuTOS. Additional images are read from /hatari/tos and selected with the hatari_tosimage @@ -106,7 +106,7 @@ files: path: "hatari/BOOT.ST" description: "Boot floppy inserted with GEMDOS hard disk folders" required: false - source_ref: "source libretro/libretro.c:1663-1671" + source_ref: "source libretro/libretro.c:1673-1681" note: "Added as the first disk when the content is a .gem file." - name: "floppy.raw" @@ -116,7 +116,7 @@ files: has_builtin: true storage: user_provided unsourceable: "any headerless s16le stereo 44100 Hz sample the user records, with no name or version the code expects beyond the filename" - source_ref: "source libretro/floppy_sound.c:118-170, source libretro/libretro.c:844-852, source libretro/libretro.c:1379" + source_ref: "source libretro/floppy_sound.c:118-170, source libretro/libretro.c:844-852, source libretro/libretro.c:1389" note: > Read whole at retro_init. An empty or short read falls back to the synthesised click (libretro/floppy_sound.c:31-95). Played on each drive @@ -128,7 +128,7 @@ files: required: false storage: user_provided unsourceable: "user settings in Hatari's INI format, with no canonical contents" - source_ref: "source libretro/libretro.c:945-951, source src/main.c:805-831, source src/main.c:892-894, source src/configuration.c:630-633, source src/configuration.c:768-777, source src/paths.c:283-284" + source_ref: "source libretro/libretro.c:945-951, source src/main.c:814-840, source src/main.c:901-903, source src/configuration.c:630-633, source src/configuration.c:768-777, source src/paths.c:284-285" note: > Read only when the hatari_autoload_config option is on (off by default): /hatari/hatari.cfg first, then hatari.cfg in the Hatari home @@ -152,7 +152,7 @@ files: min_size: 50 validation: [size] unsourceable: "machine state the emulator writes itself at exit, with no canonical contents" - source_ref: "source src/falcon/nvram.c:63-85, source src/falcon/nvram.c:186-216, source src/falcon/nvram.c:223-226, source src/main.c:752, source src/paths.c:283-284" + source_ref: "source src/falcon/nvram.c:63-85, source src/falcon/nvram.c:186-216, source src/falcon/nvram.c:223-226, source src/main.c:761, source src/paths.c:284-285" note: > Read from the Hatari home directory at NvRam_Init. A short read keeps the built-in defaults adjusted to the monitor type. Saved back on exit. diff --git a/emulators/hatarib.yml b/emulators/hatarib.yml index c5027191..f1e39c9f 100644 --- a/emulators/hatarib.yml +++ b/emulators/hatarib.yml @@ -4,8 +4,8 @@ core_classification: community_fork source: "https://github.com/bbbradsmith/hatariB" upstream: "https://github.com/hatari/hatari" profiled_date: "2026-09-17" -source_commit: "4fb7ebdfa14d5de7df3076143f255d7d8bf0323c" -upstream_commit: "6a8e26d69fb32d61efd398dc1ad9a77122400034" +source_commit: "5f05733fc21903dce7d978bd0d7aae445ffe1185" +upstream_commit: "7dd6a196cde1b1f9a55cd09cfbecb6edcb1bb000" core_version: "1.1 unstable preview" display_name: "Atari - ST/STE/TT/Falcon (hatariB)" cores: diff --git a/emulators/ioquake3.yml b/emulators/ioquake3.yml index 5384415a..acf8d129 100644 --- a/emulators/ioquake3.yml +++ b/emulators/ioquake3.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/ioquake/ioq3" upstream: "https://github.com/ioquake/ioq3" profiled_date: "2026-10-04" -source_commit: "83a776283bdb958f82db25554b5ed0966aaf6e49" +source_commit: "87a99d18206e878a20289f05ac3c16005dcae5c3" core_version: "1.36+git" display_name: "ioquake3" cores: [ioquake3] diff --git a/emulators/izapple2.yml b/emulators/izapple2.yml index 28a5450e..f6448f74 100644 --- a/emulators/izapple2.yml +++ b/emulators/izapple2.yml @@ -4,7 +4,7 @@ core_classification: embedded_hle source: "https://github.com/ivanizag/izapple2" upstream: "https://github.com/ivanizag/izapple2" profiled_date: "2026-08-08" -source_commit: "877b75fcf00d5bdb88d77554a4ade3ecb8c1a166" +source_commit: "dc28a566c9c733119b0511d9f77e1b4574e28718" core_version: "v2.4.0" display_name: "Apple - Apple II (izapple2)" cores: @@ -16,18 +16,18 @@ mode: standalone notes: | Apple II emulator written in Go by Ivan Izaguirre. Boards: Apple ][ and ][+ with 48 KB, Apple IIe and //e enhanced with 128 KB, and two clones, the Copam - Base 64A and the Basis 108 (setup.go:36-58). + Base 64A and the Basis 108 (setup.go:45-67). Every ROM the machine needs is compiled into the binary. The whole resources directory is embedded with //go:embed (resources.go:25-26) and the 17 machine - configs with //go:embed configs/*.cfg (configuration.go:51-52). LoadResource + configs with //go:embed configs/*.cfg (configuration.go:57-58). LoadResource routes a name by its prefix: / reads the embedded filesystem, http:// and https:// fetch over the network, anything else is a path on disk (resources.go:55-88). The shipped configs name main ROM, character ROM and boot diskette as / paths, so the emulator starts into DOS 3.3 with no file on disk. The base64a and basis108 configs set rom: , which dispatches to loadMultiPageRom over six embedded PROM dumps each - (setup.go:189-199, boardBase64a.go:7-16, boardBasis108.go:28-37). + (setup.go:203-213, boardBase64a.go:7-16, boardBasis108.go:28-37). Two of the 27 registered cards name an image the emulator downloads instead of carrying: prodosromdrive and prodosromcard3 (cardBuilder.go:86-87). Both diff --git a/emulators/jollycv.yml b/emulators/jollycv.yml index 08a5f480..ef37d8e7 100644 --- a/emulators/jollycv.yml +++ b/emulators/jollycv.yml @@ -5,7 +5,7 @@ source: "https://github.com/libretro/jollycv" upstream: "https://gitlab.com/jgemu/jollycv" profiled_date: "2026-09-17" source_commit: "2790d59c7194d29e83f8603ffd7e9da17f11575e" -upstream_commit: "18875ffdb1891cec04217cf02928af563a3af9d8" +upstream_commit: "3caacb22143543d5c7de4f3208def645a2ec0ab5" core_version: "2.1.0" display_name: "ColecoVision/CreatiVision/My Vision (JollyCV)" cores: diff --git a/emulators/julius.yml b/emulators/julius.yml index c978fa6b..486a2a7b 100644 --- a/emulators/julius.yml +++ b/emulators/julius.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/bvschaik/julius" upstream: "https://github.com/bvschaik/julius" profiled_date: "2026-10-17" -source_commit: "33c777019b2640b847b73815c3b4344cf7bd9576" +source_commit: "34d1ecd54befb845c0139b371fa8a0438210dac1" core_version: "1.7.0" display_name: "Caesar III (Julius)" cores: @@ -20,12 +20,12 @@ notes: | The data directory is the command-line argument. pre_init() makes it the base path and runs game_pre_init(). A missing directory shows "Julius requires the original files from Caesar 3" and exits - (ref: src/platform/julius.c:488-501, 580-586). File lookups are + (ref: src/platform/julius.c:494-507, 586-592). File lookups are case-corrected inside that directory. Startup loads, in order, the text and message files c3.eng and c3_mm.eng (c3.rus and c3_mm.rus as the alternative pair) - (ref: src/game/game.c:48-63, src/core/lang.c:141-165), the central + (ref: src/game/game.c:48-63, src/core/lang.c:142-166), the central climate graphics c3.sg2 and c3.555, the barbarian enemy graphics goths.sg2 and goths.555, and c3_model.txt (ref: src/game/game.c:79-104). Any of them missing aborts init. The_empire.555 is loaded with the @@ -45,7 +45,7 @@ files: category: game_data required: true description: "Caesar III install directory" - source_ref: "src/platform/julius.c:488-501" + source_ref: "src/platform/julius.c:494-507" note: "Given on the command line. Every game file is opened by name inside it." - name: "c3.eng" path: "caesar3/c3.eng" @@ -53,7 +53,7 @@ files: category: game_data required: true description: "Caesar III interface text" - source_ref: "src/core/lang.c:23, 74-80, 141-165" + source_ref: "src/core/lang.c:24, src/core/lang.c:75-81, src/core/lang.c:142-166" note: "Rejected when outside MIN_TEXT_SIZE..MAX_TEXT_SIZE. c3.rus replaces it on a Russian install." - name: "c3_mm.eng" path: "caesar3/c3_mm.eng" @@ -61,7 +61,7 @@ files: category: game_data required: true description: "Caesar III message text" - source_ref: "src/core/lang.c:24, 129-150, 160-165" + source_ref: "src/core/lang.c:25, src/core/lang.c:130-151, src/core/lang.c:161-166" note: "Loaded as a pair with c3.eng, and c3_mm.rus replaces it on a Russian install." - name: "c3.sg2" path: "caesar3/c3.sg2" @@ -69,28 +69,28 @@ files: category: game_data required: true description: "Main graphics index, central climate" - source_ref: "src/core/image.c:48-52, 295-306, src/game/game.c:83-86" + source_ref: "src/core/image.c:48-52, src/core/image.c:303-314, src/game/game.c:83-86" - name: "c3.555" path: "caesar3/c3.555" system: "caesar3" category: game_data required: true description: "Main graphics bitmaps, central climate" - source_ref: "src/core/image.c:53-57, 314-317, src/game/game.c:83-86" + source_ref: "src/core/image.c:53-57, src/core/image.c:322-325, src/game/game.c:83-86" - name: "goths.sg2" path: "caesar3/goths.sg2" system: "caesar3" category: game_data required: true description: "Barbarian enemy graphics index" - source_ref: "src/core/image.c:79, 667-675, src/game/game.c:87-90" + source_ref: "src/core/image.c:79, src/core/image.c:678-686, src/game/game.c:87-90" - name: "goths.555" path: "caesar3/goths.555" system: "caesar3" category: game_data required: true description: "Barbarian enemy graphics bitmaps" - source_ref: "src/core/image.c:101, 681-684, src/game/game.c:87-90" + source_ref: "src/core/image.c:101, src/core/image.c:692-695, src/game/game.c:87-90" - name: "c3_model.txt" path: "caesar3/c3_model.txt" system: "caesar3" diff --git a/emulators/kemulator.yml b/emulators/kemulator.yml index 190d1d7a..63e40d91 100644 --- a/emulators/kemulator.yml +++ b/emulators/kemulator.yml @@ -5,7 +5,7 @@ source: "https://github.com/shinovon/KEmulator" upstream: "https://github.com/shinovon/KEmulator" author: "shinovon" profiled_date: "2026-08-11" -source_commit: "769149212e167512b7792953f7646e543d29b9af" +source_commit: "f7e6bf9f2da4d3620ed08cdda1de696d87a5dc0e" core_version: "2.21.5" display_name: "Mobile - J2ME (KEmulator nnmod)" cores: diff --git a/emulators/kronos.yml b/emulators/kronos.yml index 4f55dc45..9afdba79 100644 --- a/emulators/kronos.yml +++ b/emulators/kronos.yml @@ -6,7 +6,7 @@ source_branch: kronos upstream: "https://github.com/FCare/Kronos" profiled_date: "2026-03-24" source_commit: "3791ffb2221fda61d70aec5cca376418caf05669" -upstream_commit: "d0384bc33aad06bfa9cf5cd308c4bd7ae6cfc814" +upstream_commit: "d451a55253e2e75bcef704ec8ade2085d298212c" core_version: "v2.6.0" display_name: "Sega - Saturn/ST-V (Kronos)" cores: diff --git a/emulators/lightspark.yml b/emulators/lightspark.yml index 14040b0b..f4133ace 100644 --- a/emulators/lightspark.yml +++ b/emulators/lightspark.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/lightspark/lightspark" upstream: "https://github.com/lightspark/lightspark" profiled_date: "2026-08-08" -source_commit: "bfe122834a17ab63a80f5ec36ff7c0dbfcac0321" +source_commit: "6f07fd65cb95b88ff73e905bf78a1a8b1ddf6049" core_version: "0.9.0" display_name: "Adobe Flash (Lightspark)" cores: diff --git a/emulators/linapple.yml b/emulators/linapple.yml index 0dad1d8c..11877414 100644 --- a/emulators/linapple.yml +++ b/emulators/linapple.yml @@ -5,6 +5,7 @@ source: "https://github.com/linappleii/linapple" upstream: "https://github.com/AppleWin/AppleWin" profiled_date: "2026-10-20" source_commit: "86bee1c2b59bd4706185ceddddaf383b3416726f" +upstream_commit: "35366c56439701b58ce9efd4039118e26d725c44" core_version: "3.0.0" display_name: "Apple - Apple II (LinApple)" cores: diff --git a/emulators/lrps2.yml b/emulators/lrps2.yml index 6b189103..2d827a16 100644 --- a/emulators/lrps2.yml +++ b/emulators/lrps2.yml @@ -9,8 +9,8 @@ bios_mode: agnostic source: "https://github.com/libretro/parallel-ps2" upstream: "https://github.com/PCSX2/pcsx2" profiled_date: "2026-10-21" -source_commit: "6664c60294ee05fe5e8c7645ab7da546dae78ed2" -upstream_commit: "a81f1aa39fc56ef60dbc913637c74c49c1792033" +source_commit: "38d3a83f4ecdec977d609ece8afcc527f5f68702" +upstream_commit: "7fe1e5525a2c219c119aa9586cee4ceae2f54ce1" core_version: "Git" display_name: "Sony - PlayStation 2 (LRPS2)" cores: [lrps2, pcsx2, "ps2"] diff --git a/emulators/mamearcade.yml b/emulators/mamearcade.yml index fdaab372..006f19b3 100644 --- a/emulators/mamearcade.yml +++ b/emulators/mamearcade.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/libretro/mame" upstream: "https://github.com/mamedev/mame" profiled_date: "2026-03-24" -source_commit: "9069f39340f2d2b1795df8e71bb1d3d0fbc76598" +source_commit: "5f5a07748ce5c239c4118463ce8e6473743d4859" upstream_commit: "f34f02505e32c1993c6a782b6814232cbfc74e36" core_version: "0.289" display_name: "Arcade (MAME/Arcade)" diff --git a/emulators/mamemess.yml b/emulators/mamemess.yml index 2db10e90..c90ea513 100644 --- a/emulators/mamemess.yml +++ b/emulators/mamemess.yml @@ -4,8 +4,8 @@ core_classification: official_port source: "https://github.com/libretro/mame" upstream: "https://github.com/mamedev/mame" profiled_date: "2026-03-29" -source_commit: "9069f39340f2d2b1795df8e71bb1d3d0fbc76598" -upstream_commit: "728d957663041fbc943806bf151584acd03e2160" +source_commit: "5f5a07748ce5c239c4118463ce8e6473743d4859" +upstream_commit: "61a222977fd29f22ce11fbea3f7c290fd7ced091" core_version: "0.287" display_name: "Multi (MAME/MESS)" @@ -912,7 +912,7 @@ files: required: true category: bios_zip system: casio-pv2000 - source_ref: "upstream src/mame/casio/pv2000.cpp:416-419" + source_ref: "upstream src/mame/casio/pv2000.cpp:415-418" contents: - name: hn613128pc64.bin description: Z80 BASIC ROM diff --git a/emulators/md-emu.yml b/emulators/md-emu.yml index 3b5789bb..ef126a0a 100644 --- a/emulators/md-emu.yml +++ b/emulators/md-emu.yml @@ -5,7 +5,7 @@ source: "https://github.com/Rakashazi/emu-ex-plus-alpha" upstream: "https://github.com/ekeeke/Genesis-Plus-GX" profiled_date: "2026-08-12" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" -upstream_commit: "27426f00aa68f9f358c86919e8a40985326fa05b" +upstream_commit: "49c584764893b0505ac7f768a754f97330fa4392" core_version: "1.5.85" display_name: "Sega - MS/MD/CD (MD.emu)" mode: standalone diff --git a/emulators/mednafen_pce_fast.yml b/emulators/mednafen_pce_fast.yml index d03a6565..0053d1d9 100644 --- a/emulators/mednafen_pce_fast.yml +++ b/emulators/mednafen_pce_fast.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/beetle-pce-fast-libretro" upstream: "https://mednafen.github.io/" profiled_date: "2026-03-24" -source_commit: "3f946f277aef3aa99a95551618bbcd1dd2bda0d9" +source_commit: "4eee99c451f85ebe66d1591de88b892015b23059" core_version: "v1.31.0.0" display_name: "NEC - PC Engine / CD (Beetle PCE FAST)" cores: [mednafen_pce_fast, pce_fast, beetle_pce_fast] diff --git a/emulators/mednafen_supergrafx.yml b/emulators/mednafen_supergrafx.yml index cab68b82..df67df17 100644 --- a/emulators/mednafen_supergrafx.yml +++ b/emulators/mednafen_supergrafx.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/beetle-supergrafx-libretro" upstream: "https://mednafen.github.io/" profiled_date: "2026-10-04" -source_commit: "eabaaa438b1732d05ff206a97e700f845d6bfa96" +source_commit: "9c11dcd213a79d57d2c86313971631af801f2cdc" core_version: "v1.29.0" display_name: "NEC - PC Engine SuperGrafx (Beetle SuperGrafx)" cores: [mednafen_supergrafx, beetle_supergrafx] diff --git a/emulators/melonds.yml b/emulators/melonds.yml index 519e7d4a..858af261 100644 --- a/emulators/melonds.yml +++ b/emulators/melonds.yml @@ -6,6 +6,7 @@ source: "https://github.com/libretro/melonDS" upstream: "https://github.com/melonDS-emu/melonDS" profiled_date: "2026-03-24" source_commit: "66b5d2634cd0a79030562811e6e05f5532f800ba" +upstream_commit: "7d8dea42e221b13521270c423b61add41a741b97" core_version: "Git" display_name: "Nintendo - DS (melonDS)" systems: [nintendo-ds, nintendo-dsi] diff --git a/emulators/melonds_ds.yml b/emulators/melonds_ds.yml index 066fd054..95f4ac6e 100644 --- a/emulators/melonds_ds.yml +++ b/emulators/melonds_ds.yml @@ -6,7 +6,7 @@ source: "https://github.com/JesseTG/melonds-ds" upstream: "https://github.com/melonDS-emu/melonDS" profiled_date: "2026-10-04" source_commit: "f394adbacb5722ee97c1b37c8064da9a25818310" -upstream_commit: "906e9ebb27da8c6a715cd7abab4abfe8a8d29427" +upstream_commit: "7d8dea42e221b13521270c423b61add41a741b97" core_version: "1.4.0" display_name: "Nintendo - DS (melonDS DS)" systems: diff --git a/emulators/mesen-s.yml b/emulators/mesen-s.yml index 6bec6c52..5b8de054 100644 --- a/emulators/mesen-s.yml +++ b/emulators/mesen-s.yml @@ -9,7 +9,7 @@ source: "https://github.com/libretro/Mesen-S" upstream: "https://github.com/SourMesen/Mesen-S" profiled_date: "2026-03-24" source_commit: "9e4fdeb9b336470bc96beb8765b2e79c86a2da1e" -upstream_commit: "89199f298a95345a893d814525b6668567a6d490" +upstream_commit: "1768b4fc83faa308d5e430e3cf785218f12c424d" core_version: "0.4.0" cores: [mesen-s, mesen_s] systems: [nintendo-snes, nintendo-gb, nintendo-gbc, nintendo-super-game-boy, nintendo-satellaview] diff --git a/emulators/mgba.yml b/emulators/mgba.yml index a1e5719a..94198c12 100644 --- a/emulators/mgba.yml +++ b/emulators/mgba.yml @@ -6,6 +6,7 @@ upstream: "https://github.com/mgba-emu/mgba" logo: "https://raw.githubusercontent.com/mgba-emu/mgba/master/res/mgba-256.png" profiled_date: "2026-03-24" source_commit: "7a12d6d4b9acb14c0ae62c9166b6a2f3d08007f6" +upstream_commit: "fd9dc5c2cbf234365068855851107e762fc6211b" core_version: "0.10-dev" display_name: "Nintendo - Game Boy Advance (mGBA)" cores: diff --git a/emulators/mgba_splitscreen.yml b/emulators/mgba_splitscreen.yml index 64e9a3b4..54fbbea9 100644 --- a/emulators/mgba_splitscreen.yml +++ b/emulators/mgba_splitscreen.yml @@ -4,7 +4,8 @@ core_classification: community_fork source: "https://github.com/Spuds0588/mgba-splitscreen" upstream: "https://github.com/mgba-emu/mgba" profiled_date: "2026-10-04" -source_commit: "b66511a35873bda9c961872813e58b35543bcfc5" +source_commit: "f1d5975d77285f77affbfe64b7050ebd5c4b6a77" +upstream_commit: "fd9dc5c2cbf234365068855851107e762fc6211b" core_version: "0.1.0" display_name: "Nintendo - Game Boy Advance (mGBA Splitscreen)" cores: @@ -20,7 +21,7 @@ notes: | fixes (Four Swords handshake assist and a gated deadlock kick) on top of mGBA's library layer. The player instances live in src/platform/libretro-splitscreen/instances.c and reject anything that - is not a GBA ROM (instances.c:114-119). + is not a GBA ROM (src/platform/libretro-splitscreen/instances.c:114-119). The splitscreen wrapper never performs its own BIOS lookup. Each per-player mCore reaches mGBA's shared GBA core, which looks for diff --git a/emulators/mkxp_z.yml b/emulators/mkxp_z.yml index 030f73ae..8502f717 100644 --- a/emulators/mkxp_z.yml +++ b/emulators/mkxp_z.yml @@ -7,6 +7,7 @@ source_ref: "PR #255 to mkxp-z/mkxp-z" upstream: "https://github.com/mkxp-z/mkxp-z" profiled_date: "2026-03-24" source_commit: "650cb0888a07d0b5044e131160ddfa53feaf595b" +upstream_commit: "37a04d14413454551a7b6aadbb4e93e67168accb" core_version: "f4bc5aa" display_name: "RPG Maker XP/VX/VX Ace (mkxp-z)" cores: diff --git a/emulators/mupen64plus_next.yml b/emulators/mupen64plus_next.yml index 67e9b899..0a6980a9 100644 --- a/emulators/mupen64plus_next.yml +++ b/emulators/mupen64plus_next.yml @@ -4,7 +4,8 @@ core_classification: enhanced_fork source: "https://github.com/libretro/mupen64plus-libretro-nx" upstream: "https://github.com/mupen64plus/mupen64plus-core" profiled_date: "2026-03-24" -source_commit: "12edd2c74a517ff86dfa8cfc71ad75e4c10486d5" +source_commit: "15bada85906593376e8fd697f1b0b3af3a20f512" +upstream_commit: "3be6336a1de6f32ccc4f57bf80c988163fe6bf7a" core_version: "2.6.0" display_name: "Nintendo - Nintendo 64 (Mupen64Plus-Next)" systems: [nintendo-64, nintendo-64dd] diff --git a/emulators/nes-emu.yml b/emulators/nes-emu.yml index e2428da6..afb4bf2b 100644 --- a/emulators/nes-emu.yml +++ b/emulators/nes-emu.yml @@ -5,7 +5,7 @@ source: "https://github.com/Rakashazi/emu-ex-plus-alpha" upstream: "https://github.com/TASEmulators/fceux" profiled_date: "2026-08-12" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" -upstream_commit: "d339f1fa0cd8b69cc637a0de3fb3f04cb28748ea" +upstream_commit: "ac7c6cb643dd788daed2b6b8a31fe91d369a4a27" core_version: "1.5.85" display_name: "Nintendo - NES / Famicom (NES.emu)" mode: standalone diff --git a/emulators/nestopia.yml b/emulators/nestopia.yml index d4546a2f..fd4966d7 100644 --- a/emulators/nestopia.yml +++ b/emulators/nestopia.yml @@ -5,7 +5,8 @@ source: "https://github.com/libretro/nestopia" upstream: "https://gitlab.com/jgemu/nestopia" logo: "https://raw.githubusercontent.com/0ldsk00l/nestopia/master/icons/svg/nestopia.svg" profiled_date: "2026-03-24" -source_commit: "b9fdc9c4e6d374abacd1a678ae46ec7f963ef59a" +source_commit: "06a8949e0b3cf60e3a38a374b1426bf40fccb9a0" +upstream_commit: "b3adbeb42482e979ab99e16bcd9a22480f13479f" core_version: "1.53.1" display_name: "Nintendo - NES / Famicom (Nestopia)" cores: [nestopia] @@ -45,7 +46,7 @@ files: on_mismatch: warn md5: "ca30b50f880eb660a320674ed365ef7a" sha1: "57fe1bdee955bb48d357e463ccbf129496930b62" - source_ref: "source libretro/libretro.cpp:2169-2197 (FDS load), source source/core/NstFds.cpp:57-127 (Bios class, CRC32 logged), source source/core/api/NstApiFds.cpp:101-150 (iNES header skipped)" + source_ref: "source libretro/libretro.cpp:2171-2199 (FDS load), source source/core/NstFds.cpp:57-127 (Bios class, CRC32 logged), source source/core/api/NstApiFds.cpp:101-150 (iNES header skipped)" note: "Mapped at 0xE000-0xFFFF (8 KB). retro_load_game returns false if missing when loading .fds files. CRC32 checked: Famicom 0x5E607DCF, Twin Famicom 0x4DF24A6C." # --- NES game database (optional, overrides baked-in copy) --- @@ -55,7 +56,7 @@ files: required: false installed_on: [batocera] hle_fallback: true - source_ref: "source libretro/libretro.cpp:2121-2151 (database load), source libretro/nstdatabase.hpp (baked-in fallback)" + source_ref: "source libretro/libretro.cpp:2123-2153 (database load), source libretro/nstdatabase.hpp (baked-in fallback)" note: "XML database matching games by SHA1+CRC32. Used for region, mapper, mirroring, and 4-player adapter detection. Built-in fallback exists so this file is optional." # --- Custom palette (optional, core option nestopia_palette = Custom) --- @@ -65,7 +66,7 @@ files: required: false hle_fallback: true size: 192 - source_ref: "source libretro/libretro.cpp:2099-2120 (palette load)" + source_ref: "source libretro/libretro.cpp:2101-2122 (palette load)" note: "64 RGB triplets (64 x 3 bytes = 192 bytes). Loaded unconditionally at startup, applied only when nestopia_palette core option is set to Custom. Falls back to built-in Royaltea palette. Multiple valid palettes exist so no canonical hash." # --- ADPCM audio samples (optional, game-specific) --- diff --git a/emulators/noods.yml b/emulators/noods.yml index 6e1ec3ea..593c0294 100644 --- a/emulators/noods.yml +++ b/emulators/noods.yml @@ -5,6 +5,7 @@ source: "https://github.com/jonian/libretro-noods" upstream: "https://github.com/Hydr8gon/NooDS" profiled_date: "2026-03-24" source_commit: "9a2665306927ede64f4b5c109df79f4015607dbc" +upstream_commit: "4cb1439c330248b26cdf5f8dbcfa4e5ac53dcda0" core_version: "Git" display_name: "Nintendo - DS (NooDS)" cores: [noods] diff --git a/emulators/np2kai.yml b/emulators/np2kai.yml index 1f2214ab..df88aec6 100644 --- a/emulators/np2kai.yml +++ b/emulators/np2kai.yml @@ -5,7 +5,7 @@ source: "https://github.com/libretro/NP2kai" upstream: "https://github.com/AZO234/NP2kai" profiled_date: "2026-03-24" source_commit: "1ea561cd7fd62b33f4e7b3f1c2e30fc3e6089f28" -upstream_commit: "5d47f3a04b0b8ea78f625eeec354ac132c80df06" +upstream_commit: "5939e0c6d5985c4c08fc70f289a83290e5d3e6f7" core_version: "0.86" display_name: "NEC - PC-98 (Neko Project II Kai)" cores: [np2kai] diff --git a/emulators/openbor.yml b/emulators/openbor.yml index fe904a5b..10c03043 100644 --- a/emulators/openbor.yml +++ b/emulators/openbor.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/DCurrent/openbor" upstream: "https://github.com/DCurrent/openbor" profiled_date: "2026-08-12" -source_commit: "787b6770409935137579715febf80cf7a529b748" +source_commit: "65a7f0b41aee87fe4084e538634b4ed73236f871" core_version: "4.0 Build 7949" display_name: "OpenBOR Game Engine" cores: diff --git a/emulators/openjkdf2.yml b/emulators/openjkdf2.yml index c573ab93..6e395d90 100644 --- a/emulators/openjkdf2.yml +++ b/emulators/openjkdf2.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/shinyquagsire23/OpenJKDF2" upstream: "https://github.com/shinyquagsire23/OpenJKDF2" profiled_date: "2026-10-04" -source_commit: "02297602cb289b113df27be33b5a7dddbe3d91c1" +source_commit: "75a13ba2de99a1824978385bfd6e93aaff99306e" core_version: "0.9.9.0" display_name: "OpenJKDF2" cores: [] @@ -76,7 +76,7 @@ files: category: game_data required: true source_ref: "src/Main/InstallHelper.c:36 (aRequiredAssets)" - note: "Multiplayer deathmatch episode. Default -episode value in Main.c:120." + note: "Multiplayer deathmatch episode. Default -episode value in src/Main/Main.c:121." - name: "Res1hi.gob" path: "openjkdf2/resource/Res1hi.gob" @@ -99,7 +99,7 @@ files: system: dark-forces-ii category: game_data required: true - source_ref: "src/Main/InstallHelper.c:39 (aRequiredAssets), src/Main/InstallHelper.c:764-769, src/Main/InstallHelper.c:1334-1336, src/engine_config.h:263" + source_ref: "src/Main/InstallHelper.c:39 (aRequiredAssets), src/Main/InstallHelper.c:764-769, src/Main/InstallHelper.c:1334-1336, src/engine_config.h:261" note: | 4-byte marker. The install helper writes JKRES_MAGIC_1 into it once the assets are copied, 0x699232C4 for this game. At startup a missing @@ -202,7 +202,7 @@ files: system: mysteries-of-the-sith category: game_data required: true - source_ref: "src/Main/InstallHelper.c:51 (aRequiredAssetsMots), src/Main/InstallHelper.c:1318-1320, src/Main/jkRes.c:232-235, src/engine_config.h:267-270" + source_ref: "src/Main/InstallHelper.c:51 (aRequiredAssetsMots), src/Main/InstallHelper.c:1318-1320, src/Main/jkRes.c:232-235, src/engine_config.h:265-268" note: | 4-byte marker holding 0x3B426929. InstallHelper_SetCwd reads it at startup and enables Mysteries of the Sith mode when it finds that @@ -223,26 +223,26 @@ files: system: droidworks category: game_data required: true - source_ref: "src/Main/InstallHelper.c:58 (aRequiredAssetsDroidworks), src/Dw/dwInits.cpp:67-93" + source_ref: "src/Main/InstallHelper.c:58 (aRequiredAssetsDroidworks), src/Dw/dwInits.cpp:72-98" note: "CD-image data archive, mounted by dwGob." - name: "dwHD.GOB" system: droidworks category: game_data required: true - source_ref: "src/Main/InstallHelper.c:59 (aRequiredAssetsDroidworks), src/Dw/dwInits.cpp:67-93" + source_ref: "src/Main/InstallHelper.c:59 (aRequiredAssetsDroidworks), src/Dw/dwInits.cpp:72-98" note: "Hard-drive install archive." - name: "dwMin.GOB" system: droidworks category: game_data required: true - source_ref: "src/Main/InstallHelper.c:60 (aRequiredAssetsDroidworks), src/Dw/dwInits.cpp:67-93" + source_ref: "src/Main/InstallHelper.c:60 (aRequiredAssetsDroidworks), src/Dw/dwInits.cpp:72-98" note: "Minimum-install archive." - name: "dwStream.GOB" system: droidworks category: game_data required: true - source_ref: "src/Main/InstallHelper.c:61 (aRequiredAssetsDroidworks), src/Dw/dwInits.cpp:93" + source_ref: "src/Main/InstallHelper.c:61 (aRequiredAssetsDroidworks), src/Dw/dwInits.cpp:98" note: "Streamed WAV audio, listed only in the WAV ext search path." diff --git a/emulators/openlara.yml b/emulators/openlara.yml index 85d1b26e..ca595a41 100644 --- a/emulators/openlara.yml +++ b/emulators/openlara.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/OpenLara" upstream: "https://github.com/XProger/OpenLara" profiled_date: "2026-03-24" source_commit: "e4ce52edec5a9a6ad22b69d08c687bf070e68876" +upstream_commit: "3b268ca4bf986c380f44a26ffd9218bf6d376249" core_version: "v1" display_name: "Tomb Raider (OpenLara)" cores: [openlara] diff --git a/emulators/openmsx.yml b/emulators/openmsx.yml index efa59f83..aa6e9af1 100644 --- a/emulators/openmsx.yml +++ b/emulators/openmsx.yml @@ -3,7 +3,7 @@ type: standalone source: "https://github.com/openMSX/openMSX" upstream: "https://github.com/openMSX/openMSX" profiled_date: "2026-03-26" -source_commit: "50d15b6c5eeba7781d55241f8579339141c9dfb4" +source_commit: "26e1e4945df406e250a05122889f88d40edd828b" core_version: "21.0" display_name: "MSX / ColecoVision / Spectravideo (openMSX)" cores: @@ -28,7 +28,7 @@ notes: | Filenames are secondary hints, while SHA1 is the primary lookup key. Files may be gzipped or individually zipped. Each user data directory contributes share/systemroms, scanned - recursively (src/file/FilePool.cc:27, FilePoolCore.cc:369-385). RetroBat + recursively (src/file/FilePool.cc:27, src/file/FilePoolCore.cc:369-385). RetroBat sets OPENMSX_HOME to bios/openmsx and refuses to start a machine whose ROMs are not in bios/openmsx/share/systemroms. RetroPie links share/systemroms to BIOS/openmsx and Batocera adds bios/openmsx to the diff --git a/emulators/opentyrian.yml b/emulators/opentyrian.yml index 071bbb1d..afbaf09f 100644 --- a/emulators/opentyrian.yml +++ b/emulators/opentyrian.yml @@ -5,6 +5,7 @@ source: "https://github.com/trapexit/libretro-opentyrian" upstream: "https://github.com/opentyrian/opentyrian" profiled_date: "2026-03-24" source_commit: "3e9df7a6bc486190ad5085586d0c4e9cb1baf14c" +upstream_commit: "ac5d0e71f4245744350c6116ce24f10624da58f8" core_version: "1.0.0.6" display_name: "Tyrian (OpenTyrian)" cores: [opentyrian, tyrian] diff --git a/emulators/opera.yml b/emulators/opera.yml index c83aece5..1da03f47 100644 --- a/emulators/opera.yml +++ b/emulators/opera.yml @@ -6,7 +6,7 @@ cores: [opera] source: "https://github.com/libretro/opera-libretro" upstream: "https://sourceforge.net/projects/freedo/" profiled_date: "2026-10-18" -source_commit: "684926fe2079ba12b59d99082291c0a8fe780c67" +source_commit: "2d03e484952f94e80b43142371e7784d6fbc68e0" core_version: "1.0.0" display_name: "The 3DO Company - 3DO (Opera)" systems: diff --git a/emulators/parallel-launcher.yml b/emulators/parallel-launcher.yml index 0b50e1fc..c9d8a221 100644 --- a/emulators/parallel-launcher.yml +++ b/emulators/parallel-launcher.yml @@ -5,7 +5,7 @@ source: "https://gitlab.com/parallel-launcher/parallel-launcher" upstream: "https://gitlab.com/parallel-launcher/parallel-n64" profiled_date: "2026-08-08" source_commit: "8dc2a83770c57bc00e1b1fae0aed71f2120cc875" -upstream_commit: "11574ac28d27faaaef4b5bc3c1ca50fb2ed98b83" +upstream_commit: "a9028b23bd5ee8b465eefc64320fd7701f3430fa" core_version: "9.0.5" display_name: "Nintendo - Nintendo 64 (Parallel Launcher)" cores: diff --git a/emulators/parallel_n64.yml b/emulators/parallel_n64.yml index 734fae88..74529674 100644 --- a/emulators/parallel_n64.yml +++ b/emulators/parallel_n64.yml @@ -4,7 +4,8 @@ core_classification: community_fork source: "https://github.com/libretro/parallel-n64" upstream: "https://github.com/mupen64plus/mupen64plus-core" profiled_date: "2026-03-24" -source_commit: "0bd516ee793bb87b57e9eef19993b37ac0098d74" +source_commit: "a467ddaf904c8f8ddc6f6b889a876091725ccd91" +upstream_commit: "3be6336a1de6f32ccc4f57bf80c988163fe6bf7a" core_version: "2.0-rc2" display_name: "Nintendo - Nintendo 64 (ParaLLEl N64)" systems: [nintendo-64, nintendo-64dd] @@ -16,7 +17,7 @@ files: required: false description: "64DD IPL ROM" note: "Only loaded when a 64DD disk image (.ndd) is present via subsystem API. Core fails to load disk games without it." - source_ref: "source libretro/libretro.c:848" + source_ref: "source libretro/libretro.c:896" notes: hle_available: true diff --git a/emulators/pcem.yml b/emulators/pcem.yml index 0fe1261c..98239f60 100644 --- a/emulators/pcem.yml +++ b/emulators/pcem.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/libretro-pcem" upstream: "https://github.com/sarah-walker-pcem/pcem" profiled_date: "2026-03-24" source_commit: "e07923e902dcedcf65a502fb3f14e75b9ded5271" +upstream_commit: "25b54e3ff1d51cbf2469b447e55bce7a589697e9" core_version: "v11 (PCem-mooch, based on PCem v10.1)" display_name: "PC (PCem)" cores: [pcem] diff --git a/emulators/pcsx1.yml b/emulators/pcsx1.yml index bd9983e5..0f45e337 100644 --- a/emulators/pcsx1.yml +++ b/emulators/pcsx1.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/pcsx1-libretro" upstream: "https://github.com/notaz/pcsx_rearmed" profiled_date: "2026-03-24" source_commit: "35dabb85ff3af6825820f54090d344945f65d24e" +upstream_commit: "8b6c163575e6ce9a0537553e0d4ed4225315955e" core_version: "r22" display_name: "Sony - PlayStation (PCSX1)" cores: [pcsx1] diff --git a/emulators/pcsx2.yml b/emulators/pcsx2.yml index 9ce3d3b3..3fbd4d0f 100644 --- a/emulators/pcsx2.yml +++ b/emulators/pcsx2.yml @@ -7,7 +7,7 @@ upstream: "https://github.com/PCSX2/pcsx2" cores: - pcsx2 profiled_date: "2026-03-30" -source_commit: "81526d4dc7cc70e4ae75abb35a789417456c6d43" +source_commit: "7fe1e5525a2c219c119aa9586cee4ceae2f54ce1" core_version: "Git" display_name: "Sony - PlayStation 2 (PCSX2)" systems: [sony-playstation-2] @@ -76,7 +76,7 @@ files: size: 2683897 category: game_data description: "per-title compatibility and fix database" - source_ref: "pcsx2/GameDatabase.cpp:39, pcsx2/GameDatabase.cpp:1026-1035" + source_ref: "pcsx2/GameDatabase.cpp:39, pcsx2/GameDatabase.cpp:1034-1043" note: "Read from the resources directory shipped with the application. Console error and no per-title fixes if missing." - name: RedumpDatabase.yaml @@ -87,7 +87,7 @@ files: size: 1917242 category: game_data description: "disc hash database" - source_ref: "pcsx2/GameDatabase.cpp:1133, pcsx2/GameDatabase.cpp:1188-1197" + source_ref: "pcsx2/GameDatabase.cpp:1141, pcsx2/GameDatabase.cpp:1196-1205" note: "Read from the resources directory shipped with the application, used to name a disc from its dump." - name: patches.zip diff --git a/emulators/pcsx_rearmed.yml b/emulators/pcsx_rearmed.yml index 7e855eb1..8baf99bc 100644 --- a/emulators/pcsx_rearmed.yml +++ b/emulators/pcsx_rearmed.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/pcsx_rearmed" upstream: "https://github.com/notaz/pcsx_rearmed" profiled_date: "2026-03-25" source_commit: "c8816799b50388e61cfe237fe2cdbb7d8175f20a" +upstream_commit: "8b6c163575e6ce9a0537553e0d4ed4225315955e" core_version: "r25" display_name: "Sony - PlayStation (PCSX ReARMed)" cores: [pcsx_rearmed, pcsx_rearmed_neon, pcsx_rearmed_interpreter, "pcsx_rearmed_32b"] diff --git a/emulators/picodrive.yml b/emulators/picodrive.yml index 3d8e4e80..3c4b5c60 100644 --- a/emulators/picodrive.yml +++ b/emulators/picodrive.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/picodrive" upstream: "https://github.com/irixxxx/picodrive" profiled_date: "2026-03-24" source_commit: "1890c2932234c9d30f4cd3851d02228baae8f09e" +upstream_commit: "26683b2fc61cc26b5c4dd43815a6d70d376a02ce" core_version: "1.99" display_name: "Sega - MS/GG/MD/CD/32X (PicoDrive)" cores: [picodrive] diff --git a/emulators/pokketstation.yml b/emulators/pokketstation.yml index d5e8b9f9..38a24c36 100644 --- a/emulators/pokketstation.yml +++ b/emulators/pokketstation.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/mentalfoundry/Pokket" upstream: "https://github.com/mentalfoundry/Pokket" profiled_date: "2026-10-17" -source_commit: "de736cee392567d58e842f96afe77f707e694ce5" +source_commit: "37c022ce46eb578de5b57d7b488ffda9e3b7d9f1" core_version: "v1.23" display_name: "Sony - PocketStation (pokketstation)" cores: ["pokketstation", "pokket"] @@ -42,7 +42,7 @@ notes: | are documented: 061, from prototype hardware, and 110, the retail one. The ASCII tags at offsets 0x1DFC (C061 or C110) and 0x3FFC (J061 or J110) identify them. SWI 0Fh FlashWriteSerial works on 061 and locks the CPU on - 110 (docs/hardware-notes.md:1046-1056). + 110 (docs/hardware-notes.md:1056-1066). The desktop application takes the BIOS path from the command line, then from the bios= key of settings.cfg beside the executable, then falls back diff --git a/emulators/ppsspp.yml b/emulators/ppsspp.yml index b5f6d0ac..0c4941d7 100644 --- a/emulators/ppsspp.yml +++ b/emulators/ppsspp.yml @@ -3,7 +3,7 @@ type: standalone + libretro core_classification: official_port source: "https://github.com/hrydgard/ppsspp" profiled_date: "2026-10-21" -source_commit: "58935bbf282ddd446cc490574c2c09b9c8f8b470" +source_commit: "c86d7a268d1ce9a94ae3be662f987c5b6a724ef9" core_version: "Git" display_name: "Sony - PlayStation Portable (PPSSPP)" cores: @@ -39,10 +39,10 @@ notes: | fonts is lost. Without ppge_atlas.zim the system dialogs are not drawn (Core/Util/PPGeDraw.cpp:252-255). A real firmware is optional. The NAND is /PSP/NAND - (Core/Util/PathUtil.cpp:144-145), which the libretro core places under + (Core/Util/PathUtil.cpp:146-147), which the libretro core places under the save directory (libretro/libretro.cpp:1265, 1269). On boot, a game disc carrying a newer firmware updater than the installed one is - unpacked into it (Core/System.cpp:575-578). Its flash0:/font, + unpacked into it (Core/System.cpp:591-594). Its flash0:/font, kd/libmp4.prx, kd/mp4msv.prx and kd/mpeg.prx replace the HLE modules when present (Core/HLE/HLE.cpp:408-446). PSP_DEFAULT_FIRMWARE = 660 (Core/ConfigValues.h:40). diff --git a/emulators/puae.yml b/emulators/puae.yml index 9e32c688..374b4d56 100644 --- a/emulators/puae.yml +++ b/emulators/puae.yml @@ -5,7 +5,7 @@ cores: [puae, uae] source: "https://github.com/libretro/libretro-uae" upstream: "https://github.com/GnoStiC/PUAE" profiled_date: "2026-03-24" -source_commit: "6536174a80d74e6c325aaa5390ff091fac8761d0" +source_commit: "7387937066b1b693816c3b4e2b7a0c601d41363d" core_version: "5.3.1" display_name: "Commodore - Amiga (PUAE)" systems: diff --git a/emulators/puae2021.yml b/emulators/puae2021.yml index 4c23b844..8bca713f 100644 --- a/emulators/puae2021.yml +++ b/emulators/puae2021.yml @@ -5,7 +5,7 @@ cores: [puae2021] source: "https://github.com/libretro/libretro-uae/tree/2.6.1" upstream: "https://github.com/GnoStiC/PUAE" profiled_date: "2026-03-24" -source_commit: "297b34777372fd5f117785798f99b4c7433b6034" +source_commit: "151828f14d43bb2b0651327ee19a23b36a7081b2" core_version: "2.6.1" display_name: "Commodore - Amiga (PUAE 2021)" systems: diff --git a/emulators/qemu.yml b/emulators/qemu.yml index 2cdcec57..9e6481c4 100644 --- a/emulators/qemu.yml +++ b/emulators/qemu.yml @@ -5,6 +5,7 @@ source: "https://github.com/io12/qemu-libretro" upstream: "https://github.com/qemu/qemu" profiled_date: "2026-03-25" source_commit: "aaba4471880587540314f82419d920431d55b769" +upstream_commit: "b6c4b7e86dec12d07f5cac65265b986d38ee9002" core_version: "0.1.0" display_name: "QEMU" cores: [qemu] diff --git a/emulators/raine.yml b/emulators/raine.yml index 2fcd91cb..0fc7f31c 100644 --- a/emulators/raine.yml +++ b/emulators/raine.yml @@ -4,7 +4,7 @@ core_classification: other source: "https://github.com/zelurker/raine" upstream: "https://github.com/zelurker/raine" profiled_date: "2026-10-20" -source_commit: "8e25d5d8907ae459181610912b0030c955683015" +source_commit: "e85285188e6f719fc25de1236a2ee63fee7e3f17" core_version: "0.97.5" display_name: "Arcade (RAINE)" mode: standalone @@ -33,7 +33,7 @@ notes: | / folder (source/loadroms.c:258-275). Inside an archive a ROM is found by CRC32 first and by name second (source/files.c:370-403). A ROM missing from the set and its parents ends the load with a fatal error - (source/loadroms.c:1301-1316). The Windows build has curl and, before + (source/loadroms.c:1302-1317). The Windows build has curl and, before giving up, offers to download a missing archive from archive.org, neogeo.zip included (source/loadroms.c:1200-1240). @@ -158,7 +158,7 @@ files: size: 524288 description: "Neo-Geo CD BIOS" note: >- - Path from [neocd] neocd_bios (source/raine.c:571). Left empty, neocd.bin + Path from [neocd] neocd_bios (source/raine.c:564). Left empty, neocd.bin then neocd.zip are looked up through get_shared. A path ending in zip is opened and its neocd.bin member read by name, anything else is read raw, 0x80000 bytes. Nothing found opens a file dialog once, then the program @@ -175,7 +175,7 @@ files: sha1: "4c1d58f7c1830694933e472ec1289060f7083fa9" md5: "c996961db77b48b54a2daa3cda12da0d" description: "High score save definitions" - source_ref: "source/hiscore.c:23, source/hiscore.c:302" + source_ref: "source/hiscore.c:24, source/hiscore.c:303" - name: "history.dat" category: game_data @@ -185,7 +185,7 @@ files: sha1: "ce810602b74214726059bbd12e8010dc077aef3d" md5: "4941042df918f0f1370e2b70d0f7d0de" description: "Game history text" - source_ref: "source/history.c:56, source/emumain.c:640-645" + source_ref: "source/history.c:56, source/emumain.c:642-647" - name: "command.dat" category: game_data @@ -195,7 +195,7 @@ files: sha1: "0b358f637e01b10f7a4d45b774ebf7950fcec466" md5: "0ed03c88b93b036f2f0035f32b200f27" description: "Move lists" - source_ref: "source/history.c:56, source/emumain.c:640-645" + source_ref: "source/history.c:56, source/emumain.c:642-647" - name: "gamecontrollerdb.txt" category: game_data @@ -208,7 +208,7 @@ files: note: >- Added to SDL when present, followed by config/userdb.txt. The RetroBat package carries a different revision of this file. - source_ref: "source/sdl/control.c:2373-2382" + source_ref: "source/sdl/control.c:2396-2405" - name: "dkongm.dx2" path: "emudx/dkongm.dx2" diff --git a/emulators/retro8.yml b/emulators/retro8.yml index b5346029..5354378d 100644 --- a/emulators/retro8.yml +++ b/emulators/retro8.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/retro8" upstream: "https://github.com/Jakz/retro8" profiled_date: "2026-03-25" source_commit: "ddc06a142398ee9755894b3f0bb17c8dc428151d" +upstream_commit: "ecee6594c5b953966ee0515f3edac4032c7ed40f" core_version: "0.1b" display_name: "PICO-8 (Retro8)" cores: diff --git a/emulators/rpcs3.yml b/emulators/rpcs3.yml index 1d0c5500..a239e92b 100644 --- a/emulators/rpcs3.yml +++ b/emulators/rpcs3.yml @@ -6,7 +6,7 @@ upstream: "https://github.com/RPCS3/rpcs3" cores: - rpcs3 profiled_date: "2026-03-30" -source_commit: "46aee28f85b9cecc8fd0e5dee0c771f9c88cd27a" +source_commit: "d9efc6e83eebf6f8cb495b82400f0e349a40e2c0" core_version: "0.0.35" display_name: "Sony - PlayStation 3 (RPCS3)" systems: [sony-playstation-3] @@ -176,7 +176,7 @@ dev_flash: # -- vsh/ : Visual Shell (XMB) -- vsh: path: "dev_flash/vsh/" - source_ref: "rpcs3/rpcs3qt/main_window.cpp:275, rpcs3/rpcs3qt/main_window.cpp:684" + source_ref: "rpcs3/rpcs3qt/main_window.cpp:277, rpcs3/rpcs3qt/main_window.cpp:676" note: "PS3 XMB interface. vsh.self is the main executable, booted via 'Boot VSH' menu." files: - path: "vsh/module/vsh.self" @@ -236,7 +236,7 @@ dev_flash: # -- ps1emu/ : PS1 backward compatibility -- ps1emu: path: "dev_flash/ps1emu/" - source_ref: "rpcs3/Emu/System.cpp:2241" + source_ref: "rpcs3/Emu/System.cpp:2252" note: "PS1 Classics emulator. Booted when running PS1 game via ps1_newemu.self" files: - {name: "ps1_newemu.self", purpose: "PS1 emulator binary"} @@ -252,7 +252,7 @@ dev_flash: # -- pspemu/ : PSP backward compatibility -- pspemu: path: "dev_flash/pspemu/" - source_ref: "rpcs3/Emu/System.cpp:2269, rpcs3/Crypto/key_vault.h:285-290" + source_ref: "rpcs3/Emu/System.cpp:2280, rpcs3/Crypto/key_vault.h:285-290" note: "PSP emulator for PS3. Contains psp_emulator.self, psp_translator.self, and release/*.sprx" files: - {name: "psp_emulator.self", purpose: "PSP emulator main binary"} diff --git a/emulators/same_cdi.yml b/emulators/same_cdi.yml index c3954e99..2c9df6d3 100644 --- a/emulators/same_cdi.yml +++ b/emulators/same_cdi.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/same_cdi" upstream: "https://github.com/mamedev/mame" profiled_date: "2026-03-25" source_commit: "ff9bb99a50d518aef6d2add1c49b7c44447e3e78" +upstream_commit: "61a222977fd29f22ce11fbea3f7c290fd7ced091" core_version: "Git" display_name: "Philips - CDi (SAME CDi)" cores: [same_cdi] diff --git a/emulators/sameboy.yml b/emulators/sameboy.yml index 89f7ef76..aeec3e91 100644 --- a/emulators/sameboy.yml +++ b/emulators/sameboy.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/SameBoy" upstream: "https://github.com/LIJI32/SameBoy" profiled_date: "2026-03-25" source_commit: "aa158a889a48b538a0302873704a34577c8eb67d" +upstream_commit: "26a56bd6a122a6318a456abd80558408742d5adf" core_version: "0.15.4" display_name: "Nintendo - Game Boy / Color (SameBoy)" cores: diff --git a/emulators/sdlpal.yml b/emulators/sdlpal.yml index 33541b38..e1aa2234 100644 --- a/emulators/sdlpal.yml +++ b/emulators/sdlpal.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/sdlpal/sdlpal" upstream: "https://github.com/sdlpal/sdlpal" profiled_date: "2026-03-25" -source_commit: "a2e13e5ff83cf33448b3de3b8b612c07e28eacd7" +source_commit: "d4bf69b64d335cd680555af9df90e7ec4f3006a3" core_version: "v2.0.1" display_name: "SDLPAL" cores: diff --git a/emulators/shadps4.yml b/emulators/shadps4.yml index 8b417ad3..4ec3edb7 100644 --- a/emulators/shadps4.yml +++ b/emulators/shadps4.yml @@ -3,7 +3,7 @@ type: standalone source: "https://github.com/shadps4-emu/shadPS4" upstream: "https://github.com/shadps4-emu/shadPS4" profiled_date: "2026-03-26" -source_commit: "f73709cada28e77523e37806fee5c454711d24ba" +source_commit: "91e6afa69b0a64b0afaa0281b80f8fbb0cd88136" core_version: "pre-release 2026-08-08" display_name: "shadPS4 (PlayStation 4)" cores: diff --git a/emulators/skyemu.yml b/emulators/skyemu.yml index a6e0e972..6ca7d6d5 100644 --- a/emulators/skyemu.yml +++ b/emulators/skyemu.yml @@ -4,7 +4,7 @@ core_classification: official_port source: https://github.com/skylersaleh/SkyEmu/blob/v5/src/libretro.c upstream: https://github.com/skylersaleh/SkyEmu profiled_date: "2026-03-25" -source_commit: "01516d6798e3652b583e6a366085bb51c43b528d" +source_commit: "9b6bbb6aa73cebae6cb52ea60d04f803acadc480" core_version: "v5" display_name: "Nintendo - Game Boy/GBA/NDS (SkyEmu)" @@ -23,7 +23,7 @@ notes: | stub firmware (NDS), and HLE boot skip (GB/GBC). BIOS loading controlled by core options (default: on). Files loaded from system_dir/SkyEmu/ subdirectory. Standalone validates exact BIOS file size, while libretro only rejects files exceeding buffer. - The .info does not list gb_bios.bin, which the code reads (gb.h:1603). + The .info does not list gb_bios.bin, which the code reads (src/gb.h:1603). files: - name: cgb_boot.bin @@ -47,25 +47,25 @@ files: path: SkyEmu/gba_bios.bin required: false hle_fallback: true - source_ref: "src/gba.h:1726-1730" + source_ref: "src/gba.h:1743-1747" - name: nds7.bin description: NDS ARM7 BIOS path: SkyEmu/nds7.bin required: false hle_fallback: true - source_ref: "src/nds.h:3088-3089" + source_ref: "src/nds.h:3105-3106" - name: nds9.bin description: NDS ARM9 BIOS path: SkyEmu/nds9.bin required: false hle_fallback: true - source_ref: "src/nds.h:3091-3092" + source_ref: "src/nds.h:3108-3109" - name: firmware.bin description: NDS firmware path: SkyEmu/firmware.bin required: false hle_fallback: true - source_ref: "src/nds.h:3094, 3200-3268" + source_ref: "src/nds.h:3111, src/nds.h:3217-3285" diff --git a/emulators/snes9x-explus.yml b/emulators/snes9x-explus.yml index 6650a9b1..a1641e8e 100644 --- a/emulators/snes9x-explus.yml +++ b/emulators/snes9x-explus.yml @@ -5,7 +5,7 @@ source: "https://github.com/Rakashazi/emu-ex-plus-alpha" upstream: "https://github.com/snes9xgit/snes9x" profiled_date: "2026-08-12" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" -upstream_commit: "b33f2afb33c61d675aaf0319bd3b8cc8d6924d49" +upstream_commit: "1bcc369e89f08243e0a462882fb1f3e42e51de3a" core_version: "1.5.85" display_name: "Nintendo - SNES / SFC (Snes9x EX+)" mode: standalone diff --git a/emulators/snes9x.yml b/emulators/snes9x.yml index d1dcc1b3..be4f9bd3 100644 --- a/emulators/snes9x.yml +++ b/emulators/snes9x.yml @@ -6,7 +6,7 @@ upstream: "https://github.com/snes9xgit/snes9x" logo: "https://raw.githubusercontent.com/snes9xgit/snes9x/master/gtk/data/snes9x.svg" profiled_date: "2026-03-25" source_commit: "fae2fea08f74180759ef540ee94259213f503480" -upstream_commit: "85591435763dede7ef111aab8070cdf2d5a7da49" +upstream_commit: "1bcc369e89f08243e0a462882fb1f3e42e51de3a" core_version: "1.61" display_name: "Nintendo - SNES / SFC (Snes9x)" systems: [nintendo-snes, nintendo-satellaview, nintendo-sufami-turbo] diff --git a/emulators/snes9x2002.yml b/emulators/snes9x2002.yml index 8284ac79..4404cdef 100644 --- a/emulators/snes9x2002.yml +++ b/emulators/snes9x2002.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/snes9x2002" upstream: "https://github.com/snes9xgit/snes9x" profiled_date: "2026-03-25" source_commit: "6ffbf9ef4f0063e1f1b78a40d10c50fc52f2524c" +upstream_commit: "1bcc369e89f08243e0a462882fb1f3e42e51de3a" core_version: "7.2.0" display_name: "Nintendo - SNES / SFC (Snes9x 2002)" cores: diff --git a/emulators/snes9x2010.yml b/emulators/snes9x2010.yml index 69f197a1..68598a42 100644 --- a/emulators/snes9x2010.yml +++ b/emulators/snes9x2010.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/snes9x2010" upstream: "https://github.com/snes9xgit/snes9x" profiled_date: "2026-03-25" source_commit: "fe690dd321fa5a46b5234a2bde089d2518c62b0e" +upstream_commit: "1bcc369e89f08243e0a462882fb1f3e42e51de3a" core_version: "v1.52.4" display_name: "Nintendo - SNES / SFC (Snes9x 2010)" cores: diff --git a/emulators/sonic3-air.yml b/emulators/sonic3-air.yml index 4f76d88e..1a2aeafa 100644 --- a/emulators/sonic3-air.yml +++ b/emulators/sonic3-air.yml @@ -3,7 +3,7 @@ type: standalone core_classification: game_engine source: "https://github.com/Eukaryot/sonic3air" upstream: "https://github.com/Eukaryot/sonic3air" -source_commit: "de0fd6a7c07b399c9a612cb7cb8d61b54cb339d1" +source_commit: "87fed5407217c4552086dedf73b33de8816a78da" profiled_date: "2026-10-04" display_name: "Sonic 3 - Angel Island Revisited" cores: [sonic3air] diff --git a/emulators/soniccd.yml b/emulators/soniccd.yml index 33a00a05..4d87b7de 100644 --- a/emulators/soniccd.yml +++ b/emulators/soniccd.yml @@ -3,7 +3,7 @@ type: standalone core_classification: game_engine source: "https://github.com/RSDKModding/RSDKv3-Decompilation" upstream: "https://github.com/RSDKModding/RSDKv3-Decompilation" -source_commit: "a99e16ad15f4f824c1b9f96a61b3f8576ab648e2" +source_commit: "c01fc0c360e8e35e791630407ea5c7a426718e54" profiled_date: "2026-10-04" display_name: "Sonic CD (RSDKv3 Decomp)" cores: [sonicretrocd] diff --git a/emulators/spmp8000emu.yml b/emulators/spmp8000emu.yml index 218adb72..95c5e677 100644 --- a/emulators/spmp8000emu.yml +++ b/emulators/spmp8000emu.yml @@ -4,7 +4,7 @@ core_classification: pure_libretro source: "https://github.com/AloysHF/SPMP8000Emu" upstream: "https://github.com/AloysHF/SPMP8000Emu" profiled_date: "2026-09-03" -source_commit: "b0107b237a0b4e9231adebc7af1521726990b9ab" +source_commit: "687cd4ca995a8ef8092fff3316576b9bd642a32e" core_version: "1.0.0" display_name: "Sunplus - SPMP8000 (SPMP8000Emu)" cores: diff --git a/emulators/squirreljme.yml b/emulators/squirreljme.yml index 3cb49e82..fb71560d 100644 --- a/emulators/squirreljme.yml +++ b/emulators/squirreljme.yml @@ -4,7 +4,7 @@ core_classification: official_port source: "https://github.com/SquirrelJME/SquirrelJME" upstream: "https://github.com/SquirrelJME/SquirrelJME" profiled_date: "2026-03-25" -source_commit: "4d7334cf922c8f5abfc94a8d4fc941d350e49914" +source_commit: "4dca9d4d45523cc76272d1ade2b53121b2ea4674" core_version: "0.3.0" display_name: "Java ME (SquirrelJME)" cores: [squirreljme] @@ -23,49 +23,49 @@ files: - name: "squirreljme-0.3.0-fast.jar" description: "Class library v0.3.0, fast/optimized build" required: false - source_ref: "nanocoat/src/boot.c:102" + source_ref: "nanocoat/src/boot.c:92" - name: "squirreljme-0.3.0.jar" description: "Class library v0.3.0, standard build" required: false - source_ref: "nanocoat/src/boot.c:103" + source_ref: "nanocoat/src/boot.c:93" - name: "squirreljme-0.3.0-test.jar" description: "Class library v0.3.0, standard build with test suites" required: false - source_ref: "nanocoat/src/boot.c:104" + source_ref: "nanocoat/src/boot.c:94" - name: "squirreljme-0.3.0-slow.jar" description: "Class library v0.3.0, slow/interpreter build" required: false - source_ref: "nanocoat/src/boot.c:105" + source_ref: "nanocoat/src/boot.c:95" - name: "squirreljme-0.3.0-slow-test.jar" description: "Class library v0.3.0, slow build with test suites" required: false - source_ref: "nanocoat/src/boot.c:106" + source_ref: "nanocoat/src/boot.c:96" - name: "squirreljme-fast.jar" description: "Class library, fast/optimized build (unversioned)" required: false - source_ref: "nanocoat/src/boot.c:107" + source_ref: "nanocoat/src/boot.c:97" - name: "squirreljme.jar" description: "Class library, standard build (unversioned)" required: false - source_ref: "nanocoat/src/boot.c:108" + source_ref: "nanocoat/src/boot.c:98" - name: "squirreljme-test.jar" description: "Class library, standard build with test suites (unversioned)" required: false - source_ref: "nanocoat/src/boot.c:109" + source_ref: "nanocoat/src/boot.c:99" - name: "squirreljme-slow.jar" description: "Class library, slow/interpreter build (unversioned)" required: false - source_ref: "nanocoat/src/boot.c:110" + source_ref: "nanocoat/src/boot.c:100" - name: "squirreljme-slow-test.jar" description: "Class library, slow build with test suites (unversioned)" required: false - source_ref: "nanocoat/src/boot.c:111" + source_ref: "nanocoat/src/boot.c:101" diff --git a/emulators/srb2.yml b/emulators/srb2.yml index 61012b28..4079f6ea 100644 --- a/emulators/srb2.yml +++ b/emulators/srb2.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/STJr/SRB2" upstream: "https://git.do.srb2.org/STJr/SRB2" profiled_date: "2026-10-20" -source_commit: "8701ef41f617c06e23a7b8ccd2199c160c5d1dd1" +source_commit: "639b58c6d718452ef343a0bc927d043bed9e40d6" core_version: "2.2.15" display_name: "Sonic Robo Blast 2" cores: [srb2] @@ -21,26 +21,26 @@ notes: | archive SRB2-v2215-Full.zip, which RetroPie unpacks and installs next to the binary. The hashes below are those of the files in that archive. - IdentifyVersion() (src/d_main.c:1126-1205) finds the asset directory + IdentifyVersion() (src/d_main.c:1161-1240) finds the asset directory through I_LocateWad(), which tries SRB2WADDIR, the working directory, the default install paths, $HOME/.srb2 and the search paths in that - order (src/sdl/i_system.c:3019-3072), and chdirs there. The first + order (src/sdl/i_system.c:3044-3097), and chdirs there. The first directory holding srb2.pk3 wins. RetroPie launches the binary from its install directory. srb2/ below stands for that directory. srb2.pk3, zones.pk3 and characters.pk3 are main files: W_InitFile with startup set ends in I_Error when one is missing (src/w_wad.c:805-817). A build without DEVELOP then checks their MD5 against ASSET_HASH_* - (src/config.h.in:46-48, src/d_main.c:1447-1449) and W_VerifyFileMD5 + (src/config.h.in:46-48, src/d_main.c:1482-1484) and W_VerifyFileMD5 stops on a mismatch (src/w_wad.c:2550-2590). The CMake option SRB2_CONFIG_DEV_BUILD, off by default, is what defines DEVELOP - (src/CMakeLists.txt:149, 383-384). patch.pk3 is loaded only when + (src/CMakeLists.txt:149, 380-381). patch.pk3 is loaded only when USE_PATCH_DTA is defined, which it is not in this release (src/doomdef.h:171). music.pk3 is not hashed. MUSICTEST adds it only when it holds music and sound lumps alone, rejects it with an error when it holds anything else, - and skips it when it cannot be opened (src/d_main.c:1189-1203, + and skips it when it cannot be opened (src/d_main.c:1224-1238, src/w_wad.c:2810, 2840). files: @@ -54,7 +54,7 @@ files: md5: "3182ce524acc2072ddaa81acf4b6a9aa" sha1: "f53394ceabded0a307330d81a4ae4db59e269ecb" validation: [md5] - source_ref: "src/d_main.c:1161-1171, src/d_main.c:1447, src/config.h.in:46" + source_ref: "src/d_main.c:1196-1206, src/d_main.c:1482, src/config.h.in:46" - name: "zones.pk3" path: "srb2/zones.pk3" @@ -66,7 +66,7 @@ files: md5: "88ff4c300851ccdb0406698eadd89907" sha1: "de0e5d630c1f93472be22f981f68033107f059a2" validation: [md5] - source_ref: "src/d_main.c:1180, src/d_main.c:1448, src/config.h.in:47" + source_ref: "src/d_main.c:1215, src/d_main.c:1483, src/config.h.in:47" - name: "characters.pk3" path: "srb2/characters.pk3" @@ -78,7 +78,7 @@ files: md5: "5c5936b8a690e007c0939bd0785a41fb" sha1: "c070cd568f6579a94372e70f6c789fc479247d5c" validation: [md5] - source_ref: "src/d_main.c:1183, src/d_main.c:1449, src/config.h.in:48" + source_ref: "src/d_main.c:1218, src/d_main.c:1484, src/config.h.in:48" - name: "music.pk3" path: "srb2/music.pk3" @@ -89,5 +89,5 @@ files: size: 99639560 md5: "b8763719b66716dbd5c0f9982269be69" sha1: "84095f245c724899f52d4912f2c01e0fc9d42dc0" - source_ref: "src/d_main.c:1189-1203, src/d_main.c:1453" + source_ref: "src/d_main.c:1224-1238, src/d_main.c:1488" note: "Hashes are those of the 2.2.15 release archive. The engine does not check them." diff --git a/emulators/stella2014.yml b/emulators/stella2014.yml index 0c3d77a0..a5357483 100644 --- a/emulators/stella2014.yml +++ b/emulators/stella2014.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/stella2014-libretro" upstream: "https://github.com/stella-emu/stella" profiled_date: "2026-03-25" source_commit: "7d1361e407e63f29e52892655069e5fb4096e691" +upstream_commit: "2c3d7023e9136f75c789803b44f119d8749dc104" core_version: "3.9.3" display_name: "Atari - 2600 (Stella 2014)" cores: diff --git a/emulators/stella2023.yml b/emulators/stella2023.yml index afc3d7ac..a5cbe81c 100644 --- a/emulators/stella2023.yml +++ b/emulators/stella2023.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/stella2023" upstream: "https://github.com/stella-emu/stella" profiled_date: "2026-03-25" source_commit: "ba52c43b9eda950eb0c0eec69cda9b17dee8c39b" +upstream_commit: "2c3d7023e9136f75c789803b44f119d8749dc104" core_version: "7.0_pre" display_name: "Atari - 2600 (Stella 2023)" cores: diff --git a/emulators/stonesoup.yml b/emulators/stonesoup.yml index c2d1339e..7b80a4eb 100644 --- a/emulators/stonesoup.yml +++ b/emulators/stonesoup.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/crawl-ref" upstream: "https://github.com/crawl/crawl" profiled_date: "2026-03-25" source_commit: "cc2530f377a3a5d686d4b6a360d88b01de0fbc59" +upstream_commit: "8757df5d4397047058e25e456cac506db9c1442b" core_version: "0.16-a0" display_name: "Dungeon Crawl Stone Soup" cores: [stonesoup] diff --git a/emulators/swanstation.yml b/emulators/swanstation.yml index 9ae4477c..11e51bd4 100644 --- a/emulators/swanstation.yml +++ b/emulators/swanstation.yml @@ -4,7 +4,8 @@ core_classification: community_fork source: "https://github.com/libretro/swanstation" upstream: "https://github.com/stenzek/duckstation" profiled_date: "2026-03-25" -source_commit: "b6c30a7b270a3f68ac41f268eafdfa678d17dea2" +source_commit: "cc94ebcd38a88a0e90788d7c8bcd764a009a5fa0" +upstream_commit: "938c6d2a03e523d0e4275aa753f289a987bcb016" core_version: "v0.1" display_name: "Sony - PlayStation (SwanStation)" cores: [swanstation] diff --git a/emulators/teknoparrot.yml b/emulators/teknoparrot.yml index 442a6ff4..7403d1a5 100644 --- a/emulators/teknoparrot.yml +++ b/emulators/teknoparrot.yml @@ -5,7 +5,7 @@ source: "https://github.com/teknogods/TeknoParrotUI" upstream: closed-source author: "TeknoGods" profiled_date: "2026-10-20" -source_commit: "7ffcdf1c003ff322f2d8db659ab6fd7c4f982ade" +source_commit: "b75872addc1d5cce81a62f4c1468eab59e2d3cbe" core_version: "TeknoParrotUI 7ffcdf1" display_name: "Arcade - PC-based and Sega/Namco boards (TeknoParrot)" cores: diff --git a/emulators/thextech.yml b/emulators/thextech.yml index 0e87877f..816c6ef7 100644 --- a/emulators/thextech.yml +++ b/emulators/thextech.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/TheXTech/TheXTech" upstream: "https://github.com/TheXTech/TheXTech" profiled_date: "2026-10-04" -source_commit: "a72915cd9a2c811f2388423775f20d75bb2107bd" +source_commit: "3ad66cb1896ea9f255e8104862e4e17c2e8a8ded" display_name: "TheXTech" cores: [] systems: [smbx] @@ -110,7 +110,7 @@ files: category: game_data path: "TheXTech/graphics/" required: true - source_ref: "src/main/asset_pack.cpp:274, 326-327, src/gfx.cpp:121-229, src/load_gfx.cpp:120-123" + source_ref: "src/main/asset_pack.cpp:274, 326-327, src/gfx.cpp:121-229, src/load_gfx.cpp:117-120" note: "graphics/ui/ must exist for a directory to be scanned as a pack, and GFX_t::load rejects the pack when a required UI image is missing." - name: "fonts/" @@ -163,7 +163,7 @@ files: category: game_data path: "TheXTech/editor.ini" required: false - source_ref: "src/editor/editor_custom.cpp:962, 979, src/main/translate.cpp:888" + source_ref: "src/editor/editor_custom.cpp:969, src/editor/editor_custom.cpp:986, src/main/translate.cpp:889" note: "Item lists of the built-in editor, read when the translation table is built." - name: "intro.lvlx" @@ -179,7 +179,7 @@ files: category: game_data path: "TheXTech/introset/" required: false - source_ref: "src/game_main.cpp:194-222, 247, src/main/level_file.cpp:321-339" + source_ref: "src/game_main.cpp:194-222, 247, src/main/level_file.cpp:314-332" note: "Directory of .lvl/.lvlx intro levels. One is picked at random when present, otherwise the root intro level is opened. The Adventures of Demo pack carries none, and these 19 levels come from the introset/ of the Nostalgic Paradise pack (Blue Edition 0.2.8b, nostalgic-paradise-stable.7z). A level reads custom graphics from introset/ and from the subfolder named after it (07/, 08/, 10/), and every other block, BGO, NPC and background ID they use is present in the Adventures of Demo graphics." - name: "outro.lvlx" diff --git a/emulators/tyrquake.yml b/emulators/tyrquake.yml index 66c5add0..11f05a77 100644 --- a/emulators/tyrquake.yml +++ b/emulators/tyrquake.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/libretro/tyrquake" upstream: "http://disenchant.net/tyrquake/" profiled_date: "2026-03-25" -source_commit: "e57bb11597e8a00380f30f2627d219da960cf69a" +source_commit: "67db338ff4d27fdbcead61d4e54938d758ae62cb" core_version: "v0.62" display_name: "Quake (TyrQuake)" cores: [tyrquake] diff --git a/emulators/vba_next.yml b/emulators/vba_next.yml index 2553be0d..2e35fbc6 100644 --- a/emulators/vba_next.yml +++ b/emulators/vba_next.yml @@ -3,7 +3,7 @@ type: libretro core_classification: frozen_snapshot source: "https://github.com/libretro/vba-next" upstream: "https://github.com/visualboyadvance-m/visualboyadvance-m" -upstream_commit: "28b5156f21f2127945e0ad7e85f1545635431292" +upstream_commit: "8124d84a655e5261bee5eeb9f43c18630ec58a61" profiled_date: "2026-03-25" source_commit: "788192f215ad0a1413f1625b40ebba3423fa0ade" core_version: "SVN" @@ -29,7 +29,7 @@ notes: | jumps to 0x08000000 (ROM entry), skipping boot animation (src/gba.c:13134-13151). - Upstream VBA-M CPUInit (src/core/gba/gba.cpp:5137-5165) is functionally + Upstream VBA-M CPUInit (src/core/gba/gba.cpp:5152-5180) is functionally identical. No divergences in BIOS handling. files: diff --git a/emulators/vbam.yml b/emulators/vbam.yml index fb579c20..4cc306d2 100644 --- a/emulators/vbam.yml +++ b/emulators/vbam.yml @@ -5,6 +5,7 @@ source: "https://github.com/libretro/vbam-libretro" upstream: "https://github.com/visualboyadvance-m/visualboyadvance-m" profiled_date: "2026-03-25" source_commit: "115defb3a318258ab84746d45258a1aec19d0b4b" +upstream_commit: "8124d84a655e5261bee5eeb9f43c18630ec58a61" core_version: "2.1.4" display_name: "Nintendo - Game Boy Advance (VBA-M)" cores: diff --git a/emulators/vecx.yml b/emulators/vecx.yml index 03810ecb..c00e7cf7 100644 --- a/emulators/vecx.yml +++ b/emulators/vecx.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/libretro-vecx" upstream: "https://github.com/jhawthorn/vecx" profiled_date: "2026-03-25" -source_commit: "8f671cc9d737f2890c3ce19e177e2984dcae121f" +source_commit: "dccff5402a16d1ea7c112095a8e42632bf149506" core_version: "SVN" display_name: "GCE - Vectrex (vecx)" cores: @@ -22,7 +22,7 @@ notes: | - skip.h - modified BIOS that skips the intro The default build uses STANDARD_BIOS via #define at libretro.c:20. - At load time (retro_load_game, libretro.c:736): + At load time (retro_load_game, libretro.c:737): memcpy(rom, bios_data, bios_data_size); This copies the compiled-in BIOS data into the rom[8192] array (vecx.c:40, mapped at 0xE000-0xFFFF via vecx.c:437-439). diff --git a/emulators/vice.yml b/emulators/vice.yml index 133fc4b6..3c13c4c4 100644 --- a/emulators/vice.yml +++ b/emulators/vice.yml @@ -14,7 +14,7 @@ cores: source: "https://github.com/libretro/vice-libretro" logo: "https://raw.githubusercontent.com/VICE-Team/svn-mirror/main/vice/data/common/vice-logo-black.svg" profiled_date: "2026-03-18" -source_commit: "f63b56688f3133a2bb17499db9eebb7ab81df5f5" +source_commit: "6cbc44add8b0a03791b343712dc63dc1edad2675" core_version: "3.9" display_name: "Commodore - C64 (VICE x64, fast)" systems: diff --git a/emulators/vice_x128.yml b/emulators/vice_x128.yml index e4cc0127..c07198f9 100644 --- a/emulators/vice_x128.yml +++ b/emulators/vice_x128.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/vice-libretro" upstream: "https://sourceforge.net/projects/vice-emu/" profiled_date: "2026-03-25" -source_commit: "f63b56688f3133a2bb17499db9eebb7ab81df5f5" +source_commit: "6cbc44add8b0a03791b343712dc63dc1edad2675" core_version: "3.10" display_name: "Commodore - C128 (VICE x128)" cores: [vice_x128, x128] diff --git a/emulators/vice_x64.yml b/emulators/vice_x64.yml index aa69c91c..0cb97f2a 100644 --- a/emulators/vice_x64.yml +++ b/emulators/vice_x64.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/vice-libretro" upstream: "https://sourceforge.net/projects/vice-emu/" profiled_date: "2026-03-25" -source_commit: "f63b56688f3133a2bb17499db9eebb7ab81df5f5" +source_commit: "6cbc44add8b0a03791b343712dc63dc1edad2675" core_version: "3.10" display_name: "Commodore - C64 (VICE x64, fast)" cores: [vice_x64, x64] diff --git a/emulators/vice_x64dtv.yml b/emulators/vice_x64dtv.yml index 6df7689e..b7289af6 100644 --- a/emulators/vice_x64dtv.yml +++ b/emulators/vice_x64dtv.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/vice-libretro" upstream: "https://sourceforge.net/projects/vice-emu/" profiled_date: "2026-03-25" -source_commit: "f63b56688f3133a2bb17499db9eebb7ab81df5f5" +source_commit: "6cbc44add8b0a03791b343712dc63dc1edad2675" core_version: "3.10" display_name: "Commodore - C64DTV (VICE x64dtv)" cores: [vice_x64dtv, x64dtv] diff --git a/emulators/vice_x64sc.yml b/emulators/vice_x64sc.yml index 0beca070..673a159b 100644 --- a/emulators/vice_x64sc.yml +++ b/emulators/vice_x64sc.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/vice-libretro" upstream: "https://sourceforge.net/projects/vice-emu/" profiled_date: "2026-03-25" -source_commit: "f63b56688f3133a2bb17499db9eebb7ab81df5f5" +source_commit: "6cbc44add8b0a03791b343712dc63dc1edad2675" core_version: "3.10" display_name: "Commodore - C64 (VICE x64sc, accurate)" cores: [vice_x64sc, "x64sx"] diff --git a/emulators/vice_xscpu64.yml b/emulators/vice_xscpu64.yml index 51625423..d82077c9 100644 --- a/emulators/vice_xscpu64.yml +++ b/emulators/vice_xscpu64.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/vice-libretro" upstream: "https://sourceforge.net/projects/vice-emu/" profiled_date: "2026-03-25" -source_commit: "f63b56688f3133a2bb17499db9eebb7ab81df5f5" +source_commit: "6cbc44add8b0a03791b343712dc63dc1edad2675" core_version: "3.10" display_name: "Commodore - C64 SuperCPU (VICE xscpu64)" cores: [vice_xscpu64, xscpu64] diff --git a/emulators/vice_xvic.yml b/emulators/vice_xvic.yml index a07ee4aa..5f50b81a 100644 --- a/emulators/vice_xvic.yml +++ b/emulators/vice_xvic.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/libretro/vice-libretro" upstream: "https://sourceforge.net/projects/vice-emu/" profiled_date: "2026-03-25" -source_commit: "f63b56688f3133a2bb17499db9eebb7ab81df5f5" +source_commit: "6cbc44add8b0a03791b343712dc63dc1edad2675" core_version: "3.10" display_name: "Commodore - VIC-20 (VICE xvic)" cores: [vice_xvic, xvic] diff --git a/emulators/vircon32.yml b/emulators/vircon32.yml index 4a3bffc5..064a4226 100644 --- a/emulators/vircon32.yml +++ b/emulators/vircon32.yml @@ -4,7 +4,8 @@ core_classification: official_port source: "https://github.com/vircon32/vircon32-libretro" upstream: "https://github.com/vircon32/ComputerSoftware" profiled_date: "2026-03-25" -source_commit: "dd78c5cea1fcaa382b7492d0d813d6c1534914d7" +source_commit: "35a4042b06c30f232edb3f3abb47a10bcd8ec240" +upstream_commit: "ea62bc7caad34f483945eadb114cf7d9c26cf54c" core_version: "2026.2.18" display_name: "Vircon32" cores: @@ -26,7 +27,7 @@ notes: | 2. If found, load it via Console.LoadBiosFile() (external override) 3. If not found, load the embedded BIOS via LoadEmbeddedBios() - This runs inside context_reset() (libretro.cpp:473-474), which is called + This runs inside context_reset() (libretro.cpp:537-538), which is called whenever the OpenGL context is (re)created. The BIOS file format is a V32 ROM with a specific signature diff --git a/emulators/vkquake3.yml b/emulators/vkquake3.yml index 4627f7d6..2b94f663 100644 --- a/emulators/vkquake3.yml +++ b/emulators/vkquake3.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/suijingfeng/vkQuake3" upstream: "https://github.com/ioquake/ioq3" profiled_date: "2026-10-17" -source_commit: "5300b32803c1c61bc3b6bdf86a084c1db1a217ad" +source_commit: "650bd625eb725446279c6176804b554e2e1c98f3" core_version: "1.36" display_name: "Quake III Arena (vkQuake3)" cores: ["vkquake3"] diff --git a/emulators/winuae.yml b/emulators/winuae.yml index 1a3c4cfe..e50f04b0 100644 --- a/emulators/winuae.yml +++ b/emulators/winuae.yml @@ -2,7 +2,7 @@ emulator: WinUAE type: standalone core_classification: other source: "https://github.com/tonioni/WinUAE" -source_commit: "7ee16ec5e94f9d065121ce9f40fecc605ac0fb08" +source_commit: "17a26fa8e65e40cf4fbe33ffbdfa420a355a813d" profiled_date: "2026-10-20" core_version: "6.1.0 beta 19" display_name: "Commodore - Amiga (WinUAE)" @@ -42,8 +42,8 @@ notes: | modules of the extended ROMs: cdstrap, cd.device and cdfs.library in the CD32 ROM, cdtv.device, cdfs.library and cdstrap in the CDTV ROM. The CD32 and CDTV Kickstarts carry none. The CD32 quickstart model and the base - CDTV model have no floppy drive (cfgfile.cpp:9375-9379, 9405-9406), and - both ask for the extended ROM (cfgfile.cpp:9390-9395, 9414-9423), so + CDTV model have no floppy drive (cfgfile.cpp:9374-9378, 9404-9405), and + both ask for the extended ROM (cfgfile.cpp:9389-9394, 9413-9422), so without it no CD is read or booted. CDTV and A600/A1200 internal devices are enabled with :ENABLED, which needs diff --git a/emulators/xash3d_fwgs.yml b/emulators/xash3d_fwgs.yml index 47e3ad52..7cb8e1d2 100644 --- a/emulators/xash3d_fwgs.yml +++ b/emulators/xash3d_fwgs.yml @@ -4,7 +4,7 @@ core_classification: game_engine source: "https://github.com/FWGS/xash3d-fwgs" upstream: "https://github.com/FWGS/xash3d-fwgs" profiled_date: "2026-10-04" -source_commit: "1414fc281b6dc986378ea7ae35086c62d782a865" +source_commit: "d6b54aaf6c1d8518e08404a842f3f6ee02cef3cc" core_version: "0.21+git" display_name: "Xash3D FWGS" cores: [xash3d_fwgs, xash3d] diff --git a/emulators/xemu-chihiro.yml b/emulators/xemu-chihiro.yml index 6e6a8fa1..ab82e0e9 100644 --- a/emulators/xemu-chihiro.yml +++ b/emulators/xemu-chihiro.yml @@ -5,7 +5,8 @@ source: "https://github.com/Tovarichtch/xemu" source_branch: perf-experimental upstream: "https://github.com/xemu-project/xemu" profiled_date: "2026-10-20" -source_commit: "0d44d803b2ad22c26c907844fe81d40fbd6ffdfa" +source_commit: "98fbd75dd0f3088a4988abc1698feb37b844a41a" +upstream_commit: "25e1ee2fd59a451f2ab57e825b4f8a5414220c8b" core_version: "0.8.134-406-g0d44d803b2" display_name: "Sega - Chihiro (xemu Chihiro)" cores: diff --git a/emulators/xendroid.yml b/emulators/xendroid.yml index 52c811ee..08989a8e 100644 --- a/emulators/xendroid.yml +++ b/emulators/xendroid.yml @@ -6,7 +6,7 @@ upstream: "https://github.com/has207/xenia-edge" author: "rfandango" profiled_date: "2026-09-17" source_commit: "779680ade075d2d2a4c589c6a8d57a8e26c116c0" -upstream_commit: "84cf209221160590768f615a0369a9c4a1456bbf" +upstream_commit: "e569a1aa15632e957fc2adc3bfc875de51f79eab" core_version: "0b11201" display_name: "Microsoft - Xbox 360 (XenDroid)" cores: diff --git a/emulators/xenia.yml b/emulators/xenia.yml index 8efab744..fd82f53f 100644 --- a/emulators/xenia.yml +++ b/emulators/xenia.yml @@ -4,7 +4,7 @@ core_classification: community_fork source: "https://github.com/xenia-canary/xenia-canary" upstream: "https://github.com/xenia-canary/xenia-canary" profiled_date: "2026-03-26" -source_commit: "7347cd12ef6e3029db3abcf17a0760d9f74f84bd" +source_commit: "534aeb64ea1937361573e3933d121e636463b135" core_version: "canary" display_name: "Xenia Canary (Xbox 360)" cores: @@ -40,7 +40,7 @@ exclusion_note: > Xenia is a pure high-level emulation (HLE) Xbox 360 emulator. The entire Xbox 360 operating system (kernel, XAM dashboard services, XBDM debug manager) is reimplemented in C++ as HLE modules loaded at startup - (src/xenia/emulator.cc:317-322). System configuration (XConfig) returns hardcoded + (src/xenia/emulator.cc:320-325). System configuration (XConfig) returns hardcoded values from xboxkrnl_xconfig.cc. Memory, CPU (JIT), GPU, APU, and HID subsystems are all software-emulated. No external BIOS, firmware, NAND flash dump, or system files are loaded from disk. The wiki confirms: