aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/vm.cpp
diff options
context:
space:
mode:
authorLars Skovlund2010-11-18 17:04:00 +0000
committerLars Skovlund2010-11-18 17:04:00 +0000
commitc5252071db22b31cc83c2687f93606b79194efe6 (patch)
tree7d2866806624b7187854a32394f714d6bd1c1aa3 /engines/sci/engine/vm.cpp
parent152e52d0156e443f8dc52bf2bddf9ef21a32f853 (diff)
downloadscummvm-rg350-c5252071db22b31cc83c2687f93606b79194efe6.tar.gz
scummvm-rg350-c5252071db22b31cc83c2687f93606b79194efe6.tar.bz2
scummvm-rg350-c5252071db22b31cc83c2687f93606b79194efe6.zip
SCI3: Add proper support for the calle instruction
svn-id: r54327
Diffstat (limited to 'engines/sci/engine/vm.cpp')
-rw-r--r--engines/sci/engine/vm.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/engines/sci/engine/vm.cpp b/engines/sci/engine/vm.cpp
index 2cd5170921..9fa579cead 100644
--- a/engines/sci/engine/vm.cpp
+++ b/engines/sci/engine/vm.cpp
@@ -328,7 +328,11 @@ ExecStack *execute_method(EngineState *s, uint16 script, uint16 pubfunct, StackP
scr = s->_segMan->getScript(seg);
}
- const int temp = scr->validateExportFunc(pubfunct);
+ int temp = scr->validateExportFunc(pubfunct, false);
+
+ if (getSciVersion() == SCI_VERSION_3)
+ temp += scr->getCodeBlockOffset();
+
if (!temp) {
#ifdef ENABLE_SCI32
// HACK: Temporarily switch to a warning in SCI32 games until we can figure out why Torin has