diff options
author | Eugene Sandulenko | 2019-12-07 00:00:26 +0100 |
---|---|---|
committer | Eugene Sandulenko | 2019-12-07 00:00:26 +0100 |
commit | 5e00b3cfabb308b2a6756251e68037287277b4b8 (patch) | |
tree | a428045f1a85bda09daa48838a2bb9e0f0f13159 /engines | |
parent | 2d7f1209b3bb5c584f850f650c06b7724bce1fee (diff) | |
download | scummvm-rg350-5e00b3cfabb308b2a6756251e68037287277b4b8.tar.gz scummvm-rg350-5e00b3cfabb308b2a6756251e68037287277b4b8.tar.bz2 scummvm-rg350-5e00b3cfabb308b2a6756251e68037287277b4b8.zip |
DIRECTOR: Implement 'compileonly' debug flag
Diffstat (limited to 'engines')
-rw-r--r-- | engines/director/director.cpp | 1 | ||||
-rw-r--r-- | engines/director/director.h | 15 | ||||
-rw-r--r-- | engines/director/lingo/lingo.cpp | 10 |
3 files changed, 15 insertions, 11 deletions
diff --git a/engines/director/director.cpp b/engines/director/director.cpp index f2ad5db3cc..389db0f015 100644 --- a/engines/director/director.cpp +++ b/engines/director/director.cpp @@ -43,6 +43,7 @@ DirectorEngine::DirectorEngine(OSystem *syst, const DirectorGameDescription *gam DebugMan.addDebugChannel(kDebugLingoExec, "lingoexec", "Lingo Execution"); DebugMan.addDebugChannel(kDebugLingoCompile, "lingocompile", "Lingo Compilation"); DebugMan.addDebugChannel(kDebugLingoParse, "lingoparse", "Lingo code parsing"); + DebugMan.addDebugChannel(kDebugLingoCompileOnly, "compileonly", "Skip Lingo code execution"); DebugMan.addDebugChannel(kDebugLoading, "loading", "Loading"); DebugMan.addDebugChannel(kDebugImages, "images", "Image drawing"); DebugMan.addDebugChannel(kDebugText, "text", "Text rendering"); diff --git a/engines/director/director.h b/engines/director/director.h index e199ff5942..26824b44b5 100644 --- a/engines/director/director.h +++ b/engines/director/director.h @@ -56,13 +56,14 @@ class Score; class Cast; enum { - kDebugLingoExec = 1 << 0, - kDebugLingoCompile = 1 << 1, - kDebugLoading = 1 << 2, - kDebugImages = 1 << 3, - kDebugText = 1 << 4, - kDebugEvents = 1 << 5, - kDebugLingoParse = 1 << 6 + kDebugLingoExec = 1 << 0, + kDebugLingoCompile = 1 << 1, + kDebugLoading = 1 << 2, + kDebugImages = 1 << 3, + kDebugText = 1 << 4, + kDebugEvents = 1 << 5, + kDebugLingoParse = 1 << 6, + kDebugLingoCompileOnly = 1 << 7 }; struct MovieReference { diff --git a/engines/director/lingo/lingo.cpp b/engines/director/lingo/lingo.cpp index 24cc5fe76b..8dde6dbfe7 100644 --- a/engines/director/lingo/lingo.cpp +++ b/engines/director/lingo/lingo.cpp @@ -650,10 +650,12 @@ void Lingo::runTests() { _hadError = false; addCode(script, kMovieScript, counter); - if (!_hadError) - executeScript(kMovieScript, counter, 0); - else - debug(">> Skipping execution"); + if (!debugChannelSet(-1, kDebugLingoCompileOnly)) { + if (!_hadError) + executeScript(kMovieScript, counter, 0); + else + debug(">> Skipping execution"); + } free(script); |