diff options
Diffstat (limited to 'engines')
| -rw-r--r-- | engines/agos/agos.h | 7 | ||||
| -rw-r--r-- | engines/agos/debug.h | 4 | ||||
| -rw-r--r-- | engines/agos/script_e2.cpp | 28 | ||||
| -rw-r--r-- | engines/agos/script_ww.cpp | 8 | 
4 files changed, 36 insertions, 11 deletions
diff --git a/engines/agos/agos.h b/engines/agos/agos.h index 83d00b67e7..984a3938e3 100644 --- a/engines/agos/agos.h +++ b/engines/agos/agos.h @@ -1145,10 +1145,12 @@ public:  	void oe2_ifDoorOpen();  	void oe2_ifDoorClosed();  	void oe2_ifDoorLocked(); -	void oe2_opcode161(); -	void oe2_screenTextMsg(); +	void oe2_unk161(); +	void oe2_unk162();  	void oe2_setSuperRoom();  	void oe2_getSuperRoom(); +	void oe2_unk177(); +	void oe2_unk178();  	// Opcodes, Waxworks only  	void oww_moveDirn(); @@ -1156,6 +1158,7 @@ public:  	void oww_whereTo();  	void oww_menu();  	void oww_textMenu(); +	void oww_screenTextMsg();  	void oww_boxMessage();  	void oww_boxMsg();  	void oww_boxLongText(); diff --git a/engines/agos/debug.h b/engines/agos/debug.h index 6855e98fd3..4fe7f12f8d 100644 --- a/engines/agos/debug.h +++ b/engines/agos/debug.h @@ -588,7 +588,7 @@ static const char *const elvira2_opcodeNameTable[256] = {  	/* 160 */  	"B|SET_INK",  	"|UNK_161", -	"BT|PRINT_STR", +	"TB|UNK_162",  	NULL,  	/* 164 */  	NULL, @@ -821,7 +821,7 @@ static const char *const waxworks_opcodeNameTable[256] = {  	/* 160 */  	"B|SET_INK",  	"|UNK_161", -	"BT|PRINT_STR", +	"TB|PRINT_STR",  	NULL,  	/* 164 */  	NULL, diff --git a/engines/agos/script_e2.cpp b/engines/agos/script_e2.cpp index 4b628094ea..7f5975aabd 100644 --- a/engines/agos/script_e2.cpp +++ b/engines/agos/script_e2.cpp @@ -62,11 +62,13 @@ void AGOSEngine::setupElvira2Opcodes(OpcodeProc *op) {  	op[148] = &AGOSEngine::oe2_ifDoorOpen;  	op[149] = &AGOSEngine::oe2_ifDoorClosed;  	op[150] = &AGOSEngine::oe2_ifDoorLocked; -	op[161] = &AGOSEngine::oe2_opcode161; -	op[162] = &AGOSEngine::oe2_screenTextMsg; +	op[161] = &AGOSEngine::oe2_unk161; +	op[162] = &AGOSEngine::oe2_unk162;  	op[165] = &AGOSEngine::oe2_setSuperRoom;  	op[166] = &AGOSEngine::oe2_getSuperRoom;  	op[175] = &AGOSEngine::o_getDollar2; +	op[177] = &AGOSEngine::oe2_unk177; +	op[178] = &AGOSEngine::oe2_unk178;  	op[179] = &AGOSEngine::o_isAdjNoun;  	op[180] = &AGOSEngine::o_b2Set;  	op[181] = &AGOSEngine::o_b2Clear; @@ -147,14 +149,16 @@ void AGOSEngine::oe2_ifDoorLocked() {  	setScriptCondition(getDoorState(i, d) == 3);  } -void AGOSEngine::oe2_opcode161() { +void AGOSEngine::oe2_unk161() {  	// 161: +	debug(0, "oe2_unk161: stub");  } -void AGOSEngine::oe2_screenTextMsg() { -	// 162: print string +void AGOSEngine::oe2_unk162() { +	// 162: print string?  	showMessageFormat("%s\n", getStringPtrByID(getNextStringID())); -	getVarOrByte(); +	uint a = getVarOrByte(); +	debug(0, "oe2_unk162: stub (%d)", a);  }  void AGOSEngine::oe2_setSuperRoom() { @@ -167,4 +171,16 @@ void AGOSEngine::oe2_getSuperRoom() {  	writeNextVarContents(_superRoomNumber);  } +void AGOSEngine::oe2_unk177() { +	// 177: set unknown vga event +	uint a = getVarOrByte(); +	debug(0, "oe2_unk177: stub (%d)", a); +} + +void AGOSEngine::oe2_unk178() { +	// 178: set unknown vga event +	uint a = getVarOrByte(); +	debug(0, "oe2_unk178: stub (%d)", a); +} +  } // End of namespace AGOS diff --git a/engines/agos/script_ww.cpp b/engines/agos/script_ww.cpp index 7bb378147a..09563df092 100644 --- a/engines/agos/script_ww.cpp +++ b/engines/agos/script_ww.cpp @@ -72,7 +72,7 @@ void AGOSEngine::setupWaxworksOpcodes(OpcodeProc *op) {  	op[148] = &AGOSEngine::oe2_ifDoorOpen;  	op[149] = &AGOSEngine::oe2_ifDoorClosed;  	op[150] = &AGOSEngine::oe2_ifDoorLocked; -	op[162] = &AGOSEngine::oe2_screenTextMsg; +	op[162] = &AGOSEngine::oww_screenTextMsg;  	op[175] = &AGOSEngine::o_getDollar2;  	op[179] = &AGOSEngine::o_isAdjNoun;  	op[180] = &AGOSEngine::o_b2Set; @@ -131,6 +131,12 @@ void AGOSEngine::oww_textMenu() {  	_textMenu[slot] = getVarOrByte();  } +void AGOSEngine::oww_screenTextMsg() { +	// 162: print string +	showMessageFormat("%s\n", getStringPtrByID(getNextStringID())); +	getVarOrByte(); +} +  void AGOSEngine::oww_boxMessage() {  	// 184:  print message to box  	boxTextMessage((const char *)getStringPtrByID(getNextStringID()));  | 
