melonDS v0.8.1 Released - High Resolution Rendering Now Possible!

melonDS v0.8.1 Released - High Resolution Rendering Now Possible!


Hydr8gon has unofficially released a new version melonDS which is a work in progress very accurate Nintendo DS emulator for your homebrew enabled Nintendo Switch hybrid video gaming console. melonDS has been updated to include the recent texture enhancement and up-scaling that the main branch recently added allowing you to play your Nintendo DS games in high resolution on your Switch!

Quote:
Well I posted this on Discord a few days ago so I might as well post it here too. I don't want y'all thinking the project is dead or anything! Here's a build of melonDS 0.8.1 with hardware renderer and upscaling. Unfortunately the polygon issue is still present, so I won't be making it an official release just yet. I have a potential lead on the problem but I've been a bit of a mess lately and haven't had a chance to properly look into it. Everything else works though, and you can always stay on the software renderer if you need to (though screen filtering had to be removed due to the new display method).





Description

melonDS is a work in progress very accurate Nintendo DS emulator for your homebrew enabled Nintendo Switch hybrid video gaming console. melonDS allows you to enjoy your collection of Nintendo DS games on your modern video gaming console. melonDS requires you to dump the BIOS from your original Nintendo DS or Nintendo DS Lite console to use.

Instructions

How to use

melonDS requires BIOS/firmware copies from a DS. Files required:

bios7.bin, 16KB: ARM7 BIOS
bios9.bin, 4KB: ARM9 BIOS
firmware.bin, 128/256/512KB: firmware

Firmware boot requires a firmware dump from an original DS or DS Lite. DS firmwares dumped from a DSi or 3DS aren't bootable and only contain configuration data, thus they are only suitable when booting games directly.

Possible firmware sizes

128KB: DSi/3DS DS-mode firmware (reduced size due to lacking bootcode)
256KB: regular DS firmware
512KB: iQue DS firmware

DS BIOS dumps from a DSi or 3DS can be used with no compatibility issues. DSi BIOS dumps (in DSi mode) are not compatible. Or maybe they are. I don't know.

As for the rest, the interface should be pretty straightforward
Credits

Martin for GBAtek, a good piece of documentation
Cydrak for the extra 3D GPU research
All of you comrades who have been testing melonDS, reporting issues, suggesting shit, etc

Changelog

v0.8.1

* Well I posted this on Discord a few days ago so I might as well post it here too. I don't want y'all thinking the project is dead or anything! Here's a build of melonDS 0.8.1 with hardware renderer and upscaling. Unfortunately the polygon issue is still present, so I won't be making it an official release just yet. I have a potential lead on the problem but I've been a bit of a mess lately and haven't had a chance to properly look into it. Everything else works though, and you can always stay on the software renderer if you need to (though screen filtering had to be removed due to the new display method).

v0.7.4 (release 2)

-Fixed crappy audio in docked mode
-Improved the UI font
-Added new UI selector, styled like the one from the Switch UI
-Added complete UI touch control, including scrolling and button presses when touching the labels in the corner
-Added support for mapping multiple controls to a single button, as well as clearing mappings
-Added a frameskip setting
-Fixed overclock setting on Switch system 8.0.0

Because of the changes to the config system, you should delete your melonDS.ini file before using this version to avoid issues!

v0.7.4

-Updated to melonDS 0.7.4
-Added continuous menu scrolling on input hold
-Improved audio quality in docked mode
-Overclocking now persists across docked/undocked switching
-Added ROM and folder icons for the file browser
-Added input and hotkey remapping

v0.7.3

-Updated to melonDS 0.7.3
-Only initialize microphone when it's selected as the input device (if microphone causes crashes for you, turning it off should fix it)
-Fix save state on the pause menu

v0.7.2

-Updated to melonDS 0.7.2
-Removed temporary timing hack
-Optimized menus
-File browser now remembers the last folder you launched a ROM from
-Added option to adjust audio volume
-Added microphone input (if you have a headset with a microphone connected) or white noise input

v0.7.1

The biggest change here is that the core timings were entirely renovated to try being closer to the hardware.

First of all, after several days of gruelling testing and guesswork, we were finally able to understand the GX timings, and emulate them properly for the first time. But, as we weren't gonna stop there, we also renovated the timings for DMA and memory accesses, so that both of them are closer to their hardware counterparts. DMA and ARM7 should be pretty close to perfection now, ARM9 less so but it's still more realistic.

We have also been fixing the emulator's main loop, so that the ARM9, ARM7 and system clocks shouldn't desync anymore.

All of this, with a few added optimizations, fixes a whole bunch of issues, from things flickering to audio crackling to games outright going haywire (hi RaymanDS). Your games are now running better than ever!

... or not. That's also the point of the 0.7.1 release, I want to hear about any issues caused by the timing renovation, so we can get them fixed for the epic 0.8.

We already have one such issue, all of this is causing sprite flickering in Pokémon Platinum. Quick attempts at fixing this went nowhere, so we will have to investigate this proper.


There's also a number of misc fixes. For example, the 3D glitches that showed up in Mario Kart DS were fixed, but there's already a lengthy post about this.

There's a small fix to 2D windows, nothing really noteworthy, just fixes a game that was setting up backwards windows.

The input system no longer requires a dpad to be mapped to directional keys for joystick axes to work.

The code that looks for local files (melonDS.ini, BIOS, firmware...) was modified to explicitly check the directory melonDS is in, if that is not the same as the working directory. So in these cases it will no longer fail to find its files. Also, if melonDS.ini is absent, the preferred directory for creating it is the directory melonDS is in.

And, finally, we finally got rid of the old savemem type autodetect code. Considering its complexity and the amount of failures, it was a trainwreck. So instead, now, melonDS will pull that information from the provided ROM database (romlist.bin).

Edit- If your game is still failing to save: you might have an old failed save file lying around, try deleting it. When a save file is present, melonDS determines the savemem type from the file size, so if a file is present with a wrong size, you will have to delete it.

v0.5.2

-Fixed crash when pressing R with no savestate
-The emulator now has time to finish up before exiting, ensuring savestates don't get corrupted

v0.5.1

-Fixed crappy sound output

Notes:
If sound is still crackly the game probably isn't running full speed!

v0.5

-Added Switch CPU overclocking; default off (1020 MHz), max 1785 MHz
-Added framerate cap to prevent games that now reach full speed from going too fast
-Somewhat fixed crappy audio (no longer choppy at full speed, but still crackles)

Links & Downloads

https://github.com/Hydr8gon/melonDS/releases/tag/0.7.4-2

Post a Comment

0 Comments