Nas plugin: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
mNo edit summary
 
(15 intermediate revisions by 2 users not shown)
Line 8: Line 8:
contains 35 subs:
contains 35 subs:


  0: 1 Parameter: int
  0: 1 Parameter: int (0 - 0x29) - create nas_dialog, nas_installer, page_nas - page_default_theme / page_wallpaper_theme (0, 1000.0f)
  1: 2 Parameter: int do, int id - ("psvp:bgdl?id=0x%08x")
  1: 2 Parameter: int do, int bgdl_id - (loadNewStorePlugin? ("psvp:bgdl?id=0x%08x"))
  2: 0 Parameter:
  2: 0 Parameter: - set 0x28 / 0x1C0 - create nas_dialog, nas_installer, page_nas
  3: 0 Parameter:
  3: 0 Parameter: - set 0x29 / 0x300 - create nas_dialog, nas_installer, page_nas
  4:  
  4: 6 Parameter: list { char * items} , item count (<=0x10), cb_arg_0 , cb_arg_1, void * callback,Memory Container
  5:  
  5: 5 Parameter: char * CategoryID, cb_arg_0, cb_arg_1,void * callback,Memory Container
  6: SetCallback, 2 Parameter: void * handler, int interface ?
  6: SetCallback, 2 Parameter: void * handler, int interface ? - for Unload?/Exit?
  7: 1 Parameter: download struct
  7: 1 Parameter: download struct - set 0x1F, create nas_dialog, nas_installer, activate nas_dialog
  8: 2 Parameter: char * [0x40], char * [0x20]
  8: Set, 2 Parameter: char * username[0x40], char * password[0x20]
  9: 0 Parameter: - edy_plugin interface 1 func 4
  9: 0 Parameter: - edy_plugin interface 1 func 4
  10: 1 Parameter: download struct
  10: 1 Parameter: download struct - 0, set 0x1F, create nas_dialog, nas_installer, activate nas_dialog
  11: 1 Parameter: download struct
  11: 1 Parameter: download struct - 1, set 0x1F, create nas_dialog, nas_installer, activate nas_dialog
  12: 1 Parameter: download struct
  12: 1 Parameter: download struct - set 0x1F, create nas_dialog, nas_installer, activate nas_dialog
  13: 1 Parameter: download struct
  13: 1 Parameter: download struct - set 0x1F, create nas_dialog, nas_installer, activate nas_dialog
  14:  
  14: 1 Parameter: download struct - set 0x20 (progress bar?), create nas_dialog, nas_installer, activate nas_dialog
  15:  
  15: 1 Parameter: download struct - set 0x21 (streaming?), create nas_dialog, nas_installer, activate nas_dialog
  16:
  16: 1 Parameter: download struct - set 0x21 (streaming?), create nas_dialog, nas_installer, activate nas_dialog
  17:
  17: 1 Parameter: download struct - set 0x21 (streaming?), create nas_dialog, nas_installer, activate nas_dialog
  18:
  18: 1 Parameter: struct { "%s", , , flags } - set 0x21 (streaming?), create nas_dialog, nas_installer, activate nas_dialog
  19: Get current? psvp bgdl id
  19: Get, 1 Parameter: int * bgdl_id
  20:
  20: installerDrmActivation, 3 Parameter: int drmActivationItemAction(0-4),int drmActivationItemTarget(1=authorize/0=not), int drmActivationItemOption - 6,create nas_dialog, nas_installer, activate nas_dialog
  21: 3 Parameter: string, const void *input, size_t len
  21: 3 Parameter: char *, const void *input (cellHttpUtilBase64Encoder), size_t len - 7, create nas_dialog, nas_installer, activate nas_dialog
  22:  
  22: 1 Parameter: - installerDownload - 0x21, create nas_dialog, nas_installer, activate nas_dialog
  23:  
  23: 2 Parameter: int, void *
  24:  
  24: 1 Parameter: char * path
  25:  
  25: 2 Parameter: int bgdl_task_id, int flags - set 0x1F , create nas_dialog, nas_installer, activate nas_dialog
  26:
  26: 0 Parameter: return int error_code
  27:
  27: 1 Parameter: { char * path, int pic?, char * titleid?, void *, wchar_t *, char * SysVersion} - set 0x22 , create nas_dialog, nas_installer, activate nas_dialog
  28: 1 Parameter: char * path
  28: 1 Parameter: char * path - set 0x23
  29: 2 Parameter: int *, int *
  29: Get, 2 Parameter: uint64_t *, uint64_t * - DL Time ?
  30:
  30: 1 Parameter: struct - set 0x21 , create nas_dialog, nas_installer, activate nas_dialog
  31:  
  31: 1 Parameter: { int, int, uint64_t } - msgdialog
  32: ResumeMarlinVideoStreaming?
  32: ResumeMarlinVideoStreaming, 1 Parameter: void * callback - set 0x24 , create nas_dialog, nas_installer, activate nas_dialog
  33:  
  33: 4 Parameter: char * [0x100], 0x100, uint64_t * , uint64_t *
  34:
  34: 1 Parameter: void * [0x178?]
 
