Game plugin: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
 
(31 intermediate revisions by 2 users not shown)
Line 7: Line 7:


contains 105 subs:
contains 105 subs:
  0: 0 Parameter: - set Widget "page_game_main" and activate
  0: PluginWakeup, 0 Parameter: - set Widget "page_game_main" and activate
  1:
  1: 1 Parameter: uint8_t [0x5B8]
  2: 1 Parameter: uint8_t [0x230]
  2: 1 Parameter: uint8_t [0x230]
  3: 1 Parameter: int
  3: 1 Parameter: int
  4: 2 Parameter: int (used for func 3), uint8_t [0x1A0]
  4: 2 Parameter: int (used for func 3), uint8_t msg?dialog_struct[0x1A0]
  5:
  5: 0 Parameter:
  6:
  6: 0 Parameter:
  7: 0 Parameter: - set Widget "page_game_main", pageactivate and paf_55944323 /paf_FA17FC05.
  7: ReturnGame, 0 Parameter: - set Widget "page_game_main", pageactivate and InputDevice_IsOwner /InputDevice_ReleaseOwnership.
  8: 1 Parameter: out:uint8_t [0x114] - (+4 = TitleID)
  8: getCurrentGameTitle(_gameTileInfo *), 1 Parameter: out:uint8_t [0x114] - (+4 = TitleID, +0x14 = Title, +0x94 = Title)
  9: 1 Parameter: out:char* - returns (running?) TitleID
  9: 1 Parameter: out:char* [0x80]- returns Title
  10: 1 Parameter: out:uint8_t [8]
  10: 1 Parameter: out:uint8_t [8]
  11:
  11: 2 Parameter: uint64_t data, int (0=12,other=0x13) - EventPortSend 0x100, 0x12/0x13,data
  12:
  12: 0 Parameter:
  13:
  13: 0 Parameter:
  14: 0 Parameter: - pad vibration related
  14: 0 Parameter: - pad vibration related
  15: GetExecAppType, 2 Parameter: int * apptype, int (=0)
  15: GetExecAppType, 2 Parameter: int * apptype, int * extendedtype?
  16:
  16: 1 Parameter: int *
  17:
  17: 0 Parameter:
  18:
  18: 2 Parameter: int *, char * [0x20]
  19:
  19: 3 Parameter: int *, char * [0x20], char * [0x20]
  20: 1 Parameter: out: uint8_t [0x5B8]
  20: 1 Parameter: out: uint8_t [0x5B8]
  21:
  21: 0 Parameter:
  22: commerce2ExecuteStoreBrowse, 4 Parameter: int targetType, char * targetId, uint8 flags, int userdata -  
  22: commerce2ExecuteStoreBrowse, 4 Parameter: int targetType, char * targetId, uint8 flags, int userdata -  
  23: 1 Parameter: in: uint8_t [0xA4]
  23: 1 Parameter: in: uint8_t [0xA4]
  24:
  24: 1 Parameter: in: uint8_t [0xA4]
  25: wakeupWithGameExit, 2 Parameter: char * url, void* usrdata
  25: wakeupWithGameExit, 2 Parameter: char * url, int usrdata
  26: commerce2Reboot4PrgDl, 1 Parameter: int taskId
  26: commerce2Reboot4PrgDl, 1 Parameter: int taskId
  27: 1 Parameter: in: char * string [0x800]
  27: 1 Parameter: in: char * url[0x800] - "psvp:vdss?url=%s&id=0x%016llx&spd=%lld&cid=%s&fid=%s"
  28: RebootSignup?, 0 Parameter:
  28: RebootSignup?, 0 Parameter:
  29:
  29: 1 Parameter: uint8_t [0xA4]
  30: commerce2GetOptions, 1 Parameter: int * userdata
  30: commerce2GetOptions, 1 Parameter: int * userdata
  31: GetUsrdataOnGameExit, 1 Parameter: int * game_plugin_view
  31: GetUsrdataOnGameExit, 1 Parameter: int * game_plugin_view
Line 46: Line 46:
  37: 0 Parameter:  
  37: 0 Parameter:  
  38: 1 Parameter: uint64_t data - event port send data1=0x100, data2=0x14, data3=input
  38: 1 Parameter: uint64_t data - event port send data1=0x100, data2=0x14, data3=input
  39: 1 Parameter: char * titleid
  39: 1 Parameter: char * titleid [0x20]
  40: 3 Parameter: char * titleid, int* ,  
  40: 3 Parameter: char * titleid [0x20], int* , MemoryContainer cid
  41:
  41: 3 Parameter: char * titleid [0x20], char * [4], MemoryContainer cid
  42: 4 Parameter: char * titleid, , ,  
  42: 4 Parameter: char * titleid, int flags , char * , int
  43: 0 Parameter:
  43: 0 Parameter: 0
  44:
  44: 0 Parameter: 43) with 1
  45: 2 Parameter: int value (-1), int value (NoCalcFlag) - initGameData, returns Memory Container
  45: initGameData, 2 Parameter: int MemContainer(-1), int NoCalcFlag - returns Memory Container
  46: EndGameData, 0 Parameter:  
  46: EndGameData, 0 Parameter:  
  47: getGameDataStat, 3 Parameter: char * DirName, char * CategoryType, sys_addr_t *alloc_addr [1]
  47: getGameDataStat, 3 Parameter: char * DirName, char * CategoryType, uint8_t[0x1450]
  48: updateGameData, 4 Parameter: char * DirName, char * CategoryType, void * callback, uint8_t[0xBA4] (SysParam)
  48: updateGameData, 4 Parameter: char * DirName, uint32_t CategoryType, void * callback, uint8_t[0x1450] (SysParam)
  49:
  49: showDialog, 5 Parameter: int errcode, int, int, void * callback, char * tex?
  50: 3 Parameter: int InvalidMsg, void * callback, int
  50: showDialog, 3 Parameter: char * ErrorMsg, void * callback, char * tex?
  51: 0 Parameter: FindWidget("page_game_main") - returns Widget View
  51: 0 Parameter: FindWidget("page_game_main") - returns Widget View
  52: cacheInit, 2 Parameter: void * callback, uint8_t SysCacheParam[0x444]
  52: cacheInit, 2 Parameter: void * callback, uint8_t SysCacheParam[0x444] {char cacheId[0x20], char getCachePath[0x41F], void * reserved} - SysCacheMount
  53: cacheClear, 0 Parameter:
  53: cacheClear, 0 Parameter: returns GameDataStat - SysCacheClear
  54: GetBootInfo, 1 Parameter: uint8_t bootinfo[0x20]
  54: bootInfo, 1 Parameter: uint8_t bootinfo[0x20] // also gets TitleId - GameGetBootDiscInfo
  55: GetTitleId,1 Parameter: char * titleId [0x0A]
  55: GetTitleId,1 Parameter: uint8_t * titleId [0x20]
  56: 2 Parameter: int * data (=0) , int value (0,1) - (kbGetSize)
  56: kbGetSize, 2 Parameter: int * data (=0) , int value (0,1=EventPortSend 0x10E)
  57: SetSysVersion, 1 Parameter: char * SysVersion  
  57: SetSysVersion, 1 Parameter: char * SysVersion[7] (String Version for attribute "PS3_SYSTEM_VER") - GameDataSetSystemVer
  58: GetDiscInfo, 1 Parameter: uint8_t [0x20] ("Hybrid Flags" area from [[PS3_DISC.SFB]] ?)
  58: GetDiscInfo, 1 Parameter: uint8_t [0x20] (titleid? (0xA) from /dev_ps2disc/SYSTEM.CNF or /dev_bdvd/PS3_GAME/(L0x/)PARAM.SFO)
  59: 4 Parameter: int dialog_msg_type (0=corrupted gamedata,1=corrupted installgame,2=update completed,3=hdd full stop game) int size, void * ptr_handler, 0
  59: endDialog, 4 Parameter: int dialog_msg_type (0=corrupted gamedata,1=corrupted installgame,2=update completed,3=hdd full stop game) int size, void * callback, 0
  60: SetEjectMode, 1 Parameter: int mode
  60: SetEjectMode, 1 Parameter: int mode (0=DiscGameUnregisterDiscChangeCallback,1=DiscGameRegisterDiscChangeCallback)
  61: gameExec, 7 Parameter: char * DirName (Type=1,else ""), char * DirName (Type!=1,else ""),int Type,int Options,sys_memory_container_t MemoryContainer, ExecData, UserData
  61: gameExec, 7 Parameter: char * DirName (Type=1,else ""), char * DirName (Type!=1,else ""),int Type,int Options,sys_memory_container_t MemoryContainer, ExecData, UserData
  62: getList, 7 Parameter: int * ListBufNum, sys_addr_t * memory_allocate_from_container, int * ListNum, int * GetListNum, MemoryContainerId
  62: getList, 7 Parameter: int * ListBufNum, sys_addr_t * memory_allocate_from_container, int * ListNum, int * GetListNum, MemoryContainer,
  63: GetBootInfo, 3 Parameter: int * Type, char * DirName[0x20], int * ExecData
  63: GetBootInfo, 3 Parameter: int * Type, char * DirName[0x20], int * ExecData
  64: SetExecDataParam, 1 Parameter: int * ExecData
  64: SetParam, 1 Parameter: int * ExecData - SetExitParam
  65: GetExitInfo, 5 Parameter: int * status, int * Type, char * DirName, uint8_t * ExecData, uint8_t * UserData
  65: GetExitInfo, 5 Parameter: int * status, int * Type, char * DirName, uint8_t * ExecData, uint8_t * UserData
  66: HomePath, 1 Parameter: char * HddGamePath/homePath (Playstation@Home "/dev_hdd0/game/NPEA00013/USRDIR")
  66: HomePath, 1 Parameter: char * HddGamePath (Playstation@Home "/dev_hdd0/game/NPEA00013/USRDIR")
  67: DeleteGame, 2 Parameter: char * DirName, sys_memory_container_t MemoryContainerId
  67: DeleteGame, 2 Parameter: char * DirName, sys_memory_container_t MemoryContainerId
  68: OptionPath, 2 Parameter: char * CommonPath, char * PersonalPath
  68: OptionPath, 2 Parameter: char * CommonPath, char * PersonalPath - GetHomeLaunchOptionPath
  69: ExportPath, 1 Parameter: char * ImportPath[0x80] (GetImportPath)
  69: ExportPath, 1 Parameter: char * ImportPath[0x80] (GetHomeDataExportPath)
  70: ImportPath, 1 Parameter: char * ExportPath[0x80] (GetExportPath)
  70: ImportPath, 1 Parameter: char * ExportPath[0x80] (GetHomeDataImportPath)
  71: Open, 4 Parameter: int Type, char * DirName, int (-1), int * SizeInfo[3] { 0, 0, 0 }
  71: Open, 4 Parameter: int Type, char * DirName, MemoryContainer cid(-1), int * SizeInfo[3] { hddFreeSizeKB, sizeKB, sysSizeKB } - GameDataCheck
  72: BootCheck, 5 Parameter: int * Type, int * Attribute, int (-1), int * SizeInfo[3] { 0, 0, 0}, char * DirName
  72: BootCheck, 5 Parameter: int * Type, int * Attribute, MemoryContainer cid (-1), int * SizeInfo[3] { hddFreeSizeKB, sizeKB, sysSizeKB}, char * DirName - GameBootCheck
  73: PatchCheck, 2 Parameter: int (-1), int * SizeInfo[3] {0, 0, 0}
  73: PatchCheck, 2 Parameter: int (-1), int * SizeInfo[3] {0, 0, 0} - GamePatchCheck
  74: Create, 4 Parameter: uint8_t setData[0xD4], char * ContentInfoPath, char * GameDataPath, int Mode
  74: Create, 4 Parameter: uint8_t setData[0xD4] (GameSetInitParams), char * ContentInfoPath, char * GameDataPath, int Mode - GameCreateGameData
  75: getInt, 3 Parameter: int DataId, int * DataInt, int Mode
  75: getInt, 3 Parameter: int DataId, int * DataInt, int Mode - GameGetParamInt (from PARAM.SFO)
  76: getStr, 4 Parameter: int DataId, char * DataStr, int max_len(0x80), int Mode
  76: getStr, 4 Parameter: int DataId, char * DataStr, int max_len(0x80), int Mode - GameGetParamString (from PARAM.SFO)
  77: setInt, 3 Parameter: int DataId, int DataInt, int Mode
  77: setInt, 3 Parameter: int DataId, int DataInt, int Mode - GameSetParamInt (to PARAM.SFO)
  78: setStr, 3 Parameter: int DataId, char * DataStr, int Mode
  78: setStr, 3 Parameter: int DataId, char * DataStr, int Mode - GameSetParamString (to PARAM.SFO)
  79: Close, 2 Parameter: char * ContentInfoPath, char * GameDataPath
  79: Close, 2 Parameter: char * ContentInfoPath, char * GameDataPath - GameContentPermit
  80: dialog, 3 Parameter: int Type, int NeedSize, char * DirName
  80: dialog, 3 Parameter: int Type, int NeedSize, char * DirName - GameContentErrorDialog
  81: getSizeKB, 1 Parameter: int * DataInt
  81: getSizeKB, 1 Parameter: int * DataInt - current size of game content (KB)
  82: tInstall, 4 Parameter: char * UsrDirPath, char * FileName, int Options, int (0)
  82: tInstall, 4 Parameter: char * UsrDirPath, char * FileName, int Options, int (0) - GameThemeInstall
  83: mtInstall (Create tmp file), 1 Parameter: int FileSize - ("/dev_hdd0/tmp/game/theme.tmp")
  83: mtInstall (Create tmp file), 1 Parameter: int FileSize - ("/dev_hdd0/tmp/game/theme.tmp") - GameThemeInstallFromBuffer
  84: Write tmp file, 2 Parameter: int p3t_theme_size, void * buf
  84: mtWrite, 2 Parameter: int p3t_theme_size, void * buf
  85: Close tmp file, 2 Parameter: int Status (=0 continue install, else=close), int Options - renames/deletes tmp file
  85: mtClose, 2 Parameter: int Status (=0 continue install, else=close), int Options  
  86: getUpPath, 1 Parameter: char * Path ("/dev_hdd0/game" + "/C01")
  86: getUpPath, 1 Parameter: char * Path ("/dev_hdd0/game" + "/C01") - GameGetDiscContentInfoUpdatePath
  87: getWConPath, 1 Parameter: char * Path (HTMLDIR - creates HTMLDIR)
  87: getWConPath, 1 Parameter: char * Path (HTMLDIR - creates HTMLDIR) - GameGetLocalWebContentPath
  88: delGameData, 1 Parameter: char * DirName [0x20]
  88: delGameData, 1 Parameter: char * DirName [0x20] - GameDeleteGameData
  89: getDevIdList, 2 Parameter: int * DevIdListNum, uint8_t DevIdList[0x800]
  89: getDevIdList, 2 Parameter: int * DevIdListNum, uint8_t DevIdList[0x800]
  90: getDevInfo, 2 Parameter: uint64_t DevId, uint8_t DevInfo[0x70]
  90: getDevInfo, 2 Parameter: uint64_t DevId, uint8_t DevInfo[0x70]
Line 104: Line 104:
  95: pspLoad, uint8_t PspSaveParam[0xA4], sys_memory_container_t MemoryContainer
  95: pspLoad, uint8_t PspSaveParam[0xA4], sys_memory_container_t MemoryContainer
  96: pspSave, uint8_t PspSaveParam[0xA4], sys_memory_container_t MemoryContainer
  96: pspSave, uint8_t PspSaveParam[0xA4], sys_memory_container_t MemoryContainer
  97: vmcAssign, 4 Parameter: int VmcPort (0/1), char * vmcFileName, void *callback, 0
  97: vmcAssign, 4 Parameter: int VmcPort (0/1), char * vmcFileName, void *callback, 0 - GameDataAssignVmc
  98: ps1End, 1 Parameter: int Ps1EndMode (0-4)  
  98: ps1End, 1 Parameter: int Ps1EndMode (0-4) - GameDataExit
  99: SetPadRumble, 1 Parameter: int mode - (for pad id = 0)
  99: SetPadRumble, 1 Parameter: int mode - (for pad id = 0)
  100:
  100: 2 Parameter: uint8_t [0x2470] (vshcommon_34A05733("game_plugin")), int *
  101:
  101: 0 Parameter: - GameExit Event ?
  102:
  102: 1 Parameter: char * sfo_file_path - (re)load? sfo
  103: 1 Parameter: char * dirname -> 67) "DeleteGame" delete game with memory container -1
  103: 1 Parameter: char * dirname -> 67) "DeleteGame" delete game with memory container -1
  104: 1 Parameter: char * pkg?_filepath
  104: 1 Parameter: char * pkg?_filepath
15) apptype
0 =
1 = Game
2 = AT-Category App
extendedtype?
0 = no game execution?
1 = if not selected Title Ids
2 = for selected Title IDs:
    NPIA00005 PlayStation Home
    NPEA00013 Playstation@Home
    NPIA00011 Playstation@Home?
    NPIA00009 Playstation@Home?
    NPIA00010 Playstation@Home
63) type (gametype)
0 = sys
1 = disc
2 = hdd
3 = home
71) type
1 = disc
2 = hdd
3 = gamedata
72) attribute
0x1 = patch
0x2 = app_home
0x4 = debug
0x8 = xmbbuy
0x10 = commerce2 browser
0x20 = invite message
0x40 = custom data message
0x100 = web browser
75) DataId (decimal)
102 = parental level
103 = resolution
104 = sound format
76) DataId (decimal)
0 = title
1 = title (default)
2 = title (japanese)
3 = title (english)
4 = title (french)
5 = title (spanish)
6 = title (german)
7 = title (italian)
8 = title (dutsch)
9 = title (portuguese)
10 = title (russian)
11 = title (korean)
12 = title (chinese traditional)
13 = title (chinese simplified)
14 = title (finnish)
15 = title (swedish)
16 = title (danish)
17 = title (norwegian)
18 = title (polish)
19 = title (portugeuese)
100 = title id
101 = version
106 = app_ver
66 + 68 + 69 + 70) refers to Playstation Home
80) type (decimal)
0 = broken gamedata
1 = broken hddgame
2 = no space
100 = broken gamedata (exit game)
101 = broken hddgame (exit game)
102 = no space (exit game)
82) option
0 = nothing
1 = apply theme after install
==Title IDs==
In Interface Functions 1,2 and 100 "jobs" happen to perform a check on TitleID. <br>
Calling [[impose_plugin]] func 17 with parameter 1 (= sets notification_psbutton) / Calling vshnet_B9F9475 (which calls vshnet_827E8B4A ( 0x12 ) )
NPIA00005 Playstation Home
NPEA00013 Playstation@Home
BLJM60061 Lost Planet: Extreme Condition
BLJM60027 Call of Duty 3
BLJS10003 Enchanted Arms
BLJM60014 Need for Speed Carbon
BLJM60013 Railfan
BLJM60016 Virtua Fighter 5
BLJM60063 Valkyria Chronicles
BLJM60068 The Golden Compass
BLJM60007 SEGA GOLFCLUB
BLJM60057 Sega Rally Revo
NPJB90043 Agarest Senki (Demo?)
NPJB90071 YAKUZA 3: Storyline [Demo]
NPJB90072 YAKUZA 3: Battle Engine [Demo]
NPJB90076 SEGA Rally™ Revo [Demo]
NPJB90100 HAZE [Demo]
BLJS50004 Enchanted Arms
BLAS50051 Iron Man
BLAS50003 Need for Speed: Carbon
BCAS20018 Railfan: Taiwan High-Speed Rail
BLUS30101 BlackSite: Area 51
BLUS30028 Enchanted Arms
BLUS30113 LOST PLANET: Extreme Condition
BLUS30012 Call of Duty® 3
BLUS30134 Iron Man™
BLUS30016 Need for Speed™ Carbon
NPUB90071 BlackSite Area 51 [Demo]
NPUB90099 Iron Man™ [Demo]
BLES00049 Enchanted Arms
BLES00020 Need for Speed™ Carbon
BLES00247 Iron Man
BLES00016 Call of Duty® 3
BLES00017 Call of Duty® 3
BLES00021 Call of Duty® 3
BLES00191 BlackSite: Area 51
BLES00198 LOST PLANET: Extreme Condition
NPEB90071 Iron Man™ [Demo]
BLKS20008 Need for Speed™ Carbon
BLKS20055 LOST PLANET: Extreme Condition
BLKS20006 Call of Duty® 3
BLKS20010 Railfan
BCKS10009 Virtua Fighter 5
BCKS10007 Disney Pixar's Ratatouille
BLKS20005 Marvel Ultimate Alliance
BLKS20017 Untold Legends: Dark Kingdom
BLKS20018 LEGO® Star Wars: The Complete Saga
BLKS20049 Assassin's Creed ™
BLKS20001 Armored Core 4
BLKS20031 Enemy Territory: Quake Wars
==Eject Mode==
EjectMode flag enforces game process termination "Please wait.." on :
Disc Games with SDK version <2.1
and:
BCJS30003 RESISTANCE 〜人類没落の日〜
BCUS98107 Resistance: Fall of Man
BCES00001 Resistance: Fall of Man
BCAS20003 Resistance: Fall of Man
BCKS10004 Resistance: Fall of Man
=Native Events=
GameApp_OnInitGameMain
GameApp_OnActivateGameMain
GameApp_OnCancelGameMain


{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude>
{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude>

Latest revision as of 12:22, 28 June 2023

1 Identifier:

  • 1

1 Interface[edit | edit source]

contains 105 subs:

0: PluginWakeup, 0 Parameter: - set Widget "page_game_main" and activate
1: 1 Parameter: uint8_t [0x5B8]
2: 1 Parameter: uint8_t [0x230]
3: 1 Parameter: int
4: 2 Parameter: int (used for func 3), uint8_t msg?dialog_struct[0x1A0]
5: 0 Parameter:
6: 0 Parameter:
7: ReturnGame, 0 Parameter: - set Widget "page_game_main", pageactivate and InputDevice_IsOwner /InputDevice_ReleaseOwnership.
8: getCurrentGameTitle(_gameTileInfo *), 1 Parameter: out:uint8_t [0x114] - (+4 = TitleID, +0x14 = Title, +0x94 = Title)
9: 1 Parameter: out:char* [0x80]- returns Title
10: 1 Parameter: out:uint8_t [8]
11: 2 Parameter: uint64_t data, int (0=12,other=0x13) - EventPortSend 0x100, 0x12/0x13,data
12: 0 Parameter:
13: 0 Parameter:
14: 0 Parameter: - pad vibration related
15: GetExecAppType, 2 Parameter: int * apptype, int * extendedtype?
16: 1 Parameter: int *
17: 0 Parameter:
18: 2 Parameter: int *, char * [0x20]
19: 3 Parameter: int *, char * [0x20], char * [0x20]
20: 1 Parameter: out: uint8_t [0x5B8]
21: 0 Parameter:
22: commerce2ExecuteStoreBrowse, 4 Parameter: int targetType, char * targetId, uint8 flags, int userdata - 
23: 1 Parameter: in: uint8_t [0xA4]
24: 1 Parameter: in: uint8_t [0xA4]
25: wakeupWithGameExit, 2 Parameter: char * url, int usrdata
26: commerce2Reboot4PrgDl, 1 Parameter: int taskId
27: 1 Parameter: in: char * url[0x800] - "psvp:vdss?url=%s&id=0x%016llx&spd=%lld&cid=%s&fid=%s"
28: RebootSignup?, 0 Parameter:
29: 1 Parameter: uint8_t [0xA4]
30: commerce2GetOptions, 1 Parameter: int * userdata
31: GetUsrdataOnGameExit, 1 Parameter: int * game_plugin_view
32: Get MANUAL DirName, 1 Parameter: char [0x80] 
33: 0 Parameter: - is music gameBgmPlayback allowed check
34: 1 Parameter: char * [0x20]
35: 1 Parameter: char * DirName[0x20] - tmp game lock
36: 2 Parameter: int * , char *
37: 0 Parameter: 
38: 1 Parameter: uint64_t data - event port send data1=0x100, data2=0x14, data3=input
39: 1 Parameter: char * titleid [0x20] 
40: 3 Parameter: char * titleid [0x20], int* , MemoryContainer cid
41: 3 Parameter: char * titleid [0x20], char * [4], MemoryContainer cid
42: 4 Parameter: char * titleid, int flags , char * , int
43: 0 Parameter: 0
44: 0 Parameter: 43) with 1
45: initGameData, 2 Parameter: int MemContainer(-1), int NoCalcFlag - returns Memory Container
46: EndGameData, 0 Parameter: 
47: getGameDataStat, 3 Parameter: char * DirName, char * CategoryType, uint8_t[0x1450]
48: updateGameData, 4 Parameter: char * DirName, uint32_t CategoryType, void * callback, uint8_t[0x1450] (SysParam)
49: showDialog, 5 Parameter: int errcode, int, int, void * callback, char * tex?
50: showDialog, 3 Parameter: char * ErrorMsg, void * callback, char * tex?
51: 0 Parameter: FindWidget("page_game_main") - returns Widget View
52: cacheInit, 2 Parameter: void * callback, uint8_t SysCacheParam[0x444] {char cacheId[0x20], char getCachePath[0x41F], void * reserved} - SysCacheMount
53: cacheClear, 0 Parameter: returns GameDataStat - SysCacheClear
54: bootInfo, 1 Parameter: uint8_t bootinfo[0x20] // also gets TitleId - GameGetBootDiscInfo
55: GetTitleId,1 Parameter: uint8_t * titleId [0x20]
56: kbGetSize, 2 Parameter: int * data (=0) , int value (0,1=EventPortSend 0x10E)
57: SetSysVersion, 1 Parameter: char * SysVersion[7] (String Version for attribute "PS3_SYSTEM_VER") - GameDataSetSystemVer
58: GetDiscInfo, 1 Parameter: uint8_t [0x20] (titleid? (0xA) from /dev_ps2disc/SYSTEM.CNF or /dev_bdvd/PS3_GAME/(L0x/)PARAM.SFO)
59: endDialog, 4 Parameter: int dialog_msg_type (0=corrupted gamedata,1=corrupted installgame,2=update completed,3=hdd full stop game) int size, void * callback, 0
60: SetEjectMode, 1 Parameter: int mode (0=DiscGameUnregisterDiscChangeCallback,1=DiscGameRegisterDiscChangeCallback)
61: gameExec, 7 Parameter: char * DirName (Type=1,else ""), char * DirName (Type!=1,else ""),int Type,int Options,sys_memory_container_t MemoryContainer, ExecData, UserData
62: getList, 7 Parameter: int * ListBufNum, sys_addr_t * memory_allocate_from_container, int * ListNum, int * GetListNum, MemoryContainer, 
63: GetBootInfo, 3 Parameter: int * Type, char * DirName[0x20], int * ExecData
64: SetParam, 1 Parameter: int * ExecData - SetExitParam
65: GetExitInfo, 5 Parameter: int * status, int * Type, char * DirName, uint8_t * ExecData, uint8_t * UserData
66: HomePath, 1 Parameter: char * HddGamePath (Playstation@Home "/dev_hdd0/game/NPEA00013/USRDIR")
67: DeleteGame, 2 Parameter: char * DirName, sys_memory_container_t MemoryContainerId
68: OptionPath, 2 Parameter: char * CommonPath, char * PersonalPath - GetHomeLaunchOptionPath
69: ExportPath, 1 Parameter: char * ImportPath[0x80] (GetHomeDataExportPath)
70: ImportPath, 1 Parameter: char * ExportPath[0x80] (GetHomeDataImportPath)
71: Open, 4 Parameter: int Type, char * DirName, MemoryContainer cid(-1), int * SizeInfo[3] { hddFreeSizeKB, sizeKB, sysSizeKB } - GameDataCheck
72: BootCheck, 5 Parameter: int * Type, int * Attribute, MemoryContainer cid (-1), int * SizeInfo[3] { hddFreeSizeKB, sizeKB, sysSizeKB}, char * DirName - GameBootCheck
73: PatchCheck, 2 Parameter: int (-1), int * SizeInfo[3] {0, 0, 0} - GamePatchCheck
74: Create, 4 Parameter: uint8_t setData[0xD4] (GameSetInitParams), char * ContentInfoPath, char * GameDataPath, int Mode - GameCreateGameData
75: getInt, 3 Parameter: int DataId, int * DataInt, int Mode - GameGetParamInt (from PARAM.SFO)
76: getStr, 4 Parameter: int DataId, char * DataStr, int max_len(0x80), int Mode - GameGetParamString (from PARAM.SFO)
77: setInt, 3 Parameter: int DataId, int DataInt, int Mode - GameSetParamInt (to PARAM.SFO)
78: setStr, 3 Parameter: int DataId, char * DataStr, int Mode - GameSetParamString (to PARAM.SFO)
79: Close, 2 Parameter: char * ContentInfoPath, char * GameDataPath - GameContentPermit
80: dialog, 3 Parameter: int Type, int NeedSize, char * DirName - GameContentErrorDialog
81: getSizeKB, 1 Parameter: int * DataInt - current size of game content (KB)
82: tInstall, 4 Parameter: char * UsrDirPath, char * FileName, int Options, int (0) - GameThemeInstall
83: mtInstall (Create tmp file), 1 Parameter: int FileSize - ("/dev_hdd0/tmp/game/theme.tmp") - GameThemeInstallFromBuffer
84: mtWrite, 2 Parameter: int p3t_theme_size, void * buf
85: mtClose, 2 Parameter: int Status (=0 continue install, else=close), int Options 
86: getUpPath, 1 Parameter: char * Path ("/dev_hdd0/game" + "/C01") - GameGetDiscContentInfoUpdatePath
87: getWConPath, 1 Parameter: char * Path (HTMLDIR - creates HTMLDIR) - GameGetLocalWebContentPath
88: delGameData, 1 Parameter: char * DirName [0x20] - GameDeleteGameData
89: getDevIdList, 2 Parameter: int * DevIdListNum, uint8_t DevIdList[0x800]
90: getDevInfo, 2 Parameter: uint64_t DevId, uint8_t DevInfo[0x70]
91: getUsbDevInfo, 2 Parameter: uint64_t DevId, uint8_t DevInfo[0x86]
92: storageMode, 0 Parameter: return int storageMode
93: notifyCtrl, 1 Parameter: int CtrlInt( 0 = page close "page_hider" widget, 1 = create "page_hider" widget)
94: allreadyDisp, 0 Parameter: (cellFsUnlink "/dev_hdd0/data/disp_change.dat")
95: pspLoad, uint8_t PspSaveParam[0xA4], sys_memory_container_t MemoryContainer
96: pspSave, uint8_t PspSaveParam[0xA4], sys_memory_container_t MemoryContainer
97: vmcAssign, 4 Parameter: int VmcPort (0/1), char * vmcFileName, void *callback, 0 - GameDataAssignVmc
98: ps1End, 1 Parameter: int Ps1EndMode (0-4) - GameDataExit
99: SetPadRumble, 1 Parameter: int mode - (for pad id = 0)
100: 2 Parameter: uint8_t [0x2470] (vshcommon_34A05733("game_plugin")), int *
101: 0 Parameter: - GameExit Event ?
102: 1 Parameter: char * sfo_file_path - (re)load? sfo
103: 1 Parameter: char * dirname -> 67) "DeleteGame" delete game with memory container -1
104: 1 Parameter: char * pkg?_filepath

15) apptype

0 = 
1 = Game
2 = AT-Category App
extendedtype?
0 = no game execution?
1 = if not selected Title Ids
2 = for selected Title IDs: 
    NPIA00005 PlayStation Home
    NPEA00013 Playstation@Home
    NPIA00011 Playstation@Home?
    NPIA00009 Playstation@Home?
    NPIA00010 Playstation@Home

63) type (gametype)

0 = sys
1 = disc
2 = hdd
3 = home

71) type

1 = disc
2 = hdd
3 = gamedata

72) attribute

0x1 = patch
0x2 = app_home
0x4 = debug
0x8 = xmbbuy
0x10 = commerce2 browser
0x20 = invite message
0x40 = custom data message
0x100 = web browser

75) DataId (decimal)

102 = parental level
103 = resolution
104 = sound format

76) DataId (decimal)

0 = title
1 = title (default)
2 = title (japanese)
3 = title (english)
4 = title (french)
5 = title (spanish)
6 = title (german)
7 = title (italian)
8 = title (dutsch)
9 = title (portuguese)
10 = title (russian)
11 = title (korean)
12 = title (chinese traditional)
13 = title (chinese simplified)
14 = title (finnish)
15 = title (swedish)
16 = title (danish)
17 = title (norwegian)
18 = title (polish)
19 = title (portugeuese)
100 = title id
101 = version
106 = app_ver

66 + 68 + 69 + 70) refers to Playstation Home

80) type (decimal)

0 = broken gamedata
1 = broken hddgame
2 = no space
100 = broken gamedata (exit game)
101 = broken hddgame (exit game)
102 = no space (exit game)

82) option

0 = nothing
1 = apply theme after install

Title IDs[edit | edit source]

In Interface Functions 1,2 and 100 "jobs" happen to perform a check on TitleID.
Calling impose_plugin func 17 with parameter 1 (= sets notification_psbutton) / Calling vshnet_B9F9475 (which calls vshnet_827E8B4A ( 0x12 ) )

NPIA00005 Playstation Home
NPEA00013 Playstation@Home
BLJM60061 Lost Planet: Extreme Condition
BLJM60027 Call of Duty 3
BLJS10003 Enchanted Arms
BLJM60014 Need for Speed Carbon
BLJM60013 Railfan
BLJM60016 Virtua Fighter 5
BLJM60063 Valkyria Chronicles
BLJM60068 The Golden Compass
BLJM60007 SEGA GOLFCLUB
BLJM60057 Sega Rally Revo 
NPJB90043 Agarest Senki (Demo?)
NPJB90071 YAKUZA 3: Storyline [Demo]
NPJB90072 YAKUZA 3: Battle Engine [Demo]
NPJB90076 SEGA Rally™ Revo [Demo]
NPJB90100 HAZE [Demo]
BLJS50004 Enchanted Arms
BLAS50051 Iron Man
BLAS50003 Need for Speed: Carbon
BCAS20018 Railfan: Taiwan High-Speed Rail
BLUS30101 BlackSite: Area 51
BLUS30028 Enchanted Arms
BLUS30113 LOST PLANET: Extreme Condition
BLUS30012 Call of Duty® 3
BLUS30134 Iron Man™
BLUS30016 Need for Speed™ Carbon
NPUB90071 BlackSite Area 51 [Demo]
NPUB90099 Iron Man™ [Demo]
BLES00049 Enchanted Arms
BLES00020 Need for Speed™ Carbon
BLES00247 Iron Man
BLES00016 Call of Duty® 3
BLES00017 Call of Duty® 3
BLES00021 Call of Duty® 3
BLES00191 BlackSite: Area 51
BLES00198 LOST PLANET: Extreme Condition
NPEB90071 Iron Man™ [Demo]
BLKS20008 Need for Speed™ Carbon
BLKS20055 LOST PLANET: Extreme Condition
BLKS20006 Call of Duty® 3
BLKS20010 Railfan
BCKS10009 Virtua Fighter 5
BCKS10007 Disney Pixar's Ratatouille
BLKS20005 Marvel Ultimate Alliance
BLKS20017 Untold Legends: Dark Kingdom
BLKS20018 LEGO® Star Wars: The Complete Saga
BLKS20049 Assassin's Creed ™
BLKS20001 Armored Core 4
BLKS20031 Enemy Territory: Quake Wars

Eject Mode[edit | edit source]

EjectMode flag enforces game process termination "Please wait.." on :

Disc Games with SDK version <2.1 

and:

BCJS30003 RESISTANCE 〜人類没落の日〜
BCUS98107 Resistance: Fall of Man
BCES00001 Resistance: Fall of Man
BCAS20003 Resistance: Fall of Man
BCKS10004 Resistance: Fall of Man

Native Events[edit | edit source]

GameApp_OnInitGameMain
GameApp_OnActivateGameMain
GameApp_OnCancelGameMain