melonDS emulator version 1.0 RC released, adds multi-window support and more

melon.png

Popular Nintendo DS emulator melonDS has seen some major additions in a brand new release. Making the milestone jump from the previous v0.9.5, this new version is v1.0, though it has the caveat of being a "Release Candidate", according to the developer, as the variety of changes might bring about unforeseen bugs. A lot of notable changes have been made--namely a revamped OpenGL renderer that balances accuracy with upscaling, proper LAN local multiplayer, multi-window support, and more. A detailed breakdown of all these changes can be viewed on the official melonDS page, with the 1.0 RC release download link.

melonDS 1.0 RC, there it is!


We have finally released a brand new version of melonDS: 1.0 RC.

A bit of a disclaimer about this unusual version number: due to the large number of changes since 0.9.5, this version is a Release Candidate. We have done a thorough round of testing and bugfixing, but there is always the chance that further issues went unnoticed. This release will be the occasion to catch them and fix them for the actual, proper 1.0 release.

Now, the biggest changes this release brings:


Core refactor

This is the biggest change by far. We have undertaken a large and ambitious refactor of the melonDS core, in order to make it possible to run multiple instances of the emulator within one single process.

What does this change mean for end users? It means that local multiplayer is easier to deal with, since we no longer have to deal with inter-process communication. It also means that depending on your platform, local multiplayer may be more performant now.

However, much like in 0.9.5, this multiplayer mode only works when running multiple instances on the same computer. But we have another ace up our sleeve, which we'll see next.

It's also worth noting that this refactor was partly motivated by the idea of adding netplay support. While I haven't been able to get netplay working yet, the refactor has laid a very important foundation for it. We'll get there, eventually!


LAN support

You might remember LAN multiplayer and the associated betas. This feature has been backported and brought to you proper in this new melonDS release.

This means that you can play local multiplayer games with family or friends over the local network.

Do note, however, that due to the tight timing requirements of the local multiplayer protocol, it requires a pretty good ethernet network to work. Do not expect it to work well over wifi. And, most importantly, do not expect it to work at all over VPN, Hamachi, or any sort of tunnel that goes through the internet. We will not accept issue reports about LAN connection failures that involve tunneling.


OpenGL compute shader renderer

Until now, we had the software renderer and the OpenGL renderer. The software renderer produces very accurate graphics but can't be upscaled. On the other hand, the OpenGL renderer supports upscaling, but it is prone to all sorts of problems and glitches.

So Generic brought us this new OpenGL renderer, which uses compute shaders to closely reproduce the DS GPU's rasterization algorithms on your computer's GPU.

This renderer brings together the best of both worlds: a graphical output that is very accurate, but at the same time, support for upscaling and other improvements.

The old OpenGL renderer will still be around, along with this new one. You can select them in the 3D settings dialog.


Software renderer improvements

Speaking of renderers, Jakly has been at work researching the intricacies of the DS GPU far more in depth than I have. She has committed several accuracy fixes and improvements to the software renderer, some of which might make a big difference depending on the game.

Jakly is also currently fighting our worst enemy, the Horseman of Timings. Compared to this, fighting the Horseman of Wifi was a walk in the park. But she's been doing some impressive work figuring out the intricacies of the DS's timing model, and might finally deal with a lot of the old timing issues. So stay tuned!


Multi-window support

This has been a long requested feature: the ability to split melonDS across two windows, or more. And it is finally here.

The way this feature works is quite similar to DeSmuME: you can open a new emulator window (View -> Open new window), which will function like the initial window. Then the layout settings can be set per window, allowing you to have one screen per window, but also many other possibilities. melonDS also remembers how many windows you had open and how they were configured.

We have also moved the layout settings to a separate View menu to make things clearer.

This is a first iteration of this feature, so it may get refined based on user feedback.


R4 Revolution and M3 Simply support

Until now, the way DLDI support was done in melonDS was pretty high-level. It was implemented through a custom DLDI driver that melonDS patches in, and a special cart class (CartHomebrew) is used, which can interface with melonDS's DLDI driver. While it isn't too far off reality, and works just fine, it is an entirely custom solution not based on any existing hardware.

asiekierka has been working on emulating specific flashcart models: the R4 Revolution and the M3 Simply. This makes it possible to, say, run these flashcarts' original menus. Can be a nice touch!

It's also pretty nice to have a reference as to how that hardware works.


Many other fixes

There are way too many fixes, changes, and general improvements to list here. You can find them in the changelog, for the most part.


Nightly builds

I plan to open up the section for nightly builds on the download page soon. I will keep you informed.



You will find this release on our downloads page, as usual. Enjoy!

:arrow: Source
:arrow: Download
 

raxadian

Well-Known Member
Member
Joined
Nov 10, 2018
Messages
4,685
Trophies
1
Age
41
XP
4,948
Country
Argentina
  • Like
Reactions: 4d1xlaan

4d1xlaan

Well-Known Member
Member
Joined
Apr 21, 2024
Messages
1,015
Trophies
0
XP
1,098
Country
United States
I don't think there is a single download play mode content that cannot be done with just playing two or more copies of the same DS game online or in wireless connection with each other.

If there is even a single game tbat has content exclusive for download play that doesn't exist in a two player or more online mode then tell DidYouKnowGaming so they make a video about it!
mario kart ds lets you play as shy guy if you join with download play, it's not much but it's something

Still no RetroAchievements support :\
Apparently the dev doesn't "get the point" of RetroAchievements (this GitHub issue comment) but somehow emulating a flashcart firmware makes more sense?
I mean, good job quoting a 3 year old comment on this I guess
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Faust03 @ Faust03: oh