[Scummvm-cvs-logs] SF.net SVN: scummvm:[41851] scummvm/trunk/engines/kyra/screen.cpp

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Thu Jun 25 04:39:00 CEST 2009


Revision: 41851
          http://scummvm.svn.sourceforge.net/scummvm/?rev=41851&view=rev
Author:   lordhoto
Date:     2009-06-25 02:39:00 +0000 (Thu, 25 Jun 2009)

Log Message:
-----------
Implement proper VGA (a color component in [0, 63]) to our palette format (color component in [0, 255]) conversion.

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/screen.cpp

Modified: scummvm/trunk/engines/kyra/screen.cpp
===================================================================
--- scummvm/trunk/engines/kyra/screen.cpp	2009-06-25 02:38:19 UTC (rev 41850)
+++ scummvm/trunk/engines/kyra/screen.cpp	2009-06-25 02:39:00 UTC (rev 41851)
@@ -604,9 +604,9 @@
 	}
 
 	for (int i = 0; i < colors; ++i) {
-		dst[0] = (palData[0] << 2) | (palData[0] & 3);
-		dst[1] = (palData[1] << 2) | (palData[1] & 3);
-		dst[2] = (palData[2] << 2) | (palData[2] & 3);
+		dst[0] = (palData[0] * 0xFF) / 0x3F;
+		dst[1] = (palData[1] * 0xFF) / 0x3F;
+		dst[2] = (palData[2] * 0xFF) / 0x3F;
 		dst += 3;
 		palData += 3;
 	}
@@ -617,9 +617,9 @@
 	_screenPalette->copy(pal);
 
 	for (int i = 0; i < pal.getNumColors(); ++i) {
-		screenPal[4 * i + 0] = (pal[i * 3 + 0] << 2) | (pal[i * 3 + 0] & 3);
-		screenPal[4 * i + 1] = (pal[i * 3 + 1] << 2) | (pal[i * 3 + 1] & 3);
-		screenPal[4 * i + 2] = (pal[i * 3 + 2] << 2) | (pal[i * 3 + 2] & 3);
+		screenPal[4 * i + 0] = (pal[i * 3 + 0] * 0xFF) / 0x3F;
+		screenPal[4 * i + 1] = (pal[i * 3 + 1] * 0xFF) / 0x3F;
+		screenPal[4 * i + 2] = (pal[i * 3 + 2] * 0xFF) / 0x3F;
 		screenPal[4 * i + 3] = 0;
 	}
 


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