Go to file
echosys 587825f60a Fix x86_64 build for Android (#49)
Fixes x86_64 builds for Android by stubbing a function that calls into libadrenotools to query GPU driver information. libadrenotools is only available for arm64.
The function should not be called anyways, as the menu that would display the information is disabled on unsupported devices.

To enable x86_64 for building change the line `abiFilters += listOf("arm64-v8a")` in `src/android/app/build.gradle.kts` to `abiFilters += listOf("arm64-v8a", "x86_64")`.
I did not do this by default as it significantly increases the build time (the native part needs to be build once for each architecture) and increases the app size (this is less of a concern as games are already significantly larger).
It might allow usage on Chromebooks (the internet tells me those run on x86_64) and some few Android devices. The main advantage I see is for development of the app itself, as it allows running it in waydroid for local testing.

Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/49
Co-authored-by: echosys <echosys@noreply.localhost>
Co-committed-by: echosys <echosys@noreply.localhost>
2024-08-11 12:11:13 +00: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
blog Created first blog entry 2024-06-02 11:01:28 +00:00
CMakeModules Replace URLs for precompiled windows binaries 2024-06-11 08:13:25 -07:00
dist Updated onion site links 2024-06-10 19:41:41 +02:00
externals Revert "Removed web service reminiscents" in preparation to fix multiplayer lobby list 2024-06-30 16:54:56 +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
public_pgp Uploaded my PGP public key 2024-06-01 14:05:11 +00:00
src Fix x86_64 build for Android (#49) 2024-08-11 12:11:13 +00: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 Revert "Removed web service reminiscents" in preparation to fix multiplayer lobby list 2024-06-30 16:54:56 +02:00
build-for-android.md Update documentation for Android 2024-07-26 18:21:41 +02:00
build-for-linux.md add build guides (#16) 2024-07-19 19:22:35 +00:00
build-for-macos.md add build guides (#16) 2024-07-19 19:22:35 +00:00
build-for-windows.md Update build-for-windows.md (#45) 2024-08-10 12:54:53 +00:00
CMakeLists.txt option to skip compiling the -cmd executable (#26) 2024-07-24 23:24:18 +00: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
FAQ.md FAQ: Mention Reddit issues 2024-07-19 19:48:00 +00:00
LICENSE.txt chore: make yuzu REUSE compliant 2022-07-27 12:53:49 +02:00
README.md Update documentation for Android 2024-07-26 18:21:41 +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, an open-source Nintendo Switch emulator.
It is written in C++ with portability in mind and runs on Linux, Windows and Android

Fake websites

A lot of fake Torzu websites have popped up. These are not mine. This project will not have a clearnet website for the foreseeable future! I highly advice against downloading anything from these websites, specially if their intention is clearly to make money through advertisements.

Limited public development

I feel like working publicly on this has taken away the fun. You may not understand, but it's quite stressful to have the public eye on a project. Keep in mind, this is just a hobby project. I feel like I always have to keep updating so I don't disappoint you. It's just not a good situation for a hobby project to be in. Turns out: running an open source project takes a lot more time than I have. And then stupid and unnecessary issues like Windows Defender flagging the emulator as malware ruin the rest. I am grateful for all your bug reports, help and support, but all that has distracted me from taking the project into the direction I would've liked.

Today I've accidentally locked myself out of the Tor site out of pure stupidity and one of the things I didn't make a backup of for was the key required to get the same Tor site set back up.

For these reasons, I have decided to limit public development. It is not all over though. My plan is to:

  • continue the blog
  • move the blog into a seperate repository
  • keep this repository updated just enough so it stays compilable on Linux and Windows
  • keep the externals updated
  • push some bigger updates from my private upstream whenever I feel like (no promises)
  • NOT publish releases. If someone feels like publishing builds they should feel free to do that
  • NOT offer support in any way
    • feel free to open issues on the main repository though if you feel like an issue REALLY needs my attention
  • accept pull requests as long as they are of reasonable quality

Again, thanks to everyone who has supported my efforts so far in any way (even by creating bug reports), I really appreciate it.

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.

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.

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.

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 --depth 1 http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu.git
cd torzu
git submodule update --init --recursive

Alternatively, you can clone from the Codeberg mirror repository:

git clone https://codeberg.org/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 Codeberg mirror goes down, another mirror will be most likely be set up on Bitbucket.

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 changes listed in Changes.

GitHub mirror repository

The GitHub mirror repository has been taken down. The new mirror repository is located on Codeberg.

Building

License

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