[Scummvm-cvs-logs] CVS: scummvm/sky disk.cpp,1.18,1.19 sky.cpp,1.12,1.13 text.cpp,1.5,1.6 text.h,1.1,1.2

Joost Peters joostp at users.sourceforge.net
Tue Apr 8 05:20:03 CEST 2003


Update of /cvsroot/scummvm/scummvm/sky
In directory sc8-pr-cvs1:/tmp/cvs-serv6757/sky

Modified Files:
	disk.cpp sky.cpp text.cpp text.h 
Log Message:
applied eriktorbjorn's patch, removed unnecessary cast and renamed CD text decoder

Index: disk.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/disk.cpp,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- disk.cpp	7 Apr 2003 20:43:46 -0000	1.18
+++ disk.cpp	8 Apr 2003 12:19:14 -0000	1.19
@@ -225,6 +225,9 @@
 	case 5099:
 		//cd (v0.0368)
 		return 368;
+	case 5097:
+		//cd (v0.0372)
+		return 372;
 	default:
 		//unknown version
 		error("Unknown game version!");

Index: sky.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/sky.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- sky.cpp	7 Apr 2003 20:44:51 -0000	1.12
+++ sky.cpp	8 Apr 2003 12:19:14 -0000	1.13
@@ -202,10 +202,12 @@
 		//floppy - new version
 		//return new SkyText_v00331(_skyDisk, _gameVersion);
 	case 365:
-		//cd demo, uses a slightly modified version of v00368
+		//cd demo, uses a slightly modified version of v00372
 	case 368:
+		//cd version, uses a slightly modified version of v00372
+	case 372:
 		//cd version
-		return new SkyText_v00368(_skyDisk, _gameVersion);
+		return new SkyText_v00372(_skyDisk, _gameVersion);
 	default:
 		error("Unknown game version!");
 	}
@@ -223,6 +225,8 @@
 		return true;
 	case 368:
 		return false;
+	case 372:
+		return false;
 	default:
 		error("Unknown game version!");
 	}
@@ -239,6 +243,8 @@
 	case 365:
 		return true;
 	case 368:
+		return true;
+	case 372:
 		return true;
 	default:
 		error("Unknown game version!");

Index: text.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/text.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- text.cpp	7 Apr 2003 20:44:15 -0000	1.5
+++ text.cpp	8 Apr 2003 12:19:14 -0000	1.6
@@ -35,7 +35,7 @@
 	_skyDisk = skyDisk;
 	_gameVersion = gameVersion;
 
-	_mainCharacterSet.addr = (byte *)_skyDisk->loadFile(CHAR_SET_FILE, NULL);
+	_mainCharacterSet.addr = _skyDisk->loadFile(CHAR_SET_FILE, NULL);
 	fnSetFont(0);
 	
 	if (!SkyState::isDemo(_gameVersion)) {
@@ -140,9 +140,7 @@
 
 char SkyText_v00267::getTextChar() {
 
-	//NOTE: The original sources only contained a text decoder that, AFAIK, is not used in 
-	//any commercially sold version, but differs only slightly from the CD (and CD Demo) implementations.
-	//The decoding code for the floppy versions (both demo and full version) is _completely_ different.
+	//NOTE: The decoding code for the floppy versions (both demo and full version) is _completely_ different.
 	//This code is based on disassembly of the v0.0267 binary.
 	
 
@@ -1173,10 +1171,10 @@
 
 }
 
-char SkyText_v00368::getTextChar() {
+char SkyText_v00372::getTextChar() {
 
 	//This code is based on the original sources
-	//Slightly modified to work for both the CD and CD-Demo versions.
+	//Should work for all (known) cd versions.
 
 	if (getTBit())
 		goto label_1;
@@ -1569,7 +1567,10 @@
 	return ']';
 
 label_72:
-	return 'x';
+	if (_gameVersion == 372)
+		return '#';
+	else 
+		return 'x';
 	
 label_71:
 	if (getTBit())
@@ -1577,10 +1578,10 @@
 	if (getTBit())
 		goto label_75;
 
-	if (_gameVersion == 365)
-		return 'x';
-	else
+	if (_gameVersion == 368)
 		return 'X';
+	else
+		return 'x';
 	
 label_75:
 	return 'X';

Index: text.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/text.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- text.h	7 Apr 2003 20:44:16 -0000	1.1
+++ text.h	8 Apr 2003 12:19:15 -0000	1.2
@@ -79,9 +79,9 @@
 	char getTextChar();
 };
 
-class SkyText_v00368 : public SkyText {
+class SkyText_v00372 : public SkyText {
 public:
-	SkyText_v00368(SkyDisk *skyDisk, uint32 gameVersion) : SkyText(skyDisk, gameVersion) {};
+	SkyText_v00372(SkyDisk *skyDisk, uint32 gameVersion) : SkyText(skyDisk, gameVersion) {};
 protected:
 	char getTextChar();
 };





More information about the Scummvm-git-logs mailing list