[Scummvm-cvs-logs] CVS: scummvm/scumm sound.cpp,1.383,1.384

Travis Howell kirben at users.sourceforge.net
Mon Sep 6 00:32:14 CEST 2004


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

Modified Files:
	sound.cpp 
Log Message:

Skip extra speech header in HE 80+ games


Index: sound.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/sound.cpp,v
retrieving revision 1.383
retrieving revision 1.384
diff -u -d -r1.383 -r1.384
--- sound.cpp	5 Sep 2004 03:46:00 -0000	1.383
+++ sound.cpp	6 Sep 2004 07:31:51 -0000	1.384
@@ -645,12 +645,22 @@
 		}
 
 		if (_vm->_features & GF_HUMONGOUS) {
+			int extra = 0;;
 			_sfxMode |= mode;
 
-			// SKIP TALK (8) HSHD (22) and SDAT (8)
-			_sfxFile->seek(offset + 40, SEEK_SET);
+			// SKIP TALK (8) HSHD (24)
+			_sfxFile->seek(offset + 32, SEEK_SET);
+			if (_vm->_heversion >= 80) {
+				// SKIP SBNG
+				_sfxFile->seek(+4, SEEK_CUR);
+				extra = _sfxFile->readUint32BE();
+				_sfxFile->seek(+extra, SEEK_CUR);
+				extra += 8;
+			}
+			// SKIP SDAT (8)
+			_sfxFile->seek(+8, SEEK_CUR);
 
-			size = b - 40;
+			size = b - 40 - extra;
 			sound = (byte *)malloc(size);
 			_sfxFile->read(sound, size);
 			_vm->_mixer->playRaw(handle, sound, size, 11000, SoundMixer::FLAG_UNSIGNED | SoundMixer::FLAG_AUTOFREE);





More information about the Scummvm-git-logs mailing list