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

elasota noreply at scummvm.org
Wed May 31 05:42:48 UTC 2023


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

Summary:
c76f3aba01 VCRUISE: Distinguish Steam 16-language versions from DVD/GOG version


Commit: c76f3aba01a1633885470d7f2c309121aae9018c
    https://github.com/scummvm/scummvm/commit/c76f3aba01a1633885470d7f2c309121aae9018c
Author: elasota (ejlasota at gmail.com)
Date: 2023-05-31T01:42:06-04:00

Commit Message:
VCRUISE: Distinguish Steam 16-language versions from DVD/GOG version

Changed paths:
    engines/vcruise/detection.cpp
    engines/vcruise/detection.h
    engines/vcruise/detection_tables.h
    engines/vcruise/runtime.cpp


diff --git a/engines/vcruise/detection.cpp b/engines/vcruise/detection.cpp
index b7419e147bd..0ca7e4d5ff2 100644
--- a/engines/vcruise/detection.cpp
+++ b/engines/vcruise/detection.cpp
@@ -36,6 +36,7 @@ static const PlainGameDescriptor g_vcruiseGames[] = {
 
 static const char *g_vcruiseDirectoryGlobs[] = {
 	"Sfx",
+	"Log",
 	"Waves-12",
 	"Waves-22",
 	nullptr
@@ -90,12 +91,14 @@ public:
 			game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::RU_RUS));
 
 			// Steam version languages
-			game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::BG_BUL));
-			game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::ZH_TWN));
-			game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::JA_JPN));
-			game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::HU_HUN));
-			game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::ZH_CHN));
-			game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::CS_CZE));
+			if (adGame.desc->flags & VCruise::VCRUISE_GF_STEAM_LANGUAGES) {
+				game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::BG_BUL));
+				game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::ZH_TWN));
+				game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::JA_JPN));
+				game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::HU_HUN));
+				game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::ZH_CHN));
+				game.appendGUIOptions(Common::getGameGUIOptionsDescriptionLanguage(Common::CS_CZE));
+			}
 		}
 
 		return game;
