XMB: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
Line 58: Line 58:
! Path !! Filename !! Usage (very speculative) !! width*heigth (lines 4 and 5) !! Notes
! Path !! Filename !! Usage (very speculative) !! width*heigth (lines 4 and 5) !! Notes
|-
|-
| rowspan=8 | dev_flash/vsh/etc/
| rowspan=4 | dev_flash/vsh/etc/
| layout_factor_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_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 || PAL and NTSC TV's ? || 640x480 || 4/3 aspect ratio
| layout_factor_table_480.txt<BR />layout_grid_table_480.txt || PAL and NTSC TV's || 640x480 || 4/3 aspect ratio
|-
|-
| layout_factor_table_720.txt || ? || 1280x720 || 16/9 aspect ratio
| layout_factor_table_720.txt<BR />layout_grid_table_720.txt || [http://en.wikipedia.org/wiki/720p 720p] HD TV's || 1280x720 || 16/9 aspect ratio
|-
|-
| layout_factor_table_1080.txt || HD TV's ? || 1920x1080 || 16/9 aspect ratio
| layout_factor_table_1080.txt<BR />layout_grid_table_1080.txt || [http://en.wikipedia.org/wiki/1080 1080p] Full HD TV's || 1920x1080 || 16/9 aspect ratio
|-
| layout_grid_table_272.txt || PSVita [[Remote Play]] ? || 854x480 || PSVita remoteplay
|-
| layout_grid_table_480.txt || PAL and NTSC TV's ? || 640x480 || 4/3 aspect ratio
|-
| layout_grid_table_720.txt || ? || 1280x720 || 16/9 aspect ratio
|-
| layout_grid_table_1080.txt || HD TV's ? || 1920x1080 || 16/9 aspect ratio
|}
|}


Line 122: Line 114:
**The most easy values to recognize are the resolution of the screen, always at top of the list (in the first lines)
**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
**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
**There are no layouts for PAL (720x576) or NTSC (720x480), it seems this resolutions are generated from the files: '''layout_factor_table_720.txt''' and '''layout_grid_table_720.txt''' (1280x720)... some kind of "downscalling" (maybe made at hardware level) to keep retrocompatibility with "old" TV's ?
**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
**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



Revision as of 02:36, 20 May 2014

XMB manuals.playstation.net
Users
Users
Settings
Settings
Photo
Photo
Music
Music
Video
Video
TV/Video Services
TV/Video Services
Game
Game
Network
Network
PlayStation Network
PlayStation Network
Friends
Friends
XMB Classic theme

Description

The Xross Media Bar (or XMB) is the graphical user interface for the PS3

The first Sony product with a XMB interface was the "Sony PSX" in 2003 (A hybrid of a PS2 + DVR player with recorder capabilityes only released in japan, see: PSX sony.co.jp and Wikipedia PSX), later was used by the PSP, then PS3 and some Bravia TV's

The word "Xross" (the "X" itself) is a reference to the alignment of the icons in rows and columns, each column is a category

System Software can be updated from the XMB settings by using an .PUP file

Installable Content (games or apps in .pkg format, and a few PS2 Discs), and contents in PS3 Discs, are "preloaded" by XMB using an small file (see: PARAM.SFO) this file is indexed in a database for efficiency purposes and fast access (see: XMB Database) and contains an identifyer that belongs to an specific XMB column (see: CATEGORY)

The dynamic wave on the background theme are more condensed into a 'ribbon' rather than the PSP's large waves, unselected icons shrink slightly and every selectable background color has been made a shade darker.

The PS3 includes the ability to store various master and secondary user profiles, manage and explore various photos format(.MPO since FW 3.70) with Photo Gallery or an ordinary musical/non-musical slideshow, rip audio CDs, rip iTunes AAC protected files, play and copy music and video files from the hard disk drive, an optional USB mass storage or Flash card, or an optical disc (Blu-ray Disc or DVD-Video).

