Articles

Hoe maak je van een Xbox een Linux PC voor $150

In dit TechBuilder-recept bekijken we hoe een Xbox in elkaar zit en hoe je er Linux op kunt zetten. En het beste van alles is dat we dit doen zonder de doos te openen!

Maar eerst wil ik dat je bedenkt dat een Xbox niet zomaar een spelcomputer is. In werkelijkheid is het een krachtige PC. Kijk eens wat er in die $150 Xbox zit:

  • Intel Celeron 733MHz CPU
  • 300 MHz Nvidia Geforce MX3 Graphics
  • 64 MB RAM
  • 8-GB of 10-GB harde schijf
  • DVD drive
  • 4 USB poorten
  • 10/100 Mbit/sec. Ethernet poort

Dat is een hoop PC. De vraag is, hoe kom je er bij? Het antwoord is, natuurlijk, met Linux.

Natuurlijk genoeg nodigt Microsoft niet uit tot het gebruik van andere besturingssystemen op zijn belangrijkste spelcomputer. Vooral geen gratis. Maar in weinig eenvoudige stappen, en met de steun van een vriendelijke Linux-gemeenschap, kunt u Linux laden en uitvoeren om alle Xbox-hardware te ontgrendelen.

Een groep die bekend staat als The Xbox Linux Project heeft een pioniersrol vervuld. Zij zijn zo vriendelijk geweest een schat aan informatie en ervaring op hun site te zetten. Wij zullen gebruik maken van al die informatie. Maar voordat je aan de slag gaat, is het handig om iets te begrijpen van de interne onderdelen van de Xbox.

Wanneer een Xbox wordt aangezet, moet het, net als elke andere computer, iets opstarten. De Xbox bevat een Spartaans besturingssysteem dat net slim genoeg is om een minimale set stuurprogramma’s te laden en een eenvoudige gebruikersinterface weer te geven, het Dashboard. Met het Dashboard kunnen gebruikers spelletjes selecteren, spelinformatie opslaan en kopiëren naar harde schijven of geheugeneenheden, muziek kopiëren van CD’s, maar verder niet veel. In feite is de enige interface van een gebruiker met het Dashboard de vier controllers van het systeem, bekend als Xpads. Er is geen toetsenbord, geen muis, en slechts een zeer beperkt besturingssysteem. Bovendien draait de Xbox alleen dvd’s die hij herkent als een Xbox-spel. Het goede nieuws: Het is vrij eenvoudig om al deze obstakels te overwinnen.

Om toegang te krijgen tot het echte potentieel van de Xbox, hoef je de Xbox alleen maar te laten denken dat een kleine versie van Linux eigenlijk een spel is. De Xbox start deze kleine versie van Linux, die, op zijn beurt, de drivers laadt. Deze stuurprogramma’s ondersteunen dingen zoals telnet sessies die toegang verlenen tot de hardware en de mogelijkheid openen om een volledige, opstartbare distributie van Linux te installeren. Voila! Computervrijheid!

Okay, misschien denk je nu, “Dit verpest mijn garantie, toch?” Nou, niet helemaal. Ja, in de Microsoft literatuur staat duidelijk dat het openen van de Xbox of het draaien van andere software dan games de garantie van een jaar doet vervallen. Maar sommige experts zeggen iets anders. Belangrijker is dat er een precedent is dat aantoont dat ten minste een deel van de garantie zal blijven gelden. Als je echt bezorgd bent, lees dan dit korte artikel over de verschillen in “Garantie door de wet” en “Verzekering van de fabrikant”.

Basisstappen

Hieronder, heb ik de verrichting in stappen opgesplitst met sommige technische details kort verklaard samen met verbindingen aan nog meer gedetailleerde informatie die door de gemeenschap van Internet Linux wordt verstrekt.

Stap 1: Bouw een kabel om USB-geheugenapparaten aan Xbox console.

