[Scummvm-git-logs] scummvm master -> 8ba2bd487995f642eaa408f4a9a09762da7699f0

sev- noreply at scummvm.org
Sun Jun 2 19:28:43 UTC 2024


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
8ba2bd4879 DIRECTOR: Add detection and support for "Wellen, Wracks und Wassermänner"


Commit: 8ba2bd487995f642eaa408f4a9a09762da7699f0
    https://github.com/scummvm/scummvm/commit/8ba2bd487995f642eaa408f4a9a09762da7699f0
Author: codengine (498798+codengine at users.noreply.github.com)
Date: 2024-06-02T21:28:40+02:00

Commit Message:
DIRECTOR: Add detection and support for "Wellen, Wracks und Wassermänner"

The game uses an xLib named "INI.DLL", which is very similar to the already existing jwxini (probably its just the same). The version of the xLib is 1.0.

Changed paths:
    engines/director/detection_tables.h
    engines/director/lingo/xlibs/jwxini.cpp
    engines/director/lingo/xlibs/jwxini.h


diff --git a/engines/director/detection_tables.h b/engines/director/detection_tables.h
index 4d30aabb4fa..0646bcc2c40 100644
--- a/engines/director/detection_tables.h
+++ b/engines/director/detection_tables.h
@@ -948,6 +948,7 @@ static const PlainGameDescriptor directorGames[] = {
 	{ "technicus",			"Technicus: Ten Hours Left" },
 	{ "tiefsee",			"S.O.S. Tiefsee" },
 	{ "tkkgkit",			"TKKG: Identikit" },
+	{ "www",				"Wellen, Wracks und Wassermänner" },
 	{ "wdw",				"Welt der Wunder: Eine Insel in Gefahr" },
 	{ "wdw2",				"Welt der Wunder 2: Eine Stadt spielt verrückt" },
 	{ "wettlauf",			"Wettlauf Ins All" },
@@ -5861,6 +5862,11 @@ static const DirectorGameDescription gameDescriptions[] = {
 
 	WINDEMO1("wwanimals", "Demo", "ANIMALS.EXE", "25fee176193d52cf7cbc2b604bfcbf8c", 6961631, 404),
 
+	// Original filename is "Wellen, Wracks und Wassermänner"
+	MACGAME1_l("www", "", "xn--Wellen, Wracks und Wassermnner-ltc", "tr:6e0e5a0a2f9aa278fb36a12b4aad1c7a", 483058, Common::DE_DEU, 404),
+	WINGAME2_l("www", "", "WWW.EXE",			"t:ae93455c01b997db10ed6cab146eda0d", 702365,
+							"71HAFEN.DXR",		"52002fe0598521a9672a4ab84503e494", 2444290, Common::DE_DEU, 404),
+
 	MACGAME1_l("xaxa", "", "XAXA MACHINE", "ff0b7a4b925c7345785c372d618d0967", 342977, Common::JA_JPN, 400),
 
 	MACGAME1_l("xmaspresent", "", "Christmas Present", "8b138db44d4421cc7294a9dc792ccf1b", 308920, Common::JA_JPN, 402),
diff --git a/engines/director/lingo/xlibs/jwxini.cpp b/engines/director/lingo/xlibs/jwxini.cpp
index a802c7ab315..6d56d782c26 100644
--- a/engines/director/lingo/xlibs/jwxini.cpp
+++ b/engines/director/lingo/xlibs/jwxini.cpp
@@ -23,6 +23,7 @@
  *
  * USED IN:
  * Gahan Wilson's Ultimate Haunted House
+ * Wellen, Wracks und Wassermaenner
  *
  *************************************/
 
@@ -51,19 +52,28 @@ namespace Director {
 
 const char *JourneyWareXINIXObj::xlibName = "INI";
 const char *JourneyWareXINIXObj::fileNames[] = {
-   "JWXINI",
-   nullptr
+	"JWXINI",
+	"INI",
+	nullptr
 };
 
 static MethodProto xlibMethods[] = {
-    { "new",						JourneyWareXINIXObj::m_new,							0,	0,	400 },	// D4
-    { "GetPrivateProfileInt",		JourneyWareXINIXObj::m_GetPrivateProfileInt,		4,	4,	400 },	// D4
-    { "GetPrivateProfileString", 	JourneyWareXINIXObj::m_GetPrivateProfileString,		5,	5,	400 },	// D4
-    { "GetProfileInt",				JourneyWareXINIXObj::m_GetProfileInt,				3,	3,	400 },	// D4
-	{ "GetProfileString", 			JourneyWareXINIXObj::m_GetProfileString,			4,	4,	400 },	// D4
-	{ "WritePrivateProfileString", 	JourneyWareXINIXObj::m_WritePrivateProfileString,	4,	4,	400 },	// D4
-	{ "WriteProfileString", 		JourneyWareXINIXObj::m_WriteProfileString,			3,	3,	400 },	// D4
-    { nullptr, nullptr, 0, 0, 0 }
+	{"dispose", 					JourneyWareXINIXObj::m_dispose, 0, 0, 400}, // D4
+	{"new", 						JourneyWareXINIXObj::m_new, 0, 0, 400}, // D4
+	{"name", 						JourneyWareXINIXObj::m_name, 0, 0, 400}, // D4
+	{"getPrivateProfileInt", 		JourneyWareXINIXObj::m_GetPrivateProfileInt, 4, 4, 400}, // D4
+	{"GetPrivateProfileInt", 		JourneyWareXINIXObj::m_GetPrivateProfileInt, 4, 4, 400}, // D4
+	{"getPrivateProfileString", 	JourneyWareXINIXObj::m_GetPrivateProfileString, 5, 5, 400}, // D4
+	{"GetPrivateProfileString", 	JourneyWareXINIXObj::m_GetPrivateProfileString, 5, 5, 400}, // D4
+	{"getProfileInt", 				JourneyWareXINIXObj::m_GetProfileInt, 3, 3, 400}, // D4
+	{"GetProfileInt", 				JourneyWareXINIXObj::m_GetProfileInt, 3, 3, 400}, // D4
+	{"getProfileString", 			JourneyWareXINIXObj::m_GetProfileString, 4, 4, 400}, // D4
+	{"GetProfileString", 			JourneyWareXINIXObj::m_GetProfileString, 4, 4, 400}, // D4
+	{"writePrivateProfileString", 	JourneyWareXINIXObj::m_WritePrivateProfileString, 4, 4, 400}, // D4
+	{"WritePrivateProfileString", 	JourneyWareXINIXObj::m_WritePrivateProfileString, 4, 4, 400}, // D4
+	{"writeProfileString", 			JourneyWareXINIXObj::m_WriteProfileString, 3, 3, 400}, // D4
+	{"WriteProfileString", 			JourneyWareXINIXObj::m_WriteProfileString, 3, 3, 400}, // D4
+	{nullptr, nullptr, 0, 0, 0}
 };
 
 void JourneyWareXINIXObj::open(ObjectType type, const Common::Path &path) {
@@ -87,8 +97,8 @@ JourneyWareXINIXObject::JourneyWareXINIXObject(ObjectType ObjectType) :Object<Jo
 }
 
 void JourneyWareXINIXObj::m_new(int nargs) {
-   g_lingo->printSTUBWithArglist("JWXIni::new", nargs);
-   g_lingo->push(g_lingo->_state->me);
+	g_lingo->printSTUBWithArglist("JWXIni::new", nargs);
+	g_lingo->push(g_lingo->_state->me);
 }
 
 void JourneyWareXINIXObj::m_GetPrivateProfileInt(int nargs) {
@@ -129,5 +139,7 @@ void JourneyWareXINIXObj::m_GetProfileString(int nargs) {
 
 XOBJSTUB(JourneyWareXINIXObj::m_WritePrivateProfileString, 0)
 XOBJSTUB(JourneyWareXINIXObj::m_WriteProfileString, 0)
+XOBJSTUBNR(JourneyWareXINIXObj::m_dispose)
+XOBJSTUB(JourneyWareXINIXObj::m_name, "")
 
 } // End of namespace Director
diff --git a/engines/director/lingo/xlibs/jwxini.h b/engines/director/lingo/xlibs/jwxini.h
index 74c46339605..92b7d1351a9 100644
--- a/engines/director/lingo/xlibs/jwxini.h
+++ b/engines/director/lingo/xlibs/jwxini.h
@@ -39,7 +39,9 @@ void open(ObjectType type, const Common::Path &path);
 void close(ObjectType type);
 
 void m_new(int nargs);
+void m_name(int nargs);
 void m_clear(int nargs);
+void m_dispose(int nargs);
 
 void m_GetPrivateProfileInt(int nargs);
 void m_GetPrivateProfileString(int nargs);




More information about the Scummvm-git-logs mailing list