[Scummvm-cvs-logs] scummvm master -> 5f6451d092af39b1600248005a53cc62343cc03f

Kirben kirben at optusnet.com.au
Mon Aug 26 11:33:41 CEST 2013


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
5f6451d092 SCUMM: Fix COMI regression, after commit 84d1d28373d782464bd46b10abd6b092f7eb6367.


Commit: 5f6451d092af39b1600248005a53cc62343cc03f
    https://github.com/scummvm/scummvm/commit/5f6451d092af39b1600248005a53cc62343cc03f
Author: Kirben (kirben at optusnet.com.au)
Date: 2013-08-26T02:32:26-07:00

Commit Message:
SCUMM: Fix COMI regression, after commit 84d1d28373d782464bd46b10abd6b092f7eb6367.

Changed paths:
    engines/scumm/gfx.cpp



diff --git a/engines/scumm/gfx.cpp b/engines/scumm/gfx.cpp
index 4d65ccc..1bb4a28 100644
--- a/engines/scumm/gfx.cpp
+++ b/engines/scumm/gfx.cpp
@@ -1769,11 +1769,8 @@ void Gdi::drawBitmap(const byte *ptr, VirtScreen *vs, int x, const int y, const
 	// Check whether lights are turned on or not
 	const bool lightsOn = _vm->isLightOn();
 
-	if (_vm->_game.features & GF_SMALL_HEADER) {
+	if ((_vm->_game.features & GF_SMALL_HEADER) || _vm->_game.version == 8) {
 		smap_ptr = ptr;
-	} else if (_vm->_game.version == 8) {
-		// Skip to the BSTR->WRAP->OFFS chunk
-		smap_ptr = ptr + 24;
 	} else {
 		smap_ptr = _vm->findResource(MKTAG('S','M','A','P'), ptr);
 		assert(smap_ptr);
@@ -1887,6 +1884,12 @@ bool Gdi::drawStrip(byte *dstPtr, VirtScreen *vs, int x, int y, const int width,
 		smapLen = READ_LE_UINT32(smap_ptr);
 		if (stripnr * 4 + 4 < smapLen)
 			offset = READ_LE_UINT32(smap_ptr + stripnr * 4 + 4);
+	} else if (_vm->_game.version == 8) {
+		smapLen = READ_BE_UINT32(smap_ptr + 4);
+		// Skip to the BSTR->WRAP->OFFS chunk
+		smap_ptr += 24;
+		if (stripnr * 4 + 8 < smapLen)
+			offset = READ_LE_UINT32(smap_ptr + stripnr * 4 + 8);
 	} else {
 		smapLen = READ_BE_UINT32(smap_ptr + 4);
 		if (stripnr * 4 + 8 < smapLen)






More information about the Scummvm-git-logs mailing list