Qt Resource Container (QRC)
General format
QRC files (Qt Resources Container) are part of the firmware, located inside a QGL folder (Qt Graphics Library) in path: dev_flash/vsh/resource/qgl using names: canyon.qrc, earth.qrc, icons.qrc, icontex.qrc, lines.qrc, raf.qrc, rhm.qrc, and store.qrc
- All them uses zlib compression and the same container, but the zlib compression method and the structure of the container has 2 variations:
- All .qrc files except icontex.qrc (magic QRCC) - zlib compression is applyed over the whole .qrc file (except his first 8 bytes that are info for the decompression), after decompression the file generated is a QRCF and the internal container structure can be readed (QRCC always contains a QRCF that is the real container)
- icontex.qrc - (magic QRCF) zlib compression is applyed per-file over each contained file (the container structure can be readed directlly and every one of the files inside the container structure is compressed individually)
In the practise and from the point of view of the system, the QRCC has no interest and is needed to decompress the whole QRCC to be able to read the internal structure of the container and to acess individual files, when a QRCC is decompressed it generates an QRCF file (the real container) but this QRCF has a different internal structure than the QRCF used by icontex.qrc (are variations of the same container with some small differences... althougth both uses the same identifyer QRCF)
- For this reason is not posible to identify them by reading his magic (both are QRCF) but his structure is different, so is needed to use unnofficial names to identify them and to be able to explain his variations here in wiki, the proposed names used in this page are:
- QRCF_1 (the most common and older... used by all .qrc's except icontext.qrc)
- QRCF_2 (the less common and newer... used only by icontex.qrc)
- Notes
- Actually, the correct way to identity the QRCF container is by reading the texts in the "strings table" that are related with the building process and defines his internal structure, but his names are too long to use when talking about them
- The container used by .QRC files (the 2 variations of QRCF) is the same used by .P3T themes (P3TF) and .RAF animations (RAFO). All them are variations of the same generic container for a total of 4 known/found
- The contents of QRC files are compatible/generated with/by: Qt framework and OpenGL
QRCC
QRCC (Qt Resources Container Compressed)
QRC file ZLIB Compressed level 9.
- Example from 3.55 rhm.qrc:
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00000000 51 52 43 43 00 00 28 00 78 DA QRCC..(.xÚ
Name | Offset | Size | Example | Remark |
---|---|---|---|---|
Magic | 0x00 | 0x04 | 51 52 43 43 | 'QRCC' |
QRCF decompressed size | 0x04 | 0x04 | 00 00 28 00 | The size of the QRCF file generated when a QRCC is decompressed |
compressed QRCF | 0x08 | varies, up to the end of the QRCC file | 78 DA... | QRCF file start offset, compressed with ZLIB |
- Notes
- The first 2 bytes of the compressed QRCF is the ZLIB header, in this example: 0x78DA
- default/max level 9
QRCF
QRCF (Qt Resources Container Flat?)
Main Header
The header contains an identifyer of the container (magic), his version, and allows to store the "absolute start offset" and "size" of 7 tables (or areas)
When a "not used table" is placed before a "used table"... the start offset of the "not used table" and his size (as zero) are stored in the main header to preserve his position in the structure. The "used table" that comes later starts in the same offset than the previouslly "not used table" (an intuitive way to think in this is imagining are overlapped because starts in the same position but only the one at the top is used)
- The container format is generic (used also by .RAF and .P3T with some variations) so the usage of this tables can vary, in this example there are 3 "not used tables":
- two of the "not used tables" (both at offset 0x460 with a size of 0) are placed before an used table (also at offset 0x460 but with a size of 0x23A0)
- the other "not used table" is placed at the end, so there is no need to store his offset
- Example from fw 3.55 rhm.qrc:
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00000000 51 52 43 46 00 00 01 10 00 00 00 40 00 00 02 CC QRCF.......@..%| 00000010 00 00 03 10 00 00 01 2B 00 00 04 40 00 00 00 1B ..%À......9Ð.... 00000020 00 00 04 60 00 00 00 00 00 00 04 60 00 00 00 00 ..9ð......9ð.... 00000030 00 00 04 60 00 00 23 A0 00 00 00 00 00 00 00 00 ..9ð..@p........
Name | Offset | Size | Example | Remark |
---|---|---|---|---|
Magic | 0x00 | 0x04 | 51 52 43 46 | 'QRCF' |
Version | 0x04 | 0x04 | 00 00 01 10 | |
Tree Table Offset | 0x08 | 0x04 | 00 00 00 40 | |
Tree Table Size | 0x0C | 0x04 | 00 00 02 CC | |
ID Table Offset | 0x10 | 0x04 | 00 00 03 10 | |
ID Table Size | 0x14 | 0x04 | 00 00 01 2B | |
String Table Offset | 0x18 | 0x04 | 00 00 04 40 | |
String Table Size | 0x1C | 0x04 | 00 00 00 1B | |
Integer Array Offset | 0x20 | 0x04 | 00 00 04 60 | Overlapped |
Integer Array size | 0x24 | 0x04 | 00 00 00 00 | Not used |
Float Array Offset | 0x28 | 0x04 | 00 00 04 60 | Overlapped |
Float Array Size | 0x2C | 0x04 | 00 00 00 00 | Not used |
File Table Offset | 0x30 | 0x04 | 00 00 04 60 | Overlaps the previous 2 tables |
File Table Size | 0x34 | 0x04 | 00 00 23 A0 | |
Unknown Table Offset | 0x38 | 0x04 | 00 00 00 00 | Not present |
Unknown Table Size | 0x3C | 0x04 | 00 00 00 00 | Not Used |
- Notes
- The sizes doesnt includes the (posible) padding at the end of all tables
Tree Table
Default entry size is 49 bytes (offset 0x30), The Tree Table defines the Offset, Size and Filename pointer of each file contained in the File Table. There is a total padding of 52 bytes (0x34) between each entry but first we have a unique* padding of 92 byte (0x5C) before the first entry starts (see Structure Tree Table below). After that, the first 4 bytes are the Offset and the next 4 bytes are the Size of the file from the File Table. The padding have a structure which is for every QRC the same. First 8 bytes are compiled of 2x 4 bytes which are always 0x00000018 & 0x00000007. Next 4 bytes are the Offset of the Filename pointer within the ID Table. Next 16 bytes are compiled of 4x 4 bytes which are always 0x00000000, 0x0000000F, 0x00000002 & 0x0000001C. Next 4 bytes are the pointer for the Filename from the ID Table. Next 4 bytes are the offset within the Tree Table for the next Filename pointer. Last 16 bytes are compiled of 1x 8 bytes and 2x 4 bytes which are always 0xFFFFFFFFFFFFFFFF, 0x00000014 & 0x00000006.
* excluding icontext.qrc
Offset (without the 0x40 header in all qrc files) http://666kb.com/i/cib5c7q4y7rpcx9x1.gif
Same on all QRC's till offset 0x70
Offset | Size | Example | Remark |
---|---|---|---|
0x00 | 0x08 | 00 00 00 00 00 00 00 00 | similar all qrc files |
0x08 | 0x08 | FF FF FF FF FF FF FF FF | similar all qrc files |
0x10 | 0x04 | FF FF FF FF | similar all qrc files |
0x14 | 0x04 | 00 00 00 1C | similar all qrc files |
0x18 | 0x04 | 00 00 00 1C | similar all qrc files |
0x1C | 0x04 | 00 00 00 04 | similar all qrc files |
0x20 | 0x08 | 00 00 00 00 00 00 00 00 | similar all qrc files |
0x28 | 0x08 | FF FF FF FF FF FF FF FF | similar all qrc files |
0x30 | 0x04 | 00 00 00 38 | similar all qrc files: start offset Tree Table |
0x34 | 0x04 | xx xx xx xx | size body Tree Table |
0x38 | 0x04 | 00 00 00 0F | similar all qrc files |
0x3C | 0x04 | 00 00 00 02 | 00 00 00 03 on icontex.qrc |
0x40 | 0x04 | 00 00 00 1C | similar all qrc files |
0x44 | 0x04 | FF FF FF FF | similar all qrc files |
0x48 | 0x04 | 00 00 00 74 | 00 00 00 84 on icontex.qrc : start offset of the Filename pointer entry inside ID Table |
0x4C | 0x08 | FF FF FF FF FF FF FF FF | similar all qrc files |
0x54 | 0x04 | 00 00 00 14 | similar all qrc files |
0x58 | 0x04 | 00 00 00 06 | similar all qrc files |
0x5C | 0x04 | 00 00 00 00 | offset of first File Data |
0x60 | 0x04 | 00 00 01 50 | size of first File Data |
0x64 | 0x04 | 00 00 00 18 | similar all qrc files |
0x68 | 0x04 | 00 00 00 07 | similar all qrc files |
0x6C | 0x04 | 00 00 00 00 | offset of first filename within the ID Table |
0x70 | 0x04 | 00 00 00 00 | on icontex here are additional 16 bytes |
0x74 | 0x04 | 00 00 00 0F | similar all qrc files |
0x78 | 0x04 | 00 00 00 02 | similar all qrc files |
0x7C | 0x04 | 00 00 00 1C | similar all qrc files |
0x80 | 0x04 | 00 00 00 38 | Filename pointer of the first file for the ID Table |
0x84 | 0x04 | 00 00 00 B0 | start offset of the next entry for the Filename pointer within the ID Table |
On icontex.qrc there are additional 16 bytes added on offset 0x70 within the Tree Table
Offset | Size | Example | Remark |
---|---|---|---|
0x70 | 0x04 | 00 00 00 00 | on icontex.qrc |
0x74 | 0x04 | 00 00 00 1B | on icontex.qrc |
0x78 | 0x04 | 00 00 00 01 | on icontex.qrc |
0x7C | 0x04 | 00 01 55 D4 | on icontex.qrc (size of .dds uncompressed) |
0x80 | 0x04 | 00 00 00 00 | similar all qrc files |
0x84 | 0x04 | 00 00 00 0F | similar all qrc files |
0x88 | 0x04 | 00 00 00 02 | similar all qrc files |
0x8C | 0x04 | 00 00 00 1C | similar all qrc files |
0x90 | 0x04 | 00 00 00 38 | Filename pointer of the first file for the ID Table |
0x94 | 0x04 | 00 00 00 B0 | start offset of the next entry for the Filename pointer within the Tree Table |
ID Table
Each entry is composed by:
Offset | Length | Example | Name | Notes |
---|---|---|---|---|
0x0 | 0x4 | 00000038 | Filename Table pointer | Same value than in the Tree Table |
0x4 | variable | lib/rhm/Clear.fpo | File name | |
variable | 0x1 | 00 | NULL byte |
- The end of the table has a padding to align to 0x10 bytes
For a better understanding of the infos posted in the Structure Table and for a side by side compare about the Filename pointers.
Offset of first entry
Size of the body starting on offset of first entry
Constant 16 byte long padding
Filename pointer
Offset pointer for Filename pointer's within the Tree Table
Constant 16 byte long padding
Offset of the Filedata within the File Table
Size of the Filedata
Constant 8 byte long padding
Offset for the Filename pointer within the ID Table
Tree Table of rhm.qrc ID Table of rhm.qrc Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00000000 00 00 00 00 00 00 00 00 FF FF FF FF FF FF FF FF ........ÿÿÿÿÿÿÿÿ 00000000 00 00 00 38 6C 69 62 2F 72 68 6D 2F 43 6C 65 61 ...8lib/rhm/Clea 00000010 FF FF FF FF 00 00 00 1C 00 00 00 1C 00 00 00 04 ÿÿÿÿ............ 00000010 72 2E 66 70 6F 00 00 00 00 74 6C 69 62 2F 72 68 r.fpo....tlib/rh 00000020 00 00 00 00 00 00 00 00 FF FF FF FF FF FF FF FF ........ÿÿÿÿÿÿÿÿ 00000020 6D 2F 43 6C 65 61 72 2E 76 70 6F 00 00 00 00 B0 m/Clear.vpo....° 00000030 00 00 00 38 00 00 02 90 00 00 00 0F 00 00 00 02 ...8............ 00000030 6C 69 62 2F 72 68 6D 2F 43 6F 70 79 2E 66 70 6F lib/rhm/Copy.fpo 00000040 00 00 00 1C FF FF FF FF 00 00 00 74 FF FF FF FF ....ÿÿÿÿ...tÿÿÿÿ 00000040 00 00 00 00 EC 6C 69 62 2F 72 68 6D 2F 64 65 66 ....ìlib/rhm/def 00000050 FF FF FF FF 00 00 00 14 00 00 00 06 00 00 00 00 ÿÿÿÿ............ 00000050 61 75 6C 74 2E 66 70 6F 00 00 00 01 28 6C 69 62 ault.fpo....(lib 00000060 00 00 01 50 00 00 00 18 00 00 00 07 00 00 00 00 ...P............ 00000060 2F 72 68 6D 2F 64 65 66 61 75 6C 74 2E 76 70 6F /rhm/default.vpo 00000070 00 00 00 00 00 00 00 0F 00 00 00 02 00 00 00 1C ................ 00000070 00 00 00 01 64 6C 69 62 2F 67 6C 75 74 69 6C 73 ....dlib/glutils 00000080 00 00 00 38 00 00 00 B0 FF FF FF FF FF FF FF FF ...8...°ÿÿÿÿÿÿÿÿ 00000080 2F 43 6F 6E 65 46 69 6C 74 65 72 2E 66 70 6F 00 /ConeFilter.fpo. 00000090 00 00 00 14 00 00 00 06 00 00 01 50 00 00 00 E0 ...........P...à 00000090 00 00 01 A0 6C 69 62 2F 67 6C 75 74 69 6C 73 2F ....lib/glutils/ 000000A0 00 00 00 18 00 00 00 07 00 00 00 16 00 00 00 00 ................ 000000A0 43 6F 6E 65 46 69 6C 74 65 72 2E 76 70 6F 00 00 ConeFilter.vpo.. 000000B0 00 00 00 0F 00 00 00 02 00 00 00 1C 00 00 00 74 ...............t 000000B0 00 01 DC 6C 69 62 2F 67 6C 75 74 69 6C 73 2F 43 ..Ülib/glutils/C 000000C0 00 00 00 EC FF FF FF FF FF FF FF FF 00 00 00 14 ...ìÿÿÿÿÿÿÿÿ.... 000000C0 6F 6E 65 46 69 6C 74 65 72 53 69 6D 70 6C 65 2E oneFilterSimple. 000000D0 00 00 00 06 00 00 02 30 00 00 01 20 00 00 00 18 .......0........ 000000D0 66 70 6F 00 00 00 02 18 6C 69 62 2F 67 6C 75 74 fpo.....lib/glut 000000E0 00 00 00 07 00 00 00 2C 00 00 00 00 00 00 00 0F .......,........ 000000E0 69 6C 73 2F 53 63 72 65 65 6E 43 6F 70 79 2E 66 ils/ScreenCopy.f 000000F0 00 00 00 02 00 00 00 1C 00 00 00 B0 00 00 01 28 ...........°...( 000000F0 70 6F 00 00 00 02 54 6C 69 62 2F 67 6C 75 74 69 po....Tlib/gluti 00000100 FF FF FF FF FF FF FF FF 00 00 00 14 00 00 00 06 ÿÿÿÿÿÿÿÿ........ 00000100 6C 73 2F 42 6C 75 72 32 2E 66 70 6F 00 00 00 02 ls/Blur2.fpo.... 00000110 00 00 03 50 00 00 01 F0 00 00 00 18 00 00 00 07 ...P...ð........ 00000110 90 6C 69 62 2F 67 6C 75 74 69 6C 73 2F 42 6C 75 .lib/glutils/Blu 00000120 00 00 00 41 00 00 00 00 00 00 00 0F 00 00 00 02 ...A............ 00000120 72 32 4D 61 73 6B 2E 66 70 6F r2Mask.fpo 00000130 00 00 00 1C 00 00 00 EC 00 00 01 64 FF FF FF FF .......ì...dÿÿÿÿ 00000140 FF FF FF FF 00 00 00 14 00 00 00 06 00 00 05 40 ÿÿÿÿ...........@ 00000150 00 00 08 10 00 00 00 18 00 00 00 07 00 00 00 59 ...............Y 00000160 00 00 00 00 00 00 00 0F 00 00 00 02 00 00 00 1C ................ 00000170 00 00 01 28 00 00 01 A0 FF FF FF FF FF FF FF FF ...(....ÿÿÿÿÿÿÿÿ 00000180 00 00 00 14 00 00 00 06 00 00 0D 50 00 00 05 50 ...........P...P 00000190 00 00 00 18 00 00 00 07 00 00 00 71 00 00 00 00 ...........q.... 000001A0 00 00 00 0F 00 00 00 02 00 00 00 1C 00 00 01 64 ...............d 000001B0 00 00 01 DC FF FF FF FF FF FF FF FF 00 00 00 14 ...Üÿÿÿÿÿÿÿÿ.... 000001C0 00 00 00 06 00 00 12 A0 00 00 03 D0 00 00 00 18 ...........Ð.... 000001D0 00 00 00 07 00 00 00 90 00 00 00 00 00 00 00 0F ................ 000001E0 00 00 00 02 00 00 00 1C 00 00 01 A0 00 00 02 18 ................ 000001F0 FF FF FF FF FF FF FF FF 00 00 00 14 00 00 00 06 ÿÿÿÿÿÿÿÿ........ 00000200 00 00 16 70 00 00 01 C0 00 00 00 18 00 00 00 07 ...p...À........ 00000210 00 00 00 AF 00 00 00 00 00 00 00 0F 00 00 00 02 ...¯............ 00000220 00 00 00 1C 00 00 01 DC 00 00 02 54 FF FF FF FF .......Ü...Tÿÿÿÿ 00000230 FF FF FF FF 00 00 00 14 00 00 00 06 00 00 18 30 ...............0 00000240 00 00 03 10 00 00 00 18 00 00 00 07 00 00 00 D4 ...............Ô 00000250 00 00 00 00 00 00 00 0F 00 00 00 02 00 00 00 1C ................ 00000260 00 00 02 18 00 00 02 90 FF FF FF FF FF FF FF FF ........ÿÿÿÿÿÿÿÿ 00000270 00 00 00 14 00 00 00 06 00 00 1B 40 00 00 04 20 ...........@.... 00000280 00 00 00 18 00 00 00 07 00 00 00 F3 00 00 00 00 ...........ó.... 00000290 00 00 00 0F 00 00 00 02 00 00 00 1C 00 00 02 54 ...............T 000002A0 FF FF FF FF FF FF FF FF FF FF FF FF 00 00 00 14 ÿÿÿÿÿÿÿÿÿÿÿÿ.... 000002B0 00 00 00 06 00 00 1F 60 00 00 04 40 00 00 00 18 .......`...@.... 000002C0 00 00 00 07 00 00 01 0D 00 00 00 00 ............
Container Info Table
The table starts with 0x20 bytes
In all the .qrc files (except icontex.qrc) Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00000440 71 72 63 00 66 69 6C 65 2D 74 61 62 6C 65 00 66 qrc file-table f 00000450 69 6C 65 00 73 72 63 00 69 64 00 00 00 00 00 00 ile src id......
In icontex.qrc (not in the other .qrc files) [this is similar to a P3T file] Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 00000440 71 72 63 00 66 69 6C 65 2D 74 61 62 6C 65 00 66 qrc file-table f 00000450 69 6C 65 00 73 72 63 00 69 64 00 73 69 7A 65 00 ile src id size.
- yellow: used bytes
- red: padding to align to 0x10 bytes
File Table
The files are concatenated in the same order than in the File-BIO Table & Filename Table
Tools
ZLIB archivers
QRC files are compressed in ZLIB, and has 8 bytes added at the start of the file. To be able to use a generic zlib archiver is needed to remove this 8 bytes (and is needed to add them in the last step when rebuilding the QRC file)
SimplyZip
Windows archiver able to extract and create zlib files. http://www.paehl.de/cms/simplyzip
- Usage:
- Open the program and click in the tab at top: [External progs] ---> [ZLIB (pack/unpack)]
- A window opens where you can select the file
- Choose [Decompress] or [Compress], then click in [Start]
QGL converter
This tool can decompress a QRCC to QRCF and compress a QRCF to QRCC (it crops/generates the first 8 bytes and manages the zlib decompression/compression)
https://raw.github.com/wargio/ps3tools/master/QGL.c (just run make to compile it)
QRC Extractors
After the ZLIB decompression (needed for all .qrc files except icontex.qrc) the contents can be extracted individually using different tools
- Notes
- Some of the images are inverted vertically (only .dds?)
P3Textractor
Is posible to use a theme extractor to extract the contents from .qrc files, but first is needed to replace the characters / by _ of the text strings inside the Name table with a hexeditor (e.g: the string override/black/ICONS.mnu needs to be replaced by override_black_ICONS.mnu) This patching of the text strings can be automated by selecting the whole Name table in hexeditor and the function "replace string" (replacing the text string / by _ automatically only in the selected area)
P3Textractor manual: http://www.psdevwiki.com/ps3/Themes_(.p3t)#P3Textractor
- Notes
- P3Textractor renames .dds file extensions to .gim in the extraction process... so is needed to change back the file extensions manually to .dds for further edits in other programs
- This same trick with P3Textractor can be used with .raf files
Raw extractors
Generic Tiny little extractor
Theses generic tiny little tools extract blindly (they just don t want to stop) & embedded (and so, output bigger files when it s not) files and are means to be tiny and independent. Extremely Heavily based on an MPO splitter by Christian Steinruecken. Formats supported DDS/MNU/JPG/MPO/PNG (and virtually any other by modifying the source code)
http://rghost.net/49340892 (include Code-Compile-Credit. Drag and drop your file into them) & mirror links: http://mir.cr/0R78ED3U
QRC Compilers
There are no compilers for .qrc files, the commonly used method consist in patching settings values in text strings (or to inject the modded files) with a hexeditor over the original .qrc file
This limits the mods to patches than never exceeeds the size of the original data... in the case of patching an area with an smaller patch is recommended to fill the original "trash" data with zeroes
Patching strings in hexeditor
Mostly used with the settings inside .mnu files
First extract the files with some of the extractor tool, open the .mnu files in notepad++ to be able to read the settings in a easy way
Select the string you want to modify and "copy" his name
Open the .qrc file in hexeditor (after ZLIB decompression if needed) and use the search funtion to locate the string you copyed previously
- Notes
- Most of the settings inside .mnu files are repeated several times inside the .qrc file because are used in several .mnu files... be sure to patch the correct .mnu file by comparing the rest of the data at his side
Injecting files in hexeditor
Similar than patching a text string, but with a bigger chunk of data
Files inside QRC containers
- File formats inside QRC containers: (See Multimedia Formats and Tools page for a general description of DDS, GTF, BMP, TGA, and JPEG image formats)
- ELF (Executable and Linkable Format) See Specifications here: ELF Header and ELF-64 Object File Format
- BIN (Binary)
- MNU ?
- FPO (Fragment program objects)
- VPO (Vertex program objects)
- PATH (Camera path)
- DUMP ?
- TXT ?
- INI ?
- DDS (Direct Draw Surface)
- GTF (Graphics Texture Format)
- BMP (Bitmap)
- TGA (Targa)
- JPEG (Joint Photographic Experts Group)
- ps3 standalone visualizer app released by "Q games" (responsibles of XMB design): http://blog.us.playstation.com/2013/08/08/new-ps3-visualizer-app-from-q-games-out-tuesday/ and http://www.ps3hax.net/2013/08/q-games-releases-new-visualizer-music-app-for-ps3-high/
- QRC related modules in dev_flashvsh/modules/:
- qglbase.sprx <--- generic
- qgl_gaia_app.sprx <--- earth animation inside music player
- qgl_canyon_app.sprx <--- abstract animation inside music player
- Indirectly related: raf.sprx <--- generic animations
lines.qrc
Version (firmware) |
Size (bytes) |
Hash (MD5) |
Contents | Feature (added, removed or changed) | |||||
---|---|---|---|---|---|---|---|---|---|
ELF | FPO | VPO | MNU | DDS | TGA | ||||
1.00~1.02 | 110.923 | FCC5B919D343533737E33C2ED566EF03 | |||||||
1.10~1.32 | 111.371 | 36A05C991491A281147B241A1338C833 | |||||||
1.50~1.54 | 111.177 | EFBAF47613D96E620329404AA890A2B9 | |||||||
1.60~1.70 | 111.108 | EB6258CEC5A1448138EC02D6444C4C3D | |||||||
1.80~1.82 | 109.685 | 720DB784E69BF03C26AC38B3F161C49A | |||||||
1.90 | 131.246 | D7D34772AAE942017993A56AD086E623 | Wallpapers ? | ||||||
1.92~1.94 | 131.227 | 15E9DFB14DA89B1887C4C96564545B48 | |||||||
2.00~2.01 | 131.433 | 665981A0A66C01A6C96269A24F4765E6 | [Colour], [Background] and [Brightness] have been added as options under [Theme Settings]. | ||||||
2.10~2.17 | 131.602 | 1BD253021A2B4E3864B026670BF96E89 | |||||||
2.20~2.36 | 115.785 | 98DA94D76B0E125A85DF2BBF7423F4E8 | |||||||
2.40~2.43 | 99.050 | 80E15C5B1E70799B2B0F0D93B8180B34 | |||||||
2.50~2.60 | 98.972 | 9AE4A67090D078055787D195E2E1043E | |||||||
2.70~2.76 | 98.633 | 64966A9E622BCB06B1F0E86D3B32FB01 | |||||||
2.80 | 98.633 | 5AEF33A9A6E787CE3126D0CA780DD2DA | |||||||
3.00~3.01 | 183.383 | 94D935914BD2F48519799803897ABED5 | XMB icons change colour with the theme depending on the time of day. Default theme changed to an updated version of Original waves theme. (original theme renamed to Classic). | ||||||
3.10~3.21 | 183.798 | A757DCE0C90559AAFAB296DE6D5A8AE5 | |||||||
3.30 | 183.980 | 3CDBDD7ADC3BB39D3C17B90A81EF7015 | |||||||
3.40~3.42 | 183.874 | 7981D59C7EF731DD0C23EB2681A79FBA | |||||||
3.50 | 183.980 | E102D35341DC27F6EE2DC975C0118C1A | |||||||
3.55~3.56 | 183.981 | A50F1DC98A9EDACBDB7C0B010B369736 | |||||||
3.60~3.66 | 183.980 | D519ECFAC71AB7437AAA6E1C70BDDE4E | |||||||
3.70~3.74 | 183.984 | 961BCCD9CE30D5E579F3ADB157A89EA6 | |||||||
4.00~4.01 | 185.047 | 93687AF9491974446D62F40A0E61BA3F | |||||||
4.10~4.11 | 185.115 | FEED5630296382AE8B7C9F811A12AB80 | |||||||
4.20~4.31 | 185.115 | 405F4E3F76CBD7FD2E99AACD7431DB09 | |||||||
4.40~4.55 | 185.116 | D34D7E2A7DE4502E0454FD787A00A35C | 2 | 47 | 11 | 69 | 24 | 6 | |
4.60~4.89 | 185.105 | 261CD31A2516EF85A6D3B584C9BD02C5 | 2 | 47 | 11 | 69 | 24 | 6 |
icons.qrc & icontex.qrc
Version (firmware) |
Size (bytes) |
Hash (MD5) |
Contents | Feature (added, removed or changed) | ||||
---|---|---|---|---|---|---|---|---|
FPO | VPO | MNU | DDS | BMP | ||||
1.00~1.02 | 1.288.734 | 451016CFB126C6D050EC5B19ABB93548 | ||||||
1.10 | 1.307.885 | 1B265A359BB59CBE8E3348A2F9B288A1 | ||||||
1.11~1.32 | 1.317.777 | D434CE9BC9AA04C0CDF834DAF82D5A3D | ||||||
1.50~1.54 | 1.317.505 | C0A0FE2D84FB7A68C96A4FB07401286C | ||||||
1.60~1.70 | 697.758 | 44B0B9B26FBF5FC1EB9045E5349EC58A | ||||||
1.80~1.82 | 736.754 | 9877952A1CCB9A032B8706E21DF084E9 | ||||||
1.90 | 752.563 | 835647C1B7C921109912DA92EC557E15 | ||||||
1.92~1.94 | 752.564 | 7B056E396B5ECBF2B969A71D31C6EB6E | ||||||
2.00~2.01 | 30.170 | 4C5F6FEAC323C9DF834C91171DB617AD | XMB Icons moved to the new container: icontex.qrc to allow Static PlayStation 3 Theme (P3T) support | |||||
2.10~2.36 | 30.318 | BAD026CDEA08D3922A2758FC57BC04ED | ||||||
2.40~2.43 | 29.711 | 6F035289BD16E3243C9049F87BF08336 | ||||||
2.50~2.60 | 29.705 | 848AEF795AE0A22B95398DC89D294654 | ||||||
2.70~2.80 | 29.495 | 8B91CD5744D56A64D26D077CF3DCED3E | ||||||
3.00~3.21 | 32.820 | EECFD7C3B62ECB2169AEC89F9ABEC3C6 | ||||||
3.30 | 32.912 | 3B4BD372A29B2FF36A15A0F6D0CB1482 | ||||||
3.40~3.42 | 32.229 | D33497D781EAAA32A4B98B684C073E7D | ||||||
3.50~3.74 | 32.171 | 97342FFE4E3B427E9C2133C1BB6A3BB4 | 33 | 3 | 22 | 1 | 1 | |
4.00~4.01 | 32.313 | 653256BA53207780962A33D1E64A7758 | Bug ? | |||||
4.10~4.89 | 32.171 | 97342FFE4E3B427E9C2133C1BB6A3BB4 | 33 | 3 | 22 | 1 | 1 | Back to 3.50 version |
Version (firmware) |
Size (bytes) |
Hash (MD5) |
Contents | Feature (added, removed or changed) | ||
---|---|---|---|---|---|---|
DDS (m) | DDS (n) | DDS (dif) | ||||
2.00~2.01 | 707.152 | 020BA022EBBC7FA96C77FA01CE351F26 | 54 | 54 | 1 | Static PlayStation 3 Theme (P3T) Support |
2.10~2.36 | 740.224 | 29E7BBBB83E36A7F8E413ABA274BBC33 | 54 | 54 | 1 | |
2.40~2.43 | 795.968 | 7F17470EC7ED46AB5582EB76D86F800F | 56 | 56 | 1 | |
2.50~2.60 | 908.448 | A4F84C8427AA79F9A9CC9664E8D9FABB | 62 | 62 | 1 | |
2.70~2.76 | 901.408 | 9D0D0DB2DB104C661D98E2EF5E1C024E | 62 | 62 | 1 | |
2.80 | 903.328 | 7A48902A0B565931ABB1B01B39BCEE9C | 62 | 62 | 1 | |
3.00~3.01 | 1.361.200 | 3986EF9DBDFA8F134FFFA57D59C45052 | No | 66 | 1 | Removed the "m" versions, added 4 new icons |
3.10~3.30 | 1.386.352 | 60EC9CD4B06808C36413D66D0D389035 | No | 67 | 1 | |
3.40~3.61 | 1.426.032 | 9FBD278929692A82D5102C12922D9B3D | No | 69 | 1 | New icon for [Video Editor & Uploader] application |
3.65~3.74 | 1.413.264 | A23FF4BA6E2E8C3E7FA1C9F10E3484CB | No | 69 | 1 | |
4.00~4.89 | 1.431.936 | 90146D3F374EC92EBED34535E90CD298 | No | 70 | 1 |
rhm.qrc & raf.qrc
Version (firmware) |
Size (bytes) |
Hash (MD5) |
Contents | Feature (added, removed or changed) | |
---|---|---|---|---|---|
FPO | VPO | ||||
1.00~1.32 | 1.205 | D1E7281246EC8A46EB6D368BD4B332BD | 3 | 2 | |
1.50~1.94 | 1.142 | 80951055E3973ECCC8BF7E41D6E4BFDD | 3 | 2 | |
2.00~2.01 | 1.139 | 98305A00173927E5D947027BFE1CA0DE | 3 | 2 | Bug ? |
2.10~2.60 | 1.142 | 80951055E3973ECCC8BF7E41D6E4BFDD | 3 | 2 | Back to 1.50 version |
2.70~2.80 | 1.141 | 3118E99D109DE85724C54E3C15C17129 | 3 | 2 | |
3.00~3.74 | 2.489 | 12B8D3A7CDFB3CAF66848704027A44E7 | 8 | 3 | Added glutils library |
4.00~4.89 | 2.487 | 99F008FE3C2BACB937BFC925004E6E99 | 8 | 3 |
Version (firmware) |
Size (bytes) |
Hash (MD5) |
Contents | Feature (added, removed or changed) | ||
---|---|---|---|---|---|---|
BIN | FPO | VPO | ||||
2.70~2.80 | 5.532 | 79B5E301CB12BB0AC53B39634FD918A8 | 1 | 20 | 2 | coldboot.raf Support |
3.00~3.01 | 5.565 | 833C5E1D22303EA35AADCC17F25F61AC | 1 | 20 | 2 | Dynamic PlayStation 3 Theme (P3T) Support |
3.10~3.21 | 5.572 | 07BA8A61785C471242740F915056F0F5 | 1 | 20 | 2 | |
3.30 | 5.542 | FA2388076A217DAFD9A1FD123AF4C847 | 1 | 20 | 2 | |
3.40~3.42 | 5.550 | 9566444DFE340CAA9B9B58AD026E9775 | 1 | 20 | 2 | Bug ?? |
3.50~3.74 | 5.542 | FA2388076A217DAFD9A1FD123AF4C847 | 1 | 20 | 2 | Back to 3.30 version |
4.00~4.01 | 5.479 | B7490AB764B7BC0F9B71A4782C0BAAE7 | 1 | 20 | 2 | |
4.10~4.89 | 5.457 | 1FCC497E937FDC6CDAD6A1707C9CD187 | 1 | 20 | 2 |
canyon.qrc & earth.qrc
Music player visualizers
- note1: the other music player visualizer available is a modification of the XMB wave/sparks animation, and is stored inside lines.qrc using specific .MNU settings in path: override/music_1/)
Version (firmware) |
Size (bytes) |
Hash (MD5) |
Contents | Feature (added, removed or changed) | |||
---|---|---|---|---|---|---|---|
FPO | VPO | MNU | DDS | ||||
1.00~1.02 | 72.726 | 0F1B5E3CD6057B71BAF18F3154CD5B8C | Music Player Visualizer (abstract) | ||||
1.10~1.32 | 72.912 | E2C2A3374AED0964EB33FBB2CD987798 | |||||
1.50~1.54 | 72.777 | 5F68DBE12F25178C3777898CCF442945 | |||||
1.60~1.70 | 73.030 | 084513247EC6C3B6853C8A8DE669FF8C | |||||
1.80~1.82 | 73.464 | 3F936EDB8865DE2F8895F176496600FB | |||||
1.90 | 73.467 | 3717F76B98A3EE4C5BFDDC79E746AC53 | |||||
1.92~1.94 | 73.459 | FEB1A93499BABB48F215580B932E604C | |||||
2.00~2.01 | 73.438 | 1EAA9921CA2EC20B2B15400F585150E7 | |||||
2.10~2.36 | 73.614 | 7BAAC386D22BEAF59E8818DE8B5D41BF | |||||
2.40~2.43 | 73.897 | 3F4EC983D33875CCCD3B5A21AD6AB8C2 | |||||
2.50~2.60 | 73.884 | 83FDE07A293C487844306395C3258C82 | |||||
2.70~2.80 | 73.847 | 8A8123CD7FC907C537EFFB346C353F5F | |||||
3.00~3.30 | 73.836 | 134EEB4B4027256C4F7C5271ED5F1BBA | |||||
3.40~3.42 | 73.794 | D346902DC44A5E9B65C28B10D9C98C86 | |||||
3.50~3.74 | 73.828 | 053DA0D0ED6B336E12665D41F0A18387 | 49 | 14 | 348 | 1 | |
4.00~4.01 | 73.950 | B252D14574F1B72019A1444E68C11639 | Bug ? | ||||
4.10~4.31 | 73.840 | 81335553D8C52C39B84A623FAAC20416 | Bugfix fail ? | ||||
4.40~4.89 | 73.828 | 053DA0D0ED6B336E12665D41F0A18387 | 49 | 14 | 348 | 1 | Back to 3.50 version |
Version (firmware) |
Size (bytes) |
Hash (MD5) |
Contents | Feature (added, removed or changed) | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ELF | BIN | FPO | VPO | MNU | DUMP | PATH | INI | TXT | DDS | JPG | ||||
2.00 | 400.569 | 0CF5F811709875C7513EB7EF3D6A4093 | Music Player Visualizer (earth) beta/disabled ? | |||||||||||
2.01 | 400.582 | F12DBB64403808908A0682CF0CEFEF15 | beta/disabled ? | |||||||||||
2.10~2.17 | 2.155.425 | F652752780B5C3567872A2540C7E9471 | A new visualisation in music playback (Earth Visualization) has been added. | |||||||||||
2.20~2.36 | 2.156.458 | CE3FE6DDEE6126CA6EE07E65DA82ADA0 | ||||||||||||
2.40~2.43 | 2.152.811 | CA48FE2B62473602808154B132684922 | ||||||||||||
2.50~2.60 | 2.152.637 | 3C289F94B5601135DE9A1E288EB0F30D | ||||||||||||
2.70~2.76 | 2.144.961 | 7953F2CF91EDD2BB6409F6DE7B48B704 | ||||||||||||
2.80 | 2.145.029 | EAFDAC5D044796B22606E06B86E85638 | ||||||||||||
3.00~3.01 | 2.148.260 | C6E70369FA95B0CA107989524C30BF6E | ||||||||||||
3.10~3.21 | 2.148.378 | 6CDF7D52C5ADAC9B048E9D0C45A19AA7 | ||||||||||||
3.30 | 2.148.553 | 7B09A088BF169AB486FEDB6C569BACFB | ||||||||||||
3.40~3.42 | 2.148.711 | 43475D5E4B7E8FB223061A3BAFFC8213 | ||||||||||||
3.50 | 2.148.512 | 0DB0C5118B06F7D3C8B4C73AD7B0E443 | ||||||||||||
3.55~3.56 | 2.148.509 | 136A3DFDE7C60A34CFF3D4A7BBDCCDE4 | ||||||||||||
3.60~3.66 | 2.148.514 | AA7A02DFCA99E167DA347933B95B7DF4 | ||||||||||||
3.70~3.74 | 2.148.514 | 5CF1F3694ECDBB75A6461FD6C85A5971 | ||||||||||||
4.00~4.01 | 2.147.749 | 0A7C4A327CCD63614E55686FBE6FCCBA | ||||||||||||
4.10~4.11 | 2.147.272 | A05BCDD9504D7111FBD9810D25217D3F | ||||||||||||
4.20~4.31 | 2.147.272 | 30002327D89E49CE2760881444A522C1 | ||||||||||||
4.40~4.89 | 2.147.218 | BEDFE56680ED40807C53E61603C76E1D | 1 | 11 | 49 | 16 | 381 | 3 | 33 | 60 | 3 | 2 | 72 |
store.qrc
Version (firmware) |
Size (bytes) |
Hash (MD5) |
Contents | Feature (added, removed or changed) | ||||
---|---|---|---|---|---|---|---|---|
DDS | FPO | GTF | MNU | VPO | ||||
2.50~2.53 | 195.383 | 5E7AF90288C53BEBF729FF8182471C7F | 3 | 16 | No | 6 | 8 | The PlayStation Network Sign-Up and Account Management utilities have been redesigned. ? |
2.60 | 291.798 | 0E2298E39927AE2C632B7544E99262FD | 5 | 41 | 1 | 20 | 13 | |
2.70~2.80 | 291.369 | 301B589E1D330FC6148A9C50F1763A39 | ||||||
3.00~3.21 | 291.386 | B105F15C8C7A4337F80C3AA52469581C | ||||||
3.30 | 291.393 | 20E92F5465AD6FC2AADF7D04BDBA668F | ||||||
3.40~3.42 | 291.254 | 929D93182B08E41ED01AC45E59513DEC | Bug ? | |||||
3.50~3.56 | 291.393 | 20E92F5465AD6FC2AADF7D04BDBA668F | Back to 3.30 version | |||||
3.60~3.74 | 291.241 | 63D551B86EC752837E9824A2E4E4FECF | ||||||
4.00~4.01 | 291.317 | F7322AEC80109A0B79F2691B0049E561 | ||||||
4.10~4.26 | 291.210 | F89887A9CEF9B8ED942DF6D8C5AC313D | ||||||
4.30~4.31 | 291.238 | BD559BD848D4116EF073B49FF0C2DF4F | ||||||
4.40~4.89 | 291.224 | 5E551FE46DCA11258A29031128E8D998 | 5 | 41 | 1 | 20 | 13 |
|