Articles

Wie man eine Xbox in einen 150-Dollar-Linux-PC verwandelt

In diesem TechBuilder-Rezept erfahren wir, woraus eine Xbox besteht und wie man sie unter Linux zum Laufen bringt. Und das Beste ist, dass wir das tun, ohne die Schachtel zu öffnen!

Aber zuerst möchte ich Sie darauf hinweisen, dass eine Xbox keine reine Spielkonsole ist. In Wirklichkeit ist sie ein leistungsstarker PC. Schauen Sie sich an, was in dieser 150-Dollar-Xbox steckt:

  • Intel Celeron 733MHz CPU
  • 300 MHz Nvidia Geforce MX3 Grafik
  • 64 MB RAM
  • 8-GB oder 10-GB Festplatte
  • DVD-Laufwerk
  • 4 USB-Anschlüsse
  • 10/100 Mbit/sec. Ethernet-Anschluss

Das ist eine Menge PC. Die Frage ist nur, wie kommt man an sie heran? Die Antwort lautet natürlich: mit Linux.

Natürlich lädt Microsoft nicht dazu ein, andere Betriebssysteme auf seiner wichtigsten Spielemaschine zu verwenden. Vor allem keine kostenlosen. Aber in wenigen einfachen Schritten und mit der Unterstützung einer freundlichen Linux-Community kann man Linux laden und ausführen, um die gesamte Xbox-Hardware freizuschalten.

Eine Gruppe mit dem Namen „The Xbox Linux Project“ hat hier Pionierarbeit geleistet. Sie haben freundlicherweise eine Fülle von Informationen und Erfahrungen auf ihrer Website veröffentlicht. Wir werden uns diese Informationen zunutze machen. Doch bevor Sie beginnen, ist es hilfreich, ein wenig über das Innenleben der Xbox zu wissen.

Wenn eine Xbox eingeschaltet wird, muss sie, wie jeder Computer, etwas booten. Die Xbox enthält ein spartanisches Betriebssystem, das gerade genug Intelligenz hat, um einen minimalen Satz von Treibern zu laden und eine einfache Benutzeroberfläche namens Dashboard anzuzeigen. Über das Dashboard können die Benutzer Spiele auswählen, Spielinformationen auf der Festplatte oder im Arbeitsspeicher speichern und kopieren, Musik von CDs kopieren, aber nicht viel mehr. Die einzige Schnittstelle des Benutzers zum Dashboard sind die vier Controller des Systems, die so genannten Xpads. Es gibt keine Tastatur, keine Maus und nur ein sehr eingeschränktes Betriebssystem. Außerdem kann die Xbox nur DVDs abspielen, die sie als Xbox-Spiele erkennt. Die gute Nachricht: Es ist ziemlich einfach, all diese Hindernisse zu überwinden.

Um das wahre Potenzial der Xbox auszuschöpfen, muss man die Xbox nur dazu bringen, eine kleine Version von Linux für ein Spiel zu halten. Die Xbox startet diese kleine Version von Linux, die ihrerseits die Treiber lädt. Diese Treiber unterstützen Dinge wie Telnet-Sitzungen, die den Zugriff auf die Hardware ermöglichen und zur Installation einer vollständigen, bootfähigen Linux-Distribution einladen. Voilà! Freiheit für den Computer!

Okay, vielleicht denken Sie jetzt: „Damit ist meine Garantie hinfällig, oder?“ Nun, nicht ganz. Ja, in der Microsoft-Literatur steht eindeutig, dass die einjährige Garantie erlischt, wenn Sie die Xbox öffnen oder andere Software als Spiele ausführen. Einige Experten sind jedoch anderer Meinung. Noch wichtiger ist, dass es einige Präzedenzfälle gibt, die zeigen, dass zumindest ein Teil der Garantie bestehen bleibt. Wenn Sie wirklich besorgt sind, lesen Sie diesen kurzen Artikel über die Unterschiede zwischen „gesetzlicher Gewährleistung“ und „Versicherung des Herstellers“.

Grundlegende Schritte

Nachfolgend habe ich den Vorgang in einzelne Schritte unterteilt, wobei einige technische Details kurz erläutert werden, zusammen mit Links zu noch detaillierteren Informationen, die von der Internet-Linux-Community bereitgestellt werden.

Schritt 1: Bauen Sie ein Kabel, um USB-Speichergeräte an die Xbox-Konsole anzuschließen.

Schritt 2: Finden Sie ein geeignetes USB-Speichergerät.

