Talk:Rcomage: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
m (→‎objattribdef-ps3.ini: up to this point, this list will only include the new identifyed unknowns with the purpose of reporting it to official rcomage. Speculation and counters are in progress of being moved to RCOXML Objects page)
Line 68: Line 68:
There is a group of common attributes used to define the position of an object, are used by 21 objects (so are repeated 21 times under every one of this objects): Plane, Button, XMenu, XList, Progress, Scroll, MList, Text, ModelObject, Spin, ItemSpin, Group, LList, Edit, Clock, IList, Icon, UButton, CheckboxGroup, Meter, EditBox
There is a group of common attributes used to define the position of an object, are used by 21 objects (so are repeated 21 times under every one of this objects): Plane, Button, XMenu, XList, Progress, Scroll, MList, Text, ModelObject, Spin, ItemSpin, Group, LList, Edit, Clock, IList, Icon, UButton, CheckboxGroup, Meter, EditBox
  ; -- BEGIN STANDARD POSITION DEFINITION --
  ; -- BEGIN STANDARD POSITION DEFINITION --
  onLoad          onInit <---------- massive usage in 4.76 firmware, too much and too lazy to count them now
  onLoad          onInit <---------- used 5485 times in 4.76 firmware, most with "OnInit" or "nothing"
  ; -- END STANDARD POSITION DEFINITION --
  ; -- END STANDARD POSITION DEFINITION --


And this ones are the extended attributes, specific for each object
And this ones are the extended attributes, specific for each object
  [Page]
  [Page]
unknownInt0  ???????? <---- used 1174 times in retail firmware 4.76 all them with value: 0x1110000<!-- page objects are the most importants because are the parents of the others and this attribute is located in the first position because is prioritary for efficiency purposes (seems to be something needed to be readed by the firmware as soon as posible to decide what to do with his childrens), probably related with some execution mode of the firmware, target_id, enviroments, or something like that-->
  onInit        <------------- used 625 times in firmware 4.76. Around 607 onInit, 18 onOpen
  onInit        <------------- used 625 times in firmware 4.76. Around 607 onInit, 18 onOpen
  onContextMenu onContext <--- better to use a more generic name because "onContext" is used in several other objects and is technically the same event for all them
  onContextMenu onContext <--- better to use a more generic name because "onContext" is used in several other objects and is technically the same event for all them
Line 88: Line 87:
  unknownEvent43 onFocusDown
  unknownEvent43 onFocusDown
  unknownEvent45 onContext
  unknownEvent45 onContext
unknownInt47  ?????????????? <--- used 624 times in firmware 4.76 with values: 0x0 (560 times), or 0xffffffff (64 times)
   
   
  [XMenu]
  [XMenu]
Line 97: Line 95:
   
   
  [XMList]
  [XMList]
unknown0      ???????? <---- used 20 times in firmware 4.76 all them with value 0x0 (the 10 main XMB icons in xmb normal/ingame)
  unknownRef3    text
  unknownRef3    text
[XList]
unknownInt23 <-------- used 18 times in firmware 4.76 all them with value 0x0
unknownEvent36 <------ used 18 times in firmware 4.76 all them with value "nothing"
   
   
  [Progress]
  [Progress]
Line 170: Line 163:
   
   
  [IItem]
  [IItem]
unknown1      ???????? <---- used 136 times in firmware 4.76 all them with value 0x0
  textDefault    text
  textDefault    text
  textError      altText  <---- because is not an error strictlly
  textError      altText  <---- because is not an error strictlly
   
   
  [CheckboxGroup]
  [CheckboxGroup]
unknownRef31    ????????    <---- probably another event, used 23 times in firmware 4.76, all them with the value "nothing"
  unknownRef33    onPush      <---- used 23 times in 4.76 firmware, 17 onPush, the others "nothing"
  unknownRef33    onPush      <---- used 23 times in 4.76 firmware, 17 onPush, the others "nothing"
  unknownRef35    onCursorMove
  unknownRef35    onCursorMove
Line 185: Line 176:
  unknownRef47    onFocusDown
  unknownRef47    onFocusDown
  unknownRef49    onScrollIn
  unknownRef49    onScrollIn
unknownRef51    onScrollOut ? <------- speculative, used 23 times in firmware 4.76, all them with the value "nothing"
   
   
  [CheckboxItem]
  [CheckboxItem]
  unknownRef1    text
  unknownRef1    text
