[Scummvm-cvs-logs] SF.net SVN: scummvm:[47527] scummvm/trunk/engines/sci/graphics/picture.cpp

m_kiewitz at users.sourceforge.net m_kiewitz at users.sourceforge.net
Sun Jan 24 22:46:32 CET 2010


Revision: 47527
          http://scummvm.svn.sourceforge.net/scummvm/?rev=47527&view=rev
Author:   m_kiewitz
Date:     2010-01-24 21:46:30 +0000 (Sun, 24 Jan 2010)

Log Message:
-----------
SCI: skip over amiga palette inside pictures for now, needs implementation (TODO added)

Modified Paths:
--------------
    scummvm/trunk/engines/sci/graphics/picture.cpp

Modified: scummvm/trunk/engines/sci/graphics/picture.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/picture.cpp	2010-01-24 21:24:07 UTC (rev 47526)
+++ scummvm/trunk/engines/sci/graphics/picture.cpp	2010-01-24 21:46:30 UTC (rev 47527)
@@ -399,7 +399,7 @@
 
 	// Drawing
 	while (curPos < dataSize) {
-		//warning("%X at %d", data[curPos], curPos);
+		warning("%X at %d", data[curPos], curPos);
 		switch (pic_op = data[curPos++]) {
 		case PIC_OP_SET_COLOR:
 			pic_color = data[curPos++];
@@ -555,12 +555,17 @@
 					}
 					break;
 				case PIC_OPX_VGA_SET_PALETTE:
-					curPos += 256 + 4; // Skip over mapping and timestamp
-					for (i = 0; i < 256; i++) {
-						palette.colors[i].used = data[curPos++];
-						palette.colors[i].r = data[curPos++]; palette.colors[i].g = data[curPos++]; palette.colors[i].b = data[curPos++];
+					if (_resMan->getViewType() == kViewAmiga) {
+						// TODO: Implement amiga palette loading
+						curPos += 32; // Skip over palette
+					} else {
+						curPos += 256 + 4; // Skip over mapping and timestamp
+						for (i = 0; i < 256; i++) {
+							palette.colors[i].used = data[curPos++];
+							palette.colors[i].r = data[curPos++]; palette.colors[i].g = data[curPos++]; palette.colors[i].b = data[curPos++];
+						}
+						_palette->set(&palette, 2);
 					}
-					_palette->set(&palette, 2);
 					break;
 				case PIC_OPX_VGA_EMBEDDED_VIEW: // draw cel
 					vectorGetAbsCoordsNoMirror(data, curPos, x, y);


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