Bios7.bin Bios9.bin Firmware.bin

Bios7.bin Bios9.bin Firmware.bin

melonDS
Developer(s)Arisotura
Repository contributors
Latest version0.9.2
ActiveYes
Platform(s)Multi-platform
EmulatesNintendo DS
AccuracyMedium-Accurate
Websitemelonds.kuribo64.net
Support($)Patreon
Programmed inC, C++
LicenseGNU GPLv3
Source codeGitHub
BIOS/KeysRequired for DSi

Bios7.bin, 16KB: ARM7 BIOS bios9.bin, 4KB: ARM9 BIOS firmware.bin, 256KB: firmware Note: the DS-mode firmware in the 3DS isn't bootable, it only contains the bare minimum to run games. The BIOS/firmware dumps consists of three files, specifically 'bios7.rubbish bin,' 'bios9.rubbish bin' and 'firmware.trash can,' which you can acquire from your physical gaming console by yourself. Nintendo DS emulator. MelonDS is a Nintendo DS emulator. Required firmware image files (bios7.bin, bios9.bin, firmware.bin) are not included.

melonDS is a free and open-source 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.

Downloads[edit]

Official Builds
Also available on Github
Dev Builds
git
(Unofficial)
Release 5
GBATemp Thread

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

Overview[edit]

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
  • Savestates
  • Various display position/sizing/rotation modes
  • (WIP) Wifi: local multiplayer, online connectivity
  • (WIP) DSi emulation
  • DLDI
  • (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.

Cheats/BIOS (DSi)[edit]

Issues[edit]

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.

melonDSi[edit]

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.

Getting started[edit]

Bios7.bin

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.

Gallery[edit]

  • Top: 2x the native resolution without OpenGL.
    Bottom: 2x the native resolution with OpenGL

  • Top: Native software render.
    Bottom: 4x the native resolution with OpenGL


External links[edit]

  • The One That Flourished: A Look at melonDS 0.8 (By Dolphin tester JMC47, aka Justin M. Chadwick. 6 June 2019.)

MelonDS For Switch — Continuation | GBAtemp.net

Retrieved from 'https://emulation.gametechwiki.com/index.php?title=MelonDS&oldid=42294'

First of all, melonDS requires BIOS and firmware dumps from a DS or if you want to emulate the DSi, melonDS requires the BIOS, firmware and NAND image. We haven't gotten around to making alternate BIOS/firmware yet. So, you will need to obtain those:

DS Emulation

MelonDS For Switch | GBAtemp.net - The Independent Video Game ...

  • bios9.bin - 4KB - ARM9 BIOS
  • bios7.bin - 16KB - ARM7 BIOS
  • firmware.bin - 128/256/512KB - firmware dump

You can then configure the BIOS and Firmware by going to Emu Settings -> DS-mode and then navigate to the paths of each file.

You can dump these files from a DS/DSi/3DS with this dumper by running it on a flashcart on a DS, (R4, Acekard, etc) or through nds-bootstrap or similar on a DSi/3DS.

The firmware can come in three flavors:

  • DSi/3DS DS-mode firmware: 128KB
  • regular DS firmware: 256KB
  • iQue DS firmware: 512KB

DSi/3DS DS-mode firmwares are not bootable. They only contain configuration data.

DSi Emulation

As of melonDS 0.9, melonDS can also emulate the DSi. To get the DSi BIOS, firmware and NAND image, you need these files:

  • DSi ARM9 BIOS: 64KB
  • DSi ARM7 BIOS: 64KB
  • DSi Firmware: 128KB
  • DSi NAND image: ~240MB

To obtain the DSi BIOS and firmware, you can use this dumper and to dump the DSi NAND (must include the nocash footer), you can use dumpTool.

Once that is done, you can launch melonDS and set it up.

Emu settings

  • Boot game directly: when loading a ROM, this will run the ROM directly instead of running the 'Nintendo DS' boot screen.Note that if your firmware comes from a DSi or 3DS, you should keep this enabled.

Input config

This is where you map keyboard and joystick input. To map a button, click it, then press the desired key or joystick button. You can press Escape to cancel the mapping process, leaving the previous mapping unchanged. Joystick mappings can also be cleared by pressing Backspace.

As of 0.8.1, it is possible to map keys with modifiers (Ctrl+Z, Shift+Q, Ctrl+Alt+K...). Key mappings can also be cleared by pressing Backspace, just like for joystick mappings. And joystick mappings can have both a button/hat direction and axis assigned; mapping one type will leave the other mapping type intact (for example mapping a button leaves the axis mapping intact). Pressing Backspace clears both mappings.

Hotkey config

This functions the same as input config, but pertains to hotkeys, which are like special buttons controlling the emulator's features (for example, fullscreen, closing the lid, playing a microphone sample, ...).

Video settings

Display settings

MelonDS - Nintendo DS - Downloads - Emulators

  • 3D renderer: chooses which renderer to use to render the DS's 3D graphics. The software renderer is the most accurate, but also the most intensive on your CPU. The OpenGL renderer will use your GPU, making it potentially faster but also less accurate. The OpenGL renderer is also capable of rendering at higher internal resolutions, allowing for better quality of 3D graphics.
  • OpenGL display: uses OpenGL instead of Qt to draw the DS screens to the window. This is forcefully enabled when using the OpenGL renderer as they work faster together.

Software renderer

  • Threaded: runs the rasterizer on a separate thread for better performance on multicore CPUs. (in 0.7.3 and older this setting is found in the emulation settings dialog)

OpenGL renderer

  • Internal resolution: the resolution at which the renderer will render graphics. Higher resolutions yield smoother graphics but may require more GPU power and may cause visual issues in certain games. Note that changing this setting only changes the internal resolution for 3D graphics and does not affect the window size.

Audio settings

Audio output

  • Volume: sets the general volume for the emulated audio output.

Microphone input

  • None: no microphone input.
  • Microphone: uses input from the microphone connected to your PC, if any.
  • White noise: feeds random noise as microphone input, which is enough for a lot of games. Controlled by the microphone hotkey.
  • WAV file: feeds a small WAV file as microphone input. Controlled by the microphone hotkey.

Wifi settings

Bios7.bin Bios9.bin Firmware.bin

Local

  • Bind socket to any address: enables local multiplayer over LAN. Toggling this may also help getting local multiplayer to work even on the same machine.

Online

  • Direct mode: directly forwards network traffic to the host network by using libpcap.
  • Network adapter: under direct mode, chooses which adapter to forward to.

Savestate settings

Phoenix Award Bios Update

  • Separate savefiles: when enabled, loading/saving states will redirect regular saves to a separate file, as to keep your original save file intact.

Display settings

  • Screen size: sets the window size to an integer size (1x, 2x, 3x, 4x).
  • Screen rotation: rotates the screens, to simulate holding your DS sideways.
  • Mid-screen gap: the space between the screens.
  • Screen layout: how the screens are laid out; Natural keeps them stacked like an actual DS, the other options keep them aligned horizontally or vertically regardless of rotation.
  • Screen sizing: how the window space is distributed; you can choose to keep the screens at the same size or to emphasize one, keeping the other at native resolution. Auto tries to determine the ideal mode based on how the game configures the display.
  • Screen filtering: when enlarging the screens, applies a bilinear filter.
  • Limit framerate: limits the emulator's framerate, typically at 60FPS.

Once melonDS is set up to your liking, well, load a game and enjoy!