[Scummvm-cvs-logs] SF.net SVN: scummvm: [21587] scummvm/trunk/engines/simon/simon.cpp

kirben at users.sourceforge.net kirben at users.sourceforge.net
Tue Apr 4 00:51:01 CEST 2006


Revision: 21587
Author:   kirben
Date:     2006-04-04 00:50:04 -0700 (Tue, 04 Apr 2006)
ViewCVS:  http://svn.sourceforge.net/scummvm/?rev=21587&view=rev

Log Message:
-----------
Adjust clear/restore window for FF

Modified Paths:
--------------
    scummvm/trunk/engines/simon/simon.cpp
Modified: scummvm/trunk/engines/simon/simon.cpp
===================================================================
--- scummvm/trunk/engines/simon/simon.cpp	2006-04-04 07:34:48 UTC (rev 21586)
+++ scummvm/trunk/engines/simon/simon.cpp	2006-04-04 07:50:04 UTC (rev 21587)
@@ -3115,7 +3115,10 @@
 			_restoreWindow6 = 0;
 		}
 
-		restoreBlock(fcs->y + fcs->height * 8, (fcs->x + fcs->width) * 8, fcs->y, fcs->x * 8);
+		if (getGameType() == GType_FF)
+			restoreBlock(fcs->y + fcs->height, fcs->x + fcs->width, fcs->y, fcs->x);
+		else
+			restoreBlock(fcs->y + fcs->height * 8, (fcs->x + fcs->width) * 8, fcs->y, fcs->x * 8);
 	}
 
 	_lockWord &= ~0x8000;
@@ -3123,16 +3126,24 @@
 
 void SimonEngine::colorWindow(FillOrCopyStruct *fcs) {
 	byte *dst;
-	uint h;
+	uint h, w;
 
 	_lockWord |= 0x8000;
 
 	dst = getFrontBuf();
-	dst += _dxSurfacePitch * fcs->y + fcs->x * 8;
 
-	h = fcs->height * 8;
+	if (getGameType() == GType_FF) {
+		dst += _dxSurfacePitch * fcs->y + fcs->x;
+		h = fcs->height;
+		w = fcs->width;
+	} else {
+		dst += _dxSurfacePitch * fcs->y + fcs->x * 8;
+		h = fcs->height * 8;
+		w = fcs->width * 8;
+	}
+
 	do {
-		memset(dst, fcs->fill_color, fcs->width * 8);
+		memset(dst, fcs->fill_color, w);
 		dst += _dxSurfacePitch;
 	} while (--h);
 


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.





More information about the Scummvm-git-logs mailing list