== dialog messages ==
0x00 msg_wait
0x01 msg_wait
0x02 msg_wait
0x03 msg_wait
0x04 msg_wait
0x05 msg_wait
0x06 msg_wait
0x07 msg_wait
0x08 msg_wait
0x09 app_software_download_ask
0x0A (default)
0x0B msg_wait
0x0C update_feature
0x0D
0x0E Activate/Authorize Video ... msg_wait
0x0F (download)
0x10
0x11 Authorize ... msg_wait
0x12 (default)
0x13 (default)
0x14
0x15 msg_wait_tool_scan
0x16 Install pls_wait
0x17 msg_smoving / msg_copying
0x18 msg_smoving / msg_copying
0x19 authorize msg_wait
0x1A (default)
0x1B (default)
0x1C (default)
0x1D (default)
0x1E Install complete start Software now
0x1F Start Software
0x20 msg_copied delete content saved ps3 ask
0x21 msg_deleting
0x22 msg_wait
0x23 (default)
0x24 (default)
0x25 (default)
0x26 (default)
0x27 (default)
0x28 (default)
0x29 (default)
0x2A (default)


== nas plugin struct ==
== nas plugin struct ==
Line 51: Line 96:
   char * contentid;
   char * contentid;
   wchar_t * message;  
   wchar_t * message;  
   int flag;
   int msgdialog?_flag;
  }
  }
=Initialization=
Load up parameters:
container_id =
(ingame = 1)
=Game checks=
==Content Ids==
[[PKG_files|PKG]] Content Type == 6 (PS1emu) or item_count == 6 and "make_package_npdrm revision" <= 1571
HP0506-NPHJ00046_00-0000000000000001 ARMORED CORE (For PS3)
HP0506-NPHJ00049_00-0000000000000001 ARMORED CORE PROJECT PHANTASMA
HP0506-NPHJ00066_00-0000000000000001 ARMORED CORE MASTER OF ARENA (For PS3)
HP9000-NPHI00020_00-0000000000000001 Ape Escape! (For PS3)
HP9000-NPHI00021_00-0000000000000001 My Hot Cooking (For PS3)
JP0506-NPJJ00068_00-0000000000000001 ARMORED CORE (secretly? re-released by Sony, Minimum 4.25 System Version)
JP0506-NPJJ00105_00-0000000000000001 ARMORED CORE MASTER OF ARENA (secretly? re-released by Sony, Minimum 4.46 System Version)
JP9000-NPJI00031_00-0000000000000001 My Cooking
JP9000-NPJI00032_00-0000000000000001 Ape Escape
JP0506-NPJJ00089_00-0000000000000001 ARMORED CORE PROJECT PHANTASMA (secretly? re-released by Sony, Minimum 4.25 System Version)
 