unknownRef3    ???      <---- used 4 times in 4.76 firmware, all them with the value "nothing"
unknownRef5    ???      <---- used 4 times in 4.76 firmware, all them with the value "nothing"
   
   
  [EditBox]
  [EditBox]

Revision as of 05:45, 20 November 2015

Missing descriptors in rcomage current version (1.1.1)

miscmap.ini

  • See Languages
    • unknown0x10.xml is Polish
    • unknown0x11.xml is Portuguese (Brazil)
    • unknown0x12.xml is English (Great Britain)
    • unknown0x13.xml is Turkish
  • The languages are listed in the file miscmap.ini... you can add the unknowns by yourself to the languages table, example:
[languages]
00_Japanese       ; ja
01_English_US     ; en
02_French         ; fr
03_Spanish        ; es
04_German         ; de
05_Italian        ; it
06_Dutch          ; nl
07_Portuguese_PT  ; pt
08_Russian        ; ru
09_Korean         ; ko
10_Chinese_T      ; ch
11_Chinese_S      ; zh
12_Finnish        ; fi
13_Swedish        ; sv
14_Danish         ; da
15_Norwegian      ; no
16_Polish         ; pl
17_Portuguese_BR  ; br
18_English_GB     ; gb
19_Turkish        ; tr
  • changes
    • Added the 4 unknown languages (Polish, Portuguese_BR, English_GB, Turkish)
    • Added "two-digit" language code before name, and language variant after name
    • Changed names for variants of English_US/GB, Portuguese_PT/BR, and Chinese_T/S
    • Changed commented languages to "two-letter" language code, from explore_plugin.sprx
    • Fixed "Portugese" typo

tagmap.ini

This file defines the names of the tags used in the XML descriptor at the root of the .rco

Only 2 unknowns:

[Object]
ObjUnknown0xB
ObjUnknown0x1B

animattribdef-ps3.ini

This file defines the names of the animation attributes used in the XML descriptor at the root of the .rco

Only 5 unknowns. It seems that unknownInt5, unknownInt6, unknown7 has been implemented with rco 2.0 format specifically for PS3 (not supported in PSP). The others for lock/unlock existed before in rco 1.0 format (supported in PSP)

[MoveTo]
unknownInt5 = int
unknownInt6 = int
unknown7 = unk

[Lock]
unknownInt0 = int

[Unlock]
unknownInt0 = int

objattribdef-ps3.ini

This file defines the names of the object attributes used in the XML descriptor at the root of the .rco

There is a group of common attributes used to define the position of an object, are used by 21 objects (so are repeated 21 times under every one of this objects): Plane, Button, XMenu, XList, Progress, Scroll, MList, Text, ModelObject, Spin, ItemSpin, Group, LList, Edit, Clock, IList, Icon, UButton, CheckboxGroup, Meter, EditBox

; -- BEGIN STANDARD POSITION DEFINITION --
onLoad           onInit <---------- used 5485 times in 4.76 firmware, most with "OnInit" or "nothing"
; -- END STANDARD POSITION DEFINITION --

And this ones are the extended attributes, specific for each object

[Page]
onInit        <------------- used 625 times in firmware 4.76. Around 607 onInit, 18 onOpen
onContextMenu onContext <--- better to use a more generic name because "onContext" is used in several other objects and is technically the same event for all them

[Button]
image2         focus
unknownRef29   text
unknownEvent31 onPush   <---- used 292 times in firmware 4.76. Around 258 onPush, 24 buttonPush, 5 btnClick, 3 onButton, 2 onCancel
unknownEvent33 onFocusIn
unknownEvent35 onFocusOut
unknownEvent37 onFocusLeft
unknownEvent39 onFocusRight
unknownEvent41 onFocusUp
unknownEvent43 onFocusDown
unknownEvent45 onContext

[XMenu]
onEnter        onPush <---- used 2 times in firmware 4.76. Both onPush
unknownEvent28 onCursorMove
onLabelLoad    onScrollIn <---- better, official name
unknownRef32   onScrollOut

[XMList]
unknownRef3    text

[Progress]
unknownRef25   image
unknownRef27   image2 <------ shadow image ?
unknownRef29   ????????  <------ focus image ?

[MList]
unknownRef32 ??????
unknownRef33 onPush
unknownRef35 onCursorMove
unknownRef37 onFocusIn
unknownRef39 onFocusOut
unknownRef41 onFocusLeft
unknownRef43 onFocusRight
unknownRef45 onFocusUp
unknownRef47 onFocusDown
unknownRef49 onScrollIn
unknownRef51 onScrollOut

