3DS:Emulators

An emulator is a piece of software that uses computing power to simulate another device, such as a video game console or a personal computer. As a general guideline, the original Nintendo 3DS is capable of emulating most popular home consoles up to around the (the SNES/Genesis era), while the New Nintendo 3DS series is (just barely) capable of emulating some of the  (the N64/PS1 era). This is because emulation requires significantly more computing power than running the console natively - though even if it could run emulated games as efficiently as native playback, even a new model 3DS would still only be able to emulate the (the Xbox/PS2/Dreamcast era) and possibly the Wii.

The Nintendo 3DS has hardware that allows for native backwards compatibility with the Nintendo DS and Game Boy Advance, meaning such software can run at full speed as they would on the original hardware. While this is not actually emulation, methods that use this hardware will be included here due to the ubiquity of the term.

PlayStation Portable, Vita
Not possible, due to computing power requirements.

Nintendo DS
Nintendo DS software can be played natively using nds-bootstrap, a tool that allows NDS backups to be run from the SD card. In most cases, you will use either TWiLight Menu++ or NDS forwarders to launch the ROM, after which nds-bootstrap will do the hard work of getting it to run.

In the past, Nintendo DS flashcarts were a popular way to run Nintendo DS software. Because of nds-bootstrap's development over the years, they have become less and less necessary, but can still offer useful features like being able to use the flashcart on unmodded 3DS-family and DS-family consoles (depending on the cartridge).

Game Boy Advance
Game Boy Advance software can be played natively by leveraging AGB_FIRM, something built into every 3DS that allows for native playback of Game Boy Advance software. AGB_FIRM was only ever used officially as part of the Ambassador Program for early purchasers of the original Nintendo 3DS before its price was cut.

The current recommended way to run GBA software is open_agb_firm due to its drag-and-drop functionality and ease of save file access. open_agb_firm runs as a payload (similar to GodMode9), meaning it is not directly accessible from HOME Menu (requiring a reboot to enter/exit) unless an alternate bootloader such as fastboot3DS is combined with Open AGB Launcher. If you want to use another method but still want icons directly on your HOME Menu, you can create virtual console injects on a Windows device.

GBA games can also be emulated, the recommended emulator being mGBA. This is the best option if you wish to use cheats and save-states, but performance will rarely be full-speed on old models and some games will not work correctly.

GBARunner2 is a middle ground between native playback and emulation, similar to Nintendont on the Wii - this means it has none of the emulator features and the reduced compatibility of an emulator. It is included with TWiLightMenu++ (which you may already be using for NDS software), but because of the other options available, it isn't recommended.

Game Boy Color / Game Boy
The Game Boy Color and Game Boy are old enough that all models of the 3DS (and even the DS) can run them at full speed. The historically popular GB(C) emulator has been GameYob, but due to 3DS-specific issues the DS version is preferred (ran through TWiLight Menu++). You can also create virtual console injects for GB/GBC games if you prefer individual icons on HOME Menu.

The multi-platform GB(C) emulator PlutoBoy is currently under active development. A GitHub account is required to download the automated builds.

WonderSwan
Possible through the Mednafen (WonderSwan) core on RetroArch. Performance has been reported to be slow on Old 3DS units.

PlayStation 2/3/etc
Not possible, due to computing power requirements.

All Xbox consoles
Not possible, due to computing power requirements.

GameCube/Wii/Wii U/Switch
Not possible. While some 3DS games are ports of GameCube games, these consoles require too much computing power to be emulated by the 3DS. Also note that due to these computing power requirements, ports of Wii/Wii U/Switch games are also extremely unlikely.

Dreamcast
Not possible, due to computing power requirements.

PlayStation 1
Possible through the PCSX ReARMed core on RetroArch, with playable speeds on New 3DS only. A partial compatibility list can be found here, and optimal configuration can be found here.

Nintendo 64
Barely possible on New 3DS only through DaedalusX64-3DS. A partial compatibility list can be found here; most games are incompatible or run very slowly.

Super NES
Possible through Snes9x for Old 3DS, which is optimized so that many SNES games can run well on an Old 3DS. New 3DS users can opt to use this emulator or to create virtual console injects that use Nintendo's official SNES emulator.

NES / Famicom Disk System
The NES is old enough that all models of the 3DS can run it at full speed. The recommended emulator is VirtuaNES. Virtual console injects can also be created if you prefer individual icons on HOME Menu.

Sega Genesis / CD / 32X / Master System
Possible through PicoDrive, covering the Genesis / Mega Drive and its add-ons (the Sega CD and 32X) as well as the Sega Master System. It is apparently reasonably well-optimized for Old 3DS.

Arcade cabinets
WIP

Windows NT (XP/Vista/7/etc)
Not possible, though you can stream a computer's screen to a 3DS with a program like TinyVNC.

DOS / Win9x
Possible through. Tested mostly on New 3DS. Windows 3.1 and 95 technically work, albeit extremely slowly; this emulator is much more practical for older DOS games.

Commodore 64
Possible through Vice3DS.

Calculators
Omega, a custom firmware for the Numworks graphing calculator, has a simulator available for the Nintendo 3DS. The latest available version (as of 2022/08/09) is available.

WabbitDS is a TI-83 Plus emulator for the Nintendo DS. It might work on the 3DS under TWiLight Menu++ or through a DS flashcart.

Overview chart
WIP