RCOXML Images

From PS3 Developer wiki
Revision as of 06:58, 17 October 2016 by Sandungas (talk | contribs) (moved from Resource Container (RCO))
Jump to navigation Jump to search

Description

The images inside .rco files are indexed in the embedded RCOXML code of the .rco container under the XML element ImageTree. See Resource Container (RCO) and RCOXML Coding

All the images (with a few exceptions) inside .rco files uses a sony propietary format that works as a image container, and allows for many different image formats, see GimConv

Image

The values marked in red are optional, the presence of the unknown specific for PS3 can be deduced based on the "rco version" in the rco header, only exists in PS3 RCO's (PSP doesnt uses it). See rcomage talk page. The presence of the other optional value file_uncompressed_size can be deduced by reading the entry itself

The file_compression feature adds a compression layer over the file format (pointless for image formats that are nativelly compressed like GIM or JPG)

Offset Length Name Example Notes
0x00 0x02 file_format 0x0=PNG
0x1=JPEG
0x2=TIFF
0x3=GIF
0x4=BMP
0x5=GIM
0x02 0x02 file_compression 0x0=NONE
0x1=ZLIB
0x2=RLZ
0x04 0x04 file_size either compressed or uncompressed, this is the final size of the file stored inside the rco
0x08 0x04 file_offset
0x0C 0x04 unknown PS3 RCOs seem to have this extra value - probably something to do with planes/frames?? usually 0x1
0x10 0x04 file_uncompressed_size Optional. Doesn't exist if file_compression = NONE, for PSP is located 4 bytes before because the previous value doesn't exists