Files
libretro/emulators/noods.yml
Abdessamad Derraz de1940d57c feat: hle_fallback on 39 emulator profiles (266 entries)
Batch analysis of all 273 profiles to identify HLE/embedded
fallbacks. Added hle_fallback: true where the core has verified
software replacement for missing BIOS files:

- Embedded ROMs: vice (102), ep128emu (22), fuse (18), frodo (4)
- HLE BIOS: bsnes* (33 across 3 profiles), puae (9 AROS),
  noods (4), melonds* (6 FreeBIOS), flycast (3 reios)
- Open-source replacements: sameboy (8), pokemini (1), gpsp (1)
- Built-in fallbacks: np2kai (7), atari800 (6 Altirra),
  picodrive (3), quasi88 (4), gambatte (2)

Conservative: only added where notes or source code confirm HLE.
Skipped 50+ profiles where files are optional alternatives, not
HLE replaceable (neocd, opera, kronos, pcem, etc.)
2026-03-19 13:03:48 +01:00

62 lines
2.4 KiB
YAML

emulator: NooDS
type: libretro
source: "https://github.com/Hydr8gon/NooDS"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Nintendo - DS (NooDS)"
cores: [noods]
systems: [nintendo-ds, nintendo-gba]
notes: |
NooDS includes full HLE BIOS for ARM9, ARM7 and GBA SWI routines, making
all BIOS files optional when direct boot is enabled (default). HLE tables
cover SWI 0x00-0x20 for each processor (hle_bios.cpp:24-62). When BIOS
files are missing, a special opcode (0xFF at offset 3) is written for
interrupt return and the HLE handler is activated (memory.cpp:130-169).
Firmware is auto-generated (128KB non-bootable) if not provided, with
default WiFi config, touch calibration and user settings (spi.cpp:90-160).
Native BIOS+firmware required only for firmware boot (non-direct-boot mode).
ARM9 BIOS read: 0x1000 bytes (4 KB), ARM7 BIOS read: 0x4000 bytes (16 KB),
GBA BIOS read: 0x4000 bytes (16 KB). Firmware bootable threshold: >128 KB
(spi.cpp:87). DSi mode supported but uses same BIOS files.
Config: noods.ini keys bios9Path, bios7Path, firmwarePath, gbaBiosPath.
files:
- name: "bios9.bin"
system: nintendo-ds
description: "ARM9 BIOS"
required: false
hle_fallback: true
size: 4096
md5: "a392174eb3e572fed6447e956bde4b25"
source_ref: "src/memory.cpp:130-142, src/memory.h:73"
notes: "HLE fallback for all SWI calls; native needed for firmware boot and logo verification (copyBiosLogo)"
- name: "bios7.bin"
system: nintendo-ds
description: "ARM7 BIOS"
required: false
hle_fallback: true
size: 16384
md5: "df692a80a5b1bc90728bc3dfc76cd948"
source_ref: "src/memory.cpp:144-156, src/memory.h:74"
notes: "HLE fallback for all SWI calls; native needed for firmware boot"
- name: "firmware.bin"
system: nintendo-ds
description: "NDS firmware image"
required: false
hle_fallback: true
source_ref: "src/spi.cpp:62-160, src/settings.cpp:42"
notes: "Auto-generated 128KB non-bootable firmware as fallback; native dump (>128KB) needed for firmware boot"
- name: "gba_bios.bin"
system: nintendo-gba
description: "GBA BIOS"
required: false
hle_fallback: true
size: 16384
md5: "a860e8c0b6d573d191e4ec7db1b1e4f6"
source_ref: "src/memory.cpp:158-169, src/memory.h:75, src/core.cpp:244-252"
notes: "HLE fallback via swiTableGba; native BIOS disables HLE and enables real GBA boot (core.cpp:244-247)"