[Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.401,2.402 script_v100he.cpp,2.96,2.97 script_v72he.cpp,2.222,2.223 script_v7he.cpp,2.134,2.135 script_v90he.cpp,2.190,2.191
kirben
kirben at users.sourceforge.net
Tue Mar 22 16:17:18 CET 2005
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19951/scumm
Modified Files:
intern.h script_v100he.cpp script_v72he.cpp script_v7he.cpp
script_v90he.cpp
Log Message:
Add HE90 version of kernelGet/Set opcode and move HE90 specific cases over.
Index: intern.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/intern.h,v
retrieving revision 2.401
retrieving revision 2.402
diff -u -d -r2.401 -r2.402
--- intern.h 22 Mar 2005 00:46:47 -0000 2.401
+++ intern.h 23 Mar 2005 00:16:49 -0000 2.402
@@ -1047,6 +1047,8 @@
void o90_paletteOps();
void o90_unknownA5();
void o90_getActorAnimProgress();
+ void o90_kernelGetFunctions();
+ void o90_kernelSetFunctions();
};
class ScummEngine_v100he : public ScummEngine_v90he {
Index: script_v100he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v100he.cpp,v
retrieving revision 2.96
retrieving revision 2.97
diff -u -d -r2.96 -r2.97
--- script_v100he.cpp 17 Mar 2005 11:11:00 -0000 2.96
+++ script_v100he.cpp 23 Mar 2005 00:16:50 -0000 2.97
@@ -116,7 +116,7 @@
OPCODE(o6_wordArrayInc),
OPCODE(o6_jump),
/* 3C */
- OPCODE(o70_kernelSetFunctions),
+ OPCODE(o90_kernelSetFunctions),
OPCODE(o6_land),
OPCODE(o6_le),
OPCODE(o60_localizeArrayToScript),
@@ -278,7 +278,7 @@
/* BC */
OPCODE(o6_isAnyOf),
OPCODE(o6_getInventoryCount),
- OPCODE(o72_kernelGetFunctions),
+ OPCODE(o90_kernelGetFunctions),
OPCODE(o90_max),
/* C0 */
OPCODE(o90_min),
Index: script_v72he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v72he.cpp,v
retrieving revision 2.222
retrieving revision 2.223
diff -u -d -r2.222 -r2.223
--- script_v72he.cpp 22 Mar 2005 20:57:11 -0000 2.222
+++ script_v72he.cpp 23 Mar 2005 00:16:50 -0000 2.223
@@ -1559,23 +1559,6 @@
virtScreenSave(ah->data, args[1], args[2], args[3], args[4]);
push(readVar(0));
break;
- case 1001:
- {
- double a = args[1] * PI / 180.;
- push((int)(sin(a) * 100000));
- }
- break;
- case 1002:
- {
- double a = args[1] * PI / 180.;
- push((int)(cos(a) * 100000));
- }
- break;
- case 2001:
- // Used in football
- push(0);
- warning("o72_kernelGetFunctions: unhandled case 2001");
- break;
default:
error("o72_kernelGetFunctions: default case %d", args[0]);
}
Index: script_v7he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v7he.cpp,v
retrieving revision 2.134
retrieving revision 2.135
diff -u -d -r2.134 -r2.135
--- script_v7he.cpp 22 Mar 2005 20:57:11 -0000 2.134
+++ script_v7he.cpp 23 Mar 2005 00:16:51 -0000 2.135
@@ -829,16 +829,6 @@
// drawWizImage related
warning("o70_kernelSetFunctions: unhandled case 43");
break;
- case 714:
- break;
- case 1492:
- // Used in baseball
- warning("o70_kernelSetFunctions: unhandled case 1492");
- break;
- case 2001:
- // Used in SoccerMLS/Soccer2004
- warning("o70_kernelSetFunctions: unhandled case 2001");
- break;
default:
error("o70_kernelSetFunctions: default case %d (param count %d)", args[0], num);
}
Index: script_v90he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v90he.cpp,v
retrieving revision 2.190
retrieving revision 2.191
diff -u -d -r2.190 -r2.191
--- script_v90he.cpp 17 Mar 2005 11:06:43 -0000 2.190
+++ script_v90he.cpp 23 Mar 2005 00:16:51 -0000 2.191
@@ -291,8 +291,8 @@
OPCODE(o6_distObjectPt),
OPCODE(o6_distPtPt),
/* C8 */
- OPCODE(o72_kernelGetFunctions),
- OPCODE(o70_kernelSetFunctions),
+ OPCODE(o90_kernelGetFunctions),
+ OPCODE(o90_kernelSetFunctions),
OPCODE(o6_delayFrames),
OPCODE(o6_pickOneOf),
/* CC */
@@ -2175,4 +2175,87 @@
push(a->getAnimProgress());
}
+void ScummEngine_v90he::o90_kernelGetFunctions() {
+ int args[29];
+ int num;
+ ArrayHeader *ah;
+
+ num = getStackList(args, ARRAYSIZE(args));
+
+ switch (args[0]) {
+ case 1001:
+ {
+ double a = args[1] * PI / 180.;
+ push((int)(sin(a) * 100000));
+ }
+ break;
+ case 1002:
+ {
+ double a = args[1] * PI / 180.;
+ push((int)(cos(a) * 100000));
+ }
+ break;
+ case 2001:
+ // Used in football
+ warning("o90_kernelGetFunctions: U32 code (Num %d, args1 %d args 2 %d)", num, args[1], args[2]);
+ push(0);
+ break;
+ default:
+ error("o90_kernelGetFunctions: default case %d", args[0]);
+ }
+}
+
+void ScummEngine_v90he::o90_kernelSetFunctions() {
+ int args[29];
+ int num;
+ Actor *a;
+
+ num = getStackList(args, ARRAYSIZE(args));
+
+ debug(1, "o90_kernelSetFunctions: case %d (param count %d)", args[0], num);
+ switch (args[0]) {
+ case 20:
+ a = derefActor(args[1], "o90_kernelSetFunctions: 20");
+ queueAuxBlock(a);
+ break;
+ case 21:
+ _skipDrawObject = 1;
+ break;
+ case 22:
+ _skipDrawObject = 0;
+ break;
+ case 23:
+ _charset->clearCharsetMask();
+ _fullRedraw = 1;
+ break;
+ case 24:
+ _skipProcessActors = 1;
+ _fullRedraw = 1;
+ break;
+ case 25:
+ _skipProcessActors = 0;
+ _fullRedraw = 1;
+ break;
+ case 42:
+ // drawWizImage related
+ warning("o90_kernelSetFunctions: unhandled case 42");
+ break;
+ case 43:
+ // drawWizImage related
+ warning("o90_kernelSetFunctions: unhandled case 43");
+ break;
+ case 714:
+ break;
+ case 1492:
+ spriteInfoSet_flag13(args[1], args[2]);
+ break;
+ case 2001:
+ // Used in SoccerMLS/Soccer2004
+ warning("o90_kernelSetFunctions: U32 code (Num %d, args1 %d args 2 %d)", num, args[1], args[2]);
+ break;
+ default:
+ error("o90_kernelSetFunctions: default case %d (param count %d)", args[0], num);
+ }
+}
+
} // End of namespace Scumm
More information about the Scummvm-git-logs
mailing list