PARAM.SFO

From PS3 Developer wiki
Jump to navigation Jump to search

Param.sfo

Location:
Usage:


PARAM.SFO internal structure

 typdef structure PARAM_SFO {
 U32 Signature_bytes=(0x00,PSF)
 U32 File_Version (1.1);
 U32 Start_of_Variable_Name_Table
 U32 Start_of_Variable_Data_Table;
 U32 Number_of_Variables;

Internal data definition table

 typedef struct Internal_Data_Structure_Definition {
 U16 Zero_based_offset_from_Start_of_Variable_Name_Table;
 U16 Unknow_YET; maybe type of data?????
 U32 Total_Used_Bytes_of_Current_Data_Block;
 U32 Total_Size_In_Bytes_of_Current_Data_Block;
 U32 Zero_based_offset_from_Start_of_Variable_Data_Table;
 } IDSD[Number_of_Variables];

Variable name table

 unsigned char Variable_Name_table[Number_of_variables+1]={
 "ACCOUNT_ID\0x00",
 "ATTRIBUTE\0x00",
 "CATEGORY\0x00",
 "DETAIL0\x00",
  "PARAMS\0x00",
 "PARAMS2\0x00",
 "PARENTAL_LEVEL\0x00",
 "SAVEDATA_DIRECTORY\0x00",
 "SAVEDATA_LIST_PARAM\0x00",
 "SUB_TITLE\0x00",
 "TITLE\0x00",
 "\0x00\0x00"
 };

Variable tables data section

 unsigned char Account_ID[16]; account_id
 unsigned long Attribute; attribute
 unsigned char Category[4]="SD",0x00,0x00 category
 unsigned char Detail[1024]; detail
 000558 01 05 01 03 03 00 00 00 00 00 00 00 00 00 00 00 / params
 000568 08 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00
 000578 992 x 0x00
 unsigned char Params2[12]; params2
 unsigned long Parental_level; parental_level
 unsigned char SaveData_directory[64]; savedata_directory
 0009a8 37 33 37 00 00 00 00 00 savedata_list_param
 unsigned char Sub_Title[128]; sub title
 unsigned char Title[128]; title
 } param_sfo;

Source: http://ps3dev.wikispaces.com/PARAM.SFO




PSL1GHT PARAM.SFO

See :

$ ./read_sfo PARAM1.SFO 
read_sfo v0.01

-[HEADER]---------------
SFO Version: 101
Entries: 12

-[PARAMETERS]-----------
APP_VER: 01.00
ATTRIBUTE: 0
BOOTABLE: 1
CATEGORY: HG
LICENSE: This application was created with the official non-official SDK called psl1ght, for more information visit http://www.psl1ght.com/ . This is in no way associated with Sony Computer Entertainment Inc., please do not contact them for help, they will not be able to provide it.
PARENTAL_LEVEL: 0
PS3_SYSTEM_VER: 01.8000
RESOLUTION: 3f
SOUND_FORMAT: 117
TITLE: PSL1GHT SFO
TITLE_ID: TEST00001
VERSION: 01.00

HEADER

SFO Version

  SFO Version: 101

Entries

Number of entries for PARAMETERS

  Entries: 12

PARAMETERS

APP_VER

This is the version of the Homebrew, that will be displayed on the PS3

   <value name="APP_VER" type="string">
   00.50
   </value>

ATTRIBUTE

This value enable special functions of the Homebrew (Enable Move Controller, etc..)

   <value name="ATTRIBUTE" type="integer">
   0
   </value>

BOOTABLE

If this pkg is bootable or not. (1 to enable, 0 to disable) useful when you are going to make a data pkg.

   <value name="BOOTABLE" type="integer">
   1
   </value>

CATEGORY

This is the category where you will see your homebrew.

   <value name="CATEGORY" type="string">
   HG
   </value>

these are the categories available on a Official Firmware:

  • HM : Playstation Network
  • CB : Network
  • HG : Harddrive Game
  • DG : Disc Game (blueray)
  • AV : Video
  • AM : Music
  • AP : Photo
  • AT : TV
  • MN : Minis Network

LICENSE

PSL1GHT Licence ( DO NOT REMOVE IT and DON'T CHANGE IT) LICENSE has a fixed block size of 128 bytes

   <value name="LICENSE" type="string">
   This application was created with the official non-official SDK called PSL1GHT, for more information visit http://www.psl1ght.com/ . This is in no way associated with Sony Computer Entertainment Inc., please do not contact them for help, they will not be able to provide it.
   </value>

PARENTAL_LEVEL

Parental level, ( 0 for everyone )

   <value name="PARENTAL_LEVEL" type="integer">
   0
   </value>

PS3_SYSTEM_VER

Minimum PS3 System version to be bootable this homebrew

   <value name="PS3_SYSTEM_VER" type="string">
   01.5000
   </value>

RESOLUTION

TV Resolution (Unknown )

   <value name="RESOLUTION" type="integer">
   63
   </value>

SOUND_FORMAT

Type of sound

   <value name="SOUND_FORMAT" type="integer">
   279
   </value>

TITLE

Title of the homebrew

   <value name="TITLE" type="string">
   Title of this Homebrew
   </value>

TITLE_ID

ID of the homebrew (this id must be the same id inside the Makefile)

   <value name="TITLE_ID" type="string">
   XXYYYYYY
   </value>

VERSION

Homebrew Version

   <value name="VERSION" type="string">
   00.50
   </value>


(source deroad: http://ps3tutorials.wikispaces.com/Edit+the+sfo.xml+Tutorial)


PS3SYS PARAM.SFO

$ ./read_sfo PARAM2.SFO 
read_sfo v0.01

-[HEADER]---------------
SFO Version: 101
Entries: 20

-[PARAMETERS]-----------
APP_VER: 01.00
ATTRIBUTE: 880727
BOOTABLE: 1
CATEGORY: HG
LICENSE: Library programs ©Sony Computer Entertainment Inc. Licensed for play on the PLAYSTATION®3 Computer Entertainment System or authorized PLAYSTATION®3 format systems. For full terms and conditions see the user's manual. This product is authorized and produced under license from Sony Computer Entertainment Inc. Use is subject to the copyright laws and the terms and conditions of the user's license.
PARENTAL_LEVEL: 0
PARENTAL_LEVEL_A: ffffffff
PARENTAL_LEVEL_C: ffffffff
PARENTAL_LEVEL_E: ffffffff
PARENTAL_LEVEL_H: ffffffff
PARENTAL_LEVEL_J: ffffffff
PARENTAL_LEVEL_K: ffffffff
PS3_SYSTEM_VER: 00.93
REGION_DENY: fffff001
RESOLUTION: 1
SOUND_FORMAT: 1
TITLE: PS3SYS SFO
TITLE_ID: TEST00002
VERSION: 01.00


HEADER

SFO Version

  SFO Version: 101

Entries

Number of entries for PARAMETERS

   Entries: 20

PARAMETERS

APP_VER

This is the version of the Homebrew, that will be displayed on the PS3

   <value name="APP_VER" type="string">
   01.00
   </value>

ATTRIBUTE

This value enable special functions of the Homebrew (Enable Move Controller, etc..)

   <value name="ATTRIBUTE" type="integer">
   880727
   </value>

BOOTABLE

If this pkg is bootable or not. (1 to enable, 0 to disable) useful when you are going to make a data pkg.

   <value name="BOOTABLE" type="integer">
   1
   </value>

CATEGORY

This is the category where you will see your homebrew.

   <value name="CATEGORY" type="string">
   HG
   </value>

these are the categories available on a Official Firmware:

  • HM : Playstation Network
  • CB : Network
  • HG : Harddrive Game
  • DG : Disc Game (blueray)
  • AV : Video
  • AM : Music
  • AP : Photo
  • AT : TV
  • MN : Minis Network

LICENSE

PSL1GHT Licence ( DO NOT REMOVE IT and DON'T CHANGE IT) LICENSE has a fixed block size of 128 bytes

   <value name="LICENSE" type="string">
   Library programs ©Sony Computer Entertainment Inc. Licensed for play on the PLAYSTATION®3 Computer Entertainment System or authorized PLAYSTATION®3 format systems. For full terms and conditions see the user's manual. This product is authorized and produced under license from Sony Computer Entertainment Inc. Use is subject to the copyright laws and the terms and conditions of the user's license.
   </value>

PARENTAL_LEVEL

Parental level, ( 0 for everyone )

   <value name="PARENTAL_LEVEL" type="integer">
   0
   </value>

PARENTAL_LEVEL_A

   <value name="PARENTAL_LEVEL_A" type="integer">
   ffffffff
   </value>

PARENTAL_LEVEL_C

   <value name="PARENTAL_LEVEL_C" type="integer">
   ffffffff
   </value>

PARENTAL_LEVEL_E

   <value name="PARENTAL_LEVEL_E" type="integer">
   ffffffff
   </value>

PARENTAL_LEVEL_H

   <value name="PARENTAL_LEVEL_H" type="integer">
   ffffffff
   </value>

PARENTAL_LEVEL_J

   <value name="PARENTAL_LEVEL_J" type="integer">
   ffffffff
   </value>

PARENTAL_LEVEL_K

   <value name="PARENTAL_LEVEL_K" type="integer">
   ffffffff
   </value>

PS3_SYSTEM_VER

Minimum PS3 System version to be bootable this homebrew

   <value name="PS3_SYSTEM_VER" type="string">
   00.93
   </value>

REGION_DENY

   <value name="REGION_DENY" type="integer">
   fffff001
   </value>

RESOLUTION

TV Resolution (Unknown )

   <value name="RESOLUTION" type="integer">
   1
   </value>

SOUND_FORMAT

Type of sound

   <value name="SOUND_FORMAT" type="integer">
   1
   </value>

TITLE

Title of the homebrew

   <value name="TITLE" type="string">
   Title of this Homebrew
   </value>

TITLE_ID

ID of the homebrew (this id must be the same id inside the Makefile)

   <value name="TITLE_ID" type="string">
   XXYYYYYY
   </value>

VERSION

Homebrew Version

   <value name="VERSION" type="string">
   01.00
   </value>