[Scummvm-cvs-logs] CVS: scummvm/scumm akos.cpp,1.96,1.97 resource.cpp,1.180,1.181 saveload.cpp,1.132,1.133 script_v6.cpp,1.246,1.247 script_v8.cpp,2.216,2.217 scummvm.cpp,2.534,2.535 sound.cpp,1.308,1.309 string.cpp,1.180,1.181 bundle.cpp,1.53,NONE bundle.h,1.23,NONE imuse_digi.cpp,1.113,NONE imuse_digi.h,1.32,NONE

Pawel Kolodziejski aquadran at users.sourceforge.net
Tue Jan 6 09:29:07 CET 2004


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv18225

Modified Files:
	akos.cpp resource.cpp saveload.cpp script_v6.cpp script_v8.cpp 
	scummvm.cpp sound.cpp string.cpp 
Removed Files:
	bundle.cpp bundle.h imuse_digi.cpp imuse_digi.h 
Log Message:
synced imuse digital with local tree

Index: akos.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/akos.cpp,v
retrieving revision 1.96
retrieving revision 1.97
diff -u -d -r1.96 -r1.97
--- akos.cpp	6 Jan 2004 12:45:29 -0000	1.96
+++ akos.cpp	6 Jan 2004 17:28:28 -0000	1.97
@@ -26,6 +26,7 @@
 #include "scumm/akos.h"
 #include "scumm/bomp.h"
 #include "scumm/imuse.h"
+#include "scumm/imuse_digi/dimuse.h"
 #include "scumm/sound.h"
 
 namespace Scumm {
@@ -1328,7 +1329,7 @@
 	case 3:
 		if (param_1 != 0) {
 			if (_features & GF_DIGI_IMUSE)
-				_sound->playSound(param_1);
+				_imuseDigital->startSfx(param_1);
 			else
 				_sound->addSoundToQueue(param_1);
 		}

Index: resource.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/resource.cpp,v
retrieving revision 1.180
retrieving revision 1.181
diff -u -d -r1.180 -r1.181
--- resource.cpp	6 Jan 2004 12:45:30 -0000	1.180
+++ resource.cpp	6 Jan 2004 17:28:28 -0000	1.181
@@ -23,10 +23,9 @@
 #include "stdafx.h"
 #include "common/map.h"
 #include "common/str.h"
-#include "scumm/bundle.h"
 #include "scumm/dialogs.h"
 #include "scumm/imuse.h"
-#include "scumm/imuse_digi.h"
+#include "scumm/imuse_digi/dimuse.h"
 #include "scumm/object.h"
 #include "scumm/resource.h"
 #include "scumm/scumm.h"
@@ -228,8 +227,7 @@
 	if (_version == 8) {
 		char result;
 
-		_imuseDigital->_bundle->closeVoiceFile();
-		_imuseDigital->_bundle->closeMusicFile();
+		_imuseDigital->closeBundleFiles();
 
 #ifdef MACOSX
 		sprintf(buf, "Cannot find file: '%s'\nPlease insert disc %d.\nHit OK to retry, Cancel to exit", filename, disknum);

Index: saveload.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/saveload.cpp,v
retrieving revision 1.132
retrieving revision 1.133
diff -u -d -r1.132 -r1.133
--- saveload.cpp	6 Jan 2004 12:45:30 -0000	1.132
+++ saveload.cpp	6 Jan 2004 17:28:28 -0000	1.133
@@ -26,7 +26,7 @@
 
 #include "scumm/actor.h"
 #include "scumm/charset.h"
-#include "scumm/imuse_digi.h"
+#include "scumm/imuse_digi/dimuse.h"
 #include "scumm/imuse.h"
 #include "scumm/object.h"
 #include "scumm/resource.h"
@@ -125,8 +125,6 @@
 	memcpy(_saveLoadName, hdr.name, sizeof(hdr.name));
 
 	_sound->stopAllSounds();
-	if (_imuseDigital)
-		_imuseDigital->stopBundleMusic();
 	_sound->stopCD();
 
 	_sound->pauseSounds(true);

Index: script_v6.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v6.cpp,v
retrieving revision 1.246
retrieving revision 1.247
diff -u -d -r1.246 -r1.247
--- script_v6.cpp	6 Jan 2004 12:45:30 -0000	1.246
+++ script_v6.cpp	6 Jan 2004 17:28:28 -0000	1.247
@@ -28,6 +28,7 @@
 #include "scumm/actor.h"
 #include "scumm/charset.h"
 #include "scumm/imuse.h"
+#include "scumm/imuse_digi/dimuse.h"
 #include "scumm/intern.h"
 #include "scumm/object.h"
 #include "scumm/resource.h"
@@ -936,7 +937,7 @@
 		pop(); // offset which seems to always be zero
 
 	if (_features & GF_DIGI_IMUSE)
-		_sound->playSound(pop());
+		_imuseDigital->startSfx(pop());
 	else
 		_sound->addSoundToQueue(pop());
 }
@@ -947,7 +948,7 @@
 
 void ScummEngine_v6::o6_startMusic() {
 	if (_features & GF_DIGI_IMUSE)
-		_sound->playSound(pop());
+		error("o6_startMusic() It shouldn't be called here for imuse digital");
 	else
 		_sound->addSoundToQueue(pop());
 }

Index: script_v8.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v8.cpp,v
retrieving revision 2.216
retrieving revision 2.217
diff -u -d -r2.216 -r2.217
--- script_v8.cpp	6 Jan 2004 12:45:30 -0000	2.216
+++ script_v8.cpp	6 Jan 2004 17:28:28 -0000	2.217
@@ -24,7 +24,7 @@
 #include "scumm/actor.h"
 #include "scumm/akos.h"
 #include "scumm/charset.h"
-#include "scumm/imuse_digi.h"
+#include "scumm/imuse_digi/dimuse.h"
 #include "scumm/intern.h"
 #include "scumm/object.h"
 #include "scumm/resource.h"
@@ -1444,14 +1444,9 @@
 		break;
 	}
 	case 0xDA:		// lipSyncWidth
