14 Juli 2018

Quellcode für Kernel von EZ-Flash Omega veröffentlicht

Nachdem das EZ-Flash Team dieses Jahr schon den Quellcode für die EZ-Flash III veröffentlicht hat, ist nun der Quellcode für den Kernel ihrer neusten Karte - der EZ-Flash OMEGA dran. Zum Kompillieren wird lediglich DevkitPro zusammen mit DevkitARM und LibGBA benötigt.
Die EZ-Flash Omega ist das aktuellste Flaggschiff des Herstellers. Ein Review dazu wird hier auch noch erscheinen.

10 Juli 2018

SX OS und SX Pro Review (Team Xecuter)

Struktur:
1. Überblick (mit offiziellen Funktionen)
2. Packung und Inhalt
3. Qualität des Produktes
4. Installation und Benutzung
5. Kompatibilität
6. Weitere Funktionen
7. Schlussergebnis

1. Überblick

In den XBox 360er Tagen sehr bekannt ist das Team Xecuter inzwischen eher in Vergessenheit geraten. Neben ein paar nie eingehaltenen Ankündigungen (z.B. für einen XBox One Modchip) gab es keine relevanten Ereignisse. Jetzt gibt es allerdings ein neues Produkt, das diesmal auf keine Konsole von Microsoft abzielt sondern auf die Switch von Nintendo. Dabei wird der schon seit einigen Monaten bekannte Fusée Gelée Exploit genutzt. Um ihn zu verwenden muss die Switch in den Recovery Modus (RCM) gebracht werden und dort ein Payload per USB ausgeführt werden, wozu sowohl ein kleiner Leiter zum Überbrücken einiger Pins als auch ein USB Host Gerät notwendig sind.
Das Herzstück des Angebots von Team Xecuter ist eine Custom Firmware (SX OS), die man entweder als einzelne Lizenz erwerben kann, wenn man einen eigenen Leiter (JIG) und ein Handy o.ä. zum Ausführen des Exploits verwenden möchte, oder zusammen mit einem etwa daumengroßen USB Dongle mit einem eigenen JIG. Ich habe mich für die Version mit USB Dongle und JIG entschieden.
Es gibt übrigens einige Indizien darauf, dass die Team Xecuter Seite von den Machern von Gateway 3DS gekauft wurden und der Name nur noch zu Vermarktungszwecken verwendet wird - wie PARADOX. Man sollte also ähnlichen Support wie in den ersten Jahren der Gateway 3DS erwarten können.
Ich habe den Dongle bei Shop01media gekauft. Dieses Review ist zur SX OS Version 2.5.2 und wird aktualisiert wenn eine Version mit wichtigen Neuerungen erscheint.

Offizielle Funktionen (von der Website, frei aus dem Englischen übersetzt):
Offizielle Funktionen vom SX Pro USB Dongle:
- Lötfrei: der SX Pro ist ein einfach benutzbarer Dongle, der in den Ladeanschluss deiner Nintendo Switch gesteckt wird
- Garantie bleibt erhalten: Das SX Pro macht deine Garantie nicht ungültig. Du musst die Konsole nicht öffnen oder irgendwelche Modifikationen machen. Einfach!
- Kostenlose SX OS Lizenz: Jeder SX Pro wird mit einer kostenlosen Lizenz für das SX OS Versand
- Vollständig aktualisierbar: Der SX Pro ist vollständig aktualisierbar und zukunftssicher
Offizielle Funktionen von der SX OS Custom Firmware:
- Funktioniert mit jeder Switch: Das SX OS funktioniert mit jeder Nintendo Switch, die es gibt. Auf jeder Firmware Version! (Diese Aussage stimmt so nicht mehr. Weiteres dazu später.)
- Spiele alle Spiele! Mit dem SX OS kannst du all deine Lieblingsspiele direkt von der MicroSD Karte aus starten, die in deiner Nintendo Switch steckt
- Homebrew Spiele & Anwendungen: Wenn du den SX OS Homebrew Menu Launcher verwendest kannst du alle qualitativen Spiele und Anwendungen von unabhängigen Entwicklern genießen
- Fortgesetzte Unterstützung: Wir arbeiten aktiv daran weitere aufregende Funktionen ins SX OS zu bringen. Kunden haben die Berechtigung für kostenlose Unterstützung und Updates auf Lebenszeit (welche Lebenszeit da auch immer gemeint ist)
- Rückwärtskompatibel: Wenn du den SX OS Launcher verwendest kannst du einfach die normale Nintendo Switch Firmware starten um deine originalen Spiele zu genießen.

2. Packung und Inhalt



