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).

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 does not technically fall under the term 'emulation', methods to run such software will be included here due to the ubiquity of the term.

PlayStation Portable, Vita
Not possible.

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).

A proof-of-concept port of the DS emulator DeSmuME to the 3DS was once created, but only exists as a curiosity due to the methods mentioned above.

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). If you instead wish to run GBA software as an icon on your HOME Menu, virtual console injects can be created instead, but requires access to a device running Windows.

The GBA can also be emulated, the recommended emulator being mGBA. This is your best option if you wish to use cheats and save-states, but performance won't always be full-speed, especially on the Old 3DS.

GBARunner2 is a middle ground between native playback and emulation, similar to Nintendont on the Wii. It is included with TWiLight Menu++ (which you may already be using for NDS software). Because of the other options available, it generally 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.

All Xbox consoles
Not possible.

GameCube/Wii/Wii U/Switch
Not possible. While some 3DS games are ports of GameCube games, that does not mean that the 3DS (even the New 3DS) is even remotely capable of emulating a GameCube game (let alone anything newer).

Dreamcast
Not possible.

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, leveraging 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 something 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