-
-
Notifications
You must be signed in to change notification settings - Fork 217
MelonDS
THIS WIKI IS NO LONGER MAINTAINED. VISIT https://emudeck.github.io/ FOR THE NEW EMUDECK WIKI.
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 https://github.com/dragoonDorise/EmuDeck/wiki/Retroarch.
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
- 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
- Savestates:
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.
- Steam ROM Manager
- EmulationStation-DE
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
- 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
- .nds
- .app
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.
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
|
For a tutorial on how to select Steam Input Profiles, refer to: https://github.com/dragoonDorise/EmuDeck/wiki/hotkeys#how-to-select-a-steam-input-profile.
Steam Deck Button Layout: https://github.com/dragoonDorise/EmuDeck/wiki/Hotkeys#steam-deck-button-layout
Note: melonDS does not currently support importing cheats from a database file.
- Open melonDS
- Click
System
at the top - Check
Enable cheats
- 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
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- Example:
- 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
- Original:
- Corrected:
- 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
- If you have a game that when extracted is just "00000000", change the extension to ".app" so it becomes "00000000.app". This makes the game recognizable in melonDS.
- Place your DSI BIOS in
Emulation/bios
.- Read: #getting-started-with-melonds for additional detail
- Open melonDS. At the main screen, select Config -> Emu Settings
- In General: Console type -> DSi (experimental)
- In DSi-mode: Point the ARM9 BIOS, ARM7 BIOS, Firmware, and NAND to the files you acquired
- At the main screen, select System -> Manage DSi titles
- In DSi Title Manager: Import title
- Select your 00000000.app as the Executable, then for Metadata select "Download from NUS"
- At the main screen, select File -> Boot Firmware
- Select your newly-installed DSiWare game and start playing
Steam ROM Manager and EmulationStation-DE
- You can rename the ROM file from
00000000.app
toGAMENAME.app
so it can be parsed by Steam ROM Manager and EmulationStation-DE-
SteamGridDB (Steam ROM Manager's source) may not have a game page available for your respective DSIWare game, you can request to create a page here: https://www.steamgriddb.com/request-game
- You will need to login to view this page
- TheGamesDB and ScreenScraper (EmulationStation-DE's sources) may not have a game page available for your respective DSIWare game. You may sign up for either website to create a page
-
SteamGridDB (Steam ROM Manager's source) may not have a game page available for your respective DSIWare game, you can request to create a page here: https://www.steamgriddb.com/request-game
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
Original:
Rotated:
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:
- For example:
-
WindowWidth=1280 WindowHeight=771 WindowMax=0 ScreenRotation=0 ScreenGap=0 ScreenLayout=3 ScreenSwap=0 ScreenSizing=3 IntegerScaling=0 ScreenAspectTop=4 ScreenAspectBot=4 ```
-
- For example:
- 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