torzu is a fork of yuzu, the world's most popular, open-source, Nintendo Switch emulator.
Find a file
2024-05-07 16:26:38 +02:00
.github/ISSUE_TEMPLATE Deleted contact links from issue templates 2024-04-05 01:58:28 +02:00
.reuse android: Provide debug.keystore for debug and relWithDebInfo builds 2024-01-21 22:08:07 -05:00
CMakeModules Download precompiled Windows blobs from yuzu-mirror 2024-05-06 21:54:38 +02:00
dist Fixed SVG logo rendering black on certain renderers 2024-05-06 00:38:49 +02:00
externals Do not build SPIRV-Tools executables 2024-05-06 21:04:31 +02:00
hooks chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
LICENSES general: fix trailing whitespace 2024-01-08 09:34:32 -05:00
src Fixed controller UI being cut off at the bottom 2024-05-06 01:12:46 +02:00
tools Removed telemetry and anonymized SCM (git) strings 2024-04-05 01:58:30 +02:00
.codespellrc core: refactor emulated cpu core activation 2023-12-04 10:37:16 -05:00
.git-blame-ignore-revs Skip git blame 2023-11-04 18:26:49 +00:00
.gitattributes chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
.gitignore android: Initialize defaults for each orientations 2023-06-14 16:35:58 -04:00
.gitmodules Optionally optimize generated SPIRV with spirv-opt (#10) 2024-04-10 22:04:09 +00:00
CMakeLists.txt Readd MSWSOCK_LIBRARY for MINGW 2024-05-06 23:30:50 +02:00
CONTRIBUTING.md chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
Doxyfile chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
LICENSE.txt chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
README.md Updated README: Building for Windows is now possible 2024-05-07 16:26:38 +02:00
vcpkg.json android: add oboe audio sink 2023-12-17 01:42:59 -05:00


torzu
torzu

torzu is a fork of yuzu, the world's most popular, open-source, Nintendo Switch emulator.
It is written in C++ with portability in mind, and I plan to actively maintain builds for Linux, Android and Windows.

Compatibility | Development | Building | Download | License

Compatibility

The emulator is capable of running most commercial games at full speed, provided you meet the necessary hardware requirements.

It runs most Nintendo Switch games released until the date of the Yuzu takedown.

Changes

Following are the changes made since forking from Yuzu:

  • Added option to optimize generated SPIR-V shaders via spirv-opt
  • Added option to synchronize CPU clock to render speed limit
  • Added option to launch home menu from Switch firmware
  • Fixed crash when switching away from null graphics per-game
  • Fixed controller UI being cut off at the bottom
  • Removed analytics and authentication as they'd be useless (perhaps even outright dangerous) now
  • Minor improvements and additions

Goals

The first and foremost goal is long-term maintenance. Even if I stop commiting new features I will always do my best to keep the emulator functional and third party dependencies updated. This also means most of the changes made will eventually be bug fixes. Essentially, the main goal is that you can still use this emulator on modern systems in 20 years. It is very important to me that this project is going to be a good base to fork once grass has grown over the whole legal dilemma and people are willing to do real work on this emulator non-anonymously.

While the main platform is Linux as it is the main operating system I run on my personal and development desktops, Windows support is very near and will not be forgotten about. Android support is low priority but would be a nice bonus.

A secondary goal is the improvement of usability on low-end systems. This includes both improving the performance of the emulator as well as making games more playable below 100% speed whenever possible (the sync CPU to render speed limit option already helps with that in few cases).

Development

Most of the development happens on Dark Git. It's also where our central repository is hosted.

Currently, development is somewhat limited to external commits as I'm working on improvements in dynarmic! This will increase emulation speed in CPU-bound scenarios.

If you want to contribute, please take a look at the Contributor's Guide and Developer Information.

To clone this git repository, you can use these commands given tor is installed and running:

git -c http.proxy=socks5h://127.0.0.1:9050 clone http://y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion/torzu-emu/torzu.git
cd torzu
git submodule update --init --depth 1 --recursive

Alternatively, you can clone from the GitHub mirror repository:

git clone https://github.com/litucks/torzu.git --depth 1 --recursive

Note that above repository may be taken down any time. Do not rely on its existence in production. In case the GitHub mirror goes down, a mirror will be set up on Gitlab.

This project incorporates several commits from the Suyu and Sudachi forks (but cleaned up due to the typically mediocre code/commit quality from both projects) as well as some custom changes, including lowered minimum boost library version requirements and faster fibers.

Building

(Only Linux and Windows builds are available for now. Android is planned eventually.)

Download

Precompiled build are available in the releases section. Windows builds have not been released yet but will very soon.

License

yuzu is licensed under the GPLv3 (or any later version). Refer to the LICENSE.txt file.