Custom render plugin: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
mNo edit summary
Line 46: Line 46:
  C same as B
  C same as B


=custom_render_plugin.rco ([[RCOXML Structure|RCOXML]] contents)=
=custom_render_plugin.rco ([[RCOXML Structure|RCOXML]] contents). Example from 4.75 firmware=


all versions: https://www.mirrorcreator.com/files/KW2EY8UT/custom_render_plugin.rco_-_versions.7z_links
all versions: https://www.mirrorcreator.com/files/KW2EY8UT/custom_render_plugin.rco_-_versions.7z_links
Line 59: Line 59:
{{Boxcode|content=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<?xml version="1.0" encoding="iso-8859-1"?>
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- This XML representation of an RCO structure was generated by Rcomage v1.1.1 -->
<!-- This XML representation of an RCO structure was generated by Rcomage v1.1.2 -->
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x120">
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x130">
<MainTree name="custom_render_plugin">
<MainTree name="custom_render_plugin">
<ImageTree>
<ImageTree>
<!-- image items, not interesting for wiki -->
<Image name="tex_scelogo" src="Images\tex_scelogo.gim" format="gim" compression="zlib" unknownByte="0" />
<Image name="tex_ps3logo" src="Images\tex_ps3logo.gim" format="gim" compression="zlib" unknownByte="0" />
</ImageTree>
</ImageTree>
<ObjectTree>
<ObjectTree>
Line 69: Line 70:
<Page name="blur" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing"></Page>
<Page name="blur" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing"></Page>
<Page name="page_coldboot" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing">
<Page name="page_coldboot" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing">
<Plane name="scelogo" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x85020000" unknown18="0x86020000" unknown19="0x0" unknownInt20="0x10287" unknownInt21="0x10288" unknown22="0x100" image="image:tex_scelogo" unknownInt24="0x0"></Plane>
<Plane name="scelogo" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x0" onLoad="nothing" unknown17="0x98020000" unknown18="0x99020000" unknown19="0x0" unknownInt20="0x1029a" unknownInt21="0x1029b" unknown22="0x100" image="image:tex_scelogo" displayMode="0x0"></Plane>
</Page>
</Page>
<Page name="page_coldboot2" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing">
<Page name="page_coldboot2" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing">
<Plane name="coldboot_ps3logo" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x10000" unknownInt21="0x10000" unknown22="0x100" image="nothing" unknownInt24="0x0"></Plane>
<Plane name="coldboot_ps3logo" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x10000" unknownInt21="0x10000" unknown22="0x100" image="nothing" displayMode="0x0"></Plane>
</Page>
</Page>
<Page name="page_gameboot" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing">
<Page name="page_gameboot" unknownInt0="0x1110000" onInit="nothing" onCancel="nothing" onContextMenu="nothing" onActivate="nothing">
<Plane name="ps3logo" posX="0" posY="0" objectScale="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" posUnknown="0" scaleWidth="1" scaleHeight="1" elementScale="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x10289" unknownInt21="0x1028a" unknown22="0x100" image="image:tex_ps3logo" unknownInt24="0x0"></Plane>
<Plane name="ps3logo" posX="0" posY="0" posZ="0" redScale="1" greenScale="1" blueScale="1" alphaScale="1" width="0" height="0" depth="0" scaleWidth="1" scaleHeight="1" scaleDepth="1" iconOffset="0x0" onLoad="nothing" unknown17="0x0" unknown18="0x0" unknown19="0x0" unknownInt20="0x1029c" unknownInt21="0x1029d" unknown22="0x100" image="image:tex_ps3logo" displayMode="0x0"></Plane>
</Page>
</Page>
</ObjectTree>
</ObjectTree>
Line 82: Line 83:
<Lock unknownInt0="0xffffffff" />
<Lock unknownInt0="0xffffffff" />
<Fade object="object:scelogo" duration="0" accelMode="0x0" transparency="0" />
<Fade object="object:scelogo" duration="0" accelMode="0x0" transparency="0" />
<FireEvent object="event:native:/anim_coldboot_BootBG1" />
<FireEvent event="event:native:/anim_coldboot_BootBG1" />
<Delay time="0" />
<Delay time="0" />
<FireEvent object="event:native:/anim_coldboot_NormalBG" />
<FireEvent event="event:native:/anim_coldboot_NormalBG" />
<Delay time="1500" />
<Delay time="1500" />
<Fade object="object:scelogo" duration="1000" accelMode="0x3" transparency="0.8" />
<Fade object="object:scelogo" duration="1000" accelMode="0x3" transparency="0.8" />
Line 91: Line 92:
<Delay time="1000" />
<Delay time="1000" />
<Delay time="500" />
<Delay time="500" />
<FireEvent object="event:native:/anim_coldboot_ShowGUI" />
<FireEvent event="event:native:/anim_coldboot_ShowGUI" />
<Unlock unknownInt0="0xffffffff" />
<Unlock unknownInt0="0xffffffff" />
<Delay time="4500" />
<Delay time="4500" />
<FireEvent object="event:native:/anim_coldboot_Finished" />
<FireEvent event="event:native:/anim_coldboot_Finished" />
</Animation>
</Animation>
<Animation name="anim_coldboot2">
<Animation name="anim_coldboot2">
<Lock unknownInt0="0xffffffff" />
<Lock unknownInt0="0xffffffff" />
<Fade object="object:scelogo" duration="0" accelMode="0x0" transparency="0" />
<Fade object="object:scelogo" duration="0" accelMode="0x0" transparency="0" />
<FireEvent object="event:native:/anim_coldboot_BootBG2" />
<FireEvent event="event:native:/anim_coldboot_BootBG2" />
<Delay time="4000" />
<Delay time="4000" />
<FireEvent object="event:native:/anim_coldboot_NormalBG2" />
<FireEvent event="event:native:/anim_coldboot_NormalBG2" />
<Delay time="1500" />
<Delay time="1500" />
<FireEvent object="event:native:/anim_coldboot_ShowGUI" />
<FireEvent event="event:native:/anim_coldboot_ShowGUI" />
<Unlock unknownInt0="0xffffffff" />
<Unlock unknownInt0="0xffffffff" />
<Delay time="4500" />
<Delay time="4500" />
<FireEvent object="event:native:/anim_coldboot_Finished" />
<FireEvent event="event:native:/anim_coldboot_Finished" />
</Animation>
</Animation>
<Animation name="anim_gameboot">
<Animation name="anim_gameboot">
<Lock unknownInt0="0xffffffff" />
<Lock unknownInt0="0xffffffff" />
<Fade object="object:ps3logo" duration="0" accelMode="0x0" transparency="0" />
<Fade object="object:ps3logo" duration="0" accelMode="0x0" transparency="0" />
<Resize object="object:ps3logo" duration="0" accelMode="0x0" width="0.938" height="0.938" unknownFloat4="1" />
<Resize object="object:ps3logo" duration="0" accelMode="0x0" width="0.938" height="0.938" depth="1" />
<FireEvent object="event:native:/anim_gameboot_BG2" />
<FireEvent event="event:native:/anim_gameboot_BG2" />
<Delay time="500" />
<Delay time="500" />
<Fade object="object:ps3logo" duration="863" accelMode="0x3" transparency="1" />
<Fade object="object:ps3logo" duration="863" accelMode="0x3" transparency="1" />
<Resize object="object:ps3logo" duration="863" accelMode="0x4" width="1" height="1" unknownFloat4="1" />
<Resize object="object:ps3logo" duration="863" accelMode="0x4" width="1" height="1" depth="1" />
<FireEvent object="event:native:/anim_gameboot_BG3" />
<FireEvent event="event:native:/anim_gameboot_BG3" />
<Delay time="1100" />
<Delay time="1100" />
<Fade object="object:ps3logo" duration="174" accelMode="0x1" transparency="0" />
<Fade object="object:ps3logo" duration="174" accelMode="0x1" transparency="0" />
<Resize object="object:ps3logo" duration="174" accelMode="0x1" width="1.284" height="1.284" unknownFloat4="1" />
<Resize object="object:ps3logo" duration="174" accelMode="0x1" width="1.284" height="1.284" depth="1" />
<Delay time="1000" />
<Delay time="1000" />
<Delay time="200" />
<Delay time="200" />
<FireEvent object="event:native:/anim_gameboot_Finished" />
<FireEvent event="event:native:/anim_gameboot_Finished" />
</Animation>
</Animation>
<Animation name="anim_otherboot">
<Animation name="anim_otherboot">
<Lock unknownInt0="0xffffffff" />
<Lock unknownInt0="0xffffffff" />
<Fade object="object:ps3logo" duration="0" accelMode="0x0" transparency="0" />
<Fade object="object:ps3logo" duration="0" accelMode="0x0" transparency="0" />
<FireEvent object="event:native:/anim_otherboot_BG3" />
<FireEvent event="event:native:/anim_otherboot_BG3" />
<Delay time="200" />
<Delay time="200" />
<FireEvent object="event:native:/anim_otherboot_BG4" />
<FireEvent event="event:native:/anim_otherboot_BG4" />
<Delay time="300" />
<Delay time="300" />
<FireEvent object="event:native:/anim_otherboot_Finished" />
<FireEvent event="event:native:/anim_otherboot_Finished" />
</Animation>
</Animation>
</AnimTree>
</AnimTree>
</MainTree>
</MainTree>
</RcoFile>
</RcoFile>
</syntaxhighlight>}}
</syntaxhighlight>}}


