Editing PS3 DISC.SFB

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]]
<div style="float:right">[[Image:icon media ps3 bd.png|200px|thumb|left|PS3 Blu Ray]]<br /></div>
<div style="float:right">[[Image:icon media ps3 bd.png|200px|thumb|left|PS3 Blu Ray]]<br /></div>
Main file of a PS3 disc, used as a descriptor of the title and contents.<br>
 
Main file of a PS3 disc, used as a descriptor of the title and contents.
 
The hybrid flags says to the PS3 to look for [[PARAM.SFO]]'s in specific folders, several flags can be used at the same time
The hybrid flags says to the PS3 to look for [[PARAM.SFO]]'s in specific folders, several flags can be used at the same time
----


=Internal structure=
=Internal structure=
The file has a lot of padding, probably to avoid forcing the laser lens to read a file too small. It has big endian byte ordering.
 
The file has a lot of padding, probably to avoid forcing the laser lens to read a "too tiny" file


{| class="wikitable"
{| class="wikitable"
|-
|-
! Offset (h) !! Length (h) !! Example (h) !! Description
! Offset !! Length !! Example !! Description
|-
|-
| 0x0 || 0x4 || 0x2E534642 || ".SFB"
| 0x0 || 0x4 || .SFB ||  
|-
|-
| 0x4 || 0x4 || 0x00010000 || File version ?
| 0x4 || 0x4 || 00010000 || File version ?
|-
|-
| 0x8 || 0x18 || 0x0000..00 || Unknown (zeroes)
| 0x8 || 0x18 || || Unknown (zeroes)
|-
|-
| 0x20 || 0x10 || 0x4859425249445F464C41470000000000 || "HYBRID_FLAG" (Flags type)
| 0x20 || 0xF || HYBRID_FLAG || Disc Content Name
|-
|-
| 0x30 || 0x4 || 0x00000200 || Disc Content Data Offset (0x200)
| 0x30 || 0x4 || 00000200 || Disc Content Data Offset (0x200)
|-
|-
| 0x34 || 0x4 || 0x00000020 || Disc Content Data Length (0x20)
| 0x34 || 0x4 || 00000020 || Disc Content Data Length (0x20)
|-
|-
| 0x38 || 0x8 || 0x0000000000000000 || Unknown (zeroes)
| 0x38 || 0x8 || TITLE_ID || Disc Title Name
|-
|-
| 0x40 || 0x8 || 0x5449544C455F4944 || "TITLE_ID" (Disc Title Name)
| 0x50 || 0x4 || 00000220 || Disc Title Data Offset (0x220)
|-
|-
| 0x48 || 0x8 || 0x0000000000000000 || Unknown (zeroes)
| 0x54 || 0x4 || 00000010 || Disc Title Data Length (0x10)
|-
|-
| 0x50 || 0x4 || 0x00000220 || Disc Title Data Offset (0x220)
| 0x58 || 0x1A8 || || Unknown (zeroes)
|-
|-
| 0x54 || 0x4 || 0x00000010 || Disc Title Data Length (0x10)
| 0x200 || 0x20 || gVu || '''Disc Content''' (Hybrid Flags)
|-
|-
| 0x58 || 0x8 || 0x0000000000000000 || Unknown (zeroes)
| 0x220 || 0x10 || ABCD-12345 || '''Disc Title'''
|-{{cellcolors|#ffff99}}
| 0x60 || 0x8 || 0x56455253494F4E00 || "VERSION" (Disc Version)
|-
|-
| 0x68 || 0x8 || 0x0000000000000000 || Unknown (zeroes)
| 0x230 || 0x3D0 || || Unknown (zeroes)
|-{{cellcolors|#ffff99}}
| 0x70 || 0x4 || 0x00000230 || Disc Version Data Offset (0x230)
|-{{cellcolors|#ffff99}}
| 0x74 || 0x4 || 0x00000010 || Disc Version Data Length (0x10)
|-
|-
| 0x78 || 0x188 || 0x0000..00 || Unknown (zeroes)
|-
| 0x200 || 0x20 || 0x675675 || "gVu" '''Disc Content''' (Hybrid Flags)
|-
| 0x220 || 0x10 || 0x414243442D3132333435 || "ABCD-12345" '''Disc Title'''
|-{{cellcolors|#ffff99}}
| 0x230 || 0x10 || 0x30312E3030 || "01.00" '''Disc Version'''
|-
| 0x240 || 0x3C0 || 0x0000..00 || Unknown (zeroes)
|-
| colspan=4 {{cellcolors|#ffff99}} rows marked in yellow are only present in multi-game discs
|}
|}


=Hybrid Flags=
=Hybrid Flags=
<div style="float:right">[[Image:icon media_ps3_bd_install.png|200px|thumb|center|PS3 Blu Ray install content]]<br>[[Image:icon media ps3 bd_video.png|200px|thumb|center|PS3 Blu Ray video content]]</div>
 
<div style="float:right">[[Image:icon media_ps3_bd_install.png|200px|thumb|center|PS3 Blu Ray install content]]<br /></div>
 
The order of the flags its not clear (is not alphabetically) but there are 32 bytes reserved for them, so probably any combination is valid
The order of the flags its not clear (is not alphabetically) but there are 32 bytes reserved for them, so probably any combination is valid


{| class="wikitable"
{| class="wikitable"
|-
|-
! Hex !! ASCII !! Description !! Enables contents in disc path:
! Hex !! ASCII !! Description !! Path
|-
|-
| 53 || S || Disc Benefits || Not dependant of other disc files, enables a network connection to PSN store
| 53 || S || Benefits || Unknown
|-
|-
| 54 || T || Themes || dev_bdvd/'''PS3_CONTENT'''/THEMEDIR/PARAM.SFO
| 54 || T || THEME || TITLE_ID\'''PS3_CONTENT'''\THEMEDIR\PARAM.SFO
|-
|-
| 56 || V || Video || dev_bdvd/'''PS3_CONTENT'''/VIDEODIR/PARAM.SFO
| 56 || V || VIDEO || TITLE_ID\'''PS3_CONTENT'''\VIDEODIR\PARAM.SFO
|-{{cellcolors|#ff9999}}
| 66 || f || ? || friends ? (unknown yet, usually combined with g/p?)
|-
|-
| 67 || g || Disc Game &<br />Disc Extra Contents || dev_bdvd/'''PS3_GAME'''/USRDIR/PARAM.SFO &<br />dev_bdvd/'''PS3_EXTRA'''/PARAM.SFO
| 66 || f || ? || (unknown yet, usually combined with g?)
|-{{cellcolors|#ff9999}}
| 6D || m || ? || music?
|-{{cellcolors|#ff9999}}
| 70 || p || ? || photo ? (unknown yet, used with v, fv,..)
|-
|-
| 75 || u || Firmware Update || dev_bdvd/'''PS3_UPDATE'''/PS3UPDAT.PUP
| 67 || g || GAME & EXTRA || TITLE_ID\'''PS3_GAME'''\USRDIR\PARAM.SFO & TITLE_ID\'''PS3_EXTRA'''\PARAM.SFO
|-
|-
| 76 || v || BluRay Movie || dev_bdvd/'''PS3_VPRM'''/PARAM.SFO
| 75 || u || UPDATE || TITLE_ID\'''PS3_UPDATE'''\UPDATE.PUP
|-
|-
| colspan="4" {{cellcolors|#ff9999}} rows marked in red are speculative
| 76 || v || BDMOVIE || TITLE_ID\'''PS3_VPRM'''\PARAM.SFO
|-
|-
|}
|}
s = settings ?
 
<div style="float:right">[[Image:icon media ps3 bd_video.png|200px|thumb|center|PS3 Blu Ray video content]]<br /></div>


=Notes=
=Notes=
<div style="float:right">[[File:Icn-DiscBenefits.png|100px|thumb|center|Icon Disc Benefits]]<br /></div>
 
*The flag "'''g'''" activates two subfolders '''PS3_GAME''' (main game) and '''PS3_EXTRA''' (one of the 3 ways to include extras in a disc).<br> Games are marked as "'''gu'''" (because there is always an UPDATE.PUP), if you want to remove the folder '''PS3_UPDATE''' is good to remove the flag "u" from here
*The flag "'''g'''" activates two subfolders '''PS3_GAME''' (main game) and '''PS3_EXTRA''' (one of the 3 ways to include extras in a disc).<br> Games are marked as "'''gu'''" (because there is always an UPDATE.PUP), if you want to remove the folder '''PS3_UPDATE''' is good to remove the flag "u" from here
*The flags "'''T'''" and "'''V'''" activates subfolders inside '''PS3_CONTENT''' (the second way to include extras in a disc)
*The flags "'''T'''" and "'''V'''" activates subfolders inside '''PS3_CONTENT''' (the second way to include extras in a disc)
*The third way to include extras in a disc depends of "'''g'''" but it needs to activate another different flag in TITLE_ID\'''PS3_GAME'''\[[PARAM.SFO]] (in the ATTRIBUTE parameter)
*The flag '''"S"''' appears (need to remove-insert disc on top of BD-EMU) with games featuring Cross Buy (FW 4.25+?), and will load the icon "Disc Benefits" (dev_flash\vsh\resource\explore\icon) and [http://www.ps3devwiki.com/wiki/File:Xmb-contentinfo-sd.png pic].<br> This flag might only concern [[PSVita]] content. [[Talk:PARAM.SFO#TITLE_ID | Specific title id]] as XCJS-0000* is not required. Order is : "gSu".
*Other flags ?: See {{talk}} page.
*Open Source reader by pink1tools https://github.com/pink1stools/PS3_DISC.SFB-Editor


{{File Formats}}<noinclude>[[Category:Main]]</noinclude>
*The third way to include extras in a disc depends of "'''g'''" but its needed to activate another different flag in TITLE_ID\'''PS3_GAME'''\[[PARAM.SFO]] (in his ATTRIBUTE parameter)
 
*The flag '''"S"''' appears (need to remove-insert disc on top of BD-EMU) with games featuring Cross Buy (FW 4.25+?), and will load the icon "Disc Benefits" (dev_flash\vsh\resource\explore\icon) and [http://www.ps3devwiki.com/wiki/File:Xmb-contentinfo-sd.png pic].<br> This flag might only concern [[PSvita]] content. [[Talk:PARAM.SFO#TITLE_ID | Specific title id]] as XCJS-0000* is not required. Order is : "gSu".
 
<div style="float:right">[[File:Icn-DiscBenefits.png|100px|thumb|center|Icon Disc Benefits]]<br /></div>
 
[http://www.youtube.com/watch?v=JpT-B8vtHQs Youtube video Disc benefits Playstation All Stars]
 
See also [[Basic_Bluray_disc_authentication_procedure]] & [[Disk_Identification/Serialisation_Data]]
 
*Other flags ?: See talk page.
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)