One of the first things homebrewers do when they gain the ability to run unsigned code on a game console is to see what other console's games they can get running. Although the use of commercial ROMs varies from legally ambiguous (in the case of backup copies of your own software) to unambiguously illegal (in the case of just downloading stuff), emulator programs are perfectly legal -- and capable of running legal homebrew software designed for the consoles. We don't really want to get into the legal and ethical issues. We think that programs designed to run like old hardware are just cool.
Just like every other console, the advent of DS flash cards has brought with it a booming emulation scene. And since homebrew is so easy to run on the DS, and MicroSD cards so copious, it's easy to turn the humble DS into a classic gaming Swiss Army System.
We've outlined some of the most important DS-based console emulators below, along with a ton of lower-profile emulators.
NESDS: This NES emulator has excellent compatibility and speed, but one fatal flaw cripples its feature set: the touch-screen menu is beyond inaccurate -- selecting something from the menu is nearly impossible. Most of the time, trying to save will lead to loading, and trying to remap buttons will lead to stretching the screen resolution, or something like that. Luckily, you can use the L trigger to rewind gameplay (an awesome feature) to reduce dependence on save states.
In addition, Kyle Roberson has made a version that uses button combinations to save and load, reducing touchscreen dependence.
DSMasterPlus: The latest version of this Sega Master System emulator, created for a NeoFlash competition, supports the DS Motion cartridge. Ever wanted to play ALF with waggle? No problem! Of course, the good old d-pad also works. This is possibly the best emulator on the DS: perfect compatibility (with Game Gear games as well), configurable buttons, a user interface that works, and even a wacky extra feature. Perfect if you happen to have a Master System and Phantasy Star collecting dust in the closet.
PicoDrive DS is compatible with a larger assortment of games and has nice screen-resolution options, but JenesisDS has a much better framerate on the games it can run (which includes the very framerate-dependent Gunstar Heroes). Just get both! JenesisDS has a zoomed-in view that leaves the edges of the screen off. This isn't usually a problem, but if a game involves a lot of things coming from the edges of the screen (a shooter, for example), you may have difficulty. The latest release of JenesisDS even includes the beginnings of a Sega Master System emulator.
SNESDS: For some reason, most SNES emulators seem to have controller issues, at least in personal experience. It's nice, then, to have one designed for a system with a standard, attached controller. SNESDS runs SNES games at a surprisingly accurate framerate! If you don't mind some weird graphical issues (like onscreen text appearing behind background sprites, or black skies in Super Mario World), it's an excellent way to play SNES games on the go. Of course, you can get tons of ported SNES games for the GBA, which don't have glitches. Two other known SNES emulators, SnezziDS and SNEmulDS, failed even to run in our tests, but may work for you!
LameboyDS: Having a good Game Boy emulator helps address the only real advantage actual GBA systems have over the DS: Game Boy/Game Boy Color compatibility. LameboyDS offers color/black-and-white support, a speed-up button and plenty of other options. Check it out -- and download the free Game Boy Color version of Daikatana, which is actually a quite cool Zelda-style ARPG!
MarcaDS: A DS program based on the same idea as MAME: arcade emulation. The DS is significantly less powerful than most systems for which MAME is designed, so right now it's limited to games that use the Z80 chip (think early-to-mid '80s).
NeoDS: The first Neo Geo AES/MVS emulator for the DS involves a complicated "conversion" process for ROMs, and there are reports of serious, flash-card-wiping crash bugs. But Neo Geo games! On the DS! Just back up your card's data first.
Other console emulators we think you should know about: StellaDS (Atari 2600), ColecoDS (ColecoVision)
Computers: The DS isn't just capable of emulating dedicated game machines. Classic computer systems have been emulated as well, allowing their unique libraries to be made portable. Be warned, though: if you don't already know how to run programs on these obscure old systems, you won't have an easy time doing so on the DS. You'll have to look up the command line syntax for the original computers. Yes, command line.
ScummVM DS: Not a hardware emulator, but rather an emulator for the SCUMM (Script Creation Utility for Maniac Mansion) software platform, on which the classic LucasArts adventures like Day of the Tentacle, Sam & Max Hit the Road, and the Monkey Island series work. ScummVM even runs other companies' adventures, including Westwood's Legend of Kyrandia series and even (as of recently) Sierra's AGI games like King's Quest and Leisure Suit Larry! It includes save support and multiple display modes.
Mini VMac DS: This program turns your DS into a black-and-white, Oregon Trailing Mac Plus. Doing this will make your DS precisely as useful as an old Mac. But much more pocket-sized!
DSDOS (MS-DOS) isn't really an MS-DOS emulator, but more of an ... imitator. You can use it to move, copy, and delete files on your card, or to boot .NDS files in a lovely command-line interface. That's pretty interesting! It's sort of like playing the best part of any old adventure game: getting the game to run.
PenkoDS (MSX) allows you to run things like the original version of Metal Gear and SD Snatcher. In fact, the MSX is pretty important to gaming history -- in Japan.
Other computer systems emulated on the DS range from the kind-of obscure to the very European to the "we don't know what this is":
StyxDS (Atari ST)
CrocoDS, AmeDS (Amstrad CPC)
DS81 (ZX 81)
FrodoDS (Commodore 64)
SpeccyDS, DSpec (ZX Spectrum):
ThomDS (Thomson M05)
Playing emulated games on the DS takes us right back to the feeling we had the first time we saw NES games running on a computer -- the feeling that the future had happened. And now those same games, plus much more computationally intense ones, can run on a handheld system. Computer programs can run on the handheld system. The future is in making the games of the past tiny.