[Scummvm-cvs-logs] scummvm master -> 0881f54a0650e479a30f1ce5e3b22f695495b4b7

athrxx athrxx at scummvm.org
Fri Jun 17 23:41:08 CEST 2011


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:
0881f54a06 SCUMM: fix FM-TOWNS graphics output for ARM devices


Commit: 0881f54a0650e479a30f1ce5e3b22f695495b4b7
    https://github.com/scummvm/scummvm/commit/0881f54a0650e479a30f1ce5e3b22f695495b4b7
Author: athrxx (athrxx at scummvm.org)
Date: 2011-06-17T14:38:22-07:00

Commit Message:
SCUMM: fix FM-TOWNS graphics output for ARM devices

(changed behavior of USE_ARM_GFX_ASM define)

Changed paths:
    engines/scumm/gfx.cpp
    engines/scumm/gfx_towns.cpp



diff --git a/engines/scumm/gfx.cpp b/engines/scumm/gfx.cpp
index 98d447f..d3ff826 100644
--- a/engines/scumm/gfx.cpp
+++ b/engines/scumm/gfx.cpp
@@ -652,15 +652,15 @@ void ScummEngine::drawStripToScreen(VirtScreen *vs, int x, int width, int top, i
 		assert(0 == (width & 3));
 
 		// Compose the text over the game graphics
-#ifdef USE_ARM_GFX_ASM
-		asmDrawStripToScreen(height, width, text, src, _compositeBuf, vs->pitch, width, _textSurface.pitch);
-#else
 #ifndef DISABLE_TOWNS_DUAL_LAYER_MODE
 		if (_game.platform == Common::kPlatformFMTowns) {
 			towns_drawStripToScreen(vs, x, y, x, top, width, height);
 			return;	
 		} else
 #endif	
+#ifdef USE_ARM_GFX_ASM
+		asmDrawStripToScreen(height, width, text, src, _compositeBuf, vs->pitch, width, _textSurface.pitch);
+#else
 		if (_outputPixelFormat.bytesPerPixel == 2) {
 			const byte *srcPtr = (const byte *)src;
 			const byte *textPtr = (byte *)_textSurface.getBasePtr(x * m, y * m);
diff --git a/engines/scumm/gfx_towns.cpp b/engines/scumm/gfx_towns.cpp
index 3c96be8..4ec9c1b 100644
--- a/engines/scumm/gfx_towns.cpp
+++ b/engines/scumm/gfx_towns.cpp
@@ -453,6 +453,8 @@ void TownsScreen::updateOutputBuffer() {
 			int ptch = _pitch - (r->right - r->left + 1) * _pixelFormat.bytesPerPixel;
 
 			if (_pixelFormat.bytesPerPixel == 2 && l->bpp == 1) {
+				if (!l->palette)
+					error("void TownsScreen::updateOutputBuffer(): No palette assigned to 8 bit layer %d", i);
 				for (int ic = 0; ic < l->numCol; ic++)
 					l->bltTmpPal[ic] = calc16BitColor(&l->palette[ic * 3]);
 			}






More information about the Scummvm-git-logs mailing list