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"