diff --git a/emulators/2600-emu.yml b/emulators/2600-emu.yml index 21eb79ad0..4a889f7a3 100644 --- a/emulators/2600-emu.yml +++ b/emulators/2600-emu.yml @@ -7,6 +7,10 @@ profiled_date: "2026-08-11" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" upstream_commit: "289a40f1b63022b8bbe5b722061c660009d5de2c" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "Atari - 2600 (2600.emu)" mode: standalone cores: diff --git a/emulators/2ship.yml b/emulators/2ship.yml index 8b8c6e53a..dfe5b4dac 100644 --- a/emulators/2ship.yml +++ b/emulators/2ship.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/2ship2harkinian/2ship2harkinian" source_commit: "8a24047fbce8915993804e7819f4df4fa591551f" profiled_date: "2026-10-20" core_version: "5.0.1" +version_basis: + kind: tag + tag: "5.0.1" + distance: 0 display_name: "The Legend of Zelda: Majora's Mask (2 Ship 2 Harkinian)" cores: [2ship] systems: [2ship] diff --git a/emulators/3dsen.yml b/emulators/3dsen.yml index 01eb8faa0..50d413574 100644 --- a/emulators/3dsen.yml +++ b/emulators/3dsen.yml @@ -8,6 +8,9 @@ version_source: pattern: '[Vv](?:ersion\s*)?(\d+(?:\.\d+)+)' profiled_date: "2026-08-07" core_version: "1.1" +version_basis: + kind: unverified + why: no_artifact display_name: "3dSen (3D NES)" cores: - 3dsen diff --git a/emulators/a7800.yml b/emulators/a7800.yml index c6a9cc7c5..efbcab113 100644 --- a/emulators/a7800.yml +++ b/emulators/a7800.yml @@ -7,6 +7,10 @@ profiled_date: "2026-08-08" source_commit: "7a2afdc1ea08fc331b16b750d8c1f02d4ef62fc8" upstream_commit: "39eb9e44c394df9aec8186f2d2ef7517ace232e1" core_version: "5.2" +version_basis: + kind: file + path: "makefile" + pattern: '#define BARE_BUILD_VERSION \\?"([^"\\]+)' display_name: "Atari - 7800 (A7800)" cores: - a7800 diff --git a/emulators/abuse.yml b/emulators/abuse.yml index b0d2c799d..e2def0df1 100644 --- a/emulators/abuse.yml +++ b/emulators/abuse.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/Xenoveritas/abuse" profiled_date: "2026-10-04" source_commit: "c855a923cd7fb27b629b4e1af78b1fcc5f263d01" core_version: "v0.9.1" +version_basis: + kind: tag + tag: "v0.9.1" + distance: 0 display_name: "Abuse" cores: [abuse] systems: [] diff --git a/emulators/ace-dl.yml b/emulators/ace-dl.yml index a3efc25a7..53fa25297 100644 --- a/emulators/ace-dl.yml +++ b/emulators/ace-dl.yml @@ -8,6 +8,10 @@ version_source: pattern: 'New release <i>[^<]*</i> - (\d{4}/\d{2}/\d{2})' profiled_date: "2026-10-20" core_version: "2026/10/16" +version_basis: + kind: package + url: "https://roudoudou.com/ACE-DL/" + artifact: "BNDGEN.tar.gz (ACE-DL Linux x86-64 build), release date on the download page" display_name: "Amstrad - CPC/Plus (ACE-DL)" cores: - ace-dl diff --git a/emulators/advanced_drastic.yml b/emulators/advanced_drastic.yml index 541d8251c..620b41e0a 100644 --- a/emulators/advanced_drastic.yml +++ b/emulators/advanced_drastic.yml @@ -8,6 +8,10 @@ profiled_date: "2026-10-22" source_commit: "eaf41ab9bc8adcc15c010bf9517bc94c38e7bffd" pin_frozen: "KNULLI, the only platform that ships it, builds this revision (KNULLI package/emulators/advanced_drastic/advanced_drastic.mk:7 at tag 20260511). Later commits are not part of that build." core_version: "r2.5.2.0" +version_basis: + kind: file + path: "drastic" + pattern: "Version (r[0-9][0-9.]+[0-9])" display_name: "Nintendo - DS (advanced_drastic)" cores: - "advanced_drastic" diff --git a/emulators/aethersx2.yml b/emulators/aethersx2.yml index ba3a0c004..ae3851eb9 100644 --- a/emulators/aethersx2.yml +++ b/emulators/aethersx2.yml @@ -8,6 +8,11 @@ profiled_date: "2026-08-11" source_commit: "1d1f795dfc70e38da67724c7298779260f513889" upstream_commit: "f0523f8acb1d3a765ee73b74cffec63093569199" core_version: "1.5-3939" +version_basis: + kind: package + url: "https://web.archive.org/web/20230320102332/https://www.aethersx2.com/archive/desktop/mac/AetherSX2-v1.5-3939-mac.zip" + pattern: 'AetherSX2-v([0-9.]+-[0-9]+)-mac\.zip' + artifact: "AetherSX2-v1.5-3939-mac.zip" display_name: "Sony - PlayStation 2 (AetherSX2)" cores: - aethersx2 diff --git a/emulators/ags.yml b/emulators/ags.yml index ff986e7e5..6aa46a1fa 100644 --- a/emulators/ags.yml +++ b/emulators/ags.yml @@ -5,7 +5,11 @@ source: "https://github.com/adventuregamestudio/ags" source_branch: release-3.6.0 source_commit: "6802bad8dc3189462003d4a169fc591f64cfb9b6" profiled_date: "2026-10-20" -core_version: "3.6.0.60" +core_version: "v3.6.0.60" +version_basis: + kind: tag + tag: "v3.6.0.60" + distance: 0 display_name: "Adventure Game Studio (AGS)" cores: - ags diff --git a/emulators/alephone.yml b/emulators/alephone.yml index a44938d6c..d0dfaf1a6 100644 --- a/emulators/alephone.yml +++ b/emulators/alephone.yml @@ -6,7 +6,11 @@ upstream: "https://github.com/Aleph-One-Marathon/alephone" profiled_date: "2026-10-20" source_commit: "07a9c36aff403d143a0608815f725631a01e382c" pin_frozen: "RetroPie, the only platform that ships it, builds the release-20250829 tag at this commit (scriptmodules/ports/alephone.sh, _get_branch_alephone). Debian 10 and older get release-20250302." -core_version: "1.11 (20250829)" +core_version: "release-20250829" +version_basis: + kind: tag + tag: "release-20250829" + distance: 0 display_name: "Marathon (Aleph One)" cores: - alephone diff --git a/emulators/altirra.yml b/emulators/altirra.yml index 6497c0a66..0c8f070e9 100644 --- a/emulators/altirra.yml +++ b/emulators/altirra.yml @@ -8,6 +8,11 @@ version_source: pattern: '<h3>Current version</h3>\s*<p>\s*Altirra (\d+\.\d+)' profiled_date: "2026-08-11" core_version: "4.40" +version_basis: + kind: package + url: "https://www.virtualdub.org/downloads/Altirra-4.40-src.7z" + pattern: 'Altirra-(\d+\.\d+)-src\.7z' + artifact: "Altirra-4.40-src.7z" display_name: "Atari - 400/800/1200XL/XL/XE/XEGS/5200 (Altirra)" cores: [altirra] found_by: content diff --git a/emulators/aps3e.yml b/emulators/aps3e.yml index 8ab2d6ddc..92b387d3c 100644 --- a/emulators/aps3e.yml +++ b/emulators/aps3e.yml @@ -8,7 +8,11 @@ profiled_date: "2026-10-06" source_commit: "c6ca18217f2f1563235f83d94df78e35423a1720" upstream_commit: "1f080485b95db2700c5cf244b1314f73b6cf564e" upstream_frozen: "RPCS3 is vendored whole under app/src/main/cpp/rpcs3 at this commit, the tree the 2.43 release reports as 20071-1f080485." -core_version: "2.43" +core_version: "1.37-47-gc6ca182" +version_basis: + kind: tag + tag: "1.37" + distance: 47 display_name: "Sony - PlayStation 3 (aPS3e)" cores: - aps3e diff --git a/emulators/arcadeduck.yml b/emulators/arcadeduck.yml index 829d83610..1df81f16e 100644 --- a/emulators/arcadeduck.yml +++ b/emulators/arcadeduck.yml @@ -6,7 +6,11 @@ upstream: "https://github.com/stenzek/duckstation" source_commit: "80cdb6da6b51d687192a6346efe4499b10fe4faf" upstream_commit: "526b4a128827ecaef037134095cd95f431b52d06" profiled_date: "2026-10-26" -core_version: "0.6.0" +core_version: "0.6.0-dev" +version_basis: + kind: file + path: "src/scmversion/arcadeduck_version.h" + pattern: '#define\s+ARCADEDUCK_SEMANTIC_VERSION\s+"([^"]+)"' display_name: "Arcade - Sony ZN-1, Namco System 11, Konami GV/GQ (ArcadeDuck)" cores: - arcadeduck diff --git a/emulators/arcadeflashweb.yml b/emulators/arcadeflashweb.yml index 3a3803863..9d2931b9c 100644 --- a/emulators/arcadeflashweb.yml +++ b/emulators/arcadeflashweb.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/aureyoboss/ArcadeFlashWeb" profiled_date: "2026-08-11" source_commit: "5de66e0cd69b48721a094887a28d042f71ddad08" core_version: "1.0.2" +version_basis: + kind: file + path: "src/ArcadeFlashWeb.pro" + pattern: '^VERSION\s*\+?=\s*(\S+)' display_name: "Adobe Flash (ArcadeFlashWeb)" cores: - arcadeflashweb diff --git a/emulators/ares.yml b/emulators/ares.yml index 274cc2eed..be9726309 100644 --- a/emulators/ares.yml +++ b/emulators/ares.yml @@ -4,7 +4,12 @@ source: "https://github.com/ares-emulator/ares" upstream: "https://github.com/ares-emulator/ares" profiled_date: "2026-10-23" source_commit: "d400eee9764fe22a8de0247a52757d2021d0539c" -core_version: "v148" +core_version: "v148-143-gd400eee" +version_basis: + kind: tag + match: "v[0-9]*" + tag: "v148" + distance: 143 display_name: "ares" cores: [ares, "ares-sa"] mode: standalone diff --git a/emulators/armsx1.yml b/emulators/armsx1.yml index a0c75a604..c54c7fc9d 100644 --- a/emulators/armsx1.yml +++ b/emulators/armsx1.yml @@ -7,6 +7,10 @@ upstream: "https://github.com/allkern/psxe" profiled_date: "2026-10-26" source_commit: "d96a5b8ad6ccccb40a431488aa89b06f0318c217" core_version: "0.3.6" +version_basis: + kind: file + path: "android/app/build.gradle" + pattern: 'armsxVersionName\s*=\s*\(project\.findProperty\(.armsx\.versionName.\)\s*\?:\s*.([^\x27"]+).' display_name: "Sony - PlayStation (ARMSX1)" verification: md5 found_by: content diff --git a/emulators/ax360e.yml b/emulators/ax360e.yml index 2dd253705..57b01d8a6 100644 --- a/emulators/ax360e.yml +++ b/emulators/ax360e.yml @@ -8,7 +8,9 @@ profiled_date: "2026-08-11" source_commit: "b8c1838f21761ac463724e24105eda97b990e704" upstream_commit: "dc561e4df578c903087f9bdf56ff61d9ef9f2a93" upstream_frozen: "The xenia-canary tree vendored under app/src/main/cpp/xenia-canary is canary_experimental at this commit." -core_version: "1.18" +core_version: null +version_basis: + kind: none display_name: "Microsoft - Xbox 360 (aX360e)" cores: - ax360e diff --git a/emulators/azahar-sdl.yml b/emulators/azahar-sdl.yml index 3a146374e..126f775b3 100644 --- a/emulators/azahar-sdl.yml +++ b/emulators/azahar-sdl.yml @@ -5,7 +5,11 @@ source: "https://github.com/johndoe6345789/azahar_libretro" profiled_date: "2026-10-22" source_commit: "c8d39853c1ebacc5657e51d601713a09404ca8a7" pin_frozen: "KNULLI, the only platform that ships it, builds this revision (KNULLI package/emulators/azahar/azahar.mk:7 at tag 20260511). Later commits are not part of that build." -core_version: "Git" +core_version: "2122-rc1-178-gc8d3985" +version_basis: + kind: tag + tag: "2122-rc1" + distance: 178 display_name: "Nintendo - 3DS (Azahar SDL2)" mode: standalone cores: ["azahar"] diff --git a/emulators/azaharplus.yml b/emulators/azaharplus.yml index 107d3f637..27344f222 100644 --- a/emulators/azaharplus.yml +++ b/emulators/azaharplus.yml @@ -5,7 +5,11 @@ source: "https://github.com/AzaharPlus/AzaharPlus" upstream: "https://github.com/AzaharPlus/AzaharPlus" profiled_date: "2026-08-08" source_commit: "cf9068844820f819a6eabbeeeb6a70d546e3e85a" -core_version: "2126.0-A" +core_version: "AZAHAR_PLUS_2126_2_A" +version_basis: + kind: tag + tag: "AZAHAR_PLUS_2126_2_A" + distance: 0 display_name: "Nintendo - 3DS (AzaharPlus)" cores: - azaharplus diff --git a/emulators/basiliskii.yml b/emulators/basiliskii.yml index 23cf2b01d..718468f7b 100644 --- a/emulators/basiliskii.yml +++ b/emulators/basiliskii.yml @@ -5,6 +5,11 @@ upstream: "https://github.com/cebix/macemu" profiled_date: "2026-08-08" source_commit: "96e512bd6376e78a2869f16dcc8a9028bce5ee72" core_version: "1.0" +version_basis: + kind: file + path: "BasiliskII/src/include/version.h" + pattern: 'const int VERSION_MAJOR = (\d+);\s*\nconst int VERSION_MINOR = (\d+);' + format: "{1}.{2}" display_name: "Apple - Macintosh 68k (Basilisk II)" cores: - basiliskii diff --git a/emulators/beebem.yml b/emulators/beebem.yml index 2ae84f1b7..d0bd0654c 100644 --- a/emulators/beebem.yml +++ b/emulators/beebem.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/stardot/beebem-windows" profiled_date: "2026-08-11" source_commit: "a982ba6a74af09e801c296b29d514dbd4da09b94" core_version: "4.19" +version_basis: + kind: file + path: "Src/Version.h" + pattern: '#define\s+VERSION_STRING\s+"([^"]+)' display_name: "Acorn - BBC Micro (BeebEm)" cores: [beebem] systems: diff --git a/emulators/bennugd-monolithic.yml b/emulators/bennugd-monolithic.yml index ff6cf19ae..3af70c233 100644 --- a/emulators/bennugd-monolithic.yml +++ b/emulators/bennugd-monolithic.yml @@ -4,7 +4,11 @@ core_classification: game_engine source: "https://github.com/christianhaitian/bennugd-monolithic" profiled_date: "2026-10-22" source_commit: "60ee3389efcf9b402d66035e87f33d17d70cbd83" -core_version: "git" +core_version: "1.0.0" +version_basis: + kind: file + path: "projects/cmake/include/common_defs.cmake" + pattern: '-DVERSION="([^"]+)"' display_name: "Bennu Game Development (bennugd-monolithic)" cores: - "bgdi" diff --git a/emulators/bermuda.yml b/emulators/bermuda.yml index aceebc460..491a432e8 100644 --- a/emulators/bermuda.yml +++ b/emulators/bermuda.yml @@ -5,6 +5,10 @@ source: "https://github.com/cyxx/bermuda" profiled_date: "2026-10-22" source_commit: "cf6bdb68d53a1618967da565a44c931b15daf791" core_version: "0.1.7" +version_basis: + kind: file + path: "main_libretro.cpp" + pattern: 'static\s+const\s+char\s+\*kVersion\s+=\s+"([^"]+)' display_name: "Bermuda Syndrome (bs)" cores: - "bs" diff --git a/emulators/bigpemu.yml b/emulators/bigpemu.yml index 7f0ecbf10..7c3d28564 100644 --- a/emulators/bigpemu.yml +++ b/emulators/bigpemu.yml @@ -7,6 +7,12 @@ version_source: pattern: 'Current Version: <strong>([0-9.]+)</strong>' profiled_date: "2026-10-20" core_version: "1.221" +version_basis: + kind: package + url: "https://www.richwhitehouse.com/jaguar/builds/BigPEmu_Linux64_v1221.tar.gz" + pattern: 'BigPEmu_Linux64_v(\d)(\d+)\.tar\.gz' + format: "{1}.{2}" + artifact: "BigPEmu_Linux64_v1221.tar.gz" display_name: "BigPEmu (Atari Jaguar)" cores: - bigpemu diff --git a/emulators/bizhawk.yml b/emulators/bizhawk.yml index 4b0647243..2d727fc13 100644 --- a/emulators/bizhawk.yml +++ b/emulators/bizhawk.yml @@ -5,6 +5,10 @@ source: "https://github.com/TASEmulators/BizHawk" source_commit: "bdddf4a58aa1a022afb11dc73294a81a5aa7bbd5" profiled_date: "2026-10-20" core_version: "2.11.1" +version_basis: + kind: tag + tag: "2.11.1" + distance: 0 display_name: "Multi-system (BizHawk EmuHawk)" cores: - bizhawk diff --git a/emulators/bstone.yml b/emulators/bstone.yml index 643dd76a7..d7f4dbb2e 100644 --- a/emulators/bstone.yml +++ b/emulators/bstone.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/bibendovsky/bstone" profiled_date: "2026-10-04" source_commit: "e65a6b40b960a409d7ea840580c2431f56fb6fd4" core_version: "v1.3.4" +version_basis: + kind: tag + tag: "v1.3.4" + distance: 0 display_name: "Blake Stone (BStone)" cores: [bstone] systems: [blake-stone] diff --git a/emulators/bsyndrome.yml b/emulators/bsyndrome.yml index 7fa271a45..48021079f 100644 --- a/emulators/bsyndrome.yml +++ b/emulators/bsyndrome.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/cyxx/bermuda" source_commit: "c3aaa0337daca116eab5804456673bd01396bbb4" profiled_date: "2026-10-20" core_version: "0.1.7" +version_basis: + kind: tag + tag: "0.1.7" + distance: 0 display_name: "Bermuda Syndrome (bs)" cores: [bsyndrome] systems: [bsyndrome] diff --git a/emulators/c64-emu.yml b/emulators/c64-emu.yml index f437bcfb3..91c6a7db3 100644 --- a/emulators/c64-emu.yml +++ b/emulators/c64-emu.yml @@ -7,6 +7,10 @@ profiled_date: "2026-08-11" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" upstream_commit: "46b1bc4393251f838ce3dadd241c1f567d9371d1" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/CMakeLists.txt" + pattern: 'project\(\s*EmuFramework\s+VERSION\s+([0-9.]+)' display_name: "Commodore - C64 (C64.emu)" mode: standalone cores: diff --git a/emulators/capriceforever.yml b/emulators/capriceforever.yml index 0abad5171..aa49293db 100644 --- a/emulators/capriceforever.yml +++ b/emulators/capriceforever.yml @@ -5,6 +5,10 @@ source: "https://www.retrobat.org/repo/win64/stable/emulators/capriceforever.7z" upstream: closed-source profiled_date: "2026-10-20" core_version: "26.4" +version_basis: + kind: package + url: "https://www.retrobat.org/repo/win64/stable/emulators/capriceforever.7z" + artifact: "capriceforever.7z, Caprice.exe version resource ProductVersion" display_name: "Amstrad - CPC / PLUS (CaPriCe Forever)" cores: - capriceforever diff --git a/emulators/capricerpi.yml b/emulators/capricerpi.yml index 31d354280..75743e032 100644 --- a/emulators/capricerpi.yml +++ b/emulators/capricerpi.yml @@ -5,7 +5,11 @@ source: "https://github.com/KaosOverride/CapriceRPI" upstream: "https://sourceforge.net/projects/caprice32/" source_commit: "7d86ebdc6a5e645220c6f30cf407ac57c3256054" profiled_date: "2026-10-20" -core_version: "1.3c" +core_version: "V1.3d" +version_basis: + kind: file + path: "src/cap32.h" + pattern: '#define\s+VERSION_STRING\s+"\s*(V[0-9][^ ]*)' display_name: "Amstrad - CPC (CapriceRPI)" cores: - capricerpi diff --git a/emulators/catacombgl.yml b/emulators/catacombgl.yml index 44d52027e..051201f8e 100644 --- a/emulators/catacombgl.yml +++ b/emulators/catacombgl.yml @@ -6,6 +6,11 @@ upstream: "https://github.com/ArnoAnsems/CatacombGL" profiled_date: "2026-10-04" source_commit: "d11ba549382278cbc67ba6171faf8af338e29f77" core_version: "0.5.7 Beta" +version_basis: + kind: file + path: "src/Engine/EngineCore.cpp" + pattern: 'versionMajor\s*=\s*(\d+);\s*\n.*versionMinor\s*=\s*(\d+);\s*\n.*versionLevel\s*=\s*(\d+);\s*\n.*versionPhase\s*=\s*"([^"]+)"' + format: "{1}.{2}.{3} {4}" display_name: "Catacomb 3-D (CatacombGL)" cores: [catacombgl] systems: [catacomb-3d, catacomb-adventure] diff --git a/emulators/ccleste.yml b/emulators/ccleste.yml index 716025b45..2422cc459 100644 --- a/emulators/ccleste.yml +++ b/emulators/ccleste.yml @@ -4,7 +4,11 @@ core_classification: game_engine source: "https://github.com/lemon32767/ccleste" profiled_date: "2026-10-22" source_commit: "261d96f15af430b8111abc7a5250229246654f52" -core_version: "git" +core_version: "v1.4.0" +version_basis: + kind: tag + tag: "v1.4.0" + distance: 0 display_name: "Celeste Classic (ccleste)" cores: - "ccleste" diff --git a/emulators/cdogs.yml b/emulators/cdogs.yml index fd0acf3da..679a2eb5b 100644 --- a/emulators/cdogs.yml +++ b/emulators/cdogs.yml @@ -6,6 +6,11 @@ upstream: "https://github.com/cxong/cdogs-sdl" profiled_date: "2026-10-27" source_commit: "c70d1feaf9d89cf80e23265b256d9a364848e6ea" core_version: "2.5.0" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'set\(VERSION_MAJOR "(\d+)"\)\s*\nset\(VERSION_MINOR "(\d+)"\)\s*\nset\(VERSION_PATCH "(\d+)"\)' + format: "{1}.{2}.{3}" display_name: "C-Dogs" cores: [cdogs, cdogs-sdl] systems: [] diff --git a/emulators/cgenius.yml b/emulators/cgenius.yml index a94708f0c..4ca0e5e17 100644 --- a/emulators/cgenius.yml +++ b/emulators/cgenius.yml @@ -5,7 +5,11 @@ source: "https://gitlab.com/Dringgstein/Commander-Genius" upstream: "https://gitlab.com/Dringgstein/Commander-Genius" profiled_date: "2026-10-27" source_commit: "58a3c4fd0782fa2a087e38a039599b2ecf69ccc9" -core_version: "v3.6.4" +core_version: "3.6.4-Release" +version_basis: + kind: file + path: "version.h" + pattern: '#define\s+CGVERSION\s+"([^"]+)"' display_name: "Commander Genius" cores: [cgenius, "CGeniusExe"] systems: [commander-keen] diff --git a/emulators/chihiro-ds.yml b/emulators/chihiro-ds.yml index f5866a55a..1a0c0d505 100644 --- a/emulators/chihiro-ds.yml +++ b/emulators/chihiro-ds.yml @@ -5,6 +5,10 @@ source: "https://www.retrobat.org/repo/win64/stable/emulators/chihiro-ds.7z" upstream: closed-source profiled_date: "2026-10-20" core_version: "1.0 (Mar 14 2025)" +version_basis: + kind: package + url: "https://www.retrobat.org/repo/win64/stable/emulators/chihiro-ds.7z" + artifact: "chihiro-ds.7z, build string in cxbx.exe and cxbxr-emu.dll" display_name: "Sega - Chihiro (Chihiro-DS)" cores: - chihiro-gun diff --git a/emulators/chocolate-doom.yml b/emulators/chocolate-doom.yml index 2cd08418f..b3f416c2e 100644 --- a/emulators/chocolate-doom.yml +++ b/emulators/chocolate-doom.yml @@ -6,6 +6,10 @@ profiled_date: "2026-10-22" source_commit: "72d9e9318c4ccc61dab29bb9cc30bc8a9a93266d" pin_frozen: "EmuELEC, the only platform that ships it, builds this revision (EmuELEC packages/sx05re/emuelec-ports/chocolate-doom/package.mk:5). Later commits are not part of that build." core_version: "3.0.0" +version_basis: + kind: file + path: "configure.ac" + pattern: 'AC_INIT\(Chocolate\s+Doom,\s+([0-9][\w.+-]*)' display_name: "Doom (Chocolate Doom)" cores: - "Chocolate-Doom" diff --git a/emulators/citra-mmj.yml b/emulators/citra-mmj.yml index 3a079f61e..a9458d166 100644 --- a/emulators/citra-mmj.yml +++ b/emulators/citra-mmj.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/weihuoya/citra" profiled_date: "2026-08-11" source_commit: "9198dc24df2eb534b8fe7fa1c5c457081a7244ab" core_version: "20251112" +version_basis: + kind: tag + tag: "20251112" + distance: 0 display_name: "Nintendo - 3DS (Citra MMJ)" cores: - citra-mmj diff --git a/emulators/citron.yml b/emulators/citron.yml index 2ff13f8f5..d4b5a25ed 100644 --- a/emulators/citron.yml +++ b/emulators/citron.yml @@ -6,6 +6,9 @@ upstream: "https://git.citron-emu.org/citron-emu/Citron" profiled_date: "2026-03-26" upstream_gone: "git.citron-emu.org no longer resolves, and git.citron-emu.com redirects to an unrelated survey site, the domain having been taken. Observed 2026-09-04, no mirror found." core_version: "2026.03.12" +version_basis: + kind: unverified + why: host_gone display_name: "Citron (Nintendo Switch)" cores: - citron diff --git a/emulators/clk.yml b/emulators/clk.yml index fc04a8c9b..a0259ca14 100644 --- a/emulators/clk.yml +++ b/emulators/clk.yml @@ -4,7 +4,11 @@ source: "https://github.com/TomHarte/CLK" upstream: "https://github.com/TomHarte/CLK" profiled_date: "2026-03-26" source_commit: "9020107b563b68595ffdb6ef18aacdec85c78d69" -core_version: "2026-07-28" +core_version: "2026-07-23-136-g9020107" +version_basis: + kind: tag + tag: "2026-07-23" + distance: 136 display_name: "Clock Signal" cores: [clk] systems: diff --git a/emulators/colem.yml b/emulators/colem.yml index e13f8f719..c958b3368 100644 --- a/emulators/colem.yml +++ b/emulators/colem.yml @@ -8,6 +8,12 @@ version_source: pattern: 'The Latest Version of ColEm is (\d+(?:\.\d+)+)' profiled_date: "2026-08-08" core_version: "5.6" +version_basis: + kind: package + url: "https://fms.komkon.org/ColEm/ColEm56-Source.zip" + pattern: 'ColEm(\d)(\d+)-Source\.zip' + format: "{1}.{2}" + artifact: "ColEm56-Source.zip" display_name: "Coleco - ColecoVision / Adam (ColEm)" cores: - colem diff --git a/emulators/coolcv.yml b/emulators/coolcv.yml index b0927cec8..2a8920e4a 100644 --- a/emulators/coolcv.yml +++ b/emulators/coolcv.yml @@ -5,6 +5,10 @@ source: "https://files.retropie.org.uk/archives/coolcv.tar.gz" upstream: "http://nanochess.org/" profiled_date: "2026-10-20" core_version: "0.6.2" +version_basis: + kind: package + url: "https://files.retropie.org.uk/archives/coolcv.tar.gz" + artifact: "coolcv.tar.gz, latest entry of coolcv.txt" display_name: "Coleco - ColecoVision / Adam (CoolCV)" cores: - coolcv diff --git a/emulators/corsixth.yml b/emulators/corsixth.yml index 06b6dc9cf..e5a4f5009 100644 --- a/emulators/corsixth.yml +++ b/emulators/corsixth.yml @@ -5,7 +5,11 @@ source: "https://github.com/CorsixTH/CorsixTH" upstream: ~ profiled_date: "2026-10-04" source_commit: "e5668b9b2a6f59c492b2446821528d67f5d0ee53" -core_version: "0.70.1" +core_version: "v0.70.1-263-ge5668b9" +version_basis: + kind: tag + tag: "v0.70.1" + distance: 263 display_name: "Theme Hospital (CorsixTH)" cores: [corsixth] systems: [theme-hospital] diff --git a/emulators/cpcemu.yml b/emulators/cpcemu.yml index 4ef0637dd..d98a99f02 100644 --- a/emulators/cpcemu.yml +++ b/emulators/cpcemu.yml @@ -8,6 +8,11 @@ version_source: pattern: 'CPCemu (\d+(?:\.\d+)+) released' profiled_date: "2026-08-08" core_version: "3.0.2" +version_basis: + kind: package + url: "https://cpc-emu.org/Release/2025-04-24/cpcemu_portable-win32-x86-3.0.2.zip" + pattern: 'cpcemu_portable-win32-x86-(\d+(?:\.\d+)+)\.zip' + artifact: "cpcemu_portable-win32-x86-3.0.2.zip" display_name: "Amstrad - CPC (CPCemu)" cores: - cpcemu diff --git a/emulators/cspect.yml b/emulators/cspect.yml index c203099b6..fde57e9e5 100644 --- a/emulators/cspect.yml +++ b/emulators/cspect.yml @@ -8,6 +8,10 @@ version_source: pattern: '<u>v(\d+(?:\.\d+)+)</u>' profiled_date: "2026-08-11" core_version: "3.3.1.0" +version_basis: + kind: package + url: "https://mdf200.itch.io/cspect" + artifact: "CSpect zip from itch.io, CSpect.exe and ReadMe.txt" display_name: "Sinclair - ZX Spectrum Next (#CSpect)" verification: existence cores: [cspect] diff --git a/emulators/cxbx-reloaded-2023.yml b/emulators/cxbx-reloaded-2023.yml index cbab84656..b213b70e2 100644 --- a/emulators/cxbx-reloaded-2023.yml +++ b/emulators/cxbx-reloaded-2023.yml @@ -5,6 +5,10 @@ source: "https://github.com/Cxbx-Reloaded/Cxbx-Reloaded" profiled_date: "2026-10-20" source_commit: "31ff15ba1d91a9a00221546c665efb133889f53a" core_version: "CI-31ff15b" +version_basis: + kind: tag + tag: "CI-31ff15b" + distance: 0 display_name: "Microsoft - Xbox / Sega Chihiro (Cxbx-Reloaded 31ff15b)" cores: - chihiro diff --git a/emulators/cxbx-reloaded.yml b/emulators/cxbx-reloaded.yml index 7ff643890..e7716e748 100644 --- a/emulators/cxbx-reloaded.yml +++ b/emulators/cxbx-reloaded.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/Cxbx-Reloaded/Cxbx-Reloaded" profiled_date: "2026-08-11" source_commit: "585c49a50af1255ab155099e06f24505f9c5a800" core_version: "CI-585c49a" +version_basis: + kind: tag + tag: "CI-585c49a" + distance: 0 display_name: "Microsoft - Xbox / Sega Chihiro (Cxbx-Reloaded)" cores: - cxbx-reloaded diff --git a/emulators/daedalusx64.yml b/emulators/daedalusx64.yml index b465f1c2c..526976ff1 100644 --- a/emulators/daedalusx64.yml +++ b/emulators/daedalusx64.yml @@ -5,7 +5,11 @@ source: "https://github.com/DaedalusX64/daedalus" profiled_date: "2026-10-17" source_commit: "f17e9ed86f3806fadeb69abd29c9526ab2d4bd1b" pin_frozen: "ROCKNIX 20261001 builds this revision. Later upstream commits are not part of that build." -core_version: "Git" +core_version: "1.1.8-837-gf17e9ed" +version_basis: + kind: tag + tag: "1.1.8" + distance: 837 display_name: "Nintendo - 64 (DaedalusX64)" cores: - "daedalusx64" diff --git a/emulators/darkplaces.yml b/emulators/darkplaces.yml index 5d9e56e45..f0a8655c8 100644 --- a/emulators/darkplaces.yml +++ b/emulators/darkplaces.yml @@ -6,7 +6,11 @@ upstream: "https://github.com/xonotic/darkplaces" source_branch: div0-stable profiled_date: "2026-10-20" source_commit: "ddabe55ae766087df0b82d214ca4b6d79a443345" -core_version: "div0-stable" +core_version: "xonotic-v0.8.6-2-gddabe55" +version_basis: + kind: tag + tag: "xonotic-v0.8.6" + distance: 2 display_name: "Quake (DarkPlaces)" cores: - darkplaces-quake diff --git a/emulators/demul.yml b/emulators/demul.yml index 0664138f5..25227d87f 100644 --- a/emulators/demul.yml +++ b/emulators/demul.yml @@ -6,6 +6,9 @@ version_source: pattern: '<div class="normaltext">\[[^\]]*\] DEmul (\d+\.\d+)' profiled_date: "2026-03-26" core_version: "0.7" +version_basis: + kind: unverified + why: no_artifact display_name: "Sega - Dreamcast/NAOMI/Hikaru (Demul)" cores: - demul diff --git a/emulators/devilutionx.yml b/emulators/devilutionx.yml index 038e0c468..0c7dfcb13 100644 --- a/emulators/devilutionx.yml +++ b/emulators/devilutionx.yml @@ -6,6 +6,10 @@ upstream: ~ profiled_date: "2026-10-04" source_commit: "9d4871587e1a8d9606f97a43d85e939b82f77900" core_version: "1.6.0-dev" +version_basis: + kind: file + path: "VERSION" + pattern: '^(\S+)$' display_name: "Diablo (DevilutionX)" cores: [devilutionx] systems: [diablo] diff --git a/emulators/dgen.yml b/emulators/dgen.yml index d48858408..2fd22f363 100644 --- a/emulators/dgen.yml +++ b/emulators/dgen.yml @@ -5,6 +5,9 @@ source: "https://sourceforge.net/p/dgen/dgen" profiled_date: "2026-10-20" source_commit: "1c196e63d3e35704a97a2cef60def9df3c9fd1ce" core_version: "1.33" +version_basis: + kind: unverified + why: host_unsupported display_name: "Sega - Mega Drive - Genesis (DGen/SDL)" mode: standalone cores: diff --git a/emulators/dhewm3.yml b/emulators/dhewm3.yml index 38a002c37..35b19d0db 100644 --- a/emulators/dhewm3.yml +++ b/emulators/dhewm3.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/dhewm/dhewm3" profiled_date: "2026-10-04" source_commit: "455b88e8dff2be822f08eb498f51b383e851fa38" core_version: "1.5.5" +version_basis: + kind: tag + tag: "1.5.5" + distance: 0 display_name: "dhewm3" cores: [] systems: [doom3] diff --git a/emulators/dolphin-mmjr.yml b/emulators/dolphin-mmjr.yml index ce9095ae6..932b85f63 100644 --- a/emulators/dolphin-mmjr.yml +++ b/emulators/dolphin-mmjr.yml @@ -7,6 +7,10 @@ profiled_date: "2026-08-11" source_commit: "1b095b64857c2eabb49a42cc56ffd9d7881bc263" upstream_commit: "0f4c971326ae9389b3ad55b0fefacb708d148f4d" core_version: "11460 - bankaimaster999" +version_basis: + kind: file + path: "Source/Android/app/build.gradle" + pattern: 'return versionNumber \+ "([^"]+)"' display_name: "Nintendo - GameCube / Wii (Dolphin MMJR)" cores: - dolphin-mmjr diff --git a/emulators/dolphin-mmjr2.yml b/emulators/dolphin-mmjr2.yml index 83eecabed..16f2e81ea 100644 --- a/emulators/dolphin-mmjr2.yml +++ b/emulators/dolphin-mmjr2.yml @@ -7,6 +7,10 @@ profiled_date: "2026-08-11" source_commit: "4d0fdb8eea616320e967408cf5547c72a95196f3" upstream_commit: "3eb30c7620b4475b2e0404228ba0d2b238a132f1" core_version: "2.0-18025" +version_basis: + kind: file + path: "Source/Android/app/build.gradle" + pattern: 'def getVersion\(\)\s*\{\s*return \u0027([^\u0027]+)\u0027' display_name: "Nintendo - GameCube / Wii (Dolphin MMJR2)" cores: - dolphin-mmjr2 diff --git a/emulators/dosbox-pure-unleashed.yml b/emulators/dosbox-pure-unleashed.yml index 6d499708b..0a93e2e21 100644 --- a/emulators/dosbox-pure-unleashed.yml +++ b/emulators/dosbox-pure-unleashed.yml @@ -8,6 +8,10 @@ upstream_commit: "7f6e8fb7385fa446d1444d671063268520bf9b54" logo: "https://raw.githubusercontent.com/schellingb/dosbox-pure-unleashed/main/images/logo.png" profiled_date: "2026-08-08" core_version: "1.0-preview6" +version_basis: + kind: tag + tag: "1.0-preview6" + distance: 0 display_name: "DOS (DOSBox Pure Unleashed)" cores: - dosbox-pure-unleashed diff --git a/emulators/dosbox-sdl2.yml b/emulators/dosbox-sdl2.yml index 205a970e2..c2bba4ae0 100644 --- a/emulators/dosbox-sdl2.yml +++ b/emulators/dosbox-sdl2.yml @@ -5,7 +5,11 @@ source: "https://github.com/duganchen/dosbox" upstream: "https://sourceforge.net/projects/dosbox/" profiled_date: "2026-10-20" source_commit: "e6b88ad03202d1f74e329f54f213d3b070bd6202" -core_version: "0.74-2" +core_version: "r3911-xbrz-428-ge6b88ad" +version_basis: + kind: tag + tag: "r3911-xbrz" + distance: 428 display_name: "DOS (DOSBox SDL2)" cores: [dosbox-sdl2, "DOSBOXSDL2"] systems: [dos] diff --git a/emulators/dosbox-staging.yml b/emulators/dosbox-staging.yml index 1739d9975..689a536d4 100644 --- a/emulators/dosbox-staging.yml +++ b/emulators/dosbox-staging.yml @@ -6,6 +6,11 @@ upstream: "https://github.com/dosbox-staging/dosbox-staging" source_commit: "fa1856c057902be3e08856675d6cc1e7ffe43db6" profiled_date: "2026-10-26" core_version: "0.84.0-alpha" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'project\(dosbox-staging[^)]*?VERSION\s+([0-9.]+)[^)]*\)\s*\n\s*set\(DOSBOX_VERSION \$\{PROJECT_VERSION\}(\S*)\)' + format: "{1}{2}" display_name: "DOS (DOSBox Staging)" cores: - dosbox-staging diff --git a/emulators/dosbox-x.yml b/emulators/dosbox-x.yml index 62997ce6e..74dae2715 100644 --- a/emulators/dosbox-x.yml +++ b/emulators/dosbox-x.yml @@ -5,7 +5,11 @@ source: "https://github.com/joncampbell123/dosbox-x" upstream: "https://github.com/joncampbell123/dosbox-x" source_commit: "997f616e0886a835fc3660f2b935688f17f20d42" profiled_date: "2026-09-17" -core_version: "2026.08.31" +core_version: "2026.10.01" +version_basis: + kind: file + path: "configure.ac" + pattern: 'AC_INIT\(dosbox-x,\s*([0-9.]+)' display_name: "DOS (DOSBox-X)" cores: - dosbox-x diff --git a/emulators/drastic.yml b/emulators/drastic.yml index ad8d041fa..a71c488af 100644 --- a/emulators/drastic.yml +++ b/emulators/drastic.yml @@ -9,6 +9,10 @@ version_source: author: "Exophase (Gilead Kutnick)" profiled_date: "2026-08-11" core_version: "r2.6.0.4a" +version_basis: + kind: package + url: "https://archive.org/details/dra-stic-ds-emulator-r-2.6.0.4a" + artifact: "com.dsemu.drastic APK versionName (build 109)" display_name: "Nintendo - DS (DraStic)" cores: - drastic diff --git a/emulators/dreamm.yml b/emulators/dreamm.yml index e25f6b715..e22c8ac61 100644 --- a/emulators/dreamm.yml +++ b/emulators/dreamm.yml @@ -8,6 +8,11 @@ version_source: pattern: 'Latest Release: ([0-9.]+)' profiled_date: "2026-08-08" core_version: "4.0" +version_basis: + kind: package + url: "https://dreamm.aarongiles.com/" + pattern: 'dreamm-(\d+(?:\.\d+)+)-win32-x64\.zip' + artifact: "dreamm-4.0-win32-x64.zip" display_name: "LucasArts (DREAMM)" cores: - dreamm diff --git a/emulators/droidarcadia.yml b/emulators/droidarcadia.yml index da6ad79cc..d2e2202bd 100644 --- a/emulators/droidarcadia.yml +++ b/emulators/droidarcadia.yml @@ -9,6 +9,10 @@ version_source: author: "James Jacobs (Amigan Software)" profiled_date: "2026-10-24" core_version: "4.75" +version_basis: + kind: package + url: "https://amigan.1emu.net/releases/" + artifact: "DroidArcadia-src.rar, release 4.75 on the author's releases page" display_name: "Emerson Arcadia 2001 / Interton VC 4000 (DroidArcadia)" cores: - droidarcadia diff --git a/emulators/dsda-doom.yml b/emulators/dsda-doom.yml index 2b864d709..488cfd6f2 100644 --- a/emulators/dsda-doom.yml +++ b/emulators/dsda-doom.yml @@ -4,7 +4,11 @@ core_classification: game_engine source: "https://github.com/dsda-org/dsda-doom" profiled_date: "2026-10-20" source_commit: "e443ff7a3e6090a1ff92ad7a426916c4fd35ecc5" -core_version: "0.29.4" +core_version: "v0.29.4" +version_basis: + kind: tag + tag: "v0.29.4" + distance: 0 display_name: "Doom (dsda-doom)" cores: [dsda-doom] systems: [doom, heretic, hexen, chex] diff --git a/emulators/dsmile.yml b/emulators/dsmile.yml index ef0d55304..0ee13f513 100644 --- a/emulators/dsmile.yml +++ b/emulators/dsmile.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/derik-dot-digital/D.Smile" profiled_date: "2026-08-11" source_commit: "d4bbc3be27537def21513991647f14ea9a9c2d15" core_version: "0.4.4" +version_basis: + kind: file + path: "app/build.gradle.kts" + pattern: 'versionName\s+=\s+"([^"]+)' display_name: "VTech - V.Smile (D.Smile)" cores: - dsmile diff --git a/emulators/dsperate.yml b/emulators/dsperate.yml index 3074eef96..9058a2dfa 100644 --- a/emulators/dsperate.yml +++ b/emulators/dsperate.yml @@ -5,7 +5,11 @@ source: "https://github.com/beebono/DSperate" profiled_date: "2026-10-17" source_commit: "81b73832c2e68e2b10cb5850f0a6d393ffc6fbb7" pin_frozen: "ROCKNIX 20261001 ships the v2.0.1 release binaries, built by CI from the v2.0.1 tag at this commit." -core_version: "2.0.1" +core_version: "v2.0.1" +version_basis: + kind: tag + tag: "v2.0.1" + distance: 0 display_name: "Nintendo - DS / DSi (DSperate)" cores: - "dsperate" diff --git a/emulators/duckstation-legacy.yml b/emulators/duckstation-legacy.yml index c892d744e..35e5bf244 100644 --- a/emulators/duckstation-legacy.yml +++ b/emulators/duckstation-legacy.yml @@ -5,7 +5,11 @@ source: "https://github.com/stenzek/duckstation" profiled_date: "2026-10-22" source_commit: "56ac3d6c324ec4520dac433b071ecab6227fb459" pin_frozen: "Batocera builds this revision of 4 August 2023 as duckstation-legacy, its package marked not to be bumped, and KNULLI ships the same package." -core_version: "0.1" +core_version: "0.1-5612-g56ac3d6" +version_basis: + kind: tag + tag: "0.1" + distance: 5612 display_name: "Sony - PlayStation (DuckStation legacy)" cores: - "duckstation-legacy" diff --git a/emulators/dusklight.yml b/emulators/dusklight.yml index aea0a641f..a4e33fbcd 100644 --- a/emulators/dusklight.yml +++ b/emulators/dusklight.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/TwilitRealm/dusklight" source_commit: "40457c6adb381928e4b5fef6ed459ed291edd5e2" profiled_date: "2026-10-20" core_version: "v2.0.3" +version_basis: + kind: tag + tag: "v2.0.3" + distance: 0 display_name: "The Legend of Zelda: Twilight Princess (Dusklight)" cores: [dusklight] systems: [dusklight] diff --git a/emulators/dxx-rebirth.yml b/emulators/dxx-rebirth.yml index d4c6578aa..c61dec3d4 100644 --- a/emulators/dxx-rebirth.yml +++ b/emulators/dxx-rebirth.yml @@ -5,7 +5,12 @@ source: "https://github.com/dxx-rebirth/dxx-rebirth" upstream: ~ profiled_date: "2026-10-04" source_commit: "6943b924bea749543ef5729f31a28345e79716d2" -core_version: "git" +core_version: "0.61.0" +version_basis: + kind: file + path: "SConstruct" + pattern: 'VERSION_MAJOR: typing.Final\[int\] = (\d+)\s+VERSION_MINOR: typing.Final\[int\] = (\d+)\s+VERSION_MICRO: typing.Final\[int\] = (\d+)' + format: "{1}.{2}.{3}" display_name: "Descent 1 & 2 (DXX-Rebirth)" cores: [dxx-rebirth, d1x-rebirth, d2x-rebirth] systems: [descent, descent2] diff --git a/emulators/eden.yml b/emulators/eden.yml index a524b4a1d..dda4dfba1 100644 --- a/emulators/eden.yml +++ b/emulators/eden.yml @@ -8,7 +8,11 @@ upstream: "https://git.eden-emu.dev/eden-emu/eden" source_mirror: "https://codeberg.org/eden-emu/eden" profiled_date: "2026-03-26" source_commit: "26a03d2473787abf3223b2d0e65b291eee00c1e1" -core_version: "0.1.1" +core_version: "v0.2.0-401-g26a03d2" +version_basis: + kind: tag + tag: "v0.2.0" + distance: 401 display_name: "Eden (Nintendo Switch)" cores: - eden diff --git a/emulators/eduke32.yml b/emulators/eduke32.yml index 60ad486b8..0c781d974 100644 --- a/emulators/eduke32.yml +++ b/emulators/eduke32.yml @@ -9,6 +9,11 @@ version_source: profiled_date: "2026-10-04" source_commit: "ec5824db81817866f70da326d3811bb0f52b3517" core_version: "20260807-10669-ec5824db8" +version_basis: + kind: package + url: "https://dukeworld.com/eduke32/synthesis/20260807-10669-ec5824db8/eduke32_src_20260807-10669-ec5824db8.tar.xz" + pattern: 'eduke32_src_(\d{8}-\d+-[0-9a-f]+)\.tar' + artifact: "eduke32_src_20260807-10669-ec5824db8.tar.xz" display_name: "EDuke32" cores: [eduke32] systems: [duke3d, nam, napalm, ww2gi] diff --git a/emulators/emucorev.yml b/emulators/emucorev.yml index bbabf6e30..2c43a987b 100644 --- a/emulators/emucorev.yml +++ b/emulators/emucorev.yml @@ -6,7 +6,11 @@ upstream: "https://github.com/Vita3K/Vita3K" author: "Oleksandr (sashkinbro)" profiled_date: "2026-08-11" source_commit: "b71d8cf5397b1c6394e92eeb48427cd17e542971" -core_version: "0.1.8" +core_version: "v0.1.8" +version_basis: + kind: tag + tag: "v0.1.8" + distance: 0 display_name: "Sony - PlayStation Vita (EmuCoreV)" cores: - emucorev diff --git a/emulators/emucorex.yml b/emulators/emucorex.yml index 889c28981..f1e4aa854 100644 --- a/emulators/emucorex.yml +++ b/emulators/emucorex.yml @@ -9,7 +9,11 @@ source_commit: "bda532f311a77c828a4e6bdb4667d9e92dfdf62f" prose_written_at: "bda532f311a77c828a4e6bdb4667d9e92dfdf62f" upstream_commit: "c10a5c9ad951c517dc48b722b5b84eb9bf7fdb42" upstream_frozen: "The PCSX2 tree vendored in the app is this revision. Later PCSX2 commits are not in the port." -core_version: "0.5.1" +core_version: "v0.5.1" +version_basis: + kind: tag + tag: "v0.5.1" + distance: 0 display_name: "Sony - PlayStation 2 (EmuCoreX)" cores: - emucorex diff --git a/emulators/epsxe.yml b/emulators/epsxe.yml index 2108dd6a6..44ee5dd1d 100644 --- a/emulators/epsxe.yml +++ b/emulators/epsxe.yml @@ -9,6 +9,12 @@ version_source: author: "calb, _Demo_, Galtor (ePSXe Software S.L.)" profiled_date: "2026-08-11" core_version: "2.0.18" +version_basis: + kind: package + url: "https://www.epsxe.com/files/ePSXe2018.zip" + pattern: 'ePSXe(\d)(\d)(\d+)\.zip' + format: "{1}.{2}.{3}" + artifact: "ePSXe2018.zip" display_name: "Sony - PlayStation (ePSXe)" cores: - epsxe diff --git a/emulators/etlegacy.yml b/emulators/etlegacy.yml index 5dd6473a3..1cb547b8e 100644 --- a/emulators/etlegacy.yml +++ b/emulators/etlegacy.yml @@ -5,7 +5,12 @@ source: "https://github.com/etlegacy/etlegacy" upstream: "https://github.com/etlegacy/etlegacy" profiled_date: "2026-10-04" source_commit: "add16a92f4b10c2955136e3ab7868bfc9bff8fad" -core_version: "2.86.2+git" +core_version: "2.86.2" +version_basis: + kind: file + path: "VERSION.txt" + pattern: '^VERSION_MAJOR (\d+)\s*\nVERSION_MINOR (\d+)\s*\nVERSION_PATCH (\d+)' + format: "{1}.{2}.{3}" display_name: "ET: Legacy" cores: [etlegacy] systems: [enemyterritory] diff --git a/emulators/fallout1-ce.yml b/emulators/fallout1-ce.yml index d1601e0ad..4878f708a 100644 --- a/emulators/fallout1-ce.yml +++ b/emulators/fallout1-ce.yml @@ -5,7 +5,11 @@ source: "https://github.com/alexbatalov/fallout1-ce" upstream: ~ profiled_date: "2026-10-04" source_commit: "0609bcfd0ec40ff0571d0f57fab2821eb461dc8b" -core_version: "1.1" +core_version: "v1.1.0-7-g0609bcf" +version_basis: + kind: tag + tag: "v1.1.0" + distance: 7 display_name: "Fallout (Community Edition)" cores: [fallout1-ce, "fallout-ce"] systems: [fallout] diff --git a/emulators/fallout2-ce.yml b/emulators/fallout2-ce.yml index 9af483cba..65f409c2d 100644 --- a/emulators/fallout2-ce.yml +++ b/emulators/fallout2-ce.yml @@ -5,7 +5,11 @@ source: "https://github.com/alexbatalov/fallout2-ce" upstream: ~ profiled_date: "2026-10-04" source_commit: "e97087b9582f37075db347a89898887320753f8b" -core_version: "v1.3.0" +core_version: "1.3.0" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'MACOSX_BUNDLE_SHORT_VERSION_STRING\s+"([^"]+)"' display_name: "Fallout 2 (Community Edition)" cores: [fallout2-ce] systems: [fallout2] diff --git a/emulators/fbzx.yml b/emulators/fbzx.yml index cdd3d55e5..5151c7190 100644 --- a/emulators/fbzx.yml +++ b/emulators/fbzx.yml @@ -5,6 +5,10 @@ source: "https://github.com/rastersoft/fbzx" profiled_date: "2026-10-20" source_commit: "8d6b4cbe5fec121015e98cf545e9b3b811de2a71" core_version: "3.9.1" +version_basis: + kind: file + path: "src/menus.cpp" + pattern: 'print_string\("FBZX \(([0-9][^)"]*)\)"' display_name: "Sinclair - ZX Spectrum (FBZX)" mode: standalone cores: diff --git a/emulators/fheroes2.yml b/emulators/fheroes2.yml index 6cd29936c..75f787a71 100644 --- a/emulators/fheroes2.yml +++ b/emulators/fheroes2.yml @@ -6,6 +6,10 @@ profiled_date: "2026-10-22" source_commit: "35ca4c915be00098547d5050412a325dd55cfd7f" pin_frozen: "EmuELEC, the only platform that ships it, builds this revision (EmuELEC packages/sx05re/emuelec-ports/fheroes2/package.mk:5). Later commits are not part of that build." core_version: "1.0.11" +version_basis: + kind: file + path: "version.txt" + pattern: '^(\d[^\s]*)' display_name: "Heroes of Might and Magic II (fheroes2)" cores: - "fheroes2" diff --git a/emulators/flycast-dojo.yml b/emulators/flycast-dojo.yml index e3fe22e14..b782d6d89 100644 --- a/emulators/flycast-dojo.yml +++ b/emulators/flycast-dojo.yml @@ -9,7 +9,11 @@ upstream_commit: "f13d7ad2dcf141f59a999090dbc0f78be196e665" upstream_frozen: "The dojo branch carries flyinghead/flycast up to this commit, with the Dojo commits on top and no later merge." logo: "https://raw.githubusercontent.com/blueminder/flycast-dojo/master/shell/linux/flycast-dojo.png" profiled_date: "2026-10-27" -core_version: "dojo-7.9" +core_version: "dojo-7.9-1-gfa518ac" +version_basis: + kind: tag + tag: "dojo-7.9" + distance: 1 display_name: "Sega - Dreamcast/Naomi (Flycast Dojo)" cores: - flycast-dojo diff --git a/emulators/fpse-ng.yml b/emulators/fpse-ng.yml index cfb92408a..acff63142 100644 --- a/emulators/fpse-ng.yml +++ b/emulators/fpse-ng.yml @@ -10,6 +10,10 @@ version_source: author: "Schtruck & LDchen" profiled_date: "2026-08-11" core_version: "1.13" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=com.emulator.fpse64" + artifact: "com.emulator.fpse64 APK versionName (versionCode 245)" display_name: "Sony - PlayStation (FPseNG)" cores: - "fpse-ng" diff --git a/emulators/fpse.yml b/emulators/fpse.yml index c476f9758..6ff069202 100644 --- a/emulators/fpse.yml +++ b/emulators/fpse.yml @@ -10,6 +10,10 @@ version_source: author: "Schtruck & LDchen (EMUSOFT)" profiled_date: "2026-08-11" core_version: "12.1" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=com.emulator.fpse" + artifact: "com.emulator.fpse APK versionName (versionCode 940)" display_name: "Sony - PlayStation (FPse)" cores: - fpse diff --git a/emulators/frotz.yml b/emulators/frotz.yml index f9b6cdf7e..5fb883341 100644 --- a/emulators/frotz.yml +++ b/emulators/frotz.yml @@ -5,7 +5,11 @@ source: "https://gitlab.com/DavidGriffith/frotz" upstream: "https://gitlab.com/DavidGriffith/frotz" profiled_date: "2026-10-17" source_commit: "042d7bcadc1e2a8090cf737c841d8b7fc14b6eff" -core_version: "2.55pre" +core_version: "2.56pre" +version_basis: + kind: file + path: "Makefile" + pattern: '^VERSION\s*=\s*(\S+)' display_name: "Infocom Z-Machine (SDL Frotz)" cores: - "frotz" diff --git a/emulators/fs-uae.yml b/emulators/fs-uae.yml index e201471bc..a27c83e40 100644 --- a/emulators/fs-uae.yml +++ b/emulators/fs-uae.yml @@ -4,7 +4,11 @@ core_classification: other source: "https://github.com/FrodeSolheim/fs-uae" profiled_date: "2026-10-20" source_commit: "596d803944f6498c305ac48d338f6252cbde7ecb" -core_version: "3.1.64" +core_version: "v3.1.64" +version_basis: + kind: tag + tag: "v3.1.64" + distance: 0 display_name: "Commodore - Amiga (FS-UAE 3.1)" cores: [fs-uae] systems: [commodore-amiga] diff --git a/emulators/fury.yml b/emulators/fury.yml index a844f8467..2894b01bc 100644 --- a/emulators/fury.yml +++ b/emulators/fury.yml @@ -9,6 +9,11 @@ version_source: profiled_date: "2026-10-04" source_commit: "ec5824db81817866f70da326d3811bb0f52b3517" core_version: "20260807-10669-ec5824db8" +version_basis: + kind: package + url: "https://dukeworld.com/eduke32/synthesis/latest/" + pattern: 'eduke32_src_(\d{8}-\d+-[0-9a-f]+)\.tar' + artifact: "eduke32_src_20260807-10669-ec5824db8.tar.xz" display_name: "Ion Fury" cores: [fury, ionfury] systems: [fury] diff --git a/emulators/future-pinball-fploader.yml b/emulators/future-pinball-fploader.yml index 7b036a34b..21b5a035f 100644 --- a/emulators/future-pinball-fploader.yml +++ b/emulators/future-pinball-fploader.yml @@ -6,6 +6,9 @@ upstream: "https://www.ravarcade.pl/" profiled_date: "2026-08-11" source_commit: "e13007994011ae57dd9d9f48674c1f774183914b" core_version: "1.5-408" +version_basis: + kind: unverified + why: no_artifact display_name: "Future Pinball (BAM)" cores: - future-pinball-fploader diff --git a/emulators/future-pinball.yml b/emulators/future-pinball.yml index 4f7bd5e8c..2e069ac97 100644 --- a/emulators/future-pinball.yml +++ b/emulators/future-pinball.yml @@ -8,6 +8,10 @@ version_source: pattern: 'The current version is ([0-9.]+)' profiled_date: "2026-08-11" core_version: "1.9.1.20101231" +version_basis: + kind: package + url: "https://futurepinball.com/home.html" + artifact: "Future Pinball release labelled 1.9.1.20101231 on futurepinball.com, Future Pinball.exe" display_name: "Future Pinball" cores: - fpinball diff --git a/emulators/gargoyle.yml b/emulators/gargoyle.yml index a61c723f3..cff2a7db1 100644 --- a/emulators/gargoyle.yml +++ b/emulators/gargoyle.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/garglk/garglk" profiled_date: "2026-08-08" source_commit: "9e06211c20bee35026744424a57f50375cdc29db" core_version: "2026.1" +version_basis: + kind: file + path: "VERSION" + pattern: '^(\S+)' display_name: "Interactive Fiction (Gargoyle)" cores: - gargoyle diff --git a/emulators/gba-emu.yml b/emulators/gba-emu.yml index 223103328..a75fc36df 100644 --- a/emulators/gba-emu.yml +++ b/emulators/gba-emu.yml @@ -7,6 +7,10 @@ profiled_date: "2026-08-11" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" upstream_commit: "46cc9f6bda114737e99304a4bd8427c038e63084" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "Nintendo - Game Boy Advance (GBA.emu)" mode: standalone cores: diff --git a/emulators/gbc-emu.yml b/emulators/gbc-emu.yml index 55833963b..2be409fcf 100644 --- a/emulators/gbc-emu.yml +++ b/emulators/gbc-emu.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/sinamas/gambatte" profiled_date: "2026-08-11" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "Nintendo - Game Boy / Color (GBC.emu)" mode: standalone cores: diff --git a/emulators/gemrb.yml b/emulators/gemrb.yml index 535b6b38d..6ebb4e9ab 100644 --- a/emulators/gemrb.yml +++ b/emulators/gemrb.yml @@ -5,7 +5,11 @@ source: "https://github.com/gemrb/gemrb" upstream: "https://github.com/gemrb/gemrb" profiled_date: "2026-10-20" source_commit: "ef32a9a8b837ddf4f3a9508b23710146ada2d5fe" -core_version: "0.9.2" +core_version: "v0.9.2" +version_basis: + kind: tag + tag: "v0.9.2" + distance: 0 display_name: "Infinity Engine (GemRB)" cores: - gemrb diff --git a/emulators/ghostship.yml b/emulators/ghostship.yml index 0013f1adf..a2dd06aca 100644 --- a/emulators/ghostship.yml +++ b/emulators/ghostship.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/HarbourMasters/Ghostship" source_commit: "deb091c29caff57dd986398087b058f16b11911e" profiled_date: "2026-10-20" core_version: "3.0.0" +version_basis: + kind: tag + tag: "3.0.0" + distance: 0 display_name: "Super Mario 64 (Ghostship)" cores: [ghostship] systems: [ghostship] diff --git a/emulators/gngeopi.yml b/emulators/gngeopi.yml index 55c20e78d..d73481531 100644 --- a/emulators/gngeopi.yml +++ b/emulators/gngeopi.yml @@ -4,7 +4,11 @@ core_classification: community_fork source: "https://github.com/ymartel06/GnGeo-Pi" profiled_date: "2026-10-20" source_commit: "b94571c6097b67cfc9db5eaffb98cdc8bcb55c6e" -core_version: "0.85" +core_version: "0.8" +version_basis: + kind: file + path: "gngeo/configure.in" + pattern: 'AC_INIT\(gngeo,\s*([^)\s]+)\)' display_name: "SNK - Neo Geo (GnGeo-Pi)" mode: standalone cores: diff --git a/emulators/gopher2600.yml b/emulators/gopher2600.yml index 742c50099..ba38a7837 100644 --- a/emulators/gopher2600.yml +++ b/emulators/gopher2600.yml @@ -5,7 +5,11 @@ source: "https://github.com/JetSetIlly/Gopher2600" upstream: "https://github.com/JetSetIlly/Gopher2600" profiled_date: "2026-08-08" source_commit: "295b9e1c08203453677ea4184e284c0664f5949a" -core_version: "v0.57.0" +core_version: "v0.58.0" +version_basis: + kind: file + path: "Makefile" + pattern: '^version\s*=\s*(\S+)' display_name: "Atari - 2600 (Gopher2600)" cores: - gopher2600 diff --git a/emulators/gopher64.yml b/emulators/gopher64.yml index 2b0197fee..0440a049d 100644 --- a/emulators/gopher64.yml +++ b/emulators/gopher64.yml @@ -5,7 +5,11 @@ source: "https://github.com/gopher64/gopher64" upstream: "https://github.com/gopher64/gopher64" profiled_date: "2026-10-23" source_commit: "87385e77432cd278ac8588c7ed3d5014fc0d6bab" -core_version: "v1.1.42" +core_version: "1.1.42" +version_basis: + kind: file + path: "Cargo.toml" + pattern: 'version\s+=\s+"([^"]+)' display_name: "Nintendo - Nintendo 64 (gopher64)" cores: - gopher64 diff --git a/emulators/gsplus-legacy.yml b/emulators/gsplus-legacy.yml index 8c12640b5..f63659cd7 100644 --- a/emulators/gsplus-legacy.yml +++ b/emulators/gsplus-legacy.yml @@ -8,6 +8,10 @@ profiled_date: "2026-10-20" source_commit: "480572054518112647c8fae5d7ea7046a6d6ecfb" pin_frozen: "Recalbox builds this commit (Recalbox package/gsplus/gsplus.mk:8-9 at tag 10.1.1). Batocera builds the applemu fork and RetroBat its release build, as the notes say." core_version: "0.14" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'project\(gsplus\s+VERSION\s+([0-9][\w.+-]*)' display_name: "Apple - Apple IIGS (GSplus legacy)" systems: - apple-iigs diff --git a/emulators/gsplus.yml b/emulators/gsplus.yml index cf6469ce1..911950623 100644 --- a/emulators/gsplus.yml +++ b/emulators/gsplus.yml @@ -5,7 +5,11 @@ source: "https://github.com/digarok/gsplus" upstream: "https://kegs.sourceforge.net/" profiled_date: "2026-03-29" source_commit: "41e71031debbde98e66ea5c5c67498e9b4726a6d" -core_version: "KEGS 1.38" +core_version: "1.38.0" +version_basis: + kind: file + path: "gsplus/src/CMakeLists.txt" + pattern: 'project\(gsplus\s+VERSION\s+([0-9][0-9.]*)' display_name: "Apple - Apple IIGS (GSplus)" cores: - gsplus diff --git a/emulators/gzdoom.yml b/emulators/gzdoom.yml index 844fe3765..026507747 100644 --- a/emulators/gzdoom.yml +++ b/emulators/gzdoom.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/ZDoom/gzdoom" profiled_date: "2026-10-04" source_commit: "c26ce2e6ca2a0c770f140cb25dde0d30073ca8f7" core_version: "4.15pre" +version_basis: + kind: file + path: "src/version.h" + pattern: '#define\s+VERSIONSTR\s+"([^"]+)' display_name: "GZDoom" cores: ["GZDoom", "gzdoom-sa"] systems: [doom, heretic, hexen, strife, chex] diff --git a/emulators/hakux.yml b/emulators/hakux.yml index 9b56a189e..b8daffc28 100644 --- a/emulators/hakux.yml +++ b/emulators/hakux.yml @@ -7,7 +7,11 @@ author: "rfandango" profiled_date: "2026-08-11" source_commit: "e64e336d27dc8a56b67f441ec36bfddc1379cb6e" upstream_commit: "26fcbe54f17e496bdf530dad9f237e74e2f943fc" -core_version: "0.3.1" +core_version: "v0.3.1" +version_basis: + kind: tag + tag: "v0.3.1" + distance: 0 display_name: "Microsoft - Xbox (hakuX)" cores: - hakux diff --git a/emulators/hcl.yml b/emulators/hcl.yml index 6c40618cb..d7691ffd5 100644 --- a/emulators/hcl.yml +++ b/emulators/hcl.yml @@ -5,7 +5,11 @@ source: "https://github.com/ptitSeb/hydracastlelabyrinth" upstream: "https://github.com/ptitSeb/hydracastlelabyrinth" profiled_date: "2026-10-04" source_commit: "e31648688434a789e3056e52cdf1b9a842eeed48" -core_version: ~ +core_version: "v0.1.0-4-ge316486" +version_basis: + kind: tag + tag: "v0.1.0" + distance: 4 display_name: "Hydra Castle Labyrinth (hcl)" cores: [hcl] systems: [] diff --git a/emulators/hode.yml b/emulators/hode.yml index 500526c9e..db6e30537 100644 --- a/emulators/hode.yml +++ b/emulators/hode.yml @@ -5,6 +5,10 @@ source: "https://github.com/usineur/hode" profiled_date: "2026-10-22" source_commit: "59f3c466923c6b8d49e29176ff697a91165e7efc" core_version: "0.2.9f" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'nacptool --create "[^"]*" "[^"]*" "([^"]+)"' display_name: "Heart of Darkness (hode)" cores: - "hode" diff --git a/emulators/hurrican.yml b/emulators/hurrican.yml index 43d518712..8dcc13220 100644 --- a/emulators/hurrican.yml +++ b/emulators/hurrican.yml @@ -5,7 +5,11 @@ source: "https://github.com/HurricanGame/Hurrican" upstream: "https://github.com/HurricanGame/Hurrican" profiled_date: "2026-10-04" source_commit: "0d91d1f2d40f38d21e7f41afc01369ee55649fb6" -core_version: ~ +core_version: "v1.0.9.3-398-g0d91d1f" +version_basis: + kind: tag + tag: "v1.0.9.3" + distance: 398 display_name: "Hurrican" cores: [hurrican] systems: [] diff --git a/emulators/hypseus-singe.yml b/emulators/hypseus-singe.yml index c18965f59..261098e32 100644 --- a/emulators/hypseus-singe.yml +++ b/emulators/hypseus-singe.yml @@ -7,6 +7,10 @@ source_commit: "a16e2521ee3233ef20c44e562008c47f4b4293df" upstream_commit: "cd214c6046365047704f8a0563928970b30444e6" profiled_date: "2026-10-27" core_version: "v3.0.2" +version_basis: + kind: tag + tag: "v3.0.2" + distance: 0 display_name: "Arcade (Hypseus Singe)" cores: - hypseus-singe diff --git a/emulators/idtech4a++.yml b/emulators/idtech4a++.yml index 79573fe57..25130e05c 100644 --- a/emulators/idtech4a++.yml +++ b/emulators/idtech4a++.yml @@ -6,7 +6,11 @@ upstream: "https://github.com/glKarin/com.n0n3m4.diii4a" author: "glKarin" profiled_date: "2026-09-17" source_commit: "ce49510f3b0c04969eab8ebe8238416e84e4f0bb" -core_version: "1.1.0harmattan73" +core_version: "v1.1.0harmattan73" +version_basis: + kind: tag + tag: "v1.1.0harmattan73" + distance: 0 display_name: "id Tech engine collection (idTech4A++)" cores: - "idtech4a++" diff --git a/emulators/ikemen.yml b/emulators/ikemen.yml index eda036bfd..a2c128ec9 100644 --- a/emulators/ikemen.yml +++ b/emulators/ikemen.yml @@ -5,7 +5,12 @@ source: "https://github.com/ikemen-engine/Ikemen-GO" upstream: "https://github.com/ikemen-engine/Ikemen-GO" profiled_date: "2026-10-04" source_commit: "e9bfe1125dea88769b265e57bcfaefdb22fa4322" -core_version: ~ +core_version: "v1.0.0-rc.1-545-ge9bfe11" +version_basis: + kind: tag + match: "v*" + tag: "v1.0.0-rc.1" + distance: 545 display_name: "Ikemen GO" cores: [ikemen] systems: [] diff --git a/emulators/ines.yml b/emulators/ines.yml index 9066a47a3..fe94bcf5d 100644 --- a/emulators/ines.yml +++ b/emulators/ines.yml @@ -9,6 +9,10 @@ version_source: author: "Marat Fayzullin (Garage Research)" profiled_date: "2026-10-20" core_version: "6.1.12" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=com.fms.ines.free" + artifact: "com.fms.ines.free APK versionName (versionCode 6112)" display_name: "Nintendo - NES / Famicom (iNES)" cores: - ines diff --git a/emulators/infinity.yml b/emulators/infinity.yml index 127b94351..7a756ed86 100644 --- a/emulators/infinity.yml +++ b/emulators/infinity.yml @@ -10,6 +10,10 @@ version_source: author: "GuoPing He" profiled_date: "2026-08-11" core_version: "5" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=me.dt2dev.infinity" + artifact: "me.dt2dev.infinity APK versionName (versionCode 501)" display_name: "PICO-8 (Infinity)" cores: - infinity diff --git a/emulators/ioquake3.yml b/emulators/ioquake3.yml index acf8d129c..58020f253 100644 --- a/emulators/ioquake3.yml +++ b/emulators/ioquake3.yml @@ -5,7 +5,11 @@ source: "https://github.com/ioquake/ioq3" upstream: "https://github.com/ioquake/ioq3" profiled_date: "2026-10-04" source_commit: "87a99d18206e878a20289f05ac3c16005dcae5c3" -core_version: "1.36+git" +core_version: "1.36" +version_basis: + kind: file + path: "cmake/identity.cmake" + pattern: 'set\(PROJECT_VERSION\s+([^)\s]+)\)' display_name: "ioquake3" cores: [ioquake3] systems: [quake3, teamarena] diff --git a/emulators/iortcw.yml b/emulators/iortcw.yml index 1ec447039..7116d0f85 100644 --- a/emulators/iortcw.yml +++ b/emulators/iortcw.yml @@ -5,6 +5,11 @@ source: "https://github.com/iortcw/iortcw" upstream: "https://github.com/iortcw/iortcw" profiled_date: "2026-10-04" source_commit: "438e7d413b5f7277187c35b032eb0ef9093ae778" +core_version: "1.51d" +version_basis: + kind: file + path: "SP/Makefile" + pattern: '^VERSION=([0-9][^-\s]*)-SP' display_name: "ioRTCW" cores: [] systems: [return-to-castle-wolfenstein] diff --git a/emulators/iratajaguar.yml b/emulators/iratajaguar.yml index b40a36c2e..1917a6504 100644 --- a/emulators/iratajaguar.yml +++ b/emulators/iratajaguar.yml @@ -9,6 +9,11 @@ version_source: author: "Maxim Grishin (Altmer)" profiled_date: "2026-08-11" core_version: "1.0.7" +version_basis: + kind: package + url: "http://www.arts-union.ru/node/23" + pattern: 'IrataJaguar_free_(\d+(?:\.\d+)+)\.zip' + artifact: "IrataJaguar_free_1.0.7.zip" display_name: "Atari - Jaguar (IrataJaguar)" cores: - iratajaguar diff --git a/emulators/izapple2.yml b/emulators/izapple2.yml index 58b69eba4..e01c623ea 100644 --- a/emulators/izapple2.yml +++ b/emulators/izapple2.yml @@ -5,7 +5,11 @@ source: "https://github.com/ivanizag/izapple2" upstream: "https://github.com/ivanizag/izapple2" profiled_date: "2026-08-08" source_commit: "4e773baf9f1f3fb692e3f3444eb5f42fddb205ef" -core_version: "v2.5.0" +core_version: "v2.5.0-3-g4e773ba" +version_basis: + kind: tag + tag: "v2.5.0" + distance: 3 display_name: "Apple - Apple II (izapple2)" cores: - izapple2 diff --git a/emulators/j2me-loader.yml b/emulators/j2me-loader.yml index 33f79785d..f1df6771e 100644 --- a/emulators/j2me-loader.yml +++ b/emulators/j2me-loader.yml @@ -7,6 +7,10 @@ author: "Nikita Shakarun" profiled_date: "2026-10-23" source_commit: "76383ebf348b5d477256fc884dfc55f053b45a86" core_version: "1.8.2" +version_basis: + kind: file + path: "app/build.gradle" + pattern: 'versionName\s+"([^"]+)' display_name: "Mobile - J2ME (J2ME Loader)" cores: - j2me-loader diff --git a/emulators/jgenesis.yml b/emulators/jgenesis.yml index 579ea3a12..20fe6fdad 100644 --- a/emulators/jgenesis.yml +++ b/emulators/jgenesis.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/jsgroth/jgenesis" profiled_date: "2026-08-08" source_commit: "0a00c47ba7a16bd6e77ef7e0b6c8fab2fc603cba" core_version: "0.14.1" +version_basis: + kind: file + path: "Cargo.toml" + pattern: 'version\s+=\s+"([^"]+)' display_name: "Multi-System (jgenesis)" cores: - jgenesis diff --git a/emulators/jl-mod.yml b/emulators/jl-mod.yml index a8aee96d1..927a98b9a 100644 --- a/emulators/jl-mod.yml +++ b/emulators/jl-mod.yml @@ -8,6 +8,10 @@ profiled_date: "2026-08-11" source_commit: "f723a190c0bdb44b31c3bc0ead6f8665c7ea517d" upstream_commit: "76383ebf348b5d477256fc884dfc55f053b45a86" core_version: "0.87.1" +version_basis: + kind: file + path: "app/build.gradle.kts" + pattern: 'versionName\s+=\s+"([^"]+)' display_name: "Mobile - J2ME (JL-Mod)" cores: - jl-mod diff --git a/emulators/julius.yml b/emulators/julius.yml index 40a235cab..504f3d47b 100644 --- a/emulators/julius.yml +++ b/emulators/julius.yml @@ -5,7 +5,12 @@ source: "https://github.com/bvschaik/julius" upstream: "https://github.com/bvschaik/julius" profiled_date: "2026-10-17" source_commit: "34d1ecd54befb845c0139b371fa8a0438210dac1" -core_version: "v1.8.0" +core_version: "1.8.0" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'set\(PROJECT_VERSION_MAJOR (\d+)\)\s*\nset\(PROJECT_VERSION_MINOR (\d+)\)\s*\nset\(PROJECT_VERSION_PATCH (\d+)\)' + format: "{1}.{2}.{3}" display_name: "Caesar III (Julius)" cores: - "julius" diff --git a/emulators/jynx.yml b/emulators/jynx.yml index 05c82f717..3acc894d6 100644 --- a/emulators/jynx.yml +++ b/emulators/jynx.yml @@ -4,7 +4,11 @@ core_classification: other source: "https://github.com/jonathan-markland/Jynx" profiled_date: "2026-10-20" source_commit: "c1247f2c957b78d3ca6f2b814ee346a298f3573c" -core_version: "1.0.8" +core_version: "v1.0.8" +version_basis: + kind: tag + tag: "v1.0.8" + distance: 0 display_name: "Camputers - Lynx (Jynx)" cores: - jynx diff --git a/emulators/jzintv.yml b/emulators/jzintv.yml index b34f27c35..c35eb8ddd 100644 --- a/emulators/jzintv.yml +++ b/emulators/jzintv.yml @@ -8,6 +8,11 @@ version_source: pattern: 'jzintv-(\d{8})-src\.zip' profiled_date: "2026-10-20" core_version: "20200712" +version_basis: + kind: package + url: "http://spatula-city.org/~im14u2c/intv/" + pattern: 'jzintv-(\d{8})-src\.zip' + artifact: "jzintv-20200712-src.zip" display_name: "Mattel - Intellivision (jzIntv)" cores: - jzintv diff --git a/emulators/kega-fusion.yml b/emulators/kega-fusion.yml index 3b17be7eb..cf81fc678 100644 --- a/emulators/kega-fusion.yml +++ b/emulators/kega-fusion.yml @@ -6,6 +6,10 @@ upstream: closed-source author: "Steve Snake" profiled_date: "2026-10-20" core_version: "3.64" +version_basis: + kind: package + url: "https://www.retrobat.ovh/repo/win64/stable/emulators/kega-fusion.7z" + artifact: "kega-fusion.7z, Fusion.exe banner" display_name: "Sega - Master System / Mega Drive / Mega CD / 32X (Kega Fusion)" cores: - kega-fusion diff --git a/emulators/kegs.yml b/emulators/kegs.yml index 9293527db..783eae855 100644 --- a/emulators/kegs.yml +++ b/emulators/kegs.yml @@ -8,6 +8,11 @@ version_source: pattern: 'Download the KEGS v(\d+\.\d+) zip' profiled_date: "2026-08-08" core_version: "1.38" +version_basis: + kind: package + url: "https://kegs.sourceforge.net/kegs.1.38.zip" + pattern: 'kegs\.(\d+\.\d+)\.zip' + artifact: "kegs.1.38.zip" display_name: "Apple - Apple IIGS (KEGS)" cores: - kegs diff --git a/emulators/kemulator.yml b/emulators/kemulator.yml index bf884f844..9b77503d1 100644 --- a/emulators/kemulator.yml +++ b/emulators/kemulator.yml @@ -6,7 +6,11 @@ upstream: "https://github.com/shinovon/KEmulator" author: "shinovon" profiled_date: "2026-08-11" source_commit: "1ab219907cfcac0e6313d1b6ccba13ad74015d08" -core_version: "v2.22" +core_version: "2.22" +version_basis: + kind: file + path: "src/main/emulator/Emulator.java" + pattern: 'public static String version = "([^"]+)"' display_name: "Mobile - J2ME (KEmulator nnmod)" cores: - kemulator diff --git a/emulators/kenji-nx.yml b/emulators/kenji-nx.yml index 9c9c60a5e..9cbf4c8ec 100644 --- a/emulators/kenji-nx.yml +++ b/emulators/kenji-nx.yml @@ -7,6 +7,9 @@ upstream: "https://git.ryujinx.app/projects/Ryubing" profiled_date: "2026-08-11" source_commit: "53d32a761e61dc8e9b5c0744199a890fc8d934d5" core_version: "2.1.0-pr.2" +version_basis: + kind: unverified + why: host_unreachable display_name: "Nintendo - Switch (Kenji-NX)" cores: - kenji-nx diff --git a/emulators/lexaloffle.yml b/emulators/lexaloffle.yml index ef12e99e6..2ee407462 100644 --- a/emulators/lexaloffle.yml +++ b/emulators/lexaloffle.yml @@ -2,6 +2,10 @@ emulator: Lexaloffle type: standalone upstream: "https://www.lexaloffle.com/" profiled_date: "2026-03-26" +core_version: null +version_basis: + kind: unverified + why: no_artifact display_name: "Lexaloffle - PICO-8 / Voxatron" cores: - lexaloffle diff --git a/emulators/lightspark.yml b/emulators/lightspark.yml index e2b7a07c1..18a5852f1 100644 --- a/emulators/lightspark.yml +++ b/emulators/lightspark.yml @@ -6,6 +6,11 @@ upstream: "https://github.com/lightspark/lightspark" profiled_date: "2026-08-08" source_commit: "6f07fd65cb95b88ff73e905bf78a1a8b1ddf6049" core_version: "0.10.0" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'SET\(MAJOR_VERSION "(\d+)"\)\s*\nSET\(MINOR_VERSION "(\d+)"\)\s*\nSET\(PATCH_VERSION "(\d+)"\)' + format: "{1}.{2}.{3}" display_name: "Adobe Flash (Lightspark)" cores: - lightspark diff --git a/emulators/lime3ds.yml b/emulators/lime3ds.yml index 7cfe2e447..04d5ef794 100644 --- a/emulators/lime3ds.yml +++ b/emulators/lime3ds.yml @@ -5,7 +5,11 @@ source: "https://github.com/Lime3DS/lime3ds-archive" upstream: "https://github.com/Lime3DS/lime3ds-archive" profiled_date: "2026-08-08" source_commit: "c9dbb5bb40d90dfa6a2b085d152ae6ecf915b2f9" -core_version: "2119.1" +core_version: "2119.1-2-gc9dbb5b" +version_basis: + kind: tag + tag: "2119.1" + distance: 2 display_name: "Nintendo - 3DS (Lime3DS)" cores: - lime3ds diff --git a/emulators/linapple.yml b/emulators/linapple.yml index 094537ba2..fb57da131 100644 --- a/emulators/linapple.yml +++ b/emulators/linapple.yml @@ -7,6 +7,10 @@ profiled_date: "2026-10-20" source_commit: "7f4b60898d91bfecd6f4d8683a374f38b0564962" upstream_commit: "9970ef6b668a7cf057ce6d82f100dde6a751f4d3" core_version: "3.0.0" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'project\(linapple\s+VERSION\s+([0-9][\w.+-]*)' display_name: "Apple - Apple II (LinApple)" cores: - linapple diff --git a/emulators/lindbergh-loader.yml b/emulators/lindbergh-loader.yml index 48b55b29e..b2a746158 100644 --- a/emulators/lindbergh-loader.yml +++ b/emulators/lindbergh-loader.yml @@ -5,7 +5,12 @@ source: "https://github.com/lindbergh-loader/lindbergh-loader" upstream: "https://github.com/lindbergh-loader/lindbergh-loader" source_commit: "0af606d845b70339c335785c0eba68b47b78df3c" profiled_date: "2026-08-08" -core_version: "2.1.4" +core_version: "2.0.0" +version_basis: + kind: file + path: "src/lindbergh/version.h" + pattern: '#define MAJOR_VERSION (\d+)\s*\n#define MINOR_VERSION (\d+)\s*\n#define UPDATE_VERSION (\d+)' + format: "{1}.{2}.{3}" display_name: "Sega - Lindbergh (Lindbergh Loader)" cores: - lindbergh-loader diff --git a/emulators/linkboy.yml b/emulators/linkboy.yml index 7f7e2680d..3a7b18261 100644 --- a/emulators/linkboy.yml +++ b/emulators/linkboy.yml @@ -9,6 +9,10 @@ version_source: author: "Pixel Respawn LLC" profiled_date: "2026-10-24" core_version: "4.0.0" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=com.pixelrespawn.linkboy" + artifact: "com.pixelrespawn.linkboy APK versionName (versionCode 95)" display_name: "Nintendo - Game Boy / Color / Advance (Linkboy)" mode: standalone cores: diff --git a/emulators/linuxloader.yml b/emulators/linuxloader.yml index 30b50640a..220dceb93 100644 --- a/emulators/linuxloader.yml +++ b/emulators/linuxloader.yml @@ -5,7 +5,11 @@ source: "https://github.com/lindbergh-loader/linuxloader" upstream: "https://github.com/lindbergh-loader/linuxloader" source_commit: "9aa6e3e45ccfbbc60eb0f975aa9d3d158a13706c" profiled_date: "2026-10-20" -core_version: "3.0.12" +core_version: "v3.0.12" +version_basis: + kind: tag + tag: "v3.0.12" + distance: 0 display_name: "Sega - Lindbergh (Linux Loader)" cores: - linuxloader diff --git a/emulators/love-0.10.2.yml b/emulators/love-0.10.2.yml index e8f6344a9..ca41ff412 100644 --- a/emulators/love-0.10.2.yml +++ b/emulators/love-0.10.2.yml @@ -7,6 +7,10 @@ profiled_date: "2026-10-20" source_commit: "9e139779956ddba89333eece8104bd7b1b4ff2e7" pin_frozen: "RetroPie, the only platform that ships it, builds the 0.10.2 tag at this commit (RetroPie scriptmodules/ports/love-0.10.2.sh:16). Later releases are packaged separately as love." core_version: "0.10.2" +version_basis: + kind: tag + tag: "0.10.2" + distance: 0 display_name: "LOVE 2D game framework (0.10.2)" cores: - love-0.10.2 diff --git a/emulators/love.yml b/emulators/love.yml index 8f195e8c9..3aa22fce8 100644 --- a/emulators/love.yml +++ b/emulators/love.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/love2d/love" profiled_date: "2026-10-20" source_commit: "6eb8d546736d5915a8b5af30b2cf33456dfdcb1a" core_version: "11.5" +version_basis: + kind: tag + tag: "11.5" + distance: 0 display_name: "LOVE 2D game framework" cores: - love diff --git a/emulators/lynx-emu.yml b/emulators/lynx-emu.yml index eefcc55a3..d37d37c76 100644 --- a/emulators/lynx-emu.yml +++ b/emulators/lynx-emu.yml @@ -6,6 +6,10 @@ upstream: "https://mednafen.github.io/" profiled_date: "2026-08-11" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "Atari - Lynx (Lynx.emu)" mode: standalone cores: diff --git a/emulators/lzdoom.yml b/emulators/lzdoom.yml index c29441683..8ca3a0e57 100644 --- a/emulators/lzdoom.yml +++ b/emulators/lzdoom.yml @@ -6,6 +6,10 @@ profiled_date: "2026-10-20" source_commit: "4ce19a12164ebd6802b7fb2f94d700a6e736d0fb" pin_frozen: "The platforms that ship it run the 3.88 line: RetroPie builds tag 3.88b (RetroPie scriptmodules/ports/lzdoom.sh:15) and AmberELEC a fork of the g3.3mgw branch that still reports 3.88b (AmberELEC packages/games/emulators/lzdoom/package.mk:5). The l4.x releases are a GZDoom 4 based line that no platform ships." core_version: "3.88b" +version_basis: + kind: tag + tag: "3.88b" + distance: 0 display_name: "LZDoom" cores: [lzdoom, "LZDoom"] systems: [doom, heretic, hexen, strife, chex] diff --git a/emulators/m64plus-fz.yml b/emulators/m64plus-fz.yml index b6215173e..a58a793fb 100644 --- a/emulators/m64plus-fz.yml +++ b/emulators/m64plus-fz.yml @@ -7,6 +7,10 @@ source_branch: fz-master profiled_date: "2026-08-11" source_commit: "f3c381bcc58e4adce897aba323193d3f407e30e3" core_version: "3.0.335 (beta)" +version_basis: + kind: file + path: "build_common/version_common.gradle" + pattern: 'versionName\s*=\s*"([^"]+)"' display_name: "Nintendo - Nintendo 64 (M64Plus FZ)" cores: - m64plus-fz diff --git a/emulators/magicengine.yml b/emulators/magicengine.yml index 4df3ff8ab..20c2d0a5e 100644 --- a/emulators/magicengine.yml +++ b/emulators/magicengine.yml @@ -6,6 +6,10 @@ upstream: closed-source author: "David Michel, Cedric Michel" profiled_date: "2026-10-20" core_version: "1.1.3" +version_basis: + kind: package + url: "https://www.retrobat.ovh/repo/win64/stable/emulators/magicengine.7z" + artifact: "magicengine.7z, readme.txt" display_name: "NEC - PC Engine / CD-ROM / SuperGrafx (MagicEngine)" cores: - magicengine diff --git a/emulators/mandarine.yml b/emulators/mandarine.yml index 3a68a9a78..cabf6b861 100644 --- a/emulators/mandarine.yml +++ b/emulators/mandarine.yml @@ -5,7 +5,11 @@ source: "https://github.com/ptyfyre/mandarine-neo" upstream: "https://github.com/ptyfyre/mandarine-neo" profiled_date: "2026-08-08" source_commit: "7f8ec960b6183be4350bca099d23ddd9fc7bcaa3" -core_version: "1.3.0" +core_version: "r1.3.0-6-g7f8ec96" +version_basis: + kind: tag + tag: "r1.3.0" + distance: 6 display_name: "Nintendo - 3DS (Mandarine)" cores: - mandarine diff --git a/emulators/mariani.yml b/emulators/mariani.yml index 747b12370..b574804b9 100644 --- a/emulators/mariani.yml +++ b/emulators/mariani.yml @@ -7,6 +7,10 @@ profiled_date: "2026-08-12" source_commit: "51893cab7e8a3d1298734848f4fd616f2e1831fb" upstream_commit: "3e8054b4627624398e4589f7f27b3d40a6b9718e" core_version: "1.7" +version_basis: + kind: file + path: "Mariani.xcodeproj/project.pbxproj" + pattern: "MARKETING_VERSION = ([^;]+);" display_name: "Apple - Apple II (Mariani)" cores: - mariani diff --git a/emulators/mastergear.yml b/emulators/mastergear.yml index 99519ecff..824418703 100644 --- a/emulators/mastergear.yml +++ b/emulators/mastergear.yml @@ -10,6 +10,10 @@ version_source: author: "Marat Fayzullin (Garage Research)" profiled_date: "2026-08-12" core_version: "4.9" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=com.fms.mg" + artifact: "com.fms.mg APK versionName (versionCode 4900)" display_name: "Sega - Master System / Game Gear (MasterGear)" cores: - mastergear diff --git a/emulators/md-emu.yml b/emulators/md-emu.yml index bfc4fb35b..abbc45760 100644 --- a/emulators/md-emu.yml +++ b/emulators/md-emu.yml @@ -7,6 +7,10 @@ profiled_date: "2026-08-12" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" upstream_commit: "f3cb0a5115a2b29426495ae35c2d45c404e650df" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "Sega - MS/MD/CD (MD.emu)" mode: standalone cores: diff --git a/emulators/mednafen.yml b/emulators/mednafen.yml index 2053f6b6f..5cdc34595 100644 --- a/emulators/mednafen.yml +++ b/emulators/mednafen.yml @@ -8,6 +8,11 @@ version_source: pattern: '<li><b>Mednafen (\d+(?:\.\d+)+)</b>' profiled_date: "2026-08-08" core_version: "1.32.1" +version_basis: + kind: package + url: "https://mednafen.github.io/releases/files/mednafen-1.32.1.tar.xz" + pattern: 'mednafen-(\d+(?:\.\d+)+)\.tar\.xz' + artifact: "mednafen-1.32.1.tar.xz" display_name: "Mednafen" cores: [mednafen] mode: standalone diff --git a/emulators/melonds-nightly.yml b/emulators/melonds-nightly.yml index 076121ead..40f1df258 100644 --- a/emulators/melonds-nightly.yml +++ b/emulators/melonds-nightly.yml @@ -6,7 +6,11 @@ upstream: "https://github.com/rafaelvcaetano/melonDS-android-lib" source_commit: "c42995caff0144f37ad9791dc9bc96d82e8a6f65" upstream_commit: "431ab4bd0003c4356e25fce89640ae1004579b9b" profiled_date: "2026-08-12" -core_version: "2.0.1 (NIGHTLY)" +core_version: "2.0.1" +version_basis: + kind: file + path: "buildSrc/src/main/kotlin/AppConfig.kt" + pattern: 'const val versionName = "([^"]+)"' display_name: "Nintendo - DS (melonDS Nightly)" cores: ["melonds-nightly"] systems: [nintendo-ds, nintendo-dsi] diff --git a/emulators/mfme.yml b/emulators/mfme.yml index 6e5cabfa4..96d373a11 100644 --- a/emulators/mfme.yml +++ b/emulators/mfme.yml @@ -5,6 +5,10 @@ source: "https://www.desertislandfruits.com/" upstream: closed-source profiled_date: "2026-08-08" core_version: "20.1" +version_basis: + kind: package + url: "https://www.desertislandfruits.com/" + artifact: "MFME v20 Windows installer, MFME.exe FileVersion 20.1.0.0" display_name: "MFME (Fruit Machines)" cores: - mfme diff --git a/emulators/minivmac37.yml b/emulators/minivmac37.yml index 089bf95fd..5ba128d50 100644 --- a/emulators/minivmac37.yml +++ b/emulators/minivmac37.yml @@ -5,6 +5,11 @@ source: "https://github.com/minivmac/minivmac" profiled_date: "2026-10-20" source_commit: "6860a9a7f372c461b25dc42974b191a453ebcfb2" core_version: "37.03" +version_basis: + kind: file + path: "setup/SPBASDEF.i" + pattern: '#define MajorVersion (\d+)\s*\n#define MinorVersion (\d+)' + format: "{1}.{2}" display_name: "Apple - Macintosh Plus (Mini vMac 37)" mode: standalone cores: ["minivmac"] diff --git a/emulators/model2.yml b/emulators/model2.yml index 4f4f69ca1..6c13c2335 100644 --- a/emulators/model2.yml +++ b/emulators/model2.yml @@ -7,6 +7,9 @@ version_source: pattern: 'Model 2 Emulator: (\d+\.\d+[a-z]?)' profiled_date: "2026-03-26" core_version: "1.1a" +version_basis: + kind: unverified + why: no_artifact display_name: "Model 2 Emulator (Sega Model 2)" cores: - model2 diff --git a/emulators/msx-emu.yml b/emulators/msx-emu.yml index d6b7135db..8a16aa246 100644 --- a/emulators/msx-emu.yml +++ b/emulators/msx-emu.yml @@ -6,6 +6,10 @@ upstream: "http://bluemsx.msxblue.com/" profiled_date: "2026-08-12" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "MSX/ColecoVision (MSX.emu)" mode: standalone cores: diff --git a/emulators/mupen64plus-ae.yml b/emulators/mupen64plus-ae.yml index 7ec92b775..132c3405c 100644 --- a/emulators/mupen64plus-ae.yml +++ b/emulators/mupen64plus-ae.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/mupen64plus-ae/mupen64plus-ae" profiled_date: "2026-08-12" source_commit: "33bf7021549d7873e976884370fbd1a8e7333bc7" core_version: "3.0.249 (beta)" +version_basis: + kind: file + path: "build_common/version_common.gradle" + pattern: 'versionName\s*=\s*"([^"]+)"' display_name: "Nintendo - Nintendo 64 (Mupen64Plus AE)" cores: - mupen64plus-ae diff --git a/emulators/mupen64plus.yml b/emulators/mupen64plus.yml index cded5323f..280ae6ec6 100644 --- a/emulators/mupen64plus.yml +++ b/emulators/mupen64plus.yml @@ -8,6 +8,11 @@ source_commit: "c8ac4862a019d7885b24927d9b4db5dd3e42a528" upstream_commit: "6dca4c15370ac3e2171ce7b31426695f8f39b460" upstream_frozen: "AmberELEC builds the core at this revision with the front end at source_commit. Later core commits are not part of that build." core_version: "2.6.0" +version_basis: + kind: file + path: "src/version.h" + pattern: '#define\s+CONSOLE_UI_VERSION\s+0x0?((?<=0)[0-9]|[1-9][0-9])0?((?<=0)[0-9]|[1-9][0-9])0?((?<=0)[0-9]|[1-9][0-9])\b' + format: "{1}.{2}.{3}" display_name: "Nintendo - Nintendo 64 (Mupen64Plus)" cores: - "mupen64plus" diff --git a/emulators/my-boy.yml b/emulators/my-boy.yml index 119663e3c..366c23473 100644 --- a/emulators/my-boy.yml +++ b/emulators/my-boy.yml @@ -10,6 +10,10 @@ version_source: author: "Pixel Respawn LLC" profiled_date: "2026-10-20" core_version: "2.0.3" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=com.fastemulator.gba" + artifact: "com.fastemulator.gba APK versionName (versionCode 90053)" display_name: "Nintendo - Game Boy Advance (My Boy!)" mode: standalone cores: diff --git a/emulators/my-oldboy.yml b/emulators/my-oldboy.yml index b49d67645..6754571be 100644 --- a/emulators/my-oldboy.yml +++ b/emulators/my-oldboy.yml @@ -10,6 +10,10 @@ version_source: author: "Pixel Respawn LLC" profiled_date: "2026-10-20" core_version: "2.0.0" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=com.fastemulator.gbc" + artifact: "com.fastemulator.gbc APK versionName (versionCode 90022)" display_name: "Nintendo - Game Boy / Game Boy Color (My OldBoy!)" mode: standalone cores: diff --git a/emulators/nanoboyadvance.yml b/emulators/nanoboyadvance.yml index 92546cc99..bbd61b392 100644 --- a/emulators/nanoboyadvance.yml +++ b/emulators/nanoboyadvance.yml @@ -5,7 +5,11 @@ source: "https://github.com/nba-emu/NanoBoyAdvance" profiled_date: "2026-10-17" source_commit: "3bb6f478f977dbfd3106508536e5fbce90d1898b" pin_frozen: "ROCKNIX 20261001 builds this revision of the SDL2 frontend (v1.6 plus four commits). Later upstream work is not part of that build." -core_version: "1.6" +core_version: "v1.6-4-g3bb6f47" +version_basis: + kind: tag + tag: "v1.6" + distance: 4 display_name: "Nintendo - Game Boy Advance (NanoBoyAdvance)" cores: - "nanoboyadvance" diff --git a/emulators/neo-emu.yml b/emulators/neo-emu.yml index f56052f3f..14d2e8762 100644 --- a/emulators/neo-emu.yml +++ b/emulators/neo-emu.yml @@ -7,6 +7,10 @@ profiled_date: "2026-08-12" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" upstream_commit: "ed06739a7202a87cd0992006628e4748aacd1ce5" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "SNK - Neo Geo (NEO.emu)" mode: standalone cores: diff --git a/emulators/nes-emu.yml b/emulators/nes-emu.yml index c115f4c69..e1c9688a2 100644 --- a/emulators/nes-emu.yml +++ b/emulators/nes-emu.yml @@ -8,6 +8,10 @@ source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" upstream_commit: "d339f1fa0cd8b69cc637a0de3fb3f04cb28748ea" upstream_frozen: "NES.emu's FCEUX tree is synced at this FCEUX commit of 2025-11-11. Later FCEUX commits are not in the port." core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "Nintendo - NES / Famicom (NES.emu)" mode: standalone cores: diff --git a/emulators/nesoid.yml b/emulators/nesoid.yml index e70e17549..73c02e044 100644 --- a/emulators/nesoid.yml +++ b/emulators/nesoid.yml @@ -6,7 +6,11 @@ upstream: "https://sourceforge.net/p/nesoid/code" author: "Yongzh (androidemu.com)" profiled_date: "2026-08-12" source_commit: "b2ff53fefa56a668aad4a579af85adc672d7a791" -core_version: "2.5-4" +core_version: "2.5" +version_basis: + kind: file + path: "app/build.gradle" + pattern: 'versionName\s+"([^"]+)"' display_name: "Nintendo - NES / Famicom (Nesoid)" mode: standalone cores: diff --git a/emulators/nethersx2-turnip-classic.yml b/emulators/nethersx2-turnip-classic.yml index be8691b44..ee33915d6 100644 --- a/emulators/nethersx2-turnip-classic.yml +++ b/emulators/nethersx2-turnip-classic.yml @@ -10,6 +10,11 @@ pin_frozen: "the classic build is this revision. v0.7 ships a newer shim, and it source_commit: "8e17e584884e19b0a912f1988730d576d6d5aa84" upstream_commit: "1d1f795dfc70e38da67724c7298779260f513889" core_version: "2.2n-3668-Turnip-v0.7" +version_basis: + kind: package + url: "https://github.com/nckstwrt/NetherSX2-Turnip/releases/download/v0.7/NetherSX2-Classic-v2.2n-3668-Turnip-v0.7.apk" + pattern: 'NetherSX2-Classic-v(.+)\.apk' + artifact: "NetherSX2-Classic-v2.2n-3668-Turnip-v0.7.apk" display_name: "Sony - PlayStation 2 (NetherSX2-Turnip Classic)" mode: standalone cores: diff --git a/emulators/nethersx2-turnip.yml b/emulators/nethersx2-turnip.yml index 8762aed6c..5f71386a0 100644 --- a/emulators/nethersx2-turnip.yml +++ b/emulators/nethersx2-turnip.yml @@ -8,7 +8,11 @@ author: "nckstwrt" profiled_date: "2026-08-12" source_commit: "3b7cf800ccac4ab5af768aee24b04363bedeb711" upstream_commit: "1d1f795dfc70e38da67724c7298779260f513889" -core_version: "2.2n-4248-Turnip-v0.7" +core_version: "v0.7" +version_basis: + kind: tag + tag: "v0.7" + distance: 0 display_name: "Sony - PlayStation 2 (NetherSX2-Turnip)" mode: standalone cores: diff --git a/emulators/nethersx2.yml b/emulators/nethersx2.yml index 1d063c154..b4398c0bf 100644 --- a/emulators/nethersx2.yml +++ b/emulators/nethersx2.yml @@ -9,6 +9,11 @@ profiled_date: "2026-10-27" source_commit: "f5f89b3b76e89a8f684da91cf5ad6e542825c0cb" upstream_commit: "1d1f795dfc70e38da67724c7298779260f513889" core_version: "2.2n-4248" +version_basis: + kind: package + url: "https://github.com/Trixarian/NetherSX2-patch/releases/download/2.2n/NetherSX2-v2.2n-4248.apk" + pattern: 'NetherSX2-v([0-9.]+[a-z]?-[0-9]+)\.apk' + artifact: "NetherSX2-v2.2n-4248.apk" display_name: "Sony - PlayStation 2 (NetherSX2)" mode: standalone cores: diff --git a/emulators/ngp-emu.yml b/emulators/ngp-emu.yml index 9da8dafdb..32ad37027 100644 --- a/emulators/ngp-emu.yml +++ b/emulators/ngp-emu.yml @@ -6,6 +6,10 @@ upstream: "https://mednafen.github.io/" profiled_date: "2026-08-12" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "SNK - Neo Geo Pocket / Color (NGP.emu)" mode: standalone cores: diff --git a/emulators/nosgba.yml b/emulators/nosgba.yml index d82f44116..e3d51e83d 100644 --- a/emulators/nosgba.yml +++ b/emulators/nosgba.yml @@ -8,6 +8,10 @@ version_source: pattern: 'no\$gba v(\d+(?:\.\d+)+)' profiled_date: "2026-10-24" core_version: "3.06" +version_basis: + kind: package + url: "https://problemkaputt.de/gba.htm" + artifact: "no$gba-w.zip, release v3.06 of 14 Apr 2025 on the download page" display_name: "Nintendo - GBA/DS/DSi (no$gba)" cores: - nosgba diff --git a/emulators/np2pi.yml b/emulators/np2pi.yml index 66d29cefa..a8d3b5267 100644 --- a/emulators/np2pi.yml +++ b/emulators/np2pi.yml @@ -6,6 +6,10 @@ upstream: "https://np2.yui.ne.jp" profiled_date: "2026-10-20" source_commit: "2e995768b55e97acfaac32d45fbb8351645cba62" core_version: "0.83" +version_basis: + kind: file + path: "np2ver.h" + pattern: '#define\s+NP2VER_CORE\s+"ver\.([0-9][^"]*)"' display_name: "NEC - PC-98 (np2pi)" mode: standalone cores: diff --git a/emulators/openbor.yml b/emulators/openbor.yml index 154161259..5cc4787a5 100644 --- a/emulators/openbor.yml +++ b/emulators/openbor.yml @@ -5,7 +5,12 @@ source: "https://github.com/DCurrent/openbor" upstream: "https://github.com/DCurrent/openbor" profiled_date: "2026-08-12" source_commit: "65a7f0b41aee87fe4084e538634b4ed73236f871" -core_version: "4.0 Build 7949" +core_version: "4.0" +version_basis: + kind: file + path: "engine/version.sh" + pattern: '^VERSION_MAJOR=(\d+)\s*\nVERSION_MINOR=(\d+)' + format: "{1}.{2}" display_name: "OpenBOR Game Engine" cores: - openbor diff --git a/emulators/opengoal.yml b/emulators/opengoal.yml index a05787a7c..47eceb1ab 100644 --- a/emulators/opengoal.yml +++ b/emulators/opengoal.yml @@ -7,6 +7,10 @@ source_commit: "6445b4a50a7540df512e3c82c62216521421410c" pin_frozen: "RetroBat, the only platform that ships it, installs this release: the gk.exe of its opengoal.7z package (10 October 2026) is byte identical to the one in opengoal-windows-v0.3.8.zip. Later releases are not part of that package." profiled_date: "2026-10-20" core_version: "v0.3.8" +version_basis: + kind: tag + tag: "v0.3.8" + distance: 0 display_name: "Jak and Daxter (OpenGOAL)" cores: [opengoal] systems: [opengoal] diff --git a/emulators/openjazz.yml b/emulators/openjazz.yml index aa7e48aa3..67cab5426 100644 --- a/emulators/openjazz.yml +++ b/emulators/openjazz.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/AlisterT/openjazz" profiled_date: "2026-10-04" source_commit: "a1626f4edd4a7af72c54103021790c56d8ecfced" core_version: "20260301" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: '^project\(OpenJazz\s+VERSION\s+(\S+)' display_name: "Jazz Jackrabbit (OpenJazz)" cores: ["OpenJazz"] systems: [jazz-jackrabbit] diff --git a/emulators/openjk.yml b/emulators/openjk.yml index c04ed1abe..0625ac61d 100644 --- a/emulators/openjk.yml +++ b/emulators/openjk.yml @@ -5,6 +5,12 @@ source: "https://github.com/JACoders/OpenJK" upstream: "https://github.com/JACoders/OpenJK" profiled_date: "2026-10-04" source_commit: "260c59c2907187af555a676fe0cc798893bf7757" +core_version: "v0.0.0-951-g260c59c" +version_basis: + kind: tag + match: "v*" + tag: "v0.0.0" + distance: 951 display_name: "OpenJK" cores: [openjk] systems: [jediacademy, jediknight2] diff --git a/emulators/openjkdf2.yml b/emulators/openjkdf2.yml index a31e42d78..6b741fb4f 100644 --- a/emulators/openjkdf2.yml +++ b/emulators/openjkdf2.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/shinyquagsire23/OpenJKDF2" profiled_date: "2026-10-04" source_commit: "798f930402525a23b94671d85b97b00390342fa0" core_version: "0.9.9.0" +version_basis: + kind: file + path: "cmake_modules/version.cmake" + pattern: 'set\(OPENJKDF2_PROJECT_VERSION\s+([0-9.]+)\)' display_name: "OpenJKDF2" cores: [] systems: diff --git a/emulators/openmohaa.yml b/emulators/openmohaa.yml index cd6b87e27..9cf083712 100644 --- a/emulators/openmohaa.yml +++ b/emulators/openmohaa.yml @@ -6,6 +6,11 @@ upstream: "https://github.com/openmoh/openmohaa" profiled_date: "2026-10-04" source_commit: "a2f340195975f4f042e28a60b62561dd9a0b2700" upstream_commit: "a2f340195975f4f042e28a60b62561dd9a0b2700" +core_version: "0.83.0" +version_basis: + kind: file + path: "cmake/identity.cmake" + pattern: 'set\(PROJECT_VERSION\s+([0-9][^)\s]*)\)' display_name: "OpenMoHAA" cores: [] systems: [mohaa, mohaa-spearhead, mohaa-breakthrough] diff --git a/emulators/openmsx.yml b/emulators/openmsx.yml index 26084c8e8..e8cb758fa 100644 --- a/emulators/openmsx.yml +++ b/emulators/openmsx.yml @@ -4,7 +4,11 @@ source: "https://github.com/openMSX/openMSX" upstream: "https://github.com/openMSX/openMSX" profiled_date: "2026-03-26" source_commit: "a557de7b37bc48420b63ec10e7ede953babad4f9" -core_version: "21.0" +core_version: "RELEASE_22_0_RC2" +version_basis: + kind: tag + tag: "RELEASE_22_0_RC2" + distance: 0 display_name: "MSX / ColecoVision / Spectravideo (openMSX)" cores: - openmsx diff --git a/emulators/openttd.yml b/emulators/openttd.yml index 6a1728cf2..e5b1b7dd2 100644 --- a/emulators/openttd.yml +++ b/emulators/openttd.yml @@ -5,6 +5,10 @@ source: "https://github.com/OpenTTD/OpenTTD" profiled_date: "2026-10-20" source_commit: "61342620bc4c0971b28b3578379b53d04d2f11f1" core_version: "14.1" +version_basis: + kind: tag + tag: "14.1" + distance: 0 display_name: "Transport Tycoon Deluxe (OpenTTD)" mode: standalone cores: diff --git a/emulators/oricutron.yml b/emulators/oricutron.yml index c2ed07844..28cf5119e 100644 --- a/emulators/oricutron.yml +++ b/emulators/oricutron.yml @@ -5,7 +5,12 @@ source: "https://github.com/pete-gordon/oricutron" upstream: "https://www.petergordon.org.uk/oricutron/" profiled_date: "2026-08-08" source_commit: "002279fce9fa756d1d63cdc40ae97939eb7de7ed" -core_version: "V1_2_14" +core_version: "1.2.0" +version_basis: + kind: file + path: "Makefile" + pattern: '^VERSION_MAJ\s*=\s*(\d+)\s*\nVERSION_MIN\s*=\s*(\d+)\s*\nVERSION_REV\s*=\s*(\d+)' + format: "{1}.{2}.{3}" display_name: "Tangerine - Oric (Oricutron)" cores: - oricutron diff --git a/emulators/osmose.yml b/emulators/osmose.yml index bd1164734..b10fb7273 100644 --- a/emulators/osmose.yml +++ b/emulators/osmose.yml @@ -4,7 +4,11 @@ core_classification: community_fork source: "https://github.com/RetroPie/osmose-rpi" profiled_date: "2026-10-20" source_commit: "7775add582ad2595e876ca38d4675510f2df866e" -core_version: "0.8.1+rpi20130302" +core_version: "0.8.1+rpi20121122" +version_basis: + kind: file + path: "Version.h" + pattern: '#define\s+__OSMOSE_VERSION__\s+"OsmOse\s+([^"]+)"' display_name: "Sega - Master System / Game Gear (Osmose)" mode: standalone cores: diff --git a/emulators/parallel-launcher.yml b/emulators/parallel-launcher.yml index 253a54e30..1f1222cb6 100644 --- a/emulators/parallel-launcher.yml +++ b/emulators/parallel-launcher.yml @@ -6,7 +6,12 @@ upstream: "https://gitlab.com/parallel-launcher/parallel-n64" profiled_date: "2026-08-08" source_commit: "8dc2a83770c57bc00e1b1fae0aed71f2120cc875" upstream_commit: "a9028b23bd5ee8b465eefc64320fd7701f3430fa" -core_version: "v9.0-6" +core_version: "9.0.6" +version_basis: + kind: file + path: "src/core/version.cpp" + pattern: 'CurrentVersion::Application\s*=\s*\{\s*(\d+),\s*(\d+),\s*(\d+)\s*\}' + format: "{1}.{2}.{3}" display_name: "Nintendo - Nintendo 64 (Parallel Launcher)" cores: - parallel-launcher diff --git a/emulators/pce-emu.yml b/emulators/pce-emu.yml index cfe320bfe..08eadaab3 100644 --- a/emulators/pce-emu.yml +++ b/emulators/pce-emu.yml @@ -6,6 +6,10 @@ upstream: "https://mednafen.github.io/" profiled_date: "2026-08-12" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "PCE.emu" cores: ["pce-emu", "PCE.emu", "pceemu", "PCE-EMU", "com.PceEmu"] systems: [nec-pc-engine, nec-pc-engine-cd, nec-supergrafx] diff --git a/emulators/pcsx2-legacy.yml b/emulators/pcsx2-legacy.yml index 737600eae..74ec65c37 100644 --- a/emulators/pcsx2-legacy.yml +++ b/emulators/pcsx2-legacy.yml @@ -6,7 +6,11 @@ source: "https://github.com/PCSX2/pcsx2" upstream: "https://github.com/PCSX2/pcsx2" profiled_date: "2026-08-08" source_commit: "aaaf29557fe63870ede815dd6d2e48a98279ca59" -core_version: "1.6.0" +core_version: "v1.6.0" +version_basis: + kind: tag + tag: "v1.6.0" + distance: 0 display_name: "Sony - PlayStation 2 (PCSX2 Legacy)" cores: - pcsx2-legacy diff --git a/emulators/pcsx2.yml b/emulators/pcsx2.yml index d428e1188..693e6f9f0 100644 --- a/emulators/pcsx2.yml +++ b/emulators/pcsx2.yml @@ -8,7 +8,11 @@ cores: - pcsx2 profiled_date: "2026-03-30" source_commit: "f0523f8acb1d3a765ee73b74cffec63093569199" -core_version: "Git" +core_version: "v2.9.146-1-gf0523f8" +version_basis: + kind: tag + tag: "v2.9.146" + distance: 1 display_name: "Sony - PlayStation 2 (PCSX2)" systems: [sony-playstation-2] diff --git a/emulators/pcsx2x6.yml b/emulators/pcsx2x6.yml index 616929928..aeb3ea2cb 100644 --- a/emulators/pcsx2x6.yml +++ b/emulators/pcsx2x6.yml @@ -8,7 +8,11 @@ profiled_date: "2026-08-08" source_commit: "583f0e90907d69bb2db670f570d0865260fcc71b" upstream_commit: "3df128d9f9cd89cfc47d08d94b3439136ba22b33" prose_written_at: "583f0e90907d69bb2db670f570d0865260fcc71b" -core_version: "v0.2.22" +core_version: "v0.2.22-2-g583f0e9" +version_basis: + kind: tag + tag: "v0.2.22" + distance: 2 display_name: "Namco - System 246 / 256 (PCSX2x6)" cores: - pcsx2x6 diff --git a/emulators/pcsx_rearmed_standalone.yml b/emulators/pcsx_rearmed_standalone.yml index 8924ddcfb..fc12264fc 100644 --- a/emulators/pcsx_rearmed_standalone.yml +++ b/emulators/pcsx_rearmed_standalone.yml @@ -5,6 +5,10 @@ source: "https://github.com/notaz/pcsx_rearmed" profiled_date: "2026-10-20" source_commit: "8b6c163575e6ce9a0537553e0d4ed4225315955e" core_version: "r26" +version_basis: + kind: file + path: "frontend/libretro.c" + pattern: 'info->library_version\s+=\s+"([^"]+)' display_name: "Sony - PlayStation (PCSX-ReARMed standalone)" mode: standalone cores: diff --git a/emulators/pdark.yml b/emulators/pdark.yml index c7ac7731b..863e27f03 100644 --- a/emulators/pdark.yml +++ b/emulators/pdark.yml @@ -6,7 +6,9 @@ upstream: "https://github.com/perfect-dark-pc-port/perfect_dark" source_branch: port source_commit: "32a1cb9f268dd3ac73016801025c6bbbfa20130f" profiled_date: "2026-10-20" -core_version: "port 2025-06-14" +core_version: null +version_basis: + kind: none display_name: "Perfect Dark (PC port)" cores: [pdark] systems: [pdark] diff --git a/emulators/phoenix.yml b/emulators/phoenix.yml index 0239cb85c..e56e2dd41 100644 --- a/emulators/phoenix.yml +++ b/emulators/phoenix.yml @@ -5,6 +5,10 @@ source: "http://www.arts-union.ru" upstream: "http://www.arts-union.ru" profiled_date: "2026-10-20" core_version: "2.8.JAG" +version_basis: + kind: package + url: "https://www.retrobat.ovh/repo/win64/stable/emulators/phoenix.7z" + artifact: "phoenix.7z, PhoenixEmuProject.exe version string" display_name: "3DO, Atari Jaguar (Phoenix)" mode: standalone cores: diff --git a/emulators/piemu.yml b/emulators/piemu.yml index f5bb484a5..f0b5bdef3 100644 --- a/emulators/piemu.yml +++ b/emulators/piemu.yml @@ -7,7 +7,11 @@ profiled_date: "2026-10-22" source_commit: "0785214f13746bdfd709b1909f007e213b470ba1" upstream_commit: "23208626e16e53b73fd21a2fbd0c429338625dc4" pin_frozen: "AmberELEC, the only platform that ships it, builds this revision (AmberELEC packages/games/emulators/piemu/package.mk:5). Later commits are not part of that build." -core_version: "git" +core_version: "20030430" +version_basis: + kind: file + path: "app.h" + pattern: '#define\s+VERSION\s+"([^"]+)"' display_name: "Aquaplus - P/ECE (P/EMU/SDL)" cores: - "piemu" diff --git a/emulators/pisnes.yml b/emulators/pisnes.yml index 68a7bd6fd..69f70ecd4 100644 --- a/emulators/pisnes.yml +++ b/emulators/pisnes.yml @@ -6,6 +6,10 @@ upstream: "https://sourceforge.net/projects/pisnes/" profiled_date: "2026-10-20" source_commit: "a5b427f255f922cfa65e29c4285b3d565a4c9044" core_version: "1.39" +version_basis: + kind: file + path: "snes9x.h" + pattern: '#define\s+VERSION\s+"([^"]+)"' display_name: "Nintendo - SNES (PiSNES)" mode: standalone cores: diff --git a/emulators/pizza-boy-gba.yml b/emulators/pizza-boy-gba.yml index daf89b967..5c61dd508 100644 --- a/emulators/pizza-boy-gba.yml +++ b/emulators/pizza-boy-gba.yml @@ -10,6 +10,10 @@ version_source: author: "Pizza Emulators" profiled_date: "2026-10-24" core_version: "2.8.13" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=it.dbtecno.pizzaboygbapro" + artifact: "it.dbtecno.pizzaboygbapro APK versionName (versionCode 343)" display_name: "Nintendo - Game Boy Advance (Pizza Boy GBA)" mode: standalone cores: diff --git a/emulators/pizza-boy-gbc.yml b/emulators/pizza-boy-gbc.yml index 566895fda..5c74ba3e5 100644 --- a/emulators/pizza-boy-gbc.yml +++ b/emulators/pizza-boy-gbc.yml @@ -10,6 +10,10 @@ version_source: author: "Pizza Emulators" profiled_date: "2026-10-24" core_version: "6.0.6" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=it.dbtecno.pizzaboypro" + artifact: "it.dbtecno.pizzaboypro APK versionName (versionCode 231)" display_name: "Nintendo - Game Boy / Color (Pizza Boy GBC)" mode: standalone cores: diff --git a/emulators/pizza-boy-sc.yml b/emulators/pizza-boy-sc.yml index 2658f40ee..b1c7d787b 100644 --- a/emulators/pizza-boy-sc.yml +++ b/emulators/pizza-boy-sc.yml @@ -10,6 +10,10 @@ version_source: author: "Pizza Emulators" profiled_date: "2026-10-20" core_version: "1.2.14" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=it.dbtecno.pizzaboyscbasic" + artifact: "it.dbtecno.pizzaboyscbasic XAPK versionName (versionCode 43)" display_name: "Sega - MS/GG/MD/CD (Pizza Boy SC)" mode: standalone cores: diff --git a/emulators/plastic.yml b/emulators/plastic.yml index ba45df4ee..86256d9a9 100644 --- a/emulators/plastic.yml +++ b/emulators/plastic.yml @@ -5,7 +5,11 @@ source: "https://github.com/Amjad50/plastic" upstream: "https://github.com/Amjad50/plastic" profiled_date: "2026-08-12" source_commit: "74152adb3acd890d3abee2ff5906408f26a199e2" -core_version: "0.3.5" +core_version: "v0.3.5" +version_basis: + kind: tag + tag: "v0.3.5" + distance: 0 display_name: "Nintendo - NES / Famicom (Plastic)" cores: - plastic diff --git a/emulators/pom2.yml b/emulators/pom2.yml index 6c4306833..fa75430d7 100644 --- a/emulators/pom2.yml +++ b/emulators/pom2.yml @@ -5,7 +5,11 @@ source: "https://github.com/habib256/pom2" upstream: "https://github.com/habib256/pom2" profiled_date: "2026-10-23" source_commit: "dbf7673d0ca938884419335f3d88e9029c15494f" -core_version: "v0.9.9" +core_version: "0.9.9" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'project\(pom2_imgui\s+VERSION\s+([0-9][\w.+-]*)' display_name: "Apple - Apple II (POM2)" cores: - pom2 diff --git a/emulators/ppsspp-1.5.4.yml b/emulators/ppsspp-1.5.4.yml index 206016ae3..1ba7ad930 100644 --- a/emulators/ppsspp-1.5.4.yml +++ b/emulators/ppsspp-1.5.4.yml @@ -6,6 +6,10 @@ profiled_date: "2026-10-20" source_commit: "a1e74d0d4f89ba3fa2d4fe64bac7a0fa16fc146f" pin_frozen: "RetroPie, the only platform that ships it, builds the v1.5.4 tag at this commit (RetroPie scriptmodules/emulators/ppsspp-1.5.4.sh:16). Later releases are packaged separately as ppsspp." core_version: "v1.5.4" +version_basis: + kind: tag + tag: "v1.5.4" + distance: 0 display_name: "Sony - PlayStation Portable (PPSSPP 1.5.4)" mode: standalone cores: diff --git a/emulators/prboom-plus.yml b/emulators/prboom-plus.yml index 528debff2..912ff69bd 100644 --- a/emulators/prboom-plus.yml +++ b/emulators/prboom-plus.yml @@ -5,7 +5,11 @@ source: "https://github.com/coelckers/prboom-plus" upstream: "https://github.com/coelckers/prboom-plus" profiled_date: "2026-08-08" source_commit: "969515162c5aebea4ad7a125ee178dcad3d576ad" -core_version: "2.6.66" +core_version: "v2.6.66" +version_basis: + kind: tag + tag: "v2.6.66" + distance: 0 display_name: "Doom (PrBoom+)" cores: - prboom-plus diff --git a/emulators/primehack.yml b/emulators/primehack.yml index acf4a39bf..4003bc560 100644 --- a/emulators/primehack.yml +++ b/emulators/primehack.yml @@ -7,6 +7,10 @@ profiled_date: "2026-03-26" source_commit: "53f53e0f5bad27ad62a807cb93b136d84f68777f" upstream_commit: "d8558142ead21b3fa39809c4aedb982fbfc85feb" core_version: "1.0.9" +version_basis: + kind: tag + tag: "1.0.9" + distance: 0 display_name: "PrimeHack (Dolphin fork for Metroid Prime)" cores: - primehack diff --git a/emulators/project64.yml b/emulators/project64.yml index dbcd0982d..ce6f6907e 100644 --- a/emulators/project64.yml +++ b/emulators/project64.yml @@ -6,6 +6,11 @@ upstream: "https://github.com/project64/project64" profiled_date: "2026-08-12" source_commit: "24376e868350792a181d2121fec20d37354559d6" core_version: "Dev-4.0.0" +version_basis: + kind: file + path: "Source/Project64-core/Version.h.in" + pattern: '#define VERSION_MAJOR\s+(\d+)\s*\n#define VERSION_MINOR\s+(\d+)\s*\n#define VERSION_REVISION\s+(\d+)[\s\S]*?#define VERSION_PREFIX\s+"([^"]*)"' + format: "{4}{1}.{2}.{3}" display_name: "Nintendo - Nintendo 64 (Project64)" cores: - project64 diff --git a/emulators/punes.yml b/emulators/punes.yml index b8c9e6732..dbad94b43 100644 --- a/emulators/punes.yml +++ b/emulators/punes.yml @@ -6,6 +6,11 @@ upstream: "https://github.com/punesemu/puNES" profiled_date: "2026-08-08" source_commit: "b1758ec26a3d6da10abf50dc184fa837236c5f61" core_version: "0.112" +version_basis: + kind: file + path: "src/core/version.h" + pattern: '#define VER1\s+"(\d+)"[\s\S]*?#define VER2\s+"(\d+)"' + format: "{1}.{2}" display_name: "Nintendo - NES / Famicom (puNES)" cores: - punes diff --git a/emulators/px68k-sdl.yml b/emulators/px68k-sdl.yml index 87dbbf89c..36c3714bf 100644 --- a/emulators/px68k-sdl.yml +++ b/emulators/px68k-sdl.yml @@ -5,6 +5,10 @@ source: "https://github.com/TurtleBazooka/px68k" profiled_date: "2026-10-23" source_commit: "bdc3d87efb9f09df88c5c6eb271f9535aaf13210" core_version: "0.15+K" +version_basis: + kind: file + path: "version.txt" + pattern: '^PX68K_VERSION=(\S+)' display_name: "Sharp - X68000 (px68k SDL)" mode: standalone cores: ["px68k"] diff --git a/emulators/pyxel.yml b/emulators/pyxel.yml index 6e2206488..e15e203a7 100644 --- a/emulators/pyxel.yml +++ b/emulators/pyxel.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/kitao/pyxel" profiled_date: "2026-10-04" source_commit: "5d8e7b4f37c106684c1e91692772569a32a5e3d4" core_version: "v2.9.9" +version_basis: + kind: tag + tag: "v2.9.9" + distance: 0 display_name: "Pyxel" cores: [pyxel] systems: [] diff --git a/emulators/quake3.yml b/emulators/quake3.yml index cb30d9912..496b3fdfc 100644 --- a/emulators/quake3.yml +++ b/emulators/quake3.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/ioquake/ioq3" profiled_date: "2026-10-20" source_commit: "8d89a2a3c1707bf0f75b2ea26645b872e97c0b95" core_version: "1.35" +version_basis: + kind: file + path: "Makefile" + pattern: 'VERSION=([0-9][\w.+-]*)' display_name: "Quake III Arena (Raspberry Pi port)" cores: [quake3] systems: [quake3] diff --git a/emulators/quasi88kai.yml b/emulators/quasi88kai.yml index 714e22777..5f149dca2 100644 --- a/emulators/quasi88kai.yml +++ b/emulators/quasi88kai.yml @@ -5,6 +5,10 @@ source: "https://github.com/winterheart/quasi88" profiled_date: "2026-10-20" source_commit: "0d4e171415cad7ac19ae4ff0dcf8cdcfd825947b" core_version: "0.7.1" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: '^project\(quasi88 VERSION ([0-9.]+)\)' display_name: "NEC - PC-8800 series (QUASI88kai)" mode: standalone cores: ["quasi88"] diff --git a/emulators/raine.yml b/emulators/raine.yml index 7d6d22639..df8fff733 100644 --- a/emulators/raine.yml +++ b/emulators/raine.yml @@ -7,6 +7,10 @@ profiled_date: "2026-10-20" source_commit: "8e25d5d8907ae459181610912b0030c955683015" pin_frozen: "RetroBat, the only platform that ships it, installs this release: the raine.exe of its raine.7z package (8 August 2026) reports 0.97.5 and was built on 16 March 2025, the bump its changelog records (RetroBat CHANGELOG.md:176). Later commits are not part of that package." core_version: "0.97.5" +version_basis: + kind: file + path: "makefile" + pattern: 'VERSION\s+=\s+"([^"]+)' display_name: "Arcade (RAINE)" mode: standalone cores: diff --git a/emulators/raze.yml b/emulators/raze.yml index 338a101aa..ae88fc8fc 100644 --- a/emulators/raze.yml +++ b/emulators/raze.yml @@ -5,6 +5,11 @@ source: "https://github.com/ZDoom/Raze" upstream: "https://github.com/ZDoom/Raze" profiled_date: "2026-10-04" source_commit: "76fe82f5eb318fdeb30ba9fb27093a9a10bc3821" +core_version: "1.12pre" +version_basis: + kind: file + path: "source/core/version.h" + pattern: '^#define VERSIONSTR "([^"]+)"' display_name: "Raze" cores: [] systems: [duke3d, blood, shadow-warrior, powerslave, exhumed, redneck, nam, ww2gi] diff --git a/emulators/real3doplayer.yml b/emulators/real3doplayer.yml index f49bdb826..162002937 100644 --- a/emulators/real3doplayer.yml +++ b/emulators/real3doplayer.yml @@ -9,6 +9,11 @@ version_source: author: "AltmerSoft (Maxim Grishin)" profiled_date: "2026-08-12" core_version: "1.0.32" +version_basis: + kind: package + url: "http://www.arts-union.ru/node/23" + pattern: 'real3DOPlayer_free_(\d+(?:\.\d+)+)\.zip' + artifact: "real3DOPlayer_free_1.0.32.zip" display_name: "The 3DO Company - 3DO (Real3DOPlayer)" mode: standalone cores: diff --git a/emulators/realrtcw.yml b/emulators/realrtcw.yml index f518b8553..a39081333 100644 --- a/emulators/realrtcw.yml +++ b/emulators/realrtcw.yml @@ -7,6 +7,10 @@ profiled_date: "2026-10-20" source_commit: "ad529d588e4dec717aff0779f9d1555eddc1e2be" pin_frozen: "RetroBat, the only platform that ships it, installs this release: the RealRTCW.x64.exe of its rtcw.7z package (31 March 2026) reports RealRTCW 5.2. Later releases are not part of that package." core_version: "5.2" +version_basis: + kind: tag + tag: "5.2" + distance: 0 display_name: "RealRTCW" mode: standalone cores: diff --git a/emulators/reicast.yml b/emulators/reicast.yml index df036d350..975bcfa4c 100644 --- a/emulators/reicast.yml +++ b/emulators/reicast.yml @@ -6,7 +6,11 @@ upstream: "https://github.com/skmp/reicast-emulator" profiled_date: "2026-10-17" source_commit: "ad61f95dd6b4c6218846a25de6194550311a5d28" pin_frozen: "Recalbox 10.1.1 builds this revision (package/reicast/reicast.mk REICAST_VERSION). Later commits on reicast-emulator are not part of that build." -core_version: "Git" +core_version: "r8.1-243-gad61f95" +version_basis: + kind: tag + tag: "r8.1" + distance: 243 display_name: "Sega - Dreamcast (Reicast)" cores: - "reicast" diff --git a/emulators/rigelengine.yml b/emulators/rigelengine.yml index 6c877abee..880db6916 100644 --- a/emulators/rigelengine.yml +++ b/emulators/rigelengine.yml @@ -5,7 +5,11 @@ source: "https://github.com/lethal-guitar/RigelEngine" upstream: "https://github.com/lethal-guitar/RigelEngine" profiled_date: "2026-10-22" source_commit: "30afeff8f0b105eac77ee0a2fbd54b06e1a49b60" -core_version: "0.9.1-28-g30afeff8" +core_version: "0.9.1" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: '^project\(RigelEngine VERSION ([0-9.]+)\)' display_name: "Duke Nukem II (RigelEngine)" cores: [rigelengine, "RigelEngine"] systems: [duke-nukem-2] diff --git a/emulators/rosalies-mupen-gui.yml b/emulators/rosalies-mupen-gui.yml index 8bfab72d7..310b0c6f7 100644 --- a/emulators/rosalies-mupen-gui.yml +++ b/emulators/rosalies-mupen-gui.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/Rosalie241/RMG" profiled_date: "2026-10-04" source_commit: "4777ed3f1fb7f1e4a0e70438a27dc4a5e9fb1927" core_version: "v0.9.0" +version_basis: + kind: file + path: "VERSION" + pattern: '^(v?[0-9][^\s]*)' display_name: "Nintendo - Nintendo 64 (Rosalie's Mupen GUI)" cores: - rosalies-mupen-gui diff --git a/emulators/rpcs3.yml b/emulators/rpcs3.yml index 5f3a0a146..ea5e70862 100644 --- a/emulators/rpcs3.yml +++ b/emulators/rpcs3.yml @@ -8,7 +8,12 @@ cores: - "rpcs3-sa" profiled_date: "2026-03-30" source_commit: "c365ea76a552961ff078ea1a46da9d4b07729674" -core_version: "v0.0.43" +core_version: "0.0.43" +version_basis: + kind: file + path: "rpcs3/rpcs3_version.cpp" + pattern: 'utils::version version\{\s*(\d+),\s*(\d+),\s*(\d+),' + format: "{1}.{2}.{3}" display_name: "Sony - PlayStation 3 (RPCS3)" systems: [sony-playstation-3] diff --git a/emulators/rpix86.yml b/emulators/rpix86.yml index ff3530143..62e7d5737 100644 --- a/emulators/rpix86.yml +++ b/emulators/rpix86.yml @@ -5,6 +5,10 @@ source: "http://rpix86.patrickaalto.com/rdown.html" upstream: ~ profiled_date: "2026-10-20" core_version: "0.19" +version_basis: + kind: package + url: "https://files.retropie.org.uk/archives/rpix86.tar.gz" + artifact: "rpix86.tar.gz, rpix86 binary banner" display_name: "DOS (rpix86)" cores: [rpix86] systems: [dos] diff --git a/emulators/ruffle.yml b/emulators/ruffle.yml index 8a08c4847..2c91a71db 100644 --- a/emulators/ruffle.yml +++ b/emulators/ruffle.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/ruffle-rs/ruffle" profiled_date: "2026-09-17" source_commit: "fe6cfc545405b888ebb478ce1c211d63147ca49b" core_version: "0.7.1" +version_basis: + kind: file + path: "Cargo.toml" + pattern: 'version\s+=\s+"([^"]+)' display_name: "Adobe Flash (Ruffle)" cores: - ruffle diff --git a/emulators/ryujinx.yml b/emulators/ryujinx.yml index 4d75ef4ea..50fc96065 100644 --- a/emulators/ryujinx.yml +++ b/emulators/ryujinx.yml @@ -5,6 +5,10 @@ upstream: "https://github.com/Ryujinx/Ryujinx" profiled_date: "2026-03-26" source_commit: "7d158acc3b5826a08941d6e8d50d3a3897021bcd" core_version: "1.1.1402" +version_basis: + kind: tag + tag: "1.1.1402" + distance: 0 display_name: "Ryujinx (Nintendo Switch)" cores: - ryujinx diff --git a/emulators/samcoupe.yml b/emulators/samcoupe.yml index 18eba3027..46958b976 100644 --- a/emulators/samcoupe.yml +++ b/emulators/samcoupe.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/simonowen/simcoupe" profiled_date: "2026-10-04" source_commit: "1f966036543991c05022ce4f95cfbfbb0014b187" core_version: "v1.2.17" +version_basis: + kind: tag + tag: "v1.2.17" + distance: 0 display_name: "SAM Coupe (SimCoupe)" cores: - samcoupe diff --git a/emulators/saturn-emu.yml b/emulators/saturn-emu.yml index 5983e977c..bcfb16a67 100644 --- a/emulators/saturn-emu.yml +++ b/emulators/saturn-emu.yml @@ -6,6 +6,10 @@ upstream: "https://mednafen.github.io/" profiled_date: "2026-08-12" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "Sega - Saturn (Saturn.emu)" mode: standalone cores: diff --git a/emulators/scummvm-sdl1.yml b/emulators/scummvm-sdl1.yml index 61b43c94c..557b027f5 100644 --- a/emulators/scummvm-sdl1.yml +++ b/emulators/scummvm-sdl1.yml @@ -6,7 +6,11 @@ upstream: "https://github.com/scummvm/scummvm" logo: "https://raw.githubusercontent.com/scummvm/scummvm/master/icons/scummvm.svg" profiled_date: "2026-10-20" source_commit: "fed42f2068dcafc6aafa1c28c77e4c88def74b66" -core_version: "2026.3.0" +core_version: "v2026.3.0" +version_basis: + kind: tag + tag: "v2026.3.0" + distance: 0 display_name: "ScummVM (SDL1)" cores: [scummvm-sdl1] systems: [scummvm] diff --git a/emulators/scummvm-standalone.yml b/emulators/scummvm-standalone.yml index e7bc5aef6..468f14c25 100644 --- a/emulators/scummvm-standalone.yml +++ b/emulators/scummvm-standalone.yml @@ -6,6 +6,10 @@ logo: "https://raw.githubusercontent.com/scummvm/scummvm/master/icons/scummvm.sv profiled_date: "2026-10-24" source_commit: "21955df19b580dad2807ec55f573b5f348690a81" core_version: "2026.4.1git" +version_basis: + kind: file + path: "base/internal_version.h" + pattern: '#define\s+SCUMMVM_VERSION\s+"([^"]+)' display_name: "ScummVM (SDL2)" mode: standalone cores: diff --git a/emulators/sdl2trs.yml b/emulators/sdl2trs.yml index 31618b4a9..cf4a452b2 100644 --- a/emulators/sdl2trs.yml +++ b/emulators/sdl2trs.yml @@ -6,6 +6,10 @@ upstream: "http://sdltrs.sourceforge.net" profiled_date: "2026-10-23" source_commit: "205ddfd78fd00b32b3f730453175dbd70782ce79" core_version: "1.2.35" +version_basis: + kind: file + path: "configure.ac" + pattern: '^AC_INIT\(\[sdltrs\],\s*\[([^\]]+)\]' display_name: "Tandy - TRS-80 (SDL2TRS)" cores: - sdl2trs diff --git a/emulators/sdlpop.yml b/emulators/sdlpop.yml index 94511bd73..822451fb9 100644 --- a/emulators/sdlpop.yml +++ b/emulators/sdlpop.yml @@ -6,6 +6,10 @@ upstream: ~ profiled_date: "2026-10-04" source_commit: "3c5add5fb7f83d4ceb542823ab66d00146c4271b" core_version: "1.24 RC" +version_basis: + kind: file + path: "src/config.h" + pattern: '#define SDLPOP_VERSION "([^"]+)"' display_name: "Prince of Persia (SDLPoP)" cores: [sdlpop, "prince"] systems: [prince-of-persia] diff --git a/emulators/shadps4.yml b/emulators/shadps4.yml index d78aa1f34..4256ad93e 100644 --- a/emulators/shadps4.yml +++ b/emulators/shadps4.yml @@ -4,7 +4,12 @@ source: "https://github.com/shadps4-emu/shadPS4" upstream: "https://github.com/shadps4-emu/shadPS4" profiled_date: "2026-03-26" source_commit: "3eecea94ddaca360b19f4b800523b609a8b2ffcc" -core_version: "pre-release 2026-08-08" +core_version: "0.20.1 WIP" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'set\(EMULATOR_VERSION_MAJOR "(\d+)"\)\s*\nset\(EMULATOR_VERSION_MINOR "(\d+)"\)\s*\nset\(EMULATOR_VERSION_PATCH "(\d+)"\)[\s\S]*?set\(APP_VERSION "\$\{APP_VERSION_NUM\} ?([^"]*)"\)' + format: "{1}.{2}.{3} {4}" display_name: "shadPS4 (PlayStation 4)" cores: - shadps4 diff --git a/emulators/sheepshaver.yml b/emulators/sheepshaver.yml index 916d9b2d2..cd58251e4 100644 --- a/emulators/sheepshaver.yml +++ b/emulators/sheepshaver.yml @@ -6,6 +6,11 @@ upstream: "https://github.com/cebix/macemu" profiled_date: "2026-08-08" source_commit: "96e512bd6376e78a2869f16dcc8a9028bce5ee72" core_version: "2.4" +version_basis: + kind: file + path: "SheepShaver/src/include/version.h" + pattern: 'const int VERSION_MAJOR = (\d+);\s*\nconst int VERSION_MINOR = (\d+);' + format: "{1}.{2}" display_name: "Apple - Macintosh PowerPC (SheepShaver)" cores: - sheepshaver diff --git a/emulators/simple64.yml b/emulators/simple64.yml index 8948aad56..f09be5b1d 100644 --- a/emulators/simple64.yml +++ b/emulators/simple64.yml @@ -5,7 +5,11 @@ source: "https://github.com/simple64/simple64" upstream: "https://github.com/simple64/simple64" profiled_date: "2026-08-08" source_commit: "d8c969c7b932e3d76e6a25549d76348839dbaefd" -core_version: "v2024.12.1" +core_version: "v2024.12.1-5-gd8c969c" +version_basis: + kind: tag + tag: "v2024.12.1" + distance: 5 display_name: "Nintendo - Nintendo 64 (simple64)" cores: - simple64 diff --git a/emulators/singe2.yml b/emulators/singe2.yml index 3f617744a..0da384e39 100644 --- a/emulators/singe2.yml +++ b/emulators/singe2.yml @@ -5,6 +5,11 @@ source: "https://singeengine.com" upstream: "https://singeengine.com" profiled_date: "2026-10-20" core_version: "2.10" +version_basis: + kind: package + url: "https://singeengine.com" + pattern: 'Singe-v(\d+\.\d+)-Windows' + artifact: "Singe-v2.10-Windows-x86_64.exe" display_name: "Laserdisc (Singe 2)" mode: standalone cores: diff --git a/emulators/sixtyforce.yml b/emulators/sixtyforce.yml index 153ace7d7..d9d5dc34a 100644 --- a/emulators/sixtyforce.yml +++ b/emulators/sixtyforce.yml @@ -8,6 +8,10 @@ version_source: pattern: 'version (\d+(?:\.\d+)+)<br>' profiled_date: "2026-08-12" core_version: "2.0.2" +version_basis: + kind: package + url: "https://sixtyforce.com/download/sixtyforce.zip" + artifact: "sixtyforce.zip, sixtyforce.app Info.plist CFBundleShortVersionString" display_name: "Nintendo - Nintendo 64 (sixtyforce)" cores: - sixtyforce diff --git a/emulators/skyline.yml b/emulators/skyline.yml index ea0b99926..368ac18ed 100644 --- a/emulators/skyline.yml +++ b/emulators/skyline.yml @@ -6,6 +6,9 @@ upstream: "https://archive.softwareheritage.org/browse/revision/dc20a615275f66be profiled_date: "2026-08-12" source_commit: "dc20a615275f66bee20a4fd851ef0231daca4f14" core_version: "0.0.3" +version_basis: + kind: unverified + why: host_unsupported display_name: "Nintendo - Switch (Skyline)" cores: - "skyline" diff --git a/emulators/snes9x-explus.yml b/emulators/snes9x-explus.yml index fc00ed6e1..19c86b43c 100644 --- a/emulators/snes9x-explus.yml +++ b/emulators/snes9x-explus.yml @@ -8,6 +8,10 @@ source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" upstream_commit: "b33f2afb33c61d675aaf0319bd3b8cc8d6924d49" upstream_frozen: "Snes9x is vendored under Snes9x/src/snes9x at this upstream revision, the one the last sync took." core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "Nintendo - SNES / SFC (Snes9x EX+)" mode: standalone cores: diff --git a/emulators/soh.yml b/emulators/soh.yml index 7b4f087ad..045497315 100644 --- a/emulators/soh.yml +++ b/emulators/soh.yml @@ -7,6 +7,10 @@ source_commit: "cb71e22a79bc5d1f688fa881795bbd93094895fc" pin_frozen: "RetroBat, the only platform that ships it, installs this release: the soh.exe of its soh.7z package (10 October 2026) reports Ackbar Delta (9.2.3). Later releases are not part of that package." profiled_date: "2026-10-20" core_version: "9.2.3" +version_basis: + kind: tag + tag: "9.2.3" + distance: 0 display_name: "The Legend of Zelda: Ocarina of Time (Ship of Harkinian)" cores: [soh] systems: [soh] diff --git a/emulators/solarus-2.0.0.yml b/emulators/solarus-2.0.0.yml index 62b17785c..e1baae42a 100644 --- a/emulators/solarus-2.0.0.yml +++ b/emulators/solarus-2.0.0.yml @@ -7,6 +7,10 @@ profiled_date: "2026-10-26" source_commit: "49d1d4686f67ec81c86c90ca30279a4ce06b1729" pin_frozen: "RetroBat, the only platform that ships it, builds this revision: the solarus2 package its emulator repository lists as 0.25.04.16 carries a libsolarus.dll that reports Solarus 2.0.0 (49d1d46), tag v2.0.0+cicd1. Later tags are not part of that build." core_version: "2.0.0" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'project\(solarus-engine\s+VERSION\s+([0-9][^\s)]*)' display_name: "Solarus Game Engine (2.0.0)" cores: - solarus2 diff --git a/emulators/solarus.yml b/emulators/solarus.yml index 54b056798..00112eee0 100644 --- a/emulators/solarus.yml +++ b/emulators/solarus.yml @@ -6,6 +6,10 @@ upstream: "https://gitlab.com/solarus-games/solarus" profiled_date: "2026-08-08" source_commit: "86fa2031e1303aaaf9924a2f03dfdb7b7d1cbf4b" core_version: "2.2.0" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'project\(solarus-engine\s+VERSION\s+([0-9][^\s)]*)' display_name: "Solarus Game Engine" cores: - solarus diff --git a/emulators/sonic-mania.yml b/emulators/sonic-mania.yml index dfff57eee..4b1a93b05 100644 --- a/emulators/sonic-mania.yml +++ b/emulators/sonic-mania.yml @@ -5,6 +5,11 @@ source: "https://github.com/RSDKModding/Sonic-Mania-Decompilation" upstream: "https://github.com/RSDKModding/RSDKv5-Decompilation" source_commit: "9dc699428420d752af9767bdb13f585ee0881bc0" upstream_commit: "191d7aea6c262d891244172a8609ac69fbfd7571" +core_version: "v1.1.1-15-g9dc6994" +version_basis: + kind: tag + tag: "v1.1.1" + distance: 15 profiled_date: "2026-10-04" display_name: "Sonic Mania (RSDKv5 Decomp)" cores: [sonicmania] diff --git a/emulators/sonic2013.yml b/emulators/sonic2013.yml index 3fc9f9363..8dfd837fa 100644 --- a/emulators/sonic2013.yml +++ b/emulators/sonic2013.yml @@ -5,6 +5,10 @@ source: "https://github.com/RSDKModding/RSDKv4-Decompilation" upstream: "https://github.com/RSDKModding/RSDKv4-Decompilation" source_commit: "a7f5195e21fdad7b75e4587e249013feeea9e6f3" core_version: "1.3.3" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'set\(DECOMP_VERSION\s+([^\s)]+)\)' profiled_date: "2026-10-04" display_name: "Sonic 1 & 2 (2013) (RSDKv4 Decomp)" cores: [sonicretro] diff --git a/emulators/sonic3-air.yml b/emulators/sonic3-air.yml index 4df14d223..c1e6220d9 100644 --- a/emulators/sonic3-air.yml +++ b/emulators/sonic3-air.yml @@ -4,6 +4,11 @@ core_classification: game_engine source: "https://github.com/Eukaryot/sonic3air" upstream: "https://github.com/Eukaryot/sonic3air" source_commit: "b0063dfb4b3e69d710e131ab83507cdf8c41910f" +core_version: "26.08.15.0" +version_basis: + kind: file + path: "Oxygen/sonic3air/source/sonic3air/version.inc" + pattern: '#define\s+BUILD_STRING\s+"([^"]+)"' 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 65fd5654c..d42016b92 100644 --- a/emulators/soniccd.yml +++ b/emulators/soniccd.yml @@ -4,6 +4,11 @@ core_classification: game_engine source: "https://github.com/RSDKModding/RSDKv3-Decompilation" upstream: "https://github.com/RSDKModding/RSDKv3-Decompilation" source_commit: "2a7fd8b70f1b33553e0d6c67491d07e8290b80c1" +core_version: "1.3.3" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'set\(DECOMP_VERSION\s+([^\s)]+)\)' profiled_date: "2026-10-04" display_name: "Sonic CD (RSDKv3 Decomp)" cores: [sonicretrocd] diff --git a/emulators/speccy.yml b/emulators/speccy.yml index 72b6e64c3..cfa22dd4b 100644 --- a/emulators/speccy.yml +++ b/emulators/speccy.yml @@ -9,6 +9,10 @@ version_source: author: "Marat Fayzullin (Garage Research)" profiled_date: "2026-10-20" core_version: "5.9.13" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=com.fms.speccy" + artifact: "com.fms.speccy APK versionName (versionCode 5913)" display_name: "Sinclair - ZX Spectrum and Sam Coupe (Speccy)" verification: existence cores: diff --git a/emulators/splitwolf.yml b/emulators/splitwolf.yml index 6c002829f..e5e3d699b 100644 --- a/emulators/splitwolf.yml +++ b/emulators/splitwolf.yml @@ -6,6 +6,9 @@ source_branch: scrubbed profiled_date: "2026-10-20" source_commit: "f6c00044cdef00a31c66307d8b7cb1fb4ddf8c67" core_version: "V1.01" +version_basis: + kind: unverified + why: host_unsupported display_name: "Wolfenstein 3D (SplitWolf)" cores: [splitwolf] systems: [wolfenstein3d] diff --git a/emulators/srb2.yml b/emulators/srb2.yml index 4079f6ea5..83efa5aab 100644 --- a/emulators/srb2.yml +++ b/emulators/srb2.yml @@ -6,6 +6,10 @@ upstream: "https://git.do.srb2.org/STJr/SRB2" profiled_date: "2026-10-20" source_commit: "639b58c6d718452ef343a0bc927d043bed9e40d6" core_version: "2.2.15" +version_basis: + kind: file + path: "src/version.h" + pattern: '#define\s+SRB2VERSION\s+"([^"]+)' display_name: "Sonic Robo Blast 2" cores: [srb2] systems: [] diff --git a/emulators/ssf.yml b/emulators/ssf.yml index b0dde7a5a..86a83c144 100644 --- a/emulators/ssf.yml +++ b/emulators/ssf.yml @@ -7,6 +7,12 @@ author: "Shima" profiled_date: "2026-08-12" source_commit: "432e257c312f705d5f85f298710d152240111da8" core_version: "PreviewVer R38" +version_basis: + kind: package + url: "https://github.com/shimazzz/SEGASaturnEmulator-SSF/releases/download/PreviewVer/SSF_PreviewVer_R38.zip" + pattern: 'SSF_(PreviewVer)_(R\d+)\.zip' + format: "{1} {2}" + artifact: "SSF_PreviewVer_R38.zip" display_name: "Sega - Saturn/ST-V (SSF)" cores: - ssf diff --git a/emulators/starboard.yml b/emulators/starboard.yml index 3e858b2bd..912f7c94a 100644 --- a/emulators/starboard.yml +++ b/emulators/starboard.yml @@ -7,6 +7,11 @@ author: "force9" profiled_date: "2026-10-27" source_commit: "d3a21a9aaeabb90e59d7a48241b293dba3ee9309" core_version: "0.40.0" +version_basis: + kind: package + url: "https://github.com/get-starboard/starboard/releases/download/v0.40.0/Starboard-v0.40.0.apk" + pattern: 'Starboard-v([0-9][0-9.]*[0-9])\.apk' + artifact: "Starboard-v0.40.0.apk" display_name: "PortMaster library (Starboard)" verification: existence cores: diff --git a/emulators/starship.yml b/emulators/starship.yml index a8e1c9154..430796830 100644 --- a/emulators/starship.yml +++ b/emulators/starship.yml @@ -5,7 +5,11 @@ source: "https://github.com/HarbourMasters/Starship" upstream: "https://github.com/HarbourMasters/Starship" source_commit: "cb19785b51698185a688e17ba1a34c7889195bdb" profiled_date: "2026-10-20" -core_version: "2.0.0" +core_version: "v2.0.0" +version_basis: + kind: tag + tag: "v2.0.0" + distance: 0 display_name: "Star Fox 64 (Starship)" cores: [starship] systems: [starship] diff --git a/emulators/stratagus.yml b/emulators/stratagus.yml index feba5891d..acf53ab08 100644 --- a/emulators/stratagus.yml +++ b/emulators/stratagus.yml @@ -4,7 +4,11 @@ core_classification: game_engine source: "https://github.com/Wargus/stratagus" profiled_date: "2026-10-20" source_commit: "6b309817027618a12e26e4cf314ad09654495e28" -core_version: "2.4.3" +core_version: "v2.4.3" +version_basis: + kind: tag + tag: "v2.4.3" + distance: 0 display_name: "Stratagus" cores: [stratagus] systems: [] diff --git a/emulators/sudachi.yml b/emulators/sudachi.yml index 2604c85a0..5caf7834f 100644 --- a/emulators/sudachi.yml +++ b/emulators/sudachi.yml @@ -6,6 +6,9 @@ upstream_gone: "The emuplace GitHub account answers 404 and sudachi.emuplace.app profiled_date: "2026-10-20" source_commit: "c7431bd420d66c54df277ba0a0b71de42cf0a5bf" core_version: "1.0.15" +version_basis: + kind: unverified + why: host_gone display_name: "Sudachi (Nintendo Switch)" cores: - sudachi diff --git a/emulators/super3.yml b/emulators/super3.yml index f2e40d0d4..1d0c01b7b 100644 --- a/emulators/super3.yml +++ b/emulators/super3.yml @@ -8,6 +8,10 @@ author: "izzy2lost" profiled_date: "2026-10-27" source_commit: "c410f82f771b33094b8c1cdbf96ef7c74ec9cff1" core_version: "1.2.2" +version_basis: + kind: tag + tag: "1.2.2" + distance: 0 display_name: "Sega - Model 3 (SUPER3)" verification: existence cores: diff --git a/emulators/supermariowar.yml b/emulators/supermariowar.yml index 223faa533..d2ce65c99 100644 --- a/emulators/supermariowar.yml +++ b/emulators/supermariowar.yml @@ -6,6 +6,10 @@ profiled_date: "2026-10-22" source_commit: "ed60ed45e296ff88a8883cbc51f5bf5aed880636" pin_frozen: "EmuELEC, the only platform that ships it, builds this revision (EmuELEC packages/sx05re/emuelec-ports/supermariowar/package.mk:5). Later commits are not part of that build." core_version: "2.0.0" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'project\(smw\s+VERSION\s+([0-9][^\s)]*)' display_name: "Super Mario War (smw)" cores: - "smw" diff --git a/emulators/supermodel-dojo.yml b/emulators/supermodel-dojo.yml index 6ace9207c..2a8b3d8a5 100644 --- a/emulators/supermodel-dojo.yml +++ b/emulators/supermodel-dojo.yml @@ -9,6 +9,10 @@ source_commit: "113a48d567c5d49a40292df386fee4a0acaea486" upstream_commit: "98fcbff223e23b1530c8f899aca2fc4fd5663ab4" upstream_frozen: "The dojo branch merged trzy/Supermodel at this commit through merge ab1ecae. Later upstream commits are not in the port." core_version: "v0.3a-20261024-git-113a48d" +version_basis: + kind: tag + tag: "v0.3a-20261024-git-113a48d" + distance: 0 display_name: "Sega - Model 3 (Supermodel Dojo)" verification: existence cores: diff --git a/emulators/supermodel-legacy.yml b/emulators/supermodel-legacy.yml index 5dde17f5a..a501a3883 100644 --- a/emulators/supermodel-legacy.yml +++ b/emulators/supermodel-legacy.yml @@ -7,6 +7,10 @@ profiled_date: "2026-10-17" source_commit: "0eef09ba2b74e48fd5cfd388ee69a3743fd5f618" pin_frozen: "Batocera's supermodel-legacy package builds this revision, held before the renderer moved to OpenGL 4.1. Recaling would repoint these refs at code this build never had." core_version: "0.3a-WIP" +version_basis: + kind: file + path: "Src/Version.h" + pattern: '#define\s+SUPERMODEL_VERSION\s+"([^"]+)' display_name: "Sega - Model 3 (Supermodel Legacy)" cores: - "supermodel-legacy" diff --git a/emulators/supermodel3.yml b/emulators/supermodel3.yml index d09fad631..aea86ea3a 100644 --- a/emulators/supermodel3.yml +++ b/emulators/supermodel3.yml @@ -10,6 +10,10 @@ prose_written_at: "11726c4bad3696a50a8b834eaba6aee3fa08a590" upstream_commit: "14815455dc28fca2c8662fb1ed99d447ecf8f364" upstream_frozen: "The fork is rebased on trzy's tree at 1481545, the revision its version string names. Later trzy commits are not in the fork." core_version: "0.3a-1481545-mm DirtBagXon (Sinden)" +version_basis: + kind: file + path: "Src/Version.h" + pattern: '#define\s+SUPERMODEL_VERSION\s+"([^"]+)' display_name: "Sega - Model 3 (Supermodel, Sinden fork)" verification: existence cores: diff --git a/emulators/supertux.yml b/emulators/supertux.yml index eb42c76dd..c05f1b9d6 100644 --- a/emulators/supertux.yml +++ b/emulators/supertux.yml @@ -5,7 +5,12 @@ source: "https://github.com/SuperTux/supertux" profiled_date: "2026-10-22" source_commit: "37cddf24a4abfdec7931a84afd9e87fb8ea18767" pin_frozen: "EmuELEC, the only platform that ships it, builds this revision, v0.6.3 (EmuELEC packages/sx05re/emuelec-ports/supertux/package.mk:5). Later commits are not part of that build." -core_version: "0.6.3-1020-g37cddf24a" +core_version: "v0.6.3-1020-g37cddf2" +version_basis: + kind: tag + match: "?[0-9]*.[0-9]*.[0-9]*" + tag: "v0.6.3" + distance: 1020 display_name: "SuperTux (supertux2)" cores: - "supertux2" diff --git a/emulators/supertuxkart.yml b/emulators/supertuxkart.yml index 5701311e4..9fe306c0f 100644 --- a/emulators/supertuxkart.yml +++ b/emulators/supertuxkart.yml @@ -5,7 +5,11 @@ source: "https://github.com/supertuxkart/stk-code" profiled_date: "2026-10-22" source_commit: "fab79150111944c9e33396db68eb5de84f2efeaa" pin_frozen: "EmuELEC, the only platform that ships it, builds this revision (EmuELEC packages/sx05re/emuelec-ports/supertuxkart/package.mk:5). Later commits are not part of that build." -core_version: "git" +core_version: "preview-582-gfab7915" +version_basis: + kind: tag + tag: "preview" + distance: 582 display_name: "SuperTuxKart" cores: - "supertuxkart" diff --git a/emulators/superzsnes.yml b/emulators/superzsnes.yml index 0a60fad84..622381f47 100644 --- a/emulators/superzsnes.yml +++ b/emulators/superzsnes.yml @@ -8,6 +8,11 @@ version_source: pattern: 'Latest Release Notes \((v[0-9.]+[a-z]?)\)' profiled_date: "2026-10-20" core_version: "v0.320" +version_basis: + kind: package + url: "https://www.zsnes.com/files/SuperZSNES_v0.320.zip" + pattern: 'SuperZSNES_(v\d+\.\d+)\.zip' + artifact: "SuperZSNES_v0.320.zip" display_name: "Nintendo - SNES / SFC (SUPER ZSNES)" cores: - superzsnes diff --git a/emulators/suyu.yml b/emulators/suyu.yml index b5fe2f853..e95834d14 100644 --- a/emulators/suyu.yml +++ b/emulators/suyu.yml @@ -6,6 +6,9 @@ upstream: "https://github.com/suyu-emu/suyu" profiled_date: "2026-03-26" upstream_gone: "GitHub withdrew the repository for legal reasons: the API answers HTTP 451. git.suyu.dev still serves a Forgejo page, but its API answers 403 and its raw paths 404, so it carries no readable tree. Observed 2026-09-04." core_version: "Yuzu EA 4176 based" +version_basis: + kind: unverified + why: host_gone display_name: "Suyu (Nintendo Switch)" cores: - suyu diff --git a/emulators/swan-emu.yml b/emulators/swan-emu.yml index 74f8823d6..16c1187ef 100644 --- a/emulators/swan-emu.yml +++ b/emulators/swan-emu.yml @@ -6,6 +6,10 @@ upstream: "https://mednafen.github.io/" profiled_date: "2026-08-12" source_commit: "1c12fac5ce49badaadff2e2f210dcc30b89f4943" core_version: "1.5.85" +version_basis: + kind: file + path: "EmuFramework/metadata/conf.mk" + pattern: '^metadata_version\s*=\s*(\S+)' display_name: "Bandai - WonderSwan / Color (Swan.emu)" mode: standalone cores: diff --git a/emulators/swf-player.yml b/emulators/swf-player.yml index 3fcc56951..f71f6d1d2 100644 --- a/emulators/swf-player.yml +++ b/emulators/swf-player.yml @@ -9,6 +9,10 @@ version_source: author: "issess.net" profiled_date: "2026-08-12" core_version: "1.90 free (build 507)" +version_basis: + kind: package + url: "https://play.google.com/store/apps/details?id=com.issess.flashplayer" + artifact: "com.issess.flashplayer APK versionName (versionCode 507)" display_name: "Adobe Flash (SWF Player)" mode: standalone cores: diff --git a/emulators/taradino.yml b/emulators/taradino.yml index 58640d580..be8621129 100644 --- a/emulators/taradino.yml +++ b/emulators/taradino.yml @@ -5,7 +5,11 @@ source: "https://github.com/fabiangreffrath/taradino" upstream: "https://github.com/fabiangreffrath/taradino" profiled_date: "2026-10-04" source_commit: "2b4ea3c6c18caf60959efee1f2534c2122607716" -core_version: "0.1" +core_version: "2025.12.22" +version_basis: + kind: file + path: "CMakeLists.txt" + pattern: 'project\(taradino[^)]*?\bVERSION\s+([0-9][0-9.]*)' display_name: "Taradino" cores: [taradino] systems: [rott] diff --git a/emulators/teknoparrot.yml b/emulators/teknoparrot.yml index 7403d1a51..2b2f4c0de 100644 --- a/emulators/teknoparrot.yml +++ b/emulators/teknoparrot.yml @@ -7,6 +7,9 @@ author: "TeknoGods" profiled_date: "2026-10-20" source_commit: "b75872addc1d5cce81a62f4c1468eab59e2d3cbe" core_version: "TeknoParrotUI 7ffcdf1" +version_basis: + kind: unverified + why: host_gone display_name: "Arcade - PC-based and Sega/Namco boards (TeknoParrot)" cores: - teknoparrot diff --git a/emulators/theforceengine.yml b/emulators/theforceengine.yml index 2b3838da9..073e34f48 100644 --- a/emulators/theforceengine.yml +++ b/emulators/theforceengine.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/TheForceEngine/TheForceEngine" profiled_date: "2026-10-04" source_commit: "cc25205cc94c36a396f6f50295772f6ec83069a2" core_version: "v1.22.420" +version_basis: + kind: tag + tag: "v1.22.420" + distance: 0 display_name: "The Force Engine" cores: [theforceengine, tfe] systems: [dark-forces, outlaws] diff --git a/emulators/thextech.yml b/emulators/thextech.yml index 185e99ef1..5a7844b7a 100644 --- a/emulators/thextech.yml +++ b/emulators/thextech.yml @@ -5,6 +5,11 @@ source: "https://github.com/TheXTech/TheXTech" upstream: "https://github.com/TheXTech/TheXTech" profiled_date: "2026-10-04" source_commit: "e07c5bfb92377d315d0ab33177092fa7cadeb84e" +core_version: "1.8-dev" +version_basis: + kind: file + path: "version.cmake" + pattern: 'set\(THEXTECH_ANDROID_VERSION_NAME "([^"]+)"\)' display_name: "TheXTech" cores: [] systems: [smbx] diff --git a/emulators/ti99sim-sdl1.yml b/emulators/ti99sim-sdl1.yml index c1219c58d..563f92548 100644 --- a/emulators/ti99sim-sdl1.yml +++ b/emulators/ti99sim-sdl1.yml @@ -6,6 +6,11 @@ source: "https://files.retropie.org.uk/archives/ti99sim-0.15.0.src.tar.gz" upstream: "https://www.mrousseau.org/programs/ti99sim/" profiled_date: "2026-10-20" core_version: "0.15.0" +version_basis: + kind: package + url: "https://files.retropie.org.uk/archives/ti99sim-0.15.0.src.tar.gz" + pattern: 'ti99sim-(\d+\.\d+\.\d+)\.src\.tar\.gz' + artifact: "ti99sim-0.15.0.src.tar.gz" cores: - ti99sim-sdl1 systems: diff --git a/emulators/ti99sim.yml b/emulators/ti99sim.yml index a2f391be6..1d6d11c6b 100644 --- a/emulators/ti99sim.yml +++ b/emulators/ti99sim.yml @@ -5,7 +5,9 @@ source: https://github.com/christianhaitian/ti99sim upstream: https://www.mrousseau.org/programs/ti99sim/ profiled_date: "2026-03-29" source_commit: "e3608541943b5258afe45b74e3f78e723df1fcbd" -core_version: "0.16.0" +core_version: null +version_basis: + kind: none cores: - ti99sim diff --git a/emulators/touchhle.yml b/emulators/touchhle.yml index 9c03a91ba..d588e5190 100644 --- a/emulators/touchhle.yml +++ b/emulators/touchhle.yml @@ -6,6 +6,10 @@ profiled_date: "2026-10-17" source_commit: "3c5850585ba55615b17a58c58331b6d6f52d4a9d" pin_frozen: "ROCKNIX 20261001 builds this revision. Later upstream commits are not part of that build." core_version: "0.2.3" +version_basis: + kind: file + path: "Cargo.toml" + pattern: 'version\s+=\s+"([^"]+)' display_name: "Apple - iPhone OS (touchHLE)" cores: - "touchhle" diff --git a/emulators/tr1x.yml b/emulators/tr1x.yml index eb91cfa9d..f39b7237e 100644 --- a/emulators/tr1x.yml +++ b/emulators/tr1x.yml @@ -6,6 +6,12 @@ source: "https://github.com/LostArtefacts/TRX" upstream: "https://github.com/LostArtefacts/TRX" source_commit: "4d55f7d3130f9d04bdc1fefb85bf4d8fa93a22d3" upstream_commit: "3d39911a1b839c753b6efad236db67d9fb2b273e" +core_version: "trx-1.11.1-784-g4d55f7d" +version_basis: + kind: tag + match: "trx-*" + tag: "trx-1.11.1" + distance: 784 profiled_date: "2026-10-04" cores: [] systems: diff --git a/emulators/tr2x.yml b/emulators/tr2x.yml index d11bd7717..93fb7238a 100644 --- a/emulators/tr2x.yml +++ b/emulators/tr2x.yml @@ -6,6 +6,12 @@ source: "https://github.com/LostArtefacts/TRX" upstream: "https://github.com/LostArtefacts/TRX" source_commit: "4d55f7d3130f9d04bdc1fefb85bf4d8fa93a22d3" upstream_commit: "3d39911a1b839c753b6efad236db67d9fb2b273e" +core_version: "trx-1.11.1-784-g4d55f7d" +version_basis: + kind: tag + match: "trx-*" + tag: "trx-1.11.1" + distance: 784 profiled_date: "2026-10-23" cores: [] systems: diff --git a/emulators/triforce.yml b/emulators/triforce.yml index 2e1f032a7..f5545d352 100644 --- a/emulators/triforce.yml +++ b/emulators/triforce.yml @@ -7,6 +7,11 @@ profiled_date: "2026-08-08" source_commit: "5c456e8ff0da0235be2cf1d55ba7bb2115b0cae2" upstream_commit: "b92e354389bb7c0bd114a8631b8af110d3cb3a14" core_version: "2407" +version_basis: + kind: tag + repo: upstream + tag: "2407" + distance: 0 display_name: "Namco / Sega / Nintendo - Triforce (Dolphin Triforce)" cores: - triforce diff --git a/emulators/tsugaru.yml b/emulators/tsugaru.yml index f66e7c981..b42da7acf 100644 --- a/emulators/tsugaru.yml +++ b/emulators/tsugaru.yml @@ -5,6 +5,11 @@ source: "https://github.com/captainys/TOWNSEMU" upstream: "https://github.com/captainys/TOWNSEMU" profiled_date: "2026-03-26" source_commit: "e27adde120fe06150f3d57a6dc7cba66b5f43a32" +core_version: "v20260522-179-ge27adde" +version_basis: + kind: tag + tag: "v20260522" + distance: 179 cores: - tsugaru systems: diff --git a/emulators/uae4all.yml b/emulators/uae4all.yml index dc5adad66..739c6bd9f 100644 --- a/emulators/uae4all.yml +++ b/emulators/uae4all.yml @@ -8,6 +8,10 @@ profiled_date: "2026-10-20" source_commit: "5c514dd6d8bb374bd22e2ee423bad99539207cbd" upstream_commit: "0f919a32b6d41a04cbc766c0e6076cda9fa7a63b" core_version: "2.3.6.2" +version_basis: + kind: file + path: "AndroidAppSettings.cfg" + pattern: '^AppVersionName="([^"]+)"' display_name: "Commodore - Amiga (UAE4All2)" cores: [uae4all] systems: [commodore-amiga] diff --git a/emulators/uqm.yml b/emulators/uqm.yml index 42de16372..a632b9547 100644 --- a/emulators/uqm.yml +++ b/emulators/uqm.yml @@ -6,6 +6,11 @@ upstream: "https://sourceforge.net/projects/sc2/" profiled_date: "2026-10-04" source_commit: "ff2444088d42e80612fd28f79d368783e244a606" core_version: "0.8.0" +version_basis: + kind: file + path: "sc2/src/uqmversion.h" + pattern: '#define UQM_MAJOR_VERSION_S\s+"(\d+)"[\s\S]*?#define UQM_MINOR_VERSION_S\s+"(\d+)"[\s\S]*?#define UQM_PATCH_VERSION_S\s+"(\d+)"[\s\S]*?#define UQM_EXTRA_VERSION\s+"([^"]*)"' + format: "{1}.{2}.{3}{4}" display_name: "The Ur-Quan Masters" cores: [uqm] systems: [ur-quan-masters, star-control-2] diff --git a/emulators/uzdoom.yml b/emulators/uzdoom.yml index 9fce74fa3..3d44c59b1 100644 --- a/emulators/uzdoom.yml +++ b/emulators/uzdoom.yml @@ -5,6 +5,10 @@ source: "https://github.com/UZDoom/UZDoom" profiled_date: "2026-10-20" source_commit: "7910df7102033fd7754a317f3254f24101135926" core_version: "5.0.3" +version_basis: + kind: tag + tag: "5.0.3" + distance: 0 display_name: "UZDoom" cores: - uzdoom diff --git a/emulators/veesem.yml b/emulators/veesem.yml index 57abbf5ef..d97a725a5 100644 --- a/emulators/veesem.yml +++ b/emulators/veesem.yml @@ -5,7 +5,11 @@ source: "https://github.com/sp1187/veesem" upstream: "https://github.com/sp1187/veesem" profiled_date: "2026-08-08" source_commit: "42fb8f07e7418f16ccfb7364127aef2217dda641" -core_version: "0.2" +core_version: "v0.2" +version_basis: + kind: tag + tag: "v0.2" + distance: 0 display_name: "VTech - V.Smile (veesem)" cores: - veesem diff --git a/emulators/vice-standalone.yml b/emulators/vice-standalone.yml index cacd11daf..612ac8f1f 100644 --- a/emulators/vice-standalone.yml +++ b/emulators/vice-standalone.yml @@ -8,6 +8,11 @@ profiled_date: "2026-10-24" source_commit: "81546e60c222fe4aef750b890b0dbe3a5ac280d8" pin_frozen: "ROCKNIX, the only platform that ships it, builds this revision (ROCKNIX projects/ROCKNIX/packages/emulators/standalone/vice-sa/package.mk:5). Later commits are not part of that build." core_version: "3.8" +version_basis: + kind: file + path: "vice/configure.ac" + pattern: 'm4_define\(vice_version_major, (\d+)\)\s*m4_define\(vice_version_minor, (\d+)\)\s*m4_define\(vice_version_build, 0\)' + format: "{1}.{2}" display_name: "Commodore - 8-bit computers (VICE SDL2)" mode: standalone cores: diff --git a/emulators/virtual-virtual-boy.yml b/emulators/virtual-virtual-boy.yml index d12b68939..7950d0cf9 100644 --- a/emulators/virtual-virtual-boy.yml +++ b/emulators/virtual-virtual-boy.yml @@ -7,7 +7,11 @@ author: "Simon Gellis" profiled_date: "2026-08-12" source_commit: "0bf230bced628d78ff2c149baaf16f6fb8388cec" upstream_commit: "0bf230bced628d78ff2c149baaf16f6fb8388cec" -core_version: "1.18.2" +core_version: "v1.18.2" +version_basis: + kind: tag + tag: "v1.18.2" + distance: 0 display_name: "Nintendo - Virtual Boy (Virtual Virtual Boy)" mode: standalone cores: diff --git a/emulators/visual-pinball.yml b/emulators/visual-pinball.yml index 52db2da2b..fe72f75f7 100644 --- a/emulators/visual-pinball.yml +++ b/emulators/visual-pinball.yml @@ -7,6 +7,11 @@ profiled_date: "2026-10-27" source_commit: "63770cd66eee66c84c10ba2f4d2edff918ab85d3" prose_written_at: "63770cd66eee66c84c10ba2f4d2edff918ab85d3" core_version: "10.8.1" +version_basis: + kind: file + path: "src/core/vpversion.h" + pattern: '#define VP_VERSION_MAJOR\s+(\d+)[^\n]*\n#define VP_VERSION_MINOR\s+(\d+)[^\n]*\n#define VP_VERSION_REV\s+(\d+)' + format: "{1}.{2}.{3}" display_name: "Visual Pinball X" cores: - vpinball diff --git a/emulators/vita3k.yml b/emulators/vita3k.yml index 19be65244..19be9d94f 100644 --- a/emulators/vita3k.yml +++ b/emulators/vita3k.yml @@ -4,7 +4,12 @@ source: "https://github.com/Vita3K/Vita3K" upstream: "https://github.com/Vita3K/Vita3K" profiled_date: "2026-10-23" source_commit: "6ec8e6ce31f3d6099b14eb9dd0320c09ef6386b6" -core_version: "0.2.1" +core_version: "v0.2.1" +version_basis: + kind: file + path: "vita3k/CMakeLists.txt" + pattern: 'set\(VITA3K_APP_VER_HI (\d+)\)\nset\(VITA3K_APP_VER_MID (\d+)\)\nset\(VITA3K_APP_VER_LO (\d+)\)\nset\(VITA3K_APP_VERSION "v' + format: "v{1}.{2}.{3}" display_name: "Vita3K (PS Vita)" cores: - vita3k diff --git a/emulators/vkquake.yml b/emulators/vkquake.yml index 24fbee84a..fd0fd1c16 100644 --- a/emulators/vkquake.yml +++ b/emulators/vkquake.yml @@ -6,6 +6,11 @@ upstream: "https://sourceforge.net/projects/quakespasm/" profiled_date: "2026-10-23" source_commit: "a6cfba6904e0743dae4235f9dad9711bb5bd27f1" core_version: "1.37.1" +version_basis: + kind: file + path: "Quake/quakever.h" + pattern: '#define VKQUAKE_VERSION_MAJOR (\d+)\n#define VKQUAKE_VERSION_MINOR (\d+)\n#define VKQUAKE_VER_PATCH\s+(\d+)' + format: "{1}.{2}.{3}" display_name: "Quake (vkQuake)" cores: ["vkquake"] systems: [quake] diff --git a/emulators/vkquake2.yml b/emulators/vkquake2.yml index 946317b99..649fb92d6 100644 --- a/emulators/vkquake2.yml +++ b/emulators/vkquake2.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/id-Software/Quake-2" profiled_date: "2026-10-23" source_commit: "6763f207229f97cffabb6fc2da72017a794b139b" core_version: "1.5.10" +version_basis: + kind: tag + tag: "1.5.10" + distance: 0 display_name: "Quake II (vkQuake2)" cores: ["vkquake2"] systems: [quake2, xatrix, rogue, ctf] diff --git a/emulators/vkquake3.yml b/emulators/vkquake3.yml index 2b94f663e..45c527656 100644 --- a/emulators/vkquake3.yml +++ b/emulators/vkquake3.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/ioquake/ioq3" profiled_date: "2026-10-17" source_commit: "650bd625eb725446279c6176804b554e2e1c98f3" core_version: "1.36" +version_basis: + kind: file + path: "Makefile" + pattern: 'VERSION=([0-9][\w.+-]*)' display_name: "Quake III Arena (vkQuake3)" cores: ["vkquake3"] systems: [quake3, teamarena] diff --git a/emulators/vvvvvv.yml b/emulators/vvvvvv.yml index 4ed530e3a..05590f071 100644 --- a/emulators/vvvvvv.yml +++ b/emulators/vvvvvv.yml @@ -6,6 +6,11 @@ upstream: "https://github.com/TerryCavanagh/VVVVVV" profiled_date: "2026-10-23" source_commit: "40e1ec3bbf2a990a5c600564fe312c2121178a50" core_version: "v2.5" +version_basis: + kind: file + path: "desktop_version/src/ReleaseVersion.h" + pattern: '#define MAJOR_VERSION (\d+)\n#define MINOR_VERSION (\d+)\n#define PATCH_VERSION 0\b' + format: "v{1}.{2}" display_name: "VVVVVV" cores: - "vvvvvv" diff --git a/emulators/winuae.yml b/emulators/winuae.yml index 45daeac6a..602266b95 100644 --- a/emulators/winuae.yml +++ b/emulators/winuae.yml @@ -5,6 +5,11 @@ source: "https://github.com/tonioni/WinUAE" source_commit: "15110cf6606d1188800ea7ad86bf1cbd9c688741" profiled_date: "2026-10-20" core_version: "6.1.0 beta 19" +version_basis: + kind: file + path: "include/winuae_version.h" + pattern: '#define UAEMAJOR (\d+)\n#define UAEMINOR (\d+)\n#define UAESUBREV (\d+)\n\n#define WINUAEPUBLICBETA 1\n\n#if WINUAEPUBLICBETA\n#define WINUAEBETA _T\("(\d+)"\)' + format: "{1}.{2}.{3} beta {4}" display_name: "Commodore - Amiga (WinUAE)" cores: - winuae diff --git a/emulators/wolf4sdl.yml b/emulators/wolf4sdl.yml index c55166e56..6737502d1 100644 --- a/emulators/wolf4sdl.yml +++ b/emulators/wolf4sdl.yml @@ -5,7 +5,11 @@ source: "https://github.com/KS-Presto/Wolf4SDL" upstream: "https://github.com/KS-Presto/Wolf4SDL" profiled_date: "2026-10-20" source_commit: "dc8b250af35fb0ace68db5eb879490b50068c20e" -core_version: "2.0" +core_version: "v2.0" +version_basis: + kind: file + path: "wl_main.c" + pattern: '"Wolf4SDL (v[0-9][0-9.]*[0-9A-Za-z]*)\\n"' display_name: "Wolfenstein 3D (Wolf4SDL)" cores: [wolf4sdl] systems: [wolfenstein3d] diff --git a/emulators/x1-box.yml b/emulators/x1-box.yml index 0bf800383..17220ac2c 100644 --- a/emulators/x1-box.yml +++ b/emulators/x1-box.yml @@ -8,6 +8,10 @@ profiled_date: "2026-10-26" source_commit: "e092175b9196438ee2712bf6f45398fe2970b5fe" upstream_commit: "26fcbe54f17e496bdf530dad9f237e74e2f943fc" core_version: "1.3.2" +version_basis: + kind: tag + tag: "1.3.2" + distance: 0 display_name: "Microsoft - Xbox (X1 BOX)" cores: - "x1-box" diff --git a/emulators/x16emu.yml b/emulators/x16emu.yml index 3d2d52400..d4b011799 100644 --- a/emulators/x16emu.yml +++ b/emulators/x16emu.yml @@ -5,6 +5,10 @@ upstream: "https://github.com/X16Community/x16-emulator" profiled_date: "2026-10-20" source_commit: "af1024080ced455ea098b007aed43142c99e93da" core_version: "r49" +version_basis: + kind: tag + tag: "r49" + distance: 0 display_name: "Commander X16 (x16emu)" cores: - x16emu diff --git a/emulators/xash3d_fwgs.yml b/emulators/xash3d_fwgs.yml index f4e99b9a1..aecc372d1 100644 --- a/emulators/xash3d_fwgs.yml +++ b/emulators/xash3d_fwgs.yml @@ -5,7 +5,11 @@ source: "https://github.com/FWGS/xash3d-fwgs" upstream: "https://github.com/FWGS/xash3d-fwgs" profiled_date: "2026-10-04" source_commit: "27092af50d912432887faa43a1cccddfae569b2d" -core_version: "0.21+git" +core_version: "0.21" +version_basis: + kind: file + path: "engine/common/com_strings.h" + pattern: '#define\s+XASH_VERSION\s+"([^"]+)"' display_name: "Xash3D FWGS" cores: [xash3d_fwgs, xash3d] systems: [halflife, cstrike, czero, czeror, dmc, gearbox, bshift, ricochet, tfc] diff --git a/emulators/xemu-chihiro.yml b/emulators/xemu-chihiro.yml index ab82e0e92..a7709ddd6 100644 --- a/emulators/xemu-chihiro.yml +++ b/emulators/xemu-chihiro.yml @@ -7,7 +7,12 @@ upstream: "https://github.com/xemu-project/xemu" profiled_date: "2026-10-20" source_commit: "98fbd75dd0f3088a4988abc1698feb37b844a41a" upstream_commit: "25e1ee2fd59a451f2ab57e825b4f8a5414220c8b" -core_version: "0.8.134-406-g0d44d803b2" +core_version: "v0.8.134-410-g98fbd75" +version_basis: + kind: tag + match: "v*" + tag: "v0.8.134" + distance: 410 display_name: "Sega - Chihiro (xemu Chihiro)" cores: - xemu-chihiro diff --git a/emulators/xendroid.yml b/emulators/xendroid.yml index f712a9d2e..f48b11da5 100644 --- a/emulators/xendroid.yml +++ b/emulators/xendroid.yml @@ -7,7 +7,11 @@ author: "rfandango" profiled_date: "2026-09-17" source_commit: "779680ade075d2d2a4c589c6a8d57a8e26c116c0" upstream_commit: "d881a29125978b4eea6bf44f6ed8c33f8aea8c33" -core_version: "0b11201" +core_version: "XenDroid-0b11201-2-g779680a" +version_basis: + kind: tag + tag: "XenDroid-0b11201" + distance: 2 display_name: "Microsoft - Xbox 360 (XenDroid)" cores: - "xendroid" diff --git a/emulators/xenia.yml b/emulators/xenia.yml index 57c49bba9..b0ff32c4f 100644 --- a/emulators/xenia.yml +++ b/emulators/xenia.yml @@ -5,7 +5,11 @@ source: "https://github.com/xenia-canary/xenia-canary" upstream: "https://github.com/xenia-canary/xenia-canary" profiled_date: "2026-03-26" source_commit: "72c2afa3ba2b1b232f89de71577251d6edafb1bd" -core_version: "canary" +core_version: "72c2afa" +version_basis: + kind: tag + tag: "72c2afa" + distance: 0 display_name: "Xenia Canary (Xbox 360)" cores: - xenia diff --git a/emulators/xenios.yml b/emulators/xenios.yml index e1f648ef6..cc9440da6 100644 --- a/emulators/xenios.yml +++ b/emulators/xenios.yml @@ -6,7 +6,12 @@ upstream: "https://github.com/has207/xenia-edge" source_commit: "87b176a078c316fde3adf67a217f0c44615b0e0d" upstream_commit: "07021f019cf55105bc26c0474e0b0835808353e2" profiled_date: "2026-08-23" -core_version: "2.0.1" +core_version: "v2.0.1-2-g87b176a" +version_basis: + kind: tag + match: "v[0-9]*.[0-9]*.[0-9]*" + tag: "v2.0.1" + distance: 2 display_name: "Microsoft - Xbox 360 (XeniOS)" cores: - "xenios" diff --git a/emulators/xm6pro68k.yml b/emulators/xm6pro68k.yml index 44f605745..4d847f341 100644 --- a/emulators/xm6pro68k.yml +++ b/emulators/xm6pro68k.yml @@ -9,6 +9,10 @@ version_source: based_on: "XM6 v2.06 by PI." profiled_date: "2026-10-20" core_version: "260920" +version_basis: + kind: package + url: "https://www.retrobat.ovh/repo/win64/stable/emulators/xm6pro.7z" + artifact: "xm6pro.7z, Version.txt" display_name: "XM6 Pro-68k (Sharp X68000)" mode: standalone cores: diff --git a/emulators/xm6typeg.yml b/emulators/xm6typeg.yml index c44b057ec..666cf9834 100644 --- a/emulators/xm6typeg.yml +++ b/emulators/xm6typeg.yml @@ -9,6 +9,12 @@ version_source: based_on: "XM6 v2.06 by PI." profiled_date: "2026-08-10" core_version: "3.38" +version_basis: + kind: package + url: "http://retropc.net/pi/xm6/index.html" + pattern: 'xm6_typeg_(\d)(\d+)_\d+\.zip' + format: "{1}.{2}" + artifact: "xm6_typeg_338_20260223.zip" display_name: "XM6 TypeG (Sharp X68000)" mode: standalone cores: diff --git a/emulators/xm7.yml b/emulators/xm7.yml index 6a771ae01..e44af9a08 100644 --- a/emulators/xm7.yml +++ b/emulators/xm7.yml @@ -7,6 +7,11 @@ upstream: "http://retropc.net/ryu/xm7/" profiled_date: "2026-10-20" source_commit: "2a48dceaf8a3a0de92cf369b039ac5fab2bb351a" core_version: "V3.4 L61a SDL/Agar 0.3.2pre2" +version_basis: + kind: file + path: "linux-sdl/vm/xm7.h" + pattern: '#if XM7_VER >= 3\n#define\s+VERSION\s+"(V[^"]+)"[\s\S]*?#else\n#define\s+LEVEL\s+"([^"]+)"[\s\S]*?#else\n#define\s+LOCALVER\s+"(SDL/Agar [^"]+)"' + format: "{1} {2} {3}" cores: - xm7 systems: diff --git a/emulators/xroar.yml b/emulators/xroar.yml index 38d7ff49e..4729f716a 100644 --- a/emulators/xroar.yml +++ b/emulators/xroar.yml @@ -7,6 +7,9 @@ version_source: pattern: 'version\s*<strong>([0-9.]+)</strong>, released' profiled_date: "2026-10-20" core_version: "1.12.1" +version_basis: + kind: unverified + why: host_unsupported display_name: "Dragon / CoCo / MC-10 (XRoar)" cores: - xroar diff --git a/emulators/yquake2.yml b/emulators/yquake2.yml index 19cf021a9..bdb74943d 100644 --- a/emulators/yquake2.yml +++ b/emulators/yquake2.yml @@ -5,7 +5,11 @@ source: "https://github.com/yquake2/yquake2" upstream: "https://github.com/yquake2/yquake2" profiled_date: "2026-10-04" source_commit: "9dbf699273e2546f3ad14cff3dee6a51a518cd2a" -core_version: "8.51+git" +core_version: "8.71pre" +version_basis: + kind: file + path: "src/common/header/common.h" + pattern: '#define\s+YQ2VERSION\s+"([^"]+)"' display_name: "Yamagi Quake II" cores: [yquake2] systems: [quake2, xatrix, rogue, ctf] diff --git a/emulators/yuzu.yml b/emulators/yuzu.yml index 529a1cb26..e425668bf 100644 --- a/emulators/yuzu.yml +++ b/emulators/yuzu.yml @@ -9,6 +9,9 @@ pin_frozen: "The analysed revision, the one the EA 4176 build documented here co upstream_gone: "GitHub withdrew the repository for legal reasons: the API answers HTTP 451 for both yuzu-emu/yuzu and the yuzu-emu-mirror copy. Observed 2026-09-04. The fork Zenfone-5-X00QD-4-19/yuzu, pushed 2024-03-05, still serves the analysed commit." source_mirror: "https://github.com/Zenfone-5-X00QD-4-19/yuzu" core_version: "EA 4176" +version_basis: + kind: unverified + why: host_gone display_name: "Yuzu (Nintendo Switch)" cores: - yuzu diff --git a/emulators/zesarux.yml b/emulators/zesarux.yml index 728e9d1c3..3017ab21f 100644 --- a/emulators/zesarux.yml +++ b/emulators/zesarux.yml @@ -7,6 +7,10 @@ source_commit: "fd354296d851edc24ad1411b8f9342a66d07d460" prose_written_at: "e1fc8db2957c360c8ff584a2c4d147f70861c3aa" profiled_date: "2026-10-26" core_version: "13.1-SN" +version_basis: + kind: file + path: "src/cpu.h" + pattern: '^#define\s+EMULATOR_VERSION\s+"([^"]+)"' display_name: "Sinclair - ZX Spectrum and clones (ZEsarUX)" verification: existence cores: [zesarux] diff --git a/emulators/zinc.yml b/emulators/zinc.yml index 2dbcc21b0..8c45a43af 100644 --- a/emulators/zinc.yml +++ b/emulators/zinc.yml @@ -6,6 +6,10 @@ upstream: closed-source author: "Drunken Muppets" profiled_date: "2026-10-20" core_version: "1.1" +version_basis: + kind: package + url: "https://www.retrobat.ovh/repo/win64/stable/emulators/zinc.7z" + artifact: "zinc.7z, ZiNc.exe banner" display_name: "Arcade - Sony ZN-1/ZN-2, Namco System 11, Konami GV (ZiNc)" cores: - zinc diff --git a/emulators/zquestclassic.yml b/emulators/zquestclassic.yml index 10da14d2d..b606049d6 100644 --- a/emulators/zquestclassic.yml +++ b/emulators/zquestclassic.yml @@ -6,6 +6,10 @@ upstream: "https://github.com/ZQuestClassic/ZQuestClassic" source_commit: "4ef771c64666812a1359b8f34fe4d7803868ba13" profiled_date: "2026-10-20" core_version: "2.55.17" +version_basis: + kind: tag + tag: "2.55.17" + distance: 0 display_name: "Zelda Classic (ZQuest Classic)" cores: [zquestclassic] systems: [zeldaclassic]