{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude>
{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude>

Revision as of 04:16, 20 June 2015

1 Identifiers:

  • 1

1 Interface

contains 13 subs:

0: 3 Parameter: int, void * callback, int
1: 3 Parameter: int, void * callback, int
2: 3 Parameter: int id (0-0xC), int (0-9), void *
3: 1 Parameter: uint8_t [0x14]
4: 2 Parameter: void * interface, int
5: 2 Parameter: int, int
6: 3 Parameter: float, char *, int
7: 1 Parameter: char *
8: 0 Parameter: - blur (increase?)
9: 0 Parameter: - blur (decrease?)
10: 0 Parameter: - (increase)
11: 0 Parameter: - (decrease)
12: 1 Parameter: uint8

Function 2

0
  0 (return OK)
  1 (return OK)
  2
  3
  4
  5 (return OK)
  6
  7
  8 (return OK)
  9
1 coldboot , 0 = page_coldboot + coldboot2 / 5 = return is "page_coldboot" found , uint32_t * audio_enabled
2 gameboot (anim_gameboot), 0
3 gameboot (anim_otherboot), 0
4 , 2 = / 3 = page_null
5 (return OK)
6 (return OK) 
7 (return OK)
8 (return OK)
9 (return OK)
A , 2 = / 3 = / 8 =
B , 2 = / 3 =
C same as B

custom_render_plugin.rco (RCOXML contents). Example from 4.75 firmware

all versions: https://www.mirrorcreator.com/files/KW2EY8UT/custom_render_plugin.rco_-_versions.7z_links

  • Notes:
    • page_null and blur seems generic
    • page_coldboot loads anim_coldboot is the old coldboot animation when ps3 boots (used before coldboot.raf was implemented)
    • page_coldboot2 loads anim_coldboot2 is the new coldboot animation when ps3 boots (associated with coldboot.raf)
    • page_gameboot loads anim_gameboot is the animation when a game boots (it changed along the different firmware versions, see RCOXML animations examples)
    • page_otherboot doesnt exists in newer firmwares, but there is a anim_otherboot that seems to be unlinked
Code Sample