Writing To and Reading From an Xbox
Possible Writing Methods
There is no shortage of ways to write to an Xbox. For reading files from an
Xbox,
it's pretty much the same information as writing to an Xbox, although there may
be a little bit more easy options for reading from the Xbox (such as Linux
running an httpd server.)
Although there is no shortage of ways to write to an Xbox, there are fewer
ways to actually write to an unhacked Xbox, especially without access to
another Xbox that is hacked. For those without a hacked Xbox, skip right past
the Ethernet section because it is, initially, not all too useful.
This chart is massive because there are quite a few ways to write to an Xbox,
and quite a few details that may be useful in selecting which way you want
to use. This page continues to have information past the chart.
-
Ethernet connection
Mod Chips
- The BIOS of an Xbox can include software such as an FTP server. The
official BIOS software from Microsoft does not have this. Some Mod
Chips have the ability to connect to them, or use the Xbox's
Ethernet port. The X-ecutor2 4978 family of BIOS's had an FTP server
built in. For more information on any particular mod chip, check the
details of the mod chip. Some of the information in the software
section may be useful for people trying to connect to an FTP server.
Software-only
-
Most people's favorite method of writing to an Xbox is using software and
an Ethernet connection. This requires running software on an Xbox
as well as another device to connect to an Xbox. (Becuase it requires
running software on the Xbox, the software-only solution may be best but
you'll likely find that it can not be first.) Examples include:
-
FTP : Requires a client and a server. One device runs a client,
and another runs a server. Familiarize yourself with your
client's ability to send a raw literal QUOTe command, as the
servers that run on Xboxes tend to be able to take advantage of
that.
- Cleints
- Xbox running AvaLaunch
- Windows 95 and later comes with a cleint called FTP
- Web browsers, such as Microsoft Internet Explorer can
generally download from an FTP server pretty easily. A
day came along when browsers started supporting uploading
too, via extentions and then built in, but this is often
less intuitive (and might be http upload only)
- Specialized FTP programs exist, including:
- the
free-for-personal/educational-use WS_FTP
-
the popular FlashFXP
- Servers
- Some mod-chips have these built in, I think. The
X-ecutor2 4978 BIOS does.
- Remote systems
- Many alternate dashboards for the Xbox come with
servers, including at least the following:
-
UnleashX
- AvaLaunch
- Evolution-X RemoteX
- Qwix
- I'm not sure just what this is. I think it's a sort of speed
enhancement to AvaLaunch's FTP capabilities, and therefore
shouldn't be in its own category on this chart like it is.
- TFTP (Tiny FTP)
- A tftp client comes with the Xbox Linux Live Plugin System
- A
tftp
server for Windows can be more difficult to find.
- Linux supported protocols. You can probably http upload if
you know what you're doing.
-
Hardware needed for Ethernet
-
-
Wireless
-
Microsoft does manufacture a Wireless Adapter that will allow for
802.11b or 802.11g wireless networking.
802.11g devices can talk to any 802.11b device, but they can transmit
data better (faster, I believe) to other 802.11g devices. I don't
actually have experience with wireless networking yet, so do seek
elsewhere for advice on that. It would be good to get information
about wireless security before setting up such a network, especially
if you live in a complex like an apartment building, as it is
apparently an enjoyable activity for some people to locate wireless
networking signals and then try to (ab)use a network they find. If
some trouble-making teenager got full FTP access to an Xbox then it
would be simple for them to delete critical files from the Xbox so
that it cannot boot 0.
off of the hard drive.
- Ethernet Wires
-
Hardware: You'll need an Ethernet cable, and something (like an Ethernet
jack, possibly on a "Network Interface Card" ("NIC")
in your computer) to plug the Ethernet cable in. More specifically on
the cables, you'll need
an RJ45 CAT5 ethernet cable, but RJ45 CAT5 cables have been the only
very common type for a long time. (RJ45 basically means a hole that
looks like RJ11/RJ12, a common phone line jack, but is wider.)
There are some newer standards coming out: CAT5e and CAT6 which are
designed for faster networking (1000Mbps instead of 10 or
100Mbps), and I don't know how compatible these cables are or are not
to regular CAT5. It seems CAT5e isn't too different:
"
The reality is that most CAT5 cable is in fact CAT5e cable just not
certified as such."
CAT5 Ethernet cables come in two varieties:
- Crossover
- It is necessary for the connection to have a couple of the wires
have different positions on the ends. One end of one wire goes to
the send spot on card #1, and the other end of the same wire gets
connected to the receive spot of card #2
- Straight-through
- Because some devices, such as switches and hubs, do the
crossing of wires for you, some CAT5 cables are striaght-through.
(This was the original setup, and makes some sense when connecting
more than two machines to one hub: All machines are
straight-through to the hub, and then the hub crosses all
connections. Crossover cables were a cheap, obvious, intuitive
invention to mimic a hub's effects without requiring a hub.)
If you bought an Link Cable with packaging indicating that it was
designed for Xboxes, you probably just overpaid for a crossover
cable.
Memory Unit (also referred to as a "Memory Card")
-
First you must possess something that acts like an Official Microsoft Xbox
Memory unit. Details on the different possible memory units are listed
here, followed by some more memory unit information which isn't as
specific to one type of memory unit.
- Official Microsoft Xbox Memory Unit
- Works like a charm. You'll need a way to get data onto the
memory unit, though.
- You can use your own Xbox, once you have the software on
your Xbox.
- You can use anyone else's Xbox that has the software on it.
One example is to get someone from the
Xbox-Linux project's Users Helping Users page
to put MechInstaller on a memory card for you.
The other Xbox doesn't even need to be hacked: If the other
Xbox has hacked save games properly positioned on the hard drive
in a spot
accessible by Microsoft's official dashboard than that dashboard
can copy the files.
- Unofficial Xbox Memory Unit
- Some are just like the official Microsoft Xbox Memory Unit.
Unsurprisingly, generic memory units have been found to work
just as well as the official thing and tend to be cheaper.
See the data by the official memory unit for information.
-
The really cool third party
memory units may have
a USB port on them, or some such way to connect to your
computer.
-
Mega X-Key includes a USB
port. If you have such a device, you should be able to use
the software available at
http://MegaXKey.Com.
-
"Game Shark/Action Replay" device.
Action Replay comes with a
"supplied
docking station, which is connected to your PC’s USB
port."
Now the question is, does this docking station work with any
Xbox memory unit or only Action Replays?
This just handles saved data, and does not alter real-time
memory (RAM) the way these sort of devices have done on
other systems.
-
gameshark.com/xbox
"Included are a disc, instructions, and a USB dongle that connects your memory card to your Windows-based PC."
"Seamlessly drag and drop game saves between your PC and memory card (not included)"
-
I believe one of these devices is responsible for the existance of
GAME.ID files (or whatever the filename is) bundled in with
some packages: That the MegaXKey software uses that file
somehow. (The GAME_ID.TXT file, or whatever it is called,
is NOT required to go onto the Xbox. Nor does it really
cause any problems beyond a tiny amount of disk space used.
The real trouble is the time people waste thinking that file
is important.)
-
AR
- USB Memory Device
- You'll need a working standard USB to Xbox USB adapter.
Available adapters include:
-
Hand-made:
Make it yourself.
(I haven't tried this myself)
-
Quality Manufactured (3rd Party)
from lik-sang
(I keep getting them at the
substantial bulk
discount rate, five at $3.90 each for $19.50 total, instead of
one for $12.50 total. (A similar discount exists for the
converter))
that lets you plug your Xbox controller into a USB PC.
- Manufactured by Microsoft (meant for use with Phantasy
Star Online, this also works for memory units)
Microsoft's Xbox USB Keyboard Adapter (meant for Phantasy
Star Online), available only in USA and Canada for $6.95
shipping and handling (they consider this device being given away
for free). This
page on Xbox.com says "Offer will expire on December 31, 2004."
and links to
an
order page URL which redirects to
Another
page which redircts to
an
actual order page. I don't like this one as much as
lik-sang's: This adapter I use for a memory device doesn't plug
into the system, rather one must make sure that the correct
memory unit port is used on the controller that is plugged into
the correct controller port on the system. But it works.
This USB adapter can also be used to allow a USB device, such as a
USB Keyboard, to be used by supporting software
- Phantasy Star Online
- AvaLaunch
- I do believe Linux
- You'll need a compatible device
- The XboxUsbCompatibilityList - Linux on Xbox Wiki
has a list. This list indicates that sometimes some devices
are compatible or incompatible depending on what sort of
media is placed in the device.
- For what it's worth, this is how I originally did it.
The D-550 Olympus digital camera belonging to the roommate I
had at the time, along with SmartMedia flash cards, worked
perfectly. (Thank goodness... I may have
never gotten around some of the other problems I encountered
bumbling my way through this if I didn't even have working
hardware.)
- I've since tried at least half a dozen other flash card
readers. None worked! If your time is worth at least
minimum wage, it may be most economical to buy a
Xbox-specific memory unit.
-
You can plug it into the Xbox and
the Xbox will be able to either:
-
Read files from the USB memory device and write files to the
USB memory cevice, if the USB memory device's data is stored
using the FATX file system. This clearly means the device is
compatible with the Xbox (when using the
standard-USB-to-Xbox-USB adapter).
-
Format the file system on the device so that it starts to use
FATX, and then the Xbox can successfully treat it like any
other FATX memory unit. This also indicates the device is
compatible with the Xbox (when using the
standard-USB-to-Xbox-USB adapter).
-
Have the dashboard try to initialize the memory unit, realize
that it is not working, and display a message on the screen
communicating that the Xbox cannot read and write files to
the device. (The message displayed on the screen will call
the device "damaged" even if that is not true.
The Xbox just noticed that trying to access the device did
not work as expected.) This means the device is not
compatible with the Xbox.
-
The Xbox may flash the screen white and play a sound as it
tries to initialize the device, but for some reason fail and
decide to repeat the process, causing the Xbox to repeatedly
flash the screen and repeatedly make the noise until something
is done to interfere with this repeated action, such as
removing the memory unit. This means the device is not
compatible with the Xbox.
-
You can then copy data to and from the Xbox using the USB memory
device with a standard-USB-to-Xbox-USB adapter, and you can copy
data to and from a USB-equipped computer using the USB memory
device and not using the standard-USB-to-Xbox-USB adapter.
-
As computers do not generally come with FATX support, you will
need to find a way to get your computer to recognize a FATX
file system.
-
I was able to get assistance from the roommate I had at
the time, who got Linux to be able to read and write to
files on a USB device formatted to use FATX.
- Once you have a memory unit, you'll need to find out how to write a
file to the memory unit. Details are included above. The memory unit
stores data in sub-folders, such as H:\4541000d\000000000000\default.xbe.
Files can then be copied from H:\ to E:\UDATA\ using the Microsoft
dashboard. For example, H:\4541000d\000000000000\default.xbe (on the memory
unit) would be copied to E:\UDATA\4541000d\000000000000\default.xbe (on the
hard drive). Some people have seen
a downloaded archive (a package of files) meant to be copied to a hard
drive, with information stored in
UDATA\some-Game-Directory\SomeSaveGameDirectory\files\. Do not copy the
UDATA\ directory to the memory unit. Only copy the stuff under the UDATA\
directory. That won't work.
-
It seems different dashboards have different expectations regarding what
files are in a save folder. With some dashboards, a missing icon or
title file (I forget which I experienced) would result in the information
simply being unavailable (a pointless title, or a generic Xbox icon). In
another version of Microsoft's official dashboard, this may cause the
saved game to be uncopiable, so the data cannot be copied from the memory
unit to the hard drive. Conclusion: Make sure you include any possibly
needed icon files if you are distributing saves.
Primary IDE cable
-
You can open up your Xbox, unhook the hard drive from the standard IDE
cable, and connect the hard drive to an IDE cable that's connected to
a computer. Note that the Xbox's hard drive uses FATX, so it's not as
simple for a Windows user as plugging in the hard drive and seeing
Windows show you another drive letter. You'll also want to make sure
you can fulfill any requirements the Xbox kernel has, such as hard
drive locking (which is less of an issue if you're using a replacement
kernel).
(Note: I haven't tested this.)
-
Advantage: Do not need to buy uncommon equipment. Any computer using IDE
oughtta do the trick.
-
This could be a money saver for those with a computer, even a
really old one (80386 based).
-
Do not need to wait for the uncommon equipment to be shipped to
you.
-
Disadvantage
-
I do fully believe the statements that this could cause damage to your
Xbox hard drive, your Xbox, or probably worse yet, your computer's
hard drive or your computer.
You may find
some useful inforamtion from
xbox-scene.com tutorials.
(Note: I haven't tested this.)
-
You'll need some software that can write to the hard drive
- This could be a computer running Linux with FATX support compiled in
- There might, or might not be software for Windows to allow a
machine running Windows to easily read/write to a FATX file system
-
You'll need to know how to handle problems that can result from the
hard drive lock issue.
-
no Mod Chip HDD swap
says "I’ve noticed in all other tutorials that you need a lockable
drive; however, I have yet to encounter a harddrive that was not
lockable. You should be safe with a newer drive."
-
Then again, a forum post entitled
List Of Hard Disks And "lockability"
says some aren't lockable. Then again, some people probably came to
false conclusions.
-
"The
Western Digital WD800BB and WD1200JB appear to carry a bit of a risk
when locking. There are many reports of lockability and unable to be
locked."
Western Digital makes (or at least they made) drives that go in some
Xboxes. Maybe this comment is referring to drives that some Xboxes
have shipped with!
- Still, I would back up your original hard drive's key before
removing it. This key may be needed to get the new drive working
or in the event that your efforts turn from enhancement-experiments
to disaster-recovery.
-
If you're dealing with a hard drive over 120MB or over 137MB (probably
the same number of MB, just counting a different way), make sure any
LBA48 problems are resolved. Hopefully the computer running Windows has
any LBA48 issues with it resolved arleady: Familiarize yourself with any
LBA48 issues related to hard drives over 120GB on an Xbox if you are
using a hard drive over 120GB on an Xbox. Not all Xbox programs support
LBA48, those that do usually refer to a G: partition.
Some useful
information may be here
-
Secondary IDE cable
-
You can copy data to the Xbox Hard Drive by just copying data from the
DVD Drive. However, the official Microsoft dashboard doesn't have the
ability to do this built into the program. One can either execute a
program from the hard drive which will allow data to be copied from the
DVD drive, or run a program from the DVD drive which will allow data to
be copied from the DVD drive. The problem is that the Xbox won't allow
a program to be run unless Microsoft has approved the code, and
Microsoft doesn't approve of people copying code from a DVD drive unless
very specific rules are followed (like DOA3 costumes must go into a
directory that the Xbox can tell is related to DOA3). So, in order to
do this, signature checking must be defeated. Once the problems related
to signature checking are worked around, an FTP server could be run.
See the details of running an FTP server under the section detailing
getting software to an Xbox using Ethernet, as the processes will be
quite similar. Note that there are at least three different
manufacturers of Xbox DVD drives, and some Xbox DVD drives are not as
capable of reading certain not-approved-by-Microsoft-for-Xbox-use media,
such as CD-RW's and DVD+R's, as other Xboxes.
|
Using the Memory Unit
How to put files onto the Xbox varies based on the software and hardware being
used. See the above chart for details.
Misc Info
Comment on Ethernet cables
The way I like to write to an Xbox is by plugging an Ethernet cable into the
Xbox. (Note: You'll need to make sure you correctly use whichever is needed,
either a "straight-through" Ethernet cable or a "crossover"
cable. A cross-over is generally necessary, although depending on what you hook
your Xbox to, the device may cross-over for you, and crossing over twice results
in the same sort of connection as a straight-through.) I generally use FTP,
which means running an FTP client and an FTP server.
Comment on saved data location
The main place that people new to Xbox software modifying will want to write to
is saved game exploits, so that they can continue on with the process of running
any unsigned code of their choosing. This data will go into subdirectories
under E:\UDATA\ (most of it being at least two deep under E:\UDATA\.) For
example, the James Bond 007: Agent Under Fire saved data gets stored in
E:\UDATA\4541000d\000000000000. Some audio hack data may get stored in
E:\TDATA.
?
If you're copying from a memory card, the data goes into subdirectories off of
root. For example, 007: Agent Uner Fire could be stored in
H:\4541000d\000000000000\. Using Microsoft's original dashboard (or UnleashX)
you should be able to copy the saved games from H:\4541000d\ to the hard drive,
and then they will go into E:\UDATA\4541000d\. Note that Microsoft's original
dashboard will not find the saved games on a memory card if they are placed in a
UDATA directory (H:\UDATA\4541000d\);
How:
The biggest thing you'll need a reference for is: What data to write, and where
to write it to? You may need more help than that, but that is the least that
you'll likely need. Exploits based on the audio hack are generally considered
safer, though possibly less convenient, than those requiring a font hack, for a
couple of reasons. First, they are manually initiated, which means they don't
execute unless you tell them to, and so you probably won't get in trouble if
something unexpected happens, such as your Xbox losing track of time and asking
you to input it again. Second, the font hack can be done entirely by writing to
the E: (although the most popular thing to run, Phoenix BIOS Loader, may load a
BIOS that wants a dashboard on C:, you can still run PBL without using the C:
and see that it works). If you do write to the E: and delete a file or even
cause partition corruption, you're may lose your saved games. On the other
hand, problems on the C: can result in your Xbox system failing to boot. I'm
more comfortable modifying my list of custom soundtracks (especially since I had
none) than boot files that the Xbox relies on.
-
Ethernet
-
Memory Unit
-
Writing to Xbox hard drive