diff options
| -rw-r--r-- | scumm/debugger.cpp | 12 | ||||
| -rw-r--r-- | scumm/debugger.h | 1 | 
2 files changed, 12 insertions, 1 deletions
| diff --git a/scumm/debugger.cpp b/scumm/debugger.cpp index d3442eb784..b19aae44d4 100644 --- a/scumm/debugger.cpp +++ b/scumm/debugger.cpp @@ -112,6 +112,7 @@ void ScummDebugger::attach(Scumm *s, char *entry) {  		DCmd_Register("hide", &ScummDebugger::Cmd_Hide);  		DCmd_Register("imuse_multimidi", &ScummDebugger::Cmd_ImuseMultiMidi); +		DCmd_Register("imuse_panic", &ScummDebugger::Cmd_ImusePanic);  	}  } @@ -365,7 +366,8 @@ bool ScummDebugger::Cmd_Restart(int argc, const char **argv) {  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")); +		if (_s->_imuse) +			_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|off' to switch\n"); @@ -373,6 +375,14 @@ bool ScummDebugger::Cmd_ImuseMultiMidi (int argc, const char **argv) {  	}  } +bool ScummDebugger::Cmd_ImusePanic (int argc, const char **argv) { +	Debug_Printf ("AAAIIIEEEEEE!\n"); +	Debug_Printf ("Shutting down all music tracks\n"); +	if (_s->_imuse) +		_s->_imuse->stop_all_sounds(); +	return true; +} +  bool ScummDebugger::Cmd_Room(int argc, const char **argv) {  	if (argc > 1) {  		int room = atoi(argv[1]); diff --git a/scumm/debugger.h b/scumm/debugger.h index e33015b617..834a69b19d 100644 --- a/scumm/debugger.h +++ b/scumm/debugger.h @@ -95,6 +95,7 @@ protected:  	bool Cmd_Hide(int argc, const char **argv);  	bool Cmd_ImuseMultiMidi (int argc, const char **argv); +	bool Cmd_ImusePanic (int argc, const char **argv);  	void printBox(int box);  	void drawBox(int box); | 
