Atmosphère: Unterschied zwischen den Versionen

Aus WiiDatabase Wiki
Zur Navigation springenZur Suche springen
2.933 Bytes hinzugefügt ,  26. September 2020
(10 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 17: Zeile 17:


== Komponenten ==
== Komponenten ==
Atmosphère zielt darauf ab, fast alle System-Komponenten der Switch zu reimplementieren und dabei zu erweitern. Sie heißen dabei:
Atmosphère zielt darauf ab, alle System-Komponenten der Switch zu reimplementieren und dabei zu erweitern.
 
=== Hauptkomponenten ===
* {{Anker|Fusee}}'''Fusée''': Bootloader, verifiziert und startet Exosphère und Package2 (Kernel/FIRM-Systemmodule) und patcht diese, falls nötig.
* {{Anker|Fusee}}'''Fusée''': Bootloader, verifiziert und startet Exosphère und Package2 (Kernel/FIRM-Systemmodule) und patcht diese, falls nötig.
** '''Sept''': Payload zur Schlüsselableitung auf allen Firmware-Versionen >= [[Nintendo-Switch-Firmware 7.0.0#Technische Informationen|7.0.0]]. Ein Teil von sept ist signiert/verschlüsselt, weshalb es ohne Keys nicht möglich ist, sept selbstständig zu bauen.
** '''Sept''': Payload zur Schlüsselableitung auf allen Firmware-Versionen >= [[Nintendo-Switch-Firmware 7.0.0#Technische Informationen|7.0.0]]. Ein Teil von sept ist signiert/verschlüsselt, weshalb es ohne Keys nicht möglich ist, sept selbstständig zu bauen.
Zeile 23: Zeile 25:
* '''Thermosphère''': EmuMMC, lädt den MMC von der SD-Karte um so eine getrennte Umgebung für bspw. Homebrew zu schaffen.
* '''Thermosphère''': EmuMMC, lädt den MMC von der SD-Karte um so eine getrennte Umgebung für bspw. Homebrew zu schaffen.
* {{Anker|Stratosphere}}'''Stratosphère''': Eigene Systemmodule mit neuen Features und zur Erweiterung bestehender.
* {{Anker|Stratosphere}}'''Stratosphère''': Eigene Systemmodule mit neuen Features und zur Erweiterung bestehender.
** '''ams_mitm''': Neues Systemmodul zum on-the-fly Patchen von Dateien und Titeln.
* '''Mesosphère''': Reimplementierung von Nintendos Kernel.
*** '''bpc_mitm''': Ermöglicht das [[#Reboot-Payload|Neustarten in einen Payload]] (bspw. wieder Atmosphère) und das vollständige Herunterfahren, wenn AutoRCM aktiviert ist (siehe [[AutoRCM#Herunterfahren]]). Überschreibt den [https://switchbrew.org/wiki/PCV_services#bpc bpc PCV-Service] von Nintendo.
* '''Troposphère''': HorizonOS-Patches für Applikationen. Dies ist noch nicht in Atmosphère implementiert.<ref>https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/troposphere.md</ref>
*** '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/modules/fs_mitm.md fs_mitm]''': Kann Dateien von Titeln mit denen auf der SD-Karte ersetzen, auch bekannt als "'''LayeredFS'''".
 
*** {{Anker|hid_mitm}}'''hid_mitm''': Mit der [[Nintendo-Switch-Firmware 9.0.0|Firmware 9.0.0]] wurden die HID-Komponenten für Controller so sehr geändert, dass libnx (die Bibliothek zum Bauen von Switch-Homebrews) keine Controller-Eingaben mehr erkennt. Dieses Problem wurde zwar in neueren libnx-Versionen behoben, allerdings müssen Homebrews mit der neuen libnx-Version neu gebaut werden. Da nicht jede Homebrew sofort aktualisiert wird/werden kann, wurde als Übergang ein temporäres Modul eingeführt, welches das Problem behebt.<ref>[https://github.com/Atmosphere-NX/Atmosphere/releases/tag/0.9.4 Atmosphère v0.9.4]</ref> Da es somit nicht mehr möglich ist, das HID-Modul selbst zu überschreiben, wird dieser Workaround in Zukunft entfernt. Mit Atmosphère v0.10.2 wurde es per Standard deaktiviert.<ref>[https://github.com/Atmosphere-NX/Atmosphere/releases/tag/0.10.2 Atmosphère v0.10.2]</ref> Siehe auch [[#enable_deprecated_hid_mitm|enable_deprecated_hid_mitm]]. Sollte es in Zukunft entfernt werden, wird SciresM aber einen separaten Download anbieten.<ref>https://arch.b4k.co/vg/thread/276990665/#277109730 "If it's ever removed (and I don't actually have plans to do so, I just wanted to explicitly reserve that right), I will publish a hid-compat-mitm sysmodule on my personal GitHub that can be used as a standalone.
==== Systemmodule ====
{| class="wikitable" border="1" width="100%"
|-
! Name
! Beschreibung
! Reimplementiert
! Erweiterungen/Änderungen
|-
| '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/ams_mitm.md ams_mitm]'''
| Neues Systemmodul zum on-the-fly Patchen von Dateien und Titeln
|
|
|-
| '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/boot.md boot]'''
| Initialisiert die Hardware und startet das System.
| [https://switchbrew.org/wiki/Boot boot]
| Atmosphère zeigt seinen eigenen schwarz/weißen Bootscreen und Akku-Icons an.
|-
| {{Anker|boot2}}'''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/boot2.md boot2]'''
| Lädt alle weiteren Module nach dem Start.
| [https://switchbrew.org/wiki/Boot2 boot2]
| Mithilfe von [[#Flags|Flags]] lassen sich eigene Systemmodule direkt nach dem Start ausführen.
|-
| {{Anker|creport}}'''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/creport.md creport]'''
| Dient der Verwaltung von Absturzberichten.
| [https://switchbrew.org/wiki/Creport creport]
| Generiert Absturzberichte auf der SD-Karte und verhindert das Senden dieser an Nintendo. Außerdem wird bei einem Absturz ein Screenshot erstellt (nur auf >= 10.0.0).
|-
| '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/dmnt.md dmnt]'''
| Stellt einen Debug-Monitor zur Verfügung. "dmnt" steht für "Debug Monitor".
| [https://switchbrew.org/wiki/Debug_Monitor_services dmnt]
| Cheat-Code-Support, inklusive Kompatibilität zu [[SX OS|Gateshark]].
|-
| {{Anker|eclct_stub}}'''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/eclct.stub.md eclct.stub]'''
| Sammelt Fehlerberichte.
| [https://switchbrew.org/wiki/System_Settings#eclct eclct]
| Diese Reimplementation ist ein Stub und verhindert das Senden weiterer Telemetrie-Daten an Nintendo.
|-
| [[#erpt|erpt]]
| Verwaltet Fehlerberichte.
| [https://switchbrew.org/wiki/Error_Report_services erpt]
| Verhindert das Anlegen von berichten im MMC und leitet diese stattdessen auf die SD-Karte weiter.
|-
| [[#fatal|fatal]]
| Verwaltet Absturzberichte.
| [https://switchbrew.org/wiki/Fatal_services fatal]
| Zeigt einen umfangreichen Fehlerbildschirm bei einem fatalen (deshalb der Name) Absturz an. Auch kann die Konsole mit den Lautstärketasten direkt neu gestartet werden.
|-
| {{Anker|jpegdec}}'''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/jpegdec.md jpegdec]'''
| Dient der Dekodierung von JPEGs in Verbindung mit den [https://switchbrew.org/wiki/Capture_services Capture-Services]
| [https://switchbrew.org/wiki/Jpegdec_services jpegdec]
| Erlaubt zwei Sessions anstatt einer, damit Homebrews JPEGs per Software parallel zum OS dekodieren können.
|-
| '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/loader.md loader]'''
| Erstellt Prozesse von ausführbaren NSOs und kontrolliert ihre Zugriffe
| [https://switchbrew.org/wiki/Loader_services loader]
| Ermöglicht das [[#ExeFS|Ersetzen von Dateien im ExeFS]], das [[#NSO-Patches|Patchen von NSOs]], sowie [[#Button Overrides|Button Overrides]] (bspw.: "R" gedrückt halten, während ein Spiel startet, startet das Homebrew Menu mit vollem RAM-Zugriff).
|-
| '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/ncm.md ncm]'''
| Dient der Verwaltung von Inhalten (bspw. NAND-Speicherständen). "ncm" steht für "Nintendo Content Manager".
| [https://switchbrew.org/wiki/NCM_services ncm]
| Zurzeit noch [[#enable_ncm|optional]].
|-
| {{Anker|pgl}}[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/pgl.md pgl]
| Startet Programme; nur ab [[Nintendo-Switch-Firmware 10.0.0|10.0.0]] vorhanden. "pgl" steht für "Program Launcher".
| [https://switchbrew.org/wiki/PGL_services pgl]
| Atmosphères Reimplementation ist ebenfalls nur ab 10.0.0 verfügbar und wurde (noch) nicht zurückportiert.
|-
| [https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/pm.md pm]
| Verwaltet Ressourcenlimits und überwacht laufende Prozesse. "pm" steht für "Process Manager".
| [https://switchbrew.org/wiki/Process_Manager_services pm]
| Der APPLET Speicher-Pool wurde um 24 MiB gesenkt und gibt diesem somit dem SYSTEM-Pool zurück. Damit lassen sich mehr Custom-Systemmodule ausführen.
|-
| {{Anker|ro}}'''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/ro.md ro]'''
| Lädt dynamische Bibliotheken und wurde mit der [[Nintendo-Switch-Firmware 3.0.0|Firmware 3.0.0]] eingeführt.
| [https://switchbrew.org/wiki/RO_services ro]
| Portiert die Funktionalitäten auf < 3.0.0 zurück, bei denen noch "loader" zuständig war. Ermöglicht außerdem [[#NRO-Patches|NRO-Patches]].
|-
| '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/sm.md sm]'''
| Verwaltet Dienste. "sm" steht für "Service Manager".
| [https://switchbrew.org/wiki/Services_API sm]
| Dieser ist für Entwickler interessant, da so u.a. ein eigener MitM-Service registriert werden kann. Patcht per Standard auch "smhax"<ref>[https://switchbrew.org/wiki/Switch_System_Flaws#FIRM-package_System_Modules Switch System Flaws#FIRM-package System Modules] unter "Service access control bypass"</ref><ref>[https://wiidatabase.de/switch-firmware-3-0-1-fixt-grossen-bug-update-nicht-empfohlen/ Switch-Firmware 3.0.1 fixt "großen Bug" – Update nicht empfohlen]</ref> auf der Firmware < [[Nintendo-Switch-Firmware 3.0.1|3.0.1]].
|-
| '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/spl.md spl]'''
| Ist u.a. für kryptographische Operationen notwendig. "spl" steht für "Secure Platform".
| [https://switchbrew.org/wiki/SPL_services spl]
|}
 
===== ams_mitm =====
Das Systemmodul '''ams_mitm''' fügt einige neue Funktionen hinzu, die in mehrere Teile aufgegliedert sind.
 
{| class="wikitable" border="1" width="100%"
|-
! Name
! Beschreibung
|-
| '''bpc_mitm'''
| Ermöglicht das [[#Reboot-Payload|Neustarten in einen Payload]] (bspw. wieder Atmosphère) und das vollständige Herunterfahren, wenn AutoRCM aktiviert ist (siehe [[AutoRCM#Herunterfahren]]). Überschreibt den [https://switchbrew.org/wiki/PCV_services#bpc bpc PCV-Service] von Nintendo.
|-
| '''fs_mitm'''
| Kann Dateien von Titeln mit denen auf der SD-Karte ersetzen, auch bekannt als "'''LayeredFS'''".
|-
| {{Anker|hid_mitm}}'''hid_mitm'''
| Mit der [[Nintendo-Switch-Firmware 9.0.0|Firmware 9.0.0]] wurden die HID-Komponenten für Controller so sehr geändert, dass libnx (die Bibliothek zum Bauen von Switch-Homebrews) keine Controller-Eingaben mehr erkennt. Dieses Problem wurde zwar in neueren libnx-Versionen behoben, allerdings müssen Homebrews mit der neuen libnx-Version neu gebaut werden. Da nicht jede Homebrew sofort aktualisiert wird/werden kann, wurde als Übergang ein temporäres Modul eingeführt, welches das Problem behebt.<ref>[https://github.com/Atmosphere-NX/Atmosphere/releases/tag/0.9.4 Atmosphère v0.9.4]</ref> Da es somit nicht mehr möglich ist, das HID-Modul selbst zu überschreiben, wird dieser Workaround in Zukunft entfernt. Mit Atmosphère v0.10.2 wurde es per Standard deaktiviert.<ref>[https://github.com/Atmosphere-NX/Atmosphere/releases/tag/0.10.2 Atmosphère v0.10.2]</ref>
 
Siehe auch [[#enable_deprecated_hid_mitm]]. Sollte es in Zukunft entfernt werden, wird SciresM aber einen separaten Download anbieten.<ref>https://arch.b4k.co/vg/thread/276990665/#277109730 "If it's ever removed (and I don't actually have plans to do so, I just wanted to explicitly reserve that right), I will publish a hid-compat-mitm sysmodule on my personal GitHub that can be used as a standalone.


Don't worry, I don't want to leave people without an option. It just kinda sucks that people not using it are paying memory costs equivalent to the whole sm sysmodule."</ref>
Don't worry, I don't want to leave people without an option. It just kinda sucks that people not using it are paying memory costs equivalent to the whole sm sysmodule."</ref>
*** '''ns_mitm''': Ermöglicht die Verwendung von Web-Applets im Homebrew Menu, wenn eine Anwendung überschrieben wird, da diese erst prüfen, ob es HTML-Inhalte in der Anwendung gibt.
|-
*** '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/modules/set_mitm.md set_mitm]''': Verändert die Anzeige der Systemversion ([https://switchbrew.org/wiki/Settings_services#GetFirmwareVersion GetFirmwareVersion]) ([[:Datei:Atmosphere Systemversion.jpg|siehe Bild]]) und liest weitere Einstellungen aus einer INI-Datei. Dabei wird der [https://switchbrew.org/wiki/Settings_services System-Settings-Service] abgefangen.
| '''ns_mitm'''
** '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/modules/boot.md boot]''': Reimplementierung von Nintendos "[https://switchbrew.org/wiki/Boot boot]"; initialisiert die Hardware und startet das System.
| Ermöglicht die Verwendung von Web-Applets im Homebrew Menu, wenn eine Anwendung überschrieben wird, da diese erst prüfen, ob es HTML-Inhalte in der Anwendung gibt.
** '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/modules/boot.md boot2]''': Reimplementierung von Nintendos "[https://switchbrew.org/wiki/Boot2 boot2]"; lädt weitere Prozesse.
|-
** '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/modules/creport.md creport]''': Generiert Absturzberichte auf der SD-Karte und verhindert das Senden dieser an Nintendo. Außerdem wird bei einem Absturz ein Screenshot erstellt (nur auf >= 10.0.0).
| '''set_mitm'''
** '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/cheats.md dmnt]''': Cheat-Code-Support, inklusive Kompatibilität zu [[SX OS|Gateshark]]. "dmnt" steht dabei für "Debug Monitor".
| Verändert die Anzeige der Systemversion ([https://switchbrew.org/wiki/Settings_services#GetFirmwareVersion GetFirmwareVersion]) ([[:Datei:Atmosphere Systemversion.jpg|siehe Bild]]) und liest weitere Einstellungen aus einer INI-Datei. Dabei wird der [https://switchbrew.org/wiki/Settings_services System-Settings-Service] abgefangen.
** '''eclct.stub''': Deaktiviert weitere [https://switchbrew.org/wiki/System_Settings#eclct Telemetrie-Dienste] von Nintendo.
|-
** '''[[#erpt|erpt]]''': Reimplementiert Nintendos [https://switchbrew.org/wiki/Error_Upload_services Error Report Service] und verhindert das Anlegen von Crash Reports im MMC
|}
** '''[[#fatal|fatal]]''': Reimplementiert Nintendos [https://switchbrew.org/wiki/Fatal_services fatal] und zeigt einen umfangreichen Fehlerbildschirm bei einem fatalen (deshalb der Name) Absturz an. Auch kann die Konsole mit den Lautstärketasten direkt neu gestartet werden.
** '''jpegdec''': Reimplementierung von [https://switchbrew.org/wiki/Jpegdec_services Nintendos JPEG-Decoder], damit Homebrews Bilder per Software dekodieren können
** '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/modules/loader.md loader]''': Reimplementiert Nintendos "[https://switchbrew.org/wiki/Loader_services loader]" und ermöglicht das Ersetzen von Dateien im ExeFS, das Patchen von NSOs, sowie [[#Button Overrides|Button Overrides]] (bspw.: "R" gedrückt halten, während ein Spiel startet, startet das Homebrew Menu mit vollem RAM-Zugriff).
** '''ncm''': Reimplementierung von [https://switchbrew.org/wiki/NCM_services Nintendos Content Manager].
** '''pgl''': Reimplementierung von Nintendos [https://switchbrew.org/wiki/PGL_services Program Launcher]. Ermöglicht es, Systemmodulen und Homebrews Aktionen auszuführen, wenn Applikationen abstürzen, gestartet oder geschlossen werden.
** '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/modules/pm.md pm]''': Reimplementierung von Nintendos "[https://switchbrew.org/wiki/Process_Manager_services Process Manager]", gibt u.a. mehr Speicher für Systemmodule frei.
** '''ro''': Reimplementierung von Nintendos [https://switchbrew.org/wiki/RO_services RO-Services].
** '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/modules/sm.md sm]''': Reimplementierung von Nintendos "[https://switchbrew.org/wiki/Services_API Service Manager]". Dieser ist für Entwickler interessant, da so u.a. ein eigener MitM-Service registriert werden kann. Patcht per Standard auch "smhax"<ref>[https://switchbrew.org/wiki/Switch_System_Flaws#FIRM-package_System_Modules Switch System Flaws#FIRM-package System Modules] unter "Service access control bypass"</ref><ref>[https://wiidatabase.de/switch-firmware-3-0-1-fixt-grossen-bug-update-nicht-empfohlen/ Switch-Firmware 3.0.1 fixt "großen Bug" – Update nicht empfohlen]</ref> auf der Firmware < [[Nintendo-Switch-Firmware 3.0.1|3.0.1]].
** '''spl''': Reimplementierung von Nintendos "[https://switchbrew.org/wiki/SPL_services Secure Platform Services]".
* '''Mesosphère''': Reimplementierung von Nintendos Kernel.
* '''Troposphère''': HorizonOS-Patches für Applikationen. Dies ist noch nicht in Atmosphère implementiert.<ref>https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/troposphere.md</ref>


=== Ordnerstruktur ===
=== Ordnerstruktur ===
Zeile 73: Zeile 169:
&#124;  &#124;  +---010000000000002B ''([[#erpt|erpt]])''
&#124;  &#124;  +---010000000000002B ''([[#erpt|erpt]])''
&#124;  &#124;  &#124;
&#124;  &#124;  &#124;
&#124;  &#124;  +---010000000000003C ''(jpegdec)''
&#124;  &#124;  +---010000000000003C ''([[#jpegdec|jpegdec]])''
&#124;  &#124;  &#124;
&#124;  &#124;  &#124;
&#124;  &#124;  +---0100000000000008 ''(boot2)''
&#124;  &#124;  +---0100000000000008 ''([[#boot2|boot2]])''
&#124;  &#124;  &#124;
&#124;  &#124;  &#124;
&#124;  &#124;  +---0100000000000032 ''(eclct.stub)''
&#124;  &#124;  +---0100000000000032 ''([[#eclct_stub|eclct.stub]])''
&#124;  &#124;  &#124;
&#124;  &#124;  &#124;
&#124;  &#124;  +---0100000000000034 ''([[#fatal|fatal]])''
&#124;  &#124;  +---0100000000000034 ''([[#fatal|fatal]])''
&#124;  &#124;  &#124;
&#124;  &#124;  &#124;
&#124;  &#124;  +---0100000000000036 ''(creport)''
&#124;  &#124;  +---0100000000000036 ''([[#creport|creport]])''
&#124;  &#124;  &#124;
&#124;  &#124;  &#124;
&#124;  &#124;  +---0100000000000037 ''(ro)''
&#124;  &#124;  +---0100000000000037 ''([[#ro|ro]])''
&#124;  &#124;  &#124;
&#124;  &#124;  &#124;
&#124;  &#124;  \---0100000000000042 ''(pgl)''
&#124;  &#124;  \---0100000000000042 ''([[#pgl|pgl]])''
&#124;  &#124;
&#124;  &#124;
&#124;  +---fatal_errors ''(Fehlerreports von fusee-primary)''
&#124;  +---fatal_errors ''(Fehlerreports von fusee-primary)''
Zeile 370: Zeile 466:


=== BCT.ini ===
=== BCT.ini ===
Mit der "<code>/atmosphere/config/BCT.ini</code>" ([https://switchbrew.org/wiki/BCT '''B'''oot '''C'''onfiguration '''T'''able]) lassen sich Einstellungen festlegen, die beim Start des Systems geladen werden müssen und während der Laufzeit nicht verändert werden dürfen. Sie sollten nur von erfahrenen Usern geändert werden!<ref>[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/fusee/BCT.md BCT.md]</ref>
Mit der "<code>/atmosphere/config/BCT.ini</code>" ([https://switchbrew.org/wiki/BCT '''B'''oot '''C'''onfiguration '''T'''able]) lassen sich Einstellungen festlegen, die beim Start des Systems geladen werden müssen und während der Laufzeit nicht verändert werden dürfen. Sie sollten nur von erfahrenen Usern geändert werden!<ref>[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/features/configurations.md#bctini configurations.md, Abschnitt "BCT.ini"]</ref>


{| class="wikitable" border="1"
{| class="wikitable" border="1"
Zeile 581: Zeile 677:


=== Cheats ===
=== Cheats ===
Atmosphère unterstützt Action-Replay-artige Cheats und ist kompatibel zu [[SX OS|Gateshark]]-Codes. Eine umfangreiche Dokumentation zum Erstellen von Cheats kann im [https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/cheats.md Atmosphère GitHub] gefunden werden. Cheats müssen als Textdatei an folgendem Ort auf der SD-Karte platziert werden:
Atmosphère unterstützt Action-Replay-artige Cheats und ist kompatibel zu [[SX OS|Gateshark]]-Codes. Eine umfangreiche Dokumentation zum Erstellen von Cheats kann im [https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/features/cheats.md Atmosphère GitHub] gefunden werden. Cheats müssen als Textdatei an folgendem Ort auf der SD-Karte platziert werden:


<code>/atmosphere/contents/{{TitleID}}/cheats/<abbr title="Build-ID des Spiels in Hexadezimal">''BUILD-ID''</abbr>.txt</code>
<code>/atmosphere/contents/{{TitleID}}/cheats/<abbr title="Build-ID des Spiels in Hexadezimal">''BUILD-ID''</abbr>.txt</code>
Zeile 597: Zeile 693:


=== erpt ===
=== erpt ===
Mithilfe von Atmosphères eigener Reimplementierung von "erpt" (Error Report) werden Crash Reports nicht mehr im System-Speicherstand, sondern auf der SD-Karte im Pfad "<code>/atmosphere/erpt_reports/</code>" angelegt. Dies verhindert das Hochladen dieser zu Nintendo, wenn die Original Firmware gebootet wird.
Mithilfe von Atmosphères eigener Reimplementierung von "[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/erpt.md erpt]" (Error Report) werden Crash Reports nicht mehr im System-Speicherstand, sondern auf der SD-Karte im Pfad "<code>/atmosphere/erpt_reports/</code>" angelegt. Dies verhindert das Hochladen dieser zu Nintendo, wenn die Original Firmware gebootet wird.


=== fatal ===
=== fatal ===
[[Datei:Atmosphere fatal.png|mini|Atmosphères "fatal" Absturzbildschirm]]
[[Datei:Atmosphere fatal.png|mini|Atmosphères "fatal" Absturzbildschirm]]
"fatal" ist der Absturzbildschirm der Nintendo Switch. Atmosphère überschreibt [https://switchbrew.org/wiki/Fatal_services diesen Service] mit einem eigenen, der die Logs auch auf der SD-Karte unter "<code>/atmosphere/fatal_reports/</code>", anstatt im Speicher der Switch speichert. So wird auch verhindert, dass eventuelle Fehler-Logs zu Nintendo hochgeladen werden. Auch besteht die Möglichkeit, per "POWER"-Knopf die Konsole normal neu zu starten (nicht in Atmosphère) oder einen Lautstärkeknopf, um den [[#Reboot-Payload|Reboot-Payload]] zu starten. "[[#fatal_auto_reboot_interval|fatal_auto_reboot_interval]]" kann auch auf einen Wert gesetzt werden, um die Konsole automatisch neu in den Reboot-Payload zu starten.
"fatal" ist der Absturzbildschirm der Nintendo Switch. Atmosphère [https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/fatal.md überschreibt] diesen Service mit einem eigenen, der die Logs auch auf der SD-Karte unter "<code>/atmosphere/fatal_reports/</code>", anstatt im Speicher der Switch speichert. So wird auch verhindert, dass eventuelle Fehler-Logs zu Nintendo hochgeladen werden. Auch besteht die Möglichkeit, per "POWER"-Knopf die Konsole normal neu zu starten (nicht in Atmosphère) oder einen Lautstärkeknopf, um den [[#Reboot-Payload|Reboot-Payload]] zu starten. "[[#fatal_auto_reboot_interval|fatal_auto_reboot_interval]]" kann auch auf einen Wert gesetzt werden, um die Konsole automatisch neu in den Reboot-Payload zu starten.


Nicht zu verwechseln mit dem Pfad "<code>/atmosphere/fatal_errors/</code>", in dem nur Fehlerreports von fusee-primary abgelegt werden.
Nicht zu verwechseln mit dem Pfad "<code>/atmosphere/fatal_errors/</code>", in dem nur Fehlerreports von fusee-primary abgelegt werden.
Zeile 617: Zeile 713:


Wobei "''NAME''" durch einen eigenen Namen ersetzt werden muss. Innerhalb dieser Ordner können mehrere IPS-Patches abgelegt werden, die den Dateinamen des SHA256-Hashes der KIP tragen müssen. Dies wird bspw. für [https://wiidatabase.de/switch-downloads/hacks/signatur-patches/ Signatur-Patches] eingesetzt.
Wobei "''NAME''" durch einen eigenen Namen ersetzt werden muss. Innerhalb dieser Ordner können mehrere IPS-Patches abgelegt werden, die den Dateinamen des SHA256-Hashes der KIP tragen müssen. Dies wird bspw. für [https://wiidatabase.de/switch-downloads/hacks/signatur-patches/ Signatur-Patches] eingesetzt.
=== NRO-Patches ===
NROs lassen sich mithilfe von IPS/IPS32-Patches auf der SD-Karte patchen, wenn diese in folgendem Pfad liegen:
<code>/atmosphere/nro_patches/''NAME''/<abbr title="Build-ID der NRO im Hexadezimalsystem">''BUILD-ID''</abbr>.ips</code>
Wobei "''NAME''" durch einen eigenen Namen ersetzt werden muss. Bei der Build-ID können nachgestellte Nullen weggelassen werden.


=== NSO-Patches ===
=== NSO-Patches ===
Zeile 671: Zeile 774:


=== Daybreak ===
=== Daybreak ===
[[Datei:Atmosphère Daybreak.jpg|mini|Daybreak]]
Mithilfe der enthaltenen Applikation "'''Daybreak'''" lassen sich System-Updates sowohl zum Up-, als auch zum Downgraden verwenden. Hierbei wird der Atmosphère-Service "ams:su" verwendet, der die gleiche Logik wie Nintendos Shell zur Installation von Updates über eine Game Card benutzt. Die Update-NCAs werden dabei aus einem beliebigen Ordner auf der SD-Karte installiert, optional lässt sich der exFAT-Treiber mitinstallieren. Die ".cmnt" muss hierbei aber in ".cnmt.nca" umbenannt werden, was bspw. [https://gist.github.com/HookedBehemoth/df36b5970e1c5b1b512ec7bdd9043c6e per] [https://gist.github.com/antiKk/279966c27fdfd9c7fe63b4ae410f89c4 Skript] erledigt werden kann.
Mithilfe der enthaltenen Applikation "'''Daybreak'''" lassen sich System-Updates sowohl zum Up-, als auch zum Downgraden verwenden. Hierbei wird der Atmosphère-Service "ams:su" verwendet, der die gleiche Logik wie Nintendos Shell zur Installation von Updates über eine Game Card benutzt. Die Update-NCAs werden dabei aus einem beliebigen Ordner auf der SD-Karte installiert, optional lässt sich der exFAT-Treiber mitinstallieren. Die ".cmnt" muss hierbei aber in ".cnmt.nca" umbenannt werden, was bspw. [https://gist.github.com/HookedBehemoth/df36b5970e1c5b1b512ec7bdd9043c6e per] [https://gist.github.com/antiKk/279966c27fdfd9c7fe63b4ae410f89c4 Skript] erledigt werden kann.


Navigationsmenü