aboutsummaryrefslogtreecommitdiff
path: root/engines/agos/event.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/agos/event.cpp')
-rw-r--r--engines/agos/event.cpp20
1 files changed, 7 insertions, 13 deletions
diff --git a/engines/agos/event.cpp b/engines/agos/event.cpp
index 13de82fcbd..4c0f2c1eb6 100644
--- a/engines/agos/event.cpp
+++ b/engines/agos/event.cpp
@@ -34,6 +34,8 @@
#include "gui/about.h"
+#include "graphics/surface.h"
+
#include "sound/audiocd.h"
namespace AGOS {
@@ -366,13 +368,17 @@ static const byte _image4[32] = {
void AGOSEngine::drawStuff(const byte *src, uint xoffs) {
const uint8 y = (getPlatform() == Common::kPlatformAtariST) ? 132 : 135;
- byte *dst = getFrontBuf() + y * _screenWidth + xoffs;
+
+ Graphics::Surface *screen = _system->lockScreen();
+ byte *dst = (byte *)screen->pixels + y * _screenWidth + xoffs;
for (uint h = 0; h < 6; h++) {
memcpy(dst, src, 4);
src += 4;
dst += _screenWidth;
}
+
+ _system->unlockScreen();
}
void AGOSEngine::imageEvent2(VgaTimerEntry * vte, uint dx) {
@@ -587,11 +593,6 @@ void AGOSEngine_Feeble::timer_proc1() {
animateSprites();
}
- if (_copyPartialMode == 2) {
- fillFrontFromBack(0, 0, _screenWidth, _screenHeight);
- _copyPartialMode = 0;
- }
-
if (_displayScreen) {
if (getGameType() == GType_FF) {
if (!getBitFlag(78)) {
@@ -627,13 +628,6 @@ void AGOSEngine::timer_proc1() {
processVgaEvents();
}
- if (_updateScreen) {
- _system->copyRectToScreen(getFrontBuf(), _screenWidth, 0, 0, _screenWidth, _screenHeight);
- _system->updateScreen();
-
- _updateScreen = false;
- }
-
if (_displayScreen) {
displayScreen();
_displayScreen = false;