Emulation
Emulation is the (successful) running of code on systems that it was not intended for by use of hardware or as is much more often the case software, software emulation takes two main forms:
Interpretation: used mainly when code used in the original system is very similar to the system upon which the code is to be run, changes instructions from the emulated system in instructions compatible with the system doing the emulating.
"Core" emulation is more common, it is where a model of the CPU and other hardware in the device to be emulated is set up used fake the presence of the original hardware on a system that is doing the emulating.
If you are reading this wiki there are two sorts of emulation you shall likely want to know about:
Emulation of a handheld
This section will tend to deal with emulation of the handhelds on a PC/MAC or some stationary console, there does however exist GBA emulators for the GP32 and PSP but these due to the fact both of the machines are portables emulation may not be of the same quality as on a PC (the GP32 does have some fantastic emulators for other consoles especially the 16bit ones).
Gameboy Advance
The GBA was emulated before the console was even released thanks to some leaked info. Fastforward 5 years and there exist a few emulators for you to use.
Originally quite a few emulators existed for the console but nowadays the main emulator that most use (or at least one of the few modifications thereof) is known as Visualboy Advance. See the article VBA for links to it and its modifications.
If you want a list/fairly complete history Zophar's Domain is quite good for it. Here is list of GBAemulators:
ADG An old discontinued emulator]
BATGBA An emulator, not updated in many years.
boycottadvance An emulator, windows, Mac and linuc versions available and just started on DS emulation.
CowBite An early emulator, now discontinued.
DreamGBA Homepage offline so only a download link on the left but an early emulator.
GebeaAnother emulator, quite good. Made by the same author as the DS emulator Dualis.
Mednafen Emulated many systems including GBA.
MappyVM more a developers too than anything else.
no$gba A emulator line with a long history, just started on DS too.
rascalboy Advance Another emulator.
sGba a WIP emulator.
VGBA Commercial GBA emulator, just started on DS emulation.
Visual Boy Advance The emulator most people use. Links and modification links on the article linked.
RbVBA A relatively new REALbasic interface (front-end) for VBA so Linux users can make use of it.
Nintendo DS
The Nintendo DS is not emulated very well at all yet, especially when compared with the Gameboy Advance and other systems.
There exist a few emulators all with good and bad features, running commercial ROMs is just about possible although a high spec PC is required if you wish to get anything from it. There are seven main emulators around for the Nintendo DS although Ensata is part of the official Nintendo DS developer kit and so will not be mentioned (it is not very good anyway):
NO$GBA - requires a copy of the DS and GBA BIOS to run (a lot of other emulators implement BIOS faking) but this series of emulators has been around for a very long time with a good reputation to boot, one to look out for.
iDeaS - A good emulator with a lot of promise.
DSEmu - One of the first DS emulators, does not run any commercial games but able to run most of the demos around .
Dualis - No commercial games really running yet but still another one to pay attention to, sound emulation started too.
DeSmuME - One of the best emulators around until development was stopped, being open source it has however been continued even with some unnoficial updates, Normmatt's DeSmuME Build adds basic SRAM save capability and instant save support, Normmatt's DeSmuME source. You can grab DesMuMe 0.3.6, which is reportedly a significant improvement over the previous builds here:
VGBA - (Current Version 3.0) - A commercial emulator that has just started on DS emulation.
NeeDS Not the official link there but this an an emulator based on DeSmuME and more optimised for speed. If it continues it is certainly a very strong contender (it already plays a few more basic DS titles).
Emulation on a handheld
This section will deal with emulators that you can get running on your handheld and shall be focused on emulation on the Gameboy Advance and DS.
Gameboy Advance
Until a decent section is up and running GBAfan is a good place to get infomation on emulators (and remakes of games) for the Gameboy Advance.
If you are just after a quick list of devices emulated well on GBA hardware there is a good PC engine emulator (with superCD support on the EZFlash III, Sega master system and Game gear emulators, a gameboy original/mono and recently a Colour version was made,NES emulators and a Sierra AGI emulator. (see GBAfan for links, you will also see a SNES emulator which does indeed have games that are playable with it but the GBA is not that fast so do not expect much from it.
A few other good pages:
DS
Included in this section will be any noteworthy ports as well as any emulators that come around.
DS emulation is no where near as advanced as the GBA but the increased power of the DS and the increased screen size will make the DS a thing to watch, some of the early emulators now being seen argueable surpass some of the GBA ones.
This is homebrew code so either use a EZManager 2.09final or above version or rename the extension .gba and burn making sure no patches are applied if you use a beta of EZManager 2.09 or EZClient. EZ4 users simply copy the rom that is made by the builder to your miniSD (if save support is availble you may have to run it through EZ4 Client beforehand (use a .gba extension unless told otherwise).
Ports A fair few older games have been ported until this section gets updated here are a few:
see the left hand column of dc-emu for more ports and homebrew games.
Before the list of emulators here are a few emulators that are approaching or have reached reasonable workability and will result in a playable game:
SNESDS A Super nintendo emulator with a fair few games working.
snezziboy DS This is a nice DS port of a new SNES emulator for the GBA. Better than SnesDS is many respects and getting better with every release.
nesDS A Nintendo Entertainment System (NES) (or famicom in Japan) emulator, nice features although lacking true save support (should you have a save from somewhere else and you have it in the SRAM it will work, no saves will be generated though).
Modified NesDS, save support and a few more features.
ScummVM DS Allows you to play Lucasarts' point and click adventure games such as Sam and Max. Works quite well with most fo the SCUMM games playable, see the link for a guide to getting all set up (make sure to use no compression on the zip you make).
GBAGI Allows you to play classic Sierra adventure games (Space Quest, Police Quest, Kings Quest, etc). Patch it with EZClient with "SRAM_TYPE" as the save type to enable savegame support.
Megadrive/genesis emulators (use 0.15 or above).
List of emulators adapted from a post by Normmatt
Arcade
Atari 2600
Chip- 8
Colecovision
Commodore64
Dreamcast Visual memory unit
Gameking
Gameboy/Gameboy Colour
GameGear/Sega Master System
Genesis/Megadrive
GPNDS (Proof of concept port suggets using the emulator below)
Megadrive/genesis emulator (running on EZFlash equipment since 0.15).
Minivmac
http://lazyone.drunkencoders.com/wordpress/index.php
Msx
NeoGeo Pocket
Nes
NesDS, There is a modifed version linked below you may find more useable.
RetroBox DS (still in closed beta)
ScummVM ScummVM DS
Unofficial ScummVM DS (now outdated)
Snes
snezziboy DS This is a nice DS port of a new SNES emulator for the GBA. Better than SnesDS is many respects.
Spectrum
TI 85 Calculator
Vectrex
Watari Supervision
Wonderswan
WIP remake
The section above is complex and not much can be obtained using it so it is currently undergoing a rewrite to use a series of tables and link articles for usage into them. Here is a very early stage example of a redesign:
What follows is a colour coded table that intends to give you information Click on the name of the console/device/system/program you are interested in for an article containing discussion on the console/device/system/program, information on the methods available to run the code and usage instructions for it.
Flawless or better | Playable | Not Available/Not playable | Noteworthy options |
System |
GBA |
DS |
Notes |
---|---|---|---|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
System |
GBA |
DS |
Notes |
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
System |
GBA |
DS |
Notes |
* |
* |
|
|
* |
* |
|
|
Ports |
|||
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|
|
* |
* |
|