Web browser, also supported with USB or BlueTooth keyboard, can download multiple file types but with some restrictions. Shortcut for launching website is also possible from TV/VIDEO collumn.

Since FW 4.30, trophies have been moved to the PlayStation Network category, in which Online shopping through the PlayStation Store is possible.

The Friends menu allows email with emoticons and attached picture features and video chat which requires an optional webcam (although the PlayStation Eye and the EyeToy are official webcams, most USB webcams will work).

The PS3 reserves 48 MB of RAM at all times for XMB functions, multi-task in ways such as listening to stored audio files while surfing the web, looking at pictures or playing games.


The XMB by default changes its color depending on the current month of the year and brightness depending on the time of the day (only in original and classic Themes). XMB color can be configured to "default" (changes every month) or one of the 12 color preconfigured for months, in XMB Settings column ---> Theme settings ---> Color

This change of color affects background, waves, all the icons, and other images like the "side menu". The color is applyed to the originall images like a "color filter" layer over them (note originall icons are semitransparent white to improve this effect)

The background images changes acordingly with the month. The file lines.qrc contains 24 textures_month_bg_*.dds images of 64x32 pixels. Each day has 2 different images for "day" and "night". See Qt Resource Container (QRC)

The color filter and brignhness values in this tables are not the exact values, is unknown how this filters are applyed, where are stored, and how works, see Talk:XMB for speculations

XMB colors during the year. Color filter values are orientative
Month All January February March April May June July August September October November December
Color code 0 1 2 3 4 5 6 7 8 9 10 11 12
Day background Varies Textures month bg rgb 01.jpg Textures month bg rgb 02.jpg Textures month bg rgb 03.jpg Textures month bg rgb 04.jpg Textures month bg rgb 05.jpg Textures month bg rgb 06.jpg Textures month bg rgb 07.jpg Textures month bg rgb 08.jpg Textures month bg rgb 09.jpg Textures month bg rgb 10.jpg Textures month bg rgb 11.jpg Textures month bg rgb 12.jpg
Night background Varies Textures month bg night 01.jpg Textures month bg night 02.jpg Textures month bg night 03.jpg Textures month bg night 04.jpg Textures month bg night 05.jpg Textures month bg night 06.jpg Textures month bg night 07.jpg Textures month bg night 08.jpg Textures month bg night 09.jpg Textures month bg night 10.jpg Textures month bg night 11.jpg Textures month bg night 12.jpg
Color filter MonthTime
CBCBCB D8BF1A 6DB217 E17E9A 178816 9A61C8 02CDC7 0C76C0 B444C0 E5A708 875B1E E3412A


XMB brightness during the day. Values are orientative
Time 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Value


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 Template: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"

Path Filename Usage (very speculative) width*heigth (lines 4 and 5) Notes
dev_flash/vsh/etc/ layout_factor_table_272.txt
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 bilinear filltering
layout_factor_table_480.txt
layout_grid_table_480.txt
PAL and NTSC TV's 640x480 4/3 aspect ratio
layout_factor_table_720.txt
layout_grid_table_720.txt
720p HD TV's 1280x720 16/9 aspect ratio
layout_factor_table_1080.txt
layout_grid_table_1080.txt
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

XMB Modes

The different working modes used by XMB

  • Notes: Some games such as Fritz chess got even 3 different XMB In Game: V2 when the game is launched, V1 during autosave feature screen, and a kind of V1.5 after (ICONS barely visible and no background visible)

ColdBoot

The animation when PS3 boots, not exactly a mode but should be considered part of XMB

Main XMB

The XrossMediaBar after the coldboot, with full functions of all the items/icons displayed

GameBoot

The animation when a game boots (practically not notable in newer firmwares), not exactly a mode but should be considered part of XMB

XMB In-Game (old)

Inside games, appears/hides by a short (under 2.40 firmware) or long (over 2.40 firmware) press of Dualshock PS button button

Allows to asign controllers to players, view battery levels of controllers, quit game, etc...

