diff options
author | Martin Kiewitz | 2010-08-03 20:46:28 +0000 |
---|---|---|
committer | Martin Kiewitz | 2010-08-03 20:46:28 +0000 |
commit | dc08c733db190ea9f1814e49cd4ed5a7525a96b0 (patch) | |
tree | 437db60cfb7dbb468affa831f685fe48b6b99756 | |
parent | 2e11c1cf9642de2db81ea0a25541872c20f28b8e (diff) | |
download | scummvm-rg350-dc08c733db190ea9f1814e49cd4ed5a7525a96b0.tar.gz scummvm-rg350-dc08c733db190ea9f1814e49cd4ed5a7525a96b0.tar.bz2 scummvm-rg350-dc08c733db190ea9f1814e49cd4ed5a7525a96b0.zip |
SCI: adding jones/talkie speed throttler view
fixes bug #3038989, regression of r51544
svn-id: r51714
-rw-r--r-- | engines/sci/graphics/animate.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/engines/sci/graphics/animate.cpp b/engines/sci/graphics/animate.cpp index df52ab9a7c..ab4362cda9 100644 --- a/engines/sci/graphics/animate.cpp +++ b/engines/sci/graphics/animate.cpp @@ -631,14 +631,21 @@ void GfxAnimate::kernelAnimate(reg_t listReference, bool cycle, int argc, reg_t _ports->setPort(oldPort); + // Now trigger speed throttler switch (_lastCastData.size()) { case 0: // No entries drawn -> no speed throttler triggering break; case 1: { + // One entry drawn -> check if that entry was a speed benchmark view, if not enable speed throttler AnimateEntry *onlyCast = &_lastCastData[0]; + if ((onlyCast->viewId == 0) && (onlyCast->loopNo == 13) && (onlyCast->celNo == 0)) { + // this one is used by jones talkie + if ((onlyCast->celRect.height() == 8) && (onlyCast->celRect.width() == 8)) + return; + } // first loop and first cel used? if ((onlyCast->loopNo == 0) && (onlyCast->celNo == 0)) { // and that cel has a known speed benchmark resolution |