[SWITCH] Atmosphère V0.13.0 Released

New update of Atmosphère released by the developer SciresM with the new version 0.13.0, with support for firmware 10.0.4. To update or install this new version I recommend deleting the / atmosphere / bootloader / sept folders and inserting the new version files.


Atmosphère is made up of several components, each of which replaces / modifies a different system component:

  • Fusée: Loader of the first phase, responsible for the loading and validation of phase 2 (customized TrustZone) plus package 2 (the Kernel / FIRM sysmodules) and their application as needed. This replaces all the functionality normally in Package1loader / NX Bootloader.
    • Sept: payload used to enable support for derivation of the runtime key on 7.0.0.
  • Exosphère: Custom TrustZone, to run a customized secure monitor
  • Thermosphère: ELu EmuNAND support, i.e. backup and use of virtualized / redirected NAND images
  • Stratosphère: Custom Sysmodule (s), both Rosalina-style to extend the kernel / provide new features and the reimplementation style of the loader to hook important system actions
  • Troposphère: application-level Horizon operating system patches, used to implement desirable CFW features


  • exosphère, the reimplementation of atmosphère’s secure monitor has been completely rewritten.
    • exosphère it was the first component created for the project at the beginning of 2018. It is written in C and in a style very different from the rest of the atmosphère code.
      • This has made it difficult to maintain the code base over time.
    • exosphère It was also written to comply with the constraints and assumptions that simply no longer apply when cfw is not started by the web browser and when warmboothax is possible.
    • Even beyond these problems, he  exosphèreused all but 1 KB of the 64 KB of available space. This was a problem for some reasons:
      • Each new system update added requires additional support space (to add new keys and reflect various changes); Support 10.0.0 ran out of 3 of the remaining 4KBs.
      • atmosphère will want software support for mariko hardware and this is not possible for 1 KB.
    • The  exosphèrerewriting (name  exosphère2in code during development) solves these problems.
    • The new code base is C ++ 20 written in the style of atmosphère.
      • This solves the maintainability issue, and should make understanding how secure the monitor works  much  easier for those interested in using the code as a reference implementation.
    • In addition, the new implementation currently uses ~ 59.5 of the 64 KB available.
      • There are several code changes that can save / grant access to additional ~ 2-3 KB if needed.
        • Unlike the first code base, the new  exosphèreone already has space allocated for future keys / etc. Currently it is expected that the reserved space will never be required.
      • The previous implementation chose not to implement a set of “unimportant” safe monitoring functions due to space issues. The new code has enough space to be able to implement them without worries. 🙂
    • Finally, the foundations for mariko’s support have been laid – there are only a few minor changes necessary for the new implementation of the secure monitor to work on both erista and mariko hardware.
      • Note  : it  exosphèreis just one of many components and many others need modifications to support running on mariko hardware.
        • Software-side support for running on mariko hardware is expected somewhere during summer 2020, although it should be noted that this is not a difficult deadline.
    • Note  : the new  exosphèretrack is not compatible with the old one. Users who boot via hekate must upgrade to  hekate v5.3.0  before running 0.13.0 (or start fusee-primary via hekate).
  • The atmosphère API for the target firmware has changed. Now all minor / micro system versions are recognized, rather than just the major versions.
    • This was necessary to support firmware version 5.1.0, which made substantial changes to some IPC APIs that caused the atmosphère 0.12.0 to stop.
    • Note  : this is (inevitably) a decisive change. System modules using the Atmosphere Libraries will need to update to understand which firmware version they are running.
  • emummc has been updated to include new changes.
    • emummc now uses an updated / improved / faster SDMMC driver.
    • File based emummc is now almost as fast as raw partition based emummc.
  • For those interested in future atmosphère development plans, the   project roadmap has been updated.
  • General system stability improvements to improve the user experience.

For information on the feature set supported by 0.13, see  the official release notes  .