Xmb plugin: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
mNo edit summary
 
(80 intermediate revisions by 2 users not shown)
Line 14: Line 14:
  1: 1 Parameter: int value (Plugin Enum ID) - gets plugin name string by Id
  1: 1 Parameter: int value (Plugin Enum ID) - gets plugin name string by Id
  2: 1 Parameter: int value (Plugin Enum ID) - can test if plugin view is available or not. (Result != 0)
  2: 1 Parameter: int value (Plugin Enum ID) - can test if plugin view is available or not. (Result != 0)
  3: 3 Parameter: - int value (Plugin Enum ID), void *, int - Loads corresponding plugin and executes the thread for view/interface usage
  3: 3 Parameter: - int value (Plugin Enum ID), void * handler, int - Loads corresponding plugin and executes the thread for view/interface usage
  4: 1 Parameter: uint * { Plugin Enum Id, int, int, int }
  4: Utility::LoadPlugin, 1 Parameter: uint * { Plugin Enum Id, int, int, int }
  5: 3 Parameter: int value (Plugin Enum Id), int , int
  5: Shutdown, 3 Parameter: int value (Plugin Enum Id), void * callback, int
  6: 1 Parameter: uint * { Plugin Enum Id, int , int }
  6: 1 Parameter: uint * { Plugin Enum Id, int , int }
  7: 1 Parameter: int value (Plugin Enum ID) - _paf_99919819  
  7: 1 Parameter: int value (Plugin Enum ID) - _paf_99919819 - (module activate?)
  8: 1 Parameter: int value to store
  8: ActivatePlugin, 1 Parameter: int value (Plugin Enum ID)
  9: 1 Parameter: int value to store
  9: 1 Parameter: int value (Plugin Enum ID) to store
  10: 1 Parameter: int value to store
  10: 1 Parameter: int value to store - (module deactivate?)
  11: 2 Parameter: int, int
  11: 2 Parameter: int, int
  12: 3 Parameter: int , int value (Plugin Enum ID), int value to store
  12: 3 Parameter: int (Plugin Enum Id) , int value (Plugin Enum ID), int value to store - SendFinalizeEndNotify?
  13: 1 Parameter: uint* [0xED8] - receives
  13: 1 Parameter: uint* [0xED8] - receives
  14: 1 Parameter: struct *ptr
  14: 1 Parameter: uint* [0xED8] - sets
  15: 1 Parameter: struct *ptr
  15: 1 Parameter: struct *ptr
  16: 2 Parameter: int value (Plugin Enum ID) - receives unknown value onto xmb plugin enum id's struct
  16: GetModuleLoadOpinion, 1 Parameter: int value (Plugin Enum ID)
  17: 2 Parameter: int value (Plugin Enum ID), uint64 unknown - stores unknown value onto xmb plugin enum id's struct
  17: SetModuleLoadOpinion?, 2 Parameter: int value (Plugin Enum ID), uint64 unknown - stores unknown value onto xmb plugin enum id's struct
  18: 2 Parameter: int, int
  18: 2 Parameter: void * handler, int
  19: 2 Parameter: int, int
  19: 2 Parameter: void * handler, int
  20: 2 Parameter: out:int, out:int  
  20: 2 Parameter: out: int *, out: int *
  21: 2 Parameter: int value (Plugin Enum ID), int value (0 = _vshnet_965A7E9D( ) ,else= _vshnet_52122E7D(("PS3 %s"), ))  
  21: 2 Parameter: int value (Plugin Enum ID), int value (0 = _vshnet_965A7E9D( ) ,else= _vshnet_52122E7D(("PS3 %s"), ))  
  22: 1 Parameter:
  22: 1 Parameter: int value (Plugin Enum ID) - executes given Plugin ID MOD0-Inferface Function 4)
  23: 1 Parameter: char* action? ("regcam:reg?" / "psvp:bgdl?id=0x%08x" / "psns:browse?target=plus&boot=102") - Executes Action?
  23: 2 Parameter: char* action, int value - Executes Action
  24: 2 Parameter: char* action?, int (0=http,https,psim,psns,psvp 1=psns,hknw,psim,tchat,search,wbrd,copy,explore,regcam)
  24: 2 Parameter: char* action, int value - Gets Plugin ID Enum based by Action string
  25: 0 Parameter:  
25: 0 Parameter:
 
== LoadModuleOpinion ==
 
& 1 = MOD0 Interface available
 
== Function 19 ==
 
Example:
void * { ModuleLoading, ModuleLoaded, ModuleUnloading, ModuleUnloaded}, 0
 
== Function 20 ==
 
1st Parameter: +1/-1 (vsh helper uri enabled?)
2nd Parameter: +1/-1
 
== Function 23 ==
 
Executes Action on given Input (Parameter 1 (Action), Parameter 2 (Action Type?) - calls plugin ACT0 Interface 0's ).
 
Parameter 1: Action (string with Parameter 2 command)
 
Parameter 2 = 0 determines:
http   - [[webbrowser_plugin]]
https - [[webbrowser_plugin]]
psns  - [[npsignin_plugin]]
psim   - [[npsignin_plugin]]
psvp   - [[videoplayer_plugin]]
 
Parameter 2 = 1 determines:
psns   - [[newstore_plugin]]
hknw   - [[hknw_plugin]]
psim   - [[friendim_plugin]]
tchat - [[avc2_text_plugin]]
search - [[webbrowser_plugin]]
wbrd   - [[wboard_plugin]]
copy   - [[filecopy_plugin]]
explore- [[explore_plugin]]
regcam - [[regcam_plugin]]
 
=== Function 23 Examples ===
 
psim:
psim:sendBrowserWakeup?desc=&url=
 
regcam:
regcam:reg?
 
psvp:
psvp:bgdl?id=0x%08x
  psvp:vdss?url=%s&id=0x%016llx&spd=%lld&cid=%s&fid=%s
 
psns:
psns:browse?target=plus&boot=102
 
== xmb plugin id list ==
 
{| class="wikitable sortable"
! Plugin name !! Enum ID !! ModuleLoadOpinion !! MOD0 Interface
|-
|[[system_plugin]]    || 0x00 || 0x82 || {{No}}
|-
|[[xmb_plugin]]        || 0x01 || 0x83 || {{Yes}}
|-
|[[explore_plugin]]    || 0x02 || 0x485 || {{Yes}}
|-
|[[game_plugin]]        || 0x14 || 0x51 || {{Yes}}
|-
|[[np_trophy_ingame]]  || 0x25 || 0x808 || {{No}}
|-
|[[gamedata_plugin]]    || 0x15 || 0x11 || {{Yes}}
|-
|[[game_ext_plugin]]    || 0x16 || 0x51 || {{Yes}}
|-
|[[premo_plugin]]      || 0x1A || 0xC0 || {{No}}
|-
|[[micon_lock_plugin]]  || 0x2B || 0x0 || {{No}}
|-
|[[category_setting_plugin]]  || 0x03 || 0x484 || {{No}}
|-
|[[sysconf_plugin]]    || 0x05 || 0x40 || {{No}}
|-
|[[netconf_plugin]]    || 0x06 || 0x8 || {{No}}
|-
|[[software_update_plugin]]  || 0x07 || 0x41 || {{Yes}}
|-
|[[bdp_plugin]]        || 0x11 || 0x51 || {{Yes}}
|-
|[[bdp_disccheck_plugin]]  || 0x12 || 0x81 || {{Yes}}
|-
|[[bdp_storage_plugin]]  || 0x13 || 0x81 || {{Yes}}
|-
|[[user_plugin]]        || 0x04 || 0x148 || {{No}}
|-
|[[friendim_plugin]]    || 0x1E || 0x1 || {{Yes}}
|-
|[[friendml_plugin]]    || 0x1F || 0x41 || {{Yes}}
|-
|[[friendtrophy_plugin]]  || 0x26 || 0x41 || {{Yes}}
|-
|[[profile_plugin]]    || 0x27 || 0x41 || {{Yes}}
|-
|[[photoviewer_plugin]]  || 0x0B || 0x271 || {{Yes}}
|-
|[[videoplayer_plugin]]  || 0x10 || 0x271 || {{Yes}}
|-
|[[webbrowser_plugin]]  || 0x1B || 0x8071 || {{Yes}}
|-
|[[webrender_plugin]]  || 0x1C || 0x8071 || {{Yes}}
|-
|[[xai_plugin]]        || 0x1D || 0x81 || {{Yes}}
|-
|[[audioplayer_plugin]]  || 0x0D || 0x31 || {{Yes}}
|-
|[[videodownloader_plugin]]  || 0x28 || 0x8 || {{No}}
|-
|[[nas_plugin]]        || 0x22 || 0x48 || {{No}}
|-
|[[download_plugin]]    || 0x29 || 0x8 || {{No}}
|-
|[[ps3_savedata_plugin]]  || 0x17 || 0x808 || {{No}}
|-
|[[vmc_savedata_plugin]]  || 0x18 || 0x8 || {{No}}
|-
|[[thumthum_plugin]]    || 0x2A || 0x48 || {{No}}
|-
|[[npsignin_plugin]]    || 0x23 || 0x1 || {{Yes}}
|-
|[[avc_plugin]]        || 0x20 || 0x8071 || {{Yes}}
|-
|[[avc2_text_plugin]]  || 0x21 || 0x1 || {{Yes}}
|-
|[[sacd_plugin]]        || 0x0E || 0x69 || {{Yes}}
|-
|[[eula_cddb_plugin]]  || 0x0F || 0x48 || {{No}}
|-
|[[strviewer_plugin]]  || 0x2D || 0x58 || {{No}}
|-
|[[edy_plugin]]        || 0x08 || 0x48 || {{No}}
|-
|[[print_plugin]]      || 0x09 || 0x40 || {{No}}
|-
|[[newstore_plugin]]    || 0x31 || 0x48 || {{No}}
|-
|[[deviceconf_plugin]]  || 0x0A || 0x40 || {{No}}
|-
|[[dlna_plugin]]        || 0x2C || 0x48 || {{No}}
|-
|[[playlist_plugin]]    || 0x2F || 0x8 || {{No}}
|-
|[[np_trophy_plugin]]  || 0x24 || 0x808 || {{No}}
|-
|[[kensaku_plugin]]    || 0x34 || 0x80 || {{No}}
|-
|[[regcam_plugin]]      || 0x35 || 0x48 || {{No}}
|-
|[[idle_plugin]]        || 0x36 || 0x481 || {{Yes}}
|-
|[[filecopy_plugin]]    || 0x37 || 0x48 || {{No}}
|-
|[[wboard_plugin]]      || 0x38 || 0x881 || {{Yes}}
|-
|[[hknw_plugin]]        || 0x32 || 0x8071 || {{Yes}}
|-
|[[poweroff_plugin]]    || 0x39 || 0x141 || {{Yes}}
|-
|[[eula_hcopy_plugin]]  || 0x3C || 0x141 || {{Yes}}
|-
|[[videoeditor_plugin]]  || 0x3A || 0x271 || {{Yes}}
|-
|[[scenefolder_plugin]]  || 0x3B || 0x8 || {{No}}
|-
|[[mtpinitiator_plugin]]  || 0x3E || 0x40 || {{No}}
|-
|[[campaign_plugin]]  || 0x3F || 0x11 || {{Yes}}
|-
|[[remotedownload_plugin]]  || 0x40 || 0x140 || {{No}}
|}


=MOD0 Interface=
=MOD0 Interface=
Line 42: Line 219:
contains 5 subs:
contains 5 subs:


  0: 0 Input:
  0: 0 Parameter: - (ModuleActivate?)
  1: 0 Input: - somewhat CAT0 related
  1: 0 Parameter: - somewhat CAT0 related (ModuleDeactivate?)
  2: empty
  2: empty -  (ModuleLoadFailed?)
  3: return 0
  3: 0 Parameter: return 0 -  (ModuleGetLoadOpinion?)
  4: empty
  4: empty


Line 53: Line 230:


  0: 1 Parameter: int value (0 - 0x14)
  0: 1 Parameter: int value (0 - 0x14)
  1: 2 Parameter: int value (0 - 0x0A), int value (0 - 0x14)
  1: 2 Parameter: int value (can be gotten from 13), 11) ), int value (0 - 0x14)
  2: 1 Parameter: int value  
  2: 1 Parameter: int value, float value
  3: 0 Parameter:  
  3: 0 Parameter:  
  4: 0 Parameter: returns int
  4: 0 Parameter: returns int (like 7) 0x1C0)
  5: 1 Parameter: float value
  5: 1 Parameter: float value
  6: 0 Parameter: returns float
  6: 0 Parameter: returns float
  7: 2 Parameter: int, int - (example: See Table [[xmb_plugin#Function_7) ]] ) - page_xmb page_xmb_indicator
  7: 2 Parameter: int, int - (example: See Table [[xmb_plugin#Function_7|Function 7]]) - page_xmb page_xmb_indicator
  8: 0 Parameter:  
  8: 0 Parameter:  
  9: 3 Parameter: int *, int* , wchar * infotext1
  9: 3 Parameter: int *, int* , wchar * infotext1
  10: 0 Parameter:  
  10: 0 Parameter: - close page infobar?
  11: 1 Parameter: int
  11: 1 Parameter: int
  12: 1 Parameter: int
  12: 1 Parameter: int id
  13: 0 Parameter: returns ptr*
  13: 0 Parameter: returns int - (Hakoniwa/VideoEdit-Enabled Flag?)
  14: 0 Parameter: returns uint8
  14: 0 Parameter: returns uint8
  15: 2 Parameter: calls 16) with int,int, 0
  15: 2 Parameter: calls 16) with int,int, 0
  16: 3 Parameter: int value (0-3),int,int explore_action (0 = ,1 = FocusMessageBox,2 = FocusFriend) - calls impose_plugin+1C
  16: 3 Parameter: uint8_t * struct[] ,int (gamepad port id),int explore_action (0 = return, 1 = FocusMessageBox,2 = FocusFriend,3 = impose_pad_battery_notice)  
  17: 0 Parameter: returns struct according to gametool/gametool2
  17: 0 Parameter: returns struct according to gametool/gametool2
  18: 1 Parameter: int
  18: 1 Parameter: int, float, float
  19: 2 Parameter: int,int (0x0C memsets 2 regions)
  19: 2 Parameter: int,int (0x0C memsets 2 regions)
  20: 1 Parameter: uint8 [0x38]
  20: 1 Parameter: in:  uint8 [0x38]
  21: 1 Parameter: uint8 [0x38]
  21: 1 Parameter: out: uint8 [0x38]
  22: 1 Parameter: wchar * - page_xmb_indicator - Shows XMB-Notifications at the bottom like "(Triangle): Options"  
  22: 1 Parameter: wchar * - page_xmb_indicator - Shows XMB-Notifications at the bottom like "(Triangle): Options"  
  23: 0 Parameter: returns ptr*
  23: 0 Parameter: returns ptr* ( ptr[0x908] = -1 -> ClearWBoardFocus)
  24: 0 Parameter: - _vshcommon_34A05733 ("xmb_plugin2", 0x15480)
  24: 0 Parameter: - _vshcommon_34A05733 ("xmb_plugin2", 0x15480) - returns some list
  25: 0 Parameter: returns "_pf_lwm" lwmutex*
  25: 0 Parameter: returns sys_lwmutex_t * "_pf_lwm"
  26: 1 Parameter: int value (0=decrease(+page_xmb_fg) + xmb2_interface_7(0,0x1C0/0x40,0x1C0),else=increase (page_xmb_fg))
  26: 1 Parameter: int value (0=decrease(+page_xmb_fg) + xmb2_interface_7(0,0x1C0/0x40,0x1C0),else=increase (page_xmb_fg))
  27: 0 Parameter: - calls category_setting_plugin CAT0 interface #24 + explore_plugin CAT0 interface #24
  27: 0 Parameter: - calls category_setting_plugin CAT0 interface #24 + explore_plugin CAT0 interface #24
  28: 1 Parameter: char*
  28: 1 Parameter: char* - Example: ""wbrd:show?"" , ""tchat:fullvsh_ps""
  29: 0 Parameter:  
  29: 0 Parameter:  
  30: 2 Parameter: void *handler,int - set new handler and parameter r8
  30: 2 Parameter: void *callback,uint8 [0x2F8] - set new custom_render_plugin callback and its parameter r8
  31: 1 Parameter: int value (0=decrease, else=increase) - page_xmb_bg  
  31: 1 Parameter: int value (0=page close, else= setwidget) - page_xmb_bg  
  32: 1 Parameter: int value (0=decrease, else=increase) - page_xmb_fg  
  32: 1 Parameter: int value (0=page close, else= setwidget) - page_xmb_fg  


== Function 7) ==
== Function 0 ==
{| class="wikitable sortable"
{| class="wikitable sortable"
! int !! int !! notes
! int !! notes
|-
|-
| 0 || 0x1C0 || makes XMB disappear, as if you launch a game
| 0x00 || function 7(0x040,0x1C0), PageActivate page_xmb, xmm0 function 8, or-flag 0x40000
|-
|-
| 0x80 || 0x1C0 || makes xmb x-axis bar transparent
| 0x01 || function 7(0x00,0x1C0), PageActivate page_xmb, xmm0 function 8, or-flag 0x40000
|-
|-
| 0xC0 || 0x1C0 ||  
| 0x02 || function 7(0x40,0x1CF), PageActivate page_xmb, xmm0 function 8, or-flag 0x40000
|-
|-
| 0x100 || 0x1C0 || centers xmb y-axis selection bar on the xmb x-axis
| 0x03 || xmm0 function 25, xmm0 function 16, xmb2 function 7 (0x000, 0x1C0), xmm0 function 8
|-
|-
| 0x140 || 0x1C0 || centers xmb y-axis selection bar on the xmb x-axis
| 0x04 || (nothing)
|-
|-
| 0x140 || 0xEFFF || centers xmb y-axis selection bar on the xmb x-axis
| 0x05 || depending of xmb2 function 11 result: <0 -> follows 0x00; >0 -> function 7(0x140,0xEFFF), PageActivate page_xmb, xmm0 function 8, do not or-flag 0x40000
|-
|-
| 0x180 || 0x1C0 || makes xmb x-axis bar transparent
| 0x06 || PageActivate page_xmb, xmm0 function 8
|-
|-
| 0x1C0 || 0x1C0 || makes xmb x-axis bar transparent
| 0x07 || PageActivate page_xmb, xmm0 function 8, set | 0x40000 flag
|}
 
= xmb plugin id list =
 
{| class="wikitable sortable"
! Plugin name !! Enum ID
|-
|-
|system_plugin    || 0x00
| 0x08 || same as 0x07
|-
|-
|xmb_plugin        || 0x01
| 0x09 || same as 0x07
|-
|-
|explore_plugin    || 0x02
| 0x0A || function 11 ( 7 ), function 2, then follows 0x03
|-
|-
|game_plugin        || 0x14
| 0x0B || (nothing)
|-
|-
|np_trophy_ingame  || 0x25
| 0x0C || (nothing)
|-
|-
|gamedata_plugin    || 0x15
| 0x0D ||  
|-
|-
|game_ext_plugin    || 0x16
| 0x0E || loads new struct at 0x2A4
|-
|-
|premo_plugin      || 0x1A
| 0x0F || ( function 11, function 12, CAT0 Interface, set String)
|-
|-
|micon_lock_plugin  || 0x2B
| 0x10 || (nothing)
|-
|-
|category_setting_plugin  || 0x03
| 0x11 || (nothing)
|-
|-
|sysconf_plugin    || 0x05
| 0x12 || paf_6C8F62F7 , calls Custom Render callback ?
|-
|-
|netconf_plugin    || 0x06
| 0x13 || allows use of float value used at function5 ? (busy icon related?)
|-
|-
|software_update_plugin  || 0x07
| 0x14 || changes indicator/"indi_base" width? + ( & 0x1C0 -> disable)
|-
|-
|bdp_plugin        || 0x11
|}
 
== Function 7 ==
{| class="wikitable sortable"
! int !! int !! notes
|-
|-
|bdp_disccheck_plugin  || 0x12
| 0x000 || 0x003F || nothing?
|-
|-
|bdp_storage_plugin  || 0x13
| 0x000 || 0x01C0 || makes XMB disappear, as if you launch a game
|-
|-
|user_plugin        || 0x04
| 0x000 || 0x0C00 || makes XMB disappear, then x-bar invisible
|-
|-
|friendim_plugin    || 0x1E
| 0x000 || 0x0DC0 || makes XMB disappear, then x-bar invisible
|-
|-
|friendml_plugin    || 0x1F
| 0x040 || 0x01C0 ||  
|-
|-
|friendtrophy_plugin  || 0x26
| 0x040 || 0x0DC0 || nothing?
|-
|-
|profile_plugin    || 0x27
| 0x040 || 0x01CF || nothing?
|-
|-
|photoviewer_plugin  || 0x0B
| 0x041 || 0x01CF || sets xmb y-axis bar very left
|-
|-
|videoplayer_plugin  || 0x10
| 0x042 || 0x01CF || sets xmb y-axis bar very left (outside visible area)
|-
|-
|webbrowser_plugin  || 0x1B
| 0x051 || 0x01CF || sets xmb y-axis bar very left
|-
|-
|webrender_plugin  || 0x1C
| 0x051 || 0x01FF || sets xmb y-axis bar very left
|-
|-
|xai_plugin        || 0x1D
| 0x080 || 0x01C0 || makes xmb x-axis bar transparent
|-
|-
|audioplayer_plugin  || 0x0D
| 0x0C0 || 0x01C0 || makes xmb x-axis bar transparent
|-
|-
|videodownloader_plugin  || 0x28
| 0x100 || 0x01C0 || centers xmb y-axis selection bar on the xmb x-axis
|-
|-
|nas_plugin        || 0x22
| 0x140 || 0x01C0 || centers xmb y-axis selection bar on the xmb x-axis
|-
|-
|download_plugin    || 0x29
| 0x140 || 0xEFFF || centers xmb y-axis selection bar on the xmb x-axis
|-
|ps3_savedata_plugin  || 0x18
|-
|vmc_savedata_plugin  || 0x18
|-
|thumthum_plugin    || 0x2A
|-
|npsignin_plugin    || 0x23
|-
|avc_plugin        || 0x20
|-
|-
|avc2_text_plugin  || 0x21
| 0x180 || 0x01C0 || makes xmb x-axis bar transparent
|-
|-
|sacd_plugin        || 0x0E
| 0x1C0 || 0x01C0 || makes xmb x-axis bar transparent
|-
|-
|eula_cddb_plugin  || 0x0F
| 0x200 || 0x0200 ||  
|-
|-
|strviewer_plugin  || 0x2D
| 0x000 || 0x11C0 || makes XMB disappear, then x-bar invisible
|-
|-
|edy_plugin        || 0x08
| 0x040 || 0x03C0 || nothing?
|-
|-
|print_plugin      || 0x09
| 0x400 || 0x0C00 || makes XMB x-bar invisible
|-
|-
|newstore_plugin    || 0x31
| 0x4C0 || 0x0DC0 || makes XMB x-bar invisible
|-
|-
|deviceconf_plugin  || 0x0A
| 0x800 || 0x0C00 || makes XMB x-bar invisible
|-
|dlna_plugin        || 0x2C
|-
|playlist_plugin    || 0x2F
|-
|np_trophy_plugin  || 0x24
|-
|kensaku_plugin    || 0x34
|-
|regcam_plugin      || 0x35
|-
|idle_plugin        || 0x36
|-
|filecopy_plugin    || 0x37
|-
|wboard_plugin      || 0x38
|-
|hknw_plugin        || 0x32
|-
|poweroff_plugin    || 0x39
|-
|eula_hcopy_plugin  || 0x3C
|-
|videoeditor_plugin  || 0x3A
|-
|scenefolder_plugin  || 0x3B
|-
|mtpinitiator_plugin  || 0x3E
|}
|}
== Function 21 ==
00000000 00 00 00 01 00 00 00 06 00 00 00 00 67 61 6D 65 ............game
00000010 44 69 72 32 00 00 00 00 00 00 00 00 00 00 00 08 Dir2............
00000020 00 00 00 0F FF FF FF FF FF FF FF FF 00 00 00 00 ................
00000030 08 00 00 00 01 00 00 13                        ........
== Function 22 ==
L"\uF880"  = {{padcircle}}-Button
L"\uF881"  = {{padcross}}-Button
L"\uF882"  = {{padsquare}}-Button
L"\uF883"  = {{padtriangle}}-Button
L"\uF884"  = {{dpadu}}-Button
L"\uF885"  = {{dpadd}}-Button
L"\uF886"  = {{dpadl}}-Button
L"\uF887"  = {{dpadr}}-Button
L"\uF888"  = {{padl1}}-Button
L"\uF889"  = {{padl2}}-Button
L"\uF88A"  = {{padl3}}-Button
L"\uF88B"  = {{padr1}}-Button
L"\uF88C"  = {{padr2}}-Button
L"\uF88D"  = {{padr3}}-Button
L"\uF88E"  = {{padselect}}-Button
L"\uF88F"  = {{padstart}}-Button
L"\uF892"  = {{padps}}-Button
L"\uF893"  = {{padl2}}{{dpadl}}-Combo
L"\uF894"  = {{padr2}}{{dpadr}}-Combo
= XMB Indexed Modules =
{{XMB_Indexed_Modules}}
=xmb_plugin_normal.rco ([[RCOXML Coding|RCOXML]] contents)=
*Notes:
**The main tree uses the name '''xmb_plugin'''... same name than [[xmb_ingame]], and his contents are 99,9% similar
**Main xmb is '''page_xmb''' while the clock frame at top right corner (and all his contents) belongs to the page '''page_xmb_indicator'''
**'''page_xmb_bg''' (maybe related with the wave + sparks animation) and '''page_xmb_fg''' are background and foreground, his purpose is a bit confusing
{{Boxcode|height=500px|title=xmb_plugin_normal.rcoxml|code=<syntaxhighlight lang="xml">
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- This XML representation of an RCO structure was generated by Rcomage v1.1.1 -->
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x120">
<MainTree name="xmb_plugin">
<ImageTree>
<!-- image items, not interesting for wiki -->
</ImageTree>
<TextTree>
<!-- text items, not interesting for wiki -->
</TextTree>
<ObjectTree>
<Page name="page_xmb_bg" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing"></Page>
<Page name="page_xmb" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing">
<XMenu name="xmenu" posX="-395" posY="40" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="event:native:/Bar::onInit" unknown17="0x1010100" unknown18="0x2010100" unknown19="0x3010100" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" menus="0xa" onEnter="event:native:/Bar::onPush" onContext="event:native:/Bar::onContextMenu" unknownEvent28="event:native:/Bar::onCursorMove" onLabelLoad="event:native:/Bar::onScrollIn" unknownRef32="event:native:/Bar::onScrollOut">
<XMList name="list_user" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
<XMList name="list_sysconf" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
<XMList name="list_photo" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
<XMList name="list_music" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
<XMList name="list_video" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
<XMList name="list_tv" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
<XMList name="list_game" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
<XMList name="list_network" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
<XMList name="list_psn" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
<XMList name="list_friend" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
</XMenu>
</Page>
<Page name="page_xmb_indicator" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing">
<Plane name="indicator" posX="0" posY="0" objectScale="0" redScale="0" greenScale="0" blueScale="0" alphaScale="0" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0">
<Plane name="indi_base" posX="0" posY="-74" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="560" height="82" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x120000" onLoad="nothing" unknown17="0xc000000" unknown18="0xd000500" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="image:tex_indi_bg" unknownInt24="0x3"></Plane>
<Plane name="indi_adjust" posX="-26" posY="0" objectScale="0" redScale="0" greenScale="0" blueScale="0" alphaScale="0" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x7d020700" unknown18="0x7e020700" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0">
<Text name="clock" posX="0" posY="-12" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="1" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x320000" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" text="nothing" font="nothing" unknownInt27="0x2000001" unknownInt29="0x1000000" size="10" topRed="1" topGreen="1" topBlue="1" bottomRed="1" bottomGreen="1" bottomBlue="1" spacingHorizontal="0" unknown37="0x0" unknown38="0x0" unknown39="0x0" spacingVertical="0" shadowX="4" shadowY="-5" shadowPerspective="0" shadowRed="0.25" shadowGreen="0.25" shadowBlue="0.25" shadowAlpha="1" unknown48="0x0" unknown49="0x0" unknown50="0x0" unknownFloat51="1" unknownFloat52="1" unknownFloat53="1" unknownFloat54="1" unknown55="0xffffffff" unknownInt56="0x13" unknownInt57="0x3" unknown58="0x0"></Text>
<Plane name="message" posX="-244" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="32" height="32" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="image:tex_indi_message" unknownInt24="0x0"></Plane>
<Plane name="chat" posX="-274" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="32" height="32" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="image:tex_indi_chat" unknownInt24="0x0"></Plane>
<Plane name="online" posX="-342" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="32" height="32" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="image:tex_indi_online" unknownInt24="0x0">
<Text name="online_num" posX="14" posY="2" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="1" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x310000" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" text="nothing" font="nothing" unknownInt27="0x1000001" unknownInt29="0x1000000" size="10" topRed="1" topGreen="1" topBlue="1" bottomRed="1" bottomGreen="1" bottomBlue="1" spacingHorizontal="0" unknown37="0x0" unknown38="0x0" unknown39="0x0" spacingVertical="0" shadowX="4" shadowY="-5" shadowPerspective="0" shadowRed="0.25" shadowGreen="0.25" shadowBlue="0.25" shadowAlpha="1" unknown48="0x0" unknown49="0x0" unknown50="0x0" unknownFloat51="1" unknownFloat52="1" unknownFloat53="1" unknownFloat54="1" unknown55="0xffffffff" unknownInt56="0x16" unknownInt57="0x3" unknown58="0x0"></Text>
</Plane>
<Plane name="avatar" posX="-376" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="32" height="32" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="nothing" unknownInt24="0x0"></Plane>
<Plane name="plus" posX="-410" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="32" height="32" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="image:tex_indi_plus" unknownInt24="0x0"></Plane>
</Plane>
</Plane>
</Page>
<Page name="page_xmb_fg" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing"></Page>
</ObjectTree>
</MainTree>
</RcoFile>
</syntaxhighlight>}}
{{System Firmware}}<noinclude>[[Category:Main]]</noinclude>
{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude>
{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude>

Latest revision as of 04:22, 30 August 2021


3 Identifiers:

  • 0x584D4D30 ("XMM0")
  • 0x4D4F4430 ("MOD0")
  • 0x584D4232 ("XMB2")

XMM0 Interface[edit | edit source]

contains 26 subs:

0: 1 Parameter: char * plugin name - get plugin id by string name
1: 1 Parameter: int value (Plugin Enum ID) - gets plugin name string by Id
2: 1 Parameter: int value (Plugin Enum ID) - can test if plugin view is available or not. (Result != 0)
3: 3 Parameter: - int value (Plugin Enum ID), void * handler, int - Loads corresponding plugin and executes the thread for view/interface usage
4: Utility::LoadPlugin, 1 Parameter: uint * { Plugin Enum Id, int, int, int }
5: Shutdown, 3 Parameter: int value (Plugin Enum Id), void * callback, int
6: 1 Parameter: uint * { Plugin Enum Id, int , int }
7: 1 Parameter: int value (Plugin Enum ID) - _paf_99919819 - (module activate?)
8: ActivatePlugin, 1 Parameter: int value (Plugin Enum ID)
9: 1 Parameter: int value (Plugin Enum ID) to store
10: 1 Parameter: int value to store - (module deactivate?)
11: 2 Parameter: int, int
12: 3 Parameter: int (Plugin Enum Id) , int value (Plugin Enum ID), int value to store - SendFinalizeEndNotify?
13: 1 Parameter: uint* [0xED8] - receives
14: 1 Parameter: uint* [0xED8] - sets
15: 1 Parameter: struct *ptr
16: GetModuleLoadOpinion, 1 Parameter: int value (Plugin Enum ID)
17: SetModuleLoadOpinion?, 2 Parameter: int value (Plugin Enum ID), uint64 unknown - stores unknown value onto xmb plugin enum id's struct
18: 2 Parameter: void * handler, int
19: 2 Parameter: void * handler, int
20: 2 Parameter: out: int *, out: int *
21: 2 Parameter: int value (Plugin Enum ID), int value (0 = _vshnet_965A7E9D( ) ,else= _vshnet_52122E7D(("PS3 %s"), )) 
22: 1 Parameter: int value (Plugin Enum ID) - executes given Plugin ID MOD0-Inferface Function 4)
23: 2 Parameter: char* action, int value - Executes Action
24: 2 Parameter: char* action, int value - Gets Plugin ID Enum based by Action string
25: 0 Parameter:

LoadModuleOpinion[edit | edit source]

& 1 = MOD0 Interface available

Function 19[edit | edit source]

Example:
void * { ModuleLoading, ModuleLoaded, ModuleUnloading, ModuleUnloaded}, 0

Function 20[edit | edit source]

1st Parameter: +1/-1 (vsh helper uri enabled?)
2nd Parameter: +1/-1

Function 23[edit | edit source]

Executes Action on given Input (Parameter 1 (Action), Parameter 2 (Action Type?) - calls plugin ACT0 Interface 0's ).

Parameter 1: Action (string with Parameter 2 command)

Parameter 2 = 0 determines:

http   - webbrowser_plugin
https  - webbrowser_plugin
psns   - npsignin_plugin
psim   - npsignin_plugin
psvp   - videoplayer_plugin

Parameter 2 = 1 determines:

psns   - newstore_plugin
hknw   - hknw_plugin
psim   - friendim_plugin
tchat  - avc2_text_plugin
search - webbrowser_plugin
wbrd   - wboard_plugin
copy   - filecopy_plugin
explore- explore_plugin
regcam - regcam_plugin

Function 23 Examples[edit | edit source]

psim:

psim:sendBrowserWakeup?desc=&url=

regcam:

regcam:reg?

psvp:

psvp:bgdl?id=0x%08x
psvp:vdss?url=%s&id=0x%016llx&spd=%lld&cid=%s&fid=%s

psns:

psns:browse?target=plus&boot=102

xmb plugin id list[edit | edit source]

Plugin name Enum ID ModuleLoadOpinion MOD0 Interface
system_plugin 0x00 0x82 No
xmb_plugin 0x01 0x83 Yes
explore_plugin 0x02 0x485 Yes
game_plugin 0x14 0x51 Yes
np_trophy_ingame 0x25 0x808 No
gamedata_plugin 0x15 0x11 Yes
game_ext_plugin 0x16 0x51 Yes
premo_plugin 0x1A 0xC0 No
micon_lock_plugin 0x2B 0x0 No
category_setting_plugin 0x03 0x484 No
sysconf_plugin 0x05 0x40 No
netconf_plugin 0x06 0x8 No
software_update_plugin 0x07 0x41 Yes
bdp_plugin 0x11 0x51 Yes
bdp_disccheck_plugin 0x12 0x81 Yes
bdp_storage_plugin 0x13 0x81 Yes
user_plugin 0x04 0x148 No
friendim_plugin 0x1E 0x1 Yes
friendml_plugin 0x1F 0x41 Yes
friendtrophy_plugin 0x26 0x41 Yes
profile_plugin 0x27 0x41 Yes
photoviewer_plugin 0x0B 0x271 Yes
videoplayer_plugin 0x10 0x271 Yes
webbrowser_plugin 0x1B 0x8071 Yes
webrender_plugin 0x1C 0x8071 Yes
xai_plugin 0x1D 0x81 Yes
audioplayer_plugin 0x0D 0x31 Yes
videodownloader_plugin 0x28 0x8 No
nas_plugin 0x22 0x48 No
download_plugin 0x29 0x8 No
ps3_savedata_plugin 0x17 0x808 No
vmc_savedata_plugin 0x18 0x8 No
thumthum_plugin 0x2A 0x48 No
npsignin_plugin 0x23 0x1 Yes
avc_plugin 0x20 0x8071 Yes
avc2_text_plugin 0x21 0x1 Yes
sacd_plugin 0x0E 0x69 Yes
eula_cddb_plugin 0x0F 0x48 No
strviewer_plugin 0x2D 0x58 No
edy_plugin 0x08 0x48 No
print_plugin 0x09 0x40 No
newstore_plugin 0x31 0x48 No
deviceconf_plugin 0x0A 0x40 No
dlna_plugin 0x2C 0x48 No
playlist_plugin 0x2F 0x8 No
np_trophy_plugin 0x24 0x808 No
kensaku_plugin 0x34 0x80 No
regcam_plugin 0x35 0x48 No
idle_plugin 0x36 0x481 Yes
filecopy_plugin 0x37 0x48 No
wboard_plugin 0x38 0x881 Yes
hknw_plugin 0x32 0x8071 Yes
poweroff_plugin 0x39 0x141 Yes
eula_hcopy_plugin 0x3C 0x141 Yes
videoeditor_plugin 0x3A 0x271 Yes
scenefolder_plugin 0x3B 0x8 No
mtpinitiator_plugin 0x3E 0x40 No
campaign_plugin 0x3F 0x11 Yes
remotedownload_plugin 0x40 0x140 No

MOD0 Interface[edit | edit source]

contains 5 subs:

0: 0 Parameter: - (ModuleActivate?)
1: 0 Parameter: - somewhat CAT0 related (ModuleDeactivate?)
2: empty -  (ModuleLoadFailed?)
3: 0 Parameter: return 0 -  (ModuleGetLoadOpinion?)
4: empty

XMB2 Interface[edit | edit source]

contains 33 subs:

0: 1 Parameter: int value (0 - 0x14)
1: 2 Parameter: int value (can be gotten from 13), 11) ), int value (0 - 0x14)
2: 1 Parameter: int value, float value
3: 0 Parameter: 
4: 0 Parameter: returns int (like 7) 0x1C0)
5: 1 Parameter: float value
6: 0 Parameter: returns float
7: 2 Parameter: int, int - (example: See Table Function 7) - page_xmb page_xmb_indicator
8: 0 Parameter: 
9: 3 Parameter: int *, int* , wchar * infotext1
10: 0 Parameter: - close page infobar?
11: 1 Parameter: int
12: 1 Parameter: int id
13: 0 Parameter: returns int - (Hakoniwa/VideoEdit-Enabled Flag?)
14: 0 Parameter: returns uint8
15: 2 Parameter: calls 16) with int,int, 0
16: 3 Parameter: uint8_t * struct[] ,int (gamepad port id),int explore_action (0 = return, 1 = FocusMessageBox,2 = FocusFriend,3 = impose_pad_battery_notice) 
17: 0 Parameter: returns struct according to gametool/gametool2
18: 1 Parameter: int, float, float
19: 2 Parameter: int,int (0x0C memsets 2 regions)
20: 1 Parameter: in:  uint8 [0x38]
21: 1 Parameter: out: uint8 [0x38]
22: 1 Parameter: wchar * - page_xmb_indicator - Shows XMB-Notifications at the bottom like "(Triangle): Options" 
23: 0 Parameter: returns ptr* ( ptr[0x908] = -1 -> ClearWBoardFocus)
24: 0 Parameter: - _vshcommon_34A05733 ("xmb_plugin2", 0x15480) - returns some list
25: 0 Parameter: returns sys_lwmutex_t * "_pf_lwm"
26: 1 Parameter: int value (0=decrease(+page_xmb_fg) + xmb2_interface_7(0,0x1C0/0x40,0x1C0),else=increase (page_xmb_fg))
27: 0 Parameter: - calls category_setting_plugin CAT0 interface #24 + explore_plugin CAT0 interface #24
28: 1 Parameter: char* - Example: ""wbrd:show?"" , ""tchat:fullvsh_ps""
29: 0 Parameter: 
30: 2 Parameter: void *callback,uint8 [0x2F8] - set new custom_render_plugin callback and its parameter r8
31: 1 Parameter: int value (0=page close, else= setwidget) - page_xmb_bg 
32: 1 Parameter: int value (0=page close, else= setwidget) - page_xmb_fg 

Function 0[edit | edit source]

int notes
0x00 function 7(0x040,0x1C0), PageActivate page_xmb, xmm0 function 8, or-flag 0x40000
0x01 function 7(0x00,0x1C0), PageActivate page_xmb, xmm0 function 8, or-flag 0x40000
0x02 function 7(0x40,0x1CF), PageActivate page_xmb, xmm0 function 8, or-flag 0x40000
0x03 xmm0 function 25, xmm0 function 16, xmb2 function 7 (0x000, 0x1C0), xmm0 function 8
0x04 (nothing)
0x05 depending of xmb2 function 11 result: <0 -> follows 0x00; >0 -> function 7(0x140,0xEFFF), PageActivate page_xmb, xmm0 function 8, do not or-flag 0x40000
0x06 PageActivate page_xmb, xmm0 function 8
0x07 0x40000 flag
0x08 same as 0x07
0x09 same as 0x07
0x0A function 11 ( 7 ), function 2, then follows 0x03
0x0B (nothing)
0x0C (nothing)
0x0D
0x0E loads new struct at 0x2A4
0x0F ( function 11, function 12, CAT0 Interface, set String)
0x10 (nothing)
0x11 (nothing)
0x12 paf_6C8F62F7 , calls Custom Render callback ?
0x13 allows use of float value used at function5 ? (busy icon related?)
0x14 changes indicator/"indi_base" width? + ( & 0x1C0 -> disable)

Function 7[edit | edit source]

int int notes
0x000 0x003F nothing?
0x000 0x01C0 makes XMB disappear, as if you launch a game
0x000 0x0C00 makes XMB disappear, then x-bar invisible
0x000 0x0DC0 makes XMB disappear, then x-bar invisible
0x040 0x01C0
0x040 0x0DC0 nothing?
0x040 0x01CF nothing?
0x041 0x01CF sets xmb y-axis bar very left
0x042 0x01CF sets xmb y-axis bar very left (outside visible area)
0x051 0x01CF sets xmb y-axis bar very left
0x051 0x01FF sets xmb y-axis bar very left
0x080 0x01C0 makes xmb x-axis bar transparent
0x0C0 0x01C0 makes xmb x-axis bar transparent
0x100 0x01C0 centers xmb y-axis selection bar on the xmb x-axis
0x140 0x01C0 centers xmb y-axis selection bar on the xmb x-axis
0x140 0xEFFF centers xmb y-axis selection bar on the xmb x-axis
0x180 0x01C0 makes xmb x-axis bar transparent
0x1C0 0x01C0 makes xmb x-axis bar transparent
0x200 0x0200
0x000 0x11C0 makes XMB disappear, then x-bar invisible
0x040 0x03C0 nothing?
0x400 0x0C00 makes XMB x-bar invisible
0x4C0 0x0DC0 makes XMB x-bar invisible
0x800 0x0C00 makes XMB x-bar invisible

Function 21[edit | edit source]

00000000 00 00 00 01 00 00 00 06 00 00 00 00 67 61 6D 65 ............game
00000010 44 69 72 32 00 00 00 00 00 00 00 00 00 00 00 08 Dir2............
00000020 00 00 00 0F FF FF FF FF FF FF FF FF 00 00 00 00 ................
00000030 08 00 00 00 01 00 00 13                         ........

Function 22[edit | edit source]

L"\uF880"  = Dualshock circle button-Button
L"\uF881"  = Dualshock cross button-Button
L"\uF882"  = Dualshock square button-Button
L"\uF883"  = Dualshock triangle button-Button
L"\uF884"  = D-Pad UP Button-Button
L"\uF885"  = D-Pad DOWN Button-Button
L"\uF886"  = D-Pad LEFT Button-Button
L"\uF887"  = D-Pad RIGHT Button-Button
L"\uF888"  = Dualshock L1 button-Button
L"\uF889"  = Dualshock L2 button-Button
L"\uF88A"  = Dualshock L3 button-Button
L"\uF88B"  = Dualshock R1 button-Button
L"\uF88C"  = Dualshock R2 button-Button
L"\uF88D"  = Dualshock R3 button-Button
L"\uF88E"  = Dualshock select button-Button
L"\uF88F"  = Dualshock start button-Button
L"\uF892"  = Dualshock PS button-Button
L"\uF893"  = Dualshock L2 buttonD-Pad LEFT Button-Combo
L"\uF894"  = Dualshock R2 buttonD-Pad RIGHT Button-Combo

XMB Indexed Modules[edit | edit source]

XMB Indexed Modules
Module Reference
<module>.sprx
<resource>.rco
Indexed in: In firmwares: XMBML module-action
availables
Notes
xmb_plugin.sprx xmb_ingame.sprx From Up to
playlist_plugin
playlist_plugin.sprx
playlist_plugin.rco
Yes No ??? 4.86 make_new_playlist_photo
make_new_playlist_music
new_playlist
playlists manager
scenefolder_plugin
scenefolder_plugin.sprx
scenefolder_plugin.rco
Yes No ??? 4.86 make_new_scenefolder_video_wo_title
make_new_scenefolder_video
system_plugin
basic_plugins.sprx
system_plugin.rco
Yes Yes ??? 4.86 ??? common and miscelaneous functions
xmb_plugin
xmb_plugin.sprx
N/A
Yes Yes ??? 4.86 ???
explore_plugin
explore_plugin.sprx
explore_plugin_full.rco
Yes Yes ??? 4.86

NotifyErrorNoExecute
ClearWBoardFocus
SetWBoardFocus
ExecStorageCopy
ShopDemo_ResetTimer
CloseListChild
FocusMessageBox
FocusFriend
ClearCache
ToggleExhibitionMode
SwitchBackgroundMode
SwitchFriendListMode
explore:log?channel_boot=
explore:log?channel_focus=
explore:log?screen_boot=
explore:log?screen_focus=
explore:log?video=%s%s
explore:log_flush?
explore:log_resession?
explore:call_updater
explore:log_direct?url=

file explorer
game_plugin
basic_plugins.sprx
game_plugin.rco
Yes Yes ??? 4.86 manual
psp_manual
miscelaneous game functions
np_trophy_ingame
np_trophy_ingame.sprx
np_trophy_ingame.rco
Yes Yes ??? 4.86 ??? online trophy functions
gamedata_plugin
gamedata_plugin.sprx
gamedata_plugin.rco
Yes No ??? 4.86 < any number > BDgame/gameupdate installations
game_ext_plugin
game_ext_plugin.sprx
gamedata_plugin.rco
Yes No ??? 4.86 ??? more miscelaneous game functions
premo_plugin
premo_plugin.sprx
premo_plugin.rco
Yes No ??? 4.86 ??? PSP remote play
micon_lock_plugin
micon_lock_plugin.sprx
N/A
Yes No ??? 4.86 ???
category_setting_plugin
category_setting_plugin.sprx
category_setting_plugin.rco
Yes No ??? 4.86 ??? XMB settings column
sysconf_plugin
sysconf_plugin.sprx
sysconf_plugin.rco
Yes No ??? 4.86 ??? miscelaneous system functions
netconf_plugin
netconf_plugin.sprx
netconf_plugin.rco
Yes No ??? 4.86 ??? network configuration manager
software_update_plugin
software_update_plugin.sprx
software_update_plugin.rco
Yes No ??? 4.86 ??? firmware updater miscelllaneous functions
bdp_plugin
bdp_plugin.sprx
bdp_plugin.rco
Yes No ??? 4.86 ??? bluray player
bdp_disccheck_plugin
bdp_disccheck_plugin.sprx
bdp_disccheck_plugin.rco
Yes No ??? 4.86 ??? bluray movie disc identifyer
bdp_storage_plugin
bdp_storage_plugin.sprx
bdp_storage_plugin.rco
Yes No ??? 4.86 ??? bluray movie disc identifyer ?
user_plugin
user_plugin.sprx
user_plugin.rco
Yes No ??? 4.86 ??? offline users manager
friendim_plugin
friendim_plugin.sprx
N/A
Yes No ??? 4.86 new_friend
new_message

psim:PluginNewMessageLaunch
psim:sendBrowserWakeup
psim:sendEtcLaunch
GameRecv
GameSend

chat functions
friendml_plugin
friendml_plugin.sprx
friendml_plugin.rco
Yes No ??? 4.86 ??? friends/chat functions
friendtrophy_plugin
friendtrophy_plugin.sprx
friendtrophy_plugin.rco
Yes No ??? 4.86 ??? friends/chat miscellaneous functions ?
profile_plugin
profile_plugin.sprx
profile_plugin.rco
Yes No ??? 4.86 ??? first boot user manager ?
photoviewer_plugin
photoviewer_plugin.sprx
photoviewer_plugin.rco
Yes No ??? 4.86 ??? image viewer
videoplayer_plugin
videoplayer_plugin.sprx
videoplayer_plugin.rco
Yes No ??? 4.86 psvp: video player
webbrowser_plugin
webbrowser_plugin.sprx
webbrowser_plugin.rco
Yes No ??? 4.86 <url> web browser
webrender_plugin
webrender_plugin.sprx
webrender_plugin.rco
Yes No ??? 4.86 <url> web browser miscelaneous functions ?
xai_plugin
xai_plugin.sprx
xai_plugin.rco
Yes No ??? 4.86 ??? XMB widgets
audioplayer_plugin
audioplayer_plugin.sprx
audioplayer_plugin.rco
Yes No ??? 4.86 ??? audio player
videodownloader_plugin
videodownloader_plugin.sprx
videodownloader_plugin.rco
Yes No ??? 4.86 ??? video downloader
nas_plugin
nas_plugin.sprx
nas_plugin.rco
Yes No ??? 4.86 ??? game purchase manager ?
download_plugin
download_plugin.sprx
download_plugin.rco
Yes No ??? 4.86 <number> file downloader
ps3_savedata_plugin
ps3_savedata_plugin.sprx
ps3_savedata_plugin.rco
Yes No ??? 4.86 ??? savedata manager (PS3)
vmc_savedata_plugin
vmc_savedata_plugin.sprx
vmc_savedata_plugin.rco
Yes No ??? 4.86 ??? virtual memory card manager (PS1 & PS2)
thumthum_plugin
thumthum_plugin.sprx
thumthum_plugin.rco
Yes No ??? 4.86 ???
npsignin_plugin
npsignin_plugin.sprx
npsignin_plugin.rco
Yes No ??? 4.86 ??? PSN login manager
avc_plugin
avc_plugin.sprx
avc_plugin.rco
Yes No ??? 4.86 new_chat Audio/Video chat manager ?
avc2_text_plugin
avc2_text_plugin.sprx
avc2_text_plugin.rco
Yes No ??? 4.86 new_chat Audio/Video chat manager 2 ?
sacd_plugin
sacd_plugin.sprx
sacd_plugin.rco
Yes No ??? 4.86 ??? super audio-CD player
eula_cddb_plugin
eula_cddb_plugin.sprx
eula_cddb_plugin.rco
Yes No ??? 4.86 ??? audio-CD database manager
strviewer_plugin
strviewer_plugin.sprx
strviewer_plugin.rco
Yes No ??? 4.86 ??? XMB language selector ?
edy_plugin
edy_plugin.sprx
edy_plugin.rco
Yes No ??? 4.86 ??? Edy viewer pay service
print_plugin
print_plugin.sprx
print_plugin.rco
Yes No ??? 4.86 ??? printer manager
newstore_plugin
newstore_plugin.sprx
newstore_plugin.rco
Yes No ??? 4.86 ??? PSN store viewer
deviceconf_plugin
deviceconf_plugin.sprx
deviceconf_plugin.rco
Yes No ??? 4.86 ??? peripheral manager
dlna_plugin
dlna_plugin.sprx
dlna_plugin.rco
Yes No ??? 4.86 dlna_scan dlna media services manager
np_trophy_plugin
np_trophy_plugin.sprx
np_trophy_plugin.rco
Yes No ??? 4.86 ???
kensaku_plugin
kensaku_plugin.sprx
kensaku_plugin.rco
Yes No ??? 4.86 kensaku_google internet search (the loupe icon in network column)
regcam_plugin
regcam_plugin.sprx
regcam_plugin.rco
Yes No ??? 4.86 ??? credit card manager ?
idle_plugin
idle_plugin.sprx
idle_plugin.rco
Yes No ??? 4.86 ??? XMB idle mode enabler ?
filecopy_plugin
filecopy_plugin.sprx
filecopy_plugin.rco
Yes No ??? 4.86 copy:device external device file importer/exporter
wboard_plugin
wboard_plugin.sprx
wboard_plugin.rco
Yes No ??? 4.86 wbrd:show? "what's new" display mode content manager
checker_plugin
checker_plugin.sprx
checker_plugin.rco
Yes No ??? 4.86 ???
hknw_plugin
hknw_plugin.sprx
hknw_plugin.rco
Yes No ??? 4.86 ??? photo editor (hakinowa)
poweroff_plugin
poweroff_plugin.sprx
poweroff_plugin.rco
Yes No ??? 4.86 ??? system power manager
eula_hcopy_plugin
eula_hcopy_plugin.sprx
eula_hcopy_plugin.rco
Yes No ??? 4.86 ??? hdd copy/backup utility
videoeditor_plugin
videoeditor_plugin.sprx
videoeditor_plugin.rco
Yes No ??? 4.86 ??? video editor
This table only represents modules indexed in CEX firmwares !

xmb_plugin_normal.rco (RCOXML contents)[edit | edit source]

  • Notes:
    • The main tree uses the name xmb_plugin... same name than xmb_ingame, and his contents are 99,9% similar
    • Main xmb is page_xmb while the clock frame at top right corner (and all his contents) belongs to the page page_xmb_indicator
    • page_xmb_bg (maybe related with the wave + sparks animation) and page_xmb_fg are background and foreground, his purpose is a bit confusing
xmb_plugin_normal.rcoxml
Edit-copy purple.svg.png
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- This XML representation of an RCO structure was generated by Rcomage v1.1.1 -->
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x120">
	<MainTree name="xmb_plugin">
		<ImageTree>
			<!-- image items, not interesting for wiki -->
		</ImageTree>
		<TextTree>
			<!-- text items, not interesting for wiki -->
		</TextTree>
		<ObjectTree>
			<Page name="page_xmb_bg" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing"></Page>
			<Page name="page_xmb" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing">
				<XMenu name="xmenu" posX="-395" posY="40" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="event:native:/Bar::onInit" unknown17="0x1010100" unknown18="0x2010100" unknown19="0x3010100" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" menus="0xa" onEnter="event:native:/Bar::onPush" onContext="event:native:/Bar::onContextMenu" unknownEvent28="event:native:/Bar::onCursorMove" onLabelLoad="event:native:/Bar::onScrollIn" unknownRef32="event:native:/Bar::onScrollOut">
					<XMList name="list_user" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
					<XMList name="list_sysconf" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
					<XMList name="list_photo" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
					<XMList name="list_music" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
					<XMList name="list_video" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
					<XMList name="list_tv" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
					<XMList name="list_game" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
					<XMList name="list_network" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
					<XMList name="list_psn" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
					<XMList name="list_friend" unknown0="0x0" image="nothing" unknownRef3="nothing"></XMList>
				</XMenu>
			</Page>
			<Page name="page_xmb_indicator" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing">
				<Plane name="indicator" posX="0" posY="0" objectScale="0" redScale="0" greenScale="0" blueScale="0" alphaScale="0" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0">
					<Plane name="indi_base" posX="0" posY="-74" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="560" height="82" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x120000" onLoad="nothing" unknown17="0xc000000" unknown18="0xd000500" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="image:tex_indi_bg" unknownInt24="0x3"></Plane>
					<Plane name="indi_adjust" posX="-26" posY="0" objectScale="0" redScale="0" greenScale="0" blueScale="0" alphaScale="0" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x7d020700" unknown18="0x7e020700" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" image="nothing" unknownInt24="0x0">
						<Text name="clock" posX="0" posY="-12" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="1" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x320000" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" text="nothing" font="nothing" unknownInt27="0x2000001" unknownInt29="0x1000000" size="10" topRed="1" topGreen="1" topBlue="1" bottomRed="1" bottomGreen="1" bottomBlue="1" spacingHorizontal="0" unknown37="0x0" unknown38="0x0" unknown39="0x0" spacingVertical="0" shadowX="4" shadowY="-5" shadowPerspective="0" shadowRed="0.25" shadowGreen="0.25" shadowBlue="0.25" shadowAlpha="1" unknown48="0x0" unknown49="0x0" unknown50="0x0" unknownFloat51="1" unknownFloat52="1" unknownFloat53="1" unknownFloat54="1" unknown55="0xffffffff" unknownInt56="0x13" unknownInt57="0x3" unknown58="0x0"></Text>
						<Plane name="message" posX="-244" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="32" height="32" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="image:tex_indi_message" unknownInt24="0x0"></Plane>
						<Plane name="chat" posX="-274" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="32" height="32" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="image:tex_indi_chat" unknownInt24="0x0"></Plane>
						<Plane name="online" posX="-342" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="32" height="32" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="image:tex_indi_online" unknownInt24="0x0">
							<Text name="online_num" posX="14" posY="2" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="1" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x310000" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x0" unknownInt21="0x0" unknown22="0x0" text="nothing" font="nothing" unknownInt27="0x1000001" unknownInt29="0x1000000" size="10" topRed="1" topGreen="1" topBlue="1" bottomRed="1" bottomGreen="1" bottomBlue="1" spacingHorizontal="0" unknown37="0x0" unknown38="0x0" unknown39="0x0" spacingVertical="0" shadowX="4" shadowY="-5" shadowPerspective="0" shadowRed="0.25" shadowGreen="0.25" shadowBlue="0.25" shadowAlpha="1" unknown48="0x0" unknown49="0x0" unknown50="0x0" unknownFloat51="1" unknownFloat52="1" unknownFloat53="1" unknownFloat54="1" unknown55="0xffffffff" unknownInt56="0x16" unknownInt57="0x3" unknown58="0x0"></Text>
						</Plane>
						<Plane name="avatar" posX="-376" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="32" height="32" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="nothing" unknownInt24="0x0"></Plane>
						<Plane name="plus" posX="-410" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="32" height="32" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x700" unknown18="0x700" unknown19="0x0" unknownInt20="0x70000" unknownInt21="0x70000" unknown22="0x0" image="image:tex_indi_plus" unknownInt24="0x0"></Plane>
					</Plane>
				</Plane>
			</Page>
			<Page name="page_xmb_fg" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing"></Page>
		</ObjectTree>
	</MainTree>
</RcoFile>