[Scummvm-git-logs] scummvm master -> 191c64fb3c1550832810682077fefb8e67851b67

sev- noreply at scummvm.org
Sat Jan 14 20:15:11 UTC 2023


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

Summary:
032b9b46b9 SWORD1: Improve detection entries. Bug #14013
e0d0eca348 SWORD1: Remove redundant flags from the detection entries
5c65be0719 SWORD1: Do not add duplicate directories to SearchMan
a69078149e AD: Do not add duplicate dorectories to SearchMan
191c64fb3c SWORD1: Remove unneeded file


Commit: 032b9b46b96599f6f216fdb13308257070a36fa2
    https://github.com/scummvm/scummvm/commit/032b9b46b96599f6f216fdb13308257070a36fa2
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2023-01-14T21:14:21+01:00

Commit Message:
SWORD1: Improve detection entries. Bug #14013

Changed paths:
    engines/sword1/detection.cpp
    engines/sword1/detection_tables.h


diff --git a/engines/sword1/detection.cpp b/engines/sword1/detection.cpp
index e2961df7e5c..fb3257309dd 100644
--- a/engines/sword1/detection.cpp
+++ b/engines/sword1/detection.cpp
@@ -37,23 +37,11 @@ static const PlainGameDescriptor swordGames[] = {
 
 #include "sword1/detection_tables.h"
 
-static const char *const directoryGlobs[] = {
-	"clusters",
-	"music",
-	"smackshi",
-	"video",
-	"english",
-	"italian",
-	"speech",
-	nullptr
-};
-
 class SwordMetaEngineDetection : public AdvancedMetaEngineDetection {
 public:
 	SwordMetaEngineDetection() : AdvancedMetaEngineDetection(Sword1::gameDescriptions, sizeof(Sword1::SwordGameDescription), swordGames) {
 		_guiOptions = GUIO2(GUIO_NOMIDI, GUIO_NOASPECT);
-		_maxScanDepth = 2;
-		_directoryGlobs = directoryGlobs;
+		_flags = kADFlagMatchFullPaths;
 	}
 
 	PlainGameDescriptor findGame(const char *gameId) const override {
diff --git a/engines/sword1/detection_tables.h b/engines/sword1/detection_tables.h
index 78b436b946b..6d13cb3581a 100644
--- a/engines/sword1/detection_tables.h
+++ b/engines/sword1/detection_tables.h
@@ -22,13 +22,18 @@
 
 namespace Sword1 {
 
+#define AD_ENTRY4s(f1, x1, s1, f2, x2, s2, f3, x3, s3, f4, x4, s4) {{f1, 0, x1, s1}, {f2, 0, x2, s2}, {f3, 0, x3, s3}, {f4, 0, x4, s4}, AD_LISTEND}
+
+
 static const SwordGameDescription gameDescriptions[] = {
 	{
 		{
 			"sword1",
 			"Demo",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200156,
-			           "swordres.rif", "bc01bc995f23e46bb076f66ba5c516c4", 58388),
+			AD_ENTRY4s("clusters/scripts.clu",  "9f6de3bea49a1ef4d8b1b020c41c950e", 1070644,
+					   "clusters/swordres.rif", "bc01bc995f23e46bb076f66ba5c516c4", 58388,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2696228,
+					   "smackshi/intro.smk",    "f50d773c362d03a52a6a4d541d09449c", 13298480),
 			Common::EN_ANY,
 			Common::kPlatformWindows,
 			ADGF_DEMO,
@@ -41,8 +46,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"Demo",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "3786c6850e51ecbadb65bbedb5395664", 59788),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
+					   "clusters/swordres.rif", "3786c6850e51ecbadb65bbedb5395664", 59788,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3186195,
+					   "smackshi/intro.smk",    "95071cd6c12c10c9a30f45a70384cf05", 13448344),
 			Common::ES_ESP,
 			Common::kPlatformWindows,
 			ADGF_DEMO,
@@ -55,8 +62,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"Demo",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200156,
-			           "swordres.rif", "babe2ab6c352bdeb0fc256a94c934bb8", 58388),
+			AD_ENTRY4s("clusters/scripts.clu",  "9f6de3bea49a1ef4d8b1b020c41c950e", 1070644,
+					   "clusters/swordres.rif", "babe2ab6c352bdeb0fc256a94c934bb8", 58388,
+					   "clusters/text.clu",     "5d5bf40629364115da603da378e9d4c9", 2685487,
+					   "smackshi/intro.smk",    "f50d773c362d03a52a6a4d541d09449c", 13298480),
 			Common::PT_BRA,
 			Common::kPlatformWindows,
 			ADGF_DEMO,
@@ -69,9 +78,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"Demo",
-			AD_ENTRY3s("compacts.clm", "3a77d3cd0ca6c91a4f4e94459b1da773", 200852,
-			           "speech.clu",   "36919b35067bf56b68ad538732a618c2", 45528200,
-			           "intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+			AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
+					   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
+					   "speech/speech.clu",     "36919b35067bf56b68ad538732a618c2", 45528200,
+					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
 			Common::EN_ANY,
 			Common::kPlatformMacintosh,
 			ADGF_DEMO,
@@ -84,9 +94,9 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"Demo",
-			AD_ENTRY3s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
-			           "speech.dat",   "4b4123155288d2c17da2c97b8b72ee6e", 14598144),
+			AD_ENTRY3s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+					   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
+					   "english/speech.inf",   "57f6d6949262cd63fc0378dd2375c819", 1662),
 			Common::EN_ANY,
 			Common::kPlatformPSX,
 			ADGF_DEMO,
@@ -99,9 +109,9 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"Demo",
-			AD_ENTRY3s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
-			           "speech.dat",   "a8b0813e172f008714eb1a6d715115ab", 14014464),
+			AD_ENTRY3s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+					   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
+					   "italian/speech.inf",   "af982fbfd4fdd39ea7108dc8f77cf1b3", 1652),
 			Common::IT_ITA,
 			Common::kPlatformPSX,
 			ADGF_DEMO,
@@ -114,9 +124,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY3s("text.clu",     "76f93f5feecc8915435105478f3c6615", 3193923,
-			           "history.smk",  "c3f85299b685d49a01ed8a2ab51f0cb5", 3374148,
-			           "intro.smk",    "6689aa8f84cb0387b292481d2a2428b4", 13076700),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
+					   "clusters/swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193923,
+					   "smackshi/intro.smk",    "6689aa8f84cb0387b292481d2a2428b4", 13076700),
 			Common::EN_USA,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -129,9 +140,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY3s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "d21d6321ee2dbb2d7d7ca2d2a940c34a", 58916,
