aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorTravis Howell2004-08-26 14:56:10 +0000
committerTravis Howell2004-08-26 14:56:10 +0000
commit8a9fa534b8f275c7327e01bb194537955b8026cf (patch)
tree096f4e494b6e618dfd901a077e050c4cca5cdde5 /scumm
parent30c31c9cb0b4b8fdaf4d8b29ba05c61cbee6dc4f (diff)
downloadscummvm-rg350-8a9fa534b8f275c7327e01bb194537955b8026cf.tar.gz
scummvm-rg350-8a9fa534b8f275c7327e01bb194537955b8026cf.tar.bz2
scummvm-rg350-8a9fa534b8f275c7327e01bb194537955b8026cf.zip
Add another HE 7.2 opcode
svn-id: r14781
Diffstat (limited to 'scumm')
-rw-r--r--scumm/intern.h1
-rw-r--r--scumm/script_v72he.cpp13
2 files changed, 13 insertions, 1 deletions
diff --git a/scumm/intern.h b/scumm/intern.h
index 655c624262..74ae480c74 100644
--- a/scumm/intern.h
+++ b/scumm/intern.h
@@ -686,6 +686,7 @@ protected:
void o72_wordArrayWrite();
void o72_wordArrayIndexedWrite();
void o72_compareStackList();
+ void o72_unknown50();
void o72_wordArrayInc();
void o72_objectX();
void o72_objectY();
diff --git a/scumm/script_v72he.cpp b/scumm/script_v72he.cpp
index 1932298b24..9f62462a9e 100644
--- a/scumm/script_v72he.cpp
+++ b/scumm/script_v72he.cpp
@@ -146,7 +146,7 @@ void ScummEngine_v72he::setupOpcodes() {
OPCODE(o6_invalid),
OPCODE(o6_wordVarInc),
/* 50 */
- OPCODE(o6_invalid),
+ OPCODE(o72_unknown50),
OPCODE(o6_invalid),
OPCODE(o6_invalid),
OPCODE(o72_wordArrayInc),
@@ -573,6 +573,17 @@ void ScummEngine_v72he::o72_wordArrayIndexedWrite() {
writeArray(fetchScriptWord(), pop(), base, val);
}
+void ScummEngine_v72he::o72_unknown50() {
+ int idx;
+
+ idx = vm.cutSceneStackPointer;
+ vm.cutSceneStackPointer = 0;
+ vm.cutScenePtr[idx] = 0;
+ vm.cutSceneScript[idx] = 0;
+
+ VAR(VAR_OVERRIDE) = 0;
+}
+
void ScummEngine_v72he::o72_wordArrayInc() {
int var = fetchScriptWord();
int base = pop();