melonDS DS
melonDS DS emulates Nintendo DS and Nintendo DSi. It reads 7 files, 4 of them required: without a required file it does not start games. A required file is needed only by the machines that use it. Each file below cites the line of source code that reads it.
About this profile
Install this emulator's files
The installer finds your setup and its BIOS folder, then downloads only the files this emulator reads there and checks each one.
Open the Start menu. Type PowerShell and open it. Paste the line. Press Enter.
&([scriptblock]::Create((irm https://abdess.github.io/retrobios/i.ps1))) --emulator melonds_dsOpen Terminal, in Applications, then Utilities. Paste the line. Press Return.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator melonds_dsOpen a terminal. Paste the line. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator melonds_dsSwitch to Desktop Mode. Open Konsole. Paste with Ctrl+Shift+V. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator melonds_dsInstall Termux, a terminal app. Run pkg install python and termux-setup-storage once. Then paste the line. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator melonds_dsOpen a terminal on the device. Or connect from a computer with SSH, a terminal over the network. Paste the line. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator melonds_dsTechnical 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).
7 files: 4 required, 3 optional. 3 have an HLE fallback.
In this collection: 7 in repo and 0 missing.
Required
Section titled “Required”| File | Status | Hash |
|---|---|---|
dsi_bios7.binDSi ARM7 BIOS
Hashes, validation and source
| required for Nintendo DSi in repo | CRC32 4316cc42 |
dsi_bios9.binDSi ARM9 BIOS
Hashes, validation and source
| required for Nintendo DSi in repo | CRC32 bae84f6c |
dsi_firmware.binDSi firmware image
Source
| required for Nintendo DSi in repo | - |
dsi_nand.binDSi NAND dump
Source
| required for Nintendo DSi in repo | - |
Optional
Section titled “Optional”| File | Status | Hash |
|---|---|---|
bios7.binARM7 BIOS
Hashes, validation and source
| in repo HLE fallback | CRC32 1280f0d5 |
bios9.binARM9 BIOS
Hashes, validation and source
| in repo HLE fallback | CRC32 2ab23573 |
firmware.binNDS firmware image
Source
| in repo HLE fallback | - |
Next steps
Section titled “Next steps”- Get your files, for the setup you play on
- Every system, and the files each one needs
- When a game does not start