-			           "intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
+					   "clusters/swordres.rif", "d21d6321ee2dbb2d7d7ca2d2a940c34a", 58916,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2704592,
+					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
 			Common::EN_GRB,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -140,28 +152,14 @@ static const SwordGameDescription gameDescriptions[] = {
 		0
 	},
 
-	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY3s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-					   "swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
-					   "1m2.wav",      "6b43257c8b22decfc7f289da7b653d57", 846792),
-			Common::EN_ANY,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
-	},
-
 	{
 		{
 			"sword1",
 			"Rerelease",
-			AD_ENTRY3s("text.clu",     "76f93f5feecc8915435105478f3c6615", 3193159,
-			           "intro.txt",    "c1215c3a92cf7e14104a8ddfda458bb1", 198,
-			           "1m2.wav",      "6b43257c8b22decfc7f289da7b653d57", 846792),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
+					   "clusters/swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193159,
+					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
 			Common::EN_GRB,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -174,9 +172,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"GoG.com",
-			AD_ENTRY3s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
-			           "1m2.ogg",      "f51b159c89b0c59217ccda6795da3e15", 137715),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
+					   "clusters/swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193159,
+					   "video/intro.dxa",       "e27cd33593c08b66e8d20fbc40938789", 7420364),
 			Common::EN_ANY,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -189,8 +188,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "c7df52094d590b568a4ed35b70390d9e", 58916),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087984,
+					   "clusters/swordres.rif", "c7df52094d590b568a4ed35b70390d9e", 58916,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2705446,
+					   "smackshi/intro.smk",    "d602a28f5f5c583bf9870a23a94a9bc5", 13525168),
 			Common::FR_FRA,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -203,8 +204,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "b0ae5a47aba74dc0acb3442d4c84b225", 58916),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
+					   "clusters/swordres.rif", "b0ae5a47aba74dc0acb3442d4c84b225", 58916,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2705446,
+					   "smackshi/intro.smk",    "d1d0e958aeef9b1375b55df8f8831f26", 13281776),
 			Common::DE_DEU,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -217,9 +220,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY3s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
-			           "intro.smk",    "95071cd6c12c10c9a30f45a70384cf05", 13448344),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
+					   "clusters/swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193923,
+					   "smackshi/intro.smk",    "95071cd6c12c10c9a30f45a70384cf05", 13448344),
 			Common::ES_ESP,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -228,13 +232,14 @@ static const SwordGameDescription gameDescriptions[] = {
 		0
 	},
 
-	{
+	{ // Alternate version
 		{
 			"sword1",
 			"",
-			AD_ENTRY3s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
-			           "intro.smk",    "a8c6a8770cb4b2669f4263ece8830985", 13293740),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
+					   "clusters/swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193923,
+					   "smackshi/intro.smk",    "a8c6a8770cb4b2669f4263ece8830985", 13293740),
 			Common::ES_ESP,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -247,8 +252,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "239bdd76c405bad0f804a8ae5df4adb0", 59788),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+					   "clusters/swordres.rif", "239bdd76c405bad0f804a8ae5df4adb0", 59788,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3188725,
+					   "smackshi/intro.smk",    "83060041aa155d802e51b7211b62ea2f", 13525252),
 			Common::IT_ITA,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -261,8 +268,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"English speech",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "34c111f224e75050a523dc758c71d54e", 60612),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
+					   "clusters/swordres.rif", "34c111f224e75050a523dc758c71d54e", 60612,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3164478,
+					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
 			Common::PT_PRT,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -275,8 +284,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"English speech",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "ba6f881c3ace6408880c8e07cd8a1dfe", 59788),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
+					   "clusters/swordres.rif", "ba6f881c3ace6408880c8e07cd8a1dfe", 59788,
+					   "clusters/text.clu",     "0c0f9eadf20a497834685ccb3ba53a3f", 397478,
+					   "video/intro.smk",       "d07ba8a1be7d8a47de50cc4eac2bc243", 13082688),
 			Common::HE_ISR,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -289,8 +300,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"English speech",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "88c0793a4fa908083b00f6677c545f78", 58916),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
+					   "clusters/swordres.rif", "88c0793a4fa908083b00f6677c545f78", 58916,
+					   "clusters/text.clu",     "7d9e47533fde5333dc310bfd73eaeb5c", 2666944,
+					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
 			Common::PL_POL,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -303,9 +316,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"English speech",
-			AD_ENTRY3s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "finale.txt",   "2d415af7012c2d76b5cc4e67548bc836", 246,
-			           "intro.txt",    "0ceae1bbd3da45b9a0452118a13bd8ae", 169),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
+					   "clusters/swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
+					   "clusters/text.clu",     "cf6a85c2d60386a3c978f0c6fbb377bd", 3193159,
+					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
 			Common::HU_HUN,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -318,9 +332,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"English speech",
-			AD_ENTRY3s("finale.txt",   "c88bb433473fe9171bca4471ebf82f9b", 238,
-			           "history.txt",  "e973f8667d3729de1ed2c313ce524990", 1098,
-			           "intro.txt",    "b9c6d2b274ea093feeecd50d0736f679", 188),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+					   "clusters/swordres.rif", "239bdd76c405bad0f804a8ae5df4adb0", 59788,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3199652,
+					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
 			Common::CS_CZE,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -333,8 +348,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"Akella",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "e7021abec62dd774010d1f432ef9f03a", 58916),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
