Atmosphère is a work-in-progress customized firmware for the Nintendo Switch.
Atmosphère consists of multiple components, each of which replaces/modifies a different component of the system:
- Fusée: First-stage Loader, responsible for loading and validating stage 2 (custom TrustZone) plus package2 (Kernel/FIRM sysmodules), and patching them as needed. This replaces all functionality normally in Package1loader/NX Bootloader.
- Sept: Payload used to enable support for runtime key derivation on 7.0.0.
- Exosphère: Customized TrustZone, to run a customized Secure Monitor
- Thermosphère: EL2 EmuNAND support, i.e. backing up and using virtualized/redirected NAND images
- Stratosphère: Custom Sysmodule(s), both Rosalina style to extend the kernel/provide new features, and of the loader reimplementation style to hook important system actions
- Troposphère: Application-level Horizon OS patches, used to implement desirable CFW features
This software is licensed under the terms of the GPLv2, with exemptions for specific projects noted below.
You can find a copy of the license in the LICENSE file.
Exemptions:
- The yuzu emulator project is exempt from GPLv2 licensing and may (at its option) instead license any source code authored for the Atmosphère project as GPLv2 or later.
- Nintendo is exempt from GPLv2 licensing and may (at its option) instead license any source code authored for the Atmosphère project under the Zero-Clause BSD license.
Atmosphère is currently being developed and maintained by SciresM, TuxSH, hexkyz, and fincs.
In no particular order, we credit the following for their invaluable contributions:
- switchbrew for the libnx project and the extensive documentation, research and tool development pertaining to the Nintendo Switch.
- devkitPro for the devkitA64 toolchain and libnx support.
- ReSwitched Team for additional documentation, research and tool development pertaining to the Nintendo Switch.
- ChaN for the FatFs module.
- Marcus Geelnard for the bcl-1.2.0 library.
- naehrwert and st4rk for the original hekate project and its hwinit code base.
- CTCaer for the continued hekate project's fork and the minerva_tc project.
- m4xw for development of the emuMMC project.
- Riley for suggesting "Atmosphere" as a Horizon OS reimplementation+customization project name.
- hedgeberg for research and hardware testing.
- lioncash for code cleanup and general improvements.
- jaames for designing and providing Atmosphère's graphical resources.
- Everyone who submitted entries for Atmosphère's splash design contest.
- All those who actively contribute to the Atmosphère repository.