[Scummvm-git-logs] scummvm master -> 4da6f1ec4d87b9d6202823a106f5486960667440

sev- noreply at scummvm.org
Sat Jan 14 22:55:17 UTC 2023


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:
fa35e2bce5 SWORD2: Avoid false positives in detection
4da6f1ec4d SWORD1: Simplify detection of Spanish demo


Commit: fa35e2bce5f92e7dd4decc30b10ee60f98cef139
    https://github.com/scummvm/scummvm/commit/fa35e2bce5f92e7dd4decc30b10ee60f98cef139
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2023-01-14T23:06:52+01:00

Commit Message:
SWORD2: Avoid false positives in detection

Changed paths:
    engines/sword2/detection_tables.h


diff --git a/engines/sword2/detection_tables.h b/engines/sword2/detection_tables.h
index ad8412a0fb3..5f9325951f2 100644
--- a/engines/sword2/detection_tables.h
+++ b/engines/sword2/detection_tables.h
@@ -27,7 +27,8 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"Demo",
-		AD_ENTRY1s("general.clu", "11e824864a75195652610e8b397382a6", 8030769),
+		AD_ENTRY2s("general.clu", "11e824864a75195652610e8b397382a6", 8030769,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::EN_ANY,
 		Common::kPlatformWindows,
 		ADGF_DEMO,
@@ -37,7 +38,8 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"PC Gamer Demo",
-		AD_ENTRY1s("general.clu", "522ecd261027f0b55315a32aaef97295", 4519015),
+		AD_ENTRY2s("general.clu", "522ecd261027f0b55315a32aaef97295", 4519015,
+				   "docks.clu",   "b3583fcf8a8f02109f3f528a4f64c1e6", 21017250),
 		Common::EN_ANY,
 		Common::kPlatformWindows,
 		ADGF_DEMO,
@@ -47,7 +49,8 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"Demo",
-		AD_ENTRY1s("players.clu", "5068815a62ba932afba7267bafc9786d", 9904289),
+		AD_ENTRY2s("players.clu", "5068815a62ba932afba7267bafc9786d", 9904289,
+				   "docks.clu",   "c46d1150d826fff7f343edcc1cc430f7", 20375248),
 		Common::ES_ESP,
 		Common::kPlatformWindows,
 		ADGF_DEMO | GF_SPANISHDEMO,
@@ -57,7 +60,8 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"Demo",
-		AD_ENTRY1s("players.clu", "e8786804d399310bda3fcbf897bc44f7", 3085812),
+		AD_ENTRY2s("players.clu", "e8786804d399310bda3fcbf897bc44f7", 3085812,
+				   "docks.clu",   "14470523a50333defc82c78afdf87b6b", 5818340),
 		Common::EN_ANY,
 		Common::kPlatformPSX,
 		ADGF_DEMO,
@@ -67,9 +71,10 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY3s("general.clu",  "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",     "9b344d976ca8d19a1cf5aa4413397f6b", 304968,
-					"speech1.clu",  "a403904a0e825356107d228f8f74092e", 176260048),
+		AD_ENTRY4s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "9b344d976ca8d19a1cf5aa4413397f6b", 304968,
+				   "speech1.clu", "a403904a0e825356107d228f8f74092e", 176260048,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::EN_ANY,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -79,8 +84,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"1CD release",
-		AD_ENTRY2s("general.clu",  "31db8564f9187538f24d9fda0677f666", 7059728,
-					"resource.tab", "ee4c0a8a2b8821ca113ea4176968b857", 16588),
+		AD_ENTRY3s("general.clu",  "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "resource.tab", "ee4c0a8a2b8821ca113ea4176968b857", 16588,
+				   "docks.clu",    "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::EN_ANY,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -90,9 +96,10 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"EU",
-		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "9b344d976ca8d19a1cf5aa4413397f6b", 304968,
-					"speech1.clg", "d49a5f3683b734d1129cbf6a0f95ae83", 57935499),
+		AD_ENTRY4s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "9b344d976ca8d19a1cf5aa4413397f6b", 304968,
+				   "speech1.clg", "d49a5f3683b734d1129cbf6a0f95ae83", 57935499,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::EN_ANY,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -102,8 +109,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "d0cafb4d2982613ca4cf0574a0e4e079", 418165),
+		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "d0cafb4d2982613ca4cf0574a0e4e079", 418165,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::FR_FRA,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -113,8 +121,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "5771f52410745029d7f71af05072d3d6", 556961),
+		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "5771f52410745029d7f71af05072d3d6", 556961,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::DE_DEU,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -124,8 +133,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "56c1197e72249473538c30c912607d01", 418165),
+		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "56c1197e72249473538c30c912607d01", 418165,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::ES_ESP,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -135,8 +145,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "c141e9903e4a1f45252dd1500498b6e2", 488745),
+		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "c141e9903e4a1f45252dd1500498b6e2", 488745,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::IT_ITA,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -146,8 +157,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"English speech",
-		AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "bc45e00cfb737ad61fada3ca6b1b2bfc", 279042),
+		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "bc45e00cfb737ad61fada3ca6b1b2bfc", 279042,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::CS_CZE,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -157,8 +169,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"English speech",
-		AD_ENTRY2s("general.clu", "11e824864a75195652610e8b397382a6", 8030769,
-					"text.clu",    "9867bb6dfc850bfa165812f0827a5508", 454229),
+		AD_ENTRY3s("general.clu", "11e824864a75195652610e8b397382a6", 8030769,
+				   "text.clu",    "9867bb6dfc850bfa165812f0827a5508", 454229,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::FI_FIN,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -168,8 +181,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"Fanmade/English speech/V1",
-		AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "93ea23ccf78dc746ed9a027fcf66d58d", 248692),
+		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "93ea23ccf78dc746ed9a027fcf66d58d", 248692,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::HE_ISR,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -179,8 +193,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"Fanmade/English speech/V2",
-		AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "b5442676e958309bf1a4817dd3893aab", 248702),
+		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "b5442676e958309bf1a4817dd3893aab", 248702,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::HE_ISR,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -190,8 +205,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"English speech",
-		AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "82714fa70516486174cddc2754958cd4", 304968),
+		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "82714fa70516486174cddc2754958cd4", 304968,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::HU_HUN,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -201,8 +217,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"English speech",
-		AD_ENTRY2s("general.clu", "11e824864a75195652610e8b397382a6", 8030769,
-					"text.clu",    "f1cf2aaa7e56d8bf6572c9b25267931e", 373704),
+		AD_ENTRY3s("general.clu", "11e824864a75195652610e8b397382a6", 8030769,
+				   "text.clu",    "f1cf2aaa7e56d8bf6572c9b25267931e", 373704,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::PL_POL,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -212,8 +229,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"English speech",
-		AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "cda6306bedfa63ac4386ff82977bfcd6", 410949),
+		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "cda6306bedfa63ac4386ff82977bfcd6", 410949,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::PT_BRA,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -223,8 +241,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"Fargus",
-		AD_ENTRY2s("general.clu", "98e43a4fd93227b1d5d44e664eeede0c", 7320908,
-					"text.clu",    "33a2645498ef1f4e63c4f6a50da4a3e2", 288998),
+		AD_ENTRY3s("general.clu", "98e43a4fd93227b1d5d44e664eeede0c", 7320908,
+				   "text.clu",    "33a2645498ef1f4e63c4f6a50da4a3e2", 288998,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::RU_RUS,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -234,8 +253,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"Mediahauz/English speech",
-		AD_ENTRY2s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
-					"text.clu",    "e85c148037b8bfc02c968d4d22fda5e1", 315178),
+		AD_ENTRY3s("general.clu", "31db8564f9187538f24d9fda0677f666", 7059728,
+				   "text.clu",    "e85c148037b8bfc02c968d4d22fda5e1", 315178,
+				   "docks.clu",   "b39246fbb5b955a29f9a207c69bfc318", 20262263),
 		Common::RU_RUS,
 		Common::kPlatformWindows,
 		ADGF_NO_FLAGS,
