Editing Flash:cvtrm

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:
 
=vtrm=
=Description=
used by [[Hypervisor_Reverse_Engineering#VTRM|VTRM Services]], [[SC_Manager#0x9000_-_SC_Manager|0x9000 - SC Manager]], [[PARAM.PFD]] for Savegames, Trophy, DRL/CRL.<br />
Used by [[Hypervisor_Reverse_Engineering#VTRM|VTRM Services]], [[SC_Manager#0x9000_-_SC_Manager|0x9000 - SC Manager]], [[PARAM.PFD]] for Savegames, Trophy, DRL/CRL.
 
Corruption of this region leads to [[Boot_modi#RSOD|RSOD]] repairable with [[RSOD Fix]]
Corruption of this region leads to [[Boot_modi#RSOD|RSOD]] repairable with [[RSOD Fix]]


Size: 0x40000. Location NOR: 0xEC0000 - 0xEFFFFF
== cvtrm ==
 
size: 0x40000 <br />
VTRM related pages:
Location NOR: 0xEC0000 - 0xEFFFFF
* [[Talk:Flash#VTRM]]
* [[Hypervisor Reverse Engineering#VTRM]]
* [[Fixing DRL and CRL Hashes]]
* [[SC Manager#0x9000 - SC Manager]]
* [[Talk:System Controller Firmware]]
* [[Iso module#Communicating w.2F sc iso.self]]
* [[PARAM.PFD]]
* [[Ps3vuart-tools#ps3dm]]
* [[Per Console Keys#cVTRM]]
* [[RSOD Fix]]


=Structure=
== VTRM Structure ==
 
==NOR VTRM Structure==
{| class="wikitable"
{| class="wikitable"
|-
|-
! Offset !! Size !! Example !! Description !! Notes
! Area !! Offset !! Size !! Example !! Description !! Notes
|-
|-
| 0x00 || 0x08 (8 bytes) || 000000005654524D || '''magic''' || '''VTRM''' (in ASCII)
| rowspan="4" style="background-color:#DDDDDD;" | '''header '''|| 0x00 || 0x08 (8 bytes) || 000000005654524D || '''magic''' || '''VTRM''' (in ASCII)
|-
|-
| 0x08 || 0x08 (8 bytes) || 0000000000000004 || '''version''' ||  
| 0x08 || 0x08 (8 bytes) || 0000000000000004 || '''version''' ||  
|-
|-
| 0x10 || 0x14 (20 bytes) || 0D20534FEEE806E3E7AC57E1E9646CBFEDBE69E1 || '''sha 1 hash''' ||
| 0x10 || 0x14 (20 bytes) || 0D20534FEEE806E3E7AC57E1E9646CBFEDBE69E1 || '''sha 1 hash''' ||
|-
|}
{| class="wikitable"
|-
! Offset !! Size !! Example !! Description !! Notes
|-
|-
| 0x24 || 0x4 (4 bytes) || 000000E0 (NOR)|| Unknown ||  
| 0x24 || 0x4 (4 bytes) || 000000E0 (NOR)|| Unknown ||  
|-
|-
| 0x28 || 0x8 (8 bytes)|| 0000000000000209 (NOR) || ''X and Y tables reserved entries'' || '''521''' entries (NOR)
| rowspan="3" style="background-color:#DDDDDD;" | '''entry <br /> header''' || 0x28 || 0x8 (8 bytes)|| 0000000000000209 (NOR) || ''X and Y tables reserved entries'' || '''521''' entries (NOR)
|-
|-
| 0x30 || 0x8 (8 bytes)|| 0000000000000412 (NOR) || ''Protected files table reserved entries'' || '''1042''' entries (NOR)
| 0x30 || 0x8 (8 bytes)|| 0000000000000412 (NOR) || ''Protected files table reserved entries'' || '''1042''' entries (NOR)
Line 48: Line 28:
|}
|}


==NAND VTRM Structure==
*Notes/speculation/brainstorming
**The offsets in the table are relative
**the start offset of some unknown areas can be find by searching for 0x1070. The value has 4 bytes lenght, and is followed by another value of 4 bytes lenght that probably is the offset or sizes of the next areas (and probably in blocks of 512 bytes). Some examples  (ctrl+f in webbrower to search for them in the examples)
***10 70 00 00 02 00 00 01
***10 70 00 00 39 00 00 01
***10 70 00 00 03 00 00 02
***10 70 00 05 FF 00 00 01


Overview: A good way to understand the structure is to think in how the vtrm is created, there are 3 main processes where are written the 'magic_vtrm' sections (colored in black in the examples), in general lines can be said the 'magic_vtrm' sections are created "from bottom to top". This explain doesnt includes the processes needed to create the first 'magic_vtrm' section
== example ==
{| class="wikitable"
|-
! NOR: cvtrm !! NAND: cvtrm
|-
| <pre>Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F


At some point that should be considered the "initial state" is performed an "erase" command from 0xEC000 up to 0xF0000 (0x200 blocks are filled with 0xFF's). After that the first 2 blocks are reserved (from 0xEC000 up to 0xEC400). The creation process starts at the third block (at offset 0xEC0400), this section where is used for first time the 'magic_vtrm' can be considered the most "inner" vtrm, or the most older in the creation process
00EC0000  53 43 45 49 FF FF FF FF FF FF FF FF FF FF FF FF  SCEIÿÿÿÿÿÿÿÿÿÿÿÿ
00EC0010  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
...
00EC3FF0  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
00EC4000  00 00 00 00 56 54 52 4D 00 00 00 00 00 00 00 04  ....VTRM........
00EC4010  0D 20 53 4F EE E8 06 E3 E7 AC 57 E1 E9 64 6C BF  . SOîè.ãç¬Wáédl¿
00EC4020  ED BE 69 E1 00 00 00 E0 00 00 00 00 00 00 02 09  í¾iá...à........
00EC4030  00 00 00 00 00 00 04 12 00 00 00 00 00 00 00 02  ................
00EC4040  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4050  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4060  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4070  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4080  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4090  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC40A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC40B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC40C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC40D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC40E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC40F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4100  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4110  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4120  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4130  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4140  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4150  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4160  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4170  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4180  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4190  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC41A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC41B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC41C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC41D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC41E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC41F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4200  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4210  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4220  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4230  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4240  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4250  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4260  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4270  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4280  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4290  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC42A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC42B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC42C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC42D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC42E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC42F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4300  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4310  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4320  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4330  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4340  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4350  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4360  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4370  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4380  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4390  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC43A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC43B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC43C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC43D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC43E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC43F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4400  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4410  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4420  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4430  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4440  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4450  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4460  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4470  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4480  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4490  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC44A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC44B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC44C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC44D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC44E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC44F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4500  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4510  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4520  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4530  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4540  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4550  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4560  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4570  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4580  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4590  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC45A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC45B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC45C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 00 01  ................
00EC45D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC45E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC45F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4600  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4610  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4620  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4630  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4640  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4650  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4660  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4670  00 00 00 00 00 00 04 12 00 00 00 00 00 00 00 00  ................
00EC4680  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4690  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC46A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC46B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC46C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC46D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC46E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC46F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4700  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4710  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4720  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4730  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4740  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4750  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4760  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4770  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4780  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4790  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC47A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC47B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC47C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC47D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC47E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC47F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4800  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4810  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4820  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4830  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4840  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4850  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4860  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4870  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4880  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4890  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC48A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC48B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC48C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC48D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC48E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC48F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4900  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4910  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4920  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4930  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4940  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4950  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4960  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4970  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4980  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4990  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC49A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC49B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC49C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC49D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC49E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC49F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4A00  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4A10  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4A20  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4A30  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4A40  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4A50  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4A60  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4A70  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4A80  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4A90  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4AA0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4AB0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4AC0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4AD0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4AE0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4AF0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4B00  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4B10  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4B20  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4B30  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4B40  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4B50  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4B60  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4B70  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4B80  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4B90  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4BA0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4BB0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4BC0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4BD0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4BE0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4BF0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4C00  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4C10  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4C20  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4C30  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4C40  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4C50  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4C60  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4C70  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4C80  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4C90  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4CA0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4CB0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4CC0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4CD0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4CE0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4CF0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4D00  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4D10  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4D20  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4D30  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4D40  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4D50  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4D60  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4D70  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4D80  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4D90  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4DA0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4DB0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4DC0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4DD0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4DE0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4DF0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4E00  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4E10  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4E20  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4E30  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4E40  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4E50  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4E60  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4E70  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4E80  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4E90  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4EA0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4EB0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4EC0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4ED0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4EE0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4EF0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4F00  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4F10  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4F20  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4F30  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4F40  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4F50  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4F60  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4F70  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4F80  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4F90  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4FA0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4FB0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4FC0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4FD0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4FE0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC4FF0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC5000  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC5010  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC5020  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC5030  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC5040  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC5050  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC5060  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC5070  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC5080  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EC5090  10 70 00 00 02 00 00 01 10 70 00 00 39 00 00 01  .p.......p..9...
00EC50A0  D5 ED B4 4B 73 E2 79 5D CF E7 06 7F 4B 79 4C DC  Õí´Ksây]Ïç..KyLÜ
00EC50B0  71 D1 B8 F7 0A 3F CE 1B 09 8B 59 47 7A 1D 2C E4  qѸ÷.?Î..‹YGz.,ä
00EC50C0  69 B2 CF 18 8A B9 04 7E 29 71 A1 2D D8 71 54 01  i²Ï.Š¹.~)q¡-ØqT.
00EC50D0  5B D2 55 4F EB C4 41 41 80 A3 60 A7 75 DA D8 11  [ÒUOëÄAA€£`§uÚØ.
00EC50E0  00 00 00 00 00 00 00 01 00 00 00 00 00 00 04 12  ................
00EC50F0  04 00 00 00 02 00 00 05 10 70 00 05 FF 00 00 01  .........p..ÿ...
00EC5100  0C FF 20 DC A4 6A A1 D3 BC 36 82 17 C2 7B B5 5E  .ÿ ܤj¡Ó¼6‚.Â{µ^
00EC5110  9B CD 6B 71 AB 41 06 2F 84 54 3F 6B AC E1 26 3E  ›Íkq«A./„T?k¬á&>
00EC5120  A6 5A F4 AA E6 08 53 E0 71 A4 7D 43 2D 54 D4 F8  ¦Zôªæ.Sàq¤}C-TÔø
00EC5130  5A 21 9B E6 D9 82 6B DB 1C 08 A1 F1 21 E0 F7 A4  Z!›æÙ‚kÛ..¡ñ!à÷¤
00EC5140  00 00 00 00 00 00 00 00 FF FF FF FF FF FF FF FF  ........ÿÿÿÿÿÿÿÿ
00EC5150  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
...
00EDD740                          EF 73 1D 7F 83 F3 DB 0F          ïs..ƒóÛ.
00EDD750  E1 69 26 44 E7 23 5C 88 C7 7C 9B 81              ái&Dç#\ˆÇ|›.


After that 'inner' vtrm is created (how is created is out of the explain) then the creation process returns to the first block (the area that was reserved before from 0xEC000 up to 0xEC400), most of the steps made to create this area consists in copying and indexing other areas of the 'inner' vtrm
...


So now the creation process is going to build the first 2 blocks... but the first 0x10 bytes of the first block (from 0xEC0000 up to 0xEC0010) are ignored at this point, the reason why are not created yet is because is not posible to know the amount of bytes that are going to be copyed below it in the next steps (now is going to start a process of copypasting at offset 0xEC0010)
0x14 byte sequence repeated until EDE6D3 and then it
continues after EDE6E8.  


This is when starts a process that im going to label the 'copypaste' that starts at offset 0xEC0010 and does three things, first it creates a value of 0x8 bytes (colored in green in the examples) with an offset that points to the 'inner' vtrm, then another value of 0x8 bytes (colored in green in the examples) that indicates how many bytes are going to be copypasted, then the bytes are copypasted below
It is repeated 523 times.


This copypaste is made 3 times. The first one copypastes the VTRM header (the bytes from 0xEC0400 up to 0xEC0428 are copypasted to 0xEC0020 up to 0xEC0048). The second copypastes one of the encrypted data areas (the bytes from 0xEC2980 up to 0xEC29E0 are copypasted to 0xEC0058 up to EC00B8), for some reason i dont get now it "jumps" 0x40 bytes, and then it does another copypaste that works a bit different
Total block size including gap is 0x28B4


In the third copypaste, the value that indicates the offset points to the 'exception' hash inside the '''hash_table''' (bytes from 0xEFE68C up to 0xEFE6A0 are copypasted to 0xEC0108 up to 0xEC011C), but instead of copying the 'exception' hash it copypastes the default hash value
...


At this point the creation process is near completed, the only thing left is to fill the 0x10 bytes at the beginning in the first vtrm block (at 0xEC0000), this small area is going to work as the entry point when reading the whole vtrm, and this is when is written the 'magic_scei' that is unique (is the only value from this blocks in common between NAND and NOR), the other thing that indicates this area (with the value 0xA8) is the length of the areas that has been copypasted below (but only the sum of the first two copypastes, for some reason the third copypaste is not included in this sum, also the position where the third copypaste happens is a bit weird i dont get why that position, is because the 0x40 gap but that gap makes no sense, the point is the gap is there and is related with the reason why the third copypaste to not be included in this sum)
00EDFFE0                          EF 73 1D 7F 83 F3 DB 0F          ïs..ƒóÛ.
 
00EDFFF0  E1 69 26 44 E7 23 5C 88 C7 7C 9B 81              ái&Dç#\ˆÇ|›.
00EDFFF0                                      FF FF FF FF              ÿÿÿÿ
00EE0000  00 00 00 00 FF FD FF FF FF FF FF FF FF FF FF FF  ....ÿýÿÿÿÿÿÿÿÿÿÿ
00EE0010  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF  ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
....
00EE4000  00 00 00 00 56 54 52 4D 00 00 00 00 00 00 00 04  ....VTRM........
00EE4010  93 66 A8 50 90 4F 4E 9E FC AA 0C 0C 90 8B 96 DD  “f¨P.ONžüª...‹–Ý
00EE4020  0E 14 91 99 00 00 00 E0 00 00 00 00 00 00 02 09  ..‘™...à........
00EE4030  00 00 00 00 00 00 04 12 00 00 00 00 00 00 00 02  ................
00EE4040  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4050  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4060  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4070  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4080  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4090  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE40A0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE40B0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE40C0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE40D0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE40E0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE40F0  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4100  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4110  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4120  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4130  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4140  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4150  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4160  00 00 00 00 00 00 04 12 00 00 00 00 00 00 04 12  ................
00EE4170  00 00 00 00 00 00 04 12 00 00 00 00 00 00


{{Flash}}
{{Flash}}
<noinclude>[[Category:Main]]</noinclude>
<noinclude>[[Category:Main]]</noinclude>
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)