mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-10 21:43:23 -05:00
Upstream moved under 145 profiles: 679 refs shifted and 452 followed a renamed file, against 6,483 that still anchor where they were written. The recale rewrites the located ranges only, keeping the annotations and the sentences that carry them, and 106 pins advance in the same commit because refs and source_commit name one revision or the profile describes two at once. Nothing here was guessed. The 183 refs that are CHANGED, GONE or AMBIGUOUS are untouched, and the 57 profiles holding them keep their old pin until someone reads the diff: profile_sync refuses to recale a profile while any of its refs needs a re-read. trident kept its pin too, its annotated ref being one the writer will not rewrite.
338 lines
12 KiB
YAML
338 lines
12 KiB
YAML
emulator: PrimeHack
|
|
type: standalone
|
|
core_classification: enhanced_fork
|
|
source: "https://github.com/shiiion/dolphin"
|
|
upstream: "https://github.com/dolphin-emu/dolphin"
|
|
profiled_date: "2026-03-26"
|
|
source_commit: "53f53e0f5bad27ad62a807cb93b136d84f68777f"
|
|
core_version: "1.0.8"
|
|
display_name: "PrimeHack (Dolphin fork for Metroid Prime)"
|
|
cores:
|
|
- primehack
|
|
systems: [nintendo-gamecube, nintendo-wii]
|
|
analysis_date: "2026-03-26"
|
|
analysis_commit: "b10f147 (depth=1)"
|
|
mode: standalone
|
|
|
|
# PrimeHack is a Dolphin fork by shiiion adding mouselook controls for Metroid Prime Trilogy.
|
|
# BIOS loading code is identical to upstream Dolphin.
|
|
# File paths relative to Dolphin User directory:
|
|
# Standalone: User/GC/ and User/Wii/
|
|
# Sys/ is checked as fallback when not found in User/.
|
|
|
|
pack_structure:
|
|
standalone: ""
|
|
|
|
data_directories:
|
|
- ref: dolphin-sys
|
|
destination: "Sys"
|
|
source_ref: "Source/Core/Common/CommonPaths.h:128-141"
|
|
|
|
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: "GC/USA/IPL.bin"
|
|
region: [north-america]
|
|
size: 2097152
|
|
required: false
|
|
mode: standalone
|
|
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/Common/CommonPaths.h:138, Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:109-110"
|
|
|
|
- name: "IPL.bin"
|
|
path: "GC/EUR/IPL.bin"
|
|
region: [europe]
|
|
size: 2097152
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "GameCube PAL boot ROM"
|
|
source_ref: "Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:184"
|
|
|
|
- name: "IPL.bin"
|
|
path: "GC/JAP/IPL.bin"
|
|
region: [japan]
|
|
size: 2097152
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "GameCube NTSC-J boot ROM. JAP is the legacy directory name"
|
|
source_ref: "Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:186"
|
|
|
|
# -- DSP ROMs --
|
|
# Used by DSP LLE for accurate audio.
|
|
# PrimeHack ships free replacement ROMs, but real dumps improve accuracy.
|
|
# Searched in: User/GC/ then Sys/GC/
|
|
- name: "dsp_rom.bin"
|
|
path: "GC/dsp_rom.bin"
|
|
size: 8192
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
validation: [size]
|
|
known_hash_adler32: "0x66f334fe"
|
|
adler32_byteswap: true
|
|
note: "DSP instruction ROM for LLE audio. Free replacement (v0.4) included"
|
|
source_ref: "Source/Core/Common/CommonPaths.h:135, Source/Core/Core/HW/DSPLLE/DSPLLE.cpp:87-117"
|
|
|
|
- name: "dsp_coef.bin"
|
|
path: "GC/dsp_coef.bin"
|
|
size: 4096
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
validation: [size]
|
|
known_hash_adler32: "0xf3b93527"
|
|
adler32_byteswap: true
|
|
note: "DSP coefficient ROM for LLE audio. Free replacement included"
|
|
source_ref: "Source/Core/Common/CommonPaths.h:138, Source/Core/Core/DSP/DSPCore.cpp:32-38"
|
|
|
|
# -- 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).
|
|
# Searched in: Sys/GC/
|
|
- name: "font_western.bin"
|
|
path: "GC/font_western.bin"
|
|
size: 9589
|
|
required: false
|
|
mode: standalone
|
|
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:132, Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:131,203-218"
|
|
|
|
- name: "font_japanese.bin"
|
|
path: "GC/font_japanese.bin"
|
|
size: 303693
|
|
required: false
|
|
mode: standalone
|
|
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:135, Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp:130"
|
|
|
|
# -- GBA BIOS (for GC-GBA link) --
|
|
# Used by integrated mGBA core for GameCube-GBA connectivity.
|
|
# Loaded from User/GBA/gba_bios.bin.
|
|
- name: "gba_bios.bin"
|
|
path: "GBA/gba_bios.bin"
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "GBA BIOS for GC-GBA link feature (uses integrated mGBA). Path configurable in settings"
|
|
source_ref: "Source/Core/Common/CommonPaths.h:144, Source/Core/Core/HW/GBACore.cpp:344-361"
|
|
|
|
# -- Wii System Files --
|
|
- name: "SYSCONF"
|
|
path: "Wii/shared2/sys/SYSCONF"
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "Wii system configuration. Auto-generated by PrimeHack, can be imported from NAND backup"
|
|
source_ref: "Source/Core/Common/CommonPaths.h:118, Source/Core/Core/WiiRoot.cpp:266"
|
|
|
|
- name: "setting.txt"
|
|
path: "Wii/title/00000001/00000002/data/setting.txt"
|
|
size: 256
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "Wii region/language settings. Auto-generated during Wii boot emulation"
|
|
source_ref: "Source/Core/Common/CommonPaths.h:152, Source/Core/Core/Boot/Boot_BS2Emu.cpp:377-454"
|
|
|
|
# -- Wii NAND Backup (BootMii) --
|
|
- name: "nand.bin"
|
|
path: null
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "BootMii NAND backup. Can be imported to populate Wii NAND with channels, saves, system menu"
|
|
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:26-89"
|
|
|
|
- name: "keys.bin"
|
|
path: null
|
|
size: 1024
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "OTP/SEEPROM dump (Wii encryption keys). Needed if not appended to nand.bin for NAND import"
|
|
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:19,76-88"
|
|
|
|
# -- Wii SD Card Image --
|
|
- name: "WiiSD.raw"
|
|
path: "Load/WiiSD.raw"
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "Virtual SD card image for Wii homebrew. Auto-created, supports SD/SDHC up to 4GB"
|
|
source_ref: "Source/Core/Common/CommonPaths.h:149"
|
|
|
|
# -- Gecko Code Handler --
|
|
- name: "codehandler.bin"
|
|
path: null
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "Gecko/Ocarina cheat code handler. Shipped with PrimeHack in Sys/"
|
|
source_ref: "Source/Core/Common/CommonPaths.h:154, Source/Core/Core/GeckoCode.cpp:121"
|
|
|
|
# -- Wii System Menu (WAD) --
|
|
- name: "Wii System Menu"
|
|
path: null
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "Wii System Menu WAD. Installed to NAND via Tools > Install WAD, needed for Wii Menu boot"
|
|
source_ref: "Source/Core/DolphinQt/MenuBar.cpp:335, Source/Core/DolphinQt/MenuBar.cpp:1582-1590"
|
|
|
|
# -- NAND Certificates (auto-extracted) --
|
|
- name: "clientca.pem"
|
|
path: "Wii/clientca.pem"
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "SSL client certificate. Auto-extracted from IOS13 content during NAND import"
|
|
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:201-285"
|
|
|
|
- name: "clientcakey.pem"
|
|
path: "Wii/clientcakey.pem"
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "SSL client private key. Auto-extracted from IOS13 content during NAND import"
|
|
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:237"
|
|
|
|
- name: "rootca.pem"
|
|
path: "Wii/rootca.pem"
|
|
required: false
|
|
mode: standalone
|
|
hle_fallback: true
|
|
note: "SSL root CA certificate. Auto-extracted from IOS13 content during NAND import"
|
|
source_ref: "Source/Core/DiscIO/NANDImporter.cpp:238"
|
|
|
|
# -- Realtek Bluetooth firmware (Wiimote passthrough) --
|
|
# Required for real Wiimote connectivity via USB Bluetooth adapters with Realtek chipsets.
|
|
# PrimeHack can auto-download these from gitlab.com/kernel-firmware/linux-firmware.
|
|
# Placed in Load/Firmware/rtl_bt/.
|
|
# ref: Source/Core/Core/IOS/USB/Bluetooth/Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:373-416
|
|
|
|
- name: "rtl8723a_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8723a_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8723A BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:379"
|
|
|
|
- name: "rtl8723b_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8723b_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8723B BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:516-519"
|
|
|
|
- name: "rtl8723d_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8723d_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8723D BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:383"
|
|
|
|
- name: "rtl8761a_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8761a_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8761A BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:385"
|
|
|
|
- name: "rtl8761bu_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8761bu_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8761BU BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:387"
|
|
|
|
- name: "rtl8821a_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8821a_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8821A BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:389"
|
|
|
|
- name: "rtl8821c_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8821c_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8821C BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:391"
|
|
|
|
- name: "rtl8822b_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8822b_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8822B BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:395"
|
|
|
|
- name: "rtl8822cu_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8822cu_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8822CU BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:393"
|
|
|
|
- name: "rtl8851bu_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8851bu_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8851BU BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:397"
|
|
|
|
- name: "rtl8852au_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8852au_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8852AU BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:399"
|
|
|
|
- name: "rtl8852bu_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8852bu_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8852BU BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:401"
|
|
|
|
- name: "rtl8852cu_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8852cu_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8852CU BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:403"
|
|
|
|
- name: "rtl8852btu_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8852btu_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8852BT/8852BE-VT BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:405"
|
|
|
|
- name: "rtl8922au_fw.bin"
|
|
path: "Load/Firmware/rtl_bt/rtl8922au_fw.bin"
|
|
required: false
|
|
mode: standalone
|
|
note: "Realtek 8922AU BT firmware for Wiimote passthrough"
|
|
source_ref: "Source/Core/Core/IOS/USB/Bluetooth/RealtekFirmwareLoader.cpp:407"
|
|
|
|
notes:
|
|
hle_available: true
|
|
hle_note: >
|
|
PrimeHack provides HLE for GameCube IPL (boot ROM), DSP, and Wii system functions
|
|
(same as Dolphin). No BIOS files are strictly required for most games.
|
|
ipl_regions: ["USA", "EUR", "JAP", "JPN", "DEV"]
|
|
dsp_rom_note: >
|
|
DSP ROMs are verified at load time via Adler32 hash.
|
|
Official Nintendo hashes: irom=0x66f334fe, drom=0xf3b93527.
|
|
bt_passthrough_note: >
|
|
Bluetooth passthrough allows connecting real Wiimotes via USB Bluetooth adapters.
|
|
Realtek chipsets require firmware files in Load/Firmware/rtl_bt/.
|
|
PrimeHack can auto-download these from kernel-firmware/linux-firmware on GitLab.
|