diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index 00f940740..fc999fcd9 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp @@ -1519,6 +1519,11 @@ void DivEngine::playSub(bool preserveDrift, int goalRow) { while (playing && curOrdersetSkipRegisterWrites(false); + if (goal>0 || goalRow>0) { + for (int i=0; iforceIns(); + } return; } if (!preserveDrift) { @@ -1530,6 +1535,11 @@ void DivEngine::playSub(bool preserveDrift, int goalRow) { while (playing && (curRow1)) { if (nextTick(preserveDrift)) { skipping=false; + cmdStream.clear(); + for (int i=0; isetSkipRegisterWrites(false); + if (goal>0 || goalRow>0) { + for (int i=0; iforceIns(); + } return; } if (!preserveDrift) {