PS3 RCOMAGE Mod 1.9 - Proper & Automated GIM to PNG conversion, Dump & Compile Files.

@sandungas seems like still there are weird settings for these files.

I've extracted all rco's and these are the only gim files remaining with unknown Gim settings.

Capture123.PNG


(You can see which rco they belong to under details settings)

These are the only remaining files that wont match these 6 settings -ps3rgba8888, -ps3rgba8888 --update_fileinfo on, ps3dxt5, ps3dxt3, ps3dxt1, gimconvc -ps3rgba8888 --update_fileinfo on.
(Rest all rco's gims are fine all 122 rco's and almost 3000 gims of them :grin:)

After this I can finally make the database lol.
 
Last edited:
Finally spent the whole day trying to extract all gims and gather the database.

1.7 is out!, Hopefully it servers better than before.

Changelog:

-Added custom Database Which allows extremely fast dumps and compile rate.
-Trimmed code as much as I possibly could.
-Small UI changes

Also dumping should be much, much, much more faster than before.
Please report any bugs you find right here.
 
Finally spent the whole day trying to extract all gims and gather the database.

1.7 is out!, Hopefully it servers better than before.

Changelog:

-Added custom Database Which allows extremely fast dumps and compile rate.
-Trimmed code as much as I possibly could.
-Small UI changes

Also dumping should be much, much, much more faster than before.
Please report any bugs you find right here.
But you still need to identify the GIM files you posted in the previous post ?
Are a few, im going to post some, the first thing i noticed is some are made with GimConvD.exe
So... to identify them you need to do:
Code:
GimConvD.exe original.gim -o rebuilt.gim -ps3rgba8888 --update_fileinfo on

I will post others in some minutes, lets see if we can complete them today :)

Edit:
It seems all them are made with GimConvD.exe
 
Last edited:
So... to identify them you need to do:
Code:
GimConvD.exe original.gim -o rebuilt.gim -ps3rgba8888 --update_fileinfo on

Wait but shouldn't it be rebuilt with this syntax:
GimConvD.exe original.gim -o rebuilt.gim -ps3rgba8888

Instead of:
gimconvd.exe original.gim -o rebuilt.gim -ps3rgba8888 --update_fileinfo on?
 
Yes, lets make a recap, i been mentioning before that this GIM-to-GIM process we are using to identify the original GIM settings is like a "bruteforce" where we use a "dictionary"... so our dictionary is composed by 7 entries:
Code:
GimConvH.exe original.gim -o try1.gim -ps3rgba8888
GimConvE.exe original.gim -o try2.gim -ps3rgba8888 --update_fileinfo on
GimConvD.exe original.gim -o try3.gim -ps3rgba8888 --update_fileinfo on
GimConvC.exe original.gim -o try4.gim -ps3rgba8888 --update_fileinfo on
GimConvH.exe original.gim -o try5.gim -ps3dxt5
GimConvH.exe original.gim -o try6.gim -ps3dxt3
GimConvH.exe original.gim -o try7.gim -ps3dxt1
*GimConvH.exe is the original version 1.20h released by sony (without any patch applyed to the .exe)
*GimConvC.exe, GimConvD.exe, and GimConvE.exe are the versions i patched (to allow a perfect match for identification purposes when doing a GIM-to-GIM conversion), are only needed to be used if the original GIM contains the "fileinfo" area, and are only needed for the GIM-to-GIM identification

To make this in a more efficient way it could be handy to calculate with how much frequency (in percentage) is used every GIM format... im pretty sure the "try1" is the most common (and is going to be over 85%), but right now i dont know how many of the "try1" are inside 4.84 OFW

Is needed to use a math formula, but you have not mentioned the total number of GIM files inside 4.84 (some thousands, yeah around 3000 or so, but we need to know that exact number to make this calculations)... so instead of using that number im going to write "gim_amount_total" in the formula
Where...
*100 is a percentage
*x is the percentage of usage of "try1" (in this example, this formula needs to be calculated for the others too)

gim_amount_total = 100%
try1_number = x%

So...
gim_amount_total * x = try1_number * 100

So...
x = (try1_number * 100) / gim_amount_total


--------------
The point is... to make the "bruteforce" identitification in a more efficient way is better to "try" with the biggest percentages first
 
Last edited:
Wait but shouldn't it be rebuilt with this syntax:
GimConvD.exe original.gim -o rebuilt.gim -ps3rgba8888

Instead of:
gimconvd.exe original.gim -o rebuilt.gim -ps3rgba8888 --update_fileinfo on?
Sorry, i guess it confused you because i used the word "rebuilt", but what i meant is you need to try this to identify this GIM type:
Code:
GimConvD.exe original.gim -o trythis.gim -ps3rgba8888 --update_fileinfo on

For rebuilding it you should use this:
Code:
GimConvD.exe custom.png -o mod.gim -ps3rgba8888

