Skyline
Search
An error has occurred
Settings
Share Logs
Refresh
Share log file
No logs were created during the last run
All
Metadata Missing
Icon
Cannot find any ROMs
Pin
Play
Searching for ROMs
Invalid file
Missing title key
Incomplete production keys
Emulator
Search Location
View Internal Directory
Opens Skyline\'s internal directory in a file manager
Cannot find an external file manager to open Skyline\'s internal directory
Theme
Game Display Layout
Always Show Game Information
Game information will be shown on clicking a game
Game information will only be shown on long-clicking a game
Show Performance Statistics
Performance Statistics will not be shown
Performance Statistics will be shown in the top-left corner
Log Level
GPU Driver Configuration
Active driver: %1$s
Your GPU is not supported
System
Use Docked Mode
The system will emulate being in handheld mode
The system will emulate being in docked mode
Username
@string/app_name
System language
Keys
Production Keys
Title Keys
Successfully imported keys
Failed to import keys
Display
Screen orientation
Force Triple Buffering
Utilize at least three swapchain buffers (Higher FPS but more input lag)
Utilize at least two swapchain buffers (Lower FPS but less input lag)
Disable Frame Throttling
Game is allowed to submit frames as fast as possible (Only for benchmarking)\n\nNote: An alternative method is utilized to measure the FPS with this enabled, the figures must not be compared to throttled FPS figures
Only allow the game to submit frames at the display refresh rate
Use Maximum Display Refresh Rate
Sets the display refresh rate as high as possible (Will break most games)
Sets the display refresh rate to 60Hz
Aspect Ratio
Respect Display Cutout
Do not draw UI elements in the cutout area
Allow UI elements to be drawn in the cutout area
Debug
Enable validation layer
The Vulkan validation layer is enabled, major slowdowns are to be expected
The Vulkan validation layer is disabled
GPU Driver
Add a GPU driver
Delete this GPU driver
System Driver
The GPU driver provided by your system
Installing the GPU driver…
GPU driver installed successfully
Failed to unzip the provided driver package
The supplied driver package is invalid due to missing metadata
The supplied driver package contains invalid metadata, it may be corrupted
Your device doesn\'t meet the minimum Android version requirements for the supplied driver
The supplied driver package is already installled
Input
On-Screen Controls
Enable On-Screen Controls
On-Screen Controls won\'t be shown
On-Screen Controls will be shown
Edit On-Screen Controls layout
Setup Guide
Sequentially map every stick and button
Joystick
Confirm
Cancel
Recenter Sticks On Touch
Controller
Configure Controller
Controller Type
None
Handheld + Pro Controller
Pro Controller
Left JoyCon
Right JoyCon
General
Partner Joy-Con
Rumble Device
Supported
Not Supported
Press any button on a controller
Confirm choice by pressing a button again
Built-in
Built-in Vibrator
Reset
Buttons
Use any button or axis on a controller
Release to confirm selection
Hold to confirm selection
Sticks
Stick Button
Next
Stick X+ Axis (Right)
Stick Y+ Axis (Up)
Stick X- Axis (Left)
Stick Y- Axis (Down)
A
B
X
Y
Left Shoulder
Right Shoulder
Left Trigger
Right Trigger
Plus
Minus
Emulator Menu
Stick Preview
Done
Use any unmapped button to finish
Button
Up
Down
Left
Right
D-pad
Left Stick
Right Stick
Face Buttons
Shoulder Buttons on Joy-Con Rail
Miscellaneous Buttons
Licenses
Skyline is licensed under Mozilla Public License 2.0
Ryujinx has been used for reference throughout the project due to their highly accurate implementations\n\nNote: Skyline is not based on Ryujinx
Skyline\'s shader compiler is a fork of yuzu\'s shader compiler with Skyline-specific changes while other changes are shared between them allowing both projects to benefit from the development of it\n\nNote: Using it in Skyline is only possible due to the licensing exemption granted to Skyline by the yuzu team
Skyline\'s shader compiler internally uses Sirit to emit SPIR-V in an efficient manner
Vulkan-Hpp provides a C++ API for Vulkan
Vulkan Memory Allocator provides a high-quality GPU memory allocator with UMA support
Khronos\'s Vulkan Validation Layer provides error-checking for Vulkan API calls in debug builds
Oboe is used for high-performance audio output
Perfetto is used to profile and debug with detailed tracing
{fmt} provides a modern C++ string formatting API
Boost provides high-quality implementations of containers and other convenience functions in C++
Range v3 is a reference implementation of ISO C++ 20 ranges, this allows us to use ranges while they are developed in LLVM\'s libc++
Frozen provides compile-time immutable hash maps with a perfect hash function for faster lookups
pugixml is used to parse the preference XML to retrieve settings from C++
Opus Audio Codec provides a high-quality Opus decoder used to decode Opus-encoded audio provided by the guest
Mbed TLS is used to decrypt AES-encrypted NCAs
LZ4 is used to extract LZ4-compressed ELF sections from an NSO
tzcode provides a C API to access tzdb for time zone data
Java String Similarity powers our search functionality
AndroidX provides a consistent user-experience across Android versions
Android Material Components provides a consistent Material Design UI
Kotlin Standard Library provides convenience functions in Kotlin
Dagger provides a framework for compile-time dependency injection
Material Design Icons provides consistent iconography throughout the application
Noto Sans is used as our FOSS shared font replacement for Latin, Japanese, Korean and (Traditional) Chinese
Roboto is used as our FOSS shared font replacement for Nintendo\'s extended character set
Input Text
Expand
Undo