aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
Diffstat (limited to 'engines')
-rw-r--r--engines/supernova/supernova.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/engines/supernova/supernova.cpp b/engines/supernova/supernova.cpp
index e1293c452d..cde54ab193 100644
--- a/engines/supernova/supernova.cpp
+++ b/engines/supernova/supernova.cpp
@@ -143,11 +143,14 @@ Common::Error SupernovaEngine::run() {
CursorMan.showMouse(true);
while (_gameRunning) {
+ uint32 start = _system->getMillis();
updateEvents();
_gm->executeRoom();
_console->onFrame();
_system->updateScreen();
- _system->delayMillis(_delay);
+ int end = _delay - (_system->getMillis() - start);
+ if (end > 0)
+ _system->delayMillis(end);
}
//deinit timer/sound/..