Talk:Flash: Difference between revisions
mNo edit summary |
m (→NAND Flash) |
||
Line 176: | Line 176: | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
|- | |- | ||
! Name !! Start Offset !! End Offset !! Size (h) !! Size (bytes) !! Notes | ! colspan="3" | Name !! Start Offset !! End Offset !! Size (h) !! Size (bytes) !! Notes | ||
|- | |- | ||
| bootldr || 0x0000000 || 0x003FFFF || 0x40000 || (191,216 bytes) || <small>datasize depends on bootldr revision</small> | | colspan="3" | bootldr || 0x0000000 || 0x003FFFF || 0x40000 || (191,216 bytes) || <small>datasize depends on bootldr revision</small> | ||
|- | |- | ||
| 0FACE0FF DEADBEEF || 0x0040010 || 0x004001F || 0x10 || (16 bytes) || <small>magic header : 0x0040010 00 00 00 00 0F AC E0 FF 00 00 00 00 DE AD BE EF .....¬àÿ....Þ¾ï</small> | | colspan="3" | 0FACE0FF DEADBEEF || 0x0040010 || 0x004001F || 0x10 || (16 bytes) || <small>magic header : 0x0040010 00 00 00 00 0F AC E0 FF 00 00 00 00 DE AD BE EF .....¬àÿ....Þ¾ï</small> | ||
|- | |- | ||
| flashregion table || 0x0040200 || || || | | colspan="3" | flashregion table || 0x0040200 || || || | ||
|- | |- | ||
| asecure_loader || 0x0040810 || 0x004F64F || | | 0 || colspan="2" | asecure_loader || 0x0040810 || 0x004F64F || <abbr title="length is notated @ offset 0x004021D-0x004021F">0x40000</abbr> || (60,992 bytes) || <small>aka metldr, extracted data starts from 0x040840, <abbr title="length of metldr data is notated @ offset 0x004081E-0x004081F">datasize</abbr> depends on metldr revision</small> | ||
|- | |- | ||
| eEID || 0x0080800 || 0x0090800 || 0x10000 || (65,636 bytes) || <small>(IDPS @ offset 0x0002F070 absolute / 0x00000070 inside eEID )</small> | | 1 || colspan="2" | eEID || 0x0080800 || 0x0090800 || <abbr title="length is notated @ offset 0x004024D-0x004024F">0x10000</abbr> || (65,636 bytes) || <small>(IDPS @ offset 0x0002F070 absolute / 0x00000070 inside eEID )</small> | ||
|- | |- | ||
| cISD || 0x0090800 || 0x0091000 || 0x800 || (2,048 bytes) || | | 2 || colspan="2" | cISD || 0x0090800 || 0x0091000 || <abbr title="length is notated @ offset 0x004027D-0x004027F">0x800</abbr> || (2,048 bytes) || | ||
|- | |- | ||
| cCSD || 0x0091000 || 0x0091800 || 0x800 || (2,048 bytes) || | | 3 || colspan="2" | cCSD || 0x0091000 || 0x0091800 || <abbr title="length is notated @ offset 0x00402AD-0x00402AF">0x800</abbr> || (2,048 bytes) || | ||
|- | |- | ||
| trvk_prg0 || 0x0091800 || | | 4 || colspan="2" | trvk_prg0<br />trvk_prg1 || 0x0091800 || 0x0093800 || <abbr title="length of trvk_prg0+trvk_prg1 combined is notated @ offset 0x00402DD-0x00402DF">0x2000</abbr> || (8,192 bytes) || <small>extracted size is 0x2000 for trvk_prg0 + trvk_prg1 combined as trvk_prg (8,192 bytes)</small> | ||
|- | |- | ||
| | | 5 || colspan="2" | trvk_pkg0<br />trvk_pkg1 || 0x0093800 || 0x0095800 || <abbr title="length of trvk_pkg0+trvk_pkg1 combined is notated @ offset 0x004030D-0x004030F">0x2000</abbr> || (4080 bytes) || <small>extracted size is 0x2000 for trvk_pkg0 + trvk_pkg1 combined as trvk_pkg (8,192 bytes)</small> | ||
|- | |- | ||
| | | 6 || colspan="2" | creserved_0 || - || - || <abbr title="length is notated @ offset 0x004033D-0x004033F">0x2A800</abbr> || (174,080 bytes) || | ||
|- | |- | ||
| | | 7 || colspan="2" | ros0 || 0x00C0010 || 0x07C0010 || <abbr title="length of both ROS0+ROS1 combined is notated @ offset 0x004036D-0x004036F">0x700000</abbr> || (7,340,032 bytes) || <small>Contains CoreOS files, [http://www.ps3devwiki.com/index.php?title=Boot_Order#CoreOS_PKG_Filelisting filecontent depends on firmware version]</small> | ||
|- | |- | ||
| | | 8 || colspan="2" | ros1 || 0x07C0010 || 0x0EC0010 || <abbr title="length of both ROS0+ROS1 combined is notated @ offset 0x004036D-0x004036F">0x700000</abbr> || (7,340,032 bytes) || <small>Contains CoreOS files, [http://www.ps3devwiki.com/index.php?title=Boot_Order#CoreOS_PKG_Filelisting filecontent depends on firmware version]</small> | ||
|- | |- | ||
| | | 9 || colspan="2" | cvtrm || - || - || <abbr title="length is notated @ offset 0x004039D-0x004039F">0x40000</abbr> || (262,144 bytes) || | ||
|- | |- | ||
| SCEIVTRM || ~varies || ~varies || 0x10 || (16 bytes) || <small>magic header : 0x0D80000 53 43 45 49 56 54 52 4D 00 00 00 00 00 00 00 A8 SCEIVTRM.......¨</small> | | || M || SCEIVTRM || ~varies || ~varies || 0x10 || (16 bytes) || <small>magic header : 0x0D80000 53 43 45 49 56 54 52 4D 00 00 00 00 00 00 00 A8 SCEIVTRM.......¨</small> | ||
|- | |- | ||
| VTRM0 || ~varies || ~varies || ~varies || ~varies || <small>magic header : 0x0D80020 00 00 00 00 56 54 52 4D 00 00 00 00 00 00 00 04 ....VTRM........</small> | | || 0 || VTRM0 || ~varies || ~varies || ~varies || ~varies || <small>magic header : 0x0D80020 00 00 00 00 56 54 52 4D 00 00 00 00 00 00 00 04 ....VTRM........</small> | ||
|- | |- | ||
| | | || 1 || VTRM1 || ~varies || ~varies || ~varies || ~varies || <small>magic header : 0x0D80400 00 00 00 00 56 54 52 4D 00 00 00 00 00 00 00 04 ....VTRM........</small> | ||
|- | |- | ||
| cell_ext_os_area || 0xE780000 || 0xE78000F || 0x10 || (16 bytes) || <small>magic header : 0xE780000 63 65 6C 6C 5F 65 78 74 5F 6F 73 5F 61 72 65 61 cell_ext_os_area</small> | | colspan="3" | cell_ext_os_area || 0xE780000 || 0xE78000F || 0x10 || (16 bytes) || <small>magic header : 0xE780000 63 65 6C 6C 5F 65 78 74 5F 6F 73 5F 61 72 65 61 cell_ext_os_area</small> | ||
|- | |- | ||
| OtherOS || 0xE780800 || ~varies || ~varies || ~varies || <small>OtherOS loader/init.rd</small> | | colspan="3" | OtherOS || 0xE780800 || ~varies || ~varies || ~varies || <small>OtherOS loader/init.rd</small> | ||
|- | |- | ||
|} | |} | ||
Line 221: | Line 221: | ||
---- | ---- | ||
== EID correctness == | == EID correctness == |
Revision as of 22:25, 29 November 2011
It would be great if the admin could install SyntaxHighlight extension to media wiki
http://www.mediawiki.org/wiki/Extension:ASHighlight
on my list of things to do Admin 21:25, 11 April 2011 (CDT)
observations comparing dumps
Encrypted files appear to have a header:
From metldr 00000840 00 00 0E 8E 99 87 3B C7 15 F2 80 80 9C 30 22 25 ...Ž™‡;Ç.ò€€œ0"% 00000850 00 00 0E 8E 78 A5 61 E0 17 72 6E F7 A7 1B 41 AB ...Žx¥aà.rn÷§.A« 00000840 00 00 0E 8E 99 87 3B C7 15 F2 80 80 9C 30 22 25 ...Ž™‡;Ç.ò€€œ0"% 00000850 00 00 0E 8E 81 2E 00 A9 59 75 01 CC C1 72 D5 50 ...Ž...©Yu.ÌÁrÕP From bootldr 00FC0000 00 00 2F 4B 53 92 1C E7 F7 33 41 76 9B 7A 1E D6 ../KS’.ç÷3Av›z.Ö 00FC0010 00 00 2F 4B 78 A5 61 E0 17 72 6E F7 A7 1B 41 AB ../Kx¥aà.rn÷§.A« 00FC0000 00 00 2F 4B CB 9E 15 24 28 B4 4F D2 F9 3F BC 43 ../KËž.$(´OÒù?¼C 00FC0010 00 00 2F 4B 81 2E 00 A9 59 75 01 CC C1 72 D5 50 ../K...©Yu.ÌÁrÕP
also to note that these values are found within the eeid region.
Also noted that near the end of region 1 there seems to be this recurring pattern, it repeats the following 20 bytes 199 times
00EFD740 0A 9E F8 79 2B 99 37 5A .žøy+™7Z 00EFD750 53 49 92 D7 A5 BD 99 2A 26 2D 39 B8 SI’×¥½™*&-9¸
then it has these 15 bytes:
00EFE6D0 8C 37 E4 F4 CC CC 59 02 D0 FA B8 A5 Œ7äôÌÌY.Ðú¸¥ 00EFE6E0 1E 42 98 DD 54 AF 8D 5E .B˜ÝT¯.^
Then it repeats the first 20 bytes 199 times, looks like the tried to hide it?
same on the other dump but different data
00EFD740 17 D8 FE B6 56 B6 84 F2 .Øþ¶V¶„ò 00EFD750 5E 17 E9 5D B1 80 E1 D2 00 6F 88 26 ^.é]±€áÒ.oˆ&
00EFE6D0 E7 BF FF DA E2 2E A3 B8 73 79 76 C8 ç¿ÿÚâ.£¸syvÈ 00EFE6E0 B1 72 B3 E7 B9 33 70 F6 ±r³ç¹3pö
Done some work on decoding region 2 today: Region 2 seems to = vflash partition table? These might be the first 2 regions? partition table is 4096 bytes. Format: 16 bytes 00's 16 bytes magic: 00 00 00 00 0F AC E0 FF 00 00 00 00 DE AD FA CE 8 bytes 0x03 8 bytes 0x02 (number of paritions?) 144 bytes 00's Partition entries: 8 bytes entry point (entry point * 0x200) relative to 0x00 on flash 8 bytes entry length (entry length * 0x200) 32 bytes 10 70 00 00 01 00 00 01 00 00 00 00 00 00 00 03 10 70 00 00 02 00 00 01 00 00 00 00 00 00 00 03 96 bytes 00's
sample of my flash: http://www.megaupload.com/?d=J5UKO3HX
norunpack
Changed version for Progskeet: http://pastebin.com/HNvCbF7d
list of files stored in Flash
metldr revision
There are are least 8 different metldr revisions (pre 3.60 aka metldr.2), only 3.50+ have the metldr version check.
metldr+bootldr sizes
Datecode / Manufacturing date | metldr offset | bootldr offset | Notes | ||
---|---|---|---|---|---|
0x81E (NOR) 0x4081E (NAND) |
0x842 (NOR 0x40842 (NAND) |
0xFC0002 (NOR) 0x0 (NAND) |
0xFC0012 (NOR) 0x12 (NAND) | ||
EE 10 | 0E DD | 2A 3F | 2A 3F | ||
E8 90 | 0E 85 | 2F 13 | 2F 13 | ||
E8 D0 | 0E 89 | 2E AB | 2E AB | ||
E8 E0 | 0E 8A | 2E F4 | 2E F4 | ||
E9 20 | 0E 8E | 2F 4B | 2F 4B | ||
E9 60 | 0E 92 | 2F 53 | 2F 53 | ||
E9 60 | 0E 92 | 2F 5B | 2F 5B | ||
EA 60 | 0E A2 | 2E E3 | 2E E3 | ||
EB F0 | 0E BB | ||||
CECH2504B (JSD-001), with 3.60 from factory - datecode 1B | F9 20 | 0F 8E | 2F FB | 2F FB | "metldr.2" |
NOR Flash
The following is a list of files stored in NOR Flash
Name | Start Offset | End Offset | Size (h) | Size (bytes) | Notes |
---|---|---|---|---|---|
asecure_loader | 0x000810 | 0x02F010 | 0x2E800 | (190,464 bytes) | aka metldr |
eEID | 0x02F010 | 0x03F010 | 0x10000 | (65,636 bytes) | (IDPS @ offset 0x0002F070 absolute / 0x00000070 inside eEID ) |
cISD | 0x03F010 | 0x03F810 | 0x800 | (2,048 bytes) | |
cCSD | 0x03F400 | 0x040010 | 0x800 | (2,048 bytes) | |
trvk_prg0 | 0x03FC00 | 0x060010 | 0x20000 | (131,072 bytes) | |
trvk_prg1 | 0x05FC00 | 0x080010 | 0x20000 | (131,072 bytes) | |
trvk_pkg0 | 0x080010 | 0x0A0010 | 0x20000 | (131,072 bytes) | |
trvk_pkg1 | 0x0A0010 | 0x0C0010 | 0x20000 | (131,072 bytes) | |
ros0 | 0x0C0010 | 0x7C0010 | 0x700000 | (7,340,032 bytes) | Contains CoreOS files, filecontent depends on firmware version |
ros1 | 0x7C0010 | 0xEC0010 | 0x700000 | (7,340,032 bytes) | Contains CoreOS files, filecontent depends on firmware version |
cvtrm | 0xEC0010 | 0xF00010 | 0x40000 | (262,144 bytes) | |
CELL_EXTNOR_AREA | 0xF20000 | 0xFA0040 | 0x80040 | (524,352 bytes) | |
bootldr | 0xFC0000 | 0xFEEAF0 | 0x2EAF0 | (191,216 bytes) | End @ FEF170, FEF570, FEF5F0, FEF600 in some dumps |
NAND Flash
The following is a list of files stored in NAND Flash
Name | Start Offset | End Offset | Size (h) | Size (bytes) | Notes | ||
---|---|---|---|---|---|---|---|
bootldr | 0x0000000 | 0x003FFFF | 0x40000 | (191,216 bytes) | datasize depends on bootldr revision | ||
0FACE0FF DEADBEEF | 0x0040010 | 0x004001F | 0x10 | (16 bytes) | magic header : 0x0040010 00 00 00 00 0F AC E0 FF 00 00 00 00 DE AD BE EF .....¬àÿ....Þ¾ï | ||
flashregion table | 0x0040200 | ||||||
0 | asecure_loader | 0x0040810 | 0x004F64F | 0x40000 | (60,992 bytes) | aka metldr, extracted data starts from 0x040840, datasize depends on metldr revision | |
1 | eEID | 0x0080800 | 0x0090800 | 0x10000 | (65,636 bytes) | (IDPS @ offset 0x0002F070 absolute / 0x00000070 inside eEID ) | |
2 | cISD | 0x0090800 | 0x0091000 | 0x800 | (2,048 bytes) | ||
3 | cCSD | 0x0091000 | 0x0091800 | 0x800 | (2,048 bytes) | ||
4 | trvk_prg0 trvk_prg1 |
0x0091800 | 0x0093800 | 0x2000 | (8,192 bytes) | extracted size is 0x2000 for trvk_prg0 + trvk_prg1 combined as trvk_prg (8,192 bytes) | |
5 | trvk_pkg0 trvk_pkg1 |
0x0093800 | 0x0095800 | 0x2000 | (4080 bytes) | extracted size is 0x2000 for trvk_pkg0 + trvk_pkg1 combined as trvk_pkg (8,192 bytes) | |
6 | creserved_0 | - | - | 0x2A800 | (174,080 bytes) | ||
7 | ros0 | 0x00C0010 | 0x07C0010 | 0x700000 | (7,340,032 bytes) | Contains CoreOS files, filecontent depends on firmware version | |
8 | ros1 | 0x07C0010 | 0x0EC0010 | 0x700000 | (7,340,032 bytes) | Contains CoreOS files, filecontent depends on firmware version | |
9 | cvtrm | - | - | 0x40000 | (262,144 bytes) | ||
M | SCEIVTRM | ~varies | ~varies | 0x10 | (16 bytes) | magic header : 0x0D80000 53 43 45 49 56 54 52 4D 00 00 00 00 00 00 00 A8 SCEIVTRM.......¨ | |
0 | VTRM0 | ~varies | ~varies | ~varies | ~varies | magic header : 0x0D80020 00 00 00 00 56 54 52 4D 00 00 00 00 00 00 00 04 ....VTRM........ | |
1 | VTRM1 | ~varies | ~varies | ~varies | ~varies | magic header : 0x0D80400 00 00 00 00 56 54 52 4D 00 00 00 00 00 00 00 04 ....VTRM........ | |
cell_ext_os_area | 0xE780000 | 0xE78000F | 0x10 | (16 bytes) | magic header : 0xE780000 63 65 6C 6C 5F 65 78 74 5F 6F 73 5F 61 72 65 61 cell_ext_os_area | ||
OtherOS | 0xE780800 | ~varies | ~varies | ~varies | OtherOS loader/init.rd |
EID correctness
[8/31/2011 1:41:13 AM] xxxxxxxxxxxxxx: the information on the PS3 dev wiki was intentionally faulty [8/31/2011 1:41:15 AM] qqqqq: Use the creativity or fail to find it. [...] [8/31/2011 1:41:34 AM] xxxxxxxxxxxxxx: so people can't use the 'knowledge' [...] [8/31/2011 1:41:43 AM] qqqqq: xxxxxx, uuuu has done a very good job at fixing what IS wrong. If you saw something wrong, why didn't you ask uuuu about it to fix it? [8/31/2011 1:41:55 AM] xxxxxxxxxxxxxx: that's not what guys like rrrrrrr have told me [8/31/2011 1:41:58 AM] xxxxxxxxxxxxxx: it's intentionally faulty [8/31/2011 1:42:03 AM] qqqqq: Instead you left it how it was and bitched about it. [8/31/2011 1:42:07 AM] xxxxxxxxxxxxxx: to prevent any meaningful extraction of keys [8/31/2011 1:42:11 AM] qqqqq: If it was fault again talk to uuuu [8/31/2011 1:42:24 AM] xxxxxxxxxxxxxx: no - uuuu could not have even known about it [8/31/2011 1:42:28 AM] xxxxxxxxxxxxxx: it was something only a kkkk could know [8/31/2011 1:42:45 AM] qqqqq: You'd be surprised what uuuu knows. he really is a walking encyclopedia of the ps3. [8/31/2011 1:42:48 AM] xxxxxxxxxxxxxx: that wiki is compromised with purposeful misinformation [8/31/2011 1:42:59 AM] xxxxxxxxxxxxxx: and that's what rrrrrrr actually said and thinks [8/31/2011 1:43:17 AM] xxxxxxxxxxxxxx: I'm talking about ps3 dev wiki BTW here [8/31/2011 1:43:25 AM] qqqqq: if it's providing false info, then why not make a site to provide the right info? *gasps* [8/31/2011 1:43:34 AM] xxxxxxxxxxxxxx: well he did make the suggestion [8/31/2011 1:43:38 AM] xxxxxxxxxxxxxx: but it didn't go over well with these people [8/31/2011 1:43:45 AM] yyyyyyyy: kkkk wasn't the only one with cex-dex shit [8/31/2011 1:43:50 AM] yyyyyyyy: hell he's not even the one who wrote it [8/31/2011 1:44:01 AM] yyyyyyyy: so you can stfu about that [8/31/2011 1:44:09 AM] xxxxxxxxxxxxxx: hell do I know who the fuck wrote CEX-DEX [8/31/2011 1:44:27 AM] xxxxxxxxxxxxxx: all I know is that there are a bunch of connivant shits that want a wiki intentionally 'disinfoed' like that [8/31/2011 1:44:35 AM] xxxxxxxxxxxxxx: people in the know [8/31/2011 1:44:49 AM] yyyyyyyy: and one conniving shit here trying to save his hide [8/31/2011 1:44:57 AM] qqqqq: xxxxxx, again as i said. If there was false info (Which uuuu would never do) Why not fix it [8/31/2011 1:45:21 AM] xxxxxxxxxxxxxx: go ask rrrrrrr - I dunno [8/31/2011 1:45:26 AM] qqqqq: DO you think he purposesly makes changes so that it's wrong? That'd create an even bigger headache if a noob attempted it and bugged us in the chat [8/31/2011 1:45:32 AM] xxxxxxxxxxxxxx: the EID/CEX-DEX info was incomplete [8/31/2011 1:45:33 AM] xxxxxxxxxxxxxx: faulty