[Scummvm-cvs-logs] CVS: scummvm/saga sthread.cpp,1.23,1.24
Jonathan Gray
khalek at users.sourceforge.net
Thu Aug 26 16:31:46 CEST 2004
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/scumm scumm.cpp,1.152,1.153 scumm.h,1.454,1.455 resource.cpp,1.253,1.254 script.cpp,1.181,1.182
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm resource.cpp,1.254,1.255 script.cpp,1.182,1.183 scumm.cpp,1.153,1.154 scumm.h,1.455,1.456
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/scummvm/scummvm/saga
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24443
Modified Files:
sthread.cpp
Log Message:
add some comments about unimplemented opcodes
Index: sthread.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/sthread.cpp,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- sthread.cpp 22 Aug 2004 18:28:42 -0000 1.23
+++ sthread.cpp 26 Aug 2004 23:28:10 -0000 1.24
@@ -222,8 +222,8 @@
debug(0, "Executing thread offset: %lu (%x)", thread->i_offset, in_char);
switch (in_char) {
- case 0x01: // Align (ALGN)
- debug(0, "Stub: ALGN");
+ case 0x01: // nextblock
+ debug(0, "Stub: opcode 0x01(nextblock)");
break;
// STACK INSTRUCTIONS
@@ -350,12 +350,10 @@
param1 = scriptS.readUint16LE();
break;
- // (?) Unknown
- case 0x1B:
+ case 0x1B: // Return with value
unhandled = 1;
break;
- // (EXIT) End subscript
- case 0x1C:
+ case 0x1C: // Return with void
if (thread->stack->size() == 0) {
_vm->_console->print("Script execution complete.");
thread->executing = 0;
@@ -404,14 +402,6 @@
thread->i_offset = (unsigned long)param1;
}
break;
- // (JMPR): Relative jump
- case 0x57:
- // ignored?
- scriptS.readUint16LE();
- scriptS.readUint16LE();
- iparam1 = (long)scriptS.readByte();
- thread->i_offset += iparam1;
- break;
// (SWCH): Switch
case 0x22:
{
@@ -468,7 +458,7 @@
}
break;
-// MISC. INSTRUCTIONS
+// UNARY INSTRUCTIONS
// (NEG) Negate stack by 2's complement
case 0x25:
@@ -489,29 +479,25 @@
data = ~data;
thread->stack->push(data);
break;
- // (?)
- case 0x28:
+ case 0x28: // inc_v increment, don't push
unhandled = 1;
printf("??? ");
scriptS.readByte();
scriptS.readUint16LE();
break;
- // (?)
- case 0x29:
+ case 0x29: // dec_v decrement, don't push
unhandled = 1;
printf("??? ");
scriptS.readByte();
scriptS.readUint16LE();
break;
- // (?)
- case 0x2A:
+ case 0x2A: // postinc
unhandled = 1;
printf("??? ");
scriptS.readByte();
scriptS.readUint16LE();
break;
- // (?)
- case 0x2B:
+ case 0x2B: // postdec
unhandled = 1;
printf("??? ");
scriptS.readByte();
@@ -723,9 +709,11 @@
break;
// (DLGS): Initialize dialogue interface
case 0x54:
+ warning("dialog_begin opcode: stub");
break;
// (DLGX): Run dialogue interface
case 0x55:
+ warning("dialog_end opcode: stub");
break;
// (DLGO): Add a dialogue option to interface
case 0x56:
@@ -745,6 +733,12 @@
}
}
break;
+ case 0x57: // animate
+ scriptS.readUint16LE();
+ scriptS.readUint16LE();
+ iparam1 = (long)scriptS.readByte();
+ thread->i_offset += iparam1;
+ break;
// End instruction list
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/scumm scumm.cpp,1.152,1.153 scumm.h,1.454,1.455 resource.cpp,1.253,1.254 script.cpp,1.181,1.182
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm resource.cpp,1.254,1.255 script.cpp,1.182,1.183 scumm.cpp,1.153,1.154 scumm.h,1.455,1.456
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Scummvm-git-logs
mailing list