1. catlover007

    OP catlover007 Developer
    Developer

    Joined:
    Oct 23, 2015
    Messages:
    551
    Country:
    Germany
    melonDS is a Nintendo DS emulator mainly developed by Arisotura (@StapleButter). It was first ported to the Switch by @Hydr8gon. I'm responsible for several optimisations and the current port. Depending mostly on whether a game utilises the 3D hardware of the DS a lot of games already reach fullspeed without overclocking.

    The last few releases of my continuation where done in Hydr8gon's thread which quickly resulted in a lot of confusion.

    Setup


    For those coming from older versions of my port, using the /melonds directory located at the sd card root is still possible.
    Atmosphere title replacement to launch the hbmenu is the only supported method of running melonDS!

    • Download the latest release from here: https://github.com/RSDuck/melonDS/releases
    • Extract the release onto your sd card, so that there's /switch/melonds folder melonds.nro and some other files inside it.
    • The Nintendo DS BIOS and firmware files (named bios9.bin, bios7.bin and firmware.bin respectively) go into /switch/melonds as well
    • ROM files can be placed anywhere on the sd card
    Release notes


    Release 4:
    I wanted to make this release already multiple months ago, though always something came into my way, whether it was some feature I wanted to finish or later me loosing seeing it as pointless when a Drastic port will happen sooner or later. Thus a lot of smaller things have been accumulating:

    • Fast memory emulation by mirroring virtual memory so that it has the same layout as on the DS. This also should resolve all previous issues with Literal Optimisations
    • Start at making geometry submission faster
    • The GUI is now rendered using deko3d instead of OpenGL (using mesa). Deko3d not only has less overhead, but this also reduced the binary size significantly. Special thanks go to fincs and where we're at it also to the the other devkitpro and libnx people like yellows8 and Wintermute!
    • Misc improvements to the GUI (the rom directory isn't hardcoded anymore, a melony color scheme, ...)
    • Better screen layout options
    • Alternative ways to give touchscreen inputs, including my (unironically besides using the real touchscreen) favourite mode: motion control. See the FAQ for more info
    • This isn't really that noteworthy, but in 30 FPS games every second (3D) frame is now skipped automatically
    • A bunch of fixes, optimisations and features I can't remember because I'm too unorganised
    As I've already described in the old thread, sooner or later DSi and wifi support will be added to this port (the first was recently merged into master, the latter is thanks to the improved indirect wifi mode now possible on switch as well). Optimisations to make 3D rendering faster are together with a new GUI on my list as well, but one step at at time.

    FAQ?


    The GUI looks weird, everything's compressed into a small rectangle?

    The GUI consists of multiple windows which can be freely resized and moved. Either use the touchscreen or hold Y while using the left analog stick to move or the "D-Pad" to resize the current windows. Use Y and L or R to cycle to select a window.

    How can the GUI be hidden while playing?

    Press ZL to toggle between hiding and showing it.

    What do the Block Size, Branch Optimisations, Literal Optimisations and Fast Memory settings do?

    Ideally they can stay enabled/at maximum all the time because they enable optimisations beneficial for the performance. But if there's an issue with the JIT recompiler it can be tracked down faster. Only touch them if something unexpected happens and mention which (if any) setting makes a difference in bug reports.

    I want to play with a Flip Grip. Which settings should I use?

    Use the Global Rotation option which rotates the entire GUI. Shout-out here to @uzimakiuchiha who got me a Flip Grip!

    I want to play a game where the DS is held side ways (like e.g. Dr Kawashima's Brain Training), which should I do?

    For this case it's the best to use the Screen Rotation in the Display Settings, once a game is launched (it rotates the buttons as well, as if you're holding the DS that way).

    How can I quickly switch the focussed screen?

    Press down the right stick. There's also an automatic mode where we the main screen is guessed in the display settings.

    How do I use gyro control?

    First enable it in the Navigation window once a game has been started. Both Joy Cons need to be removed. Point the right Joy Con at the bottom screen's center and press ZL and ZR at the same time to set the current orientation as the center. Since this utilises the gyroscope found in the right Joy Con (and not IR like the Wiimote, which gives an absolute position) it's only based on it's rotation, so if you want to move it, you have to recenter it.

    How can I change the access the DS menu (e.g. for changing the system language)?

    Either search for the firmware.bin file in your melonDS folder and start it or uncheck the Boot games directly option, so that every time you open a game, it opens the menu like on a real DS.
     
    Last edited by catlover007, Aug 10, 2020
    Mente, falcorr, Lukeazade and 54 others like this.
  2. iriez

    iriez GBAtemp Advanced Fan
    Member

    Joined:
    Oct 27, 2016
    Messages:
    538
    Country:
    United States
    Hey thanks for carrying the torch! Looks like you have yourself a fine release, congrats.
     
  3. Billy Acuña

    Billy Acuña GBAtemp Psycho!
    Member

    Joined:
    Oct 10, 2015
    Messages:
    3,092
    Country:
    Mexico
    Gonna try this new build, glad you finally made your own thread, hope now melonDS for Switch gets more recognition :D
     
  4. lordelan

    lordelan GBAtemp Psycho!
    Member

    Joined:
    Jan 4, 2015
    Messages:
    4,666
    Country:
    Germany
    I'm glad this isn't dead.
    Do you maintain the libretro core for the Switch as well btw or standalone only?
     
  5. catlover007

    OP catlover007 Developer
    Developer

    Joined:
    Oct 23, 2015
    Messages:
    551
    Country:
    Germany
    the libretro core is maintained by Mats
     
    lordelan likes this.
  6. zenjiki

    zenjiki Advanced Member
    Newcomer

    Joined:
    Feb 13, 2006
    Messages:
    70
    Country:
    United States
    Awesome can't wait to try it, and thanks again for all your hard work! Question @catlover007 , before I know there was a limit to number of games that is shown, is that still the case? I have all my favorite games of all the Nintendo systems in the same folder and just wondering if its time to separate into different folders.
     
  7. whostolemywaffle

    whostolemywaffle GBAtemp Fan
    Member

    Joined:
    Aug 2, 2016
    Messages:
    435
    Country:
    United States
    How well do the generation V games run?
     
  8. ShadowOne333

    ShadowOne333 QVID PRO QVO
    Member

    Joined:
    Jan 17, 2013
    Messages:
    10,155
    Country:
    Mexico
    Awesome news, catlover!
    Glad you're still going forward with this :)

    Do you happen to know how often is the libretro core upstreamed to your latest changes?
     
  9. Chaseroni

    Chaseroni Newbie
    Newcomer

    Joined:
    Jul 18, 2020
    Messages:
    2
    Country:
    United States
    Amazing work on this! Thank you for doing it, sooo many more games are playable now :)
    Is it possible to add the space-between-screens functionality to the libretro core? It works great in the standalone but I don't see it as an option in the core, thanks again!
     
    Cruz8 likes this.
  10. HappehLemons

    HappehLemons GBAtemp Regular
    Member

    Joined:
    Jan 24, 2011
    Messages:
    100
    Country:
    United States
    Thanks for all the work on this! What are some of the more problematic game currently? Is it just mostly anything that uses the 3D functionality?
     
  11. Asia81

    Asia81 GBAtemp Guru
    Member

    Joined:
    Nov 15, 2014
    Messages:
    6,029
    Country:
    France
    Is there a way to get xBRZ filter?
     
    Cruz8 likes this.
  12. KurtKocaine

    KurtKocaine Member
    Newcomer

    Joined:
    Jan 7, 2017
    Messages:
    45
    Country:
    United States
    Hopefully my suggestion to use Fossil Fighters as benchmark for 3D graphics pulled through :^) Downloading rn
     
  13. catlover007

    OP catlover007 Developer
    Developer

    Joined:
    Oct 23, 2015
    Messages:
    551
    Country:
    Germany
    it now shows as many games as their names fit into your Switch's RAM, so a lot, though there's no search feature (though atleast they're sorted alphabetically now).

    can you atleast have the decency of writing Pokemon generation 5 games? Sometimes I understand desmume developers with their contempt against Pokemon. There are so many other good games out there and so many people are thinking about nothing but Pokemon. And that comes from someone who likes Pokemon!

    /rant off :lol: please don't take this too seriously, I just had to get that out once. They still need overclocking.

    they're likely waited for the next release, idk I don't have much to do with them

    problematic is pretty much everything which renders a lot of geometry (which sometimes can be surprising as some 2d games use the 3d hardware). But for example 4th gen Pokemon games are already playable (didn't play much, it could be possible that it gets worse later in the game) without overclocking as they're lighter in this department.

    it's on my list, though optimisations and fixes usually have higher priority

    tbh I haven't tried Fossil Fighters once, though I doubt if the game improved if it's bottlenecked by the 3d renderer which I haven't really touched since the last version.

    Though what I did do was to implement alternative options to give touchscreen input
     
    Tyvar1, mattyxarope, zenjiki and 4 others like this.
  14. Hakata

    Hakata Newbie
    Newcomer

    Joined:
    Jul 19, 2020
    Messages:
    4
    Country:
    Japan
    Thanks for all the work! I am not a native speaker, so hope you could understand what I am going to say:D

    I tried several games on my device hacked by SXCORE Chip. Unfortuntely none of them could be loaded. I did put the required bios files in the right folder and even verified CRC checksum. Also I tried lanuching the app in both applet mode and photo album, but nothing changed.

    Whenever I hit the Load button, It just either stuck or crashed. I have no idea what I have missed. Is there a compatability issue with the new hacking chip? Please help me...
     
    Last edited by Hakata, Jul 19, 2020
  15. Rickyman

    Rickyman Member
    Newcomer

    Joined:
    Jun 19, 2018
    Messages:
    32
    Country:
    Spain
    Thanks for all the work done, apart of all the optimizations that you have made, i wanted to point the incredible good work done with the touchscreen input, it is now possible to play metroid prime hunters on an ds emulator easily and comfortable with the offset mode (hope to see it with the mouse mode on pc too!) and specifically with the motion mode.
    Cheers!
     
  16. Rickyman

    Rickyman Member
    Newcomer

    Joined:
    Jun 19, 2018
    Messages:
    32
    Country:
    Spain
    This also happened to me the first time i tried it (I am using Atmosphere), but when i tried another game it worked fine, i tried to reproduce it with the game it crashed before to see if the problem was the file but now it works fine, so i am not sure what was the cause.
    Also, if i am not wrong launching throught the album is called applet mode, so i guess what you was trying to say is that apart of launching throught album you tried throught a game (which probably you need to)
     
  17. spyro88

    spyro88 Advanced Member
    Newcomer

    Joined:
    Aug 27, 2018
    Messages:
    81
    Country:
    Portugal
    Thank thanks alot .. great work man ... but one question how can use cheat file ?
     
  18. NANASHI89

    NANASHI89 GBAtemp Addict
    Member

    Joined:
    May 3, 2012
    Messages:
    2,268
    Country:
    United States
    Can you use cheat files?
     
  19. itsmefloflo

    itsmefloflo Member
    Newcomer

    Joined:
    Jul 16, 2018
    Messages:
    34
    Country:
    France
    Hi !

    I have SX OS and i met crash Melonds also. (I use the « Title+R » method to go to homebrew launcher. I noticed that when i disable fast memory emulation option, the game doesn’t crash anymore but i loose an interesting option. Thanks by advance if someone has a workaround or an explanation. By the way, catlover your emulator is awesome ! Thanks !
     
    sorabora likes this.
  20. Zkajavier

    Zkajavier GBAtemp Regular
    Member

    Joined:
    Sep 13, 2009
    Messages:
    192
    Country:
    Costa Rica
    I love you so much catlover007, I'm so happy you didn't let this die. Thank you!
    This thing runs amazingly well for most games and I'll be definitely following its development.
     
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - continuation, melonDS, Switch