Nintendo 3DS emulators

From Emulation General Wiki
(Redirected from 3DS)
Jump to navigation Jump to search
Nintendo 3DS
Nintendo 3DS XL
Developer Nintendo Research & Engineering
Manufacturer Nintendo, Foxconn
Type Handheld video game console
Generation Eighth
Release date JP: February 26, 2011
EU: March 25, 2011
NA: March 27, 2011
AU: March 31, 2011
Discontinued WW: September 16, 2020
Predecessor Nintendo DS/DSi
Successor Nintendo Switch
Emulated
For emulators that run on the Nintendo 3DS, see Emulators on Nintendo 3DS.

The Nintendo 3DS is an eighth-generation handheld game console by Nintendo, released on March 27, 2011, for $249 ($357 in 2026). The original model and the 2DS had a dual-core ARM11 MPCore at 268 MHz and a single-core ARM9, 128 MB of RAM and 6 MB of VRAM, and a DMP PICA200 GPU at 268 MHz. The New 3DS and New 2DS XL models upgrade this to an 804 MHz quad-core ARM11 and 256 MB of RAM, along with an extra pair of shoulder buttons and a right analog stick.

The most notable feature of this console is the use of autostereoscopic (glasses-free) 3D, which can be configured using a slider. This was omitted on the cost-reduced 2DS and New 2DS XL models, which were released due to eye health concerns with children ages 6 and under whom Nintendo advised not to use the 3DS' stereoscopic mode (though it is speculated that said advisories were more for liability reasons in case of a health-related lawsuit).

Remember, certain titles are exclusive to the New 3DS, New 3DS XL and New 2DS XL. Make sure your chosen emulator supports these variations if you want to play them.

Emulators

[edit | edit source]
Before editing, review the getting involved and recommended pages. See system requirements page for performance demand of the emulators.
See tables for enhancements and hardware features & peripherals.
For more details such as licensing, programming language, emulation method, visit each emulator’s dedicated page.
Name Platform(s) Active? Latest version License Compatibility libretro core New 3DS Recommended? (overall)
PC
Citra-based Azahar

azahar_libretro

Windows macOS Linux 2126.1.1

libretro core

GPLv2 (Copyleft) 66.18%
364 out of 550 reported titles
AzaharPlus Windows macOS Linux 2125.1-B GPLv2 (Copyleft)

Source code does not state changes, which may be a violation of the GPLv2 license.

~
Borked3DS Windows macOS Linux v2025.03.11 GPLv2 (Copyleft) ?
Citra

citra_libretro

Windows macOS Linux [note 1] libretro core (obsolete)[1]

Former website (obsolete)

