diff options
author | James Brown | 2004-01-10 05:20:15 +0000 |
---|---|---|
committer | James Brown | 2004-01-10 05:20:15 +0000 |
commit | 1778b01d765b8290c47324d6befebb9130353973 (patch) | |
tree | 0dfb0c136410c075a4f86a8f51db5c6a9a14499c /scumm/scumm.h | |
parent | ab7db8fb045d36dfcd1d5eb709c0ccc64298512d (diff) | |
download | scummvm-rg350-1778b01d765b8290c47324d6befebb9130353973.tar.gz scummvm-rg350-1778b01d765b8290c47324d6befebb9130353973.tar.bz2 scummvm-rg350-1778b01d765b8290c47324d6befebb9130353973.zip |
Start of debug channel support. TODO: Move this to the common Debugger system?
svn-id: r12289
Diffstat (limited to 'scumm/scumm.h')
-rw-r--r-- | scumm/scumm.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/scumm/scumm.h b/scumm/scumm.h index f9c58f4f19..3ba8d3fba5 100644 --- a/scumm/scumm.h +++ b/scumm/scumm.h @@ -38,6 +38,7 @@ namespace GUI { using GUI::Dialog; class GameDetector; + namespace Scumm { class Actor; @@ -111,6 +112,32 @@ enum ObjectClass { kObjectClassUntouchable = 32 }; +/* SCUMM Debug Channels */ +void CDECL debugC(int level, const char *s, ...); + +struct dbgChannelDesc { + const char *channel, *desc; + uint32 flag; +}; + +enum { + DEBUG_SCRIPTS = 1 << 0, // Track script execution (start/stop/pause) + DEBUG_OPCODES = 1 << 1, // Track opcode invocations + DEBUG_IMUSE = 1 << 2, // Track iMUSE events + DEBUG_RESOURCE = 1 << 3, // Track resource loading / allocation + DEBUG_VARS = 1 << 4 // Track variable changes +}; + + +// Debug channel lookup table for Debugger console +static const dbgChannelDesc debugChannels[] = { + {"SCRIPTS", "Track script execution", DEBUG_SCRIPTS}, + {"OPCODES", "Track opcode execution", DEBUG_OPCODES}, + {"IMUSE", "Track iMUSE events", DEBUG_IMUSE}, + {"RESOURCE", "Track resource loading/management", DEBUG_RESOURCE}, + {"VARS", "Track variable changes", DEBUG_VARS} +}; + struct MemBlkHeader { uint32 size; }; @@ -313,6 +340,7 @@ public: void clearClickedStatus(); // Misc utility functions + uint32 _debugFlags; const char *getGameName() const { return _gameName.c_str(); } const char *getGameDataPath() const; |