Op 22 november 2005 werd de Xbox 360 door Microsoft gelanceerd. Het zou één van de meest succesvolle en langstlopende consoles ooit worden, waarvan er ruim 84 miljoen zijn verkocht. Wat de Xbox 360 interessant maakt, is dat ze tweedehands voor een paar tientjes op de kop te tikken zijn. En met deze console kun je leuke dingen doen, zoals Linux installeren. Dat gaat echter niet zonder slag of stoot.

Marinus ten Napel

Wat een gaming console onderscheidt van een gewone PC, is dat het een gesloten systeem is. In tegenstelling tot een gewone PC mag niet zomaar elke software gestart worden. Alleen software die is goedgekeurd en digitaal is ondertekend, kan op de console draaien. Dit wordt natuurlijk gedaan om piraterij te voorkomen. De enige software die je dan ook kunt draaien, zijn originele spellen. En daar hoort Linux natuurlijk niet bij. Dus om Linux op een Xbox 360 te kunnen draaien, zullen we de console eerst moeten modden.

Bij het ontwerpen van de Xbox 360 heeft Microsoft geleerd van de slechte beveiliging van de voorganger, de Xbox Classic, of de Original Xbox. Tussen de hardware en de software zit een zogenaamde hypervisor, die een ijzeren greep houdt op alles wat er op de console gebeurt. Er kan werkelijk niets gedaan worden zonder goedkeuring van de hypervisor.

Om deze beveiliging te omzeilen, werd de Reset Glitch Hack (RGH) ontwikkeld. Bij deze hack wordt een chip op het moederbord van de Xbox 360 gesoldeerd, die tijdens het booten van de Xbox 360 heel snel de CPU gaat resetten. Dit wordt ook wel glitchen genoemd. Hierdoor raakt de CPU in de war en wordt de controle van de firmware overgeslagen. Is dat eenmaal gelukt, dan zal de mod-chip stoppen met glitchen en het boot proces verder normaal laten verlopen, zodat de Xbox 360 de gehackte firmware zal booten. Het voordeel van deze hack is dat hij op bijna alle versies van de Xbox 360 is toe te passen, zij het in aangepaste vormen. Het nadeel is dat hij niet makkelijk is uit te voeren en de meeste modders daarom afschrikt. Het glitchen van de CPU is ook iets wat bij elke keer booten opnieuw uitgevoerd moet worden. En hoewel dit vrijwel altijd zal lukken, kan het booten hierdoor wat langer duren.

Modden

Het modden van een Xbox 360 is afhankelijk van een aantal factoren, zoals het type moederbord, de NAND-reader en de RGH-chip. Daardoor werkt de mod vaak net iets anders, dan een tutorial zoals deze, laat zien. Maar in grote lijnen komt het op het altijd op het volgende neer:

  • Soldeer de connector voor de NAND-reader op het moederbord.
  • Maak een dump van de NAND.Maak een dump van de ECC.
  • Soldeer de RGH-chip op het moederbord.
  • Programmeer de RGH-chip met de gewenste glitch-frequentie.
  • Schrijf een aangepaste versie van de ECC naar de Xbox 360, zodat die Xell kan booten.
  • Boot de console in Xell.
  • Extract de CPU-key.
  • Maakt een gehackte firmware file.
  • Schrijf de gehackte firmware naar de NAND van de Xbox 360.

Voor het uitvoeren van een mod is het volgende nodig:

  • J-Runner.
  • Timer files voor de RGH-chip.
  • Een NAND reader.
  • Drivers voor de NAND reader, zodat J-Runner ermee kan werken.
  • Een RGH mod-chip.

In deze tutorial gaan we uit van een Trinity moederbord, van de Xbox 360 Slim. De NAND-reader die wordt gebruikt is de JR-programmer V2. En de RGH-chip is de Coolrunner Ace V3. De software voor het dumpen en schrijven van de NAND en de ECC is J-Runner. Helaas werkt deze software alleen onder Windows. We ontkomen er dus niet aan om voor deze procedure Windows te gebruiken. De meeste webshops die RGH-chips en NAND-readers verkopen leveren daar ook de genoemde software bij. Zo niet, vraag er dan naar.

Begin met het solderen van de connector voor de NAND-reader op de JTAGS van het moederbord. De punten voor 5V, E, F en GND en worden verderop gebruikt, voor het installeren van de RGH.

1. De punten waar gesoldeerd moet worden.

Sluit de NAND reader aan op de zojuist gesoldeerde connector. En sluit de stroomkabel aan op het moederbord, zodat er spanning op komt te staan. Zet de Xbox 360 echter niet aan!

2. De NAND reader aangesloten op de Xbox 360.

Start J-Runner en klik op het vraagteken, om het moederbord te identificeren. Dit is tevens een test om te zien of de NAND reader correct is aangesloten op de JTAGS.

