Editing Talk:Resource Container (RCO)

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 6: Line 6:
It seems all the RCO's of a specific firmware shares the same version (verifyed for firmware 4.76) and seems to be the version of the "rco set", or the version of the "rco tool" used to compile the whole "rco set". RCOmage v1.1.1 (latest stable) identifyes the version with a list of hardcoded values
It seems all the RCO's of a specific firmware shares the same version (verifyed for firmware 4.76) and seems to be the version of the "rco set", or the version of the "rco tool" used to compile the whole "rco set". RCOmage v1.1.1 (latest stable) identifyes the version with a list of hardcoded values


{{Boxcode|code=<syntaxhighlight lang="c">
{{Boxcode|content=<syntaxhighlight lang="c">
switch(rco->verId) {
switch(rco->verId) {
case 0x70: fputs("1.0", fp); break;
case 0x70: fputs("1.0", fp); break;
Line 24: Line 24:


Example... sysconf_plugin.rco from PS3 firmware 2.00 with version 0x106
Example... sysconf_plugin.rco from PS3 firmware 2.00 with version 0x106
{{Boxcode|code=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x106">
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x106">
</syntaxhighlight>}}
</syntaxhighlight>}}
Line 38: Line 38:


from [[system_plugin]].rco
from [[system_plugin]].rco
{{Boxcode|code=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<Image name="tex_optionmenu_bg" src=".\RCO 476 ofw\system_plugin\Images\tex_optionmenu_bg.gim" format="gim" compression="zlib" unknownByte="1" />
<Image name="tex_optionmenu_bg" src=".\RCO 476 ofw\system_plugin\Images\tex_optionmenu_bg.gim" format="gim" compression="zlib" unknownByte="1" />
<Image name="tex_optionmenu_base" src=".\RCO 476 ofw\system_plugin\Images\tex_optionmenu_base.gim" format="gim" compression="zlib" unknownByte="1" />
<Image name="tex_optionmenu_base" src=".\RCO 476 ofw\system_plugin\Images\tex_optionmenu_base.gim" format="gim" compression="zlib" unknownByte="1" />
Line 61: Line 61:


Is not specific for .GIM image format because other image formats uses it too, here are a couple of examples from newstore_plugin.rco where is used with .JPG and .PNG
Is not specific for .GIM image format because other image formats uses it too, here are a couple of examples from newstore_plugin.rco where is used with .JPG and .PNG
{{Boxcode|code=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<Image name="BackGround" src=".\RCO 476 ofw\newstore_plugin\Images\BackGround.jpg" format="jpg" compression="uncompressed" unknownByte="1" />
<Image name="BackGround" src=".\RCO 476 ofw\newstore_plugin\Images\BackGround.jpg" format="jpg" compression="uncompressed" unknownByte="1" />
<Image name="ScrollButtonRich" src=".\RCO 476 ofw mod 5\newstore_plugin\Images\ScrollButtonRich.png" format="png" compression="uncompressed" unknownByte="1" />
<Image name="ScrollButtonRich" src=".\RCO 476 ofw mod 5\newstore_plugin\Images\ScrollButtonRich.png" format="png" compression="uncompressed" unknownByte="1" />
Line 79: Line 79:


=Hashreports=
=Hashreports=
==PS3 rco's all versions==
==PS3 all versions==
all OFW 1.00-4.75 hashes: https://www.mirrorcreator.com/files/7KCMQKWQ/RCO-hashreport.7z_links <--- please someone convert this in a "human readable wiki table"
all OFW 1.00-4.75 hashes: https://www.mirrorcreator.com/files/7KCMQKWQ/RCO-hashreport.7z_links <--- please someone convert this in a "human readable wiki table"


==PSP rco's==
==PSP 6.61==
*PSP 6.60 and 6.61 firmware contains 63 .rco files (same files for both firmwares). Two of them are specific for PSPgo model (bluetooth_plugin.rco, slide_plugin.rco)
*PSP 6.60 and 6.61 firmware contains 63 .rco files (same files for both firmwares). Two of them are specific for PSPgo model (bluetooth_plugin.rco, slide_plugin.rco)
*Only 10 of them are compresed with ZLIB (dd_helper.rco, dnas_plugin.rco, htmlviewer_plugin.rco, lftv_rmc_univer3in1.rco, lftv_rmc_univer3in1_jp.rco, lftv_rmc_univertuner.rco, lftv_rmc_univertuner_jp.rco, lftv_tuner_jp_jp.rco, lftv_tuner_us_en.rco, oneseg_plugin.rco). All the others are compressed with RLZ (and RLZ decompression is not supported by rcomage, is needed to use Resurssiklunssi v0.3 to rebuild them)
*Only 10 of them are compresed with ZLIB (dd_helper.rco, dnas_plugin.rco, htmlviewer_plugin.rco, lftv_rmc_univer3in1.rco, lftv_rmc_univer3in1_jp.rco, lftv_rmc_univertuner.rco, lftv_rmc_univertuner_jp.rco, lftv_tuner_jp_jp.rco, lftv_tuner_us_en.rco, oneseg_plugin.rco). All the others are compressed with RLZ (and RLZ decompression is not supported by rcomage, is needed to use Resurssiklunssi v0.3 to rebuild them)
Line 91: Line 91:
***The converted files will have '''minFirmwareVer="2.6"''' (the original value is lost in the conversion)
***The converted files will have '''minFirmwareVer="2.6"''' (the original value is lost in the conversion)


{{Boxcode|width=auto|float=left|title=PSP 6.61 official rco's|code=<syntaxhighlight lang="bash">
{{Boxcode|content=<syntaxhighlight lang="c">
; Generated by QuickSFV v2.36 on 2015-12-09 at 04:49:59
; Generated by QuickSFV v2.36 on 2015-12-09 at 04:49:59
; http://www.QuickSFV.org
; http://www.QuickSFV.org
Line 219: Line 219:
</syntaxhighlight>}}
</syntaxhighlight>}}


{{Boxcode|width=auto|float=left|title=PSP 6.60 and 6.61 firmware. RCO hashes after resurssiklunssi rebuild (cross option)|code=<syntaxhighlight lang="bash">
*PSP 6.60 and 6.61 firmware. RCO hashes after resurssiklunssi rebuild (cross option)
{{Boxcode|content=<syntaxhighlight lang="c">
; Generated by QuickSFV v2.36 on 2015-12-13 at 03:40:27
; Generated by QuickSFV v2.36 on 2015-12-13 at 03:40:27
; http://www.QuickSFV.org
; http://www.QuickSFV.org
Line 349: Line 350:
4fd833dc230d78d2827ad85f58685aa6 *resource\video_plugin_videotoolbar.rco
4fd833dc230d78d2827ad85f58685aa6 *resource\video_plugin_videotoolbar.rco
5b1e65248b962b983cf0553f662c2050 *resource\visualizer_plugin.rco
5b1e65248b962b983cf0553f662c2050 *resource\visualizer_plugin.rco
</syntaxhighlight>}}{{clear}}
</syntaxhighlight>}}


*PSP firmware 1.00 contains only 21 .rco files (all them uses ZLIB, none of them uses RLZ)
*PSP firmware 1.00 contains only 21 .rco files (all them uses ZLIB, none of them uses RLZ)
{{Boxcode|width=auto|float=left|title=PSP 1.00 official rco's|code=<syntaxhighlight lang="bash">
{{Boxcode|content=<syntaxhighlight lang="c">
; Generated by QuickSFV v2.36 on 2015-12-13 at 03:51:28
; Generated by QuickSFV v2.36 on 2015-12-13 at 03:51:28
; http://www.QuickSFV.org
; http://www.QuickSFV.org
Line 398: Line 399:
ef87b1df11ab6b00986b1ce6395066c4 *resource\video_plugin.rco
ef87b1df11ab6b00986b1ce6395066c4 *resource\video_plugin.rco
87d878f00d9355b873adcac6f79927f6 *resource\video_plugin_videotoolbar.rco
87d878f00d9355b873adcac6f79927f6 *resource\video_plugin_videotoolbar.rco
</syntaxhighlight>}}{{clear}}
</syntaxhighlight>}}


=Examples (rcomage builds)=
=Examples (rcomage builds)=
Line 409: Line 410:


The .xml below is the RCOXML source file used to create the .rco. The file '''image_test.gim''' is a dummy of 8 bytes filed with 8888888888888888
The .xml below is the RCOXML source file used to create the .rco. The file '''image_test.gim''' is a dummy of 8 bytes filed with 8888888888888888
{{Boxcode|code=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x130">
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x130">
<MainTree name="test">
<MainTree name="test">
Line 692: Line 693:
This example is intended to replace the previous one (but by now i dont want to delete the previous one). It can help to see how the offsets are cummulated and the optional paddings to align to boundary
This example is intended to replace the previous one (but by now i dont want to delete the previous one). It can help to see how the offsets are cummulated and the optional paddings to align to boundary
The .xml below is the RCOXML source file used to create the .rco. The file '''image2_test.gim''' is a dummy of 2 bytes filed with 2222 and the file '''image3_test.gim''' is a dummy of 3 bytes filed with 333333
The .xml below is the RCOXML source file used to create the .rco. The file '''image2_test.gim''' is a dummy of 2 bytes filed with 2222 and the file '''image3_test.gim''' is a dummy of 3 bytes filed with 333333
{{Boxcode|code=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x130">
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x130">
<MainTree name="test">
<MainTree name="test">
Line 999: Line 1,000:
|}
|}


=Examples (official builds)=
=Examples (official)=
This ones should be considered "perfect" rco structures, even if there is a weird detail (initially a nonsense, a sony bug, or details not managed correctlly by rcomage)... it needs to be considered a "specification" of that rco version. See also [[Talk:Rcomage]]
This ones should be considered "perfect" rco structures, even if there is a weird detail (initially a nonsense, a sony bug, or details not managed correctlly by rcomage)... it needs to be considered a "specification" of that rco version. See also [[Talk:Rcomage]]


Line 1,005: Line 1,006:




{{Boxcode|code=<syntaxhighlight lang="xml">
{{Boxcode|content=<syntaxhighlight lang="xml">
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x97">
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x97">
<MainTree name="sample">
<MainTree name="sample">
Line 1,210: Line 1,211:
|-{{cellcolors|#9999ff}}
|-{{cellcolors|#9999ff}}
| 0x118 || 0x04 || 00 00 00 00 || {{cellcolors|#ff7777}} ''toc_entry_unknown_2'' ||  
| 0x118 || 0x04 || 00 00 00 00 || {{cellcolors|#ff7777}} ''toc_entry_unknown_2'' ||  
|-{{cellcolors|#bbbbff}}
|-{{cellcolors|#aaaaff}}
| 0x11C || 0x04 || 01 11 00 00 || '''pageMode''' ||  
| 0x11C || 0x04 || 01 11 00 00 || '''pageMode''' ||  
|-{{cellcolors|#bbbbff}}
|-{{cellcolors|#aaaaff}}
| 0x120 || 0x08 || FF FF 00 00 FF FF FF FF || '''pageOnInit''' || nothing
| 0x120 || 0x08 || FF FF 00 00 FF FF FF FF || '''pageOnInit''' || nothing
|-{{cellcolors|#bbbbff}}
|-{{cellcolors|#aaaaff}}
| 0x128 || 0x08 || FF FF 00 00 FF FF FF FF || '''pageOnCancel''' || nothing
| 0x128 || 0x08 || FF FF 00 00 FF FF FF FF || '''pageOnCancel''' || nothing
|-{{cellcolors|#bbbbff}}
|-{{cellcolors|#aaaaff}}
| 0x130 || 0x08 || FF FF 00 00 FF FF FF FF || '''pageOnContext''' || nothing
| 0x130 || 0x08 || FF FF 00 00 FF FF FF FF || '''pageOnContext''' || nothing
|-{{cellcolors|#bbbbff}}
|-{{cellcolors|#aaaaff}}
| 0x138 || 0x08 || FF FF 00 00 FF FF FF FF || '''pageOnActivate''' || nothing
| 0x138 || 0x08 || FF FF 00 00 FF FF FF FF || '''pageOnActivate''' || nothing
|-{{cellcolors|lightgrey}}
|-{{cellcolors|lightgrey}}
Line 1,284: Line 1,285:
|-{{cellcolors|#aaaaff}}
|-{{cellcolors|#aaaaff}}
| 0x1BC || 0x04 || 00 00 00 00 || '''sizeOverrideZ''' || no
| 0x1BC || 0x04 || 00 00 00 00 || '''sizeOverrideZ''' || no
|-{{cellcolors|#bbbbff}}
|-{{cellcolors|#aaaaff}}
| 0x1C0 || 0x04 || FF FF 00 00 FF FF FF FF || '''planeImage''' || nothing
| 0x1C0 || 0x04 || FF FF 00 00 FF FF FF FF || '''planeImage''' || nothing
|-{{cellcolors|#bbbbff}}
|-{{cellcolors|#aaaaff}}
| 0x1C8 || 0x04 || 00 00 00 00 || '''planeResizeMode''' || 0x0
| 0x1C8 || 0x04 || 00 00 00 00 || '''planeResizeMode''' || 0x0
|-{{cellcolors|#000000}}
|-{{cellcolors|#000000}}
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)

Templates used on this page: