feat: core profiles, data_dirs buildbot, cross_ref fix
profiles: amiberry (new), amiarcadia, atari800, azahar, b2,
bk, blastem, bluemsx, freeintv updated with source refs,
upstream field, mode field, data_directories.
_data_dirs.yml: buildbot source for retroarch platforms,
strip_components for nested ZIPs, freeintv-overlays fixed.
cross_reference.py: data_directories-aware gap analysis,
suppresses false gaps when emulator+platform share refs.
refresh_data_dirs.py: ZIP strip_components support,
for_platforms filter, ETag freshness for buildbot.
scraper: bluemsx single ref, freeintv overlays injection.
generate_pack.py: warning on missing data directory cache.
2026-03-18 21:20:02 +01:00
|
|
|
emulator: Azahar
|
feat: 4-source verified emulator profiles (A-E cores)
33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.
New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.
Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
2026-03-19 08:09:34 +01:00
|
|
|
type: standalone + libretro
|
2026-03-23 10:58:32 +01:00
|
|
|
core_classification: community_fork
|
|
|
|
|
source: "https://github.com/johndoe6345789/azahar_libretro"
|
feat: core profiles, data_dirs buildbot, cross_ref fix
profiles: amiberry (new), amiarcadia, atari800, azahar, b2,
bk, blastem, bluemsx, freeintv updated with source refs,
upstream field, mode field, data_directories.
_data_dirs.yml: buildbot source for retroarch platforms,
strip_components for nested ZIPs, freeintv-overlays fixed.
cross_reference.py: data_directories-aware gap analysis,
suppresses false gaps when emulator+platform share refs.
refresh_data_dirs.py: ZIP strip_components support,
for_platforms filter, ETag freshness for buildbot.
scraper: bluemsx single ref, freeintv overlays injection.
generate_pack.py: warning on missing data directory cache.
2026-03-18 21:20:02 +01:00
|
|
|
upstream: "https://github.com/azahar-emu/azahar"
|
2026-03-23 10:58:32 +01:00
|
|
|
profiled_date: "2026-03-23"
|
2026-03-18 05:19:57 +01:00
|
|
|
core_version: "Git"
|
|
|
|
|
display_name: "Nintendo - 3DS (Azahar)"
|
feat: 4-source verified emulator profiles (A-E cores)
33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.
New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.
Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
2026-03-19 08:09:34 +01:00
|
|
|
cores: [azahar]
|
|
|
|
|
systems:
|
|
|
|
|
- nintendo-3ds
|
feat: core profiles, data_dirs buildbot, cross_ref fix
profiles: amiberry (new), amiarcadia, atari800, azahar, b2,
bk, blastem, bluemsx, freeintv updated with source refs,
upstream field, mode field, data_directories.
_data_dirs.yml: buildbot source for retroarch platforms,
strip_components for nested ZIPs, freeintv-overlays fixed.
cross_reference.py: data_directories-aware gap analysis,
suppresses false gaps when emulator+platform share refs.
refresh_data_dirs.py: ZIP strip_components support,
for_platforms filter, ETag freshness for buildbot.
scraper: bluemsx single ref, freeintv overlays injection.
generate_pack.py: warning on missing data directory cache.
2026-03-18 21:20:02 +01:00
|
|
|
|
|
|
|
|
notes: |
|
2026-03-23 10:58:32 +01:00
|
|
|
Successor to Citra (via Lime3DS). Libretro port by johndoe6345789.
|
feat: 4-source verified emulator profiles (A-E cores)
33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.
New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.
Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
2026-03-19 08:09:34 +01:00
|
|
|
Data dir: azahar-emu (legacy: citra-emu, lime3ds-emu).
|
2026-03-23 10:58:32 +01:00
|
|
|
ref: src/common/common_paths.h:41-43
|
feat: core profiles, data_dirs buildbot, cross_ref fix
profiles: amiberry (new), amiarcadia, atari800, azahar, b2,
bk, blastem, bluemsx, freeintv updated with source refs,
upstream field, mode field, data_directories.
_data_dirs.yml: buildbot source for retroarch platforms,
strip_components for nested ZIPs, freeintv-overlays fixed.
cross_reference.py: data_directories-aware gap analysis,
suppresses false gaps when emulator+platform share refs.
refresh_data_dirs.py: ZIP strip_components support,
for_platforms filter, ETag freshness for buildbot.
scraper: bluemsx single ref, freeintv overlays injection.
generate_pack.py: warning on missing data directory cache.
2026-03-18 21:20:02 +01:00
|
|
|
|
2026-03-23 10:58:32 +01:00
|
|
|
Key file named keys.txt (not aes_keys.txt like old Citra).
|
|
|
|
|
Embedded encrypted key fallback if keys.txt absent.
|
|
|
|
|
ref: src/core/hw/aes/key.cpp:282-297
|
feat: core profiles, data_dirs buildbot, cross_ref fix
profiles: amiberry (new), amiarcadia, atari800, azahar, b2,
bk, blastem, bluemsx, freeintv updated with source refs,
upstream field, mode field, data_directories.
_data_dirs.yml: buildbot source for retroarch platforms,
strip_components for nested ZIPs, freeintv-overlays fixed.
cross_reference.py: data_directories-aware gap analysis,
suppresses false gaps when emulator+platform share refs.
refresh_data_dirs.py: ZIP strip_components support,
for_platforms filter, ETag freshness for buildbot.
scraper: bluemsx single ref, freeintv overlays injection.
generate_pack.py: warning on missing data directory cache.
2026-03-18 21:20:02 +01:00
|
|
|
|
feat: 4-source verified emulator profiles (A-E cores)
33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.
New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.
Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
2026-03-19 08:09:34 +01:00
|
|
|
Uses RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY.
|
2026-03-23 10:58:32 +01:00
|
|
|
ref: src/citra_libretro/environment.cpp:179
|
feat: core profiles, data_dirs buildbot, cross_ref fix
profiles: amiberry (new), amiarcadia, atari800, azahar, b2,
bk, blastem, bluemsx, freeintv updated with source refs,
upstream field, mode field, data_directories.
_data_dirs.yml: buildbot source for retroarch platforms,
strip_components for nested ZIPs, freeintv-overlays fixed.
cross_reference.py: data_directories-aware gap analysis,
suppresses false gaps when emulator+platform share refs.
refresh_data_dirs.py: ZIP strip_components support,
for_platforms filter, ETag freshness for buildbot.
scraper: bluemsx single ref, freeintv overlays injection.
generate_pack.py: warning on missing data directory cache.
2026-03-18 21:20:02 +01:00
|
|
|
|
2026-03-23 10:58:32 +01:00
|
|
|
.info has firmware_count=0 but core loads files from system_dir.
|
|
|
|
|
|
|
|
|
|
boot9.bin and sector0x96.bin are defined in common_paths.h:84-85
|
|
|
|
|
but never loaded by any code path. Dead defines from Citra heritage.
|
|
|
|
|
|
|
|
|
|
System archives (shared font, Mii data, country list, bad word list)
|
|
|
|
|
have open-source replacements embedded in the binary.
|
|
|
|
|
ref: src/core/file_sys/archive_ncch.cpp:146-176
|
feat: core profiles, data_dirs buildbot, cross_ref fix
profiles: amiberry (new), amiarcadia, atari800, azahar, b2,
bk, blastem, bluemsx, freeintv updated with source refs,
upstream field, mode field, data_directories.
_data_dirs.yml: buildbot source for retroarch platforms,
strip_components for nested ZIPs, freeintv-overlays fixed.
cross_reference.py: data_directories-aware gap analysis,
suppresses false gaps when emulator+platform share refs.
refresh_data_dirs.py: ZIP strip_components support,
for_platforms filter, ETag freshness for buildbot.
scraper: bluemsx single ref, freeintv overlays injection.
generate_pack.py: warning on missing data directory cache.
2026-03-18 21:20:02 +01:00
|
|
|
|
feat: 4-source verified emulator profiles (A-E cores)
33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.
New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.
Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
2026-03-19 08:09:34 +01:00
|
|
|
files:
|
|
|
|
|
- name: keys.txt
|
|
|
|
|
path: sysdata/keys.txt
|
|
|
|
|
system: nintendo-3ds
|
|
|
|
|
required: false
|
2026-03-23 10:58:32 +01:00
|
|
|
hle_fallback: true
|
|
|
|
|
note: "embedded encrypted fallback if missing"
|
|
|
|
|
source_ref: "src/core/hw/aes/key.cpp:283, src/common/common_paths.h:83"
|
feat: 4-source verified emulator profiles (A-E cores)
33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.
New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.
Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
2026-03-19 08:09:34 +01:00
|
|
|
|
|
|
|
|
- name: shared_font.bin
|
|
|
|
|
path: sysdata/shared_font.bin
|
|
|
|
|
system: nintendo-3ds
|
|
|
|
|
required: false
|
2026-03-19 12:55:03 +01:00
|
|
|
hle_fallback: true
|
2026-03-23 10:58:32 +01:00
|
|
|
note: "legacy load path; embedded open-source font used if missing"
|
|
|
|
|
source_ref: "src/core/hle/service/apt/apt.cpp:263-278"
|
feat: 4-source verified emulator profiles (A-E cores)
33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.
New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.
Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
2026-03-19 08:09:34 +01:00
|
|
|
|
|
|
|
|
- name: seeddb.bin
|
|
|
|
|
path: sysdata/seeddb.bin
|
|
|
|
|
system: nintendo-3ds
|
|
|
|
|
required: false
|
|
|
|
|
note: "game seed database for 9.6+ titles"
|
|
|
|
|
source_ref: "src/core/file_sys/seed_db.cpp:15"
|
|
|
|
|
|
|
|
|
|
- name: otp.bin
|
|
|
|
|
path: sysdata/otp.bin
|
|
|
|
|
system: nintendo-3ds
|
|
|
|
|
required: false
|
2026-03-23 10:58:32 +01:00
|
|
|
validation: [size, crypto]
|
|
|
|
|
note: "OTP data for console key derivation"
|
|
|
|
|
source_ref: "src/core/hw/unique_data.cpp:126-167, src/core/hw/unique_data.cpp:213"
|
feat: 4-source verified emulator profiles (A-E cores)
33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.
New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.
Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
2026-03-19 08:09:34 +01:00
|
|
|
|
|
|
|
|
- name: movable.sed
|
|
|
|
|
path: nand/private/movable.sed
|
|
|
|
|
system: nintendo-3ds
|
|
|
|
|
required: false
|
2026-03-23 10:58:32 +01:00
|
|
|
validation: [size, signature]
|
|
|
|
|
note: "console-unique key seed"
|
|
|
|
|
source_ref: "src/core/hw/unique_data.cpp:170-200, src/core/hw/unique_data.cpp:217"
|
feat: 4-source verified emulator profiles (A-E cores)
33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.
New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.
Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
2026-03-19 08:09:34 +01:00
|
|
|
|
|
|
|
|
- name: SecureInfo_A
|
|
|
|
|
path: nand/rw/sys/SecureInfo_A
|
|
|
|
|
system: nintendo-3ds
|
|
|
|
|
required: false
|
2026-03-23 10:58:32 +01:00
|
|
|
validation: [size, signature]
|
|
|
|
|
note: "console serial and region data"
|
|
|
|
|
source_ref: "src/core/hw/unique_data.cpp:43-92, src/core/hw/unique_data.cpp:205"
|
feat: 4-source verified emulator profiles (A-E cores)
33 emulator profiles created or updated with systematic
verification against libretro docs, .info, core source,
and original emulator source code.
New profiles: bsnes-jg, bsnes2014, bsnes_cplusplus98,
bsnes_hd_beta, bsnes_mercury, citra2018, citra_canary.
Key fixes:
- dosbox_svn/svn_ce: not aliases of dosbox_core (no MUNT)
- beetle_psx: alt_names renamed to aliases (field bug)
- dolphin: added 15 Realtek BT firmware for Wiimote passthrough
- dosbox_core: added CM-32LN, 13 split ROM pairs for standalone
- duckstation: type standalone+libretro, 106 BIOS verified
- snes9x/np2kai: formal aliases for alternate filenames
2026-03-19 08:09:34 +01:00
|
|
|
|
|
|
|
|
- name: LocalFriendCodeSeed_B
|
|
|
|
|
path: nand/rw/sys/LocalFriendCodeSeed_B
|
|
|
|
|
system: nintendo-3ds
|
|
|
|
|
required: false
|
2026-03-23 10:58:32 +01:00
|
|
|
validation: [size, signature]
|
|
|
|
|
note: "friend code generation seed"
|
|
|
|
|
source_ref: "src/core/hw/unique_data.cpp:94-123, src/core/hw/unique_data.cpp:209"
|