Schritt 3: Besorgen Sie sich ein Image, das Linux auf dem USB-Speichergerät bootet.

Schritt 4: Verwenden Sie Xbox-Kopierprogramme, um das Image auf die Festplatte zu kopieren.

Schritt 5: Führen Sie das Image mit lizenzierter Spielesoftware aus.

Schritt 6: Besorgen Sie sich eine vollständige Linux-Distribution und installieren Sie sie.

Schauen wir uns nun jeden Schritt genauer an.

Schritt 1: Baue ein Kabel

Xbox-Controller, Xpads genannt, sind eigentlich nur USB-Geräte. Sie sehen vielleicht nicht wie USB-Geräte aus, da sie nicht die Standard-USB-Anschlüsse verwenden. Aber im Inneren des abgeschirmten Kabels, das den Gaming-Controller mit der Konsole verbindet, befinden sich die bekannten vier Drähte, die in Standard-USB-Kabeln verwendet werden, sowie ein mysteriöses gelbes Kabel, von dem man munkelt, dass es für einen zukünftigen Lichtstift gedacht ist. Das ist eine gute Nachricht: USB-Speichergeräte, Tastaturen und Mäuse lassen sich hier mit einem modifizierten Kabel anschließen. Ich habe ein Kabel mit einer Buchse gebaut, die ich aus einem billigen USB-Verlängerungskabel und einem ausgefransten Controllerkabel, das ich ersetzen musste, herausgeschnitten habe. So sieht mein modifiziertes Kabel aus:

photo

Um das modifizierte Kabel zu bauen, habe ich die farbigen Drähte in den Kabeln zusammengeführt, rot zu rot, schwarz zu schwarz usw. Die gelbe Leitung habe ich nicht angeschlossen, aber von den anderen isoliert. Die folgende Tabelle gibt etwas mehr Aufschluss:

Standard USB Pin-out

  • Rot: VCC (5Volt, max. 100mA/500mA)
  • Schwarz: Gnd
  • Weiß: D0 negativ
  • Grün: D0 positiv (könnte blau sein)
  • Abschirmung (Geflecht): Drain-Draht (normalerweise mit dem Gehäuse verbunden)

Weitere Informationen zum Anschließen von USB-Geräten an eine Xbox finden Sie in diesem Artikel zum Xbox Linux-Projekt. Wenn Sie kein eigenes modifiziertes Kabel anfertigen möchten, können Sie alternativ auch ein vorgefertigtes Kabel von Lik-Sang kaufen.

Schritt 2: Finden Sie ein USB-Speichergerät

Speicherkarten, die an die Xbox-Controller angeschlossen werden, sind einfach USB-Speichergeräte – wie die tragbaren Datenlaufwerke, USB-„Sticks“ oder „Jump Drives“ – aber mit einem proprietären Anschluss. Der Trick besteht darin, eine Karte zu finden, die mit der Xbox kompatibel ist und auf die man ein Bild übertragen kann. Leider funktionieren manche, manche nicht. Hier sind zwei Geräte, die mit der Xbox funktionieren und weithin erhältlich sind:

* Kingston DataTraveler 32 und 256 MB.

* Lexar JumpDrive Secure 128 und 256 MB (muss „Secure“ sein – andere Modelle funktionieren möglicherweise nicht).

Auch die Kompatibilitätsliste für Xbox/USB-Geräte ist hier zu finden.

Wichtig: Erstellen Sie unbedingt eine Sicherungskopie Ihres USB-Speichergeräts. Sobald das USB-Gerät von der Xbox erkannt wird, wird es neu formatiert.

Schließen Sie als Nächstes Ihr modifiziertes USB-Kabel an die Konsole an. Stecken Sie das USB-Speichergerät am anderen Ende ein. Schalten Sie Ihre Xbox ein. Das USB-Gerät wird erkannt und neu formatiert. Das kann eine Minute dauern, und Sie müssen es möglicherweise mehrmals versuchen. Sobald das USB-Gerät formatiert ist, wird es unter Speichergeräte im Xbox-Dashboard angezeigt. Im Gegensatz zu den anderen Speichergeräten kann dieses Gerät von Ihrem PC gelesen und beschrieben werden. Übrigens könnt ihr das USB-Gerät genau wie die Xbox-Speicherkarten verwenden und sogar eure Spiele darauf speichern. Das Beste daran ist, dass die standardmäßigen Xbox-Speichereinheiten, die in die Xpad-Controller eingesteckt werden, nicht mehr auf 8 MB beschränkt sind. Es gibt zwar Karten von Drittanbietern, aber sie sind alle klein im Vergleich zu den großen 128-MB- oder 256-MB-Speichersticks.

