7.846
Bearbeitungen
ICON (Diskussion | Beiträge) |
ICON (Diskussion | Beiträge) |
||
(6 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. | ||
* '''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 | * '''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 92: | Zeile 93: | ||
| [https://switchbrew.org/wiki/Loader_services loader] | | [https://switchbrew.org/wiki/Loader_services loader] | ||
| Ermöglicht das [[#ExeFS|Ersetzen von Dateien im ExeFS]], das [[#NSO-Patches|Patchen von NSOs]], sowie [[#Overrides|Button Overrides]] (bspw.: "R" gedrückt halten, während ein Spiel startet, startet das Homebrew Menu mit vollem RAM-Zugriff). | | Ermöglicht das [[#ExeFS|Ersetzen von Dateien im ExeFS]], das [[#NSO-Patches|Patchen von NSOs]], sowie [[#Overrides|Button Overrides]] (bspw.: "R" gedrückt halten, während ein Spiel startet, startet das Homebrew Menu mit vollem RAM-Zugriff). | ||
|- | |||
| lm | |||
| Stellt Logging-Dienste für einige Anwendungen und Spiele bereit. | |||
| [https://switchbrew.org/wiki/Log_services lm] | |||
| Logging auf die SD-Karte. Der LogManager ist aufgrund des erhöhten Speicherbedarfs standardmäßig deaktiviert, kann aber [[#enable_log_manager|aktiviert werden]]. | |||
|- | |- | ||
| '''[https://github.com/Atmosphere-NX/Atmosphere/blob/master/docs/components/modules/ncm.md ncm]''' | | '''[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". | | 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] | ||
| | | | ||
|- | |- | ||
| {{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 157: | ||
Die Inhalte in ''(kursiven Klammern)'' dienen der Erklärung | Die Inhalte in ''(kursiven Klammern)'' dienen der Erklärung | ||
{{Pre|SD-Karte | {{Pre|SD-Karte | ||
| fusee | | fusee.bin ''(Payload, der an die Switch gesendet werden muss, um den Bootprozess einzuleiten, separater Download)'' | ||
| hbmenu.nro ''(Homebrew Menu)'' | | hbmenu.nro ''(Homebrew Menu)'' | ||
| | | | ||
+---atmosphere | +---atmosphere | ||
| | hbl.nsp ''(Homebrew Loader, der das Homebrew Menü lädt)'' | | | hbl.nsp ''(Homebrew Loader, der das Homebrew Menü lädt)'' | ||
| | package3 ''(Signierter/verschlüsselter Fusée-Teil)'' | |||
| | reboot_payload.bin ''([[#Reboot-Payload|Reboot-Payload]], Kopie von fusee-primary, wird bei einem Neustart ausgeführt) | | | reboot_payload.bin ''([[#Reboot-Payload|Reboot-Payload]], Kopie von fusee-primary, wird bei einem Neustart ausgeführt) | ||
| | stratosphere.romfs ''([[#Systemmodule|Atmosphères Systemmodule]], waren früher im "contents"-Ordner | | | stratosphere.romfs ''([[#Systemmodule|Atmosphères Systemmodule]], waren früher im "contents"-Ordner | ||
Zeile 164: | Zeile 169: | ||
| | | | | | ||
| +---config_templates ''(Konfigurationstemplates)'' | | +---config_templates ''(Konfigurationstemplates)'' | ||
| | exosphere.ini ''([[#exosphere.ini|Einstellungen für Exosphère]])'' | | | exosphere.ini ''([[#exosphere.ini|Einstellungen für Exosphère]])'' | ||
| | override_config.ini ''([[#Overrides|Overrides]])'' | | | override_config.ini ''([[#Overrides|Overrides]])'' | ||
| | stratosphere.ini ''([[#stratosphere.ini|Einstellungen für Stratosphère und fusee-primary]])'' | |||
| | system_settings.ini ''([[#System Settings|Atmosphère-Einstellungen]])'' | | | system_settings.ini ''([[#System Settings|Atmosphère-Einstellungen]])'' | ||
| | | | | | ||
| +---flags ''([[#Flags|Flags]])'' | | +---flags ''([[#Flags|Flags]])'' | ||
| | | | | | ||
| +---fatal_errors ''(Fehlerreports von fusee-primary)'' | | +---fatal_errors ''(Fehlerreports von fusee-primary)'' | ||
Zeile 176: | Zeile 180: | ||
| | | | | | ||
| \---kip_patches ''([[#KIP-Patches|KIP-Patches]])'' | | \---kip_patches ''([[#KIP-Patches|KIP-Patches]])'' | ||
| | | | ||
\---switch ''(Ordner für Homebrews)'' | \---switch ''(Ordner für Homebrews)'' | ||
Zeile 187: | Zeile 189: | ||
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 | 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 404: | Zeile 406: | ||
| Weist "ro" an, NROs nicht streng zu überprüfen. Darunter fallen Signatur, die Programm-ID und der Typ.<ref>https://github.com/Atmosphere-NX/Atmosphere/blob/48b0b2fc46c7331ba3cb9b297475db9e0d82cd66/stratosphere/ro/source/impl/ro_nrr_utils.cpp#L48</ref><br> | | Weist "ro" an, NROs nicht streng zu überprüfen. Darunter fallen Signatur, die Programm-ID und der Typ.<ref>https://github.com/Atmosphere-NX/Atmosphere/blob/48b0b2fc46c7331ba3cb9b297475db9e0d82cd66/stratosphere/ro/source/impl/ro_nrr_utils.cpp#L48</ref><br> | ||
<code>0x0</code> = deaktiviert, <code>0x1</code> = aktiviert | <code>0x0</code> = deaktiviert, <code>0x1</code> = aktiviert | ||
|- | |||
! colspan="4" | [lm] | |||
|- | |||
! Config-Key | |||
! Wert | |||
! Beispiel | |||
! Erklärung | |||
|- | |||
| {{Anker|enable_sd_card_logging}}<code>enable_sd_card_logging</code> | |||
| <code>0x0</code> oder <code>0x1</code> | |||
| <code>u8!0x1</code> | |||
| (De-)aktiviert das Logging auf die SD-Karte.<br> | |||
<code>0x0</code> = deaktiviert, <code>0x1</code> = aktiviert | |||
|- | |||
| {{Anker|sd_card_log_output_directory}}<code>sd_card_log_output_directory</code> | |||
| String | |||
| <code>str!atmosphere/binlogs/code> | |||
| Konfiguriert den Pfad, in dem Logs gespeichert werden | |||
|- | |- | ||
! colspan="4" | [atmosphere] | ! colspan="4" | [atmosphere] | ||
Zeile 487: | Zeile 507: | ||
| <code>0x0</code> | | <code>0x0</code> | ||
| Aktiviert Atmosphères [[#htc|Reimplementierung von htc]] (Host-Target Connection).<br> | | Aktiviert Atmosphères [[#htc|Reimplementierung von htc]] (Host-Target Connection).<br> | ||
<code>0x0</code> = deaktiviert, <code>0x1</code> = aktiviert. | |||
|- | |||
| {{Anker|enable_log_manager}}<code>enable_log_manager</code> | |||
| <code>0x0</code> oder <code>0x1</code> | |||
| <code>0x0</code> | |||
| Aktiviert Atmosphères Reimplementierung des Log-Managers. Wenn [[#enable_htc|enable_htc]] auf <code>0x1</code> steht, ist dieser immer aktiviert.<br> | |||
<code>0x0</code> = deaktiviert, <code>0x1</code> = aktiviert. | <code>0x0</code> = deaktiviert, <code>0x1</code> = aktiviert. | ||
|- | |- | ||
Zeile 509: | Zeile 535: | ||
|} | |} | ||
=== 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# | 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 | 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" | [stratosphere] | ! colspan="4" | [stratosphere] | ||
Zeile 561: | Zeile 555: | ||
<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. | ||
|} | |} | ||
Zeile 751: | Zeile 739: | ||
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 759: | ||
"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 | Nicht zu verwechseln mit dem Pfad "<code>/atmosphere/fatal_errors/</code>", in dem nur Fehlerreports von fusee abgelegt werden. | ||
=== htc === | === htc === | ||
Zeile 770: | Zeile 765: | ||
=== 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 | 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 === |
Bearbeitungen