aboutsummaryrefslogtreecommitdiff
path: root/engines/mohawk/console.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/mohawk/console.cpp')
-rw-r--r--engines/mohawk/console.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/engines/mohawk/console.cpp b/engines/mohawk/console.cpp
index 80ba710a47..7521bcd194 100644
--- a/engines/mohawk/console.cpp
+++ b/engines/mohawk/console.cpp
@@ -47,6 +47,7 @@ MystConsole::MystConsole(MohawkEngine_Myst *vm) : GUI::Debugger(), _vm(vm) {
DCmd_Register("stopSound", WRAP_METHOD(MystConsole, Cmd_StopSound));
DCmd_Register("playMovie", WRAP_METHOD(MystConsole, Cmd_PlayMovie));
DCmd_Register("disableInitOpcodes", WRAP_METHOD(MystConsole, Cmd_DisableInitOpcodes));
+ DCmd_Register("cache", WRAP_METHOD(MystConsole, Cmd_Cache));
}
MystConsole::~MystConsole() {
@@ -270,6 +271,27 @@ bool MystConsole::Cmd_DisableInitOpcodes(int argc, const char **argv) {
return true;
}
+bool MystConsole::Cmd_Cache(int argc, const char **argv) {
+ if (argc > 2) {
+ DebugPrintf("Usage: cache on/off - Omit parameter to get current state\n");
+ return true;
+ }
+
+ bool state = false;
+
+ if (argc == 1) {
+ state = _vm->getCacheState();
+ } else {
+ if (!scumm_stricmp(argv[1], "on"))
+ state = true;
+
+ _vm->setCacheState(state);
+ }
+
+ DebugPrintf("Cache: %s\n", state ? "Enabled" : "Disabled");
+ return true;
+}
+
RivenConsole::RivenConsole(MohawkEngine_Riven *vm) : GUI::Debugger(), _vm(vm) {
DCmd_Register("changeCard", WRAP_METHOD(RivenConsole, Cmd_ChangeCard));
DCmd_Register("curCard", WRAP_METHOD(RivenConsole, Cmd_CurCard));