Files
libretro/emulators/citra_canary.yml
T

70 lines
2.6 KiB
YAML

emulator: Citra Canary
type: libretro
core_classification: community_fork
source: "https://github.com/libretro/citra"
upstream: "https://github.com/citra-emu/citra"
profiled_date: "2026-03-23"
source_commit: "5401990a9be46e4497abc92db3d5f2042674303d"
prose_written_at: "5401990a9be46e4497abc92db3d5f2042674303d"
source_branch: canary
core_version: "canary-82-6-g5401990"
version_basis:
kind: tag
tag: "canary-82"
distance: 6
display_name: "Nintendo - 3DS (Citra Canary/Experimental)"
library_name: "Citra Canary"
cores: [citra_canary]
systems:
- nintendo-3ds
notes: |
Canary branch of libretro/citra. Older codebase than master branch (citra core).
Missing boot9.bin, sector0x96.bin, seeddb.bin support present in master.
Seed crypto unimplemented (src/core/file_sys/ncch_container.cpp:169).
Upstream citra-emu/citra taken down March 2024 (Nintendo lawsuit).
Mirror: https://github.com/citra-mirror/citra
The buildbot builds citra_canary from the canary branch of libretro/citra
(libretro-super recipes/windows/cores-windows-x64_seh-noccache).
Under the default option citra_use_libretro_save_path the core points the
root and user directories at {save_dir}/Citra ({system_dir}/Citra without a
save directory), but GetUserPath fills sysdata/ on its first call, before
that, and the UserDir case never moves it. aes_keys.txt and
shared_font.bin are read from the host's Citra data directory: user/sysdata/
beside the working directory when ./user exists, else
$XDG_DATA_HOME/citra-emu/sysdata/ (Linux) or user/sysdata/ beside the
executable, else %APPDATA%/Citra/sysdata/ (Windows). Neither the system nor
the save directory of the frontend.
ref: src/citra_libretro/citra_libretro.cpp:295-316, src/common/file_util.cpp:674-736,
src/common/common_paths.h:16-38
The core reports library_name "Citra Canary".
ref: src/citra_libretro/environment.cpp:131
Embedded open-source replacements for shared font, country list, bad word list.
The Mii data archive has none: when it is missing the core reports
ErrorSystemFiles "Mii Data".
ref: src/core/file_sys/archive_ncch.cpp:132-156
firmware_count absent in .info (= 0).
files:
- name: aes_keys.txt
path: "sysdata/aes_keys.txt"
load_from: data_dir
system: nintendo-3ds
required: false
note: "AES encryption keys for decrypting 3DS content"
source_ref: "src/core/hw/aes/key.cpp:71-131"
- name: shared_font.bin
path: "sysdata/shared_font.bin"
load_from: data_dir
system: nintendo-3ds
required: false
hle_fallback: true
note: "system shared font, falls back to embedded open-source replacement"
source_ref: "src/core/hle/service/apt/apt.cpp:168-200"