Files
libretro/emulators/sudachi.yml
T
Abdessamad Derraz 35e9b78a68 fix: read sudachi keys from its keys folder
fs_paths.h:18 KEYS_DIR "keys" below the user data directory, as the profile notes cite.
2026-10-24 00:48:55 +02:00

76 lines
3.3 KiB
YAML

emulator: Sudachi
type: standalone
core_classification: community_fork
source: "https://github.com/emuplace/sudachi.emuplace.app"
upstream_gone: "The emuplace GitHub account answers 404 and sudachi.emuplace.app no longer serves. The 1.0.15 source archive (latest.zip, sha256 e2b98c4c2670407342db9f37feb6d2d5af39ff58acf42bbb348010fd8dc23f89) is kept by the Wayback Machine at its release URL, and its zip comment names the commit below. Observed 2026-10-20."
profiled_date: "2026-10-20"
source_commit: "c7431bd420d66c54df277ba0a0b71de42cf0a5bf"
core_version: "1.0.15"
display_name: "Sudachi (Nintendo Switch)"
cores:
- sudachi
systems: [nintendo-switch]
mode: standalone
data_root:
windows:
path: "%APPDATA%/sudachi"
source_ref: "src/common/fs/path_util.cpp:90-96, CMakeLists.txt:68"
note: "A user folder beside sudachi.exe is used instead when it exists."
linux:
path: "$XDG_DATA_HOME/sudachi, else ~/.local/share/sudachi"
source_ref: "src/common/fs/path_util.cpp:105-115, 303-311"
note: "A user folder in the working directory is used instead when it exists."
macos:
path: "$XDG_DATA_HOME/sudachi, else ~/.local/share/sudachi"
source_ref: "src/common/fs/path_util.cpp:105-115, 303-311"
note: "A user folder in the working directory is used instead when it exists."
android:
path: "Android/data/org.sudachi.sudachi_emu/files"
source_ref: "src/android/app/src/main/java/org/sudachi/sudachi_emu/utils/DirectoryInitialization.kt:41-42, src/common/fs/path_util.cpp:100-101"
note: "relWithDebInfo, debug and ea builds append .relWithDebInfo, .debug or .ea to the package name."
notes: |
Sudachi is a standalone Nintendo Switch emulator forked from yuzu early
access 4176 (README.md:1-4). Keys are read from the keys directory of the user data
directory named in data_root (src/common/fs/fs_paths.h:8-9, 18).
RetroBat creates the user folder beside sudachi.exe before launching
sudachi.exe -g <rom> and never copies keys itself.
Key loading stops when neither prod.keys nor title.keys exists
(src/core/crypto/key_manager.cpp:649-652).
Firmware (system NCAs) is installed through the UI (Tools, Install
Firmware, src/sudachi/main.cpp:4130), not read as loose files.
Commercial games need the keys. Homebrew (.nro, .nso) runs without keys or firmware.
files:
- name: "prod.keys"
required: true
path: "keys/prod.keys"
note: "Production keys for NCA decryption (master, key area, header, titlekek)"
source_ref: "src/core/crypto/key_manager.cpp:660-661"
- name: "dev.keys"
required: false
path: "keys/dev.keys"
note: "Development-unit keys, read instead of prod.keys when use_dev_keys is set"
source_ref: "src/core/crypto/key_manager.cpp:654-657"
- name: "title.keys"
required: false
path: "keys/title.keys"
note: "Per-title encryption keys (rights_id to titlekey mappings)"
source_ref: "src/core/crypto/key_manager.cpp:664-665"
- name: "console.keys"
required: false
path: "keys/console.keys"
note: "Console-specific keys (BIS, SD seed)"
source_ref: "src/core/crypto/key_manager.cpp:666-667"
- name: "key_retail.bin"
required: false
path: "keys/key_retail.bin"
size: 160
note: "Amiibo decryption keys (two InternalKey structs, 0x50 bytes each)"
source_ref: "src/core/hle/service/nfc/common/amiibo_crypto.cpp:273-295"