Experimental Nintendo Switch Emulator written in C#
Find a file
Ac_K 6b8fb8a4e3 Implement am ICommonStateGetter::SetCpuBoostMode (#743)
- Implement am ICommonStateGetter::SetCpuBoostMode according to the RE:

```
signed __int64 __fastcall nn::ICommonStateGetter::SetCpuBoostModeImpl(__int64 this, unsigned int cpu_boost_mode)
{
  if ( cpu_boost_mode > 1 )
  {
    return 0x3F480LL;
  }

  __int64 v2 = *(_QWORD *)(this + 0x38);
  __int64 v3 = *(_QWORD *)(*(_QWORD *)(v2 + 8) + 0x298LL);

  nnLock((_DWORD *)(v3 + 0x104));

  __int64 v5 = *(_QWORD *)(v2 + 0x18);
  bool unk_bool = *(unsigned __int8 *)(v5 + 0x7C);

  *(_DWORD *)(v5 + 0x80) = cpu_boost_mode;

  if (!unk_bool)
  {
    *(_BYTE *)(v5 + 0x7C) = 1;
  }

  wait_condvar(v3 + 0xA8);
  nnUnlock((_DWORD *)(v3 + 0x104));

  return 0LL;
}
```

- Add enum for apm CpuBoostMode
- Add missing values in apm PerformanceConfiguration with some comments.
2019-08-28 13:02:50 +02:00
.github Create FUNDING.yml 2019-06-02 02:09:38 +02:00
ARMeilleure Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
ChocolArm64 Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
Ryujinx Discord Presence: Fix a crash when no valid program is loaded (#741) 2019-08-19 22:28:01 +02:00
Ryujinx.Audio Fix a memory corruption in SoundIO wrapper (#742) 2019-08-19 22:28:14 +02:00
Ryujinx.Common Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
Ryujinx.Graphics Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
Ryujinx.HLE Implement am ICommonStateGetter::SetCpuBoostMode (#743) 2019-08-28 13:02:50 +02:00
Ryujinx.LLE Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
Ryujinx.Profiler Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
Ryujinx.ShaderTools Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
Ryujinx.Tests Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
Ryujinx.Tests.Unicorn Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
.gitattributes aloha 2018-02-04 20:08:20 -03:00
.gitignore Implement ContentManager and related services (#438) 2018-11-18 17:37:41 -02:00
.travis.yml Add some tests (#18) 2018-02-15 21:04:38 -03:00
appveyor.yml Built in profiling (#567) 2019-04-26 14:53:10 +10:00
CONFIG.md Use the Joystick interface for game controller input. (#737) 2019-08-05 20:58:27 +02:00
KEYS.md Add XCI, NSP and NCA loading support (#404) 2018-09-08 15:33:27 -03:00
LICENSE.txt aloha 2018-02-04 20:08:20 -03:00
README.md Logger and Configuration Refactoring (#573) 2019-02-11 09:00:32 -03:00
Ryujinx.sln Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
Ryujinx.sln.DotSettings Do naming refactoring on Ryujinx.Graphics (#611) 2019-03-04 12:45:25 +11:00

Ryujinx Build status

Experimental Switch emulator written in C#

Many games boot, only a handful are playable, see the compatiblity list here.

Building

To build this emulator, you will need the .NET Core 2.1 (or higher) SDK or just drag'n'drop the homebrew *.NRO / *.NSO or the game *.NSP / *.XCI on the executable if you have a pre-built version.

Features

  • Audio is partially supported.

  • Keyboard Input is supported, see CONFIG.md

  • Controller Input is supported, see CONFIG.md

  • Config File: Config.jsonc should be present in executable folder. For more information you can go here.

Help

If you have some homebrew that currently doesn't work within the emulator, you can contact us through our Discord with the compiled *.NRO / *.NSO (and source code if possible) and then we'll keep whatever is making app / game not work on the watch list and fix it at a later date.

Contact

For help, support, suggestions, or if you just want to get in touch with the team; join our Discord server!

For donation support, please take a look at our Patreon.

Running

To run this emulator, you need the .NET Core 2.1 (or higher) SDK.
Run dotnet run -c Release -- path\to\homebrew.nro inside the Ryujinx project folder to run homebrew apps.
Run dotnet run -c Release -- path\to\game.nsp/xci to run official games.

Compatibility

You can check out the compatibility list here.

Latest build

These builds are compiled automatically for each commit on the master branch. They may be unstable or might not work at all.
The latest automatic build for Windows, Mac, and Linux can be found on the official website.