[Scummvm-git-logs] scummvm master -> aaf34abca5a1db185a1e2d869837ed9140867fff

sev- sev at scummvm.org
Sat Oct 3 22:37:36 UTC 2020


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:
b9fb948a2d NGI: Added game ids
aaf34abca5 NGI: Added Magic Dream detection


Commit: b9fb948a2dd3450a45f675a34758213b5bd98a2b
    https://github.com/scummvm/scummvm/commit/b9fb948a2dd3450a45f675a34758213b5bd98a2b
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-10-04T00:37:02+02:00

Commit Message:
NGI: Added game ids

Changed paths:
  A engines/ngi/detection.h
    engines/ngi/detection.cpp
    engines/ngi/metaengine.cpp
    engines/ngi/ngi.cpp
    engines/ngi/ngi.h


diff --git a/engines/ngi/detection.cpp b/engines/ngi/detection.cpp
index c0e7f4529d..a98caf855d 100644
--- a/engines/ngi/detection.cpp
+++ b/engines/ngi/detection.cpp
@@ -25,84 +25,103 @@
 #include "engines/advancedDetector.h"
 #include "common/file.h"
 
+#include "ngi/detection.h"
 
 static const PlainGameDescriptor fullpipeGames[] = {
-	{"ngi", "Nikita Game Interface game"},
-	{"fullpipe", "Full Pipe"},
+	{"ngi", 		"Nikita Game Interface game"},
+	{"fullpipe",	"Full Pipe"},
 	{0, 0}
 };
 
 namespace NGI {
 
-static const ADGameDescription gameDescriptions[] = {
+static const NGIGameDescription gameDescriptions[] = {
 
 	// Full Pipe Russian version
 	{
-		"fullpipe",
-		0,
-		AD_ENTRY1s("4620.sc2", "a1a8f3ed731b0dfea43beaa3016fdc71", 554),
-		Common::RU_RUS,
-		Common::kPlatformWindows,
-		ADGF_DROPPLATFORM,
-		GUIO1(GUIO_NOMIDI)
+		{
+			"fullpipe",
+			0,
+			AD_ENTRY1s("4620.sc2", "a1a8f3ed731b0dfea43beaa3016fdc71", 554),
+			Common::RU_RUS,
+			Common::kPlatformWindows,
+			ADGF_DROPPLATFORM,
+			GUIO1(GUIO_NOMIDI)
+		},
+		GID_FULLPIPE
 	},
 
 	// Full Pipe German version
 	{
-		"fullpipe",
-		0,
-		AD_ENTRY1s("4620.sc2", "e4f24ffe4dc84cafc648b951e66c1fb3", 554),
-		Common::DE_DEU,
-		Common::kPlatformWindows,
-		ADGF_DROPPLATFORM,
-		GUIO1(GUIO_NOMIDI)
+		{
+			"fullpipe",
+			0,
+			AD_ENTRY1s("4620.sc2", "e4f24ffe4dc84cafc648b951e66c1fb3", 554),
+			Common::DE_DEU,
+			Common::kPlatformWindows,
+			ADGF_DROPPLATFORM,
+			GUIO1(GUIO_NOMIDI)
+		},
+		GID_FULLPIPE
 	},
 
 	// Full Pipe Estonian version
 	{
-		"fullpipe",
-		0,
-		AD_ENTRY1s("4620.sc2", "571f6b4b68b02003e35bc12c1a1d3fe3", 466),
-		Common::ET_EST,
-		Common::kPlatformWindows,
-		ADGF_DROPPLATFORM,
-		GUIO1(GUIO_NOMIDI)
+		{
+			"fullpipe",
+			0,
+			AD_ENTRY1s("4620.sc2", "571f6b4b68b02003e35bc12c1a1d3fe3", 466),
+			Common::ET_EST,
+			Common::kPlatformWindows,
+			ADGF_DROPPLATFORM,
+			GUIO1(GUIO_NOMIDI)
+		},
+		GID_FULLPIPE
 	},
 
 	// Full Pipe English version
 	{
-		"fullpipe",
-		0,
-		AD_ENTRY1s("4620.sc2", "bffea807345fece14089768fc141af83", 510),
-		Common::EN_ANY,
-		Common::kPlatformWindows,
-		ADGF_DROPPLATFORM,
-		GUIO1(GUIO_NOMIDI)
+		{
+			"fullpipe",
+			0,
+			AD_ENTRY1s("4620.sc2", "bffea807345fece14089768fc141af83", 510),
+			Common::EN_ANY,
+			Common::kPlatformWindows,
+			ADGF_DROPPLATFORM,
+			GUIO1(GUIO_NOMIDI)
+		},
+		GID_FULLPIPE
 	},
 
 	// Full Pipe Russian Demo version
 	{
-		"fullpipe",
-		0,
-		AD_ENTRY1s("4620.sc2", "a0c71b47fc35a5e163fcd8d0972639bb", 70),
-		Common::RU_RUS,
-		Common::kPlatformWindows,
-		ADGF_DROPPLATFORM | ADGF_DEMO,
-		GUIO1(GUIO_NOMIDI)
+		{
+			"fullpipe",
+			0,
+			AD_ENTRY1s("4620.sc2", "a0c71b47fc35a5e163fcd8d0972639bb", 70),
+			Common::RU_RUS,
+			Common::kPlatformWindows,
+			ADGF_DROPPLATFORM | ADGF_DEMO,
+			GUIO1(GUIO_NOMIDI)
+		},
+		GID_FULLPIPE
 	},
 
 	// Full Pipe German Demo version
 	{
-		"fullpipe",
-		0,
-		AD_ENTRY1s("4620.sc2", "e5e98df537e56b39c33ae1d5c90976fe", 510),
-		Common::DE_DEU,
-		Common::kPlatformWindows,
-		ADGF_DROPPLATFORM | ADGF_DEMO,
-		GUIO1(GUIO_NOMIDI)
+		{
+			"fullpipe",
+			0,
+			AD_ENTRY1s("4620.sc2", "e5e98df537e56b39c33ae1d5c90976fe", 510),
+			Common::DE_DEU,
+			Common::kPlatformWindows,
+			ADGF_DROPPLATFORM | ADGF_DEMO,
+			GUIO1(GUIO_NOMIDI)
+		},
+		GID_FULLPIPE
 	},
 
-	AD_TABLE_END_MARKER
+	{ AD_TABLE_END_MARKER, 0 }
 };
 
 } // End of namespace NGI
diff --git a/engines/ngi/detection.h b/engines/ngi/detection.h
new file mode 100644
index 0000000000..ad069e61ff
--- /dev/null
+++ b/engines/ngi/detection.h
@@ -0,0 +1,42 @@
+/* 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 2
+ * 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, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef NGI_DETECTION_H
+#define NGI_DETECTION_H
+
+#include "engines/advancedDetector.h"
+
+namespace NGI {
+
+enum NGIGameId {
+	GID_FULLPIPE = 1
+};
+
+struct NGIGameDescription {
+	ADGameDescription desc;
+
+	int gameId;
+};
+
+} // End of namespace NGI
+
+#endif // NGI_DETECTION_H
diff --git a/engines/ngi/metaengine.cpp b/engines/ngi/metaengine.cpp
index 92446cfbd9..e39d088611 100644
--- a/engines/ngi/metaengine.cpp
+++ b/engines/ngi/metaengine.cpp
@@ -28,24 +28,25 @@
 #include "graphics/surface.h"
 
 #include "ngi/ngi.h"
+#include "ngi/detection.h"
 #include "ngi/gameloader.h"
 
 namespace NGI {
 
 uint32 NGIEngine::getFeatures() const {
-	return _gameDescription->flags;
+	return _gameDescription->desc.flags;
 }
 
 bool NGIEngine::isDemo() {
-	return _gameDescription->flags & ADGF_DEMO;
+	return _gameDescription->desc.flags & ADGF_DEMO;
 }
 
 Common::Language NGIEngine::getLanguage() const {
-	return _gameDescription->language;
+	return _gameDescription->desc.language;
 }
 
 const char *NGIEngine::getGameId() const {
-	return _gameDescription->gameId;
+	return _gameDescription->desc.gameId;
 }
 
 } // End of namspace Fullpipe
@@ -150,8 +151,10 @@ SaveStateDescriptor NGIMetaEngine::querySaveMetaInfos(const char *target, int sl
 }
 
 bool NGIMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const {
-	if (desc) {
-		*engine = new NGI::NGIEngine(syst, desc);
+	const NGI::NGIGameDescription *gd = (const NGI::NGIGameDescription *)desc;
+
+	if (gd) {
+		*engine = new NGI::NGIEngine(syst, gd);
 	}
 	return desc != 0;
 }
diff --git a/engines/ngi/ngi.cpp b/engines/ngi/ngi.cpp
index f7a7e5f4a2..4356563fcc 100644
--- a/engines/ngi/ngi.cpp
+++ b/engines/ngi/ngi.cpp
@@ -48,7 +48,7 @@ namespace NGI {
 NGIEngine *g_fp = nullptr;
 Vars *g_vars = nullptr;
 
-NGIEngine::NGIEngine(OSystem *syst, const ADGameDescription *gameDesc) :
+NGIEngine::NGIEngine(OSystem *syst, const NGIGameDescription *gameDesc) :
 	Engine(syst),
 	_gameDescription(gameDesc),
 	_rnd("ngi"),
diff --git a/engines/ngi/ngi.h b/engines/ngi/ngi.h
index deab1a31d3..edd6ab6262 100644
--- a/engines/ngi/ngi.h
+++ b/engines/ngi/ngi.h
@@ -36,17 +36,12 @@
 #include "engines/engine.h"
 #include "ngi/console.h"
 
-struct ADGameDescription;
-
 namespace Audio {
 class SoundHandle;
 }
 
 namespace NGI {
 
-enum FullpipeGameFeatures {
-};
-
 enum {
 	kDebugPathfinding	= 1 << 0,
 	kDebugDrawing		= 1 << 1,
@@ -63,6 +58,9 @@ enum {
 
 #define MAXGAMEOBJH 10000
 
+struct NGIGameDescription;
+
+
 class BehaviorManager;
 class BaseModalObject;
 class GameLoader;
@@ -119,7 +117,7 @@ protected:
 	Common::Error run() override;
 
 public:
-	NGIEngine(OSystem *syst, const ADGameDescription *gameDesc);
+	NGIEngine(OSystem *syst, const NGIGameDescription *gameDesc);
 	~NGIEngine() override;
 
 	void initialize();
@@ -129,7 +127,7 @@ public:
 	void setMusicAllowed(int val) { _musicAllowed = val; }
 
 	// Detection related functions
-	const ADGameDescription *_gameDescription;
+	const NGIGameDescription *_gameDescription;
 	uint32 getFeatures() const;
 	bool isDemo();
 	Common::Language getLanguage() const;


Commit: aaf34abca5a1db185a1e2d869837ed9140867fff
    https://github.com/scummvm/scummvm/commit/aaf34abca5a1db185a1e2d869837ed9140867fff
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2020-10-04T00:37:02+02:00

Commit Message:
NGI: Added Magic Dream detection

Changed paths:
    engines/ngi/detection.cpp
    engines/ngi/detection.h


diff --git a/engines/ngi/detection.cpp b/engines/ngi/detection.cpp
index a98caf855d..8bb60e6e41 100644
--- a/engines/ngi/detection.cpp
+++ b/engines/ngi/detection.cpp
@@ -27,9 +27,10 @@
 
 #include "ngi/detection.h"
 
-static const PlainGameDescriptor fullpipeGames[] = {
+static const PlainGameDescriptor ngiGames[] = {
 	{"ngi", 		"Nikita Game Interface game"},
 	{"fullpipe",	"Full Pipe"},
+	{"mdream",		"Magic Dream"},
 	{0, 0}
 };
 
@@ -37,6 +38,20 @@ namespace NGI {
 
 static const NGIGameDescription gameDescriptions[] = {
 
+	// Full Pipe Russian version
+	{
+		{
+			"mdream",
+			0,
+			AD_ENTRY1s("0001.nl", "079d02921a938ec9740598316450d526", 11848423),
+			Common::RU_RUS,
+			Common::kPlatformWindows,
+			ADGF_DROPPLATFORM,
+			GUIO1(GUIO_NOMIDI)
+		},
+		GID_MDREAM
+	},
+
 	// Full Pipe Russian version
 	{
 		{
@@ -128,7 +143,7 @@ static const NGIGameDescription gameDescriptions[] = {
 
 class NGIMetaEngineStatic : public AdvancedMetaEngineStatic {
 public:
-	NGIMetaEngineStatic() : AdvancedMetaEngineStatic(NGI::gameDescriptions, sizeof(ADGameDescription), fullpipeGames) {
+	NGIMetaEngineStatic() : AdvancedMetaEngineStatic(NGI::gameDescriptions, sizeof(NGI::NGIGameDescription), ngiGames) {
 	}
 
 	const char *getEngineId() const override {
diff --git a/engines/ngi/detection.h b/engines/ngi/detection.h
index ad069e61ff..7ecf941a85 100644
--- a/engines/ngi/detection.h
+++ b/engines/ngi/detection.h
@@ -28,7 +28,8 @@
 namespace NGI {
 
 enum NGIGameId {
-	GID_FULLPIPE = 1
+	GID_FULLPIPE = 1,
+	GID_MDREAM
 };
 
 struct NGIGameDescription {




More information about the Scummvm-git-logs mailing list