melonDS - RetroBIOS¶
| Type | standalone + libretro |
| Classification | community_fork |
| Source | https://github.com/libretro/melonDS |
| Upstream | https://github.com/melonDS-emu/melonDS |
| Version | Git |
| Profiled | 2026-03-24 |
| Cores | melonds |
| Systems | nintendo-ds, nintendo-dsi |
Technical notes
FreeBIOS fallback for DS mode (NTR); DSi mode requires all native files. Libretro fork based on melonDS ~0.9.x era, validates size only. Upstream adds CRC32 validation on BIOS files (MemConstants.h). DSi SD card emulation controlled by melonds_dsi_sdcard core option.
8 files | 4 required, 4 optional | 8 in repo, 0 missing | 3 with HLE fallback
bios9.bin -optional, HLE available
: ARM9 BIOS
- System: nintendo-ds
- Size: 4.0 KB
- CRC32:
0x2ab23573 - Validation (core): size
- Validation (upstream): size, crc32
- Source:
src/NDS.h:196, src/NDS.cpp:467-477, src/frontend/Util_ROM.cpp:99-111 - Platforms: batocera, emudeck, lakka, recalbox, retroarch, retrobat, retrodeck, retropie
- FreeBIOS fallback (src/FreeBIOS.h); native needed for Key1 cartridge crypto
bios7.bin -optional, HLE available
: ARM7 BIOS
- System: nintendo-ds
- Size: 16.0 KB
- CRC32:
0x1280f0d5 - Validation (core): size
- Validation (upstream): size, crc32
- Source:
src/NDS.h:197, src/NDS.cpp:482-492, src/frontend/Util_ROM.cpp:117-131 - Platforms: batocera, emudeck, lakka, recalbox, retroarch, retrobat, retrodeck, retropie
- FreeBIOS fallback (src/FreeBIOS.h); native needed for Key1 init at offset 0x0030
firmware.bin -optional, HLE available
: NDS firmware image
- System: nintendo-ds
- Validation: size
- Source:
src/SPI.cpp:192-211, src/frontend/Util_ROM.cpp:174-195 - Platforms: batocera, emudeck, lakka, recalbox, retroarch, retrobat, retrodeck, retropie
- Generated 128KB firmware as fallback; native must be 256KB or 512KB for boot
dsi_bios9.bin -required
: DSi ARM9 BIOS
- System: nintendo-dsi
- Size: 64.0 KB
- CRC32:
0xBAE84F6C - Validation (core): size
- Validation (upstream): size, crc32
- Source:
src/DSi.h:33, src/DSi.cpp:587-599, src/frontend/Util_ROM.cpp:145-156 - Platforms: batocera, lakka, retroarch, retrobat, retropie
dsi_bios7.bin -required
: DSi ARM7 BIOS
- System: nintendo-dsi
- Size: 64.0 KB
- CRC32:
0x4316CC42 - Validation (core): size
- Validation (upstream): size, crc32
- Source:
src/DSi.h:34, src/DSi.cpp:604-620, src/frontend/Util_ROM.cpp:158-170 - Platforms: batocera, lakka, retroarch, retrobat, retropie
- Contains eMMC key-Y at offset 0x8308 for NAND init
dsi_firmware.bin -required
: DSi firmware image
- System: nintendo-dsi
- Size: 128.0 KB
- Validation: size
- Source:
src/SPI.cpp:197-211, src/frontend/Util_ROM.cpp:201-217 - Platforms: batocera, lakka, retroarch, retrobat, retropie
dsi_nand.bin -required
: DSi NAND dump
- System: nintendo-dsi
- Source:
src/frontend/Util_ROM.cpp:224-235, src/DSi_NAND.cpp - Platforms: batocera, lakka, retroarch, retropie
- Uses AES keys from ARM7i BIOS offset 0x8308
dsi_sd_card.bin -optional
: DSi SD card image
- System: nintendo-dsi
- Source:
src/frontend/Util_ROM.cpp:237-243, src/libretro/libretro.cpp:837,553 - Created if missing; requires melonds_dsi_sdcard core option enabled
Generated on 2026-03-25T14:56:43Z