Add another ini related opcode.

svn-id: r14922
This commit is contained in:
Travis Howell 2004-09-06 03:26:47 +00:00
parent 79c5ac987f
commit 5adc650736
2 changed files with 28 additions and 1 deletions

View File

@ -779,6 +779,7 @@ protected:
/* HE version 80 script opcodes */
void o80_unknown49();
void o80_unknown4D();
void o80_setState();
};

View File

@ -141,7 +141,7 @@ void ScummEngine_v80he::setupOpcodes() {
OPCODE(o72_wordArrayIndexedWrite),
/* 4C */
OPCODE(o6_invalid),
OPCODE(o6_invalid),
OPCODE(o80_unknown4D),
OPCODE(o6_invalid),
OPCODE(o6_wordVarInc),
/* 50 */
@ -386,6 +386,32 @@ void ScummEngine_v80he::o80_unknown49() {
debug(1,"o80_unknown49 stub (%d, %d)", b, a);
}
void ScummEngine_v80he::o80_unknown4D() {
byte option[128], option2[128], option3[256];
int type, retval;
// we pretend that we don't have .ini file
copyScriptString(option);
copyScriptString(option2);
copyScriptString(option3);
type = fetchScriptByte();
switch (type) {
case 6: // number
push(0);
break;
case 7: // string
defineArray(0, kStringArray, 0, 0, 0, 0);
retval = readVar(0);
writeArray(0, 0, 0, 0);
push(retval); // var ID string
break;
default:
error("o80_unknown4D: default type %d", type);
}
debug(1, "o80_unknown4D (%d) %s %s %s", type, option, option2, option3);
}
void ScummEngine_v80he::o80_setState() {
int state = pop();
int obj = pop();