No description
Find a file
Lioncash b77430df70 apm/controller: Make SetPerformanceConfiguration() use an array of pairs over a map
While a map is an OK way to do lookups (and usually recommended in most
cases), this is a map that lives for the entire duration of the program
and only deallocates its contents when the program terminates.

Given the total size of the map is quite small, we can simply use a
std::array of pairs and utilize std::find_if to perform the same
behavior without loss of performance.

This eliminates a static constructor and places the data into the
read-only segment.

While we're at it, we can also handle malformed inputs instead of
directly dereferencing the resulting iterator.
2019-10-17 16:13:14 -04:00
.appveyor
.ci Merge pull request #2961 from DarkLordZach/azure-tag-names 2019-10-08 20:16:28 -04:00
.github
.travis Revert "CMake: Get Git submodule dependencies via CMake (#2474)" 2019-06-29 22:19:47 +02:00
CMakeModules Shader_Ir: Refactor Decompilation process and allow multiple decompilation modes. 2019-10-04 18:52:50 -04:00
dist Updated yuzu icon to thicker version 2019-10-08 23:33:51 -07:00
externals externals: Move OSS font data to file_sys in core 2019-10-13 13:46:10 -04:00
hooks
src apm/controller: Make SetPerformanceConfiguration() use an array of pairs over a map 2019-10-17 16:13:14 -04:00
.gitattributes
.gitignore
.gitmodules externals: Use upstream zlib 2019-10-04 05:01:57 -04:00
.travis.yml
appveyor.yml
CMakeLists.txt cmake: Add cmake option to build Boxcat backend 2019-09-30 17:26:10 -04:00
CONTRIBUTING.md Link to Yuzu's wiki instead of Citra's 2019-09-27 21:49:08 -03:00
Doxyfile
license.txt qt_themes: add two colorful themes 2019-09-22 16:42:00 +02:00
README.md Remove AppVeyor status 2019-09-29 22:32:44 +02:00

yuzu emulator

Travis CI Build Status Azure Mainline CI Build Status

yuzu is an experimental open-source emulator for the Nintendo Switch from the creators of Citra.

It is written in C++ with portability in mind, with builds actively maintained for Windows and Linux. The emulator is capable of running several commercial games.

yuzu only emulates a subset of Switch hardware and therefore most commercial games do not run at full speed or are not fully functional.

Do you want to check which games are compatible and which ones are not? Please visit our Compatibility page!

yuzu is licensed under the GPLv2 (or any later version). Refer to the license.txt file included.

Check out our website!

For development discussion, please join us on Discord.

Development

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

If you want to contribute please take a look at the Contributor's Guide and Developer Information. You should as well contact any of the developers on Discord in order to know about the current state of the emulator.

Building

Support

We happily accept monetary donations or donated games and hardware. Please see our donations page for more information on how you can contribute to yuzu. Any donations received will go towards things like:

  • Switch consoles to explore and reverse-engineer the hardware
  • Switch games for testing, reverse-engineering, and implementing new features
  • Web hosting and infrastructure setup
  • Software licenses (e.g. Visual Studio, IDA Pro, etc.)
  • Additional hardware (e.g. GPUs as-needed to improve rendering support, other peripherals to add support for, etc.)

We also more than gladly accept used Switch consoles, preferably ones with firmware 3.0.0 or lower! If you would like to give yours away, don't hesitate to join our Discord and talk to bunnei. You may also contact: donations@yuzu-emu.org.