Files
libretro/emulators/arcadeduck.yml
T
Abdessamad Derraz 9f58923500 feat: add the capcom zn-2 bios to arcadeduck
Release 0.6.0 (80cdb6d) adds a COH-3002C handler that reads coh3002c.zip (arcade_machine_handler.cpp:290-319). ROM loading moved to arcade_rom_loader.cpp, which also matches a member by size and CRC32, reads .7z sets and falls back to parent archives; konamigv.7z is read when konamigv.zip is absent.
2026-10-26 23:10:38 +01:00

265 lines
12 KiB
YAML

emulator: ArcadeDuck
type: standalone
core_classification: community_fork
source: "https://github.com/StillJC/ArcadeDuck"
upstream: "https://github.com/stenzek/duckstation"
source_commit: "80cdb6da6b51d687192a6346efe4499b10fe4faf"
upstream_commit: "526b4a128827ecaef037134095cd95f431b52d06"
profiled_date: "2026-10-26"
core_version: "0.6.0"
display_name: "Arcade - Sony ZN-1, Namco System 11, Konami GV/GQ (ArcadeDuck)"
cores:
- arcadeduck
systems:
- konami-gv
- konami-gq
- namco-system11
- capcom-zn1
- capcom-zn2
- videosystem-zn1
- atlus-zn1
- eighting-zn1
- atari-zn1
- acclaim-zn1
- tecmo-tps
- taito-fx1
mode: standalone
notes: |
DuckStation fork that runs the PlayStation based arcade boards. RetroBat
installs the "latest" release of StillJC/ArcadeDuck unchanged: its
ArcadeDuck.exe and resources/arcadedb.yaml are byte for byte the release
archive arcadeduck-windows-x64-release.zip, release 0.6.0 built from 80cdb6d.
The release build strips the -dev suffix of the version the source carries.
ref: source src/scmversion/arcadeduck_version.h:12
A game is a MAME style set identified by its archive name, .zip or .7z,
through resources/arcadedb.yaml, read from the resources folder beside the
executable. Without that file no archive is recognised and nothing boots.
A clone reads the ROMs it lacks from the archives of its parents in the same
folder, so split and merged sets load as well as non-merged ones.
ref: source src/core/arcade/arcade_database.cpp:30, 1194-1211, 1391-1410,
source src/core/arcade/arcade_database.cpp:1459-1504,
source src/core/system.cpp:1622-1665
Arcade boots skip the PlayStation BIOS scan: each board handler loads and
checks its own BIOS. The PS1 BIOS search inherited from DuckStation only runs
for a standard boot, which the RetroBat launcher never requests since it
refuses anything but a .zip set.
ref: source src/core/system.cpp:1824-1825, emulatorLauncher Generators/ArcadeDuck.Generator.cs:46-48
Board firmware is read from the BIOS directory (EmuFolders::Bios, the
[BIOS] SearchDirectory setting). RetroBat points it at the folder of the game
when the firmware archive sits there, else at the RetroBat bios folder.
ref: source src/core/settings.cpp:1791, source src/core/arcade/arcade_machine_handler.cpp:152-153,
emulatorLauncher Generators/ArcadeDuck.Generator.cs:104-128
A member of a firmware archive is found by name, case insensitive, with the
size listed in arcadedb.yaml and its CRC32, or by size and CRC32 under any
name. Its data must then match the CRC32 and, when one is listed, the SHA-1.
Any mismatch stops the boot.
ref: source src/core/arcade/systems/sony/zn/sony_zn.cpp:929-936,
source src/core/arcade/systems/namco/system11/namco_system11.cpp:193-200,
source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444
Konami GV uses a fixed archive name and member, hardcoded in bios.cpp rather
than read from the database: konamigv.zip, else konamigv.7z, in the BIOS
directory. Konami GQ takes its BIOS member 420b03.27p from the game archive
or the archive of a parent, so no separate file is read for it.
ref: source src/core/bios.cpp:168-172, 221-263, 265-285,
source src/core/arcade/arcade_machine_handler.cpp:36-44, 82-88
arcadedb.yaml also declares sys573.zip (Konami System 573) and gq863.zip
(Konami Twinkle), but no machine handler exists for those boards at this
revision, so their sets never get to the point of opening a firmware archive.
ref: source src/core/arcade/arcade_machine_handler.cpp:1032-1060
Only the members a handler reads are listed under each archive: the 512 KiB
main BIOS and the motherboard CAT702 security key for the ZN boards, c76.bin
for Namco System 11. The uPD78081 MCU ROM of the ZN boards is undumped and
emulated without it.
ref: source src/core/arcade/systems/sony/zn/sony_zn.cpp:454
files:
- name: "arcadedb.yaml"
path: "resources/arcadedb.yaml"
required: true
bundled: true
size: 1724290
sha1: "4156be079a54776c9c78c0255abda295b379121a"
md5: "813692f1264f8bd86ca2cb7a642c5793"
description: "Arcade set, board and firmware database"
source_ref: "source src/core/arcade/arcade_database.cpp:30, 1194-1211, source src/arcadeduck-qt/qthost.cpp:2039-2046"
note: "Hashes are those of the copy in the release archive, written with CRLF line endings. The repository copy at 80cdb6d holds the same text with LF endings."
- name: "konamigv.zip"
system: konami-gv
required: true
category: bios_zip
description: "Konami GV BIOS"
source_ref: "source src/core/bios.cpp:168-172, 221-263, source src/core/arcade/arcade_machine_handler.cpp:36-44"
note: "konamigv.7z holding the same member is read when konamigv.zip is absent."
contents:
- name: "999a01.7e"
size: 524288
crc32: "ad498d2d"
sha1: "02a82a2fe1fba0404517c3602324bfa64e23e478"
- name: "namcoc76.zip"
system: namco-system11
required: true
category: bios_zip
description: "Namco System 11 C76 firmware"
source_ref: "source src/core/arcade/arcade_machine_handler.cpp:152-157, source src/core/arcade/systems/namco/system11/namco_system11.cpp:193-200, 442-450, source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444, source data/resources/arcadedb.yaml:70"
note: "c76.bin is the internal ROM of the C76 sound and I/O MCU."
contents:
- name: "c76.bin"
size: 16384
crc32: "399faac7"
sha1: "ceb184ef0486caf715dd997101999785f67a40b8"
- name: "coh1000c.zip"
system: capcom-zn1
required: true
category: bios_zip
description: "Capcom ZN-1 (COH-1000C) BIOS"
source_ref: "source src/core/arcade/arcade_machine_handler.cpp:239-245, source src/core/arcade/systems/sony/zn/sony_zn.cpp:929-936, 2928-2937, 2995-3003, source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444, source data/resources/arcadedb.yaml:111"
note: "The handler always asks for BIOS variant j, the Japanese mask ROM m534002c-13.ic353. msm27c402zb.ic353, the e variant listed beside it, is never read."
contents:
- name: "m534002c-13.ic353"
size: 524288
crc32: "50033af6"
sha1: "486d92ff6c7f1e54f8e0ef41cd9116eca0e10e1a"
- name: "cp01.ic652"
size: 8
crc32: "bb7ba033"
sha1: "966f3aee5d00e1312c455f855915d621e6cb0672"
- name: "coh3002c.zip"
system: capcom-zn2
required: true
category: bios_zip
description: "Capcom ZN-2 (COH-3002C) BIOS"
source_ref: "source src/core/arcade/arcade_machine_handler.cpp:290-319, 1042-1043, source src/core/arcade/systems/sony/zn/sony_zn.cpp:929-936, 2924-2949, 2995-3003, source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444, source data/resources/arcadedb.yaml:144, 155-156"
contents:
- name: "m534002c-59.ic353"
size: 524288
crc32: "e860ea8b"
sha1: "66e7e1d4e426466b8f48a2ba055a91b475569504"
- name: "cp10.ic652"
size: 8
crc32: "7808fcef"
sha1: "3c3fb8227b05dace042dc1429b9f2355b1a15638"
- name: "coh1002v.zip"
system: videosystem-zn1
required: true
category: bios_zip
description: "Video System ZN-1 (COH-1002V) BIOS"
source_ref: "source src/core/arcade/arcade_machine_handler.cpp:380-383, source src/core/arcade/systems/sony/zn/sony_zn.cpp:929-936, 2928-2937, 3120-3128, source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444, source data/resources/arcadedb.yaml:295"
contents:
- name: "coh-1002v.ic353"
size: 524288
crc32: "5ff165f3"
sha1: "8f59314c1093446b9bcb06d232244da6df78e206"
- name: "kn01.ic652"
size: 8
crc32: "1ce271df"
sha1: "b01479dc75a4a8a86bee7ac7cd10af2bda332544"
- name: "coh1001l.zip"
system: atlus-zn1
required: true
category: bios_zip
description: "Atlus ZN-1 (COH-1001L) BIOS"
source_ref: "source src/core/arcade/arcade_machine_handler.cpp:447-450, source src/core/arcade/systems/sony/zn/sony_zn.cpp:929-936, 2928-2937, 3222, source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444, source data/resources/arcadedb.yaml:265"
contents:
- name: "m534002c-17.ic353"
size: 524288
crc32: "6721146b"
sha1: "9511d24bfe25eb180fb2db0835b131cb4a12730e"
- name: "at01.ic652"
size: 8
crc32: "181668b3"
sha1: "8d2fe1facb4473cc20b4b477aaf881f9280939cf"
- name: "coh1002e.zip"
system: eighting-zn1
required: true
category: bios_zip
description: "Eighting/Raizing ZN-1 (COH-1002E) BIOS"
source_ref: "source src/core/arcade/arcade_machine_handler.cpp:531-534, source src/core/arcade/systems/sony/zn/sony_zn.cpp:929-936, 2928-2937, 3378, 3511, source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444, source data/resources/arcadedb.yaml:325"
contents:
- name: "m27c402cz-54.ic353"
size: 524288
crc32: "910f3a8b"
sha1: "cd68532967a25f476a6d73473ec6b6f4df2e1689"
- name: "et01.ic652"
size: 8
crc32: "a7dd922e"
sha1: "1069c1d9015028a51a1b314cfacb014ea90aa425"
- name: "coh1000w.zip"
system: atari-zn1
required: true
category: bios_zip
description: "Time Warner / Atari ZN-1 (COH-1000W) BIOS"
source_ref: "source src/core/arcade/arcade_machine_handler.cpp:619-622, source src/core/arcade/systems/sony/zn/sony_zn.cpp:929-936, 2928-2937, 3594, source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444, source data/resources/arcadedb.yaml:236"
contents:
- name: "msm27c402zb.ic353"
size: 524288
crc32: "45e8a4b4"
sha1: "815488d8563c85f97fbc3384ff21f08e4c88b7b7"
- name: "tw01.ic652"
size: 8
crc32: "1cac067e"
sha1: "8e87941bfb374172628c8a37647e3a66b7166aa8"
- name: "coh1000a.zip"
system: acclaim-zn1
required: true
category: bios_zip
description: "Acclaim ZN-1 (COH-1000A) BIOS"
source_ref: "source src/core/arcade/arcade_machine_handler.cpp:694-697, source src/core/arcade/systems/sony/zn/sony_zn.cpp:929-936, 2928-2937, 3733, source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444, source data/resources/arcadedb.yaml:207"
contents:
- name: "m534002c-15.ic353"
size: 524288
crc32: "8d8d0764"
sha1: "7ee83d317190bb1cef2f8f01c81eaaae47150ebb"
- name: "ac01.ic652"
size: 8
crc32: "c425eaf5"
sha1: "decf77ab50f7f58c641c3214a11647924f3a8998"
- name: "coh1002m.zip"
system: tecmo-tps
required: true
category: bios_zip
description: "Tecmo TPS (COH-1002M) BIOS"
source_ref: "source src/core/arcade/arcade_machine_handler.cpp:789-792, source src/core/arcade/systems/sony/zn/sony_zn.cpp:929-936, 2928-2937, 4064, source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444, source data/resources/arcadedb.yaml:356"
contents:
- name: "m534002c-61.ic353"
size: 524288
crc32: "69ffbcb4"
sha1: "03eb2febfab3fcde716defff291babd9392de965"
- name: "mg01.ic652"
size: 8
crc32: "50dc8322"
sha1: "cef4011c6c06d6fce546e1db5d9fbae155eabf57"
- name: "coh1000t.zip"
system: taito-fx1
required: true
category: bios_zip
description: "Taito FX-1 (COH-1000T) BIOS"
source_ref: "source src/core/arcade/arcade_machine_handler.cpp:916-919, source src/core/arcade/systems/sony/zn/sony_zn.cpp:929-936, 2928-2937, 3846, 3954, source src/core/arcade/arcade_rom_loader.cpp:258-293, 356-444, source data/resources/arcadedb.yaml:176"
contents:
- name: "m534002c-14.ic353"
size: 524288
crc32: "e3f23b6e"
sha1: "e18907cf8c6ba54d96edba0a9a00487a90219e0d"
- name: "tt01.ic652"
size: 8
crc32: "daac13e7"
sha1: "96d94f2b06fb7ecd91454969f4959a583ffb9d5a"