[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