[Scummvm-cvs-logs] SF.net SVN: scummvm:[43905] scummvm/trunk/engines/sci/engine

fingolfin at users.sourceforge.net fingolfin at users.sourceforge.net
Wed Sep 2 13:33:28 CEST 2009


Revision: 43905
          http://scummvm.svn.sourceforge.net/scummvm/?rev=43905&view=rev
Author:   fingolfin
Date:     2009-09-02 11:33:25 +0000 (Wed, 02 Sep 2009)

Log Message:
-----------
SCI: funct_nr is not used in 99% of all opcodes -- hide it in those (to be removed eventually)

Modified Paths:
--------------
    scummvm/trunk/engines/sci/engine/kernel.h
    scummvm/trunk/engines/sci/engine/kevent.cpp
    scummvm/trunk/engines/sci/engine/kfile.cpp
    scummvm/trunk/engines/sci/engine/kgraphics.cpp
    scummvm/trunk/engines/sci/engine/klists.cpp
    scummvm/trunk/engines/sci/engine/kmath.cpp
    scummvm/trunk/engines/sci/engine/kmenu.cpp
    scummvm/trunk/engines/sci/engine/kmisc.cpp
    scummvm/trunk/engines/sci/engine/kmovement.cpp
    scummvm/trunk/engines/sci/engine/kpathing.cpp
    scummvm/trunk/engines/sci/engine/kscripts.cpp
    scummvm/trunk/engines/sci/engine/ksound.cpp
    scummvm/trunk/engines/sci/engine/kstring.cpp

Modified: scummvm/trunk/engines/sci/engine/kernel.h
===================================================================
--- scummvm/trunk/engines/sci/engine/kernel.h	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kernel.h	2009-09-02 11:33:25 UTC (rev 43905)
@@ -44,7 +44,7 @@
 //#define DEBUG_PARSER	// enable for parser debugging
 
 /* Generic description: */