@@ -245,8 +265,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
-					"text.clu",    "06691fc9f749f3f7ad0f622fbfe79467", 302756),
+		AD_ENTRY3s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+				   "text.clu",    "06691fc9f749f3f7ad0f622fbfe79467", 302756,
+				   "docks.clu",   "95ee20f4c61de6acc3243ba4632e37d8", 5654572),
 		Common::EN_USA,
 		Common::kPlatformPSX,
 		ADGF_NO_FLAGS,
@@ -256,8 +277,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
-					"text.clu",    "be8ad3f1d9d3ddd8881169b16aa23970", 838392),
+		AD_ENTRY3s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+				   "text.clu",    "be8ad3f1d9d3ddd8881169b16aa23970", 838392,
+				   "docks.clu",   "95ee20f4c61de6acc3243ba4632e37d8", 5654572),
 		Common::EN_GRB,
 		Common::kPlatformPSX,
 		ADGF_NO_FLAGS,
@@ -267,8 +289,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
-					"text.clu",    "0920f1aec8bc9d02f8c94f73965c8006", 327668),
+		AD_ENTRY3s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+				   "text.clu",    "0920f1aec8bc9d02f8c94f73965c8006", 327668,
+				   "docks.clu",   "95ee20f4c61de6acc3243ba4632e37d8", 5654572),
 		Common::FR_FRA,
 		Common::kPlatformPSX,
 		ADGF_NO_FLAGS,
@@ -278,8 +301,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
-					"text.clu",    "5ce53dfc154b80d4ca64b60df808e411", 347456),
+		AD_ENTRY3s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+				   "text.clu",    "5ce53dfc154b80d4ca64b60df808e411", 347456,
+				   "docks.clu",   "95ee20f4c61de6acc3243ba4632e37d8", 5654572),
 		Common::DE_DEU,
 		Common::kPlatformPSX,
 		ADGF_NO_FLAGS,
