aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/simon/simon.cpp5
-rw-r--r--engines/simon/vga.cpp4
2 files changed, 6 insertions, 3 deletions
diff --git a/engines/simon/simon.cpp b/engines/simon/simon.cpp
index 02b3bebcf7..4327adb713 100644
--- a/engines/simon/simon.cpp
+++ b/engines/simon/simon.cpp
@@ -2251,6 +2251,9 @@ void SimonEngine::set_video_mode_internal(uint mode, uint vga_res_id) {
_windowNum = mode;
_lockWord |= 0x20;
+ if (getGameType() == GType_FF)
+ vga_res_id &= 0xFFFF;
+
if (vga_res_id == 0) {
if (getGameType() == GType_SIMON1) {
_unkPalFlag = true;
@@ -2306,7 +2309,7 @@ void SimonEngine::set_video_mode_internal(uint mode, uint vga_res_id) {
_scrollCount = 0;
_scrollFlag = 0;
_scrollHeight = 134;
- if (_variableArray[34] != -1) {
+ if (_variableArray[34] >= 0) {
if (getGameType() == GType_FF)
_variableArray[250] = 0;
_variableArray[251] = 0;
diff --git a/engines/simon/vga.cpp b/engines/simon/vga.cpp
index 13dd47515e..c367f51ed8 100644
--- a/engines/simon/vga.cpp
+++ b/engines/simon/vga.cpp
@@ -1292,7 +1292,7 @@ void SimonEngine::horizontalScroll(VC10_state *state) {
_scrollYMax = 0;
_scrollImage = state->depack_src;
_scrollHeight = state->height;
- if (_variableArray[34] == -1)
+ if (_variableArray[34] < 0)
state->x = _variableArray[251];
_scrollX = state->x;
@@ -1324,7 +1324,7 @@ void SimonEngine::verticalScroll(VC10_state *state) {
_scrollYMax = state->height - 480;
_scrollImage = state->depack_src;
_scrollWidth = state->width;
- if (_variableArray[34] == -1)
+ if (_variableArray[34] < 0)
state->y = _variableArray[250];
_scrollY = state->y;