[Scummvm-cvs-logs] CVS: scummvm/scumm charset.cpp,2.131,2.132 gfx.cpp,2.413,2.414 script_v2.cpp,2.264,2.265

Eugene Sandulenko sev at users.sourceforge.net
Wed Mar 23 20:54:12 CET 2005


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

Modified Files:
	charset.cpp gfx.cpp script_v2.cpp 
Log Message:
First attempt to position NES graphics correctly on screen. Still verbs
are at wrong places.


Index: charset.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/charset.cpp,v
retrieving revision 2.131
retrieving revision 2.132
diff -u -d -r2.131 -r2.132
--- charset.cpp	24 Mar 2005 03:22:11 -0000	2.131
+++ charset.cpp	24 Mar 2005 04:53:27 -0000	2.132
@@ -1752,6 +1752,10 @@
 	VirtScreen *vs;
 	byte *charPtr, *dst;
 
+	// HACK: how to set it properly?
+	if (_top == 0)
+		_top = 16;
+
 	if ((vs = _vm->findVirtScreen(_top)) == NULL)
 		return;
 
@@ -1766,7 +1770,6 @@
 	origHeight = height;
 
 	if (_firstChar) {
-		_left += 16;
 		_str.left = _left;
 		_str.top = _top;
 		_str.right = _left;

Index: gfx.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/gfx.cpp,v
retrieving revision 2.413
retrieving revision 2.414
diff -u -d -r2.413 -r2.414
--- gfx.cpp	24 Mar 2005 03:22:15 -0000	2.413
+++ gfx.cpp	24 Mar 2005 04:53:27 -0000	2.414
@@ -210,6 +210,7 @@
 
 void ScummEngine::initScreens(int b, int h) {
 	int i;
+	int adj = 0;
 
 	for (i = 0; i < 3; i++) {
 		nukeResource(rtBuffer, i + 1);
@@ -230,10 +231,14 @@
 		}
 	}
 
-	initVirtScreen(kMainVirtScreen, 0, b, _screenWidth, h - b, true, true);
-	initVirtScreen(kTextVirtScreen, 0, 0, _screenWidth, b, false, false);
-	initVirtScreen(kVerbVirtScreen, 0, h, _screenWidth, _screenHeight - h, false, false);
+	if (_features & GF_NES) {
+		adj = 16;
+		initVirtScreen(kUnkVirtScreen, 0, 0, _screenWidth, adj, false, false);
+	}
 
+	initVirtScreen(kMainVirtScreen, 0, b + adj, _screenWidth, h - b, true, true);
+	initVirtScreen(kTextVirtScreen, 0, adj, _screenWidth, b, false, false);
+	initVirtScreen(kVerbVirtScreen, 0, h + adj, _screenWidth, _screenHeight - h - adj, false, false);
 	_screenB = b;
 	_screenH = h;
 	
@@ -550,7 +555,7 @@
 		// NES can address negative number sprites and that poses problem for
 		// our code. So instead adding zillions of fixes and potentially break
 		// other games we shift it right on rendering stage
-		if (_vm->_features & GF_NES && _vm->_NESStartStrip > 0 && vs->number == kMainVirtScreen) {
+		if (_vm->_features & GF_NES && _vm->_NESStartStrip > 0) {
 			x += _vm->_NESStartStrip * 8;
 		}
 

Index: script_v2.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v2.cpp,v
retrieving revision 2.264
retrieving revision 2.265
diff -u -d -r2.264 -r2.265
--- script_v2.cpp	24 Mar 2005 03:22:23 -0000	2.264
+++ script_v2.cpp	24 Mar 2005 04:53:28 -0000	2.265
@@ -820,7 +820,7 @@
 		// V1 Maniac verbs are relative to the 'verb area' - under the sentence
 		if (_features & GF_NES) {
 			y -= 16;
-			x -= 8;
+			x += 8;
 		}
 		else if ((_gameId == GID_MANIAC) && (_version == 1))
 			y += 8;





More information about the Scummvm-git-logs mailing list