aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/console.cpp
diff options
context:
space:
mode:
authorColin Snover2017-03-12 16:03:06 -0500
committerColin Snover2017-04-23 13:07:25 -0500
commit8bdfb7889572b680add712d461ebd868329e42b9 (patch)
treeb9d44facc720bbc1a64e77b38666c3a16de5fb47 /engines/sci/console.cpp
parenteb9965274d18d6bc23c976fe7e7b72747001fb8e (diff)
downloadscummvm-rg350-8bdfb7889572b680add712d461ebd868329e42b9.tar.gz
scummvm-rg350-8bdfb7889572b680add712d461ebd868329e42b9.tar.bz2
scummvm-rg350-8bdfb7889572b680add712d461ebd868329e42b9.zip
SCI32: Add debugger command to list digital audio samples
Diffstat (limited to 'engines/sci/console.cpp')
-rw-r--r--engines/sci/console.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/engines/sci/console.cpp b/engines/sci/console.cpp
index b8e6097c06..d67bd694ab 100644
--- a/engines/sci/console.cpp
+++ b/engines/sci/console.cpp
@@ -169,6 +169,7 @@ Console::Console(SciEngine *engine) : GUI::Debugger(),
registerCmd("sfx01_track", WRAP_METHOD(Console, cmdSfx01Track));
registerCmd("show_instruments", WRAP_METHOD(Console, cmdShowInstruments));
registerCmd("map_instrument", WRAP_METHOD(Console, cmdMapInstrument));
+ registerCmd("audio_list", WRAP_METHOD(Console, cmdAudioList));
// Script
registerCmd("addresses", WRAP_METHOD(Console, cmdAddresses));
registerCmd("registers", WRAP_METHOD(Console, cmdRegisters));
@@ -418,6 +419,7 @@ bool Console::cmdHelp(int argc, const char **argv) {
debugPrintf(" sfx01_track - Dumps a track of a SCI01 song\n");
debugPrintf(" show_instruments - Shows the instruments of a specific song, or all songs\n");
debugPrintf(" map_instrument - Dynamically maps an MT-32 instrument to a GM instrument\n");
+ debugPrintf(" audio_list - Lists currently active digital audio samples (SCI2.1+)\n");
debugPrintf("\n");
debugPrintf("Script:\n");
debugPrintf(" addresses - Provides information on how to pass addresses\n");
@@ -1318,6 +1320,21 @@ bool Console::cmdMapInstrument(int argc, const char **argv) {
return true;
}
+bool Console::cmdAudioList(int argc, const char **argv) {
+#ifdef ENABLE_SCI32
+ if (_engine->_audio32) {
+ debugPrintf("Audio list (%d active channels):\n", _engine->_audio32->getNumActiveChannels());
+ _engine->_audio32->printAudioList(this);
+ } else {
+ debugPrintf("This SCI version does not have a software digital audio mixer\n");
+ }
+#else
+ debugPrintf("SCI32 isn't included in this compiled executable\n");
+#endif
+
+ return true;
+}
+
bool Console::cmdSaveGame(int argc, const char **argv) {
if (argc != 2) {
debugPrintf("Saves the current game state to the hard disk\n");