[Scummvm-cvs-logs] CVS: scummvm/scumm cursor.cpp,2.29,2.30 palette.cpp,2.26,2.27

Eugene Sandulenko sev at users.sourceforge.net
Wed Mar 16 19:21:00 CET 2005


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5400

Modified Files:
	cursor.cpp palette.cpp 
Log Message:
NES cursor fixes from Quitetust. No need to use separate palette.


Index: cursor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/cursor.cpp,v
retrieving revision 2.29
retrieving revision 2.30
diff -u -d -r2.29 -r2.30
--- cursor.cpp	17 Mar 2005 02:55:20 -0000	2.29
+++ cursor.cpp	17 Mar 2005 03:20:25 -0000	2.30
@@ -108,7 +108,7 @@
 void ScummEngine::updateCursor() {
 	_system->setMouseCursor(_grabbedCursor, _cursor.width, _cursor.height,
 							_cursor.hotspotX, _cursor.hotspotY, 
-							(_features & GF_NES ? 0x40 : 255),
+							(_features & GF_NES ? _grabbedCursor[63] : 255),
 							(_heversion == 70 ? 2 : 1));
 }
 
@@ -344,15 +344,13 @@
 
 		byte *dst = _grabbedCursor;
 		byte *src = &_NESCostumeGfx[0][0xfa * 16];
+		byte *palette = getResourceAddress(rtCostume, 35) + 2;
 
-		// Cursor uses colors 0-2, which are differ from room to room
-		// Instead of remapping, we shift it 0x40 colors up (beyond NES
-		// palette) and specify those colors in setupNESPalette()
 		for (i = 0; i < 8; i++) {
 			byte c0 = src[i];
 			byte c1 = src[i + 8];
 			for (j = 0; j < 8; j++)
-				*dst++ = ((c0 >> (7 - j)) & 1) | (((c1 >> (7 - j)) & 1) << 1) + 0x40;
+				*dst++ = palette[((c0 >> (7 - j)) & 1) | (((c1 >> (7 - j)) & 1) << 1) | ((idx == 3) ? 4 : 0)];
 		}
 
 	} else if (_version <= 2) {

Index: palette.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/palette.cpp,v
retrieving revision 2.26
retrieving revision 2.27
diff -u -d -r2.26 -r2.27
--- palette.cpp	17 Mar 2005 02:55:20 -0000	2.26
+++ palette.cpp	17 Mar 2005 03:20:25 -0000	2.27
@@ -97,11 +97,6 @@
 	setPalColor(0x3D,0x00,0x00,0x00);
 	setPalColor(0x3E,0x00,0x00,0x00);
 	setPalColor(0x3F,0x00,0x00,0x00);
-
-	// We use it for cursor. 0x40 is transparent
-	setPalColor(0x40, 0x00, 0x00, 0x00);
-	setPalColor(0x41, 0x00, 0x00, 0x00);
-	setPalColor(0x42, 0xff, 0xff, 0xff);
 }
 
 void ScummEngine::setupAmigaPalette() {





More information about the Scummvm-git-logs mailing list