JP9000-NPJI00027_00-0000000000000001 MediEvil
==PKG Blacklist==
following [[PKG_files|PKG]] sha1 hashes are checked and return Error code: 0x8002AE22
2F9AF66C24DF46EECCDF46901617BC8FB3E76472
AE91A3D9B62ED79F3D54552EBBBE0AA66590E3C8
D83B50DF9CD412A0CB32DEA6D24AC581BC16E626
284A6B568C87F9FE66E19CFE403A76D86A61C31B
4C05EFC15F9EB2998AC35291D1AF727EAB4694CC
1FE682F7A7DC6647552495315F192A013F668E6B
9E3B48B078066622D6F017CEF7BD17EC94EE4C6B
E4BE19C70222D41D4DA977B288DDA1658CCD77FF


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

Latest revision as of 00:27, 31 January 2015

1 Identifiers:

  • 1

1 Interface[edit | edit source]

contains 35 subs:

0: 1 Parameter: int (0 - 0x29) - create nas_dialog, nas_installer, page_nas - page_default_theme / page_wallpaper_theme (0, 1000.0f)
1: 2 Parameter: int do, int bgdl_id - (loadNewStorePlugin? ("psvp:bgdl?id=0x%08x"))
2: 0 Parameter: - set 0x28 / 0x1C0 - create nas_dialog, nas_installer, page_nas
3: 0 Parameter: - set 0x29 / 0x300 - create nas_dialog, nas_installer, page_nas
4: 6 Parameter: list { char * items} , item count (<=0x10), cb_arg_0 , cb_arg_1, void * callback,Memory Container
5: 5 Parameter: char * CategoryID, cb_arg_0, cb_arg_1,void * callback,Memory Container
6: SetCallback, 2 Parameter: void * handler, int interface ? - for Unload?/Exit?
7: 1 Parameter: download struct - set 0x1F, create nas_dialog, nas_installer, activate nas_dialog
8: Set, 2 Parameter: char * username[0x40], char * password[0x20]
9: 0 Parameter: - edy_plugin interface 1 func 4
10: 1 Parameter: download struct - 0, set 0x1F, create nas_dialog, nas_installer, activate nas_dialog
11: 1 Parameter: download struct - 1, set 0x1F, create nas_dialog, nas_installer, activate nas_dialog
12: 1 Parameter: download struct - set 0x1F, create nas_dialog, nas_installer, activate nas_dialog
13: 1 Parameter: download struct - set 0x1F, create nas_dialog, nas_installer, activate nas_dialog
14: 1 Parameter: download struct - set 0x20 (progress bar?), create nas_dialog, nas_installer, activate nas_dialog
15: 1 Parameter: download struct - set 0x21 (streaming?), create nas_dialog, nas_installer, activate nas_dialog
16: 1 Parameter: download struct - set 0x21 (streaming?), create nas_dialog, nas_installer, activate nas_dialog
17: 1 Parameter: download struct - set 0x21 (streaming?), create nas_dialog, nas_installer, activate nas_dialog
18: 1 Parameter: struct { "%s", , , flags } - set 0x21 (streaming?), create nas_dialog, nas_installer, activate nas_dialog
19: Get, 1 Parameter: int * bgdl_id 
20: installerDrmActivation, 3 Parameter: int drmActivationItemAction(0-4),int drmActivationItemTarget(1=authorize/0=not), int drmActivationItemOption - 6,create nas_dialog, nas_installer, activate nas_dialog
21: 3 Parameter: char *, const void *input (cellHttpUtilBase64Encoder), size_t len - 7, create nas_dialog, nas_installer, activate nas_dialog
22: 1 Parameter: - installerDownload - 0x21, create nas_dialog, nas_installer, activate nas_dialog
23: 2 Parameter: int, void *
24: 1 Parameter: char * path
25: 2 Parameter: int bgdl_task_id, int flags - set 0x1F , create nas_dialog, nas_installer, activate nas_dialog
26: 0 Parameter: return int error_code
27: 1 Parameter: { char * path, int pic?, char * titleid?, void *, wchar_t *, char * SysVersion} - set 0x22 , create nas_dialog, nas_installer, activate nas_dialog
28: 1 Parameter: char * path - set 0x23
29: Get, 2 Parameter: uint64_t *, uint64_t * - DL Time ?
30: 1 Parameter: struct - set 0x21 , create nas_dialog, nas_installer, activate nas_dialog
31: 1 Parameter: { int, int, uint64_t } - msgdialog
32: ResumeMarlinVideoStreaming, 1 Parameter: void * callback - set 0x24 , create nas_dialog, nas_installer, activate nas_dialog
33: 4 Parameter: char * [0x100], 0x100, uint64_t * , uint64_t *
34: 1 Parameter: void * [0x178?]

