[ scummvm-Bugs-1837375 ] Walk behind mask char data

SourceForge.net noreply at sourceforge.net
Sat Nov 24 01:14:53 CET 2007


Bugs item #1837375, was opened at 2007-11-24 00:14
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=418820&aid=1837375&group_id=37116

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Graphics
Group: Maniac Mansion (original)
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Richard Brown (serenwib)
Assigned to: Nobody/Anonymous (nobody)
Summary:  Walk behind mask char data

Initial Comment:
Nothing serious I hope and feel guilty about posting it really. I was mucking around with the LFL files for the V1 Maniac Mansion with the help of the documentation on Lucas Hacks. The document stops short at explaining how the Walk behind mask char data is stored (compressed, how big etc) so anyway I had a look at the
 
void GdiV1::roomChanged(byte *roomptr) method in gfx.cpp and in particular the line

decodeC64Gfx(roomptr + READ_LE_UINT16(roomptr + 18) + 2, _C64.maskChar, READ_LE_UINT16(roomptr + READ_LE_UINT16(roomptr + 18)));

My code is as below

// Mask Char Map (not sure that this works, sizes don't seem to match up)

offset = (fileData[19] & 0xFF)<<8;
offset |= fileData[18] & 0xFF;

int size = (fileData[offset+1] & 0xFF)<<8;
size |= (fileData[offset] & 0xFF);
size -= 8; // MANIAC MANSION V1/DOS

byte[] maskChar = new byte[size];

Decompress.decompress(fileData, offset+2, maskChar);

The decompress method does the same job as decode C64Gfx.

The sizes of the Walk behind char map regions in the LFL files I have are stated as being 8 bytes larger than they actually are. Nothing serious but in Java that causes and ArrayOutOfBounds exception.

That's it. The only other thing to note is that I got the LFL files by way of the Macintosh version of DOTT.

Sorry.



----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=418820&aid=1837375&group_id=37116




More information about the Scummvm-tracker mailing list