Skip to content

# NooDS - RetroBIOS

Type | libretro
Classification | community_fork
Source | https://github.com/jonian/libretro-noods
Upstream | https://github.com/Hydr8gon/NooDS
Version | Git
Profiled | 2026-03-24
Cores | noods
Systems | nintendo-ds, nintendo-gba

Technical notes

Full HLE BIOS for ARM9, ARM7 and GBA SWI routines (hle_bios.cpp:24-60). All BIOS files optional when direct boot is enabled (default). When missing, HLE handler activated via special opcode at offset 3 (memory.cpp:139-168). Firmware 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). Bootable firmware threshold: >128KB (spi.cpp:87). DLDI patching provides SD card access for homebrew via nds_sd_card.bin (dldi.cpp:29-77). File loading code identical between upstream and libretro port.

5 files | 0 required, 5 optional | 5 in repo, 0 missing | 4 with HLE fallback

`bios9.bin` -optional, HLE available : ARM9 BIOS

- System: nintendo-ds
- Size: 4.0 KB
- Source: `src/memory.cpp:130-141`
- Platforms: batocera, emudeck, lakka, recalbox, retroarch, retrobat, retrodeck, retropie
- HLE fallback for all SWI calls; native needed for firmware boot and logo verification (copyBiosLogo)

`bios7.bin` -optional, HLE available : ARM7 BIOS

- System: nintendo-ds
- Size: 16.0 KB
- Source: `src/memory.cpp:144-155`
- Platforms: batocera, emudeck, lakka, recalbox, retroarch, retrobat, retrodeck, retropie
- HLE fallback for all SWI calls; native needed for firmware boot

`firmware.bin` -optional, HLE available : NDS firmware image

- System: nintendo-ds
- Source: `src/spi.cpp:62-160`
- Platforms: batocera, emudeck, lakka, recalbox, retroarch, retrobat, retrodeck, retropie
- Auto-generated 128KB non-bootable firmware as fallback; native dump (>128KB) needed for firmware boot

`gba_bios.bin` -optional, HLE available : GBA BIOS

- System: nintendo-gba
- Size: 16.0 KB
- Source: `src/memory.cpp:158-168, src/core.cpp:252-256`
- Platforms: batocera, lakka, recalbox, retroarch, retrobat, retrodeck, retropie
- HLE fallback via swiTableGba; native BIOS disables HLE and enables real GBA boot

`nds_sd_card.bin` -optional : DLDI SD card image for homebrew

- System: nintendo-ds
- Source: `src/dldi.cpp:80-83, src/libretro/libretro.cpp:331`
- Opened on DLDI startup() call from homebrew ROMs; user-created FAT image

Generated on 2026-03-25T14:56:43Z