Nintendo - 3DS (Citra)

Background

Citra is an experimental open-source Nintendo 3DS emulator/debugger written in C++. It is written with portability in mind.

The Citra core has been authored by

  • Citra Emulation Project

The Citra core is licensed under

A summary of the licenses behind RetroArch and its cores have found here.

Requirements

OpenGL 3.3 or higher

Warning

There is currently no ‘working’ macOS version available. This is because this core requires OpenGL core 3.3 context, and RetroArch on macOS currently does not support this. We will have to add support for this to a future version of RetroArch on macOS before this core will start to work on it.

Extensions

Content that can be loaded by the Citra core have the following file extensions:

  • .3ds
  • .3dsx
  • .elf
  • .axf
  • .cci
  • .cxi
  • .app

RetroArch database(s) that are associated with the Citra core:

Features

Frontend-level settings or features that the Citra core respects.

Feature Supported
Restart
Screenshots
Saves
States
Rewind
Netplay
Core Options
RetroAchievements
RetroArch Cheats
Native Cheats
Controls
Remapping
Multi-Mouse
Rumble
Sensors
Camera
Location
Subsystem
Softpatching
Disk Control
Username
Language
Crop Overscan
LEDs

Directories

The Citra core's library name is 'Citra'

The Citra core saves/loads to/from these directories.

Frontend's Save directory

Geometry and timing

  • The Citra core's core provided FPS is 60.0
  • The Citra core's core provided sample rate is 32728 Hz
  • The Citra core's base width is (Base width)
  • The Citra core's base height is (Base height)
  • The Citra core's max width is (Max width)
  • The Citra core's max height is (Max height)
  • The Citra core's core provided aspect ratio is (Ratio)

Core options

The Citra core has the following option(s) that can be tweaked from the core options menu. The default setting is bolded.

Settings with (Restart) means that core has to be closed for the new setting to be applied on next launch.

  • Enable CPU JIT [citra_use_cpu_jit] (enabled|disabled)

    Enable Citra's 'dynarmic' dynamic recomplier. Can improve performance. Instructions that are not implemented by the recompiler fall back into the interpreter CPU core.

    If disabled, Citra will solely use the Interpreter CPU core.

  • Enable hardware renderer [citra_use_hw_renderer] (enabled|disabled)

    Awaiting description.

  • Enable shader JIT [citra_use_shader_jit] (enabled|disabled)

    Awaiting description.

  • Resolution scale factor [citra_resolution_factor] (1x (Native)|2x|3x|4x|5x|6x|7x|8x|9x|10x)

    Self-explanatory.

Screen layout positioning - Default Top-Bottom Screen

Screen layout positioning - Single Screen Only

Screen layout positioning - Large Screen, Small Screen)

  • Screen layout positioning [citra_layout_option] (Default Top-Bottom Screen|Single Screen Only|Large Screen, Small Screen|Side by Side)

    Awaiting description.

  • Prominent 3DS screen [citra_swap_screen] (Top|Bottom)

    Awaiting description.

  • Right analog function [citra_analog_function] (C-Stick and Touchscreen Pointer|Touchscreen Pointer|C-Stick)

    Awaiting description.

  • Emulated pointer deadzone (%) [citra_deadzone] (15|20|25|30|35|0|5|10)

    Awaiting description.

  • Enable virtual SD card [citra_use_virtual_sd] (enabled|disabled)

    Awaiting description.

  • Savegame location [citra_use_libretro_save_path] (LibRetro Default|Citra Default)

    Awaiting description.

  • 3DS system model [citra_is_new_3ds] (Old 3DS|New 3DS)

    Awaiting description.

  • 3DS system region [citra_region_value] (Auto|Japan|USA|Europe|Australia|China|Korea|Taiwan)

    Awaiting description.

  • "Enable GDB stub [citra_use_gdbstub] (disabled|enabled)

    Awaiting description.

Joypad

User 1 input descriptors RetroPad Inputs Citra inputs
B B
Y Y
Select Select
Start Start
Up Up
Down Down
Left Left
Right Right
A A
X X
L L
R R
ZL ZL
ZR ZR
Home Home
Touch Screen Touch Touch Screen Touch
X Circle Pad X
Y Circle Pad Y
X Right analog function
Y Right analog function

Mouse

RetroMouse Inputs Citra inputs
Mouse Cursor Touchscreen Pointer
Mouse 1 Touch Screen Touch

Pointer

RetroPointer Inputs Citra inputs
or Pointer Position Touchscreen Pointer
or Pointer Pressed Touch Screen Touch

Compatibility

Nintendo - Nintendo 3DS