aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/agi/appleIIgs_timedelay_overwrite.h6
-rw-r--r--engines/agi/cycle.cpp2
-rw-r--r--engines/agi/motion.cpp5
3 files changed, 8 insertions, 5 deletions
diff --git a/engines/agi/appleIIgs_timedelay_overwrite.h b/engines/agi/appleIIgs_timedelay_overwrite.h
index 0502593954..c24d7cb5bd 100644
--- a/engines/agi/appleIIgs_timedelay_overwrite.h
+++ b/engines/agi/appleIIgs_timedelay_overwrite.h
@@ -71,14 +71,14 @@ static const AgiAppleIIgsDelayOverwriteRoomEntry appleIIgsDelayOverwriteSQ2[] =
};
static const AgiAppleIIgsDelayOverwriteGameEntry appleIIgsDelayOverwriteGameTable[] = {
- { GID_BC, 2, nullptr }, // NEEDS TESTING
- { GID_GOLDRUSH, 2, nullptr }, // NEEDS TESTING
+ { GID_BC, 2, nullptr }, // sets the speed at the start and doesn't modify it
+ { GID_GOLDRUSH, 2, nullptr },
{ GID_KQ1, 2, nullptr },
// KQ2 seems to work fine at speed given by scripts
{ GID_KQ3, 2, nullptr },
{ GID_KQ4, 2, appleIIgsDelayOverwriteKQ4 },
{ GID_LSL1, 2, nullptr }, // Switch Larry 1 to 10 cycles per second (that's around PC Larry 1's "normal" speed
- { GID_MH1, 2, appleIIgsDelayOverwriteMH1 }, // NEEDS TESTING
+ { GID_MH1, 2, appleIIgsDelayOverwriteMH1 },
{ GID_MIXEDUP, 2, nullptr },
{ GID_PQ1, 2, nullptr },
{ GID_SQ1, 2, nullptr }, // completed, no issues using these settings
diff --git a/engines/agi/cycle.cpp b/engines/agi/cycle.cpp
index f253804da3..8ccf69a2fc 100644
--- a/engines/agi/cycle.cpp
+++ b/engines/agi/cycle.cpp
@@ -403,7 +403,7 @@ int AgiEngine::playGame() {
if (timeDelayOverwrite >= 0) {
if (timeDelayOverwrite != timeDelay) {
// delayOverwrite is not the same as the delay taken from the scripts? overwrite it
- warning("AppleIIgs: time delay overwrite from %d to %d", timeDelay, timeDelayOverwrite);
+ //warning("AppleIIgs: time delay overwrite from %d to %d", timeDelay, timeDelayOverwrite);
setVar(VM_VAR_TIME_DELAY, timeDelayOverwrite - 1); // adjust for Apple IIgs
timeDelay = timeDelayOverwrite;
diff --git a/engines/agi/motion.cpp b/engines/agi/motion.cpp
index 9de1b44720..f408ba35e6 100644
--- a/engines/agi/motion.cpp
+++ b/engines/agi/motion.cpp
@@ -67,7 +67,10 @@ void AgiEngine::changePos(ScreenObjEntry *screenObj) {
// If this is the case, it would result in some random flag getting overwritten in original AGI after the loop was
// completed, because in original AGI loop_flag + wander_count/follow_stepSize/move_X shared the same memory location.
// This is basically an implementation error in the original interpreter.
-// Happens in at least KQ1, when grabbing the eagle (room 22).
+// Happens in at least:
+// - BC: right at the end when the witches disappear at least on Apple IIgs (room 12, screen object 13, view 84)
+// - KQ1: when grabbing the eagle (room 22).
+// - KQ2: happened somewhere in the game, LordHoto couldn't remember exactly where
void AgiEngine::motionActivated(ScreenObjEntry *screenObj) {
if (screenObj->flags & fCycling) {
// Cycling active too