GPLv2 (Copyleft 63.01%
327 out of 519 reported titles
Lime3DS Windows macOS Linux 2119.1 GPLv2 (Copyleft) ?
PabloMK7 fork Windows macOS Linux r608383e GPLv2 (Copyleft) ?
Mandarine-Neo Windows macOS Linux 1.3.0 GPLv2 (Copyleft) ? ?
BizHawk Windows Linux 2.11.1 MIT
GPL
? ~
Panda3DS Windows macOS Linux nightly
0.9

libretro core

GPLv3 (Copyleft) 40.29%
56 out of 139 reported titles
(Most might need retesting/remarking)
~
Tanuki3DS Windows macOS Linux Linux ARM 0.5.1 GPLv3 ? ? ~
Mikage Windows Linux ~ git ? ? ? WIP
3Beans Windows macOS Linux git GPLv3 ? ? WIP
3dmoo Windows Linux git GPLv3 (Copyleft) ?
Corgi3DS Windows macOS Linux git GPLv3 (Copyleft) ?
DualSOUP Windows ? git ? ? ?
LemonLime Windows macOS Linux git ? ?
TronDS Windows Linux 1.0.0.5 ? ?
VitaminC Windows git ? ? ?
VVCTRE Windows archive Proprietary
(unreleased citra-based code)
?
Mobile
Citra-based Azahar

azahar_libretro

Android iOS AppleTV [note 2] 2126.1.1

libretro core

GPLv2 (Copyleft) 66.18%
364 out of 550 reported titles
Folium

(Cytrus)

iOS App Store ($)

2.0

GPLv3 (Copyleft)
AzaharPlus Android 2125.1-B GPLv2 (Copyleft)

Source code does not state changes, which may be a violation of the GPLv2 license.

~
Citra MMJ Android ~

Release binaries are still actively published, but source code is not.

git GPLv2 (Copyleft)

Source code is not published in full, which may be a violation of the GPLv2 license.

? ~

Recommended as a backup emulator only for dual-screen Android handhelds such as the AYN Thor or Ayaneo Pocket DS if games are crashing or performing slowly in Azahar.

Borked3DS Android v2025.03.11 GPLv2 (Copyleft) ?
Citra

citra_libretro

Android iOS iPadOS [2] [note 1] libretro core (obsolete)[1]

Former website (obsolete)

GPLv2 (Copyleft 63.01%
327 out of 519 reported titles
Lime3DS Android 2119.1 GPLv2 (Copyleft) ?
Mandarine Android 1.3.0 GPLv2 (Copyleft) ?
PabloMK7 fork Android r608383e GPLv2 (Copyleft) ?
Panda3DS Android 0.9 GPLv3 (Copyleft) ? ~ ~
Mikage Android ~ git ? ? ? WIP
Manic EMU iOS iPadOS 2.0.0

git

AGPLv3 (Copyleft) ? ? ?
Provenance iOS iPadOS AppleTV 3.3.0

git

? ? ? ?

Comparisons

[edit | edit source]
For more information about Citra forks, see Citra#Forks.
Citra
An open-source Nintendo 3DS emulator made by experienced emulator developers. It supports many hardware features, peripherals, and enhancements. An official Android version was released in May 2020. A VR fork exists by the name of "CitraVR". On March 4th 2024, the lawsuit filed by Nintendo against the management of the Yuzu emulator led to the decision to cease official distribution of Yuzu and Citra. However, the community quickly responded with the creation of mirrors and forks, see the Citra#Forks section for more information.
Panda3DS
An HLE approach 3DS emulator founded by Alber and wheremyfoodat (Peach), and currently developed by an array of developers. It can run many games, even including some Nintendo 3DS applets.
Tanuki3DS
HLE 3DS emulator for MacOS and Linux written in C which aims to be simple, fast, and compatible. Currently it can play a handful of games at full speed and supports some nice features.
BizHawk
It has a core named "Encore", which is based on Citra. "Works out of the box." Although BizHawk's 3DS core doesn't support some hardware features that Citra and its forks do.
Mikage
An emulator developed by Tony Wasserka, a.k.a. neobrain, which focuses on optimization and stability on Android and PC, looking to fill the gap left by Citra. Mikage is in an early stage of development, though it already supports some hardware features and several commercial games. Mikage became open-source in 2025, though still unfinished as a usable emulator.
3Beans
3Beans is an experimental low-level 3DS emulator and runs the entire 3DS operating system as if it were executing on real hardware. The emulator is still in early development and can boot the home menu and play some cartridge-based games, though it has numerous issues and limitations. It can run custom FIRMs like GodMode9 using a NAND hacked with boot9strap.
VitaminC
An experimental fully LLE (new) 3DS research emulator that targets extremely high accuracy.
Corgi3DS
A unique 3DS emulator designed for macOS systems. Its GitHub activity started on May 5, 2019. The main programmer is a self-proclaimed dog-lover and has previously created CorgiDS and DobieStation, though the former appears to have been abandoned. Corgi3DS is mainly indigenous, but the preliminary Wi-Fi code was ported from melonDS' code. The main programmer said that they "haven't worked on it in several months, it is basically a hobby project of mine that I touch when I feel the urge". Thus, the project is on an indefinite hiatus.
TronDS
A closed-source Nintendo 3DS emulator, presumably made by the iDeaS author. Little is known about it other than that it can run simple homebrew. It can't be used for playing games.
3dmoo
An open-source Nintendo 3DS emulator, made by experienced developers in the DS hacking scene. It was released shortly after Citra and received similar progress for a few months, but was eventually aborted by its authors after a while.

Enhancements

[edit | edit source]
Please only include recommended emulators in this table. Do not bump or spam GitHub threads, issues, or feature request pages.
Name Azahar AzaharPlus
Controls Input lag mitigating ?
Mouse injector ?
Turbo button ? ?
Graphics Pre-rendering anti-aliasing

(MSAA, SSAA)

WIP ?
Ray tracing

(DXR, VRT and MRT)

Implementing ray tracing in an emulator is unfortunately quite challenging and unlikely to be feasible in the near future.

However, you can try "Screen-Space Ray Traced Global Illumination" shader using ReShade.

Resizable internal resolution ?
Super-resolution techniques

(DLSS, XeSS and FSR 2+)

Requires access to the depth buffer and temporal data like motion-vectors, so it is quite challenging and unlikely to be possible soon.

Besides any GPU that can use DLSS can run these emulators at 4k native with ease anyway.

Texture replacement ~ ?
Ultra-widescreen hack

Widescreen already supported on 3DS system. However, for DS backward compatibility titles, you need to use patches to play in widescreen mode. There is no support by system for render games in other ratios such as 16:10, 21:9, and 32:9.

?
Performance Frame generation technologies

(LSFG, DLSS-FG and SM, XeSS-FG, AFMF and FSR FG)

Implementing frame generation technology in an emulator is unfortunately quite challenging and unlikely to be possible soon however post-processing techniques such as motion interpolation is quite possible. Input latency will be a crucial factor, but its impact likely varies depending on the specific technique used, it is recommended to use after applying the "Internal Framerate Hack"and "skip presenting duplicate frames option".

While AFMF or LSFG could be used with Azahar, please be aware some visual glitches and artifacts may occur at this time.

Internal frame rate hack ? ?
Overclock ?
Preload ROM image to RAM

For users with sluggish multi-platter HDDs or plagued by horrible seek times, this enhancement might offer smoother experience, potentially reduced power consumption; it also shines when images reside on a network drive. Although keep in mind that preloading image would take some time, and it will require additional amount of RAM capacity.

?
Post-processing AI-powered filter
(Freestyle)
? ?
Filters ?
Inverse tone mapping compatible ? ?
Post-rendering anti-aliasing

(FXAA, TXAA, and MLAA/SMAA)

?
Post-rendering scaling

(Sharp bilinear, Lanczos and FSR 1)

?
Shader chain ~

Exclusive to obsolete Citra libretro core.

?
Quality of life Automatic updater ~ ?
Big Picture Mode ?
Built-in cheat manager ?
Built-in mod editor and manager ?
Built-in patch manager ? ?
Built-in save manager ? ?
Command-line options ? ?
Pause/Resume emulation ? ?
Per-game profiles ? ?
Portable and stealth

Useful enhancement feature for non-personal computer use or plug-and-play scenarios. However, the software may still require the necessary prerequisites and dependencies for your operating system if it is not statically linked.

?
Streamable compression format

Azahar supports.

?
TAS features Fast forward/Turbo speed ?
Macros/Scripts/Lua ? ?
Movie recording/playback ?
Rewind ?
Save states ?
Misc. Audio filters and presets

Simulation of characteristic playback limitations and coloration of vintage consumer audio hardware, such as CRT television speakers, arcade cabinets, handheld consoles, early PC sound outputs, and low-fidelity integrated speakers. These filters are not intended to be perfectly accurate recreations, but rather to evoke the tonal qualities, distortion, bandwidth limits, resonance, and compression associated with 8-bit and 16-bit era devices. Examples include mono or narrow stereo output, reduced frequency response, speaker cone distortion, mild saturation, aliasing, and preset lo-fi profiles inspired by classic TVs, portable game systems, radios, and retro multimedia hardware.

Exclusive to libretro cores at the moment.
Broadcast games from original hardware to emulator

PabloMK7's pull request, Lime3DS's feature request. Also available in Borked3DS and Azahar. For Azahar, Azahar Artic Setup Tool is required to be installed on modified original hardware to broadcast games from original hardware to Azahar.

?
Debug features ? ?
EmuVR support Exclusive to libretro cores at the moment.
File browser
Lets the user look at the ROM's internal files.
?
Free Look

Free Look is an enhancement feature that allows manipulation of the in-game camera.

While freecam would be technically possible, it requires per-game patches.

Said patches would require a significant amount of time to reverse the game's engine, which means that only someone talented with enough dedication to a single game could do it. Recently, Tanuki3DS implemented experimental free look (afaik no other 3DS emulator has this feature)

RetroAchievements WIP ?
Rich Presence (RPC)

Allows the emulator to share real-time game session details (e.g., current game title, level, boss, playtime, or custom status) with external applications. This enables features such as displaying what you're playing on your profile, inviting friends to spectate, or triggering join-in-progress functionality where supported.

? ?
Screen translator

Using optical character recognition (OCR) and other techniques, this feature can provide live translation of in-game text, text-to-speech for visually impaired users, and more — either on demand or automatically.

You can use RetroArch's AI Service or the standalone offline bquenin's Interpreter.

Hardware features and peripherals

[edit | edit source]
Please only include recommended emulators in this table. Do not bump or spam GitHub threads, issues, or feature request pages.
Name Azahar AzaharPlus
Hardware features 3D screen

Supports Stereoscopic 3D mode (Side by Side, Anaglyph, Interlaced, Reverse Interlaced).

?
Connectivity Infrared ? ?
Wi-Fi Download play ?
DS connectivity ?
Internet ?
Local play ? ?
Nintendo Network ?
StreetPass/SpotPass [3] ?
Wii connectivity ?
Wii U connectivity ?
DS Mode ?
Head-tracking (New Nintendo 3DS) ? ?
HOME Menu ?
Input Microphone

Supports microphone as Static noise and Real device.

?
Motion sensor

Citra supports motion control in Mouse (Right-click), CemuhookUDP, and SDL modes.

?
Touchscreen

Supports touchscreen in Emulator Window and CemuhookUDP modes. It is possible to use button mapping.

?
NFC ?
Outer and inner cameras

Supports Front and Rear cameras in single (2D) and double (3D) modes. The camera can be a still image or system camera.

?
SD card / microSD card ?
Virtual Console ?
Peripherals AR cards ? ?
Bakutsuri Bar Rod ? ?
Circle Pad Pro/C-Stick ?
Pokémon Tretta Lab ? ?
Poochi Dog ?
Toys-to-life Amiibo ?
Disney Infinity Base ? ?
Skylanders Portal of Power ?
Misc. Battery ? ?
Cartridge hot swapping

It was sometimes possible to apply cheats (such as a player having infinite lives) and other temporary software alterations to games by hot swapping cartridges, even though the cartridges were not designed to be hot swappable.

Surprisingly, a small number of titles, like Animal Crossing: New Leaf - Welcome Amiibo, utilize game card hot swapping. Usually used for save data bonuses and transferring save data.

? ?
System lights ?

DS Mode

[edit | edit source]
Wikipedia - Nintendo 3DS backwards compatibility

In addition to its own software, the Nintendo 3DS is backward compatible with all Nintendo DS and Nintendo DSi software. Like the DSi and DSi XL, the Nintendo 3DS is incompatible with DS software that requires use of the Game Boy Advance port. Nintendo DS and DSi software can't be played with 3D visuals on the 3DS.

  • None of the 3DS emulators support this feature. There was a feature request for implementing this feature to Citra emulator.

Game images

[edit | edit source]

CCI/3DS vs. CIA

[edit | edit source]

There are two types of 3DS game images currently:

NCSD-type
Includes .cci (CTR Cart Image), aka .3ds - data on physical carts, can be executed right off the bat, not used much since no one bothered to develop a CFW solution to load them yet (besides converting them to CIA) and only overpriced flashcarts (Gateway/Sky3DS) can load them.
NCCH-type
Includes .cia (CTR Importable Archive) and .cxi - installers that unpack game data to the SD card or the 3DS NAND memory. Some homebrew apps (FBI, DevMenu) can install CIA files on 3DS systems with CFW installed. Digital games are often distributed as CIAs.
  • Note that CTR (Citrus) is the internal code name for the 3DS.

Due to one format being so far restricted to overpriced flashcarts and the very slow Citra development (meaning playing on an actual 3DS is still the preferred way to go), the CIA format is preferred in many sharing websites, downloader tools, and even tools to dump your own games.

However, converting a CIA image to CCI format (and vice versa) is still possible with no loss of content. Read the Encryption section below for a guide.

Some outdated dumping utilities intended for use with Citra (like braindump) produce damaged decrypted CCI images that can't be easily converted back. No known solution exists so far to fix those dumps.

Encryption

[edit | edit source]

Most dumps online are also encrypted. This encryption poses no problem for playing game images on an actual 3DS since it can deal with that encryption with internal keys included in the bootrom, but becomes a problem when trying to emulate them on PC. Citra requires additional encryption keys to play encrypted games. If you want to play encrypted games on Citra without these keys, you will have to convert your game images to the decrypted format.

Formerly, decrypting those ROMs used to require real 3DS hardware. It required files generated by a real 3DS called xorpads unique to that game version, using the encryption engine within the 3DS. After this part, these xorpads (which are big) can be used with PC tools (or other 3DS-based homebrew) to produce the decrypted game image. After that, some 3DS homebrew (Decrypt9, GodMode9) included tools to directly convert encrypted images to decrypted images with a single button press, but those still require a real 3DS.

The game changer was the sighax exploit, which allowed for the dumping of the 3DS bootrom, which includes these encryption keys. This file can be downloaded from the Emulator Files page. You can then use a program like fuse-3ds to decrypt games using this file. Place boot9.bin in the same folder, run the program, mount the encrypted CIA or 3DS, and find the decrypted.cxi file inside (usually in the first folder). Citra should be able to load this file without issues.

Due to these keys being available, Citra can now play encrypted games (3DS or CIA) without decrypting them. Read this page. Then, go to this Reddit page and copy the code from the second comment (credit floppydoppy2). Copy it and make a new TXT file named aes_keys.txt. Place this TXT file in the sysdata folder of Citra's user directory. This key file is already included in the 3DS Shared Data download in the Emulator Files page.

Notes

[edit | edit source]
  1. 1.0 1.1 On March 4th 2024, the lawsuit filed by Nintendo against the management of the Yuzu emulator led to the decision to cease official distribution of Yuzu and Citra. Using Citra forks recommended from now on.
  2. iOS and tvOS are only supported on the libretro core.

References

[edit | edit source]
  1. 1.0 1.1 Use the standalone version of Citra over the libretro core as the libretro core version is even more outdated and can be slow and unstable.
  2. iOS/iPadOS support only available with rinsuki and Folium forks.
  3. https://web.archive.org/web/20240118041239/https://github.com/citra-emu/citra/issues/4928
    https://github.com/azahar-emu/azahar/releases/tag/2125.0-alpha5

Nintendo(edit)