Stap 2: Vind een geschikt USB-geheugenapparaat.

Stap 3: Verkrijg een image dat Linux zal opstarten op het USB-geheugenapparaat.

Stap 4: Gebruik Xbox kopieer hulpprogramma’s om de image naar de harde schijf te kopiëren.

Stap 5: Voer de image uit met behulp van gelicentieerde spelsoftware.

Stap 6: Verkrijg en installeer een volledige distributie van Linux.

Laten we nu elke stap eens in meer detail bekijken.

Stap 1: Bouw een kabel

Xbox controllers, Xpads genoemd, zijn eigenlijk gewoon USB-apparaten. Ze zien er misschien niet uit als USB-apparaten, omdat ze niet de standaard USB-aansluitingen gebruiken. Maar binnen de afgeschermde kabel die de spelcontroller met de console verbindt, bevinden zich de bekende vier draden die in standaard USB-kabels worden gebruikt, plus één mysterieuze gele draad waarvan het gerucht gaat dat deze voor een toekomstige toevoeging van een lichtpen is. Dit is goed nieuws: USB-geheugenapparaten, toetsenborden en muizen kunnen hier met een aangepaste kabel worden aangesloten. Ik heb een kabel gemaakt met een vrouwelijke connector uit een goedkope USB verlengkabel en een gerafelde controller kabel die ik moest vervangen. Zo ziet mijn aangepaste kabel eruit:

photo

Om de aangepaste kabel te maken, heb ik de gekleurde draden in de kabels op elkaar afgestemd, rood op rood, zwart op zwart, enz. De gele draad heb ik losgekoppeld gelaten, maar wel geïsoleerd van de andere. De tabel hieronder geeft een beetje meer details:

Standaard USB Pin-out

  • Rood: VCC (5Volt, max. 100mA/500mA)
  • Zwart: Gnd
  • Wit: D0 negatief
  • Groen: D0 positiief (kan blauw zijn)
  • Afscherming (vlecht): Drain-wire (meestal verbonden met de behuizing)

Voor meer informatie over het aansluiten van USB-apparaten op een Xbox, zie dit Xbox Linux Project artikel. Als alternatief, als u niet uw eigen aangepaste kabel wilt maken, kunt u ook een vooraf gemaakte kabel van Lik-Sang kopen.

Stap 2: Zoek een USB-geheugenapparaat

Geheugenkaarten die in de Xbox-controllers passen, zijn gewoon USB-geheugenapparaten – zoals de draagbare datadrives, USB “sticks,” of “jump drives” – maar met een eigen connector. De truc is om er een te vinden waar de Xbox mee werkt en waar je een image op kunt krijgen. Helaas, sommige werken wel, andere niet. Hier zijn twee apparaten die met de Xbox werken en overal verkrijgbaar zijn:

* Kingston DataTraveler 32 en 256 MB.

* Lexar JumpDrive Secure 128 en 256 MB (moet “Secure” zijn — andere modellen werken mogelijk niet).

Zie ook de Xbox/USB-compatibiliteitslijst hier.

Belangrijk: Zorg ervoor dat u een back-up maakt van uw USB-geheugenapparaat. Zodra het USB-apparaat door de Xbox wordt gedetecteerd, wordt het opnieuw geformatteerd.

Daarna sluit u uw gewijzigde USB-kabel aan op de console. Steek het USB-geheugenapparaat aan het andere uiteinde. Zet uw Xbox aan. Het USB-apparaat wordt ontdekt en opnieuw geformatteerd. Het kan een minuut duren, en het kan zijn dat u het meer dan eens moet proberen. Zodra het USB-apparaat is geformatteerd, verschijnt het onder Memory Devices (Geheugenapparaten) in het Xbox Dashboard. In tegenstelling tot de andere geheugenapparaten, kan dit apparaat worden gelezen en beschreven door je PC. Overigens kun je het USB-apparaat net zo gebruiken als de Xbox geheugenkaarten, je kunt er zelfs je games op opslaan. Het beste van alles is dat je niet langer beperkt bent tot 8 MB op de standaard Xbox-geheugeneenheden die in de Xpad-controllers passen. De kaarten van derden zijn beschikbaar, maar zij zijn allen klein vergeleken bij de forse 128-MB of 256-MB geheugenstick.

