aboutsummaryrefslogtreecommitdiff
path: root/engines/access
diff options
context:
space:
mode:
authorPaul Gilbert2014-08-12 09:16:14 -0400
committerPaul Gilbert2014-08-12 09:16:14 -0400
commit9107cc103fa8ca65e12d0213c7b915ec990fb6cf (patch)
tree6836b307666f22ccc44cd18285eef0d3a736cf80 /engines/access
parent94eda108eb36594329c20ecbc525d9934083e535 (diff)
downloadscummvm-rg350-9107cc103fa8ca65e12d0213c7b915ec990fb6cf.tar.gz
scummvm-rg350-9107cc103fa8ca65e12d0213c7b915ec990fb6cf.tar.bz2
scummvm-rg350-9107cc103fa8ca65e12d0213c7b915ec990fb6cf.zip
ACCESS: Added a temporary frame delay and screen update
Diffstat (limited to 'engines/access')
-rw-r--r--engines/access/events.cpp8
-rw-r--r--engines/access/events.h2
-rw-r--r--engines/access/room.cpp4
-rw-r--r--engines/access/screen.cpp2
4 files changed, 16 insertions, 0 deletions
diff --git a/engines/access/events.cpp b/engines/access/events.cpp
index 1184128ffd..73feefee97 100644
--- a/engines/access/events.cpp
+++ b/engines/access/events.cpp
@@ -148,7 +148,15 @@ void EventsManager::checkForNextFrameCounter() {
// Signal the ScummVM debugger
_vm->_debugger->onFrame();
+
+ // TODO: Refactor for dirty rects
+ _vm->_screen->updateScreen();
}
}
+void EventsManager::delay(int time) {
+ g_system->delayMillis(time);
+}
+
+
} // End of namespace Access
diff --git a/engines/access/events.h b/engines/access/events.h
index 2e6b06b5e2..55f04f17af 100644
--- a/engines/access/events.h
+++ b/engines/access/events.h
@@ -88,6 +88,8 @@ public:
bool isCursorVisible();
void pollEvents();
+
+ void delay(int time);
};
} // End of namespace Access
diff --git a/engines/access/room.cpp b/engines/access/room.cpp
index 4996527b74..d3f0f8ff06 100644
--- a/engines/access/room.cpp
+++ b/engines/access/room.cpp
@@ -84,6 +84,10 @@ void Room::doRoom() {
_vm->_screen->fadeIn();
}
+ // TODO: Game loop doesn't seem to have any delay. For now,
+ // introduce a slight delay here
+ _vm->_events->delay(50);
+
// Handle any events
_vm->_events->pollEvents();
diff --git a/engines/access/screen.cpp b/engines/access/screen.cpp
index b47cd3e005..cdd5f2021e 100644
--- a/engines/access/screen.cpp
+++ b/engines/access/screen.cpp
@@ -64,6 +64,8 @@ void Screen::setPanel(int num) {
}
void Screen::updateScreen() {
+ g_system->copyRectToScreen((byte *)getPixels(), this->pitch, 0, 0,
+ this->w, this->h);
g_system->updateScreen();
}