aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine
diff options
context:
space:
mode:
authorMartin Kiewitz2010-06-29 21:13:19 +0000
committerMartin Kiewitz2010-06-29 21:13:19 +0000
commitc536630648ea7232508a477c3e503a0d867e25d9 (patch)
tree2681be6b64719b196486f49b18bc40f6f0ac84d4 /engines/sci/engine
parentb09996cb5cea63482c16faafb55d83bd50c04c90 (diff)
downloadscummvm-rg350-c536630648ea7232508a477c3e503a0d867e25d9.tar.gz
scummvm-rg350-c536630648ea7232508a477c3e503a0d867e25d9.tar.bz2
scummvm-rg350-c536630648ea7232508a477c3e503a0d867e25d9.zip
SCI: adding space in kernelmap for workaround table
svn-id: r50506
Diffstat (limited to 'engines/sci/engine')
-rw-r--r--engines/sci/engine/kernel.cpp343
1 files changed, 172 insertions, 171 deletions
diff --git a/engines/sci/engine/kernel.cpp b/engines/sci/engine/kernel.cpp
index f804ce0426..40ee003cde 100644
--- a/engines/sci/engine/kernel.cpp
+++ b/engines/sci/engine/kernel.cpp
@@ -215,7 +215,8 @@ struct SciKernelMapEntry {
byte forPlatform;
const char *signature;
- const char *subSignature; // placeholder
+ const char *subSignatures; // placeholder
+ const char *workarounds; // placeholder
};
#define SIG_SCIALL SCI_VERSION_NONE, SCI_VERSION_NONE
@@ -235,189 +236,189 @@ struct SciKernelMapEntry {
#define MAP_CALL(_name_) #_name_, k##_name_
-// name, version, platf., function, signature, subfunction-signatures
+// name, version/platform, signature, sub-signatures, workarounds
static SciKernelMapEntry s_kernelMap[] = {
- { MAP_CALL(Load), SIG_EVERYWHERE, "iii*", NULL },
- { MAP_CALL(UnLoad), SIG_EVERYWHERE, "i.*", NULL },
+ { MAP_CALL(Load), SIG_EVERYWHERE, "iii*", NULL, NULL },
+ { MAP_CALL(UnLoad), SIG_EVERYWHERE, "i.*", NULL, NULL },
// ^^ FIXME - Work around SQ1 bug, when exiting the Ulence flats bar
- { MAP_CALL(ScriptID), SIG_EVERYWHERE, "Ioi*", NULL },
- { MAP_CALL(DisposeScript), SIG_EVERYWHERE, "Oii*", NULL },
+ { MAP_CALL(ScriptID), SIG_EVERYWHERE, "Ioi*", NULL, NULL },
+ { MAP_CALL(DisposeScript), SIG_EVERYWHERE, "Oii*", NULL, NULL },
// ^^ FIXME - Work around QfG1 bug
- { MAP_CALL(Clone), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(DisposeClone), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(IsObject), SIG_EVERYWHERE, ".", NULL },
- { MAP_CALL(RespondsTo), SIG_EVERYWHERE, ".i", NULL },
- { MAP_CALL(DrawPic), SIG_EVERYWHERE, "i*", NULL },
- { MAP_CALL(PicNotValid), SIG_EVERYWHERE, "i*", NULL },
- { MAP_CALL(Animate), SIG_EVERYWHERE, "LI*", NULL },
+ { MAP_CALL(Clone), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(DisposeClone), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(IsObject), SIG_EVERYWHERE, ".", NULL, NULL },
+ { MAP_CALL(RespondsTo), SIG_EVERYWHERE, ".i", NULL, NULL },
+ { MAP_CALL(DrawPic), SIG_EVERYWHERE, "i*", NULL, NULL },
+ { MAP_CALL(PicNotValid), SIG_EVERYWHERE, "i*", NULL, NULL },
+ { MAP_CALL(Animate), SIG_EVERYWHERE, "LI*", NULL, NULL },
// ^^ FIXME - More like (li?)?
- { MAP_CALL(SetNowSeen), SIG_EVERYWHERE, "oi*", NULL },
+ { MAP_CALL(SetNowSeen), SIG_EVERYWHERE, "oi*", NULL, NULL },
// ^^ FIXME - The second parameter is ignored
- { MAP_CALL(NumLoops), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(NumCels), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(CelWide), SIG_EVERYWHERE, "iOi*", NULL },
- { MAP_CALL(CelHigh), SIG_EVERYWHERE, "iOi*", NULL },
- { MAP_CALL(DrawCel), SIG_EVERYWHERE, "iiiiii*i*r*", NULL },
- { MAP_CALL(AddToPic), SIG_EVERYWHERE, "Il*", NULL },
- { MAP_CALL(NewWindow), SIG_SCIALL, SIGFOR_MAC, "*.", NULL },
- { MAP_CALL(NewWindow), SIG_EVERYWHERE, "iiiiZRi*", NULL },
- { MAP_CALL(GetPort), SIG_EVERYWHERE, "", NULL },
- { MAP_CALL(SetPort), SIG_EVERYWHERE, "ii*", NULL },
- { MAP_CALL(DisposeWindow), SIG_EVERYWHERE, "ii*", NULL },
- { MAP_CALL(DrawControl), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(HiliteControl), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(EditControl), SIG_EVERYWHERE, "ZoZo", NULL },
- { MAP_CALL(TextSize), SIG_EVERYWHERE, "rZrii*r*", NULL },
- { MAP_CALL(Display), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(GetEvent), SIG_EVERYWHERE, "ioi*", NULL },
+ { MAP_CALL(NumLoops), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(NumCels), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(CelWide), SIG_EVERYWHERE, "iOi*", NULL, NULL },
+ { MAP_CALL(CelHigh), SIG_EVERYWHERE, "iOi*", NULL, NULL },
+ { MAP_CALL(DrawCel), SIG_EVERYWHERE, "iiiiii*i*r*", NULL, NULL },
+ { MAP_CALL(AddToPic), SIG_EVERYWHERE, "Il*", NULL, NULL },
+ { MAP_CALL(NewWindow), SIG_SCIALL, SIGFOR_MAC, "*.", NULL, NULL },
+ { MAP_CALL(NewWindow), SIG_EVERYWHERE, "iiiiZRi*", NULL, NULL },
+ { MAP_CALL(GetPort), SIG_EVERYWHERE, "", NULL, NULL },
+ { MAP_CALL(SetPort), SIG_EVERYWHERE, "ii*", NULL, NULL },
+ { MAP_CALL(DisposeWindow), SIG_EVERYWHERE, "ii*", NULL, NULL },
+ { MAP_CALL(DrawControl), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(HiliteControl), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(EditControl), SIG_EVERYWHERE, "ZoZo", NULL, NULL },
+ { MAP_CALL(TextSize), SIG_EVERYWHERE, "rZrii*r*", NULL, NULL },
+ { MAP_CALL(Display), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(GetEvent), SIG_EVERYWHERE, "ioi*", NULL, NULL },
// ^^ FIXME Mac versions pass an extra 3rd parameter (ignored - always 0?)
- { MAP_CALL(GlobalToLocal), SIG_EVERYWHERE, "oo*", NULL },
- { MAP_CALL(LocalToGlobal), SIG_EVERYWHERE, "oo*", NULL },
- { MAP_CALL(MapKeyToDir), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(DrawMenuBar), SIG_EVERYWHERE, "i", NULL },
- { MAP_CALL(MenuSelect), SIG_EVERYWHERE, "oi*", NULL },
- { MAP_CALL(AddMenu), SIG_EVERYWHERE, "rr", NULL },
- { MAP_CALL(DrawStatus), SIG_EVERYWHERE, "Zri*", NULL },
- { MAP_CALL(Parse), SIG_EVERYWHERE, "ro", NULL },
- { MAP_CALL(Said), SIG_EVERYWHERE, "Zr", NULL },
- { MAP_CALL(SetSynonyms), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(HaveMouse), SIG_EVERYWHERE, "", NULL },
- { MAP_CALL(SetCursor), SIG_EVERYWHERE, "i*", NULL },
- { MAP_CALL(MoveCursor), SIG_EVERYWHERE, "ii", NULL },
- { MAP_CALL(FOpen), SIG_EVERYWHERE, "ri", NULL },
- { MAP_CALL(FPuts), SIG_EVERYWHERE, "ir", NULL },
- { MAP_CALL(FGets), SIG_EVERYWHERE, "rii", NULL },
- { MAP_CALL(FClose), SIG_EVERYWHERE, "i", NULL },
- { MAP_CALL(SaveGame), SIG_EVERYWHERE, "rirr*", NULL },
- { MAP_CALL(RestoreGame), SIG_EVERYWHERE, "rir*", NULL },
- { MAP_CALL(RestartGame), SIG_EVERYWHERE, "", NULL },
- { MAP_CALL(GameIsRestarting), SIG_EVERYWHERE, "i*", NULL },
- { MAP_CALL(DoSound), SIG_EVERYWHERE, "iIo*", NULL },
- { MAP_CALL(NewList), SIG_EVERYWHERE, "", NULL },
- { MAP_CALL(DisposeList), SIG_EVERYWHERE, "l", NULL },
- { MAP_CALL(NewNode), SIG_EVERYWHERE, "..", NULL },
- { MAP_CALL(FirstNode), SIG_EVERYWHERE, "Zl", NULL },
- { MAP_CALL(LastNode), SIG_EVERYWHERE, "l", NULL },
- { MAP_CALL(EmptyList), SIG_EVERYWHERE, "l", NULL },
- { MAP_CALL(NextNode), SIG_EVERYWHERE, "n", NULL },
- { MAP_CALL(PrevNode), SIG_EVERYWHERE, "n", NULL },
- { MAP_CALL(NodeValue), SIG_EVERYWHERE, "Zn", NULL },
- { MAP_CALL(AddAfter), SIG_EVERYWHERE, "lnn", NULL },
- { MAP_CALL(AddToFront), SIG_EVERYWHERE, "ln", NULL },
- { MAP_CALL(AddToEnd), SIG_EVERYWHERE, "ln", NULL },
- { MAP_CALL(FindKey), SIG_EVERYWHERE, "l.", NULL },
- { MAP_CALL(DeleteKey), SIG_EVERYWHERE, "l.", NULL },
- { MAP_CALL(Random), SIG_EVERYWHERE, "i*", NULL },
- { MAP_CALL(Abs), SIG_EVERYWHERE, "Oi", NULL },
- { MAP_CALL(Sqrt), SIG_EVERYWHERE, "i", NULL },
- { MAP_CALL(GetAngle), SIG_EVERYWHERE, "iiiii*", NULL },
+ { MAP_CALL(GlobalToLocal), SIG_EVERYWHERE, "oo*", NULL, NULL },
+ { MAP_CALL(LocalToGlobal), SIG_EVERYWHERE, "oo*", NULL, NULL },
+ { MAP_CALL(MapKeyToDir), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(DrawMenuBar), SIG_EVERYWHERE, "i", NULL, NULL },
+ { MAP_CALL(MenuSelect), SIG_EVERYWHERE, "oi*", NULL, NULL },
+ { MAP_CALL(AddMenu), SIG_EVERYWHERE, "rr", NULL, NULL },
+ { MAP_CALL(DrawStatus), SIG_EVERYWHERE, "Zri*", NULL, NULL },
+ { MAP_CALL(Parse), SIG_EVERYWHERE, "ro", NULL, NULL },
+ { MAP_CALL(Said), SIG_EVERYWHERE, "Zr", NULL, NULL },
+ { MAP_CALL(SetSynonyms), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(HaveMouse), SIG_EVERYWHERE, "", NULL, NULL },
+ { MAP_CALL(SetCursor), SIG_EVERYWHERE, "i*", NULL, NULL },
+ { MAP_CALL(MoveCursor), SIG_EVERYWHERE, "ii", NULL, NULL },
+ { MAP_CALL(FOpen), SIG_EVERYWHERE, "ri", NULL, NULL },
+ { MAP_CALL(FPuts), SIG_EVERYWHERE, "ir", NULL, NULL },
+ { MAP_CALL(FGets), SIG_EVERYWHERE, "rii", NULL, NULL },
+ { MAP_CALL(FClose), SIG_EVERYWHERE, "i", NULL, NULL },
+ { MAP_CALL(SaveGame), SIG_EVERYWHERE, "rirr*", NULL, NULL },
+ { MAP_CALL(RestoreGame), SIG_EVERYWHERE, "rir*", NULL, NULL },
+ { MAP_CALL(RestartGame), SIG_EVERYWHERE, "", NULL, NULL },
+ { MAP_CALL(GameIsRestarting), SIG_EVERYWHERE, "i*", NULL, NULL },
+ { MAP_CALL(DoSound), SIG_EVERYWHERE, "iIo*", NULL, NULL },
+ { MAP_CALL(NewList), SIG_EVERYWHERE, "", NULL, NULL },
+ { MAP_CALL(DisposeList), SIG_EVERYWHERE, "l", NULL, NULL },
+ { MAP_CALL(NewNode), SIG_EVERYWHERE, "..", NULL, NULL },
+ { MAP_CALL(FirstNode), SIG_EVERYWHERE, "Zl", NULL, NULL },
+ { MAP_CALL(LastNode), SIG_EVERYWHERE, "l", NULL, NULL },
+ { MAP_CALL(EmptyList), SIG_EVERYWHERE, "l", NULL, NULL },
+ { MAP_CALL(NextNode), SIG_EVERYWHERE, "n", NULL, NULL },
+ { MAP_CALL(PrevNode), SIG_EVERYWHERE, "n", NULL, NULL },
+ { MAP_CALL(NodeValue), SIG_EVERYWHERE, "Zn", NULL, NULL },
+ { MAP_CALL(AddAfter), SIG_EVERYWHERE, "lnn", NULL, NULL },
+ { MAP_CALL(AddToFront), SIG_EVERYWHERE, "ln", NULL, NULL },
+ { MAP_CALL(AddToEnd), SIG_EVERYWHERE, "ln", NULL, NULL },
+ { MAP_CALL(FindKey), SIG_EVERYWHERE, "l.", NULL, NULL },
+ { MAP_CALL(DeleteKey), SIG_EVERYWHERE, "l.", NULL, NULL },
+ { MAP_CALL(Random), SIG_EVERYWHERE, "i*", NULL, NULL },
+ { MAP_CALL(Abs), SIG_EVERYWHERE, "Oi", NULL, NULL },
+ { MAP_CALL(Sqrt), SIG_EVERYWHERE, "i", NULL, NULL },
+ { MAP_CALL(GetAngle), SIG_EVERYWHERE, "iiiii*", NULL, NULL },
// ^^ FIXME - occasionally KQ6 passes a 5th argument by mistake
- { MAP_CALL(GetDistance), SIG_EVERYWHERE, "iiiii*", NULL },
- { MAP_CALL(Wait), SIG_EVERYWHERE, "i", NULL },
- { MAP_CALL(GetTime), SIG_EVERYWHERE, "i*", NULL },
- { MAP_CALL(StrEnd), SIG_EVERYWHERE, "r", NULL },
- { MAP_CALL(StrCat), SIG_EVERYWHERE, "rr", NULL },
- { MAP_CALL(StrCmp), SIG_EVERYWHERE, "rri*", NULL },
- { MAP_CALL(StrLen), SIG_EVERYWHERE, "Zr", NULL },
- { MAP_CALL(StrCpy), SIG_EVERYWHERE, "rZri*", NULL },
- { MAP_CALL(Format), SIG_EVERYWHERE, "r.*", NULL },
- { MAP_CALL(GetFarText), SIG_EVERYWHERE, "iiZr", NULL },
- { MAP_CALL(ReadNumber), SIG_EVERYWHERE, "r", NULL },
- { MAP_CALL(BaseSetter), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(DirLoop), SIG_EVERYWHERE, "oi", NULL },
- { MAP_CALL(CanBeHere), SIG_EVERYWHERE, "ol*", NULL },
- { MAP_CALL(CantBeHere), SIG_EVERYWHERE, "ol*", NULL },
- { MAP_CALL(OnControl), SIG_EVERYWHERE, "i*", NULL },
- { MAP_CALL(InitBresen), SIG_EVERYWHERE, "oi*", NULL },
- { MAP_CALL(DoBresen), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(DoAvoider), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(SetJump), SIG_EVERYWHERE, "oiii", NULL },
- { MAP_CALL(SetDebug), SIG_EVERYWHERE, "i*", NULL },
- { MAP_CALL(MemoryInfo), SIG_EVERYWHERE, "i", NULL },
- { MAP_CALL(GetMenu), SIG_EVERYWHERE, "i.", NULL },
- { MAP_CALL(SetMenu), SIG_EVERYWHERE, "i.*", NULL },
- { MAP_CALL(GetSaveFiles), SIG_EVERYWHERE, "rrr", NULL },
- { MAP_CALL(GetCWD), SIG_EVERYWHERE, "r", NULL },
- { MAP_CALL(CheckFreeSpace), SIG_EVERYWHERE, "r.*", NULL },
- { MAP_CALL(ValidPath), SIG_EVERYWHERE, "r", NULL },
- { MAP_CALL(CoordPri), SIG_EVERYWHERE, "ii*", NULL },
- { MAP_CALL(StrAt), SIG_EVERYWHERE, "rii*", NULL },
- { MAP_CALL(DeviceInfo), SIG_EVERYWHERE, "i.*", NULL },
- { MAP_CALL(GetSaveDir), SIG_EVERYWHERE, ".*", NULL },
+ { MAP_CALL(GetDistance), SIG_EVERYWHERE, "iiiii*", NULL, NULL },
+ { MAP_CALL(Wait), SIG_EVERYWHERE, "i", NULL, NULL },
+ { MAP_CALL(GetTime), SIG_EVERYWHERE, "i*", NULL, NULL },
+ { MAP_CALL(StrEnd), SIG_EVERYWHERE, "r", NULL, NULL },
+ { MAP_CALL(StrCat), SIG_EVERYWHERE, "rr", NULL, NULL },
+ { MAP_CALL(StrCmp), SIG_EVERYWHERE, "rri*", NULL, NULL },
+ { MAP_CALL(StrLen), SIG_EVERYWHERE, "Zr", NULL, NULL },
+ { MAP_CALL(StrCpy), SIG_EVERYWHERE, "rZri*", NULL, NULL },
+ { MAP_CALL(Format), SIG_EVERYWHERE, "r.*", NULL, NULL },
+ { MAP_CALL(GetFarText), SIG_EVERYWHERE, "iiZr", NULL, NULL },
+ { MAP_CALL(ReadNumber), SIG_EVERYWHERE, "r", NULL, NULL },
+ { MAP_CALL(BaseSetter), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(DirLoop), SIG_EVERYWHERE, "oi", NULL, NULL },
+ { MAP_CALL(CanBeHere), SIG_EVERYWHERE, "ol*", NULL, NULL },
+ { MAP_CALL(CantBeHere), SIG_EVERYWHERE, "ol*", NULL, NULL },
+ { MAP_CALL(OnControl), SIG_EVERYWHERE, "i*", NULL, NULL },
+ { MAP_CALL(InitBresen), SIG_EVERYWHERE, "oi*", NULL, NULL },
+ { MAP_CALL(DoBresen), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(DoAvoider), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(SetJump), SIG_EVERYWHERE, "oiii", NULL, NULL },
+ { MAP_CALL(SetDebug), SIG_EVERYWHERE, "i*", NULL, NULL },
+ { MAP_CALL(MemoryInfo), SIG_EVERYWHERE, "i", NULL, NULL },
+ { MAP_CALL(GetMenu), SIG_EVERYWHERE, "i.", NULL, NULL },
+ { MAP_CALL(SetMenu), SIG_EVERYWHERE, "i.*", NULL, NULL },
+ { MAP_CALL(GetSaveFiles), SIG_EVERYWHERE, "rrr", NULL, NULL },
+ { MAP_CALL(GetCWD), SIG_EVERYWHERE, "r", NULL, NULL },
+ { MAP_CALL(CheckFreeSpace), SIG_EVERYWHERE, "r.*", NULL, NULL },
+ { MAP_CALL(ValidPath), SIG_EVERYWHERE, "r", NULL, NULL },
+ { MAP_CALL(CoordPri), SIG_EVERYWHERE, "ii*", NULL, NULL },
+ { MAP_CALL(StrAt), SIG_EVERYWHERE, "rii*", NULL, NULL },
+ { MAP_CALL(DeviceInfo), SIG_EVERYWHERE, "i.*", NULL, NULL },
+ { MAP_CALL(GetSaveDir), SIG_EVERYWHERE, ".*", NULL, NULL },
// ^^ FIXME accepts a parameter in SCI2+ games
- { MAP_CALL(CheckSaveGame), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(ShakeScreen), SIG_EVERYWHERE, "ii*", NULL },
- { MAP_CALL(FlushResources), SIG_EVERYWHERE, "i", NULL },
- { MAP_CALL(TimesSin), SIG_EVERYWHERE, "ii", NULL },
- { MAP_CALL(TimesCos), SIG_EVERYWHERE, "ii", NULL },
- { MAP_CALL(Graph), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(Joystick), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(FileIO), SIG_EVERYWHERE, "i.*", NULL },
- { MAP_CALL(Memory), SIG_EVERYWHERE, "i.*", NULL },
- { MAP_CALL(Sort), SIG_EVERYWHERE, "ooo", NULL },
- { MAP_CALL(AvoidPath), SIG_EVERYWHERE, "ii.*", NULL },
- { MAP_CALL(Lock), SIG_EVERYWHERE, "iii*", NULL },
- { MAP_CALL(Palette), SIG_EVERYWHERE, "i.*", NULL },
- { MAP_CALL(IsItSkip), SIG_EVERYWHERE, "iiiii", NULL },
- { MAP_CALL(StrSplit), SIG_EVERYWHERE, "rrZr", NULL },
- { "CosMult", kTimesCos, SIG_EVERYWHERE, "ii", NULL },
- { "SinMult", kTimesSin, SIG_EVERYWHERE, "ii", NULL },
- { MAP_CALL(CosDiv), SIG_EVERYWHERE, "ii", NULL },
- { MAP_CALL(PriCoord), SIG_EVERYWHERE, "i", NULL },
- { MAP_CALL(SinDiv), SIG_EVERYWHERE, "ii", NULL },
- { MAP_CALL(TimesCot), SIG_EVERYWHERE, "ii", NULL },
- { MAP_CALL(TimesTan), SIG_EVERYWHERE, "ii", NULL },
- { MAP_CALL(Message), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(GetMessage), SIG_EVERYWHERE, "iiir", NULL },
- { MAP_CALL(DoAudio), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(DoSync), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(MemorySegment), SIG_EVERYWHERE, "iri*", NULL },
- { MAP_CALL(Intersections), SIG_EVERYWHERE, "iiiiriiiri", NULL },
- { MAP_CALL(MergePoly), SIG_EVERYWHERE, "rli", NULL },
- { MAP_CALL(ResCheck), SIG_EVERYWHERE, "iii*", NULL },
- { MAP_CALL(SetQuitStr), SIG_EVERYWHERE, "r", NULL },
- { MAP_CALL(ShowMovie), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(SetVideoMode), SIG_EVERYWHERE, "i", NULL },
- { MAP_CALL(Platform), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(TextColors), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(TextFonts), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(Portrait), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(PalVary), SIG_EVERYWHERE, "ii*", NULL },
- { MAP_CALL(AssertPalette), SIG_EVERYWHERE, "i", NULL },
- { MAP_CALL(Empty), SIG_EVERYWHERE, ".*", NULL },
+ { MAP_CALL(CheckSaveGame), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(ShakeScreen), SIG_EVERYWHERE, "ii*", NULL, NULL },
+ { MAP_CALL(FlushResources), SIG_EVERYWHERE, "i", NULL, NULL },
+ { MAP_CALL(TimesSin), SIG_EVERYWHERE, "ii", NULL, NULL },
+ { MAP_CALL(TimesCos), SIG_EVERYWHERE, "ii", NULL, NULL },
+ { MAP_CALL(Graph), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(Joystick), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(FileIO), SIG_EVERYWHERE, "i.*", NULL, NULL },
+ { MAP_CALL(Memory), SIG_EVERYWHERE, "i.*", NULL, NULL },
+ { MAP_CALL(Sort), SIG_EVERYWHERE, "ooo", NULL, NULL },
+ { MAP_CALL(AvoidPath), SIG_EVERYWHERE, "ii.*", NULL, NULL },
+ { MAP_CALL(Lock), SIG_EVERYWHERE, "iii*", NULL, NULL },
+ { MAP_CALL(Palette), SIG_EVERYWHERE, "i.*", NULL, NULL },
+ { MAP_CALL(IsItSkip), SIG_EVERYWHERE, "iiiii", NULL, NULL },
+ { MAP_CALL(StrSplit), SIG_EVERYWHERE, "rrZr", NULL, NULL },
+ { "CosMult", kTimesCos, SIG_EVERYWHERE, "ii", NULL, NULL },
+ { "SinMult", kTimesSin, SIG_EVERYWHERE, "ii", NULL, NULL },
+ { MAP_CALL(CosDiv), SIG_EVERYWHERE, "ii", NULL, NULL },
+ { MAP_CALL(PriCoord), SIG_EVERYWHERE, "i", NULL, NULL },
+ { MAP_CALL(SinDiv), SIG_EVERYWHERE, "ii", NULL, NULL },
+ { MAP_CALL(TimesCot), SIG_EVERYWHERE, "ii", NULL, NULL },
+ { MAP_CALL(TimesTan), SIG_EVERYWHERE, "ii", NULL, NULL },
+ { MAP_CALL(Message), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(GetMessage), SIG_EVERYWHERE, "iiir", NULL, NULL },
+ { MAP_CALL(DoAudio), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(DoSync), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(MemorySegment), SIG_EVERYWHERE, "iri*", NULL, NULL },
+ { MAP_CALL(Intersections), SIG_EVERYWHERE, "iiiiriiiri", NULL, NULL },
+ { MAP_CALL(MergePoly), SIG_EVERYWHERE, "rli", NULL, NULL },
+ { MAP_CALL(ResCheck), SIG_EVERYWHERE, "iii*", NULL, NULL },
+ { MAP_CALL(SetQuitStr), SIG_EVERYWHERE, "r", NULL, NULL },
+ { MAP_CALL(ShowMovie), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(SetVideoMode), SIG_EVERYWHERE, "i", NULL, NULL },
+ { MAP_CALL(Platform), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(TextColors), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(TextFonts), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(Portrait), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(PalVary), SIG_EVERYWHERE, "ii*", NULL, NULL },
+ { MAP_CALL(AssertPalette), SIG_EVERYWHERE, "i", NULL, NULL },
+ { MAP_CALL(Empty), SIG_EVERYWHERE, ".*", NULL, NULL },
#ifdef ENABLE_SCI32
// SCI2 Kernel Functions
- { MAP_CALL(IsHiRes), SIG_EVERYWHERE, "", NULL },
- { MAP_CALL(Array), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(ListAt), SIG_EVERYWHERE, "li", NULL },
- { MAP_CALL(String), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(AddScreenItem), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(UpdateScreenItem), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(DeleteScreenItem), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(AddPlane), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(DeletePlane), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(UpdatePlane), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(RepaintPlane), SIG_EVERYWHERE, "o", NULL },
- { MAP_CALL(GetHighPlanePri), SIG_EVERYWHERE, "", NULL },
- { MAP_CALL(FrameOut), SIG_EVERYWHERE, "", NULL },
- { MAP_CALL(ListEachElementDo), SIG_EVERYWHERE, "li.*", NULL },
- { MAP_CALL(ListFirstTrue), SIG_EVERYWHERE, "li.*", NULL },
- { MAP_CALL(ListAllTrue), SIG_EVERYWHERE, "li.*", NULL },
- { MAP_CALL(ListIndexOf), SIG_EVERYWHERE, "lZo", NULL },
- { MAP_CALL(OnMe), SIG_EVERYWHERE, "iio.*", NULL },
- { MAP_CALL(InPolygon), SIG_EVERYWHERE, "iio", NULL },
- { MAP_CALL(CreateTextBitmap), SIG_EVERYWHERE, "i.*", NULL },
+ { MAP_CALL(IsHiRes), SIG_EVERYWHERE, "", NULL, NULL },
+ { MAP_CALL(Array), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(ListAt), SIG_EVERYWHERE, "li", NULL, NULL },
+ { MAP_CALL(String), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(AddScreenItem), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(UpdateScreenItem), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(DeleteScreenItem), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(AddPlane), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(DeletePlane), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(UpdatePlane), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(RepaintPlane), SIG_EVERYWHERE, "o", NULL, NULL },
+ { MAP_CALL(GetHighPlanePri), SIG_EVERYWHERE, "", NULL, NULL },
+ { MAP_CALL(FrameOut), SIG_EVERYWHERE, "", NULL, NULL },
+ { MAP_CALL(ListEachElementDo), SIG_EVERYWHERE, "li.*", NULL, NULL },
+ { MAP_CALL(ListFirstTrue), SIG_EVERYWHERE, "li.*", NULL, NULL },
+ { MAP_CALL(ListAllTrue), SIG_EVERYWHERE, "li.*", NULL, NULL },
+ { MAP_CALL(ListIndexOf), SIG_EVERYWHERE, "lZo", NULL, NULL },
+ { MAP_CALL(OnMe), SIG_EVERYWHERE, "iio.*", NULL, NULL },
+ { MAP_CALL(InPolygon), SIG_EVERYWHERE, "iio", NULL, NULL },
+ { MAP_CALL(CreateTextBitmap), SIG_EVERYWHERE, "i.*", NULL, NULL },
// SCI2.1 Kernel Functions
- { MAP_CALL(Save), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(List), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(Robot), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(PlayVMD), SIG_EVERYWHERE, ".*", NULL },
- { MAP_CALL(IsOnMe), SIG_EVERYWHERE, "iio.*", NULL },
- { MAP_CALL(MulDiv), SIG_EVERYWHERE, "iii", NULL },
- { MAP_CALL(Text), SIG_EVERYWHERE, ".*", NULL },
- { NULL, NULL, SIG_EVERYWHERE, NULL, NULL }
+ { MAP_CALL(Save), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(List), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(Robot), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(PlayVMD), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { MAP_CALL(IsOnMe), SIG_EVERYWHERE, "iio.*", NULL, NULL },
+ { MAP_CALL(MulDiv), SIG_EVERYWHERE, "iii", NULL, NULL },
+ { MAP_CALL(Text), SIG_EVERYWHERE, ".*", NULL, NULL },
+ { NULL, NULL, SIG_EVERYWHERE, NULL, NULL, NULL }
#endif
};