Changes

Jump to navigation Jump to search

Nintendo DSi emulators

395 bytes added, 02:46, 17 August 2022
Emulation
{{Infobox console|title = Nintendo DSi|logo = DSiBlack.png|developer = [[:Nintendo]]|type = [[:Category:Handheld consoles|Handheld game console]]|generation = [[File:DSiBlack.pngCategory:Seventh-generation video game consoles|Seventh generation]]|300pxrelease = 2009 (Wordwide)|thumbdiscontinued = 2014|rightpredecessor = [[Nintendo DS emulators|The design was very similar to the Nintendo DS Lite]]|successor = [[Nintendo 3DS emulators|Nintendo 3DS]]|emulated = {{~}}}} Released on April 5, 2009, the '''[[wikipedia:Nintendo DSi|Nintendo DSi]]''' added new lighting effects, an inner and outer 0.3 megapixel digital cameras, 16MB of RAM (compared to the previous 4MB of RAM), a faster ARM9 CPU clocked at 133 MHz, and offered downloadable titles called "DSiWare". It cost {{Inflation|USD|169.99|2009}} at launch and later dropped to {{Inflation|USD|149.99|2010}}. The system, however, was region-locked, meaning that DSi exclusives from different regions couldn't be used and the system language couldn't be changed. It also did away with backwards-compatiblity by removing Slot-2 which was used to load GBA cartridges and other gaming certain accessories (''i.e. Guitar Hero: On Tour''such as the Rumble Pak).
==Emulation==
<div style="max-width:100%; overflow:auto;">
{| class="wikitable" style="text-align:center;"
|-
! scope="col"|Name
! scope="col"|Operating SystemPlatform(s)
! scope="col"|Latest Version
! scope="col"|DSi (enhanced)
! scope="col"|DSi (exclusive)
! scope="col"|DSi (digital)
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
! scope="col"|[[Recommended Emulators|Recommended]]
|-
!colspan="8"|PC / x86
|-
|[[melonDS|melonDS]]
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
|[http://melonds.kuribo64.net/downloads.php {{MelonDSVer}}] [https://github.com/Arisotura/melonDS/actions <br/>Dev Builds]
|{{✓}}
|{{✓}}
|{{✓}}
|{{✓}}
|{{✓}}
|-
|[[No$|No$GBA]]
|align=left|{{Icon|Windows, [[Intel CPUs|DOS]]}}|[http://problemkaputt.de/gba.htm 2.9b{{No$GBAVer}}]|{{~}} ||{{✓}} ||{{✓}} |{{✗}}|{{~}}|-!colspan="8"|Mobile / ARM
|-
|[[melonDS|melonDS]]<small> (unofficial)</small>|Windows, Linuxalign=left|{{Icon|Android}}|alpha[https://github.com/rafaelvcaetano/melonDS-android git] [https://play.google.com/store/apps/details?id=me.magnum.melonds 1.7.0]|{{}} |{{✓}}|{{}} ||{{~}} ||{{~}} <small>([http://melonds.kuribo64.net/comments.php?id=94 WIP])</small>
|}
</div>
There hasn't been much of a need for DSi emulation has been pretty neglected due to it's its small library of exclusive games and lack of DSi-enhanced titles that provide anything major besides camera support. The only thing really notable is DSiWare, which saw several exclusive releases.
No$GBA added support for DSi games of all three formats starting with version 2.8, although some games won't boot and others have graphical glitches. You'll need to enable ''"16MB DSi/retail"'' under the settings in order to use it. Compatibility is very iffy due to No$GBA's already poor DS emulation, and the camera is just spoofed as a static image and will causes cause the emulator to crash whenever used, meaning games that uses it may boot, but won't be very playable.
DSi used an encryption system for the game dumps that went on to be enhanced and used for the 3DS. This encryption is checked at start-up, hence why Nintendo DS emulators don't even manage to boot DSiWare dumps. It's very unlikely DSi-mode emulation is ever going to be implemented in DeSmuME in particular due to various ''creative differences'' unique to that project. melonDS recently started attempts at DSi emulation and has been able to boot the system's firmware<ref name="melonDSi">http://melonds.kuribo64.net/comments.php?id=94</ref> and even showed that it can boot ''Flipnote Studios'', but freezes when attempting to create a new note.<ref name="progress on DSi">http://melonds.kuribo64.net/comments.php?id=99&p</ref>. It's being worked on off an experimental branch and requires a lot of files to be dumped from the DSi in order to work, but it could become the most usable option for DSi emulation in the near future. Most of it is being done using the documentation that the No$GBA devs have already compiled on the subject. For now, it only supports DSi-enhanced regular DS releases.
As of version 0.9, melonDS has DSi emulation. It can connect to the internet and can play games with WFC online using libslirp or libpcap. It could become the most usable option for DSi emulation in the near future. Most of it is being done using the documentation that the No$GBA dev has already compiled on the subject<ref>http://melonds.kuribo64.net/board/thread.php?id=13</ref> ([https://problemkaputt.de/gbatek.htm GBATEK]).
==Game Formats==
;DSiWare: Downloadable titles only available through the DSi Shop (discontinued as of March 31, 2017). They have a 16MB size limitation due to the small size of the internal NAND and a lot of interesting exclusives for the system released as DSiWare. The Nintendo 3DS eShop also has some DSiWare for purchase (which is the only ''legal'' way of obtaining them now), though it uses a different file packaging format than the DSi. The system itself is also capable of running other DSiWare since the firmware used for backwards-compatibility is the same as the DSi.
All three formats can be converted to <code>.nds</code> format. Compared to regular DS games, DSi games have some additional header information that wasn't even correctly dumped in most early sets. The 2017 set has Recent sets have since updated many of these to the correct format, though it's still severely lacking in DSiWare exclusives. DSiWare dumps can exist in both <code>.nds</code> format and <code>.cia</code> format (for installation on a homebrewed 3DS).
Even though it's possible to convert these titles to <code>.nds</code>, when attempting to run these games on a normal emulator it will either show an error message (when attempting to run a DSi-exclusive title), or will crash on boot-up (when attempting to run DSiWare) due to missing encryption abilities and lack of DSi hardware support. DSi-enhanced games will run as if it was on a regular DS model.
On the DSi/3DS family of handhelds, the first two formats can be played on some select DSi-compatible flashcarts like the discontinued and expensive CycloDS iEvolution flashcart(which won't work on a stock 3DS unless you install custom firmware to whitelist it). As for the third type, some are only available for digital purchase at the 3DS eShop and are installed as apps to the limited TWL NAND. Users with custom firmware can also convert DSiWare to an installable <code>.cia</code> and even dump already installed ones back to <code>.nds</code>. Since the DSi Shop has closed, the only way of obtaining DSiWare on the physical system is by [[Modding Consoles/Flashcarts#Nintendo_DSi|homebrewing]] your DSi and either [https://dsi.cfw.guide/installing-dsiware| installing] it to the system's NAND, or launching the <code>.nds</code> ROM through Unlaunchor [[TWiLight Menu++]].
===BIOS Files===
DSi emulation requires a copy of the lower 32K-halves of the ARM7/ARM9 BIOS files (<code>BIOSDSI7.ROM</code> and <code>BIOSDSI9.ROM</code>), which are different from the regular DS BIOS files and needed for the decryption. All melonDS also requires these files along with the regular DS BIOS and the needed files are <code>bios7i.bin</code>, <code>bios9iDSi's firmware.bin</code>, <code>BIOSDSI7.ROM</code>, <code>BIOSDSI9.ROM</code>, <code>BIOSNDS7.ROM</code>, and <code>BIOSNDS9.ROM</code>. These unicorns can be found [http://archive[Emulator_Files#Nintendo_DS_.org/details/DSiFirmwareFiles 2F_DSi|here]].
It's also advised (but still completely '''optional''') to use a NAND dump as well for No$GBA to increase compatibility (though adding games is more complex, and however a soft-modding solution to NAND dump it is still being worked on). Rename it to "DSi-1.mmc" (should be about 250MB). In No$GBA, change ''"Reset/Startup Entrypoint"'' to ''"GBA/NDS BIOS"'' to now boot the emulator and games in DSi mode. Hex editing is required in order to "install" new DSiWare titles. Using a NAND dump fixes a lot of glitches and crashes related to languages and use of the internal DSi fontmelonDS.
==Emulation Tutorial (no=====No$gba)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.
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.
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===
The latest dev builds of melonDS can also boot the DSi Menu and load most DSiWare.
To boot up the DSi Menu, you need specific files which can all be found [[Emulator_Files#Nintendo_DS_.2F_DSi|here]].
==Known Issues==
===MelonDS===MelonDS doesn't support DSiWare yet.===NONo$GBA===
Aside from general emulation problems inherited from the older DS emulation project, there are the following issues:
* ''Microphone doesn't work.'' (DSiWare + any method) No known fix.
* ''Camera doesn't work.'' (DSiWare + any method) Unimplemented. No known fix.
* ''Wifi doesn't work.'' Unimplemented.* ''Touch Screen issues related to Screen Calibration'' (DSiWare + TwilightMenu [[TWiLight Menu++]] or simple nds loading) The fix is to load the original DSi Home Menu first (holding B when resetting the emulator or loading it), then reset to TwilightMenu TWiLight Menu++ (not holding any buttons) before loading the desired game.* ''Can't Save'' (DSiWare + simple nds loading) This method is hardware inaccurate to begin with. For best results, switch to TwilightMenu [[TWiLight Menu++]] or Original NAND methods.===melonDS===melonDS doesn't support some of the DSi's features such as the cameras and DSP. DSiWare have to be launched from the NAND as it cannot boot them as .nds.
==References==
 
==See also==
* [[Nintendo DS emulators]]
 
{{Nintendo}}
[[Category:Consoles]]
[[Category:Handheld consoles]]
[[Category:Nintendo consoles]]
[[Category:Seventh-generation video game consoles]]
[[Category:Nintendo DS DSi emulators|*]]
4,085
edits

Navigation menu