+					   "clusters/swordres.rif", "e7021abec62dd774010d1f432ef9f03a", 58916,
+					   "clusters/text.clu",     "524706e42583f6c23a5a7ae3e1784068", 2683625,
+					   "smackshi/intro.smk",    "ef3ae780668c087fae00ed9c46c2eb35", 13386716),
 			Common::RU_RUS,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -347,8 +364,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"Mediahauz",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "7a6e896064c8d2ee266e961549487204", 58916),
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
+					   "clusters/swordres.rif", "7a6e896064c8d2ee266e961549487204", 58916,
+					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3198686,
+					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
 			Common::RU_RUS,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -360,9 +379,11 @@ static const SwordGameDescription gameDescriptions[] = {
 	{
 		{
 			"sword1",
-			"ND",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "swordres.rif", "b5d9ddbe26d453415a43596f86452435", 59788),
+			"Novy Disk",
+			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
+					   "clusters/swordres.rif", "b5d9ddbe26d453415a43596f86452435", 59788,
+					   "clusters/text.clu",     "8392ae2af0a8bec1dca511b2fedddc4c", 3178811,
+					   "video/intro.dxa",       "e27cd33593c08b66e8d20fbc40938789", 7420364),
 			Common::RU_RUS,
 			Common::kPlatformWindows,
 			ADGF_NO_FLAGS,
@@ -375,9 +396,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY3s("compacts.clm", "3a77d3cd0ca6c91a4f4e94459b1da773", 200852,
-			           "paris2.clm",   "6e096da5dc806b3b554fa371f6e0d749", 23981648,
-			           "credits.smk",  "eacbc81d3ef88628d3710abbbcdc9aa0", 17300736),
+			AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
+					   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
+					   "smackshi/credits.smk",  "eacbc81d3ef88628d3710abbbcdc9aa0", 17300736,
+					   "smackshi/intro.smk",    "6689aa8f84cb0387b292481d2a2428b4", 13076700),
 			Common::EN_USA,
 			Common::kPlatformMacintosh,
 			ADGF_NO_FLAGS,
@@ -390,9 +412,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY3s("compacts.clm", "3a77d3cd0ca6c91a4f4e94459b1da773", 200852,
-			           "swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
-			           "credits.smk",  "9a3fe9cb76bc7ca8a9987c173befb90d", 16315740),
+			AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
+					   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
+					   "smackshi/credits.smk",  "9a3fe9cb76bc7ca8a9987c173befb90d", 16315740,
+					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
 			Common::EN_GRB,
 			Common::kPlatformMacintosh,
 			ADGF_NO_FLAGS,
@@ -405,9 +428,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY3s("compacts.clm", "3a77d3cd0ca6c91a4f4e94459b1da773", 200852,
-					   "paris2.clm",   "6e096da5dc806b3b554fa371f6e0d749", 23981648,
-					   "credits.smk",  "9cea2fbd374c7723f59cfa0ed077df7a", 12467196),
+			AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
+					   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
+					   "smackshi/credits.smk",  "0e4eb849d60baab975130efd35f15ace", 17528016,
+					   "smackshi/intro.smk",    "d602a28f5f5c583bf9870a23a94a9bc5", 13525168),
 			Common::FR_FRA,
 			Common::kPlatformMacintosh,
 			ADGF_NO_FLAGS,
@@ -420,8 +444,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "credits.dat",  "2ec14f1f262cdd2c87dd95acced9e2f6", 3312),
+			AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
+					   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
+					   "credits.dat",  "2ec14f1f262cdd2c87dd95acced9e2f6", 3312,
+					   "speech.inf",   "ed14c2a235cf5388ac3b5f29db129837", 21310),
 			Common::EN_USA,
 			Common::kPlatformPSX,
 			ADGF_NO_FLAGS,
@@ -434,8 +460,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "credits.dat",  "69349710eef6b653ed2c02643ed6c4a0", 2799),
+			AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
+					   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
+					   "credits.dat",  "69349710eef6b653ed2c02643ed6c4a0", 2799,
+					   "speech.inf",   "ed14c2a235cf5388ac3b5f29db129837", 21310),
 			Common::EN_GRB,
 			Common::kPlatformPSX,
 			ADGF_NO_FLAGS,
@@ -448,8 +476,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "credits.dat",  "0b119d49f27260e6115504c135b9bb19", 2382),
+			AD_ENTRY4s("scripts.clu" , "72b10193714e8c6e4daca51791c0db0c", 1088468,
+					   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
+					   "credits.dat",  "0b119d49f27260e6115504c135b9bb19", 2382,
+					   "speech.inf",   "2ccb9be1a3d8d0e33d6efd6a12a24320", 21450),
 			Common::FR_FRA,
 			Common::kPlatformPSX,
 			ADGF_NO_FLAGS,
@@ -462,8 +492,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY2s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "credits.dat",  "c4f84aaa17f80fb549a5c8a867a9836a", 2382),
+			AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
+					   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
+					   "credits.dat",  "c4f84aaa17f80fb549a5c8a867a9836a", 2382,
+					   "speech.inf",   "403fb61f9de6ce6cb374edd9985066ae", 21304),
 			Common::DE_DEU,
 			Common::kPlatformPSX,
 			ADGF_NO_FLAGS,
@@ -476,9 +508,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY3s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "credits.dat",  "949806fa3eaa4ff3a6c19ee4b5caa9f5", 2823,
-			           "speech.dat",   "73348cb38e6ddd444100806c45febb18", 187961344),
+			AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+					   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
+					   "credits.dat",  "949806fa3eaa4ff3a6c19ee4b5caa9f5", 2823,
+					   "speech.inf",   "1165f01823e4d2df72fcc5b592a4960e", 21374),
 			Common::IT_ITA,
 			Common::kPlatformPSX,
 			ADGF_NO_FLAGS,
