aboutsummaryrefslogtreecommitdiff
path: root/engines/access/access.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/access/access.cpp')
-rw-r--r--engines/access/access.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/engines/access/access.cpp b/engines/access/access.cpp
index ab58f8effc..71271230dd 100644
--- a/engines/access/access.cpp
+++ b/engines/access/access.cpp
@@ -99,6 +99,8 @@ AccessEngine::AccessEngine(OSystem *syst, const AccessGameDescription *gameDesc)
_rKeyFlag = 0;
_mapOffset = 0;
_screenVirtX = 0;
+ _lastTime = g_system->getMillis();
+ _curTime = 0;
}
AccessEngine::~AccessEngine() {
@@ -171,7 +173,16 @@ void AccessEngine::dummyLoop() {
// Dummy game loop
while (!shouldQuit()) {
_events->pollEvents();
- g_system->delayMillis(50);
+
+ _curTime = g_system->getMillis();
+ // Process machine once every tick
+ while (_curTime - _lastTime < 20) {
+ g_system->delayMillis(5);
+ _curTime = g_system->getMillis();
+ }
+
+ _lastTime = _curTime;
+
g_system->updateScreen();
if (_events->_leftButton) {