Editing Talk:Resource Container (RCO)
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: | ||
=RCO versioning= | |||
All RCO files contains a version number, the version increases with bigger firmwares but not for every firmware and is not directly associated with it. The same versioning | All RCO files contains a version number, the version increases with bigger firmwares but not for every firmware and is not directly associated with it. The same versioning sequence is used in PSP and PS3 RCO's | ||
It seems all the RCO's of a specific firmware shares the same version (verifyed | It seems all the RCO's of a specific firmware shares the same version (speculative, not verifyed in all firmwares). It seems to be the version of the "rco set", or the version of the "rco tool" used to compile the whole "rco set" | ||
{{Boxcode| | Is posible to create a correspondecy between the "rco set" version and the firmwares versions where a specific "rco set" version was used. RCOmage v1.1.1 (latest stable) identifyes the version with a list of hardcoded values associated with a "system firmware version" | ||
{{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 19: | Line 20: | ||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
After extracting the contents of the RCO with RCOmage, the version is stored for rebuilding purposes in the [[RCOXML | After extracting the contents of the RCO with RCOmage, the "rco set" version is stored for rebuilding purposes in the [[RCOXML Structure|RCOXML]] descriptor file as an attribute with the name '''minFirmwareVer''' | ||
If the version is unknown is stored as '''<nowiki>unknownId0x%x</nowiki>''' using '''unknownId''' to specify the fact that is unknown + the real hex value '''<nowiki>0x%x</nowiki>''' | If the version is unknown is stored as '''<nowiki>unknownId0x%x</nowiki>''' using '''unknownId''' to specify the fact that is unknown + the real hex value '''<nowiki>0x%x</nowiki>''' | ||
Example... sysconf_plugin.rco from PS3 firmware 2.00 with version 0x106 | Example... sysconf_plugin.rco from PS3 firmware 2.00 with "rco set" version 0x106 | ||
{{Boxcode| | {{Boxcode|content=<syntaxhighlight lang="xml"> | ||
<?xml version="1.0" encoding="iso-8859-1"?> | |||
<!-- This XML representation of an RCO structure was generated by Rcomage v1.1.1 --> | |||
<RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x106"> | <RcoFile UMDFlag="0" rcomageXmlVer="1.1" type="ps3" minFirmwareVer="unknownId0x106"> | ||
<MainTree name="sysconf_plugin"> | |||
<ImageTree> | |||
<Image name="tex_sysconf_icon" src="Images\tex_sysconf_icon.png" format="gim" compression="zlib" unknownByte="0" /> | |||
<Image ... | |||
<Image .. | |||
<Image . | |||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
'''Speculation''' | |||
There is no known formula to make a direct conversion from the hex value to the system firmware... speculative ideas post here | |||
=RCO versions= | |||
If there is no formula, the only thing we can do is to make a list with the versions used in the "rco set" from all PS3 firmwares. Probably this list will be included in the next version of rcomage to improve PS3 compatibility so please help completing the collection | |||
<!-- noobfriendlly tables by now, every firmware version uses a row, even if they shares the same "RCO set" version with other correlative firmwares --> | |||
{| class="wikitable" | |||
|- | |- | ||
| | ! Console !! System firmware version !! "RCO set" version | ||
|+PSP | |||
| PSP || 1.0 || 0x70 | |||
|- | |- | ||
| | | PSP || 1.5 || 0x71 | ||
|- | |- | ||
| | | PSP || 2.6 || 0x90 | ||
|- | |- | ||
| | | PSP || 2.7 || 0x95 | ||
|- | |- | ||
| | | PSP || 2.8 || 0x96 | ||
|- | |- | ||
| | | PSP || 3.5 || 0x100 | ||
|- | |- | ||
| | | PSP || 6.61 || ? | ||
|} | |} | ||
{| class="wikitable" | |||
|+PS3 | |||
! Console !! System firmware version !! "RCO set" version | |||
|- | |- | ||
| PS3 || 1.00 || 0x97 | |||
|- | |- | ||
| | | PS3 || 2.00 || 0x106 | ||
| | |||
|- | |- | ||
| | | PS3 || ? || 0x107 | ||
|- | |- | ||
| | | PS3 || 3.41 || 0x110 | ||
|- | |- | ||
| | | PS3 || 3.55 || 0x110 | ||
|- | |- | ||
| | | PS3 || 4.21 || 0x120 | ||
|- | |- | ||
| | | PS3 || 4.46 || 0x130 | ||
|- | |- | ||
| | | PS3 || 4.76 || 0x130 | ||
| | |||
| 0x130 | |||
|} | |} | ||
= RCO hashreport = | |||
all OFW 1.00-4.75 hashes: https://www.mirrorcreator.com/files/7KCMQKWQ/RCO-hashreport.7z_links | |||