Die Verpackung vom SX Pro ist in einem stylischen rot-schwarzem Farbschema gehalten. Auf der Vorderseite prankt ein Logo des Teams während die Rückseite von einem CE- und einem RoHS Symbol geziert werden. Zum Hersteller gibt es keine URL auf der Verpackung.
Aus der schwarzen Hülle kann man eine weiße Box herausschieben, die man wie ein Buch öffnen kann. Auch hier prankt auf der Vorderseite das eben erwähnte Logo. Der Rest der Außenseiten ist komplett weiß.

In der Pappe ist eine Einlage aus weißem Kunststoff, in der sich der JIG und der USB Dongle befinden. Außerdem kann man sie aufklappen um an ein ziemlich chemisch riechendes USB-A zu Micro USB Kabel zu gelangen, das zum Laden des USB Dongles verwendet werden kann.
In dem USB-C Anschluss des Dongles befindet sich ein schwarzes Plastikstück um Staub abzufangen. Man kann es einfach herausziehen. Außerdem befinden sich sowohl auf dem JIG, als auch auf dem USB Dongle Aufkleber mit dem Logo.
Also noch einmal der komplette Lieferumfang aufgelistet:
- Verpackung (bestehend aus dem Überschub, der Pappschachtel und der Kunststoffeinlage)
- USB Dongle inklusive Staubschutz
- USB-A zu Micro USB Kabel
- JIG

3. Qualität des Produktes


Der mitgelieferte JIG (in den Bildern links) besteht hauptsächlich aus schwarzem Plastik. Hier befindet sich der Aufkleber mit dem Logo auf der Rückseite. Von Oben kann man die Wörter "ON" und "OFF" lesen. Das ist dazu da um die Orientation mit der der JIG zur Ausführung des RCM in die Switch gesteckt werden muss zu verdeutlichen.
Außerdem steht neben den beiden Kontakten "TX". Die Kontakte sind sehr dünn und scheinen biegbar zu sein - für die Pins mit denen er verbunden werden soll deutlich besser als die Meisten anderen verkauften JIGs. Insgesamt macht der JIG einen besseren Eindruck als ein anderer den ich online gekauft habe (in den Bildern rechts).

Der mit schwarzem Gummi ummantelte USB Dongle hat zwei USB Anschlüsse. Der obere USB-C Anschluss wird verwendet um den Payload für den Exploit an die Switch zu senden. Außerdem kann er in der normalen Switch Oberfläche darüber aufgeladen werden (im Recovery Modus liefert die Switch über den USB Anschluss keinen Strom!). Der untere Micro USB Anschluss kann nebst dem Laden des Dongles in der Zukunft zum Aktualisieren des Selbigen verwendet werden. Neben diesem Anschluss gibt es in das Gummi ein "+" und ein "-" Symbol eingraviert. Letzteres funktioniert gleichzeitig als Schlitz für eine grün-blaue LED. Auf der oberen und auf der unteren Seite klebt je ein Aufkleber mit dem TX Logo. Die beiden runden Ausarbeitungen an den Seiten des Dongles beherbergen je einen Superkondensator um den Dongle im RCM mit Strom zu versorgen. Insgesamt ist er etwas größer als ein Daumen, inklusive USB-C Anschluss kann man die Größe mit der einer Nintendo Switch Cartridge vergleichen - wenn er auch etwas kürzer und ca. 3x so hoch ist. Ganz am Ende des Reviews gibt es noch ein Bild mit mehreren Gegenständen zum Größenvergleich.
Durch die Gummihülle macht der Dongle einen robusten Eindruck. Der qualitative Eindruck wird durch den Staubfänger am USB-C Anschluss verstärkt. Nur etwas irritierend ist anfangs die Aussparung für die LED. Sowohl JIG als auch USB Dongle sind sehr leicht.

4. Installation und Benutzung

Der Installationsvorgang ist unabhängig von der Firmwareversion der Switch Konsole. Allerdings ist kürzlich eine neue Revision von Switch Konsolen erschienen, auf denen der Exploit, den Team Xecuter verwendet, nicht mehr funktioniert. Ggf. sollte man vor dem Kauf des Dongles oder der CFW mit einem Computer oder einem Handy ersteinmal ausprobieren, ob Fusée Gelée mit der eigenen Switch Konsole funktioniert. Ob deine Konsole kompatibel ist kannst du hier nachlesen; der wichtige Teil steht im TL;DR.

