All right, I have a PS3 image compressed with a variation of the LZ algoritm (magic bytes 43 5A 32 00
) (I have successfully decompressed it) and what I get from the decompressed form is a set of ARGB colors/pixels (The number of bytes in the compressed file is 4*width*height
thus I know that the decompressed file problably only contain the raw ARGB data).
Here is an image illustrating the result of rendering the ARGB data (transparency omitted to makes thing easier to make out).
Decompressed image:
PS3 edition screenshot:
PSP edition screenshot:
What I want to know is if any of you know what sort of logic this color structure use? To me, it looks like it looks at the last color in terms of the y-axis. Where zero value just gets the value of the last color of the y-axis. It kind of looks like I have to dif/sum colors together.
I have tried varies methods. For example, here I try storing a color array with zero color and for each line, sum the unsigned integer representation of ARGB of x position in the array with the new color' unsigned integer -> A+B = C
.
A-B=C, just gives pinkish giberish..
Here are some samples of ARGB values that I use to try and find a solution:
x:0, y:24-27
R G B
137 195 255
240 254 000
014 000 255
001 001 001
This should give a blueish color (comparing to Game screenshot) like: 145, 184, 219
.
*Please notice that my image for comparison isn't exact. That is to say that I got it from the same game of another platform where another format is used. Since the image sized are different. I can say that the colors aren't 100% the same as the new one.
x:4, y:22-28
R G B
137 195 255
118 168 201
255 204 161
This too should give a dark bluerish color like: 020, 068, 096
.
*Please notice that the compared color in the game isn't exact, the image has transparency too, so the game has problably messed with the color values of the screenshot.
So if anybody have encountered stuff like this before and could give me a tip of some sort I would be very happy. :)