Editing Harddrive

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 3: Line 3:
== Internal harddrive ==
== Internal harddrive ==
All HDD models used in retail PS3's are 2.5" size and 9.5 milimeters height max, with 1 platter (and 1 or 2 heads), the platter has a rotational speed of 5.400 rpm and 512 bytes per sector
All HDD models used in retail PS3's are 2.5" size and 9.5 milimeters height max, with 1 platter (and 1 or 2 heads), the platter has a rotational speed of 5.400 rpm and 512 bytes per sector
The maximum capacity supported by PS3 is 1TB (TeraBytes) ''note: this ''seems'' untrue as there are several people posting pictures of their external to internal drive mod with a size of 2TB, but so far no one has been able to confirm that, only to debunk it as fake''. See/use the [[Talk:Harddrive|talk page]] for discussions/testreports


Is connected internally to [[South Bridge]] wich contains [[Hypervisor_Reverse_Engineering#ENCDEC_device|ENCDEC device]] to manage AES-CBC-128/AES-CBC-192/XTS-AES-128 encryption/decryption, and a SATA-150 controller with a maximum transfer speed of 1.5 Gbit/s.  
Is connected internally to [[South Bridge]] wich contains [[Hypervisor_Reverse_Engineering#ENCDEC_device|ENCDEC device]] to manage AES-CBC-128/AES-CBC-192/XTS-AES-128 encryption/decryption, and a SATA-150 controller with a maximum transfer speed of 1.5 Gbit/s.  
Line 8: Line 10:
*GameOS partition
*GameOS partition
**Is an UFS2 256-bit file system with a sectorsize of 512 bytes (4096 bits).
**Is an UFS2 256-bit file system with a sectorsize of 512 bytes (4096 bits).
**Because it is per-console encrypted, it is not possible to read out the data on it with another console (it will just ask to reformat it, to set it to its own per-console encryption, hence emptying the drive)
**Because is perconsole encrypted, it is not possible to read out the data on it with another console (it will just ask to reformat it, to set it to its own perconsole encryption, hence emptying the drive)


To read/write data out in Linux, BSD, Windows, or Mac OS X, you'll need to use the specific per-console "ATA tweak" and "ATA data" keys. See [[Harddrive#Harddrive_encryption|Harddrive encryption]] and [[HDD_Encryption]]
To read/write data out in Linux, BSD, Windows, Mac OS X its needed to use the specific perconsole "ATA tweak" and "ATA data" keys. See [[Harddrive#Harddrive_encryption|Harddrive encryption]] and [[HDD_Encryption]]


*In some newer PS3 models (like [[CECH-40xx]]A 12GB) the internal harddrive has been replaced by a [[Flash_(Hardware)|Flash]]
*In some newer PS3 models (like [[CECH-40xx]]A 12GB) the internal harddrive has been replaced by a [[Flash_(Hardware)|Flash]]


=== Harddrive Model info ===
=== Harddrive Model info ===
The data in this table has been copied from manufacturer documents (datasheets or productsheets) available at support sites found at the links at bottom of the page
The data in this table has been copied from manufacturer documents (datasheets or productsheets) availables at his support webs. See links at bottom of the page


*A collection of productsheets/datasheets of the HDD models used in PS3, renamed by manufacturer/series: [[http://www.multiupload.nl/V3ISMS6Q80 Download]] (fujitsu series are missing)
*A collection of productsheets/datasheets of the HDD models used in PS3, renamed by manufacturer/series: [[http://www.multiupload.nl/V3ISMS6Q80 Download]] (fujitsu series are missing)
Line 56: Line 58:
! colspan=21 {{cellcolors|lightgrey}}
! colspan=21 {{cellcolors|lightgrey}}
|-
|-
! rowspan=6 | Hitachi
! rowspan=4 | Hitachi
! Travelstar 5K160
! Travelstar 5K160
| [[HTS541640J9SA00]] || 40 GB  || 5400rpm (1/1) || 8 MB || SATA-150
| [[HTS541640J9SA00]] || 40 GB  || 5400rpm (1/1) || 8 MB || SATA-150
Line 82: Line 84:
| 0.9 A || 0.80 W || 1.4 W || 1.4 W
| 0.9 A || 0.80 W || 1.4 W || 1.4 W
! {{cellcolors|lightgrey}}
! {{cellcolors|lightgrey}}
| 55 ºC || 2.9 bels || [[CECH-20xx]]A, [[CECH-21xx]]A 
| 55 ºC || 2.9 bels || [[CECH-20xx]]A  
|-
|-
! Travelstar Z5K500
! Travelstar Z5K500
Line 92: Line 94:
! {{cellcolors|lightgrey}}
! {{cellcolors|lightgrey}}
| 60 ºC || 2.1 bels || [[CECH-40xx]]C
| 60 ºC || 2.1 bels || [[CECH-40xx]]C
|-
! Travelstar Z5K320-160
| [[HTS543216A7A384]] || 160 GB || 5400rpm (1/?) || ? || ?
! {{cellcolors|lightgrey}}
| ? || ? || ? || ?
! {{cellcolors|lightgrey}}
| ? || ? || ? || ?
! {{cellcolors|lightgrey}}
| ? || ? || [[CECH-30xx]]A
|-
! Travelstar Z5K320-250
| [[HTS543225A7A384]] || 250 GB || 5400rpm (1/?) || ? || ?
! {{cellcolors|lightgrey}}
| ? || ? || ? || ?
! {{cellcolors|lightgrey}}
| ? || ? || ? || ?
! {{cellcolors|lightgrey}}
| ? || ? || [[CECH-40xx]]B
|-
|-
! colspan=21 {{cellcolors|lightgrey}}
! colspan=21 {{cellcolors|lightgrey}}
Line 160: Line 144:
! colspan=21 {{cellcolors|lightgrey}}
! colspan=21 {{cellcolors|lightgrey}}
|-
|-
! rowspan=10 | Toshiba
! rowspan=9 | Toshiba
! rowspan=2 | MKxx52GSX
! rowspan=2 | MKxx52GSX
| [[MK8052GSX]] || 80 GB  || 5400rpm (1/1) || 8 MB || SATA-300
| [[MK8052GSX]] || 80 GB  || 5400rpm (1/1) || 8 MB || SATA-300
Line 195: Line 179:
| 55 ºC || 2.0 bels || [[CECH-20xx]]B <!-- also the [[CECH-21xx]]B and [[CECH-25xx]]B probably goes here -->
| 55 ºC || 2.0 bels || [[CECH-20xx]]B <!-- also the [[CECH-21xx]]B and [[CECH-25xx]]B probably goes here -->
|-
|-
! rowspan=4 | MKxx65GSX
! rowspan=3 | MKxx65GSX
| [[MK1265GSX]] || 120 GB || 5400rpm (1/1) || 8 MB || SATA-?
| [[MK1265GSX]] || 120 GB || 5400rpm (1/1) || 8 MB || SATA-?
! {{cellcolors|lightgrey}}
! {{cellcolors|lightgrey}}
Line 202: Line 186:
| ?.? A || ?.?? W || ?.? W || ?.? W
| ?.? A || ?.?? W || ?.? W || ?.? W
! {{cellcolors|lightgrey}}
! {{cellcolors|lightgrey}}
| ?? ºC || ?? dBA  || [[CECH-21xx]]A <!-- and [[CECH-25xx]]A ? -->
| ?? ºC || ?? dBA  || [[CECH-21xx]]A  
|-
|-
| [[MK1665GSX]] || 160 GB || 5400rpm (1/1) || 8 MB || SATA-300
| [[MK1665GSX]] || 160 GB || 5400rpm (1/1) || 8 MB || SATA-300
Line 211: Line 195:
! {{cellcolors|lightgrey}}
! {{cellcolors|lightgrey}}
| 55 ºC || 20 dBA  || [[CECH-25xx]]A  
| 55 ºC || 20 dBA  || [[CECH-25xx]]A  
|-
| [[MK2565GSX]] || 250 GB || 5400rpm (1/2) || 8 MB || SATA-300
! {{cellcolors|lightgrey}}
| 2.0 ms || ?.?? ms || 12 ms || 12 ms
! {{cellcolors|lightgrey}}
| 4.5 W || 0.75 W || 1.5 W || 1.5 W
! {{cellcolors|lightgrey}}
| 55 ºC || 20 dBA  || [[CECH-21xx]]B <!-- and [[CECH-25xx]]B ? -->
|-
|-
| [[MK3265GSX]] || 320 GB || 5400rpm (1/2) || 8 MB || SATA-300
| [[MK3265GSX]] || 320 GB || 5400rpm (1/2) || 8 MB || SATA-300
Line 254: Line 230:
**There is no conversion formula between "bels" (sound power) and "dBA" (sound pressure)... are different meassure concepts and cant be compared
**There is no conversion formula between "bels" (sound power) and "dBA" (sound pressure)... are different meassure concepts and cant be compared


{{Boxframe0|content='''PS3 models missing in the table above''' (waiting for reports, please help to complete the list)
{{Boxframe0|content='''Temporal notes (this is missing info that needs to be moved to the table)'''
*[[CECHMxx]] 80GB <--- Toshiba [[MK8052GSX]], or fujitsu [[MHZ2080BH]], or hitachi [[HTS542580K9SA00]] ?
*PS3 models missing in the table:
*[[CECH-25xx]]A 120GB <--- toshiba [[MK1265GSX]] ?
**[[CECHMxx]] 80GB <--- Toshiba [[MK8052GSX]], or fujitsu [[MHZ2080BH]], or hitachi [[HTS542580K9SA00]] ?
*[[CECH-25xx]]B 250GB <--- toshiba [[MK2565GSX]] ?
**[[CECH-21xx]]A 120GB <--- toshiba [[MK1255GSX]] ?
*<strike>[[CECH-40xx]]A 12GB <---- internal flash storage (no HDD)</strike>
**[[CECH-21xx]]B 250GB <--- toshiba [[MK2555GSX]] ?
*<strike>[[CECH-42xx]]A 12GB <---- internal flash storage (no HDD)</strike>
**[[CECH-25xx]]A 120GB <--- toshiba [[MK1255GSX]] ?
*[[CECH-42xx]]B ??GB <---- ?
**[[CECH-25xx]]B 250GB <--- toshiba [[MK2555GSX]] ?
*[[CECH-42xx]]C ??GB <---- ?
**[[CECH-40xx]]A 12GB <---- internal flash storage (no HDD)
*<strike>[[CECH-43xx]]A 12GB <---- internal flash storage (no HDD)</strike>
**[[CECH-40xx]]B 250GB <--- hitachi Travelstar (Z5K500 series) - [[HTS545025A7E380]] (1 head), or toshiba [[MK2555GSX]] (old) ?
*[[CECH-43xx]]B ??GB <---- ?
*[[CECH-43xx]]C ??GB <---- ?
}}
}}
*The [[CECH-25xx]] was originally shipped in "premiun" bundles with etras (move edition, etc...) with HDDs of capacity: A=160GB or B=320GB, but few months later sony made a price cut campaign, they started shipping it as a basic console (without extras) and the HDD capacities was reduced to A=120GB or B=250GB. This makes a total of 4 different HDD models for [[CECH-25xx]], by now the table above only contains info about 2 of them


==== Harddrive Speed Tests ====
==== Harddrive Speed Tests ====
Line 533: Line 505:
*There is no HDD speed test tool for PS3 GameOS, in PS3 OtherOS/linux hdparm can be used for a simple speed test
*There is no HDD speed test tool for PS3 GameOS, in PS3 OtherOS/linux hdparm can be used for a simple speed test
*There is a '''Speed Tests (PS3)''' table in [[Talk:Harddrive#Experimental_Tables|Talk Page]] ready to include this speed tests made in PS3, feel free to add your results or/and copy the whole table here when needed
*There is a '''Speed Tests (PS3)''' table in [[Talk:Harddrive#Experimental_Tables|Talk Page]] ready to include this speed tests made in PS3, feel free to add your results or/and copy the whole table here when needed
=== Internal Harddrive maximum capacity ===
When talking about compatibility is important to keep in mind the PS3 firmware could be partially "broken" by using a large capacity, most specifically the filesystem manteinance functions that are the resposibles to run the filesystem checks (and repair the posible filesystem problems if needed), the filesystem manteinance functions runs in the background while on XMB (periodically?), and additionally the PS3 firmware runs a "filesystem check" under 2 conditions: after a firmware crash (in other words, after a shutting down the device without the proper filesytem "unmount"), and when we use the option 3 from [[Recovery_Menu#3._Restore_File_System | Recovery Menu]] named '''3. Restore File System'''<br>
There are some harddrive capacities (in between 1TB and 2TB) where the PS3 formats it correctly, allows to install games, and could potentially run fine for a few months but "breaks" the filesystem manteinance functions. In this case what happens is every little filesystem error (caused by firmware freezes/crashes or interrupted file transfers from FTP/USB) are going to stay forever in the filesystem gets cummulated with other filesystem errors up to a point where the whole filesystem collapses and you are welcomed with a warning screen where the only option is to format it (in other words, is imposible to restore it). When this happens you lost all his contents, and the last hope to recover some files from it is by using the "EID root key" to decrypt his contents in a PC
{| class="wikitable"
|-
! colspan="4" | Capacity !! rowspan="2" | Formatting !! rowspan="2" | Filesystem check !! rowspan="2" | Notes
|-
! <abbr title="512 bytes each">Sectors</abbr> !! Bytes !! <abbr title="Gibibytes">GiB</abbr> !! <abbr title="Gigabytes">GB</abbr>
|-
| 1,677,721,600  || 858,993,459,200 || 800 || ~858 || {{yes}} || {{yes}} ||
|-
| 1,887,436,800  || 966,367,641,600 || 900 || ~966 || {{yes}} || {{yes}} ||
|-
| 1,953,125,000  || 1,000,000,000,000 || ~931 || 1000 || {{yes}} || {{yes}} || Your typical 1TB SSD
|-
| 1,992,294,400  || 1,020,054,732,800 || 950 || ~1020 || {{yes}} || {{yes}} ||
|-
| 2,013,265,920  || 1,030,792,151,040 || 960 || ~1030 || {{yes}} || {{yes}} ||
|-
| 2,019,557,376  || 1,034,013,376,512 || 963 || ~1034 || {{yes}} || {{yes}} ||
|-style="background:#fc8; line-height:75%"
| colspan="4" style="text-align:center" | unknown ||  ||  || The exact limit where the '''filesystem check''' functions gets broken is unknown
|-
| 2,020,081,664  || 1,034,281,811,968 || 963.25 || ~1034 || {{yes}} || {{no}} ||
|-
| 2,023,751,680 || 1,036,160,860,160 || 965 || ~1036 || {{yes}} || {{no}} ||
|-
| 2,034,237,440  || 1,041,529,569,280 || 970 || ~1041 || {{yes}} || {{no}} ||
|-
| 2,044,723,200  || 1,046,898,278,400 || 975 || ~1046 || {{yes}} || {{no}} ||
|-
| 2,097,152,000 || 1,073,741,824,000 || 1000 || ~1073 || {{yes}} || {{no}} ||
|-
| 2,147,483,647 || 1,099,511,627,264 || 1024-(1 sector) || ~1099 || {{yes}} || {{no}} || 32bit integer limit
|-
| 2,147,483,648 || 1,099,511,627,776 || 1024 || ~1099 || {{yes}} || {{no}} ||
|-
| 3,221,225,472 || 1,649,267,441,664 || 1536 || ~1649 || {{yes}} || {{no}} || emer_init performs HDD check and throw error if capacity is higher than this exact value.
|-style="background:#fc8; line-height:75%"
| colspan="4" style="text-align:center" | unknown ||  ||  || The exact limit where the '''formatting''' functions gets broken is unknown
|-
| 3,907,029,168 || 2,000,398,934,016 || ~1863 || ~2000 || {{no}} || {{no}} ||
|}


=== Harddrive info From software ===
=== Harddrive info From software ===
Line 644: Line 571:
'''About not-backuped files'''
'''About not-backuped files'''


Savegames in PS3 format and trophies are linked to the console/user by using their PARAM.SFO... if you look in this table [http://www.psdevwiki.com/ps3/PARAM.SFO#SFO_Requirements_for_HDD_contents|SFO Requirements for HDD contents] in their respective columns, the critical param_keys that needs to be taken in consideation when importing/exporting to another account or console are: ACCOUNTID, ACCOUNT_ID, PARAMS, and SAVEDATA_LIST_PARAM
Savegames in PS3 format and trophies are linked to the console/user by using his PARAM.SFO... if you look in this table [http://www.psdevwiki.com/ps3/PARAM.SFO#SFO_Requirements_for_HDD_contents|SFO Requirements for HDD contents] in his respective columns, the critical param_keys that needs to be taken in consideation when importing/exporting to another account or console are: ACCOUNTID, ACCOUNT_ID, PARAMS, and SAVEDATA_LIST_PARAM
There are several scenarios for importing exporting in the same or other console, between accounts, between registered and not registered PSN accounts, etc... One scenario that deserves a mention because the simplicity is when you replace the HDD, your account is not registered in PSN, and your PS3 uses a NOR flash
There are several scenarios for importing exporting in the same or other console, between accounts, between registered and not registered PSN accounts, etc... One scenario that deserves a mention because the simplicity is when you replace the HDD, your account is not registered in PSN, and your PS3 uses a NOR flash


PS3 accounts not registered in PSN use an account id filled with zeroes (that's normal, and is taken as a real number by the system), and trophies are only linked to ACCOUNTID !!!. If your source and target accounts are not registered in PSN you can simply paste the old trophy folders in the new account (dev_hdd0/home/<any_user_id_here>) in your new HDD and "rebuild database", that's all. You can use the same "trick" to transfer trophies between accounts in the same or other console if none of them are registered in PSN (yes, all the PS3 CFW users of the world not registered in PSN can share their trophies just by copy-pasting files)
PS3 accounts not registered in PSN uses an account id filled with zeroes (thats normal, and is taken as a real number by the system), and trophies are only linked to ACCOUNTID !!!. If your source and target accounts are not registered in PSN you can simply paste the old trophy folders in the new account (dev_hdd0/home/<any_user_id_here>) in your new HDD and "rebuild database", thats all. You can use the same "trick" to transfer trophies between accounts in the same or other console if none of them are registered in PSN (yes, all the PS3 CFW users of the world not registered in PSN can share his trophies just by copypasting files)


For gamesaves the ACCOUNT_ID is also used, but like explained above (because in this example the source and target accounts are not registered in PSN) this is not a problem, the problem here are the contents of PARAMS and SAVEDATA_LIST_PARAM
For gamesaves the ACCOUNT_ID is also used, but like explained above (because in this example the source and target accounts are not registered in PSN) this is not a problem, the problem here are the contents of PARAMS and SAVEDATA_LIST_PARAM
Line 653: Line 580:
Actually, are not a problem in all cases because chances are high that all values matches, but usually what changes is the "User ID" assigned to the account the first time it was created (you know... this 00000001 folder that was assiged to the first user you created inside dev_hdd0/home/<user_id_here>/), This number is a counter that always increases (even when you erase users it will not decrease) is stored inside xregistry.sys, and inside the gamesaves in the PARAMS
Actually, are not a problem in all cases because chances are high that all values matches, but usually what changes is the "User ID" assigned to the account the first time it was created (you know... this 00000001 folder that was assiged to the first user you created inside dev_hdd0/home/<user_id_here>/), This number is a counter that always increases (even when you erase users it will not decrease) is stored inside xregistry.sys, and inside the gamesaves in the PARAMS


Probably you need to change this number to match the new account, so after replacing the HDD and creating a new account, it's a good time to keep this account number 00000001 and modify all the saves to match the 00000001 inside their PARAM. The other known values inside PARAM doesn't need to be changed (because we are importing/exporting in the same console, so "PS3 console ID" is the same)... you only need to change this when moving the save to another console
Probably you need to change this number to match the new account, so after replacing the HDD and creating a new account is a good moment to keep this account number 00000001 and modify all the saves to match the 00000001 inside his PARAM. The other known values inside PARAM doesnt need to be changed (because we are importing/exporting in the same console, so "PS3 console ID" is the same)... only is needed to change this when moving the save to another console


All this tasks are simple edits in the PARAM.SFO file... you could even make it with a hex editor if you are used to .SFO format, to simplify it you can use some .SFO editor (one that allows to change this values) or one gamesave editor
All this tasks are simple edits in the PARAM.SFO file... you could even make it with a hexeditor if you are used to .SFO format, to simplify it you can use some .SFO editor (one that allows to change this values) or one gamesave editor


Trophies and PS3 saves are protected by .PFD files so in case you modified one of the .SFO, then you need to "update" the list of protected files inside the .PFD (because PARAM.SFO is always in the list). When you update the .PFD the new PARAM.SFO is added to the list and this makes the whole gamesave folder/files "valid" and ready to be copied in the PS3. You will also need to "rebuild database" at the end of the process
Trophies and PS3 saves are protected by .PFD files so in case you modifyed one of the .SFO then you need to "update" the list of protected files inside the .PFD (because PARAM.SFO is always in the list). When you update the .PFD the new PARAM.SFO is added to the list and this makes the whole gamesave folder/files "valid" and ready to be copyed in PS3. Is also needed to use the option "rebuild database" at the end of the process


The PFD "update" is one of the commands inside "flatz pfd tools", it returns some info about the protected files inside the table with an "OK" at the end of each line when everything is fine.
The PFD "update" is one of the commands inside "flatz pfd tools", it returns some info about the protected files inside the table with an "OK" at the end of each line when everything is fine.
Line 663: Line 590:


*Notes
*Notes
**Part of the contents of PARAMS and SAVEDATA_LIST_PARAM are still unknown, (it's awesome how some people that uses/codes savegame cheat apps are still ignoring this... and I'm not talking about flatz, his purpose was to break the .pfd security to unlocking/transfering protected user files between legit offline accounts and no cheating purposes) --[[User:Sandungas|Sandungas]] ([[User talk:Sandungas|talk]]) 02:40, 28 January 2014 (EST)
**Part of the contents of PARAMS and SAVEDATA_LIST_PARAM are still unknown, (is awesome how some people that uses/codes savegame cheat apps are still ignoring this... and im not talking about flatz, his purpose was to break the .pfd security to unlocking/transfering protected user files between legit offline accounts and no cheating purposes) --[[User:Sandungas|Sandungas]] ([[User talk:Sandungas|talk]]) 02:40, 28 January 2014 (EST)
**About NAND or NOR consoles... xregistry.sys contains "Account ID" and "User ID"
**About NAND or NOR consoles... xregistry.sys contains "Account ID" and "User ID"
***Is PS3's with NOR xregistry.sys is stored in "Virtual flash" (a partition in HDD)
***Is PS3's with NOR xregistry.sys is stored in "Virtual flash" (a partition in HDD)
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)