{
  "commit": "d38cd580364b2c788e633b9e51c15e1668f726c0",
  "count": 1,
  "generated_at": "2026-11-03T13:36:34Z",
  "items": [
    {
      "id": "dolphin",
      "profile": {
        "core_classification": "community_fork",
        "core_version": "2609-437-g3aac3f0",
        "cores": [
          "dolphin",
          "dolphin-gui",
          "dolphin-sa"
        ],
        "data_directories": [
          {
            "destination": "Sys",
            "installed_on": [
              "batocera",
              "lakka",
              "retrobat",
              "retrodeck"
            ],
            "mode": "libretro",
            "ref": "dolphin-sys",
            "source_ref": "source Source/Core/Common/CommonPaths.h:128-141"
          }
        ],
        "data_root": {
          "android": {
            "note": "/sdcard/dolphin-emu when that folder exists, storage access is legacy and the files folder is empty",
            "path": "Android/data/org.dolphinemu.dolphinemu/files",
            "source_ref": "upstream Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/DirectoryInitialization.kt:88-119, 320-324, upstream Source/Android/app/build.gradle.kts:39, upstream Source/Android/jni/MainAndroid.cpp:354-358"
          },
          "linux": {
            "note": "~/.dolphin-emu when that folder exists outside Flatpak. portable.txt beside the executable makes its user folder the root, DOLPHIN_EMU_USERPATH overrides",
            "path": "$XDG_DATA_HOME/dolphin-emu, else ~/.local/share/dolphin-emu",
            "source_ref": "upstream Source/Core/UICommon/UICommon.cpp:408-414, 435-443, 449-477, upstream Source/Core/Common/CommonPaths.h:20-21"
          },
          "macos": {
            "note": "portable.txt beside the executable makes its User folder the root, DOLPHIN_EMU_USERPATH overrides",
            "path": "~/Library/Application Support/Dolphin",
            "source_ref": "upstream Source/Core/UICommon/UICommon.cpp:408-414, 435-448, 481, upstream Source/Core/Common/CommonPaths.h:16-17"
          },
          "windows": {
            "note": "Documents/Dolphin Emulator when that folder already exists. portable.txt or the LocalUserConfig registry value makes User beside Dolphin.exe the root, the UserConfigPath registry value overrides",
            "path": "%APPDATA%/Dolphin Emulator",
            "source_ref": "upstream Source/Core/UICommon/UICommon.cpp:330-333, 359-400, 481, upstream Source/Core/Common/CommonPaths.h:14-15"
          }
        },
        "display_name": "Nintendo - GameCube / Wii (Dolphin)",
        "emulator": "Dolphin",
        "files": [
          {
            "hle_fallback": true,
            "name": "IPL.bin",
            "note": "GameCube NTSC-U boot ROM. HLE available but real IPL needed for GC menu boot and accurate fonts. Discs with the Brazilian country code B and SYSCONF countries of the Americas map to NTSC-U, so Latin America reads this directory too (Source/Core/DiscIO/Enums.cpp:198-199, 249-251).",
            "path": "dolphin-emu/Sys/GC/USA/IPL.bin",
            "region": [
              "north-america",
              "latin-america"
            ],
            "required": false,
            "size": 2097152,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:139, source Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:108",
            "standalone_path": "GC/USA/IPL.bin",
            "system": "nintendo-gamecube"
          },
          {
            "hle_fallback": true,
            "name": "IPL.bin",
            "note": "GameCube PAL boot ROM",
            "path": "dolphin-emu/Sys/GC/EUR/IPL.bin",
            "region": [
              "europe",
              "oceania"
            ],
            "required": false,
            "size": 2097152,
            "source_ref": "source Source/Core/Core/Config/MainSettings.cpp:776-782",
            "standalone_path": "GC/EUR/IPL.bin",
            "system": "nintendo-gamecube"
          },
          {
            "hle_fallback": true,
            "name": "IPL.bin",
            "note": "GameCube NTSC-J boot ROM. JAP is the legacy directory name",
            "path": "dolphin-emu/Sys/GC/JAP/IPL.bin",
            "region": [
              "japan",
              "south-korea"
            ],
            "required": false,
            "size": 2097152,
            "source_ref": "source Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:185",
            "standalone_path": "GC/JAP/IPL.bin",
            "system": "nintendo-gamecube"
          },
          {
            "adler32_byteswap": true,
            "adler32_pairs": [
              [
                "0x66f334fe",
                "0xf3b93527"
              ],
              [
                "0xe789b5a5",
                "0xa4a575f5"
              ]
            ],
            "adler32_pairs_with": "dsp_coef.bin",
            "hle_fallback": true,
            "known_hash_adler32": [
              "0x66f334fe",
              "0xe789b5a5"
            ],
            "name": "dsp_rom.bin",
            "note": "DSP instruction ROM for LLE audio. Free replacement (v0.4) included",
            "path": "dolphin-emu/Sys/GC/dsp_rom.bin",
            "required": false,
            "size": 8192,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:136, source Source/Core/Core/HW/DSPLLE/DSPLLE.cpp:84-117, source Source/Core/Core/DSP/DSPCore.cpp:28-102",
            "standalone_path": "GC/dsp_rom.bin",
            "validation": [
              "size",
              "adler32"
            ]
          },
          {
            "adler32_byteswap": true,
            "adler32_pairs": [
              [
                "0xf3b93527",
                "0x66f334fe"
              ],
              [
                "0xa4a575f5",
                "0xe789b5a5"
              ]
            ],
            "adler32_pairs_with": "dsp_rom.bin",
            "hle_fallback": true,
            "known_hash_adler32": [
              "0xf3b93527",
              "0xa4a575f5"
            ],
            "name": "dsp_coef.bin",
            "note": "DSP coefficient ROM for LLE audio and HLE polyphase resampling. Free replacement included",
            "path": "dolphin-emu/Sys/GC/dsp_coef.bin",
            "required": false,
            "size": 4096,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:137, source Source/Core/Core/DSP/DSPCore.cpp:32-33, source Source/Core/Core/HW/DSPHLE/UCodes/AX.cpp:55-62, source Source/Core/Core/DSP/DSPCore.cpp:28-102",
            "standalone_path": "GC/dsp_coef.bin",
            "validation": [
              "size",
              "adler32"
            ]
          },
          {
            "hle_fallback": true,
            "name": "font_western.bin",
            "note": "Windows-1252 font for GC/Wii text rendering. Free alternative bundled, real one from IPL dump preferred",
            "path": "dolphin-emu/Sys/GC/font_western.bin",
            "required": false,
            "size": 9589,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:133, source Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:130, 202-239",
            "standalone_path": "GC/font_western.bin"
          },
          {
            "hle_fallback": true,
            "name": "font_japanese.bin",
            "note": "Shift-JIS font for Japanese text. Free alternative bundled, real one from IPL dump preferred",
            "path": "dolphin-emu/Sys/GC/font_japanese.bin",
            "required": false,
            "size": 303693,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:134, source Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:129, 234",
            "standalone_path": "GC/font_japanese.bin"
          },
          {
            "name": "segaboot.gcm",
            "note": "SegaBoot, the Triforce system disc image. Read on every Triforce boot, min(size, 2 MiB) copied into the firmware buffer, nothing validated",
            "path": "dolphin-emu/Sys/Triforce/segaboot.gcm",
            "required": true,
            "source_ref": "source Source/Core/Core/HW/DVD/AMMediaboard.cpp:163, 481, 500-514, 534-535, source Source/Core/Core/HW/DVD/DVDInterface.cpp:292-294, source Source/Core/Core/System.h:149",
            "standalone_path": "Triforce/segaboot.gcm",
            "system": "sega-triforce"
          },
          {
            "hle_fallback": true,
            "load_from": {
              "libretro": "save_dir"
            },
            "name": "gba_bios.bin",
            "note": "GBA BIOS for GC-GBA link feature (uses integrated mGBA). Path configurable in settings",
            "path": "User/GBA/gba_bios.bin",
            "required": false,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:145, source Source/Core/Core/HW/GBACore.cpp:346-363",
            "standalone_path": "GBA/gba_bios.bin"
          },
          {
            "hle_fallback": true,
            "load_from": {
              "libretro": "save_dir"
            },
            "name": "SYSCONF",
            "note": "Wii system configuration. Auto-generated by Dolphin, can be imported from NAND backup",
            "path": "User/Wii/shared2/sys/SYSCONF",
            "required": false,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:118, source Source/Core/Common/FileUtil.cpp:905",
            "standalone_path": "Wii/shared2/sys/SYSCONF"
          },
          {
            "hle_fallback": true,
            "load_from": {
              "libretro": "save_dir"
            },
            "name": "setting.txt",
            "note": "Wii region/language settings. Auto-generated by Dolphin during Wii boot emulation",
            "path": "User/Wii/title/00000001/00000002/data/setting.txt",
            "required": false,
            "size": 256,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:153, source Source/Core/Core/Boot/Boot_BS2Emu.cpp:384-460",
            "standalone_path": "Wii/title/00000001/00000002/data/setting.txt"
          },
          {
            "hle_fallback": true,
            "name": "nand.bin",
            "note": "BootMii NAND backup. Can be imported to populate Wii NAND with channels, saves, system menu",
            "path": null,
            "required": false,
            "source_ref": "source Source/Core/DiscIO/NANDImporter.cpp:27-45, 47-92"
          },
          {
            "hle_fallback": true,
            "name": "keys.bin",
            "note": "OTP/SEEPROM dump (Wii encryption keys). Needed if not appended to nand.bin for NAND import",
            "path": null,
            "required": false,
            "size": 1024,
            "source_ref": "source Source/Core/DiscIO/NANDImporter.cpp:20, source Source/Core/DiscIO/NANDImporter.cpp:77-91, source Source/Core/DiscIO/NANDImporter.h:35-38"
          },
          {
            "hle_fallback": true,
            "load_from": {
              "libretro": "save_dir"
            },
            "name": "WiiSD.raw",
            "note": "Virtual SD card image for Wii homebrew. Auto-created by Dolphin, supports SD/SDHC up to 4GB",
            "path": "User/Load/WiiSD.raw",
            "required": false,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:150",
            "standalone_path": "Load/WiiSD.raw"
          },
          {
            "bundled": true,
            "hle_fallback": true,
            "md5": "1f118b8735fcf40c20b38c3184eebfd9",
            "mode": "standalone",
            "name": "codehandler.bin",
            "note": "Gecko/Ocarina cheat code handler. Shipped in Sys/ of the standalone release (dolphin-2512-x64.7z)",
            "path": null,
            "required": false,
            "sha1": "e6c0050b3c67ee26198488fbbe4a5d019c15b628",
            "size": 2880,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:155, source Source/Core/Core/GeckoCode.cpp:120"
          },
          {
            "hle_fallback": true,
            "installed_on": [
              "batocera",
              "lakka",
              "retrobat",
              "retrodeck"
            ],
            "mode": "libretro",
            "name": "codehandler.bin",
            "note": "Gecko/Ocarina cheat code handler, read from the Sys data directory the core zip does not contain. The Batocera and Lakka packages copy Data/Sys beside the core, and RetroBat installs it as bios/dolphin-emu/Sys",
            "path": null,
            "required": false,
            "source_ref": "upstream Source/Core/Common/CommonPaths.h:155, source Source/Core/Core/GeckoCode.cpp:120"
          },
          {
            "hle_fallback": true,
            "mode": "standalone",
            "name": "Wii System Menu",
            "note": "Wii System Menu WAD. Installed to NAND via Tools > Install WAD, needed for Wii Menu boot",
            "path": null,
            "required": false,
            "source_ref": "source Source/Core/DolphinQt/MainWindow.cpp:1629-1631, source Source/Core/DolphinQt/MenuBar.cpp:1218-1232"
          },
          {
            "hle_fallback": true,
            "load_from": {
              "libretro": "save_dir"
            },
            "name": "clientca.pem",
            "note": "SSL client certificate. Auto-extracted from IOS13 content during NAND import",
            "path": "User/Wii/clientca.pem",
            "required": false,
            "source_ref": "source Source/Core/DiscIO/NANDImporter.cpp:220-304",
            "standalone_path": "Wii/clientca.pem"
          },
          {
            "hle_fallback": true,
            "load_from": {
              "libretro": "save_dir"
            },
            "name": "clientcakey.pem",
            "note": "SSL client private key. Auto-extracted from IOS13 content during NAND import",
            "path": "User/Wii/clientcakey.pem",
            "required": false,
            "source_ref": "source Source/Core/DiscIO/NANDImporter.cpp:256",
            "standalone_path": "Wii/clientcakey.pem"
          },
          {
            "hle_fallback": true,
            "load_from": {
              "libretro": "save_dir"
            },
            "name": "rootca.pem",
            "note": "SSL root CA certificate. Auto-extracted from IOS13 content during NAND import",
            "path": "User/Wii/rootca.pem",
            "required": false,
            "source_ref": "source Source/Core/DiscIO/NANDImporter.cpp:257",
            "standalone_path": "Wii/rootca.pem"
          },
          {
            "mode": "standalone",
            "name": "rtl8723a_fw.bin",
            "note": "Realtek 8723A BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8723a_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:416"
          },
          {
            "mode": "standalone",
            "name": "rtl8723b_fw.bin",
            "note": "Realtek 8723B BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8723b_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:418"
          },
          {
            "mode": "standalone",
            "name": "rtl8723d_fw.bin",
            "note": "Realtek 8723D BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8723d_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:420"
          },
          {
            "mode": "standalone",
            "name": "rtl8761a_fw.bin",
            "note": "Realtek 8761A BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8761a_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:422"
          },
          {
            "mode": "standalone",
            "name": "rtl8761bu_fw.bin",
            "note": "Realtek 8761BU BT firmware for Wiimote passthrough (most common USB dongle)",
            "path": "Load/Firmware/rtl_bt/rtl8761bu_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:424"
          },
          {
            "mode": "standalone",
            "name": "rtl8821a_fw.bin",
            "note": "Realtek 8821A BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8821a_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:426"
          },
          {
            "mode": "standalone",
            "name": "rtl8821c_fw.bin",
            "note": "Realtek 8821C BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8821c_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:428"
          },
          {
            "mode": "standalone",
            "name": "rtl8822b_fw.bin",
            "note": "Realtek 8822B BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8822b_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:432"
          },
          {
            "mode": "standalone",
            "name": "rtl8822cu_fw.bin",
            "note": "Realtek 8822CU BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8822cu_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:430"
          },
          {
            "mode": "standalone",
            "name": "rtl8851bu_fw.bin",
            "note": "Realtek 8851BU BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8851bu_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:434"
          },
          {
            "mode": "standalone",
            "name": "rtl8852au_fw.bin",
            "note": "Realtek 8852AU BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8852au_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:436"
          },
          {
            "mode": "standalone",
            "name": "rtl8852bu_fw.bin",
            "note": "Realtek 8852BU BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8852bu_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:438"
          },
          {
            "mode": "standalone",
            "name": "rtl8852cu_fw.bin",
            "note": "Realtek 8852CU BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8852cu_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:440"
          },
          {
            "mode": "standalone",
            "name": "rtl8852btu_fw.bin",
            "note": "Realtek 8852BT/8852BE-VT BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8852btu_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:442"
          },
          {
            "mode": "standalone",
            "name": "rtl8922au_fw.bin",
            "note": "Realtek 8922AU BT firmware for Wiimote passthrough",
            "path": "Load/Firmware/rtl_bt/rtl8922au_fw.bin",
            "required": false,
            "source_ref": "source Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:444"
          }
        ],
        "library_name": "dolphin-emu",
        "logo": "https://raw.githubusercontent.com/dolphin-emu/dolphin/master/Data/dolphin-emu.svg",
        "notes": {
          "bt_passthrough_note": "Bluetooth passthrough allows connecting real Wiimotes via USB Bluetooth adapters. Realtek chipsets (very common) require firmware files in Load/Firmware/rtl_bt/. Dolphin can auto-download these from kernel-firmware/linux-firmware on GitLab. 15 device families supported. Each needs _fw.bin (required) + _config.bin (optional). ref: Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:76-207 (device IDs), 410-448 (firmware names)\n",
          "dsp_rom_note": "DSP ROMs are verified at load time via Adler32 hash. Official Nintendo hashes: irom=0x66f334fe, drom=0xf3b93527. Multiple free replacement versions exist (v0.1 through v0.4).\n",
          "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.\n",
          "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.\n",
          "ipl_region_note": "IPL.bin is region-specific, placed in GC/<REGION>/IPL.bin. JAP is the legacy directory name, JPN is the modern default. DEV is for development/debug units.\n",
          "ipl_regions": [
            "USA",
            "EUR",
            "JAP",
            "JPN",
            "DEV"
          ],
          "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. Most Wii games do not require a real NAND dump.\n",
          "sys_note": "Without Sys/ the libretro core logs that codehandler.bin is missing and goes on. With no IPL dump the GameCube fonts are read from Sys/GC/, so none is loaded, and a game reading them raises \"Games may not show fonts correctly, or crash\". The per-game settings in Sys/GameSettings/ and the WiiConnect24 files some Wii games expect are skipped too. ref: Source/Core/DolphinLibretro/Boot.cpp:318-345, Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:128-130, 160-167, 328-340, Source/Core/Core/ConfigManager.cpp:570, 586, Source/Core/Core/WiiRoot.cpp:325-330\n"
        },
        "pack_structure": {
          "libretro": "dolphin-emu",
          "standalone": ""
        },
        "profiled_date": "2026-03-23",
        "source": "https://github.com/libretro/dolphin",
        "source_commit": "3aac3f052f733f8df2f1616843a4d2e14002ed11",
        "systems": [
          "nintendo-gamecube",
          "nintendo-wii",
          "sega-triforce"
        ],
        "type": "standalone + libretro",
        "upstream": "https://github.com/dolphin-emu/dolphin",
        "upstream_commit": "0d93fc035539f25790deca638d06ee3b3b45ee64",
        "version_basis": {
          "distance": 437,
          "kind": "tag",
          "tag": "2609"
        }
      }
    }
  ],
  "kind": "emulators",
  "schema_version": 1
}