Stap 3: Krijg een bootable beeld

Het beeld dat u zult willen downloaden en naar uw onlangs geformatteerd geheugenapparaat kopiëren is een “Savegame” dat door een paar spelen kan worden geladen. Het zal u helpen om een rudimentair Linux besturingssysteem op te starten. Degene die ik heb gebruikt is het Xbox gelicenseerde spel MechAssault. Een MechAssault image is beschikbaar op SourceForge.net. Download het image dat overeenkomt met de grootte van je geheugenapparaat: 128 MB, bijvoorbeeld.

Note: Het formaat dat door Xbox geheugenapparaten wordt gebruikt is FatX. FatX is misschien gemakkelijk te hanteren als je al een Linux box hebt of een Mac met OS X. Maar het is niet Windows PC-vriendelijk. Met andere woorden, als je de geheugenstick in een Windows PC steekt, zul je het apparaat zien, maar niet de inhoud. U zult een shareware programma moeten gebruiken, genaamd Stick Explorer, dat beschikbaar is op OzXChip.com om de FatX image naar de USB stick te flashen. Het werkt vrij goed. Of vind een vriend die Mac OS X.

in werking stelt

Voor meer informatie over het gebruiken van de Stokverkenner en over softwarevoorbereiding van de Xbox, controleer deze Xbox Linux Project pagina.

Stap 4: Kopieer het beeld naar de Xbox

Deze stap is een natuurlijke voor al jullie gamers. Gebruik het Xbox Dashboard om de inhoud van de USB memory stick te bekijken. Er zouden nu drie items op moeten staan: Emergency Linux, Remove Linux, en Install Linux. (Trouwens, die knappe pinguïn in de icoontjes is Tux, de Linux mascotte.) Gebruik de gebruikelijke Xbox-methoden om alle drie de savegames op de USB-stick naar de harde schijf te kopiëren. Je zult nu zien, en nog belangrijker, in staat zijn om deze savegames op te roepen in onze volgende stap.

Stap 5: Voer het image uit om Linux te starten

Om het image uit te voeren, hebt u de MechAssault game DVD nodig. Savegames worden geassocieerd met specifieke spellen. Het is deze associatie die de Xbox verleidt om de image te starten. U zult het spel slechts nodig hebben om Linux te beginnen. Ik huurde een kopie bij mijn lokale videotheek.

Hoewel ik MechAssault koos voor onze installatie, heb ik gehoord van andere modificaties die EA’s 007 Agent Under Fire DVD gebruiken. Het is belangrijk op te merken dat het spel dat je gebruikt moet overeenkomen met de Savegame images die je hebt gedownload, omdat het het spel is dat de Xbox “trucs” geeft om ze uit te voeren.

Okay, laten we het doen!

Voeg het MechAssult spel in. Selecteer Campaigns en Emergency Linux (een van de Savegames die we in de vorige stap hebben gekopieerd). Je zult zien dat de Xbox opnieuw opstart. Deze keer zie je niet de gebruikelijke Dashboard graphics; in plaats daarvan zie je een zwart scherm met witte letters scrollend door de Xbox Linux boot-up.

photo

Als u zover bent gekomen, gefeliciteerd! Een kleine versie van Linux draait, en u kunt nu telnetten naar de Xbox op zijn standaard adres:

Log in als “root” met het wachtwoord “xbox.” Type dan het volgende commando:

xbox_tool-a

Noteer deze harde schijf sleutel. De harddisk sleutel is versleuteld in het EEPROM geheugen van de Xbox en kan gebruikt worden als je hem ooit moet terughalen of verdere modificaties moet doen. Nu weet je het.

