Bad Block remapping for ecc (first 50 blocks)

Martin C

VIP Member
Jan 10, 2004
36,034
0
Scotland, UK
www.team-xecuter.com

TIP


Both J-Runner and xNANDHealer will move 'reasonable' bad blocks for you in ECC and NAND creation. 'Reasonable' being blocks which don't affect the integrity of the NAND, making it unreadable in normal NAND tools.



All

If you are unfortunate enough to have a bad block in the first 50 blocks (where the ecc file goes), you'll find it hard to get the CPU key. Ironically, once you have the CPU key, Multi_builder will happily remap the block for you. Before you get there, you'll need to do it manually:


example: Bad block at 0x49 remapped to xxxxx.


If it's the first bad block on the NAND, it'll be remapped to 0x3FF on 16MB NANDs and 0xFF8 on 256/512MB NANDs.


(360 Flash Dump Tool may show 0xFF8 as 0x1FF - this is normal as it reads the NAND in 128kb blocks as opposed to 16kb blocks. To calculate what 16kb block it's been remapped to, multiply the bad block and remapped address by 8 in hexadecimal calculator).


1. Take a copy of your original NAND and keep it safe. ZIP it up if you have to. Rename a copy of it to nandecc.bin.
Once you're done with this process, you can delete this file as it's not needed.

2. Write the ecc file to your NAND as per normal. You'll get an error writing to one of the blocks. Don't worry about it for now.


3. run NANDPro to inject the ecc file into your VNAND:


Big/Small block NAND:


Nandpro nandecc.bin: +w16 image_ecc.ecc


(+w16 works for both as the image you're writing is less than 16MB. In truth, +w2 should also work).


4. Extract the block we're re-mapping:


Small Block NAND:


Nandpro nandecc.bin: -r16 bb1.bin 49 1


Big Block NAND:


Nandpro nandecc.bin: -r64 bb1.bin 49 8


5. Write the block to the NAND, replacing the remapped one from the stock image:


Small Block NAND:


Nandpro usb: -w16 bb1.bin 3FF


Big Block NAND:


Nandpro usb: -w64 bb1.bin FF8


With any luck, you should now be booting to XeLL.



ISSUES

It's entirely possible that if your bad block is in the 0x0-0x4F region that your NAND tool (360 Flash Dump Tool / multi_builder / JTAG_Tool etc) won't open the image. Examples would be a remapped block in the first 5 blocks of the NAND.

This is because they won't look at the reserved mapping area - this is only something that the console does on boot.

So, you may need to manually remap this BEFORE running it through JTAG Tool for validation and for ECC creation.

Example:

Error 250 reading block 0x2.

You don't know where it's remapped as you can't open it, however blocks are remapped in REVERSE order in the reserved mapping area. So if you've dumped a couple of times (you can just dump this block rather than the whole thing to check it) and it's still showing as bad, it's going to be the first mapped area, so 0x3FF on 16MB consoles and 0xFF8 on 256/512 consoles:

so

16MB
nandpro nand.bin: -r16 bb1.bin 3FF 1
nandpro nand.bin: -w16 bb1.bin 2

256/512MB
nandpro nand.bin: -r64 bb1.bin FF8 8
nandpro nand.bin: -w64 bb1.bin 2

Hopefully your NAND should now be accessible in your NAND tools.
 
Last edited:

luminol

BANNED
Sep 14, 2011
164
0
gonna try this now , until now i did little bit diffrent , by the way if my bad block after 10 times dump are always in 00E2 and 02CB , you think i can extract some how my CPUKEY , because i cant boot to xell , (all the solders good + ) but cool runner keep blink green every 5 sec, but nothing move on my TV :(
 

beastyX

VIP Member
Mar 27, 2007
581
0
Lincolnshire, UK
I'm having a problem with a bad block at 0x0032 on a falcon, it simply wont glitch. This is the first time ive EVER had a problem with a bad block in the xell/ecc area so i'm unsure of what normal behaviour is. Ive followed your tutorial martin but i've had no luck booting xell, should the console still glitch but throw up an error or is it normal for it not to glitch due to bad blocks?
 

horwood87

Noob Account
Xell only writes to 1st 50 blocks so if 0x0 to 0x4F is clean, it's not this which is causing the problem.

hi martin do i need to repair my nand please help the ones that need repairing it is saying is

blocks

4B8
1F38
3950
46A0
4E78
5640
63A8
73B0

THANKS ALOT IF IT DOES NOT NEED REPAIRING is it ok to start step 5 of the rgh noob friendly tutorial thanks again
 

Martin C

VIP Member
Jan 10, 2004
36,034
0
Scotland, UK
www.team-xecuter.com
hi martin do i need to repair my nand please help the ones that need repairing it is saying is

blocks

4B8
1F38
3950
46A0
4E78
5640
63A8
73B0

THANKS ALOT IF IT DOES NOT NEED REPAIRING is it ok to start step 5 of the rgh noob friendly tutorial thanks again
Ignore ALL blocks over 1000. Seriously, why are people still dumping 512MB of NAND when they only need 64?

Did the block at 4B8 get remapped? If so, then it'll be remapped when you build the new image. None of the above will stop xell from booting.

---------- Post added at 16:27 ---------- Previous post was at 16:26 ----------

I'm having a problem with a bad block at 0x0032 on a falcon, it simply wont glitch. This is the first time ive EVER had a problem with a bad block in the xell/ecc area so i'm unsure of what normal behaviour is. Ive followed your tutorial martin but i've had no luck booting xell, should the console still glitch but throw up an error or is it normal for it not to glitch due to bad blocks?
post exactly what you ran to remap the block. It'll need remapping for it to work.
 

horwood87

Noob Account
Ignore ALL blocks over 1000. Seriously, why are people still dumping 512MB of NAND when they only need 64?

Did the block at 4B8 get remapped? If so, then it'll be remapped when you build the new image. None of the above will stop xell from booting.



hi martin c thanks for all your help i have read the nand 512 as i do not no no how to read just the 64 how do i do this thanks

also i have not remapped 4B8 as i dont no how please could u tell me how thanks alot
 

Martin C

VIP Member
Jan 10, 2004
36,034
0
Scotland, UK
www.team-xecuter.com
Ignore ALL blocks over 1000. Seriously, why are people still dumping 512MB of NAND when they only need 64?

Did the block at 4B8 get remapped? If so, then it'll be remapped when you build the new image. None of the above will stop xell from booting.


hi martin c thanks for all your help i have read the nand 512 as i do not no no how to read just the 64 how do i do this thanks

also i have not remapped 4B8 as i dont no how please could u tell me how thanks alot
1. read / write NAND with -r64 and -w64 respectively.

2. You don't need to remap as ggbuild/multi_builder will do it for you.
 

Support Our Sponsors