dialog messages[edit | edit source]

0x00 msg_wait
0x01 msg_wait
0x02 msg_wait
0x03 msg_wait
0x04 msg_wait
0x05 msg_wait
0x06 msg_wait
0x07 msg_wait
0x08 msg_wait
0x09 app_software_download_ask
0x0A (default)
0x0B msg_wait
0x0C update_feature
0x0D 
0x0E Activate/Authorize Video ... msg_wait
0x0F (download)
0x10
0x11 Authorize ... msg_wait
0x12 (default)
0x13 (default)
0x14
0x15 msg_wait_tool_scan
0x16 Install pls_wait
0x17 msg_smoving / msg_copying
0x18 msg_smoving / msg_copying
0x19 authorize msg_wait
0x1A (default)
0x1B (default)
0x1C (default)
0x1D (default)
0x1E Install complete start Software now
0x1F Start Software
0x20 msg_copied delete content saved ps3 ask
0x21 msg_deleting
0x22 msg_wait
0x23 (default)
0x24 (default)
0x25 (default)
0x26 (default)
0x27 (default)
0x28 (default)
0x29 (default)
0x2A (default)

nas plugin struct[edit | edit source]

struct{
 char * dlurl;
 char * picurl;
 char * contentid;
 wchar_t * message; 
 int msgdialog?_flag;
}

Initialization[edit | edit source]

Load up parameters:

container_id =
(ingame = 1)


Game checks[edit | edit source]

Content Ids[edit | edit source]

PKG Content Type == 6 (PS1emu) or item_count == 6 and "make_package_npdrm revision" <= 1571

HP0506-NPHJ00046_00-0000000000000001 ARMORED CORE (For PS3)
HP0506-NPHJ00049_00-0000000000000001 ARMORED CORE PROJECT PHANTASMA
HP0506-NPHJ00066_00-0000000000000001 ARMORED CORE MASTER OF ARENA (For PS3)
HP9000-NPHI00020_00-0000000000000001 Ape Escape! (For PS3)
HP9000-NPHI00021_00-0000000000000001 My Hot Cooking (For PS3)
JP0506-NPJJ00068_00-0000000000000001 ARMORED CORE (secretly? re-released by Sony, Minimum 4.25 System Version)
JP0506-NPJJ00105_00-0000000000000001 ARMORED CORE MASTER OF ARENA (secretly? re-released by Sony, Minimum 4.46 System Version)
JP9000-NPJI00031_00-0000000000000001 My Cooking
JP9000-NPJI00032_00-0000000000000001 Ape Escape
JP0506-NPJJ00089_00-0000000000000001 ARMORED CORE PROJECT PHANTASMA (secretly? re-released by Sony, Minimum 4.25 System Version)
 
JP9000-NPJI00027_00-0000000000000001 MediEvil

PKG Blacklist[edit | edit source]

following PKG sha1 hashes are checked and return Error code: 0x8002AE22

2F9AF66C24DF46EECCDF46901617BC8FB3E76472
AE91A3D9B62ED79F3D54552EBBBE0AA66590E3C8
D83B50DF9CD412A0CB32DEA6D24AC581BC16E626
284A6B568C87F9FE66E19CFE403A76D86A61C31B
4C05EFC15F9EB2998AC35291D1AF727EAB4694CC
1FE682F7A7DC6647552495315F192A013F668E6B
9E3B48B078066622D6F017CEF7BD17EC94EE4C6B
E4BE19C70222D41D4DA977B288DDA1658CCD77FF