aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--simon/items.cpp19
-rw-r--r--simon/simon.cpp35
-rw-r--r--simon/vga.cpp10
3 files changed, 20 insertions, 44 deletions
diff --git a/simon/items.cpp b/simon/items.cpp
index 7bd5e2bbdd..c5e673b43a 100644
--- a/simon/items.cpp
+++ b/simon/items.cpp
@@ -1622,17 +1622,10 @@ void SimonEngine::o_play_music_resource() {
void SimonEngine::o_unk_120(uint a) {
uint16 id = TO_BE_16(a);
- if (_game & GF_SIMON2) {
- _lockWord |= 0x8000;
- _vcPtr = (byte *)&id;
- vc15_wakeup_id();
- _lockWord &= ~0x8000;
- } else {
- _lockWord |= 0x4000;
- _vcPtr = (byte *)&id;
- vc15_wakeup_id();
- _lockWord &= ~0x4000;
- }
+ _lockWord |= 0x8000;
+ _vcPtr = (byte *)&id;
+ vc15_wakeup_id();
+ _lockWord &= ~0x8000;
}
void SimonEngine::o_play_sound(uint sound_id) {
@@ -1655,10 +1648,10 @@ void SimonEngine::o_unk_103() {
void SimonEngine::o_kill_sprite_simon1(uint a) {
uint16 b = TO_BE_16(a);
- _lockWord |= 0x4000;
+ _lockWord |= 0x8000;
_vcPtr = (byte *)&b;
vc60_killSprite();
- _lockWord &= ~0x4000;
+ _lockWord &= ~0x8000;
}
void SimonEngine::o_kill_sprite_simon2(uint a, uint b) {
diff --git a/simon/simon.cpp b/simon/simon.cpp
index eb07ea3e0d..8fc32a95db 100644
--- a/simon/simon.cpp
+++ b/simon/simon.cpp
@@ -2744,15 +2744,9 @@ void SimonEngine::o_force_unlock() {
}
void SimonEngine::o_force_lock() {
- if (_game & GF_SIMON2) {
- _lockWord |= 0x8000;
- vc34_setMouseOff();
- _lockWord &= ~0x8000;
- } else {
- _lockWord |= 0x4000;
- vc34_setMouseOff();
- _lockWord &= ~0x4000;
- }
+ _lockWord |= 0x8000;
+ vc34_setMouseOff();
+ _lockWord &= ~0x8000;
}
void SimonEngine::o_wait_for_vga(uint a) {
@@ -2924,13 +2918,8 @@ void SimonEngine::timer_vga_sprites_2() {
void SimonEngine::timer_proc1() {
_timer4++;
- if (_game & GF_SIMON2) {
- if (_lockWord & 0x80E9 || _lockWord & 2)
- return;
- } else {
- if (_lockWord & 0xC0E9 || _lockWord & 2)
- return;
- }
+ if (_lockWord & 0x80E9 || _lockWord & 2)
+ return;
_timer1++;
@@ -2944,7 +2933,7 @@ void SimonEngine::timer_proc1() {
if (!_cepeFlag)
expire_vga_timers();
- if (_lockCounter != 0 && !_syncFlag2) {
+ if (_lockCounter != 0 && _syncFlag2) {
_lockWord &= ~2;
return;
}
@@ -2987,15 +2976,9 @@ void SimonEngine::fcs_setTextColor(FillOrCopyStruct *fcs, uint value) {
}
void SimonEngine::o_vga_reset() {
- if (_game & GF_SIMON2) {
- _lockWord |= 0x8000;
- vc27_resetSprite();
- _lockWord &= ~0x8000;
- } else {
- _lockWord |= 0x4000;
- vc27_resetSprite();
- _lockWord &= ~0x4000;
- }
+ _lockWord |= 0x8000;
+ vc27_resetSprite();
+ _lockWord &= ~0x8000;
}
bool SimonEngine::itemIsSiblingOf(uint16 a) {
diff --git a/simon/vga.cpp b/simon/vga.cpp
index 3cab2a5e99..a81dccd01b 100644
--- a/simon/vga.cpp
+++ b/simon/vga.cpp
@@ -225,9 +225,9 @@ void SimonEngine::o_read_vgares_23() {
// Simon1 Only
if (_vgaRes328Loaded == true) {
_vgaRes328Loaded = false;
- _lockWord |= 0x4000;
+ _lockWord |= 0x8000;
read_vga_from_datfile_1(23);
- _lockWord &= ~0x4000;
+ _lockWord &= ~0x8000;
}
}
@@ -235,9 +235,9 @@ void SimonEngine::o_read_vgares_328() {
// Simon1 Only
if (_vgaRes328Loaded == false) {
_vgaRes328Loaded = true;
- _lockWord |= 0x4000;
+ _lockWord |= 0x8000;
read_vga_from_datfile_1(328);
- _lockWord &= ~0x4000;
+ _lockWord &= ~0x8000;
}
}
@@ -866,7 +866,7 @@ void SimonEngine::vc10_draw() {
} while (++w != state.draw_width);
/* vc10_helper_5 */
- } else if (_lockWord & 0x20 && state.palette == 0 || state.palette == 0xC0) {
+ } else if (((_lockWord & 0x20) && state.palette == 0) || state.palette == 0xC0) {
const byte *src;
byte *dst;
uint h, i;