From 20bf83a2ce1c19e81cd486b4af3b7b73bd25e510 Mon Sep 17 00:00:00 2001 From: Travis Howell Date: Wed, 9 May 2007 15:36:05 +0000 Subject: Imrproved support for Elvira 1/2 and Waxworks. svn-id: r26792 --- engines/agos/vga_ww.cpp | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'engines/agos/vga_ww.cpp') diff --git a/engines/agos/vga_ww.cpp b/engines/agos/vga_ww.cpp index f73476c5cb..f9995fc715 100644 --- a/engines/agos/vga_ww.cpp +++ b/engines/agos/vga_ww.cpp @@ -110,7 +110,7 @@ void AGOSEngine::vc61() { if (a == 6) { src = _curVgaFile2 + 800; - dstPtr = getBackBuf(); + dstPtr = getFrontBuf(); memcpy(dstPtr, src, 64000); tmp = 4 - 1; } else { @@ -218,14 +218,21 @@ void AGOSEngine::vc62_fastFadeOut() { } } - // Allow one section of Simon the Sorcerer 1 introduction to be displayed - // in lower half of screen - if ((getGameType() == GType_SIMON1) && (_subroutine == 2923 || _subroutine == 2926)) { - clearSurfaces(200); - } else if (getGameType() == GType_FF || getGameType() == GType_PP) { + if (getGameType() == GType_FF || getGameType() == GType_PP) { clearSurfaces(480); + } else if (getGameType() == GType_WW) { + memset(getFrontBuf(), 0, _screenWidth * _screenHeight); + } else if (!_oldDrawMethod) { + // Allow one section of Simon the Sorcerer 1 introduction to be displayed + // in lower half of screen + if ((getGameType() == GType_SIMON1) && (_subroutine == 2923 || _subroutine == 2926)) { + clearSurfaces(200); + } else { + clearSurfaces(_windowNum == 4 ? 134 : 200); + } } else { - clearSurfaces(_windowNum == 4 ? 134 : 200); + if (_windowNum != 4) + memset(getFrontBuf(), 0, _screenWidth * _screenHeight); } } if (getGameType() == GType_SIMON2) { -- cgit v1.2.3