[MItem]
unknownRef4  altText2

[Spin]
unknownEvent29  onDecide
unknownEvent31  onCancel
unknownEvent33  onRollIn

[Action]
unknownRef0     text

[ItemSpin]
unknownEvent33  onDecide
unknownEvent35  onCancel
unknownRef41    onFocusIn
unknownRef43    onFocusOut
unknownRef45    onFocusLeft
unknownRef47    onFocusRight

[LList]
unknownEvent40  OnScrollIn
unknownRef42    OnScrollOut     <------- speculative

[Edit]
unknownEvent31  onDecide
unknownRef33    onCancel
unknownEvent39  onFocusLeft
unknownEvent41  onFocusRight
unknownObject43 object2 ?
unknownObject45 object2 ?

[Clock]
unknownText25   text
unknownText27   altText
unknownEvent33  onDecide
unknownEvent35  onCancel
unknownEvent41  onFocusLeft
unknownEvent43  onFocusRight
unknownEvent49  onTickClock 

[IList]
unknownEvent29  onFocusLeft
unknownRef31    onFocusRight
unknownRef33    onFocusUp ? <-------  speculative
unknownRef35    onFocusDown
unknownRef37    onPush <------------ found used this way (and only 1 time in firmware 4.76), but it seems OnPush is used here as a generic event

[IItem]
textDefault    text
textError      altText  <---- because is not an error strictlly

[CheckboxGroup]
unknownRef33    onPush      <---- used 23 times in 4.76 firmware, 17 onPush, the others "nothing"
unknownRef35    onCursorMove
unknownRef37    onFocusIn
unknownRef39    onFocusOut
unknownRef41    onFocusLeft
unknownRef43    onFocusRight
unknownRef45    onFocusUp
unknownRef47    onFocusDown
unknownRef49    onScrollIn

[CheckboxItem]
unknownRef1     text

[EditBox]
unknownRef59   image  <--------- name is too generic, is better a more explicit name as "shadow"
unknownRef61   image2   <------- name is too generic, is better a more explicit name as "focus"
unknownRef63   onPush      <---- used 74 times in 4.76 firmware, 62 onPush, 1 onBtnClick, 11 "nothing"
unknownRef65   onFocusIn
unknownRef67   onFocusOut
unknownRef69   onFocusLeft
unknownRef71   onFocusRight
unknownRef73   onFocusUp
unknownRef75   onFocusDown
  • Examples:
    • onInit="event:native:/OnListPageOpen"
    • onInit="event:native:/OnContentsSelectPageOpen"
    • onInit="event:native:/OnModeSelectPageOpen"
    • onInit="event:native:/onInit_page_Wizard"
    • unknownRef3="text:msg_game"
    • unknownRef33="event:native:/OnPushMlistID"
    • unknownRef33="event:native:/Menu::cbPush"
    • unknownRef37="event:native:/OnFocusInMlistID"
    • unknownRef41="event:native:/Menu::cbFocusLeft"
    • unknownRef47="event:native:/Menu::cbFocusDown"
    • unknownRef49="event:native:/OnScrollInMlistID"
    • unknownRef49="event:native:/Menu::cbScrollIn"
    • unknownRef51="event:native:/Menu::cbScrollOut"
    • onLoad="event:native:/Bar::onInit"
    • onLoad="event:native:/onInit_ilist_NetworkInfomationList"
    • onEnter="event:native:/Bar::onPush"
    • unknownEvent28="event:native:/Bar::onCursorMove"
    • onLabelLoad="event:native:/Bar::onScrollIn"
    • unknownRef32="event:native:/Bar::onScrollOut"
    • image="image:tex_button" shadow="image:tex_button_shadow" image2="image:tex_button_focus" unknownRef29="text:msg_ok"
    • unknownEvent31="event:native:/XaiController::onPanelCommand"
    • unknownEvent37="event:native:/XaiController::onPanelCommand"
    • unknownEvent39="event:native:/XaiController::onPanelCommand"
    • 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"
    • unknownRef63="event:native:/onPush_button_NetworkDhcpHostSetting"
    • unknownRef69="event:native:/onFocusLeft_button_NetworkAccounSetting" unknownRef71="event:native:/onFocusRight_button_NetworkAccounSetting" unknownRef73="event:native:/onFocusUp_button_NetworkAccounSettingPassword"
    • unknownRef75="event:native:/onFocusDown_button_NetworkAccounSettingUserId"
    • unknownEvent31="event:native:/onDecide_ipaddr_NetworkAddressSetIpaddress"
    • unknownRef33="event:native:/onCancel_ipaddr_NetworkAddrSetting"
    • unknownEvent31="event:native:/onDecide_ipaddr_NetworkAddressSetNetmask"
    • unknownRef33="event:native:/onCancel_ipaddr_NetworkAddrSetting"
    • unknownEvent39="event:native:/onFocusLeft_ipaddr_NetworkAddrSetting"
    • unknownEvent41="event:native:/onFocusRight_ipaddr_NetworkAddrSetting"
    • unknownObject43="object2:ipaddr_network_address_setting_ipaddress"
    • unknownObject45="object2:ipaddr_network_address_setting_defaultrooter"
    • unknownRef29="text:msg_agree"
    • unknownEvent31="event:native:/cbPush"
    • unknownEvent37="event:native:/cbFocusLeft" unknownEvent39="event:native:/cbFocusRight" unknownEvent41="event:native:/cbFocusUp" unknownEvent43="event:native:/cbFocusDown"
    • unknownEvent31="event:native:/OnControlPanelButtonPush" unknownEvent33="event:native:/OnControlPanelButtonFocusIn" unknownEvent35="event:native:/OnControlPanelButtonFocusOut" unknownEvent37="event:native:/OnControlPanelButtonFocusLeft" unknownEvent39="event:native:/OnControlPanelButtonFocusRight" unknownEvent41="event:native:/OnControlPanelButtonFocusUp" unknownEvent43="event:native:/OnControlPanelButtonFocusDown"
    • unknownRef33="event:native:/ctl_list_cbPush" unknownRef35="nothing" unknownRef37="nothing" unknownRef39="nothing" unknownRef41="nothing" unknownRef43="event:native:/ctl_list_cbFocusRight" unknownRef45="event:native:/ctl_list_cbFocusUp" unknownRef47="nothing" unknownRef49="event:native:/ctl_list_cbScrollIn" unknownRef51="event:native:/ctl_list_cbScrollOut"
    • unknownRef59="image:avc2_main_back_paper" unknownRef61="image:avc2_main_back_paper" unknownRef63="event:native:/cbPush"
    • unknownRef33="event:native:/Menu::cbPush" unknownRef35="event:native:/Menu::cbCursorMove" unknownRef37="nothing" unknownRef39="event:native:/Menu::cbFocusOut"
    • unknownEvent43="event:native:/VideoEditorUpload::ServiceSelect::OnFocusDownButton1" unknownEvent45="event:native:/VideoEditorUpload::ServiceSelect::OnContextMenuButton1"
    • unknownRef63="event:native:/OnCreatePageEditBtnClick" unknownRef65="event:native:/OnCreatePageEditBtnFocusIn"
    • unknownRef65="event:native:/DialogController::onEditBottonFocusIn" unknownRef67="event:native:/DialogController::onEditBottonFocusOut"
    • unknownEvent29="event:native:/OnDecideISpinDeviceConfigCameraSetting" unknownEvent31="event:native:/OnCancelISpinDeviceConfigCameraSetting" unknownEvent33="event:native:/OnRollInISpinDeviceConfigCameraSetting"
    • unknownRef33="event:native:/OnPushClistRegPSVitaConfig" unknownRef35="nothing" unknownRef37="event:native:/OnFocusInClistRegPSVitaConfig" unknownRef39="event:native:/OnFocusOutClistRegPSVitaConfig" unknownRef41="nothing" unknownRef43="nothing" unknownRef45="nothing" unknownRef47="event:native:/OnFocusDownClistRegPSVitaConfig" unknownRef49="event:native:/OnScrollInClistRegPSVitaConfig"
    • unknownRef33="event:native:/OnPushCheckBoxList" unknownRef35="event:native:/OnCursorMoveCheckBoxList" unknownRef37="nothing" unknownRef39="nothing" unknownRef41="nothing" unknownRef43="nothing" unknownRef45="event:native:/OnFocusUpCheckBoxList" unknownRef47="event:native:/OnFocusDownCheckBoxList"
    • unknownRef41="event:native:/OnFocusLeftClistAudioOutputConfig" unknownRef43="event:native:/OnFocusRightClistAudioOutputConfig"
    • unknownEvent33="event:native:/OnTitleJumpSpinDecide" unknownEvent35="event:native:/OnTitleJumpSpinCancel" unknownRef37="nothing" unknownRef39="nothing" unknownRef41="event:native:/OnTitleJumpButtonFocusIn" unknownRef43="event:native:/OnTitleJumpButtonFocusOut"
    • unknownRef45="event:native:/OnFocusLeftNumSpinWizardEventHandler" unknownRef47="event:native:/OnFocusRightNumSpinWizardEventHandler"
    • unknownEvent29="event:native:/EulaLicensingWizard::onFocusLeft" unknownRef31="event:native:/EulaLicensingWizard::onFocusRight"
    • unknownRef35="event:native:/ConsoleAutoPowerOffPage::OnFocusDownIlist"
    • unknownEvent33="event:native:/OnDecideClockFirstConfig" unknownEvent35="event:native:/OnCancelClockFirstConfig" unknownRef37="nothing" unknownRef39="nothing" unknownEvent41="event:native:/OnFocusLeftFirstConfig" unknownEvent43="event:native:/OnFocusRightFirstConfig" unknownRef45="nothing" unknownRef47="nothing" unknownEvent49="event:native:/OnTickClockFirstConfig"
    • <Action name="item_audio_device_config_volume_off" unknownRef0="text:msg_off"></Action>
    • unknownRef1="text:msg_update_auto_off_ps3_after_update"
    • unknownRef3="text:msg_game"
    • unknownRef25="image:tex_progress_bar" unknownRef27="image:tex_progress_bar_in"
    • <MItem name="item_network_accesspoint_list" text="text:msg_none" altText="text:msg_none" unknownRef4="text:msg_none"></MItem>
    • unknownEvent40="event:native:/OnScrollInListEdyViewer"
    • unknownText25="text:msg_am" unknownText27="text:msg_pm"
    • unknownRef37="event:native:/OnPushIlistBtDeviceManager"
    • <IItem name="iitem_address_setting" unknown1="0x0" textDefault="text:msg_ipaddress_setting" textError="text:msg_auto"></IItem>

