diff options
-rw-r--r-- | engines/sci/engine/kernel.h | 276 | ||||
-rw-r--r-- | engines/sci/engine/kevent.cpp | 10 | ||||
-rw-r--r-- | engines/sci/engine/kfile.cpp | 28 | ||||
-rw-r--r-- | engines/sci/engine/kgraphics.cpp | 124 | ||||
-rw-r--r-- | engines/sci/engine/klists.cpp | 32 | ||||
-rw-r--r-- | engines/sci/engine/kmath.cpp | 22 | ||||
-rw-r--r-- | engines/sci/engine/kmenu.cpp | 12 | ||||
-rw-r--r-- | engines/sci/engine/kmisc.cpp | 22 | ||||
-rw-r--r-- | engines/sci/engine/kmovement.cpp | 12 | ||||
-rw-r--r-- | engines/sci/engine/kpathing.cpp | 2 | ||||
-rw-r--r-- | engines/sci/engine/kscripts.cpp | 20 | ||||
-rw-r--r-- | engines/sci/engine/ksound.cpp | 18 | ||||
-rw-r--r-- | engines/sci/engine/kstring.cpp | 30 |
13 files changed, 305 insertions, 303 deletions
diff --git a/engines/sci/engine/kernel.h b/engines/sci/engine/kernel.h index 39ec27a167..87b235c8dc 100644 --- a/engines/sci/engine/kernel.h +++ b/engines/sci/engine/kernel.h @@ -44,7 +44,7 @@ struct List; // from vm.h //#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 SelectorInvocation { */ +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 @@ List *lookup_list(EngineState *s, reg_t addr); /******************** 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 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 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, 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 diff --git a/engines/sci/engine/kevent.cpp b/engines/sci/engine/kevent.cpp index 9c79bf72da..86755c90fa 100644 --- a/engines/sci/engine/kevent.cpp +++ b/engines/sci/engine/kevent.cpp @@ -35,7 +35,7 @@ namespace Sci { #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 @@ reg_t kGetEvent(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kMapKeyToDir(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 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 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 @@ reg_t kLocalToGlobal(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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; diff --git a/engines/sci/engine/kfile.cpp b/engines/sci/engine/kfile.cpp index 4f4924d3ec..5346f8b51c 100644 --- a/engines/sci/engine/kfile.cpp +++ b/engines/sci/engine/kfile.cpp @@ -196,7 +196,7 @@ void file_open(EngineState *s, const char *filename, int mode) { 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 @@ void file_close(EngineState *s, int handle) { 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 @@ void fwrite_wrapper(EngineState *s, int handle, char *data, int length) { 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 @@ static void fseek_wrapper(EngineState *s, int handle, int offset, int whence) { 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 @@ reg_t kFGets(EngineState *s, int funct_nr, int argc, reg_t *argv) { /** * 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 @@ enum { 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 @@ reg_t kDeviceInfo(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kGetSaveDir(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ void listSavegames(Common::Array<SavegameDesc> &saves) { 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 @@ reg_t kCheckSaveGame(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kGetSaveFiles(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kSaveGame(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kRestoreGame(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ void DirSeeker::nextFile() { -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) { diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp index aa2567c525..c15d5eb159 100644 --- a/engines/sci/engine/kgraphics.cpp +++ b/engines/sci/engine/kgraphics.cpp @@ -291,7 +291,7 @@ static gfx_color_t graph_map_color(EngineState *s, int color, int priority, int 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 @@ static reg_t kSetCursorSci0(EngineState *s, int funct_nr, int argc, reg_t *argv) 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 @@ static reg_t kSetCursorSci11(EngineState *s, int funct_nr, int argc, reg_t *argv 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 @@ reg_t kMoveCursor(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kShow(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 bool activated_icon_bar = false; // FIXME: Avoid non-const global vars 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 @@ reg_t kGraph(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kTextSize(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kWait(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ void _k_dirloop(reg_t obj, uint16 angle, EngineState *s, int funct_nr, int argc, 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 @@ reg_t kDirLoop(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ static int collides_with(EngineState *s, Common::Rect area, reg_t other_obj, int 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 @@ reg_t kCanBeHere(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kCanBeHere(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kCanBeHere(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kIsItSkip(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kCelHigh(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kCelWide(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kNumLoops(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kNumCels(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ void _k_view_list_free_backgrounds(EngineState *s, ViewObject *list, int list_nr #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 @@ void _k_base_setter(EngineState *s, reg_t object) { 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 @@ static void _k_set_now_seen(EngineState *s, reg_t object) { 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 @@ reg_t kSetNowSeen(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kPalette(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ static void _k_disable_delete_for_now(EngineState *s, reg_t obj) { } } -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 @@ reg_t kDrawControl(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ void update_cursor_limits(int *display_offset, int *cursor, int max_displayed) { --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 @@ void _k_view_list_mark_free(EngineState *s, reg_t off) { 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 @@ int _k_view_list_dispose_loop(EngineState *s, List *list, GfxDynView *widget, in 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 @@ enum { _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 GfxDynView *_k_make_dynview_obj(EngineState *s, reg_t obj, int options, i } } -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 @@ static void _k_make_view_list(EngineState *s, GfxList **widget_list, List *list, 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 @@ void _k_draw_view_list(EngineState *s, GfxList *list, int flags) { } -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 @@ reg_t kAddToPic(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kAddToPic(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kSetPort(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kDrawCel(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kDisposeWindow(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kNewWindow(EngineState *s, int funct_nr, int argc, reg_t *argv) { #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 @@ static void animate_do_animation(EngineState *s, int funct_nr, int argc, reg_t * 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 @@ reg_t kAnimate(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kAnimate(EngineState *s, int funct_nr, int argc, reg_t *argv) { // 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 @@ reg_t kAnimate(EngineState *s, int funct_nr, int argc, reg_t *argv) { // 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 @@ reg_t kAnimate(EngineState *s, int funct_nr, int argc, reg_t *argv) { _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 @@ reg_t kAnimate(EngineState *s, int funct_nr, int argc, reg_t *argv) { #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 @@ reg_t kShakeScreen(EngineState *s, int funct_nr, int argc, reg_t *argv) { #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 @@ reg_t kDisplay(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ static reg_t kShowMovie_Windows(EngineState *s, int funct_nr, int argc, reg_t *a 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 @@ static reg_t kShowMovie_DOS(EngineState *s, int funct_nr, int argc, reg_t *argv) 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 @@ reg_t kShowMovie(EngineState *s, int funct_nr, int argc, reg_t *argv) { // 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 diff --git a/engines/sci/engine/klists.cpp b/engines/sci/engine/klists.cpp index d911b04674..340d576aaa 100644 --- a/engines/sci/engine/klists.cpp +++ b/engines/sci/engine/klists.cpp @@ -132,7 +132,7 @@ int sane_listp(EngineState *s, reg_t addr) { } #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 @@ reg_t kNewList(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t _k_new_node(EngineState *s, reg_t value, reg_t key) { 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 @@ reg_t kNewNode(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kFirstNode(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kLastNode(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ void _k_add_to_end(EngineState *s, reg_t listbase, reg_t nodebase) { 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 @@ reg_t kNextNode(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kPrevNode(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kNodeValue(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kAddAfter(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kFindKey(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ int sort_temp_cmp(const void *p1, const void *p2) { 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]; diff --git a/engines/sci/engine/kmath.cpp b/engines/sci/engine/kmath.cpp index e4c314c605..0382a540ee 100644 --- a/engines/sci/engine/kmath.cpp +++ b/engines/sci/engine/kmath.cpp @@ -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 @@ int get_angle(int xrel, int yrel) { } } -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 @@ reg_t kGetAngle(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kGetDistance(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kCosDiv(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kSinDiv(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kTimesTan(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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; diff --git a/engines/sci/engine/kmenu.cpp b/engines/sci/engine/kmenu.cpp index 95ce372c5f..c11db80b25 100644 --- a/engines/sci/engine/kmenu.cpp +++ b/engines/sci/engine/kmenu.cpp @@ -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 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 kSetMenu(EngineState *s, int, int argc, reg_t *argv) { int index = argv[0].toUint16(); int i = 2; @@ -57,14 +57,14 @@ reg_t kSetMenu(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 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 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 @@ static int _menu_go_down(Menubar *menubar, int menu_nr, int item_nr) { 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 */ diff --git a/engines/sci/engine/kmisc.cpp b/engines/sci/engine/kmisc.cpp index 4782b19280..1377f3ae89 100644 --- a/engines/sci/engine/kmisc.cpp +++ b/engines/sci/engine/kmisc.cpp @@ -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 @@ reg_t kRestartGame(EngineState *s, int funct_nr, int argc, reg_t *argv) { /* 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 @@ reg_t kGameIsRestarting(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ enum kMemoryInfoFunc { 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 @@ reg_t k_Unknown(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ enum { _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 @@ enum { 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 @@ reg_t kMemory(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 kPlatform(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] (", + 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++) { diff --git a/engines/sci/engine/kmovement.cpp b/engines/sci/engine/kmovement.cpp index f0420b56a0..bd22527df2 100644 --- a/engines/sci/engine/kmovement.cpp +++ b/engines/sci/engine/kmovement.cpp @@ -67,7 +67,7 @@ But the solution resulting from that is a lot more complicated, so we use the ab 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 @@ static void initialize_bresen(SegManager *segManager, int argc, reg_t *argv, reg 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 @@ static void bresenham_autodetect(EngineState *s) { } } -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 @@ reg_t kDoBresen(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kDoAvoider(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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); } } diff --git a/engines/sci/engine/kpathing.cpp b/engines/sci/engine/kpathing.cpp index 064967b0e9..d1426c86d1 100644 --- a/engines/sci/engine/kpathing.cpp +++ b/engines/sci/engine/kpathing.cpp @@ -1643,7 +1643,7 @@ static reg_t output_path(PathfindingState *p, EngineState *s) { 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 diff --git a/engines/sci/engine/kscripts.cpp b/engines/sci/engine/kscripts.cpp index 7df7256f70..85785820cb 100644 --- a/engines/sci/engine/kscripts.cpp +++ b/engines/sci/engine/kscripts.cpp @@ -113,7 +113,7 @@ bool is_object(SegManager *segManager, reg_t object) { // 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 @@ reg_t kLoad(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kLock(EngineState *s, int funct_nr, int argc, reg_t *argv) { } // 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 @@ reg_t kUnLoad(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kResCheck(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kClone(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kDisposeClone(EngineState *s, int funct_nr, int argc, reg_t *argv) { } // 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 @@ reg_t kScriptID(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ int is_heap_object(EngineState *s, reg_t pos) { 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(); diff --git a/engines/sci/engine/ksound.cpp b/engines/sci/engine/ksound.cpp index 4c71120f50..b1dae4d30c 100644 --- a/engines/sci/engine/ksound.cpp +++ b/engines/sci/engine/ksound.cpp @@ -206,7 +206,7 @@ void process_sound_events(EngineState *s) { /* Get all sound events, apply their } -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 kDoSoundSci0(EngineState *s, int funct_nr, int argc, reg_t *argv) { } -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 @@ static reg_t kDoSoundSci1Early(EngineState *s, int funct_nr, int argc, reg_t *ar 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 @@ static reg_t kDoSoundSci1Late(EngineState *s, int funct_nr, int argc, reg_t *arg /** * 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 @@ reg_t kDoSound(EngineState *s, int funct_nr, int argc, reg_t *argv) { /** * 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 @@ reg_t kDoAudio(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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: { diff --git a/engines/sci/engine/kstring.cpp b/engines/sci/engine/kstring.cpp index a177dd6aa8..ff4c514449 100644 --- a/engines/sci/engine/kstring.cpp +++ b/engines/sci/engine/kstring.cpp @@ -78,7 +78,7 @@ char *kernel_lookup_text(EngineState *s, reg_t address, int index) { /**********/ -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 kSaid(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 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 kSetSynonyms(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 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 kParse(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 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 @@ reg_t kStrEnd(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 @@ reg_t kStrCat(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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 kStrCmp(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 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 @@ static int is_print_str(const char *str) { } -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 kStrAt(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 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 @@ reg_t kReadNumber(EngineState *s, int funct_nr, int argc, reg_t *argv) { ** 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 kFormat(EngineState *s, int funct_nr, int argc, reg_t *argv) { } -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 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 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 @@ enum kMessageFunc { 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 @@ reg_t kMessage(EngineState *s, int funct_nr, int argc, reg_t *argv) { 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); |