diff options
Diffstat (limited to 'engines/adl/hires5.cpp')
-rw-r--r-- | engines/adl/hires5.cpp | 25 |
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); |