Or this (note the only change is the gimconv version c,d,e,f,g,h. For rebuilding purposes the gimconv.exe version doesnt matters because we are not adding the "fileinfo" area:
Code:
GimConvE.exe custom.png -o mod.gim -ps3rgba8888

Otherway, if you use the command below, gimconv.exe is going to add the "fileinfo" area at the bottom of the GIM with the original filename (custom.png in this example), your username in your microsoft operating system (lol, probably nobody wants to do this), and a timestamp of 2019
Adding all that "fileinfo" about the original filename, your name, and the actual timestamp... it just makes the GIM bigger
And is pointless because it seems the PS3 ignores it
Code:
GimConvD.exe custom.png -o mod.gim -ps3rgba8888 --update_fileinfo on
 
Last edited:
I've Updated the tool & replaced the download link also.

Thanks a lot btw. I did it in a bit of hurry for today, Tomorrow I'm going to be retesting it by extracting all the rco's and checking if any gim is remaining.
I think we built a complete database.
 
I've Updated the tool & replaced the download link also.

Thanks a lot btw. I did it in a bit of hurry for today, Tomorrow I'm going to be retesting it by extracting all the rco's and checking if any gim is remaining.
I think we built a complete database.
If you want to make an "stress test" (to see if the dictionary of 7 entries is good enought) you can download some old firmwares from this link and see if your tool identifyes all GIM files https://www.psdevwiki.com/ps3/System_Firmware
Best candidates for the stress test are the firmwares:
1.02 (because 1.00 is not available in PUP format, it came preinstalled in the first PS3 models only in japan and for a very small amount of PS3 units)
1.97 (the inmediatly previous to 2.00.... because in 2.00 they made some important changes)
2.80 (the inmediatly previous to 3.00.... same than above)
3.74 (the inmediatly previous to 4.00.... same than above)
 
Hey, really loving this. if you looking for new features to add.

How about something like this for drag and drop, create a "dumped" folder and "compiled" folder built in next to the exe, and if you drag a rco to dump button it extracts to "dumped", and drag a rco xml to compile button it compiles to "compiled". Same check box in gui decides if gim to png conversion happens or not.
 
Hey, really loving this. if you looking for new features to add.

How about something like this for drag and drop, create a "dumped" folder and "compiled" folder built in next to the exe, and if you drag a rco to dump button it extracts to "dumped", and drag a rco xml to compile button it compiles to "compiled". Same check box in gui decides if gim to png conversion happens or not.

I think an earlier version had that feature. Not sure if it still there or not, will check the source code & update when I possibly can. Thank you for your suggestion.

Also I think GIM > PNG conversion can be forced as it really is not time consuming after the database update.
So here's how it's planned, Drag Rco To executable. *Dumps rco content & converts GIM > PNG,* Drag XML to executable, *Converts PNG > GIM first and then compiles the xml.*
 
Nice one. The GUI does not seem to accept any drag and drops now. I can not drag rco into the rco input box, or drag xml into xml input box. This would be handy, to save having to browse to the file.

And yeah, If its flawless I suppose gim to png could be forced, Im just worried about things outside of the normal, for example, if I have custom rco , with custom images, then they wont be in database, also old rcos from pre-retail will have different images also not in database etc. So I think it would be good to have an option to disable gim>png.
 
Nice one. The GUI does not seem to accept any drag and drops now. I can not drag rco into the rco input box, or drag xml into xml input box. This would be handy, to save having to browse to the file.

I'll work on that, seems like you're doing some heavy mods huh?,

Also Instead of the gui accepting drag and drops how about just dragging and dropping the rco's in the rcomagemod.exe?, that would be much more convenient right?

Options would be selected automatically. For ex sounds, Images & resource folder would be selected automatically.

OR If you just want the dir drag and drop for the GUI I could probably make that today itself. So which one do you choose?
 
I'll work on that, seems like you're doing some heavy mods huh?,

Also Instead of the gui accepting drag and drops how about just dragging and dropping the rco's in the rcomagemod.exe?, that would be much more convenient right?

Options would be selected automatically. For ex sounds, Images & resource folder would be selected automatically.

OR If you just want the dir drag and drop for the GUI I could probably make that today itself. So which one do you choose?
Well I do a bit. The drag to exe idea sounds nice, and would be fine alot of the time, but i would rather have control over gim>png.. maybe 2 exes? See my edit above, I dont know. Its just i do add my own images to rcos sometimes, like the impose mod with the ps3 image, and those images wont be in your database, or if i was to add loads of my own images, not from any firmware, then those will lose their settings.
 
Well I do a bit. The drag to exe idea sounds nice, and would be fine alot of the time, but i would rather have control over gim>png.. maybe 2 exes? See my edit above, I dont know. Its just i do add my own images to rcos sometimes, like the impose mod with the ps3 image, and those images wont be in your database, or if i was to add loads of my own images, not from any firmware, then those will lose their settings.

I'm not an expert in xml, but I think I can figure out what you're talking about. Like for ex you add a custom image to the xml like
image src="devil303.png"

& that would be impossible for the database to read & convert right?. Well the solution is simple. If your custom png setting is -ps3dxt5 or -ps3dxt3,
Open Up database folder & then open the rco's database which you want to edit and create a new txt file with the same gim name for ex: devil303.txt

Then open up the database.txt and add the gim name for ex: last line = devil303'sbatteryicon.gim

Screenshots would provide you a clue.
(ADDING THE GIM FILE TO DATABASE.TXT)
Capture123.PNG

(CREATING THE SETTINGS CATEGORY)
Capture1234.PNG

(ADDING THE SETTING)
Capture12345.PNG


After doing all this you can convert your rco's with custom Images from png>gim option.
 
Last edited:
I realized that, it would also conflict if using some other rco file (ex: original one)
Currently making the drag and drop update
Nice one on the drag and drop.


I am planning to add about 240 icons to explore full rco soon for my new project. So anything this can do to make that easier is cool.

How about making it so i can just drag the pngs onto the rco, and it will automatically convert them, and add them to xml and repack rco (jk) :-p
 
How about making it so i can just drag the pngs onto the rco, and it will automatically convert them, and add them to xml and repack rco (jk) :-p

I mean that is 100% possible if it didn't match the database for ex a custom gim one not equals to any of the rco gim then automatically convert it with a specific setting (ex: -ps3dxt5)

Do all your custom png's use the same setting? if so that's definitely possible & without any error/white boxes.
 

Similar threads

Back
Top