I'm trying to extract some backgrounds for editing and reinjecting into the resource files of the Amiga version.
It looks like none of the Scumm extraction/unpack tools support the Amiga version of the first Monkey Island.
The compression id in the stripe blocks is 0A and doesn't look like the compression algorithms documented here http://jsg.id.au/scumm/scummrev/articles/image.html.
Maybe it's a simpler form of run length encoding.
Could someone fill me in how ScummVM decodes the Amiga backgrounds?
Thanks in advance.
Secret of Monkey Island Amiga graphics format/compression
Moderator: ScummVM Team
-
- Posts: 2
- Joined: Sat Sep 18, 2021 3:47 pm
Re: Secret of Monkey Island Amiga graphics format/compression
Here you have it: unkDecode10() which is called from decompressBitmap() where you can see calls to other compression methods.
Eugene
Eugene
-
- Posts: 2
- Joined: Sat Sep 18, 2021 3:47 pm
Re: Secret of Monkey Island Amiga graphics format/compression
Thanks Eugene. Exactly what I was looking for.
Seems like the Amiga version is using the same compression/draw function as the EGA version but with a separate room palette.
Analyzing the function looks like there are 16 colors available for the backgrounds/objects with a custom per room palette and a fixed 16 color palette for the actors/costumes.
So my idea to reuse the colors from the fixed palette in the backgrounds seems to be impossible.
Seems like the Amiga version is using the same compression/draw function as the EGA version but with a separate room palette.
Analyzing the function looks like there are 16 colors available for the backgrounds/objects with a custom per room palette and a fixed 16 color palette for the actors/costumes.
So my idea to reuse the colors from the fixed palette in the backgrounds seems to be impossible.