Citra: Difference between revisions
mNo edit summary |
→Forks: Azahar supports iOS/tvOS in libretro |
||
| (126 intermediate revisions by 56 users not shown) | |||
| Line 1: | Line 1: | ||
{{Infobox emulator | {{Infobox emulator | ||
|logo = Citra.png | |title = Citra | ||
|logowidth = | |logo = Citra.png | ||
| | |logowidth = 100 | ||
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on | |developer = Tropic Haze LLC<br/>Citra Team | ||
|target = [[Nintendo 3DS emulators|Nintendo 3DS]] | |last-version = '''Nightly''' 2104<br/>'''Canary''' 2798 | ||
| | |fate = [https://web.archive.org/web/20240304225805if_/https://citra-emu.org/ Discontinued] <small>(archived)</small> | ||
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on Android|Android]]<br/>[[Emulators on macOS|macOS]] | |||
|website = [ | |architecture = x86_64, ARM64 | ||
|target = [[Nintendo 3DS emulators|Nintendo 3DS]] | |||
|compatibility = [https://web.archive.org/web/20240304201046if_/https://citra-emu.org/game/ Compatibility list] <small>(archived)</small> | |||
|source = [https://github.com/citra- | |website = [https://citra.azahar-emu.org/ citra.azahar-emu.org] <small>(archived on azahar)<br>[https://web.archive.org/web/20240304220745if_/https://citra-emu.org/ citra-emu.org] <small>(archived)</small> | ||
|prog-lang = {{Proglang|C++}} | |||
|bios = [[Emulator_Files#Nintendo_3DS|Required | |license = {{license|GPLv2}} | ||
|source = [https://github.com/citra-mirror/citra GitHub] <small>(mirror)</small> | |||
|bios = [[Emulator_Files#Nintendo_3DS|Required]] | |||
}} | }} | ||
{{for|other software that emulates the 3DS|Nintendo 3DS emulators}} | |||
'''[[wikipedia:Citra (emulator)|Citra]]''' (formerly Akiru) is a discontinued free and open-source [[Nintendo 3DS emulators|Nintendo 3DS]] emulator/debugger written in C++. It is also available as a [[libretro]] core. The emulator is no longer active. See [[#Forks|active forks of Citra]] for other options. | |||
Citra | |||
== | ==Download== | ||
;We do not recommend using Citra anymore. Instead, we recommend using [[#Forks|active forks of Citra]]. | |||
{| cellpadding="4" | {| cellpadding="4" | ||
|- | |- | ||
|align=center|{{Icon|Win|Lin|Mac}} | |align=center|{{Icon|Win|Lin|Mac|Android}} | ||
| | |''[https://web.archive.org/web/20240229205025/https://citra-emu.org/download/ Latest Archived Builds]<br>[https://web.archive.org/web/20240304191743/https://github.com/citra-emu/citra-nightly/releases Latest Archived Nightly (2104)]<br>[https://web.archive.org/web/20240304191843/https://github.com/citra-emu/citra-canary/releases Latest Archived Canary (2798)]'' | ||
|} | |} | ||
If you decide to install it from the archived link, the updater tries to fetch for updates and can't fetch any due to it shutting down forcing you to quit the setup. However, you can download Citra from "Manual Installation" section and you can download and use Citra as usual. | |||
==System requirements== | |||
See [[Computer specifications#Citra]] | |||
==History== | |||
Citra emulates a subset of 3DS hardware and therefore is useful for running/debugging homebrew applications, and it is also able to run many commercial games. Some of these do not run at a playable state. On May 23, 2020, a [https://citra-emu.org/entry/announcing-citra-android/ official Android release] for Citra came out. The minimum requirements are Android 8 (64-bit) and OpenGL ES 3.2 support. Since 15th September 2023, Citra has also added support for Vulkan, resulting in improved performance in a number of scenarios. Many games achieve playable framerates on a variety of hardware, though the developers recommend an Android device with a Snapdragon 835 chip or better. | |||
===Lawsuit=== | |||
See [[Yuzu#Lawsuit]]. | |||
==Shared data== | ==Shared data== | ||
| Line 66: | Line 71: | ||
Although macOS support in Citra is still poor, macOS builds have returned to Citra Canary 2485 and newer thanks to the addition of the new Vulkan renderer. Previously, macOS builds were discontinued after build 1782 due to the developers raising the OpenGL requirements to version 4.3, while macOS only supports up to version 4.1. The new Vulkan renderer addresses this by utilizing the MoltenVK translation layer instead of OpenGL, enabling compatibility with macOS systems. Additionally, these latest builds are Universal and have native support for both Intel and Apple Silicon. | Although macOS support in Citra is still poor, macOS builds have returned to Citra Canary 2485 and newer thanks to the addition of the new Vulkan renderer. Previously, macOS builds were discontinued after build 1782 due to the developers raising the OpenGL requirements to version 4.3, while macOS only supports up to version 4.1. The new Vulkan renderer addresses this by utilizing the MoltenVK translation layer instead of OpenGL, enabling compatibility with macOS systems. Additionally, these latest builds are Universal and have native support for both Intel and Apple Silicon. | ||
==External links== | ==Forks== | ||
* [https://citra-emu.org/ | {{for|more information about other 3DS emulators|Nintendo 3DS emulators#Comparisons}} | ||
{{Infobox emulator | |||
|title = Azahar | |||
|logo = Azahar icon.png | |||
|logowidth = 153 | |||
|active = Yes | |||
|version = {{Version|Azahar}} | |||
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Android|Android]]<br/>[[Emulators on iOS|iOS]] (libretro only)<br/>[[Emulators on tvOS|tvOS]] (libretro only) | |||
|target = [[Nintendo 3DS emulators|Nintendo 3DS]] | |||
|developer = [https://github.com/OpenSauce04 OpenSauce], [https://github.com/PabloMK7 PabloMK7], and other contributors | |||
|prog-lang = {{Proglang|C++}} | |||
|source = [https://github.com/azahar-emu/azahar GitHub] | |||
|license = {{license|GPLv2}} | |||
|bios = [[Emulator_Files#Nintendo_3DS|Required for some games]] | |||
}} | |||
{{Infobox emulator | |||
|title = Mandarine-Neo | |||
|logo = Mandarine.svg | |||
|logowidth = 153 | |||
|active = Yes | |||
|version = {{Version|Mandarine}} | |||
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on macOS|macOS]]<br/>[[Emulators on Android|Android]] | |||
|target = [[Nintendo 3DS emulators|Nintendo 3DS]] | |||
|developer = [https://github.com/ptyfyre ptyfyre] and contributors | |||
|prog-lang = {{Proglang|C++}} | |||
|source = [https://github.com/ptyfyre/mandarine-neo GitHub] | |||
|license = {{license|GPLv2}} | |||
|bios = [[Emulator_Files#Nintendo_3DS|Required for some games]] | |||
}} | |||
;Azahar: A merger of the PabloMK7 and Lime3DS Citra forks by the same developers, meant to merge the added features of both to make a definitive emulator. New features and changes introduced by Azahar include: | |||
:* Various compatibility improvements | |||
:* New compression file format called Z3DS (or ZCCI) with a built-in converter,<ref>{{cite web |last= |first=PabloMK7 |date=August 1, 2025 |title=Support for compressed 3DS backups is here! How to free up space in your 3DS game library. |url= https://azahar-emu.org/blog/compressed-backups/ |website=azahar-emu.org |location= |publisher= |access-date=September 25, 2025}}</ref> | |||
:* The ability to download owned games from the Nintendo eShop | |||
:* The inclusion of Cryptographic keys in the emulator by default.<ref>{{cite web |last= |first=PabloMK7 |date=December 12, 2024 |title=Game Loading on Azahar: What's Changing |url=https://azahar-emu.org/blog/game-loading-changes/ |website=azahar-emu.org |location= |publisher= |access-date=January 25, 2025}}</ref> | |||
:* Arctic Base, an application that can stream 3DS games from real hardware to a computer, is supported. This feature is inherited from the PabloMK7 fork. | |||
:* Hacks such as the ability to disable right eye rendering, which may improve performance. | |||
:Certain changes were made out of legal considerations, such as ending support for encrypted games, and removing the ability to download system files directly from Nintendo's CDN, which has been replaced by the Artic Setup Tool: a homebrew application that copies system files from a real 3DS unit to Azahar. Originally the .3ds file extension was unsupported but support was added back in on January 2026.<ref>[https://github.com/azahar-emu/azahar/releases/tag/2124.3 Azahar 2124.3 Github release]</ref> A [https://github.com/azahar-emu/azahar/pull/1215 Libretro core] has been released on March 3, 2026 during [https://github.com/azahar-emu/azahar/releases v2105.0 Alpha 4]'s release. | |||
;AzaharPlus: A fork of the Azahar 3DS emulator with extra features. Each version is the same as the corresponding version of Azahar except for this:[https://github.com/AzaharPlus/AzaharPlus/blob/AzaharPlus/README.md] | |||
:*Compatibility with all game files. If a file works with any Citra fork, it works with AzaharPlus. | |||
:*Ability to download system files from official servers. No need for an actual 3DS. | |||
:*Compatibility with older CPUs (no SSE4.2 required) | |||
:*Compatibility with Android 9 | |||
:*ZipPass: A new way to exchange StreetPass data through zip files | |||
;Mandarine-Neo: A continuation and major overhaul of the Mandarine (formerly Citra-Enhanced/Lemonade) project. After a period of inactivity, development was revived under the "Neo" branding in early 2026. Mandarine-Neo aims to be a feature-rich fork, incorporating code from Azahar while maintaining unique enhancements. Recent updates (v1.2.5+) have focused on optimizing the Android experience with custom GPU driver support, playtime tracking, and "Reverse Side-by-Side" stereoscopic 3D. It also includes the "Disable Right Eye Rendering" hack for 2D performance gains and improved audio implementations on PC and mobile. | |||
;Borked3DS: A rebrand and continuation of the Bravely Offline Citra fork. The developers consider it to be an "experimental" or "sandbox" fork that may be unstable at times. It has all of the latest features from PabloMK7's Citra fork, most features from Lime3DS, and some hacks and features from Mandarine. It also has its own unique features, such as feature parity in the Android version, UI improvements for desktop and Android, and support for the Skylanders IR portal on desktop. It is not very active anymore, so users should use Azahar unless any Borked3DS-specific features are needed. | |||
;PabloMK7 fork: A Citra fork written in C++ and initially created to add online play,<ref>https://twitter.com/Pablomf6/status/1719705943028449372</ref> but continued to receive new updates and other new features following the end of support for upstream Citra. PabloMK7 was a contributor of Citra, and the repository has also seen work from other active Citra contributors, such as GPUCode, who was among the most active contributors before the repository was deleted. Being a fork of Citra, the emulator emulates a subset of 3DS hardware and, therefore, is useful for running/debugging homebrew applications; it is also able to run many commercial games. Some of these do not run in a playable state. On May 5, 2024, PabloMK7 announced an upcoming feature known as Artic Base,<ref>https://twitter.com/Pablomf6/status/1787246255002853480</ref> released on May 12, 2024.<ref>https://github.com/PabloMK7/ArticBaseServer</ref> Artic Base is a 3DS homebrew app that can stream game data from the 3DS system to an instance of Citra over the local network, allowing users to play their own games on Citra without having to dump them. Artic Base can also sync save data between the 3DS and Citra. Development of the fork ceased on October 29, 2024, pending a merger with Lime3DS (which had also ceased development). The resulting Citra fork would later come to be known as Azahar.<ref name="azahar">https://azahar-emu.org</ref> | |||
;Lime3DS: A Citra fork. The main goal of the project was to act as a revival of Citra.<ref>https://github.com/Lime3DS#lime3ds-is-a-project-which-aims-to-revive-citra-the-most-popular-open-source-nintendo-3ds-emulator</ref> Much like its predecessor, Lime3DS is mainly written in C++. Development for Lime3DS began on the same day as Citra's closure, March 4, 2024. Unlike some other forks appearing at this time, the developers for Lime3DS intended to separate their branding from that of Citra and create a separate successor. The emulator had been steadily updated since then, boasting high compatibility and stability for many 3DS titles. Development ceased in November 2024, pending a merger with the PabloMK7 Citra fork (which had also ceased development). The resulting Citra fork would later come to be known as Azahar.<ref name="azahar"></ref> | |||
;[[Folium]]: A Citra port to iOS/iPadOS devices developed by Jarrod Norwell. Previously known as emuThreeDS and [https://github.com/emuPlace/Limon/ Limón]. Now continued as a [[Multi-system_emulators|multi emulator]] named Folium. [https://github.com/folium-app/Cytrus Cytrus] is the Nintendo 3DS emulation core used in Folium.[https://x.com/antique_codes/status/1845758124298481883/photo/2] | |||
;Mandarine: A Citra fork. It was originally named "Citra-Enhanced." Development ceased temporarily in March 2024 due to the [[Yuzu#Lawsuit|stoppage of Citra development]]. Afterward, the project changed its name to Lemonade<ref>https://old.reddit.com/r/EmulationOnAndroid/comments/1bbos29/citraenhanced_is_going_to_be_continued_and/</ref> and shifted its focus to the Android platform while planning to add new [[Nintendo_3DS_emulators#Hardware_features|features]] and [[Nintendo_3DS_emulators#Enhancements|enhancements]]. However, due to critique stemming from Lemonade's developers alleged stealing of code from other forks, violation of Citra's GPLv2 license, and berating of developers of other forks,<ref>https://web.archive.org/web/20240411140255/https://twitter.com/Pablomf6/status/1778376166098825515</ref> much of the team has since abandoned the project.<ref>https://github.com/Lemonade-emu/Lemonade/pull/2/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5R16</ref> The fork was thereafter renamed back to Citra-Enhanced, before then renaming again to Mandarine after an alleged repository hijack attempt.<ref>https://github.com/mandarine3ds/mandarine/commit/ad06b079df3641e1f4086278ef93a65c204d245c#contribution</ref> | |||
;Citra MMJ: '''Citra MMJ''' is a Citra fork for Android written by weihuoya. Compared to the more recent Azahar merger and the previous forks on Android, and depending on chipset used in the Android device, Citra MMJ may offer better performance and compatibility, especially with Mali GPU devices or other mid-end chipsets that may be too slow for Azahar. Citra MMJ also has some features that Azahar and previous forks for Android didn't have, such as per-game settings and dual-screen support for 2-screen Android handhelds and external displays (Azahar also has dual-screen support since v2123), but it does not yet support zstandard-compressed games that Azahar introduced in v2123. Also note that not all of the code distributed in Citra MMJ binaries is included in the source code repository on GitHub, meaning there is less transparency for users who want to know what code is being run on their systems and less openness for external developers who may wish to contribute. This may also violate the emulator's GPLv2 license, which stipulates that source code must be available to anyone who can obtain a binary. | |||
== References == | |||
<references /> | |||
== External links == | |||
* [https://web.archive.org/web/20240304220745if_/https://citra-emu.org/ Official Website] <small>(archived)</small> | |||
:- [https://web.archive.org/web/20240304201523if_/https://citra-emu.org/entry/ Blog/entries] | |||
:- [https://web.archive.org/web/20240304201048if_/https://citra-emu.org/help/ Help] | |||
:- [https://web.archive.org/web/20240304212658if_/https://citra-emu.org/wiki/faq/ FAQ(s)] | |||
:- [https://web.archive.org/web/20240304201046if_/https://citra-emu.org/game/ Game Compatibility List] | |||
:- [https://web.archive.org/web/20240304201040if_/https://citra-emu.org/wiki/home/ Wiki(s)] | |||
:- [https://web.archive.org/web/20240304202112if_/https://citra-emu.org/screenshots/ Screenshots] | |||
{{Nintendo 3DS emulators}} | |||
[[Category:Emulators]] | [[Category:Emulators]] | ||