aboutsummaryrefslogtreecommitdiff
path: root/engines/sci
diff options
context:
space:
mode:
authorFilippos Karapetis2016-02-27 15:00:55 +0200
committerFilippos Karapetis2016-02-27 15:00:55 +0200
commit138c19f06f2830a4c5b549de4852597529a2c121 (patch)
tree2cccd775ac210800c1b6bccd63f8cddd8f4d9b46 /engines/sci
parent5151ad4d9f566fc94adaf7d9c59d7d49ab3b7bfe (diff)
downloadscummvm-rg350-138c19f06f2830a4c5b549de4852597529a2c121.tar.gz
scummvm-rg350-138c19f06f2830a4c5b549de4852597529a2c121.tar.bz2
scummvm-rg350-138c19f06f2830a4c5b549de4852597529a2c121.zip
SCI32: Remove two hacks for Torin, and document what happens instead
Diffstat (limited to 'engines/sci')
-rw-r--r--engines/sci/graphics/compare.cpp16
1 files changed, 4 insertions, 12 deletions
diff --git a/engines/sci/graphics/compare.cpp b/engines/sci/graphics/compare.cpp
index 716a366b7c..8333459b64 100644
--- a/engines/sci/graphics/compare.cpp
+++ b/engines/sci/graphics/compare.cpp
@@ -111,12 +111,10 @@ uint16 GfxCompare::kernelOnControl(byte screenMask, const Common::Rect &rect) {
void GfxCompare::kernelSetNowSeen(reg_t objectReference) {
GfxView *view = NULL;
Common::Rect celRect(0, 0);
+ // TODO/FIXME: Torin's menu code tries to draw special views with an ID of 0xFFFF, which
+ // are not currently handled properly and cause a crash. These might be text views that
+ // are not properly implemented.
GuiResourceId viewId = (GuiResourceId)readSelectorValue(_segMan, objectReference, SELECTOR(view));
-
- // HACK: Ignore invalid views for now (perhaps unimplemented text views?)
- if (viewId == 0xFFFF) // invalid view
- return;
-
int16 loopNo = readSelectorValue(_segMan, objectReference, SELECTOR(loop));
int16 celNo = readSelectorValue(_segMan, objectReference, SELECTOR(cel));
int16 x = (int16)readSelectorValue(_segMan, objectReference, SELECTOR(x));
@@ -201,15 +199,9 @@ void GfxCompare::kernelBaseSetter(reg_t object) {
GuiResourceId viewId = readSelectorValue(_segMan, object, SELECTOR(view));
int16 loopNo = readSelectorValue(_segMan, object, SELECTOR(loop));
int16 celNo = readSelectorValue(_segMan, object, SELECTOR(cel));
-
- // HACK: Ignore invalid views for now (perhaps unimplemented text views?)
- if (viewId == 0xFFFF) // invalid view
- return;
-
uint16 scaleSignal = 0;
- if (getSciVersion() >= SCI_VERSION_1_1) {
+ if (getSciVersion() >= SCI_VERSION_1_1)
scaleSignal = readSelectorValue(_segMan, object, SELECTOR(scaleSignal));
- }
Common::Rect celRect;