Diese Version enthält eine verbesserte Lösung für das Problem, bei dem Konsolen, welche ihre SYSTEM-Partition mit Tools wie bspw. haku33 neu gebaut haben, bei einem Update auf 17.0.0 gebrickt sind.
Die technischen Details dazu hat SciresM in einem Gist veröffentlicht. Konkret handelt es sich um eine Änderung bezüglich der System-Speicherdaten – Nintendo speichert zu jeder Speicherdatei einen Index und diesen wiederum in einer eigenen Speicherdatei ("Index-Speicherdatei"). Diese hat die statische ID "8000000000000000
" und kann daher hardcodiert werden – eigentlich, denn diese Änderung wurde erst mit 17.0.0 durchgeführt. Davor behandelte Nintendo jede Speicherdatei, die nicht zu einem Benutzer gehörte, als statische Speicherdatei.
Auf unmodifizierten Konsolen stellt diese Änderung kein Problem dar, da alle Speicherdateien nur über die "CreateSaveFile()
"-Funktion erstellt werden und diese fügt den Index immer zur Index-Speicherdatei hinzu. Die System-Speicherdateien gehören nicht zu einem Benutzer und wurden also daher vor 17.0.0 automatisch geladen – ab 17.0.0 muss sich aber wie oben erwähnt der Index in der Index-Speicherdatei befinden. Wenn jetzt also der NAND mit Tools neu gebaut wird, werden System-Speicherdatei zwar angelegt, diese aber nicht der Index-Speicherdatei hinzugefügt. Bei einem Update auf 17.0.0 werden diese daher gelöscht.
Das Löschen von System-Speicherdaten ist eigentlich unproblematisch, da die Switch diese automatisch neu anlegt. Nun, wäre da nicht die kritische Content-Meta-Datenbank mit der ID "8000000000000120
", die auflistet, welche Betriebssystem-Module installiert sind. Ohne diese weiß das System nicht, welche Module installiert sind und wird nicht starten, was zu den bekannten Symptomen führt. Und diese Speicherdatei muss sich natürlich auch in der Index-Speicherdatei befinden. Ergo findet das System nach einem Update auf 17.0.0 die Content-Meta-Datenbank nicht mehr.
Tools wie "Haku33", "TegraExplorer", "EmmcHaccGen" und "ChoiDujour" resetten die Switch, indem sie einfach jede Speicherdatei außer die Content-Meta-Datenbank löschen – darunter fällt natürlich auch die Index-Speicherdatei!
In der vorherigen Atmosphère-Version hat SciresM einen Fix hinzugefügt, bei dem die Content-Meta-Datenbank neu gebaut wurde – das funktioniert allerdings nur beim ersten Boot direkt nach dem Update! Wenn das System vorher normal gestartet wurde, wurde diese Speicherdatei bereits gelöscht und leer neu angelegt, weshalb der Fix fehlschlägt. Demzufolge wurde nun eine Änderung durchgeführt – Atmosphère behebt jetzt auch automatisch das Problem, wenn die Content-Meta-Datenbank leer ist. Wer also in das Problem mit dem Blackscreen nach dem Booten läuft (oder einen Fatal-Error von boot1 (0100000000000005) bekommt), muss einfach mit Atmosphère v1.6.1+ booten um es zu beheben. Dies muss mit der fusee.bin geschehen!
Dieses Atmosphère-Update verbessert auch das USB-Transfer-Tool, indem es die Performance stark verbessert und die Oberfläche mit der GPU rendert. Auch wurde die Unterstützung für USB 3.0 verbessert.
Ich habe neue Loader-Patches hochgeladen, aber es gibt nach wie vor keine FS- und ES-Patches für 17.0.0!
* An improved solution to the problem that would cause consoles which had previously re-built their SYSTEM partition to brick on update-to-17.0.0 was added. ** In particular, booting atmosphère will now automatically detect the problem and unbrick any consoles which have fallen into this state. * Some improvements were made to haze, including: ** Performance was greatly improved: *** Support was added for GetObjectPropList, which decreases the amount of requests made by ~8x. *** Haze now performs rendering on the GPU, freeing up the CPU to respond to requests in a more timely manner. ** An issue was fixed with how haze configures bMaxPacketSize0 which improves support for USB3. * General system stability improvements to enhance the user's experience.