OnPush is used a lot instead of the pad directions, as example on some menues of xmb settings column, when moving right is taken as a push

onPanelCommand seems to be an special event that can replace some of the standard events (used as a Button attribute)

  • Objects not used in PS3 official firmware (some of them maybe supported)
[ObjUnknown0xB]
[XItem]
[ModelObject]
[LItem]
[Icon]
[UButton]
[ObjUnknown0x1B]

Other descriptors, not in setting files (seem to be hardcoded)

UMDFlag

This attribute was named UMDFlag unofficially because it was found used in the .rco files contained inside PSP UMD discs only

The name seems not accurate enought (because PS3 cant read UMD discs) so maybe is something more generic like "disc media", though never has been found a PS3 disc containing .rco's and the HYBRID_FLAG used in the bluray contents descriptor file PS3_DISC.SFB for "music bluray" and "photo bluray" are completlly speculative

minFirmwareVer

This is a very important unknown. See: Talk:Resource_Container_(RCO)

unknownByte

In the xml representation of the .rco structure... every image inside the imagetree uses an unknown attribute named unknownByte. Is an attribute related with the image format and is equal to 0 in most of the PS3 images (very rarelly used)

  • After searching in ALL the images contained inside ALL .rco files from firmware 4.76... there is a total of 72 images using unknownByte="1" (and 3098 images using unknownByte="0" for a total of 3170 images inside .rco's)

from system_plugin.rco

Code Sample
  • The 2 .gim files found using unknownByte="1" has some things in common:
    • The size of both .gim file is exactlly 452KB (463.232 bytes)
    • The resolution of both images in pixels is 512x206
    • The first 0x80 bytes of the header in both is exactlly the same (see example below)

unknownByte .gim header example

Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000000  2E 47 49 4D 31 2E 30 30 00 50 53 50 00 00 00 00  .GIM1.00.PSP....
00000010  00 02 00 00 00 07 11 70 00 00 00 10 00 00 00 10  .......p........
00000020  00 03 00 00 00 07 11 60 00 00 00 10 00 00 00 10  .......`........
00000030  00 04 00 00 00 07 11 50 00 07 11 50 00 00 00 10  .......P...P....
00000040  00 30 00 00 00 03 00 00 02 18 00 D8 00 20 00 10  .0.........Ø. ..
00000050  00 01 00 02 00 00 00 00 00 00 00 30 00 00 00 40  ...........0...@
00000060  00 07 11 40 00 00 00 00 00 01 00 01 00 03 00 01  ...@............
00000070  00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00  ...@............