aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTravis Howell2004-09-12 11:15:26 +0000
committerTravis Howell2004-09-12 11:15:26 +0000
commita1c22f9d7f823bef55be5c2c31e5d963ac29c8d6 (patch)
tree5119a25901958920e6a583fe3557b27d7d959c1f
parent951131e7c2a7ce270398f4635126c2cdcd1892e7 (diff)
downloadscummvm-rg350-a1c22f9d7f823bef55be5c2c31e5d963ac29c8d6.tar.gz
scummvm-rg350-a1c22f9d7f823bef55be5c2c31e5d963ac29c8d6.tar.bz2
scummvm-rg350-a1c22f9d7f823bef55be5c2c31e5d963ac29c8d6.zip
Another HE opcode
svn-id: r15029
-rw-r--r--scumm/intern.h1
-rw-r--r--scumm/script_v90he.cpp12
2 files changed, 12 insertions, 1 deletions
diff --git a/scumm/intern.h b/scumm/intern.h
index 696943e82f..1bdfed5907 100644
--- a/scumm/intern.h
+++ b/scumm/intern.h
@@ -826,6 +826,7 @@ protected:
void o90_unknown2F();
void o90_mod();
void o90_unknown34();
+ void o90_unknown36();
void o90_unknown37();
void o90_unknown9E();
};
diff --git a/scumm/script_v90he.cpp b/scumm/script_v90he.cpp
index 0b3f07d677..e5b94d36d5 100644
--- a/scumm/script_v90he.cpp
+++ b/scumm/script_v90he.cpp
@@ -112,7 +112,7 @@ void ScummEngine_v90he::setupOpcodes() {
/* 34 */
OPCODE(o90_unknown34),
OPCODE(o6_invalid),
- OPCODE(o6_invalid),
+ OPCODE(o90_unknown36),
OPCODE(o90_unknown37),
/* 38 */
OPCODE(o6_invalid),
@@ -833,6 +833,16 @@ void ScummEngine_v90he::o90_unknown34() {
push(readVar(0));
}
+void ScummEngine_v90he::o90_unknown36() {
+ int a = pop();
+ int b = pop();
+ int c = pop();
+
+ if (!c)
+ b = a;
+ push(b);
+}
+
void ScummEngine_v90he::o90_unknown37() {
int data, dim1start, dim1end, dim2start, dim2end;
int type = fetchScriptByte();