Added imuse_multimidi to debugger
svn-id: r7614
This commit is contained in:
parent
3576b8e168
commit
fcc11d19fa
3 changed files with 25 additions and 0 deletions
|
@ -22,6 +22,7 @@
|
||||||
#include "scumm.h"
|
#include "scumm.h"
|
||||||
#include "sound.h"
|
#include "sound.h"
|
||||||
#include "actor.h"
|
#include "actor.h"
|
||||||
|
#include "imuse.h"
|
||||||
#include "debugger.h"
|
#include "debugger.h"
|
||||||
#include "common/util.h"
|
#include "common/util.h"
|
||||||
#include "common/file.h"
|
#include "common/file.h"
|
||||||
|
@ -98,6 +99,8 @@ void ScummDebugger::attach(Scumm *s, char *entry) {
|
||||||
|
|
||||||
DCmd_Register("show", &ScummDebugger::Cmd_Show);
|
DCmd_Register("show", &ScummDebugger::Cmd_Show);
|
||||||
DCmd_Register("hide", &ScummDebugger::Cmd_Hide);
|
DCmd_Register("hide", &ScummDebugger::Cmd_Hide);
|
||||||
|
|
||||||
|
DCmd_Register("imuse_multimidi", &ScummDebugger::Cmd_ImuseMultiMidi);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -354,6 +357,16 @@ bool ScummDebugger::Cmd_Restart(int argc, const char **argv) {
|
||||||
return false;
|
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) {
|
bool ScummDebugger::Cmd_Room(int argc, const char **argv) {
|
||||||
if (argc > 1) {
|
if (argc > 1) {
|
||||||
int room = atoi(argv[1]);
|
int room = atoi(argv[1]);
|
||||||
|
|
|
@ -93,6 +93,8 @@ protected:
|
||||||
bool Cmd_Show(int argc, const char **argv);
|
bool Cmd_Show(int argc, const char **argv);
|
||||||
bool Cmd_Hide(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 printBox(int box);
|
||||||
void drawBox(int box);
|
void drawBox(int box);
|
||||||
|
|
||||||
|
|
|
@ -1654,6 +1654,16 @@ uint32 IMuseInternal::property(int prop, uint32 value) {
|
||||||
|
|
||||||
case IMuse::PROP_MULTI_MIDI:
|
case IMuse::PROP_MULTI_MIDI:
|
||||||
_enable_multi_midi = (value > 0);
|
_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;
|
break;
|
||||||
|
|
||||||
case IMuse::PROP_OLD_ADLIB_INSTRUMENTS:
|
case IMuse::PROP_OLD_ADLIB_INSTRUMENTS:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue