diff --git a/emulators/beetle_pce.yml b/emulators/beetle_pce.yml index b90ebb77..039649ce 100644 --- a/emulators/beetle_pce.yml +++ b/emulators/beetle_pce.yml @@ -1,27 +1,25 @@ emulator: Beetle PCE (Mednafen PCE) type: libretro +core_classification: community_fork source: "https://github.com/libretro/beetle-pce-libretro" -profiled_date: "2026-03-18" +upstream: "https://mednafen.github.io/" +profiled_date: "2026-03-24" core_version: "v0.9.38.7" display_name: "NEC - PC Engine / SuperGrafx / CD (Beetle PCE)" -cores: [mednafen_pce, mednafen_pce_fast, mednafen_supergrafx] +cores: [mednafen_pce] systems: [nec-pc-engine] verification: existence notes: > - BIOS loaded from system directory at CD-ROM load time via PCE_LoadCD(). + Libretro port of Mednafen's PCE-Accurate module. BIOS loaded from system + directory at CD-ROM load time via PCE_LoadCD() in pce.cpp:441-460. Core option "pce_cdbios" selects which card image to use (default: System Card 3). - DetectGECD() auto-detects Games Express discs and switches to "pce.gecdbios" (gexpress.pce). - Arcade Card mode (pce_arcadecard option, enabled by default) extends System Card 3 with - extra RAM mapping via SYSCARD_ARCADE enum. - No hash validation on BIOS load: the core opens the file and reads it directly. - gexpress.pce and gecard.pce are the same ROM (Games Express CD Card); the core expects - gexpress.pce, libretro System.dat references gecard.pce. Both names should be provided. - SuperGrafx CD detection (DetectSGXCD) reads sector data to decide SGX mode but uses the - same BIOS files. + DetectGECD() auto-detects Games Express discs and switches to gexpress.pce. + Arcade Card mode (pce_arcadecard option, enabled by default) extends System Card 3 + with extra RAM mapping via SYSCARD_ARCADE enum. + No hash or size validation on BIOS load: file_open() then HuC_Load() reads data directly. + DetectSGXCD() reads sector data to decide SGX mode but uses the same BIOS files. files: - # -- CD-ROM System Card 3 (Japan) - default -- - - name: "syscard3.pce" description: "CD-ROM System Card 3.0 (Japan)" region: "NTSC-J" @@ -29,9 +27,7 @@ files: sha1: "79f5ff55dd10187c7fd7b8daab0b3ffbd1f56a2c" md5: "38179df8f4ac870017db21ebcbf53114" source_ref: "libretro.cpp:1051-1052, settings.cpp:40" - notes: "Default value for pce_cdbios option. Most CD games run with this." - - # -- CD-ROM System Card 3 (US) -- + note: "Default value for pce_cdbios option." - name: "syscard3u.pce" description: "CD-ROM System Card 3.0 (US / TurboGrafx-CD)" @@ -40,9 +36,7 @@ files: sha1: "d02611d99921986147c753df14c7349b31d71950" md5: "0754f903b52e3b3342202bdafb13efa5" source_ref: "libretro.cpp:1059-1060" - notes: "pce_cdbios = 'System Card 3 US'" - - # -- CD-ROM System Card 2 (Japan) -- + note: "pce_cdbios = 'System Card 3 US'" - name: "syscard2.pce" description: "CD-ROM System Card 2.0 (Japan)" @@ -51,9 +45,7 @@ files: sha1: "88da02e2503f7c32810f5d93a34849d470742b6d" md5: "3cdd6614a918616bfc41c862e889dd79" source_ref: "libretro.cpp:1053-1054" - notes: "pce_cdbios = 'System Card 2'. Older games only." - - # -- CD-ROM System Card 2 (US) -- + note: "pce_cdbios = 'System Card 2'" - name: "syscard2u.pce" description: "CD-ROM System Card 2.0 (US / TurboGrafx-CD)" @@ -62,9 +54,7 @@ files: sha1: "2bea3dac98f84b2f2f469fa77ea720b8770d598d" md5: "94279f315e8b52904f65ab3108542afe" source_ref: "libretro.cpp:1061-1062" - notes: "pce_cdbios = 'System Card 2 US'" - - # -- CD-ROM System Card 1 (Japan) -- + note: "pce_cdbios = 'System Card 2 US'" - name: "syscard1.pce" description: "CD-ROM System Card 1.0 (Japan)" @@ -73,9 +63,7 @@ files: sha1: "a39a66da7de6ba94ab84d04eef7afeec7d4ee66a" md5: "2b7ccb3d86baa18f6402c176f3065082" source_ref: "libretro.cpp:1055-1056" - notes: "pce_cdbios = 'System Card 1'. Very early CD-ROM2 games." - - # -- Games Express CD Card -- + note: "pce_cdbios = 'System Card 1'" - name: "gexpress.pce" description: "Games Express CD Card" @@ -83,9 +71,6 @@ files: required: false sha1: "014881a959e045e00f4db8f52955200865d40280" md5: "6d2cb14fc3e1f65ceb135633d1694122" - source_ref: "libretro.cpp:1057-1058, settings.cpp:41" - alt_names: ["gecard.pce"] - notes: > - pce_cdbios = 'Games Express' or auto-detected via DetectGECD() in pce.cpp:374. - Same ROM as gecard.pce (System.dat name). Core expects gexpress.pce filename. - Required for unlicensed Games Express titles (AV Tanjou, Bishoujo Jyanshi, etc). + source_ref: "libretro.cpp:1057-1058, settings.cpp:41, pce.cpp:374-411" + aliases: ["gecard.pce"] + note: "pce_cdbios = 'Games Express' or auto-detected via DetectGECD()." diff --git a/emulators/ishiiruka.yml b/emulators/ishiiruka.yml index aac1888d..ba9781f2 100644 --- a/emulators/ishiiruka.yml +++ b/emulators/ishiiruka.yml @@ -174,30 +174,25 @@ files: notes: hle_available: true hle_note: > - Dolphin provides HLE for GameCube IPL (boot ROM), DSP, and Wii system functions. - No BIOS files are strictly required for most games. DSP ROMs (dsp_rom.bin + dsp_coef.bin) - are the most impactful optional files - Dolphin ships free replacements but real dumps - from hardware provide better audio accuracy in some titles. + HLE covers GameCube IPL (boot ROM), DSP, and Wii system functions. ipl_regions: ["USA", "EUR", "JAP"] dsp_rom_note: > - DSP ROMs are verified at load time via Adler32 hash. + DSP ROMs verified at load time via Adler32 hash. Official Nintendo hashes: irom=0x66f334fe, drom=0xf3b93527. - Multiple free replacement versions exist (v0.1 through v0.4). + Free replacement ROMs (v0.1 through v0.4) shipped in Sys/GC/. font_note: > - Fonts can come from three sources: real IPL dump (preferred), standalone font files - in Sys/GC/, or bundled free alternatives. The free fonts have different padding that - causes text positioning issues in some games. + Fonts loaded from three sources: IPL dump, standalone files in Sys/GC/, + or bundled free alternatives. Free alternatives have different padding + metrics than original Nintendo fonts. nand_note: > - Wii NAND content (channels, saves, system menu) is managed by Dolphin internally. - Users can import a BootMii NAND backup (nand.bin + optional keys.bin) to populate it. - NAND import is only available in standalone mode, not via the libretro core. + Wii NAND content managed internally. BootMii NAND backup (nand.bin + optional + keys.bin) import supported in standalone mode only. dolphin_fork: true fork_base: "Dolphin 5.0-era" fork_differences: > - Ishiiruka is a Dolphin fork focused on GPU performance (custom texture cache, - asynchronous shader compilation, post-processing). The BIOS/firmware handling - is identical to upstream Dolphin of the same era. No GBA link support (no mGBA - integration). No Realtek Bluetooth firmware support. + Dolphin fork with custom GPU backends, async shader compilation, post-processing. + BIOS/firmware handling identical to upstream Dolphin of the same era. No GBA link + support (no mGBA integration). No Realtek Bluetooth firmware support. libretro_path: "system/dolphin-emu/" data_dir_standalone: "ishiiruka" data_dir_note: > diff --git a/emulators/mame.yml b/emulators/mame.yml index 852e0df1..6a41a773 100644 --- a/emulators/mame.yml +++ b/emulators/mame.yml @@ -45,7 +45,7 @@ systems: notes: | Rolling release tracking mamedev/mame upstream (currently 0.286). - 99 BIOS root sets. romload.cpp unmodified. No hiscore support. + 80 BIOS root sets. romload.cpp unmodified. No hiscore support. Paths under system_dir/mame/ (artwork, cheat, hash, ini, plugins, samples, crosshair). ROM search: content_dir + system_dir/mame/bios + system_dir/mame/roms. Cheats via per-game XML files. @@ -510,98 +510,3 @@ files: category: bios_zip source_ref: "src/mame/misc/xtom3d.cpp:996" - - name: ddrfammt.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2896" - - # XaviX TV games BIOS sets - - name: ekara.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2878" - - - name: ekaraa.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2879" - - - name: ekaraj.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2880" - - - name: ekarag.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2881" - - - name: ekaras.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2882" - - - name: isinger.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2884" - - - name: ekaraphs.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2887" - - - name: epitch.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2890" - - - name: ekaramix.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2893" - - - name: popira.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2899" - - - name: popirak.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2901" - - - name: popira2.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2904" - - - name: taikodp.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2907" - - - name: jpopira.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2910" - - - name: evio.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2913" - - - name: tak_daig.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2918" - - - name: gcslottv.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2920" - - - name: hikara.zip - required: true - category: bios_zip - source_ref: "src/mame/tvgames/xavix.cpp:2925" diff --git a/emulators/mame2010.yml b/emulators/mame2010.yml index 8490f0a6..cc653045 100644 --- a/emulators/mame2010.yml +++ b/emulators/mame2010.yml @@ -47,8 +47,9 @@ notes: | hiscore.dat is embedded in binary (precompile/hiscore_dat.h). External hiscore.dat loadable via core option mame-external_hiscore from - system_dir/mame2010/. Cheats use per-game XML files (cheat.zip in - metadata/). Samples in system_dir/mame2010/samples/. + system_dir/mame2010/. cheatpath declared but never initialized in + libretro port (cheat loading non-functional). Samples in + system_dir/mame2010/samples/. ROM naming follows MAME 0.139 conventions. @@ -64,7 +65,7 @@ files: required: false category: game_data source_ref: "src/emu/cheat.c:1027" - note: "per-game XML cheat files in ZIP, loaded from system_dir/mame2010/" + note: "per-game XML cheat files in ZIP, cheatpath never initialized in libretro port (non-functional)" # SNK Neo Geo MVS/AES - name: neogeo.zip @@ -403,7 +404,7 @@ files: - name: galgbios.zip required: true category: bios_zip - source_ref: "src/mame/drivers/galaxia.c" + source_ref: "src/mame/drivers/tmaster.c" - name: gq863.zip required: true diff --git a/emulators/mamearcade.yml b/emulators/mamearcade.yml index fad1fd38..e04adb6e 100644 --- a/emulators/mamearcade.yml +++ b/emulators/mamearcade.yml @@ -31,7 +31,29 @@ systems: - capcom-zn2 - konami-gv - konami-twinkle + - konami-bubble-system + - konami-gx - hyper-neogeo64 + - sammy-medal + - sega-isgsm + - nintendo-aleck64 + - taito-fx1 + - taito-gnet + - acclaim-zn1 + - atari-zn1 + - atlus-zn1 + - videosystem-zn1 + - eighting-zn1 + - tecmo-tps + - imax-macs + - arcadia-systems + - atari-system1 + - exidy-maxaflex + - brezzasoft-crystal + - ces-galaxy-games + - efo-cedar-magnet + - itech-eagle + - andamiro-pumpitup notes: | Arcade-only build of libretro/mame (SUBTARGET=arcade). Same source repo, @@ -84,22 +106,26 @@ files: - name: hod2bios.zip required: false category: bios_zip + system: sega-naomi source_ref: "src/mame/sega/naomi.cpp:10918" note: "game-specific BIOS for House of the Dead 2" - name: f355dlx.zip required: false category: bios_zip + system: sega-naomi source_ref: "src/mame/sega/naomi.cpp:10919" - name: f355bios.zip required: false category: bios_zip + system: sega-naomi source_ref: "src/mame/sega/naomi.cpp:10920" - name: airlbios.zip required: false category: bios_zip + system: sega-naomi source_ref: "src/mame/sega/naomi.cpp:10921" # Sega ST-V @@ -112,6 +138,7 @@ files: - name: sammymdl.zip required: true category: bios_zip + system: sammy-medal source_ref: "src/mame/sigma/sigmab98.cpp:2409" # Sega Mega Drive arcade @@ -130,6 +157,7 @@ files: - name: isgsm.zip required: true category: bios_zip + system: sega-isgsm source_ref: "src/mame/sega/segas16b_isgsm.cpp:608" # DECO Cassette @@ -155,6 +183,7 @@ files: - name: aleck64.zip required: true category: bios_zip + system: nintendo-aleck64 source_ref: "src/mame/nintendo/aleck64.cpp:1417" # Philips CD-i @@ -182,6 +211,7 @@ files: - name: konamigx.zip required: true category: bios_zip + system: konami-gx source_ref: "src/mame/konami/konamigx.cpp:4193" - name: konamigv.zip @@ -193,6 +223,7 @@ files: - name: kviper.zip required: true category: bios_zip + system: konami-viper source_ref: "src/mame/konami/viper.cpp:3267" - name: gq863.zip @@ -204,6 +235,7 @@ files: - name: bubsys.zip required: true category: bios_zip + system: konami-bubble-system source_ref: "src/mame/konami/nemesis.cpp:3234" # Sony ZN-based (PSX arcade) @@ -222,47 +254,56 @@ files: - name: coh1000t.zip required: true category: bios_zip + system: taito-fx1 source_ref: "src/mame/sony/zn.cpp:5987" - name: coh1000a.zip required: true category: bios_zip + system: acclaim-zn1 source_ref: "src/mame/sony/zn.cpp:6013" - name: coh1000w.zip required: true category: bios_zip + system: atari-zn1 source_ref: "src/mame/sony/zn.cpp:6022" - name: coh1001l.zip required: true category: bios_zip + system: atlus-zn1 source_ref: "src/mame/sony/zn.cpp:6026" - name: coh1002v.zip required: true category: bios_zip + system: videosystem-zn1 source_ref: "src/mame/sony/zn.cpp:6030" - name: coh1002e.zip required: true category: bios_zip + system: eighting-zn1 source_ref: "src/mame/sony/zn.cpp:6036" - name: coh1002m.zip required: true category: bios_zip + system: tecmo-tps source_ref: "src/mame/sony/zn.cpp:6087" # Taito - name: coh3002t.zip required: true category: bios_zip + system: taito-gnet source_ref: "src/mame/sony/taitogn.cpp:1377" - name: coh1002t.zip required: true category: bios_zip + system: taito-gnet source_ref: "src/mame/sony/taitogn.cpp:1378" # Super Kaneko Nova System @@ -275,11 +316,13 @@ files: - name: mac2bios.zip required: true category: bios_zip + system: imax-macs source_ref: "src/mame/seta/macs.cpp:776" - name: macsbios.zip required: true category: bios_zip + system: imax-macs source_ref: "src/mame/seta/macs.cpp:775" # Hyper Neo-Geo 64 @@ -293,44 +336,52 @@ files: - name: ar_bios.zip required: true category: bios_zip + system: arcadia-systems source_ref: "src/mame/amiga/arsystems.cpp:1011" # Atari - name: atarisy1.zip required: true category: bios_zip + system: atari-system1 source_ref: "src/mame/atari/atarisy1.cpp:2669" - name: maxaflex.zip required: true category: bios_zip + system: exidy-maxaflex source_ref: "src/mame/atari/maxaflex.cpp:450" # Crystal System - name: crysbios.zip required: true category: bios_zip + system: brezzasoft-crystal source_ref: "src/mame/misc/crystal.cpp:847" # Galaxy Games - name: galgbios.zip required: true category: bios_zip + system: ces-galaxy-games source_ref: "src/mame/ces/galgames.cpp:1288" # EFO Cedar Magnet - name: cedmag.zip required: true category: bios_zip + system: efo-cedar-magnet source_ref: "src/mame/efo/cedar_magnet.cpp:1166" # Misc - name: iteagle.zip required: true category: bios_zip + system: itech-eagle source_ref: "src/mame/itech/iteagle.cpp:756" - name: pumpitup.zip required: true category: bios_zip + system: andamiro-pumpitup source_ref: "src/mame/misc/xtom3d.cpp:996" diff --git a/emulators/mednafen_gba.yml b/emulators/mednafen_gba.yml index 898ccf40..71b4088e 100644 --- a/emulators/mednafen_gba.yml +++ b/emulators/mednafen_gba.yml @@ -19,6 +19,5 @@ files: required: false hle_fallback: true size: 16384 - validation: - - size + validation: [size] source_ref: "mednafen/gba/GBA.cpp:2647-2672" diff --git a/emulators/mednafen_ngp.yml b/emulators/mednafen_ngp.yml index c20769c6..30746cf6 100644 --- a/emulators/mednafen_ngp.yml +++ b/emulators/mednafen_ngp.yml @@ -1,8 +1,8 @@ emulator: "mednafen_ngp" type: alias alias_of: "beetle_ngp" -cores: [mednafen_ngp] profiled_date: "2026-03-24" core_version: "v1.29.0.0" display_name: "SNK - Neo Geo Pocket / Color (Beetle NeoPop)" +note: "This core uses the same BIOS/firmware as beetle_ngp. See emulators/beetle_ngp.yml for details." files: []