This is the screen that appeared in older firmwares under 2.40. Never was named "XMB In-Game" but is listed here with this name because by now there is not found a reference about it in code, sprx usage, etc.. This differentiation of "XMB In-Game" modes was also named (v1) and (v2) in other places, but this is not an accurate naming

http://www.blogcdn.com/www.joystiq.com/media/2008/01/ps3-in-game-menu.jpg

XMB In-Game

Inside games, appears/hides by a short Dualshock PS button press

Introduced in firmware 2.40, replaces the short Dualshock PS button press (and the old mode was assigned to a long press). Both modes are availables in newer firmwares

Is a reduced version of the XrossMediaBar where most of the icons are "dummies" that triggers a message this kind: "to use this function you need to quit the game and return to Main XMB, want to quit?"

The only items that are really enabled are the ones usefull to use inside games, like savegames view, trophies view, gamedata view, friends, chat, etc...

There are also some items that can appear only in this mode (not in the main XMB)... like screenshots icon in the photo colum (when enabled), or some settings specific for emulators (in settings column, things like resolution, filters, etc...)

  • Managed by: xmb_ingame.sprx
  • 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 (and the loading of trophies list is laggy in most games)

Virtual Shell (VSH)

The Virtual Shell encapsulates the XMB interface. It is loaded at: /dev_flash/vsh/module/vsh.self

And has numerous modules and descriptor files. The VSH does not directly load the XMB interface, it loads support modules to do that instead. The modules directly responsible for the XMB interface are in /dev_flash/vsh/module/ and include:

explore_category_friend.sprx
explore_category_game.sprx
explore_category_music.sprx
explore_category_network.sprx
explore_category_photo.sprx
explore_category_psn.sprx
explore_category_sysconf.sprx
explore_category_tv.sprx
explore_category_user.sprx
explore_category_video.sprx
explore_plugin.sprx
explore_plugin_ft.sprx
explore_plugin_game.sprx
explore_plugin_np.sprx

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 Module Action

XMB Configuration Files

These are .XML files which outline the logic of XMB categories. All of the XMB .XML configuration files are located in path: /dev_flash/vsh/resource/explore/xmb/

For information on the structure of this files, see XMB XML Coding, XMB modding and VSH module-action pages.

Template:PS3 XMB XML Configuration Files

  • The 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
  • This table is not inclusive of other PS3 firmwares, but their root entries are present in all PS3 Firmwares. All PS3 Firmwares (CEX/DEX/CEX-Shop/...) contain the *same* XML configuration files for any given firmware version.
  • In category_friend.xml <View id="root_hide_friend"> is used when not loged in ? (no friends)

Other XMB Configuration Files

These are XMB Configuration Files which are used in the 'behind the scenes' of running the XMB.

Configuration File Directly Dependent Modules Module Use
category_user_login.xml Found in all "explore_*.sprx" modules, except "explore_plugin_game.sprx" and "explore_plugin_np.sprx" XMB Configuration File for the 'Log In' XMB Category, which only shows when no user is logged in.
category_widget.xml - RSS Related
download_list.xml 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 Used For the Download of Photos/Music/Video to various external and internal locations.
null.xml Found in all "explore_*.sprx" modules Dummy File/Testing Purposes?
playlist.xml filecopy_plugin.sprx, playlist_plugin.sprx Creating Playlists
registory.xml - Used for the organisation of User Data which is accessible from the XMB
savedata_list.xml ps3_savedata_plugin.sprx, ps3_savedata_plugin_game.sprx, ps3_savedata_plugin_psp.sprx Outlines the XMB entries for creating new saves, for both PSP and PS3 games.
upload_list.xml - Photo/Music/Video Locations for Upload
videodownloader_list.xml videodownloader_plugin.sprx For downloading videos, to both 'secure' and 'not secure' locations. USB Mass Storage devices are not included in either.

Sony Documentation

http://us.playstation.com/support/manuals/ps3/index.htm