Montag, 19. Februar 2018

Useless Homebrew Switch Version 1.1.2

Pünktlich zum Release des Homebrew Launchers für die Nintendo Switch hat auch das FUK-Team eine erste Anwendung auf die Plattform portiert.
Es handelt sich um das Spiel "Useless Homebrew", das ursprünglich von Rydian für den Nintendo DS geschrieben und später von uns auf den 3DS portiert wurde.
Das Spielprinzip ist relativ einfach und Jeder, der ein Video zu einer "Useless Machine" gesehen hat kennt es. Man versucht, einen Schalter einzuschalten, der sich selbst ausstellt. Dabei gibt es noch ein paar besondere Reaktionen um das dröge Geklicke zu unterbrechen.

Wir haben zwei Versionen entwickelt: eine, die auf LibNX basiert (HBL Edition) und eine, die auf Libtransistor basiert (PegaSwitch Edition). Die Screenshots stammen von der Pegaswitch Version.

Durch das Nintendo Switch Systemupdate zu 9.0.0 wurden einige Änderungen vorgenommen. Unter Anderem wurde das Modul zum Auslesen von Tasteneingaben aktualisiert. Damit in Homebrew Anwendungen die Tasten auch zukünftig funktionieren müssen sie an die aktuelle LibNX Version angepasst und neu kompiliert werden. Aus diesem Grund wird die PegaSwitch Version nicht mehr unterstützt werden.

Update (1.1.3):
Die Anwendung wurde angepasst und mit der aktuellen LibNX Version kompiliert. Nach dem letzten Schritt wird der Bildschirm nun gelöscht.

Update (1.1.2):
Die Anwendung wurde angepasst und mit der aktuellen LibNX Version kompiliert. Es sollte keine sichtbaren Änderungen geben.

Update (1.1.1):
Im Rahmen des einjährigen Jubiläums der Konsole (und zu 1000% nicht weil LibNX 1.1.0 veröffentlicht wurde) haben wir die Homebrew Launcher Version dieser Homebrew aktualisiert. Darunter gibt es ein paar Patches, Anpassungen usw. Genaue Informationen kann man dem Changelog entnehmen.

Update (1.0.1):
Die PegaSwitch Version funktioniert jetzt auch mit dem Homebrew Launcher.
Du solltest sie allerdings durch Drücken der "HOME"-Taste verlassen und nicht indem du "-" drückst! Der Homebrew Launcher wird sonst crashen!

Download
- Version 1.1.3 (HBL Edition)
- Version 1.1.3 (HBL Sourcecode)
- Version 1.1.2 (HBL Edition)
- Version 1.1.2 (HBL Sourcecode)
- Version 1.1.1 (HBL Edition)
- Version 1.0.1 (PegaSwitch Edition)
- Version 1.1.1 (HBL Sourcecode)
- Version 1.0.1 (PegaSwitch Edition Sourcecode)

Links
- 3DS Port: https://gbatemp.net/threads/useless-homebrew.378284/
- Originale DS Version: https://gbatemp.net/threads/the-most-useless-ds.293231/

Donnerstag, 28. Dezember 2017

Zahlenraten U Beta 0.1


Schon im Mai geteasert gibt es jetzt das Release zu "Zahlenraten U". Weitere Informationen können der ReadMe entnommen werden.

Dienstag, 26. Dezember 2017

Frohe Weihnachten und guten Rutsch!

Von uns gibt es auch noch mal ein "frohe Weihnachten!" (für die letzte halbe Stunde) und einen guten Rutsch in das Jahr 2018.

Montag, 18. Dezember 2017

HBMenu als Kernel für Stargate 3DS

Vor ein paar Wochen (jaa.. Monaten) haben wir darüber berichtet, dass wir HBMenu als primären Kernel für die Ace3DS zum Laufen bekommen haben. Jetzt haben wir das gleiche für die Stargate 3DS geschafft. Das ist insbesondere interessant da der offizielle Kernel für die Karte momentan kein automatisches DLDI Patching bietet. Speichern scheint mit diesem Patch leider nicht zu funktionieren.
Download: Link

Den BootStrap für HBMenu auf diese Karte zu bekommen ist deutlich einfacher als es bei der Ace3DS Plus da es weder eine Verschlüsselung von der _ds_menu.dat gibt, noch muss der Kernel mit einer bestimmten Folge anfangen (die nicht die Standardfolge wäre).
Es genügt, das HBMenu zu kompillieren, die "bootstrap.nds" aus dem "BootStrap" Ordner mit dem DLDI Patch für die blaue MT-Card zu patchen und die Datei in "_ds_menu.dat" umzubenennen.

Donnerstag, 21. September 2017

HBMenu als Kernel für Ace3DS+ und co

WoodR4 Klone mit der Ace3DS Plus Hardware gibt es inzwischen überall; sogar bei 3DS Flashkarten wie der Gateway, der MT-Card oder der QQ3DS dabei. Da nach meiner Erfahrung die Homebrew Kompatibilität bei diesen Karten etwas eingeschränkt ist gibt es hier eine Anleitung, wie man die gehackte Wood R4 Version durch das HBMenu (und andere Homebrews) ersetzen kann.
Wenn du eine fertige Version herunterladen möchtest kannst du das hier tun.