Vorbereitungen
Zuerst sollte man sicherstellen, dass die Kondensatoren vom USB Dongle vollgeladen sind. Deshalb sollte man den Dongle vor dem ersten Start oder wenn man ihn für längere Zeit nicht mehr verwendet hat für einige Sekunden entweder mit einer eingeschalteten Switch Konsole oder über das USB Kabel mit einem Computer verbinden. Beim Laden und beim Endladen geben die Kondensatoren übrigens einen leisen, relativ hohen Ton ab. In dem Test haben die Superkondesatoren über 30 Starts ausgehalten ohne dass sie zwischenzeitlich geladen werden mussten (nach ca. 35 Neustarts wurde der Test abgebrochen). Wenn du SX OS gekauft hast und ein anderes Gerät zum Senden des Payloads verwendest ist das natürlich nicht notwendig.
Vor dem ersten Start sollte man erstmal das aktuelle SX OS in das Hauptverzeichnis der SD Karte der Switch kopieren. Außerdem solltest du wenn du Homebrewanwendungen verwenden möchtest auch das aktuelle HBMenu in das Hauptverzeichnis kopieren. Als Letztes können noch ROMs von Nintendo Switch Spielen im .xci-Format auf die SD Karte kopiert werden. Wenn du das exFAT Update nicht auf der Switch hast oder aus einem anderen Grund die SD Karte nicht in exFAT formatieren möchtest kannst du ROMs die größer als 4GB groß sind mit dem XCI-Cutter in ca. 4GB große Dateien trennen. Ich empfehle nicht exFAT zu verwenden weil davon die SD Karte korrumpiert werden kann.
Falls du dich für das SX OS entschieden hast brauchst du außerdem eine Möglichkeit Fusée Gelée mit einem externen Gerät auszuführen. Als Payload muss dort der SX Loader ausgeführt werden. Der SX Pro kommt mit der richtigen Payload vorgeladen.

Recovery Mode ausführen

Jetzt kann man den mitgelieferten JIG in die Schiene vom rechten Joy-Con stecken. Bei der Konsole mit neonfarbenen Joy-Cons ist es die Schiene vom roten Controller. Dabei muss der Pfeil an dem "ON" steht nach unten zeigen. Als Nächstes kannst du den USB Dongle in den Anschluss an der Unterseite der Konsole stecken. Dann musst du nur noch sicherstellen dass die Switch aus ist und wenn sie aus ist, erst die Lautstärke + Taste drücken und während du sie hältst die POWER-Taste drücken. Dabei sollte die grüne LED vom Dongle relativ durchgängig leuchten - bis auf den Bruchteil einer Sekunde in dem sie blau leuchtet. Jetzt solltest du im SX-OS Bootmenü landen. Dort kannst du entweder die custom Firmware oder die originale Firmware starten oder aber in die Optionen gehen. Bei Letzterem gibt es einige Optionen für AutoRCM (mehr dazu später), die Möglichkeit eine externe Payload auszuführen oder die Konsole auszuschalten. Um gekaufte Cartridges abzuspielen muss man die originale Firmware starten, da die Konsole in der custom Firmware Cartridges im Slot nicht korrekt lesen kann.

Wenn man "Boot custom FW" auswählt wird erst einmal darum gebeten eine "license-request.dat"-Datei erstellen zu dürfen. Sie enthält konsolenspezifische Informationen und ist zur Validierung der Lizenz notwendig.

Lizenz aktivieren

Wenn du im Switch Menü bist kannst du das Album öffnen. Dort sollte unter "License status:" "LICENSE NOT FOUND" stehen. Jetzt kannst du entweder "A" drücken oder wenn du die Switch nicht mit dem Internet verbunden hast die SD Karte aus der Konsole nehmen, auf diese Seite gehen und dort die "license-request.dat" Datei aus dem Hauptverzeichnis der SD Karte hochladen. Wenn eine Lizenz für deine Konsole erstellt wurde sollte automatisch eine "license.dat"-Datei erstellt werden, die du ins Hauptverzeichnis der SD der Switch kopieren kannst. Falls du zuvor schon einmal eine Lizenz heruntergeladen hast solltest du die Datei ggf. in "license.dat" umbenennen.

Jetzt kannst du wieder SX OS ausführen. Bevor du das Album öffnest solltest du allerdings ggf. eine Spielecartridge aus dem Slot der Konsole nehmen. Die Spiele im ROM Auswahlmenü werden in der Reihenfolge aufgelistet wie sie auf die SD Karte kopiert wurden - nicht in alphabetischer Reihenfolge. Um die Spiele umzusortieren gibt es ggf. einige Tools. Man kann übrigens auch Spiele im XCI Format in das Hauptverzeichnis von einem USB Stick oder einer externen Festplatte kopieren und diese ins Dock stecken. Wenn die Switch sich im gedockten Modus befindet, kann man die Spiele auch von dem USB Gerät laden.

