|Programmed in||C, C++|
|BIOS/Keys||Required for DSi|
melonDS is a free and open-source Nintendo DS/DSi emulator aiming for better performance than DeSmuME and to emulate Wi-Fi and local multiplayer capabilities. It is developed by Arisotura (formerly known as StapleButter), a former contributor to DeSmuME, and has been available as a libretro core since version 0.6.
Also available on Github
|Source Play Store |
Unofficial melonDS Android port
Ported by Hydr8gon, and currently maintained by Generic (aka RSDuck), who added an ARM64 JIT and other improvements. (Unofficial)
No longer maintained
As of 0.9.1, melonDS offers:
- Nearly complete core (CPU, video, audio, ...)
- JIT recompiler for fast emulation
- OpenGL renderer, 3D upscaling
- RTC, microphone, lid close/open
- Joystick support
- Various display position/sizing/rotation modes
- (WIP) Wifi: local multiplayer, online connectivity
- (WIP) DSi emulation
- (WIP) GBA slot add-ons
...and more are planned.
Though it's not as mature as DeSmuME in some areas, it's a relatively simple emulator to use and has potential.
Like most emulators, development has been rocky with at one point the sole developer putting the project on a hiatus in May of 2018 leaving this to-do list for anyone who wished to contribute improving the emulator, which is still open-source. On July 2018 it was announced that development was going to continue for melonDS and has since shown potential.
There is very little to tweak in terms of improving performance (which can be a good or bad thing). This is mainly due to the developer's goal of accurate emulation rather than providing game-specific hacks.
The OpenGL renderer is still being worked on, meaning that there's a slight chance some models/textures may not render correctly.
On October 15, 2019, Arisotura released the beta version of an emulator called melonDSi, an experimental melonDS branch for DSi emulation. So far, it's able to boot into the home screen of the DSi's firmware and boot some DSiWare, DSi-Enhanced games and other features (cameras, DSP, new wifi, etc.) aren't supported yet. It used to have required a lot of files to be dumped in order to work (most of which were console-unique), however it has been reworked to require less files (namely, the DSi ARM7 & ARM9 BIOS, the DSi Firmware, and a NAND dump). It has since been merged into the master branch and is available on melonDS 0.9.
From the README on GitHub:
- melonDS requires BIOS/firmware copies from a DS. Files required:
- bios7.bin, 16KB: ARM7 BIOS
- bios9.bin, 4KB: ARM9 BIOS
- firmware.bin, 128/256/512KB: firmware
- Firmware boot requires a firmware dump from an original DS or DS Lite. DS firmwares dumped from a DSi or 3DS aren't bootable and only contain configuration data, thus they are only suitable when booting games directly.
- DS BIOS dumps from a 3DS can be used with no compatibility issues. DSi BIOS dumps should be usable too, provided they were dumped properly.
These files can be found here. If you do choose to look elsewhere online for system files, be warned that there are old hacked dumps floating around that breaks if the WFC configurations are altered.
In order to use the OpenGL renderer, you must have at least OpenGL 3.1. More information can be found in this FAQ.
To use melonDS in DSi mode, you need extra files which can be found on this page.