System File Object (SFO) (PSF): Difference between revisions

From Vita Developer wiki
Jump to navigation Jump to search
m (→‎Categories: added ada's infos (thanks!!))
(Fixed +109MiB mode flag)
 
(89 intermediate revisions by 9 users not shown)
Line 1: Line 1:
[[Category:Software]]
[[Category:Software]]<noinclude>[[Category:Main]]</noinclude>
These config strings are inside the [[PS_VITA_Packages_%28.PKG%29#Game_Packages|Game Package (PKG)]].


= Header =
See also PARAM.SFO on:
This is the Header of a SFO/PSF file
*[http://www.psdevwiki.com/ps3/Eboot.PBP#PARAM.SFO PSP],
{| class="wikitable sortable"
*[http://www.psdevwiki.com/ps3/PARAM.SFO PS3],
*[http://www.psdevwiki.com/ps4/PARAM.SFO PS4].
 
See also {{talk}} page
 
== Internal Structure ==
The values contained in a '''S'''ystem '''F'''ile '''O'''bject can be simplyfied as inputs/outputs for/from the content:
Boot modifyers (most of the int32 datas) that are sent to the content when is executed to activate specific features or settings (e.g. audio and video modes of a game).
Information texts (most of the utf8 datas) about the content and its restrictions (e.g. title and version of a game).
 
=== Header SFO ===
This is the Header of a SFO/PSF file.
{| class="wikitable sortable" style="text-align: center;border:2px solid #53464F;"
|-
|-
! Offset !! Data !! Arch !! Notes  
| style="background-color:#505346; color:#FFFFFF;" |'''Offset'''
| style="background-color:#505346; color:#FFFFFF;" |'''Data'''
| style="background-color:#505346; color:#FFFFFF;" |'''Length'''
| style="background-color:#505346; color:#FFFFFF;" |'''Notes'''
|-
|-
| 0x0 || 0x00505346 || Little Endian || PSF Magic
| 0x00 || 00 50 53 46 || 0x04 || " PSF" Magic
|-
|-
| 0x4 || 0x01010000 || Little Endian || Version
| 0x04 || 01 01 00 00 || 0x04 || Version
|-
|-
| 0x8 || 0x24010000 || Little Endian || Value Start
| 0x08 || xx xx 00 00 || 0x04 || Key table start offset
|-
|-
| 0xC || 0xdc000000 || Little Endian || Params Start
| 0x0C || xx xx 00 00 || 0x04 || Data table start offset
|-
|-
| 0x4 || 0x11000000 || Little Endian || of params/values
| 0x10 || xx 00 00 00 || 0x04 || of entries in index table (params/values)
|-
|-
|}
|}


= Body =
typedef struct{
Before understanding the algorithm, a few things:
    int magic; //PSF
There are 3 variables:
    int version; //1.1
==Type of data==
    int keyTableOffset;
0x6+0x10*i<br />
    int dataTableOffset;
(i=0,1,2,3,4,5,...)
    int indexTableEntries;
{| class="wikitable sortable"
} sfo_header_t;
 
=== Index table ===
Starting at offset 0x14, this structure (0x10) is repeated the number of times defined in the header ( № of parameters)
 
{| class="wikitable sortable" style="text-align: center;border:2px solid #53464F;"
|-
| style="background-color:#505346; color:#FFFFFF;" |'''Offset'''
| style="background-color:#505346; color:#FFFFFF;" |'''Data'''
| style="background-color:#505346; color:#FFFFFF;" |'''Length'''
| style="background-color:#505346; color:#FFFFFF;" |'''Notes'''
|-
| 0x14 || 00 00 || 0x02 || Key table offset
|-
|-
! Data !! Arch !! Notes
| 0x16 || 04 0x  || 0x02 || param_fmt (type of data)
|-
|-
| 04 02 || Little Endian || The value is an Integer
| 0x18 || xx xx 00 00 || 0x04 || parameter length
|-
|-
| 04 04 || Little Endian || The value is an UTF8
| 0x1C || xx xx 00 00 || 0x04 || parameter max length
|-
|-
| 04 00 || Little Endian || The value is an Special UTF8
| 0x20 || 00 00 00 00 || 0x04 || Data table offset
|-
|-
|}
|}


== Position ==
typedef struct{
The position is stored with this algo:
    u16 keyOffset; //offset of keytable + keyOffset
    u16 param_fmt; //enum (see below)
    u32 paramLen;
    u32 paramMaxLen;
    u32 dataOffset; //offset of datatable + dataOffset
} indexTableEntry_t;
 
Used on index table, there are 3 variables:


[Value Start]+(0x14+(0x10*i)) for VALUE<br />
<small>
[Param Start]+(0x20+(i*0x10)) for PARAM <br />
0x6+0x10*i<br />
(i=0,1,2,3,4,5,...)
(i=0,1,2,3,4,5,...)
</small>


{| class="wikitable sortable"
{| border=2 style="text-align: center;"
|-
|-
! Offset !! Data !! Arch !! Notes  
| style="background-color:#505346; color:#FFFFFF;" |'''Param_fmt'''
| style="background-color:#505346; color:#FFFFFF;" |'''Arch'''
| style="background-color:#505346; color:#FFFFFF;" |'''Format'''
| style="background-color:#505346; color:#FFFFFF;" |'''Notes'''
|-
|-
| 0x14 || 0x0000 || Little Endian || Value
| 04 00 || Little Endian || style="background-color:#00DDDD;" | utf-8 Special Mode || Used in contents generated by the system (e.g.: save data)
|-
|-
| 0x20 || 0x00000000 || Little Endian || Param
| 04 02 || Little Endian || style="background-color:#DDDD00;" | utf-8 || Character string, NULL finished (0x00)
|-
| 04 04 || Little Endian || style="background-color:#DD00DD;" | integer || 32 bits unsigned
|-
|-
|}
|}


== Length ==
=== Key table ===
The length is stored with this algo:
Ordered alphabetically, each name of parameters of this table is NULL terminated with 1 blank byte (0x00) to separate them.


0x1C+0x10*i for Param<br />
The table has padding at the end to align their size to a multiply of 4 ( if matches with a multiply of 4 this padding doesn't exist)  
(0x24+0x10*i)-(0x14+0x10*i) for Value<br />
 
(i=0,1,2,3,4,5,...)
=== Data table ===
*UTF-8 entries never uses all the reserved bytes, needs 1 blank byte (0x00) after the last character.


{| class="wikitable sortable"
*Integer entries uses all the reserved bytes.
|-
! Offset !! Data !! Arch !! Notes
|-
| 0x24-0x14 || 0x0800 || Little Endian || Length Value
|-
| 0x1C || 0x08000000 || Little Endian || Length Param
|-
|}


== Algorithm ==
=== Algorithm ===


(i=0,1,2,3,4,5,...)<br />
(i=0,1,2,3,4,5,...)<br />
Line 79: Line 111:
*Get Type<br />
*Get Type<br />
**[PSF offset] + (0x16 * (0x10*i))
**[PSF offset] + (0x16 * (0x10*i))
*Get Lenght Param<br />
*Get Length Param<br />
**[PSF offset] + (0x1C * (0x10*i))
**[PSF offset] + (0x1C * (0x10*i))
*Get Lenght Value<br />
*Get Length Value<br />
**[PSF offset] + (0x24+0x10*i)-(0x14+0x10*i)
**[PSF offset] + (0x24+0x10*i)-(0x14+0x10*i)
*Get Position Param<br />
*Get Position Param<br />
**[PSF offset] + [Param Start] + (0x20+(0x10*i))
**[PSF offset] + [Param Start] + (0x20+(0x10*i))


for any problems, you can give a look into my sourcecode: [[https://raw.github.com/wargio/vitatool/master/sfo_stuff.c sfo_stuff.c]]
for any problems, you can give a look into my sourcecode: [https://raw.github.com/wargio/vitatool/master/sfo_stuff.c sfo_stuff.c]
 
=== Parameters Descriptions===
 
====APP_VER====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x8 (8 bytes)<br />'''param_len''': 0x6 (6 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
The format is '''XX.YY''' where "'''XX'''" and "'''YY'''" are numbers, and the point "'''.'''" is included in the string, e.g: '''01.00''' for the first stable version released.
 
====ATTRIBUTE====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''':  PSVita Game (Digital), Non-Game Application}}
 
Can contains 32 flags that can be turned on/off to activate/deactivate features allowed for the game/apps content.
 
Speculation and some features could have been removed.
 
See also {{talk}} page
 
FW min for FW column (SYSTEM_VER) seen.
 
Flag № column is for wikify/chat, 32 flags table speculation.
 
{| class="wikitable" style="font-size:small; text-align: center;border:3px ridge #123AAA;"
|-
! colspan="2" | Hexadecimal !! rowspan="2" | Decimal !! rowspan="2" | Binary <br /> (flags) !! rowspan="2" | Notes  <br /> (feature) !! rowspan="2" | [[Template:Firmware_revisions|FW used]] || rowspan="2" | Flag № <br /> (flag required)
|-
! little endian !! big endian
|- bgcolor="#DDDDDD"
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|-
| {{stylematrix}} '''01''' 00 00 00 || 00 00 00 '''01''' || 1 || 00000000 00000000 00000000 0000000'''1''' || Used || 1.69 || 01
|-
| {{stylematrix}} '''02''' 00 00 00 || 00 00 00 '''02''' || 2 || 00000000 00000000 00000000 000000'''1'''0 || Use liblocation in order to get location || - || 02
|-
| {{stylematrix}} '''04''' 00 00 00 || 00 00 00 '''04''' || 4 || 00000000 00000000 00000000 00000'''1'''00 || - || - || 03
|-
| {{stylematrix}} '''08''' 00 00 00 || 00 00 00 '''08''' || 8 || 00000000 00000000 00000000 0000'''1'''000 || NO SUSPEND DEACTIVATE on || - || 04
|-
| {{stylematrix}} '''10''' 00 00 00 || 00 00 00 '''10''' || 16 || 00000000 00000000 00000000 000'''1'''0000 || - || - || 05
|-
| {{stylematrix}} '''20''' 00 00 00 || 00 00 00 '''20''' || 32 || 00000000 00000000 00000000 00'''1'''00000 || - || - || 06
|-
| {{stylematrix}} '''40''' 00 00 00 || 00 00 00 '''40''' || 64 || 00000000 00000000 00000000 0'''1'''000000 || NO FORCED KILL on || - || 07
|-
| {{stylematrix}} '''80''' 00 00 00 || 00 00 00 '''80''' || 128 || 00000000 00000000 00000000 '''1'''0000000 || Information Bar is displayed on startup || 1.670 || 08
|- bgcolor="#DDDDDD"
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|-
| {{stylematrix}} 00 '''01''' 00 00 || 00 00 '''01''' 00 || 256 || 00000000 00000000 0000000'''1''' 00000000 ||  Information Bar color (white:ON, black:OFF) || - || 09 (08?)
|-
| {{stylematrix}} 00 '''02''' 00 00 || 00 00 '''02''' 00 || 512 || 00000000 00000000 000000'''1'''0 00000000 ||  Use alpha blending to display Information Bar (option for Non-Game) || 1.670 || 10 (08?)
|-
| {{stylematrix}} 00 '''04''' 00 00 || 00 00 '''04''' 00 || 1024 || 00000000 00000000 00000'''1'''00 00000000 || The Application is upgradable || 1.69 || 11
|-
| {{stylematrix}} 00 '''08''' 00 00 || 00 00 '''08''' 00 || 2048 || 00000000 00000000 0000'''1'''000 00000000 ||  ENABLE BGM PROXY on || - || 12
|-
| {{stylematrix}} 00 '''10''' 00 00 || 00 00 '''10''' 00 || 4096 || 00000000 00000000 000'''1'''0000 00000000 ||  ? || - || 13
|-
| {{stylematrix}} 00 '''20''' 00 00 || 00 00 '''20''' 00 || 8192 || 00000000 00000000 00'''1'''00000 00000000 ||  set LIVEAREA UPDATE MODE 1|| - || 14
|-
| {{stylematrix}} 00 '''40''' 00 00 || 00 00 '''40''' 00 || 16384 || 00000000 00000000 0'''1'''000000 00000000 || set LIVEAREA UPDATE MODE 2|| - || 15
|-
| {{stylematrix}} 00 '''80''' 00 00 || 00 00 '''80''' 00 || 32768 || 00000000 00000000 '''1'''0000000 00000000 ||  Communication Zone is not displayed (option for Non-Game such as Facebook or for some system application) || 1.600 || 16
|- bgcolor="#DDDDDD"
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|-
| {{stylematrix}} 00 00 '''01''' 00 || 00 '''01''' 00 00 || 65536 || 00000000 0000000'''1''' 00000000 00000000 || DISABLE LIVEAREA SCREENSHOT on || 03.010 || 17
|-
| {{stylematrix}} 00 00 '''02''' 00 || 00 '''02''' 00 00 || 131072 || 00000000 000000'''1'''0 00000000 00000000 || MUSIC BROWSER EXCLUSIVE LAUNCH on || 02.110 || 18
|-
| {{stylematrix}} 00 00 '''04''' 00 || 00 '''04''' 00 00 || 262144 || 00000000 00000'''1'''00 00000000 00000000 || PARTY EXCLUSIVE LAUNCH on || 02.110 || 19
|-
| {{stylematrix}} 00 00 '''08''' 00 || 00 '''08''' 00 00 || 524288 || 00000000 0000'''1'''000 00000000 00000000 || DISABLE SYSTEM SUSPEND on || 02.110 || 20
|-
| {{stylematrix}} 00 00 '''10''' 00 || 00 '''10''' 00 00 || 1048576 || 00000000 000'''1'''0000 00000000 00000000 ||  - || - || 21
|-
| {{stylematrix}} 00 00 '''20''' 00 || 00 '''20''' 00 00 || 2097152 || 00000000 00'''1'''00000 00000000 00000000 ||  Add a health warning to the first page of the software manual || 03.010 || 22
|-
| {{stylematrix}} 00 00 '''40''' 00 || 00 '''40''' 00 00 || 4194304 || 00000000 0'''1'''000000 00000000 00000000 ||  - || - || 23
|-
| {{stylematrix}} 00 00 '''80''' 00 || 00 '''80''' 00 00 || 8388608 || 00000000 '''1'''0000000 00000000 00000000 ||  Content of Cache0 is cleared when application is killed (option for Non-Game) || - || 24
|- bgcolor="#DDDDDD"
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|-
| {{stylematrix}} 00 00 00 '''01''' || '''01''' 00 00 00 || 16777216 || 0000000'''1''' 00000000 00000000 00000000 ||  Use libNotification to post Notification Message (option for Non-Game: List of Apps using it appears on settings/[[Notifications]]) || 02.110 || 25
|-
| {{stylematrix}} 00 00 00 '''02''' || '''02''' 00 00 00 || 33554432 || 000000'''1''' 000000000 00000000 00000000 ||  Use Twitter dialog || - || 26
|-
| {{stylematrix}} 00 00 00 '''04''' || '''04''' 00 00 00 || 67108864 ||  00000'''1'''00 00000000 00000000 00000000 || The Background application is not killed when LiveArea is peeled off || - || 27
|-
| {{stylematrix}} 00 00 00 '''08''' || '''08''' 00 00 00 || 134217728 || 0000'''1'''000 00000000 00000000 00000000 || App can be launched by Teleport Function on || - || 28
|-
| {{stylematrix}} 00 00 00 '''10''' || '''10''' 00 00 00 || 268435456 || 000'''1'''0000 00000000 00000000 00000000 || Touch pointer on PS TV: Disable touch panel emulation by L3/R3 butons || 03.15 || 29
|-
| {{stylematrix}} 00 00 00 '''20''' || '''20''' 00 00 00 || 536870912 || 00'''1'''00000 00000000 00000000 00000000 ||  - || - || 30
|-
| {{stylematrix}} 00 00 00 '''40''' || '''40''' 00 00 00 || 1073741824 || 0'''1'''000000 00000000 00000000 00000000 ||  - || - || 31
|-
| {{stylematrix}} 00 00 00 '''80''' || '''80''' 00 00 00 || 2147483648 || '''1'''0000000 00000000 00000000 00000000 ||  - || - || 32
|}
 
=====Notes:=====
 
*info bar (top screen):
You can check the status of your PS Vita system on the info bar.
 
PS Vita system-communication status - Active applications - Audio output status - time -Remaining battery charge
 
*Communication zone/ activities:
Move the screen down to reveal the communication zone.
 
====ATTRIBUTE2====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''':  PSVita Game (Digital), Non-Game Application}}
 
This parameter can not exist on some PKG (used for special functions??)


=Categories=
ATTRIBUTE2 is speculated to be sorted before ATTRIBUTE_MINOR


{| class="wikitable"
Speculation and some features could have been removed.
 
See also {{talk}} page
 
FW min for FW column (SYSTEM_VER) seen.
 
Flag № column is for wikify/chat, 32 flags table speculation.
 
{| class="wikitable" style="font-size:small; text-align: center;border:3px ridge #123AAA;"
|-
! colspan="2" | Hexadecimal !! rowspan="2" | Decimal !! rowspan="2" | Binary <br /> (flags) !! rowspan="2" | Notes  <br /> (feature) !! rowspan="2" | [[Template:Firmware_revisions|FW used]] || rowspan="2" | Flag № <br /> (flag required)
|-
! little endian !! big endian
|- bgcolor="#DDDDDD"
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|-
| {{stylematrix}} '''01''' 00 00 00 || 00 00 00 '''01''' || 1 || 00000000 00000000 00000000 0000000'''1''' || - || - || 01
|-
| {{stylematrix}} '''02''' 00 00 00 || 00 00 00 '''02''' || 2 || 00000000 00000000 00000000 000000'''1'''0 || - || - || 02
|-
| {{stylematrix}} '''04''' 00 00 00 || 00 00 00 '''04''' || 4 || 00000000 00000000 00000000 00000'''1'''00 || The Application uses the enlarged memory. (+29MiB) || - || 03
|-
|-
!Name Variable
| {{stylematrix}} '''08''' 00 00 00 || 00 00 00 '''08''' || 8 || 00000000 00000000 00000000 0000'''1'''000 || The Application uses the enlarged memory. (+77MiB) || - || 04
!Length Variable
!Parameter (Example)
!Length Parameter
!Notes
|-
|-
|APP_VER
| {{stylematrix}} '''0C''' 00 00 00 || 00 00 00 '''0C''' || 12 || 00000000 00000000 00000000 0000'''11'''00 || The Application uses the enlarged memory. (+109MiB) || - || 05
|0x8
|-
|1.00
| {{stylematrix}} '''20''' 00 00 00 || 00 00 00 '''20''' || 32 || 00000000 00000000 00000000 00'''1'''00000 || - || - || 06
|0x8
|-
|Application Version
| {{stylematrix}} '''40''' 00 00 00 || 00 00 00 '''40''' || 64 || 00000000 00000000 00000000 0'''1'''000000 || - || - || 07
|-  
|-
|ATTRIBUTE
| {{stylematrix}} '''80''' 00 00 00 || 00 00 00 '''80''' || 128 || 00000000 00000000 00000000 '''1'''0000000 || - || - || 08
|0x9
|- bgcolor="#DDDDDD"
| 00 00 80 81
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|0x4
|-
| Special functions
| {{stylematrix}} 00 '''01''' 00 00 || 00 00 '''01''' 00 || 256 || 00000000 00000000 0000000'''1''' 00000000 || - || - || 09
|-  
|-
|ATTRIBUTE2
| {{stylematrix}} 00 '''02''' 00 00 || 00 00 '''02''' 00 || 512 || 00000000 00000000 000000'''1'''0 00000000 || - || - || 10
|0xA
|-
| 00 00 ?? ??
| {{stylematrix}} 00 '''04''' 00 00 || 00 00 '''04''' 00 || 1024 || 00000000 00000000 00000'''1'''00 00000000 || - || - || 11
|0x4
|-
| This parameter can not exist on some PKG (used for special functions??)
| {{stylematrix}} 00 '''08''' 00 00 || 00 00 '''08''' 00 || 2048 || 00000000 00000000 0000'''1'''000 00000000 || - || - || 12
|-  
|-
|CATEGORY
| {{stylematrix}} 00 '''10''' 00 00 || 00 00 '''10''' 00 || 4096 || 00000000 00000000 000'''1'''0000 00000000 || - || - || 13
  |0x8
|-
|gdc
| {{stylematrix}} 00 '''20''' 00 00 || 00 00 '''20''' 00 || 8192 || 00000000 00000000 00'''1'''00000 00000000 |- || - || 14
  |0x4
|-
|Category
| {{stylematrix}} 00 '''40''' 00 00 || 00 00 '''40''' 00 || 16384 || 00000000 00000000 0'''1'''000000 00000000 || - || - || 15
  |-  
|-
|CONTENT_ID
| {{stylematrix}} 00 '''80''' 00 00 || 00 00 '''80''' 00 || 32768 || 00000000 00000000 '''1'''0000000 00000000 ||  - || - || 16
|0xA
|- bgcolor="#DDDDDD"
|JP0365-PCSG90004_00-SKP2TRIAL0000000
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|0x30
|-
  |
| {{stylematrix}} 00 00 '''01''' 00 || 00 '''01''' 00 00 || 65536 || 00000000 0000000'''1''' 00000000 00000000 || - || - || 17
|-  
|-
|GC_RO_SIZE
| {{stylematrix}} 00 00 '''02''' 00 || 00 '''02''' 00 00 || 131072 || 00000000 000000'''1'''0 00000000 00000000 || - || - || 18
|0xA
|-
|00 00 00 00
| {{stylematrix}} 00 00 '''04''' 00 || 00 '''04''' 00 00 || 262144 || 00000000 00000'''1'''00 00000000 00000000 || - || - || 19
  |0x4
|-
|??
| {{stylematrix}} 00 00 '''08''' 00 || 00 '''08''' 00 00 || 524288 || 00000000 0000'''1'''000 00000000 00000000 || - || - || 20
|-  
|-
|GC_RW_SIZE
| {{stylematrix}} 00 00 '''10''' 00 || 00 '''10''' 00 00 || 1048576 || 00000000 000'''1'''0000 00000000 00000000 || - || - || 21
|0xA
|-
|00 00 00 00
| {{stylematrix}} 00 00 '''20''' 00 || 00 '''20''' 00 00 || 2097152 || 00000000 00'''1'''00000 00000000 00000000 || - || - || 22
|0x4
|-
  |??
| {{stylematrix}} 00 00 '''40''' 00 || 00 '''40''' 00 00 || 4194304 || 00000000 0'''1'''000000 00000000 00000000 || - || - || 23
|-  
|-
|PARENTAL_LEVEL
| {{stylematrix}} 00 00 '''80''' 00 || 00 '''80''' 00 00 || 8388608 || 00000000 '''1'''0000000 00000000 00000000 ||  - || - || 24
|0xE
|- bgcolor="#DDDDDD"
|00 00 00 00
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|0x4
|-
|This should be the same as in the PS3 (from 0 to 11)
| {{stylematrix}} 00 00 00 '''01''' || '''01''' 00 00 00 || 16777216 || 0000000'''1''' 00000000 00000000 00000000 || - || - || 25
  |-  
|-
|PSP2_DISP_VER
| {{stylematrix}} 00 00 00 '''02''' || '''02''' 00 00 00 || 33554432 || 000000'''1''' 000000000 00000000 00000000 || - || - || 26
|0xD
|-
|00 01 00 00
| {{stylematrix}} 00 00 00 '''04''' || '''04''' 00 00 00 || 67108864 || 00000'''1'''00 00000000 00000000 00000000 |- || - || 27
|0x4
|-
|????
| {{stylematrix}} 00 00 00 '''08''' || '''08''' 00 00 00 || 134217728 || 0000'''1'''000 00000000 00000000 00000000 ||  - || - || 28
|-  
|-
|PSP2_SYSTEM_VER
| {{stylematrix}} 00 00 00 '''10''' || '''10''' 00 00 00 || 268435456 || 000'''1'''0000 00000000 00000000 00000000 || - || - || 29
|0xF
|-
|01.500
| {{stylematrix}} 00 00 00 '''20''' || '''20''' 00 00 00 || 536870912 || 00'''1'''00000 00000000 00000000 00000000 || - || - || 30
|0x6
|-
  |Minimum FW to be play this game
| {{stylematrix}} 00 00 00 '''40''' || '''40''' 00 00 00 || 1073741824 || 0'''1'''000000 00000000 00000000 00000000 || - || - || 31
|-  
|-
|PUBTOOLINFO
| {{stylematrix}} 00 00 00 '''80''' || '''80''' 00 00 00 || 2147483648 || '''1'''0000000 00000000 00000000 00000000 ||  - || - || 32
  |0xB
|c_date=20111205
|0x200
|Don't know what this is, but it contain creation data (c_date=20111205)
  |-  
|REGION_DENY
  |0xB
|0x00000000
  |0x4
|
  |-  
|SAVEDATA_MAX_SIZE
|0x11
|00 00 04 00 ( = 1024)
|0x4
| i found this value here OFFSET: 0x1043 (File: JA0003-PCSC80003_00-UKETORNE00000000.PKG) in this case this game can use 1024 Bytes (1MB)
  |-  
|STITLE
  |0x6
|uke-torne
  |0x32
  |Subtitle
|-  
|STITLE_00
|0x9
|uke-torne
|0x32
|Subtitle (00 is for JP)
  |-  
|TITLE
|0x5
|uke-torne
|0x80
  |Title of the game
|-  
|TITLE_00
|0x8
|uke-torne(ウケトルネ)
|0x80
|Title of the game (00 is for JP)
  |-  
|TITLE_ID
  |0x8
|PCSG90004
|0x8
|APP_ID
|-  
|VERSION
|0x8
|01.01
|0x4
  |PKG Version
|-  
|}
|}


= PSF Dump (From 0xBF0 to 0x11F0) =
====ATTRIBUTE_MINOR====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''':  PSVita Game (Digital)}}
 
Can contains 32 flags that can be turned on/off to activate/deactivate features allowed for the game/apps content.
 
Speculation and some features could have been removed.
 
See also {{talk}} page
 
FW min for FW column (SYSTEM_VER) seen.
 
Flag № column is for wikify/chat, 32 flags table speculation.
 
{| class="wikitable" style="font-size:small; text-align: center;border:3px ridge #123AAA;"
|-
! colspan="2" | Hexadecimal !! rowspan="2" | Decimal !! rowspan="2" | Binary <br /> (flags) !! rowspan="2" | Notes  <br /> (feature) !! rowspan="2" | [[Template:Firmware_revisions|FW used]] || rowspan="2" | Flag № <br /> (flag required)
|-
! little endian !! big endian
|- bgcolor="#DDDDDD"
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|-
| {{stylematrix}} '''01''' 00 00 00 || 00 00 00 '''01''' || 1 || 00000000 00000000 00000000 0000000'''1''' || Enter button assignment (circle) || 03.010 || 01
|-
| {{stylematrix}} '''02''' 00 00 00 || 00 00 00 '''02''' || 2 || 00000000 00000000 00000000 000000'''1'''0 || Enter button assignment (cross) || 03.150 || 02
|-
| {{stylematrix}} '''04''' 00 00 00 || 00 00 00 '''04''' || 4 || 00000000 00000000 00000000 00000'''1'''00 || app bootable on Vita TV || - || 03
|-
| {{stylematrix}} '''08''' 00 00 00 || 00 00 00 '''08''' || 8 || 00000000 00000000 00000000 0000'''1'''000 || app NOT bootable on Vita TV || - || 04
|-
| {{stylematrix}} '''10''' 00 00 00 || 00 00 00 '''10''' || 16 || 00000000 00000000 00000000 000'''1'''0000 || app NOT bootable on Vita || 03.010 || 05
|-
| {{stylematrix}} '''20''' 00 00 00 || 00 00 00 '''20''' || 32 || 00000000 00000000 00000000 00'''1'''00000 || - || - || 06
|-
| {{stylematrix}} '''40''' 00 00 00 || 00 00 00 '''40''' || 64 || 00000000 00000000 00000000 0'''1'''000000 || - || - || 07
|-
| {{stylematrix}} '''80''' 00 00 00 || 00 00 00 '''80''' || 128 || 00000000 00000000 00000000 '''1'''0000000 || - || - || 08
|- bgcolor="#DDDDDD"
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|-
| {{stylematrix}} 00 '''01''' 00 00 || 00 00 '''01''' 00 || 256 || 00000000 00000000 0000000'''1''' 00000000 ||  - || - || 09
|-
| {{stylematrix}} 00 '''02''' 00 00 || 00 00 '''02''' 00 || 512 || 00000000 00000000 000000'''1'''0 00000000 ||  - || - || 10
|-
| {{stylematrix}} 00 '''04''' 00 00 || 00 00 '''04''' 00 || 1024 || 00000000 00000000 00000'''1'''00 00000000 ||  - || - || 11
|-
| {{stylematrix}} 00 '''08''' 00 00 || 00 00 '''08''' 00 || 2048 || 00000000 00000000 0000'''1'''000 00000000 ||  - || - || 12
|-
| {{stylematrix}} 00 '''10''' 00 00 || 00 00 '''10''' 00 || 4096 || 00000000 00000000 000'''1'''0000 00000000 ||  - || - || 13
|-
| {{stylematrix}} 00 '''20''' 00 00 || 00 00 '''20''' 00 || 8192 || 00000000 00000000 00'''1'''00000 00000000 ||  - || - || 14
|-
| {{stylematrix}} 00 '''40''' 00 00 || 00 00 '''40''' 00 || 16384 || 00000000 00000000 0'''1'''000000 00000000 ||  - || - || 15
|-
| {{stylematrix}} 00 '''80''' 00 00 || 00 00 '''80''' 00 || 32768 || 00000000 00000000 '''1'''0000000 00000000 ||  - || - || 16
|- bgcolor="#DDDDDD"
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|-
| {{stylematrix}} 00 00 '''01''' 00 || 00 '''01''' 00 00 || 65536 || 00000000 0000000'''1''' 00000000 00000000 || - || - || 17
|-
| {{stylematrix}} 00 00 '''02''' 00 || 00 '''02''' 00 00 || 131072 || 00000000 000000'''1'''0 00000000 00000000 ||  - || - || 18
|-
| {{stylematrix}} 00 00 '''04''' 00 || 00 '''04''' 00 00 || 262144 || 00000000 00000'''1'''00 00000000 00000000 ||  - || - || 19
|-
| {{stylematrix}} 00 00 '''08''' 00 || 00 '''08''' 00 00 || 524288 || 00000000 0000'''1'''000 00000000 00000000 ||  - || - || 20
|-
| {{stylematrix}} 00 00 '''10''' 00 || 00 '''10''' 00 00 || 1048576 || 00000000 000'''1'''0000 00000000 00000000 ||  - || - || 21
|-
| {{stylematrix}} 00 00 '''20''' 00 || 00 '''20''' 00 00 || 2097152 || 00000000 00'''1'''00000 00000000 00000000 ||  - || - || 22
|-
| {{stylematrix}} 00 00 '''40''' 00 || 00 '''40''' 00 00 || 4194304 || 00000000 0'''1'''000000 00000000 00000000 ||  - || - || 23
|-
| {{stylematrix}} 00 00 '''80''' 00 || 00 '''80''' 00 00 || 8388608 || 00000000 '''1'''0000000 00000000 00000000 ||  - || - || 24
|- bgcolor="#DDDDDD"
| style="background-color:black;" | || colspan="6" style="text-align:center;" | ???
|-
| {{stylematrix}} 00 00 00 '''01''' || '''01''' 00 00 00 || 16777216 || 0000000'''1''' 00000000 00000000 00000000 ||  - || - || 25
|-
| {{stylematrix}} 00 00 00 '''02''' || '''02''' 00 00 00 || 33554432 || 000000'''1''' 000000000 00000000 00000000 ||  - || - || 26
|-
| {{stylematrix}} 00 00 00 '''04''' || '''04''' 00 00 00 || 67108864 ||  00000'''1'''00 00000000 00000000 00000000 ||  - || - || 27
|-
| {{stylematrix}} 00 00 00 '''08''' || '''08''' 00 00 00 || 134217728 || 0000'''1'''000 00000000 00000000 00000000 ||  -  || - || 28
|-
| {{stylematrix}} 00 00 00 '''10''' || '''10''' 00 00 00 || 268435456 || 000'''1'''0000 00000000 00000000 00000000 ||  - || - || 29
|-
| {{stylematrix}} 00 00 00 '''20''' || '''20''' 00 00 00 || 536870912 || 00'''1'''00000 00000000 00000000 00000000 ||  - || - || 30
|-
| {{stylematrix}} 00 00 00 '''40''' || '''40''' 00 00 00 || 1073741824 || 0'''1'''000000 00000000 00000000 00000000 ||  - || - || 31
|-
| {{stylematrix}} 00 00 00 '''80''' || '''80''' 00 00 00 || 2147483648 || '''1'''0000000 00000000 00000000 00000000 ||  - || - || 32
|}
 
====BOOT_FILE====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x20 (32 bytes)<br />'''param_len''': ? }}
{{Boxtip1|content='''Used by''': PSVita Game (Digital)}}
 
-
 
====BOOT_INSTALL_DIR====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x0C (12 bytes)<br />'''param_len''': 9? }}
{{Boxtip1|content='''Used by''': Apps (gda)}}
 
Similar to TITLE_ID, identifier of the content, in the format WXYZ12345.
 
====CATEGORY====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x (4 bytes)}}
{{Boxtip1|content='''Used by''':  All?}}
 
Merged with [http://www.psdevwiki.com/ps4/Param.sfo#CATEGORY PS4 Category]
 
{| class="wikitable" style="text-align: center;border:2px dotted #123AAA;"
|-
! {{cellcolors|#505346|white}} Value
! {{cellcolors|#505346|white}} Description
! {{cellcolors|#505346|white}} PSVita
! {{cellcolors|#505346|white}} PS4
! {{cellcolors|#505346|white}} Note
|-
| ac  || Additional Content || {{Yes2}} Yes || {{Yes2}} Yes || (PS4 theme also) e.g.: TOY MAKER for THE PLAYROOM (PS4)
|-
| bd  || Blu-ray Disc? || {{dunno}} Unknown || {{Yes2}} Yes ||
|-
| gc  || Game Content(?) || {{Yes2}} Yes || {{dunno}} Unknown ||
|-
| gd  || Game Digital Application || {{Yes2}} Yes || {{Yes2}} Yes ||
|-
| {{cellcolors|#aaaaaa|white}}gda || System Application || {{Yes2}} Yes || {{dunno}} Unknown ||
|-
| {{cellcolors|#aaaaaa|white}}gdb || - || {{Yes2}} Yes || {{dunno}} Unknown || e.g.: WelcomePark NPXS10007 (PSVita)
|-
| {{cellcolors|#51001f|white}}gdc || Non-Game Big Application || {{Yes2}} Yes || {{Yes2}} Yes(?) || e.g.: Wake-up Club and others [[Talk:Title_ID#PCS|PCSx title ID]] (PSVita)
|-
| {{cellcolors|#000fff|white}}gdd || BG Application || {{Yes2}} Yes || {{dunno}} Unknown ||
|-
| {{cellcolors|#00ff11|white}}gde || Non-Game Mini App / Video Service Native App || {{dunno}} Unknown || {{Yes2}} Yes ||
|-
| {{cellcolors|#ff1111|white}}gdk || Video Service Web App || {{dunno}} Unknown || {{Yes2}} Yes || e.g.: Amazon Instant Video (PS4)
|-
| {{cellcolors|#11f1f1|white}}gdl || PS Cloud Beta App || {{dunno}} Unknown || {{Yes2}} Yes ||
|-
| gdO  || PS2 Classic || {{dunno}} Unknown || {{Yes2}} Yes || previous typo: gd0 or gdO?
|-
| gp  || Game Patch || {{Yes2}} Yes || {{Yes2}} Yes ||
|-
| {{cellcolors|#51001f|white}}gpc || Non-Game Big App Patch || {{Yes2}} Yes || {{dunno}} Unknown ||
|-
| {{cellcolors|#000fff|white}}gpd || BG Application patch || {{Yes2}} Yes || {{dunno}} Unknown ||
|-
| {{cellcolors|#00ff11|white}}gpe || Non-Game Mini App Patch / Video Service Native App Patch || {{dunno}} Unknown || {{Yes2}} Yes ||
|-
| {{cellcolors|#ff1111|white}}gpk || Video Service Web App Patch || {{dunno}} Unknown || {{Yes2}} Yes ||
|-
| {{cellcolors|#11f1f1|white}}gpl || PS Cloud Beta App Patch || {{dunno}} Unknown || {{Yes2}} Yes ||
|-
| sd  || SaveData || {{Yes2}} Yes || {{Yes2}} Yes ||
|-
| la  || LiveArea (Vita) || {{dunno}} Unknown || {{dunno}} Unknown ||
|-
| wda  || - || {{Yes2}} Yes || {{dunno}} Unknown || e.g.: (PSVita) User's Guide NPXS10060
|-
|}
 
====CONTENT_ID====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x30 (48 bytes)<br />'''param_len''': 0x25 (37 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
The format is: XXYYYY-NP_COMMUNICATION_ID-LICENSE_ID.
 
<small>e.g.: JP0365-PCSG90004_00-SKP2TRIAL0000000</small>
 
See [http://www.psdevwiki.com/ps4/Content_ID Content ID]
 
====CONTENT_LOCATION====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x100 (256 bytes)<br />'''param_len''': variable}}
{{Boxtip1|content='''Used by''': Non-Game Application (wda)}}
 
Seen:
 
*sceman:
*sceman:near
 
====EBOOT_APP_MEMSIZE====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''':  PSVita Game (Digital)}}
 
-
 
====EBOOT_ATTRIBUTE====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''':  PSVita Game (Digital)}}
 
-
 
====EBOOT_PHY_MEMSIZE====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''':  PSVita Game (Digital)}}
 
-
 
====GC_RO_SIZE====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''':  PSVita Game (Digital), Non-Game Application}}
 
PS Vita card R/O size
 
Seen: 0x1C0000 (1835008), 0x380000 (3670016)
 
====GC_RW_SIZE====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''':  PSVita Game (Digital), Non-Game Application}}
 
PS Vita card R/W size
 
Seen: 00 80 01 00 -->0x00018000--> 98304 bytes (Virtue's Last Reward PCSB00205)
 
====IMPORT_SAVEDATA_INFO====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': Variable <br />'''param_len''': 0xXX? (xx bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital)}}
 
Similar to TITLE, information of the content used by Shared Save Data.
 
====INSTALL_DIR_ADDCONT_x====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': ?x? (? bytes)<br />'''param_len''': 0x? (? bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital)}}
 
Where x is a number from 1 to 7(?).
 
====INSTALL_DIR_SAVEDATA====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0xc (12 bytes)<br />'''param_len''': 0x9? (9 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital)}}
 
Similar to TITLE_ID, identifier of the content used by Shared Save Data, in the format '''WXYZ12345'''.
 
Used by demo trials/cross platforms titles.
 
====INSTALL_DIR_SAVEDATA_ADD_x====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0xc (12 bytes)<br />'''param_len''': 0x9? (9 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital)}}
 
Where x is a number from 1 to 7(?).
 
Similar to TITLE_ID, identifier of the content used by Shared Save Data, in the format '''WXYZ12345'''.
 
Used by PS VITA episodic/serie titles (e.g.:Ateliers's).
 
====LAREA_TYPE====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4? (4 bytes)}}
{{Boxtip1|content='''Used by''':  Non-Game Application}}
 
Used by some [[Title_ID|system application]] (category: gda).
 
Seen: 0x03
 
====NP_COMMUNICATION_ID====
{{Boxinfo3|content='''param_fmt''': utf8<br />'''param_max_len''': 0x10 (16 bytes)<br />'''param_len''': 0xD (13 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital)}}
 
[http://www.psdevwiki.com/ps4/NP_Communication_ID '''N'''etwork '''P'''latform '''Communication''' '''ID'''].
 
The format is 4 letters + 5 numbers with optionally a subid (usually 0) : NPWRyyyyy_zz (e.g. NPWR00001_00)
 
====PARENT_INSTALL_DIR====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x0C (12 bytes)<br />'''param_len''': 9? }}
{{Boxtip1|content='''Used by''': Apps (gda)}}
 
Title ID.
 
====PARENTAL_LEVEL====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
 
It is a [http://en.wikipedia.org/wiki/Video_game_content_rating_system scale to rate the content] for the different users based in [[LiveArea:Parental_Controls|parental control settings]] and international rating systems as: [http://en.wikipedia.org/wiki/Pan_European_Game_Information PEGI], [http://en.wikipedia.org/wiki/Entertainment_Software_Rating_Board ESRB], [http://en.wikipedia.org/wiki/Computer_Entertainment_Rating_Organization CERO], etc...
 
This should be the same as in the PS3/PS4 (from 0 to 11)
 
====PSP2_DISP_VER====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x8 (8 bytes)<br />'''param_len''': 0x7? (8 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
Minimum [[Template:Firmware_revisions|Firmware]] for display needed to play this title.
 
====PSP2_SYSTEM_ROOT_VER====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital)}}
 
-
 
====PSP2_SYSTEM_VER====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
Minimum [[Template:Firmware_revisions|Firmware]] needed to play this title.
 
====PUBTOOLINFO====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x200 (512 bytes)<br />'''param_len''':variable}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
Contains infos (UTF-8), separated by a comma (0x2C):
*c_date=yyyymmdd (creation date format?)
*sdk_ver=xxxxxxxx (digits to indicate [[SCEI_PSVita_SDK|PSVita SDK version]]?) : seen: 01650000, 01800000, 02500000, 03000000
 
====REGION_DENY====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''':  PSVita Game (Digital), Non-Game Application}}
 
Regions restrictions for the content.
 
See [http://www.psdevwiki.com/ps3/PARAM.SFO#REGION_DENY PS3 Region deny]
 
====SAFEMEMORY_MODE====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''': Non-Game Application}}
 
Used by NPXS10003 Internet browser with  value of 0x80 00 00 80.
 
====SAVEDATA_MAX_SIZE====
{{Boxinfo3|content='''param_fmt''': uint32_t<br />'''param_max_len''': 0x4 (4 bytes)<br />'''param_len''': 0x4 (4 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
Save Data Quota
 
e.g.: 0x00000400 ( = 1024) this game can use 1024 Bytes (1MB)
 
Seen: 0x400 (1024), 0x800 (2048), 0x1000 (4096), 0x2000 (8192), 0x2800 (10240), 0x5000 (20480), 0x20000 (131072), 0x100000 (1048576)
 
====STITLE====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x34 (52 bytes)<br />'''param_len''': variable}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
Short Title for default [[Languages|language]].
 
====STITLE_xx====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x34 (52 bytes)<br />'''param_len''': variable}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital)}}
 
Same than STITLE but for [[Languages|localized languages]].
 
An .SFO can contain several STITLE_'''xx''' where '''xx''' is a number for a regional code.
 
The "default" TITLE is always present when other "localized" TITLE_'''xx''' are used.
 
====SUPPORT_URI====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': variable 0x200? (512 bytes)<br />'''param_len''': variable?}}
{{Boxtip1|content='''Used by''': Non-Game Application}}
 
Used to identify the name of a resource
 
Seen:
 
{| class="wikitable sortable" style="text-align: center;border:2px dotted #123AAA;"
|-
! {{cellcolors|#505346|white}} Value
! {{cellcolors|#505346|white}} Note
|-
| <near:> || NPXS10000 Near
|-
| <pspy:> || NPXS10001 Party
|-
| psns: || NPXS10002 PS Store
|-
| http:.https:.<sceman:>.<search:>.<wbapp0:> || NPXS10003 Internet Browser
|-
| <photo:>.<camera:> || NPXS10004 Photos
|-
| psmn: || NPXS100040 Mobile Network Operator apps
|-
| sonyreader:// || PCSC80012 Sony reader
|-
|}
 
 
See [[Title_ID|Title ID]]
 
====SYSPRM====
{{Boxinfo3|content='''param_fmt''': utf-8 Special Mode<br />'''param_max_len''': 0x0? (4 bytes)<br />'''param_len''': 0x10 (16 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital)}}
 
-
 
====TARGET_APP_VER====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x8 (8 bytes)<br />'''param_len''': variable?}}
{{Boxtip1|content='''Used by''': Non-Game Application}}
 
Target Application Version.
 
Seen: 00.00
 
====TITLE====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x80 (128 bytes)<br />'''param_len''': variable}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
Default "title of the game" for [[Languages|all languages]].
 
====TITLE_xx====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x80 (128 bytes)<br />'''param_len''': variable}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital)}}
 
Same than STITLE.
 
====TITLE_ID====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x0C (12 bytes)<br />'''param_len''': 0xA (10 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
Identifier ( [http://www.psdevwiki.com/ps4/Productcode Productcode] ) of the content, in the format '''WXYZ12345'''.
 
See also [[Title_ID]]
 
====VERSION====
{{Boxinfo3|content='''param_fmt''': utf-8<br />'''param_max_len''': 0x8 (8 bytes)<br />'''param_len''': 0x6 (6 bytes)}}
{{Boxtip1|content='''Used by''': PSVita Game (Digital), Non-Game Application}}
 
Version content of the game: Disc revision, or Package revision. The number increases when the content is re-released or re-packaged for whatever reason that doesn't affect the main executable (e.g. when a disc game reaches platinum sales, or "game of the year edition" including extra contents).
 
----
 
=== PSF Dump (From 0xBF0 to 0x11F0) ===
The length of this is 0x5D0
The length of this is 0x5D0
<pre>
<pre>

Latest revision as of 11:05, 27 February 2024


See also PARAM.SFO on:

See also Discussion page

Internal Structure[edit | edit source]

The values contained in a System File Object can be simplyfied as inputs/outputs for/from the content: Boot modifyers (most of the int32 datas) that are sent to the content when is executed to activate specific features or settings (e.g. audio and video modes of a game). Information texts (most of the utf8 datas) about the content and its restrictions (e.g. title and version of a game).

Header SFO[edit | edit source]

This is the Header of a SFO/PSF file.

Offset Data Length Notes
0x00 00 50 53 46 0x04 " PSF" Magic
0x04 01 01 00 00 0x04 Version
0x08 xx xx 00 00 0x04 Key table start offset
0x0C xx xx 00 00 0x04 Data table start offset
0x10 xx 00 00 00 0x04 № of entries in index table (params/values)
typedef struct{
    int magic; //PSF
    int version; //1.1
    int keyTableOffset;
    int dataTableOffset;
    int indexTableEntries;
} sfo_header_t;

Index table[edit | edit source]

Starting at offset 0x14, this structure (0x10) is repeated the number of times defined in the header ( № of parameters)

Offset Data Length Notes
0x14 00 00 0x02 Key table offset
0x16 04 0x 0x02 param_fmt (type of data)
0x18 xx xx 00 00 0x04 parameter length
0x1C xx xx 00 00 0x04 parameter max length
0x20 00 00 00 00 0x04 Data table offset
typedef struct{
    u16 keyOffset; //offset of keytable + keyOffset
    u16 param_fmt; //enum (see below)
    u32 paramLen;
    u32 paramMaxLen;
    u32 dataOffset; //offset of datatable + dataOffset
} indexTableEntry_t;

Used on index table, there are 3 variables:

0x6+0x10*i
(i=0,1,2,3,4,5,...)

Param_fmt Arch Format Notes
04 00 Little Endian utf-8 Special Mode Used in contents generated by the system (e.g.: save data)
04 02 Little Endian utf-8 Character string, NULL finished (0x00)
04 04 Little Endian integer 32 bits unsigned

Key table[edit | edit source]

Ordered alphabetically, each name of parameters of this table is NULL terminated with 1 blank byte (0x00) to separate them.

The table has padding at the end to align their size to a multiply of 4 ( if matches with a multiply of 4 this padding doesn't exist)

Data table[edit | edit source]

  • UTF-8 entries never uses all the reserved bytes, needs 1 blank byte (0x00) after the last character.
  • Integer entries uses all the reserved bytes.

Algorithm[edit | edit source]

(i=0,1,2,3,4,5,...)

  • Get Position Value
    • [PSF offset] + [Value Start] + (0x14+(0x10*i))
  • Get Type
    • [PSF offset] + (0x16 * (0x10*i))
  • Get Length Param
    • [PSF offset] + (0x1C * (0x10*i))
  • Get Length Value
    • [PSF offset] + (0x24+0x10*i)-(0x14+0x10*i)
  • Get Position Param
    • [PSF offset] + [Param Start] + (0x20+(0x10*i))

for any problems, you can give a look into my sourcecode: sfo_stuff.c

Parameters Descriptions[edit | edit source]

APP_VER[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x8 (8 bytes)
param_len: 0x6 (6 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

The format is XX.YY where "XX" and "YY" are numbers, and the point "." is included in the string, e.g: 01.00 for the first stable version released.

ATTRIBUTE[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

Can contains 32 flags that can be turned on/off to activate/deactivate features allowed for the game/apps content.

Speculation and some features could have been removed.

See also Discussion page

FW min for FW column (SYSTEM_VER) seen.

Flag № column is for wikify/chat, 32 flags table speculation.

Hexadecimal Decimal Binary
(flags)
Notes
(feature)
FW used Flag №
(flag required)
little endian big endian
???
01 00 00 00 00 00 00 01 1 00000000 00000000 00000000 00000001 Used 1.69 01
02 00 00 00 00 00 00 02 2 00000000 00000000 00000000 00000010 Use liblocation in order to get location - 02
04 00 00 00 00 00 00 04 4 00000000 00000000 00000000 00000100 - - 03
08 00 00 00 00 00 00 08 8 00000000 00000000 00000000 00001000 NO SUSPEND DEACTIVATE on - 04
10 00 00 00 00 00 00 10 16 00000000 00000000 00000000 00010000 - - 05
20 00 00 00 00 00 00 20 32 00000000 00000000 00000000 00100000 - - 06
40 00 00 00 00 00 00 40 64 00000000 00000000 00000000 01000000 NO FORCED KILL on - 07
80 00 00 00 00 00 00 80 128 00000000 00000000 00000000 10000000 Information Bar is displayed on startup 1.670 08
???
00 01 00 00 00 00 01 00 256 00000000 00000000 00000001 00000000 Information Bar color (white:ON, black:OFF) - 09 (08?)
00 02 00 00 00 00 02 00 512 00000000 00000000 00000010 00000000 Use alpha blending to display Information Bar (option for Non-Game) 1.670 10 (08?)
00 04 00 00 00 00 04 00 1024 00000000 00000000 00000100 00000000 The Application is upgradable 1.69 11
00 08 00 00 00 00 08 00 2048 00000000 00000000 00001000 00000000 ENABLE BGM PROXY on - 12
00 10 00 00 00 00 10 00 4096 00000000 00000000 00010000 00000000 ? - 13
00 20 00 00 00 00 20 00 8192 00000000 00000000 00100000 00000000 set LIVEAREA UPDATE MODE 1 - 14
00 40 00 00 00 00 40 00 16384 00000000 00000000 01000000 00000000 set LIVEAREA UPDATE MODE 2 - 15
00 80 00 00 00 00 80 00 32768 00000000 00000000 10000000 00000000 Communication Zone is not displayed (option for Non-Game such as Facebook or for some system application) 1.600 16
???
00 00 01 00 00 01 00 00 65536 00000000 00000001 00000000 00000000 DISABLE LIVEAREA SCREENSHOT on 03.010 17
00 00 02 00 00 02 00 00 131072 00000000 00000010 00000000 00000000 MUSIC BROWSER EXCLUSIVE LAUNCH on 02.110 18
00 00 04 00 00 04 00 00 262144 00000000 00000100 00000000 00000000 PARTY EXCLUSIVE LAUNCH on 02.110 19
00 00 08 00 00 08 00 00 524288 00000000 00001000 00000000 00000000 DISABLE SYSTEM SUSPEND on 02.110 20
00 00 10 00 00 10 00 00 1048576 00000000 00010000 00000000 00000000 - - 21
00 00 20 00 00 20 00 00 2097152 00000000 00100000 00000000 00000000 Add a health warning to the first page of the software manual 03.010 22
00 00 40 00 00 40 00 00 4194304 00000000 01000000 00000000 00000000 - - 23
00 00 80 00 00 80 00 00 8388608 00000000 10000000 00000000 00000000 Content of Cache0 is cleared when application is killed (option for Non-Game) - 24
???
00 00 00 01 01 00 00 00 16777216 00000001 00000000 00000000 00000000 Use libNotification to post Notification Message (option for Non-Game: List of Apps using it appears on settings/Notifications) 02.110 25
00 00 00 02 02 00 00 00 33554432 0000001 000000000 00000000 00000000 Use Twitter dialog - 26
00 00 00 04 04 00 00 00 67108864 00000100 00000000 00000000 00000000 The Background application is not killed when LiveArea is peeled off - 27
00 00 00 08 08 00 00 00 134217728 00001000 00000000 00000000 00000000 App can be launched by Teleport Function on - 28
00 00 00 10 10 00 00 00 268435456 00010000 00000000 00000000 00000000 Touch pointer on PS TV: Disable touch panel emulation by L3/R3 butons 03.15 29
00 00 00 20 20 00 00 00 536870912 00100000 00000000 00000000 00000000 - - 30
00 00 00 40 40 00 00 00 1073741824 01000000 00000000 00000000 00000000 - - 31
00 00 00 80 80 00 00 00 2147483648 10000000 00000000 00000000 00000000 - - 32
Notes:[edit | edit source]
  • info bar (top screen):

You can check the status of your PS Vita system on the info bar.

PS Vita system-communication status - Active applications - Audio output status - time -Remaining battery charge

  • Communication zone/ activities:

Move the screen down to reveal the communication zone.

ATTRIBUTE2[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

This parameter can not exist on some PKG (used for special functions??)

ATTRIBUTE2 is speculated to be sorted before ATTRIBUTE_MINOR

Speculation and some features could have been removed.

See also Discussion page

FW min for FW column (SYSTEM_VER) seen.

Flag № column is for wikify/chat, 32 flags table speculation.

Hexadecimal Decimal Binary
(flags)
Notes
(feature)
FW used Flag №
(flag required)
little endian big endian
???
01 00 00 00 00 00 00 01 1 00000000 00000000 00000000 00000001 - - 01
02 00 00 00 00 00 00 02 2 00000000 00000000 00000000 00000010 - - 02
04 00 00 00 00 00 00 04 4 00000000 00000000 00000000 00000100 The Application uses the enlarged memory. (+29MiB) - 03
08 00 00 00 00 00 00 08 8 00000000 00000000 00000000 00001000 The Application uses the enlarged memory. (+77MiB) - 04
0C 00 00 00 00 00 00 0C 12 00000000 00000000 00000000 00001100 The Application uses the enlarged memory. (+109MiB) - 05
20 00 00 00 00 00 00 20 32 00000000 00000000 00000000 00100000 - - 06
40 00 00 00 00 00 00 40 64 00000000 00000000 00000000 01000000 - - 07
80 00 00 00 00 00 00 80 128 00000000 00000000 00000000 10000000 - - 08
???
00 01 00 00 00 00 01 00 256 00000000 00000000 00000001 00000000 - - 09
00 02 00 00 00 00 02 00 512 00000000 00000000 00000010 00000000 - - 10
00 04 00 00 00 00 04 00 1024 00000000 00000000 00000100 00000000 - - 11
00 08 00 00 00 00 08 00 2048 00000000 00000000 00001000 00000000 - - 12
00 10 00 00 00 00 10 00 4096 00000000 00000000 00010000 00000000 - - 13
00 20 00 00 00 00 20 00 8192 00000000 00000000 00100000 00000000 - - 14
00 40 00 00 00 00 40 00 16384 00000000 00000000 01000000 00000000 - - 15
00 80 00 00 00 00 80 00 32768 00000000 00000000 10000000 00000000 - - 16
???
00 00 01 00 00 01 00 00 65536 00000000 00000001 00000000 00000000 - - 17
00 00 02 00 00 02 00 00 131072 00000000 00000010 00000000 00000000 - - 18
00 00 04 00 00 04 00 00 262144 00000000 00000100 00000000 00000000 - - 19
00 00 08 00 00 08 00 00 524288 00000000 00001000 00000000 00000000 - - 20
00 00 10 00 00 10 00 00 1048576 00000000 00010000 00000000 00000000 - - 21
00 00 20 00 00 20 00 00 2097152 00000000 00100000 00000000 00000000 - - 22
00 00 40 00 00 40 00 00 4194304 00000000 01000000 00000000 00000000 - - 23
00 00 80 00 00 80 00 00 8388608 00000000 10000000 00000000 00000000 - - 24
???
00 00 00 01 01 00 00 00 16777216 00000001 00000000 00000000 00000000 - - 25
00 00 00 02 02 00 00 00 33554432 0000001 000000000 00000000 00000000 - - 26
00 00 00 04 04 00 00 00 67108864 00000100 00000000 00000000 00000000 - - 27
00 00 00 08 08 00 00 00 134217728 00001000 00000000 00000000 00000000 - - 28
00 00 00 10 10 00 00 00 268435456 00010000 00000000 00000000 00000000 - - 29
00 00 00 20 20 00 00 00 536870912 00100000 00000000 00000000 00000000 - - 30
00 00 00 40 40 00 00 00 1073741824 01000000 00000000 00000000 00000000 - - 31
00 00 00 80 80 00 00 00 2147483648 10000000 00000000 00000000 00000000 - - 32

ATTRIBUTE_MINOR[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital)

Can contains 32 flags that can be turned on/off to activate/deactivate features allowed for the game/apps content.

Speculation and some features could have been removed.

See also Discussion page

FW min for FW column (SYSTEM_VER) seen.

Flag № column is for wikify/chat, 32 flags table speculation.

Hexadecimal Decimal Binary
(flags)
Notes
(feature)
FW used Flag №
(flag required)
little endian big endian
???
01 00 00 00 00 00 00 01 1 00000000 00000000 00000000 00000001 Enter button assignment (circle) 03.010 01
02 00 00 00 00 00 00 02 2 00000000 00000000 00000000 00000010 Enter button assignment (cross) 03.150 02
04 00 00 00 00 00 00 04 4 00000000 00000000 00000000 00000100 app bootable on Vita TV - 03
08 00 00 00 00 00 00 08 8 00000000 00000000 00000000 00001000 app NOT bootable on Vita TV - 04
10 00 00 00 00 00 00 10 16 00000000 00000000 00000000 00010000 app NOT bootable on Vita 03.010 05
20 00 00 00 00 00 00 20 32 00000000 00000000 00000000 00100000 - - 06
40 00 00 00 00 00 00 40 64 00000000 00000000 00000000 01000000 - - 07
80 00 00 00 00 00 00 80 128 00000000 00000000 00000000 10000000 - - 08
???
00 01 00 00 00 00 01 00 256 00000000 00000000 00000001 00000000 - - 09
00 02 00 00 00 00 02 00 512 00000000 00000000 00000010 00000000 - - 10
00 04 00 00 00 00 04 00 1024 00000000 00000000 00000100 00000000 - - 11
00 08 00 00 00 00 08 00 2048 00000000 00000000 00001000 00000000 - - 12
00 10 00 00 00 00 10 00 4096 00000000 00000000 00010000 00000000 - - 13
00 20 00 00 00 00 20 00 8192 00000000 00000000 00100000 00000000 - - 14
00 40 00 00 00 00 40 00 16384 00000000 00000000 01000000 00000000 - - 15
00 80 00 00 00 00 80 00 32768 00000000 00000000 10000000 00000000 - - 16
???
00 00 01 00 00 01 00 00 65536 00000000 00000001 00000000 00000000 - - 17
00 00 02 00 00 02 00 00 131072 00000000 00000010 00000000 00000000 - - 18
00 00 04 00 00 04 00 00 262144 00000000 00000100 00000000 00000000 - - 19
00 00 08 00 00 08 00 00 524288 00000000 00001000 00000000 00000000 - - 20
00 00 10 00 00 10 00 00 1048576 00000000 00010000 00000000 00000000 - - 21
00 00 20 00 00 20 00 00 2097152 00000000 00100000 00000000 00000000 - - 22
00 00 40 00 00 40 00 00 4194304 00000000 01000000 00000000 00000000 - - 23
00 00 80 00 00 80 00 00 8388608 00000000 10000000 00000000 00000000 - - 24
???
00 00 00 01 01 00 00 00 16777216 00000001 00000000 00000000 00000000 - - 25
00 00 00 02 02 00 00 00 33554432 0000001 000000000 00000000 00000000 - - 26
00 00 00 04 04 00 00 00 67108864 00000100 00000000 00000000 00000000 - - 27
00 00 00 08 08 00 00 00 134217728 00001000 00000000 00000000 00000000 - - 28
00 00 00 10 10 00 00 00 268435456 00010000 00000000 00000000 00000000 - - 29
00 00 00 20 20 00 00 00 536870912 00100000 00000000 00000000 00000000 - - 30
00 00 00 40 40 00 00 00 1073741824 01000000 00000000 00000000 00000000 - - 31
00 00 00 80 80 00 00 00 2147483648 10000000 00000000 00000000 00000000 - - 32

BOOT_FILE[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x20 (32 bytes)
param_len: ?
Tip
Used by: PSVita Game (Digital)

-

BOOT_INSTALL_DIR[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x0C (12 bytes)
param_len: 9?
Tip
Used by: Apps (gda)

Similar to TITLE_ID, identifier of the content, in the format WXYZ12345.

CATEGORY[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x4 (4 bytes)
param_len: 0x (4 bytes)
Tip
Used by: All?

Merged with PS4 Category

Value Description PSVita PS4 Note
ac Additional Content Yes Yes (PS4 theme also) e.g.: TOY MAKER for THE PLAYROOM (PS4)
bd Blu-ray Disc? Unknown Yes
gc Game Content(?) Yes Unknown
gd Game Digital Application Yes Yes
gda System Application Yes Unknown
gdb - Yes Unknown e.g.: WelcomePark NPXS10007 (PSVita)
gdc Non-Game Big Application Yes Yes(?) e.g.: Wake-up Club and others PCSx title ID (PSVita)
gdd BG Application Yes Unknown
gde Non-Game Mini App / Video Service Native App Unknown Yes
gdk Video Service Web App Unknown Yes e.g.: Amazon Instant Video (PS4)
gdl PS Cloud Beta App Unknown Yes
gdO PS2 Classic Unknown Yes previous typo: gd0 or gdO?
gp Game Patch Yes Yes
gpc Non-Game Big App Patch Yes Unknown
gpd BG Application patch Yes Unknown
gpe Non-Game Mini App Patch / Video Service Native App Patch Unknown Yes
gpk Video Service Web App Patch Unknown Yes
gpl PS Cloud Beta App Patch Unknown Yes
sd SaveData Yes Yes
la LiveArea (Vita) Unknown Unknown
wda - Yes Unknown e.g.: (PSVita) User's Guide NPXS10060

CONTENT_ID[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x30 (48 bytes)
param_len: 0x25 (37 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

The format is: XXYYYY-NP_COMMUNICATION_ID-LICENSE_ID.

e.g.: JP0365-PCSG90004_00-SKP2TRIAL0000000

See Content ID

CONTENT_LOCATION[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x100 (256 bytes)
param_len: variable
Tip
Used by: Non-Game Application (wda)

Seen:

  • sceman:
  • sceman:near

EBOOT_APP_MEMSIZE[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital)

-

EBOOT_ATTRIBUTE[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital)

-

EBOOT_PHY_MEMSIZE[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital)

-

GC_RO_SIZE[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

PS Vita card R/O size

Seen: 0x1C0000 (1835008), 0x380000 (3670016)

GC_RW_SIZE[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

PS Vita card R/W size

Seen: 00 80 01 00 -->0x00018000--> 98304 bytes (Virtue's Last Reward PCSB00205)

IMPORT_SAVEDATA_INFO[edit | edit source]

Info
param_fmt: utf-8
param_max_len: Variable
param_len: 0xXX? (xx bytes)
Tip
Used by: PSVita Game (Digital)

Similar to TITLE, information of the content used by Shared Save Data.

INSTALL_DIR_ADDCONT_x[edit | edit source]

Info
param_fmt: utf-8
param_max_len: ?x? (? bytes)
param_len: 0x? (? bytes)
Tip
Used by: PSVita Game (Digital)

Where x is a number from 1 to 7(?).

INSTALL_DIR_SAVEDATA[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0xc (12 bytes)
param_len: 0x9? (9 bytes)
Tip
Used by: PSVita Game (Digital)

Similar to TITLE_ID, identifier of the content used by Shared Save Data, in the format WXYZ12345.

Used by demo trials/cross platforms titles.

INSTALL_DIR_SAVEDATA_ADD_x[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0xc (12 bytes)
param_len: 0x9? (9 bytes)
Tip
Used by: PSVita Game (Digital)

Where x is a number from 1 to 7(?).

Similar to TITLE_ID, identifier of the content used by Shared Save Data, in the format WXYZ12345.

Used by PS VITA episodic/serie titles (e.g.:Ateliers's).

LAREA_TYPE[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4? (4 bytes)
Tip
Used by: Non-Game Application

Used by some system application (category: gda).

Seen: 0x03

NP_COMMUNICATION_ID[edit | edit source]

Info
param_fmt: utf8
param_max_len: 0x10 (16 bytes)
param_len: 0xD (13 bytes)
Tip
Used by: PSVita Game (Digital)

Network Platform Communication ID.

The format is 4 letters + 5 numbers with optionally a subid (usually 0) : NPWRyyyyy_zz (e.g. NPWR00001_00)

PARENT_INSTALL_DIR[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x0C (12 bytes)
param_len: 9?
Tip
Used by: Apps (gda)

Title ID.

PARENTAL_LEVEL[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application


It is a scale to rate the content for the different users based in parental control settings and international rating systems as: PEGI, ESRB, CERO, etc...

This should be the same as in the PS3/PS4 (from 0 to 11)

PSP2_DISP_VER[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x8 (8 bytes)
param_len: 0x7? (8 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

Minimum Firmware for display needed to play this title.

PSP2_SYSTEM_ROOT_VER[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital)

-

PSP2_SYSTEM_VER[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

Minimum Firmware needed to play this title.

PUBTOOLINFO[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x200 (512 bytes)
param_len:variable
Tip
Used by: PSVita Game (Digital), Non-Game Application

Contains infos (UTF-8), separated by a comma (0x2C):

  • c_date=yyyymmdd (creation date format?)
  • sdk_ver=xxxxxxxx (digits to indicate PSVita SDK version?) : seen: 01650000, 01800000, 02500000, 03000000

REGION_DENY[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

Regions restrictions for the content.

See PS3 Region deny

SAFEMEMORY_MODE[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: Non-Game Application

Used by NPXS10003 Internet browser with value of 0x80 00 00 80.

SAVEDATA_MAX_SIZE[edit | edit source]

Info
param_fmt: uint32_t
param_max_len: 0x4 (4 bytes)
param_len: 0x4 (4 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

Save Data Quota

e.g.: 0x00000400 ( = 1024) this game can use 1024 Bytes (1MB)

Seen: 0x400 (1024), 0x800 (2048), 0x1000 (4096), 0x2000 (8192), 0x2800 (10240), 0x5000 (20480), 0x20000 (131072), 0x100000 (1048576)

STITLE[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x34 (52 bytes)
param_len: variable
Tip
Used by: PSVita Game (Digital), Non-Game Application

Short Title for default language.

STITLE_xx[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x34 (52 bytes)
param_len: variable
Tip
Used by: PSVita Game (Digital)

Same than STITLE but for localized languages.

An .SFO can contain several STITLE_xx where xx is a number for a regional code.

The "default" TITLE is always present when other "localized" TITLE_xx are used.

SUPPORT_URI[edit | edit source]

Info
param_fmt: utf-8
param_max_len: variable 0x200? (512 bytes)
param_len: variable?
Tip
Used by: Non-Game Application

Used to identify the name of a resource

Seen:

Value Note
<near:> NPXS10000 Near
<pspy:> NPXS10001 Party
psns: NPXS10002 PS Store
http:.https:.<sceman:>.<search:>.<wbapp0:> NPXS10003 Internet Browser
<photo:>.<camera:> NPXS10004 Photos
psmn: NPXS100040 Mobile Network Operator apps
sonyreader:// PCSC80012 Sony reader


See Title ID

SYSPRM[edit | edit source]

Info
param_fmt: utf-8 Special Mode
param_max_len: 0x0? (4 bytes)
param_len: 0x10 (16 bytes)
Tip
Used by: PSVita Game (Digital)

-

TARGET_APP_VER[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x8 (8 bytes)
param_len: variable?
Tip
Used by: Non-Game Application

Target Application Version.

Seen: 00.00

TITLE[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x80 (128 bytes)
param_len: variable
Tip
Used by: PSVita Game (Digital), Non-Game Application

Default "title of the game" for all languages.

TITLE_xx[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x80 (128 bytes)
param_len: variable
Tip
Used by: PSVita Game (Digital)

Same than STITLE.

TITLE_ID[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x0C (12 bytes)
param_len: 0xA (10 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

Identifier ( Productcode ) of the content, in the format WXYZ12345.

See also Title_ID

VERSION[edit | edit source]

Info
param_fmt: utf-8
param_max_len: 0x8 (8 bytes)
param_len: 0x6 (6 bytes)
Tip
Used by: PSVita Game (Digital), Non-Game Application

Version content of the game: Disc revision, or Package revision. The number increases when the content is re-released or re-packaged for whatever reason that doesn't affect the main executable (e.g. when a disc game reaches platinum sales, or "game of the year edition" including extra contents).


PSF Dump (From 0xBF0 to 0x11F0)[edit | edit source]

The length of this is 0x5D0

 offset   00 01 02 03 04 05 06 07  08 09 0A 0B 0C 0D 0E 0F

00000bf0  00 50 53 46 01 01 00 00  24 01 00 00 dc 01 00 00  |.PSF....$.......|  -> Header
00000c00  11 00 00 00 00 00 04 02  06 00 00 00 08 00 00 00  |................|  -> Unknown
00000c10  00 00 00 00 08 00 04 04  04 00 00 00 04 00 00 00  |................|
00000c20  08 00 00 00 12 00 04 02  03 00 00 00 04 00 00 00  |................|  
00000c30  0c 00 00 00 1b 00 04 02  25 00 00 00 30 00 00 00  |........%...0...|
00000c40  10 00 00 00 26 00 04 04  04 00 00 00 04 00 00 00  |....&...........|
00000c50  40 00 00 00 31 00 04 04  04 00 00 00 04 00 00 00  |@...1...........|
00000c60  44 00 00 00 3c 00 04 04  04 00 00 00 04 00 00 00  |D...<...........|
00000c70  48 00 00 00 4b 00 04 02  07 00 00 00 08 00 00 00  |H...K...........|
00000c80  4c 00 00 00 59 00 04 04  04 00 00 00 04 00 00 00  |L...Y...........|
00000c90  54 00 00 00 69 00 04 02  10 00 00 00 00 02 00 00  |T...i...........|
00000ca0  58 00 00 00 75 00 04 04  04 00 00 00 04 00 00 00  |X...u...........|
00000cb0  58 02 00 00 87 00 04 02  20 00 00 00 34 00 00 00  |X....... ...4...|
00000cc0  5c 02 00 00 8e 00 04 02  20 00 00 00 34 00 00 00  |\....... ...4...|
00000cd0  90 02 00 00 98 00 04 02  35 00 00 00 80 00 00 00  |........5.......|
00000ce0  c4 02 00 00 9e 00 04 02  35 00 00 00 80 00 00 00  |........5.......|
00000cf0  44 03 00 00 a7 00 04 02  0a 00 00 00 0c 00 00 00  |D...............|
00000d00  c4 03 00 00 b0 00 04 02  06 00 00 00 08 00 00 00  |................|
00000d10  d0 03 00 00 41 50 50 5f  56 45 52 00 41 54 54 52  |....APP_VER.ATTR| -> Variables
00000d20  49 42 55 54 45 00 43 41  54 45 47 4f 52 59 00 43  |IBUTE.CATEGORY.C|
00000d30  4f 4e 54 45 4e 54 5f 49  44 00 47 43 5f 52 4f 5f  |ONTENT_ID.GC_RO_|
00000d40  53 49 5a 45 00 47 43 5f  52 57 5f 53 49 5a 45 00  |SIZE.GC_RW_SIZE.|
00000d50  50 41 52 45 4e 54 41 4c  5f 4c 45 56 45 4c 00 50  |PARENTAL_LEVEL.P|
00000d60  53 50 32 5f 44 49 53 50  5f 56 45 52 00 50 53 50  |SP2_DISP_VER.PSP|
00000d70  32 5f 53 59 53 54 45 4d  5f 56 45 52 00 50 55 42  |2_SYSTEM_VER.PUB|
00000d80  54 4f 4f 4c 49 4e 46 4f  00 53 41 56 45 44 41 54  |TOOLINFO.SAVEDAT|
00000d90  41 5f 4d 41 58 5f 53 49  5a 45 00 53 54 49 54 4c  |A_MAX_SIZE.STITL|
00000da0  45 00 53 54 49 54 4c 45  5f 30 30 00 54 49 54 4c  |E.STITLE_00.TITL|
00000db0  45 00 54 49 54 4c 45 5f  30 30 00 54 49 54 4c 45  |E.TITLE_00.TITLE|
00000dc0  5f 49 44 00 56 45 52 53  49 4f 4e 00 30 31 2e 30  |_ID.VERSION.01.0| -> Parameters of Variables
00000dd0  30 00 00 00 00 00 00 00  67 64 00 00 4a 50 30 33  |0.......gd..JP03|
00000de0  36 35 2d 50 43 53 47 39  30 30 30 34 5f 30 30 2d  |65-PCSG90004_00-|
00000df0  53 4b 50 32 54 52 49 41  4c 30 30 30 30 30 30 30  |SKP2TRIAL0000000|
00000e00  00 00 00 00 00 00 00 00  00 00 00 00 00 80 1a 00  |................|
00000e30  00 00 00 00 01 00 00 00  30 31 2e 35 30 30 00 00  |........01.500..|
00000e40  00 00 50 01 63 5f 64 61  74 65 3d 32 30 31 31 31  |..P.c_date=20111| -> creation data
00000e50  32 30 35 00 00 00 00 00  00 00 00 00 00 00 00 00  |205.............|
00000e60  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00001040  00 00 00 00 00 04 00 00  75 6b 65 2d 74 6f 72 6e  |........uke-torn| ->SAVEDATA_MAX_SIZE + STITLE
00001050  65 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |e...............|
00001060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00001070  00 00 00 00 00 00 00 00  00 00 00 00 75 6b 65 2d  |............uke-| ->STITLE_00
00001080  74 6f 72 6e 65 00 00 00  00 00 00 00 00 00 00 00  |torne...........|
00001090  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000010b0  75 6b 65 2d 74 6f 72 6e  65 00 00 00 00 00 00 00  |uke-torne.......| ->TITLE
000010c0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00001130  75 6b 65 2d 74 6f 72 6e  65 28 e3 82 a6 e3 82 b1  |uke-torne(......| ->TITLE_00
00001140  e3 83 88 e3 83 ab e3 83  8d 29 00 00 00 00 00 00  |.........)......|
00001150  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000011b0  50 43 53 43 38 30 30 30  33 00 00 00 30 31 2e 30  |PCSC80003...01.0| ->TITLE_ID + VERSION
000011c0  30 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |0...............|
000011d0  00 00 00 00 00 00 00 01  28 00 00 00 00 00 00 30  |........(......0|
000011e0  80 00 00 00 00 00 00 00  22 00 00 10 1c c7 38 83  |........".....8.|