NAND Reading

From Xenon Wiki
Revision as of 00:48, 12 March 2010 by imported>Jamiec (→‎Requirements)
Jump to navigation Jump to search

This tutorial explains how to read the Xbox360's NAND/Flash via a PC's parallel/"printer" port in as clean and easy as possible a way. The same method is used to dump/flash all models of the Xbox360 (Xenon, Zephyr, Falcon, Opus, Jasper).

Please keep quick & dirty setups and speculation out or, in case some guesswork is really needed, flag them, so this article and the whole wiki can develop as trustworthy sources.

There are guides to dump/flash via USB, but compared to this it's quite expensive [And easily found with a search]. Maybe someone will add one later on.

If you're facing any problems, feel free to ask in #free60 on OFTC. :)

Moreover thanks to tmbinc, Tiros and all else involved (feel free to add their names) for their great work! :)


Requirements

First of all, you'll need soldering skills—if you've never used a soldering iron before, you should train on a less expensive object. This skill level is similar to adding a modchip to a console.

You'll need the following:

  • Prerequisites:
  • LPT (parallel) port (preferably supporting SPP)
  • Components:
  • 1 × diode BAT41 - There are several diodes you can use. People on xboxhacker.net had the best experiences with BAT41, others used N4148. I (kote) used PH4148.
  • 5 × 100–120 Ω resistors - not a must-have, but it'll protect your box
  • LPT cable - Hollow connector housings will make your life easier. Alternatively, use a bare DB25 male connector and wire.
  • Tools:
  • Multimeter - (Voltmeter/Continuity)
  • Soldering Iron
  • A lot of patience and spare time ;) - A third hand will make your life easier, too
  • Software
  • 32-bit OS/PC - The necessary PortIO(?-Guessing) driver is available for 32-bit systems only. There is a 64-bit port, however NandPro2 compatibility is unknown (22/08/2009). Since many 64-bit systems don't have a parallel port, this shouldn't affect many people.
  • 64-bit Update: Go here. Download 'Binaries only - x86 & x64 DLLs and libs'. Extract inpout32.dll from Win32 folder to nandpro folder. Rename inpout32.dll to DLPortIO.dll (credit)
  • NandPro - NandPro (by User:Tiros Tiros on xboxhacker.net - for reading out the NAND image.) seems to work with Windows Vista 32-bit and Windows 7 32-bit. Windows XP Compatibility Mode or running with administrator rights may be necessary. XP or earlier is preferred.
  • Verifying NAND Dumps:
  • File comparison Utility - MD5SUM, SHA1SUM, (Total Commander)
  • 360 Flash Tool - (there are different versions! The latest is V0.88a CD FIXED [22/08/2009])
  • NAND Compare and Reconstruction Tool - (compare 2 nand images or reconstruct image from 3 bad reads)


Photos

Photo Links are Dead :(

Steps:

Preparing the cable

First of all, there are different kinds of LPT cables out there. If you got one with at least one male DB25 connector, you will be fine. There are also cables with two DB25 connectors and possibilites to do it without any DB25 connector. However, this tutorial is supposed to be as universal as possible, so we will behave like there are only cables with one connector.

Well, whatever is on the other end of your cable, cut it off. So you will get a cable with a DB25 connector at one side and loose wires on the other side.

Now you need to trace the wires in the cable. If you've got a cable with openable plug housings, you're in luck: just open the housings and compare single wires with those on the loose end. Otherwise it's time for your continuity tester. You will need to know which wire goes to which pin at the end. Write down the colour of the wire attached to each pin. Since there are only seven needed wires, you don't have to trace every wire. The following pins need to be connected: 1, 2, 11, 14, 16, 17, 18. In case a pin isn't connected, just resolder a wire from an unneeded pin (e.g., 15) to the needed one (e.g., 14).



I (some11) bought a LPT Cable (Nikkai LPT Parallel Printer Cable [L79BT]) from Maplins.

http://i45.tinypic.com/29lhggk.jpg

Here is the wire color map output:

I Could Not Get It Into A Table, Can you Help?
Pin Color (Main/Second) Pin Color (Main/Second)
Pin 1 Yellow Pin 13 Black
Pin 2 Pink Black Pin 14 White
Pin 3 Pink Pin 15 Grey Black
Pin 4 Orange Black Pin 16 Grey
Pin 5 Orange White Pin 17 Purple White
Pin 6 Orange Pin 18 Purple
Pin 7 Red Black Pin 19 Blue White
Pin 8 Red White Pin 20 Blue
Pin 9 Red Pin 21 Green (Different)
Pin 10 Brown White Pin 22 Green Black
Pin 11 Brown Pin 23 Green White
Pin 12 Black White Pin 24 Green
Pin 25 Yellow Black

After you've done that, you can cut the unneeded wires at the loose end so they won't bother you while soldering. Strip a small amount of insulation (5 mm should be plenty) from the end of each of the other wires, and twist the loose strands inside together. Tin each wire, so that you get nice and sweet clean wires.