Changes

Jump to navigation Jump to search

Nintendo DS emulators

1,457 bytes added, 22 May
Undo revision 88548 by Ahayri (talk)
|discontinued = 2013
|predecessor = [[Game Boy Advance emulators|Game Boy Advance]]
|successor=[[Nintendo 3DS emulators|(new) 3DS family]]
|emulated = {{✓}}
}}
{{for|other emulators that run on NDS hardwarethe Nintendo DS|Emulators on DS}}
The '''[[wikipedia:Nintendo DS|Nintendo DS]]''' (NDS) is a handheld console produced by Nintendo and released on November 21, 2004, and had 2 ARM CPUs (ARM9 and ARM7) with 4 MBs of RAM and was priced at {{Inflation|USD|149.99|2004}}. The main selling point was the use of dual screens for gameplay, with one being a touchscreen. It is the only console to have come close to the [[PlayStation 2 emulators|PlayStation 2]] in lifetime sales (154.02 million units), as a result of attracting a large number of casual players, and even non-gamers, into the gaming community.
 
;Remember, certain titles such as [[Wikipedia:Category:Nintendo_DSi_games|DSi retail]] and [[Wikipedia:List_of_DSiWare_games_and_applications|DSiWare]] games are exclusive to the DSi. Make sure your chosen emulator [[#Hardware_features_and_accessories|supports these variations (see "DSi exclusive features" section)]] if you want to play them.
==Emulators==
<div style="maxoverflow-x:auto;width:100%; overflow:auto;">{| class="wikitable" style="text-align:center;width:100%"
! scope="col"|Name
! scope="col"|Platform(s)
! scope="col"|Latest Version
! scope="col"|'''[[#Nintendo DSi|DSi]]'''
! scope="col"|[[#Enhancements|Enhancements]]
! scope="col"|[[#Hardware_features_and_accessories|Hardware features<br/>and accessories]]
|[[melonDS]]
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
|Dev Builds<ref group=N>[https://nightly.link/melonDS-emu/melonDS/workflows/build-windows/master/melonDS-windows-x86_64.zip Windows], [https://nightly.link/melonDS-emu/melonDS/workflows/build-ubuntu/master/melonDS-ubuntu-x86_64.zip Ubuntu], [https://nightly.link/melonDS-emu/melonDS/workflows/build-macos-universal/master/macOS-universal.zip macOS-universal]</ref><br/>[http://melonds.kuribo64.net/downloads.php {{MelonDSVer}}]<br/>[https://buildbot.libretro.com/nightly/ ''libretro core'']<ref group=N name=melonDSRA>Similar to Dolphin, PPSSPP and Citra libretro cores, the standalone version of melonDS is highly recommended over the libretro core as the libretro core version is outdated specifically two versions out of date (still on 0.9.3), and the generation 5 Pokemons are broken. If you turn on C-Gear, after a few minutes you'll be unable to save. [https://github.com/libretro/melonDS/issues/179#issuecomment-1407488464 '''You also can't use any wifi features'''] or do in game trades either or the game will freeze.</ref>
|{{✓}} ||{{~}} ||{{~}} ||[https://melonds.kuribo64.net/board/forum.php?id=3 ?] ||{{✓}} ||{{✓}} ||{{✓}}
|-
|{{✗}} ||{{~}} ||{{~}} ||? ||{{✓}} ||{{✓}} ||{{✓}}
|-
|[[BizHawk]]<abbr title="Uses br/><small>(melonDS 0.9.5 core for nintendo DS and DSi emulation, mGBA or VBA-Next cores for Game Boy Advance emulation">*)</abbrsmall>
|align=left|{{Icon|Windows|Linux}}
|[https://gitlab.com/TASVideos/BizHawk/-/pipelines Dev builds]<br/>[http://tasvideos.org/BizHawk/ReleaseHistory.html {{BizHawkVer}}]
|align=left|{{Icon|Android|Pandora|Pyra}}
|[https://play.google.com/store/apps/details?id=com.dsemu.drastic&hl=en_US&gl=US {{DraSticVer}}]<br>[https://pyra-handheld.com/repo/apps/32 0.1 Pyra]
|{{✗}} ||{{?}} ||{{?}} ||[https://pandorawiki.org/DraStic_Compatibility_List 68%<br/><small> 49 out of 73 reported titles (Pandora) </small>]<br />[https://xdaforums.com/t/drastic-ds-updated-to-v2-1-5-1a-xplay-compatibility-list-over-100-games-playable.2396919/ 88%<br/><small> 127 out of 145 reported titles (Android) </small>] ||{{~}} ||{{✓}} ||{{✓}}
|-
|[[melonDS]]<small> (unofficial)</small><br/><small>[https://docs.libretro.com/library/melonds/ melonds_libretro]</small>
|align=left|{{Icon|Android|iOS}}
|[https://github.com/rafaelvcaetano/melonDS-android git]<br/>[https://play.google.com/store/apps/details?id=me.magnum.melonds 1.89.03]<br/>[https://buildbot.libretro.com/nightly/ libretro core]<ref group=N name=melonDSRA></ref>
|{{✓}} ||{{~}} ||{{~}} ||? ||{{✓}} ||{{✓}} ||{{~}} <small>(WIP)</small>
|-
|[[Delta]]
|align=left|{{Icon|iOS}}
|[https://apps.apple.com/us/app/delta-game-emulator/id1048524688 AppStore]<br/>[https://github.com/rileytestut/Delta git]
|{{✗}} ||{{?}} ||{{?}} ||? ||{{✓}} ||{{✓}} ||{{~}}
|-
|-
|[[NooDS]]
|align=left|{{Icon|Switch|Vita|WiiU}}<br/>{{Icon|PSP}}|[https://github.com/Hydr8gon/NooDS git]<small> (Switch/Vita/WiiU)</small><br/>[https://github.com/Xiro28/NooDS_PSP git] <small>(PSP port)</small>
|{{✗}} ||{{✗}} ||{{✗}} ||? ||{{✓}} ||{{✓}} ||{{~}} <small>(WIP)</small>
|-
|[[DeSmuME PSP]]
|align=left|{{Icon|PSP}}
|[https://cdn.discordapp.com/attachments/590011753849421846/870274164748079104/desmume_psp_4.zip V4][https://github.com/Xiro28/DeSmuME-PSP git][https://github.com/Xiro28/desmume_psp_experimental Exp.DesmumePSPExperimental Experimental]
|{{✗}} ||{{✗}} ||{{✗}} ||[[DeSmuME PSP|26%<br/><small>16 out of 63 reported titles </small>]] ||{{✓}} ||{{✓}} ||{{~}}
|-
;[[DeSmuME]]
:DeSmuME has had significant improvements since 2018; new features include less CPU/GPU resource usage and high-resolution 3D rendering, and Wi-Fi emulation has been reintroduced in the latest builds. v0.9.13 from May 2022 is the first "Stable" build in over 7 years and is highly recommended over all previous builds (though dev builds are also generally very usable). [[OpenEmu]] uses a shallow fork of the v0.9.11 build and should be avoided as well.
 
;[[DraStic]]
:A payware, (currently) closed-source emulator for [[Android emulators|Android]] devices that can run games at a decent speed even on potato phones. It's on par with (or in some cases better than) DeSmuME, and emulating it through BlueStacks on PC may actually be a viable and fast alternative aside from a slight input delay. Some rumors have spread around that the developers deliberately put in issues to mess with pirated unofficial copies, though this is considered unsubstantiated. At the very least, you shouldn't expect any support from Exophase and company if you use a pirated unofficial copy, though it . It is available for free on the Raspberry Pi and Odroid via RetroPie, and runs relatively well there: [https://wwwyoutu.youtube.combe/watch?v=715kg1-hmxA]. As of March 5, 2024, due to yuzu lawsuits mainly focused on the Zelda franchise, the creator made it free and plans on open sourcing the code.
;[[No$|No$GBA]]
:Focuses on speed, and has major compatibility issues and glitches as a result. Because it was initially a GBA emulator, the DS' 3D features are still very poorly handled. '''It's a good option for low-end machines, but don't expect a lot of games to run perfectly'''. A fan program, No$Zoomer, was released for version 2.6, which increases compatibility and options, as well as the titular zooming and resizing abilities. The biggest addition is noise cancellation which clears up static that No$GBA makes with its 3D rendering. It doesn't change accuracy though. No$Zoomer never rebased to newer No$GBA versions, and it looks like it was abandoned, so it likely never will. In v2.8, No$GBA became the first emulator to support DSi games, which has been their most notable feature. Only use No$GBA for DSi games that don't work on other emulators, debugging (if you've taken up ROM-hacking for DS games or homebrew development), if you value speed above everything, if you're using a potato PC, or just as a last resort.
 
;[[BizHawk]]
:Uses melonDS 0.9.5 core for nintendo DS and DSi emulation, mGBA or VBA-Next cores for Game Boy Advance emulation
;[[Delta]]
:An open-source application [[Multi-system_emulators|multi-system emulator]] for iOS with the ability to emulate many consoles and handhelds, including the DS. Since version 1.3, Delta Emulator allows you to emulate Nintendo DS with a DeSmuME or melonDS (0.9.1)[https://melonds.kuribo64.net/comments.php?id=199] core. You will need to have DS BIOS or DSi BIOS to play DS/DSi games in Delta using the melonDS core. It also allows you to boot into DS/DSi home screen and functions similarly to melonDS.
;[[mGBA#medusa|mGBA/medusa]]
==Enhancements==
<div style="overflow-x:auto;width:100%">{|class="wikitable" style="text-align:center; vertical-align:middle;width:100%"
|- style="font-weight:bold;"
! colspan=2 | Name
| {{Y}}
| {{Y}}
| {{YN}}
| {{?}}
|
|-
| Pre-rendering AA<br/><small>(MSAA, SSAA)</small>
| {{?}}| {{?Y}}(MSAA)
| {{?}}
| {{?}}
| {{?}}
|-
| Super-resolution techniques<br/><small>([https://github.com/NVIDIAGameWorks/Streamline/blob/main/docs/ProgrammingGuideDLSS.md DLSS], [https://github.com/intel/xess/?tab=readme-ov-file XeSS ] and [[Wikipedia:GPUOpen#FidelityFX_Super_Resolution|FSR 2+]])</small>
| colspan=7 | <small>Requires access to the depth buffer and temporal data like motion-vectors so it's quite challenging and unlikely to be feasible in the near future.<br/>Besides any GPU that can use DLSS can run these emulator at 4k native with ease anyway.</small>
|-
| colspan=7 | <small>Implementing frame generation technology in an emulator is unfortunately quite challenging and unlikely to be feasible in the near future, however post-processing techniques such as [[Wikipedia:Motion_interpolation|motion interpolation]] is quite possible. [[Input_lag|Input latency]] will be a crucial factor, but its impact likely varies depending on the specific technique employed, it's recommended to use '''after applying the "Internal Framerate Hack"'''.<br/>While '''AFMF''' or '''LSFG''' could be used with melonDS or DESmuME?, please be aware that some visual glitches and artifacts may occur at this time.
|-
| rowspan=4 6 | Post-Processing
| [[Wikipedia:Category:Anti-aliasing_algorithms|Post-rendering AA]]<br/><small>(FXAA, TXAA and MLAA/SMAA)</small>
| {{~}}<ref group=N3>Only possible with software renderer.</ref>
| {{?}}
|-
| [[Wikipedia:Comparison_gallery_of_image_scaling_algorithms|Post-rendering scaling]]<br/><small>(Sharp bilinear, Lanczos and [[Wikipedia:GPUOpen#FidelityFX_Super_Resolution|FSR 1]])</small>
| {{Y}}
| {{Y}}
|
|
|-
|[[Shaders_and_filters#AI-powered filters|AI-powered filter compatible]]<br/><small>([https://www.nvidia.com/en-us/geforce/news/gfecnt/nvidia-freestyle-ansel-enhancements-geforce-experience-article/ Freestyle])</small>
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
|-
| [[Shader_Presets|Shader Chain]]
| {{N}}
| {{N}}
|-
|[[High_dynamic_range#Inverse_tone_mapping|Inverse tone mapping compatible]]
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
|-
| rowspan=5 | [https://tasvideos.org/Emulatorresources/Features TAS features]
| {{Y}}
| {{Y}}
| {{?Y}}
|
|
| Rewind
| {{N}}[https://melonds.kuribo64.net/board/thread.php?pid=5060 *]
| {{~Y}}<ref group=N3 name=lrRA></ref>| {{NY}}
| {{N}}
| {{N}}
| {{Y}}
| {{Y}}
| {{?Y}}
| {{?}}
|
| {{Y}}
| {{Y}}
| {{?Y}}
| {{?}}
|
| [https://tasvideos.org/Movies Movie recording/playback]
| {{N}}[https://github.com/melonDS-emu/melonDS/issues/463 *]
|{{Y}}|{{Y}}
|
|
| {{N}}
|-
| rowspan=7 6 | Quality of life
| [[Save_disk_space_for_ISOs|Streamable compression format]]
| {{Y}}
|
|
|-
| Built-in [http://forum.arcadecontrols.com/index.php/topic,106405 Custom resolution/CRTSwitchRes]<br/><small>For using this on Windows OS you need [http://geedorah.com/eiusdemmodi/forum/viewtopic.php?pid=1009#p1009 CRT Emudriver].<br/>Another option is using EDID editor tool such as "Custom Resolution Utility".</small>
| colspan=7 | [https://docs.libretro.com/guides/crtswitchres/ Exclusive to libretro cores at the moment.]
|-
| Per-Game Profiles
|
|-
| [[Frontends#Graphical_User_Interfaces_.28GUIs.29| Big Picture Mode]]|||||||
|-
| colspanrowspan=2 5 | Misc| [[Netplay#Other|Netplay]]
| {{N}}
| {{~}}<ref group=N3 name=lrRA>Only possible with libretro core. [https://github.com/melonDS-emu/melonDS/issues/1146 Github Issue page for adding RetroAchievements to the melonDS standalone version]. But DSi RetroAchievement are [https://docs.libretro.com/guides/retroachievements/#nintendo not supported].</ref>
| {{N}}
|-
| [[Virtual_reality#VR_game_room_simulations|EmuVR support]]| colspan=2 7 | Exclusive to [https://www.emuvr.net/wiki/Installation_Guide#Downloads libretro cores] at the moment.|-| RetroAchievements<br/>[https://retroachievements.org/gameList.php?c=18 DS], [https://retroachievements.org/gameList.php?c=78 DSi]
| {{~}}<ref group=N3 name=lrRA></ref>
| {{~}}<ref group=N3 name=lrRA></ref>
|
|-
| colspan=2 | Free Look<br/><small>Free Look is a enhancement feature that allows manipulation of the in-game camera.</small>
| {{N}}
| [https://old.reddit.com/r/emulation/comments/9lwy0r/desmume_begins_to_implement_a_freelook_feature/ WIP]
| {{N}}
|-
| colspan=2 | [[Wikipedia:Category:Debugging|Debug Features]]
| {{N}}[https://github.com/melonDS-emu/melonDS/issues/249 *]
| {{Y}}
|
|}
</div>
<references group=N3/>
==Hardware features and accessories==
<div style="overflow-x:auto;width:100%">{| class="wikitable" style="text-align:center; vertical-align:middle;width:100%"
|- style="font-weight:bold;"
| colspan=2 | Name
|
|
|
|
|-
| colspan=2 | [[#Backwards_compatibility_for_Game_Boy_Advance.2FGBA_Mode|Backwards compatibility for Game Boy Advance/GBA Mode]]
| {{✗}}
| {{✗}}[https://melonds.kuribo64.net/board/thread.php?id=1229 *]
| {{✗}}
| {{✗}}
| {{✗}}
| {{✗}}
|
|
|
|-
| rowspan=5 6 | Inputs
| Rumble pack
| {{✓}}
|
|-
| [[List_of_games_that_support_tracked_motion_controllers#Nintendo_DS_Emulation| Tilt sensor]]
| {{✗}}
| {{✗}}<ref group=N2 name=Slot2MelonDS></ref>
|
|-
| [[List_of_games_that_support_Pressure-Sensitive_Face_Buttons#Nintendo_DS_Emulation| Pressure-sensitive sensitivity for touchscreen]]
| {{✗}}
| {{✗}}
|
|
|-
| [[List_of_games_that_support_touchscreen#Nintendo_DS_Emulation|Touchscreen]]
| {{Y}}
| {{Y}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
|-
| Slide controller
|-
| rowspan=2 | [https://dmitry.gr/?r=05.Projects&proj=28.%20pokewalker PokéWalker]
| [[List_of_games_that_support_IR#Nintendo_DS_Emulation| Communication]]
| {{✗}}
| {{✗}}
| {{✗}}
| {{✗}}[https://github.com/UnrealPowerz/powar/issues/2 *]
| {{✗}}
| {{✗}}
| {{✗}}
| {{✗}}
|
|
|-
| colspan=2 | [[#Backwards_compatibility_for_Game_Boy_Advance.2FGBA_Mode|Backwards compatibility for Game Boy Advance/GBA Mode]]
| {{✗}}
| {{✗}}[https://melonds.kuribo64.net/board/thread.php?id=1229 *]
| {{✗}}
| {{✗}}
|
|
|-
! colspan=10 | DSi exclusive features
|-
| rowspan=2 | DSi Inputs
| {{✓}}
|}
</div>
<references group=N2/>
===Connectivity===
===Other issues===
Certain games, such as American Girl titles (e.g., ''Julie Finds a Way'' and ''Kit Mystery Challenge''), suffer from severe flickering issues which keep those games from being playable on most emulators. [[DraStic]] was the first emulator able to run the two games properly, and while DeSmuME r5043 had an initial fix that worked around the glitch, it was removed in later revisions as it broke compatibility with ''Pokémon SoulSilver'', among others; this has since been patched on r5531 once the true nature of the [https://sourceforge.net/p/desmume/bugs/1134/ bug] was better understood. The fix would be later incorporated into other emulators. ''Ultimate Mortal Kombat'' suffers from flickering and slowdown due to the way it loads sprites, though it isn't as serious in DraStic. ''Star Wars: The Clone Wars – Jedi Alliance'' is an even more egregious example, crashing due to timing differences between actual hardware and an emulated system.
 
=Nintendo DSi=
|discontinued = 2014
|predecessor=[[Game Boy Advance emulators|Game Boy Advance]], [[Nintendo DS emulators|DS]]
|successor=[[Nintendo 3DS emulators|3DS and variationsfamily]]
|emulated = {{✓}}
}}
===No$GBA===
For now, NO$GBA is the most mature DS emulation project that supports the Nintendo DSi. Using the latest debugger version of NO$GBA is recommended.
====;Game Loading Methods=========:;Simple .nds Loading=====:Requirements: These [https://archive.org/details/DSiFirmwareFiles files] with the NO$GBA version overwritten with the latest version.
:DSiWare ROMs preserved online in romsets currently use the nds format, similar to regular Nintendo DS ROMs. If you change Emulation Settings > NDS Mode/Colors > DSi (retail/16MB), you can simply drag and drop all three types of DSi content on the emulator (or open the ROM), and it will run in DSi Mode.
:However, it's recommended for retail cartridges to be loaded that way with the option "Emulation Settings > Reset/Startup Entry Point" set to "GBA/NDS BIOS". This loading method isn't recommended for DSiWare games because of some bugs introduced and the lack of ability to save altogether. However if you insist, do set that option "Reset/Startup Entry Point" to "Start Cartridge Directly" at your own risk for any unpleasant aspects of the experience.
=====:;NAND Loading=====:Requirements are the same as [https://archive.org/details/DSiFirmwareFiles above]. If you have a real DSi unit, you can dump its NAND and use it instead of the included DSi-1.mmc file, so that you play that different game selection.
:This option is more authentic to how real hardware works. It has much less bugs and a higher compatibility than the Simple nds loading method. DSiWare games were limited to a 128MB internal NAND memory or 40 games in the DSi Home Menu, whichever limitation comes first. The NAND is represented by the file "DSi-1.mmc" and hosts installed games (that will appear in the DSi Home Menu) and properly working game saves. While the DSi supported SD cards, it did NOT allow for game software to be booted from there.
:Make sure to use "Emulation Settings > Reset/Startup Entry Point" at all times. The DSiWare titles that can be booted through this method will appear in the DSi Home Menu as separate slots than the "inserted game cartridge" icon.
:Using Unlauncher, a homebrew exploit, games can be added to the NAND. However, this is an advanced technique, and generally heavily discouraged. Users of this software on real hardware were compelled to use custom firmwares that allowed for using game software from the SD card (normally impossible). This means that to take advantage of this method as an emulation user, you will be stuck with the pre-installed games on the commonly shared BIOS files online.
=====:;SD Card Loading=====:The most recommended method, as per [http://hg101.proboards.com/thread/14716/emulate-dsi-dsiware these] [https://www.ngemu.com/threads/no-gba-3-0-dsiware-compatibility-list-using-the-nand.206911/ tutorials]. This method loads the game from the SD card instead of the NAND, and allows for an easier time adding new games to the emulator.
:Requirements include these files to be placed in the same directory as NO$GBA. Not compatible with the previous methods, and so to be used in a folder with a fresh setup.
:* [https://mega.nz/#!aJAyUQIb!OIOOrA_PMeTizDxnmf-5y5fekLxxZkRZfWGKEvV_Tx0 BIOS Files]: Required for DSi emulation.:* [https://mega.nz/#!qBY0DAJa!18nfxczgF-JxqyFxSogfej7G23vYSjJnQCIh_tdXUq0 Modified NAND]: Includes Unlauncher (Hold A to boot it, but not needed) and [[TWiLight Menu++]]:* [https://mega.nz/#!vERGXCwY!GSmvL2PODesi0Vmu-atKPXxxz1UyucHZyH9bXghM0a0 2GB SD Card]: Filename is DSi-1.SD:* A tool to mount a virtual SD drive, such as [https://www.osforensics.com/tools/mount-disk-images.html OSFMount]. To be used (Open DSi-1.SD > "Mount") with the 2GB SD Card to add new .nds files to it. Remember to disable "Read-Only" and to Dismount before using the emulator again.
:Some issues are still present with this method. Refer to the next section for tips on how to deal with some of them.
===melonDS===
melonDS has poor DSP support. DSiWare has to be launched from the NAND as it cannot boot them as .nds.
==References==
<references />
[[Category:Seventh-generation video game consoles|!DS]]
[[Category:Nintendo DS emulators|*]]
[[Category:Consoles|!DSi]]
[[Category:Handheld consoles|!DSi]]
[[Category:Nintendo consoles|!DSi]]
[[Category:Seventh-generation video game consoles|!DSi]]
[[Category:Nintendo DSi emulators|*]]
[[Category:ARM-based|!DS]]
[[Category:Very early emulation (MAME)Driver Status: Preliminary|!DS]]
11,794
edits

Navigation menu