mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-20 18:59:07 -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.
108 lines
5.3 KiB
YAML
108 lines
5.3 KiB
YAML
emulator: melonDS DS
|
|
type: libretro
|
|
core_classification: community_fork
|
|
cores: [melonds_ds, melondsds]
|
|
source: "https://github.com/JesseTG/melonds-ds"
|
|
upstream: "https://github.com/melonDS-emu/melonDS"
|
|
profiled_date: "2026-10-04"
|
|
source_commit: "f394adbacb5722ee97c1b37c8064da9a25818310"
|
|
core_version: "1.4.0"
|
|
display_name: "Nintendo - DS (melonDS DS)"
|
|
systems:
|
|
- nintendo-ds
|
|
- nintendo-dsi
|
|
|
|
notes: |
|
|
Libretro-specific remake using melonDS as a statically-linked library.
|
|
LoadBios() looks for each BIOS in "{system}/melonDS DS/" first, then in the
|
|
system directory itself, and rejects a file whose size is not exactly the
|
|
expected one (src/libretro/config/console.cpp:1087-1133).
|
|
|
|
DS mode: the firmware named by the core option is loaded when BIOS/Firmware
|
|
Mode is Native, otherwise (or when it fails to load) a generated firmware
|
|
is used (src/libretro/config/console.cpp:337-364). bios7.bin and bios9.bin
|
|
are only read with a native firmware. If either fails the core falls back
|
|
to FreeBIOS (src/libretro/config/console.cpp:379-410). With FreeBIOS an
|
|
encrypted retail ROM is refused (src/libretro/config/console.cpp:420-424),
|
|
and booting without content needs native BIOS and a bootable firmware
|
|
(src/libretro/config/console.cpp:398-401).
|
|
|
|
DSi mode requires dsi_bios7.bin, dsi_bios9.bin, bios7.bin, bios9.bin, a DSi
|
|
firmware and a NAND image, and each missing file throws
|
|
(src/libretro/config/console.cpp:490-551).
|
|
|
|
Firmware and NAND images have no fixed name. RegisterCoreOptions() scans
|
|
the system directory and its "melonDS DS" subdirectory and offers every
|
|
file that passes IsFirmwareImage() or IsDsiNandImage() as a core option
|
|
value (src/libretro/config/config.cpp:1005-1020). The default firmware is
|
|
the newest file whose header matches the console type. The NAND option
|
|
defaults to Auto: for a title installed onto the NAND the core picks the
|
|
discovered image whose console region matches the ROM, otherwise the first
|
|
one found (src/libretro/config/console.cpp:564-579).
|
|
|
|
files:
|
|
# --- Nintendo DS (NTR) ---
|
|
- name: bios7.bin
|
|
system: nintendo-ds
|
|
description: "ARM7 BIOS"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 16384
|
|
validation: [size]
|
|
crc32: 1280f0d5
|
|
source_ref: "source src/libretro/config/config.hpp:326, source src/libretro/config/console.cpp:379, source src/libretro/config/console.cpp:526-529, source src/libretro/config/console.cpp:1098-1103, source src/MemConstants.h:31, upstream src/MemConstants.h:36"
|
|
note: "Required in DSi mode."
|
|
|
|
- name: bios9.bin
|
|
system: nintendo-ds
|
|
description: "ARM9 BIOS"
|
|
required: false
|
|
hle_fallback: true
|
|
size: 4096
|
|
validation: [size]
|
|
crc32: 2ab23573
|
|
source_ref: "source src/libretro/config/config.hpp:325, source src/libretro/config/console.cpp:380, source src/libretro/config/console.cpp:531-534, source src/libretro/config/console.cpp:1098-1103, source src/MemConstants.h:30, upstream src/MemConstants.h:37"
|
|
note: "Required in DSi mode."
|
|
|
|
- name: firmware.bin
|
|
system: nintendo-ds
|
|
description: "NDS firmware image"
|
|
required: false
|
|
hle_fallback: true
|
|
source_ref: "source src/libretro/config/console.cpp:337-364, source src/libretro/config/console.cpp:1136-1182, source src/libretro/config/constants.cpp:102-176, source src/libretro/config/constants.hpp:288"
|
|
note: "Any file name: the core lists every file of 131072, 262144 or 524288 bytes with a valid firmware header and the user picks one. A generated firmware is used as fallback."
|
|
|
|
# --- Nintendo DSi (TWL) ---
|
|
- name: dsi_bios7.bin
|
|
system: nintendo-dsi
|
|
description: "DSi ARM7 BIOS"
|
|
required: true
|
|
size: 65536
|
|
validation: [size]
|
|
crc32: 4316cc42
|
|
source_ref: "source src/libretro/config/config.hpp:328, source src/libretro/config/console.cpp:516-519, source src/libretro/config/console.cpp:1098-1103, source src/MemConstants.h:32, upstream src/MemConstants.h:44"
|
|
note: "The eMMC key-Y at offset 0x8308 is used to open the NAND image (src/libretro/config/console.cpp:586)."
|
|
|
|
- name: dsi_bios9.bin
|
|
system: nintendo-dsi
|
|
description: "DSi ARM9 BIOS"
|
|
required: true
|
|
size: 65536
|
|
validation: [size]
|
|
crc32: bae84f6c
|
|
source_ref: "source src/libretro/config/config.hpp:327, source src/libretro/config/console.cpp:521-524, source src/libretro/config/console.cpp:1098-1103, source src/MemConstants.h:32, upstream src/MemConstants.h:45"
|
|
|
|
- name: dsi_firmware.bin
|
|
system: nintendo-dsi
|
|
description: "DSi firmware image"
|
|
required: true
|
|
source_ref: "source src/libretro/config/console.cpp:497-499, source src/libretro/config/console.cpp:536-551, source src/libretro/config/constants.cpp:102-176"
|
|
note: "Any file name, selected through a core option, and the firmware header must declare the DSi console type."
|
|
|
|
- name: dsi_nand.bin
|
|
system: nintendo-dsi
|
|
description: "DSi NAND dump"
|
|
required: true
|
|
source_ref: "source src/libretro/config/console.cpp:490-495, source src/libretro/config/console.cpp:564-592, source src/libretro/config/console.cpp:1401-1416, source src/libretro/config/constants.cpp:44-100, source src/libretro/config/constants.hpp:283-287"
|
|
note: "Any file name, selected through a core option or picked automatically by region. 251658240 or 257425408 bytes, plus 64 when the no$gba footer is appended. The footer magic must be present at the end or at offset 0xFF800."
|