Difference between pages "PlayStation 3 emulators" and "DeSmuME"

From Emulation General Wiki
(Difference between pages)
Jump to navigation Jump to search
 
(restored based on wayback machine)
 
Line 1: Line 1:
{{Infobox console
+
{{Infobox emulator
|title = PlayStation 3
+
|logo = Desmume.png
|logo = PlayStation 2006.png
+
|logowidth = 100
|image = PS3_Original.png
+
|version = {{DeSmuMEVer}}
|image2 = Sony-playstation-3-slim-1.jpg
+
|active = Yes
|imagecaption = '''Top''': Original (2006)<br/>'''Bottom''': Slim (2009)
+
|platform = Multi-platform
|developer = [[:Sony]]
+
|target = [[Nintendo DS emulators|Nintendo DS]]
|type = [[:Category:Consoles|Home video game console]]
+
|developer = YopYop156<br/>[http://wiki.desmume.org/index.php?title=DeSmuME:About#DeSmuME_current_team DeSmuME Team]
|generation = [[:Category:Seventh-generation video game consoles|Seventh generation]]
+
|website = [https://desmume.org/ DeSmuME.org]
|release = 2006
+
|source = [https://github.com/TASVideos/desmume GitHub]
|discontinued = 2017
+
|license = GNU GPLv2
|predecessor = [[PlayStation 2 emulators|PlayStation 2]]
 
|successor = [[PlayStation 4 emulators|PlayStation 4]]
 
|emulated = {{~}}
 
 
}}
 
}}
 +
'''DeSmuME''' is an open-source [[Nintendo DS emulators|Nintendo DS emulator]]. It is the most accurate Nintendo DS emulator and is actively developed by the DeSmuME Team. It can be run from the command line directly or as a graphical program.
  
The '''PlayStation 3''' (known shorthand as '''PS3''') is a seventh-generation console released by [[wikipedia:Sony|Sony]] in late 2006. The successor to the [[PlayStation 2 emulators|PlayStation 2]], it began development in 2001 when Sony partnered with Toshiba and IBM to create the [[wikipedia:Cell_%28microprocessor%29|Cell Broadband Engine]]. The console was launched a year after the [[Xbox 360 emulators|Xbox 360]], and around the same time as the [[Wii emulators|Wii]]. While it was debatably the most powerful console of the seventh generation, it was also difficult to program for, as its architecture was even more complex than its competitors. It retailed for {{Inflation|USD|599|2006}}.
+
The regular version now allows for increasing internal resolution.
  
The Cell Broadband Engine consists of a 3.2 GHz Power Processing Element (PPE) and seven Synergistic Processing Elements (SPE),<ref group=N>You might see listings of eight SPEs, but that's because there are eight on the die; one of them is disabled to prevent the manufacturer from yielding too many bad units. Another SPE is reserved for the console's operating system.</ref> and the system contains 256 MB of XDR DRAM main memory at 3.2 GHz and 256 MB of GDDR3 video memory at 650 MHz for the Nvidia/SCEI RSX Reality Synthesizer GPU. The GPU ran at 500 MHz and has to communicate forth and back with both RAMs. The complexity of the SPEs bogged down the PlayStation 3 in multi-platform titles, as developers had to go through the process of learning the SPE architecture before they could use it. As a result, several developers decided against using the SPEs, and the consequence is that many multi-platform games ran with lower framerates or worse graphics, compared to running those same games on the PS3's competitors.
+
It is also available as a libretro core for [[RetroArch]].
  
The number of units sold worldwide were about the same as the Xbox 360. The PlayStation 3 initially included a feature called OtherOS,<ref group=N>Which allowed the console to run many distributions of Linux and BSD in a separate partition as long as they supported PowerPC.</ref> but once it was removed shortly after the PS3 Slim model was released citing "security concerns", fail0verflow had a jailbreak detailed in 2010, giving way for [[PS3 Modding|modders to downgrade firmware on a specific version]] and install a custom firmware, something Sony would patch in newer updates until an exploit was released for 4.82. Emulation only started gaining traction in the late 2010s, as [[RPCS3]] had made strides in improving its largely HLE-based emulation. It has since become the emulator of choice.
+
==Download==
 
+
{| cellpadding="4"
==Emulators==
 
{| class="wikitable" style="text-align:center;"
 
|-
 
! scope="col"|Name
 
! scope="col"|Platform(s)
 
! scope="col"|Latest Release Version
 
! scope="col"|Open-Source
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
|-
 
! colspan="6"|PC / x86
 
 
|-
 
|-
|[[RPCS3]]
+
|align=center|{{Icon|Win-big}}
|align=left|{{Icon|Windows|Linux|FreeBSD}}
+
|'''[https://desmume.org/download/ Stable & Nightly releases]'''
|[https://github.com/RPCS3/rpcs3/releases {{RPCS3Ver}}]<ref group=N>The developers are currently treating version increments as milestones, not as stables.</ref>
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
 
|-
 
|-
|[[Nucleus]]
+
|colspan="3"|<hr/>
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/AlexAltea/nucleus/releases 0.1.0]
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
 
|-
 
|-
|Short Waves
+
|align=center|{{Icon|Win-big}}
|align=left|{{Icon|Windows}}
+
|[https://ci.appveyor.com/project/zeromus/desmume/build/artifacts Latest Dev build]<br><small>Requires [https://www.microsoft.com/en-us/download/details.aspx?id=52685  Microsoft Visual C++ Runtime]</small>
|[http://wololo.net/downloads/index.php/download/8128 0.0.2]
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|PS3F
 
|align=left|{{Icon|Windows}}
 
|[https://web.archive.org/web/20161029044210/http://www.geocities.jp/mj3kj8o5/ps3f/index.html 0.0.0]
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
 
|}
 
|}
  
===Comparisons===
+
==Issues==
;[[RPCS3]]:An open-source emulator for 64-bit Windows, Linux and BSD. While it isn't anywhere near as compatible as [[Dolphin]] is for [[GameCube emulators|GameCube]] or Wii, it has still made immense progress compared to its early days where development was slow and seemed like it wasn't really going anywhere. Over 1,800 titles are now playable, which is 59% of all titles (3156), many more that go in-game (33.3%) and others that are at least loadable.<ref name="Compatibility Page">https://rpcs3.net/compatibility</ref>
+
DeSmuME uses [[Wikipedia:DirectInput|DirectInput]] if an [[Xbox 360 emulators|Xbox 360]] controller is being used. No support for [[Wikipedia:DirectInput#XInput|XInput]] exists. This will be noticeable if an Xbox 360 controller's LT and RT inputs are mapped to emulate the DS's L and R buttons respectively.
;[[Nucleus]]:A one-man project aiming for LLE, some AOT emulation, and portability. Made by AlexAltea, lead coder of PlayStation 4 emulator, [[Orbital]].
+
 
;Short Waves:Made by InoriRus. It could run a few complex tests that RPCS3 couldn't at the time it released, but it hasn't been updated since.
+
Several features aren't supported by DeSmuME and aren't parts of its future as per the emulator's current design philosophy. They include:
;PS3F:Made by Shima, the creator of [[SSF]]. More information can be found [https://web.archive.org/web/20161029044210/http://www.geocities.jp/mj3kj8o5/ps3f/index.html here].
+
*DS Download Play
 +
*DS Local Play (local multiplayer)
 +
*DS Wi-Fi Play (online multiplayer)
 +
*DSi emulation (DSi-enhanced retail, DSi-exclusive retail, DSiWare)
 +
*DS/Wii Connectivity
 +
 
 +
A DeSmuME fork with online multiplayer, which includes functional code that made it to official version 0.9.7 before being removed, is available and has been improved to allow for limited dumping of online data prior to the server shutdown in 2014, as well as a version allowing for using online play for a select few games and downloading DLC data from alternative servers with the backed-up data.
 +
 
 +
At some point in 2010, development on these features was permanently discontinued and the developers distanced themselves from the above-mentioned fork. The official team stance on this is as follows, and is as clear as it can get:
 +
 
 +
::''As you may have come to find, Release versions and WIP builds distributed by DeSmuME developers do not have the Wi-Fi menu enabled, while builds provided by dodgy scener sites or the one your best friend in the whole wide world has handed to you on a USB key does.''
 +
::''Officially, DeSmuME DOES NOT support the use of builds with Wi-Fi support.''
 +
::''As such, though it may come as a shock to you, requests for help or information about it are thus NOT likely to obtain a response to your satisfaction.''
 +
::''The developers have no current interest for furthering the development of the EXPERIMENTAL_WIFI, and the current state of the DeSmuME source code might have even completely broken it.''
 +
 
 +
It was also deemed that the Dynamic JIT recompiler was a poor fit for the DeSmuME project and as such a fork called "DeSmuME 0.9.9 JIT" including it was made, and some used to recommend it over the mainline project. Much later, like with the internal resolution feature, a compromise was reached and a slightly different implementation was since included in the main project after 0.9.11.
 +
 
 +
==Troubleshooting==
 +
If the game is slow:
 +
*Enable the '''dynamic recompiler''' in '''Emulation Settings'''.
 +
*If it's still slow, you must be running on a toaster. It can't be helped. But try tinkering with things for the fastest settings you can find.
 +
*Use frameskip as the absolute last resort.
 +
*If your graphics card was designed by Nvidia and the OpenGL Display Method (useful for its filter) is stuttering despite reporting good framerate, open the Nvidia Control Panel and turn off Threaded Optimization for this program. What's happening is sequential OpenGL code is being put on different processors running at different speeds, forcing them to wait for each other repeatedly.
 +
If the sound is distorted.
 +
*'''Synchronous''' mode is far less buggy. '''Method Z''' seems to work the best in most cases.
 +
If the 3D is messed up.
 +
*Set it to OpenGL 3.2. Old OpenGL had problems with 3D itself, while SoftRasterizer had alignment issues with 2D. But 3.2 seems to fix most of both.
 +
*SoftRasterizer's texture alignment issues are supposedly fixed on a per game basis with the newer TXT hack. It now seems to be more compatible and showing more effects than GL3.2. Etrian Odyssey and Dragon Quest V seem to work best with it over GL3.2.
 +
 
 +
==Graphical enhancement==
 +
After the increased internal resolutions were implemented in the X432 fork, as well as in [[DraStic]] and even the barebones official Nintendo Virtual Console DS emulator on Wii U, the mainline DeSmuME project developers decided to reconsider and include their own implementation for higher internal resolution.
 +
 
 +
Official dev builds now have the option to render at a higher resolution as well, and filter textures to boot. Overall, it's more hardware intensive than X432R's implementation.
 +
 
 +
The latest development version of [[RetroArch]] DeSmuME core also has an option to increase internal resolution which can be set using '''desmume_internal_resolution''' in Core Options. This option was added in [https://github.com/libretro/desmume/commit/5e430dfbc22f9d54c77f291304a38352ee1e5a63 August 8, 2015 commit]. This is massively CPU-intensive because only SoftRasterizer exists in RetroArch core.
 +
 
 +
*The OpenGL 3.2 renderer option in 3D Settings supports '''Multisampling Anti-Aliasing (MSAA)'''. Turning it on helps the edges of ultra low-res DS polygons and lines smooth out appear to wobble less during movement, and retain their shape better when viewed from distance. Unlike post-processing effects that modify the still frame after completion and essentially try to guess at the shapes they are smoothing, this effect knows the actual shapes of the polygons themselves.
 +
**Versions before r5032 had this option for a long time, but it was only put in the GUI at r5032. To turn it on in older versions you needed to change a value from false to true in the source code and recompile it.
 +
*Another thing you can do is filter it. Make sure '''OpenGL''' and '''Filter''' are checked under '''Display Method'''.
 +
*Finally, there are a variety of post-processing shaders that can be selected under '''Magnification Filter'''. Whether that is simple Nearest 2x or some pixel art scaling filter like HQx or xBRZ is up to you. No post-processing smoothing is perfect, but if you want to use one the xBRZ options are generally the most high-end among smoothing filters present.
 +
*macOS version of DeSmuME also has support for multi-pass post-processing shaders and filters which Windows version currently doesn't have.
 +
*Leaving it native and aligning it to a CRT (Set to a 384 high resolution) is also an option, if you feel like going through the effort.
 +
*Recent DeSmuME revisions now add support for texture filtering, greatly reducing pixelation albeit at the cost of blurrier visuals. Some may find this rather jarring or too N64-esque, so it's a matter of individual preference as there's an option to turn it on or off.  
  
==Emulation issues==
+
===DeSmuME X432R===
PlayStation consoles have always been notorious for system complexity. Sony's gamble of their technology being emulator-unfriendly makes them developer-unfriendly as well, and the system's weaker performance in cross-platform games proves it. Even if done properly, an LLE approach would be performance suicide as some things just have to be abstracted enough to get high framerates in games. The situation is so bad that Sony seems to be incredibly hesitant to introduce an emulator on the PlayStation 4, simply because they wouldn't be able to justify the potentially high cost of development to investors.<ref>[https://youtu.be/6WkpaJkB2M8 Why PS4 Doesn't Have Backwards Compatibility and Xbox One Does] (Mystic. Aug 21, 2018.)</ref>
+
Mainline DeSmuME didn't offer any options for higher than native internal resolutions at first. DeSmuME X432R is a fork with the option to increase internal resolution. Be warned that this option is very system-intensive. There have been reports of people who can run [[Dolphin]] and [[PCSX2]] at a perfect pace but can't run this at full speed using increased internal resolution, however newer versions are much faster.
  
There are two major bottlenecks at play:
+
While generally more accurate, the SoftRasterizer is massively CPU-intensive in this mode, whereas the OpenGL renderer shares the load with your GPU. This can be considered a '''speedup''' option, but it also boasts an MSAA option unavailable to SoftRasterizer.
* '''Cell.''' It consists of two architectures that developers have to program for; PowerPC, and... whatever the SPEs really are. Add to that the fact that there are SIX that could be in use by a game, and you have a great formula for high system requirements. The RPCS3 developers technically cheat by using ahead-of-time recompilation using LLVM, but because the emulator constantly improves, that can be easily excused.
 
* '''[[wikipedia:RSX_Reality_Synthesizer|RSX Reality Synthesizer]].''' The [[Xbox emulators|Xbox]] also went unemulated for a long time, simply because of how many components were just undocumented. The same thing applies here; the graphics card is Nvidia GeForce 7800 GTX-based, which means it's not well-documented and developers have to figure out how it displays graphics and graphical effects. Without access to Nvidia's resources, which would normally be included with an SDK, this would be very difficult.
 
:Something of note is that this GPU was also managed by two different memory units with very disparate frequency speeds; 1) 256 MB of GDDR3 RAM clocked at 650 MHz with an effective transmission rate of 1.4 GHz, and 2) up to 224 MB of the 3.2 GHz XDR main memory via the CPU (480 MB max).
 
  
In short: expect game-breaking issues of one kind or another in the vast majority of titles at this point in time.
+
This fork also has some options for configuring sub-screens. This fork is no longer active, and its last version is dated 19-04-2015.
  
==PlayStation Move==
+
*[https://web.archive.org/web/20190718184333/http://shikaver01.webcrow.jp/ http://shikaver01.webcrow.jp/] <small>(Wayback Machine)</small>
 +
*Binary of SVN r5043: http://www75.zippyshare.com/v/67167782/file.html
  
The [[wikipedia:PlayStation_Move|PlayStation Move]] is a controller similar to a Wiimote, shaped to be held into hand and play with motion detection. It is detected by the [[wikipedia:PlayStation_Eye|PSEye]], the successor of the PS2's [[PlayStation_2_emulators#EyeToy|EyeToy]].
+
==Review==
The PSEye is usable on PC as it benefits from [https://github.com/cboulay/PSMoveService/wiki/PSEye-Software-Setup-(Windows) unofficial drivers] made by the community. It is not yet implemented in a PS3 emulator.
+
DeSmuME is currently the best available [[Nintendo DS emulators|Nintendo DS emulator]] on PCs. It is far better than [[No$|No$GBA]] when it comes to accuracy, though not flawless. However, it's more hardware intensive than any other DS emulator (either No$GBA or emulated DraStic) and many features are not supported.
[[RPCS3]] had some [https://github.com/RPCS3/rpcs3/commit/504e3112ddc440f1d4eb4f236d4d39ab0f016513 first steps implemented] for PSMove use but the controllers aren't working yet.  
 
  
The author of this preliminary implementation, [https://github.com/VelocityRa velocityra], is a dedicated developer for [[RPCS3]] and [[Vita3K]].
+
==Gallery==
His own branch of the PSMove has advanced further, as the PSEye and PSMove controllers are already physically supported using the PSMoveAPI.
+
<gallery>
A pretty old compatibility list can be found [https://workflowy.com/s/move-compatibility/6TV4dP3JcvHwhyUC here]. Some YouTube videos are also showing the work-in-progress functionality working.<ref>[https://www.youtube.com/watch?v=rrmb_2ULbKo RPCS3 - PSMove WIP VK] (April 03, 2018)</ref> The author unfortunately stopped working on this implementation a few months ago.
+
Internal resolution comparion - Assassin's Creed II Discovery.png|Top: native internal resolution (256x192). Bottom: 4x internal resolution (1024x768)
 +
Kit Mystery Challenge nearest neighbour.png|''Kit Mystery Challenge'' running at 2x internal resolution and nearest-neighbour (i.e. DS-style) texture filtering.
 +
Kit Mystery Challenge filtered.png|The same scene in ''Kit Mystery Challenge'', albeit with GL Tex Smoothing enabled. Notice the blurrier floor texture.
 +
</gallery>
  
==Notes==
+
==Guides and info==
<references group=N />
+
*[https://wiki.desmume.org/index.php?title=Main_Page DeSmuME Wiki]
  
==References==
+
<!-- ==References==
<references />
+
<references/> -->
  
[[Category:Consoles]]
+
[[Category:Emulators]]
[[Category:Sony consoles]]
+
[[Category:Nintendo DS emulators]]
[[Category:Seventh-generation video game consoles]]
+
[[Category:Windows emulation software]]
[[Category:PlayStation 3 emulators]]
+
[[Category:Linux emulation software]]
 +
[[Category:macOS emulation software]]

Revision as of 00:27, 9 July 2021

DeSmuME
Desmume.png
Developer(s) YopYop156
DeSmuME Team
Latest version 0.9.13
Active Yes
Platform(s) Multi-platform
Emulates Nintendo DS
Website DeSmuME.org
License GNU GPLv2
Source code GitHub

DeSmuME is an open-source Nintendo DS emulator. It is the most accurate Nintendo DS emulator and is actively developed by the DeSmuME Team. It can be run from the command line directly or as a graphical program.

The regular version now allows for increasing internal resolution.

It is also available as a libretro core for RetroArch.

Download

Windows Stable & Nightly releases

Windows Latest Dev build
Requires Microsoft Visual C++ Runtime

Issues

DeSmuME uses DirectInput if an Xbox 360 controller is being used. No support for XInput exists. This will be noticeable if an Xbox 360 controller's LT and RT inputs are mapped to emulate the DS's L and R buttons respectively.

Several features aren't supported by DeSmuME and aren't parts of its future as per the emulator's current design philosophy. They include:

  • DS Download Play
  • DS Local Play (local multiplayer)
  • DS Wi-Fi Play (online multiplayer)
  • DSi emulation (DSi-enhanced retail, DSi-exclusive retail, DSiWare)
  • DS/Wii Connectivity

A DeSmuME fork with online multiplayer, which includes functional code that made it to official version 0.9.7 before being removed, is available and has been improved to allow for limited dumping of online data prior to the server shutdown in 2014, as well as a version allowing for using online play for a select few games and downloading DLC data from alternative servers with the backed-up data.

At some point in 2010, development on these features was permanently discontinued and the developers distanced themselves from the above-mentioned fork. The official team stance on this is as follows, and is as clear as it can get:

As you may have come to find, Release versions and WIP builds distributed by DeSmuME developers do not have the Wi-Fi menu enabled, while builds provided by dodgy scener sites or the one your best friend in the whole wide world has handed to you on a USB key does.
Officially, DeSmuME DOES NOT support the use of builds with Wi-Fi support.
As such, though it may come as a shock to you, requests for help or information about it are thus NOT likely to obtain a response to your satisfaction.
The developers have no current interest for furthering the development of the EXPERIMENTAL_WIFI, and the current state of the DeSmuME source code might have even completely broken it.

It was also deemed that the Dynamic JIT recompiler was a poor fit for the DeSmuME project and as such a fork called "DeSmuME 0.9.9 JIT" including it was made, and some used to recommend it over the mainline project. Much later, like with the internal resolution feature, a compromise was reached and a slightly different implementation was since included in the main project after 0.9.11.

Troubleshooting

If the game is slow:

  • Enable the dynamic recompiler in Emulation Settings.
  • If it's still slow, you must be running on a toaster. It can't be helped. But try tinkering with things for the fastest settings you can find.
  • Use frameskip as the absolute last resort.
  • If your graphics card was designed by Nvidia and the OpenGL Display Method (useful for its filter) is stuttering despite reporting good framerate, open the Nvidia Control Panel and turn off Threaded Optimization for this program. What's happening is sequential OpenGL code is being put on different processors running at different speeds, forcing them to wait for each other repeatedly.

If the sound is distorted.

  • Synchronous mode is far less buggy. Method Z seems to work the best in most cases.

If the 3D is messed up.

  • Set it to OpenGL 3.2. Old OpenGL had problems with 3D itself, while SoftRasterizer had alignment issues with 2D. But 3.2 seems to fix most of both.
  • SoftRasterizer's texture alignment issues are supposedly fixed on a per game basis with the newer TXT hack. It now seems to be more compatible and showing more effects than GL3.2. Etrian Odyssey and Dragon Quest V seem to work best with it over GL3.2.

Graphical enhancement

After the increased internal resolutions were implemented in the X432 fork, as well as in DraStic and even the barebones official Nintendo Virtual Console DS emulator on Wii U, the mainline DeSmuME project developers decided to reconsider and include their own implementation for higher internal resolution.

Official dev builds now have the option to render at a higher resolution as well, and filter textures to boot. Overall, it's more hardware intensive than X432R's implementation.

The latest development version of RetroArch DeSmuME core also has an option to increase internal resolution which can be set using desmume_internal_resolution in Core Options. This option was added in August 8, 2015 commit. This is massively CPU-intensive because only SoftRasterizer exists in RetroArch core.

  • The OpenGL 3.2 renderer option in 3D Settings supports Multisampling Anti-Aliasing (MSAA). Turning it on helps the edges of ultra low-res DS polygons and lines smooth out appear to wobble less during movement, and retain their shape better when viewed from distance. Unlike post-processing effects that modify the still frame after completion and essentially try to guess at the shapes they are smoothing, this effect knows the actual shapes of the polygons themselves.
    • Versions before r5032 had this option for a long time, but it was only put in the GUI at r5032. To turn it on in older versions you needed to change a value from false to true in the source code and recompile it.
  • Another thing you can do is filter it. Make sure OpenGL and Filter are checked under Display Method.
  • Finally, there are a variety of post-processing shaders that can be selected under Magnification Filter. Whether that is simple Nearest 2x or some pixel art scaling filter like HQx or xBRZ is up to you. No post-processing smoothing is perfect, but if you want to use one the xBRZ options are generally the most high-end among smoothing filters present.
  • macOS version of DeSmuME also has support for multi-pass post-processing shaders and filters which Windows version currently doesn't have.
  • Leaving it native and aligning it to a CRT (Set to a 384 high resolution) is also an option, if you feel like going through the effort.
  • Recent DeSmuME revisions now add support for texture filtering, greatly reducing pixelation albeit at the cost of blurrier visuals. Some may find this rather jarring or too N64-esque, so it's a matter of individual preference as there's an option to turn it on or off.

DeSmuME X432R

Mainline DeSmuME didn't offer any options for higher than native internal resolutions at first. DeSmuME X432R is a fork with the option to increase internal resolution. Be warned that this option is very system-intensive. There have been reports of people who can run Dolphin and PCSX2 at a perfect pace but can't run this at full speed using increased internal resolution, however newer versions are much faster.

While generally more accurate, the SoftRasterizer is massively CPU-intensive in this mode, whereas the OpenGL renderer shares the load with your GPU. This can be considered a speedup option, but it also boasts an MSAA option unavailable to SoftRasterizer.

This fork also has some options for configuring sub-screens. This fork is no longer active, and its last version is dated 19-04-2015.

Review

DeSmuME is currently the best available Nintendo DS emulator on PCs. It is far better than No$GBA when it comes to accuracy, though not flawless. However, it's more hardware intensive than any other DS emulator (either No$GBA or emulated DraStic) and many features are not supported.

Gallery

Guides and info