[UPDATE] Atmosphère v0.7 soll im August erscheinen

In letzter Zeit war es ruhig um "Atmosphère", der Custom Firmware für die Nintendo Switch. Nun hat sich SciresM mit einem Release-Plan zu Wort gemeldet – demnach soll v0.7 noch diesen Monat erscheinen.

UPDATE, 02.09.2018, 00:33 Uhr: SciresM hat sich im ReSwitched-Discord zu Wort gemeldet. So fehlt nur noch ein Bug, dann ist v0.7 vollständig. An der bald erscheinenden Firmware 6.0.0 wird auch gearbeitet, weshalb sich das Ganze etwas verzögert hat. Sobald der Bug behoben und 6.0.0 unterstützt wird, wird Atmosphère v0.7 veröffentlicht.

UPDATE ENDE

Die letzten Monate haben die Pläne um Atmosphère ganz schön durcheinander gewirbelt: Zuerst wurde der Bootrom-Exploit Ende April von einem Unbekannten veröffentlicht, sodass der Release von Fusée Gelée vorgezogen wurde und letzten Monat wurde Kate Temkin noch von ReSwitched gebannt, während sie noch am EmuNAND arbeitete.

Trotz dessen will SciresM Atmosphère mit einem umfangreichen Feature-Set veröffentlichen. So soll Fusée, der Custom Bootloader (nicht zu verwechseln mit Fusèe Gelèe, dem Bootrom-Exploit!) endlich fertiggestellt werden und wird KIP-Dateien von der SD-Karte lesen können – dabei handelt es sich um eigene Systemmodule. Das gleiche Prinzip gibt es auch bei hekate. Zudem können Kernel-Patches während des Kompilierens eingefügt und der Bootloader mithilfe einer INI-Datei auf der SD konfiguriert werden. Die CFW soll auch per hekate startbar sein (was sogar mittlerweile schon geht!).

Der eigene Service-Monitor Exosphère wird ebenfalls mit an Board sein. Dabei handelt es sich um eine erweiterte Reimplementierung von Nintendos TrustZone-Firmware.

Stratosphère bezeichnet ein Set an eigenen Systemmodulen, darunter:

loader: Reimplementierung von Nintendos "loader"-Modul, aber erweitert, sodass ein ExeFS von der SD-Karte geladen werden kann. Bereits existierende Dateien im ExeFS können sogar vom Laden abgehalten werden, indem eine ".stub" Datei erstellt wird. Eine NSP kann sogar das originale ExeFS auf 2.0.0+ ersetzen. Der Pfad auf der SD ist " /atmosphere/titles/TITLEID/exefs/" bzw. "exefs.nsp". Das Umleiten soll sich per Tastenkombination deaktivieren lassen. NSO-Inhalte lassen sich auch per IPS-Datei patchen und Inhalte von der SD-Karte starten, ohne sie installieren zu müssen.

service manager: Reimplementierung von Nintendos "service manager"-Modul (sm). Während des Kompilierens kann "smhax" wieder aktiviert werden, womit die Verifizierung des Service-Zugangs durch das Überspringen der Initialisierung übersprungen werden kann. Homebrews bekommen auch mehr Zugriff auf privilegierte Systemmodule. Entwickler können sogar einen "Man-In-The-Middle"-Listener für irgendeinen Service installieren.

process manager: Reimplementierung von Nintendos "process manager"-Modul (pm). Homebrews können Handles für fremde Prozesse anfordern und somit den Systemspeicher lesen/modifizieren, ohne die Ausführung zu blockieren.

boot2: Der Process-Manager wird durch eine vollständige, erweiterte Reimplementierung von boot2 erweitert: Der Zugriff auf die SD-Karte kann jetzt schneller gewährt werden, da die Reihenfolge, in der Titel gestartet werden, optimiert wurde. Zudem wird das Fehler-Report-Modul nicht gestartet, damit keine Telemetriedaten gesammelt werden. User können auch ihre eigenen Systemmodule auf die SD-Karte packen und sie für den automatischen Start markieren, wenn die Datei "/atmosphere/titles/TITLEID/boot2.flag" erstellt wird.

fs.mitm: Neues Systemmodul, mit dem Spieldateien ausgetauscht werden können (auch als "LayeredFS" bekannt). Ein RomFS kann in "/atmosphere/titles/TITLEID/romfs.bin"und einzelne Dateien in "/atmosphere/titles/TITLEID/romfs/" abgelegt werden – sie werden dann zusammengefügt. Dabei werden "lose Dateien" bevorzugt. Mit dem Modul lassen sich auch Kommandos von fremden Systemtitel abfangen, wenn die Datei "/atmosphere/titles/TITLEID/fsmitm.flag" erstellt wird.

crash report: Neues Systemmodul, welches Nintendos "creport"-Modul ersetzt und von Menschen lesbare Fehlerreports auf der SD-Karte erstellt, was bei der Entwicklung der CFW hilft. Da diese Reports nicht an das "erpt" (error report) Modul gesendet werden, wird jegliche Telemetrie in Bezug auf Fehlerreports deaktiviert.

Das ist natürlich erst der Anfang – weitere Sachen sind geplant, darunter:

  • Thermosphère: Eine EmuNAND-Implementierung
  • Debugging-Toolset mit einem neuen "debug monitor"-Systemmodul zum Debuggen von Prozessen
    • Ein neues "shell"-Systemmodul zum Ausführen von eigenen Remote Procedure Calls
    • logging: neues Systemmodul zum Loggen von Debug-Output auf die SD, ein USB-Gerät oder über WLAN
  • Ein Plugin-System, ähnlich NTR auf dem 3DS
  • Cheat-Codes
  • Und weitere Erweiterungen für Atmosphères Komponenten

Die Custom Firmware soll noch diesen Monat für alle Switch-Firmware-Versionen erscheinen. Die fehlenden Issues lassen sich auf GitHub verfolgen.