Emulation Homebrew melonDS for Switch — continuation part 2

melonDS is obsolete and its development is no longer ongoing, but in return we have DrasticDS from Nagaa which is spectacular.


 
  • Like
Reactions: LordCha
iirc Drastic cant run dsiware at all.
MelonDS for switch is based on a quite old version, but already includes some preliminary dsi support, so it has some use case.
 
Does anyone know if melonDS for modded unpatched nintendo switch could theoretically support Pokéwalker connectivty by using the right Joy-con IR? I have an original Pokéwalker since I was 10 years when I first got Pokémon Soulsilver in August 2010 for my birthday and it still works to this day so Im interested to see if anyone can integrate the Pokéwalker functionality with the right joy-con that can connect to melonDS formodded nintendo switch?
bro, nobody will ever do this. it would require an insane level of effort, its not possible, forget about it
 
New version came.
1790370011454.png

I hope, maybe specific game saving issue solved(Shin megami stange journey). Latest version didn't hardware save for that game. My 50 hours save on external save file. I want to transfer normal one.
 
  • Like
Reactions: wsdf
It's odd, old version(release 8) is better. New version(ver1.1 rc3) got new menu, many options but didn't read own save slots and slow.

Don't delete old version for now.
 
These issues have already been made very clear in the changelog, such as save-state compatibility, game running speed, etc. I'll paste them again here:

Updated Ver1.1 rc1 (2026-09-22)
Core upgraded from 0.92 to upstream stable 1.1 (b86390e).
Added DSi platform support.
Added direct DSi cartridge boot (including DSi-enhanced cartridges).
Added \"Boot Firmware\" to enter DSi menu and run DSiWare stored in NAND.
Added DSi NAND image and DSi SD card image support.
Separate DSi file directory.
Memory/timing/NWRAM support: ARM9 NWRAM A/B/C and 16MB main memory mapping.
DSP HLE support.
Core additions and improvements — omitted due to the large version/time span, please check the official website.
DSi BIOS directory supported filenames: biosdsi9, bios9i, biosdsi7, bios7i, firmware_dsi, dsi_firmware, dsifirmware, dsfirmware, nand, dsinand, sd, dsisd, dsi_sd, sdcard.bin / .rom (NAND also supports .mmc; SD card also supports .img / .sd / .dmg), case-insensitive; default directory when disabled: sdmc:/switch/melonDS/
DS BIOS directory supported filenames: bios9, biosnds9, bios7, biosnds7, firmware, dsfirmware.bin / .rom, case-insensitive; default directory when disabled: sdmc:/switch/melonDS/
Changing the BIOS directory requires an emulator restart to take effect.
Changing console mode (DS / DSi) requires an emulator restart to take effect.
This version does not support save states created by previous versions. Please save in-game (.sav) and create new save states after launching the game.

Updated Ver1.1 rc2 (2026-09-23)
The DS performance regression has been fixed, but some performance loss remains; overclocking the CPU to 1224 MHz can temporarily alleviate this issue in games of this type.
Fixed DSiWare savestate load slots.

Update Ver1.1 rc3 (2026-09-25)
Ported LAN local multiplayer functionality. Switch can play multiplayer games with PC, and Switch-to-Switch.
It is recommended to use PC as the host and Switch as the client. Using Switch as the host has too much latency; this part has not yet been systematically optimized.
Connection order: you must first open the host-side melonDS and create a room, then open the client-side melonDS and join. LAN multiplayer requires both parties to be on the same LAN, and the router must not have wireless client isolation enabled.
Added RTC chip registers to emulate the DS’s real-time clock state (time, alarms, calibration, etc.).
When external DS firmware is missing, the built-in free firmware will be used. For DSi firmware, the NAND already configured/modified on the PC side can be used to prevent DSi firmware touch functionality from failing (the Switch side currently lacks a firmware settings UI).
By default, WFC libslirp is used in indirect mode to emulate Nintendo Wi-Fi Connection access to the Internet. See below for how it works.
The emulated DS uses ordinary TCP to connect to legacy DS-era servers (AWS). These contain no Switch identity information at all (no device certificate, and it is not the Switch protocol), and the traffic enters melonDS’s network layer (libslirp). melonDS first checks its own DNS override table (melonDS.ini): if there is a hit, it answers directly in-process (returning the specified IP and not querying upstream). Only unmatched domains are handed to the host system for resolution (the Switch system’s own telemetry-, store-, and account-related domains are still resolved to 127.0.0.1, so the protection remains 100% effective). Override table configuration: key name DNSOverride, format “domain IP”; multiple entries for the same domain = return multiple A records; supports * suffix wildcards. Three entries are built in by default: nas.nintendowifi.net 44.245.86.170, nas.nintendowifi.net 54.201.103.197, conntest.nintendowifi.net 69.25.139.140. Conclusion: only the DS emulated in melonDS can “see” the real IPs of these domains; the system and other applications are still blocked by 90DNS, so there is no console-ban risk.

Update Ver1.1 rc3.1 (2026-09-26)
Fix jit bug.

https://github.com/shooterspps/melonDS/releases/tag/release

This time, aligning from the original core version to the latest upstream core version was overall a successful refactor (from the first melonDS Switch port to the current core-upgraded version, spanning seven years, 0.92–1.1). As for the emulator's speed, at this stage it is actually a secondary concern (although I have already done a round of fixes for the speed regression, and the gap compared with version 0.92 is not as large as one might think). What the Switch version of melonDS should focus on most right now is which serious bugs appear when version 1.1 runs on Switch (I have already fixed a fatal bug caused by JIT). In this regard, we can only rely on feedback to make corrections. I have previously seen players report that Final Fantasy Tactics A2 randomly freezes/crashes during play. In short, if there are problems like this, and they can be reported and reproduced, we can basically find a solution. Also, I need to clarify one point: the code for internal resolution is completely forked from other projects, and I did not participate in the source code in that area.

If you want to roll back, you can use r19.7, the last build of the 0.92 core.
 

Attachments

  • Like
Reactions: cybark and wsdf

Site & Scene News