Opnieuw, plaats het MechAssault spel. Selecteer Campaigns, en selecteer deze keer Install Linux. Als dit is voltooid, is de Xbox schijf ingesteld en verschijnt het item Linux in het Dashboard. Onze Savegame truc is dan niet meer nodig.

photo

Als je meer hulp nodig hebt met de bovenstaande stap, volg dan de gedetailleerde aanwijzingen op deze Xbox Linux Project pagina.

Nu, als je Linux selecteert in het Dashboard, start de minimale versie van Linux op. Een volledige distributie van Linux kan worden geladen in onze volgende stap. Emergeny Linux is in wezen een tijdelijke manier om aan de slag te gaan; Install Linux stelt de schijf echt in; en Debian-installatie (onze volgende stap) laadt het echte Linux OS.

Stap 6: Installeer een complete Linux-distributie

Zoals u waarschijnlijk weet, zijn er veel Linux-varianten, waaronder RedHat, Mandrake, FreeBSD, SuSE, en Gentoo. Maar de beste en waarschijnlijk enige keuze voor een betrouwbare werking op de Xbox is op dit moment Debian van Ed. Het is gebaseerd op het populaire x86 Debian en speciaal op maat gemaakt voor de Xbox. Hier is een goede algemene pagina voor informatie over Ed’s Debian Linux.

Recente versies van Ed’s Debian worden geleverd met een opstartbare CD, die wordt gebruikt om het basissysteem op de harde schijf te installeren. De CD start op in een schone, grafische Xwindows desktop omgeving. Er is zelfs een virtueel toetsenbord op het scherm dat je kunt gebruiken met de Xbox controller, maar een echt USB toetsenbord werkt ook. Een andere optie is om in te loggen via SSH (192.168.0.2/255.255.255.0) en de installatie op die manier te voltooien. De standaard login en wachtwoord zijn respectievelijk “root” en “xbox,”

Ook zijn hier twee tutorials over het verkrijgen en installeren van Ed’s distributie: How To Debian en Install Debian.

Wanneer Debian wordt geladen, moet u het virtuele toetsenbord gebruiken om het installatieproces te starten. Na de installatie, herkent het OS USB-apparaten.

Het installeren van Debian is rechttoe rechtaan. Plaats de installatieschijf in de Xbox drive en start op. Na een korte tijd verschijnt er een virtueel toetsenbord op het scherm. Typ dan “su” om in te loggen als superuser. Het systeem vraagt je om een wachtwoord; typ “xbox”. Typ nu “XBOXLinuxInstall,” en onthoud dat hoofdletters belangrijk zijn. Volg daarna de instructies op het scherm om de installatie te voltooien.

Doordat u nu een standaard USB-aansluiting op de XBox heeft, kunt u elk USB-toetsenbord, muis, webcam, printer of scanner aansluiten die door Debian wordt ondersteund. Voor het gemak zou u een USB toetsenbord met een ingebouwde USB of PS2 muis connector kunnen overwegen. Of gebruik een eenvoudige USB-naar-PS2 splitter kabel, die ongeveer $10 kost.

Dat is alles, maar dat is ook nog maar het begin. Zet nu die Xbox gaming console aan het werk als een volledige desktop computer met muis en toetsenbord of een web/email box aangesloten op TV of zelfs een server of router. Oh, en veel plezier met het spelen van een paar spelletjes op het nu en dan, ook.

ANDY MCDONOUGH is een professioneel musicus, componist, stemacteur, ingenieur, en opvoeder die gelukkig freelance werkt in New Jersey. Hij gamet af en toe op de Xbox, maar heeft nog nooit zijn 10-jarige zoon verslagen.

Hebt u dit TechBuilder-recept geprobeerd? Zo ja, hoe werkte het? Begin of sluit u aan bij een discussie in het Receptenforum.