@@ -289,8 +313,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
-					"text.clu",    "03ffcd1eec48f74a3d16d1b7751cee0b", 316124),
+		AD_ENTRY3s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+				   "text.clu",    "03ffcd1eec48f74a3d16d1b7751cee0b", 316124,
+				   "docks.clu",   "95ee20f4c61de6acc3243ba4632e37d8", 5654572),
 		Common::ES_ESP,
 		Common::kPlatformPSX,
 		ADGF_NO_FLAGS,
@@ -300,8 +325,9 @@ static const ADGameDescription gameDescriptions[] = {
 	{
 		"sword2",
 		"",
-		AD_ENTRY2s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
-					"text.clu",    "298bd6eef464780bf6b0830805eef220", 334784),
+		AD_ENTRY3s("general.clu", "7ef0353ca03338d59b4f4e3d01a38df1", 2095780,
+				   "text.clu",    "298bd6eef464780bf6b0830805eef220", 334784,
+				   "docks.clu",   "95ee20f4c61de6acc3243ba4632e37d8", 5654572),
 		Common::IT_ITA,
 		Common::kPlatformPSX,
 		ADGF_NO_FLAGS,


Commit: 4da6f1ec4d87b9d6202823a106f5486960667440
    https://github.com/scummvm/scummvm/commit/4da6f1ec4d87b9d6202823a106f5486960667440
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2023-01-14T23:54:24+01:00

Commit Message:
SWORD1: Simplify detection of Spanish demo

This was breaking all other demos and was introduced in
7a1ca2821add

Changed paths:
    engines/sword1/sword1.cpp
    engines/sword1/sworddefs.h


diff --git a/engines/sword1/sword1.cpp b/engines/sword1/sword1.cpp
index 9ca1c199624..b921effb772 100644
--- a/engines/sword1/sword1.cpp
+++ b/engines/sword1/sword1.cpp
@@ -285,8 +285,7 @@ const CdFile SwordEngine::_pcCdFileList[] = {
 	{ "text.clu", FLAG_CD1 | FLAG_DEMO },
 	{ "1m14a.wav", FLAG_DEMO },
 	{ "speech1.clu", FLAG_SPEECH1 },
-	{ "speech2.clu", FLAG_SPEECH2 },
-	{ "speech.clu", FLAG_SPEECH | FLAG_DEMO } // Spanish Demo
+	{ "speech2.clu", FLAG_SPEECH2 }
 #ifdef USE_FLAC
 	, { "speech1.clf", FLAG_SPEECH1 },
 	{ "speech2.clf", FLAG_SPEECH2 }
@@ -438,8 +437,8 @@ void SwordEngine::showFileErrorMsg(uint8 type, bool *fileExists) {
 void SwordEngine::checkCdFiles() { // check if we're running from cd, hdd or what...
 	bool fileExists[30];
 	bool isFullVersion = false; // default to demo version
-	bool missingTypes[9] = { false, false, false, false, false, false, false, false, false };
-	bool foundTypes[9] = { false, false, false, false, false, false, false, false, false };
+	bool missingTypes[8] = { false, false, false, false, false, false, false, false };
+	bool foundTypes[8] = { false, false, false, false, false, false, false, false };
 	bool cd2FilesFound = false;
 	_systemVars.runningFromCd = false;
 	_systemVars.playSpeech = true;
@@ -571,7 +570,7 @@ void SwordEngine::checkCdFiles() { // check if we're running from cd, hdd or wha
 	_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;
+	_systemVars.isSpanishDemo = (_systemVars.isDemo && Common::parseLanguage(ConfMan.get("language")) == Common::ES_ESP) != 0;
 }
 
 Common::Error SwordEngine::go() {
diff --git a/engines/sword1/sworddefs.h b/engines/sword1/sworddefs.h
index 11e33771c80..75b09e6280a 100644
--- a/engines/sword1/sworddefs.h
+++ b/engines/sword1/sworddefs.h
@@ -140,7 +140,6 @@ enum fileTypes {
 	TYPE_IMMED,
 	TYPE_SPEECH1,
 	TYPE_SPEECH2,
-	TYPE_SPEECH
 };
 
 enum fileFlags {
@@ -150,7 +149,6 @@ enum fileFlags {
 	FLAG_IMMED   = (1 << TYPE_IMMED),       // this file is needed immediately, game won't start without it
 	FLAG_SPEECH1 = (1 << TYPE_SPEECH1),
 	FLAG_SPEECH2 = (1 << TYPE_SPEECH2),
-	FLAG_SPEECH  = (1 << TYPE_SPEECH)
 };
 
 struct CdFile {




More information about the Scummvm-git-logs mailing list