Editing Talk:Flash

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
[[Category:Software]]
= List of files on NOR Flash (OLD/historic) =
= List of files on NOR Flash (OLD/historic) =
'''Note: <span style="color:red!important;">this is the old table that defyboy made<!--// and kept here for crossreference/backup/historic reasons - don't delete!//-->, a more current one with absolute values and for all firmware versions is on the [[Flash|Flash mainpage]]</span>'''
'''Note: <span style="background-color:white; color:red;">this is the old table that defyboy made<!--// and kept here for crossreference/backup/historic reasons - don't delete!//-->, a more current one with absolute values and for all firmware versions is on the [[Flash|Flash mainpage]]</span>'''


The following is a list of files stored in NOR Flash
The following is a list of files stored in NOR Flash
Line 224: Line 226:
'''remarks:'''
'''remarks:'''


* NAND dumps are 239MB because HV masks bootldr, see [[Hardware_flashing#Difference_between_hardware_dumps_and_software_dumps | Difference between hardware dumps and software dumps]]
* NAND dumps are 239MB because HV masks bootldr, see [http://www.ps3devwiki.com/index.php?title=Hardware_flashing#Difference_between_hardware_dumps_and_software_dumps Hardware flashing #Difference between hardware dumps and software dumps]
* trying to read beyond 0xEFC0000-0xFFFFFFF on NAND systems (a region filled with FF's on consoles without OtherOS) results in panic
* trying to read beyond 0xEFC0000-0xFFFFFFF on NAND systems (a region filled with FF's on consoles without OtherOS) results in panic


Line 808: Line 810:
   Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
   Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
        
        
   0E780000 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  No cell_ext_os_area magic present
   0E780700 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  No cell_ext_os_area magic present
   0E780010 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  no header, FF filled instead
   0E780710 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  no header, FF filled instead
   0E780020 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
   0E780720 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
   0E780030  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
   0E780730 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
   
  0E780040  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  FF filled block region same as euss
  0E7801F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
 
  0E780200  00 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF  ....ÿÿÿÿÿÿÿÿÿÿÿÿ
  0E780210  00 00 00 03 FF FF FF FF FF FF FF FF FF FF FF FF  ....ÿÿÿÿÿÿÿÿÿÿÿÿ
  0E780220  00 00 00 00 00 00 00 00 00 00 FF FF FF FF FF FF  ..........ÿÿÿÿÿÿ  same as euss
  0E780230  00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF FF  ............ÿÿÿÿ
  0E780240  00 00 00 00 00 00 00 00 FF FF FF FF FF FF FF FF  ........ÿÿÿÿÿÿÿÿ
 
  0E780250  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  FF filled block region same as euss
  0E7803E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0E7803F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
 
  0E780400  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0E780410  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  FF filled block region instead of 00 filled
  0E7807E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0E7807F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
 
=== OtherOS ===
No Image.initrd.ps3.bin , FF filled instead
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0E780800  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0E780810  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  large FF filled block region
  0EFFFFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0EFFFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
 
=== bootldr ===
[[Flash:bootldr]] @ 0xF000000 - 0xF03FFFF
 
=== 0xF040000 - 0xFFFFFFF ===
same as euss
 
 
== NAND reference (DECHA) ==
DECHA-01/COK-001 nonretail model with FW 3.50 and FW 3.60
 
=== VTRM ===
actual data differs, offsets differ in last section from euss
 
=== post VTRM / pre cell_ext_os_area ===
==== 00F00000 data area ====
start offset same, length differs from euss
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
   
  00F00000  1C 4D F8 6C 8E EC DD F4 3F F4 BA 77 B7 41 9F AA  .MølŽìÝô?ôºw·AŸª
  00F00010  57 CA 8D F4 53 60 0D 9C FB 3D C2 C7 26 1B 69 24  WÊ.ôS`.œû=ÂÇ&.i$
    [...]   
  068861E0  FA 79 61 07 C5 34 B1 44 F6 18 37 ED 94 ED 0D 11  úya.Å4±Dö.7í”í..
  068861F0  D4 8F 05 CF 6B C4 18 F8 B9 F0 33 EC 77 A4 70 8A  Ô..ÏkÄ.ø¹ð3ìw¤pŠ
</pre>
===== 06886200 unreferenced area =====
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
   
  06886200  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  06886210  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  068863E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  068863F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
 
Note: the rest of total of datasections differ or the dump is invalid with FF patterned blocks of missing data
 
=== cell_ext_os_area ===
No cell_ext_os_area magic present or header, FF filled instead
<pre>
  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
     
  0E780000  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  No cell_ext_os_area magic present
  0E780010  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  no header, FF filled instead
  0E780020  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0E780030 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
      
      
   0E780040  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
   0E780040  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
Line 930: Line 853:
=== 0xF040000 - 0xFFFFFFF ===
=== 0xF040000 - 0xFFFFFFF ===
same as euss
same as euss
== NAND reference (COOKIE13) ==
COOKIE-13 preretail model with FW 085.009
=== VTRM ===
actual data (looks encrypted, stats <0.40% for all values), structure and length differs, start offset same as euss
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  00EC0000  CC 04 BF 45 AD D9 69 17 C5 EA 3C EA 46 BD FC 0B  Ì.¿E­Ùi.Åê<êF½ü.
  00EC0010  C0 25 27 6D 3E 26 7B 56 A7 01 41 D7 5D 98 BA BB  À%'m>&{V§.A×]˜º»
    [...]                                                                        large date filled block region
  0EAFFFE0  23 57 03 83 E7 65 AA D7 AB D4 21 DE D2 DF 79 BE  #W.ƒçeª×«Ô!ÞÒßy¾
  0EAFFFF0  B4 AB B6 56 BD 7F 04 56 AC 39 08 C9 BE 2D 97 A6  ´«¶V½..V¬9.ɾ-—¦
</pre>
===== 0EB00000 unreferenced area =====
with length of previous data area different, offset obviously differs from euss
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0EB00000  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0EB00010  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  large FF filled block region
  0EFFFFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0EFFFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
=== post VTRM / pre cell_ext_os_area ===
Not present , see above overlapping VTRM section
=== cell_ext_os_area ===
No cell_ext_os_area , see above overlapping VTRM section
=== OtherOS ===
No Image.initrd.ps3.bin , see above overlapping VTRM section
=== bootldr ===
[[Flash:bootldr]] @ 0xF000000 - 0xF03FFFF
=== 0xF040000 - 0xFFFFFFF ===
up until 0F1BFFFF FF filled, same as euss
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0F040000  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F040010  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F1BFFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F1BFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
=== 0F1C0000 data area ===
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0F1C0000  5B 59 E1 64 96 F8 D0 B5 C5 03 9E 69 09 93 AC C1  [Yád–øеÅ.ži.“¬Á
  0F1C0010  0B 4D A7 5A A3 D8 CB CA 95 C5 61 CC 1B 51 0B 3F  .M§Z£ØËÊ•ÅaÌ.Q.?
    [...]   
  0F1E51E0  9E F9 C6 9F 5C 09 DC 3D CB 54 AE 14 14 4B AC 9D  žùÆŸ\.Ü=ËT®..K¬.
  0F1E51F0  67 2E 96 A3 3F B9 D8 F8 10 D7 98 C3 C7 80 4B 48  g.–£?¹Øø.טÃÇ€KH
</pre>
=== 0F1E5200 nonreferenced area ===
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0F1E5200  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F1E5210  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F2FFFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F2FFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
=== 0F300000 repeative 0x200 data / 0x200 FF blocks ===
then at 0F300000 
[ data of 0x200 length, followed by FF block of 0x200 length ] X repeated until 0x0F30C5FF
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0F300000  91 6E E5 2B 97 39 4D 46 57 BA BC 6A E5 CC 41 07  ‘nå+—9MFWº¼jåÌA.
  0F300010  40 22 E9 E9 F7 51 32 23 D7 08 2D 5E 93 BC 9A 3F  @"éé÷Q2#×.-^“¼š?
    [...] 
     
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
       
    [...]   
  0F30C5E0  35 AC AA B1 69 FD BB 22 8C 06 D6 79 E4 67 24 3D  5¬ª±iý»"Œ.Öyäg$=
  0F30C5F0  63 74 39 03 F1 E8 B4 86 07 FF CC BF 54 28 A0 96  ct9.ñè´†.ÿÌ¿T( –
</pre>
=== 0F30C600 FF block ===
followed by a long FF block
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0F30C600  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F30C610  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F5FFFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F5FFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
=== 0F600000 data block ===
followed by large datablock
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0F600000  38 E9 F3 B1 7F AF 68 E0 27 AC DC 48 1B 2D 87 BB  8éó±.¯hà'¬ÜH.-‡»
  0F600010  00 C8 1C D8 FE EB E6 01 41 D2 A1 EA DC 2E F6 03  .È.Øþëæ.AÒ¡êÜ.ö.
    [...]   
  0F61D1E0  C1 70 9B E0 9D 1B 4D B3 E4 95 6E 42 8B 25 25 E1  Áp›à..M³ä•nB‹%%á
  0F61D1F0  CB CD 96 88 DA A5 DA F2 42 8F 01 1F D5 E4 E9 D2  ËÍ–ˆÚ¥ÚòB...ÕäéÒ
</pre>
=== 0F61D200 FF block ===
followed by large FF block
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0F61D200  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F61D210  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F7001E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F7001F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
=== 0F700200 repeative 0x200 data / 0x200 FF blocks ===
then at 0F700200 
[ data of 0x200 length, followed by FF block of 0x200 length ] X repeated until 0x0F70C7F0
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0F700200  4D AB A4 D7 58 35 59 46 E7 1B C4 D8 88 BA 74 C0  M«¤×X5YFç.Ä؈ºtÀ
  0F700210  18 66 C9 2C 8A FD FE D3 25 F6 52 E7 47 FE B5 5F  .fÉ,ŠýþÓ%öRçGþµ_
    [...] 
     
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
       
    [...] 
  0F70C7E0  E2 1A 1B 96 19 1F 75 4B 02 E3 23 68 95 61 47 37  â..–..uK.ã#h•aG7
  0F70C7F0  FC 69 5D 28 D5 5E E0 60 DE F8 C0 FD E6 3F 72 CE  üi](Õ^à`ÞøÀýæ?rÎ
</pre>
=== 0F61D200 FF block ===
followed by large FF block
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0F70C800  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0F70C810  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FCFFFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FCFFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
=== 0F700200 repeative 0x200 00 blocks / 0x200 FF blocks ===
then at 0F700200 
[ 00 block of 0x200 length, followed by FF block of 0x200 length ] X repeated until 0x0FD3FFFF
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0FD00000  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  0FD00010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
   
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
 
    [...]    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
 
  0FD3FFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FD3FFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
=== 0FD40000 data block ===
followed by large data block
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0FD40000  65 67 E9 83 90 F8 48 8F 9B 13 17 D6 07 22 F0 D5  egéƒ.øH.›..Ö."ðÕ
  0FD40010  B0 10 CB 58 73 42 E1 B3 60 40 3E A4 EE C8 DF 7C  °.ËXsBá³`@>¤îÈß|
    [...]
  0FD64BE0  21 A9 AC 85 21 13 1E C4 89 F1 B5 97 14 13 35 47  !©¬…!..ĉñµ—..5G
  0FD64BF0  CF C1 94 1F E2 B6 BB E9 A7 5B B0 7E 6B 9A 9C CF  ÏÁ”.ⶻé§[°~kšœÏ
</pre>
=== 0FD64C00 FF block ===
followed by large FF block
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0FD64C00  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FD64C10  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FD7FFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FD7FFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
=== 0FD80000 data block ===
followed by large data block
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0FD80000  A1 A6 19 39 40 F7 D5 66 0C D6 75 51 15 0D B3 CA  ¡¦.9@÷Õf.ÖuQ..³Ê
  0FD80010  2D 57 87 94 59 5A B8 EE 24 A9 63 FA 58 31 BA 58  -W‡”YZ¸î$©cúX1ºX
    [...]
  0FDAD1E0  13 9F 31 B5 79 44 0C 26 37 8C 3B B1 20 DB 09 AD  .Ÿ1µyD.&7Œ;± Û.­
  0FDAD1F0  D0 7B AD 48 EB 8C 6E 9D BF A9 95 9D 87 E0 64 0B  Ð{­HëŒn.¿©•.‡àd.
</pre>
=== 0FDAD200 FF block ===
followed by large FF block
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0FDAD200  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FDAD210  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FE7FFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FE7FFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
=== 0FE80000 repeative 0x200 00 blocks / 0x200 FF blocks ===
then at 0FE80000 
[ 00 block of 0x200 length, followed by FF block of 0x200 length ] X repeated until 0x0FEBF5FF
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0FE80000  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  0FE80010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
   
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
 
    [...]    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
       
    [...]    FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
 
  0FEBF5E0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  0FEBF5F0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
</pre>
=== 0FEBFE00 FF block ===
followed by large FF block until EOF
<pre>  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  0FEBFE00  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FEBFE10  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
    [...] 
  0FFFFFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  0FFFFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>


== NAND reference (bluemimmo) ==
== NAND reference (bluemimmo) ==
CECHA-06/COK-001 with 3.60 OFW
CECHA-06/COK-001 with 3.60 OFW
=== VTRM ===
<pre>
  Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
  00D80000  53 43 45 49 56 54 52 4D 00 00 00 00 00 00 00 A8  SCEIVTRM.......¨
  00D80010  00 00 00 00 00 E8 02 00 00 00 00 00 00 00 00 28  .....è.........(
  00D80020  00 00 00 00 56 54 52 4D 00 00 00 00 00 00 00 04  ....VTRM........
  00D80030  DD 8F ED 9A 82 76 B5 2C 2A 99 A2 ED E3 AF B8 4E  Ý.íš‚vµ,*™¢í㯸N
  00D80040  F9 F6 0F CE 00 00 00 00 00 00 00 00 00 E8 27 20  ùö.Î.........è'
  00D80050  00 00 00 00 00 00 00 60 00 00 00 00 00 00 09 20  .......`.......
  00D80060  04 00 00 00 02 00 00 05 10 70 00 05 FF 00 00 01  .........p..ÿ...
  00D80070  9D 2B 1C B4 04 09 59 5C 7B 6A A6 F6 B4 BB A6 FF  .+.´..Y\{j¦ö´»¦ÿ
  00D80080  CA C2 B0 E9 34 3E 39 3C F4 1D 00 E8 B5 42 89 D7  Ê°é4>9<ô..èµB‰×
  00D80090  C5 12 67 F3 A2 DD 9B 5E AF A1 FE DB 19 27 C9 CB  Å.gó¢Ý›^¯¡þÛ.'ÉË
  00D800A0  4F DE D5 CF 7A B2 C2 7B 8C 44 BE 99 54 DB 99 93  OÞÕÏz²Â{ŒD¾™TÛ™“
  00D800B0  00 00 00 00 00 00 00 00 FF FF FF FF FF FF FF FF  ........ÿÿÿÿÿÿÿÿ
  00D800C0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  00D800D0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  00D800E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
  00D800F0  FF FF FF FF FF FF FF FF 00 00 00 00 00 EB E4 8C  ÿÿÿÿÿÿÿÿ.....ëäŒ
  00D80100  00 00 00 00 00 00 00 14 86 1E A7 45 DB 22 16 01  ........†.§EÛ"..
  00D80110  EF 94 71 06 CD 91 7B 0F 95 D1 36 71 FF FF FF FF  ï”q.Í‘{.•Ñ6qÿÿÿÿ
  00D80120  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>


=== cell_ext_os_area ===
=== cell_ext_os_area ===
Line 1,195: Line 867:
   0FFFFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ</pre>
   0FFFFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ</pre>


== NAND reference CECHG04/SEM-001(sinsizer) ==
ros0: OFW 4.40<br />
ros1: OFW 4.31<br />
metldr: 0E77 => E7B0<br />
bootldr: 2E8C => 2E900


=== post VTRM / pre cell_ext_os_area ===
== NAND reference (sinsizer) ==
Same structure as the other till 00F42000
<!--// placeholder - NAND data missing / not contributed so reference data not available atm //-->
==== 00F42000 data area (size 0xC065600)====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F


00F42000  AB 0E 33 D0 51 66 AA DD DA A0 F1 C3 CC 22 98 61  «.3ÐQfªÝÚ ñÃÌ"˜a
==== 00F42000 data area ====
00F42010  25 51 0C 1C FC 9B 56 AA 85 4E B1 C5 CA 73 01 3C  %Q..ü›Vª…N±ÅÊs.<
Offsets of data areas and unreferenced areas varies till 0xD700000!
[...]
0CFA75E0  73 49 FA 50 54 D5 1C B3 5E 84 E3 7E D9 4B BE 11  sIúPTÕ.³^„ã~ÙK¾.
0CFA75F0  99 DB C4 35 64 B5 BA CA 31 0A 0F 9E 58 B6 41 78  ™ÛÄ5dµºÊ1..žX¶Ax
</pre>
===== 0CFA7600 unreferenced area (size 0x398A00) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0CFA7600  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0CFA7610  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0D33FFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D33FFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
==== 00D340000 - 00D34F9FF (0x200 Blocks) ====
0x200 data and unreferenced Blocks.
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D340000  F8 71 BD A7 B0 58 54 75 98 00 34 AC 55 06 3C 26  øq½§°XTu˜.4¬U.<&
0D340010  25 3A 5A 86 31 4D 36 97 3C E6 83 4E 2B 10 5A 6D  %:Z†1M6—<æƒN+.Zm
[...]
0D3401E0  A7 40 E6 4B 2A B3 16 61 9F D3 99 96 7A 36 5B 26  §@æK*³.aŸÓ™–z6[&
0D3401F0  92 4B C1 03 91 9F 27 1F 16 49 8C 25 7E B9 6B E2  ’KÁ.‘Ÿ'..IŒ%~¹kâ
0D340200  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D340210  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0D3403E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D3403F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D340400  31 C0 2C 69 BA 50 73 00 AE D6 37 73 13 B9 9B A9  1À,iºPs.®Ö7s.¹›©
0D340410  DF 7C 01 C2 FD 2C E8 0F BB 4D AE BA C9 D0 F6 A9  ß|.Âý,è.»M®ºÉÐö©
.
. each Block (size 0x200)
.
0D34F200 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D34F210 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...] 3 FF Blocks (size 0x600)
0D34F7E0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D34F7F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D34F800 56 C9 9C 33 15 EA 73 27 08 57 40 B1 85 0A BF 10  VÉœ3.ês'.W@±….¿.
0D34F810 1A 23 30 CC 84 1D 61 A4 7E AB FA 54 3C 86 A3 19  .#0Ì„.a¤~«úT<†£.
[...] 1 Block (size 0x200)
0D34F9E0 7E 62 C6 B5 A4 98 1C 3C 16 C5 4E DF 62 B9 47 E9  ~bƵ¤˜.<.ÅNßb¹Gé
0D34F9F0 23 82 19 D0 2E 36 DF DF D6 CA AA 5D C5 B6 07 DF  #‚.Ð.6ßßÖʪ]Ŷ.ß
</pre>
===== 0D34FA00 unreferenced area (size 0x3B0600) =====
<pre>
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D34FA00  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D34FA10  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0D6FFFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D6FFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
==== 0D700000 data area (size 0x200) ====
Also found at 0F700000 (missing cell_ext_os_area header) and 0CF00000 (with cell_ext_os_area header)
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D700000  4C 21 70 8F DF 1C 65 49 23 E5 2C C1 D4 09 CC 71  L!p.ß.eI#å,ÁÔ.Ìq
0D700010  F1 05 2E 4D 41 FF 88 D9 F2 E3 FE 84 7C F6 A3 3F  ñ..MAÿˆÙòãþ„|ö£?
[...]
0D7001E0  A1 15 A8 02 3B 90 62 F2 A6 F1 9A BF 49 21 20 31  ¡.¨.;.bò¦ñš¿I! 1
0D7001F0  16 5F 29 CD A5 50 B8 79 7D 15 11 94 B6 8C 27 87  ._)Í¥P¸y}..”¶Œ'‡
</pre>
===== 0D700200 unreferenced area (size 0x1E00) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D700200  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D700210  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0D701FE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D701FF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
==== 0D702000 data area (size 0x4D200) ====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D702000  B4 88 04 F1 A5 9C E7 64 BD 35 0A 91 7E 60 B7 B5  ´ˆ.ñ¥œçd½5.‘~`·µ
0D702010  42 66 0A 14 1E 66 30 B8 CB 0B D3 81 61 F0 CE 99  Bf...f0¸Ë.Ó.aðΙ
[...]
0D74F1E0  43 B5 D3 F8 57 20 D6 7F 75 5C B5 DF 28 81 32 0A  CµÓøW Ö.u\µß(.2.
0D74F1F0  C1 3F E5 FE 1B BF 05 5D DA DC C2 B6 76 05 AD F1  Á?åþ.¿.]Úܶv..ñ
</pre>
===== 0D74F200 unreferenced area (size 0x600) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D74F200  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D74F210  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0D74F7E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D74F7F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
==== 0D74F800 data area (size 0x42200) ====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D74F800  56 C9 9C 33 15 EA 73 27 08 57 40 B1 85 0A BF 10  VÉœ3.ês'.W@±….¿.
0D74F810  1A 23 30 CC 84 1D 61 A4 7E AB FA 54 3C 86 A3 19  .#0Ì„.a¤~«úT<†£.
[...]
0D7919E0  32 0D A4 EC 6D 5B F8 E3 42 55 E2 FF 69 46 C0 4F  2.¤ìm[øãBUâÿiFÀO
0D7919F0  98 F0 D8 AB 7C 76 D2 09 F3 2F 09 4B CE 99 76 23  ˜ðØ«|vÒ.ó/.KΙv#
</pre>
===== 0D791A00 unreferenced area (size 0x600) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D791A00  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D791A10  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0D791FE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D791FF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
==== 0D792000 data area (size 0x200) ====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D792000  8E 24 22 F5 99 B7 B2 FE 1A 02 8D 1D 03 42 ED 56  Ž$"õ™·²þ.....BíV
0D792010  51 E6 C3 A0 AE BA 27 0B E2 29 14 D3 3F 05 AF C1  Qæ஺'.â).Ó?.¯Á
[...]
0D7921E0  99 F5 22 6D CD D3 04 FA 76 34 8D 85 66 5B 7A CD  ™õ"mÍÓ.úv4.…f[zÍ
0D7921F0  69 88 06 85 F2 AD 62 3C 3B 31 A3 CE C2 40 51 C2  iˆ.…ò.b<;1£ÎÂ@QÂ
</pre>
===== 0D792200 unreferenced area (size 0x600) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D792200  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D792210  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0D7927E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D7927F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
==== 0D792800 data area (size 0x200) ====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D792800  4A BE BF 27 59 AA FF 01 83 06 36 04 E6 AA E2 74  J¾¿'Yªÿ.ƒ.6.æªât
0D792810  8E CF 92 2F CC 40 16 01 FE 66 97 D0 EA B4 B9 04  ŽÏ’/Ì@..þf—Ðê´¹.
[...]
0D7929E0  27 3C 22 2B 61 67 95 58 FF D0 E3 30 11 40 80 9F  '<"+ag•XÿÐã0.@€Ÿ
0D7929F0  5E 19 19 D5 A8 98 E9 28 D9 D9 40 F8 BA 30 72 27  ^..Õ¨˜é(ÙÙ@øº0r'
</pre>
===== 0D792A00 unreferenced area (size 0xBED800) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0D791A00  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0D791A10  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0E3801E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E3801F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
==== 0D340000 - 0D34F9FF (0x200 Blocks) ====
Maybe backup blocks or bad mapping. Data Blocks are equal to prior data blocks.
Seen in 0D74F800 data area.
 
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0E380200  53 5A F5 55 DE 8E 6A 78 AC 78 DB 9B 3A EF 13 9A  SZõUÞŽjx¬xÛ›:ï.š
0E380210  D7 D2 13 70 B2 05 C9 A0 81 E3 CF B9 41 CF 25 1B  ×Ò.p².É .ãϹAÏ%.
[...]
0E3803E0  41 76 D4 0E 1C 99 C8 11 8B B4 45 12 E1 FD C2 0F  AvÔ..™È.‹´E.áýÂ.
0E3803F0  44 7B C7 0C E9 9A A4 F9 91 94 CD C8 91 F8 47 75  D{Ç.隤ù‘”ÍÈ‘øGu
0E380400  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E380410  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0E3805E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E3805F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E380600  F6 F8 1B 33 21 1F 32 E4 FE 9E 3D 19 21 66 3B A2  öø.3!.2äþž=.!f;¢
0E380610  7F 85 CB 4C 91 8E F7 A1 C2 DC 18 C3 5D 50 C2 D8  .…ËL‘Ž÷¡ÂÜ.Ã]PÂØ
.
. 0x200 Blocks FF and data areas repepeats till 0E38FFFF
.
0E38FFE0  35 3F C1 7E E3 19 83 D8 C8 20 81 71 D8 1D 21 6E  5?Á~ã.ƒØÈ .qØ.!n
0E38FFF0  07 11 D2 3E 19 24 A9 BC 24 4B 46 3D 16 16 0C 65  ..Ò>.$©¼$KF=...e
</pre>
===== 0E390000 unreferenced area (size 0x370000) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0E390000  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E390010  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0E6FFFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E6FFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
==== 0E700000 data area (size 0x200) ====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0E700000  64 F0 28 49 C5 4F ED 7B AE D7 88 C9 22 64 1E 69  dð(IÅOí{®×ˆÉ"d.i
0E700010  3C 7E 94 3C 35 4D 80 F7 37 AB A7 20 D7 C6 C8 C7  <~”<5M€÷7«§ ×ÆÈÇ
[...]
0E7001E0  39 C5 4C ED 8C C7 CE 08 EE 0B FD E7 69 85 F2 28  9ÅLíŒÇÎ.î.ýçi…ò(
0E7001F0  7C FD F2 9C 7D 2D D3 E1 2A B8 6F 19 FF 25 F8 BC  |ýòœ}-Óá*¸o.ÿ%ø¼
</pre>
===== 0E700200 unreferenced area (size 0x1E00) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0E700200  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E700210  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0E701FE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E701FF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
==== 0E700000 data area (size 0x59A00) ====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0E702000  A2 DC 30 17 47 6D E1 53 18 F9 DB D8 9D 87 27 5E  ¢Ü0.GmáS.ùÛØ.‡'^
0E702010  3D C6 C6 E7 D9 DC 86 E5 39 53 D1 7F 7C 12 3A 7E  =ÆÆçÙ܆å9SÑ.|.:~
[...]
0E75B9E0  A2 E6 63 4F CA 80 E0 D0 A1 59 A5 B3 47 8F 73 F1  ¢æcOÊ€àСY¥³G.sñ
0E75B9F0  C6 68 5E A6 57 72 00 CE B7 97 B1 C1 78 2A 26 9A  Æh^¦Wr.η—±Áx*&š
</pre>
===== 0E75BA00 unreferenced area (size 0x24600) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0E75BA00  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E75BA10  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0E77FFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E77FFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
 
=== cell_ext_os_area ===
[[Flash:cell_ext_os_area]]
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0E780000  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E780010  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ      missing header
0E780020  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0E7801F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E780200  00 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF  ....ÿÿÿÿÿÿÿÿÿÿÿÿ
0E780210  00 00 00 03 FF FF FF FF FF FF FF FF FF FF FF FF  ....ÿÿÿÿÿÿÿÿÿÿÿÿ
0E780220  00 00 00 00 00 00 00 00 00 00 FF FF FF FF FF FF  ..........ÿÿÿÿÿÿ
0E780230  00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF FF  ............ÿÿÿÿ
0E780240  00 00 00 00 00 00 00 00 FF FF FF FF FF FF FF FF  ........ÿÿÿÿÿÿÿÿ
0E780250  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0E7807E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E7807F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
 
[https://www.kernel.org/pub/linux/kernel/people/geoff/cell/ps3-linux-docs/BootLinuxAndInstallation.html crosschecking]
 
=== OtherOS ===
[[Flash:OtherOS]]
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0E780800  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0E780810  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0EB021E0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0EB021F0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
 
==== 0EB02200 - 0EB05FFF data area (0x200 Blocks) ====
Maybe backup blocks or bad mapping. Data blocks are equal to prior data blocks.
Seen in 0D702000 data area.
 
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0EB02200  18 FF 37 DF F2 B3 82 82 8C 20 E8 79 05 8B 18 89  .ÿ7ßò³‚‚Œ èy.‹.‰
0EB02210  39 4D B7 8C 3D 5D 0B 7F E3 80 C8 4F E3 FB 99 46  9M·Œ=]..ã€ÈOãû™F
[...]
0EB023E0  EF FB F0 37 9C B9 F8 B1 1B 04 BA 3A 5B C3 F6 6D  ïûð7œ¹ø±..º:[Ãöm
0EB023F0  0D C5 F2 A1 FB 8E 06 A8 43 76 BD 8B 86 23 40 EF  .Åò¡ûŽ.¨Cv½‹†#@ï
0EB02400  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0EB02410  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
.
. 0x200 Blocks FF and data areas repepeats till 0EB05FFF
.
0EB05FE0  75 9A 64 74 57 DA 61 DD 8C 90 AF D4 A9 E6 8B 9B  ušdtWÚaÝŒ.¯Ô©æ‹›
0EB05FF0  10 A5 44 0F 53 F1 67 96 C8 A1 1D 22 48 54 31 25  .¥D.Sñg–È¡."HT1%
</pre>
===== 0EB06000 unreferenced area (size 0x4FA000) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0EB06000  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0EB06010  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0EFFFFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0EFFFFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
=== bootldr ===
[[Flash:bootldr]] @ 0xF000000 - 0xF03FFFF
 
=== unreferenced area ===
===== 0F040000 unreferenced area (size 0xB00000) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0FB3FFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0FB3FFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0FB3FFE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0FB3FFF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
 
==== 0F700000 data area (size 0x200) ====
Seen in 0D700000 data area. Maybe backup block or bad mapping.
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
0F700000  4C 21 70 8F DF 1C 65 49 23 E5 2C C1 D4 09 CC 71  L!p.ß.eI#å,ÁÔ.Ìq
0F700010  F1 05 2E 4D 41 FF 88 D9 F2 E3 FE 84 7C F6 A3 3F  ñ..MAÿˆÙòãþ„|ö£?
[...]
0F7001E0  A1 15 A8 02 3B 90 62 F2 A6 F1 9A BF 49 21 20 31  ¡.¨.;.bò¦ñš¿I! 1
0F7001F0  16 5F 29 CD A5 50 B8 79 7D 15 11 94 B6 8C 27 87  ._)Í¥P¸y}..”¶Œ'‡
</pre>
===== F700200 unreferenced area (size 0x1E00) =====
<pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
 
0F700200  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0F700210  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
[...]
0F701FE0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
0F701FF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
</pre>
==== 0F702000 - F705DFF (0x200 Blocks) ====
As before alternating 0x200 datablocks and ff blocks.
Data seen in prior 0D702000 data area.
 
'''The whole section till the end contains these 0x200 blocks of data and FF. Some bigger FF gaps in between.'''


==== 0D700000 data area ====
Also found at 0xF700000 (missing cell_ext_os_area header)and 0xCF00000 (with cell_ext_os_area header)




----
----
== Hidden value in VTRM (NOR Flash) ==
[[Flash:cvtrm]]
* from offset 0xEDD748 count 199 (0xC7) values of a 0x14 byte value (hash1) until you reach 0xEDE6D4, where you'll find another 0x14 byte value (hash2)
* from there, count 520 (321 + 199) values of the same repeated 0x14 byte value until you reach the second offset where you'll find the same hash of the first 199 step count (you can just search for the value to encounter it faster).
* in the area in the middle there's a third 0x14 value (hash3) at offset 0xEE4010 (repeated also twice in each vtrm)
maybe these are all sha1 hashes of something?
* 0xEE4010 should be an sha1 of root hsec, if syscon sends different hsec the sha1 wont match to VTRM it will lead to an [[RSOD]]. (root hash/ root hsec - srh)
* vtrm table is almost equally build up like PFD files.
===Experiments (with above hashes)===
* replacing both hash 2 with either hash3 or hash1 doesn't result in RSOD. why? (possibly hash1 and hash3 are fallback hashes?)
* filling hash2 with any other value besides hash1/2/3 in hash2 WILL result in RSOD
* no considerable changes found with experiment. most considerable changes would happen when the guilty is hardware and not software.
* hash_repeated:hmac_sha1(srk,empty data)
* hash_hidden:hmac_sha1(srk,0x58 bytes of empty sector)
* srh is the hash of the signature table (the giant table with the repeated hashes and the hidden one) hashed with srk key
* header hash is just a hmac sha1 of hmac sha1 of vtrm section without header (0x28 bytes) and signature table(again, with srk key, hashed twice)
= RAW NAND + bad blocks =
Each page of a block has 2048 bytes of data plus a 64 bytes oob (out of bounds) or spare area. This oob area contains 4*14 bytes ecc data for 4*512 bytes of actual data (of which 10 bytes are the actual ecc plus 4 unknown bytes). It totally unrelated to bad blocks. The remaining 8 bytes of oob contain eg. information of block status (good or bad) and the block mapping (physical block location in nand mapped to logical block location in merged dump).
The PS3 has many different ways of doing this depending on the location of bad blocks. That's [[:File:Nand-extract-error2.png|where flowrebuilder fails]], because it doesn't know all the different ways of doing it (if it [[:File:Nand-extract-noerror.png|doesn't fail]] it means it had bad blocks in a way that Flowrebuilder understands).
== As requoted from NORpatch ==
https://raw.githubusercontent.com/hjudges/NORway/824bab547698ebac8c69158d15e0c18d866c0a95/norpatch_README.txt
<div style="border-width: 1px; border-style:dashed; border-color:#000000; padding: 10px; background-color:#FFFFFF; color:#000000; ">Some additional information on how to use "norpatch" for checking ECC errors of raw NAND dumps...
<nowiki>***</nowiki> All credits go to "RPS" who developed/reversed the ECC algo (according to Flow Rebuilder title). <nowiki>***</nowiki>
The algo was like forever available in Flow Rebuilder, but it was only used to create new ECCs for patched dumps. I actually don't know why there's no "checking" function. I've been using it for over a year now to validate nand dumps, cause it's a handy *additional* verification step. I've been asked many times to release this, but I didn't develop the algo, so I never did. Since the Flow Rebuilder source code is floating around anyway, I figured what the heck. Feel free to complain.. :P
It's important to understand what ECC (Error Correcting Code) is and what it does (and more importantly - what it doesn't do!):
* A PS3 NAND has a 10 byte ECC for each 512 byte sector.
* The PS3 uses the ECC to detect and correct errors (as everything with Sony it's a propriatary algo, but commonly a 10 byte ECC can correct up to 4 invalid bytes).
* RPS' implementation can only be used to detect errors, not to correct them!
Where ECC fails:
* Your flasher returned all 0xFF for a sector/page/block instead of correct data. This won't be detected by ECC, as the ECC for 512 * 0xFF = 10 * 0xFF.
* Your flasher swapped pages while dumping, e.g. page 0 is located at the offset of page 1 and vice versa. The ECC will be correct, but the dump is still invalid.
What do you do when there are ECC errors?
* ECC errors are normal and it does happen that a NAND cell loses its content. Usually the PS3 will correct the error.
* As a rule of thumb you can say that up to 10 errors per dump are a valid range. If you get significantly more than that, you should worry (in case of a bad dump, you'll usually get hundreds of errors - or no errors at all if your dump is just 0xFF's :) ).
* When there're 10 or less errors, check the location of the errors - this requires some calculation: you'll get a block number for the error, which is the physical block in your raw dump. You have to convert this physical block number to a logical offset in your merged dump generated by Flow Rebuilder. When unscrambling dumps, Flow Rebuilder will create a text file called "nand0_phy_mapping.txt" and "nand1_phy_mapping.txt". Open the file that corresponds to the dump you've checked for ECC errors (0=top, 1=bottom). First column is the physical block, second column is the logical block. Locate the physical block number reported by the ECC check, take the corresponding (decimal) logical block number and multiply it with 0x40000 (hex). The result is the offset in your merged dump. Anything from 0x00C0000 to 0x0EBFFFF (ROS 0/1) and from 0x0F00000 to 0xEFFFFFF (VFlash) can usually be ignored. For everything else you should worry.
In general:
* Always make multiple dumps and file compare them!
* ECC checks don't eliminate the need for additional validation!
* Additionally use one or all of the awesome dump validators out there! "norpatch" is not a full-fletched validator!
* I personally use BwE, especially because it will catch the 0xFF ECC issue mentioned before with its repetition check (I guess Swizzy's tool does this as well now).
<br /><br />
-- judges</div>


= Flash Samples =
= Flash Samples =
Line 1,652: Line 949:
** https://github.com/anaria28/NOR-Dump-Tool
** https://github.com/anaria28/NOR-Dump-Tool
* https://github.com/Swizzy/PS3DumpChecker
* https://github.com/Swizzy/PS3DumpChecker
* flash_ident.c: http://pastie.org/private/vlrxgaawtbqwggyv4ggwg


== Generic Recommendations ==
== Generic Recommendations ==
* The information in this wiki was given [[http://www.gnu.org/licenses/old-licenses/fdl-1.2.txt freely by many volunteers]] ; it would be most fair to release any program based on it, as opensource with the community accordingly (tip: [http://git.ps3dev.net/ public git-repo]).
* The information in this wiki was given [[http://www.gnu.org/licenses/old-licenses/fdl-1.2.txt freely by many volunteers]] ; it would be most fair to release any program based on it, as opensource with the community accordingly (tip: [http://git.ps3dev.net/ public git-repo]).
* Please link to wiki so that others might improve the code and also know on what information it is based as well as other informative pages.
* Please link to ps3devwiki so that others might improve the code and also know on what information it is based as well as other informative pages.
* Feel free to ask questions on the talkpages when having trouble understanding mainpage or when not knowing what to check for.
* Feel free to ask questions on the talkpages when having trouble understanding mainpage or when not knowing what to check for.
* Make checkers/extractors bytedirection aware and byteswap when needed
* Make checkers/extractors bytedirection aware and byteswap when needed
Line 1,676: Line 972:
* Check for downgradeability
* Check for downgradeability
* Check statistics in range with known FW versions (3.55 is considered base on wiki unless documented)
* Check statistics in range with known FW versions (3.55 is considered base on wiki unless documented)
= With / Without =
* Flash Without EID5 : Boots Fine
* Flash Without EID0 Sections 1 2 3 4 5 7 8 9 and With Sections 0 6 A : Boots Fine
* Flash With only MAC Address on cISD and Header: Boots Fine
=Experimental tables=
{| class="wikitable"
|+NOR flash
! rowspan="2" | type !! rowspan="2" colspan="4" | Regions !! colspan="3" | Start Offset !! colspan="3" | Length !! Notes
|-
! Hex !! Blocks !! Bytes !! Hex !! Blocks !! Bytes
|-
| {{generic}} || rowspan="8" | [[Flash:Second_Region|Second<br>Region]] || rowspan="2" | Partition table || colspan="2" | [[Flash:0FACE0FF_DEADFACE|0FACE0FF DEADFACE]] ||  ||  ||  ||  ||  ||  ||
|-
| {{generic}} || colspan="2" | erased bytes ||  ||  ||  ||  ||  ||  ||
|-
| {{generic}} || region 0 || colspan="2" | missing ||  ||  ||  ||  ||  ||  ||
|-
| {{generic}} || region 1 || colspan="2" | [[Flash:CELL_EXTNOR_AREA|CELL_EXTNOR_AREA]] ||  ||  ||  ||  ||  ||  ||
|-
| {{generic}} || rowspan="4" | region 2 || colspan="2" | [[Flash:CELL_EXTNOR_AREA#F40000|CRL1]] ||  ||  ||  ||  ||  ||  ||
|-
| {{generic}} || colspan="2" | [[Flash:CELL_EXTNOR_AREA#F60000|DRL1]] ||  ||  ||  ||  ||  ||  ||
|-
| {{generic}} || colspan="2" | [[Flash:CELL_EXTNOR_AREA#F80000|CRL2]] ||  ||  ||  ||  ||  ||  ||
|-
| {{generic}} || colspan="2" | [[Flash:CELL_EXTNOR_AREA#FA0000|DRL2]] ||  ||  ||  ||  ||  ||  ||
|-
| {{perconsole}} || colspan="4" | [[Flash:bootldr|bootldr]] ||  ||  ||  ||  ||  ||  ||
|-
|}
<!-- old tests, hidden
{| class="wikitable"
|+NOR flash
! rowspan="2" | type !! rowspan="2" | Region !! rowspan="2" colspan="3" | Name !! colspan="2" | Hexadecimal !! colspan="2" | Blocks !! colspan="2" | Decimal !! rowspan="2" | Notes
|-
! Start Offset !! Length !! Start Offset !! Length !! Start Offset !! Length
|-
| {{generic}} || rowspan="6" style="text-align:center" | [[Flash:Second_Region|2]] || colspan="3" | [[Flash:0FACE0FF_DEADFACE|0FACE0FF DEADFACE]] || 0xF00000 || 0x1000 || 0x7800 ||  ||  || 4096 bytes ||
|-
| {{generic}} || colspan="3" | [[Flash:CELL_EXTNOR_AREA|CELL_EXTNOR_AREA]] || 0xF20000 || 0x20000 || 0x7900 ||  ||  || 131072 bytes ||
|-
| {{generic}} || colspan="3" | [[Flash:CELL_EXTNOR_AREA#F40000|CRL1]] || 0xF40000 || 0x20000 || 0x7A00 ||  ||  || 131072 bytes ||
|-
| {{generic}} || colspan="3" | [[Flash:CELL_EXTNOR_AREA#F60000|DRL1]] || 0xF60000 || 0x20000 || 0x7B00 ||  ||  || 131072 bytes ||
|-
| {{generic}} || colspan="3" | [[Flash:CELL_EXTNOR_AREA#F80000|CRL2]] || 0xF80000 || 0x20000 || 0x7C00 ||  ||  || 131072 bytes || same as CRL1
|-
| {{generic}} || colspan="3" | [[Flash:CELL_EXTNOR_AREA#FA0000|DRL2]] || 0xFA0000 || 0x20000 || 0x7D00 ||  ||  || 131072 bytes || same as DRL1
|-
| {{perconsole}} || rowspan="1" style="text-align:center" | <small>[[Flash:Lv0ldr_Region|lv0ldr]]</small> || colspan="3" | [[Flash:bootldr|bootldr]] || 0xFC0000 || 0x40000 || 0x7E00 ||  ||  || 262144 bytes ||
|-
|}
-->
= Erasing blocks =
The PS3 erases blocks in chunks of 0x40000 bytes, this is a sample of how the blocks are erased in a ros area (with offsets relatives to the start of the ros area):
Erase block 0 begins 0x0
Erase block 1 begins 0x40000
Erase block 2 begins 0x80000
Erase block 3 begins 0xC0000
Erase block 4 begins 0x100000
Erase block 5 begins 0x140000
Erase block 6 begins 0x180000
Erase block 7 begins 0x1C0000
Erase block 8 begins 0x200000
Erase block 9 begins 0x240000
Erase block 10 begins 0x280000
Erase block 11 begins 0x2C0000
Erase block 12 begins 0x300000
Erase block 13 begins 0x340000
Erase block 14 begins 0x380000
Erase block 15 begins 0x3C0000
Erase block 16 begins 0x400000
Erase block 17 begins 0x440000
Erase block 18 begins 0x480000
Erase block 19 begins 0x4C0000
Erase block 20 begins 0x500000
Erase block 21 begins 0x540000
Erase block 22 begins 0x580000
Erase block 23 begins 0x5C0000
Erase block 24 begins 0x600000
Erase block 25 begins 0x640000
Erase block 26 begins 0x680000
Erase block 27 begins 0x6C0000
Please note that all contributions to PS3 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS3 Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)

Templates used on this page: