Editing Game ext plugin

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 11: Line 11:
  2: 3 Parameter: char * titleid[0x10], 1, 0 - (displays a message?) - link.xml related?
  2: 3 Parameter: char * titleid[0x10], 1, 0 - (displays a message?) - link.xml related?
  3: 2 Parameter: char * (max.0x80bytes), 1 - (displays a message?) - link.xml related?
  3: 2 Parameter: char * (max.0x80bytes), 1 - (displays a message?) - link.xml related?
  4: 4 Parameter: char *, char *, int, int - calls interface 2
  4: 4 Parameter: - calls interface 2
  5: 4 Parameter: char *, int, char *, int- calls interface 2
  5: 4 Parameter: char *, int, char *, int- calls interface 2
  6: 1 Parameter: uint8 [0x5B0]
  6: 1 Parameter: uint8 [0x5B0]
  7: 3 Parameter: uint8*,int,uint8* - ps2bootparam.dat / factory_process_comp_1x
  7: 3 Parameter: int,int,uint8* - ps2bootparam.dat / factory_process_comp_1x
  8: 0 Parameter: returns uint8
  8: 0 Parameter: returns uint8
  9: 4 Parameter: ignored, char* message, uint8[0x270],{0: Type,+4: 0x10: char * unk  - Install "/dev_bdvd/PS3_GAME/PKGDIR/PKG../INSTALL.PKG" ?
  9: 4 Parameter: ignored, char* message, uint8[0x270],{0: char * "PKG..",0x10: char * unk  - Install "/dev_bdvd/PS3_GAME/PKGDIR/PKG../INSTALL.PKG" ?
  10: 3 Parameter:  
  10: 3 Parameter:  
  11: 4 Parameter: int value (=0 -> npsignin), ignored, uint8 [0x1B4]{message, pkg_path,..},uint8 [0x25]
  11: 4 Parameter: int value (=0 -> npsignin), ignored, uint8 [0x1B4]{message, pkg_path,..},uint8 [0x25]
Line 40: Line 40:
  31: 0 Parameter: returns uint8
  31: 0 Parameter: returns uint8
  32: 4 Parameter: uint8 [0x270], char * [0x800], uint64 [2], uint8
  32: 4 Parameter: uint8 [0x270], char * [0x800], uint64 [2], uint8
  33: 1 Parameter: char * titleid? [0x10] - msg auto update? - psn+/login checked.
  33: 1 Parameter: char * titleid? [0x10] - msg auto update?
  34: 1 Parameter: char * pkg_path[0x400] (example: /dev_usb006/test.pkg)
  34: 1 Parameter: char * pkg?_path[0x400]
 
====Function 1====
Example with PS2 World Snooker Championship 2005
Parameter 1:
21DB6718  00 00 00 02 00 00 00 02 53 4C 45 53 35 33 30 38 ........SLES5308
21DB6728  32 00 00 00 00 00 00 00 57 6F 72 6C 64 20 53 6E 2.......World Sn
21DB6738  6F 6F 6B 65 72 20 43 68 61 6D 70 69 6F 6E 73 68 ooker Championsh
21DB6748  69 70 20 32 30 30 35 00 00 00 00 00 00 00 00 00 ip 2005.........
21DB6758  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6768  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6778  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6788  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6798  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB67A8  00 00 00 00 00 00 00 00 57 6F 72 6C 64 20 53 6E ........World Sn
21DB67B8  6F 6F 6B 65 72 20 43 68 61 6D 70 69 6F 6E 73 68 ooker Championsh
21DB67C8  69 70 20 32 30 30 35 00 00 00 00 00 00 00 00 00 ip 2005.........
21DB67D8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB67E8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB67F8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6808  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6818  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6828  00 00 00 00 00 00 00 00 00 00 00 00 30 30 2E 30 ............00.0
21DB6838  30 30 30 00 30 33 2E 37 30 30 30 00 00 00 00 00 000.03.7000.....
21DB6848  00 00 00 00 32 50 00 00 00 00 00 00 2F 64 65 76 ....2P....../dev
21DB6858  5F 68 64 64 30 2F 67 61 6D 65 2F 4E 50 45 44 30 _hdd0/game/NPED0
21DB6868  30 31 35 33 00 00 00 00 00 00 00 00 00 00 00 00 0153............
21DB6878  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6888  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6898  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB68A8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB68B8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB68C8  00 00 00 00 00 00 00 00 00 00 00 00 4E 50 45 44 ............NPED
21DB68D8  30 30 31 35 33 00 00 00 00 00 00 00 00 00 00 00 00153...........
21DB68E8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB68F8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6908  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6918  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 06 ...............-
21DB6928  08 00 00 00 01 00 00 22 00 00 00 00 00 00 00 00 ......."........
21DB6938  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6948  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6958  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6968  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
21DB6978  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Parameter 2:
016E0A98  08 00 00 00 01 00 00 22 00 00 00 0B 00 00 00 14 ................
====Function 34====
 
<source lang="cpp">
char * pkg_path;
void installPKG_thread()
{
if(game_ext_interface == 0) // test if game_ext_plugin is loaded for interface access
game_ext_interface = (game_ext_plugin_interface *)plugin_GetInterface(View_Find("game_ext_plugin"),1);
 
game_ext_interface->DoUnk0(); // Load Page
game_ext_interface->DoUnk34(pkg_path); // Execute and install PKG from path
}
 
void installPKG(char * path)
{
pkg_path = path;
if(xmm0_interface == 0) // getting xmb_plugin xmm0 interface for loading plugin sprx
xmm0_interface = (xmb_plugin_xmm0 *)plugin_GetInterface(View_Find("xmb_plugin"),'XMM0');
 
xmm0_interface->LoadPlugin3(0x16,installPKG_thread,0); // Thread safe load of game_ext_plugin.sprx (0x16)
}
 
...
installPKG("/dev_usb006/test.pkg"); // Example
</source>
 
For more information about classes etc. see [[Talk:Game_ext_plugin|Talk page]]
 
= Native Events =
GameApp_OnInitGameMain
GameApp_OnActivateGameMain
GameApp_OnCancelGameMain
GameApp_OnInitYconCautionBg
GameApp_OnInitYconCaution1
GameApp_OnActivateYconCaution1
GameApp_OnInitYconCaution2
GameApp_OnActivateYconCaution2
GameApp_OnInitYconCautionText
GameApp_OnInitYconPlaneWaku
GameApp_OnInit3DCaution
GameApp_OnActivate3DCaution
GameApp_OnInit3DCautionText


=Other info=
=Other info=
Please note that all contributions to PS3 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS3 Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)