DeSmuME (formerly named YopYop DS) is a free/open source Nintendo DS emulator for Linux, OS X, Wii, AmigaOS 4, andWindows. Its name is derived from emu (which is short for emulator), DS and ME.
DeSmuME supports save states, dynamic recompilation (just-in-time compilation (JIT)), V-sync, the ability to increase the size of the screen, filters to improve image quality and has software (Softrasterizer) and OpenGL rendering. DeSmuME also supports microphone use on Windows and Linux ports, and direct video and audio recording. The emulator also features a built-in movie recorder.
According to the official wiki project, there are no hard minimum hardware requirements for DeSmuME, but most games will run fairly well on the following operating systems and hardware:
- Windows: XP SP2 or later
- OS X: v10.5.8 Leopard or later
- Linux OS: any recent distribution with a 2.6 kernel
- CPU: 2.0 GHz Intel Core 2 Duo or equivalent
- RAM: 1 GB
Once you’ve downloaded the emulator, find a convenient place on your hard drive to store your DS emulation. Create a folder for your Nintendo DS needs. In this folder, create a folder for the emulator and another for your ROMs. Take the contents of the emulator archive and drag and drop them into the emulator folder you created.
Now, take all the ROM images you have and place them in your ROMs folder. If you have different emulators or different versions of emulators, it’s easier to simply place the ROMs outside of the emulator folder so it is in the easiest location to find.
Now, open the emulator:
The first thing we probably need to do is to configure the controls. To do that, we can click onto the “Config” drop-down menu and click on “Control Config”:
The control that’s highlighted in green simply means that you have that box selected. The rest of the colors are explained on this window on the right hand side. Simply press the key you want to correspond to your virtual controller. The green highlighted portion will move to the next box for you so you can efficiently configure your buttons one at a time. When done, click on “OK”. If you made a mistake and need to go back, just click on the box you want corrected and make your correction.
The next thing you can do (this is entirely optional, but is something I do) is to adjust the screen size. In it’s current size, I find that the game is a little small on screen. So, to adjust this aspect, simply go into the “View” drop-down menu and hover yor mouse over “Window Size” and select how much you want the size to be increased. Remember, Nintendo DS games have a split screen with the game display on one side and another game display on the other half. This emulator simply stacks these screens one on top of the other. So, the resulting dimensions are optimized to replicate the DS display, not necessarily replicating the game so it is suited for your display. Personally, I choose 1.5x display, but this depends entirely on your screen resolution:
Now, the Save and Load State feature exists in the “File” drop-down menu. You can access it by hovering around the “Save State” or “Load State” and clicking on the slot you want to save or load. Alternatively, and more conveniently, you can simply use the speed keys (which are Shift+F1 – F10 to save and F1 – F10 to load – each F key representing a different slot respectively):
Finally, you can load a ROM by clicking on the “File” drop-down menu and clicking on “Open ROM…” (or CTRL+O if you prefer the speed key):
Browse to the ROM directory and pick a game. The emulator should will remember the directory you got your ROM from.
Whenever I am using DeSmuME, my computer seems to crash a lot more. What’s going on?
This is something I have encountered while testing this emulator. The problem is that stability doesn’t seem to be part of DeSmuME’s development testing. As such, the emulator can crash your computer. Having tested emulators that are much more resource intensive such as Gamecube and PS2 emulation, the theory that it’s just because it’s resource intensive is, as far as I’m concerned, debunked. Other theories suggest that it’s an overheating issue. Having run temperature programs while running the emulator, the temperature readings are well within normal operating parameters before crashing the system. So, unless running other resource intensive programs overheats the system, then chances are, it’s not that. The other theory is that the drivers are simply out of date. Currently, I’m running a newer machine, so that theory, as far as I’m concerned, is also debunked. This seems to be a case of blaming everything but the emulator itself as reflected in both the official FAQ (“This is not desmume’s fault”) and official forums (“it’s likely not desmume’s fault” and ” reformat your system”). So, because of the denials that the emulator is to blame, this problem is not likely going to be fixed any time soon. If you run into this, your only option seems to be to find a different emulator.