@@ -491,9 +524,10 @@ static const SwordGameDescription gameDescriptions[] = {
 		{
 			"sword1",
 			"",
-			AD_ENTRY3s("compacts.clu", "7128bc4e99701d99c22e5841051671d3", 200852,
-			           "credits.dat",  "cd97e8f5006d91914904b3bfdb0ff588", 2412,
-			           "speech.dat",   "be1f9c4fd157711c2a0f6e020352334d", 182177792),
+			AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+					   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
+					   "credits.dat",  "cd97e8f5006d91914904b3bfdb0ff588", 2412,
+					   "speech.inf",   "d4558d96ce696a906b086c2b44ffb301", 21342),
 			Common::ES_ESP,
 			Common::kPlatformPSX,
 			ADGF_NO_FLAGS,


Commit: e0d0eca348fb8009cd67ae068d8775bebd4ca0d4
    https://github.com/scummvm/scummvm/commit/e0d0eca348fb8009cd67ae068d8775bebd4ca0d4
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2023-01-14T21:14:21+01:00

Commit Message:
SWORD1: Remove redundant flags from the detection entries

Changed paths:
    engines/sword1/detection.cpp
    engines/sword1/detection_tables.h
    engines/sword1/metaengine.cpp
    engines/sword1/sword1.cpp
    engines/sword1/sword1.h


diff --git a/engines/sword1/detection.cpp b/engines/sword1/detection.cpp
index fb3257309dd..00361545688 100644
--- a/engines/sword1/detection.cpp
+++ b/engines/sword1/detection.cpp
@@ -27,7 +27,6 @@
 #include "engines/advancedDetector.h"
 #include "engines/obsolete.h"
 
-#include "sword1/detection.h"
 #include "sword1/obsolete.h" // Obsolete ID table.
 
 static const PlainGameDescriptor swordGames[] = {
@@ -39,7 +38,7 @@ static const PlainGameDescriptor swordGames[] = {
 
 class SwordMetaEngineDetection : public AdvancedMetaEngineDetection {
 public:
-	SwordMetaEngineDetection() : AdvancedMetaEngineDetection(Sword1::gameDescriptions, sizeof(Sword1::SwordGameDescription), swordGames) {
+	SwordMetaEngineDetection() : AdvancedMetaEngineDetection(Sword1::gameDescriptions, sizeof(ADGameDescription), swordGames) {
 		_guiOptions = GUIO2(GUIO_NOMIDI, GUIO_NOASPECT);
 		_flags = kADFlagMatchFullPaths;
 	}
diff --git a/engines/sword1/detection_tables.h b/engines/sword1/detection_tables.h
index 6d13cb3581a..ab053c5ad11 100644
--- a/engines/sword1/detection_tables.h
+++ b/engines/sword1/detection_tables.h
@@ -25,519 +25,422 @@ namespace Sword1 {
 #define AD_ENTRY4s(f1, x1, s1, f2, x2, s2, f3, x3, s3, f4, x4, s4) {{f1, 0, x1, s1}, {f2, 0, x2, s2}, {f3, 0, x3, s3}, {f4, 0, x4, s4}, AD_LISTEND}
 
 
-static const SwordGameDescription gameDescriptions[] = {
+static const ADGameDescription gameDescriptions[] = {
 	{
-		{
-			"sword1",
-			"Demo",
-			AD_ENTRY4s("clusters/scripts.clu",  "9f6de3bea49a1ef4d8b1b020c41c950e", 1070644,
-					   "clusters/swordres.rif", "bc01bc995f23e46bb076f66ba5c516c4", 58388,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2696228,
-					   "smackshi/intro.smk",    "f50d773c362d03a52a6a4d541d09449c", 13298480),
-			Common::EN_ANY,
-			Common::kPlatformWindows,
-			ADGF_DEMO,
-			GUIO0()
-		},
-		GF_DEMO
+		"sword1",
+		"Demo",
+		AD_ENTRY4s("clusters/scripts.clu",  "9f6de3bea49a1ef4d8b1b020c41c950e", 1070644,
+				   "clusters/swordres.rif", "bc01bc995f23e46bb076f66ba5c516c4", 58388,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2696228,
+				   "smackshi/intro.smk",    "f50d773c362d03a52a6a4d541d09449c", 13298480),
+		Common::EN_ANY,
+		Common::kPlatformWindows,
+		ADGF_DEMO,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"Demo",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
-					   "clusters/swordres.rif", "3786c6850e51ecbadb65bbedb5395664", 59788,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3186195,
-					   "smackshi/intro.smk",    "95071cd6c12c10c9a30f45a70384cf05", 13448344),
-			Common::ES_ESP,
-			Common::kPlatformWindows,
-			ADGF_DEMO,
-			GUIO0()
-		},
-		GF_DEMO
+		"sword1",
+		"Demo",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
+				   "clusters/swordres.rif", "3786c6850e51ecbadb65bbedb5395664", 59788,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3186195,
+				   "smackshi/intro.smk",    "95071cd6c12c10c9a30f45a70384cf05", 13448344),
+		Common::ES_ESP,
+		Common::kPlatformWindows,
+		ADGF_DEMO,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"Demo",
-			AD_ENTRY4s("clusters/scripts.clu",  "9f6de3bea49a1ef4d8b1b020c41c950e", 1070644,
-					   "clusters/swordres.rif", "babe2ab6c352bdeb0fc256a94c934bb8", 58388,
-					   "clusters/text.clu",     "5d5bf40629364115da603da378e9d4c9", 2685487,
-					   "smackshi/intro.smk",    "f50d773c362d03a52a6a4d541d09449c", 13298480),
-			Common::PT_BRA,
-			Common::kPlatformWindows,
-			ADGF_DEMO,
-			GUIO0()
-		},
-		GF_DEMO
+		"sword1",
+		"Demo",
+		AD_ENTRY4s("clusters/scripts.clu",  "9f6de3bea49a1ef4d8b1b020c41c950e", 1070644,
+				   "clusters/swordres.rif", "babe2ab6c352bdeb0fc256a94c934bb8", 58388,
+				   "clusters/text.clu",     "5d5bf40629364115da603da378e9d4c9", 2685487,
+				   "smackshi/intro.smk",    "f50d773c362d03a52a6a4d541d09449c", 13298480),
+		Common::PT_BRA,
+		Common::kPlatformWindows,
+		ADGF_DEMO,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"Demo",
-			AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
-					   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
-					   "speech/speech.clu",     "36919b35067bf56b68ad538732a618c2", 45528200,
-					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
-			Common::EN_ANY,
-			Common::kPlatformMacintosh,
-			ADGF_DEMO,
-			GUIO0()
-		},
-		GF_DEMO
+		"sword1",
+		"Demo",
+		AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
+				   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
+				   "speech/speech.clu",     "36919b35067bf56b68ad538732a618c2", 45528200,
+				   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+		Common::EN_ANY,
+		Common::kPlatformMacintosh,
+		ADGF_DEMO,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"Demo",
-			AD_ENTRY3s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
-					   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
-					   "english/speech.inf",   "57f6d6949262cd63fc0378dd2375c819", 1662),
-			Common::EN_ANY,
-			Common::kPlatformPSX,
-			ADGF_DEMO,
-			GUIO0()
-		},
-		GF_DEMO
+		"sword1",
+		"Demo",
+		AD_ENTRY3s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+				   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
+				   "english/speech.inf",   "57f6d6949262cd63fc0378dd2375c819", 1662),
+		Common::EN_ANY,
+		Common::kPlatformPSX,
+		ADGF_DEMO,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"Demo",
-			AD_ENTRY3s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
-					   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
-					   "italian/speech.inf",   "af982fbfd4fdd39ea7108dc8f77cf1b3", 1652),
-			Common::IT_ITA,
-			Common::kPlatformPSX,
-			ADGF_DEMO,
-			GUIO0()
-		},
-		GF_DEMO
+		"sword1",
+		"Demo",
+		AD_ENTRY3s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+				   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
+				   "italian/speech.inf",   "af982fbfd4fdd39ea7108dc8f77cf1b3", 1652),
+		Common::IT_ITA,
+		Common::kPlatformPSX,
+		ADGF_DEMO,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
-					   "clusters/swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193923,
-					   "smackshi/intro.smk",    "6689aa8f84cb0387b292481d2a2428b4", 13076700),
-			Common::EN_USA,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
+				   "clusters/swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193923,
+				   "smackshi/intro.smk",    "6689aa8f84cb0387b292481d2a2428b4", 13076700),
+		Common::EN_USA,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
-					   "clusters/swordres.rif", "d21d6321ee2dbb2d7d7ca2d2a940c34a", 58916,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2704592,
-					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
-			Common::EN_GRB,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
+				   "clusters/swordres.rif", "d21d6321ee2dbb2d7d7ca2d2a940c34a", 58916,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2704592,
+				   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+		Common::EN_GRB,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"Rerelease",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
-					   "clusters/swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193159,
-					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
-			Common::EN_GRB,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"Rerelease",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
+				   "clusters/swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193159,
+				   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+		Common::EN_GRB,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"GoG.com",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
-					   "clusters/swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193159,
-					   "video/intro.dxa",       "e27cd33593c08b66e8d20fbc40938789", 7420364),
-			Common::EN_ANY,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"GoG.com",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
+				   "clusters/swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193159,
+				   "video/intro.dxa",       "e27cd33593c08b66e8d20fbc40938789", 7420364),
+		Common::EN_ANY,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087984,
-					   "clusters/swordres.rif", "c7df52094d590b568a4ed35b70390d9e", 58916,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2705446,
-					   "smackshi/intro.smk",    "d602a28f5f5c583bf9870a23a94a9bc5", 13525168),
-			Common::FR_FRA,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087984,
+				   "clusters/swordres.rif", "c7df52094d590b568a4ed35b70390d9e", 58916,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2705446,
+				   "smackshi/intro.smk",    "d602a28f5f5c583bf9870a23a94a9bc5", 13525168),
+		Common::FR_FRA,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
-					   "clusters/swordres.rif", "b0ae5a47aba74dc0acb3442d4c84b225", 58916,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2705446,
-					   "smackshi/intro.smk",    "d1d0e958aeef9b1375b55df8f8831f26", 13281776),
-			Common::DE_DEU,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
+				   "clusters/swordres.rif", "b0ae5a47aba74dc0acb3442d4c84b225", 58916,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 2705446,
+				   "smackshi/intro.smk",    "d1d0e958aeef9b1375b55df8f8831f26", 13281776),
+		Common::DE_DEU,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
-					   "clusters/swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193923,
-					   "smackshi/intro.smk",    "95071cd6c12c10c9a30f45a70384cf05", 13448344),
-			Common::ES_ESP,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
+				   "clusters/swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193923,
+				   "smackshi/intro.smk",    "95071cd6c12c10c9a30f45a70384cf05", 13448344),
+		Common::ES_ESP,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{ // Alternate version
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
-					   "clusters/swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193923,
-					   "smackshi/intro.smk",    "a8c6a8770cb4b2669f4263ece8830985", 13293740),
-			Common::ES_ESP,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088232,
+				   "clusters/swordres.rif", "08d4942cf7c904182a31a1d5333244f3", 59788,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3193923,
+				   "smackshi/intro.smk",    "a8c6a8770cb4b2669f4263ece8830985", 13293740),
+		Common::ES_ESP,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
-					   "clusters/swordres.rif", "239bdd76c405bad0f804a8ae5df4adb0", 59788,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3188725,
-					   "smackshi/intro.smk",    "83060041aa155d802e51b7211b62ea2f", 13525252),
-			Common::IT_ITA,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+				   "clusters/swordres.rif", "239bdd76c405bad0f804a8ae5df4adb0", 59788,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3188725,
+				   "smackshi/intro.smk",    "83060041aa155d802e51b7211b62ea2f", 13525252),
+		Common::IT_ITA,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"English speech",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
-					   "clusters/swordres.rif", "34c111f224e75050a523dc758c71d54e", 60612,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3164478,
-					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
-			Common::PT_PRT,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"English speech",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
+				   "clusters/swordres.rif", "34c111f224e75050a523dc758c71d54e", 60612,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3164478,
+				   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+		Common::PT_PRT,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"English speech",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
-					   "clusters/swordres.rif", "ba6f881c3ace6408880c8e07cd8a1dfe", 59788,
-					   "clusters/text.clu",     "0c0f9eadf20a497834685ccb3ba53a3f", 397478,
-					   "video/intro.smk",       "d07ba8a1be7d8a47de50cc4eac2bc243", 13082688),
-			Common::HE_ISR,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"English speech",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
+				   "clusters/swordres.rif", "ba6f881c3ace6408880c8e07cd8a1dfe", 59788,
+				   "clusters/text.clu",     "0c0f9eadf20a497834685ccb3ba53a3f", 397478,
+				   "video/intro.smk",       "d07ba8a1be7d8a47de50cc4eac2bc243", 13082688),
+		Common::HE_ISR,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"English speech",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
-					   "clusters/swordres.rif", "88c0793a4fa908083b00f6677c545f78", 58916,
-					   "clusters/text.clu",     "7d9e47533fde5333dc310bfd73eaeb5c", 2666944,
-					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
-			Common::PL_POL,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"English speech",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
+				   "clusters/swordres.rif", "88c0793a4fa908083b00f6677c545f78", 58916,
+				   "clusters/text.clu",     "7d9e47533fde5333dc310bfd73eaeb5c", 2666944,
+				   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+		Common::PL_POL,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"English speech",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
-					   "clusters/swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
-					   "clusters/text.clu",     "cf6a85c2d60386a3c978f0c6fbb377bd", 3193159,
-					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
-			Common::HU_HUN,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"English speech",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
+				   "clusters/swordres.rif", "5463362dc77b6efc36e46ac84998bd2f", 59788,
+				   "clusters/text.clu",     "cf6a85c2d60386a3c978f0c6fbb377bd", 3193159,
+				   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+		Common::HU_HUN,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"English speech",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
-					   "clusters/swordres.rif", "239bdd76c405bad0f804a8ae5df4adb0", 59788,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3199652,
-					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
-			Common::CS_CZE,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"English speech",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+				   "clusters/swordres.rif", "239bdd76c405bad0f804a8ae5df4adb0", 59788,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3199652,
+				   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+		Common::CS_CZE,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"Akella",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
-					   "clusters/swordres.rif", "e7021abec62dd774010d1f432ef9f03a", 58916,
-					   "clusters/text.clu",     "524706e42583f6c23a5a7ae3e1784068", 2683625,
-					   "smackshi/intro.smk",    "ef3ae780668c087fae00ed9c46c2eb35", 13386716),
-			Common::RU_RUS,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"Akella",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
+				   "clusters/swordres.rif", "e7021abec62dd774010d1f432ef9f03a", 58916,
+				   "clusters/text.clu",     "524706e42583f6c23a5a7ae3e1784068", 2683625,
+				   "smackshi/intro.smk",    "ef3ae780668c087fae00ed9c46c2eb35", 13386716),
+		Common::RU_RUS,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"Mediahauz",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
-					   "clusters/swordres.rif", "7a6e896064c8d2ee266e961549487204", 58916,
-					   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3198686,
-					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
-			Common::RU_RUS,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"Mediahauz",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1087240,
+				   "clusters/swordres.rif", "7a6e896064c8d2ee266e961549487204", 58916,
+				   "clusters/text.clu",     "76f93f5feecc8915435105478f3c6615", 3198686,
+				   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+		Common::RU_RUS,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"Novy Disk",
-			AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
-					   "clusters/swordres.rif", "b5d9ddbe26d453415a43596f86452435", 59788,
-					   "clusters/text.clu",     "8392ae2af0a8bec1dca511b2fedddc4c", 3178811,
-					   "video/intro.dxa",       "e27cd33593c08b66e8d20fbc40938789", 7420364),
-			Common::RU_RUS,
-			Common::kPlatformWindows,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"Novy Disk",
+		AD_ENTRY4s("clusters/scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088292,
+				   "clusters/swordres.rif", "b5d9ddbe26d453415a43596f86452435", 59788,
+				   "clusters/text.clu",     "8392ae2af0a8bec1dca511b2fedddc4c", 3178811,
+				   "video/intro.dxa",       "e27cd33593c08b66e8d20fbc40938789", 7420364),
+		Common::RU_RUS,
+		Common::kPlatformWindows,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
-					   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
-					   "smackshi/credits.smk",  "eacbc81d3ef88628d3710abbbcdc9aa0", 17300736,
-					   "smackshi/intro.smk",    "6689aa8f84cb0387b292481d2a2428b4", 13076700),
-			Common::EN_USA,
-			Common::kPlatformMacintosh,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
+				   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
+				   "smackshi/credits.smk",  "eacbc81d3ef88628d3710abbbcdc9aa0", 17300736,
+				   "smackshi/intro.smk",    "6689aa8f84cb0387b292481d2a2428b4", 13076700),
+		Common::EN_USA,
+		Common::kPlatformMacintosh,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
-					   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
-					   "smackshi/credits.smk",  "9a3fe9cb76bc7ca8a9987c173befb90d", 16315740,
-					   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
-			Common::EN_GRB,
-			Common::kPlatformMacintosh,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
+				   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
+				   "smackshi/credits.smk",  "9a3fe9cb76bc7ca8a9987c173befb90d", 16315740,
+				   "smackshi/intro.smk",    "d82a7869ace8fcecaa519c04c4bfc483", 13233268),
+		Common::EN_GRB,
+		Common::kPlatformMacintosh,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
-					   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
-					   "smackshi/credits.smk",  "0e4eb849d60baab975130efd35f15ace", 17528016,
-					   "smackshi/intro.smk",    "d602a28f5f5c583bf9870a23a94a9bc5", 13525168),
-			Common::FR_FRA,
-			Common::kPlatformMacintosh,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("clusters/scripts.clm",  "6b6d9a32668e6f0285318dbe33f167fe", 1088468,
+				   "clusters/swordres.rif", "6b579d7cd94756f5c1e362a9b61f94a3", 59788,
+				   "smackshi/credits.smk",  "0e4eb849d60baab975130efd35f15ace", 17528016,
+				   "smackshi/intro.smk",    "d602a28f5f5c583bf9870a23a94a9bc5", 13525168),
+		Common::FR_FRA,
+		Common::kPlatformMacintosh,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
-					   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
-					   "credits.dat",  "2ec14f1f262cdd2c87dd95acced9e2f6", 3312,
-					   "speech.inf",   "ed14c2a235cf5388ac3b5f29db129837", 21310),
-			Common::EN_USA,
-			Common::kPlatformPSX,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
+				   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
+				   "credits.dat",  "2ec14f1f262cdd2c87dd95acced9e2f6", 3312,
+				   "speech.inf",   "ed14c2a235cf5388ac3b5f29db129837", 21310),
+		Common::EN_USA,
+		Common::kPlatformPSX,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
-					   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
-					   "credits.dat",  "69349710eef6b653ed2c02643ed6c4a0", 2799,
-					   "speech.inf",   "ed14c2a235cf5388ac3b5f29db129837", 21310),
-			Common::EN_GRB,
-			Common::kPlatformPSX,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
+				   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
+				   "credits.dat",  "69349710eef6b653ed2c02643ed6c4a0", 2799,
+				   "speech.inf",   "ed14c2a235cf5388ac3b5f29db129837", 21310),
+		Common::EN_GRB,
+		Common::kPlatformPSX,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("scripts.clu" , "72b10193714e8c6e4daca51791c0db0c", 1088468,
-					   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
-					   "credits.dat",  "0b119d49f27260e6115504c135b9bb19", 2382,
-					   "speech.inf",   "2ccb9be1a3d8d0e33d6efd6a12a24320", 21450),
-			Common::FR_FRA,
-			Common::kPlatformPSX,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("scripts.clu" , "72b10193714e8c6e4daca51791c0db0c", 1088468,
+				   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
+				   "credits.dat",  "0b119d49f27260e6115504c135b9bb19", 2382,
+				   "speech.inf",   "2ccb9be1a3d8d0e33d6efd6a12a24320", 21450),
+		Common::FR_FRA,
+		Common::kPlatformPSX,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
-					   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
-					   "credits.dat",  "c4f84aaa17f80fb549a5c8a867a9836a", 2382,
-					   "speech.inf",   "403fb61f9de6ce6cb374edd9985066ae", 21304),
-			Common::DE_DEU,
-			Common::kPlatformPSX,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088468,
+				   "swordres.rif", "a810e6dc5c8e636151a3e1370d41d138", 59788,
+				   "credits.dat",  "c4f84aaa17f80fb549a5c8a867a9836a", 2382,
+				   "speech.inf",   "403fb61f9de6ce6cb374edd9985066ae", 21304),
+		Common::DE_DEU,
+		Common::kPlatformPSX,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
-					   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
-					   "credits.dat",  "949806fa3eaa4ff3a6c19ee4b5caa9f5", 2823,
-					   "speech.inf",   "1165f01823e4d2df72fcc5b592a4960e", 21374),
-			Common::IT_ITA,
-			Common::kPlatformPSX,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
+		"sword1",
+		"",
+		AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+				   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
+				   "credits.dat",  "949806fa3eaa4ff3a6c19ee4b5caa9f5", 2823,
+				   "speech.inf",   "1165f01823e4d2df72fcc5b592a4960e", 21374),
+		Common::IT_ITA,
+		Common::kPlatformPSX,
+		ADGF_NO_FLAGS,
+		GUIO0()
 	},
 
 	{
-		{
-			"sword1",
-			"",
-			AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
-					   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
-					   "credits.dat",  "cd97e8f5006d91914904b3bfdb0ff588", 2412,
-					   "speech.inf",   "d4558d96ce696a906b086c2b44ffb301", 21342),
-			Common::ES_ESP,
-			Common::kPlatformPSX,
-			ADGF_NO_FLAGS,
-			GUIO0()
-		},
-		0
-	},
-
-
-	{ AD_TABLE_END_MARKER, 0 }
+		"sword1",
+		"",
+		AD_ENTRY4s("scripts.clu",  "72b10193714e8c6e4daca51791c0db0c", 1088372,
+				   "swordres.rif", "5bd8928071b91830be6fbcdb7f59786d", 59788,
+				   "credits.dat",  "cd97e8f5006d91914904b3bfdb0ff588", 2412,
+				   "speech.inf",   "d4558d96ce696a906b086c2b44ffb301", 21342),
+		Common::ES_ESP,
+		Common::kPlatformPSX,
+		ADGF_NO_FLAGS,
+		GUIO0()
+	},
+
+	AD_TABLE_END_MARKER
 };
 
 } // End of namespace Sword1
