[Scummvm-cvs-logs] CVS: scummvm/scumm debugger.cpp,1.76,1.77 debugger.h,1.25,1.26 scumm.h,1.282,1.283
Jamieson Christian
jamieson630 at users.sourceforge.net
Mon Aug 11 07:51:09 CEST 2003
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1:/tmp/cvs-serv7924/scummvm/scumm
Modified Files:
debugger.cpp debugger.h scumm.h
Log Message:
Expanded iMuse debugger commands. All iMuse
commands are now under "imuse", and underscores
have been removed.
imuse panic - Stop all music tracks
imuse multimidi on/off - Set multimidi
imuse play # - Play a sound resource
imuse play random - Play a random sound resource
imuse stop # - Stop a music resource
imuse stop all - Stop all music resources
Note that "play #" and "play random" only attempt
to play a sound resource. If the resource is not
a music resource or is in a format not supported by
the current music driver, it won't play.
You can use this as a mini jukebox, but be sure
you're in a room with minimal activity. The
goal is to minimize interference from the scripts
while playing sounds that are not expected in
that room.
Index: debugger.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/debugger.cpp,v
retrieving revision 1.76
retrieving revision 1.77
diff -u -d -r1.76 -r1.77
--- debugger.cpp 10 Aug 2003 11:39:17 -0000 1.76
+++ debugger.cpp 11 Aug 2003 14:48:21 -0000 1.77
@@ -111,8 +111,7 @@
DCmd_Register("show", &ScummDebugger::Cmd_Show);
DCmd_Register("hide", &ScummDebugger::Cmd_Hide);
- DCmd_Register("imuse_multimidi", &ScummDebugger::Cmd_ImuseMultiMidi);
- DCmd_Register("imuse_panic", &ScummDebugger::Cmd_ImusePanic);
+ DCmd_Register("imuse", &ScummDebugger::Cmd_IMuse);
}
}
@@ -364,22 +363,61 @@
return false;
}
-bool ScummDebugger::Cmd_ImuseMultiMidi (int argc, const char **argv) {
- if (argc > 1) {
- 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");
+bool ScummDebugger::Cmd_IMuse (int argc, const char **argv) {
+ if (!_s->_imuse) {
+ Debug_Printf ("No iMuse engine is active.\n");
return true;
}
-}
-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();
+ if (argc > 1) {
+ if (!strcmp (argv[1], "panic")) {
+ _s->_imuse->stop_all_sounds();
+ Debug_Printf ("AAAIIIEEEEEE!\n");
+ Debug_Printf ("Shutting down all music tracks\n");
+ return true;
+ } else if (!strcmp (argv[1], "multimidi")) {
+ if (argc > 2 && (!strcmp (argv[2], "on") || !strcmp (argv[2], "off"))) {
+ _s->_imuse->property (IMuse::PROP_MULTI_MIDI, !strcmp (argv[2], "on"));
+ Debug_Printf ("MultiMidi mode switched %s.\n", argv[2]);
+ } else {
+ Debug_Printf ("Specify \"on\" or \"off\" to switch.\n");
+ }
+ return true;
+ } else if (!strcmp (argv[1], "play")) {
+ if (argc > 2 && (!strcmp (argv[2], "random") || atoi (argv[2]) != 0)) {
+ int sound = atoi (argv[2]);
+ if (!strcmp (argv[2], "random")) {
+ Debug_Printf ("Selecting from %d songs...\n", _s->getNumSounds());
+ sound = _s->_rnd.getRandomNumber (_s->getNumSounds());
+ }
+ _s->ensureResourceLoaded (rtSound, sound);
+ _s->_imuse->startSound (sound);
+ Debug_Printf ("Attempted to start music %d.\n", sound);
+ } else {
+ Debug_Printf ("Specify a music resource # from 1-255.\n");
+ }
+ return true;
+ } else if (!strcmp (argv[1], "stop")) {
+ if (argc > 2 && (!strcmp (argv[2], "all") || atoi (argv[2]) != 0)) {
+ if (!strcmp (argv[2], "all")) {
+ _s->_imuse->stop_all_sounds();
+ Debug_Printf ("Shutting down all music tracks.\n");
+ } else {
+ _s->_imuse->stopSound (atoi (argv[2]));
+ Debug_Printf ("Attempted to stop music %d.\n", atoi (argv[2]));
+ }
+ } else {
+ Debug_Printf ("Specify a music resource # or \"all\".\n");
+ }
+ return true;
+ }
+ }
+
+ Debug_Printf ("Available iMuse commands:\n");
+ Debug_Printf (" panic - Stop all music tracks\n");
+ Debug_Printf (" multimidi on/off - Toggle dual MIDI drivers\n");
+ Debug_Printf (" play # - Play a music resource\n");
+ Debug_Printf (" stop # - Stop a music resource\n");
return true;
}
Index: debugger.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/debugger.h,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -d -r1.25 -r1.26
--- debugger.h 10 Aug 2003 11:39:17 -0000 1.25
+++ debugger.h 11 Aug 2003 14:48:21 -0000 1.26
@@ -94,8 +94,7 @@
bool Cmd_Show(int argc, const char **argv);
bool Cmd_Hide(int argc, const char **argv);
- bool Cmd_ImuseMultiMidi (int argc, const char **argv);
- bool Cmd_ImusePanic (int argc, const char **argv);
+ bool Cmd_IMuse (int argc, const char **argv);
void printBox(int box);
void drawBox(int box);
Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.h,v
retrieving revision 1.282
retrieving revision 1.283
diff -u -d -r1.282 -r1.283
--- scumm.h 8 Aug 2003 11:32:40 -0000 1.282
+++ scumm.h 11 Aug 2003 14:48:21 -0000 1.283
@@ -407,10 +407,10 @@
protected:
byte _fastMode;
+public:
/* Random number generation */
RandomSource _rnd;
-public:
/* Core variable definitions */
byte _gameId;
@@ -453,6 +453,7 @@
public:
int _numCostumes; // FIXME - should be protected, used by Actor::remapActorPalette
+ int getNumSounds() const { return _numSounds; }
BaseCostumeRenderer* _costumeRenderer;
char *_audioNames;
More information about the Scummvm-git-logs
mailing list