XMBML Coding
Basic XMBML Structure[edit | edit source]
This page outlines the logic behind XMB XML configuration files. For some practise usage see: XMBML Coding Examples
This is a reduced version of category_network.xml with only one icon (tex_browser) that launches the webbrowser (type:x-xmb/xmlwebbrowser). The .xml is loaded starting from <View id="root">, then inside the <Items> table there is a <Query> linking to #seg_browser (the character "#" links to a <View id> in the same file, so is linked to <View id="seg_browser">). When <View id="seg_browser"> is loaded first starts reading the table of <Items> that contains an <Item> that is linked using attr="browser" to a table of attributes <Table key="browser"
<?xml version="1.0" encoding="UTF-8"?> <XMBML version="1.0"> <View id="root"> <Items> <Query class="type:x-xmb/folder-pixmap" key="seg_browser" src="#seg_browser"/> </Items> </View> <View id="seg_browser"> <Attributes> <Table key="browser"> <Pair key="icon_rsc"><String>tex_browser</String></Pair> <Pair key="icon_notation"><String>WNT_XmbItemBrowser</String></Pair> <Pair key="title_rsc"><String>msg_browser</String></Pair> </Table> </Attributes> <Items> <Item class="type:x-xmb/xmlwebbrowser" key="browser" attr="browser"/> </Items> </View> </XMBML>
- The contents of the .xml file can be identifyed by the <View id> and <key> this way:
- <View id="root"> contains 1 <Items> with the key="seg_browser"
- <View id="seg_browser"> contains 1 <Items> with the key="browser"
<View id="root"> <Items> <Query key="seg_browser"/> </Items> </View> <View id="seg_browser"> <Attributes> <Table key="browser"> </Table> </Attributes> <Items> <Item key="browser"/> </Items> </View>
- Note the "Pair key"'s inside "attributes tables" are not considered identifyers of the xml tag
View ID's (Enviroment ID's, and Segment ID's)[edit | edit source]
Identifyers made of UTF-8 characters and without spaces. There are two types: Enviroments, and Segments
- Enviroments are reserved names (hardcoded in VSH?): "root", "root_info", "root_for_dex", "root_dex", "root_for_BDU", "root_power_only", "root_hide_friend", "tool_root", "shop_root", "shop_guest_root", "shop_staff_root", "root_arcade" and obsolete: "stage_demo_root", "xai_test_root", "store_root"
- Used to load specific XMB items for different PS3 types (retail, debug, etc...), or to load items in specific boot modes (e.g: in shop PS3's "locked" or "unlocked" modes), can be considered the XMB enviroments used by the XMB Configuration Files
- Usually inside the .XML files there are several <View id> of this type starting with "root" (retail XMB) at the top, only one of them is loaded by VSH when the PS3 boots
- Segments are all the others with names starting with "seg_" (e.g: seg_gamedata, seg_gameexit, seg_manual, etc...). There must be no other segments with the same name in the same .XML file, but some segments used for common functions are repeated in different .XML files and uses the same segment name and key identifyer (e.g. the segment "seg_gameexit" containing an item with the key "gamexit" is repeated in 8 .XML files)
- Segments are loaded by some query classes (inside <items> tables) by making his "src" to point to the target segment. When the segment is in the same .XML file it works simply by "jumping" to another line of the same file. When the segment is in another .XML file first is needed to locate the target .XML file, and then the "jump" to the target segment
- Links to a segment in the same .XML file uses the character "#", and the name of the target segment (e.g: src="#seg_poweroff")
- Links to a segment in another .XML file uses the xmb://localhost/ function with the path of the target file, the character "#", and the name of the target segment (e.g: src="xmb://localhost/dev_flash/vsh/resource/explore/xmb/category_user.xml#seg_poweroff"), or alternativelly the short path form replacing "dev_flash/vsh/resource/explore/" by "%flash/" (e.g: src="xmb://localhost/%flash/xmb/category_user.xml#seg_poweroff")
- Is posible to load the "root" view IDs of other file (e.g: src="xmb://localhost/%flash/xmb/category_user.xml#root")
- Segments are loaded by some query classes (inside <items> tables) by making his "src" to point to the target segment. When the segment is in the same .XML file it works simply by "jumping" to another line of the same file. When the segment is in another .XML file first is needed to locate the target .XML file, and then the "jump" to the target segment
Items (Query classes, and Item classes)[edit | edit source]
The contents of this sub group dictates what exists on the XMB when this entry is used. There can be more than one.
When creating a XMB entry, you must tell vsh.self and its modules what you want to do. And the first part of a <Items> sub-entry does just this by telling the PS3 the "class" of the entry in the form of either "<Item class=""" or "<Query class=""" (in the case of "<Query class=""" can be used several times under the same <items> to perform group of actions). There are many acceptable values possible, here are some examples:
Query classes x-xmb | <key> | <attr> | <src> | Remarks |
---|---|---|---|---|
<Query class="type:x-xmb/category" | Yes | Yes | Yes | Main/Root XMB |
<Query class="type:x-xmb/folder-pixmap" | Yes | Yes | Yes | Has many uses see here |
<Query class="type:x-xmb/xmlmcutility" | Yes | Yes | Yes | PS1 and PS2 virtual memory card utility |
<Query class="type:x-xmb/xmlnpsignup" | Yes | Yes | No | |
<Query class="type:x-xmb/xmlpackagefolder" | Yes | Yes | Yes | Used for installing package files |
<Query class="type:x-xmb/xmlpsp2appdata" | Yes | Yes | No | PSVita application utility |
<Query class="type:x-xmb/xmlsavedata-plus" | Yes | Yes | No | Online storage |
<Query class="type:x-xmb/xmlsavedata-ps2" | Yes | Yes | No | Savedata utility PS2 |
<Query class="type:x-xmb/xmlsavedata-ps3" | Yes | Yes | No | Savedata utility PS3 |
<Query class="type:x-xmb/xmlsavedata-psp" | Yes | Yes | No | Savedata utility PSP |
Query classes x-xcb | <key> | <attr> | <src> | Remarks |
<Query class="type:x-xcb/game-debug" | Yes | Yes | No | /app_home/PS3_GAME/ link |
<Query class="type:x-xcb/savedata-ps3" | Yes | Yes | No | PS3 new savedata |
<Query class="type:x-xcb/savedata-psp" | Yes | Yes | No | PSP new savedata |
Item classes x-xmb | <key> | <attr> | <src> | Remarks |
<Item class="type:x-xmb/module-action" | Yes | Yes | No | Uses a particular module to support the XMB item. See XMBML module-action page |
<Item class="type:x-xmb/vmc-new" | Yes | Yes | No | |
<Item class="type:x-xmb/xmlbddatamgmt" | Yes | Yes | No | |
<Item class="type:x-xmb/xmleditingvideo" | Yes | Yes | No | |
<Item class="type:x-xmb/xmlflashplayer" | Yes | Yes | No | |
<Item class="type:x-xmb/xmlgameexit" | Yes | No | No | |
<Item class="type:x-xmb/xmlhakoniwa" | Yes | Yes | No | |
<Item class="type:x-xmb/xmliboard" | Yes | Yes | No | Widgets control (class not used over firmware 3.00) |
<Item class="type:x-xmb/xmlmessagelist" | Yes | Yes | No | |
<Item class="type:x-xmb/xmlnowplaying" | Yes | Yes | No | |
<Item class="type:x-xmb/xmlnpsignup" | Yes | Yes | No | |
<Item class="type:x-xmb/xmlplaylist" | Yes | Yes | No | |
<Item class="type:x-xmb/xmlplus" | Yes | No | No | |
<Item class="type:x-xmb/xmlpoweroff" | Yes | No | No | |
<Item class="type:x-xmb/xmlpremo" | Yes | No | No | |
<Item class="type:x-xmb/xmlpsp2appdata-cont" | Yes | Yes | No | PSVita Applications (PSVita, PSP, PS1, PSMobile) |
<Item class="type:x-xmb/xmlscreenshot" | Yes | No | No | |
<Item class="type:x-xmb/xmlsysconf" | Yes | Yes | No | |
<Item class="type:x-xmb/xmltrophy" | Yes | Yes | No | |
<Item class="type:x-xmb/xmlwebbrowser" | Yes | Yes | No | |
<Item class="type:x-xmb/xmlwelcome" | Yes | Yes | No | |
Item classes x-chat | <key> | <attr> | <src> | Remarks |
<Item class="type:x-chat/xmlchatroom-manager" | Yes | Yes | No |
Unknown classes | <key> | <attr> | <src> | Remarks |
---|---|---|---|---|
x-xcb/achbase | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/achievtitle | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/achievgroup | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/achievflag | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/friendachievtitle | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/friendachievgroup | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/friendachievflag | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/blockedplayer | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/directory | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/directory-bddata | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/directory-generic | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/directory-photo | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/directory-music | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/directory-video | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/unknown | ? | ? | ? | found inside explore_category_game.sprx |
x-xcb/message | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/person | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/playedplayer | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/psv | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/savedata-ps1 | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/savedata-ps2 | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/savedata-ps3delegate | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/savedata-plus | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/savedata-pspdir | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/segment | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storage-media | ? | ? | ? | found inside explore_category_game.sprx |
x-xcb/storagemedia-cdda | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-sacd | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-psmc | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-psv | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-sdps3 | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-sdpsp | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-sdpsp2 | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-dlna | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-avchd | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-bdc | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-generic | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/storagemedia-videodisc | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/game-disc | ? | ? | ? | found inside explore_category_game.sprx |
x-xcb/game | ? | ? | ? | found inside explore_category_game.sprx |
x-xcb/game-list | ? | ? | ? | found inside explore_category_game.sprx |
x-xcb/content-disc | ? | ? | ? | found inside explore_category_game.sprx |
x-xcb/music | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/music-list | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/photo | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/photo-list | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/query-condition | ? | ? | ? | found inside explore_category_game.sprx |
x-xcb/video | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/video-content | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/video-list | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/video-file | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/video-disctitle | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/vmc | ? | ? | ? | found inside explore_plugin.sprx |
x-xcb/vmc-new | ? | ? | ? | found inside explore_plugin.sprx |
x-xmb/xmlchannel | ? | ? | ? | found inside explore_plugin.sprx |
x-xmb/xmlpsp2appdata-cont | ? | ? | ? | found inside explore_plugin.sprx |
x-xmb/xmlscenefolder | ? | ? | ? | found inside explore_plugin.sprx |
x-xmb/xmlvideodownloader | ? | ? | ? | found inside explore_plugin.sprx |
x-xmb/unknown | ? | ? | ? | found inside explore_category_game.sprx |
x-xil/xilitem | ? | ? | ? | found inside explore_category_game.sprx |
x-ese/task | ? | ? | ? | found inside explore_category_game.sprx |
x-ese/dlctl | ? | ? | ? | found inside explore_plugin.sprx |
x-sel/registory-accessor | ? | ? | ? | found inside explore_category_game.sprx |
x-user/user | ? | ? | ? | found inside explore_plugin.sprx |
x-host/unknown | ? | ? | ? | found inside explore_plugin.sprx |
x-host/mount-info | ? | ? | ? | found inside explore_plugin.sprx |
x-host/directory | ? | ? | ? | found inside explore_plugin.sprx |
x-host/file | ? | ? | ? | found inside explore_plugin.sprx |
x-host/package | ? | ? | ? | found inside explore_plugin.sprx |
x-host/theme-content | ? | ? | ? | found inside explore_plugin.sprx |
x-host/ps2_newsavedata | ? | ? | ? | found inside explore_plugin.sprx |
x-chat/room | ? | ? | ? | found inside explore_plugin.sprx |
x-chat/player | ? | ? | ? | found inside explore_plugin.sprx |
x-chat/xmlchatroom-manager | ? | ? | ? | found inside explore_plugin.sprx |
- <key>
- Used to identify the sub-entry inside <Items> tables (usually the same value as <attr> and the <Table key> associated if present)
- Example: key="my_icon"
- <attr>
- Used to link <Items> to a table of attributes with the same name <Table key> inside <Attributes>
- Example: attr="my_icon_metadata"
- <src>
- Used to link to other xml files or utilise a XMB database functions (see XMB database)
- Refer to another XMB entry inside the current xml file. Example: src="#seg_package_files"
- Refer to another XMB entry inside another xml file. Example: src="xmb://localhost/dev_flash/vsh/resource/explore/xmb/category_game_tool2.xml#seg_package_files"
- Use a XMB database function. Example: src="xcb://localhost/query?table=MMS_MEDIA_TYPE_SYSTEM&genre=Music&sort=+StorageMedia:Common.titleForSort&cond=Ae+StorageMedia:StorageMedia.type %xCB_MEDIA_TYPE_DLNA"
Attributes (Pairs)[edit | edit source]
This provides additional information about <Items> sub-entries by linking them to a table with attributes associated (is optionall, not all <Items> requires attributes), this tables uses a <Table key> matching the <attr> sub-entry asociated and contains one or more attributes separated in lines starting with <Pair key>.
<Attributes> | <Items> | Examples | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
<Table | <Query class="type: | <Item class="type: | |||||||||||||||||||||||||||
<Pair key= | x-xmb/ | x-xcb/ | x-xmb/ | x-chat/ | |||||||||||||||||||||||||
folder pixmap |
mc utility |
np signup |
pkg folder |
vita apps |
save plus |
save ps2 |
save ps3 |
save psp |
game debug |
save ps3 |
save psp |
module action |
vmc new |
bddata mgmt |
edit video |
hako niwa |
info board |
msg list |
now playing |
np signup |
play list |
vita apps |
sys conf |
trophy | browser | welcome | chat room | ||
action | Yes | Yes | ? | ? | ? | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "exec_game", etc... (see table below) |
bar_action | No | ? | ? | No | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | Yes | ? | ? | ? | ? | "none", "hide", "game_pspemu_viewmode", "game_pspemu_3d", "game_psemu_upcon", "game_psemu_smooth", "pad_assign", "pad_vibration", "bt_device_utility", "audio_setting", "voice_changer", "net_netlist" |
connection | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "xcb://localhost/query?..." |
cf_connection | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "xcb://localhost/query?..." |
ch_pos | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "1" |
child | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "segment", "grid", "Video" |
content_id | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | "IP9100-NPIA00002_00-0000111122223333" |
content_info_pict | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "/dev_flash/vsh/resource/explore/icon/pstex01.png" |
content_info_pict_sd | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "/dev_flash/vsh/resource/explore/icon/pstex-sd.png" |
content_info_tex | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "msg_ps3_portal" |
content_info_title | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "msg_psstore_explanation_hd" |
content_info_title_sd | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "msg_psstore_explanation_sd" |
content_name | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | "msg_title_lwp", "msg_information_board" |
content_type | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | "game", "video", "tv" |
custom_priority | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "game=-80", "video=-80", "tv=-80" |
data_connection | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | "xcb://localhost/query?..." |
device_path | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "/dev_hdd0" |
fo_lbl_alpha | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "0" - float number |
fo_lbl2_alpha | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "0" - float number |
focus | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | "last" |
focus_detect | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "enable" |
focus_priority | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "-5", "-4", "-3", "-2", "-1", "0", "1", "2", "3", "4", "5", "6". "-50", "-49", "-48", "-47", "-46". "-80" |
fs_path | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "/dev_hdd0/widget/npdrm/informationboard" |
genre | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "BdData" |
icon | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "/dev_hdd0/myicon.png" |
icon_fixed_height | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "181" |
icon_fixed_width | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "181" |
icon_notation | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | Yes | ? | Yes | "WNT_XmbItemAlbum", etc... (see table below) |
icon_rsc | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | Yes | Yes | ? | ? | ? | ? | Yes | Yes | ? | Yes | "tex_album_icon" |
id | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? |
info | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | Yes | ? | Yes | ? | ? | ? | ? | ? | ? | ? | "This is a cool plain text info string" |
info_rsc | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "item_tex_cam_icon" |
ingame | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "enable", "disable" |
instruction_rsc | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | "msg_lwp_explanation" |
item_type | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "systop" |
lbl_half | No | ? | ? | No | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "1" |
logical_sceme | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "Music", "Photo", "Video" |
mass_connection | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "xcb://localhost/query?..." |
mode | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | "common", "mgmt", "playlistmgmt", "playlistmgmtpsp", "playlistempty" |
module_action | No | ? | ? | No | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "NotifyErrorNoExecute", "http://m.facebook.com", 0, 1 |
module_name | No | ? | ? | No | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "explore_plugin", "webbrowser_plugin" |
ms_connection | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "xcb://localhost/query?..." |
name | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "Flash Player[test.swf]" |
path | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | "flash0/vsh/resource/flash/test.swf" |
pkg_src | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | "http://dL-REGION01.ps3.download.playstation.net/.../lwp.pkg" |
pkg_src_qa | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? |
prod_pic_path | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | "/dev_flash/vsh/resource/explore/icon/fah-xmb.png" |
sd_connection | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "xcb://localhost/query?..." |
start_factory_play | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "disable" |
str_noitem | Yes | ? | ? | No | ? | ? | ? | ? | ? | ? | ? | ? | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "msg_error_no_file", any message text from explore_plugin rco works |
title | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | "Debug Settings" |
title_fo | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "1" |
title_rsc | Yes | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | Yes | ? | ? | ? | Yes | ? | Yes | Yes | ? | Yes | "msg_tool_app_home_ps3_game" |
type | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | "photo", "music", "video" |
vmc | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | "promote" |
- Official are marked as "Yes"
- Unnofficial and working are marked as "Opt"
- Unnofficial and not working are marked as "No"
action.
action | usage |
---|---|
exec_game | ps3 gamedata |
exec_vmcsavedata | ps1/ps2 savedata |
exec_ps3savedata | ps3 savedata |
exec_pspsavedata | psp savedata |
exec_psp2appdata | psvita utility |
exec_sdps2 | ps2 savedata |
child. Tells the PS3 what action should be taken when the XMB item is selected.
focus_detect. Tells the PS3 to focus on the item if it is activated/used(like inserting a PS3 game disc). Of course the vsh.self has the final say on whether it is used (turning off auto boot)
focus_priority. Tells the PS3 the order in which the XMB items are loaded. This is used more by XMB items on the root of the XMB.
icon. Displays a .png image from an absolute path as XMB icon. Cannot be used at the same time as 'icon_rsc'
icon_notation. Tells the XMB how to display the icon layout (transparency etc). Can in some cases override 'icon' or 'icon_rsc'
icon_notation | Use | Notes |
---|---|---|
WNT_XmbItemAlbum | overrides 'icon_rsc' | |
WNT_XmbItemBrowser | overrides 'icon_rsc' | |
WNT_XmbItemChat | ||
WNT_XmbItemChatRoomText | ||
WNT_XmbItemFriendAccountManagement | ||
WNT_XmbItemFriendAdd | ||
WNT_XmbItemFriendBlock | ||
WNT_XmbItemFriendMessageBox | ||
WNT_XmbItemFriendMessageBoxReceived | ||
WNT_XmbItemFriendMessageBoxSent | ||
WNT_XmbItemFriendMessageCreate | ||
WNT_XmbItemFriendPlayer | ||
WNT_XmbItemInetSearch | ||
WNT_XmbItemMediaServerSearch | ||
WNT_XmbItemOnlineManual | ||
WNT_XmbItemPRemo | ||
WNT_XmbItemPlaylist | overrides 'icon_rsc' | |
WNT_XmbItemPlaylistAdd | ||
WNT_XmbItemPowerOff | ||
WNT_XmbItemSavePS12 | ||
WNT_XmbItemSavePS3 | ||
WNT_XmbItemSavedataMinis | ||
WNT_XmbItemTrophy | ||
WNT_XmbItemUser | ||
WNT_XmbItemVideoNew | ||
WNT_XmbListMusic | overrides 'icon_rsc' | |
WNT_XmbListPhoto | overrides 'icon_rsc' | |
WNT_XmbListVideo | overrides 'icon_rsc' |
icon_rsc. Displays an image from a .rco as XMB icon. Cannot be used at the same time as 'icon'
info. Displays XMB title information from plain text input. This is shown below the 'title' or 'title_rsc' entry in a smaller font
info_rsc. Displays XMB title information from relevant .rco. This is shown below the 'title' or 'title_rsc' entry in a smaller font
ingame Use: tells the PS3 if the item can be accessed ingame
mode.
mode | usage |
---|---|
common | |
mgmt | |
playlistmgmt | |
playlistmgmtpsp | |
playlistempty |
module_action. Is the commanded to be used by the module
module_name Use: the name of the module to be used from the XMBML module-action list
str_noitem. Displays information from relevant .rco when no data/XMB items are found
title. Displays XMB main title from plain text input. Cannot be used at the same time as 'title_rsc'
title_rsc. Displays XMB main title text referred from relevant .rco. Cannot be used at the same time as 'title'
Loading resource files from the associated .rco[edit | edit source]
The attributes with names containing rsc (resource), str (string), or msg (message), as icon_rsc, title_rsc, info_rsc, and instruction_rsc can load images or texts from the .rco associated with the XMB column (the variants of explore_category_****.rco, and explore_plugin_full.rco that is common for all XMB categories, also some others that are specific for a category as gamelib_plugin.rco or gamedata_plugin.rco)
reference_type | pointer | Method | Loader | Loads | From | Example (XML) | Notes |
---|---|---|---|---|---|---|---|
0xFFFF0000 | 0xFFFFFFFF | n/a | All | Nothing | None | <Entry reference="nothing"/> |
|
0x04000000 | relative | event: | RCOXML Objects RCOXML Animations |
Code function | Associated .SPRX | <Entry event="event:native:/runFuctionX"/> |
|
ScriptTree/Script | File inside RCO | <Entry event="event:script:/main/runFuctionX"/> |
|||||
0x04010000 | # (0-based) | text: | RCOXML Objects XMBML Code |
TextTree/Text | Strings inside RCO | <Entry text="text:msg_mytext"/> |
|
0x04020000 | absolute | image: | RCOXML Objects XMBML Code |
ImageTree/Image | File inside RCO | <Entry image="image:tex_mytexture"/> |
|
0x04030000 | absolute | model: | RCOXML Objects | ModelTree/Model | File inside RCO | <Entry model="model:mymodel"/> |
|
0x04040000 | absolute ? | sound: ? | associated .SPRX | SoundTree/Sound | File inside RCO | <Entry sound="sound:mysound"/> ? |
speculation |
0x04050000 | absolute | font: | RCOXML Objects | FontTree/Font | File inside RCO ? | <Entry font="font:fontstyle_sanserif"/> |
|
0x04060000 | absolute ? | anim2: ? | RCOXML Objects ? | AnimTree/Animation ? | RCOXML code ? | <Entry anim2="anim2:myanimation"/> ? |
speculation |
0x04070000 | absolute | object2: | RCOXML Objects | ObjectTree/Object | RCOXML code | <Entry object2="object2:plane_myplane"/> |
|
0x04080000 | absolute | anim: | RCOXML Animations | AnimTree/Animation | RCOXML code | <Entry anim="anim:myanimation"/> |
|
0x04090000 | absolute | object: | RCOXML Animations | ObjectTree/Object | RCOXML code | <Entry object="object:plane_myplane"/> |
- A reference attribute is composed by two values, the first is the reference_type that indicates the "tree" of the entry that is going to be loaded, and the second is a pointer to a text string with the label of the entry that is going to be loaded
- The reference_type event doesnt loads an entry from a "tree" though, it runs a code function from either a .sprx (by storing the text native:/ as part of the text string inside the RCO) or from a VSMX script (by storing the text script:/ as part of the text string inside the RCO)
- First two bytes are swapped based on architecture (PSP in little endian, PS3 in big endian). The table shows the values in big endian
|