User talk:Anaria
As of the ongoing project I'm working on, I'd like to try to add comments and documentation here, in the hope that it will help anyone who would like to work on his own project.
Current project source code can be found on Github: NOR-Dump-Tool
First it deserves to be given credit to all the wiki contributors as this would not exist without any of them.
The code itself is designed to be portable on many platforms, it is as today a one man project so slow and not well optimized.
It has no aim to teach anything to anyone but only to show an example of what can be done from open information available on the wiki. Anyhow it's aimed to always evolve and is not guaranty to be out of any bug.
It is solely design to read NOR dumps, hopefully a NAND project can easily (as in easier than from scratch) be made based on this one. It can help to validate, but it is not a 100% guaranty that a dump has no issues. It can help to read parts of a dump or any other kind of manipulation not dedicated to specifically validate a dump.
There is no option to reverse a dump but it should now automatically manage both bytes order as it read a dump.
Usage and examples:
| Command line option | Description |
|---|---|
| -P | Give percentage of bytes |
| -G | Check PS3 Generic information |
| -C | Check and display perconsole information |
| -f | Check areas filled with '00' or 'FF' |
| -F | Check Firmware information (ros0/1 + trvk) |
| -N | Check areas containing data in opposition to -F option |
| -S FolderName | Split some NOR section to folder 'FolderName' |
| -M Start Size | Run MD5 sum on file from 'Start' for 'Size' long |
| -E FileName Start Size | Extract specific NOR Section from 'Start' for 'Size' long |
| -D Start Size H/A | Display a specific NOR Section from 'Start' for 'Size' long, use H or A for HEX or ASCII |
Checking a Dump is done by running the app with only the dump file name as an input. By default it uses options -P -G -C -f -F -N and -R Below is described a short list of what is a dump validation coverage:
| http://www.ps3devwiki.com/wiki/Validating_flash_dumps | NOR Dump Tool | Command line example | Comment |
|---|---|---|---|
| Statistical analysis | Done | NORDumpTool dumpfilename.bin -P | |
| Bytereversed | Done | none | automatic |
| Only zeroes | Done | NORDumpTool dumpfilename.bin -f | |
| patterned non zeroes / patterned non ff's | Done | NORDumpTool dumpfilename.bin -N | |
| patterned FF's | Done | NORDumpTool dumpfilename.bin -f | |
| malformed headers / filenames / regionnames | Done | NORDumpTool dumpfilename.bin | done via different sub routine, should be fully covered when launching all tests |
| absent files /regions | Done | NORDumpTool dumpfilename.bin | done via different sub routine, should be fully covered when launching all tests |
| malformed files /regions | Done | NORDumpTool dumpfilename.bin | done via different sub routine, should be fully covered when launching all tests |
| Repetitions | Done | NORDumpTool dumpfilename.bin -R | May be improved as it does not cover all repeated addreses but only one in order to identify a stuck address line |
| Check metldr+bootldr sizes | Done | NORDumpTool dumpfilename.bin -C |
What if you just want to read some information specific to your console!? run the command:
$ ./NORDumpTool NORDumpFileName.bin -C
the output should be similar to this:
******************************
* NOR Dump Tool Version0.9.x *
******************************
DRAFT for 0.9.7
******************************
* Per Console Data *
******************************
Section: mtldr revision : read 43B6EF4AE20F7400C8809E53
Section: mtldr binary size : read 00000E89
Section: mtldr pcn : read ************************
Section: EID0 - IDPS : read 0000000100870008100*************
Section: EID0 static : read 0012000B
Section: EID0 pcn : read ************************
Section: EID3 - ckp_mgt_id : read 00000000********
Section: EID3 static : read 000100D0
Section: EID3 pcn : read ************************
Section: EID5 - IDPS : read 0000000100870008100*************
Section: EID5 static : read 00120730
Section: EID5 pcn : read ************************
Section: PS3 MAC Address : read 00**********
Section: cISD1 0001/0002 ? : read 0002
Section: cISD1 - CID : read ********
Section: cISD1 - eCID : read 01CA0122810C9718121*************
Section: cISD1 - board_id : read *********
Section: cISD1 - kiban_id : read 3HF1********
Section: cISD1 -0x3F0A4 Data: read 007900790106
Section: cISD1 -0x3F0B0 Data: read 0002001100020012
Section: cISD1 - ckp_mgt_id : read 00000000********
Section: cISD2 - wlan_data1 : read 1FFF000000000000
Section: cISD2 - wlan_data2 : read 0000000000000000
Section: cvtrm - pck/puk : read 6062157E********************************
Section: HDD SHA1 SUM : read 1A6F6D43********************************
Section: HDD information ? : read 00000010
Section: HDD information : read TOSHIBA MK8052GSX
Section: PS3 Serial Number : read Y********
Section: Bootldr revision : read 92AC2C2157A577C84DDFECDB
Section: Bootldr binary size: read 00002EB3
Section: Bootldr pcn : read ************************
Data found in NOR to identify the SKU are:
TargetID | metldr | bootldr
TargetID | Offset0 | Offset1 | Offset0 | Offset1
08 E8D0 0E89 2EB3 2EB3
PS3 SKU : CECHLxx (VER-001) minimum FW : 2.45 (item 29 in list)
No problem found in the Per Console Data, anyway remain careful!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! 0x00000000 or 0.00% of the file has been checked !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Function Statistics not launched
-You can run again with option -P only
Function Generic Data Checking not launched
-You can run again with option -G only
Function Per PS3 Data Checking not launched
-You can run again with option -C only
Function Not 00 nor FF area not launched
-You can run again with option -N only
Function Per Firmware data not launched
-You can run again with option -F only
Function Data Repetition not launched
-You can run again with option -R only
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! GOOD, same player, play again!? !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!