Editing XMB Layouts
Jump to navigation
Jump to search
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 1: | Line 1: | ||
{{wikify}} | {{wikify}} | ||
=Description= | =Description= | ||
This files contains a list of values that | This files contains a list of numeric values that seems to define the positions, sizes, etc of most/all the items displayed in XMB. Are divided in 4 resolution modes by its heigths: (272, 480, 720, 1080), and its types: (factor, and grid). Factor ones contains less values and seems to be derivated from Grid ones (grid ones are much bigger). | ||
Some of the values seems to be related with the [http://manuals.playstation.net/document/en/ps3/current/settings/videooutput.html video resolution/settings] | |||
{{XMB Layout Tables}} | {{XMB Layout Tables}} | ||
*The values at grid lines 8 & 9 are loaded by the object '''ps3logo_back_color''' that belongs to '''page_gameboot''' from inside '''[[gamelib_plugin]].rco'''. Are the '''sizeX''' and '''sizeY''' of a full screen plane recolored to pure black | |||
=Versions= | =Versions= | ||
{{layout_grid_tables}} | |||
{{layout_factor_tables}} | |||
*Hash reports: | *Hash reports: | ||
**All tables combined (220 variants) [https://www.mirrorcreator.com/files/4LMFEPEY/tableHASHreport.7z_links download] | **All tables combined (220 variants) [https://www.mirrorcreator.com/files/4LMFEPEY/tableHASHreport.7z_links download] | ||
Line 14: | Line 16: | ||
**All factor tables combined (63 variants) [https://www.mirrorcreator.com/files/3IMROTWL/tablefactorHASHreport.7z_links download] | **All factor tables combined (63 variants) [https://www.mirrorcreator.com/files/3IMROTWL/tablefactorHASHreport.7z_links download] | ||
== | =Example= | ||
For more detailed info see the changelog of [[Talk:Custom_render_plugin]].rco and [[XMB Layouts]] | |||
*In firmware 4.76 custom_render_plugin.rco contains 3 '''plane objects''' using the standard attributed definitions: | |||
** | **Page object '''page_coldboot''' - is the old/classic coldboot from firmware 1.00 used when the console boots | ||
***'''scelogo''' | ***Plane object '''scelogo''' - is an image of 512x32 pixels size. Uses grid references | ||
**Page object '''page_coldboot2''' - is the new coldboot introduced in firmware 2.70 | |||
** | ***Plane object '''coldboot_ps3logo''' - is a placeholder for the [[coldboot.raf]] animation. Doesnt uses grid references | ||
*** | **Page object '''page_gameboot''' - used when a game boots | ||
** | ***Plane object '''ps3logo''' - is an image of 512x54 pixels size. Uses grid references | ||
***'''ps3logo''' | |||
{{Boxcode|content=<syntaxhighlight lang="xml"> | |||
{{Boxcode| | |||
<RcoFile> | <RcoFile> | ||
<MainTree> | <MainTree> | ||
<ObjectTree> | <ObjectTree> | ||
<Page name="page_coldboot" | <Page name="page_coldboot" pageUnknownInt0="0x1110000" pageOnInit="nothing" pageOnCancel="nothing" pageOnContext="nothing" pageOnActivate="nothing"> | ||
<Plane name="scelogo" | <Plane name="scelogo" standardPosX="0" standardPosY="0" standardPosZ="0" standardRedScale="1" standardGreenScale="1" standardBlueScale="1" standardAlphaScale="1" standardWidth="0" standardHeight="0" standardDepth="0" standardScaleWidth="1" standardScaleHeight="1" standardScaleDepth="1" standardIconOffset="0x0" standardOnInit="nothing" standardUnknown17="0x98020000" standardUnknown18="0x99020000" standardUnknown19="0x0" standardUnknown20="0x9a020100" standardUnknown21="0x9b020100" standardUnknown22="0x100" planeImage="image:tex_scelogo" planeDisplayMode="0x0"></Plane> | ||
</Page> | </Page> | ||
<Page name="page_coldboot2" | <Page name="page_coldboot2" pageUnknownInt0="0x1110000" pageOnInit="nothing" pageOnCancel="nothing" pageOnContext="nothing" pageOnActivate="nothing"> | ||
<Plane name="coldboot_ps3logo" | <Plane name="coldboot_ps3logo" standardPosX="0" standardPosY="0" standardPosZ="0" standardRedScale="1" standardGreenScale="1" standardBlueScale="1" standardAlphaScale="1" standardWidth="0" standardWeight="0" standardDepth="0" standardScaleWidth="1" standardScaleHeight="1" standardScaleDepth="1" standardIconOffset="0x0" standardOnInit="nothing" standardUnknown17="0x0" standardUnknown18="0x0" standardUnknown19="0x0" standardUnknown20="0x100" standardUnknown21="0x100" standardUnknown22="0x100" planeImage="nothing" planeDisplayMode="0x0"></Plane> | ||
</Page> | </Page> | ||
<Page name="page_gameboot" pageUnknownInt0="0x1110000" pageOnInit="nothing" pageOnCancel="nothing" pageOnContext="nothing" pageOnActivate="nothing"> | |||
<Plane name="ps3logo" standardPosX="0" standardPosY="0" standardPosZ="0" standardRedScale="1" standardGreenScale="1" standardBlueScale="1" standardAlphaScale="1" standardWidth="0" standardHeight="0" standardDepth="0" standardScaleWidth="1" standardScaleHeight="1" standardScaleDepth="1" standardIconOffset="0x0" standardOnInit="nothing" standardUnknown17="0x0" standardUnknown18="0x0" standardUnknown19="0x0" standardUnknown20="0x9c020100" standardUnknown21="0x9d020100" standardUnknown22="0x100" planeImage="image:tex_ps3logo" planeDisplayMode="0x0"></Plane> | |||
</ObjectTree> | </ObjectTree> | ||
</MainTree> | </MainTree> | ||
</RcoFile> | </RcoFile> | ||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
And this is the same, using more linefeeds and tabs, and ordered in groups for a better overview | |||
{{Boxcode|content=<syntaxhighlight lang="xml"> | |||
<RcoFile> | <RcoFile> | ||
<MainTree> | <MainTree> | ||
<ObjectTree> | <ObjectTree> | ||
<Page name="page_coldboot" | <Page name="page_coldboot" pageUnknownInt0="0x1110000" pageOnInit="nothing" pageOnCancel="nothing" pageOnContext="nothing" pageOnActivate="nothing"> | ||
<Plane name="scelogo" | <Plane | ||
name="scelogo" | |||
standardPosX="0" standardPosY="0" standardPosZ="0" | |||
standardRedScale="1" standardGreenScale="1" standardBlueScale="1" standardAlphaScale="1" | |||
standardWidth="0" standardHeight="0" standardDepth="0" | |||
standardScaleWidth="1" standardScaleHeight="1" standardScaleDepth="1" | |||
standardIconOffset="0x0" | |||
standardOnInit="nothing" | |||
standardUnknown17="0x98020000" standardUnknown18="0x99020000" standardUnknown19="0x0" | |||
standardUnknown20="0x9a020100" standardUnknown21="0x9b020100" standardUnknown22="0x100" | |||
planeImage="image:tex_scelogo" | planeImage="image:tex_scelogo" | ||
planeDisplayMode="0x0" | |||
> | > | ||
</Plane> | </Plane> | ||
</Page> | </Page> | ||
<Page name="page_coldboot2" | <Page name="page_coldboot2" pageUnknownInt0="0x1110000" pageOnInit="nothing" pageOnCancel="nothing" pageOnContext="nothing" pageOnActivate="nothing"> | ||
<Plane name="coldboot_ps3logo" | <Plane | ||
name="coldboot_ps3logo" | |||
standardPosX="0" standardPosY="0" standardPosZ="0" | |||
standardRedScale="1" standardGreenScale="1" standardBlueScale="1" standardAlphaScale="1" | |||
standardWidth="0" standardWeight="0" standardDepth="0" | |||
standardScaleWidth="1" standardScaleHeight="1" standardScaleDepth="1" | |||
standardIconOffset="0x0" | |||
standardOnInit="nothing" | |||
standardUnknown17="0x0" standardUnknown18="0x0" standardUnknown19="0x0" | |||
standardUnknown20="0x100" standardUnknown21="0x100" standardUnknown22="0x100" | |||
planeImage="nothing" | planeImage="nothing" | ||
planeDisplayMode="0x0" | |||
> | > | ||
</Plane> | </Plane> | ||
</Page> | </Page> | ||
<Page name="page_gameboot" | <Page name="page_gameboot" pageUnknownInt0="0x1110000" pageOnInit="nothing" pageOnCancel="nothing" pageOnContext="nothing" pageOnActivate="nothing"> | ||
<Plane name="ps3logo" | <Plane | ||
name="ps3logo" | |||
standardPosX="0" standardPosY="0" standardPosZ="0" | |||
standardRedScale="1" standardGreenScale="1" standardBlueScale="1" standardAlphaScale="1" | |||
standardWidth="0" standardHeight="0" standardDepth="0" | |||
standardScaleWidth="1" standardScaleHeight="1" standardScaleDepth="1" | |||
standardIconOffset="0x0" | |||
standardOnInit="nothing" | |||
standardUnknown17="0x0" standardUnknown18="0x0" standardUnknown19="0x0" | |||
standardUnknown20="0x9c020100" standardUnknown21="0x9d020100" standardUnknown22="0x100" | |||
planeImage="image:tex_ps3logo" | planeImage="image:tex_ps3logo" | ||
planeDisplayMode="0x0" | |||
> | > | ||
</Plane> | </Plane> | ||
</ObjectTree> | </ObjectTree> | ||
</MainTree> | </MainTree> | ||
Line 137: | Line 103: | ||
*'''page_coldboot''' | *'''page_coldboot''' | ||
**'''scelogo''' | **'''scelogo''' | ||
*** | ***standardPosX="0" standardPosY="0" standardPosZ="0" <--------------------------------------------------------------- '''positions are empty !''' | ||
*** | ***standardWidth="0" standardHeight="0" standardDepth="0" <------------------------------------------------------------ '''sizes are empty !''' | ||
*** | ***standardUnknown17="0x98020000" standardUnknown18="0x99020000" standardUnknown19="0x0" <------- This ones are grid references, overrides the values for position | ||
*** | ***standardUnknown20="0x9a020100" standardUnknown21="0x9b020100" standardUnknown22="0x100" <---- This ones are grid references, overrides the values for sizes | ||
*'''page_coldboot2''' | *'''page_coldboot2''' | ||
**'''coldboot_ps3logo''' | **'''coldboot_ps3logo''' | ||
*** | ***standardPosX="0" standardPosY="0" standardPosZ="0" <--------------------------------------------------------------- '''positions are empty !''' | ||
*** | ***standardWidth="0" standardHeight="0" standardDepth="0" <------------------------------------------------------------ '''sizes are empty !''' | ||
*** | ***standardUnknown17="0x0" standardUnknown18="0x0" standardUnknown19="0x0" <------------------------------ This is reserved for a grid reference, but is doubtfull how this values are working | ||
*** | ***standardUnknown20="0x100" standardUnknown21="0x100" standardUnknown22="0x100" <--------------------- This is reserved for a grid reference, but is doubtfull how this values are working | ||
*'''page_gameboot''' | *'''page_gameboot''' | ||
**'''ps3logo''' | **'''ps3logo''' | ||
*** | ***standardPosX="0" standardPosY="0" standardPosZ="0" <--------------------------------------------------------------- '''positions are empty !''' | ||
*** | ***standardWidth="0" standardHeight="0" standardDepth="0" <------------------------------------------------------------ '''sizes are empty !''' | ||
*** | ***standardUnknown17="0x0" standardUnknown18="0x0" standardUnknown19="0x0" <------------------------------- This ones are grid references, overrides the values for position | ||
*** | ***standardUnknown20="0x9c020100" standardUnknown21="0x9d020100" standardUnknown22="0x100" <------ This ones are grid references, overrides the values for sizes | ||
---- | ---- | ||
Before calculating the grid | Before calculating the grid references is needed to convert the values manually to the correct format. Every one of the attributes used for grid references is composed by 2 values, the first one is the grid reference itself (first 2 bytes), and the second one is unknown (last 2 bytes). Is needed to cut the attribute at half and swap the bytes | ||
*'''scelogo''' grid | *'''scelogo''' grid references | ||
**position | **position | ||
*** | ***standardUnknown17="0x98020000" <----------- this is 0x0'''298''' (grid reference) and 0x0000 (unknown) | ||
*** | ***standardUnknown18="0x99020000" <----------- this is 0x0'''299''' (grid reference) and 0x0000 (unknown) | ||
*** | ***standardUnknown19="0x0" <---------------------- this is 0x0000 (grid reference ?) and 0x0000 (unknown) | ||
**size | **size | ||
*** | ***standardUnknown20="0x9a020100" <----------- this is 0x0'''29a''' (grid reference) and 0x000'''1''' (unknown) | ||
*** | ***standardUnknown21="0x9b020100" <----------- this is 0x0'''29b''' (grid reference) and 0x000'''1''' (unknown) | ||
*** | ***standardUnknown22="0x100" <------------------- this is 0x0000 (grid reference ?) and 0x000'''1''' (unknown) | ||
*''' | *'''coldboot_ps3logo''' grid references | ||
**position | |||
***standardUnknown17="0x0" <---------------------- this is 0x0000 (grid reference ?) and 0x0000 (unknown) | |||
***standardUnknown18="0x0" <---------------------- this is 0x0000 (grid reference ?) and 0x0000 (unknown) | |||
***standardUnknown19="0x0" <---------------------- this is 0x0000 (grid reference ?) and 0x0000 (unknown) | |||
**size | **size | ||
*** | ***standardUnknown20="0x100" <------------------- this is 0x0000 (grid reference ?) and 0x000'''1''' (unknown) | ||
*** | ***standardUnknown21="0x100" <------------------- this is 0x0000 (grid reference ?) and 0x000'''1''' (unknown) | ||
*** | ***standardUnknown22="0x100" <------------------- this is 0x0000 (grid reference ?) and 0x000'''1''' (unknown) | ||
*'''ps3logo''' grid references | |||
**position | |||
***standardUnknown17="0x0" <---------------------- this is 0x0000 (grid reference ?) and 0x0000 (unknown) | |||
***standardUnknown18="0x0" <---------------------- this is 0x0000 (grid reference ?) and 0x0000 (unknown) | |||
***standardUnknown19="0x0" <---------------------- this is 0x0000 (grid reference ?) and 0x0000 (unknown) | |||
**size | |||
***standardUnknown20="0x9c020100" <----------- this is 0x0'''29c''' (grid reference) and 0x000'''1''' (unknown) | |||
***standardUnknown21="0x9d020100" <----------- this is 0x0'''29d''' (grid reference) and 0x000'''1''' (unknown) | |||
***standardUnknown22="0x100" <------------------- this is 0x0000 (grid reference ?) and 0x000'''1''' (unknown) | |||
---- | ---- | ||
Now to get the correct value from the grid | Now to get the correct value from the grid references is needed to look at the [[XMB Layouts]] files '''from the same firmware !!!''' | ||
The | The grid reference value needs to be converted to decimal, and added a +1 (because it seems inside the .txt file the lines are counted starting with zero, so first line is number 0) | ||
*'''scelogo''' grid | *'''scelogo''' grid references | ||
**position | **position | ||
*** | ***standardUnknown17="0x98020000" <----------- the first 2 bytes 0x0'''298''' swapped and converted to decimal = 664 + 1 = '''line 665''' of [[XMB Layouts]] files | ||
*** | ***standardUnknown18="0x99020000" <----------- the first 2 bytes 0x0'''299''' swapped and converted to decimal = 665 + 1 = '''line 666''' of [[XMB Layouts]] files | ||
***standardUnknown19="0x0" <---------------------- the first 2 bytes 0x0000 swapped and converted to decimal = 0 | |||
**size | **size | ||
*** | ***standardUnknown20="0x9a020100" <----------- the first 2 bytes 0x0'''29a''' swapped and converted to decimal = 666 + 1 = '''line 667''' of [[XMB Layouts]] files | ||
*** | ***standardUnknown21="0x9b020100" <----------- the first 2 bytes 0x0'''29b''' swapped and converted to decimal = 667 + 1 = '''line 668''' of [[XMB Layouts]] files | ||
***standardUnknown22="0x100" <------------------- the first 2 bytes 0x0000 swapped and converted to decimal = 0 | |||
*'''ps3logo''' grid | *'''ps3logo''' grid references | ||
**position | |||
***standardUnknown17="0x0" <---------------------- the first 2 bytes 0x0000 swapped and converted to decimal = 0 | |||
***standardUnknown18="0x0" <---------------------- the first 2 bytes 0x0000 swapped and converted to decimal = 0 | |||
***standardUnknown19="0x0" <---------------------- the first 2 bytes 0x0000 swapped and converted to decimal = 0 | |||
**size | **size | ||
*** | ***standardUnknown20="0x9c020100" <----------- the first 2 bytes 0x0'''29c''' swapped and converted to decimal = 668 + 1 = '''line 669''' of [[XMB Layouts]] files | ||
*** | ***standardUnknown21="0x9d020100" <----------- the first 2 bytes 0x0'''29d''' swapped and converted to decimal = 669 + 1 = '''line 670''' of [[XMB Layouts]] files | ||
***standardUnknown22="0x100" <------------------- the first 2 bytes 0x0000 swapped and converted to decimal = 0 | |||
{| class="wikitable" style="font-size:small;" | {| class="wikitable" style="font-size:small;" | ||
|+ [[XMB]] Layout grid tables (from 4.76 firmware) | |+ [[XMB]] Layout grid tables (from 4.76 firmware) | ||
! Line number !! layout_grid_table_272.txt !! layout_grid_table_480.txt !! layout_grid_table_720.txt !! layout_grid_table_1080.txt | ! Line number !! layout_grid_table_272.txt !! layout_grid_table_480.txt !! layout_grid_table_720.txt !! layout_grid_table_1080.txt | ||
|- | |||
! 1 | |||
| 0 || 0 || 0 || 0 | |||
|- | |||
! 2 | |||
| 1 || 1 || 1 || 1 | |||
|- | |- | ||
! 665 | ! 665 | ||
Line 225: | Line 218: | ||
****Y=0 | ****Y=0 | ||
****Z=0 | ****Z=0 | ||
***size (the image tex_scelogo.gim is 1024x64 | ***size (the original image tex_scelogo.gim is 512x32 pixels, but is displayed exactlly at double his size 1024x64) | ||
****X=1024 | ****X=1024 | ||
****Y=64 | ****Y=64 | ||
Line 236: | Line 229: | ||
****Y=0 | ****Y=0 | ||
****Z=0 | ****Z=0 | ||
***size (the image tex_ps3logo.gim is 1200x128 | ***size (the original image tex_ps3logo.gim is 512x54 pixels, but displayed at 1200x128<!--aspect ratio broken (by a sony mistake or on purpose ?), the correct size to preserve the aspect ratio of the original after scaling is 1200x127-->) | ||
****X=1200 | ****X=1200 | ||
****Y=128 | ****Y=128 | ||
Line 243: | Line 236: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| {{#ev:youtube|tgPXlMbchFM}} || {{#ev:youtube|GUb1gIKhwMU}} | |||
| {{#ev:youtube|tgPXlMbchFM}} | |||
| | |||
| | |||
|} | |} | ||
{{File Formats}}<noinclude>[[Category:Main]]</noinclude> | {{File Formats}}<noinclude>[[Category:Main]]</noinclude> |