diff --git a/engines/vcruise/detection.h b/engines/vcruise/detection.h
index e8aa74d36e6..f30c8feb58a 100644
--- a/engines/vcruise/detection.h
+++ b/engines/vcruise/detection.h
@@ -37,6 +37,8 @@ enum VCruiseGameFlag {
 	VCRUISE_GF_WANT_MP3			= (1 << 0),
 	VCRUISE_GF_WANT_OGG_VORBIS	= (1 << 1),
 	VCRUISE_GF_NEED_JPEG		= (1 << 2),
+	
+	VCRUISE_GF_STEAM_LANGUAGES	= (1 << 3),
 };
 
 struct VCruiseGameDescription {
diff --git a/engines/vcruise/detection_tables.h b/engines/vcruise/detection_tables.h
index f485d4981e6..34a6ab818d4 100644
--- a/engines/vcruise/detection_tables.h
+++ b/engines/vcruise/detection_tables.h
@@ -113,6 +113,7 @@ static const VCruiseGameDescription gameDescriptions[] = {
 		GID_REAH,
 		Common::EN_ANY,
 	},
+	#if 0
 	{ // Schizm: Mysterious Journey, English CD Version
 		{
 			"schizm",
@@ -127,6 +128,7 @@ static const VCruiseGameDescription gameDescriptions[] = {
 		GID_SCHIZM,
 		Common::EN_GRB,
 	},
+	#endif
 	{ // Schizm: Mysterious Journey, English DVD/digital Version
 		{
 			"schizm",
@@ -239,6 +241,137 @@ static const VCruiseGameDescription gameDescriptions[] = {
 		GID_SCHIZM,
 		Common::RU_RUS,
 	},
+
+	// Steam versions
+	{
+		// Schizm: Mysterious Journey, English Steam (16-language) Version
+		{
+			"schizm",
+			"English Steam",
+			AD_ENTRY3s("Schizm.exe", "296edd26d951c3bdc4d303c4c88b27cd", 364544,
+					   "0001_a.wav", "374d93abc3422840623acc618ecb2b1e", 1553784,
+					   "Speech10.txt", "88fdaab90be33bca88db423e1acda8c3", 63697),
+			Common::UNK_LANG,
+			Common::kPlatformWindows,
+			ADGF_TESTING | VCRUISE_GF_WANT_OGG_VORBIS | VCRUISE_GF_NEED_JPEG | VCRUISE_GF_STEAM_LANGUAGES,
+			GUIO0()
+		},
+		GID_SCHIZM,
+		Common::EN_GRB,
+	},
+	{
+		// Schizm: Mysterious Journey, German Steam (16-language) Version
+		{
+			"schizm",
+			"German Steam",
+			AD_ENTRY3s("Schizm.exe", "296edd26d951c3bdc4d303c4c88b27cd", 364544,
+					   "0001_a.wav", "f2b7eccfb1e9af0282b541c5eac66cc7", 1613240,
+					   "Speech10.txt", "88fdaab90be33bca88db423e1acda8c3", 63697),
+			Common::UNK_LANG,
+			Common::kPlatformWindows,
+			ADGF_TESTING | VCRUISE_GF_WANT_OGG_VORBIS | VCRUISE_GF_NEED_JPEG | VCRUISE_GF_STEAM_LANGUAGES,
+			GUIO0()
+		},
+		GID_SCHIZM,
+		Common::DE_DEU,
+	},
+	{
+		// Schizm: Mysterious Journey, Spanish Steam (16-language) Version
+		{
+			"schizm",
+			"Spanish Steam",
+			AD_ENTRY3s("Schizm.exe", "296edd26d951c3bdc4d303c4c88b27cd", 364544,
+					   "0001_a.wav", "7a398f17e847a46de629a09fa6178b00", 1409560,
+					   "Speech10.txt", "88fdaab90be33bca88db423e1acda8c3", 63697),
+			Common::UNK_LANG,
+			Common::kPlatformWindows,
+			ADGF_TESTING | VCRUISE_GF_WANT_OGG_VORBIS | VCRUISE_GF_NEED_JPEG | VCRUISE_GF_STEAM_LANGUAGES,
+			GUIO0()
+		},
+		GID_SCHIZM,
+		Common::ES_ESP,
+	},
+	{
+		// Schizm: Mysterious Journey, French Steam (16-language) Version
+		{
+			"schizm",
+			"French Steam",
+			AD_ENTRY3s("Schizm.exe", "296edd26d951c3bdc4d303c4c88b27cd", 364544,
+					   "0001_a.wav", "cd46a5df85a879bf293871b5911abcc3", 1305470,
+					   "Speech10.txt", "88fdaab90be33bca88db423e1acda8c3", 63697),
+			Common::UNK_LANG,
+			Common::kPlatformWindows,
+			ADGF_TESTING | VCRUISE_GF_WANT_OGG_VORBIS | VCRUISE_GF_NEED_JPEG | VCRUISE_GF_STEAM_LANGUAGES,
+			GUIO0()
+		},
+		GID_SCHIZM,
+		Common::FR_FRA,
+	},
+	{
+		// Schizm: Mysterious Journey, Hungarian Steam (16-language) Version
+		{
+			"schizm",
+			"Hungarian DVD",
+			AD_ENTRY3s("Schizm.exe", "296edd26d951c3bdc4d303c4c88b27cd", 364544,
+					   "0001_a.wav", "9838f59fce21ba3a1eecc3d84c5be8b1", 1502674,
+					   "Speech10.txt", "88fdaab90be33bca88db423e1acda8c3", 63697),
+			Common::UNK_LANG,
+			Common::kPlatformWindows,
+			ADGF_TESTING | VCRUISE_GF_WANT_OGG_VORBIS | VCRUISE_GF_NEED_JPEG | VCRUISE_GF_STEAM_LANGUAGES,
+			GUIO0()
+		},
+		GID_SCHIZM,
+		Common::HU_HUN,
+	},
+	{
+		// Schizm: Mysterious Journey, Italian Steam (16-language) Version
+		{
+			"schizm",
+			"Italian Steam",
+			AD_ENTRY3s("Schizm.exe", "296edd26d951c3bdc4d303c4c88b27cd", 364544,
+					   "0001_a.wav", "6d8e4b97710b858525d9965ef1e627ab", 1280506,
+					   "Speech10.txt", "88fdaab90be33bca88db423e1acda8c3", 63697),
+			Common::UNK_LANG,
+			Common::kPlatformWindows,
+			ADGF_TESTING | VCRUISE_GF_WANT_OGG_VORBIS | VCRUISE_GF_NEED_JPEG | VCRUISE_GF_STEAM_LANGUAGES,
+			GUIO0()
+		},
+		GID_SCHIZM,
+		Common::IT_ITA,
+	},
+	{
+		// Schizm: Mysterious Journey, Polish Steam (16-language) Version
+		{
+			"schizm",
+			"Polish Steam",
+			AD_ENTRY3s("Schizm.exe", "296edd26d951c3bdc4d303c4c88b27cd", 364544,
+					   "0001_a.wav", "4fc0053f66657e416b69419106d238a5", 1592106,
+					   "Speech10.txt", "88fdaab90be33bca88db423e1acda8c3", 63697),
+			Common::UNK_LANG,
+			Common::kPlatformWindows,
+			ADGF_TESTING | VCRUISE_GF_WANT_OGG_VORBIS | VCRUISE_GF_NEED_JPEG | VCRUISE_GF_STEAM_LANGUAGES,
+			GUIO0()
+		},
+		GID_SCHIZM,
+		Common::PL_POL,
+	},
+	{
+		// Schizm: Mysterious Journey, Russian Steam (16-language) Version
+		{
+			"schizm",
+			"Russian Steam",
+			AD_ENTRY3s("Schizm.exe", "296edd26d951c3bdc4d303c4c88b27cd", 364544,
+					   "0001_a.wav", "ba8fc041a92f1afceee35bdbb84eb2cd", 1427794,
+					   "Speech10.txt", "88fdaab90be33bca88db423e1acda8c3", 63697),
+			Common::UNK_LANG,
+			Common::kPlatformWindows,
+			ADGF_TESTING | VCRUISE_GF_WANT_OGG_VORBIS | VCRUISE_GF_NEED_JPEG | VCRUISE_GF_STEAM_LANGUAGES,
+			GUIO0()
+		},
+		GID_SCHIZM,
+		Common::RU_RUS,
+	},
+
 	{ AD_TABLE_END_MARKER, GID_UNKNOWN, Common::UNK_LANG }
 };
 
diff --git a/engines/vcruise/runtime.cpp b/engines/vcruise/runtime.cpp
index 6617c3626c9..5fdeecb97ba 100644
--- a/engines/vcruise/runtime.cpp
+++ b/engines/vcruise/runtime.cpp
@@ -1443,6 +1443,7 @@ void Runtime::resolveCodePageForLanguage(Common::Language lang, Common::CodePage
 	switch (lang) {
 	case Common::PL_POL:
 	case Common::CS_CZE:
+	case Common::HU_HUN:
 		outCodePage = Common::CodePage::kWindows1250;
 		outCharSet = kCharSetLatin;
 		return;
@@ -1460,7 +1461,7 @@ void Runtime::resolveCodePageForLanguage(Common::Language lang, Common::CodePage
 		outCharSet = kCharSetChineseTraditional;
 		return;
 	case Common::JA_JPN:
-		outCodePage = Common::CodePage::kWindows932;
+		outCodePage = Common::CodePage::kWindows932;	// Shift-JIS compatible
 		outCharSet = kCharSetJapanese;
 		return;
 	case Common::ZH_CHN:
@@ -4755,6 +4756,13 @@ bool Runtime::loadSubtitles(Common::CodePage codePage, bool guessCodePage) {
 				{Common::CodePage::kWindows1252, kCharSetLatin, "precedentemente", "Italian"},
 				{Common::CodePage::kWindows1251, kCharSetCyrillic, "\xf1\xee\xf5\xf0\xe0\xed\xe5\xed\xed\xf3\xfe", "Russian"},
 				{Common::CodePage::kWindows1253, kCharSetGreek, "\xf0\xf1\xef\xe7\xe3\xef\xfd\xec\xe5\xed\xef", "Greek"},
+
+				{Common::CodePage::kWindows1251, kCharSetCyrillic, "\xe7\xe0\xef\xe8\xf1\xe0\xed\xe0\xf2\xe0", "Bulgarian"},
+				{Common::CodePage::kBig5, kCharSetChineseTraditional, "\xc0\x78\xa6\x73", "Chinese (Traditional)"},
+				{Common::CodePage::kGBK, kCharSetChineseSimplified, "\xb4\xa2\xb4\xe6", "Chinese (Simplified)"},
+				{Common::CodePage::kWindows1250, kCharSetLatin, "j\x6at\xe9k\xe1ll\xe1st", "Hungarian"},
+				{Common::CodePage::kWindows932, kCharSetJapanese, "\x8f\xe3\x8f\x91\x82\xab", "Japanese"},
+				{Common::CodePage::kWindows1250, kCharSetLatin, "p\xf8" "edchoz\xed", "Czech"},
 			};
 
 			for (const CodePageGuess &guess : guesses) {




More information about the Scummvm-git-logs mailing list