Difference between revisions of "MelonDS"

From Emulation General Wiki
Jump to navigation Jump to search
(melonDSi: rewording)
(Mark Vita and Switch versions as unofficial. Nuke outdated DSi info. BIOS files no longer necessary.)
(37 intermediate revisions by 17 users not shown)
Line 4: Line 4:
 
|logo = MelonDS.png
 
|logo = MelonDS.png
 
|logowidth = 80
 
|logowidth = 80
|version = {{MelonDSVer}}
+
|version = {{Version|MelonDS}}
 
|active = Yes
 
|active = Yes
|platform = Windows, Linux, [[Nintendo Switch emulators|Nintendo Switch]], [[Android]]
+
|platform = [[Emulators on PC|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Android OS|Android]]<small> (Unofficial)</small><br/>[[Emulators on Switch|Nintendo Switch]]<small> (Unofficial)</small><br/>[[Emulators on Vita|PlayStation Vita]]<small> (Unofficial)</small>
 
|target = [[Nintendo DS emulators|Nintendo DS]]
 
|target = [[Nintendo DS emulators|Nintendo DS]]
 
|developer = [https://github.com/Arisotura Arisotura]<br/><small>[https://github.com/Arisotura/melonDS/graphs/contributors Repository contributors]</small>
 
|developer = [https://github.com/Arisotura Arisotura]<br/><small>[https://github.com/Arisotura/melonDS/graphs/contributors Repository contributors]</small>
Line 12: Line 12:
 
|website = [http://melonds.kuribo64.net/ melonds.kuribo64.net]
 
|website = [http://melonds.kuribo64.net/ melonds.kuribo64.net]
 
|support = [https://www.patreon.com/staplebutter Patreon]
 
|support = [https://www.patreon.com/staplebutter Patreon]
|prog-lang = C++,C
+
|prog-lang = C, C++
 
|license = GNU GPLv3
 
|license = GNU GPLv3
 
|source = [https://github.com/Arisotura/melonDS GitHub]
 
|source = [https://github.com/Arisotura/melonDS GitHub]
 +
|bios          = [[Emulator_Files#Nintendo_DS_.2F_DSi|Required for DSi]]
 
}}
 
}}
'''melonDS''' is a work-in-progress [[Nintendo DS emulators|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.
+
 
 +
'''melonDS''' is a free and open-source [[Nintendo DS emulators|Nintendo DS]]/[[Nintendo DSi emulators|DSi emulator]] aiming for better performance than [[DeSmuME]] and to emulate Wi-Fi and local multiplayer capabilities. Its developer is Arisotura (formerly known as StapleButter/Luigi__), a former contributor to DeSmuME, and it is available as a [[libretro]] core since version 0.6. Its first commit on GitHub was on May 15, 2016.
  
 
==Downloads==
 
==Downloads==
 
{| cellpadding="4"
 
{| cellpadding="4"
 
|-
 
|-
|align=center|{{Icon|Win|Lin}}
+
|align=center|{{Icon|Win|Lin|Mac}}
 
|'''[http://melonds.kuribo64.net/downloads.php Official Builds]'''<br/><small>Also available on [https://github.com/Arisotura/melonDS/releases Github]</small>
 
|'''[http://melonds.kuribo64.net/downloads.php Official Builds]'''<br/><small>Also available on [https://github.com/Arisotura/melonDS/releases Github]</small>
 
|-
 
|-
|align=center|{{Icon|Win|Lin}}
+
|align=center|{{Icon|Win|Lin|Mac}}
|'''[http://melonds.kuribo64.net/comments.php?id=107 JIT Beta Build (0.8.3)]'''<br/><small>Developed by Generic (aka RSDuck).  Adds a JIT recompiler which improves CPU emulation speeds.</small>
+
|'''[https://github.com/Arisotura/melonDS/actions Dev Builds]'''
 
|-
 
|-
 
|colspan="3"|<hr/>
 
|colspan="3"|<hr/>
 
|-
 
|-
 
|align=center|{{Icon|Android-big}}
 
|align=center|{{Icon|Android-big}}
|'''[https://github.com/rafaelvcaetano/melonDS-android Alpha Build]'''<br>
+
|'''[https://github.com/rafaelvcaetano/melonDS-android Source]''' '''[https://play.google.com/store/apps/details?id=me.magnum.melonds Play Store]''' <br/> Unofficial melonDS Android port
 
|-
 
|-
 
|colspan="3"|<hr/>
 
|colspan="3"|<hr/>
 
|-
 
|-
 
|align=center|{{Icon|NX-big}}
 
|align=center|{{Icon|NX-big}}
|[https://github.com/Hydr8gon/melonDS/releases Switch Port (WIP)]<ref>http://melonds.kuribo64.net/comments.php?id=64 </ref><!--I don't know what the current status is for the Switch Port in terms of compatibility-->
+
|'''[https://github.com/RSDuck/melonDS/releases Release 6]<br>[https://gbatemp.net/threads/melonds-for-switch-continuation.570021/ GBATemp Thread]'''<br><small> Ported by Hydr8gon, and currently maintained by Generic (aka RSDuck), who added an ARM64 JIT and other improvements. (Unofficial)</small><!--I don't know what the current status is for the Switch Port in terms of compatibility-->
 
|-
 
|-
 
|align=center|{{Icon|Vita}}
 
|align=center|{{Icon|Vita}}
|[https://github.com/Rinnegatamante/melonDS-Vita Vita Port]<br><small>No longer maintained</small>
+
|[https://github.com/Rinnegatamante/melonDS-Vita Vita port]<br><small>No longer maintained</small>
 
|}
 
|}
  
 
==Overview==
 
==Overview==
As of 0.8.3, melonDS offers:
+
As of 0.9.5, melonDS offers:
* Nearly complete core (CPU, video, audio, ...)
+
* Nearly complete core (CPU, video, audio...)
 +
* JIT recompiler for fast emulation
 
* OpenGL renderer, 3D upscaling
 
* OpenGL renderer, 3D upscaling
 
* RTC, microphone, lid close/open
 
* RTC, microphone, lid close/open
 
* Joystick support
 
* Joystick support
 
* Savestates
 
* Savestates
* Various display position/sizing/rotation modes
+
* Many display position/sizing/rotation modes
* (WIP) Wifi: local multiplayer, online connectivity  
+
* Wi-Fi: local multiplayer, on-line connectivity
 +
* DSi emulation
 +
* Camera support (DSi only)
 +
* DLDI
 +
* (WIP) GBA slot add-ons
 +
...and more are planned.
 +
 
 +
Though it is not as mature as DeSmuME in some areas, it is a relatively simple emulator to use and has potential.
  
Though it's not as mature as DeSmuME in some areas, it's a relatively simple emulator to use and has potential. There are also plans on adding support for <abbr title="Action Replay>AR</abbr> cheats in the near future. 
+
==Cheats/BIOS==
 +
* <B> [https://gbatemp.net/threads/deadskullzjrs-nds-cheat-databases.488711 Cheats Database]</B>
 +
* <B> [https://archive.org/details/ds-firmware_dsi-nand-and-firmware DSi NAND/BIOS + Firmware]</B>
  
 
==Issues==
 
==Issues==
Line 58: Line 70:
 
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.
 
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.
+
The OpenGL renderer is still being worked on, meaning that there is a small chance some models/textures may not render correctly.
  
 
==melonDSi==
 
==melonDSi==
On October 15, 2019, Arisotura released [http://melonds.kuribo64.net/comments.php?id=103 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 the [https://github.com/Arisotura/melonDS/actions latest dev builds]<ref>http://melonds.kuribo64.net/comments.php?id=117</ref>.
+
On October 15, 2019, Arisotura released [http://melonds.kuribo64.net/comments.php?id=103 the beta version of an emulator called melonDSi], an experimental melonDS branch for DSi emulation. It used to require a lot of files to be dumped to work (most of which were console-unique), but it has been reworked to require less files (namely, the DSi ARM7 and 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.
  
==Getting Started==
+
==Getting started==
 
From the README on GitHub:
 
From the README on GitHub:
  
:''melonDS requires BIOS/firmware copies from a DS. Files required:''
+
:''Firmware boot (not direct boot) requires a BIOS/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.''
:*''bios7.bin, 16KB: ARM7 BIOS''
+
:'''''Possible firmware sizes'''''
:*''bios9.bin, 4KB: ARM9 BIOS''
+
:*''128KB: DSi/3DS DS-mode firmware (reduced size due to lacking bootcode)''
:*''firmware.bin, 128/256/512KB: firmware''
+
:*''256KB: regular DS 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.''
+
:*''512KB: iQue DS firmware''
:''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.''
+
:''DS BIOS dumps from a DSi or 3DS can be used with no compatibility issues. DSi BIOS dumps (in DSi mode) are not compatible. Or maybe they are. I don't know.''
 +
:''As for the rest, the interface should be pretty straightforward. If you have a question, don't hesitate to ask, though!''
  
These files can be found [https://drive.google.com/open?id=1PW1G_5iygRiARZMLZnYMr8PrMhbjAYrD 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.
+
These files can be found [[Emulator_Files#Nintendo_DS_.2F_DSi|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.
+
To use the OpenGL renderer, you must have at least OpenGL 3.1.
 
More information can be found [http://melonds.kuribo64.net/faq.php in this FAQ].
 
More information can be found [http://melonds.kuribo64.net/faq.php in this FAQ].
  
Line 86: Line 99:
 
</gallery>
 
</gallery>
  
==References==
+
<!--==References==
<references/>
+
<references/>-->
  
==External Links==
+
==External links==
 
* [https://emucross.com/the-one-that-flourished/ The One That Flourished: A Look at melonDS 0.8] (By [[Dolphin]] tester [https://dolphin-emu.org/blog/authors/JMC47/ JMC47], aka Justin M. Chadwick. 6 June 2019.)
 
* [https://emucross.com/the-one-that-flourished/ The One That Flourished: A Look at melonDS 0.8] (By [[Dolphin]] tester [https://dolphin-emu.org/blog/authors/JMC47/ JMC47], aka Justin M. Chadwick. 6 June 2019.)
  
 
[[Category:Emulators]]
 
[[Category:Emulators]]
 +
[[Category:Console emulators]]
 +
[[Category:Handheld console emulators]]
 
[[Category:Windows emulation software]]
 
[[Category:Windows emulation software]]
 
[[Category:Linux emulation software]]
 
[[Category:Linux emulation software]]
 +
[[Category:macOS emulation software]]
 +
[[Category:Android emulation software]]
 +
[[Category:Switch emulation software]]
 +
[[Category:PlayStation Vita emulation software]]
 
[[Category:Nintendo DS emulators]]
 
[[Category:Nintendo DS emulators]]
 +
[[Category:Nintendo DSi emulators]]

Revision as of 19:46, 9 December 2022

melonDS
MelonDS.png
Developer(s) Arisotura
Repository contributors
Latest version 0.9.5 [+]
Active Yes
Platform(s) Windows
Linux
macOS
Android (Unofficial)
Nintendo Switch (Unofficial)
PlayStation Vita (Unofficial)
Emulates Nintendo DS
Accuracy Medium-Accurate
Website melonds.kuribo64.net
Support ($) Patreon
Programmed in C, C++
License GNU GPLv3
Source code GitHub
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. Its developer is Arisotura (formerly known as StapleButter/Luigi__), a former contributor to DeSmuME, and it is available as a libretro core since version 0.6. Its first commit on GitHub was on May 15, 2016.

Downloads

Windows Linux macOS Official Builds
Also available on Github
Windows Linux macOS Dev Builds

Android Source Play Store
Unofficial melonDS Android port

Switch Release 6
GBATemp Thread

Ported by Hydr8gon, and currently maintained by Generic (aka RSDuck), who added an ARM64 JIT and other improvements. (Unofficial)
Vita Vita port
No longer maintained

Overview

As of 0.9.5, melonDS offers:

  • Nearly complete core (CPU, video, audio...)
  • JIT recompiler for fast emulation
  • OpenGL renderer, 3D upscaling
  • RTC, microphone, lid close/open
  • Joystick support
  • Savestates
  • Many display position/sizing/rotation modes
  • Wi-Fi: local multiplayer, on-line connectivity
  • DSi emulation
  • Camera support (DSi only)
  • DLDI
  • (WIP) GBA slot add-ons

...and more are planned.

Though it is not as mature as DeSmuME in some areas, it is a relatively simple emulator to use and has potential.

Cheats/BIOS

Issues

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 is a small chance some models/textures may not render correctly.

melonDSi

On October 15, 2019, Arisotura released the beta version of an emulator called melonDSi, an experimental melonDS branch for DSi emulation. It used to require a lot of files to be dumped to work (most of which were console-unique), but it has been reworked to require less files (namely, the DSi ARM7 and 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.

Getting started

From the README on GitHub:

Firmware boot (not direct boot) requires a BIOS/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.
Possible firmware sizes
  • 128KB: DSi/3DS DS-mode firmware (reduced size due to lacking bootcode)
  • 256KB: regular DS firmware
  • 512KB: iQue DS firmware
DS BIOS dumps from a DSi or 3DS can be used with no compatibility issues. DSi BIOS dumps (in DSi mode) are not compatible. Or maybe they are. I don't know.
As for the rest, the interface should be pretty straightforward. If you have a question, don't hesitate to ask, though!

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.

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.

Gallery


External links