fixed bomp cursor in CMI partially - still seeing flickering/tearing/artifacts, though

svn-id: r6124
This commit is contained in:
Max Horn 2002-12-25 12:41:41 +00:00
parent 9e0e918397
commit aa2a85de99
3 changed files with 9 additions and 8 deletions

View File

@ -3091,9 +3091,7 @@ void Scumm::useBompCursor(byte *im, int width, int height)
_cursor.height = height;
_cursor.animate = 0;
// FIXME - why exactly the +10 ? Is that to account for block headers or something?
// Should be documented and verified that this is appropriate for V8 bomps, or not.
decompressBomp(_grabbedCursor, im + 10, width, height);
decompressBomp(_grabbedCursor, im, width, height);
updateCursor();
}
@ -3314,9 +3312,12 @@ void Scumm::decompressBomp(byte *dst, byte *src, int w, int h)
int len, num;
byte code, color;
// FIXME - why this +8? To skip some kind of header? Is this right for V8 ?
src += 8;
// Skip the header
if (_features & GF_AFTER_V8) {
src += 16;
} else {
src += 18;
}
do {
len = w;

View File

@ -1181,7 +1181,7 @@ void Scumm::setCursorImg(uint img, uint room, uint imgindex)
// TODO - distinguish between SMAP and BOMP here?
// HACK - adjust dataptr here until bomp code gets adjusted for V8
bomp = dataptr + 2;
bomp = dataptr;
} else {
dataptr = findResource(IMxx_tags[imgindex], foir.obim);
if (dataptr == NULL)

View File

@ -559,7 +559,7 @@ public:
bool isResourceLoaded(int type, int index);
void initRoomSubBlocks();
void loadRoomObjects();
void loadRoomObjectsSmall();
void loadRoomObjectsSmall();
void readArrayFromIndexFile();
void readMAXS();
bool isGlobInMemory(int type, int index);