3. J-Runner

Klik nu op de knop Read Nand (afbeelding-3:2) om de NAND te dumpen naar een file. Links van deze knop kun je het aantal reads instellen. Zorg dat die op minimaal twee reads staat ingesteld.  Tijdens het dumpen van de NAND kun je de melding krijgen dat er bad blocks zijn gevonden. Dat is niet erg, zolang beide dumps maar identiek zijn. Sluit de NAND reader nu aan op de RGH chip.

4. De NAND reader aangesloten op de Coolrunner Ace V3.

Klik in J-Runner op Advanced en kies Custom NAND/CR functions. Zet command op xsvf en selecteer daarna de gewenste timer file. In dit geval is dat TR_L_0.6_T_60.6.xsvf. Mocht na het succesvol uitvoeren van de mod het booten van de Xbox 360 lang duren, dan kunnen andere timer files geprobeerd worden om de boel te tunen. Maar in de meeste gevallen is deze file prima. Klik op RUN om te timerfile naar de RGH chip te flashen.

5. De timer files flashen.

Nu de RGH chip is geprogrammeerd met de juiste timer file, sluit je deze weer aan op de JTAGS. Zet een vinkje bij CR4 en selecteer Glitch2 (afbeelding-3:3). Klik op Create ECC  en daarna op Write ECC (afbeelding 3:4). Als dit is gebeurd haal dan de stekker uit de Xbox 360, zodat er geen spanning meer op het moederbord staat. Sluit de Xbox 360 nu aan op een monitor en een netwerkkabel en boot de Xbox 360. Als je alles goed hebt gedaan zal Xell Reloaded booten. Wacht tot de Xbox 360 een IP-adres heeft gekregen van je DHCP-server en voer dat in in J-Runner. Klik daarna op Get CPU Key (afbeelding-3:5).

Zet de Xbox 360 uit, sluit de NAND-reader weer aan op de JTAGS en zet weer spanning op het moederbord. Nu we alles hebben wat nodig is, klik je op Create XeBuild Image (afbeelding-3:6). Als dat klaar is, klik dan op Write Nand (afbeelding-3:7)

7. Punt C

Nu komt het lastigste gedeelte. De RGH-chip op het moederbord solderen. De punten E, F, 5V en GND zijn aangegeven in afbeelding 1. Punt C bevindt zich aan de onderkant van het moederbord, vlakbij de CPU (afbeelding 7) Punt D bevindt zich vlakbij het koelblok aan de bovenkant van weerstand R4D4 (afbeelding 8). Probeer deze verbinding zo kort mogelijk te houden.

8. Punt D
9. Soldering

Sluit de Xbox-360 weer aan op een monitor. Netwerk kun je beter nog even achterwege laten. Houd je vingers gekruist en boot de Xbox 360. Als je alles goed hebt gedaan zal de RGH-chip de glitch hack met succes uitvoeren en zal de Xbox 360 booten (afbeelding 10). Dit kan even duren, dus heb geduld. Als de Xbox succesvol kan booten kun je de JTAG-connector lossolderen en de Xbox 360 weer in elkaar zetten.

10. Booten van Xbox 360

Linux installeren

De meeste modders gaan nu verder met het installeren van XeX-Menu en FreeStyle-3. Wij nemen echter een andere route en gaan Linux installeren. Voor het draaien van Linux op een Xbox 360 is ooit het Free60 project gestart. Helaas is dit project zo dood als een pier en lijken de meeste installatie-scripts en download links niet meer te werken. Gelukkig zijn er nog wel enkele enthousiastelingen die op eigen houtje verder zijn gegaan. Op de website van Codin Moldovanu vind je ISO’s en instructies om Linux te installeren.

Download de ISO’s voor de Gentoo Livecd en Xell Bootloader en brand die op cd’s. Boot de Xbox 360 met de Gentoo Livecd. Zodra deze helemaal is opgestart open je een terminal. Met de volgende commando’s wordt het installatie proces in gang gezet. Let erop dat de hardeschijf van de Xbox 360 volledig gewist zal worden!

sudo su
wget http://codin.ro/lynxbox/install.sh
sh ./install.sh

Dit script zal het base system downloaden en installeren. Zodra dat klaar is zet je de Xbox 360 uit. Open vervolgende cd DVD-speler en doe de cd met Xell Bootloader erin. Als het goed is zal Xell Bootloader starten en gaat de installatie automatisch verder. Zodra er een login prompt komt, log dan in als root. Volg verder de instructies die de installer zal geven. Een eventuele warning kan genegeerd worden. De installer zal alle benodigde pakketen downloaden en installeren. En na een half uurtje moet er een werkende Linux installatie op je Xbox 360 staan (zie onderstaande afbeelding).

11. Linux op Xbox 360