Editing XMB

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

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

Latest revision Your text
Line 41: Line 41:


{{XMB brightness}}
{{XMB brightness}}
XMB can be configured to display the texts in several languages, this same language codes are used in contents that contains several languages availabes (like games, trophy installers, themes, etc...). The font can be configured to "original", "rounded", and "pop", see [[XMB Fonts]] page
{{XMB languages}}
=XMB Layout Tables=
This files contains a list of numeric values that defines the positions, sizes, etc... of most/all the items displayed in XMB
The files/filenames are divided in 4 resolution modes, most specifically his heigths: (272, 480, 720, and 1080), and 2 types: (factor, and grid).
Factor ones continas around 143 values, and Grid ones contains around 4545 values (grid ones are much bigger)
As a reference for known pixel sizes... all the values of the [[Content Information Files]] images appears in one or more of the "XMB Layout Tables"
{| class="wikitable"
|-
! Path !! Filename !! Usage (very speculative) !! width*heigth (lines 4 and 5) !! Notes
|-
| rowspan=4 | dev_flash/vsh/etc/
| layout_factor_table_272.txt<BR />layout_grid_table_272.txt || PSVita [[Remote Play]] ? || 854x480 || PSVita remoteplay as 852x480 due to 2 (bottom) lines being reserved because of scaler (Vita framebuffer size is 80 x 272, 640 x 368, 720 x 408, or 960 x 544) and [http://en.wikipedia.org/wiki/Bilinear_filtering bilinear filltering]
|-
| layout_factor_table_480.txt<BR />layout_grid_table_480.txt || [http://en.wikipedia.org/wiki/NTSC NTSC], and [http://en.wikipedia.org/wiki/PAL PAL] TV's || 640x480 || 4/3 aspect ratio
|-
| layout_factor_table_720.txt<BR />layout_grid_table_720.txt || [http://en.wikipedia.org/wiki/720p HD] TV's || 1280x720 || 16/9 aspect ratio
|-
| layout_factor_table_1080.txt<BR />layout_grid_table_1080.txt || [http://en.wikipedia.org/wiki/1080p Full HD] TV's || 1920x1080 || 16/9 aspect ratio
|}
Aspect ratio/active array size?:
At the end of '''layout_factor_table_272.txt''' (and others factor tables):
725.9 <--- width active array?
408 <--- height active array?
... 725.9/408 = 1.7791666666666666666666666666667 aspect ratio
... in last 2 lines of layout_factor_table_1080.txt... 1728/972= 1,7777777777777777777777777777778 (exactly proportional to 16/9)
In case of an standard image usually appears the width and the heigth in 2 consecutive lines, e.g:
In line 77 of: '''layout_factor_table_1080.txt'''
486
405
320
176
...320x176 is the size of ICON0.PNG and ICON1.PAM
...486x405 is the size of ICON2.PNG and ICON3.SWF (used in PS3_EXTRA disc structure)
...Is the only place inside this "layout tables" files where appears a 320 and in the next line a 176 consecutivelly
Some of the images are defined with 4 values, where the last one (unk2) is negative (width, heigth, unk1, unk2), e.g:
In line 2210 of '''layout_grid_table_1080.txt'''
1000
560
290
-157
310
250
115
-69
... 1000x560 is the size of PIC0.PNG... the value 290 (unk1) and -157 (unk2) seems to be associated with this image
... 310x250 is the size of PIC2.PNG... the value 115 (unk1) and -69 (unk2) seems to be associated with this image
Others values are decimal (scalation factors?), e.g:
The first 8 lines of '''layout_factor_table_720.txt'''
1
0
0
1280  <--- width
720    <--- heigth
0.6667 <--- scalation factor ?
0.6667 <--- scalation factor ?
0.6923 <--- scalation factor ?
*Notes:
**Some of the items in XMB are defined by a central point (not by an square composed by width and heigth where the image must fit)... like the main category icons of the XMB that uses a central point to scalate the icon proportionally in all directions when the cursor is focused on his column. Actually this icons are originally 128x128 pixels, but when displayed in XMB are reduced to half his size (64x64 or so), and when focused are displayed a bit bigger (100x100 or so)
**The most easy values to recognize are the resolution of the screen, always at top of the list (in the first lines)
**Sizes and positions of main XMB category icons should be at top of the lists because are something generic and the rest of XMB items is built around them
**When making tests with this files keep in mind the safest ones are the modes your TV doesnt uses by default and/or remoteplay layouts because after a reboot the PS3 doesnt loads them (only loaded when enabling remote play from XMB, not at boot time)... also keep in mind that the other layouts should be common with the "recovery menu" and "service mode" display modes... and you can change your TV resolution in the options in XMB settings column, then return to default resolution with a button combo at boot time


=Virtual Shell (VSH)=
=Virtual Shell (VSH)=
Line 56: Line 130:
  explore_category_user.sprx
  explore_category_user.sprx
  explore_category_video.sprx
  explore_category_video.sprx
  explore_plugin.sprx
  explore_plugin.sprx
  explore_plugin_ft.sprx
  explore_plugin_ft.sprx
  explore_plugin_game.sprx
  explore_plugin_game.sprx
  explore_plugin_np.sprx
  explore_plugin_np.sprx
== VSH Modules ==
All the .sprx files inside '''/dev_flash/vsh/module/'''. See: [[Plugin Interfaces]] page
Those modules are responsible for processing the XMB descriptor files (.XML format) used to generate the XMB interface. All of the above modules except for "'''explore_plugin_game.sprx'''" and "'''explore_plugin_np.sprx'''" contains a full list and location of XMB configuration files and the "root" entry which is to be loaded for the root of the category for each firmware type (CEX/CEX-Shop/DEX/ARC/TOOL).
Those modules are responsible for processing the XMB descriptor files (.XML format) used to generate the XMB interface. All of the above modules except for "'''explore_plugin_game.sprx'''" and "'''explore_plugin_np.sprx'''" contains a full list and location of XMB configuration files and the "root" entry which is to be loaded for the root of the category for each firmware type (CEX/CEX-Shop/DEX/ARC/TOOL).


It's important to note that '''explore_plugin.sprx''' is capable of managing most of the XMB categories, and thus, not all of these modules might be in use at any time. The '''explore_plugin.sprx''' is actually available to '''vsh.self''' and other modules through the '''xmb_plugin.sprx''' and '''xmb_ingame.sprx''' See [[XMBML module-action]]
It's important to note that '''explore_plugin.sprx''' is capable of managing most of the XMB categories, and thus, not all of these modules might be in use at any time. The '''explore_plugin.sprx''' is actually available to '''vsh.self''' and other modules through the '''xmb_plugin.sprx''' and '''xmb_ingame.sprx''' See [[XMBML module-action]]


== Modules Resources ==
=RCOXML Configuration Files=
All the .rco files inside '''/dev_flash/vsh/resource/'''. See: [[Resource Container (RCO)]] page
These are XML files which defines the visual structure of XMB, are inside all [[Resource Container (RCO)]] files wich are loaded by the associated [[Plugin Interfaces]]. For more info about this files see: [[RCOXML Structure]] page
 
=== RCOXML Configuration Files===
These are XML files which defines the visual structure of XMB, are embedded inside all .rco files. See: [[RCOXML Coding]] page


There are 2 modes used by XMB: "XMB Main" and "XMB In-game", and other modes that replaces XMB like the "Coldboot", "Gameboot", or "Impose"
There are 2 modes used by XMB: "XMB Main" and "XMB In-game", and other modes that replaces XMB like the "Coldboot", "Gameboot", or "Impose"


====XMB Main ([[xmb plugin]])====
==XMB Main ([[xmb plugin]])==
The XrossMediaBar after the coldboot, with full functions of all the items/icons displayed
The XrossMediaBar after the coldboot, with full functions of all the items/icons displayed


*Managed by: xmb_plugin.sprx / xmb_plugin_normal.rco
*Managed by: xmb_plugin.sprx / xmb_plugin_normal.rco


====XMB In-Game ([[xmb ingame]])====
==XMB In-Game ([[xmb ingame]])==
Introduced in firmware 2.40, available inside games by a '''short''' press of {{padps}} button
Introduced in firmware 2.40, available inside games by a '''short''' press of {{padps}} button


Line 91: Line 157:
*Managed by: xmb_ingame.sprx / xmb_ingame.rco
*Managed by: xmb_ingame.sprx / xmb_ingame.rco


*Note XMB In-Game is inneficient in concept, because displays items that are dummies not needed and cant be used, in some games the loading of XMB In-Game is laggy (specially the loading of savegames and trophies submenues)
*Note XMB In-Game is inneficient in concept, because displays items that are dummies not needed and cant be used, in some games the loading of XMB In-Game is laggy (specially the loading of savegames and trophies sumenues)


*http://www.blogcdn.com/www.engadget.com/media/2008/06/ps3-ingame-xmb-2.40-clock.jpg
*http://www.blogcdn.com/www.engadget.com/media/2008/06/ps3-ingame-xmb-2.40-clock.jpg
*http://www.viddler.com/simple/1ffb1ce3/
*http://www.viddler.com/simple/1ffb1ce3/


====Impose Menu ([[impose plugin]])====
==Impose ([[impose plugin]])==
Available in "Main XMB" and inside games by a '''short''' press (under 2.40 firmware) or '''long''' press (over 2.40 firmware) of {{padps}} button
Available in "Main XMB", and inside games, appears/hides by a '''short''' press (under 2.40 firmware) or '''long''' press (over 2.40 firmware) of {{padps}} button


Allows to asign controllers to players, view battery levels of controllers, quit game, etc... http://www.blogcdn.com/www.joystiq.com/media/2008/01/ps3-in-game-menu.jpg
Allows to asign controllers to players, view battery levels of controllers, quit game, etc... http://www.blogcdn.com/www.joystiq.com/media/2008/01/ps3-in-game-menu.jpg
Line 103: Line 169:
*Managed by: impose_plugin.sprx / impose_plugin.rco
*Managed by: impose_plugin.sprx / impose_plugin.rco


====ColdBoot ([[custom render plugin]])====
==ColdBoot ([[custom render plugin]])==
The old animation when PS3 boots (from 1.00 up to 2.60 firmware)
The animation when PS3 boots


*Managed by: custom_render_plugin.sprx / custom_render_plugin.rco
*Managed by: custom_render_plugin.sprx / custom_render_plugin.rco


====ColdBoot2 ([[custom render plugin]])====
==GameBoot ([[custom render plugin]])==
The new animation when PS3 boots (from 2.70 up to {{latestPS3}} firmware) , associated with [[coldboot.raf]]
The animation when a game boots


*Managed by: custom_render_plugin.sprx / custom_render_plugin.rco
*Managed by: custom_render_plugin.sprx / custom_render_plugin.rco


====GameBoot ([[custom render plugin]])====
=XMBML Configuration Files=
The animation when a game boots
These are XML files which outlines the logic of XMB categories. All of the XMBML files are included in all firmwares for all PS3 models, and are located in path: '''/dev_flash/vsh/resource/explore/xmb/'''


*Managed by: custom_render_plugin.sprx / custom_render_plugin.rco
For more information about the structure of this files see: [[XMBML Structure]], [[XMBML Functions]] and [[XMBML Coding Examples]] pages.


====OtherBoot ([[custom render plugin]])====
*Notes:
Unknown, seems associated with OtherOS
**VSH heavily regulates the Setting Category and the .XML file is only used by when accessing the XMB "in-game", even then it restricts what parts of the .XML are actually shown. It is not possible to modify the Settings Category to any effect by editing the .XML configuration file
 
*Managed by: custom_render_plugin.sprx / custom_render_plugin.rco


===Languages===
{{PS3 XMBML Configuration Files}}
Language files are stored inside [[Resource Container (RCO)]] files, are loaded based on a user setting stored in [[XRegistry.sys]]


XMB can be configured to display the texts in several languages, and every language uses a language code internally to identify it, this same language codes are used in contents that contains several languages availabes (like games, trophy installers, themes, etc...).
== Pre Logins ==
*'''category_user_login.xml'''
**Used for the 'Log In' XMB Category, which only shows when no user is logged in a offline account.
**Found in all "explore_*.sprx" modules, except: "explore_plugin_game.sprx" and "explore_plugin_np.sprx"


See: [[Languages]] page
*'''category_friend.xml''' with view id '''root_hide_friend'''
{{PlayStation Languages}}
**Used when not loged in a online account (PSN)


==Fonts==
== Target ID related ==
All the .ttf files in '''dev_flash/data/font/ '''
*'''category_user.xml, category_sysconf.xml, category_photo.xml, category_music.xml, category_video.xml, category_tv.xml, category_game.xml, category_network.xml, category_psn.xml, category_friend.xml''' using the view id '''root'''
**Used by CEX Target ID (retail PS3 models) and as the defaults used by other PS3 models that doesnt have an specific .xml or view id


The fonts are loaded by the rcoxml files (rcoxml files contains font definitions like color, sizes, type, etc...) and based on a user setting stored in [[XRegistry.sys]]
== XMB Database Filters ==
These are XMBML Configuration Files which are used in the 'behind the scenes' of running the XMB.


Font can be configured in XMB -> settings -> Theme to "original", "rounded", and "pop". See: [[XMB Fonts]] page
*'''registory.xml'''
**Used for the organisation of User Data which is accessible from the XMB


==XMBML Configuration Files==
*'''upload_list.xml'''
Are the configuration files for the modules responsibles of the contents in the 10 XMB categories, loaded individually by the associated '''dev_flash/vsh/module/explore_category_*.sprx''' module
**Photo/Music/Video Locations for Upload


All the XMBML configuration files are included in all firmwares for all PS3 models, and are located in path: '''/dev_flash/vsh/resource/explore/xmb/'''
*'''download_list.xml'''
**Used for the Download of Photos/Music/Video to various external and internal locations.
**Directly Dependent Modules: data_copy_plugin.sprx, download_plugin.sprx, friendim_plugin.sprx, photolist_plugin.sprx, playlist_plugin.sprx, scenefolder_plugin.sprx, sysconf_plugin.sprx, videodownloader_plugin.sprx, webbrowser_plugin.sprx, webrender_plugin.sprx


For more information about the structure of this files see: [[XMBML Files]], [[XMBML Coding]], [[XMBML Functions]] and [[XMBML Coding Examples]]
*'''playlist.xml'''
**Used for creating Playlists
**Directly Dependent Modules: filecopy_plugin.sprx, playlist_plugin.sprx


<div style="height:525px; width:1300px; margin:auto; overflow:auto">{{PS3 XMBML Configuration Files}}</div>
*'''videodownloader_list.xml'''
**Used for downloading videos, to both 'secure' and 'not secure' locations. USB Mass Storage devices are not included in either.
**Directly Dependent Modules: videodownloader_plugin.sprx


== XMB Layouts ==
*'''savedata_list.xml'''
This files contains a list of numeric values that defines the positions, sizes, etc of most/all the items displayed in XMB. They're divided into 4 resolution modes, most specifically by these heights: (272, 480, 720, and 1080), and 2 types: (factor, and grid).
**Outlines the XMB entries for creating new saves, for both PSP and PS3 games.
**Directly Dependent Modules: ps3_savedata_plugin.sprx, ps3_savedata_plugin_game.sprx, ps3_savedata_plugin_psp.sprx


For more info about this files see: [[XMB Layouts]] page.
== Others ==
*'''null.xml'''
**Fallback/Dummy/Testing Purposes
**Found in all "explore_*.sprx" modules


{{XMB Layout Tables}}
*'''category_widget.xml'''
**RSS Related


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

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

Cancel Editing help (opens in new window)