[Scummvm-git-logs] scummvm master -> 07aaa9a2634796bd80adafd604732e56098484c0
rvanlaar
noreply at scummvm.org
Fri Jul 12 15:20:34 UTC 2024
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
7d08d5710c JANITORIAL: Fix spelling mistake enttry -> entry
07aaa9a263 DIRECTOR: add stubs for Mummy xlibs
Commit: 7d08d5710cc4f06b0ba685917ed78ed5f11e38b6
https://github.com/scummvm/scummvm/commit/7d08d5710cc4f06b0ba685917ed78ed5f11e38b6
Author: Roland van Laar (roland at rolandvanlaar.nl)
Date: 2024-07-12T15:42:20+02:00
Commit Message:
JANITORIAL: Fix spelling mistake enttry -> entry
Changed paths:
engines/director/lingo/lingo-object.cpp
diff --git a/engines/director/lingo/lingo-object.cpp b/engines/director/lingo/lingo-object.cpp
index 70eee59f8c5..a6d1561f690 100644
--- a/engines/director/lingo/lingo-object.cpp
+++ b/engines/director/lingo/lingo-object.cpp
@@ -326,7 +326,7 @@ void Lingo::initXLibs() {
continue;
if (_xlibOpeners.contains(lib->names[i].name))
- warning("Lingo::initXLibs(): Duplicate enttry for %s", lib->names[i].name);
+ warning("Lingo::initXLibs(): Duplicate entry for %s", lib->names[i].name);
_xlibOpeners[lib->names[i].name] = lib->opener;
_xlibClosers[lib->names[i].name] = lib->closer;
Commit: 07aaa9a2634796bd80adafd604732e56098484c0
https://github.com/scummvm/scummvm/commit/07aaa9a2634796bd80adafd604732e56098484c0
Author: Roland van Laar (roland at rolandvanlaar.nl)
Date: 2024-07-12T16:03:14+02:00
Commit Message:
DIRECTOR: add stubs for Mummy xlibs
Add xlib stubs for Mummy: Tomb of the Pharaoh.
Generated with `director-generate-xobj-stubs.py`.
Changed paths:
A engines/director/lingo/xlibs/henry.cpp
A engines/director/lingo/xlibs/henry.h
A engines/director/lingo/xlibs/syscolor.cpp
A engines/director/lingo/xlibs/syscolor.h
engines/director/lingo/lingo-object.cpp
engines/director/module.mk
diff --git a/engines/director/lingo/lingo-object.cpp b/engines/director/lingo/lingo-object.cpp
index a6d1561f690..dbff72cbb18 100644
--- a/engines/director/lingo/lingo-object.cpp
+++ b/engines/director/lingo/lingo-object.cpp
@@ -72,6 +72,7 @@
#include "director/lingo/xlibs/getscreenrectsxfcn.h"
#include "director/lingo/xlibs/getscreensizexfcn.h"
#include "director/lingo/xlibs/gpid.h"
+#include "director/lingo/xlibs/henry.h"
#include "director/lingo/xlibs/hitmap.h"
#include "director/lingo/xlibs/inixobj.h"
#include "director/lingo/xlibs/instobj.h"
@@ -114,6 +115,7 @@
#include "director/lingo/xlibs/soundjam.h"
#include "director/lingo/xlibs/spacemgr.h"
#include "director/lingo/xlibs/stagetc.h"
+#include "director/lingo/xlibs/syscolor.h"
#include "director/lingo/xlibs/unittest.h"
#include "director/lingo/xlibs/valkyrie.h"
#include "director/lingo/xlibs/videodiscxobj.h"
@@ -250,6 +252,7 @@ static struct XLibProto {
XLIBDEF(GetScreenRectsXFCN, kXObj, 300), // D3
XLIBDEF(GetScreenSizeXFCN, kXObj, 300), // D3
XLIBDEF(GpidXObj, kXObj, 400), // D4
+ XLIBDEF(HenryXObj, kXObj, 400), // D4
XLIBDEF(HitMap, kXObj, 400), // D4
XLIBDEF(IniXObj, kXObj, 400), // D4
XLIBDEF(InstObjXObj, kXObj, 400), // D4
@@ -297,6 +300,7 @@ static struct XLibProto {
XLIBDEF(SoundJam, kXObj, 400), // D4
XLIBDEF(SpaceMgr, kXObj, 400), // D4
XLIBDEF(StageTCXObj, kXObj, 400), // D4
+ XLIBDEF(SysColorXObj, kXObj, 400), // D4
XLIBDEF(TimextraXtra, kXtraObj, 500), // D5
XLIBDEF(UnitTestXObj, kXObj, 400), // D4
XLIBDEF(VMisOnXFCN, kXObj, 400), // D4
diff --git a/engines/director/lingo/xlibs/henry.cpp b/engines/director/lingo/xlibs/henry.cpp
new file mode 100644
index 00000000000..51eb93212ef
--- /dev/null
+++ b/engines/director/lingo/xlibs/henry.cpp
@@ -0,0 +1,219 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+#include "common/system.h"
+
+#include "director/director.h"
+#include "director/lingo/lingo.h"
+#include "director/lingo/lingo-object.h"
+#include "director/lingo/lingo-utils.h"
+#include "director/lingo/xlibs/henry.h"
+
+/**************************************************
+ *
+ * USED IN:
+ * Mummy: Tomb of the Pharaoh
+ *
+ **************************************************/
+
+/*
+-- Henry XObject. Mar 21, 95 JPY
+--Henry
+ISS mNew --Creates a new instance of the XObject
+X mDispose --Disposes of XObject instance
+S mName
+SIIS mUserHitMouse --
+XSSS mStartNewPosition --
+XSS mStartNewPositionSubView --
+S mCommittNewPosition --
+S mDoLeftTurn --
+S mDoRightTurn --
+SII mCheckCursor --
+SII mGetRollOverActions --
+S mGetEntryActions --
+S mPeekEntryActions --
+S mGetExitActions --
+S mSetSavedPosition
+IS mGetStateVariable --
+XSI mSetStateVariable --
+SS mGetStringVariable --
+XSS mSetStringVariable --
+XSI mStartTimer --
+XS mAbortTimer --
+S mCheckTimers --
+SS mGetTimerStatus
+SS mPickUpItem
+XS mDropItem --
+XS mDumpItem
+SS mReturnItem
+SS mIngestItem
+SSS mPutItemInContainer
+SSSSS mPutItemAtLocation
+S mGetCurrentPosition
+S mGetPlayerProperties
+SSS mSaveGame --
+SS mLoadGame --
+XI mShowCursor --
+X mReleaseCursor --
+S mGetRoomList --
+SI mGetItemList --
+S mGetCurrentItem --
+S mGetCurrentContainer --
+S mGetCurrentInteraction --
+SS mGetItemLocation --
+SS mGetContainerContents --
+X mPauseGame --
+X mResumeGame --
+ */
+
+namespace Director {
+
+const char *HenryXObj::xlibName = "Henry";
+const XlibFileDesc HenryXObj::fileNames[] = {
+ { "HENRY", nullptr },
+ { nullptr, nullptr },
+};
+
+static MethodProto xlibMethods[] = {
+ { "new", HenryXObj::m_new, 2, 2, 400 },
+ { "dispose", HenryXObj::m_dispose, 0, 0, 400 },
+ { "name", HenryXObj::m_name, 0, 0, 400 },
+ { "userHitMouse", HenryXObj::m_userHitMouse, 3, 3, 400 },
+ { "startNewPosition", HenryXObj::m_startNewPosition, 3, 3, 400 },
+ { "startNewPositionSubView", HenryXObj::m_startNewPositionSubView, 2, 2, 400 },
+ { "committNewPosition", HenryXObj::m_committNewPosition, 0, 0, 400 },
+ { "doLeftTurn", HenryXObj::m_doLeftTurn, 0, 0, 400 },
+ { "doRightTurn", HenryXObj::m_doRightTurn, 0, 0, 400 },
+ { "checkCursor", HenryXObj::m_checkCursor, 2, 2, 400 },
+ { "getRollOverActions", HenryXObj::m_getRollOverActions, 2, 2, 400 },
+ { "getEntryActions", HenryXObj::m_getEntryActions, 0, 0, 400 },
+ { "peekEntryActions", HenryXObj::m_peekEntryActions, 0, 0, 400 },
+ { "getExitActions", HenryXObj::m_getExitActions, 0, 0, 400 },
+ { "setSavedPosition", HenryXObj::m_setSavedPosition, 0, 0, 400 },
+ { "getStateVariable", HenryXObj::m_getStateVariable, 1, 1, 400 },
+ { "setStateVariable", HenryXObj::m_setStateVariable, 2, 2, 400 },
+ { "getStringVariable", HenryXObj::m_getStringVariable, 1, 1, 400 },
+ { "setStringVariable", HenryXObj::m_setStringVariable, 2, 2, 400 },
+ { "startTimer", HenryXObj::m_startTimer, 2, 2, 400 },
+ { "abortTimer", HenryXObj::m_abortTimer, 1, 1, 400 },
+ { "checkTimers", HenryXObj::m_checkTimers, 0, 0, 400 },
+ { "getTimerStatus", HenryXObj::m_getTimerStatus, 1, 1, 400 },
+ { "pickUpItem", HenryXObj::m_pickUpItem, 1, 1, 400 },
+ { "dropItem", HenryXObj::m_dropItem, 1, 1, 400 },
+ { "dumpItem", HenryXObj::m_dumpItem, 1, 1, 400 },
+ { "returnItem", HenryXObj::m_returnItem, 1, 1, 400 },
+ { "ingestItem", HenryXObj::m_ingestItem, 1, 1, 400 },
+ { "putItemInContainer", HenryXObj::m_putItemInContainer, 2, 2, 400 },
+ { "putItemAtLocation", HenryXObj::m_putItemAtLocation, 4, 4, 400 },
+ { "getCurrentPosition", HenryXObj::m_getCurrentPosition, 0, 0, 400 },
+ { "getPlayerProperties", HenryXObj::m_getPlayerProperties, 0, 0, 400 },
+ { "saveGame", HenryXObj::m_saveGame, 2, 2, 400 },
+ { "loadGame", HenryXObj::m_loadGame, 1, 1, 400 },
+ { "showCursor", HenryXObj::m_showCursor, 1, 1, 400 },
+ { "releaseCursor", HenryXObj::m_releaseCursor, 0, 0, 400 },
+ { "getRoomList", HenryXObj::m_getRoomList, 0, 0, 400 },
+ { "getItemList", HenryXObj::m_getItemList, 1, 1, 400 },
+ { "getCurrentItem", HenryXObj::m_getCurrentItem, 0, 0, 400 },
+ { "getCurrentContainer", HenryXObj::m_getCurrentContainer, 0, 0, 400 },
+ { "getCurrentInteraction", HenryXObj::m_getCurrentInteraction, 0, 0, 400 },
+ { "getItemLocation", HenryXObj::m_getItemLocation, 1, 1, 400 },
+ { "getContainerContents", HenryXObj::m_getContainerContents, 1, 1, 400 },
+ { "pauseGame", HenryXObj::m_pauseGame, 0, 0, 400 },
+ { "resumeGame", HenryXObj::m_resumeGame, 0, 0, 400 },
+ { nullptr, nullptr, 0, 0, 0 }
+};
+
+static BuiltinProto xlibBuiltins[] = {
+
+ { nullptr, nullptr, 0, 0, 0, VOIDSYM }
+};
+
+HenryXObject::HenryXObject(ObjectType ObjectType) :Object<HenryXObject>("Henry") {
+ _objType = ObjectType;
+}
+
+void HenryXObj::open(ObjectType type, const Common::Path &path) {
+ HenryXObject::initMethods(xlibMethods);
+ HenryXObject *xobj = new HenryXObject(type);
+ if (type == kXtraObj)
+ g_lingo->_openXtras.push_back(xlibName);
+ g_lingo->exposeXObject(xlibName, xobj);
+ g_lingo->initBuiltIns(xlibBuiltins);
+}
+
+void HenryXObj::close(ObjectType type) {
+ HenryXObject::cleanupMethods();
+ g_lingo->_globalvars[xlibName] = Datum();
+
+}
+
+void HenryXObj::m_new(int nargs) {
+ g_lingo->printSTUBWithArglist("HenryXObj::m_new", nargs);
+ g_lingo->dropStack(nargs);
+ g_lingo->push(g_lingo->_state->me);
+}
+
+XOBJSTUBNR(HenryXObj::m_dispose)
+XOBJSTUB(HenryXObj::m_name, "")
+XOBJSTUB(HenryXObj::m_userHitMouse, "")
+XOBJSTUBNR(HenryXObj::m_startNewPosition)
+XOBJSTUBNR(HenryXObj::m_startNewPositionSubView)
+XOBJSTUB(HenryXObj::m_committNewPosition, "")
+XOBJSTUB(HenryXObj::m_doLeftTurn, "")
+XOBJSTUB(HenryXObj::m_doRightTurn, "")
+XOBJSTUB(HenryXObj::m_checkCursor, "")
+XOBJSTUB(HenryXObj::m_getRollOverActions, "")
+XOBJSTUB(HenryXObj::m_getEntryActions, "")
+XOBJSTUB(HenryXObj::m_peekEntryActions, "")
+XOBJSTUB(HenryXObj::m_getExitActions, "")
+XOBJSTUB(HenryXObj::m_setSavedPosition, "")
+XOBJSTUB(HenryXObj::m_getStateVariable, 0)
+XOBJSTUBNR(HenryXObj::m_setStateVariable)
+XOBJSTUB(HenryXObj::m_getStringVariable, "")
+XOBJSTUBNR(HenryXObj::m_setStringVariable)
+XOBJSTUBNR(HenryXObj::m_startTimer)
+XOBJSTUBNR(HenryXObj::m_abortTimer)
+XOBJSTUB(HenryXObj::m_checkTimers, "")
+XOBJSTUB(HenryXObj::m_getTimerStatus, "")
+XOBJSTUB(HenryXObj::m_pickUpItem, "")
+XOBJSTUBNR(HenryXObj::m_dropItem)
+XOBJSTUBNR(HenryXObj::m_dumpItem)
+XOBJSTUB(HenryXObj::m_returnItem, "")
+XOBJSTUB(HenryXObj::m_ingestItem, "")
+XOBJSTUB(HenryXObj::m_putItemInContainer, "")
+XOBJSTUB(HenryXObj::m_putItemAtLocation, "")
+XOBJSTUB(HenryXObj::m_getCurrentPosition, "")
+XOBJSTUB(HenryXObj::m_getPlayerProperties, "")
+XOBJSTUB(HenryXObj::m_saveGame, "")
+XOBJSTUB(HenryXObj::m_loadGame, "")
+XOBJSTUBNR(HenryXObj::m_showCursor)
+XOBJSTUBNR(HenryXObj::m_releaseCursor)
+XOBJSTUB(HenryXObj::m_getRoomList, "")
+XOBJSTUB(HenryXObj::m_getItemList, "")
+XOBJSTUB(HenryXObj::m_getCurrentItem, "")
+XOBJSTUB(HenryXObj::m_getCurrentContainer, "")
+XOBJSTUB(HenryXObj::m_getCurrentInteraction, "")
+XOBJSTUB(HenryXObj::m_getItemLocation, "")
+XOBJSTUB(HenryXObj::m_getContainerContents, "")
+XOBJSTUBNR(HenryXObj::m_pauseGame)
+XOBJSTUBNR(HenryXObj::m_resumeGame)
+
+}
diff --git a/engines/director/lingo/xlibs/henry.h b/engines/director/lingo/xlibs/henry.h
new file mode 100644
index 00000000000..415490f5d54
--- /dev/null
+++ b/engines/director/lingo/xlibs/henry.h
@@ -0,0 +1,90 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+#ifndef DIRECTOR_LINGO_XLIBS_HENRY_H
+#define DIRECTOR_LINGO_XLIBS_HENRY_H
+
+namespace Director {
+
+class HenryXObject : public Object<HenryXObject> {
+public:
+ HenryXObject(ObjectType objType);
+};
+
+namespace HenryXObj {
+
+extern const char *xlibName;
+extern const XlibFileDesc fileNames[];
+
+void open(ObjectType type, const Common::Path &path);
+void close(ObjectType type);
+
+void m_new(int nargs);
+void m_dispose(int nargs);
+void m_name(int nargs);
+void m_userHitMouse(int nargs);
+void m_startNewPosition(int nargs);
+void m_startNewPositionSubView(int nargs);
+void m_committNewPosition(int nargs);
+void m_doLeftTurn(int nargs);
+void m_doRightTurn(int nargs);
+void m_checkCursor(int nargs);
+void m_getRollOverActions(int nargs);
+void m_getEntryActions(int nargs);
+void m_peekEntryActions(int nargs);
+void m_getExitActions(int nargs);
+void m_setSavedPosition(int nargs);
+void m_getStateVariable(int nargs);
+void m_setStateVariable(int nargs);
+void m_getStringVariable(int nargs);
+void m_setStringVariable(int nargs);
+void m_startTimer(int nargs);
+void m_abortTimer(int nargs);
+void m_checkTimers(int nargs);
+void m_getTimerStatus(int nargs);
+void m_pickUpItem(int nargs);
+void m_dropItem(int nargs);
+void m_dumpItem(int nargs);
+void m_returnItem(int nargs);
+void m_ingestItem(int nargs);
+void m_putItemInContainer(int nargs);
+void m_putItemAtLocation(int nargs);
+void m_getCurrentPosition(int nargs);
+void m_getPlayerProperties(int nargs);
+void m_saveGame(int nargs);
+void m_loadGame(int nargs);
+void m_showCursor(int nargs);
+void m_releaseCursor(int nargs);
+void m_getRoomList(int nargs);
+void m_getItemList(int nargs);
+void m_getCurrentItem(int nargs);
+void m_getCurrentContainer(int nargs);
+void m_getCurrentInteraction(int nargs);
+void m_getItemLocation(int nargs);
+void m_getContainerContents(int nargs);
+void m_pauseGame(int nargs);
+void m_resumeGame(int nargs);
+
+} // End of namespace HenryXObj
+
+} // End of namespace Director
+
+#endif
diff --git a/engines/director/lingo/xlibs/syscolor.cpp b/engines/director/lingo/xlibs/syscolor.cpp
new file mode 100644
index 00000000000..9aaee51518d
--- /dev/null
+++ b/engines/director/lingo/xlibs/syscolor.cpp
@@ -0,0 +1,96 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+#include "common/system.h"
+
+#include "director/director.h"
+#include "director/lingo/lingo.h"
+#include "director/lingo/lingo-object.h"
+#include "director/lingo/lingo-utils.h"
+#include "director/lingo/xlibs/syscolor.h"
+
+/**************************************************
+ *
+ * USED IN:
+ * Mummy: Tomb of the Pharaoh
+ *
+ **************************************************/
+
+/*
+-- System color Save/Restore XObject
+--SysColor
+I mNew --Creates a new instance of the XObject
+X mDispose --Disposes of XObject instance
+X mSaveColors --Saves windows system colors, then sets UI to monochrome
+X mRestoreColors --Restores windows system colors
+ */
+
+namespace Director {
+
+const char *SysColorXObj::xlibName = "SysColor";
+const XlibFileDesc SysColorXObj::fileNames[] = {
+ { "SYSCOLOR", nullptr },
+ { nullptr, nullptr },
+};
+
+static MethodProto xlibMethods[] = {
+ { "new", SysColorXObj::m_new, 0, 0, 400 },
+ { "dispose", SysColorXObj::m_dispose, 0, 0, 400 },
+ { "saveColors", SysColorXObj::m_saveColors, 0, 0, 400 },
+ { "restoreColors", SysColorXObj::m_restoreColors, 0, 0, 400 },
+ { nullptr, nullptr, 0, 0, 0 }
+};
+
+static BuiltinProto xlibBuiltins[] = {
+
+ { nullptr, nullptr, 0, 0, 0, VOIDSYM }
+};
+
+SysColorXObject::SysColorXObject(ObjectType ObjectType) :Object<SysColorXObject>("SysColor") {
+ _objType = ObjectType;
+}
+
+void SysColorXObj::open(ObjectType type, const Common::Path &path) {
+ SysColorXObject::initMethods(xlibMethods);
+ SysColorXObject *xobj = new SysColorXObject(type);
+ if (type == kXtraObj)
+ g_lingo->_openXtras.push_back(xlibName);
+ g_lingo->exposeXObject(xlibName, xobj);
+ g_lingo->initBuiltIns(xlibBuiltins);
+}
+
+void SysColorXObj::close(ObjectType type) {
+ SysColorXObject::cleanupMethods();
+ g_lingo->_globalvars[xlibName] = Datum();
+
+}
+
+void SysColorXObj::m_new(int nargs) {
+ g_lingo->printSTUBWithArglist("SysColorXObj::m_new", nargs);
+ g_lingo->dropStack(nargs);
+ g_lingo->push(g_lingo->_state->me);
+}
+
+XOBJSTUBNR(SysColorXObj::m_dispose)
+XOBJSTUBNR(SysColorXObj::m_saveColors)
+XOBJSTUBNR(SysColorXObj::m_restoreColors)
+
+}
diff --git a/engines/director/lingo/xlibs/syscolor.h b/engines/director/lingo/xlibs/syscolor.h
new file mode 100644
index 00000000000..605e9ae92f3
--- /dev/null
+++ b/engines/director/lingo/xlibs/syscolor.h
@@ -0,0 +1,49 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+#ifndef DIRECTOR_LINGO_XLIBS_SYSCOLOR_H
+#define DIRECTOR_LINGO_XLIBS_SYSCOLOR_H
+
+namespace Director {
+
+class SysColorXObject : public Object<SysColorXObject> {
+public:
+ SysColorXObject(ObjectType objType);
+};
+
+namespace SysColorXObj {
+
+extern const char *xlibName;
+extern const XlibFileDesc fileNames[];
+
+void open(ObjectType type, const Common::Path &path);
+void close(ObjectType type);
+
+void m_new(int nargs);
+void m_dispose(int nargs);
+void m_saveColors(int nargs);
+void m_restoreColors(int nargs);
+
+} // End of namespace SysColorXObj
+
+} // End of namespace Director
+
+#endif
diff --git a/engines/director/module.mk b/engines/director/module.mk
index f8445e85cde..5c73c9fd7a9 100644
--- a/engines/director/module.mk
+++ b/engines/director/module.mk
@@ -101,6 +101,7 @@ MODULE_OBJS = \
lingo/xlibs/getscreenrectsxfcn.o \
lingo/xlibs/getscreensizexfcn.o \
lingo/xlibs/gpid.o \
+ lingo/xlibs/henry.o \
lingo/xlibs/hitmap.o \
lingo/xlibs/inixobj.o \
lingo/xlibs/instobj.o \
@@ -143,6 +144,7 @@ MODULE_OBJS = \
lingo/xlibs/soundjam.o \
lingo/xlibs/spacemgr.o \
lingo/xlibs/stagetc.o \
+ lingo/xlibs/syscolor.o \
lingo/xlibs/unittest.o \
lingo/xlibs/valkyrie.o \
lingo/xlibs/videodiscxobj.o \
More information about the Scummvm-git-logs
mailing list