Resource Container (RCO)
Jump to navigation
Jump to search
Description
Resource Container Objet (RCO) contents are loaded by XMB modules (also known as .sprx plugins), see Plugin Interfaces and VSH
- Compression types availables:
- ZLIB
- RLZ
- Uncompressed
Contents
- RCO contents (See Multimedia Formats and Tools):
Text for all languages, textures, sounds (for cursor navigation, trophy unlocking, etc...) and models
RCO format | Embedded code | Text | Textures | Sounds | Models | Script |
---|---|---|---|---|---|---|
Generic | RCOXML | utf8, utf16, utf32 | gim, png, jpg, tif, gif, bmp | vag, unknown0x0 | gmo | PlayStation JavaScript |
PS3 specific | RCOXML | utf16 | gim, png, jpg | vag | n/a | n/a |
RCO Structure
The container structure can be represented as an XML (see RCOXML), with rcomage is posible to generate this XML when extracting, and for rebuilding the rco using the XML as a layout
http://endlessparadigm.com/forum/showthread.php?tid=231 (outdated)
Header
Offset | Length | Name | Example | Notes |
---|---|---|---|---|
0x00 | 0x04 | magic | FRP | In PS3 is "FRP" (big endian). In PSP is "PRF" (little endian) |
0x04 | 0x04 | version | 00 00 01 30 | named minFirmwareVer in rcomage, see Discussion page |
0x08 | 0x04 | unknown | 00 00 00 00 | |
0x0C | 0x04 | compress_header | 00 00 00 00 | *0x00 no compress *0x10 zlib *0x20 rlz ? |
0x10 | 0x04 | info_table_offset | 00 00 00 A4 | usually 0xA4 |
0x14 | 0x04 | vsmx_table_offset | ||
0x18 | 0x04 | text_table_offset | ||
0x1C | 0x04 | sound_table_offset | ||
0x20 | 0x04 | model_table_offset | ||
0x24 | 0x04 | image_table_offset | ||
0x28 | 0x04 | unknown | FF FF FF FF | Always seems to be 0xFFFFFF |
0x2C | 0x04 | font_table_offset | ||
0x30 | 0x04 | page_table_offset | ||
0x34 | 0x04 | anim_table_offset |
Offset | Length | Name | Example | Notes |
---|---|---|---|---|
0x38 | 0x04 | text_table_offset | ||
0x3C | 0x04 | text_table_length | ||
0x40 | 0x04 | label_table_offset | ||
0x44 | 0x04 | label_table_length | ||
0x48 | 0x04 | native_table_offset | ||
0x4C | 0x04 | native_table_length |
Offset | Length | Name | Example | Notes |
---|---|---|---|---|
0x50 | 0x04 | text_pointer_table_offset | ||
0x54 | 0x04 | text_pointer_table_length | ||
0x58 | 0x04 | image_pointer_table_offset | ||
0x5C | 0x04 | image_pointer_table_length | ||
0x60 | 0x04 | model_pointer_table_offset | ||
0x64 | 0x04 | model_pointer_table_length | ||
0x68 | 0x04 | sound_pointer_table_offset | ||
0x6C | 0x04 | sound_pointer_table_length | ||
0x70 | 0x04 | page_pointer_table_offset | ||
0x74 | 0x04 | page_pointer_table_length | ||
0x78 | 0x04 | anim_pointer_table_offset | ||
0x7C | 0x04 | anim_pointer_table_length |
Offset | Length | Name | Example | Notes |
---|---|---|---|---|
0x80 | 0x04 | image_data_section_offset | ||
0x84 | 0x04 | image_data_section_length | ||
0x88 | 0x04 | sound_data_section_offset | ||
0x8C | 0x04 | sound_data_section_length | ||
0x90 | 0x04 | model_data_section_offset | ||
0x94 | 0x04 | model_data_section_length | ||
0x98 | 0x04 | unknown | Always seems to be 0xFFFFFF | |
0x9C | 0x04 | unknown | Always seems to be 0xFFFFFF | |
0xA0 | 0x04 | unknown | Always seems to be 0xFFFFFF |
Tables
Etc...
|