diff --git a/engines/sword1/metaengine.cpp b/engines/sword1/metaengine.cpp
index c393eb9930f..9e27a479c1f 100644
--- a/engines/sword1/metaengine.cpp
+++ b/engines/sword1/metaengine.cpp
@@ -24,7 +24,6 @@
 
 #include "sword1/sword1.h"
 #include "sword1/control.h"
-#include "sword1/detection.h"
 #include "sword1/obsolete.h"
 
 #include "common/savefile.h"
@@ -79,8 +78,7 @@ bool Sword1::SwordEngine::hasFeature(EngineFeature f) const {
 }
 
 Common::Error SwordMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const {
-	const Sword1::SwordGameDescription *gd = (const Sword1::SwordGameDescription *)desc;
-	*engine = new Sword1::SwordEngine(syst, gd);
+	*engine = new Sword1::SwordEngine(syst, desc);
 	return Common::kNoError;
 }
 
diff --git a/engines/sword1/sword1.cpp b/engines/sword1/sword1.cpp
index 4727c1eee67..6baad7a68e3 100644
--- a/engines/sword1/sword1.cpp
+++ b/engines/sword1/sword1.cpp
@@ -21,7 +21,6 @@
 
 #include "sword1/sword1.h"
 
-#include "sword1/detection.h"
 #include "sword1/resman.h"
 #include "sword1/objectman.h"
 #include "sword1/mouse.h"
@@ -36,6 +35,7 @@
 #include "common/config-manager.h"
 #include "common/textconsole.h"
 
+#include "engines/advancedDetector.h"
 #include "engines/util.h"
 
 #include "gui/message.h"
@@ -44,11 +44,11 @@ namespace Sword1 {
 
 SystemVars SwordEngine::_systemVars;
 
-SwordEngine::SwordEngine(OSystem *syst, const SwordGameDescription *gameDesc)
+SwordEngine::SwordEngine(OSystem *syst, const ADGameDescription *gameDesc)
 	: Engine(syst) {
 
-	_features = gameDesc->features;
-	_systemVars.platform = gameDesc->desc.platform;
+	_features = gameDesc->flags;
+	_systemVars.platform = gameDesc->platform;
 
 	// Add default file directories
 	const Common::FSNode gameDataDir(ConfMan.get("path"));
@@ -487,8 +487,8 @@ void SwordEngine::checkCdFiles() { // check if we're running from cd, hdd or wha
 		}
 	}
 
-	if (((_features & GF_DEMO) == 0) != isFullVersion) // shouldn't happen...
-		warning("Your Broken Sword 1 version looks like a %s version but you are starting it as a %s version", isFullVersion ? "full" : "demo", (_features & GF_DEMO) ? "demo" : "full");
+	if (((_features & ADGF_DEMO) == 0) != isFullVersion) // shouldn't happen...
+		warning("Your Broken Sword 1 version looks like a %s version but you are starting it as a %s version", isFullVersion ? "full" : "demo", (_features & ADGF_DEMO) ? "demo" : "full");
 
 	if (foundTypes[TYPE_SPEECH1]) // we found some kind of speech1 file (.clu, .cl3, .clv)
 		missingTypes[TYPE_SPEECH1] = false; // so we don't care if there's a different kind missing
@@ -567,7 +567,7 @@ void SwordEngine::checkCdFiles() { // check if we're running from cd, hdd or wha
 		_systemVars.isDemo = true;
 	*/
 	// make the demo flag depend on the Gamesettings for now, and not on what the datafiles look like
-	_systemVars.isDemo = (_features & GF_DEMO) != 0;
+	_systemVars.isDemo = (_features & ADGF_DEMO) != 0;
 
 	// Spanish demo has proper speech.clu and uses normal sound and var mapping
 	_systemVars.isSpanishDemo = (_systemVars.isDemo && foundTypes[TYPE_SPEECH]) != 0;
diff --git a/engines/sword1/sword1.h b/engines/sword1/sword1.h
index cf3ce1f880e..af71f5db4a3 100644
--- a/engines/sword1/sword1.h
+++ b/engines/sword1/sword1.h
@@ -29,7 +29,8 @@
 #include "common/util.h"
 #include "sword1/sworddefs.h"
 #include "sword1/console.h"
-#include "sword1/detection.h"
+
+struct ADGameDescription;
 
 /**
  * This is the namespace of the Sword1 engine.
@@ -39,6 +40,7 @@
  * Games using this engine:
  * - Broken Sword: The Shadow of the Templars
  */
+
 namespace Sword1 {
 
 enum ControlPanelMode {
@@ -79,7 +81,7 @@ struct SystemVars {
 class SwordEngine : public Engine {
 	friend class SwordConsole;
 public:
-	SwordEngine(OSystem *syst, const SwordGameDescription *gameDesc);
+	SwordEngine(OSystem *syst, const ADGameDescription *gameDesc);
 	~SwordEngine() override;
 	static SystemVars _systemVars;
 	void reinitialize();


Commit: 5c65be0719b983dc864094ddeb14e1a9c62f1532
    https://github.com/scummvm/scummvm/commit/5c65be0719b983dc864094ddeb14e1a9c62f1532
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2023-01-14T21:14:21+01:00

Commit Message:
SWORD1: Do not add duplicate directories to SearchMan

Changed paths:
    engines/sword1/sword1.cpp


diff --git a/engines/sword1/sword1.cpp b/engines/sword1/sword1.cpp
index 6baad7a68e3..9ca1c199624 100644
--- a/engines/sword1/sword1.cpp
+++ b/engines/sword1/sword1.cpp
@@ -52,14 +52,15 @@ SwordEngine::SwordEngine(OSystem *syst, const ADGameDescription *gameDesc)
 
 	// Add default file directories
 	const Common::FSNode gameDataDir(ConfMan.get("path"));
-	SearchMan.addSubDirectoryMatching(gameDataDir, "clusters");
 	SearchMan.addSubDirectoryMatching(gameDataDir, "music");
 	SearchMan.addSubDirectoryMatching(gameDataDir, "speech");
-	SearchMan.addSubDirectoryMatching(gameDataDir, "video");
-	SearchMan.addSubDirectoryMatching(gameDataDir, "smackshi");
 	SearchMan.addSubDirectoryMatching(gameDataDir, "streams"); // PSX videos
-	SearchMan.addSubDirectoryMatching(gameDataDir, "english"); // PSX Demo
-	SearchMan.addSubDirectoryMatching(gameDataDir, "italian"); // PSX Demo
+
+	//SearchMan.addSubDirectoryMatching(gameDataDir, "clusters"); // Comes from AD
+	//SearchMan.addSubDirectoryMatching(gameDataDir, "video"); // Comes from AD
+	//SearchMan.addSubDirectoryMatching(gameDataDir, "smackshi"); // Comes from AD
+	//SearchMan.addSubDirectoryMatching(gameDataDir, "english"); // PSX Demo  // Comes from AD
+	//SearchMan.addSubDirectoryMatching(gameDataDir, "italian"); // PSX Demo  // Comes from AD
 
 	setDebugger(new SwordConsole(this));
 


Commit: a69078149e13c32623e55650a04a4ae0ac2fdab9
    https://github.com/scummvm/scummvm/commit/a69078149e13c32623e55650a04a4ae0ac2fdab9
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2023-01-14T21:14:21+01:00

Commit Message:
AD: Do not add duplicate dorectories to SearchMan

Changed paths:
    engines/advancedDetector.cpp


diff --git a/engines/advancedDetector.cpp b/engines/advancedDetector.cpp
index 117c81090bb..6f897eed8dd 100644
--- a/engines/advancedDetector.cpp
+++ b/engines/advancedDetector.cpp
@@ -943,6 +943,7 @@ void AdvancedMetaEngineDetection::preprocessDescriptions() {
 
 Common::StringArray AdvancedMetaEngineDetection::getPathsFromEntry(const ADGameDescription *g) {
 	Common::StringArray result;
+	Common::HashMap<Common::String, bool, Common::IgnoreCase_Hash, Common::IgnoreCase_EqualTo> unique;
 
 	for (const ADGameFileDescription *fileDesc = g->filesDescriptions; fileDesc->fileName; fileDesc++) {
 		if (!strchr(fileDesc->fileName, '/'))
@@ -954,7 +955,10 @@ Common::StringArray AdvancedMetaEngineDetection::getPathsFromEntry(const ADGameD
 			Common::String component = tok.nextToken();
 
 			if (!tok.empty()) { // If it is not the last component
-				result.push_back(component);
+				if (!unique.contains(component))
+					result.push_back(component);
+
+				unique[component] = true;
 			}
 		}
 	}


Commit: 191c64fb3c1550832810682077fefb8e67851b67
    https://github.com/scummvm/scummvm/commit/191c64fb3c1550832810682077fefb8e67851b67
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2023-01-14T21:14:40+01:00

Commit Message:
SWORD1: Remove unneeded file

Changed paths:
  R engines/sword1/detection.h


diff --git a/engines/sword1/detection.h b/engines/sword1/detection.h
deleted file mode 100644
index 59b8b1cd228..00000000000
--- a/engines/sword1/detection.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/* 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 SWORD1_DETECTION_H
-#define SWORD1_DETECTION_H
-
-#include "engines/advancedDetector.h"
-
-namespace Sword1 {
-
-enum {
-	GF_DEMO	       = 1 << 0,
-};
-
-struct SwordGameDescription {
-	ADGameDescription desc;
-
-	uint32 features;
-};
-
-} // End of namespace Sword1
-
-#endif // SWORD1_DETECTION_H




More information about the Scummvm-git-logs mailing list