diff options
-rw-r--r-- | base/engine.cpp | 43 | ||||
-rw-r--r-- | scumm/debugger.cpp | 9 | ||||
-rw-r--r-- | simon/debugger.cpp | 7 | ||||
-rw-r--r-- | simon/simon.cpp | 10 |
4 files changed, 27 insertions, 42 deletions
diff --git a/base/engine.cpp b/base/engine.cpp index 22b80e1153..39f1ac2c9a 100644 --- a/base/engine.cpp +++ b/base/engine.cpp @@ -32,8 +32,6 @@ /* FIXME - BIG HACK for MidiEmu */ Engine *g_engine = 0; -uint16 g_debugLevel = 0; - Engine::Engine(OSystem *syst) : _system(syst), _gameDataPath(ConfMan.get("path")) { g_engine = this; @@ -44,8 +42,6 @@ Engine::Engine(OSystem *syst) // Add default file directory File::addDefaultDirectory(_gameDataPath); - g_debugLevel = ConfMan.getInt("debuglevel"); - _saveFileMan = _system->getSavefileManager(); } @@ -162,16 +158,7 @@ void CDECL warning(const char *s, ...) { #endif } -void CDECL debug(int level, const char *s, ...) { - char buf[STRINGBUFLEN]; - va_list va; - - if (level > g_debugLevel) - return; - - va_start(va, s); - vsprintf(buf, s, va); - va_end(va); +static void debugHelper(const char *buf) { #ifndef _WIN32_WCE printf("%s\n", buf); #endif @@ -190,27 +177,29 @@ void CDECL debug(int level, const char *s, ...) { fflush(stdout); } -void CDECL debug(const char *s, ...) { +void CDECL debug(int level, const char *s, ...) { char buf[STRINGBUFLEN]; va_list va; + if (level > ConfMan.getInt("debuglevel")) + return; + va_start(va, s); vsprintf(buf, s, va); va_end(va); - printf("%s\n", buf); + + debugHelper(buf); +} -#if defined( USE_WINDBG ) - strcat(buf, "\n"); -#if defined( _WIN32_WCE ) - TCHAR buf_unicode[1024]; - MultiByteToWideChar(CP_ACP, 0, buf, strlen(buf) + 1, buf_unicode, sizeof(buf_unicode)); - OutputDebugString(buf_unicode); -#else - OutputDebugString(buf); -#endif -#endif +void CDECL debug(const char *s, ...) { + char buf[STRINGBUFLEN]; + va_list va; - fflush(stdout); + va_start(va, s); + vsprintf(buf, s, va); + va_end(va); + + debugHelper(buf); } void checkHeap() { diff --git a/scumm/debugger.cpp b/scumm/debugger.cpp index a362719ad6..d99d20d81d 100644 --- a/scumm/debugger.cpp +++ b/scumm/debugger.cpp @@ -20,6 +20,7 @@ */ #include "stdafx.h" +#include "common/config-manager.h" #include "common/file.h" #include "common/str.h" #include "common/util.h" @@ -35,8 +36,6 @@ #include "common/debugger.cpp" -extern uint16 g_debugLevel; - namespace Scumm { void CDECL debugC(int channel, const char *s, ...) { @@ -45,7 +44,7 @@ void CDECL debugC(int channel, const char *s, ...) { // FIXME: Still spew all debug at -d9, for crashes in startup etc. // Add setting from commandline ( / abstract channel interface) - if (!(g_scumm->_debugFlags & channel) && (g_debugLevel < 9)) + if (!(g_scumm->_debugFlags & channel) && (ConfMan.getInt("debuglevel") < 9)) return; va_start(va, s); @@ -593,10 +592,10 @@ bool ScummDebugger::Cmd_DebugLevel(int argc, const char **argv) { if (_vm->_debugMode == false) DebugPrintf("Debugging is not enabled at this time\n"); else - DebugPrintf("Debugging is currently set at level %d\n", g_debugLevel); + DebugPrintf("Debugging is currently set at level %d\n", ConfMan.getInt("debuglevel")); } else { // set level int level = atoi(argv[1]); - g_debugLevel = level; + ConfMan.set("debuglevel", level, Common::ConfigManager::kTransientDomain); if (level > 0) { _vm->_debugMode = true; DebugPrintf("Debug level set to level %d\n", level); diff --git a/simon/debugger.cpp b/simon/debugger.cpp index 57b373e1db..d498daf171 100644 --- a/simon/debugger.cpp +++ b/simon/debugger.cpp @@ -20,12 +20,11 @@ */ #include "stdafx.h" +#include "common/config-manager.h" #include "common/debugger.cpp" #include "simon/debugger.h" #include "simon/simon.h" -extern uint16 g_debugLevel; - namespace Simon { Debugger::Debugger(SimonEngine *vm) @@ -88,10 +87,10 @@ bool Debugger::Cmd_DebugLevel(int argc, const char **argv) { if (_vm->_debugMode == false) DebugPrintf("Debugging is not enabled at this time\n"); else - DebugPrintf("Debugging is currently set at level %d\n", g_debugLevel); + DebugPrintf("Debugging is currently set at level %d\n", ConfMan.getInt("debuglevel")); } else { // set level int level = atoi(argv[1]); - g_debugLevel = level; + ConfMan.set("debuglevel", level, Common::ConfigManager::kTransientDomain); if (level > 0 && level < 10) { _vm->_debugMode = true; DebugPrintf("Debug level set to level %d\n", level); diff --git a/simon/simon.cpp b/simon/simon.cpp index 58cc7b9103..61feee10ba 100644 --- a/simon/simon.cpp +++ b/simon/simon.cpp @@ -45,8 +45,6 @@ #include "globals.h" #endif -extern uint16 g_debugLevel; - struct SimonGameSettings { const char *name; const char *description; @@ -4004,13 +4002,13 @@ int SimonEngine::go() { _continous_vgascript = false; _draw_images_debug=false; - if (g_debugLevel == 2) + if (ConfMan.getInt("debuglevel") == 2) _continous_mainscript = true; - if (g_debugLevel == 3) + if (ConfMan.getInt("debuglevel") == 3) _continous_vgascript = true; - if (g_debugLevel == 4) + if (ConfMan.getInt("debuglevel") == 4) _start_mainscript = true; - if (g_debugLevel == 5) + if (ConfMan.getInt("debuglevel") == 5) _start_vgascript = true; if (_game & GF_TALKIE) { |