mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-21 11:19:11 -05:00
Profiles that read two repositories, a libretro port and its upstream, now prefix each citation with source or upstream, decided by which tree carries the cited value at its pin. The emulator pages use the word to tell libretro glue, emulator code as the port carries it, and the upstream emulator apart.
233 lines
9.1 KiB
YAML
233 lines
9.1 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 Source/Core/Core/ConfigManager.cpp:876-883, source 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 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 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: "upstream Source/Core/Common/CommonPaths.h:112, source Source/Core/Core/HW/DSPLLE/DSPLLE.cpp:142-150, source Source/Core/Core/DSP/DSPCore.cpp:48, 67, source 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: "upstream Source/Core/Common/CommonPaths.h:113, upstream Source/Core/Core/HW/DSPLLE/DSPLLE.cpp:143-153, source Source/Core/Core/HW/DSPHLE/UCodes/AX.cpp:43-72, source Source/Core/Core/DSP/DSPCore.cpp:48, 68, source 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: "upstream Source/Core/Common/CommonPaths.h:109, source 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: "upstream Source/Core/Common/CommonPaths.h:110, source 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: "upstream Source/Core/Common/CommonPaths.h:127, source 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 Source/Core/Common/CommonPaths.h:59, 95, source 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: "upstream Source/Core/Common/CommonPaths.h:125, source 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: "upstream Source/Core/Common/CommonPaths.h:122, source 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 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 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 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: "upstream 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: "upstream 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"
|