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

sev- noreply at scummvm.org
Sun Mar 5 00:25:13 UTC 2023


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

Summary:
6f7404151d DRAGONS: Convert copyright screen to uint16
2efc7fb55e DRAGONS: Add localized copyright for DE/FR
e096f5ef39 DRAGONS: Add GRB copyright text
fc4fdd4de1 DRAGONS: Hide "previews" menuitem on non-US releases
125468533e DRAGONS: Fix copyright blank lines to match original
4c59e2c23a DRAGONS: Add localized main menu
aae59da8e8 DRAGONS: Fix alignment of  French main menu
c07bbf1a5a DRAGONS: Add blank line to GBR copyright
c6e2cfb6e6 DRAGONS: Convert uint texts to standard char


Commit: 6f7404151d5fa94c436391cfe5fbe336c0b46308
    https://github.com/scummvm/scummvm/commit/6f7404151d5fa94c436391cfe5fbe336c0b46308
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00

Commit Message:
DRAGONS: Convert copyright screen to uint16

Changed paths:
    engines/dragons/dragons.cpp


diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index b06636c29c0..cd2eac9188e 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1596,27 +1596,41 @@ void DragonsEngine::initSubtitleFlag() {
 	}
 }
 
-int centerText(const char *text) {
-	return 0x14 - (strlen(text) / 2 + 1);
+uint32 wideStrLen(uint16 *text) {
+	int i = 0;
+	while (text[i] != 0) {
+		i++;
+	}
+	return i;
+}
+
+int centerText(uint16 *text) {
+	return 0x14 - (wideStrLen(text) / 2 + 1);
 }
 
 void DragonsEngine::mainMenu() {
 	_inMenu = true;
 	//TODO need to support other languages.
-	const char copyright[6][40] = {
-			"Crystal Dynamics is a trademark",
-			"of Crystal Dynamics.",
-			"Blazing Dragons is a trademark and",
-			"copyright of Terry Jones and is",
-			"used with permission.",
-			"Licensed by Nelvana Marketing Inc."
+	uint16 copyright[6][40] = {
+		{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,\
+		  0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
+		{ 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
+		{ 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61,\
+		  0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0 },
+		{ 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a,\
+		  0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0 },
+		{ 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,\
+		  0x2e, 0 },
+		{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,\
+		  0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 }
 	};
+
 	const char menuItems[3][40] = {
 			"Start",
 			"Options",
 			"Previews"
 	};
-
+	
 	_screen->clearScreen();
 	Actor *actor = _actorManager->loadActor(0xd9,0,0,0,3);
 	actor->setFlag(ACTOR_FLAG_8000);
@@ -1627,7 +1641,7 @@ void DragonsEngine::mainMenu() {
 	_screen->loadPalette(0, _cursor->getPalette()); //actor->_actorResource->getPalette());
 
 	for (int i = 0; i < 6; i++) {
-		_fontManager->addAsciiText(centerText(&copyright[i][0]) * 8, (0x12 + i) * 8, &copyright[i][0], strlen(copyright[i]), 1);
+		_fontManager->addText(centerText(copyright[i]) * 8, (0x12 + i) * 8, copyright[i], wideStrLen(copyright[i]), 1);
 	}
 
 	waitForFramesAllowSkip(400);


Commit: 2efc7fb55ee8af6ae77fc6d9c3735c317e130059
    https://github.com/scummvm/scummvm/commit/2efc7fb55ee8af6ae77fc6d9c3735c317e130059
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00

Commit Message:
DRAGONS: Add localized copyright for DE/FR

Changed paths:
    engines/dragons/dragons.cpp


diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index cd2eac9188e..662cf88240e 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1610,19 +1610,65 @@ int centerText(uint16 *text) {
 
 void DragonsEngine::mainMenu() {
 	_inMenu = true;
-	//TODO need to support other languages.
-	uint16 copyright[6][40] = {
-		{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,\
-		  0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
-		{ 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
-		{ 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61,\
-		  0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0 },
-		{ 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a,\
-		  0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0 },
-		{ 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,\
-		  0x2e, 0 },
-		{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,\
-		  0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 }
+
+	int lang_index, y_offset;
+
+	uint16 copyright[3][11][40] = {
+		{   // ENGLISH
+			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
+			  0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
+		 	{ 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
+		 	{ 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61,
+		  	  0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0 },
+		 	{ 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a,
+		  	  0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0 },
+		 	{ 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+		  	  0x2e, 0 },
+			{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,
+			  0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
+			{ 0 },
+		},
+		{   // GERMAN
+			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x74,
+			  0x20, 0x65, 0x69, 0x6e, 0x20, 0x57, 0x61, 0x72, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0 },
+			{ 0x76, 0x6f, 0x6e, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0 },
+			{ 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x74, 0x20,
+			  0x65, 0x69, 0x6e, 0x20, 0x67, 0x65, 0x73, 0x63, 0x68, 0x81, 0x74, 0x7a, 0x74, 0x65, 0x73, 0 },
+			{ 0x57, 0x61, 0x72, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0x20, 0x76, 0x6f, 0x6e, 0x20, 0x54, 0x65, 0x72,
+			  0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0 },
+			{ 0x75, 0x6e, 0x64, 0x20, 0x77, 0x69, 0x72, 0x64, 0x20, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x4c, 0x69, 0x7a, 0x65, 0x6e,
+			  0x7a, 0x20, 0x76, 0x65, 0x72, 0x77, 0x65, 0x6e, 0x64, 0x65, 0x74, 0x2e, 0 },
+			{ 0x4c, 0x69, 0x7a, 0x65, 0x6e, 0x7a, 0x69, 0x65, 0x72, 0x74, 0x20, 0x64, 0x75, 0x72, 0x63, 0x68, 0 },
+			{ 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e,
+			  0x63, 0x2e, 0 },
+			{ 0x20, 0 },
+			{ 0x53, 0x70, 0x69, 0x65, 0x6c, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0 },
+			{ 0x63, 0x20, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d,
+			  0x69, 0x63, 0x73, 0x2e, 0 },
+			{ 0x41, 0x6c, 0x6c, 0x65, 0x20, 0x52, 0x65, 0x63, 0x68, 0x74, 0x65, 0x20, 0x56, 0x6f, 0x72, 0x62, 0x65, 0x68, 0x61, 0x6c,
+			  0x74, 0x65, 0x6e, 0x2e, 0 },
+		},
+		{
+			// FRENCH
+			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x65, 0x73, 0x74,
+			  0x20, 0x75, 0x6e, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x71, 0x75, 0x65, 0 },
+			{ 0x64, 0x65, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e,
+			  0x20, 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0 },
+			{ 0x65, 0x73, 0x74, 0x20, 0x75, 0x6e, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x71, 0x75, 0x65, 0x20, 0x65, 0x74, 0x20, 0x75, 0x6e,
+			  0x20, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x64, 0x65, 0 },
+			{ 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x65, 0x74, 0x20, 0x65, 0x73, 0x74, 0x20, 0x75,
+			  0x74, 0x69, 0x6c, 0x69, 0x73, 0x82, 0x20, 0x61, 0x76, 0x65, 0x63, 0 },
+			{ 0x73, 0x61, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
+			{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x64, 0x65, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d,
+			  0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
+			{ 0x20, 0 },
+			{ 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x44, 0x75, 0x20, 0x4a, 0x65, 0x75, 0 },
+			{ 0x63, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69,
+			  0x63, 0x73, 0x2e, 0 },
+			{ 0x54, 0x6f, 0x75, 0x73, 0x20, 0x44, 0x72, 0x6f, 0x69, 0x64, 0x73, 0x20, 0x52, 0x82, 0x73, 0x65, 0x72, 0x76, 0x82, 0x73,
+			  0x2e, 0 },
+			{ 0 },
+		}
 	};
 
 	const char menuItems[3][40] = {
@@ -1630,7 +1676,20 @@ void DragonsEngine::mainMenu() {
 			"Options",
 			"Previews"
 	};
-	
+
+	if(_language == Common::DE_DEU){
+		lang_index = 1;
+		y_offset = 0x0e;
+	}
+	else if (_language == Common::FR_FRA){
+		lang_index = 2;
+		y_offset = 0x0e;
+	}
+	else {
+		lang_index = 0;
+		y_offset = 0x12;
+	}
+
 	_screen->clearScreen();
 	Actor *actor = _actorManager->loadActor(0xd9,0,0,0,3);
 	actor->setFlag(ACTOR_FLAG_8000);
@@ -1640,8 +1699,8 @@ void DragonsEngine::mainMenu() {
 	//TODO fix palette for copyright image.
 	_screen->loadPalette(0, _cursor->getPalette()); //actor->_actorResource->getPalette());
 
-	for (int i = 0; i < 6; i++) {
-		_fontManager->addText(centerText(copyright[i]) * 8, (0x12 + i) * 8, copyright[i], wideStrLen(copyright[i]), 1);
+	for (int i = 0; (i < 11) && (copyright[lang_index][0][0]!=0); i++) {
+		_fontManager->addText(centerText(copyright[lang_index][i]) * 8, (y_offset + i) * 8, copyright[lang_index][i], wideStrLen(copyright[lang_index][i]), 1);
 	}
 
 	waitForFramesAllowSkip(400);


Commit: e096f5ef3940c34e8e64fb98db18b2bcc675987f
    https://github.com/scummvm/scummvm/commit/e096f5ef3940c34e8e64fb98db18b2bcc675987f
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00

Commit Message:
DRAGONS: Add GRB copyright text

Changed paths:
    engines/dragons/dragons.cpp


diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index 662cf88240e..a267ffef9d3 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1612,9 +1612,8 @@ void DragonsEngine::mainMenu() {
 	_inMenu = true;
 
 	int lang_index, y_offset;
-
-	uint16 copyright[3][11][40] = {
-		{   // ENGLISH
+	uint16 copyright[4][11][40] = {
+		{   // US
 			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
 			  0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
 		 	{ 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
@@ -1628,7 +1627,26 @@ void DragonsEngine::mainMenu() {
 			  0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
 			{ 0 },
 		},
-		{   // GERMAN
+		{	// UK
+			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
+			  0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
+			{ 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e,
+			  0x20, 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0 },
+			{ 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x27, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x73, 0x20,
+			  0x61, 0x72, 0x65, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0 },
+			{ 0x61, 0x6e, 0x64, 0x20, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65,
+			  0x72, 0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0 },
+			{ 0x61, 0x72, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73,
+			  0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
+			{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,
+			  0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
+			{ 0 },
+			{ 0x47, 0x61, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x43, 0x29, 0x20, 0x43,
+			  0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
+			{ 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0 },
+			{ 0 },
+		},
+		{   // GERMANY
 			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x74,
 			  0x20, 0x65, 0x69, 0x6e, 0x20, 0x57, 0x61, 0x72, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0 },
 			{ 0x76, 0x6f, 0x6e, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0 },
@@ -1641,7 +1659,7 @@ void DragonsEngine::mainMenu() {
 			{ 0x4c, 0x69, 0x7a, 0x65, 0x6e, 0x7a, 0x69, 0x65, 0x72, 0x74, 0x20, 0x64, 0x75, 0x72, 0x63, 0x68, 0 },
 			{ 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e,
 			  0x63, 0x2e, 0 },
-			{ 0x20, 0 },
+			{ 0 },
 			{ 0x53, 0x70, 0x69, 0x65, 0x6c, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0 },
 			{ 0x63, 0x20, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d,
 			  0x69, 0x63, 0x73, 0x2e, 0 },
@@ -1649,7 +1667,7 @@ void DragonsEngine::mainMenu() {
 			  0x74, 0x65, 0x6e, 0x2e, 0 },
 		},
 		{
-			// FRENCH
+			// FRANCE
 			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x65, 0x73, 0x74,
 			  0x20, 0x75, 0x6e, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x71, 0x75, 0x65, 0 },
 			{ 0x64, 0x65, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e,
@@ -1661,7 +1679,7 @@ void DragonsEngine::mainMenu() {
 			{ 0x73, 0x61, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
 			{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x64, 0x65, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d,
 			  0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
-			{ 0x20, 0 },
+			{ 0 },
 			{ 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x44, 0x75, 0x20, 0x4a, 0x65, 0x75, 0 },
 			{ 0x63, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69,
 			  0x63, 0x73, 0x2e, 0 },
@@ -1677,14 +1695,18 @@ void DragonsEngine::mainMenu() {
 			"Previews"
 	};
 
-	if(_language == Common::DE_DEU){
+	if (_language == Common::EN_GRB) {
 		lang_index = 1;
 		y_offset = 0x0e;
 	}
-	else if (_language == Common::FR_FRA){
+	else if (_language == Common::DE_DEU) {
 		lang_index = 2;
 		y_offset = 0x0e;
 	}
+	else if (_language == Common::FR_FRA) {
+		lang_index = 3;
+		y_offset = 0x0e;
+	}
 	else {
 		lang_index = 0;
 		y_offset = 0x12;


Commit: fc4fdd4de185f9d5aa38ace6739b055c3b8b5b5e
    https://github.com/scummvm/scummvm/commit/fc4fdd4de185f9d5aa38ace6739b055c3b8b5b5e
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00

Commit Message:
DRAGONS: Hide "previews" menuitem on non-US releases

Changed paths:
    engines/dragons/dragons.cpp


diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index a267ffef9d3..3e8681da9d1 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1612,6 +1612,9 @@ void DragonsEngine::mainMenu() {
 	_inMenu = true;
 
 	int lang_index, y_offset;
+
+	int lastMenuItem = 1;
+
 	uint16 copyright[4][11][40] = {
 		{   // US
 			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
@@ -1710,6 +1713,7 @@ void DragonsEngine::mainMenu() {
 	else {
 		lang_index = 0;
 		y_offset = 0x12;
+		lastMenuItem = 2;
 	}
 
 	_screen->clearScreen();
@@ -1733,12 +1737,12 @@ void DragonsEngine::mainMenu() {
 	do {
 		uint16 curMenuItem = 0;
 		do {
-			for (int i = 0; i < 3; i++) {
+			for (int i = 0; i <= lastMenuItem; i++) {
 				_fontManager->addAsciiText((i == 0 ? 17 : 16) * 8, (0x12 + i) * 8, &menuItems[i][0],
 										   strlen(menuItems[i]), i == curMenuItem ? 0 : 1);
 			}
 			if (checkForDownKeyRelease() || checkForWheelDown()) {
-				if (curMenuItem < 2) {
+				if (curMenuItem < lastMenuItem) {
 					curMenuItem++;
 				} else {
 					curMenuItem = 0;
@@ -1750,7 +1754,7 @@ void DragonsEngine::mainMenu() {
 				if (curMenuItem > 0) {
 					curMenuItem--;
 				} else {
-					curMenuItem = 2;
+					curMenuItem = lastMenuItem;
 				}
 				playOrStopSound(0x8009);
 			}


Commit: 125468533e5af0bf2ffb437daeba5afd6c4add6a
    https://github.com/scummvm/scummvm/commit/125468533e5af0bf2ffb437daeba5afd6c4add6a
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00

Commit Message:
DRAGONS: Fix copyright blank lines to match original

Changed paths:
    engines/dragons/dragons.cpp


diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index 3e8681da9d1..5144e2405bc 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1643,7 +1643,7 @@ void DragonsEngine::mainMenu() {
 			  0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
 			{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,
 			  0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
-			{ 0 },
+			{ 0x20 },
 			{ 0x47, 0x61, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x43, 0x29, 0x20, 0x43,
 			  0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
 			{ 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0 },
@@ -1662,7 +1662,7 @@ void DragonsEngine::mainMenu() {
 			{ 0x4c, 0x69, 0x7a, 0x65, 0x6e, 0x7a, 0x69, 0x65, 0x72, 0x74, 0x20, 0x64, 0x75, 0x72, 0x63, 0x68, 0 },
 			{ 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e,
 			  0x63, 0x2e, 0 },
-			{ 0 },
+			{ 0x20 },
 			{ 0x53, 0x70, 0x69, 0x65, 0x6c, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0 },
 			{ 0x63, 0x20, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d,
 			  0x69, 0x63, 0x73, 0x2e, 0 },
@@ -1682,7 +1682,7 @@ void DragonsEngine::mainMenu() {
 			{ 0x73, 0x61, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
 			{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x64, 0x65, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d,
 			  0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
-			{ 0 },
+			{ 0x20 },
 			{ 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x44, 0x75, 0x20, 0x4a, 0x65, 0x75, 0 },
 			{ 0x63, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69,
 			  0x63, 0x73, 0x2e, 0 },
@@ -1725,7 +1725,7 @@ void DragonsEngine::mainMenu() {
 	//TODO fix palette for copyright image.
 	_screen->loadPalette(0, _cursor->getPalette()); //actor->_actorResource->getPalette());
 
-	for (int i = 0; (i < 11) && (copyright[lang_index][0][0]!=0); i++) {
+	for (int i = 0; (i < 11) && (copyright[lang_index][i][0]!=0); i++) {
 		_fontManager->addText(centerText(copyright[lang_index][i]) * 8, (y_offset + i) * 8, copyright[lang_index][i], wideStrLen(copyright[lang_index][i]), 1);
 	}
 


Commit: 4c59e2c23afa9cddb0c64fb7e4b799f256626154
    https://github.com/scummvm/scummvm/commit/4c59e2c23afa9cddb0c64fb7e4b799f256626154
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00

Commit Message:
DRAGONS: Add localized main menu

Changed paths:
    engines/dragons/dragons.cpp


diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index 5144e2405bc..55078da34f3 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1692,10 +1692,29 @@ void DragonsEngine::mainMenu() {
 		}
 	};
 
-	const char menuItems[3][40] = {
-			"Start",
-			"Options",
-			"Previews"
+	uint16 menuItems[4][3][40] = {
+		{
+			// US
+			{ 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
+			{ 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
+			{ 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x73, 0 },
+
+		},
+		{
+			// UK
+			{ 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
+			{ 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
+		},
+		{
+			// GERMANY
+			{ 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
+			{ 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x6e, 0 },
+		},
+		{
+			// FRANCE
+			{ 0x44, 0x82, 0x6d, 0x61, 0x72, 0x72, 0x65, 0x72, 0 },
+			{ 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
+		}
 	};
 
 	if (_language == Common::EN_GRB) {
@@ -1738,8 +1757,8 @@ void DragonsEngine::mainMenu() {
 		uint16 curMenuItem = 0;
 		do {
 			for (int i = 0; i <= lastMenuItem; i++) {
-				_fontManager->addAsciiText((i == 0 ? 17 : 16) * 8, (0x12 + i) * 8, &menuItems[i][0],
-										   strlen(menuItems[i]), i == curMenuItem ? 0 : 1);
+				_fontManager->addText((i == 0 ? 17 : 16) * 8, (0x12 + i) * 8, menuItems[lang_index][i], wideStrLen(menuItems[lang_index][i]),
+									  i == curMenuItem ? 0 : 1);
 			}
 			if (checkForDownKeyRelease() || checkForWheelDown()) {
 				if (curMenuItem < lastMenuItem) {


Commit: aae59da8e83984c0db5b627b38aff1938e20cf61
    https://github.com/scummvm/scummvm/commit/aae59da8e83984c0db5b627b38aff1938e20cf61
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00

Commit Message:
DRAGONS: Fix alignment of  French main menu

Changed paths:
    engines/dragons/dragons.cpp


diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index 55078da34f3..9a6dc4537a4 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1757,7 +1757,7 @@ void DragonsEngine::mainMenu() {
 		uint16 curMenuItem = 0;
 		do {
 			for (int i = 0; i <= lastMenuItem; i++) {
-				_fontManager->addText((i == 0 ? 17 : 16) * 8, (0x12 + i) * 8, menuItems[lang_index][i], wideStrLen(menuItems[lang_index][i]),
+				_fontManager->addText( ((i == 0) && (lang_index != 3) ? 17 : 16) * 8, (0x12 + i) * 8, menuItems[lang_index][i], wideStrLen(menuItems[lang_index][i]),
 									  i == curMenuItem ? 0 : 1);
 			}
 			if (checkForDownKeyRelease() || checkForWheelDown()) {


Commit: c07bbf1a5a0fa51badf4f9fc93dcbbcd95107d99
    https://github.com/scummvm/scummvm/commit/c07bbf1a5a0fa51badf4f9fc93dcbbcd95107d99
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00

Commit Message:
DRAGONS: Add blank line to GBR copyright

Changed paths:
    engines/dragons/dragons.cpp


diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index 9a6dc4537a4..fc251ba6593 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1719,7 +1719,7 @@ void DragonsEngine::mainMenu() {
 
 	if (_language == Common::EN_GRB) {
 		lang_index = 1;
-		y_offset = 0x0e;
+		y_offset = 0x0f;
 	}
 	else if (_language == Common::DE_DEU) {
 		lang_index = 2;


Commit: c6e2cfb6e6ca766a60345120824b51faae7f1c19
    https://github.com/scummvm/scummvm/commit/c6e2cfb6e6ca766a60345120824b51faae7f1c19
Author: Walter Agazzi (walter.agazzi at protonmail.com)
Date: 2023-03-05T01:25:04+01:00

Commit Message:
DRAGONS: Convert uint texts to standard char

Also update AddAsciiText method to support special characters

Changed paths:
    engines/dragons/dragons.cpp
    engines/dragons/font.cpp


diff --git a/engines/dragons/dragons.cpp b/engines/dragons/dragons.cpp
index fc251ba6593..bbe63265e4e 100644
--- a/engines/dragons/dragons.cpp
+++ b/engines/dragons/dragons.cpp
@@ -1596,16 +1596,8 @@ void DragonsEngine::initSubtitleFlag() {
 	}
 }
 
-uint32 wideStrLen(uint16 *text) {
-	int i = 0;
-	while (text[i] != 0) {
-		i++;
-	}
-	return i;
-}
-
-int centerText(uint16 *text) {
-	return 0x14 - (wideStrLen(text) / 2 + 1);
+int centerText(const char *text) {
+	return 0x14 - (strlen(text) / 2 + 1);
 }
 
 void DragonsEngine::mainMenu() {
@@ -1615,106 +1607,78 @@ void DragonsEngine::mainMenu() {
 
 	int lastMenuItem = 1;
 
-	uint16 copyright[4][11][40] = {
-		{   // US
-			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
-			  0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
-		 	{ 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
-		 	{ 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61,
-		  	  0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0 },
-		 	{ 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a,
-		  	  0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x73, 0 },
-		 	{ 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
-		  	  0x2e, 0 },
-			{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,
-			  0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
-			{ 0 },
+	const char copyright[4][11][40] = {
+		{
+			// US
+			"Crystal Dynamics is a trademark",
+			"of Crystal Dynamics.",
+			"Blazing Dragons is a trademark and",
+			"copyright of Terry Jones and is",
+			"used with permission.",
+			"Licensed by Nelvana Marketing Inc."
 		},
-		{	// UK
-			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x20,
-			  0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0 },
-			{ 0x6f, 0x66, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e,
-			  0x20, 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0 },
-			{ 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x27, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x73, 0x20,
-			  0x61, 0x72, 0x65, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0 },
-			{ 0x61, 0x6e, 0x64, 0x20, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65,
-			  0x72, 0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0 },
-			{ 0x61, 0x72, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73,
-			  0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
-			{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20,
-			  0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
-			{ 0x20 },
-			{ 0x47, 0x61, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x43, 0x29, 0x20, 0x43,
-			  0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e, 0 },
-			{ 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x2e, 0 },
-			{ 0 },
+		{
+			// UK
+			"Crystal Dynamics is a trademark",
+			"of Crystal Dynamics. Blazing",
+			"Dragons' characters are trademarks",
+			"and copyrights of Terry Jones and",
+			"are used with permission.",
+			"Licensed by Nelvana Marketing Inc.",
+			" ",
+			"Game Copyright (C) Crystal Dynamics.",
+			"All rights reserved.",
 		},
-		{   // GERMANY
-			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x69, 0x73, 0x74,
-			  0x20, 0x65, 0x69, 0x6e, 0x20, 0x57, 0x61, 0x72, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0 },
-			{ 0x76, 0x6f, 0x6e, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0 },
-			{ 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0x20, 0x69, 0x73, 0x74, 0x20,
-			  0x65, 0x69, 0x6e, 0x20, 0x67, 0x65, 0x73, 0x63, 0x68, 0x81, 0x74, 0x7a, 0x74, 0x65, 0x73, 0 },
-			{ 0x57, 0x61, 0x72, 0x65, 0x6e, 0x7a, 0x65, 0x69, 0x63, 0x68, 0x65, 0x6e, 0x20, 0x76, 0x6f, 0x6e, 0x20, 0x54, 0x65, 0x72,
-			  0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0 },
-			{ 0x75, 0x6e, 0x64, 0x20, 0x77, 0x69, 0x72, 0x64, 0x20, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x4c, 0x69, 0x7a, 0x65, 0x6e,
-			  0x7a, 0x20, 0x76, 0x65, 0x72, 0x77, 0x65, 0x6e, 0x64, 0x65, 0x74, 0x2e, 0 },
-			{ 0x4c, 0x69, 0x7a, 0x65, 0x6e, 0x7a, 0x69, 0x65, 0x72, 0x74, 0x20, 0x64, 0x75, 0x72, 0x63, 0x68, 0 },
-			{ 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e,
-			  0x63, 0x2e, 0 },
-			{ 0x20 },
-			{ 0x53, 0x70, 0x69, 0x65, 0x6c, 0x20, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0 },
-			{ 0x63, 0x20, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d,
-			  0x69, 0x63, 0x73, 0x2e, 0 },
-			{ 0x41, 0x6c, 0x6c, 0x65, 0x20, 0x52, 0x65, 0x63, 0x68, 0x74, 0x65, 0x20, 0x56, 0x6f, 0x72, 0x62, 0x65, 0x68, 0x61, 0x6c,
-			  0x74, 0x65, 0x6e, 0x2e, 0 },
+		{
+			// GERMANY
+			"Crystal Dynamics ist ein Warenzeichen",
+			"von Crystal Dynamics",
+			"Blazing Dragons ist ein gesch\x81tztes",
+			"Warenzeichen von Terry Jones",
+			"und wird unter Lizenz verwendet.",
+			"Lizenziert durch",
+			"Nelvana Marketing Inc.",
+			" ",
+			"Spiel Copyright",
+			"c 1996 Crystal Dynamics.",
+			"Alle Rechte Vorbehalten.",
 		},
 		{
 			// FRANCE
-			{ 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x20, 0x65, 0x73, 0x74,
-			  0x20, 0x75, 0x6e, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x71, 0x75, 0x65, 0 },
-			{ 0x64, 0x65, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x73, 0x2e,
-			  0x20, 0x42, 0x6c, 0x61, 0x7a, 0x69, 0x6e, 0x67, 0x20, 0x44, 0x72, 0x61, 0x67, 0x6f, 0x6e, 0x73, 0 },
-			{ 0x65, 0x73, 0x74, 0x20, 0x75, 0x6e, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x71, 0x75, 0x65, 0x20, 0x65, 0x74, 0x20, 0x75, 0x6e,
-			  0x20, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x64, 0x65, 0 },
-			{ 0x54, 0x65, 0x72, 0x72, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x65, 0x74, 0x20, 0x65, 0x73, 0x74, 0x20, 0x75,
-			  0x74, 0x69, 0x6c, 0x69, 0x73, 0x82, 0x20, 0x61, 0x76, 0x65, 0x63, 0 },
-			{ 0x73, 0x61, 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0 },
-			{ 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x64, 0x65, 0x20, 0x4e, 0x65, 0x6c, 0x76, 0x61, 0x6e, 0x61, 0x20, 0x4d,
-			  0x61, 0x72, 0x6b, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0 },
-			{ 0x20 },
-			{ 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x44, 0x75, 0x20, 0x4a, 0x65, 0x75, 0 },
-			{ 0x63, 0x31, 0x39, 0x39, 0x36, 0x20, 0x43, 0x72, 0x79, 0x73, 0x74, 0x61, 0x6c, 0x20, 0x44, 0x79, 0x6e, 0x61, 0x6d, 0x69,
-			  0x63, 0x73, 0x2e, 0 },
-			{ 0x54, 0x6f, 0x75, 0x73, 0x20, 0x44, 0x72, 0x6f, 0x69, 0x64, 0x73, 0x20, 0x52, 0x82, 0x73, 0x65, 0x72, 0x76, 0x82, 0x73,
-			  0x2e, 0 },
-			{ 0 },
-		}
+			"Crystal Dynamics est une marque",
+			"de Crystal Dynamics. Blazing Dragons",
+			"est une marque et un copyright de",
+			"Terry Jones et est utilis\x82 avec",
+			"sa permission.",
+			"Licence de Nelvana Marketing Inc.",
+			" ",
+			"Copyright Du Jeu",
+			"c1996 Crystal Dynamics.",
+			"Tous Droids R\x82serv\x82s."
+		},
 	};
 
-	uint16 menuItems[4][3][40] = {
+	const char menuItems[4][3][40] = {
 		{
 			// US
-			{ 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
-			{ 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
-			{ 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x73, 0 },
-
+			"Start",
+			"Options",
+			"Previews",
 		},
 		{
 			// UK
-			{ 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
-			{ 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
+			"Start",
+			"Options",
 		},
-		{
-			// GERMANY
-			{ 0x53, 0x74, 0x61, 0x72, 0x74, 0 },
-			{ 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x6e, 0 },
+		{	// GERMANY
+			"Start",
+			"Optionen",
 		},
 		{
 			// FRANCE
-			{ 0x44, 0x82, 0x6d, 0x61, 0x72, 0x72, 0x65, 0x72, 0 },
-			{ 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0 },
-		}
+			"D\x82marrer",
+			"Options",
+		},
 	};
 
 	if (_language == Common::EN_GRB) {
@@ -1744,8 +1708,8 @@ void DragonsEngine::mainMenu() {
 	//TODO fix palette for copyright image.
 	_screen->loadPalette(0, _cursor->getPalette()); //actor->_actorResource->getPalette());
 
-	for (int i = 0; (i < 11) && (copyright[lang_index][i][0]!=0); i++) {
-		_fontManager->addText(centerText(copyright[lang_index][i]) * 8, (y_offset + i) * 8, copyright[lang_index][i], wideStrLen(copyright[lang_index][i]), 1);
+	for (int i = 0; (i < 11) && (copyright[lang_index][i][0] != 0); i++) {
+		_fontManager->addAsciiText(centerText(&copyright[lang_index][i][0]) * 8, (y_offset + i) * 8, &copyright[lang_index][i][0], strlen(copyright[lang_index][i]), 1);
 	}
 
 	waitForFramesAllowSkip(400);
@@ -1757,8 +1721,8 @@ void DragonsEngine::mainMenu() {
 		uint16 curMenuItem = 0;
 		do {
 			for (int i = 0; i <= lastMenuItem; i++) {
-				_fontManager->addText( ((i == 0) && (lang_index != 3) ? 17 : 16) * 8, (0x12 + i) * 8, menuItems[lang_index][i], wideStrLen(menuItems[lang_index][i]),
-									  i == curMenuItem ? 0 : 1);
+				_fontManager->addAsciiText(((i == 0) && (lang_index != 3) ? 17 : 16) * 8, (0x12 + i) * 8, &menuItems[lang_index][i][0], strlen(menuItems[lang_index][i]),
+										   i == curMenuItem ? 0 : 1);
 			}
 			if (checkForDownKeyRelease() || checkForWheelDown()) {
 				if (curMenuItem < lastMenuItem) {
diff --git a/engines/dragons/font.cpp b/engines/dragons/font.cpp
index 9069720963c..8efc03b2cf7 100644
--- a/engines/dragons/font.cpp
+++ b/engines/dragons/font.cpp
@@ -261,7 +261,7 @@ void FontManager::addAsciiText(int16 x, int16 y, const char *text, uint16 length
 	}
 
 	for (int i = 0; i < length; i++) {
-		wText[i] = text[i];
+		wText[i] = text[i] & 0xFFU;
 	}
 
 	addText(x, y, wText, length, fontType);




More information about the Scummvm-git-logs mailing list