melonDS is a Nintendo DS emulator.
Website: https://melonds.kuribo64.net/
melonDS' FAQ: https://melonds.kuribo64.net/faq.php
Github: https://github.com/melonDS-emu/melonDS
Compatibility List: https://melonds.kuribo64.net/board/forum.php?id=3
This page is for melonDS, a standalone NDS emulator. This page is not for the melonDS RetroArch core. For more information on RetroArch and the melonDS RetroArch core, visit the RetroArch Page.
melonDS Table of Contents
Getting Started with melonDS
melonDS is a fairly straight-forward emulator to set up. Place your ROMs in Emulation/roms/nds
. No additional setup is required. Read the Configuration section to learn more about melonDS and its folder locations. BIOS are optional for both the Nintendo DS and Nintendo DSI.
To launch your ROMs in game mode, use Steam ROM Manager and use one of the following parsers to play your NDS ROMs:
EmulationStation-DE
Nintendo DS - melonDS
Emulators
melonDS Configuration
- Type of Emulator: Flatpak
- Config Location:
/home/deck/.var/app/net.kuribo64.melonDS
- ROM Location:
Emulation/roms/nds
- BIOS Location:
Emulation/bios
- Optional BIOS (Nintendo DS):
bios7.bin
,bios9.bin
,firmware.bin
- Optional BIOS (Nintendo DSI):
dsi_bios9.bin
,dsi_bios7.bin
,dsi_firmware.bin
,dsi_nand.bin
- Optional BIOS (Nintendo DS):
- Saves:
Emulation/saves/melonds/saves
- Save States:
Emulation/saves/melonds/states
- Cheats Location:
Emulation/storage/melonds/cheats
Note: ~/.var
is an invisible folder by default. In Dolphin (file manager), click the hamburger menu in the top right, click Show hidden files
to see these folders.
Works With
- Steam ROM Manager
- EmulationStation-DE
melonDS Folder Locations
These file locations apply regardless of where you chose to install EmuDeck (to your internal SSD, to your SD Card, or elsewhere). Some emulator configuration files will be located on the internal SSD as listed below.
$HOME
refers to your home folder. If you are on a Steam Deck, this folder will be named /home/deck
(you will likely not see deck
in the file path when navigating using the file manager).
Paths beginning with Emulation/..
correspond to your EmuDeck install location. If you installed on an SD Card, your path may be /run/media/mmcblk0p1/Emulation/roms/..
. If you installed on your internal SSD, your path may be /home/deck/Emulation/roms/..
Note: Folders with a .
(.var
, .local
, .config
, etc.) at the beginning are hidden by default. In Dolphin (file manager), click the hamburger menu in the top right, click Show Hidden Files
to see these folders.
$HOME/.var/app/net.kuribo64.melonDS
net.kuribo64.melonDS
├── cache
├── config
│ ├── kdeglobals
│ ├── melonDS
│ │ ├── melonDS.ini
│ │ ├── melonDS.ini.bak
│ │ ├── timewarp.mln
│ │ └── wfcsettings.bin
│ ├── pulse
│ │ └── cookie
│ ├── QtProject.conf
│ └── user-dirs.dirs
└── data
├── user-places.xbel
├── user-places.xbel.bak
└── user-places.xbel.tbcache
How to Download melonDS (Standalone)
- In Desktop Mode, open the EmuDeck application
- Click the
Manage Emulators
button - Click
melonDS
- Click
Install
- melonDS (Standalone) will be installed
- To open melonDS in Desktop Mode, see How to Launch melonDS in Desktop Mode
To use melonDS (Standalone) to launch your ROMs in Game Mode:
- Use Steam ROM Manager and select the
Nintendo DS - melonDS
parser- The RetroArch parser is named:
Nintendo DS - Retroarch - melonDS
- The melonDS (Standalone) parser is named:
Nintendo DS - melonDS
- The RetroArch parser is named:
- Use Steam ROM Manager and select the
EmulationStation-DE
parser- To switch to melonDS (Standalone) in EmulationStation-DE, see EmulationStation-DE: How to Select a Different Emulator for a System
No additional setup is required with Steam ROM Manager and EmulationStation-DE. If you do not have the latest Steam ROM Manager configurations, either run a Custom Reset
or click the Reset configuration
button on the Steam ROM Manager page within the EmuDeck application.
How to Update melonDS
How to Update melonDS
- Update through
Discover
(Shopping bag icon) - Through the
Update your Emulators & Tools
section on theManage Emulators
page in theEmuDeck
application
How to Launch melonDS in Desktop Mode
How to Launch melonDS in Desktop Mode
- Launch
melonDS
from the Applications Launcher (Steam Deck icon in the bottom left of the taskbar) - Launch the script from
Emulation/tools/launchers
,melonds.sh
- Launch the emulator from
Steam
after adding it via theEmulators
parser inSteam ROM Manager
melonDS File Formats
- .nds
- .app
melonDS Hotkeys
melonDS comes with a Steam Input profile for Hotkeys. Activate the Steam Input profile by clicking the Game Controller
icon in Game Mode
, change the template to Emudeck - melonDS
. The hotkeys below can only be used if you have the Steam Input profile active.
Long Press to activate hotkeys on the left trackpad radial menu.
Hotkey | melonDS |
---|---|
Full Screen | Left Trackpad Radial Menu or Tilt Right Joystick Left |
Save State Menu | Left Trackpad Radial Menu |
Load State Menu | Left Trackpad Radial Menu |
Pause | Left Trackpad Radial Menu |
Cheats | Left Trackpad Radial Menu |
Microphone | Left Trackpad Radial Menu or R3 |
Close/Open Lid | Left Trackpad Radial Menu or L3 |
Swap Screens | Left Trackpad Radial Menu or R2 |
Reset | Left Trackpad Radial Menu |
Toggle FPS Limit | Tilt Right Joystick Right |
Note:
melonDS Tips and Tricks
How to Configure Multiplayer
This section is strictly referring to local multiplayer. melonDS multiplayer on the Steam Deck can only be done in Desktop Mode.
- In Desktop Mode, open melonDS
- Click
System
, clickMultiplayer
,Launch new instance
- On each window of melonDS, click
Config
,Input and hotkeys
- In the drop-down menu to the right of
Joystick
, select your controller- Steam Deck/Player 1:
Microsoft X-Box 360 pad 0
- Player 2:
Microsoft X-Box 360 pad 1
- Player 3:
Microsoft X-Box 360 pad 2
- Player 4:
Microsoft X-Box 360 pad 3
- Steam Deck/Player 1:
- Open the game in each melonDS window and you will be able to play multiplayer
You can determine which melonDS window corresponds to what player by looking at the menu bar at the top. Each new melonDS window will have a corresponding (#)
.
How to Use Cheats
Note: melonDS does not currently support importing cheats from a database file.
How to Enable Cheats in melonDS
How to Download the Cheats Database
- Open https://db.universal-team.net/ds/ndsi-cheat-databases, right click
cheats.xml
, and clickSave As
- Place it in
Emulation/storage/melonds/cheats
- This folder placement is optional, you may place it wherever you want
- To view, right click
cheats.xml
, open with a text editor of your choice
How to Use the Cheats Database
Note: It's recommended you do this in Desktop mode so you can easily copy from the cheats database into MelonDS. After adding cheats, you can use MelonDS in Game Mode.
- Open the
cheats.xml
you downloaded from theHow to Download the Cheats Database
section CTRL
+F
the game you are adding cheats to- Copy the blocks of alphanumerical strings between the two
<codes> <codes>
for your respective cheat - Open MelonDS
- Open a ROM
- Click
System
at the top - Click
Setup cheat codes
- Create a
New Category
, you may name it whatever you would like - Click
New AR Code
- Match the name of the AR Code to the cheat you located in Step 3 * The name is flexible, you may name it whatever you would like
- Paste the code you copied from Step 3, it will appear as red text
- Format the cheat so there are two blocks of code per line
- Some cheats are automatically activated, others will require a button combo. Look at the
cheats.xml
file to see if a button combo is required to activate your cheat
How to Set Up DSIWare
The Nintendo DSI requires DSI specific BIOS. Place all of the files from the list below directly in Emulation/bios
.
dsi_bios9.bin
dsi_bios7.bin
dsi_firmware.bin
dsi_nand.bin
Note:
- The BIOS must be named exactly as above. BIOS with any deviations from the above will not work. Make sure you have the proper casing, characters, and spelling.
- BIOS must be placed in
Emulation/bios
. If you create a sub-folder, the BIOS will not be picked up and Nintendo DSI games will not work.
Preface: Generally, DSIWare games are named 00000000
with no file extension. This section assumes you have these types of DSIWare ROMs.
- Place your DSI BIOS in
Emulation/bios
- Place your DSIWare ROMs in
Emulation/roms/nds
- Right click the DSIWare ROM in
Emulation/roms/nds
, clickRename
, rename it from00000000
toGAMENAME.app
- Replace
GAMENAME
with the name of the DSIWare game - For example:
- Original file name:
00000000
- Updated file name:
X-Scape.app
- Original file name:
- Replace
- In Desktop Mode, open melonDS
- At the top, select
Config
,Emu Settings
- On the
General
tab, change theConsole type
toDSi (experimental)
- On the
DS-mode
tab, checkUse external BIOS/firmware files
, close out of this menu - At the top, select
System
,Manage DSi titles
- On the
DSi Title Manager
screen, selectImport title
- Select your
GAMENAME.app
as theExecutable
- Under
Metadata
, selectDownload from NUS
, close out of this menu - Select
File
,Boot Firmware
- Select your newly-installed DSiWare game and start playing
Steam ROM Manager and EmulationStation-DE
Both EmuDeck's Steam ROM Manager parser for melonDS (Standalone) and EmulationStation-DE support the .app
file extension. As long as your DSIWare ROMs are in Emulation/roms/nds
, you may use either option to play your DSIWare ROMs in Game Mode.
Do note that your ROM may not have art on SteamGridDB or metadata on EmulationStation-DE's scraping websites. Follow the links below if you would like to add art or metadata to one of these websites.
- Steam ROM Manager
- SteamGridDB
- You may request a game page here: https://www.steamgriddb.com/request-game
- You will need to login to view this page
- You may request a game page here: https://www.steamgriddb.com/request-game
- SteamGridDB
- EmulationStation-DE
How to Play Nintendo DS Games in Book Mode
A handful of Nintendo DS games require portrait orientation. For these games, you will need to rotate the Steam Deck screen in order to play them. Fortunately, it's a simple process.
Here's How
- In Game Mode, select the
EmuDeck - MelonDS
profile if you are playing a game directly from Game Mode or theEmuDeck - EmulationStation-DE
profile if you are playing through EmulationStation-DE - Open the game, use the Steam Input profile and select the
Fullscreen
hotkey - At the top, press
Config
,Screen Rotation
,270
How to Customize the Screen Layout
By default, EmuDeck configures melonDS' screens to use a hybrid layout, meaning there is a large top screen on the left side of the screen and a mini top and bottom screen of the Nintendo DS on the right. If you would rather a different layout, it is fairly easy to customize.
Here's How
- In Game Mode, select the
EmuDeck - MelonDS
profile if you are playing a game directly from Game Mode or theEmuDeck - EmulationStation-DE
profile if you are playing through EmulationStation-DE - Open the game, use the Steam Input profile and select the
Fullscreen
hotkey - At the top, press
Config
, and useScreen size
,Screen rotation
,Screen layout
,Screen sizing
, andAspect Ratio
to customize your layout
The Screen layout
is where you can find the Hybrid layout
option. Here, you can swap to Natural
, Vertical
, Horizontal
, and Hybrid
.
How to Reset to EmuDeck Defaults
If you configured the settings and you decide you would like to reset to EmuDeck's defaults, you can do so by following the below:
- Open the EmuDeck application in Desktop Mode
- Click the
Manage Emulators
page - Click
melonDS
and clickReset Configurations
How to Back Up your Screen Layout Configuration
- In Desktop Mode, open
/home/deck/.var/app/net.kuribo64.melonDS/config/melonDS
~/.var
is an invisible folder by default. In Dolphin (file manager), click the hamburger menu in the top right, clickShow hidden files
to see these folders
- Open
melonDS.ini
in Kate or a text editor of your choice -
Copy the following section to another file:
WindowWidth=1280 WindowHeight=771 WindowMax=0 ScreenRotation=0 ScreenGap=0 ScreenLayout=3 ScreenSwap=0 ScreenSizing=3 IntegerScaling=0 ScreenAspectTop=4 ScreenAspectBot=4
-
Back up this file to a secure location. If/when your melonDS configs are reset on an EmuDeck update, you may paste this section into the
melonDS.ini
to restore your custom layout
How to Roll Back melonDS to an Older Version
- In Desktop Mode, open
Konsole
- To see a list of prior versions of the emulator, type:
flatpak remote-info --log flathub net.kuribo64.melonDS
- Each version will have a long accompanying alphanumeric string (the “commit” code). Copy the string for the version you want to downgrade to.
- To downgrade to the version you want:
flatpak update --commit=put_commit_code_here net.kuribo64.melonDS
- Replace
put_commit_code_here
with the actual code you located in Step 2. - If this line does not work, you may need to type:
sudo flatpak update --commit=put_commit_code_here net.kuribo64.melonDS