|Platform(s)||Windows, Linux, macOS, Nintendo Switch (unofficial), Android (unofficial)|
|Programmed in||C, C++|
melonDS is a work-in-progress Nintendo DS 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
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, melonDS offers:
- Nearly complete core (CPU, video, audio, ...)
- OpenGL renderer, 3D upscaling
- RTC, microphone, lid close/open
- Joystick support
- Various display position/sizing/rotation modes
- JIT recompiler - Brought to you by Generic (aka RSDuck), the new JIT recompiler enables melonDS to run much faster, and quite often reach fullspeed even when emulating DSi titles!
- DSi Emulation - You will need a NAND and firmware dump from your DSi, as well as augmented BIOS dumps (such as those that NO$GBA requires). I intend to release a BIOS dumper to make this easier.
- (WIP) Wifi: local multiplayer, online connectivity
- AR cheat support!
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.