Ryujinx – Simple, experimental Nintendo Switch emulator

This article along with all titles and tags are the original content of AppNee. All rights reserved. To repost or reproduce, you must add an explicit footnote along with the URL to this article!
Any manual or automated whole-website collecting/crawling behaviors are strictly prohibited.
Any resources shared on AppNee are limited to personal study and research only, any form of commercial behaviors are strictly prohibited. Otherwise, you may receive a variety of copyright complaints and have to deal with them by yourself.
Before using (especially downloading) any resources shared by AppNee, please first go to read our F.A.Q. page more or less. Otherwise, please bear all the consequences by yourself.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Ryujinx is a free, open-source and experimental Nintendo Switch emulator for Windows, Mac and Linux platforms, enables players to enjoy exclusive video games to Nintendo Switch handheld console on a computer. It was created by gdkchan using C#, and aims at providing excellent accuracy and performance, a user-friendly interface, and consistent builds.

Ryujinx now runs a bit smoothly, and the overall emulation is not bad. Compared to the other (also the first) Nintendo Switch emulator yuzu, it has more comprehensive features (such as video decoding and netplay capabilities), better compatibility, and more stable performance, but its emulation fluency (frame rate) is less than ideal now. Although Ryujinx is still in its early days, it is clearly making progress faster than yuzu, and its future is worth looking forward to.

As of writing this post, Ryujinx has been tested on nearly 3,400 game titles. Thereinto, about 3,000 games can boot past menus and into gameplay, and approximately 2,400 of these have been considered playable. To run this emulator, it’s recommended that your PC has at least 8GB of RAM, otherwise that can result in unpredictable behaviors and may cause crashes or unacceptable performance.

// Key Features //

Audio
Audio output is entirely supported, audio input (microphone) isn’t supported. We use C# wrappers for OpenAL, and SDL2 & libsoundio as fallbacks.
CPU
The CPU emulator, ARMeilleure, emulates an ARMv8 CPU and currently has support for most 64-bit ARMv8 and some of the ARMv7 (and older) instructions, including partial 32-bit support. It translates the ARM code to a custom IR, performs a few optimizations, and turns that into x86 code.

There are three memory manager options available depending on the user’s preference, leveraging both software-based (slower) and host-mapped modes (much faster). The fastest option (host, unchecked) is set by default. Ryujinx also features an optional Profiled Persistent Translation Cache, which essentially caches translated functions so that they do not need to be translated every time the game loads. The net result is a significant reduction in load times (the amount of time between launching a game and arriving at the title screen) for nearly every game. NOTE: this feature is enabled by default in the Options menu > System tab. You must launch the game at least twice to the title screen or beyond before performance improvements are unlocked on the third launch! These improvements are permanent and do not require any extra launches going forward.

GPU
The GPU emulator emulates the Switch’s Maxwell GPU using the OpenGL API (version 4.5 minimum) through a custom build of OpenTK. There are currently four graphics enhancements available to the end user in Ryujinx: disk shader caching, resolution scaling, aspect ratio adjustment and anisotropic filtering. These enhancements can be adjusted or toggled as desired in the GUI.
Input
We currently have support for keyboard, mouse, touch input, JoyCon input support, and nearly all controllers. Motion controls are natively supported in most cases; for dual-JoyCon motion support, DS4Windows or BetterJoy are currently required. In all scenarios, you can set up everything inside the input configuration menu.
DLC & Modifications
Ryujinx is able to manage add-on content/downloadable content through the GUI. Mods (romfs, exefs, and runtime mods such as cheats) are also supported; the GUI contains a shortcut to open the respective mods folder for a particular game.
Configuration
The emulator has settings for enabling or disabling some logging, remapping controllers, and more. You can configure all of them through the graphical interface or manually through the config file, Config.json, found in the user folder which can be accessed by clicking Open Ryujinx Folder under the File menu in the GUI.

// Fan Made Demo Videos //

// System Requirements //

In order to use Ryujinx your computer will need:

  • 8+GB RAM
  • A video card/GPU that supports OpenGL 4.5+
  • Your Switch keys and either your dumped firmware or recent game cartridge untrimmed XCI
  • Your dumped Nintendo Switch games or homebrew
  • OS-specific dependencies installed

// Related Links //

// Download URLs //

License Version Download Size
Freeware Latest n/a

(Homepage | GitHub)

If some download link is missing, and you do need it, just please send an email (along with post link and missing link) to remind us to reupload the missing file for you. And, give us some time to respond.
If there is a password for an archive, it should be "appnee.com".
Most of the reserved downloads (including the 32-bit version) can be requested to reupload via email.