13.03.2013 Views

Hacking the Xbox

Hacking the Xbox

Hacking the Xbox

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

90<br />

<strong>Hacking</strong> <strong>the</strong> <strong>Xbox</strong>: An Introduction to Reverse Engineering<br />

First Encounters with a Paranoid Design<br />

When <strong>the</strong> <strong>Xbox</strong> was announced in <strong>the</strong> Spring of 2000, excitement rippled<br />

through <strong>the</strong> hardware enthusiast community. The cause for this excitement<br />

was not just <strong>the</strong> <strong>Xbox</strong>’s gaming potential, but its potential for use as<br />

a high performance, network-enabled x86-architecture PC at <strong>the</strong> affordable<br />

price of $300. Price cuts a few months after its introduction have<br />

since dropped <strong>the</strong> cost of an <strong>Xbox</strong> to below $200. The similarity of <strong>the</strong><br />

<strong>Xbox</strong> to an x86 PC meant that a huge base of existing applications and<br />

expertise could, in <strong>the</strong>ory, be easily ported to <strong>the</strong> console.<br />

My first look inside an <strong>Xbox</strong> was in late November 2001 when my<br />

girlfriend (now fianceé) gave it to me as an early Christmas gift. I immediately<br />

got down to business. In order to take control of <strong>the</strong> <strong>Xbox</strong> hardware,<br />

<strong>the</strong> first task is to extract <strong>the</strong> boot ROM and analyze its contents:<br />

Recall from <strong>the</strong> discussion on <strong>Xbox</strong> architecture in Chapter 2 that <strong>the</strong><br />

boot ROM of <strong>the</strong> <strong>Xbox</strong> contains all of <strong>the</strong> code for establishing <strong>the</strong><br />

<strong>Xbox</strong>’s operating environment.<br />

To Snarf a ROM<br />

The type of ROM used in <strong>the</strong> <strong>Xbox</strong> is an electrically erasable and programmable<br />

variety known as FLASH ROM. FLASH ROM typically comes in one<br />

of a few package types, and <strong>the</strong> <strong>Xbox</strong> uses one of <strong>the</strong> most popular<br />

packages, <strong>the</strong> TSOP (Thin Small Outline Package). It is located in sector U7<br />

on <strong>the</strong> top side of <strong>the</strong> <strong>Xbox</strong> mo<strong>the</strong>rboard, and <strong>the</strong> reference designator for<br />

<strong>the</strong> part is U7D1. The TSOP package is very recognizable because it is one of<br />

<strong>the</strong> few chip packages that is rectangular and has pins only on <strong>the</strong> narrow<br />

edges of <strong>the</strong> package. Most o<strong>the</strong>r packages put pins on <strong>the</strong> long edge or all<br />

edges to maximize connectivity, but FLASH ROM has relatively low I/O<br />

requirements per silicon area. A quick check on <strong>the</strong> base part number,<br />

29F080, with a Web search engine verifies that this part is indeed an 8 Mbit<br />

FLASH ROM.<br />

There are a few techniques that one can use to read out (snarf) <strong>the</strong> contents<br />

of <strong>the</strong> FLASH ROM. The no-solder approach is to buy a test clip that snaps<br />

onto <strong>the</strong> FLASH ROM, and read out its contents by powering up and<br />

controlling <strong>the</strong> ROM through <strong>the</strong> test clip, while <strong>the</strong> rest of <strong>the</strong> <strong>Xbox</strong> is<br />

powered off. A suitable test clip for this purpose can be purchased from<br />

Emulation Technology, www.emulationtechnology.com. (The test clip<br />

override approach has a few problems with it, <strong>the</strong> biggest being <strong>the</strong><br />

possibility of permanently damaging chips connected to <strong>the</strong> FLASH<br />

ROM that are not receiving power through <strong>the</strong> test clip. However, in <strong>the</strong><br />

case of <strong>the</strong> <strong>Xbox</strong>, this does not seem to be a problem and those who<br />

attempted this approach did meet with success. 1 I did not initially take<br />

1 Andy Green has an excellent page that documents his<br />

experiences with <strong>the</strong> test clip approach at http://<br />

www.warmcat.com/milksop/milksop.html

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!