SCI: adding jones/talkie speed throttler view

fixes bug #3038989, regression of r51544

svn-id: r51714
This commit is contained in:
Martin Kiewitz 2010-08-03 20:46:28 +00:00
parent 2e11c1cf96
commit dc08c733db

View File

@ -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