PS2bootparam.dat

From PS3 Developer wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

PS2 boot param file stored in dev_hdd0/tmp/game/ps2bootparam.dat used to pass settings from GameOS to emulator after unloading LV2.

File layout

Name offset size type notes
rtc_epoch 0x00 0x08 u64 time since epoch in seconds (GMT)
target_id 0x08 0x02 u16 Product_Code
toggle_XO 0x0A 0x01 u8 1 - (X enter and O back), 0 - (O enter and X back)
boot_type 0x0B 0x01 u8 known used value 0x00 (hdd install?) / 0x01 / 0x02 / 0x03 ("2P" classic)
ps2_title_id 0x0C unk (at least 0x0A) string SLES50920
_ 0x2C 0x01 u8 _
system_lang 0x2D 0x01 u8 2 digits code from Languages is used (in hex form)
time_zone 0x2E 0x02 u16 sys_time_get_timezone(), offset from GMT in minutes. Used as signed 11 bit value, can be read from ps2 GetOsdConfigParam/SetOsdConfigParam.
summer_time 0x30 0x01 u8 "/setting/dateTime/summerTime", known value 0.
net_device 0x31 0x01 u8 xsettings "/setting/net/device", known value 1 (enabled wifi?)
wlan_ssid 0x32 0x20 string 32 characters
_ 0x52 0x01 u8 always 0 seems to be used as null terminator for wlan_ssid
net_authProto 0x53 0x01 u8 "/setting/net/authProto", known value 7 (wlan encryption type?)
wlan_pass 0x54 0x40 string max 64 bytes
_ 0x94 0x01 u8 always 0 seems to be used as null terminator for wlan_pass
_ 0x98 0x04 unk _
_ 0x9C 0x01 u8 _
_ 0x9E 0x02 u16 _
_ 0xA0 0x04 unk _
_ 0xA4 0x01 u8 _
_ 0xA6 0x02 u16 _
_ 0xA8 0x04 unk _
_ 0xAC 0x01 u8 _
_ 0xAE 0x02 (?) unk _
color_space 0x118 0x02 u16 /setting/display/colorSpace
video_mode 0x11A 0x02 u16 bitfield Using CellVideoOutDisplayMode derived from CellVideoOutDeviceInfo (or'ed in loop for all available modes(max32)).
CELL_VIDEO_OUT_RESOLUTION_480:
  0x0001 = CELL_VIDEO_OUT_ASPECT_4_3 | CELL_VIDEO_OUT_SCAN_MODE_PROGRESSIVE
  0x0002 = CELL_VIDEO_OUT_ASPECT_4_3 | CELL_VIDEO_OUT_SCAN_MODE_INTERLACE
  0x0004 = CELL_VIDEO_OUT_ASPECT_16_9 | CELL_VIDEO_OUT_SCAN_MODE_PROGRESSIVE
  0x0008 = CELL_VIDEO_OUT_ASPECT_16_9 | CELL_VIDEO_OUT_SCAN_MODE_INTERLACE
  
CELL_VIDEO_OUT_RESOLUTION_576:
  0x0010 = CELL_VIDEO_OUT_ASPECT_4_3 | CELL_VIDEO_OUT_SCAN_MODE_PROGRESSIVE
  0x0020 = CELL_VIDEO_OUT_ASPECT_4_3 | CELL_VIDEO_OUT_SCAN_MODE_INTERLACE
  0x0040 = CELL_VIDEO_OUT_ASPECT_16_9 | CELL_VIDEO_OUT_SCAN_MODE_PROGRESSIVE
  0x0080 = CELL_VIDEO_OUT_ASPECT_16_9 | CELL_VIDEO_OUT_SCAN_MODE_INTERLACE
  
CELL_VIDEO_OUT_RESOLUTION_720:
  0x0200 = CELL_VIDEO_OUT_REFRESH_RATE_59_94HZ
  0x1000 = CELL_VIDEO_OUT_REFRESH_RATE_50HZ
  
CELL_VIDEO_OUT_RESOLUTION_1080:
  0x0100 = CELL_VIDEO_OUT_REFRESH_RATE_59_94HZ | CELL_VIDEO_OUT_SCAN_MODE_PROGRESSIVE
  0x0400 = CELL_VIDEO_OUT_REFRESH_RATE_59_94HZ | CELL_VIDEO_OUT_SCAN_MODE_INTERLACE
  0x0800 = CELL_VIDEO_OUT_REFRESH_RATE_50HZ | CELL_VIDEO_OUT_SCAN_MODE_PROGRESSIVE
  0x2000 = CELL_VIDEO_OUT_REFRESH_RATE_50HZ | CELL_VIDEO_OUT_SCAN_MODE_INTERLACE
display_type 0x11C 0x01 u8 CellVideoOutPortType
0x00 = CELL_VIDEO_OUT_PORT_NONE
0x01 = CELL_VIDEO_OUT_PORT_HDMI
0x41 = CELL_VIDEO_OUT_PORT_NETWORK
0x81 = CELL_VIDEO_OUT_PORT_COMPOSITE_S
0x82 = CELL_VIDEO_OUT_PORT_D
0x83 = CELL_VIDEO_OUT_PORT_COMPONENT
0x84 = CELL_VIDEO_OUT_PORT_RGB
0x85 = CELL_VIDEO_OUT_PORT_AVMULTI_SCART
0x86 = CELL_VIDEO_OUT_PORT_DSUB
sound_type 0x11D 0x01 u8
_ 0x11E unk string _
screen_saver_start_time 0x220 0x04 u32 300/600/1200/1800 depending on /setting/display/screenSaver/startTime
net_enable 0x224 0x01 u8 xregistry "/setting/net/enable"
_ 0x225 0x01 u8 xregistry "/setting/net/aoss/aossFlag"
_ 0x226 0x188 unk _
_ 0x246 0x1 u8 _
_ 0x3AF 0x04 unk _
_ 0x3B3 0x04 unk _
_ 0x3B7 0x01 unk _
_ 0x3BB 0x04 unk _
_ 0x3BC 0x04 unk _
_ 0x3C0 0x04 unk _
_ 0x3CC 0x80 unk _
_ 0x44C 0x80 unk _
up_convert 0x4CC 0x01 u8 /setting/game/emuUpConvert
smoothing 0x4CD 0x01 u8 /setting/game/emuSmoothing
rgb_output_range 0x4CE 0x01 u8 /setting/display/rgbOutputRange
_ 0x4D0 0x08 u64 known value 0x800000001000007
_ 0x4D8 0x01 u8 if (vsh::GetReleaseTarget(void) == 6) then 3. else 1
vibration_enable 0x4E0 0x01 u8 /setting/pad/vibrationEnable
auto_power_off 0x4E4 0x04 u32 In seconds. Using value from /setting/system/autoPowerOff x 3600. When /setting/system/autoPowerOffDebug is not zero different value is used. Set to 0 if /setting/system/autoPowerOffEx is 0
pad_auto_power_off 0x4E8 0x01 u8 Using value from /setting/pad/autoPowerOff. When /setting/system/autoPowerOffDebug is not zero value 0xFF is used.

Note: This table for now only cover first 0x4F0 of file, next block are controllers settings.
Current layout of this file is very different than the one above.