Schritt 3: Besorgen Sie sich ein bootfähiges Image

Das Image, das Sie herunterladen und auf Ihr neu formatiertes Speichermedium kopieren möchten, ist ein „Savegame“, das von einigen Spielen geladen werden kann. Es wird Ihnen helfen, ein rudimentäres Linux-Betriebssystem zu starten. Das von mir verwendete Spiel ist das für die Xbox lizenzierte MechAssault. Ein MechAssault-Image ist bei SourceForge.net erhältlich. Laden Sie das Image herunter, das der Größe Ihres Speichermediums entspricht: 128 MB, zum Beispiel.

Hinweis: Das von Xbox-Speichergeräten verwendete Format ist FatX. FatX mag einfach zu handhaben sein, wenn Sie bereits einen Linux-Rechner oder einen Mac mit OS X haben, aber es ist nicht Windows-PC-freundlich. Mit anderen Worten: Wenn Sie den Speicherstick in einen Windows-PC einstecken, sehen Sie zwar das Gerät, aber nicht den Inhalt. Um das FatX-Image auf den USB-Stick zu flashen, müssen Sie ein Shareware-Programm namens Stick Explorer verwenden, das bei OzXChip.com erhältlich ist. Es funktioniert recht gut. Oder suchen Sie sich einen Freund, der Mac OS X benutzt.

Weitere Informationen zur Verwendung des Stick Explorers und zur Softwarevorbereitung der Xbox finden Sie auf dieser Seite des Xbox Linux Projekts.

Schritt 4: Kopieren Sie das Image auf die Xbox

Dieser Schritt ist ein Selbstläufer für alle Gamer unter Ihnen. Verwenden Sie das Xbox Dashboard, um den Inhalt des USB-Sticks zu sehen. Er sollte nun drei Einträge enthalten: Notfall-Linux, Linux entfernen und Linux installieren. (Der hübsche Pinguin in den Symbolen ist übrigens Tux, das Linux-Maskottchen.) Verwenden Sie die üblichen Xbox-Methoden, um alle drei Savegames auf dem USB-Stick auf die Festplatte zu kopieren. Jetzt können Sie diese Savegames sehen und, was noch wichtiger ist, in unserem nächsten Schritt aufrufen.

Schritt 5: Führen Sie das Image aus, um Linux zu starten

Um das Image auszuführen, benötigen Sie die MechAssault-Spiel-DVD. Savegames sind mit bestimmten Spielen verknüpft. Durch diese Verknüpfung wird die Xbox dazu gebracht, das Abbild auszuführen. Sie brauchen das Spiel nur, um Linux zum Laufen zu bringen. Ich habe ein Exemplar in meiner örtlichen Videothek ausgeliehen.

Während ich MechAssault für unsere Installation gewählt habe, habe ich von anderen Modifikationen gehört, die EAs 007 Agent Under Fire DVD verwenden. Es ist wichtig zu beachten, dass das Spiel, das Sie verwenden, mit den heruntergeladenen Savegame-Images übereinstimmen muss, da es das Spiel ist, das die Xbox „austrickst“, damit sie läuft.

Okay, los geht’s!

Geben Sie das Spiel MechAssult ein. Wähle Campaigns und Emergency Linux (eines der Savegames, die wir im vorherigen Schritt kopiert haben). Sie werden sehen, dass die Xbox neu startet. Diesmal sehen Sie nicht die üblichen Dashboard-Grafiken, sondern einen schwarzen Bildschirm mit weißen Buchstaben, die durch den Xbox-Linux-Start laufen.

photo

Wenn Sie so weit gekommen sind, herzlichen Glückwunsch! Eine kleine Version von Linux läuft, und Sie können sich jetzt über die Standardadresse in die Xbox einwählen:

Melde dich als „root“ mit dem Passwort „xbox“ an. Geben Sie dann den folgenden Befehl ein:

xbox_tool-a

Schreiben Sie diesen Festplattenschlüssel auf. Der Festplattenschlüssel ist im EEPROM-Speicher der Xbox verschlüsselt und kann verwendet werden, wenn Sie ihn jemals wiederherstellen oder weitere Änderungen vornehmen müssen. Jetzt wissen Sie es.

