Added some more stubs for Kernel[Set/Get]functions. Some more comments
on opcodes svn-id: r12936
This commit is contained in:
parent
429c86f4f3
commit
5d8bf5faf8
2 changed files with 38 additions and 13 deletions
|
@ -665,6 +665,7 @@ void ScummEngine_v6he::o6_actorOps() {
|
|||
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 @@ void ScummEngine_v6he::o6_kernelSetFunctions() {
|
|||
|
||||
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::o6_readFile() {
|
|||
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 @@ void ScummEngine_v6he::o6_writeFile() {
|
|||
} else {
|
||||
writeFileFromArray(slot, resID);
|
||||
}
|
||||
debug(1, "o6_writeFile(%d, %d)", slot, resID);
|
||||
}
|
||||
|
||||
void ScummEngine_v6he::o6_setVolume() {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue