aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/gui/gui_screen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sci/gui/gui_screen.cpp')
-rw-r--r--engines/sci/gui/gui_screen.cpp22
1 files changed, 21 insertions, 1 deletions
diff --git a/engines/sci/gui/gui_screen.cpp b/engines/sci/gui/gui_screen.cpp
index 1079b4c3f9..6f1b278739 100644
--- a/engines/sci/gui/gui_screen.cpp
+++ b/engines/sci/gui/gui_screen.cpp
@@ -51,6 +51,9 @@ SciGuiScreen::SciGuiScreen(int16 width, int16 height, int16 scaleFactor) :
_controlScreen = initScreen(_pixels);
_displayScreen = initScreen(_displayPixels);
+ // Sets display screen to be actually displayed
+ _activeScreen = _displayScreen;
+
for (i = 0; i < _height; i++) {
_baseTable[i] = base; _baseDisplayTable[i] = base;
base += _width;
@@ -73,7 +76,7 @@ byte *SciGuiScreen::initScreen(uint16 pixelCount) {
}
void SciGuiScreen::copyToScreen() {
- g_system->copyRectToScreen(_displayScreen, _displayWidth, 0, 0, _displayWidth, _displayHeight);
+ g_system->copyRectToScreen(_activeScreen, _displayWidth, 0, 0, _displayWidth, _displayHeight);
}
byte SciGuiScreen::getDrawingMask(byte color, byte prio, byte control) {
@@ -237,4 +240,21 @@ void SciGuiScreen::dither() {
}
}
+void SciGuiScreen::debugShowMap(int mapNo) {
+ switch (mapNo) {
+ case 0:
+ _activeScreen = _visualScreen;
+ break;
+ case 1:
+ _activeScreen = _priorityScreen;
+ break;
+ case 2:
+ _activeScreen = _controlScreen;
+ break;
+ case 3:
+ _activeScreen = _displayScreen;
+ break;
+ }
+}
+
} // End of namespace Sci