[Scummvm-cvs-logs] CVS: scummvm/backends/midi/mt32 mt32_file.cpp,1.3,1.4

Jerome Fisher kingguppy at users.sourceforge.net
Sat Nov 13 23:55:01 CET 2004


Update of /cvsroot/scummvm/scummvm/backends/midi/mt32
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23065

Modified Files:
	mt32_file.cpp 
Log Message:
- Prettied up, fixed sign-extension bug.


Index: mt32_file.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/backends/midi/mt32/mt32_file.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- mt32_file.cpp	13 Nov 2004 19:24:37 -0000	1.3
+++ mt32_file.cpp	14 Nov 2004 07:54:43 -0000	1.4
@@ -57,7 +57,7 @@
 	}
 
 	bool File::readBit16u(Bit16u *in) {
-		char b[2];
+		Bit8u b[2];
 		if (read(&b[0], 2) != 2)
 			return false;
 		*in = ((b[0] << 8) | b[1]);
@@ -65,7 +65,7 @@
 	}
 
 	bool File::readBit32u(Bit32u *in) {
-		char b[4];
+		Bit8u b[4];
 		if (read(&b[0], 4) != 4)
 			return false;
 		*in = ((b[0] << 24) | (b[1] << 16) | (b[2] << 8) | b[3]);
@@ -81,26 +81,26 @@
 	}
 
 	bool File::writeBit16u(Bit16u out) {
-		if (!writeBit8u((Bit8u)((out >> 8) & 0xFF))) {
+		if (!writeBit8u((Bit8u)((out & 0xFF00) >> 8))) {
 			return false;
 		}
-		if (!writeBit8u((Bit8u)(out & 0xFF))) {
+		if (!writeBit8u((Bit8u)(out & 0x00FF))) {
 			return false;
 		}
 		return true;
 	}
 
 	bool File::writeBit32u(Bit32u out) {
-		if (!writeBit8u((Bit8u)((out >> 24) & 0xFF))) {
+		if (!writeBit8u((Bit8u)((out & 0xFF000000) >> 24))) {
 			return false;
 		}
-		if (!writeBit8u((Bit8u)((out >> 16) & 0xFF))) {
+		if (!writeBit8u((Bit8u)((out & 0x00FF0000) >> 16))) {
 			return false;
 		}
-		if (!writeBit8u((Bit8u)((out >> 8) & 0xFF))) {
+		if (!writeBit8u((Bit8u)((out & 0x0000FF00) >> 8))) {
 			return false;
 		}
-		if (!writeBit8u((Bit8u)(out & 0xFF))) {
+		if (!writeBit8u((Bit8u)(out & 0x000000FF))) {
 			return false;
 		}
 		return true;





More information about the Scummvm-git-logs mailing list