Files
libretro/emulators/ishiiruka.yml
T
Abdessamad Derraz ddc7432825 feat: packs leave out what the emulator installs
A file or tree installed with the emulator is already on the user's machine, so packs, install manifests and verify's pack count leave it out. bundled is scoped by mode like any entry: Dolphin's Sys and PPSSPP's assets ship with the standalone releases, not with the libretro cores, so they now follow the libretro build only and still reach RetroArch packs. PrimeHack, standalone only, ships its own Sys.
2026-10-20 06:04:10 +02:00

233 lines
8.9 KiB
YAML

emulator: Ishiiruka
type: standalone + libretro
core_classification: enhanced_fork
source: "https://github.com/libretro/ishiiruka"
upstream: "https://github.com/Tinob/Ishiiruka"
profiled_date: "2026-03-24"
source_commit: "f228bde5fbf4861ba749a229803addcd6238663f"
core_version: "Git"
display_name: "Nintendo - GameCube / Wii (Ishiiruka)"
cores:
- ishiiruka
systems: [nintendo-gamecube, nintendo-wii]
# Ishiiruka is a performance-focused Dolphin fork (custom GPU backends, async shader compilation).
# BIOS/firmware handling identical to Dolphin 5.0-era code.
# Libretro: User is <save>/User, Sys is <system>/dolphin-emu/Sys
# (Source/Core/DolphinLibretro/Boot.cpp:43-49). path: is where the libretro
# core reads a file (the GC ROMs fall back to Sys), standalone_path: where
# the standalone app reads it under its User directory.
# Core options use "ishiiruka_" prefix (ishiiruka_dsp_hle, ishiiruka_efb_scale, etc.)
pack_structure:
libretro: "dolphin-emu"
standalone: ""
data_directories:
- ref: dolphin-sys
mode: libretro
destination: "Sys"
source_ref: "Source/Core/Common/CommonPaths.h:130-131"
files:
# -- GameCube IPL (Boot ROM) --
# Region-specific, placed in GC/<region>/IPL.bin
# Checked in User/GC/<region>/ then Sys/GC/<region>/
- name: "IPL.bin"
path: "dolphin-emu/Sys/GC/USA/IPL.bin"
standalone_path: "GC/USA/IPL.bin"
system: nintendo-gamecube
region: [north-america]
size: 2097152
required: false
hle_fallback: true
note: "GameCube NTSC-U boot ROM. HLE available but real IPL needed for GC menu boot and accurate fonts"
source_ref: "Source/Core/Core/ConfigManager.cpp:876-883, Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:105"
- name: "IPL.bin"
path: "dolphin-emu/Sys/GC/EUR/IPL.bin"
standalone_path: "GC/EUR/IPL.bin"
system: nintendo-gamecube
region: [europe, oceania]
size: 2097152
required: false
hle_fallback: true
note: "GameCube PAL boot ROM"
source_ref: "Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:185"
- name: "IPL.bin"
path: "dolphin-emu/Sys/GC/JAP/IPL.bin"
standalone_path: "GC/JAP/IPL.bin"
system: nintendo-gamecube
region: [japan, south-korea]
size: 2097152
required: false
hle_fallback: true
note: "GameCube NTSC-J boot ROM"
source_ref: "Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:187"
# -- DSP ROMs --
# Used by DSP LLE for accurate audio. dsp_coef.bin also used by HLE for polyphase resampling.
# Searched in: User/GC/ then Sys/GC/
- name: "dsp_rom.bin"
path: "dolphin-emu/Sys/GC/dsp_rom.bin"
standalone_path: "GC/dsp_rom.bin"
size: 8192
required: false
hle_fallback: true
validation: [size, adler32]
known_hash_adler32: ["0x66f334fe", "0x128ea7a2"]
adler32_byteswap: true
adler32_pairs_with: "dsp_coef.bin"
adler32_pairs: [["0x66f334fe", "0xf3b93527"], ["0x128ea7a2", "0xa4a575f5"]]
note: "DSP instruction ROM for LLE audio. Free replacement included"
source_ref: "Source/Core/Common/CommonPaths.h:112, Source/Core/Core/HW/DSPLLE/DSPLLE.cpp:142-150, Source/Core/Core/DSP/DSPCore.cpp:48,67, Source/Core/Core/DSP/DSPCore.cpp:38-105"
- name: "dsp_coef.bin"
path: "dolphin-emu/Sys/GC/dsp_coef.bin"
standalone_path: "GC/dsp_coef.bin"
size: 4096
required: false
hle_fallback: true
validation: [size, adler32]
known_hash_adler32: ["0xf3b93527", "0xa4a575f5"]
adler32_byteswap: true
adler32_pairs_with: "dsp_rom.bin"
adler32_pairs: [["0xf3b93527", "0x66f334fe"], ["0xa4a575f5", "0x128ea7a2"]]
note: "DSP coefficient ROM for LLE audio and HLE polyphase resampling. Free replacement included"
source_ref: "Source/Core/Common/CommonPaths.h:113, Source/Core/Core/HW/DSPLLE/DSPLLE.cpp:143-153, Source/Core/Core/HW/DSPHLE/UCodes/AX.cpp:43-72, Source/Core/Core/DSP/DSPCore.cpp:48,68, Source/Core/Core/DSP/DSPCore.cpp:38-105"
# -- GameCube Fonts --
# Bundled free alternatives exist but have padding differences causing misplaced text.
# If IPL dump is present, fonts are extracted from it instead (preferred).
# Loaded from: Sys/GC/
- name: "font_western.bin"
path: "dolphin-emu/Sys/GC/font_western.bin"
standalone_path: "GC/font_western.bin"
size: 9589
required: false
hle_fallback: true
note: "Windows-1252 font for GC/Wii text rendering. Free alternative bundled, real one from IPL dump preferred"
source_ref: "Source/Core/Common/CommonPaths.h:109, Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:123,193-227"
- name: "font_japanese.bin"
path: "dolphin-emu/Sys/GC/font_japanese.bin"
standalone_path: "GC/font_japanese.bin"
size: 303693
required: false
hle_fallback: true
note: "Shift-JIS font for Japanese text. Free alternative bundled, real one from IPL dump preferred"
source_ref: "Source/Core/Common/CommonPaths.h:110, Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:122,193-227"
# -- Gecko Code Handler --
- name: "codehandler.bin"
path: null
required: false
hle_fallback: true
note: "Gecko/Ocarina cheat code handler. Shipped with Ishiiruka in Sys/"
source_ref: "Source/Core/Common/CommonPaths.h:127, Source/Core/Core/GeckoCode.cpp:86"
# -- Wii System Files --
# Auto-generated/managed by Dolphin's Wii emulation.
- name: "SYSCONF"
path: "Wii/shared2/sys/SYSCONF"
load_from:
libretro: save_dir
required: false
hle_fallback: true
note: "Wii system configuration. Auto-generated, can be imported from NAND backup"
source_ref: "Source/Core/Common/CommonPaths.h:59,95, Source/Core/Common/SysConf.cpp:40"
- name: "setting.txt"
path: "Wii/title/00000001/00000002/data/setting.txt"
load_from:
libretro: save_dir
size: 256
required: false
hle_fallback: true
note: "Wii region/language settings. Auto-generated during Wii boot emulation"
source_ref: "Source/Core/Common/CommonPaths.h:125, Source/Core/Core/Boot/Boot_BS2Emu.cpp:229-266"
# -- Wii SD Card Image --
- name: "sd.raw"
path: "Wii/sd.raw"
load_from:
libretro: save_dir
required: false
hle_fallback: true
note: "Virtual SD card image for Wii homebrew. Auto-created (128MB) if not present"
source_ref: "Source/Core/Common/CommonPaths.h:122, Source/Core/Core/IOS/SDIO/SDIOSlot0.cpp:63-73"
# -- Wii NAND Backup (BootMii) --
- name: "nand.bin"
path: null
required: false
hle_fallback: true
mode: standalone
note: "BootMii NAND backup. Can be imported to populate Wii NAND with channels, saves, system menu"
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:29-47"
- name: "keys.bin"
path: null
size: 1024
required: false
hle_fallback: true
mode: standalone
note: "OTP/SEEPROM dump (Wii encryption keys). Needed if not appended to nand.bin for NAND import"
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:23-24,82-93"
# -- NAND Certificates (auto-extracted) --
- name: "clientca.pem"
path: "Wii/clientca.pem"
required: false
hle_fallback: true
mode: standalone
note: "SSL client certificate. Auto-extracted from IOS13 content during NAND import"
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:199-264"
- name: "clientcakey.pem"
path: "Wii/clientcakey.pem"
required: false
hle_fallback: true
mode: standalone
note: "SSL client private key. Auto-extracted from IOS13 content during NAND import"
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:235"
- name: "rootca.pem"
path: "Wii/rootca.pem"
required: false
hle_fallback: true
mode: standalone
note: "SSL root CA certificate. Auto-extracted from IOS13 content during NAND import"
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:236"
notes:
hle_available: true
hle_note: >
HLE covers GameCube IPL (boot ROM), DSP, and Wii system functions.
ipl_regions: ["USA", "EUR", "JAP"]
dsp_rom_note: >
DSP ROMs verified at load time via Adler32 hash.
Official Nintendo hashes: irom=0x66f334fe, drom=0xf3b93527.
Free replacement ROMs (v0.1 through v0.4) shipped in Sys/GC/.
font_note: >
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 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: >
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: >
Standalone builds use "ishiiruka" as DOLPHIN_DATA_DIR (CommonPaths.h:24,27),
but the libretro core overrides this to use "dolphin-emu" paths (Boot.cpp:46,49).
library_name: "Ishiiruka"
valid_extensions: "elf|dol|gcm|iso|tgc|wbfs|ciso|gcz|wad"