-typedef reg_t KernelFunc(EngineState *s, int funct_nr, int argc, reg_t *argv);
+typedef reg_t KernelFunc(EngineState *s, int, int argc, reg_t *argv);
 
 struct KernelFuncWithSignature {
 	KernelFunc *fun; /**< The actual function */
@@ -194,8 +194,10 @@
 */
 
 
+enum { WAS_FUNCT_NR = -1 };
+
 #define INV_SEL(_object_, _selector_, _noinvalid_) \
-	s, _object_,  ((SciEngine*)g_engine)->getKernel()->_selectorMap._selector_, _noinvalid_, funct_nr, argv, argc, __FILE__, __LINE__
+	s, _object_,  ((SciEngine*)g_engine)->getKernel()->_selectorMap._selector_, _noinvalid_, WAS_FUNCT_NR, argv, argc, __FILE__, __LINE__
 /* Kludge for use with invoke_selector(). Used for compatibility with compilers that can't
 ** handle vararg macros.
 */
@@ -371,144 +373,144 @@
 /******************** Kernel functions ********************/
 
 // New kernel functions
-reg_t kStrLen(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGetFarText(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kReadNumber(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kStrCat(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kStrCmp(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSetSynonyms(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kLock(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kPalette(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kNumCels(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kNumLoops(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDrawCel(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kCoordPri(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kPriCoord(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kShakeScreen(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSetCursor(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kMoveCursor(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kShow(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kPicNotValid(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kOnControl(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDrawPic(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGetPort(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSetPort(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kNewWindow(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDisposeWindow(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kCelWide(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kCelHigh(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSetJump(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDirLoop(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDoAvoider(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGetAngle(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGetDistance(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kRandom(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kAbs(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSqrt(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kTimesSin(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kTimesCos(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kCosMult(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSinMult(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kTimesTan(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kTimesCot(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kCosDiv(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSinDiv(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kValidPath(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kFOpen(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kFPuts(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kFGets(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kFClose(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kMapKeyToDir(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGlobalToLocal(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kLocalToGlobal(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kWait(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kRestartGame(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDeviceInfo(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGetEvent(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kCheckFreeSpace(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kFlushResources(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGetSaveFiles(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSetDebug(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kCheckSaveGame(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSaveGame(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kRestoreGame(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kFileIO(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGetTime(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kHaveMouse(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kJoystick(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGameIsRestarting(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGetCWD(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSort(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kStrEnd(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kMemory(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kAvoidPath(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kParse(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSaid(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kStrCpy(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kStrAt(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kEditControl(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDrawControl(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kHiliteControl(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kClone(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDisposeClone(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kCanBeHere(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSetNowSeen(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kInitBresen(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDoBresen(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kBaseSetter(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kAddToPic(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kAnimate(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDisplay(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGraph(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kFormat(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDoSound(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kAddMenu(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSetMenu(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGetMenu(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDrawStatus(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDrawMenuBar(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kMenuSelect(EngineState *s, int funct_nr, int argc, reg_t *argv);
+reg_t kStrLen(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGetFarText(EngineState *s, int, int argc, reg_t *argv);
+reg_t kReadNumber(EngineState *s, int, int argc, reg_t *argv);
+reg_t kStrCat(EngineState *s, int, int argc, reg_t *argv);
+reg_t kStrCmp(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSetSynonyms(EngineState *s, int, int argc, reg_t *argv);
+reg_t kLock(EngineState *s, int, int argc, reg_t *argv);
+reg_t kPalette(EngineState *s, int, int argc, reg_t *argv);
+reg_t kNumCels(EngineState *s, int, int argc, reg_t *argv);
+reg_t kNumLoops(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDrawCel(EngineState *s, int, int argc, reg_t *argv);
+reg_t kCoordPri(EngineState *s, int, int argc, reg_t *argv);
+reg_t kPriCoord(EngineState *s, int, int argc, reg_t *argv);
+reg_t kShakeScreen(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSetCursor(EngineState *s, int, int argc, reg_t *argv);
+reg_t kMoveCursor(EngineState *s, int, int argc, reg_t *argv);
+reg_t kShow(EngineState *s, int, int argc, reg_t *argv);
+reg_t kPicNotValid(EngineState *s, int, int argc, reg_t *argv);
+reg_t kOnControl(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDrawPic(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGetPort(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSetPort(EngineState *s, int, int argc, reg_t *argv);
+reg_t kNewWindow(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDisposeWindow(EngineState *s, int, int argc, reg_t *argv);
+reg_t kCelWide(EngineState *s, int, int argc, reg_t *argv);
+reg_t kCelHigh(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSetJump(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDirLoop(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDoAvoider(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGetAngle(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGetDistance(EngineState *s, int, int argc, reg_t *argv);
+reg_t kRandom(EngineState *s, int, int argc, reg_t *argv);
+reg_t kAbs(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSqrt(EngineState *s, int, int argc, reg_t *argv);
+reg_t kTimesSin(EngineState *s, int, int argc, reg_t *argv);
+reg_t kTimesCos(EngineState *s, int, int argc, reg_t *argv);
+reg_t kCosMult(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSinMult(EngineState *s, int, int argc, reg_t *argv);
+reg_t kTimesTan(EngineState *s, int, int argc, reg_t *argv);
+reg_t kTimesCot(EngineState *s, int, int argc, reg_t *argv);
+reg_t kCosDiv(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSinDiv(EngineState *s, int, int argc, reg_t *argv);
+reg_t kValidPath(EngineState *s, int, int argc, reg_t *argv);
+reg_t kFOpen(EngineState *s, int, int argc, reg_t *argv);
+reg_t kFPuts(EngineState *s, int, int argc, reg_t *argv);
+reg_t kFGets(EngineState *s, int, int argc, reg_t *argv);
+reg_t kFClose(EngineState *s, int, int argc, reg_t *argv);
+reg_t kMapKeyToDir(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGlobalToLocal(EngineState *s, int, int argc, reg_t *argv);
+reg_t kLocalToGlobal(EngineState *s, int, int argc, reg_t *argv);
+reg_t kWait(EngineState *s, int, int argc, reg_t *argv);
+reg_t kRestartGame(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDeviceInfo(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGetEvent(EngineState *s, int, int argc, reg_t *argv);
+reg_t kCheckFreeSpace(EngineState *s, int, int argc, reg_t *argv);
+reg_t kFlushResources(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGetSaveFiles(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSetDebug(EngineState *s, int, int argc, reg_t *argv);
+reg_t kCheckSaveGame(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSaveGame(EngineState *s, int, int argc, reg_t *argv);
+reg_t kRestoreGame(EngineState *s, int, int argc, reg_t *argv);
+reg_t kFileIO(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGetTime(EngineState *s, int, int argc, reg_t *argv);
+reg_t kHaveMouse(EngineState *s, int, int argc, reg_t *argv);
+reg_t kJoystick(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGameIsRestarting(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGetCWD(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSort(EngineState *s, int, int argc, reg_t *argv);
+reg_t kStrEnd(EngineState *s, int, int argc, reg_t *argv);
+reg_t kMemory(EngineState *s, int, int argc, reg_t *argv);
+reg_t kAvoidPath(EngineState *s, int, int argc, reg_t *argv);
+reg_t kParse(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSaid(EngineState *s, int, int argc, reg_t *argv);
+reg_t kStrCpy(EngineState *s, int, int argc, reg_t *argv);
+reg_t kStrAt(EngineState *s, int, int argc, reg_t *argv);
+reg_t kEditControl(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDrawControl(EngineState *s, int, int argc, reg_t *argv);
+reg_t kHiliteControl(EngineState *s, int, int argc, reg_t *argv);
+reg_t kClone(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDisposeClone(EngineState *s, int, int argc, reg_t *argv);
+reg_t kCanBeHere(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSetNowSeen(EngineState *s, int, int argc, reg_t *argv);
+reg_t kInitBresen(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDoBresen(EngineState *s, int, int argc, reg_t *argv);
+reg_t kBaseSetter(EngineState *s, int, int argc, reg_t *argv);
+reg_t kAddToPic(EngineState *s, int, int argc, reg_t *argv);
+reg_t kAnimate(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDisplay(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGraph(EngineState *s, int, int argc, reg_t *argv);
+reg_t kFormat(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDoSound(EngineState *s, int, int argc, reg_t *argv);
+reg_t kAddMenu(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSetMenu(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGetMenu(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDrawStatus(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDrawMenuBar(EngineState *s, int, int argc, reg_t *argv);
+reg_t kMenuSelect(EngineState *s, int, int argc, reg_t *argv);
 
-reg_t kLoad(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kUnLoad(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kScriptID(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDisposeScript(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kIsObject(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kRespondsTo(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kNewList(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDisposeList(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kNewNode(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kFirstNode(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kLastNode(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kEmptyList(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kNextNode(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kPrevNode(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kNodeValue(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kAddAfter(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kAddToFront(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kAddToEnd(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kFindKey(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDeleteKey(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kMemoryInfo(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kGetSaveDir(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kTextSize(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kIsItSkip(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kMessage(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDoAudio(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kDoSync(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kResCheck(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSetQuitStr(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kShowMovie(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kSetVideoMode(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kStrSplit(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t k_Unknown(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kPlatform(EngineState *s, int funct_nr, int argc, reg_t *argv);
-reg_t kPalVary(EngineState *s, int funct_nr, int argc, reg_t *argv);
+reg_t kLoad(EngineState *s, int, int argc, reg_t *argv);
+reg_t kUnLoad(EngineState *s, int, int argc, reg_t *argv);
+reg_t kScriptID(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDisposeScript(EngineState *s, int, int argc, reg_t *argv);
+reg_t kIsObject(EngineState *s, int, int argc, reg_t *argv);
+reg_t kRespondsTo(EngineState *s, int, int argc, reg_t *argv);
+reg_t kNewList(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDisposeList(EngineState *s, int, int argc, reg_t *argv);
+reg_t kNewNode(EngineState *s, int, int argc, reg_t *argv);
+reg_t kFirstNode(EngineState *s, int, int argc, reg_t *argv);
+reg_t kLastNode(EngineState *s, int, int argc, reg_t *argv);
+reg_t kEmptyList(EngineState *s, int, int argc, reg_t *argv);
+reg_t kNextNode(EngineState *s, int, int argc, reg_t *argv);
+reg_t kPrevNode(EngineState *s, int, int argc, reg_t *argv);
+reg_t kNodeValue(EngineState *s, int, int argc, reg_t *argv);
+reg_t kAddAfter(EngineState *s, int, int argc, reg_t *argv);
+reg_t kAddToFront(EngineState *s, int, int argc, reg_t *argv);
+reg_t kAddToEnd(EngineState *s, int, int argc, reg_t *argv);
+reg_t kFindKey(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDeleteKey(EngineState *s, int, int argc, reg_t *argv);
+reg_t kMemoryInfo(EngineState *s, int, int argc, reg_t *argv);
+reg_t kGetSaveDir(EngineState *s, int, int argc, reg_t *argv);
+reg_t kTextSize(EngineState *s, int, int argc, reg_t *argv);
+reg_t kIsItSkip(EngineState *s, int, int argc, reg_t *argv);
+reg_t kMessage(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDoAudio(EngineState *s, int, int argc, reg_t *argv);
+reg_t kDoSync(EngineState *s, int, int argc, reg_t *argv);
+reg_t kResCheck(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSetQuitStr(EngineState *s, int, int argc, reg_t *argv);
+reg_t kShowMovie(EngineState *s, int, int argc, reg_t *argv);
+reg_t kSetVideoMode(EngineState *s, int, int argc, reg_t *argv);
+reg_t kStrSplit(EngineState *s, int, int argc, reg_t *argv);
+reg_t k_Unknown(EngineState *s, int, int argc, reg_t *argv);
+reg_t kPlatform(EngineState *s, int, int argc, reg_t *argv);
+reg_t kPalVary(EngineState *s, int, 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, int argc, reg_t *argv);
 // for unimplemented kernel functions
-reg_t kNOP(EngineState *s, int funct_nr, int argc, reg_t *argv);
+reg_t kNOP(EngineState *s, int, int argc, reg_t *argv);
 // for kernel functions that don't do anything
 
 

Modified: scummvm/trunk/engines/sci/engine/kevent.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kevent.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kevent.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -35,7 +35,7 @@
 
 #define SCI_VARIABLE_GAME_SPEED 3
 
-reg_t kGetEvent(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGetEvent(EngineState *s, int, int argc, reg_t *argv) {
 	int mask = argv[0].toUint16();
 	reg_t obj = argv[1];
 	sci_event_t e;
@@ -151,7 +151,7 @@
 	return s->r_acc;
 }
 
-reg_t kMapKeyToDir(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kMapKeyToDir(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t obj = argv[0];
 	SegManager *segManager = s->segmentManager;
 
@@ -201,7 +201,7 @@
 	return s->r_acc;
 }
 
-reg_t kGlobalToLocal(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGlobalToLocal(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t obj = argc ? argv[0] : NULL_REG; // Can this really happen? Lars
 	SegManager *segManager = s->segmentManager;
 
@@ -217,7 +217,7 @@
 
 }
 
-reg_t kLocalToGlobal(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kLocalToGlobal(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t obj = argc ? argv[0] : NULL_REG; // Can this really happen? Lars
 	SegManager *segManager = s->segmentManager;
 
@@ -232,7 +232,7 @@
 	return s->r_acc;
 }
 
-reg_t kJoystick(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kJoystick(EngineState *s, int, int argc, reg_t *argv) {
 	// Subfunction 12 sets/gets joystick repeat rate
 	debug(5, "Unimplemented syscall 'Joystick()'");
 	return NULL_REG;

Modified: scummvm/trunk/engines/sci/engine/kfile.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kfile.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kfile.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -196,7 +196,7 @@
 	debug(3, " -> opened file '%s' with handle %d", englishName.c_str(), handle);
 }
 
-reg_t kFOpen(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kFOpen(EngineState *s, int, int argc, reg_t *argv) {
 	char *name = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 	int mode = argv[1].toUint16();
 
@@ -227,7 +227,7 @@
 		f->close();
 }
 
-reg_t kFClose(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kFClose(EngineState *s, int, int argc, reg_t *argv) {
 	debug(3, "kFClose(%d)", argv[0].toUint16());
 	file_close(s, argv[0].toUint16());
 	return s->r_acc;
@@ -248,7 +248,7 @@
 	f->_out->write(data, length);
 }
 
-reg_t kFPuts(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kFPuts(EngineState *s, int, int argc, reg_t *argv) {
 	int handle = argv[0].toUint16();
 	char *data = kernel_dereference_char_pointer(s->segmentManager, argv[1], 0);
 
@@ -306,7 +306,7 @@
 	s->r_acc = make_reg(0, f->_in->seek(offset, whence));
 }
 
-reg_t kFGets(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kFGets(EngineState *s, int, int argc, reg_t *argv) {
 	char *dest = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 	int maxsize = argv[1].toUint16();
 	int handle = argv[2].toUint16();
@@ -319,7 +319,7 @@
 /**
  * Writes the cwd to the supplied address and returns the address in acc.
  */
-reg_t kGetCWD(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGetCWD(EngineState *s, int, int argc, reg_t *argv) {
 	char *targetaddr = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 
 	// We do not let the scripts see the file system, instead pretending
@@ -350,7 +350,7 @@
 	K_DEVICE_INFO_GET_SAVEFILE_NAME = 8
 };
 
-reg_t kDeviceInfo(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDeviceInfo(EngineState *s, int, int argc, reg_t *argv) {
 	int mode = argv[0].toUint16();
 	char *game_prefix, *input_s, *output_s;
 
@@ -417,7 +417,7 @@
 	return s->r_acc;
 }
 
-reg_t kGetSaveDir(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGetSaveDir(EngineState *s, int, int argc, reg_t *argv) {
 #ifdef ENABLE_SCI32
 	// TODO: SCI32 uses a parameter here.
 	if (argc > 0)
@@ -427,7 +427,7 @@
 	return make_reg(s->sys_strings_segment, SYS_STRING_SAVEDIR);
 }
 
-reg_t kCheckFreeSpace(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kCheckFreeSpace(EngineState *s, int, int argc, reg_t *argv) {
 	char *path = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 
 	debug(3, "kCheckFreeSpace(%s)", path);
@@ -485,7 +485,7 @@
 	qsort(saves.begin(), saves.size(), sizeof(SavegameDesc), _savegame_index_struct_compare);
 }
 
-reg_t kCheckSaveGame(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kCheckSaveGame(EngineState *s, int, int argc, reg_t *argv) {
 	char *game_id = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 	int savedir_nr = argv[1].toUint16();
 
@@ -521,7 +521,7 @@
 	return s->r_acc;
 }
 
-reg_t kGetSaveFiles(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGetSaveFiles(EngineState *s, int, int argc, reg_t *argv) {
 	char *game_id = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 	char *nametarget = kernel_dereference_char_pointer(s->segmentManager, argv[1], 0);
 	reg_t nametarget_base = argv[1];
@@ -571,7 +571,7 @@
 	return s->r_acc;
 }
 
-reg_t kSaveGame(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSaveGame(EngineState *s, int, int argc, reg_t *argv) {
 	char *game_id = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 	int savedir_nr = argv[1].toUint16();
 	int savedir_id; // Savegame ID, derived from savedir_nr and the savegame ID list
@@ -644,7 +644,7 @@
 	return s->r_acc;
 }
 
-reg_t kRestoreGame(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kRestoreGame(EngineState *s, int, int argc, reg_t *argv) {
 	char *game_id = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 	int savedir_nr = argv[1].toUint16();
 
@@ -683,7 +683,7 @@
 	return s->r_acc;
 }
 
-reg_t kValidPath(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kValidPath(EngineState *s, int, int argc, reg_t *argv) {
 	const char *path = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 
 	// FIXME: For now, we only accept the (fake) root dir "/" as a valid path.
@@ -751,7 +751,7 @@
 
 
 
-reg_t kFileIO(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kFileIO(EngineState *s, int, int argc, reg_t *argv) {
 	int func_nr = argv[0].toUint16();
 
 	switch (func_nr) {

Modified: scummvm/trunk/engines/sci/engine/kgraphics.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kgraphics.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kgraphics.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -291,7 +291,7 @@
 	return retval;
 }
 
-static reg_t kSetCursorSci0(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+static reg_t kSetCursorSci0(EngineState *s, int, int argc, reg_t *argv) {
 	int16 cursor = argv[0].toSint16();
 
 	if ((argc >= 2) && (argv[1].toSint16() == 0))
@@ -308,7 +308,7 @@
 	return s->r_acc;
 }
 
-static reg_t kSetCursorSci11(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+static reg_t kSetCursorSci11(EngineState *s, int, int argc, reg_t *argv) {
 	Common::Point *hotspot = NULL;
 
 	switch (argc) {
@@ -349,19 +349,19 @@
 	return s->r_acc;
 }
 
-reg_t kSetCursor(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSetCursor(EngineState *s, int, int argc, reg_t *argv) {
 	switch (s->detectSetCursorType()) {
 	case SCI_VERSION_0_EARLY:
-		return kSetCursorSci0(s, funct_nr, argc, argv);
+		return kSetCursorSci0(s, WAS_FUNCT_NR, argc, argv);
 	case SCI_VERSION_1_1:
-		return kSetCursorSci11(s, funct_nr, argc, argv);
+		return kSetCursorSci11(s, WAS_FUNCT_NR, argc, argv);
 	default:
 		warning("Unknown SetCursor type");
 		return NULL_REG;
 	}
 }
 
-reg_t kMoveCursor(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kMoveCursor(EngineState *s, int, int argc, reg_t *argv) {
 	Common::Point newPos;
 
 	newPos = s->gfx_state->pointer_pos;
@@ -386,7 +386,7 @@
 	return s->r_acc;
 }
 
-reg_t kShow(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kShow(EngineState *s, int, int argc, reg_t *argv) {
 	int old_map = s->pic_visible_map;
 
 	s->pic_visible_map = (argc > 0) ? (gfx_map_mask_t) argv[0].toUint16() : GFX_MASK_VISUAL;
@@ -416,7 +416,7 @@
 	return s->r_acc;
 }
 
-reg_t kPicNotValid(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kPicNotValid(EngineState *s, int, int argc, reg_t *argv) {
 	s->r_acc = make_reg(0, s->pic_not_valid);
 	if (argc)
 		s->pic_not_valid = (byte)argv[0].toUint16();
@@ -474,7 +474,7 @@
 static int port_origin_x = 0;	// FIXME: Avoid non-const global vars
 static int port_origin_y = 0;	// FIXME: Avoid non-const global vars
 
-reg_t kGraph(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGraph(EngineState *s, int, int argc, reg_t *argv) {
 	rect_t area;
 	GfxPort *port = s->port;
 	int redraw_port = 0;
@@ -609,7 +609,7 @@
 	return s->r_acc;
 }
 
-reg_t kTextSize(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kTextSize(EngineState *s, int, int argc, reg_t *argv) {
 	int width, height;
 	char *text = argv[1].segment ? (char *) kernel_dereference_bulk_pointer(s->segmentManager, argv[1], 0) : NULL;
 	const char *sep = NULL; 
@@ -642,7 +642,7 @@
 	return s->r_acc;
 }
 
-reg_t kWait(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kWait(EngineState *s, int, int argc, reg_t *argv) {
 	uint32 time;
 	int sleep_time = argv[0].toUint16();
 
@@ -660,19 +660,19 @@
 	return s->r_acc;
 }
 
-reg_t kCoordPri(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kCoordPri(EngineState *s, int, int argc, reg_t *argv) {
 	int y = argv[0].toSint16();
 
 	return make_reg(0, _find_view_priority(s, y));
 }
 
-reg_t kPriCoord(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kPriCoord(EngineState *s, int, int argc, reg_t *argv) {
 	int priority = argv[0].toSint16();
 
 	return make_reg(0, _find_priority_band(s, priority));
 }
 
-void _k_dirloop(reg_t obj, uint16 angle, EngineState *s, int funct_nr, int argc, reg_t *argv) {
+void _k_dirloop(reg_t obj, uint16 angle, EngineState *s, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	int view = GET_SEL32V(obj, view);
 	int signal = GET_SEL32V(obj, signal);
@@ -719,8 +719,8 @@
 	PUT_SEL32V(obj, loop, loop);
 }
 
-reg_t kDirLoop(EngineState *s, int funct_nr, int argc, reg_t *argv) {
-	_k_dirloop(argv[0], argv[1].toUint16(), s, funct_nr, argc, argv);
+reg_t kDirLoop(EngineState *s, int, int argc, reg_t *argv) {
+	_k_dirloop(argv[0], argv[1].toUint16(), s, argc, argv);
 
 	return s->r_acc;
 }
@@ -730,7 +730,7 @@
 
 static Common::Rect nsrect_clip(EngineState *s, int y, Common::Rect retval, int priority);
 
-static int collides_with(EngineState *s, Common::Rect area, reg_t other_obj, int use_nsrect, int view_mask, int funct_nr, int argc, reg_t *argv) {
+static int collides_with(EngineState *s, Common::Rect area, reg_t other_obj, int use_nsrect, int view_mask, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	int other_signal = GET_SEL32V(other_obj, signal);
 	int other_priority = GET_SEL32V(other_obj, priority);
@@ -770,7 +770,7 @@
 	return 0;
 }
 
-reg_t kCanBeHere(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kCanBeHere(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t obj = argv[0];
 	reg_t cliplist_ref = (argc > 1) ? argv[1] : NULL_REG;
@@ -818,7 +818,7 @@
 			if (widget->_ID && (widget->signal & _K_VIEW_SIG_FLAG_STOPUPD)
 			        && ((widget->_ID != obj.segment) || (widget->_subID != obj.offset))
 			        && is_object(s->segmentManager, make_reg(widget->_ID, widget->_subID)))
-				if (collides_with(s, abs_zone, make_reg(widget->_ID, widget->_subID), 1, GASEOUS_VIEW_MASK_ACTIVE, funct_nr, argc, argv))
+				if (collides_with(s, abs_zone, make_reg(widget->_ID, widget->_subID), 1, GASEOUS_VIEW_MASK_ACTIVE, argc, argv))
 					return not_register(s, NULL_REG);
 
 			widget = (GfxDynView *)widget->_next;
@@ -847,7 +847,7 @@
 				warning("CanBeHere() cliplist contains non-object %04x:%04x", PRINT_REG(other_obj));
 			} else if (other_obj != obj) { // Clipping against yourself is not recommended
 
-				if (collides_with(s, abs_zone, other_obj, 0, GASEOUS_VIEW_MASK_PASSIVE, funct_nr, argc, argv)) {
+				if (collides_with(s, abs_zone, other_obj, 0, GASEOUS_VIEW_MASK_PASSIVE, argc, argv)) {
 					debugC(2, kDebugLevelBresen, " -> %04x\n", retval);
 					return not_register(s, NULL_REG);
 				}
@@ -864,7 +864,7 @@
 	return not_register(s, make_reg(0, retval));
 }  // CanBeHere
 
-reg_t kIsItSkip(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kIsItSkip(EngineState *s, int, int argc, reg_t *argv) {
 	int view = argv[0].toSint16();
 	int loop = argv[1].toSint16();
 	int cel = argv[2].toSint16();
@@ -889,7 +889,7 @@
 	return make_reg(0, pxm->index_data[y * pxm->index_width + x] == pxm->color_key);
 }
 
-reg_t kCelHigh(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kCelHigh(EngineState *s, int, int argc, reg_t *argv) {
 	int view = argv[0].toSint16();
 	int loop = argv[1].toSint16();
 	int cel = argv[2].toSint16();
@@ -907,7 +907,7 @@
 		return make_reg(0, height);
 }
 
-reg_t kCelWide(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kCelWide(EngineState *s, int, int argc, reg_t *argv) {
 	int view = argv[0].toSint16();
 	int loop = argv[1].toSint16();
 	int cel = argv[2].toSint16();
@@ -925,7 +925,7 @@
 		return make_reg(0, width);
 }
 
-reg_t kNumLoops(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kNumLoops(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t obj = argv[0];
 	int view = GET_SEL32V(obj, view);
@@ -941,7 +941,7 @@
 	return make_reg(0, loops_nr);
 }
 
-reg_t kNumCels(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kNumCels(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t obj = argv[0];
 	int loop = GET_SEL32V(obj, loop);
@@ -960,7 +960,7 @@
 	return make_reg(0, cel + 1);
 }
 
-reg_t kOnControl(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kOnControl(EngineState *s, int, int argc, reg_t *argv) {
 	int arg = 0;
 	gfx_map_mask_t map;
 	int xstart, ystart;
@@ -988,7 +988,7 @@
 
 #define K_DRAWPIC_FLAG_MIRRORED (1 << 14)
 
-reg_t kDrawPic(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDrawPic(EngineState *s, int, int argc, reg_t *argv) {
 	drawn_pic_t dp;
 	bool add_to_pic = (argc > 2) ? !argv[2].toSint16() : false;
 	gfx_color_t transparent = s->wm_port->_bgcolor;
@@ -1145,7 +1145,7 @@
 	PUT_SEL32V(object, brBottom, absrect.bottom);
 }
 
-reg_t kBaseSetter(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kBaseSetter(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t object = argv[0];
 
 	_k_base_setter(s, object);
@@ -1244,7 +1244,7 @@
 	PUT_SEL32V(object, nsBottom, absrect.bottom);
 }
 
-reg_t kSetNowSeen(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSetNowSeen(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t object = argv[0];
 
 	_k_set_now_seen(s, object);
@@ -1252,7 +1252,7 @@
 	return s->r_acc;
 }
 
-reg_t kPalette(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kPalette(EngineState *s, int, int argc, reg_t *argv) {
 	switch (argv[0].toUint16()) {
 	case 1:
 		debug(5, "STUB: kPalette() effect 1, direct palette set");
@@ -1320,7 +1320,7 @@
 	return s->r_acc;
 }
 
-reg_t kPalVary(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kPalVary(EngineState *s, int, int argc, reg_t *argv) {
 	warning("STUB: kPalVary()");
 	return NULL_REG;
 }
@@ -1359,7 +1359,7 @@
 	}
 }
 
-reg_t kDrawControl(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDrawControl(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t obj = argv[0];
 
 	_k_disable_delete_for_now(s, obj);
@@ -1368,7 +1368,7 @@
 	return NULL_REG;
 }
 
-reg_t kHiliteControl(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kHiliteControl(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t obj = argv[0];
 
 	_k_draw_control(s, obj, 1);
@@ -1398,7 +1398,7 @@
 		--textlen; \
 	}
 
-reg_t kEditControl(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kEditControl(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t obj = argv[0];
 	reg_t event = argv[1];
@@ -1788,8 +1788,8 @@
 
 static bool _k_animate_ran = false;	// FIXME: Avoid non-const global vars
 
-int _k_view_list_dispose_loop(EngineState *s, List *list, GfxDynView *widget, int funct_nr, int argc, reg_t *argv) {
-// disposes all list members flagged for disposal; funct_nr is the invoking kfunction
+int _k_view_list_dispose_loop(EngineState *s, List *list, GfxDynView *widget, int argc, reg_t *argv) {
+// disposes all list members flagged for disposal
 // returns non-zero IFF views were dropped
 	int signal;
 	int dropped = 0;
@@ -1800,7 +1800,7 @@
 	if (widget) {
 		int retval;
 		// Recurse:
-		retval = _k_view_list_dispose_loop(s, list, (GfxDynView *)widget->_next, funct_nr, argc, argv);
+		retval = _k_view_list_dispose_loop(s, list, (GfxDynView *)widget->_next, argc, argv);
 
 		if (retval == -1) // Bail out on annihilation, rely on re-start from Animate()
 			return -1;
@@ -1881,7 +1881,7 @@
 	_K_MAKE_VIEW_LIST_DRAW_TO_CONTROL_MAP = 4
 };
 
-static GfxDynView *_k_make_dynview_obj(EngineState *s, reg_t obj, int options, int nr, int funct_nr, int argc, reg_t *argv) {
+static GfxDynView *_k_make_dynview_obj(EngineState *s, reg_t obj, int options, int nr, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	short oldloop, oldcel;
 	int cel, loop, view_nr = (int16)GET_SEL32V(obj, view);
@@ -1961,10 +1961,10 @@
 	}
 }
 
-static void _k_make_view_list(EngineState *s, GfxList **widget_list, List *list, int options, int funct_nr, int argc, reg_t *argv) {
+static void _k_make_view_list(EngineState *s, GfxList **widget_list, List *list, int options, int argc, reg_t *argv) {
 /* Creates a view_list from a node list in heap space. Returns the list, stores the
 ** number of list entries in *list_nr. Calls doit for each entry if cycle is set.
-** argc, argv, funct_nr should be the same as in the calling kernel function.
+** argc, argv should be the same as in the calling kernel function.
 */
 	SegManager *segManager = s->segmentManager;
 	Node *node;
@@ -2009,7 +2009,7 @@
 		if (list->first.segment == 0 && list->first.offset == 0) // The cast list was completely emptied!
 			break;
 
-		tempWidget = _k_make_dynview_obj(s, obj, options, sequence_nr--, funct_nr, argc, argv);
+		tempWidget = _k_make_dynview_obj(s, obj, options, sequence_nr--, argc, argv);
 		if (tempWidget)
 			(*widget_list)->add((GfxContainer *)(*widget_list), tempWidget);
 
@@ -2280,7 +2280,7 @@
 
 }
 
-reg_t kAddToPic(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kAddToPic(EngineState *s, int, int argc, reg_t *argv) {
 	GfxList *pic_views;
 	reg_t list_ref = argv[0];
 
@@ -2324,7 +2324,7 @@
 		pic_views = gfxw_new_list(s->picture_port->_bounds, 1);
 
 		debugC(2, kDebugLevelGraphics, "Preparing picview list...\n");
-		_k_make_view_list(s, &pic_views, list, 0, funct_nr, argc, argv);
+		_k_make_view_list(s, &pic_views, list, 0, argc, argv);
 		_k_prepare_view_list(s, pic_views, _K_MAKE_VIEW_LIST_DRAW_TO_CONTROL_MAP);
 		// Store pic views for later re-use
 
@@ -2339,11 +2339,11 @@
 	return s->r_acc;
 }
 
-reg_t kGetPort(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGetPort(EngineState *s, int, int argc, reg_t *argv) {
 	return make_reg(0, s->port->_ID);
 }
 
-reg_t kSetPort(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSetPort(EngineState *s, int, int argc, reg_t *argv) {
 	if (activated_icon_bar && argc == 6) {
 		port_origin_x = port_origin_y = 0;
 		activated_icon_bar = false;
@@ -2412,7 +2412,7 @@
 	return NULL_REG;
 }
 
-reg_t kDrawCel(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDrawCel(EngineState *s, int, int argc, reg_t *argv) {
 	int view = argv[0].toSint16();
 	int loop = argv[1].toSint16();
 	int cel = argv[2].toSint16();
@@ -2444,7 +2444,7 @@
 	return s->r_acc;
 }
 
-reg_t kDisposeWindow(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDisposeWindow(EngineState *s, int, int argc, reg_t *argv) {
 	unsigned int goner_nr = argv[0].toSint16();
 	GfxPort *goner;
 	GfxPort *pred;
@@ -2483,7 +2483,7 @@
 	return s->r_acc;
 }
 
-reg_t kNewWindow(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kNewWindow(EngineState *s, int, int argc, reg_t *argv) {
 	GfxPort *window;
 	int x, y, xl, yl, flags;
 	gfx_color_t bgcolor;
@@ -2594,7 +2594,7 @@
 #define GRAPH_UPDATE_BOX(s, x, y, xl, yl) gfxop_draw_pixmap(s->gfx_state, newscreen, \
 	gfx_rect(x, (((y) < 10)? 10 : (y)) - 10, xl, (((y) < 10)? ((y) - 10) : 0) + (yl)), Common::Point(x, ((y) < 10)? 10 : (y) ));
 
-static void animate_do_animation(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+static void animate_do_animation(EngineState *s, int argc, reg_t *argv) {
 	long animation_delay = 5;
 	int i, remaining_checkers;
 	int update_counter;
@@ -2978,7 +2978,7 @@
 	s->old_screen = NULL;
 }
 
-reg_t kAnimate(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kAnimate(EngineState *s, int, int argc, reg_t *argv) {
 	// Animations are supposed to take a maximum of animation_delay milliseconds.
 	reg_t cast_list_ref = (argc > 0) ? argv[0] : NULL_REG;
 	int cycle = (argc > 1) ? argv[1].toUint16() : 0;
@@ -3009,7 +3009,7 @@
 		GfxList *templist = gfxw_new_list(s->dyn_views->_bounds, 0);
 
 		_k_make_view_list(s, &(templist), cast_list, (cycle ? _K_MAKE_VIEW_LIST_CYCLE : 0)
-		                  | _K_MAKE_VIEW_LIST_CALC_PRIORITY, funct_nr, argc, argv);
+		                  | _K_MAKE_VIEW_LIST_CALC_PRIORITY, argc, argv);
 
 		// Make sure that none of the doits() did something evil
 		assert_primary_widget_lists(s);
@@ -3021,7 +3021,7 @@
 		// End of doit() recovery code
 
 		if (s->pic_is_new) { // Happens if DrawPic() is executed by a dynview (yes, that happens)
-			kAnimate(s, funct_nr, argc, argv); /* Tail-recurse */
+			kAnimate(s, WAS_FUNCT_NR, argc, argv); /* Tail-recurse */
 			return s->r_acc;
 		}
 
@@ -3048,7 +3048,7 @@
 		// Mark screen as dirty so picviews will be drawn correctly
 		FULL_REDRAW();
 
-		animate_do_animation(s, funct_nr, argc, argv);
+		animate_do_animation(s, argc, argv);
 	} // if (open_animation)
 
 	if (cast_list) {
@@ -3060,7 +3060,7 @@
 		_k_view_list_do_postdraw(s, s->dyn_views);
 
 		// _k_view_list_dispose_loop() returns -1 if it requested a re-start, so we do just that.
-		while ((retval = _k_view_list_dispose_loop(s, cast_list, (GfxDynView *) s->dyn_views->_contents, funct_nr, argc, argv) < 0))
+		while ((retval = _k_view_list_dispose_loop(s, cast_list, (GfxDynView *) s->dyn_views->_contents, argc, argv) < 0))
 			reparentize = 1;
 
 		if (s->drop_views->_contents) {
@@ -3088,7 +3088,7 @@
 #define SHAKE_DOWN 1
 #define SHAKE_RIGHT 2
 
-reg_t kShakeScreen(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kShakeScreen(EngineState *s, int, int argc, reg_t *argv) {
 	int shakes = (argc > 0) ? argv[0].toSint16() : 1;
 	int directions = (argc > 1) ? argv[1].toSint16() : 1;
 	gfx_pixmap_t *screen = gfxop_grab_pixmap(s->gfx_state, gfx_rect(0, 0, 320, 200));
@@ -3136,7 +3136,7 @@
 #define K_DISPLAY_RESTORE_UNDER 108
 #define K_DONT_UPDATE_IMMEDIATELY 121
 
-reg_t kDisplay(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDisplay(EngineState *s, int, int argc, reg_t *argv) {
 	int argpt;
 	reg_t textp = argv[0];
 	int index = (argc > 1) ? argv[1].toUint16() : 0;
@@ -3336,7 +3336,7 @@
 	return s->r_acc;
 }
 
-static reg_t kShowMovie_Windows(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+static reg_t kShowMovie_Windows(EngineState *s, int argc, reg_t *argv) {
 	const char *filename = kernel_dereference_char_pointer(s->segmentManager, argv[1], 0);
 	
 	Graphics::AVIPlayer *player = new Graphics::AVIPlayer(g_system);
@@ -3414,7 +3414,7 @@
 	return s->r_acc;
 }
 
-static reg_t kShowMovie_DOS(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+static reg_t kShowMovie_DOS(EngineState *s, int argc, reg_t *argv) {
 	const char *filename = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 	int delay = argv[1].toUint16(); // Time between frames in ticks
 	int frameNr = 0;
@@ -3460,7 +3460,7 @@
 	return s->r_acc;
 }
 
-reg_t kShowMovie(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kShowMovie(EngineState *s, int, int argc, reg_t *argv) {
 	// KQ6 Windows calls this with one argument. It doesn't seem
 	// to have a purpose...
 	if (argc == 1)
@@ -3469,12 +3469,12 @@
 	// The Windows and DOS versions use different video format as well
 	// as a different argument set.
 	if (argv[0].toUint16() == 0)
-		return kShowMovie_Windows(s, funct_nr, argc, argv);
+		return kShowMovie_Windows(s, argc, argv);
 
-	return kShowMovie_DOS(s, funct_nr, argc, argv);
+	return kShowMovie_DOS(s, argc, argv);
 }
 
-reg_t kSetVideoMode(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSetVideoMode(EngineState *s, int, int argc, reg_t *argv) {
 	// This call is used for KQ6's intro. It has one parameter, which is
 	// 1 when the intro begins, and 0 when it ends. It is suspected that
 	// this is actually a flag to enable video planar memory access, as

Modified: scummvm/trunk/engines/sci/engine/klists.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/klists.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/klists.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -132,7 +132,7 @@
 }
 #endif
 
-reg_t kNewList(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kNewList(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t listbase;
 	List *l;
 	l = s->segmentManager->alloc_List(&listbase);
@@ -142,7 +142,7 @@
 	return listbase; // Return list base address
 }
 
-reg_t kDisposeList(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDisposeList(EngineState *s, int, int argc, reg_t *argv) {
 	List *l = lookup_list(s, argv[0]);
 
 	if (!l) {
@@ -185,7 +185,7 @@
 	return nodebase;
 }
 
-reg_t kNewNode(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kNewNode(EngineState *s, int, int argc, reg_t *argv) {
 	s->r_acc = _k_new_node(s, argv[0], argv[1]);
 
 	debugC(2, kDebugLevelNodes, "New nodebase at %04x:%04x\n", PRINT_REG(s->r_acc));
@@ -193,7 +193,7 @@
 	return s->r_acc;
 }
 
-reg_t kFirstNode(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kFirstNode(EngineState *s, int, int argc, reg_t *argv) {
 	if (argv[0].isNull())
 		return NULL_REG;
 	List *l = lookup_list(s, argv[0]);
@@ -207,7 +207,7 @@
 		return NULL_REG;
 }
 
-reg_t kLastNode(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kLastNode(EngineState *s, int, int argc, reg_t *argv) {
 	List *l = lookup_list(s, argv[0]);
 
 	if (l && !sane_listp(s, argv[0]))
@@ -219,7 +219,7 @@
 		return NULL_REG;
 }
 
-reg_t kEmptyList(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kEmptyList(EngineState *s, int, int argc, reg_t *argv) {
 	List *l = lookup_list(s, argv[0]);
 
 	if (!l || !sane_listp(s, argv[0]))
@@ -276,7 +276,7 @@
 	l->last = nodebase;
 }
 
-reg_t kNextNode(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kNextNode(EngineState *s, int, int argc, reg_t *argv) {
 	Node *n = lookup_node(s, argv[0]);
 	if (!sane_nodep(s, argv[0])) {
 		error("List node at %04x:%04x is not sane anymore", PRINT_REG(argv[0]));
@@ -286,7 +286,7 @@
 	return n->succ;
 }
 
-reg_t kPrevNode(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kPrevNode(EngineState *s, int, int argc, reg_t *argv) {
 	Node *n = lookup_node(s, argv[0]);
 	if (!sane_nodep(s, argv[0]))
 		error("List node at %04x:%04x is not sane anymore", PRINT_REG(argv[0]));
@@ -294,7 +294,7 @@
 	return n->pred;
 }
 
-reg_t kNodeValue(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kNodeValue(EngineState *s, int, int argc, reg_t *argv) {
 	Node *n = lookup_node(s, argv[0]);
 	if (!sane_nodep(s, argv[0])) {
 		error("List node at %04x:%04x is not sane", PRINT_REG(argv[0]));
@@ -304,12 +304,12 @@
 	return n->value;
 }
 
-reg_t kAddToFront(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kAddToFront(EngineState *s, int, int argc, reg_t *argv) {
 	_k_add_to_front(s, argv[0], argv[1]);
 	return s->r_acc;
 }
 
-reg_t kAddAfter(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kAddAfter(EngineState *s, int, int argc, reg_t *argv) {
 	List *l = lookup_list(s, argv[0]);
 	Node *firstnode = argv[1].isNull() ? NULL : lookup_node(s, argv[1]);
 	Node *newnode = lookup_node(s, argv[2]);
@@ -348,12 +348,12 @@
 	return s->r_acc;
 }
 
-reg_t kAddToEnd(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kAddToEnd(EngineState *s, int, int argc, reg_t *argv) {
 	_k_add_to_end(s, argv[0], argv[1]);
 	return s->r_acc;
 }
 
-reg_t kFindKey(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kFindKey(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t node_pos;
 	reg_t key = argv[1];
 	reg_t list_pos = argv[0];
@@ -382,8 +382,8 @@
 	return NULL_REG;
 }
 
-reg_t kDeleteKey(EngineState *s, int funct_nr, int argc, reg_t *argv) {
-	reg_t node_pos = kFindKey(s, funct_nr, 2, argv);
+reg_t kDeleteKey(EngineState *s, int, int argc, reg_t *argv) {
+	reg_t node_pos = kFindKey(s, WAS_FUNCT_NR, 2, argv);
 	Node *n;
 	List *l = lookup_list(s, argv[0]);
 
@@ -424,7 +424,7 @@
 	return 0;
 }
 
-reg_t kSort(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSort(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t source = argv[0];
 	reg_t dest = argv[1];

Modified: scummvm/trunk/engines/sci/engine/kmath.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kmath.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kmath.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -28,18 +28,18 @@
 
 namespace Sci {
 
-reg_t kRandom(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kRandom(EngineState *s, int, int argc, reg_t *argv) {
 	return make_reg(0, argv[0].toSint16() + (int)((argv[1].toSint16() + 1.0 - argv[0].toSint16()) * (rand() / (RAND_MAX + 1.0))));
 }
 
-reg_t kAbs(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kAbs(EngineState *s, int, int argc, reg_t *argv) {
 	// This is a hack, but so is the code in Hoyle1 that needs it.
 	if (argv[0].segment)
 		return make_reg(0, 0x3e8); // Yes people, this is an object
 	return make_reg(0, abs(argv[0].toSint16()));
 }
 
-reg_t kSqrt(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSqrt(EngineState *s, int, int argc, reg_t *argv) {
 	return make_reg(0, (int16) sqrt((float) abs(argv[0].toSint16())));
 }
 
@@ -63,7 +63,7 @@
 	}
 }
 
-reg_t kGetAngle(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGetAngle(EngineState *s, int, int argc, reg_t *argv) {
 	// Based on behavior observed with a test program created with
 	// SCI Studio.
 	int x1 = argv[0].toSint16();
@@ -100,7 +100,7 @@
 	return make_reg(0, angle);
 }
 
-reg_t kGetDistance(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGetDistance(EngineState *s, int, int argc, reg_t *argv) {
 	int xdiff = (argc > 3) ? argv[3].toSint16() : 0;
 	int ydiff = (argc > 2) ? argv[2].toSint16() : 0;
 	int angle = (argc > 5) ? argv[5].toSint16() : 0;
@@ -109,21 +109,21 @@
 	return make_reg(0, (int16)sqrt((float) xrel*xrel + yrel*yrel));
 }
 
-reg_t kTimesSin(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kTimesSin(EngineState *s, int, int argc, reg_t *argv) {
 	int angle = argv[0].toSint16();
 	int factor = argv[1].toSint16();
 
 	return make_reg(0, (int)(factor * 1.0 * sin(angle * PI / 180.0)));
 }
 
-reg_t kTimesCos(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kTimesCos(EngineState *s, int, int argc, reg_t *argv) {
 	int angle = argv[0].toSint16();
 	int factor = argv[1].toSint16();
 
 	return make_reg(0, (int)(factor * 1.0 * cos(angle * PI / 180.0)));
 }
 
-reg_t kCosDiv(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kCosDiv(EngineState *s, int, int argc, reg_t *argv) {
 	int angle = argv[0].toSint16();
 	int value = argv[1].toSint16();
 	double cosval = cos(angle * PI / 180.0);
@@ -135,7 +135,7 @@
 		return make_reg(0, (int16)(value / cosval));
 }
 
-reg_t kSinDiv(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSinDiv(EngineState *s, int, int argc, reg_t *argv) {
 	int angle = argv[0].toSint16();
 	int value = argv[1].toSint16();
 	double sinval = sin(angle * PI / 180.0);
@@ -147,7 +147,7 @@
 		return make_reg(0, (int16)(value / sinval));
 }
 
-reg_t kTimesTan(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kTimesTan(EngineState *s, int, int argc, reg_t *argv) {
 	int param = argv[0].toSint16();
 	int scale = (argc > 1) ? argv[1].toSint16() : 1;
 
@@ -159,7 +159,7 @@
 		return make_reg(0, (int16) - (tan(param * PI / 180.0) * scale));
 }
 
-reg_t kTimesCot(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kTimesCot(EngineState *s, int, int argc, reg_t *argv) {
 	int param = argv[0].toSint16();
 	int scale = (argc > 1) ? argv[1].toSint16() : 1;
 

Modified: scummvm/trunk/engines/sci/engine/kmenu.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kmenu.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kmenu.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -33,7 +33,7 @@
 
 namespace Sci {
 
-reg_t kAddMenu(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kAddMenu(EngineState *s, int, int argc, reg_t *argv) {
 	char *name = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 	char *contents = kernel_dereference_char_pointer(s->segmentManager, argv[1], 0);
 
@@ -45,7 +45,7 @@
 }
 
 
-reg_t kSetMenu(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSetMenu(EngineState *s, int, int argc, reg_t *argv) {
 	int index = argv[0].toUint16();
 	int i = 2;
 
@@ -57,14 +57,14 @@
 	return s->r_acc;
 }
 
-reg_t kGetMenu(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGetMenu(EngineState *s, int, int argc, reg_t *argv) {
 	int index = argv[0].toUint16();
 
 	return s->_menubar->getAttribute((index >> 8) - 1, (index & 0xff) - 1, argv[1].toUint16());
 }
 
 
-reg_t kDrawStatus(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDrawStatus(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t text = argv[0];
 	int fgcolor = (argc > 1) ? argv[1].toSint16() : s->status_bar_foreground;
 	int bgcolor = (argc > 2) ? argv[2].toSint16() : s->status_bar_background;
@@ -90,7 +90,7 @@
 }
 
 
-reg_t kDrawMenuBar(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDrawMenuBar(EngineState *s, int, int argc, reg_t *argv) {
 
 	if (argv[0].toSint16())
 		sciw_set_menubar(s, s->titlebar_port, s->_menubar, -1);
@@ -123,7 +123,7 @@
 	gfxop_update(s->gfx_state);
 
 
-reg_t kMenuSelect(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kMenuSelect(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t event = argv[0];
 	/*int pause_sound = (argc > 1) ? argv[1].toUint16() : 1;*/ /* FIXME: Do this eventually */

Modified: scummvm/trunk/engines/sci/engine/kmisc.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kmisc.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kmisc.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -35,7 +35,7 @@
 
 namespace Sci {
 
-reg_t kRestartGame(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kRestartGame(EngineState *s, int, int argc, reg_t *argv) {
 	s->restarting_flags |= SCI_GAME_IS_RESTARTING_NOW;
 	s->restarting_flags &= ~SCI_GAME_WAS_RESTARTED_AT_LEAST_ONCE; // This appears to help
 
@@ -48,7 +48,7 @@
 /* kGameIsRestarting():
 ** Returns the restarting_flag in acc
 */
-reg_t kGameIsRestarting(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGameIsRestarting(EngineState *s, int, int argc, reg_t *argv) {
 	s->r_acc = make_reg(0, (s->restarting_flags & SCI_GAME_WAS_RESTARTED));
 
 	if (argc) { // Only happens during replay
@@ -59,7 +59,7 @@
 	return s->r_acc;
 }
 
-reg_t kHaveMouse(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kHaveMouse(EngineState *s, int, int argc, reg_t *argv) {
 	return make_reg(0, -1);
 }
 
@@ -71,7 +71,7 @@
 	K_MEMORYINFO_TOTAL_HUNK = 4 // Total amount of hunk memory (SCI01)
 };
 
-reg_t kMemoryInfo(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kMemoryInfo(EngineState *s, int, int argc, reg_t *argv) {
 	uint16 size = 0x7fff;  // Must not be 0xffff, or some memory calculations will overflow
 
 	switch (argv[0].offset) {
@@ -100,13 +100,13 @@
 	return NULL_REG;
 }
 
-reg_t kFlushResources(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kFlushResources(EngineState *s, int, int argc, reg_t *argv) {
 	run_gc(s);
 	debugC(2, kDebugLevelRoom, "Entering room number %d", argv[0].toUint16());
 	return s->r_acc;
 }
 
-reg_t kSetDebug(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSetDebug(EngineState *s, int, int argc, reg_t *argv) {
 	printf("Debug mode activated\n");
 
 	scriptState.seeking = kDebugSeekNothing;
@@ -121,7 +121,7 @@
 	_K_NEW_GETTIME_DATE = 3
 };
 
-reg_t kGetTime(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGetTime(EngineState *s, int, int argc, reg_t *argv) {
 	tm loc_time;
 	uint32 start_time;
 	int retval = 0; // Avoid spurious warning
@@ -177,7 +177,7 @@
 	K_MEMORY_POKE					= 6
 };
 
-reg_t kMemory(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kMemory(EngineState *s, int, int argc, reg_t *argv) {
 	switch (argv[0].toUint16()) {
 	case K_MEMORY_ALLOCATE_CRITICAL :
 		if (!s->segmentManager->allocDynmem(argv[1].toUint16(), "kMemory() critical", &s->r_acc)) {
@@ -250,7 +250,7 @@
 	return s->r_acc;
 }
 
-reg_t kPlatform(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kPlatform(EngineState *s, int, int argc, reg_t *argv) {
 	if (argc == 1) {
 		if (argv[0].toUint16() == 4)
 			if (((SciEngine*)g_engine)->getPlatform() == Common::kPlatformWindows)
@@ -269,8 +269,8 @@
 }
 
 reg_t kStub(EngineState *s, int funct_nr, int argc, reg_t *argv) {
-	char tmpbuf[200];
-	sprintf(tmpbuf, "Unimplemented syscall: %s[%x] (", 
+	char tmpbuf[256];
+	snprintf(tmpbuf, sizeof(tmpbuf), "Unimplemented syscall: %s[%x] (", 
 					((SciEngine*)g_engine)->getKernel()->getKernelName(funct_nr).c_str(), funct_nr);
 
 	for (int i = 0; i < argc; i++) {

Modified: scummvm/trunk/engines/sci/engine/kmovement.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kmovement.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kmovement.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -67,7 +67,7 @@
 Still, what we compute in the end is of course not a real velocity anymore, but an integer approximation,
 used in an iterative stepping algorithm
 */
-reg_t kSetJump(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSetJump(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	// Input data
 	reg_t object = argv[0];
@@ -218,7 +218,7 @@
 	PUT_SEL32V(mover, b_i2, bdi * 2);
 }
 
-reg_t kInitBresen(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kInitBresen(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t mover = argv[0];
 	reg_t client = GET_SEL32(mover, client);
@@ -284,7 +284,7 @@
 	}
 }
 
-reg_t kDoBresen(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDoBresen(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t mover = argv[0];
 	reg_t client = GET_SEL32(mover, client);
@@ -390,11 +390,11 @@
 	return make_reg(0, completed);
 }
 
-extern void _k_dirloop(reg_t obj, uint16 angle, EngineState *s, int funct_nr, int argc, reg_t *argv);
+extern void _k_dirloop(reg_t obj, uint16 angle, EngineState *s, int argc, reg_t *argv);
 int is_heap_object(EngineState *s, reg_t pos);
 extern int get_angle(int xrel, int yrel);
 
-reg_t kDoAvoider(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDoAvoider(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t avoider = argv[0];
 	reg_t client, looper, mover;
@@ -512,7 +512,7 @@
 				return s->r_acc;
 		} else {
 			// No looper? Fall back to DirLoop
-			_k_dirloop(client, (uint16)angle, s, funct_nr, argc, argv);
+			_k_dirloop(client, (uint16)angle, s, argc, argv);
 		}
 	}
 

Modified: scummvm/trunk/engines/sci/engine/kpathing.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kpathing.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kpathing.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -1643,7 +1643,7 @@
 	return output;
 }
 
-reg_t kAvoidPath(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kAvoidPath(EngineState *s, int, int argc, reg_t *argv) {
 	Common::Point start = Common::Point(argv[0].toSint16(), argv[1].toSint16());
 
 #ifdef DEBUG_AVOIDPATH

Modified: scummvm/trunk/engines/sci/engine/kscripts.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kscripts.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kscripts.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -113,7 +113,7 @@
 
 // Loads arbitrary resources of type 'restype' with resource numbers 'resnrs'
 // This implementation ignores all resource numbers except the first one.
-reg_t kLoad(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kLoad(EngineState *s, int, int argc, reg_t *argv) {
 	int restype = argv[0].toUint16();
 	int resnr = argv[1].toUint16();
 
@@ -124,7 +124,7 @@
 	return make_reg(0, ((restype << 11) | resnr)); // Return the resource identifier as handle
 }
 
-reg_t kLock(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kLock(EngineState *s, int, int argc, reg_t *argv) {
 	int state = argc > 2 ? argv[2].toUint16() : 1;
 	ResourceType type = (ResourceType)(argv[0].toUint16() & 0x7f);
 	ResourceId id = ResourceId(type, argv[1].toUint16());
@@ -152,7 +152,7 @@
 }
 
 // Unloads an arbitrary resource of type 'restype' with resource numbber 'resnr'
-reg_t kUnLoad(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kUnLoad(EngineState *s, int, int argc, reg_t *argv) {
 	int restype = argv[0].toUint16();
 	reg_t resnr = argv[1];
 
@@ -162,7 +162,7 @@
 	return s->r_acc;
 }
 
-reg_t kResCheck(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kResCheck(EngineState *s, int, int argc, reg_t *argv) {
 	Resource *res = NULL;
 	ResourceType restype = (ResourceType)(argv[0].toUint16() & 0x7f);
 
@@ -182,7 +182,7 @@
 	return make_reg(0, res != NULL);
 }
 
-reg_t kClone(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kClone(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t parent_addr = argv[0];
 	Object *parent_obj = obj_get(s->segmentManager, parent_addr);
 	reg_t clone_addr;
@@ -220,7 +220,7 @@
 
 extern void _k_view_list_mark_free(EngineState *s, reg_t off);
 
-reg_t kDisposeClone(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDisposeClone(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t victim_addr = argv[0];
 	Clone *victim_obj = obj_get(s->segmentManager, victim_addr);
@@ -261,7 +261,7 @@
 }
 
 // Returns script dispatch address index in the supplied script
-reg_t kScriptID(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kScriptID(EngineState *s, int, int argc, reg_t *argv) {
 	int script = argv[0].toUint16();
 	int index = (argc > 1) ? argv[1].toUint16() : 0;
 
@@ -290,7 +290,7 @@
 	return make_reg(scriptid, s->segmentManager->validateExportFunc(index, scriptid));
 }
 
-reg_t kDisposeScript(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDisposeScript(EngineState *s, int, int argc, reg_t *argv) {
 	int script = argv[0].offset;
 
 	// Work around QfG1 graveyard bug
@@ -327,14 +327,14 @@
 	return (obj != NULL && (!(obj->flags & OBJECT_FLAG_FREED)) && (!s->segmentManager->scriptIsMarkedAsDeleted(pos.segment)));
 }
 
-reg_t kIsObject(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kIsObject(EngineState *s, int, int argc, reg_t *argv) {
 	if (argv[0].offset == 0xffff) // Treated specially
 		return NULL_REG;
 	else
 		return make_reg(0, is_heap_object(s, argv[0]));
 }
 
-reg_t kRespondsTo(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kRespondsTo(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t obj = argv[0];
 	int selector = argv[1].toUint16();
 

Modified: scummvm/trunk/engines/sci/engine/ksound.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/ksound.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/ksound.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -206,7 +206,7 @@
 }
 
 
-static reg_t kDoSoundSci0(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+static reg_t kDoSoundSci0(EngineState *s, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t obj = (argc > 1) ? argv[1] : NULL_REG;
 	uint16 command = argv[0].toUint16();
@@ -386,7 +386,7 @@
 }
 
 
-static reg_t kDoSoundSci1Early(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+static reg_t kDoSoundSci1Early(EngineState *s, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	uint16 command = argv[0].toUint16();
 	reg_t obj = (argc > 1) ? argv[1] : NULL_REG;
@@ -677,7 +677,7 @@
 	return s->r_acc;
 }
 
-static reg_t kDoSoundSci1Late(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+static reg_t kDoSoundSci1Late(EngineState *s, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	uint16 command = argv[0].toUint16();
 	reg_t obj = (argc > 1) ? argv[1] : NULL_REG;
@@ -992,14 +992,14 @@
 /**
  * Used for synthesized music playback
  */
-reg_t kDoSound(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDoSound(EngineState *s, int, int argc, reg_t *argv) {
 	switch(s->detectDoSoundType()) {
 	case SCI_VERSION_0_EARLY:
-		return kDoSoundSci0(s, funct_nr, argc, argv);
+		return kDoSoundSci0(s, argc, argv);
 	case SCI_VERSION_1_EARLY:
-		return kDoSoundSci1Early(s, funct_nr, argc, argv);
+		return kDoSoundSci1Early(s, argc, argv);
 	case SCI_VERSION_1_LATE:
-		return kDoSoundSci1Late(s, funct_nr, argc, argv);
+		return kDoSoundSci1Late(s, argc, argv);
 	default:
 		warning("Unknown DoSound type");
 		return NULL_REG;
@@ -1009,7 +1009,7 @@
 /**
  * Used for speech playback and digital soundtracks in CD games
  */
-reg_t kDoAudio(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDoAudio(EngineState *s, int, int argc, reg_t *argv) {
 	Audio::Mixer *mixer = g_system->getMixer();
 
 	switch (argv[0].toUint16()) {
@@ -1066,7 +1066,7 @@
 	return s->r_acc;
 }
 
-reg_t kDoSync(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kDoSync(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	switch (argv[0].toUint16()) {
 	case kSciAudioSyncStart: {

Modified: scummvm/trunk/engines/sci/engine/kstring.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kstring.cpp	2009-09-02 06:24:01 UTC (rev 43904)
+++ scummvm/trunk/engines/sci/engine/kstring.cpp	2009-09-02 11:33:25 UTC (rev 43905)
@@ -78,7 +78,7 @@
 /**********/
 
 
-reg_t kSaid(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSaid(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t heap_said_block = argv[0];
 	byte *said_block;
@@ -128,7 +128,7 @@
 }
 
 
-reg_t kSetSynonyms(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSetSynonyms(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t object = argv[0];
 	List *list;
@@ -186,7 +186,7 @@
 
 
 
-reg_t kParse(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kParse(EngineState *s, int, int argc, reg_t *argv) {
 	SegManager *segManager = s->segmentManager;
 	reg_t stringpos = argv[0];
 	char *string = kernel_dereference_char_pointer(s->segmentManager, stringpos, 0);
@@ -257,7 +257,7 @@
 }
 
 
-reg_t kStrEnd(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kStrEnd(EngineState *s, int, int argc, reg_t *argv) {
 	reg_t address = argv[0];
 	char *seeker = kernel_dereference_char_pointer(s->segmentManager, address, 0);
 
@@ -267,7 +267,7 @@
 	return address;
 }
 
-reg_t kStrCat(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kStrCat(EngineState *s, int, int argc, reg_t *argv) {
 	char *s1 = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 	char *s2 = kernel_dereference_char_pointer(s->segmentManager, argv[1], 0);
 
@@ -275,7 +275,7 @@
 	return argv[0];
 }
 
-reg_t kStrCmp(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kStrCmp(EngineState *s, int, int argc, reg_t *argv) {
 	char *s1 = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 	char *s2 = kernel_dereference_char_pointer(s->segmentManager, argv[1], 0);
 
@@ -286,7 +286,7 @@
 }
 
 
-reg_t kStrCpy(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kStrCpy(EngineState *s, int, int argc, reg_t *argv) {
 	char *dest = (char *) kernel_dereference_bulk_pointer(s->segmentManager, argv[0], 0);
 	char *src = (char *) kernel_dereference_bulk_pointer(s->segmentManager, argv[1], 0);
 
@@ -351,7 +351,7 @@
 }
 
 
-reg_t kStrAt(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kStrAt(EngineState *s, int, int argc, reg_t *argv) {
 	byte *dest = (byte *)kernel_dereference_bulk_pointer(s->segmentManager, argv[0], 0);
 	reg_t *dest2;
 
@@ -393,7 +393,7 @@
 }
 
 
-reg_t kReadNumber(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kReadNumber(EngineState *s, int, int argc, reg_t *argv) {
 	char *source = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 
 	while (isspace(*source))
@@ -417,7 +417,7 @@
 ** Formats the text from text.textresnr (offset index_inside_res) or heap_text_addr according to
 ** the supplied parameters and writes it to the targ_address.
 */
-reg_t kFormat(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kFormat(EngineState *s, int, int argc, reg_t *argv) {
 	int *arguments;
 	reg_t dest = argv[0];
 	char *target = (char *) kernel_dereference_bulk_pointer(s->segmentManager, dest, 0);
@@ -632,7 +632,7 @@
 }
 
 
-reg_t kStrLen(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kStrLen(EngineState *s, int, int argc, reg_t *argv) {
 	char *str = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
 
 	if (!str) {
@@ -644,7 +644,7 @@
 }
 
 
-reg_t kGetFarText(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kGetFarText(EngineState *s, int, int argc, reg_t *argv) {
 	Resource *textres = s->resourceManager->findResource(ResourceId(kResourceTypeText, argv[0].toUint16()), 0);
 	char *seeker;
 	int counter = argv[1].toUint16();
@@ -683,7 +683,7 @@
 	K_MESSAGE_LASTMESSAGE
 };
 
-reg_t kMessage(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kMessage(EngineState *s, int, int argc, reg_t *argv) {
 	MessageTuple tuple;
 	int func;
 	// For earlier version of of this function (GetMessage)
@@ -809,13 +809,13 @@
 	return NULL_REG;
 }
 
-reg_t kSetQuitStr(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kSetQuitStr(EngineState *s, int, int argc, reg_t *argv) {
         char *quitStr = kernel_dereference_char_pointer(s->segmentManager, argv[0], 0);
         debug("Setting quit string to '%s'", quitStr);
         return s->r_acc;
 }
 
-reg_t kStrSplit(EngineState *s, int funct_nr, int argc, reg_t *argv) {
+reg_t kStrSplit(EngineState *s, int, int argc, reg_t *argv) {
 	const char *format = kernel_dereference_char_pointer(s->segmentManager, argv[1], 0);
 	const char *sep = !argv[2].isNull() ? kernel_dereference_char_pointer(s->segmentManager, argv[2], 0) : NULL;
 	Common::String str = s->strSplit(format, sep);


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