[Scummvm-cvs-logs] CVS: scummvm/scumm debugger.cpp,1.40,1.41 debugger.h,1.21,1.22 imuse.cpp,2.41,2.42

Jamieson Christian jamieson630 at users.sourceforge.net
Sat May 17 12:04:08 CEST 2003


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

Modified Files:
	debugger.cpp debugger.h imuse.cpp 
Log Message:
Added imuse_multimidi to debugger

Index: debugger.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/debugger.cpp,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -d -r1.40 -r1.41
--- debugger.cpp	16 May 2003 00:19:30 -0000	1.40
+++ debugger.cpp	17 May 2003 19:03:25 -0000	1.41
@@ -22,6 +22,7 @@
 #include "scumm.h"
 #include "sound.h"
 #include "actor.h"
+#include "imuse.h"
 #include "debugger.h"
 #include "common/util.h"
 #include "common/file.h"
@@ -98,6 +99,8 @@
 
 		DCmd_Register("show", &ScummDebugger::Cmd_Show);
 		DCmd_Register("hide", &ScummDebugger::Cmd_Hide);
+
+		DCmd_Register("imuse_multimidi", &ScummDebugger::Cmd_ImuseMultiMidi);
 	}
 }
 
@@ -352,6 +355,16 @@
 	
 	_detach_now = true;
 	return false;
+}
+
+bool ScummDebugger::Cmd_ImuseMultiMidi (int argc, const char **argv) {
+	if (argc > 1) {
+		_s->_imuse->property (IMuse::PROP_MULTI_MIDI, !strcmp (argv[1], "1") || !strcmp (argv[1], "on") || !strcmp (argv[1], "true"));
+		return false;
+	} else {
+		Debug_Printf("Use 'imuse_multimidi <on/true/1 | off/false/0>' to switch\n");
+		return true;
+	}
 }
 
 bool ScummDebugger::Cmd_Room(int argc, const char **argv) {

Index: debugger.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/debugger.h,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- debugger.h	14 May 2003 00:35:08 -0000	1.21
+++ debugger.h	17 May 2003 19:03:25 -0000	1.22
@@ -92,6 +92,8 @@
 
 	bool Cmd_Show(int argc, const char **argv);
 	bool Cmd_Hide(int argc, const char **argv);
+
+	bool Cmd_ImuseMultiMidi (int argc, const char **argv);
 	
 	void printBox(int box);
 	void drawBox(int box);

Index: imuse.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/imuse.cpp,v
retrieving revision 2.41
retrieving revision 2.42
diff -u -d -r2.41 -r2.42
--- imuse.cpp	17 May 2003 17:20:26 -0000	2.41
+++ imuse.cpp	17 May 2003 19:03:25 -0000	2.42
@@ -1654,6 +1654,16 @@
 
 	case IMuse::PROP_MULTI_MIDI:
 		_enable_multi_midi = (value > 0);
+		if (!_enable_multi_midi && _midi_native && _midi_adlib) {
+			MidiDriver *driver = _midi_adlib;
+			_midi_adlib = NULL;
+			int i;
+			for (i = 0; i < ARRAYSIZE(_players); ++i) {
+				if (_players[i]._active && _players[i]._midi == driver)
+					_players[i].clear();
+			}
+			driver->close();
+		}
 		break;
 
 	case IMuse::PROP_OLD_ADLIB_INSTRUMENTS:





More information about the Scummvm-git-logs mailing list