Was du dafür brauchst (Hardware):

-Eine Flashkarte mit der Ace3DS Plus Hardware (z.B. blaue Gateway, blaue MT-Card, R4iTT, vielleicht R4infinity)
-Einen DS auf dem die Flashkarte läuft

Was du dafür brauchst (Software):

-Eine funktionierende DevkitPro Installation (https://devkitpro.org/wiki/Getting_Started)
-Eine funktionierende C/C++ Compiler/IDE Installation (Ich empfehle http://www.codeblocks.org/downloads/26)
-Einen Hex Editor (z.B. HxD)
-Den aktuellen Kernel von deiner Karte

1. Vorbereitungen

Ich gehe davon aus, dass DevkitPro und ein funktionierender C/C++ Compiler installiert und getestet sind.
Erstmal muss das HBMenu für die entsprechende Karte kompilliert werden. Dafür wird die DLDI Datei für die Karte benötigt, meistens befindet sie sich in den Kernel Dateien im "_rpg" Ordner und trägt den Namen "r4_sd.dldi" oder "ace3ds_sd.dldi. Die muss in "r4tfv2.dldi" umbenannt werden und die alte Datei mit dem Namen im "BootStrap" Verzeichnes vom HBMenu Quellcode ersetzt werden.
Jetzt kann man einfach in dem Hauptverzeichnis vom HBMenu Quellcode "make" eingeben. In dem "BootStrap" Ordner befindet sich eine "bootstrap.nds" die wir brauchen und im Hauptverzeichnis eine "hbmenu.nds", die wir in "BOOT.NDS" umbenennen und die am Ende von der bootstrap.nds gestartet werden wird. Wenn man eine andere Homebrew ausführen möchte kann man eine andere Homebrew "BOOT.NDS" benennen.

Als nächstes muss R4denc mit dem neuen Schlüssel für den Kernel ausgestattet werden damit wir ihn entschlüsseln können. Dafür muss in dem R4denc Quellcode der alte Schlüssel in Zeile 130 ersetzt werden (unsigned short key =...). Wenn man R4denc jetzt kompilliert kann man mit dem Befehl r4denc input.dat output.nds den Kernel entschlüsseln.

2. Wie lässt man HBMenu wie einen normalen Kernel wirken?

Den entschlüsselten Kernel und die "bootstrap.nds" muss man im Hex Editor öffnen und die ersten 0x11h Bytes aus dem Kernel kopieren. In meinem Fall ist das "52 34 49 54 00 00 00 00 00 00 00 00 23 23 23 23 23 23" (R4IT........######). Die muss man jetzt an den Anfang der "bootstrap.nds" schreiben ohne dass die restlichen Bytes nach hinten verschoben werden. Möglicherweise muss die Anwendung noch mit einem Tool um DS Header zu bearbeiten wie DSBrut gestartet werden um die Signatur des Headers zu korrigieren.
Jetzt muss die "bootstrap.nds" nur noch mit R4denc wieder verschlüsselt werden (r4denc bootstrap.nds _DSMENU.DAT). Dann müssen die "_DSMENU.DAT" und die "BOOT.NDS" in das Hauptverzeichnis der SD Karte kopiert werden. Wenn man eine Ace3DS Plus/X und keine Blue Card benutzt muss die _DSMENU.DAT noch in _DS_MENU.DAT umbenannt werden.
Fertig.

Dienstag, 5. September 2017

HBMenu 0.6.0 und Flashkarten

Aufgrund von Problemen mit Updates für die Entwicklertools sind die aktuelle Nintendo DS HBMenu Version und Homebrews die das NitroFS benutzen und mit den aktuellen Entwicklertools kompilliert wurden nicht mit allen Flashkarten kompatibel. Schnelle Tests haben gezeigt, dass die aktuelle HBMenu Version 0.6.0 nicht mit der CycloDS iEvolution und der M3i Zero kompatibel sind! Bei anderen Flashkarten gibt es sehr wahrscheinlich auch Kompatibilitätsprobleme! Dazu kommt ein Bug durch den die direkte NitroFS Unterstützung der CycloDS iEvolution ohne HBMenu beeinträchtigt wird.
Um auf diesen Flashkarten trotzdem Homebrew Anwendungen auszuführen die NitroFS benutzen empfehlen wir bis zu einem Fix die HBMenu Version 0.5.0 zu verwenden.

Freitag, 1. September 2017

Schusstest V2.i

Wie bereits Dienstag angekündigt arbeiten wir momentan daran unsere Homebrew Anwendungen DSi Mode kompatibel zu machen. Heute können wir ein weiteres Remake veröffentlichen: den Schusstest. Neben der DSi Kompatibilität wurden sehr viele Bugs gefixt und das Intro verkürzt. Außerdem sind wir von PaLib zu NFLib gewechselt.


Hinweis: zum Laden der Grafiken wird ARGV verwendet. Wenn deine Flashkarte das nicht unterstützen sollte wird empfohlen das Homebrew Menu zu verwenden.