[Scummvm-cvs-logs] SF.net SVN: scummvm: [29928] scummvm/trunk/engines/cruise

yazoo at users.sourceforge.net yazoo at users.sourceforge.net
Thu Dec 20 20:02:16 CET 2007


Revision: 29928
          http://scummvm.svn.sourceforge.net/scummvm/?rev=29928&view=rev
Author:   yazoo
Date:     2007-12-20 11:02:16 -0800 (Thu, 20 Dec 2007)

Log Message:
-----------
Fix palette manipulation code
Add one missing opcode

Modified Paths:
--------------
    scummvm/trunk/engines/cruise/function.cpp
    scummvm/trunk/engines/cruise/gfxModule.cpp

Modified: scummvm/trunk/engines/cruise/function.cpp
===================================================================
--- scummvm/trunk/engines/cruise/function.cpp	2007-12-20 19:00:10 UTC (rev 29927)
+++ scummvm/trunk/engines/cruise/function.cpp	2007-12-20 19:02:16 UTC (rev 29928)
@@ -571,12 +571,24 @@
 	int16 param3 = popVar();
 	int16 param4 = popVar();
 
-getSingleObjectParam(param4, param3, param2, &returnParam);
+	getSingleObjectParam(param4, param3, param2, &returnParam);
 	setObjectPosition(param4, param3, param2, param1);
 
 	return returnParam;
 }
 
+int16 Op_ReadObject(void) {
+	int16 returnParam;
+
+	int member = popVar();
+	int obj = popVar();
+	int ovl = popVar();
+
+	getSingleObjectParam(ovl, obj, member, &returnParam);
+
+	return returnParam;
+}
+
 int16 Op_FadeIn(void) {
 	doFade = 1;
 	return 0;
@@ -1614,7 +1626,7 @@
 	Op_FindObject,
 	Op_FindProc,
 	Op_WriteObject,
-	NULL, // Op_ReadObject
+	Op_ReadObject,
 	Op_RemoveOverlay,
 	Op_AddBackgroundIncrust,
 

Modified: scummvm/trunk/engines/cruise/gfxModule.cpp
===================================================================
--- scummvm/trunk/engines/cruise/gfxModule.cpp	2007-12-20 19:00:10 UTC (rev 29927)
+++ scummvm/trunk/engines/cruise/gfxModule.cpp	2007-12-20 19:02:16 UTC (rev 29928)
@@ -184,13 +184,13 @@
 	//uint8* inPtr  = globalScreen;
 
 	if (palDirtyMax != -1) {
-		for (i = palDirtyMin; i < palDirtyMax; i++) {
+		for (i = palDirtyMin; i <= palDirtyMax; i++) {
 			paletteRGBA[i * 4 + 0] = lpalette[i].R;
 			paletteRGBA[i * 4 + 1] = lpalette[i].G;
 			paletteRGBA[i * 4 + 2] = lpalette[i].B;
 			paletteRGBA[i * 4 + 3] = 0xFF;
 		}
-		g_system->setPalette(paletteRGBA, palDirtyMin, palDirtyMax - palDirtyMin + 1);
+		g_system->setPalette(paletteRGBA+palDirtyMin*4, palDirtyMin, palDirtyMax - palDirtyMin + 1);
 		palDirtyMin = 256;
 		palDirtyMax = -1;
 	}


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