diff options
author | Martin Kiewitz | 2016-02-22 14:22:59 +0100 |
---|---|---|
committer | Martin Kiewitz | 2016-02-22 14:24:37 +0100 |
commit | 2c247a03e935027eda91757f5a064d9bd714e791 (patch) | |
tree | b9a016bb58bae2d4abd53c82ddeff05e94465c1e | |
parent | d6881100dd5613c8573f8f8235b93772ae513e49 (diff) | |
download | scummvm-rg350-2c247a03e935027eda91757f5a064d9bd714e791.tar.gz scummvm-rg350-2c247a03e935027eda91757f5a064d9bd714e791.tar.bz2 scummvm-rg350-2c247a03e935027eda91757f5a064d9bd714e791.zip |
SCI: Add hack for Pepper's Adventure in Time CDAUDIO issue
Game checks for file CDAUDIO. Currently the kFileIO(Exists)
code is working pretty slowly on at least Windows. Needs to get
fixed properly by enhancing SaveFileManager().
This is primarily for branch 1.8.0.
-rw-r--r-- | engines/sci/engine/kfile.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/engines/sci/engine/kfile.cpp b/engines/sci/engine/kfile.cpp index f155fe75cb..335763a35f 100644 --- a/engines/sci/engine/kfile.cpp +++ b/engines/sci/engine/kfile.cpp @@ -601,6 +601,16 @@ reg_t kFileIOExists(EngineState *s, int argc, reg_t *argv) { bool exists = false; + if (g_sci->getGameId() == GID_PEPPER) { + // HACK: Special case for Pepper's Adventure in Time + // The game checks like crazy for the file CDAUDIO when entering the game menu. + // On at least Windows that makes the engine slow down to a crawl and takes at least 1 second. + // Should get solved properly by changing the code below. This here is basically for 1.8.0 release. + // TODO: Fix this properly. + if (name == "CDAUDIO") + return NULL_REG; + } + // Check for regular file exists = Common::File::exists(name); |