[Scummvm-cvs-logs] SF.net SVN: scummvm:[42170] scummvm/trunk/engines/sci/engine
thebluegr at users.sourceforge.net
thebluegr at users.sourceforge.net
Mon Jul 6 13:19:19 CEST 2009
Revision: 42170
http://scummvm.svn.sourceforge.net/scummvm/?rev=42170&view=rev
Author: thebluegr
Date: 2009-07-06 11:19:19 +0000 (Mon, 06 Jul 2009)
Log Message:
-----------
Assigned several unimplemented/unused kernel functions as stubs, so that we know when they're used and how they're called
Modified Paths:
--------------
scummvm/trunk/engines/sci/engine/kernel.cpp
scummvm/trunk/engines/sci/engine/kernel.h
scummvm/trunk/engines/sci/engine/kmisc.cpp
Modified: scummvm/trunk/engines/sci/engine/kernel.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kernel.cpp 2009-07-06 11:15:42 UTC (rev 42169)
+++ scummvm/trunk/engines/sci/engine/kernel.cpp 2009-07-06 11:19:19 UTC (rev 42170)
@@ -309,7 +309,7 @@
/*6f*/ DEFUN("6f", kTimesCos, "ii"),
/*70*/ DEFUN("Graph", kGraph, ".*"),
/*71*/ DEFUN("Joystick", kJoystick, ".*"),
- /*72*/ NOFUN("unknown72"),
+ /*72*/ NOFUN("unknown72"), // ShiftScreen, perhaps?
/*73*/ NOFUN("unknown73"),
// Experimental functions
@@ -322,7 +322,6 @@
/*(?)*/ DEFUN("IsItSkip", kIsItSkip, "iiiii"),
// Non-experimental Functions without a fixed ID
-
DEFUN("CosMult", kTimesCos, "ii"),
DEFUN("SinMult", kTimesSin, "ii"),
/*(?)*/ DEFUN("CosDiv", kCosDiv, "ii"),
@@ -341,6 +340,21 @@
// Special and NOP stuff
{NULL, k_Unknown, NULL},
+ // Stub functions
+ DEFUN("ShiftScreen", kStub, ".*"),
+ DEFUN("MemorySegment", kStub, ".*"),
+ DEFUN("ListOps", kStub, ".*"),
+ DEFUN("ATan", kStub, ".*"),
+ DEFUN("StrSplit", kStub, ".*"),
+ DEFUN("MergePoly", kStub, ".*"),
+ DEFUN("AssertPalette", kStub, ".*"),
+ DEFUN("TextColors", kStub, ".*"),
+ DEFUN("TextFonts", kStub, ".*"),
+ DEFUN("Record", kStub, ".*"),
+ DEFUN("PlayBack", kStub, ".*"),
+ DEFUN("DbugStr", kStub, ".*"),
+ DEFUN("Platform", kStub, ".*"), // SCI1
+
{NULL, NULL, NULL} // Terminator
};
@@ -779,11 +793,6 @@
offset = 4;
}
}
-
- if (_resmgr->_sciVersion == SCI_VERSION_1_1) {
- // KQ6CD calls unimplemented function 0x26
- _kernelNames[0x26] = "Dummy";
- }
}
#ifdef ENABLE_SCI32
Modified: scummvm/trunk/engines/sci/engine/kernel.h
===================================================================
--- scummvm/trunk/engines/sci/engine/kernel.h 2009-07-06 11:15:42 UTC (rev 42169)
+++ scummvm/trunk/engines/sci/engine/kernel.h 2009-07-06 11:19:19 UTC (rev 42170)
@@ -509,12 +509,10 @@
reg_t k_Unknown(EngineState *s, int funct_nr, int argc, reg_t *argv);
// The Unknown/Unnamed kernel function
-reg_t kstub(EngineState *s, int funct_nr, int argc, reg_t *argv);
+reg_t kStub(EngineState *s, int funct_nr, int argc, reg_t *argv);
// for unimplemented kernel functions
reg_t kNOP(EngineState *s, int funct_nr, int argc, reg_t *argv);
// for kernel functions that don't do anything
-reg_t kFsciEmu(EngineState *s, int funct_nr, int argc, reg_t *argv);
-// Emulating "old" kernel functions on the heap
} // End of namespace Sci
Modified: scummvm/trunk/engines/sci/engine/kmisc.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kmisc.cpp 2009-07-06 11:15:42 UTC (rev 42169)
+++ scummvm/trunk/engines/sci/engine/kmisc.cpp 2009-07-06 11:19:19 UTC (rev 42170)
@@ -237,9 +237,9 @@
return s->r_acc;
}
-reg_t kstub(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kStub(EngineState *s, int funct_nr, int argc, reg_t *argv) {
char tmpbuf[200];
- sprintf(tmpbuf, "Unimplemented syscall: %s[%x](",
+ sprintf(tmpbuf, "Unimplemented syscall: %s[%x] (",
s->_kernel->getKernelName(funct_nr).c_str(), funct_nr);
for (int i = 0; i < argc; i++) {
@@ -249,7 +249,7 @@
strcat(tmpbuf2, ", ");
strcat(tmpbuf, tmpbuf2);
}
- strcat(tmpbuf, ")\n");
+ strcat(tmpbuf, ")");
warning(tmpbuf);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list