aboutsummaryrefslogtreecommitdiff
path: root/engines/adl/hires5.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/adl/hires5.cpp')
-rw-r--r--engines/adl/hires5.cpp25
1 files changed, 14 insertions, 11 deletions
diff --git a/engines/adl/hires5.cpp b/engines/adl/hires5.cpp
index cf09cebeb8..2fdb9fd227 100644
--- a/engines/adl/hires5.cpp
+++ b/engines/adl/hires5.cpp
@@ -28,7 +28,7 @@
#include "adl/adl_v4.h"
#include "adl/detection.h"
-#include "adl/display.h"
+#include "adl/display_a2.h"
#include "adl/graphics.h"
#include "adl/disk.h"
#include "adl/sound.h"
@@ -87,6 +87,7 @@ Common::String HiRes5Engine::getLine() {
}
void HiRes5Engine::drawLight(uint index, byte color) const {
+ Display_A2 *display = static_cast<Display_A2 *>(_display);
const byte xCoord[5] = { 189, 161, 133, 105, 77 };
const byte yCoord = 72;
@@ -94,9 +95,9 @@ void HiRes5Engine::drawLight(uint index, byte color) const {
for (int yDelta = 0; yDelta < 4; ++yDelta)
for (int xDelta = 0; xDelta < 7; ++xDelta)
- _display->putPixel(Common::Point(xCoord[index] + xDelta, yCoord + yDelta), color);
+ display->putPixel(Common::Point(xCoord[index] + xDelta, yCoord + yDelta), color);
- _display->updateHiResScreen();
+ display->copyGfxSurface();
}
void HiRes5Engine::animateLights() const {
@@ -235,25 +236,27 @@ int HiRes5Engine::o_winGame(ScriptEnv &e) {
}
void HiRes5Engine::runIntro() {
+ Display_A2 *display = static_cast<Display_A2 *>(_display);
+
insertDisk(2);
StreamPtr stream(_disk->createReadStream(0x10, 0x0, 0x00, 31));
- _display->setMode(DISPLAY_MODE_HIRES);
- _display->loadFrameBuffer(*stream);
- _display->updateHiResScreen();
+ display->setMode(Display::kModeGraphics);
+ display->loadFrameBuffer(*stream);
+ display->copyGfxSurface();
inputKey();
- _display->home();
- _display->setMode(DISPLAY_MODE_TEXT);
+ display->home();
+ display->setMode(Display::kModeText);
stream.reset(_disk->createReadStream(0x03, 0xc, 0x34, 1));
Common::String menu(readString(*stream));
while (!g_engine->shouldQuit()) {
- _display->home();
- _display->printString(menu);
+ display->home();
+ display->printString(menu);
Common::String cmd(inputString());
@@ -264,7 +267,7 @@ void HiRes5Engine::runIntro() {
}
void HiRes5Engine::init() {
- _graphics = new GraphicsMan_v3(*_display);
+ _graphics = new GraphicsMan_v3<Display_A2>(*static_cast<Display_A2 *>(_display));
insertDisk(2);