Falls du nicht das ROM Auswahlmenü sondern den Homebrew Launcher starten möchtest kannst du während du auf das Album drückst die "R" Taste drücken. Wenn du "L" drückst gelangst du im normalen Album. Um den Homebrew Launcher mit mehr RAM auszuführen (zum Beispiel hilfreich für PPlay oder RetroArch) kann man ein Spiel im Spielauswahlmenü auswählen und beim Starten die "R" Taste gedrückt halten. Jetzt sollte der Homebrew Launcher mit erweitertem RAM gestartet werden.
Sobald die Lizenz aktiviert ist wird das Bootmenü beim Start der Konsole normalerweise nicht mehr angezeigt werden. Man kann es trotzdem öffnen indem man beim Start die Lautstärke + Taste gedrückt hält.

NSPs
Neben den Spielen gibt es noch den Tab "INSTALLER", in der .nsp Dateien gelistet werden, die sich entweder auf einem externen USB Gerät oder auf der MicroSD in dem Verzeichnis "sxos/nsps" befinden. Man kann sie mit der A-Taste auf die SD Karte oder den NAND installieren. Installationen auf ein USB Gerät sind leider nicht möglich. Es besteht eine hohe Bangefahr bei der Verwendung von NSPs.

EmuNAND
Da es bei der Verwendung von NSPs eine relativ hohe Bangefahr gibt, kann man sich einen EmuNAND erstellen. Dabei wird sozusagen eine Kopie des Hauptspeichers der Switch auf der SD Karte gespeichert und diese dann gestartet sodass alle Lese- und Schreibezugriffe nicht auf den tatsächlichen Speicher sondern auf das Backup erfolgen.

5. Kompatibilität

Bei keinem der Spiele habe ich den Online Modus getestet. Theoretisch könnte man sie zwar mit eigenen Headern online spielen aber bisher ist nicht bekannt in welchem Umfang Nintendo die Daten speichert und auswertet sodass es ein nicht unbeachtliches Risiko gibt, dass man beim Online Spielen von ROMs gebannt wird.
Wenn man versucht Spiele zu laden die eine höhere Firmware Version der Switch benötigen gibt es einen Fehler.

ROMs:
Pokemon Tekken DX: Keine Probleme
Cars 3 - Driven to Win: Keine Probleme
The Legend of Zelda - Breath of the Wild: Keine Probleme
Lego Worlds: Keine Probleme
Landwirtschaftssimulator Nintendo Switch Edition: Keine Probleme
Puyo Puyo Tetris: Keine Probleme
Lego Worlds: Keine Probleme
Mario Kart 8 Deluxe: Keine Probleme
Monopoly für Nintendo Switch: Keine Probleme
The Elder Scrolls V - Skyrim: Keine Probleme
Lego Harry Potter Collection: Keine Probleme
Nintendo Labo: Keine Probleme
Spintires: Mudrunner - American Wilds: Keine Probleme
Asterix & Obelix XXL2: Keine Probleme
Octopath Traveler: Keine Probleme
Starlink - Battle for Atlus: Keine Probleme

Super Smash Bros Ultimate: Keine Probleme

Homebrew:
hb App Store: Keine Probleme
NX-Shell: Keine Probleme
SpaceNX: Keine Probleme
2048: Keine Probleme
Useless Homebrew: Keine Probleme
NXEngine (Cave Story): Keine Probleme
Minesweeper: Keine Probleme
Fireplace-NX: Keine Probleme
Tetris Switch: Keine Probleme
PPlay: Keine Probleme
Chocolate Doom: Keine Probleme
NX-Shell: Keine Probleme
Postal: Keine Probleme

6. Weitere Funktionen

Mal vom Laden von ROMs hat das SX OS noch einige weitere Funktionen.

Cheats

Ähnlich wie zum Beispiel die Supercard DSTWO und die Gateway 3DS ist die Cheatengine vom SXOS. Man kann Cheats von anderen Leuten einbinden oder selbst ActionRelay-artige Cheats finden. Beim Entwickeln von Cheats muss man die zusätzlichen Sicherheitsfunktionen der Switch (z.B. ASLR) bedenken.

Starten von Payloads
Payloads im .bin-Format können direkt von der SD Karte aus gestartet werden. Dadurch kann man mit dem Xecuter Dongle z.B. auch Hekate o.ä. ausführen. Dazu muss man einfach im Boot-Menü in den Optionen Payloads ausführen. Die auszuführenden Dateien sollten im Hauptverzeichnis der SD Karte liegen.

