aboutsummaryrefslogtreecommitdiff
path: root/engines/simon
diff options
context:
space:
mode:
authorTravis Howell2006-04-24 04:34:57 +0000
committerTravis Howell2006-04-24 04:34:57 +0000
commit1dd84a90bd3e1f5b655a2226964d99e733e73ebc (patch)
tree5987f801d55ad98361d8edfa9330a0d3624d15d5 /engines/simon
parente8b3fa84a752da647d4131b1cc8c063741cd028a (diff)
downloadscummvm-rg350-1dd84a90bd3e1f5b655a2226964d99e733e73ebc.tar.gz
scummvm-rg350-1dd84a90bd3e1f5b655a2226964d99e733e73ebc.tar.bz2
scummvm-rg350-1dd84a90bd3e1f5b655a2226964d99e733e73ebc.zip
isSpriteLoaded is Simon 1/2 specific and never used by FF
svn-id: r22130
Diffstat (limited to 'engines/simon')
-rw-r--r--engines/simon/simon.cpp6
-rw-r--r--engines/simon/simon.h2
-rw-r--r--engines/simon/vga.cpp10
3 files changed, 8 insertions, 10 deletions
diff --git a/engines/simon/simon.cpp b/engines/simon/simon.cpp
index 24f0a08f05..79860bb251 100644
--- a/engines/simon/simon.cpp
+++ b/engines/simon/simon.cpp
@@ -2204,7 +2204,7 @@ void SimonEngine::checkAnims(uint a, byte *end) {
}
}
-void SimonEngine::set_video_mode_internal(uint mode, uint vga_res_id) {
+void SimonEngine::set_video_mode_internal(uint16 mode, uint16 vga_res_id) {
uint num, num_lines;
VgaPointersEntry *vpe;
byte *bb, *b;
@@ -2216,7 +2216,6 @@ void SimonEngine::set_video_mode_internal(uint mode, uint vga_res_id) {
if (getGameType() == GType_FF) {
vc27_resetSprite();
- vga_res_id &= 0xFFFF;
}
if (vga_res_id == 0) {
@@ -3228,7 +3227,8 @@ void SimonEngine::loadSprite(uint windowNum, uint zoneNum, uint vgaSpriteId, uin
_lockWord |= 0x40;
- if (isSpriteLoaded(vgaSpriteId, zoneNum)) {
+ if ((getGameType() == GType_SIMON1 || getGameType() == GType_SIMON2) &&
+ isSpriteLoaded(vgaSpriteId, zoneNum)) {
_lockWord &= ~0x40;
return;
}
diff --git a/engines/simon/simon.h b/engines/simon/simon.h
index e0a797fbd7..799a663098 100644
--- a/engines/simon/simon.h
+++ b/engines/simon/simon.h
@@ -699,7 +699,7 @@ protected:
void handleVerbClicked(uint verb);
- void set_video_mode_internal(uint mode, uint vga_res_id);
+ void set_video_mode_internal(uint16 mode, uint16 vga_res_id);
void loadZone(uint vga_res);
diff --git a/engines/simon/vga.cpp b/engines/simon/vga.cpp
index b97040db9d..27dccdbdce 100644
--- a/engines/simon/vga.cpp
+++ b/engines/simon/vga.cpp
@@ -242,15 +242,12 @@ void SimonEngine::vc1_fadeOut() {
void SimonEngine::vc2_call() {
VgaPointersEntry *vpe;
- uint num;
- uint res;
+ uint16 num, res;
byte *old_file_1, *old_file_2;
byte *b, *bb;
const byte *vc_ptr_org;
num = vcReadVarOrWord();
- if (getGameType() == GType_FF)
- num &= 0xFFFF;
old_file_1 = _curVgaFile1;
old_file_2 = _curVgaFile2;
@@ -325,9 +322,10 @@ void SimonEngine::vc3_loadSprite() {
y = vcReadNextWord(); /* 6 */
palette = vcReadNextWord(); /* 8 */
- /* 2nd param ignored with simon1 */
- if (isSpriteLoaded(vgaSpriteId, zoneNum))
+ if ((getGameType() == GType_SIMON1 || getGameType() == GType_SIMON2) &&
+ isSpriteLoaded(vgaSpriteId, zoneNum)) {
return;
+ }
vsp = _vgaSprites;
while (vsp->id)