Editing Talk:PARAM.SFO

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:
=Unknown or new parameters=
=Unknown or new parameters=
This page is an index/worklog/notepad with sections referred to the front page. All the sections in this page are things related with PARAM.SFO that are not completely documented, and the final purpose is to move the info when completed to the front page. This also will help to keep the front page free of speculation.
This page is an index/worklog/notepad with sections refered to the "front" page that doesnt needs to have the same names but needs to be grouped in some way. All the sections in this page are things related with PARAM.SFO that are not completly documented, and the final purpose is to move the info when completed to the "front" page. This also will help to keep the "front" page free of speculation
 
The sections are ordered (from top to bottom) starting with the parameters that are most interesting, near completed, or more probable to support new features or content types in the future (TITLE_ID, CATEGORY and ATTRIBUTE).. Next there is a list of unknown parameters that are ordered by his difficulty from easy to hard, this list ends with the parameters related with security and continues with the data types that are very related to security, after this there are a few sections that are related with SFO but are not directly dependant of a parameter (e.g: structures activated by the presence of a folder with a reserved name, etc...)
 
At the end of the page there is a table of SFO parameters for other sony consoles, the only purpose of this table is to know the names of them to dont confuse with PS3... there is no plan to document all them here, only to list the different ones
 
==TITLE_ID (reserved, special or rare)==
Everything that "breaks" the standards explained in [[PARAM.SFO#TITLE_ID|TITLE_ID]] can be added here as an example to understand better how the ID's are assigned to each type of content
 
=== NPXS ===
{| class="wikitable"
|+NPXS
! Content ID (.PKG) !! TITLE_ID (.SFO) !! TITLE (.SFO) !! CATEGORY (.SFO) !! Notes
|-
! colspan="5" id="NPXS00*** (SDK Samples)" | [[#NPXS00*** (SDK Samples)]]
|-
| IV0002-NPXS00006_00-SAMPLE0000000001 || NPXS00006 || NP GAME || HG ||
|-
| IV0002-NPXS00008_00-GAMEUPDATEPATCH[1/2] || NPXS00008 || GameUpdate Utility Sample || DG ||
|-
| IV0002-NPXS00009_00-GAMEUPDATEPATCH[1/2] || NPXS00009 || GameUpdate Sample (By System) || DG ||
|-
| IV0002-NPXS00018_00-SAMPLE0000000001 || NPXS00018 || Matching2 Invitation Sample || HG ||
|-
| IV0002-NPXS00020_00-HDDBOOTSAMPLE001 || NPXS00020 || HDD Game Sample || HG ||
|-
| IV0002-NPXS00021_00-SAMPLE0000000001 || NPXS00021 || Game Data Sample || HG ||
|-
| IV0002-NPXS00022_00-GAMEPURCHASE000[1/2] || NPXS00022 || Game Purchase Sample || HG ||
|-
| IV0002-NPXS00024_00-SAMPLE0000000001 || NPXS00024 || NP Basic Sample || HG ||
|-
| IV0002-NPXS00031_00-SAMPLE0000000001 || NPXS00031 || NP SNS || HG ||
|-
! colspan="5" id="NPXS01*** (FW Components)" | [[#NPXS01*** (FW Components)]]<!-- seen in vsh.self -->
|-
| IV0001-NPXS01001_00 || NPXS01001 || {{No}} || {{No}} || PSN/SEN login plugin aka Service ID Roadster
|-
| || NPXS01002 || {{No}} || {{No}} ||
|-
| || NPXS01003 || {{No}} || {{No}} ||
|-
| || NPXS01005 || {{No}} || {{No}} ||
|-
! colspan="5" id="NPXS03*** (FW Components)" | [[#NPXS03*** (FW Components)]]<!-- SPRX modules ? -->
|-
| || NPXS03001 || {{No}} || {{No}} || avc plugin
|-
| || NPXS03002 || {{No}} || {{No}} || audioplayer plugin
|-
| || NPXS03003 || {{No}} || {{No}} || bdp plugin / game_ext_plugin
|-
| || NPXS03005 || {{No}} || {{No}} || download plugin
|-
| || NPXS03006 || {{No}} || {{No}} || edy plugin
|-
| || NPXS03007 || {{No}} || {{No}} || friendim plugin
|-
| || NPXS03010 || {{No}} || {{No}} || nas plugin + newstore plugin
|-
| || NPXS03012 || {{No}} || {{No}} || NP-signin plugin
|-
| || NPXS03013 || {{No}} || {{No}} || photoviewer plugin
|-
| || NPXS03015 || {{No}} || {{No}} || premo plugin
|-
| || NPXS03017 || {{No}} || {{No}} || ps3 savedata plugin
|-
| || NPXS03018 || {{No}} || {{No}} || sacd plugin
|-
| || NPXS03019 || {{No}} || {{No}} || software update plugin
|-
| || NPXS03020 || {{No}} || {{No}} || sysconf plugin
|-
| || NPXS03021 || {{No}} || {{No}} || thumthum plugin
|-
| || NPXS03022 || {{No}} || {{No}} || videodownloader plugin
|-
| || NPXS03023 || {{No}} || {{No}} || videoplayer plugin /videoeditor plugin
|-
| || NPXS03024 || {{No}} || {{No}} || vmc savedata plugin
|-
| || NPXS03025 || {{No}} || {{No}} || webbrowser plugin
|-
| || NPXS03026 || {{No}} || {{No}} || xai plugin
|-
| || NPXS03027 || {{No}} || {{No}} || XMB plugin
|-
| || NPXS03028 || {{No}} || {{No}} || PS3 game plugin-PS1
|-
| || NPXS03029 || {{No}} || {{No}} || PS3 game plugin-PS2
|-
| || NPXS03030 || {{No}} || {{No}} || np trophy ingame
|-
| || NPXS03031 || {{No}} || {{No}} || bgdl_available_time
|-
| || NPXS03033 || {{No}} || {{No}} || webrender plugin
|-
| || NPXS03036 || {{No}} || {{No}} || profile plugin
|-
| || NPXS03037 || {{No}} || {{No}} || friendtrophy plugin
|-
| || NPXS03038 || {{No}} || {{No}} || hknw plugin
|-
| || NPXS03040 || {{No}} || {{No}} ||
|-
| || NPXS03041 || {{No}} || {{No}} || HDD game plugin
|-
| || NPXS03042 || {{No}} || {{No}} ||
|-
| || NPXS03043 || {{No}} || {{No}} || PS3 Text Chat
|-
| || NPXS03045 || {{No}} || {{No}} || friendml plugin
|-
! colspan="5" id="NPXS04***" | [[#NPXS04***]]
|-
| || NPXS04004 || {{No}} || {{No}} ||
|-
! colspan="5" id="NPXS09***" | [[#NPXS09***]]
|-
| IP9100-NPXS09386_00 || NPXS09386 || Playstation Store || SF || Playstation Store (internal)
|-
|}
 
=== NPIA ===
{| class="wikitable"
|+NPIA
! Content ID (.PKG) !! TITLE_ID (.SFO) !! TITLE (.SFO) !! CATEGORY (.SFO) !! Notes
|-
! colspan="5" id="NPIA00***" | [[#NPIA00***]]
|-
| IP9100-NPIA00001_00-PS2HDDSYSDAT0001 || NPIA00001 || PS2 System Data || 2D ||
|-
| IP9100-NPIA00002_00-0000111122223333 || NPIA00002 || Folding@home & Life with Playstation || CB ||
|-
| [http://pkg.ww.home.playstation.net/home/ww/home/EP9000-NPIA00005_00-HOME000000000001-E.pkg EP9000-NPIA00005_00-HOME000000000001] || NPIA00005 || Playstation home || HM ||
|-
| [http://hakoniwa.dl.playstation.net/download/hakoniwa/IP9100-NPIA00006_00-VSHMODULE0000029.pkg IP9100-NPIA00006_00-VSHMODULE0000029] || {{No}} || {{No}} || {{No}} || Photo Gallery (doesnt have an .SFO)
|-
| IP9100-NPIA00007_00-0000111122223333 || NPIA00007 || Folding@home & Life with Playstation || CB ||
|-
| || NPIA00009 || ? || ? || <!-- seen in vsh.self -->
|-
| || NPIA00010 || Playstation home || HG || Debug Version (shipped with HDK)
|-
| || NPIA00011 || ? || ? || <!-- seen in vsh.self -->
|-
| || NPIA00012 || DigitalComics || ? || PSP App
|-
| || NPIA00013 || SenseMe || ? || PSP App
|-
| IP9100-NPIA00016_00-VSHMODULE0000001 || {{No}} || {{No}} || {{No}} || Video Editor and Uploader (doesnt have an .SFO)
|-
| IP9100-NPIA00025_00-SFPROD0000000000 || NPIA00025 || Playstation Store || SF || new Playstation Store, not via webbrowser anymore
|-
| || NPIA00031 || ? || ? || IP9100-NPIA00031-00.auth.np.ac.playstation.net
|-
| || NPIA00036 || ? || ? || livearea.np.dl.playstation.net/livearea/e/info/np/NPIA00036
|-
| || NPIA00038 || ? || ? || ?
|-
| || NPIA00040 || ? || ? || ?
|-
! colspan="5" id="NPIA09***" | [[#NPIA09***]]
|-
| IP9100-NPIA09002_00-0000111122223333 || NPIA09002 || Music Unlimited || AM || Qriocity
|-
| IP9100-NPIA09008_00-TAMGENERALMARKET || NPIA09008 || Video Unlimited (Preview)|| AV ||
|-
| IS9104-NPIA09014_00-****** || NPIA09014 || ? || ? ||  Playmemories apps for sony photo cameras
|-
! colspan="5" id="NPIA90***" | [[#NPIA90***]]
|-
| IP910[1-5]-NPIA9000[5-9]_00-PLUS???????????? || {{No}} || {{No}} || {{No}} || Playstation Plus <!-- seen in vsh.self -->
|-
| IP9101-NPIA90005_00-PLUS || NPIA90005 ||  ||  ||
|-
| IP9102-NPIA90006_01-PSPLUSSUBS365DAY-E001 || NPIA90006 ||  ||  ||
|-
| IP9103-NPIA90007_00-PLUS || NPIA90007 ||  ||  ||
|-
| IP9104-NPIA90008_00-PLUS || NPIA90008 ||  ||  ||
|-
| IP9105-NPIA90009_00-PLUS || NPIA90009 ||  ||  ||
|-
|}
 
=== Other TITLE_IDs ===
{| class="wikitable"
|-
! Content ID (.PKG) !! TITLE_ID (.SFO) !! TITLE (.SFO) !! CATEGORY (.SFO) !! Notes
|-
! colspan="5" id="NP(A,E,K,J,U)A*****" | [[#NP(A,E,K,J,U)A*****]]
|-
| || NPEA00001 || Tekken 5 Dark Resurrection || HG ||
|-
| || NPEA00007 || Operation Creature Feature ||  || Playstation Eye cam features
|-
| EP9000-NPEA00008_00-AQUAVITAPS300000 || NPEA00008 || Aqua Vita || HG || [http://www.theaveragegamer.com/2007/08/28/aqua-vita-the-ps3-gets-all-fishy/ Interactive aquarium]. Playstation Eye cam features
|-
| || NPEA00011 || The Trials of Topoq ||  || Playstation Eye cam features
|-
| EP9000-NPEA00013_00-HOME000000000001 || NPEA00013 || Playstation Home Beta || HG ||
|-
| EP9000-NPEA00022_00-EYECREATE0000000 || NPEA00022 || Eye Create || HG || Playstation Eye cam features (create photos, videos, etc...)
|-
| EP9000-NPEA00030_00-MESMERIZEPACK001 || NPEA00030 || Mesmerize || HG || Interactive wallpapers. Playstation Eye cam features
|-
| JP9002-NPJA00040_00-ADHOCPARTY000000 || NPJA00040 || Ad-Hoc Party || HG || (used by "PSP remasters" games to play online in PSP network)
|-
| || NPEA00041 || Tori Emaki ||  || Playstation Eye cam features
|-
| || NPUA80083 || Flower ||  ||
|-
! colspan="5" id="NP(A,E,K,J,U)B*****" | [[#NP(A,E,K,J,U)B*****]]
|-
| EP4183-NPEB00344_00-LOVEFILMFULL0100 || NPEB00034 || LOVEFiLM || AV ||
|-
| EP2058-NPEB00894_00-HDDBOOTPINBALL01 || NPEB00894 || Pinball Arcade || HG || "game purchase" enabled in ATTRIBUTE (C00 folder), TROPDIR included
|-
| EP4381-NPEB01229_00-YOUTUBE000000001 || NPEB01229 || Youtube || AT || NPUP10028 for usa region
|-
| EP4288-NPEB00468_00-HDDBOOTDEMO00001 || NPEB00468 || Filmy || AV || [http://www.youtube.com/watch?v=Nfoz_hc_YhY youtube video]
|-
! colspan="5" id="NPHA*****" | [[#NPHA*****]]
|-
| || NPHA0**** || First Party PSP PSN/SEN Games || ? ||
|-
| HP9009-NPHA80082_00-0000000000000100 || NPHA80082 || now TV || AT ||
|-
| HP9000-NPHA70006_00-0000000000000100 || NPHA70006 || QOOK TV || AT ||
|-
! colspan="5" id="NPHB*****" | [[#NPHB*****]]
|-
| || NPHB0**** || Licensed PSP PSN/SEN Games || ? ||
|-
! colspan="5" id="NPHI*****" | [[#NPHI*****]]
|-
| ? || NPHI00020 || ? || ? ||
|-
| ? || NPHI00021 || ? || ? ||
|-
| ? || NPHI00026 || ? || ? ||
|-
| ? || NPHI00028 || ? || ? ||
|-
! colspan="5" id="NPHJ*****" | [[#NPHJ*****]]
|-
| ? || NPHJ00046 || ? || ? ||
|-
| ? || NPHJ00049 || ? || ? ||
|-
| ? || NPHJ00066 || ? || ? ||
|-
! colspan="5" id="NPJI*****" | [[#NPJI*****]]
|-
| ? || NPJI00018 || ? || ? ||
|-
| ? || NPJI00027 || ? || ? ||  MediEvil (JP PS1 SEN)
|-
| ? || NPJI00031 || ? || ? ||
|-
| ? || NPJI00032 || ? || ? ||
|-
| ? || NPJI00052 || ? || ? || Arc the Lad: Monster Game with Casino Game (JP PS1 SEN)
|-
! colspan="5" id="NPJJ*****" | [[#NPJJ*****]]
|-
| ? || NPJJ00068 || ? || ? ||
|-
| ? || NPJJ00089 || ? || ? ||
|-
| ? || NPJJ00105 || ? || ? ||
|-
! colspan="5" id="Others" | [[#Others]]
|-
| EP4061-NPED00026_00-GSKYSCRAPE000ENG || SLES55152 || Skyscraper || 2P || Is a "PS2 Classic" note the TITLE_ID inside SFO is the original of the PS2 game and is different than the CONTENT_ID of the .pkg
|-
| EP1004-ULES00151_00-GPCGRANDTH000001 || ULES00151 || Grand Theft Auto: Liberty City Stories || PP ||
|-
| AA0001-HOGE00000_00-PLAYGOGAMESAMPLE || HOGE00000 || PlayGo game sample || HG || PS4 test sample
|-
| UP0001-FSYN00001_00-0000111122223333 || FSYN00001 || FaceSync || HG ||
|-
| XXYYYY-MCPD12345_00-XXXXXXXXXXXXXXXX || MCPD12345 || Motion Controller Playground Demo || HG ||
|-
| UP9000-NPUO00007_00-AVAPS15ANVSYCOLR || {{No}} || {{No}} || {{No}} || Avatar 15 anyversary (doesnt have an .SFO)
|-
| UP9002-NPUO00008_00-NHLGAMECENTERPS3 || NPUO00008 || NHL GameCenter || AV ||
|-
| UT0016-NPUO00013_00-SAMPLE0000000229 || NPUO00013 || Video Unlimited - preview || AV ||
|-
| UP9002-NPUO00014_00-MOVEMESERVER0000 || NPUO00014 || Move.Me || HG ||
|-
| UT0007-NPUP00030_00-NETFLIXRIGEL01NA || NPUP00030 || Netflix || AV ||
|-
| {{No}} || PBPX95208 || DVD Player Version 2.10 || {{No}} || PS2 DVD Player Update 2.10 <br/> ps2emu refuses to load this CD
|-
| {{No}} || PBXC0020[1-4] || PSX-Update 1.10/1.20/1.31/2.11 || {{No}} || PSX Updates <br/> ps2emu refuses to load this CD
|-
| {{No}} || SLED01340 || NET YAROZE COLLECTION || {{No}} || PS1 NET YAROZE demo disc <br/> ps1emu + ps3 crashes <!-- main loader is encrypted for [http://en.wikipedia.org/wiki/Net_Yaroze NET YAROZE] -->
|-
| UP0001-TEST00000_00-0000111122223333 || TEST00000 || Debugging Station Launcher || HG ||
|-
| ? || SCEAPPS01 || ? || ? || Related with "shop/kiosk" PS3 models (only visible in "unlocked mode" ?)
|-
| ? || SCEAPPS02 || ? || ? || Related with "shop/kiosk" PS3 models (only visible in "unlocked mode" ?)
|-
| ? || SCEAPPS03 || ? || ? || Related with "shop/kiosk" PS3 models (only visible in "unlocked mode" ?)
|-
|}
 
*SCEAPPS01, SCEAPPS02, SCEAPPS03
**blocked in [[XMB-Game | category_game.xml]] specifically in shop firmwares using tag [[XMB#XMB_Configuration_Files | <View id="shop_guest_root">]] (not allowed for "guest" users in shop PS3's)
 
*PlayView: PS3: NPJB60*** & NPJA60*** , for PSP: NPJH60***
 
*NPEO12345 & NPUO12345 : Others items also as theme, digital manual.
 
*PSP remaster: BLJM-8500*
 
*Converted edition: BLJM-6100*? (use NP_COMMUNICATION_ID with DG)
 
*FVGK-00** used only on PS3/PSP/PS2? game box but not on disc?(FVGK-0075 Muv-Luv Alternative Total Eclipse, FVGK-0077 Memories Off 6 Limited Edition (Complete), FVGK-0078 Memories Off Yubikiri Limited Edition)
 
*ps2emu refuses to load CD's, that would crash, but ps1emu does this not
 
*Music apps "Visualizer" by Q-Games: NPUB31187 (NPEB01864, NPJB00290, NPHB00518, NPHB00166)
 
*NPMA & NPVA (M for TV series, V for video) : Homeland UV0010-NPMA40309_CN-0000000000179825
 
*MRTC***** (disc based)
**MRTC00001 STAR OCEAN THE LAST HOPE INTERNATIONAL
**MRTC00002 LOST PLANET 2
**MRTC00003 FINAL FANTASY XIII
**MRTC00005 Sengoku BASARA Samurai Heroes
**MRTC00011 Blood Drive-R
**MRTC00014 MINDJACK
**MRTC00016 Cabela's Dangerous Hunts 2011
 
*BC*X***** (disc based with demos). Install Disc
**BCAX90003 http://www.crimson-ceremony.net/lostreleases/item.php?id=redemo_ps3-asi-bighit
**BCAX90004 http://store.sony.com.tw/product/BCAX-90004A
 
*List of TITLE_ID's requests made by worldwide users to multiman gamecovers server: http://www.maxconsole.com/maxcon_forums/threads/270272-multiMAN-Crunching-Support-amp-Releases?p=1590282#post1590282 (note some are rare)


==CATEGORY (new content formats)==
==CATEGORY (new content formats)==
*CATEGORY '''AS''' goes to playstation network column (since 4.46+?).
*CATEGORY '''VF''' - (HDD content, NOT in game column) ---> '''unknown name''', used as a valid category filter in the XML configuration file for [[XMB-Game | XMB game column]] in path: dev_flash/vsh/resource/explore/xmb/category_game.xml in key="gameDir"
*CATEGORY '''VF''' - (HDD content, NOT in game column) ---> '''unknown name''', used as a valid category filter in the XML configuration file for [[XMB-Game | XMB game column]] in path: dev_flash/vsh/resource/explore/xmb/category_game.xml in key="gameDir"
**key="gameDir" is an XMB item that allows to order the contents by "rating" or "timeCreated" the command used contains a list of categories that are excluded using the [[XMBML Functions#Operators| operator "An" = An not equal]] (VF is at the end of the list excluded with '''An+Game:Game.category VF''')
**key="gameDir" is an XMB item that allows to order the contents by "rating" or "timeCreated" the command used contains a list of categories that are excluded using the [[XMB_modding#Operators| operator "An" = An not equal]] (VF is at the end of the list excluded with '''An+Game:Game.category VF''')
**Similar than MN, 1P?
**Similar than MN, 1P?


Line 16: Line 362:


==ATTRIBUTE (flags brainstorming)==
==ATTRIBUTE (flags brainstorming)==
{| class="wikitable"
|+Examples
!  Little Endian !! Big Endian !! Decimal !! Flags (Binary) !! Description || Flag Nº || Notes
|-
| colspan="7" style="text-align:center; background-color:#DDDDDD;" | '''Discs'''
|-
| 05 17 80 00 || 00 80 17 05 || 8394501 || 00000000 10000000 00010111 00000101 || killzone 3 || 01+03+09+10+11+13+24 || all flags identifyed
|-
| 20 00 02 00 || 00 02 00 20 || 131104 || 00000000 00000010 00000000 00100000 || Dead Space 2 || 06+18 || all flags identifyed
|-
| colspan="7" style="text-align:center; background-color:#DDDDDD;" | '''Patches'''
|-
| 85 00 00 00 || 00 00 00 85 || 133 || 00000000 00000000 00000000 10000101 || Torne v3.52 || 01+03+08 || all flags identifyed (doesnt use any "overwrite" flag)
|}
'''XMB In-Game System Chat Voice Disable''' (Flag Nº7) : Value and name description are related to this flag but need to be confirmed from PS3 side / not used on bootable but as patches?.
'''XMB In-Game System Chat Voice Disable''' (Flag Nº7) : Value and name description are related to this flag but need to be confirmed from PS3 side / not used on bootable but as patches?.


Line 90: Line 451:
Other app with category not implemented yet on 3.55 FW such WT or unknown as VF on 4.21 can also just not "appear" on XMB and not being on the "Unknown" folder as Corrupted/Unsupported data. To access/delete from 3.55 XMB your PSP remaster folder s titles, group content it (not by format).
Other app with category not implemented yet on 3.55 FW such WT or unknown as VF on 4.21 can also just not "appear" on XMB and not being on the "Unknown" folder as Corrupted/Unsupported data. To access/delete from 3.55 XMB your PSP remaster folder s titles, group content it (not by format).
}}
}}
*The existence of the weird flags X0 (for PCEngine) and X4 (for NeoGeo) and we called them "subcategories" (refered to the fact that are an extension of HG category) seems to be related with the fact that those emulators are running under the PSP emulator. PC Engine and NeoGeo are part of the PSP firmware


==APP_VER, TARGET_APP_VER, PATCH_FILE, PS3_SYSTEM_VER, VERSION (Patches)==
==APP_VER, TARGET_APP_VER, PATCH_FILE, PS3_SYSTEM_VER, VERSION (Patches)==
Line 132: Line 491:
This table is a collection of examples of some "rare" savedatas, probably will be needed to erase this section (replaced by a resume in front page) when all areas are identifyed, but by now is usefull to have an overview of how this process works and to find good candidates for tests, feel free to add any other examples you consider interesting ;)
This table is a collection of examples of some "rare" savedatas, probably will be needed to erase this section (replaced by a resume in front page) when all areas are identifyed, but by now is usefull to have an overview of how this process works and to find good candidates for tests, feel free to add any other examples you consider interesting ;)


The examples in the table are considered rare because most of the other games uses the values: 1,5,1,2,2 (2 last pointers pointing to the same counter slot 2 at 0x0C) or 1,5,1,3,3 (2 last pointers pointing to the same counter slot 3 at 0x10), so dont add this kind of games to the table because are pointless (by now the only identifyed pointers are the values at ffset 0x03 and 0x04 and the interesting examples are when this pointers are different, or when they changes his values to different numbers like 2,3 or 3,2, or any other combination of 2 different numbers, this means the SFO has several counters enabled), also the table doesnt includes the "user/console" areas that starts at offset 0x18 because are identifyed and explained in front page
The examples in the table are considered rare because most of the other games uses the values: 1,5,1,2,2 (2 last pointers pointing to the same counter slot 2 at 0x0C) or 1,5,1,3,3 (2 last pointers pointing to the same counter slot 3 at 0x10), so dont add this kind of games to the table because are pointless, also the table doesnt includes the "user/console" areas that starts at offset 0x18 because are identifyed and explained in front page


The table differences 2 types of savedata, one for "profile" and other for standard "savedata", the reason is because are treated different by the system, after the first analysis it looks the profile support more features, it can evolve by changing his type, and it can store the counters from the other savedatas when SFO's are merged (this happens after completing the game)
The table differences 2 types of savedata, one for "profile" and other for standard "savedata", the reason is because are treated different by the system, after the first analysis it looks the profile support more features, it can evolve by changing his type, and it can store the counters from the other savedatas when SFO's are merged (this happens after completing the game)
*Notes
**Iris manager (and all his forks) has an hexeditor inside his archive manager, just navigate to the SFO press "X" and scroll down to offset 0x558 (where PARAMS area usually starts), is easy to recognize because always starts with this 1,5,1,2,2 bytes, at the next line are the 4 counters, 4 bytes length each
**To know exactly wich files has been updated inside the savedata folder is needed to look at his timestamps, iris manager doesnt displays timestamps, but you can use the FTP feature to see then from a FTP client running in a PC connected to the PS3, be sure the FTP client doesnt fool you with the timestamps, usually after a disconection/conection the old timestamps are displayed, is needed to "refresh" the files (with F5 in filezilla) or close/open the FTP client again to force it to refresh timestamps
**The system considers the savedata has been updated when the timestamp of the SFO is updated (and consequently the PFD has been updated too). But sometimes the PFD is the only file updated in the folder, in this cases the system doesnt considers the savedata has been updated. The number of times the SFO has been updated is stored in one of the counters inside PARAMS, most games loads and updates the SFO when the game boots (to be able to update his timestamp in XMB and display the last time the game was booted)


{| class="wikitable"
{| class="wikitable"
Line 179: Line 533:
| tomb raider || profile || 1 || 5 || 1 || 2 || 3 || 0 || 0 || 0 || 00000000 || 91000000 || 14000000 || 01000000 || after completing the game
| tomb raider || profile || 1 || 5 || 1 || 2 || 3 || 0 || 0 || 0 || 00000000 || 91000000 || 14000000 || 01000000 || after completing the game
|}
|}
*Notes
**Iris manager (and all his forks) has an hexeditor inside his archive manager, just navigate to the SFO press "X" and scroll down to offset 0x558 (where PARAMS area usually starts), is easy to recognize because always starts with this 1,5,1,2,2 bytes, at the next line are the 4 counters, 4 bytes lenght each
**To know exactly wich files has been updated inside the savedata folder is needed to look at his timestamps, iris manager doesnt displays timestamps, but you can use the FTP feature to see then from a FTP client running in a PC connected to the PS3, be sure the FTP client doesnt fool you with the timestamps, usually after a disconection/conection the old timestamps are displayed, is needed to "refresh" the files (with F5 in filezilla) or close/open the FTP client again to force it to refresh timestamps
**The system considers the savedata has been updated when the timestamp of the SFO is updated (and consequently the PFD has been updated too). But sometimes the PFD is the only file updated in the folder, in this cases the system doesnt considers the savedata has been updated. The number of times the SFO has been updated is stored in one of the counters inside PARAMS, most games loads and updates the SFO when the game boots (to be able to update his timestamp in XMB and display the last time the game was booted)


*Tests examples
*Tests examples
**The last of us ---> http://pastebin.com/raw.php?i=SAiDzjLN (overall save behaviour with the profile, identifying update counter)
**The last of us ---> http://pastebin.com/raw.php?i=SAiDzjLN (overall save behaviour with the profile, identifying update counter)
***the game loads and updates the profile in every boot (by only updating the SFO timestamp and consequently the PFD), and changes the value at offset 0x01 to 8
***the game loads and updates the profile in every boot (by only updating the SFO and consequently the PFD), and changes the value at offset 0x01 to 8
***when the user changes some option or forces the save the value at offset 0x01 is changed to 7
***when the user changes some option or forces the save the value at offset 0x01 is changed to 7
***the profile is updated 1 time for every submenu inside "options" (there are 5 submenues under options)
***the profile is updated 1 time for every submenu inside "options" (there are 5 submenues under options)
Line 188: Line 547:
**tomb raider ------> http://pastebin.com/raw.php?i=S13yrq9R (overall save behaviour with profile and save, update counter, timestamps, failed attempt to increase the game completion counter at offset 0x564)
**tomb raider ------> http://pastebin.com/raw.php?i=S13yrq9R (overall save behaviour with profile and save, update counter, timestamps, failed attempt to increase the game completion counter at offset 0x564)
***every time the game boots, only the PFD is updated (no other file is updated)
***every time the game boots, only the PFD is updated (no other file is updated)
***When the savedata is updated all the files inside the folder are updated (included ICON0.PNG timestamp)
***When the savedata is updated all the files inside the folder are updated (included ICON0.PNG)
***the profile is updated 1 time for every submenu under options, and another time when exiting options (3 submenues + 1 when exiting options for a total of 4 updates)
***the profile is updated 1 time for every submenu under options, and another time when exiting options (3 submenues + 1 when exiting options for a total of 4 updates)
***the profile is updated 1 time when exiting extras
***the profile is updated 1 time when exiting extras
***every time the SFO is updated, the counter at 0x10  increases 1 unit
***when the game is completed a new counter is added to the profile savedata, and a pointer changes to this position (from slot 3 to slot 2), the value stored there is partially unknown but seems to be a counter taken from the save used to finish the game
***when the game is completed a new counter is added to the profile savedata, and the pointer at offset 0x03 changes to a new counter slot (from slot 3 to slot 2), the new value stored in counter slot 2 is partially unknown but seems to be another counter taken from the SFO of the save used to finish the game


==SAVEDATA_LIST_PARAM==
==SAVEDATA_LIST_PARAM==
Line 242: Line 600:


*PARAM.PFD relationship ?
*PARAM.PFD relationship ?


=Other parameters not used in PS3 (only used in other sony consoles)=
=Other parameters not used in PS3 (only used in other sony consoles)=
The only purpose of this table is to keep a record of them to not confuse with the ones used in PS3
The only purpose of this table is to keep a record of them to not confuse with the ones used in PS3


{| class="wikitable" style="font-size:x-small"
{| class="wikitable"
|-
|-
! rowspan=2 | Parameter !! colspan=3 | Console !! rowspan=2 | Notes
! rowspan=2 | Parameter !! colspan=3 | Console !! rowspan=2 | Notes
|-
|-
! PSP !! [http://www.psdevwiki.com/vita/index.php?title=Talk:System_File_Object_%28SFO%29_%28PSF%29 PSV] !! [http://www.psdevwiki.com/ps4/Param.sfo PS4]
! PSP !! [http://www.vitadevwiki.com/index.php?title=Talk:System_File_Object_%28SFO%29_%28PSF%29 PSV] !! [http://www.psdevwiki.com/ps4/Param.sfo PS4]
|-
| ATTRIBUTE2 ||  || {{Yes}} || ||
|-
| CONTENT_URL ||  || || || URL of content (not parameter but related to link.xml?)
|-
|-
| DISC_ID || {{Yes}} || || ||  
| DISC_ID || {{Yes}} || || ||  
|-
|-
| DISC_NUMBER || {{Yes}} || || {{Yes}} ||  
| DISC_NUMBER || {{Yes}} || || ||  
|-
|-
| DISC_TOTAL || {{Yes}} || || {{Yes}} ||  
| DISC_TOTAL || {{Yes}} || || ||  
|-
|-
| DISC_VERSION || {{Yes}} || || ||  
| DISC_VERSION || {{Yes}} || || ||  
Line 269: Line 632:
|-
|-
| USE_USB || {{Yes}} || || ||  
| USE_USB || {{Yes}} || || ||  
|-{{cellcolors|red}}
| ACCOUNT_ID ||  || {{Yes}} || || Not the same ACCOUNT_ID than PS3... this one for vita has  (fmt:utf8-S, len:0x8, max_len:0x8)
|-
| ATTRIBUTE2 ||  || {{Yes}} || ||
|-
| ATTRIBUTE_MINOR ||  || {{Yes}} || ||
|-
|-
| GC_RO_SIZE || || {{Yes}} || || GameCache ReadOnly Size ?
| GC_RO_SIZE || || {{Yes}} || || GameCache ReadOnly Size ?
Line 280: Line 637:
| GC_RW_SIZE || || {{Yes}} || || GameCache ReadWrite Size ?
| GC_RW_SIZE || || {{Yes}} || || GameCache ReadWrite Size ?
|-
|-
| INSTALL_DIR_ADDCONT ||  || {{Yes}} || || Shared Additional Content, fmt:utf-8, max_len:12
| INSTALL_DIR_ADDCONT ||  || {{Yes}} || || Shared Additional Content, utf-8, maximum len: 12
|-
|-
| INSTALL_DIR_SAVEDATA ||  || {{Yes}} || || Shared Save Data, fmt:utf-8, max_len:12
| INSTALL_DIR_SAVEDATA ||  || {{Yes}} || || Shared Save Data, utf-8, maximum len: 12
|-
|-
| PARENT_DIRECTORY ||  || {{Yes}} || || used in PSvita savedata (fmt:utf8, len:0xB, max_len:0x40)
| PSP2_DISP_VER ||  || {{Yes}} || || utf-8, maximum len: 8, example: "00.000"
|-
| PSP2_DISP_VER ||  || {{Yes}} || || utf-8, max_len:8, example: "00.000"
|-
|-
| PSP2_SYSTEM_VER ||  || {{Yes}} || || int32
| PSP2_SYSTEM_VER ||  || {{Yes}} || || int32
|-
| PUBTOOLINFO ||  || {{Yes}} || {{Yes}} ||
|-
|-
| SAVEDATA_MAX_SIZE || || {{Yes}} || || int32
| SAVEDATA_MAX_SIZE || || {{Yes}} || || int32
|-
|-
| SAVEDATA_VER || || {{Yes}} || || used in PSvita savedata (fmt:utf8, len:0x6, max_len:0x8)
| SUB_TITLE_ID || || || ||
|-
|-
| STITLE ||  || {{Yes}} || || App Short Title, utf-8, len:52
| STITLE ||  || {{Yes}} || || App Short Title, utf-8, len:52
|-
| STITLE_xx ||  || {{Yes}} || ||
|-
| SUPPORT_URI ||  || {{Yes}} || ||
|-
| APP_TYPE ||  ||  || {{Yes}} ||
|-
| CONTENT_VER ||  ||  || {{Yes}} ||
|-
| DISP_LOCATION_x ||  ||  || {{Yes}} ||
|-
| DOWNLOAD_DATA_SIZE ||  ||  || {{Yes}} ||
|-
| FORMAT ||  ||  || {{Yes}} ||
|-
| INSTALL_DIR_SAVEDATA ||  ||  || {{Yes}} ||
|-
| IRO_TAG ||  ||  || {{Yes}} ||
|-
| PROVIDER ||  ||  || {{Yes}} ||
|-
| PROVIDER_xx ||  ||  || {{Yes}} ||
|-
| PUBTOOL_VERSION ||  ||  || {{Yes}} ||
|-
| REMOTE_PLAY_KEY_ASSIGN ||  ||  || {{Yes}} ||
|-
| SERVICE_ID_ADDCONT_ADD_x ||  ||  || {{Yes}} ||
|-
| SYSTEM_ROOT_VER ||  ||  || {{Yes}} ||
|-
| SYSTEM_VER ||  ||  || {{Yes}} ||
|-
| USER_DEFINED_PARAM_x ||  ||  || {{Yes}} ||
|-
| SUB_TITLE_ID || || || ||
|-
| CONTENT_URL ||  || || || URL of content (not parameter but related to link.xml?)
|-
|-
| _PARAM.SFO || ? || || || found in [[game_ext_plugin]].sprx (anti exploit/bug prevention ?)
| _PARAM.SFO || ? || || || found in [[game_ext_plugin]].sprx (anti exploit/bug prevention ?)
Line 402: Line 717:
**EX_GAME & EX_VIDEO requires SFO Category 'XR' and are emerged into PS3_EXTRA! (EX_GAME/EX_VIDEO are actually leftovers?)
**EX_GAME & EX_VIDEO requires SFO Category 'XR' and are emerged into PS3_EXTRA! (EX_GAME/EX_VIDEO are actually leftovers?)


==Others==
==SHOPINSTALL==
*A video recorded in a "demo/shop PS3" in a walmart after using the "unlock code" https://www.youtube.com/watch?v=FsfG1be_3K0
*Related to XMB -> System Settings -> Backup Utility (Restore?); Maybe needs XMB unlocked.


-GE
----
PS3 DVD / PS2 CD
/dev_bdvd/NORMAL
/dev_bdvd/HYBRID
 
-GP
/dev_bdvd/PHOTODIR
/dev_bdvd/PS3_CONTENT/PHOTODIR
/dev_bdvd/PS3_CONTENT/PHOTODIR/PARAM.SFO
 
-GM
/dev_bdvd/MUSICDIR
/dev_bdvd/PS3_CONTENT/MUSICDIR
/dev_bdvd/PS3_CONTENT/MUSICDIR/PARAM.SFO
 
-GV
/dev_bdvd/VIDEODIR
/dev_bdvd/PS3_CONTENT/VIDEODIR
/dev_bdvd/PS3_CONTENT/VIDEODIR/PARAM.SFO


-GT
=To Do=
/dev_bdvd/THEMEDIR
/dev_bdvd/PS3_CONTENT/THEMEDIR
/dev_bdvd/PS3_CONTENT/THEMEDIR/PARAM.SFO
 
=Todo and Suggestions=
*'''Parameters requirements table''' has lot of "yes" that should be "opt" (optional). The "yes" means the value is mandatory, so the table is not fully correct.Also... this table represents the values needed for each content ordered by CATEGORY, but there are different contents that shares the same CATEGORY (like the different types of patches, DLC's, and game installations... alll them uses "'''GD'''". The "parameter table" cant contain all this different variations, by now i dont see a way to do it--[[User:Sandungas|Sandungas]] ([[User talk:Sandungas|talk]]) 12:25, 29 January 2014 (EST)
*'''Parameters requirements table''' has lot of "yes" that should be "opt" (optional). The "yes" means the value is mandatory, so the table is not fully correct.Also... this table represents the values needed for each content ordered by CATEGORY, but there are different contents that shares the same CATEGORY (like the different types of patches, DLC's, and game installations... alll them uses "'''GD'''". The "parameter table" cant contain all this different variations, by now i dont see a way to do it--[[User:Sandungas|Sandungas]] ([[User talk:Sandungas|talk]]) 12:25, 29 January 2014 (EST)
*'''Bluray Games structure table''' needed to decide if using the new table format that is extremilly complicated internally (very hard to add cells, and even to edit them, it will be a pain to mantain) but very usefull, or the old "folder tree text format" that is ugly and doesnt allows to add all the info needed to represent the structure... I cant decide, i dont like them so i would like to find a new way... maybe nesting tables... maybe with a wiki plugin that doesnt exist ? dunno by now --[[User:Sandungas|Sandungas]] ([[User talk:Sandungas|talk]]) 12:25, 29 January 2014 (EST)
*'''HDD Games structure table''' Find a way to make a table similar than bluray disc structure contents, but for pkg file/folders contents. This needs the same format than bluray structure and will solve the problem of finding a place to list all the reserved fodler names that doesnt belongs to discs
*The internal structure example for SFO needs to be replaced by a new one with at least 2 parameters, this will make more obvious how are meassured the relative offsets displacements
*The internal structure example for SFO needs to be replaced by a new one with at least 2 parameters, this will make more obvious how are meassured the relative offsets displacements
*Is needed an explain of how the file is loaded in stages by the system, how is indexed, and the method to access single areas to update single values, the rebuilding process, etc... this is complex and i ignore (but i imagine) how is made by the PS3, but the source codes i saw that manages SFO files uses different methods and styles (and probably some others i ignore), by now im not skilled enought to discuss this in the page but an open talk about all this could be interesting --[[User:Sandungas|Sandungas]] ([[User talk:Sandungas|talk]]) 23:41, 15 February 2014 (EST)
*Is needed an explain of how the file is loaded in stages by the system, how is indexed, and the method to access single areas to update single values, the rebuilding process, etc... this is complex and i ignore (but i imagine) how is made by the PS3, but the source codes i saw that manages SFO files uses different methods and styles (and probably some others i ignore), by now im not skilled enought to discuss this in the page but an open talk about all this could be interesting --[[User:Sandungas|Sandungas]] ([[User talk:Sandungas|talk]]) 23:41, 15 February 2014 (EST)
*'''Overall page cleanup''' of obsolete or wrong info, grammar corrections, etc...
*'''Overall page cleanup''' of obsolete or wrong info, grammar corrections, etc...
*'''Link each ID to a subpage''', so they can be centrally managed (some are also listed here: [[IDs_%2B_labels | ID's and labels]]
 
=Suggestions=
* Link each ID to a subpage, so they can be centrally managed (some are also listed here: [[IDs_%2B_labels | ID's and labels]]
**The affected sections in front page are: [[PARAM.SFO#CONTENT_ID|CONTENT_ID]], [[PARAM.SFO#NP_COMMUNICATION_ID|NP_COMMUNICATION_ID]], [[PARAM.SFO#NPCOMMID|NPCOMMID]], and [[PARAM.SFO#TITLE_ID|TITLE_ID]], explaining them in the .SFO page (as i did initially) doesnt looks the best solution, but is needed at least a short description of each, now there are specific pages for them (without much descriptions) and the decission of separating all the IDs in pages makes hard to have a overall view of them... the best solution i see is to use the [[IDs_%2B_labels | ID's and labels]] converted to a template an use it repeatedly in SFO page, but the names are not the same used in SFO, also this doesnt solves the short description needed in SFO page (that should be duplicated, and expanded in his specific pages)--[[User:Sandungas|Sandungas]] ([[User talk:Sandungas|talk]]) 12:25, 29 January 2014 (EST)
**The affected sections in front page are: [[PARAM.SFO#CONTENT_ID|CONTENT_ID]], [[PARAM.SFO#NP_COMMUNICATION_ID|NP_COMMUNICATION_ID]], [[PARAM.SFO#NPCOMMID|NPCOMMID]], and [[PARAM.SFO#TITLE_ID|TITLE_ID]], explaining them in the .SFO page (as i did initially) doesnt looks the best solution, but is needed at least a short description of each, now there are specific pages for them (without much descriptions) and the decission of separating all the IDs in pages makes hard to have a overall view of them... the best solution i see is to use the [[IDs_%2B_labels | ID's and labels]] converted to a template an use it repeatedly in SFO page, but the names are not the same used in SFO, also this doesnt solves the short description needed in SFO page (that should be duplicated, and expanded in his specific pages)--[[User:Sandungas|Sandungas]] ([[User talk:Sandungas|talk]]) 12:25, 29 January 2014 (EST)
[http://pastebin.com/YMWhQt7q TitleIDs in LV1 RAM]
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)