Downgrade Fuses
Die Nintendo Switch verhindert durch sogenannte elektrische Sicherungen das Downgraden wenn in einem Update schwerwiegende Fehler behoben wurden. Mit dem SX OS kann man die Firmware aktualisieren oder ältere Firmwares ausführen ohne dass diese Sicherungen angerührt werden. Allerdings sollte man nach dem Installieren einer neuen Firmware aufpassen! Die Konsole startet in eine ungepatchte Firmware neu - selbst wenn man AutoRCM verwendet.

SX Dumper
Da WAINCardDumper nicht mit dem SXOS funktioniert hat das Team Xecuter eine eigene Anwendung zum Dumpen von Homebrew herausgebracht: den SX Dumper. Funktionstechnisch stimmt er größtenteils mit dem WAINCardDumper überein.

SXOS Installer
Eine Homebrew zum Installieren von NSPs mit vielen zusätzlichen Funktionen. So kann man z.B. direkt auf der Konsole .xci-Dateien in .nsp-Dateien umwandeln.

AutoRCM
Mit AutoRCM wird der NAND der Konsole absichtlich gebrickt sodass sie direkt in den Recovery Modus startet. Dadurch benötigt man keinen JIG mehr. Ein USB Dongle oder ähnliches wird allerdings nach wie vor benötigt. Ich empfehle allerdings dringendst vor der Verwendung von AutoRCM ein NAND Backup zu erstellen. Außerdem sollte beachtet werden, dass die Konsole danach nicht mehr ohne USB Dongle o.ä. gestartet werden kann.

7. Schlussergebnis

In den letzten Monaten hatte das Team Xecuter im Rennen um die meisten Funktionen immer die Nase vorne. So ist es zu dem Zeitpunkt, zu dem dieses Review geschrieben wurde, die einzige Custom Firmware, die USB Speichermedien und EmuNAND unterstützt. Langfristig, also in einigen Jahren, gehe ich allerdings davon aus, dass das Team Xecuter das SXOS nicht mehr weiterentwickeln wird.
Der Dongle ist eine angenehme Option den Payload auszuführen und stört dank des kleinen Formfaktors nicht wirklich wenn man ihn mitnimmt. Ohne die Option mit dem SX OS andere Payloads zu laden sähe das allerdings anders aus.
Dass der Dongle zwei Kondensatoren und keine Batterien oder Akkus verwendet ist mir in den Tests in keinster Weise negativ aufgefallen. Da er im Switch Menü geladen wird musste ich ihn bis auf einmal vor der ersten Verwendung und einmal vor dem Test wie viele Startvorgänge die Kondensatoren durchhalten nicht aufladen. Zum Bau eines eigenen Dongles schwirren ja schon zahlreiche Anleitungen im Netz umher aber letztendlich wird man damit nicht die Qualität und die kleinen Maße des SX Pros erreichen können.

Positiv:
- Dongle sehr klein und wirkt dank Gummiummantelung ziemlich robust
- JIG kontaktschonend und "überentwickelt" (anonymes Zitat aus einem IRC Chat)
- Gesamtprodukt wirkt sehr professionell
- Einfache Bedienung
- SX OS Unterstützt sowohl Homebrew als auch ROMs
- EmuNAND
- Unterstützt USB Speichermedien (z.B. externe Festplatten)
- SX OS unterstützt Ausführen von Payloads von Dritten
- Mit ca. 40€ sehr bezahlbar (die ersten DS und 3DS Flashkarten haben als sie auf den Markt gekommen sind mindestens das Doppelte gekostet)

Negativ:
- Bricking Code in den ersten SX OS Versionen
- Verstößt gegen die Lizenzen von Open Source Software aus der Community
- Online Verbindung zur Validation der Lizenz notwendig
- Kein Version Spoof für Spiele
- Vom Online Spielen wird dringendst abgeraten

07 Juli 2018

Zeit für einen Teaser

Heute hat mich mal wieder ein Paket erreicht - diesmal nicht aus China sondern über einen Abstecher in den Norden von Shop01media, die in Polen (also innerhalb der EU) sitzen.
Kurioserweise verwenden sie für die Pakete noch Aufkleber mit der alten Domain shop.01media.com, die sie nicht mehr verwenden wollen.
Diesmal sind gleich zwei Artikel in dem Paket: eine EZ-Flash Omega GBA Flashkarte und der SX Pro vom Team Xecuter.
Das Review zum SX Pro sollte gegen Mitte nächster Woche erscheinen.

GBxCart RW v1.4b Pro Review (insideGadgets.com)

Inhalt: Überblick Qualität der Hardware Bedienung Kompatibilität Fazit 1. Überblick In diesem Blog geht es u.a. darum, wie man ROMs von Retr...