Files
libretro/emulators/desmume.yml
Abdessamad Derraz 98afc86d0c feat: separate frozen snapshot profiles, fix shared cores
Created desmume2015.yml with files: [] (code doesn't load BIOS).
Removed desmume2015 from desmume.yml cores list.
Removed cdi2015 from same_cdi.yml (separate profile exists).

Frozen snapshots must have their own profiles because their
firmware behavior differs from the current version.
2026-03-19 13:11:25 +01:00

48 lines
1.9 KiB
YAML

emulator: DeSmuME
type: libretro
source: "https://github.com/libretro/desmume"
profiled_date: "2026-03-18"
core_version: "SVN"
display_name: "Nintendo - DS (DeSmuME)"
cores: [desmume]
systems: [nintendo-ds]
notes: |
DeSmuME provides full HLE (High-Level Emulation) of all ARM7/ARM9 SWI
routines, making BIOS files optional for most games. When external BIOS
is disabled, a minimal fake BIOS with exception vectors and IRQ handler
stubs is generated at runtime (NDSSystem.cpp:2208-2224, 2263-2278).
External BIOS enables SWI-from-BIOS mode and firmware boot animation.
Firmware boot requires both ARM7+ARM9 BIOS loaded AND interpreter mode
(JIT incompatible, see libretro.cpp:788).
ARM9 BIOS read size: 4096 bytes (0x1000). ARM7 BIOS read size: 16384
bytes (0x4000). No DSi support.
Libretro core option: desmume_use_external_bios (enabled/disabled).
files:
- name: "bios7.bin"
system: nintendo-ds
description: "ARM7 BIOS"
required: false
hle_fallback: true
size: 16384
source_ref: "desmume/src/NDSSystem.cpp:2178-2182, frontend/libretro/libretro.cpp:763"
notes: "HLE fallback covers all SWI calls; native file needed for firmware boot and SWI-from-BIOS accuracy"
- name: "bios9.bin"
system: nintendo-ds
description: "ARM9 BIOS"
required: false
hle_fallback: true
size: 4096
source_ref: "desmume/src/NDSSystem.cpp:2236-2239, frontend/libretro/libretro.cpp:764"
notes: "HLE fallback covers all SWI calls; native file needed for firmware boot and logo comparison (Pal Park)"
- name: "firmware.bin"
system: nintendo-ds
description: "NDS firmware image"
required: false
hle_fallback: true
source_ref: "desmume/src/NDSSystem.cpp:2653-2655, frontend/libretro/libretro.cpp:765"
notes: "Dummy firmware generated when absent; native firmware needed for boot animation, wifi config, user settings"