Atmosphère: Unterschied zwischen den Versionen

Aus WiiDatabase Wiki
Zur Navigation springenZur Suche springen
1.0.0
(1.0.0)
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 17: Zeile 17:


Seit der v0.17.0 wird [[Mariko]] offiziell unterstützt.<ref>[https://wiidatabase.de/atmosphere-v0-17-0-unterstuetzt-mariko Atmosphère v0.17.0 unterstützt Mariko]</ref>
Seit der v0.17.0 wird [[Mariko]] offiziell unterstützt.<ref>[https://wiidatabase.de/atmosphere-v0-17-0-unterstuetzt-mariko Atmosphère v0.17.0 unterstützt Mariko]</ref>
Eine Vorabversion der 1.0.0 erschien am 07. September 2021.<ref>[https://wiidatabase.de/atmosphere-v1-0-0-pre-release/ Atmosphère v1.0.0 (Pre-Release)]</ref> Die finale 1.0.0 erschien am 09. September 2021.


== Komponenten ==
== Komponenten ==
Zeile 23: Zeile 25:
=== Hauptkomponenten ===
=== 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.
* '''Exosphère''': TrustZone mit eigenem Secure Monitor.
* '''Exosphère''': TrustZone mit eigenem Secure Monitor.
* '''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.
* '''Mesosphère''': Reimplementierung von Nintendos Kernel. Ab der v0.17.0 ist Mesosphère standardmäßig aktiv; ein Opt-Out-Release steht zur Verfügung.
* '''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>
* '''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>


Zeile 96: Zeile 97:
| Dient der Verwaltung von Inhalten (bspw. NAND-Speicherständen). "ncm" steht für "Nintendo Content Manager".
| Dient der Verwaltung von Inhalten (bspw. NAND-Speicherständen). "ncm" steht für "Nintendo Content Manager".
| [https://switchbrew.org/wiki/NCM_services ncm]
| [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]
| {{Anker|pgl}}[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/pgl.md pgl]
Zeile 151: Zeile 152:
Die Inhalte in ''(kursiven Klammern)'' dienen der Erklärung
Die Inhalte in ''(kursiven Klammern)'' dienen der Erklärung
{{Pre|SD-Karte
{{Pre|SD-Karte
&#124;  fusee-primary.bin ''(Payload, der an die Switch gesendet werden muss, um den Bootprozess einzuleiten)''
&#124;  fusee.bin ''(Payload, der an die Switch gesendet werden muss, um den Bootprozess einzuleiten, separater Download)''
&#124;  hbmenu.nro  ''(Homebrew Menu)''
&#124;  hbmenu.nro  ''(Homebrew Menu)''
&#124;
&#124;
+---atmosphere
+---atmosphere
&#124;  &#124;  fusee-mtc.bin
&#124;  &#124;  fusee-secondary.bin ''(Signierter/verschlüsselter Fusée-Teil)''
&#124;  &#124;  hbl.nsp ''(Homebrew Loader, der das Homebrew Menü lädt)''
&#124;  &#124;  hbl.nsp ''(Homebrew Loader, der das Homebrew Menü lädt)''
&#124;  &#124;  package3 ''(Signierter/verschlüsselter Fusée-Teil)''
&#124;  &#124;  reboot_payload.bin ''([[#Reboot-Payload|Reboot-Payload]], Kopie von fusee-primary, wird bei einem Neustart ausgeführt)
&#124;  &#124;  reboot_payload.bin ''([[#Reboot-Payload|Reboot-Payload]], Kopie von fusee-primary, wird bei einem Neustart ausgeführt)
&#124;  &#124;  stratosphere.romfs ''([[#Systemmodule|Atmosphères Systemmodule]], waren früher im "contents"-Ordner
&#124;  &#124;  stratosphere.romfs ''([[#Systemmodule|Atmosphères Systemmodule]], waren früher im "contents"-Ordner
Zeile 164: Zeile 164:
&#124;  &#124;
&#124;  &#124;
&#124;  +---config_templates ''(Konfigurationstemplates)''
&#124;  +---config_templates ''(Konfigurationstemplates)''
&#124;  &#124;      BCT.ini  ''([[#BCT.ini|Einstellungen für Stratosphère und fusee-primary]])''
&#124;  &#124;      exosphere.ini  ''([[#exosphere.ini|Einstellungen für Exosphère]])''
&#124;  &#124;      exosphere.ini  ''([[#exosphere.ini|Einstellungen für Exosphère]])''
&#124;  &#124;      override_config.ini ''([[#Overrides|Overrides]])''
&#124;  &#124;      override_config.ini ''([[#Overrides|Overrides]])''
&#124;  &#124;      stratosphere.ini  ''([[#stratosphere.ini|Einstellungen für Stratosphère und fusee-primary]])''
&#124;  &#124;      system_settings.ini ''([[#System Settings|Atmosphère-Einstellungen]])''
&#124;  &#124;      system_settings.ini ''([[#System Settings|Atmosphère-Einstellungen]])''
&#124;  &#124;
&#124;  &#124;
&#124;  +---flags ''([[#Flags|Flags]])''
&#124;  +---flags ''([[#Flags|Flags]])''
&#124;  &#124;      clean_stratosphere_for_0.19.0.flag  ''(Löscht alte Atmosphère-Systemmodule aus dem "contents"-Ordner)''
&#124;  &#124;
&#124;  &#124;
&#124;  +---fatal_errors ''(Fehlerreports von fusee-primary)''
&#124;  +---fatal_errors ''(Fehlerreports von fusee-primary)''
Zeile 176: Zeile 175:
&#124;  &#124;
&#124;  &#124;
&#124;  \---kip_patches ''([[#KIP-Patches|KIP-Patches]])''
&#124;  \---kip_patches ''([[#KIP-Patches|KIP-Patches]])''
&#124;
+---sept ''(sept, Inhalt nicht gelistet)''
&#124;
&#124;
\---switch ''(Ordner für Homebrews)''
\---switch ''(Ordner für Homebrews)''
Zeile 187: Zeile 184:
Um Atmosphère zu "installieren" muss lediglich die Release-ZIP auf die SD-Karte entpackt werden. Für die meisten Nutzer werden auch noch die [https://wiidatabase.de/switch-downloads/hacks/signatur-patches/ Signatur-Patches] empfohlen. Die ''fusee_primary.bin'' muss anschließend gestartet werden, bspw. über [https://wiidatabase.de/switch-downloads/exploits/fusee-gelee/ Fusée Gelée].
Um Atmosphère zu "installieren" muss lediglich die Release-ZIP auf die SD-Karte entpackt werden. Für die meisten Nutzer werden auch noch die [https://wiidatabase.de/switch-downloads/hacks/signatur-patches/ Signatur-Patches] empfohlen. Die ''fusee_primary.bin'' muss anschließend gestartet werden, bspw. über [https://wiidatabase.de/switch-downloads/exploits/fusee-gelee/ Fusée Gelée].


Für [[Mariko]]-Geräte wird empfohlen, [https://wiidatabase.de/switch-downloads/custom-firmware/spacecraft-nx/ Spacecraft-NX] auf den SX Core/Lite zu flashen. Danach muss die "fusee-primary.bin" in "payload.bin" umbenannt und in den Root der SD-Karte kopiert werden.
Für [[Mariko]]-Geräte wird empfohlen, [https://wiidatabase.de/switch-downloads/custom-firmware/spacecraft-nx/ Spacecraft-NX] auf den SX Core/Lite zu flashen. Danach muss die "fusee.bin" in "payload.bin" umbenannt und in den Root der SD-Karte kopiert werden.


== Features ==
== Features ==
Zeile 509: Zeile 506:
|}
|}


=== BCT.ini ===
=== {{Anker|BCT.ini}}stratosphere.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/features/configurations.md#bctini configurations.md, Abschnitt "BCT.ini"]</ref>
Mit der "<code>/atmosphere/config/stratosphere.ini</code>" (früher "<code>BCT.ini</code>" für ([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#stratosphereini configurations.md, Abschnitt "stratosphere.ini"]</ref>


Zuvor muss die BCT.ini aus "<code>/atmosphere/config_templates/BCT.ini</code>" kopiert werden.
Zuvor muss die stratosphere.ini aus "<code>/atmosphere/config_templates/stratosphere.ini</code>" kopiert werden.


{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
! colspan="4" | [stage1]
|-
! Config-Key
! Wert
! Beispiel
! Erklärung
|-
| {{Anker|stage2_path}}<code>stage2_path</code>
| String
| <code>atmosphere/fusee-secondary.bin</code>
| Pfad zum Stage2-Payload.
|-
| {{Anker|stage2_mtc_path}}<code>stage2_mtc_path</code>
| String
| <code>atmosphere/fusee-mtc.bin</code>
| Pfad zum Stage2-MTC-Payload.
|-
| {{Anker|stage2_addr}}<code>stage2_addr</code>
| Hexadezimal
| <code>0xF0000000</code>
| ?
|-
| {{Anker|stage2_entrypoint}}<code>stage2_entrypoint</code>
| Hexadezimal
| <code>0xF0000000</code>
| ?
|-
| {{Anker|custom_splash}}<code>custom_splash</code>
| String
| <code>/atmosphere/bootlogo.bmp</code>
| Ermöglicht einen eigenen Bootsplash. Das Bild muss eine BMP mit einer Größe von 1280x720 Pixeln sein, welches 90° gegen den Uhrzeigersinn gedreht wurde (sodass die Auflösung am Ende 720x1280 beträgt). Zudem muss es als 32-Bit ARGB exportiert werden - dies ist bspw. mit [https://www.gimp.org/ GIMP] möglich. Siehe auch [https://gbatemp.net/threads/share-your-custom-atmosphere-fusee-secondary-bootlogos.532018/ diesen GBATemp-Thread].
|-
|-
! colspan="4" | [stratosphere]
! colspan="4" | [stratosphere]
Zeile 561: Zeile 526:
<code>0</code> = NoGC-Patches erzwungen deaktiviert, <code>1</code> = NoGC-Patches erzwungen aktiviert<br>
<code>0</code> = NoGC-Patches erzwungen deaktiviert, <code>1</code> = NoGC-Patches erzwungen aktiviert<br>
Es gibt keinen Standardwert - Atmosphère versucht standardmäßig selbst mithilfe der Anzahl der gebrannten GameCard-FUSES herauszufinden, ob ein NoGC-Patch notwendig ist.
Es gibt keinen Standardwert - Atmosphère versucht standardmäßig selbst mithilfe der Anzahl der gebrannten GameCard-FUSES herauszufinden, ob ein NoGC-Patch notwendig ist.
|-
| {{Anker|enable_ncm}}<code>disable_ncm</code>
| <code>0</code> oder <code>1</code>
| <code>0</code>
| Deaktiviert Atmosphères eigene NCM-Reimplementierung, die sich u.a. um die Verwaltung von NAND-Speicherständen kümmert. Diese Option wird später entfernt.<br>
<code>0</code> = Custom NCM aktiviert (Standard), <code>1</code> = Custom NCM deaktiviert<br>
|}
|}


Zeile 751: Zeile 710:


Standardmäßig werden Cheats aktiviert, wenn ein Spiel gestartet und dabei nicht "L" gedrückt gehalten wird. Dies lässt sich in den Button Overrides unter "[[#cheat_enable_key|cheat_enable_key]]" ändern.
Standardmäßig werden Cheats aktiviert, wenn ein Spiel gestartet und dabei nicht "L" gedrückt gehalten wird. Dies lässt sich in den Button Overrides unter "[[#cheat_enable_key|cheat_enable_key]]" ändern.
=== Splash-Screen ===
Ein eigener Splash-Screen wird beim Start des Systems angezeigt und muss in die package3 injiziert werden. Dazu steht im Git-Repositorium ein [https://github.com/Atmosphere-NX/Atmosphere/blob/master/utilities/insert_splash_screen.py Python-Skript] zur Verfügung, welches wie folgt aufgerufen werden muss:
{{Pre|'''python''' insert_splash_screen.py customsplash.png pfad/zur/package3}}
Das Bild sollte eine Auflösung von exakt 1280x720 Pixeln besitzen.


=== EmuMMC ===
=== EmuMMC ===
Zeile 764: Zeile 730:
"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.
"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 abgelegt werden.


=== htc ===
=== htc ===
Zeile 770: Zeile 736:


=== Reboot-Payload ===
=== Reboot-Payload ===
Unter "<code>/atmosphere/reboot_payload.bin</code>" kann ein beliebiger Fusée-Gelée-Payload abgelegt werden, der gestartet werden soll, wenn die Konsole neu gestartet wird (falls in den [[#power_menu_reboot_function|System Settings]] <code>power_menu_reboot_function</code> auf <code>payload</code> steht) oder bei einem Reboot über den Absturzbildschirm "fatal". Auch startet die "reboot_to_payload.nro" diesen Payload. Standardmäßig handelt es sich hierbei lediglich um eine Kopie von "fusee-primary.bin".
Unter "<code>/atmosphere/reboot_payload.bin</code>" kann ein beliebiger Fusée-Gelée-Payload abgelegt werden, der gestartet werden soll, wenn die Konsole neu gestartet wird (falls in den [[#power_menu_reboot_function|System Settings]] <code>power_menu_reboot_function</code> auf <code>payload</code> steht) oder bei einem Reboot über den Absturzbildschirm "fatal". Auch startet die "reboot_to_payload.nro" diesen Payload. Standardmäßig handelt es sich hierbei lediglich um eine Kopie von "fusee.bin".


=== KIPs ===
=== KIPs ===

Navigationsmenü