[Scummvm-cvs-logs] CVS: scummvm/scumm intern.h,2.140,2.141 script_v6he.cpp,2.18,2.19
Eugene Sandulenko
sev at users.sourceforge.net
Thu Feb 19 16:44:01 CET 2004
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7982
Modified Files:
intern.h script_v6he.cpp
Log Message:
Added some more stubs for Kernel[Set/Get]functions. Some more comments
on opcodes
Index: intern.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/intern.h,v
retrieving revision 2.140
retrieving revision 2.141
diff -u -d -r2.140 -r2.141
--- intern.h 16 Feb 2004 05:53:17 -0000 2.140
+++ intern.h 20 Feb 2004 00:32:29 -0000 2.141
@@ -590,6 +590,8 @@
void o6_redimArray();
void o6_readINI();
void o6_unknownF9();
+ void o6_kernelSetFunctions1(byte *addr);
+ int o6_kernelGetFunctions1(byte *addr, int arg1, int arg2, int arg3, int agr4);
};
class ScummEngine_v7 : public ScummEngine_v6 {
Index: script_v6he.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v6he.cpp,v
retrieving revision 2.18
retrieving revision 2.19
diff -u -d -r2.18 -r2.19
--- script_v6he.cpp 19 Feb 2004 08:21:59 -0000 2.18
+++ script_v6he.cpp 20 Feb 2004 00:32:29 -0000 2.19
@@ -665,6 +665,7 @@
case 218:
{
// TODO: this opcode is used in the putt-putt fun pack, in 'checkers" mini game
+ // and in fbear at original save screen
int top_actor = a->top;
int bottom_actor = a->bottom;
@@ -876,34 +877,56 @@
num = getStackList(args, ARRAYSIZE(args));
- switch (args[0]) {
- case 1:
- // Used to restore images when decorating cake in
- // Fatty Bear's Birthday Surprise
- warning("o6_kernelSetFunctions: stub1()");
- break;
- default:
- error("o6_kernelSetFunctions: default case %d (param count %d)", args[0], num);
- break;
- }
+ switch (args[0]) {
+ case 1:
+ // Used to restore images when decorating cake in
+ // Fatty Bear's Birthday Surprise
+ debug(0, "stub ScummEngine_v6he::o6_kernelSetFunctions(%d, %d, %d, %d, %d, %d)",
+ args[0], args[1], args[2], args[3], args[4], args[5]);
+ //o6_kernelSetFunctions1(getResourceAddress(rtScreen, args[1]) + 6);
+ //if (args[5] >= args[3]) {
+ //}
+ break;
+ default:
+ error("o6_kernelSetFunctions: default case %d (param count %d)", args[0], num);
+ break;
+ }
}
+void ScummEngine_v6he::o6_kernelSetFunctions1(byte *addr) {
+ // TODO
+}
+
+
void ScummEngine_v6he::o6_kernelGetFunctions() {
int args[29];
+ int retval;
+ byte *addr;
getStackList(args, ARRAYSIZE(args));
switch (args[0]) {
case 1:
// Used to store images when decorating cake in
// Fatty Bear's Birthday Surprise
- warning("o6_kernelGetFunctions: stub1()");
- push(0);
+ debug(0, "stub ScummEngine_v6he::o6_kernelGetFunctions(%d, %d, %d, %d, %d)",
+ args[0], args[1], args[2], args[3], args[4]);
+ writeVar(0, 0);
+ defineArray(0, 3, 0, o6_kernelGetFunctions1(0, args[1], args[2], args[3], args[4]));
+ retval = readVar(0);
+ addr = getResourceAddress(rtString, retval);
+ o6_kernelGetFunctions1(addr + 6, args[1], args[2], args[3], args[4]);
+ push(retval);
break;
default:
error("o6_kernelGetFunctions: default case %d", args[0]);
}
}
+int ScummEngine_v6he::o6_kernelGetFunctions1(byte *addr, int arg1, int arg2, int arg3, int agr4) {
+ // TODO
+ return 0;
+}
+
void ScummEngine_v6he::o6_stampObject() {
int object, x, y, state;
@@ -1048,6 +1071,7 @@
void ScummEngine_v6he::writeFileFromArray(int slot, int resID) {
byte *ptr = getResourceAddress(rtString, resID);
// FIXME: hack for proper size: / 2 - 5
+ // does it really needed? Needs checking
int32 size = getResourceSize(rtString, resID) / 2 - 5;
_hFileTable[slot].write(ptr, size);
}
@@ -1068,7 +1092,6 @@
} else {
writeFileFromArray(slot, resID);
}
- debug(1, "o6_writeFile(%d, %d)", slot, resID);
}
void ScummEngine_v6he::o6_setVolume() {
More information about the Scummvm-git-logs
mailing list