- DSLinux
-
DSLinux ist eine Portierung des Linux-Betriebssystems für den Nintendo DS. Auch wenn das Projekt noch in einer sehr frühen Phase ist, wird bereits ein Großteil der Hardware des DS unterstützt. Touchscreen, Sound und die Wi-Fi-Funktionalität können bereits genutzt werden.
Ausführung von Code auf dem DS
Momentan ist es nicht möglich, DS-Module mit einem PC zu schreiben. Da aber Speicherkarten für den Game Boy Advance und passende Lese- und Schreibgeräte verfügbar sind, ist es möglich, Code von Speicherkarten auszuführen, die in den GBA-Slot des DS geschoben werden. Um die Ausführung von beliebigem Code (und damit Homebrew) zu unterbinden, hat Nintendo ein Verfahren implementiert, das auf RSA-Kryptosystem-basierten Signaturen beruht. Dieser Schutz muss umgangen werden, indem entweder NoPass, WifiMe, PassMe oder FlashMe ausgenutzt werden. Die Vor- und Nachteile der jeweiligen Methode sind in der FAQ des Projekts erläutert.
Technische Details
DSLinux verwendet einen angepassten uCLinux-Kernel. Im Moment basiert DSLinux auf uCLinux 2.6.14 (Linux-2.6.14-uc0) und kann nur im Textmodus betrieben werden. Eingaben sind über eine Tastatur möglich, die auf dem Touchscreen des Nintendo DS eingeblendet wird. ncurses 5.4 ist erfolgreich portiert worden, so dass unter DS Linux einige textbasierte Spiele lauffähig sind sowie der Editor vi. Grafik, Audioausgabe und Wi-Fi werden unterstützt. DSLinux wird kompiliert, indem eine GCC-basierte Toolchain zur Cross-Kompilierung eingesetzt wird, die ARM-Prozessoren unterstützt. Als C-Library wird uClibc eingesetzt. Beim Nintendo DS gibt es keine Speicherverwaltungseinheit, er hat aber 4MB Speicher.
Es gibt verschiedene Methoden, DSLinux zu starten, aber jede Methode benötigt spezielle Hardware.
DSLinux kann auf Flash Cart SRAM, CompactFlash-Karten (die in einen Adapter eingeschoben werden) und in Verbindung mit einem DSMem von amadeus auch auf microSD-Karten speichern.
Neuere Versionen von DSLinux enthalten den uCLinux 2.6.14 kernel, eine mächtigere Shell (mit Verlaufsanzeige und Autovervollständigen), einen Wi-Fi-Treiber und einen textbasierten Webbrowser. Das Nano-X Window System wurde ebenfalls portiert und ein Maustreiber ist in Arbeit. Auch wenn der Fokus im Moment auf Version 2.6.14 liegt, gibt es weiterhin Releases für die Version 2.6.9. Deren Funktionalität ist aber erheblich eingeschränkt und wird nicht erweitert.
Weblinks
Wikimedia Foundation.