+		push(_imuseDigital->getCurVoiceLipSyncWidth());
 	case 0xDB:		// lipSyncHeight
-		{
-		// TODO - get lip sync data for the currently active voice
-		// HACK - return random values for now, to make things look half decent
-		int val = _rnd.getRandomNumber(255);
-//		warning("o8_kernelGetFunctions: lipSync(case 0x%x, len %d, val %d)", args[0], len, val);
-		push(val);
-		}
+		push(_imuseDigital->getCurVoiceLipSyncHeight());
 		break;
 	case 0xDC:		// actorTalkAnimation
 		{
@@ -1482,18 +1477,12 @@
 		}
 		break;
 	case 0xE1:		// imGetMusicPosition
-		warning("o8_kernelGetFunctions: imGetMusicPosition(stub)");
-		// FIXME - get this stuff to be properly implemented
-		push(_imuseDigital->_bundleSongPosInMs);
+		push(_imuseDigital->getCurMusicPosInMs());
 		break;
 	case 0xE2:		// musicLipSyncWidth
+		push(_imuseDigital->getCurMusicLipSyncWidth());
 	case 0xE3:		// musicLipSyncHeight
-		{
-		// TODO - get lip sync data for the currently active music
-		int val = _rnd.getRandomNumber(255);
-//		warning("o8_kernelGetFunctions: musicLipSync(case 0x%x, len %d, val %d)", args[0], len, val);
-		push(val);
-		}
+		push(_imuseDigital->getCurMusicLipSyncHeight());
 		break;
 	default:
 		error("o8_kernelGetFunctions: default case 0x%x (len = %d)", args[0], len);

Index: scummvm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scummvm.cpp,v
retrieving revision 2.534
retrieving revision 2.535
diff -u -d -r2.534 -r2.535
--- scummvm.cpp	6 Jan 2004 12:45:30 -0000	2.534
+++ scummvm.cpp	6 Jan 2004 17:28:28 -0000	2.535
@@ -40,7 +40,7 @@
 #include "scumm/costume.h"
 #include "scumm/debugger.h"
 #include "scumm/dialogs.h"
-#include "scumm/imuse_digi.h"
+#include "scumm/imuse_digi/dimuse.h"
 #include "scumm/imuse.h"
 #include "scumm/intern.h"
 #include "scumm/object.h"

Index: sound.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/sound.cpp,v
retrieving revision 1.308
retrieving revision 1.309
diff -u -d -r1.308 -r1.309
--- sound.cpp	6 Jan 2004 12:45:30 -0000	1.308
+++ sound.cpp	6 Jan 2004 17:28:28 -0000	1.309
@@ -23,7 +23,7 @@
 #include "stdafx.h"
 #include "scumm/actor.h"
 #include "scumm/imuse.h"
-#include "scumm/imuse_digi.h"
+#include "scumm/imuse_digi/dimuse.h"
 #include "scumm/scumm.h"
 #include "scumm/sound.h"
 
@@ -126,11 +126,6 @@
 		return;
 	}
 
-	if (_scumm->_features & GF_DIGI_IMUSE) {
-		_scumm->_musicEngine->startSound(soundID);
-		return;
-	}
-
 	// Support for SFX in Monkey Island 1, Mac version
 	// This is rather hackish right now, but works OK. SFX are not sounding
 	// 100% correct, though, not sure right now what is causing this.
@@ -815,7 +810,6 @@
 
 	AudioStream *input;
 	
-
 	if (file_size > 0) {
 		if (_vorbis_mode) {
 #ifdef USE_VORBIS
@@ -831,7 +825,8 @@
 	}
 
 	if (_scumm->_imuseDigital) {
-		_scumm->_imuseDigital->startSound(kTalkSoundID, 0, input);
+		_scumm->_imuseDigital->stopSound(kTalkSoundID);
+		_scumm->_imuseDigital->startVoice(kTalkSoundID, input);
 	} else {
 		_scumm->_mixer->playInputStream(handle, input, false, 255, 0, id);
 	}

Index: string.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/string.cpp,v
retrieving revision 1.180
retrieving revision 1.181
diff -u -d -r1.180 -r1.181
--- string.cpp	6 Jan 2004 12:45:30 -0000	1.180
+++ string.cpp	6 Jan 2004 17:28:29 -0000	1.181
@@ -28,7 +28,7 @@
 #include "scumm/actor.h"
 #include "scumm/charset.h"
 #include "scumm/dialogs.h"
-#include "scumm/imuse_digi.h"
+#include "scumm/imuse_digi/dimuse.h"
 #include "scumm/verbs.h"
 #include "scumm/sound.h"
 
@@ -921,7 +921,10 @@
 		pointer[j] = 0;
 
 		// Play speech
-		_imuseDigital->playBundleSound(pointer);
+		if (!(_features & GF_DEMO) && (_gameId == GID_CMI)) // CMI demo does not have .IMX for voice
+			strcat(pointer, ".IMX");
+		_imuseDigital->stopSound(kTalkSoundID);
+		_imuseDigital->startVoice(kTalkSoundID, pointer);
 
 		ptr = _transText;
 	}

--- bundle.cpp DELETED ---

--- bundle.h DELETED ---

--- imuse_digi.cpp DELETED ---

--- imuse_digi.h DELETED ---





More information about the Scummvm-git-logs mailing list