Legen Sie erneut das MechAssault-Spiel ein. Wählen Sie „Campaigns“ und diesmal „Install Linux“. Sobald dies abgeschlossen ist, ist die Xbox-Diskette eingerichtet und der Punkt Linux erscheint im Dashboard. Unser Savegame-Trick wird nicht mehr benötigt.

photo

Wenn Sie zusätzliche Hilfe bei dem obigen Schritt benötigen, folgen Sie den detaillierten Anweisungen auf dieser Xbox-Linux-Projektseite.

Jetzt genügt es, Linux auf dem Dashboard auszuwählen, um die Minimalversion von Linux zu starten. Eine vollständige Linux-Distribution mit allen Funktionen kann im nächsten Schritt geladen werden. Emergeny Linux ist im Wesentlichen ein temporärer Weg, um loszulegen; Install Linux richtet die Festplatte wirklich ein; und die Debian-Installation (unser nächster Schritt) lädt das echte Linux-Betriebssystem.

Schritt 6: Installieren Sie eine vollständige Linux-Distribution

Wie Sie wahrscheinlich wissen, gibt es viele Linux-Varianten wie RedHat, Mandrake, FreeBSD, SuSE und Gentoo. Aber die beste und wahrscheinlich einzige Wahl für einen zuverlässigen Betrieb auf der Xbox ist derzeit Ed’s Debian. Es basiert auf dem beliebten x86-Debian und ist speziell auf die Xbox zugeschnitten. Hier ist eine gute allgemeine Seite für Informationen über Ed’s Debian Linux.

Neuere Versionen von Ed’s Debian kommen mit einer bootfähigen CD, die für die Installation des Basissystems auf der Festplatte verwendet wird. Die CD bootet in eine saubere, grafische Xwindows-Desktop-Umgebung. Es gibt sogar eine virtuelle Bildschirmtastatur, die Sie mit dem Xbox-Controller verwenden können, aber eine echte USB-Tastatur funktioniert auch. Eine andere Möglichkeit ist, sich über SSH (192.168.0.2/255.255.255.0) anzumelden und die Installation auf diese Weise abzuschließen. Der Standard-Login und das Standard-Passwort sind „root“ bzw. „xbox“.

Außerdem gibt es hier zwei Anleitungen, wie man Eds Distribution erhält und installiert: How To Debian und Install Debian.

Wenn Debian geladen wird, müssen Sie die virtuelle Tastatur verwenden, um den Installationsprozess zu starten. Nach der Installation erkennt das Betriebssystem USB-Geräte.

Die Installation von Debian ist ganz einfach. Legen Sie die Installationsdiskette in das Xbox-Laufwerk ein und booten Sie von ihr. Nach kurzer Zeit wird eine virtuelle Tastatur auf dem Bildschirm erscheinen. Geben Sie dann „su“ ein, um sich als Superuser anzumelden. Das System wird Sie nach einem Passwort fragen; geben Sie „xbox“ ein. Geben Sie nun „XBOXLinuxInstall“ ein, und denken Sie daran, dass Groß- und Kleinschreibung eine Rolle spielen. Folgen Sie dann den Anweisungen auf dem Bildschirm, um die Installation abzuschließen.

Da Sie nun einen Standard-USB-Anschluss an der XBox haben, können Sie jede USB-Tastatur, -Maus, -Webcam, -Drucker oder -Scanner anschließen, die von Debian unterstützt wird. Sie könnten eine USB-Tastatur mit integriertem USB- oder PS2-Mausanschluss in Betracht ziehen, um es bequemer zu haben. Oder verwenden Sie ein einfaches USB-zu-PS2-Splitterkabel, das etwa 10 Dollar kostet.

Das ist alles, aber das ist auch erst der Anfang. Jetzt können Sie die Xbox-Spielkonsole als vollwertigen Desktop-Computer mit Maus und Tastatur oder als Web-/E-Mail-Box nutzen, die an einen Fernseher oder sogar einen Server oder Router angeschlossen ist. Oh, und ab und zu ein paar Spiele darauf zu spielen, macht auch Spaß.

ANDY MCDONOUGH ist ein professioneller Musiker, Komponist, Synchronsprecher, Ingenieur und Pädagoge, der freiberuflich in New Jersey arbeitet. Er spielt gelegentlich auf der Xbox, hat aber noch nie seinen 10-jährigen Sohn geschlagen.

Haben Sie dieses TechBuilder-Rezept ausprobiert? Wenn ja, wie hat es funktioniert? Starten Sie einen Diskussionsthread im Rezeptforum oder nehmen Sie daran teil.