Run Nintendo Switch homebrew & games on your Android device!
Go to file
lynxnb b7548e51cf Use AndroidX use extension function instead of Kotlin built-in one
The Kotlin built-in `use` extension function applies to `AutoCloseable` only, and throws an error if the object it's being called on is not an `AutoCloseable`. This causes `OnScreenView` to fail to inflate on SDK < 31 as it retrieved the current theme primary color with a `TypedArray`, which only implements `AutoCloseable` since SDK 31 (Android 12).
The AndroidX core library provides a `use` extension function that applies to `TypeArray` instead of `AutoCloseable` so the fix is just a simple import.
2023-05-02 12:27:57 +01:00
.github Build reldebug instead of debug in CI 2023-02-12 22:21:25 +01:00
.idea Move Kotlin settings to a dedicate package 2023-02-27 19:56:53 +01:00
app Use AndroidX use extension function instead of Kotlin built-in one 2023-05-02 12:27:57 +01:00
gradle/wrapper Update Kotlin, AGP, Gradle and Build Tools 2022-04-27 14:00:36 +05:30
.gitignore Update gitignore to ignore gradle-generated files 2023-02-06 15:04:20 +01:00
.gitmodules Reimplement audout and audren using yuzu audio_core 2023-03-27 22:31:14 +01:00
build.gradle Add color selection to OSC 2023-03-05 12:45:07 +01:00
BUILDING.md Create a BUILDING.md file with building instructions 2022-04-14 13:54:51 +05:30
CONTRIBUTING.md Add information about Skyline Edge to Contributing Guidelines 2023-01-30 20:31:30 +05:30
gradle.properties Upgrade Gradle (7.4), AGP (7.1.2) and Kotlin Dependencies 2022-04-14 14:14:52 +05:30
gradlew Redesign UI 2021-06-17 20:30:22 +05:30
gradlew.bat add files, cannot figure out why native lib is broken 2019-06-28 20:35:14 -04:00
LICENSE.md Move to MPL-2.0 2020-04-23 22:26:27 +05:30
README.md Update README.md 2022-04-14 13:54:51 +05:30
settings.gradle add files, cannot figure out why native lib is broken 2019-06-28 20:35:14 -04:00
transifex.yml Fix Transifex language resource mapping for pt-BR 2023-03-05 12:55:15 +01:00



Contributing GuideBuilding Guide

Skyline is an experimental emulator that runs on ARMv8 Android™ devices and emulates the functionality of a Nintendo Switch™ system, licensed under Mozilla Public License 2.0


Contact

You can contact the core developers of Skyline at our Discord. If you have any questions, feel free to ask. It's also a good place to just keep up with the emulator, as most talk regarding development goes on over there.


Special Thanks

A few noteworthy teams/projects who've helped us along the way are:

  • Ryujinx: We've used Ryujinx for reference throughout the project, the accuracy of their HLE implementations of Switch subsystems make it an amazing reference. The team behind the project has been extremely helpful with any queries we've had and have constantly helped us with any issues we've come across. It should be noted that Skyline is not based on Ryujinx.

  • yuzu: Skyline's shader compiler is a fork of yuzu's shader compiler with Skyline-specific changes, using it allowed us to focus on the parts of GPU emulation that we could specifically optimize for mobile while having a high-quality shader compiler implementation as a base. The team behind yuzu has also often helped us and have graciously provided us with a license exemption.

  • Switchbrew: We've extensively used Switchbrew whether that be their wiki with its colossal amount of information on the Switch that has saved us countless hours of time or libnx which was crucial to initial development of the emulator to ensure that our HLE kernel and sysmodule implementations were accurate.


Disclaimer

  • Nintendo Switch is a trademark of Nintendo Co., Ltd
  • Android is a trademark of Google LLC