aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--devtools/create_tony/create_tony.cpp183
-rw-r--r--devtools/create_tony/create_tony.h44
-rw-r--r--devtools/create_tony/staticdata.h1370
-rw-r--r--dists/engine-data/tony.datbin0 -> 24584 bytes
-rw-r--r--engines/tony/font.cpp1426
-rw-r--r--engines/tony/tony.cpp92
-rw-r--r--engines/tony/tony.h12
7 files changed, 1710 insertions, 1417 deletions
diff --git a/devtools/create_tony/create_tony.cpp b/devtools/create_tony/create_tony.cpp
new file mode 100644
index 0000000000..f2d086c083
--- /dev/null
+++ b/devtools/create_tony/create_tony.cpp
@@ -0,0 +1,183 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * This is a utility for storing all the hardcoded data of Tony Tough in a separate
+ * data file, used by the game engine
+ */
+
+// Disable symbol overrides so that we can use system headers.
+#define FORBIDDEN_SYMBOL_ALLOW_ALL
+
+// HACK to allow building with the SDL backend on MinGW
+// see bug #1800764 "TOOLS: MinGW tools building broken"
+#ifdef main
+#undef main
+#endif // main
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "common/scummsys.h"
+#include "common/events.h"
+
+#include "create_tony.h"
+#include "staticdata.h"
+
+static void writeByte(FILE *fp, uint8 b) {
+ fwrite(&b, 1, 1, fp);
+}
+
+static void writeUint16BE(FILE *fp, uint16 value) {
+ writeByte(fp, (uint8)(value >> 8));
+ writeByte(fp, (uint8)(value & 0xFF));
+}
+
+void writeSint16BE(FILE *fp, int16 value) {
+ writeUint16BE(fp, (uint16)value);
+}
+
+static void writeUint32BE(FILE *fp, uint32 value) {
+ writeByte(fp, (uint8)(value >> 24));
+ writeByte(fp, (uint8)((value >> 16) & 0xFF));
+ writeByte(fp, (uint8)((value >> 8) & 0xFF));
+ writeByte(fp, (uint8)(value & 0xFF));
+}
+
+void writeSint32BE(FILE *fp, int32 value) {
+ writeUint32BE(fp, (uint16)value);
+}
+
+int main(int argc, char *argv[]) {
+ FILE *outFile;
+
+ outFile = fopen("tony.dat", "wb");
+
+ // Write header
+ fwrite("TONY", 4, 1, outFile);
+
+ writeByte(outFile, TONY_DAT_VER_MAJ);
+ writeByte(outFile, TONY_DAT_VER_MIN);
+
+ // game versions/variants
+ writeUint16BE(outFile, NUM_VARIANTS);
+
+ // Italian
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogIta[i]);
+ writeSint16BE(outFile, _lTableDialogIta[i]);
+ writeSint16BE(outFile, _cTableMaccIta[i]);
+ writeSint16BE(outFile, _lTableMaccIta[i]);
+ writeSint16BE(outFile, _cTableCredIta[i]);
+ writeSint16BE(outFile, _lTableCredIta[i]);
+ writeSint16BE(outFile, _cTableObjIta[i]);
+ writeSint16BE(outFile, _lTableObjIta[i]);
+ }
+
+ // Polish
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogPol[i]);
+ writeSint16BE(outFile, _lTableDialogPol[i]);
+ writeSint16BE(outFile, _cTableMaccPol[i]);
+ writeSint16BE(outFile, _lTableMaccPol[i]);
+ writeSint16BE(outFile, _cTableCredPol[i]);
+ writeSint16BE(outFile, _lTableCredPol[i]);
+ writeSint16BE(outFile, _cTableObjPol[i]);
+ writeSint16BE(outFile, _lTableObjPol[i]);
+ }
+
+ //Russian
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogRus[i]);
+ writeSint16BE(outFile, _lTableDialogRus[i]);
+ writeSint16BE(outFile, _cTableMaccRus[i]);
+ writeSint16BE(outFile, _lTableMaccRus[i]);
+ writeSint16BE(outFile, _cTableCredRus[i]);
+ writeSint16BE(outFile, _lTableCredRus[i]);
+ writeSint16BE(outFile, _cTableObjRus[i]);
+ writeSint16BE(outFile, _lTableObjRus[i]);
+ }
+
+ // Czech
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogCze[i]);
+ writeSint16BE(outFile, _lTableDialogCze[i]);
+ writeSint16BE(outFile, _cTableMaccCze[i]);
+ writeSint16BE(outFile, _lTableMaccCze[i]);
+ writeSint16BE(outFile, _cTableCredCze[i]);
+ writeSint16BE(outFile, _lTableCredCze[i]);
+ writeSint16BE(outFile, _cTableObjCze[i]);
+ writeSint16BE(outFile, _lTableObjCze[i]);
+ }
+
+ // French
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogFra[i]);
+ writeSint16BE(outFile, _lTableDialogFra[i]);
+ writeSint16BE(outFile, _cTableMaccFra[i]);
+ writeSint16BE(outFile, _lTableMaccFra[i]);
+ writeSint16BE(outFile, _cTableCredFra[i]);
+ writeSint16BE(outFile, _lTableCredFra[i]);
+ writeSint16BE(outFile, _cTableObjFra[i]);
+ writeSint16BE(outFile, _lTableObjFra[i]);
+ }
+
+ // Deutsch
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogDeu[i]);
+ writeSint16BE(outFile, _lTableDialogDeu[i]);
+ writeSint16BE(outFile, _cTableMaccDeu[i]);
+ writeSint16BE(outFile, _lTableMaccDeu[i]);
+ writeSint16BE(outFile, _cTableCredDeu[i]);
+ writeSint16BE(outFile, _lTableCredDeu[i]);
+ writeSint16BE(outFile, _cTableObjDeu[i]);
+ writeSint16BE(outFile, _lTableObjDeu[i]);
+ }
+
+ fclose(outFile);
+ return 0;
+}
+
+void writeTextArray(FILE *outFile, const char *textArray[], int nbrText) {
+ int len, len1, pad;
+ uint8 padBuf[DATAALIGNMENT];
+
+ for (int i = 0; i < DATAALIGNMENT; i++)
+ padBuf[i] = 0;
+
+ writeUint16BE(outFile, nbrText);
+ len = DATAALIGNMENT - 2;
+ for (int i = 0; i < nbrText; i++) {
+ len1 = strlen(textArray[i]) + 1;
+ pad = DATAALIGNMENT - (len1 + 2) % DATAALIGNMENT;
+ len += 2 + len1 + pad;
+ }
+ writeUint16BE(outFile, len);
+
+ fwrite(padBuf, DATAALIGNMENT - 2, 1, outFile); // padding
+ for (int i = 0; i < nbrText; i++) {
+ len = strlen(textArray[i]) + 1;
+ pad = DATAALIGNMENT - (len + 2) % DATAALIGNMENT;
+
+ writeUint16BE(outFile, len + pad + 2);
+ fwrite(textArray[i], len, 1, outFile);
+ fwrite(padBuf, pad, 1, outFile);
+ }
+}
diff --git a/devtools/create_tony/create_tony.h b/devtools/create_tony/create_tony.h
new file mode 100644
index 0000000000..cc23eca1b7
--- /dev/null
+++ b/devtools/create_tony/create_tony.h
@@ -0,0 +1,44 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef CREATE_TONY_H
+#define CREATE_TONY_H
+
+#define ARRAYSIZE(x) ((int)(sizeof(x) / sizeof(x[0])))
+
+#define DATAALIGNMENT 4
+
+#define TONY_DAT_VER_MAJ 0 // 1 byte
+#define TONY_DAT_VER_MIN 1 // 1 byte
+
+// Number of variants of the game. For the moment, it's the same
+// as the number of languages
+#define NUM_VARIANTS 6
+
+typedef unsigned char uint8;
+typedef unsigned char byte;
+typedef unsigned short uint16;
+typedef signed short int16;
+
+void writeTextArray(FILE *outFile, const char *textData[], int nbrText);
+
+#endif // CREATE_TONY_H
diff --git a/devtools/create_tony/staticdata.h b/devtools/create_tony/staticdata.h
new file mode 100644
index 0000000000..793f897aba
--- /dev/null
+++ b/devtools/create_tony/staticdata.h
@@ -0,0 +1,1370 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef STATICDATA_H
+#define STATICDATA_H
+
+const int _cTableDialogIta[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 79, -1, -1, -1, -1, -1, 87,
+ -1, 84, -1, -1, 86, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 108, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 105,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, 93, 99,
+ 107, 106, 89, 89, -1, 94, 90, -1, -1, 95,
+ -1, 104, 91, -1, -1, -1, 96, -1, 109, 92,
+ -1, -1, 97, -1, -1, 98};
+
+const int _lTableDialogIta[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13};
+
+const int _cTableDialogPol[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 124, -1, -1, 128, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 125, -1, -1, 129,
+ -1, -1, -1, 118, -1, 112, -1, -1, -1, 87,
+ -1, 84, -1, -1, 86, 126, -1, -1, -1, 119,
+ -1, -1, -1, -1, -1, 113, -1, 85, -1, -1,
+ -1, 127, -1, -1, -1, -1, -1, -1, 114, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, 120,
+ -1, 122, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, 93, 99,
+ 115, 106, 89, 89, 117, 94, 90, -1, -1, 95,
+ -1, 121, 91, 123, -1, -1, 96, -1, 109, 92,
+ -1, -1, 97, -1, -1, 98};
+
+const int _lTableDialogPol[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 12, 13, 13, 14, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 12, 13, 13, 13,
+ 13, 13, 13, 14, 13, 14, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 9,
+ 13, 13, 13, 13, 13, 16, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 12, 13,
+ 13, 13, 11, 13, 13, 13, 13, 13, 13, 10,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 12, 13, 13, 13, 12, 13, 13, 13, 13, 13,
+ 13, 11, 13, 11, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13};
+
+const int _cTableDialogRus[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 79, -1, -1, -1, -1, 136, 87,
+ -1, 84, -1, -1, 86, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 169, -1, -1, 85, -1, -1,
+ -1, -1, 130, 131, 132, 133, 134, 135, 137, 138,
+ 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
+ 149, 150, 151, 152, 153, 154, 155, 156, 158, 159,
+ 157, 160, 161, 162, 163, 164, 165, 166, 167, 168,
+ 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
+ 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
+ 191, 192, 190, 193, 194, 195};
+
+const int _lTableDialogRus[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 11, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 12, 13, 13, 13, 13, 13,
+ 13, 13, 13, 15, 15, 11, 15, 11, 15, 10,
+ 13, 13, 12, 13, 14, 14, 13, 11, 12, 12,
+ 18, 11, 13, 12, 13, 12, 17, 18, 18, 19,
+ 16, 11, 16, 14, 14, 15, 10, 12, 13, 12,
+ 12, 10, 10, 10, 11, 12, 12, 12, 12, 10,
+ 11, 10, 14, 8, 11, 11, 12, 10, 15, 16,
+ 16, 16, 14, 9, 15, 14};
+
+const int _cTableDialogCze[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 197, -1,
+ -1, 206, 200, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 212, -1, -1, 221, 215, -1,
+ -1, -1, -1, 79, -1, -1, -1, -1, -1, 87,
+ -1, 84, -1, -1, 86, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
+ -1, -1, -1, 202, -1, -1, -1, -1, 108, -1,
+ 198, 204, -1, -1, 196, 203, -1, 205, -1, 105,
+ 207, 208, -1, -1, -1, -1, 199, 209, 210, -1,
+ -1, 201, -1, -1, 88, 217, -1, -1, 93, 99,
+ 107, 106, 213, 219, -1, 94, 211, 218, -1, 220,
+ -1, 104, 222, 223, -1, -1, 96, -1, 214, 224,
+ 225, -1, 97, 216, -1, 98};
+
+const int _lTableDialogCze[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 12, 13,
+ 13, 19, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 12, 13, 13, 16, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 12, 11, 13, 13, 11, 11, 13, 15, 13, 13,
+ 10, 13, 13, 13, 13, 13, 14, 13, 13, 13,
+ 13, 11, 13, 13, 13, 15, 13, 13, 13, 13,
+ 13, 13, 12, 12, 13, 13, 12, 7, 13, 17,
+ 13, 13, 11, 11, 13, 13, 13, 13, 12, 13,
+ 13, 13, 13, 11, 13, 13};
+
+const int _cTableDialogFra[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 79, -1, -1, -1, -1, -1, 87,
+ -1, 84, -1, -1, 86, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 108, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 105,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, 226, -1, 93, 99,
+ 107, 106, 89, 227, 228, 94, 90, -1, 229, 95,
+ -1, 104, 91, -1, 232, -1, 233, -1, 109, 230,
+ -1, 231, 97, -1, -1, 98};
+
+const int _lTableDialogFra[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 15, 13, 13, 13,
+ 13, 13, 13, 12, 12, 13, 13, 13, 9, 13,
+ 13, 13, 13, 13, 11, 13, 11, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13};
+
+const int _cTableDialogDeu[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 79, -1, -1, -1, -1, -1, 87,
+ -1, 84, -1, -1, 86, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
+ -1, -1, -1, -1, -1, -1, 236, -1, 108, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 105,
+ -1, -1, -1, -1, 237, -1, -1, -1, -1, -1,
+ 238, -1, -1, 234, 88, -1, -1, -1, 93, 99,
+ 107, 106, 89, 89, -1, 94, 90, -1, -1, 95,
+ -1, 104, 91, -1, -1, -1, 96, -1, 109, 92,
+ -1, -1, 97, -1, -1, 98};
+
+const int _lTableDialogDeu[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 15, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13};
+
+const int _cTableMaccIta[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 86, -1, -1, -1, 87, 88,
+ -1, 101, 89, -1, -1, 90, 92, -1, -1, 93,
+ -1, 76, 95, -1, -1, -1, 96, -1, -1, 98,
+ -1, -1, 99, -1, -1, 85};
+
+const int _lTableMaccIta[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableMaccPol[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 114, -1, -1, 118, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 115, -1, -1, 119,
+ -1, -1, -1, 108, -1, 102, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, 109,
+ -1, -1, -1, -1, -1, 103, -1, -1, -1, -1,
+ -1, 117, -1, -1, -1, -1, -1, -1, 104, -1,
+ -1, -1, 106, -1, -1, -1, -1, -1, -1, 110,
+ -1, 112, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 86, -1, -1, -1, 87, 88,
+ 105, 101, 89, -1, 107, 90, 92, -1, -1, 93,
+ -1, 111, 95, 113, -1, -1, 96, -1, -1, 98,
+ -1, -1, 99, -1, -1, 85};
+
+const int _lTableMaccPol[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 12, 10, 10, 14, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 12, 10, 10, 13,
+ 10, 10, 10, 14, 10, 14, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 13, 10, 10, 10, 9,
+ 10, 10, 10, 10, 10, 16, 10, 10, 10, 10,
+ 10, 13, 10, 10, 10, 10, 10, 10, 12, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 10,
+ 10, 13, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 12, 10, 10, 10, 12, 10, 10, 10, 10, 10,
+ 10, 11, 10, 11, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableMaccRus[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 126, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 159, -1, -1, -1, -1, -1,
+ -1, -1, 120, 121, 122, 123, 124, 125, 127, 128,
+ 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
+ 139, 140, 141, 142, 143, 144, 145, 146, 148, 149,
+ 147, 150, 151, 152, 153, 154, 155, 156, 157, 158,
+ 160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
+ 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
+ 181, 182, 180, 183, 184, 185};
+
+const int _lTableMaccRus[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 9, 10, 10, 10, 10, 10,
+ 10, 10, 11, 11, 11, 9, 10, 10, 11, 10,
+ 10, 10, 11, 9, 11, 10, 11, 8, 10, 10,
+ 11, 11, 11, 11, 10, 10, 10, 10, 11, 11,
+ 11, 11, 11, 11, 10, 10, 11, 10, 9, 10,
+ 10, 9, 11, 11, 11, 11, 11, 11, 10, 9,
+ 11, 10, 9, 11, 10, 11, 10, 10, 11, 11,
+ 10, 10, 10, 9, 11, 11};
+
+const int _cTableMaccCze[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 187, -1,
+ -1, 196, 190, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 202, -1, -1, 211, 205, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 192, -1, -1, -1, -1, -1, -1,
+ 188, 194, -1, -1, 186, 193, -1, 195, -1, -1,
+ 197, 198, -1, -1, -1, -1, 189, 199, 200, -1,
+ -1, 191, -1, -1, 86, 207, -1, -1, 87, 88,
+ -1, 101, 203, 209, -1, 90, 201, 208, -1, 210,
+ -1, 76, 212, 213, -1, -1, 96, -1, 204, 214,
+ 215, -1, 99, 206, -1, 85};
+
+const int _lTableMaccCze[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 11, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 9, 10, 10, 11, 9, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 11, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 9, 10, 11, 10, 10,
+ 11, 11, 10, 10, 10, 10, 11, 11, 11, 10,
+ 10, 11, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 9, 10, 11,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 11,
+ 11, 10, 10, 11, 10, 10};
+
+const int _cTableMaccFra[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 86, -1, 226, -1, 87, 88,
+ -1, 101, 228, 227, -1, 90, 92, -1, 229, 93,
+ -1, 76, 95, -1, 232, -1, 233, -1, -1, 230,
+ -1, 231, 99, -1, -1, 85};
+
+const int _lTableMaccFra[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 8, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 11,
+ 10, 11, 10, 10, 10, 10};
+
+const int _cTableMaccDeu[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 236, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 237, -1, -1, -1, -1, -1,
+ 238, -1, -1, 234, 86, -1, -1, -1, 87, 88,
+ -1, 101, 89, -1, -1, 90, 92, -1, -1, 93,
+ -1, 76, 95, -1, -1, -1, 96, -1, -1, 98,
+ -1, -1, 99, -1, -1, 85};
+
+const int _lTableMaccDeu[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 11, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableCredIta[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 77,
+ -1, 86, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 87, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 52, 53, -1, -1, -1, -1,
+ -1, 74, 56, 57, -1, -1, 60, 61, -1, -1,
+ -1, 73, 64, 65, -1, -1, -1, -1, -1, 68,
+ 69, -1, -1, -1, -1, -1};
+
+const int _lTableCredIta[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 19, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableCredPol[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 124, -1, -1, 128, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 125, -1, -1, 129,
+ -1, -1, -1, 118, -1, 112, -1, -1, -1, 77,
+ -1, 86, -1, -1, -1, 126, -1, -1, -1, 119,
+ -1, -1, -1, -1, -1, 113, -1, 87, -1, -1,
+ -1, 127, -1, -1, -1, -1, -1, -1, 114, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, 120,
+ -1, 122, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 52, 53, -1, -1, -1, -1,
+ 115, 74, 56, 57, 117, -1, 60, 61, -1, -1,
+ -1, 121, 64, 123, -1, -1, -1, -1, -1, 68,
+ 69, -1, -1, -1, -1, -1};
+
+const int _lTableCredPol[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 15, 10, 10, 15, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 14, 10, 20, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 15, 10, 10, 10, 11,
+ 10, 10, 10, 10, 10, 12, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 19, 10, 15, 10,
+ 10, 10, 15, 10, 10, 10, 10, 10, 10, 16,
+ 10, 15, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 11, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableCredRus[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 136, 77,
+ -1, 86, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 169, -1, -1, 87, -1, -1,
+ -1, -1, 130, 131, 132, 133, 134, 135, 137, 138,
+ 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
+ 149, 150, 151, 152, 153, 154, 155, 156, 158, 159,
+ 157, 160, 161, 162, 163, 164, 165, 166, 167, 168,
+ 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
+ 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
+ 191, 192, 190, 193, 194, 195};
+
+const int _lTableCredRus[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 15, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 11, 10, 10, 10, 10, 10,
+ 10, 10, 20, 16, 16, 14, 22, 15, 20, 12,
+ 16, 16, 16, 22, 18, 16, 15, 14, 13, 15,
+ 12, 14, 15, 13, 16, 14, 23, 23, 12, 16,
+ 10, 12, 20, 15, 12, 10, 10, 11, 16, 10,
+ 13, 12, 13, 13, 12, 13, 14, 11, 11, 11,
+ 12, 10, 10, 10, 11, 10, 11, 10, 15, 15,
+ 12, 16, 10, 11, 13, 11};
+
+const int _cTableCredCze[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 197, -1,
+ -1, 206, 200, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 212, -1, -1, 221, 215, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 77,
+ -1, 86, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 87, -1, -1,
+ -1, -1, -1, 202, -1, -1, -1, -1, -1, -1,
+ 198, 204, -1, -1, 196, 203, -1, 205, -1, -1,
+ 207, 208, -1, -1, -1, -1, 199, 209, 210, -1,
+ -1, 201, -1, -1, 52, 217, -1, -1, -1, -1,
+ -1, 74, 213, 219, -1, -1, 211, 218, -1, 220,
+ -1, 73, 222, 223, -1, -1, -1, -1, 214, 224,
+ 225, -1, -1, 216, -1, -1};
+
+const int _lTableCredCze[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 15, 10,
+ 10, 19, 15, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 11, 10, 10, 12, 11, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 20, 10, 10, 19, 10, 10, 10,
+ 15, 15, 10, 10, 15, 7, 10, 20, 10, 10,
+ 16, 15, 10, 10, 10, 10, 15, 13, 13, 10,
+ 10, 14, 10, 10, 10, 12, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 11, 6, 10, 15,
+ 10, 10, 11, 11, 10, 10, 10, 10, 11, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableCredFra[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 77,
+ -1, 86, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 87, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 52, 53, 226, -1, -1, -1,
+ -1, 74, 56, 227, 228, -1, 60, 61, 229, -1,
+ -1, 73, 64, 65, 232, -1, 233, -1, -1, 230,
+ 69, 231, -1, -1, -1, -1};
+
+const int _lTableCredFra[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 19, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 12, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 6, 10,
+ 10, 10, 10, 10, 11, 10, 11, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableCredDeu[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 77,
+ -1, 86, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 87, -1, -1,
+ -1, -1, -1, -1, -1, -1, 55, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 67, -1, -1, -1, -1, -1,
+ 71, -1, -1, 234, 52, 53, -1, -1, 55, -1,
+ -1, 74, 56, 57, -1, -1 , 60, 61, -1, -1,
+ -1, 73, 64, 65, -1, -1, 67, -1, -1, 68,
+ 69, -1, 71, -1, -1, -1};
+
+const int _lTableCredDeu[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 19, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 11, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableObjIta[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 52, -1, -1, -1, -1, -1, 67,
+ -1, 60, -1, -1, 66, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 61, -1, -1,
+ -1, -1, -1, 69, -1, -1, 70, 71, 68, -1,
+ 72, -1, -1, 73, 75, -1, -1, 76, -1, 65,
+ 78, -1, -1, -1, 79, -1, -1, 81, -1, -1,
+ 82, -1, -1, -1, -1, -1, -1, -1, 70, -1,
+ -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 79, -1, 62, -1,
+ -1, -1, 82, -1, -1, -1};
+
+const int _lTableObjIta[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 17,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26};
+
+const int _cTableObjPol[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 91, -1, -1, 93, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 91, -1, -1, 93,
+ -1, -1, -1, 88, -1, 85, -1, -1, -1, 67,
+ -1, 60, -1, -1, 66, 92, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, 85, -1, 61, -1, -1,
+ -1, 92, -1, 69, -1, -1, 70, 71, 86, -1,
+ 72, -1, 87, 73, 75, -1, -1, 76, -1, 89,
+ 78, 90, -1, -1, 79, -1, -1, 81, -1, -1,
+ 82, -1, -1, -1, -1, -1, -1, -1, 70, -1,
+ 86, 63, -1, -1, 87, -1, -1, -1, -1, -1,
+ -1, 89, -1, 90, -1, -1, 79, -1, 62, -1,
+ -1, -1, 82, -1, -1, -1};
+
+const int _lTableObjPol[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 15, 26, 26, 21, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 15, 26, 26, 21,
+ 26, 26, 26, 19, 26, 20, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 21, 26, 26, 26, 19,
+ 26, 26, 26, 26, 26, 20, 26, 26, 26, 26,
+ 26, 21, 26, 26, 26, 26, 26, 26, 22, 26,
+ 26, 26, 17, 26, 26, 26, 26, 26, 26, 17,
+ 26, 22, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 22, 26, 26, 26, 17, 26, 26, 26, 26, 26,
+ 26, 17, 26, 22, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26};
+
+const int _cTableObjRus[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 52, -1, 85, -1, -1, 100, 67,
+ -1, 60, -1, -1, 66, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 100, 85, -1, 61, -1, -1,
+ -1, -1, 94, 95, 96, 97, 98, 99, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
+ 113, 114, 115, 116, 117, 118, 119, 120, 122, 123,
+ 121, 124, 125, 126, 94, 95, 96, 97, 98, 99,
+ 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
+ 122, 123, 121, 124, 125, 126};
+
+const int _lTableObjRus[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 20, 26, 26, 18, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 18, 20, 26, 26, 26, 26,
+ 26, 26, 18, 18, 18, 17, 16, 18, 20, 18,
+ 18, 18, 18, 16, 18, 15, 22, 15, 18, 22,
+ 19, 16, 21, 20, 16, 16, 19, 22, 19, 19,
+ 18, 15, 18, 18, 18, 18, 18, 17, 16, 18,
+ 20, 18, 18, 18, 18, 16, 18, 15, 22, 15,
+ 18, 22, 19, 16, 21, 20, 16, 16, 19, 22,
+ 19, 19, 18, 15, 18, 18};
+
+const int _cTableObjCze[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 128, -1,
+ -1, 137, 131, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 128, -1, -1, 137, 131, -1,
+ -1, -1, -1, 52, -1, -1, -1, -1, -1, 67,
+ -1, 60, -1, -1, 66, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 61, -1, -1,
+ -1, -1, -1, 133, -1, -1, 70, 71, 68, -1,
+ 129, 135, -1, 73, 127, 134, -1, 136, -1, 65,
+ 138, 139, -1, -1, 79, -1, 130, 140, 141, -1,
+ 82, 132, -1, -1, -1, 133, -1, -1, 70, -1,
+ -1, 63, 129, 135, -1, -1, 127, 134, -1, 136,
+ -1, -1, 138, 139, -1, -1, 79, -1, 130, 140,
+ 141, -1, 82, 132, -1, -1};
+
+const int _lTableObjCze[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 15, 26,
+ 26, 24, 21, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 15, 26, 26, 24, 21, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 18, 26, 26, 26, 26, 26, 26,
+ 22, 17, 26, 26, 17, 19, 26, 23, 26, 17,
+ 17, 22, 26, 26, 26, 26, 18, 16, 16, 26,
+ 26, 16, 26, 26, 26, 18, 26, 26, 26, 26,
+ 26, 26, 22, 17, 26, 26, 17, 19, 26, 23,
+ 26, 26, 17, 22, 26, 26, 26, 26, 18, 16,
+ 16, 26, 26, 16, 26, 26};
+
+const int _cTableObjFra[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 52, -1, -1, -1, -1, -1, 67,
+ -1, 60, -1, -1, 66, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 61, -1, -1,
+ -1, -1, -1, 69, -1, -1, 70, 71, 68, -1,
+ 72, -1, -1, 73, 75, -1, -1, 76, -1, 65,
+ 78, -1, -1, -1, 79, -1, -1, 81, -1, -1,
+ 82, -1, -1, -1, 0, 0, 0, -1, 70, -1,
+ -1, 63, 4, 4, -1, -1, 8, 8, 8, -1,
+ -1, -1, 14, 14, 14, -1, 14, -1, 62, 20,
+ -1, 20, 82, -1, -1, -1};
+
+const int _lTableObjFra[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 17,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 17, 17, 17, 26, 26, 26,
+ 26, 26, 15, 15, 26, 26, 16, 16, 16, 26,
+ 26, 26, 19, 19, 19, 26, 19, 26, 26, 15,
+ 26, 15, 26, 26, 26, 26};
+
+const int _cTableObjDeu[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 52, -1, -1, -1, -1, -1, 67,
+ -1, 60, -1, -1, 66, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 61, -1, -1,
+ -1, -1, -1, 69, -1, -1, 70, 71, 68, -1,
+ 72, -1, -1, 73, 75, -1, -1, 76, -1, 65,
+ 78, -1, -1, -1, 79, -1, -1, 81, -1, -1,
+ 82, -1, -1, -1, -1, -1, -1, -1, 70, -1,
+ -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 79, -1, 62, -1,
+ -1, -1, 82, -1, -1, -1};
+
+const int _lTableObjDeu[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 17,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 142, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26};
+
+#endif
diff --git a/dists/engine-data/tony.dat b/dists/engine-data/tony.dat
new file mode 100644
index 0000000000..70a9ac8776
--- /dev/null
+++ b/dists/engine-data/tony.dat
Binary files differ
diff --git a/engines/tony/font.cpp b/engines/tony/font.cpp
index a3d253a52c..55e3b7627a 100644
--- a/engines/tony/font.cpp
+++ b/engines/tony/font.cpp
@@ -222,387 +222,10 @@ void RMFontDialog::init() {
_lDefault = 13;
_hDefault = 18;
Common::fill(&_l2Table[0][0], &_l2Table[0][0] + (256 * 256), '\0');
- for (i = 0; i < 256; i++) {
- _cTable[i] = -1;
- _lTable[i] = _lDefault;
- }
- for (i = 0; i < 26; i++)
- _cTable['A' + i] = i + 0;
-
- for (i = 0; i < 26; i++)
- _cTable['a' + i] = i + 26;
-
- for (i = 0; i < 10; i++)
- _cTable['0' + i] = i + 52;
-
- _cTable[';'] = 62;
- _cTable[','] = 63;
- _cTable['.'] = 64;
- _cTable[':'] = 65;
- _cTable['-'] = 66;
- _cTable['_'] = 67;
- _cTable['+'] = 68;
- _cTable['<'] = 69;
- _cTable['>'] = 70;
- _cTable['!'] = 71;
- //_cTable['!'] = 72; Exclamation countdown
- _cTable['?'] = 73;
- //_cTable['?'] = 74; Question down
- _cTable['('] = 75;
- _cTable[')'] = 76;
- _cTable['\"'] = 77;
- _cTable['^'] = 77;
- _cTable['/'] = 78;
- _cTable[(byte)''] = 79;
- _cTable['$'] = 80;
- _cTable['%'] = 81;
- _cTable['&'] = 82;
- _cTable['='] = 83;
- _cTable[(byte)''] = 84;
- _cTable[(byte)''] = 85;
- _cTable[(byte)''] = 86;
- _cTable[(byte)''] = 87;
- _cTable[(byte)''] = 88;
- _cTable[(byte)''] = 89;
- _cTable[(byte)''] = 89;
- _cTable[(byte)''] = 90;
- _cTable[(byte)''] = 91;
- _cTable[(byte)''] = 92;
- _cTable[(byte)''] = 93;
- _cTable[(byte)''] = 94;
- _cTable[(byte)''] = 95;
- _cTable[(byte)''] = 96;
- _cTable[(byte)''] = 97;
- _cTable[(byte)''] = 98;
- _cTable[(byte)''] = 99;
- //_cTable[' '] = 100; e circlet
- //_cTable[' '] = 101; i circlet
- //_cTable[' '] = 102; o circlet
- //_cTable[' '] = 103; u circlet
- _cTable[(byte)''] = 104;
- _cTable[(byte)''] = 105;
- _cTable[(byte)''] = 106;
- _cTable[(byte)''] = 107;
- _cTable[(byte)''] = 108;
- _cTable[(byte)''] = 109;
- //_cTable[''] = 110; integral
- _cTable['\''] = 111;
-
- // Little lengths
- _lTable[' '] = 9;
- _lTable['\''] = 5;
- _lTable['.'] = 5;
- _lTable[','] = 5;
- _lTable[':'] = 5;
- _lTable[';'] = 5;
- _lTable['!'] = 5;
- _lTable['?'] = 10;
- _lTable['\"'] = 5;
- _lTable['^'] = 5;
- _lTable['('] = 7;
- _lTable[')'] = 7;
-
- _lTable['4'] = 10;
-
- _lTable['a'] = 14;
- _lTable['b'] = 15;
- _lTable['c'] = 12;
- _lTable['e'] = 12;
- _lTable['i'] = 6;
- _lTable[''] = 6;
- _lTable['l'] = 5;
- _lTable['m'] = 16;
- _lTable['n'] = 12;
- _lTable['o'] = 11;
- _lTable['p'] = 11;
- _lTable['s'] = 12;
- _lTable['u'] = 12;
-
- _lTable['E'] = 10;
- _lTable['F'] = 11;
-
- if (g_vm->getLanguage() == Common::PL_POL) {
- // Polish characters
- //AaCcEeLlNnOoSsZzZz
- //ꣳ󌜯
-
- _cTable[(byte)''] = 112;
- _cTable[(byte)''] = 113;
- _cTable[(byte)''] = 114;
- _cTable[(byte)''] = 115;
- _cTable[(byte)''] = 116;
- _cTable[(byte)''] = 117;
- _cTable[(byte)''] = 118;
- _cTable[(byte)''] = 119;
- _cTable[(byte)''] = 120;
- _cTable[(byte)''] = 121;
- _cTable[(byte)''] = 122;
- _cTable[(byte)''] = 123;
- _cTable[(byte)''] = 124;
- _cTable[(byte)''] = 125;
- _cTable[(byte)''] = 126;
- _cTable[(byte)''] = 127;
- _cTable[(byte)''] = 128;
- _cTable[(byte)''] = 129;
-
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 13;
-
- } else if (g_vm->getLanguage() == Common::RU_RUS) {
-
- // Russian Characters
- // WARNING: The Russian font uses many of the ISO-Latin-1 font,
- // allowing for further translations. To support Tonyin other langauges,
- // these mappings could be used as a basis
-
- _cTable[(byte)''] = 130;
- _cTable[(byte)''] = 131;
- _cTable[(byte)''] = 132;
- _cTable[(byte)''] = 133;
- _cTable[(byte)''] = 134;
- _cTable[(byte)''] = 135;
- _cTable[(byte)''] = 136;
- _cTable[(byte)''] = 137;
- _cTable[(byte)''] = 138;
- _cTable[(byte)''] = 139;
- _cTable[(byte)''] = 140;
- _cTable[(byte)''] = 141;
- _cTable[(byte)''] = 142;
- _cTable[(byte)''] = 143;
- _cTable[(byte)''] = 144;
- _cTable[(byte)''] = 145;
- _cTable[(byte)''] = 146;
- _cTable[(byte)''] = 147;
- _cTable[(byte)''] = 148;
- _cTable[(byte)''] = 149;
- _cTable[(byte)''] = 150;
- _cTable[(byte)''] = 151;
- _cTable[(byte)''] = 152;
- _cTable[(byte)''] = 153;
- _cTable[(byte)''] = 154;
- _cTable[(byte)''] = 155;
- _cTable[(byte)''] = 156;
- _cTable[(byte)''] = 157;
- _cTable[(byte)''] = 158;
- _cTable[(byte)''] = 159;
- _cTable[(byte)''] = 160;
- _cTable[(byte)''] = 161;
- _cTable[(byte)''] = 162;
-
- _cTable[(byte)''] = 163;
- _cTable[(byte)''] = 164;
- _cTable[(byte)''] = 165;
- _cTable[(byte)''] = 166;
- _cTable[(byte)''] = 167;
- _cTable[(byte)''] = 168;
- _cTable[(byte)''] = 169;
- _cTable[(byte)''] = 170;
- _cTable[(byte)''] = 171;
- _cTable[(byte)''] = 172;
- _cTable[(byte)''] = 173;
- _cTable[(byte)''] = 174;
- _cTable[(byte)''] = 175;
- _cTable[(byte)''] = 176;
- _cTable[(byte)''] = 177;
- _cTable[(byte)''] = 178;
- _cTable[(byte)''] = 179;
- _cTable[(byte)''] = 180;
- _cTable[(byte)''] = 181;
- _cTable[(byte)''] = 182;
- _cTable[(byte)''] = 183;
- _cTable[(byte)''] = 184;
- _cTable[(byte)''] = 185;
- _cTable[(byte)''] = 186;
- _cTable[(byte)''] = 187;
- _cTable[(byte)''] = 188;
- _cTable[(byte)''] = 189;
- _cTable[(byte)''] = 190;
- _cTable[(byte)''] = 191;
- _cTable[(byte)''] = 192;
- _cTable[(byte)''] = 193;
- _cTable[(byte)''] = 194;
- _cTable[(byte)''] = 195;
-
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 18;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 17;
- _lTable[(byte)''] = 18;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 18;
- _lTable[(byte)''] = 19;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 14;
-
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 8;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 14;
-
- } else if (g_vm->getLanguage() == Common::CZ_CZE) {
- // Czech
- _cTable[(byte)''] = 196;
- _cTable[(byte)''] = 197;
- _cTable[(byte)''] = 198;
- _cTable[(byte)''] = 199;
- _cTable[(byte)''] = 200;
- _cTable[(byte)''] = 201;
- _cTable[(byte)''] = 202;
- _cTable[(byte)''] = 203;
- _cTable[(byte)''] = 204;
- _cTable[(byte)''] = 205;
- _cTable[(byte)''] = 206;
- _cTable[(byte)''] = 207;
- _cTable[(byte)''] = 208;
- _cTable[(byte)''] = 209;
- _cTable[(byte)''] = 210;
-
- _cTable[(byte)''] = 211;
- _cTable[(byte)''] = 212;
- _cTable[(byte)''] = 213;
- _cTable[(byte)''] = 214;
- _cTable[(byte)''] = 215;
- _cTable[(byte)''] = 216;
- _cTable[(byte)''] = 217;
- _cTable[(byte)''] = 218;
- _cTable[(byte)''] = 219;
- _cTable[(byte)''] = 220;
- _cTable[(byte)''] = 221;
- _cTable[(byte)''] = 222;
- _cTable[(byte)''] = 223;
- _cTable[(byte)''] = 224;
- _cTable[(byte)''] = 225;
-
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 19;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 13;
-
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 7;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 17;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 13;
-
- } else if (g_vm->getLanguage() == Common::FR_FRA) {
- // French
-
- _cTable[(byte)''] = 226;
- _cTable[(byte)''] = 227;
- _cTable[(byte)''] = 228;
- _cTable[(byte)''] = 229;
- _cTable[(byte)''] = 230;
- _cTable[(byte)''] = 231;
- _cTable[(byte)''] = 232;
- _cTable[(byte)''] = 233;
-
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
-
- } else if (g_vm->getLanguage() == Common::DE_DEU) {
- _cTable[(byte)''] = 234;
- // 'SS' = 235
- _cTable[(byte)''] = 236;
- _cTable[(byte)''] = 237;
- _cTable[(byte)''] = 238;
-
- _lTable[(byte)''] = 15;
+ for (i = 0; i < 256; i++) {
+ _cTable[i] = g_vm->_cTableDialog[i];
+ _lTable[i] = g_vm->_lTableDialog[i];
}
}
@@ -632,342 +255,8 @@ void RMFontMacc::init() {
Common::fill(&_l2Table[0][0], &_l2Table[0][0] + (256 * 256), '\0');
for (i = 0; i < 256; i++) {
- _cTable[i] = -1;
- _lTable[i] = _lDefault;
- }
-
- for (i = 0; i < 26; i++)
- _cTable['A' + i] = i + 0;
-
- for (i = 0; i < 26; i++)
- _cTable['a' + i] = i + 26;
-
- for (i = 0; i < 10; i++)
- _cTable['0' + i] = i + 52;
-
- _cTable['!'] = 62;
- //_cTable['!'] = 63; // ! rovescia
- _cTable['\"'] = 64;
- _cTable['$'] = 65;
- _cTable['%'] = 66;
- _cTable['&'] = 67;
- _cTable['/'] = 68;
- _cTable['('] = 69;
- _cTable[')'] = 70;
- _cTable['='] = 71;
- _cTable['?'] = 72;
- //_cTable['?'] = 73; // ? rovescia
- _cTable['*'] = 74;
- _cTable['+'] = 75;
- _cTable[(byte)''] = 76;
- _cTable[';'] = 77;
- _cTable[','] = 78;
- _cTable['.'] = 79;
- _cTable[':'] = 80;
- _cTable['-'] = 81;
- _cTable['<'] = 82;
- _cTable['>'] = 83;
- _cTable['/'] = 84;
- _cTable[(byte)''] = 85;
- _cTable[(byte)''] = 86;
- _cTable[(byte)''] = 87;
- _cTable[(byte)''] = 88;
- _cTable[(byte)''] = 89;
- _cTable[(byte)''] = 90;
- //_cTable[(byte)''] = 91; // e with ball
- _cTable[(byte)''] = 92;
- _cTable[(byte)''] = 93;
- //_cTable[(byte)''] = 94; // i with ball
- _cTable[(byte)''] = 95;
- _cTable[(byte)''] = 96;
- //_cTable[(byte)''] = 97; // o with ball
- _cTable[(byte)''] = 98;
- _cTable[(byte)''] = 99;
- //_cTable[(byte)''] = 100; // u with ball
- _cTable[(byte)''] = 101;
-
- if (g_vm->getLanguage() == Common::PL_POL) {
- // Polish characters
- //AaCcEeLlNnOoSsZzZz
- //ꣳ󌜯
-
- _cTable[(byte)''] = 102;
- _cTable[(byte)''] = 103;
- _cTable[(byte)''] = 104;
- _cTable[(byte)''] = 105;
- _cTable[(byte)''] = 106;
- _cTable[(byte)''] = 107;
- _cTable[(byte)''] = 108;
- _cTable[(byte)''] = 109;
- _cTable[(byte)''] = 110;
- _cTable[(byte)''] = 111;
- _cTable[(byte)''] = 112;
- _cTable[(byte)''] = 113;
- _cTable[(byte)''] = 114;
- _cTable[(byte)''] = 115;
- _cTable[(byte)''] = 116;
- _cTable[(byte)''] = 117;
- _cTable[(byte)''] = 118;
- _cTable[(byte)''] = 119;
-
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 13;
-
- } else if (g_vm->getLanguage() == Common::RU_RUS) {
- // Russian Characters
- // WARNING: The Russian font uses many of the ISO-Latin-1 font,
- // allowing for further translations. To support Tonyin other langauges,
- // these mappings could be used as a basis
- _cTable[(byte)''] = 120;
- _cTable[(byte)''] = 121;
- _cTable[(byte)''] = 122;
- _cTable[(byte)''] = 123;
- _cTable[(byte)''] = 124;
- _cTable[(byte)''] = 125;
- _cTable[(byte)''] = 126;
- _cTable[(byte)''] = 127;
- _cTable[(byte)''] = 128;
- _cTable[(byte)''] = 129;
- _cTable[(byte)''] = 130;
- _cTable[(byte)''] = 131;
- _cTable[(byte)''] = 132;
- _cTable[(byte)''] = 133;
- _cTable[(byte)''] = 134;
- _cTable[(byte)''] = 135;
- _cTable[(byte)''] = 136;
- _cTable[(byte)''] = 137;
- _cTable[(byte)''] = 138;
- _cTable[(byte)''] = 139;
- _cTable[(byte)''] = 140;
- _cTable[(byte)''] = 141;
- _cTable[(byte)''] = 142;
- _cTable[(byte)''] = 143;
- _cTable[(byte)''] = 144;
- _cTable[(byte)''] = 145;
- _cTable[(byte)''] = 146;
- _cTable[(byte)''] = 147;
- _cTable[(byte)''] = 148;
- _cTable[(byte)''] = 149;
- _cTable[(byte)''] = 150;
- _cTable[(byte)''] = 151;
- _cTable[(byte)''] = 152;
-
- _cTable[(byte)''] = 153;
- _cTable[(byte)''] = 154;
- _cTable[(byte)''] = 155;
- _cTable[(byte)''] = 156;
- _cTable[(byte)''] = 157;
- _cTable[(byte)''] = 158;
- _cTable[(byte)''] = 159;
- _cTable[(byte)''] = 160;
- _cTable[(byte)''] = 161;
- _cTable[(byte)''] = 162;
- _cTable[(byte)''] = 163;
- _cTable[(byte)''] = 164;
- _cTable[(byte)''] = 165;
- _cTable[(byte)''] = 166;
- _cTable[(byte)''] = 167;
- _cTable[(byte)''] = 168;
- _cTable[(byte)''] = 169;
- _cTable[(byte)''] = 170;
- _cTable[(byte)''] = 171;
- _cTable[(byte)''] = 172;
- _cTable[(byte)''] = 173;
- _cTable[(byte)''] = 174;
- _cTable[(byte)''] = 175;
- _cTable[(byte)''] = 176;
- _cTable[(byte)''] = 177;
- _cTable[(byte)''] = 178;
- _cTable[(byte)''] = 179;
- _cTable[(byte)''] = 180;
- _cTable[(byte)''] = 181;
- _cTable[(byte)''] = 182;
- _cTable[(byte)''] = 183;
- _cTable[(byte)''] = 184;
- _cTable[(byte)''] = 185;
-
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 8;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
-
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
-
- } else if (g_vm->getLanguage() == Common::CZ_CZE) {
- // Czech
-
- _cTable[(byte)''] = 186;
- _cTable[(byte)''] = 187;
- _cTable[(byte)''] = 188;
- _cTable[(byte)''] = 189;
- _cTable[(byte)''] = 190;
- _cTable[(byte)''] = 191;
- _cTable[(byte)''] = 192;
- _cTable[(byte)''] = 193;
- _cTable[(byte)''] = 194;
- _cTable[(byte)''] = 195;
- _cTable[(byte)''] = 196;
- _cTable[(byte)''] = 197;
- _cTable[(byte)''] = 198;
- _cTable[(byte)''] = 199;
- _cTable[(byte)''] = 200;
-
- _cTable[(byte)''] = 201;
- _cTable[(byte)''] = 202;
- _cTable[(byte)''] = 203;
- _cTable[(byte)''] = 204;
- _cTable[(byte)''] = 205;
- _cTable[(byte)''] = 206;
- _cTable[(byte)''] = 207;
- _cTable[(byte)''] = 208;
- _cTable[(byte)''] = 209;
- _cTable[(byte)''] = 210;
- _cTable[(byte)''] = 211;
- _cTable[(byte)''] = 212;
- _cTable[(byte)''] = 213;
- _cTable[(byte)''] = 214;
- _cTable[(byte)''] = 215;
-
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
-
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 9;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
-
- } else if (g_vm->getLanguage() == Common::FR_FRA) {
- // French
-
- _cTable[(byte)''] = 226;
- _cTable[(byte)''] = 227;
- _cTable[(byte)''] = 228;
- _cTable[(byte)''] = 229;
- _cTable[(byte)''] = 230;
- _cTable[(byte)''] = 231;
- _cTable[(byte)''] = 232;
- _cTable[(byte)''] = 233;
-
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 8;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
-
- } else if (g_vm->getLanguage() == Common::DE_DEU) {
- // German
-
- _cTable[(byte)''] = 234;
- // 'SS' = 235
- _cTable[(byte)''] = 236;
- _cTable[(byte)''] = 237;
- _cTable[(byte)''] = 238;
-
- _lTable[(byte)''] = 11;
+ _cTable[i] = g_vm->_cTableMacc[i];
+ _lTable[i] = g_vm->_lTableMacc[i];
}
}
@@ -996,430 +285,8 @@ void RMFontCredits::init() {
Common::fill(&_l2Table[0][0], &_l2Table[0][0] + (256 * 256), '\0');
for (i = 0; i < 256; i++) {
- _cTable[i] = -1;
- _lTable[i] = _lDefault;
- }
-
- for (i = 0; i < 26; i++)
- _cTable['A' + i] = i + 0;
-
- for (i = 0; i < 26; i++)
- _cTable['a' + i] = i + 26;
-
-
-
- _cTable[(byte)''] = 52;
- _cTable[(byte)''] = 53;
-// _cTable[''] = 54; // a ^
-// _cTable[''] = 55; // a pallini
- _cTable[(byte)''] = 56;
- _cTable[(byte)''] = 57;
-// _cTable[''] = 58; // e ^
-// _cTable[''] = 59; // e pallini
- _cTable[(byte)''] = 60;
- _cTable[(byte)''] = 61;
-// _cTable[''] = 62; // i ^
-// _cTable[''] = 63; // i pallini
- _cTable[(byte)''] = 64;
- _cTable[(byte)''] = 65;
-// _cTable[''] = 66; // o ^
-// _cTable[''] = 67; // o pallini
- _cTable[(byte)''] = 68;
- _cTable[(byte)''] = 69;
-// _cTable[''] = 70; // u ^
-// _cTable[''] = 71; // u pallini
-// _cTable[''] = 72; // y pallini
- _cTable[(byte)''] = 73;
- _cTable[(byte)''] = 74;
-// _cTable[''] = 75; // o barrato
-// _cTable[''] = 76; // ac
- _cTable[(byte)''] = 77;
-// _cTable[''] = 78; // ? rovesciato
- _cTable['?'] = 79;
-// _cTable[''] = 80; // ! rovesciato
- _cTable['!'] = 81;
-// _cTable[''] = 82; // 1/2
-// _cTable[''] = 83; // 1/4
- _cTable['('] = 84;
- _cTable[')'] = 85;
- _cTable[(byte)''] = 86;
- _cTable[(byte)''] = 87;
-// _cTable[''] = 88; // AE
- _cTable[':'] = 89;
- _cTable['%'] = 90;
- _cTable['&'] = 91;
- _cTable['/'] = 92;
- _cTable['+'] = 93;
- _cTable[';'] = 94;
- _cTable[','] = 95;
- _cTable['^'] = 96;
- _cTable['='] = 97;
- _cTable['_'] = 98;
- _cTable['*'] = 99;
- _cTable['.'] = 100;
-
- for (i = 0; i < 10; i++)
- _cTable['0' + i] = i + 101;
- _cTable['\''] = 111;
-
- _lTable[' '] = 11;
- _lTable[(byte)''] = _lTable['A'] = 19;
- _lTable['B'] = 15;
- _lTable['C'] = 14;
- _lTable['D'] = 13;
- _lTable['E'] = 14;
- _lTable['F'] = 13;
- _lTable['G'] = 16;
- _lTable['H'] = 15;
- _lTable['I'] = 5;
- _lTable['J'] = 8;
- _lTable['K'] = 15;
- _lTable['L'] = 13;
- _lTable['M'] = 17;
- _lTable['N'] = 15;
- _lTable[''] = _lTable['O'] = 14;
- _lTable['P'] = 12;
- _lTable['Q'] = 14;
- _lTable['R'] = 14;
- _lTable['S'] = 15;
- _lTable['T'] = 11;
- _lTable[''] = _lTable['U'] = 12;
- _lTable['V'] = 12;
- _lTable['W'] = 16;
- _lTable['X'] = 12;
- _lTable['Y'] = 13;
- _lTable['Z'] = 14;
-
- _lTable['a'] = 11;
- _lTable['b'] = 9;
- _lTable['c'] = 9;
- _lTable['d'] = 10;
- _lTable['e'] = 9;
- _lTable['f'] = 8;
- _lTable['g'] = 9;
- _lTable['h'] = 10;
- _lTable['i'] = 5;
- _lTable['j'] = 6;
- _lTable['k'] = 12;
- _lTable['l'] = 6;
- _lTable['m'] = 14;
- _lTable['n'] = 10;
- _lTable['o'] = 11;
- _lTable['p'] = 11;
- _lTable['q'] = 9;
- _lTable['r'] = 9;
- _lTable['s'] = 9;
- _lTable['t'] = 6;
- _lTable['u'] = 9;
- _lTable['v'] = 10;
- _lTable['w'] = 14;
- _lTable['x'] = 9;
- _lTable['y'] = 10;
- _lTable['z'] = 9;
-
- _lTable['0'] = 12;
- _lTable['1'] = 8;
- _lTable['2'] = 10;
- _lTable['3'] = 11;
- _lTable['4'] = 12;
- _lTable['5'] = 11;
- _lTable['6'] = 12;
- _lTable['7'] = 10;
- _lTable['8'] = 11;
- _lTable['9'] = 10;
-
- _lTable['/'] = 10;
- _lTable['^'] = 9;
- _lTable[','] = 5;
- _lTable['.'] = 5;
- _lTable[';'] = 5;
- _lTable[':'] = 5;
- _lTable['\''] = 5;
-
- if (g_vm->getLanguage() == Common::PL_POL) {
- // Polish characters
- //AaCcEeLlNnOoSsZzZz
- //ꣳ󌜯
-
- _cTable[(byte)''] = 112;
- _cTable[(byte)''] = 113;
- _cTable[(byte)''] = 114;
- _cTable[(byte)''] = 115;
- _cTable[(byte)''] = 116;
- _cTable[(byte)''] = 117;
- _cTable[(byte)''] = 118;
- _cTable[(byte)''] = 119;
- _cTable[(byte)''] = 120;
- _cTable[(byte)''] = 121;
- _cTable[(byte)''] = 122;
- _cTable[(byte)''] = 123;
- _cTable[(byte)''] = 124;
- _cTable[(byte)''] = 125;
- _cTable[(byte)''] = 126;
- _cTable[(byte)''] = 127;
- _cTable[(byte)''] = 128;
- _cTable[(byte)''] = 129;
-
- _lTable[(byte)''] = 20;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 10;
-
- } else if (g_vm->getLanguage() == Common::RU_RUS) {
- // Russian Characters
- // WARNING: The Russian font uses many of the ISO-Latin-1 font,
- // allowing for further translations. To support Tonyin other langauges,
- // these mappings could be used as a basis
- _cTable[(byte)''] = 130;
- _cTable[(byte)''] = 131;
- _cTable[(byte)''] = 132;
- _cTable[(byte)''] = 133;
- _cTable[(byte)''] = 134;
- _cTable[(byte)''] = 135;
- _cTable[(byte)''] = 136;
- _cTable[(byte)''] = 137;
- _cTable[(byte)''] = 138;
- _cTable[(byte)''] = 139;
- _cTable[(byte)''] = 140;
- _cTable[(byte)''] = 141;
- _cTable[(byte)''] = 142;
- _cTable[(byte)''] = 143;
- _cTable[(byte)''] = 144;
- _cTable[(byte)''] = 145;
- _cTable[(byte)''] = 146;
- _cTable[(byte)''] = 147;
- _cTable[(byte)''] = 148;
- _cTable[(byte)''] = 149;
- _cTable[(byte)''] = 150;
- _cTable[(byte)''] = 151;
- _cTable[(byte)''] = 152;
- _cTable[(byte)''] = 153;
- _cTable[(byte)''] = 154;
- _cTable[(byte)''] = 155;
- _cTable[(byte)''] = 156;
- _cTable[(byte)''] = 157;
- _cTable[(byte)''] = 158;
- _cTable[(byte)''] = 159;
- _cTable[(byte)''] = 160;
- _cTable[(byte)''] = 161;
- _cTable[(byte)''] = 162;
-
- _cTable[(byte)''] = 163;
- _cTable[(byte)''] = 164;
- _cTable[(byte)''] = 165;
- _cTable[(byte)''] = 166;
- _cTable[(byte)''] = 167;
- _cTable[(byte)''] = 168;
- _cTable[(byte)''] = 169;
- _cTable[(byte)''] = 170;
- _cTable[(byte)''] = 171;
- _cTable[(byte)''] = 172;
- _cTable[(byte)''] = 173;
- _cTable[(byte)''] = 174;
- _cTable[(byte)''] = 175;
- _cTable[(byte)''] = 176;
- _cTable[(byte)''] = 177;
- _cTable[(byte)''] = 178;
- _cTable[(byte)''] = 179;
- _cTable[(byte)''] = 180;
- _cTable[(byte)''] = 181;
- _cTable[(byte)''] = 182;
- _cTable[(byte)''] = 183;
- _cTable[(byte)''] = 184;
- _cTable[(byte)''] = 185;
- _cTable[(byte)''] = 186;
- _cTable[(byte)''] = 187;
- _cTable[(byte)''] = 188;
- _cTable[(byte)''] = 189;
- _cTable[(byte)''] = 190;
- _cTable[(byte)''] = 191;
- _cTable[(byte)''] = 192;
- _cTable[(byte)''] = 193;
- _cTable[(byte)''] = 194;
- _cTable[(byte)''] = 195;
-
- _lTable[(byte)''] = 20;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 22;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 20;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 22;
- _lTable[(byte)''] = 18;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 23;
- _lTable[(byte)''] = 23;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 20;
- _lTable[(byte)''] = 15;
-
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 11;
-
- } else if (g_vm->getLanguage() == Common::CZ_CZE) {
- // CZECH Language
-
- _cTable[(byte)''] = 196;
- _cTable[(byte)''] = 197;
- _cTable[(byte)''] = 198;
- _cTable[(byte)''] = 199;
- _cTable[(byte)''] = 200;
- _cTable[(byte)''] = 201;
- _cTable[(byte)''] = 202;
- _cTable[(byte)''] = 203;
- _cTable[(byte)''] = 204;
- _cTable[(byte)''] = 205;
- _cTable[(byte)''] = 206;
- _cTable[(byte)''] = 207;
- _cTable[(byte)''] = 208;
- _cTable[(byte)''] = 209;
- _cTable[(byte)''] = 210;
-
- _cTable[(byte)''] = 211;
- _cTable[(byte)''] = 212;
- _cTable[(byte)''] = 213;
- _cTable[(byte)''] = 214;
- _cTable[(byte)''] = 215;
- _cTable[(byte)''] = 216;
- _cTable[(byte)''] = 217;
- _cTable[(byte)''] = 218;
- _cTable[(byte)''] = 219;
- _cTable[(byte)''] = 220;
- _cTable[(byte)''] = 221;
- _cTable[(byte)''] = 222;
- _cTable[(byte)''] = 223;
- _cTable[(byte)''] = 224;
- _cTable[(byte)''] = 225;
-
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 14;
- _lTable[(byte)''] = 20;
- _lTable[(byte)''] = 7;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 20;
- _lTable[(byte)''] = 19;
- _lTable[(byte)''] = 16;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 13;
- _lTable[(byte)''] = 13;
-
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 6;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 15;
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
-
- } else if (g_vm->getLanguage() == Common::FR_FRA) {
- // French
-
- _cTable[(byte)''] = 226;
- _cTable[(byte)''] = 227;
- _cTable[(byte)''] = 228;
- _cTable[(byte)''] = 229;
- _cTable[(byte)''] = 230;
- _cTable[(byte)''] = 231;
- _cTable[(byte)''] = 232;
- _cTable[(byte)''] = 233;
-
- _lTable[(byte)''] = 12;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 6;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 10;
- _lTable[(byte)''] = 11;
- _lTable[(byte)''] = 11;
-
- } else if (g_vm->getLanguage() == Common::DE_DEU) {
- // German
-
- _cTable[(byte)''] = 234;
- // 'SS' = 235
-
- // old chars overrides
- _cTable[(byte)''] = _cTable[(byte)''] = 55;
- _cTable[(byte)''] = _cTable[(byte)''] = 67;
- _cTable[(byte)''] = _cTable[(byte)''] = 71;
-
- _lTable[(byte)''] = 11;
+ _cTable[i] = g_vm->_cTableCred[i];
+ _lTable[i] = g_vm->_lTableCred[i];
}
}
@@ -1461,112 +328,10 @@ void RMFontObj::init() {
Common::fill(&_l2Table[0][0], &_l2Table[0][0] + (256 * 256), '\0');
for (i = 0; i < 256; i++) {
- _cTable[i] = -1;
- _lTable[i] = _lDefault;
- }
-
- for (i = 0; i < 26; i++) {
- _cTable['A' + i] = i + 0;
- _cTable['a' + i] = i + 0;
+ _cTable[i] = g_vm->_cTableObj[i];
+ _lTable[i] = g_vm->_lTableObj[i];
}
- for (i = 0; i < 10; i++)
- _cTable['0' + i] = i + 26;
-
- _cTable[','] = 36;
- _cTable[';'] = 37;
- _cTable['.'] = 38;
- _cTable[':'] = 39;
- _cTable['-'] = 40;
- _cTable['+'] = 41;
- _cTable['!'] = 42;
- // _cTable['!'] = 43; Exclamation countdown
- _cTable['?'] = 44;
- // _cTable['?'] = 45; Interrogativo alla rovescia
- _cTable['/'] = 46;
- _cTable['('] = 47;
- _cTable[')'] = 48;
- _cTable['='] = 49;
- _cTable['\''] = 50;
- _cTable['\"'] = 51;
- _cTable[(byte)''] = 52;
- _cTable[(byte)'$'] = 53;
- _cTable[(byte)'%'] = 54;
- _cTable[(byte)'&'] = 55;
- _cTable[(byte)'^'] = 56;
- _cTable[(byte)'*'] = 57;
- _cTable[(byte)'<'] = 58;
- _cTable[(byte)'>'] = 59;
- _cTable[(byte)''] = 60;
- _cTable[(byte)''] = 61;
- _cTable[(byte)''] = 62;
- _cTable[(byte)''] = 63;
- //_cTable[(byte)''] = 64; integral
- _cTable[(byte)''] = 65;
- _cTable[(byte)''] = 66;
- _cTable[(byte)''] = 67;
- _cTable[(byte)''] = 68;
- _cTable[(byte)''] = 69;
- _cTable[(byte)''] = _cTable[(byte)''] = 70;
- _cTable[(byte)''] = 71;
- _cTable[(byte)''] = 72;
- _cTable[(byte)''] = 73;
- //_cTable[(byte)' '] = 74; e circlet
- _cTable[(byte)''] = 75;
- _cTable[(byte)''] = 76;
- //_cTable[(byte)' '] = 77; i circlet
- _cTable[(byte)''] = 78;
- _cTable[(byte)''] = _cTable[(byte)''] = 79;
- //_cTable[(byte)' '] = 80; o circlet
- _cTable[(byte)''] = 81;
- _cTable[(byte)''] = _cTable[(byte)''] = 82;
- //_cTable[' '] = 83; u circlet
- //_cTable[' '] = 84; y dieresi
-
- /* Little lengths */
- _lTable[' '] = 11;
- _lTable['.'] = 8;
- _lTable['-'] = 12;
- _lTable['\''] = 8;
- _lTable['0'] = 20;
- _lTable['1'] = 20;
- _lTable['2'] = 15;
- _lTable['3'] = 20;
- _lTable['4'] = 20;
- _lTable['5'] = 20;
- _lTable['6'] = 20;
- _lTable['7'] = 20;
- _lTable['8'] = 20;
- _lTable['9'] = 20;
-
-
- _lTable['a'] = _lTable['A'] = _lTable[''] = _lTable[''] = 17;
- _lTable['b'] = _lTable['B'] = 17;
- _lTable['c'] = _lTable['C'] = 19;
- _lTable['d'] = _lTable['D'] = 17;
- _lTable['e'] = _lTable['E'] = 15;
- _lTable['f'] = _lTable['F'] = 17;
- _lTable['g'] = _lTable['G'] = 19;
- _lTable['i'] = _lTable['I'] = 16;
- _lTable['h'] = _lTable['H'] = 17;
- _lTable['k'] = _lTable['K'] = 17;
- _lTable['l'] = _lTable['L'] = 14;
- _lTable['m'] = _lTable['M'] = 19;
- _lTable['n'] = _lTable['N'] = 17;
- _lTable['o'] = _lTable['O'] = _lTable[''] = _lTable[''] = 19;
- _lTable['p'] = _lTable['P'] = 17;
- _lTable['q'] = _lTable['Q'] = 19;
- _lTable['r'] = _lTable['R'] = 14;
- _lTable['s'] = _lTable['S'] = 13;
- _lTable['t'] = _lTable['T'] = 15;
- _lTable['u'] = _lTable['U'] = _lTable[''] = _lTable[''] = 15;
- _lTable['v'] = _lTable['V'] = 13;
- _lTable['x'] = _lTable['X'] = 15;
- _lTable['y'] = _lTable['Y'] = 13;
- _lTable['w'] = _lTable['W'] = 19;
- _lTable['z'] = _lTable['Z'] = 20;
- _lTable[(byte)''] = 17;
-
/* Casi particolari */
setBothCase('C', 'C', 2);
setBothCase('A', 'T', -2);
@@ -1579,179 +344,6 @@ void RMFontObj::init() {
setBothCase('Z', 'A', -1);
setBothCase('R', 'R', 1);
setBothCase('R', 'U', 3);
-
- if (g_vm->getLanguage() == Common::PL_POL) {
- // Polish characters
- //ꣳ󌜯
- //AaCcEeLlNnOoSsZzZz
- _cTable[(byte)''] = _cTable[(byte)''] = 85;
- _lTable[(byte)''] = _lTable[(byte)''] = 20;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 86;
- _lTable[(byte)''] = _lTable[(byte)''] = 22;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 87;
- _lTable[(byte)''] = _lTable[(byte)''] = 17;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 88;
- _lTable[(byte)''] = _lTable[(byte)''] = 19;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 89;
- _lTable[(byte)''] = _lTable[(byte)''] = 17;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 90;
- _lTable[(byte)''] = _lTable[(byte)''] = 22;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 91;
- _lTable[(byte)''] = _lTable[(byte)''] = 15;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 92;
- _lTable[(byte)''] = _lTable[(byte)''] = 21;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 93;
- _lTable[(byte)''] = _lTable[(byte)''] = 21;
-
- } else if (g_vm->getLanguage() == Common::RU_RUS) {
- // Russian Characters
- // WARNING: The Russian font uses many of the ISO-Latin-1 font,
- // allowing for further translations. To support Tonyin other langauges,
- // these mappings could be used as a basis
-
- _cTable[(byte)''] = _cTable[(byte)''] = 85;
- _lTable[(byte)''] = _lTable[(byte)''] = 20;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 94;
- _cTable[(byte)''] = _cTable[(byte)''] = 95;
- _cTable[(byte)''] = _cTable[(byte)''] = 96;
- _cTable[(byte)''] = _cTable[(byte)''] = 97;
- _cTable[(byte)''] = _cTable[(byte)''] = 98;
- _cTable[(byte)''] = _cTable[(byte)''] = 99;
- _cTable[(byte)''] = _cTable[(byte)''] = 100;
- _cTable[(byte)''] = _cTable[(byte)''] = 101;
- _cTable[(byte)''] = _cTable[(byte)''] = 102;
- _cTable[(byte)''] = _cTable[(byte)''] = 103;
- _cTable[(byte)''] = _cTable[(byte)''] = 104;
- _cTable[(byte)''] = _cTable[(byte)''] = 105;
- _cTable[(byte)''] = _cTable[(byte)''] = 106;
- _cTable[(byte)''] = _cTable[(byte)''] = 107;
- _cTable[(byte)''] = _cTable[(byte)''] = 108;
- _cTable[(byte)''] = _cTable[(byte)''] = 109;
- _cTable[(byte)''] = _cTable[(byte)''] = 110;
- _cTable[(byte)''] = _cTable[(byte)''] = 111;
- _cTable[(byte)''] = _cTable[(byte)''] = 112;
- _cTable[(byte)''] = _cTable[(byte)''] = 113;
- _cTable[(byte)''] = _cTable[(byte)''] = 114;
- _cTable[(byte)''] = _cTable[(byte)''] = 115;
- _cTable[(byte)''] = _cTable[(byte)''] = 116;
- _cTable[(byte)''] = _cTable[(byte)''] = 117;
- _cTable[(byte)''] = _cTable[(byte)''] = 118;
- _cTable[(byte)''] = _cTable[(byte)''] = 119;
- _cTable[(byte)''] = _cTable[(byte)''] = 120;
- _cTable[(byte)''] = _cTable[(byte)''] = 121;
- _cTable[(byte)''] = _cTable[(byte)''] = 122;
- _cTable[(byte)''] = _cTable[(byte)''] = 123;
- _cTable[(byte)''] = _cTable[(byte)''] = 124;
- _cTable[(byte)''] = _cTable[(byte)''] = 125;
- _cTable[(byte)''] = _cTable[(byte)''] = 126;
-
-
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 17;
- _lTable[(byte)''] = _lTable[(byte)''] = 16;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 20;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 16;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 15;
- _lTable[(byte)''] = _lTable[(byte)''] = 22;
- _lTable[(byte)''] = _lTable[(byte)''] = 15;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 22;
- _lTable[(byte)''] = _lTable[(byte)''] = 19;
- _lTable[(byte)''] = _lTable[(byte)''] = 16;
- _lTable[(byte)''] = _lTable[(byte)''] = 21;
- _lTable[(byte)''] = _lTable[(byte)''] = 20;
- _lTable[(byte)''] = _lTable[(byte)''] = 16;
- _lTable[(byte)''] = _lTable[(byte)''] = 16;
- _lTable[(byte)''] = _lTable[(byte)''] = 19;
- _lTable[(byte)''] = _lTable[(byte)''] = 22;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 19;
- _lTable[(byte)''] = _lTable[(byte)''] = 19;
- _lTable[(byte)''] = _lTable[(byte)''] = 15;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
-
- } else if (g_vm->getLanguage() == Common::CZ_CZE) {
- // Czech
-
- _cTable[(byte)''] = _cTable[(byte)''] = 127;
- _cTable[(byte)''] = _cTable[(byte)''] = 128;
- _cTable[(byte)''] = _cTable[(byte)''] = 129;
- _cTable[(byte)''] = _cTable[(byte)''] = 130;
- _cTable[(byte)''] = _cTable[(byte)''] = 131;
- _cTable[(byte)''] = _cTable[(byte)''] = 132;
- _cTable[(byte)''] = _cTable[(byte)''] = 133;
- _cTable[(byte)''] = _cTable[(byte)''] = 134;
- _cTable[(byte)''] = _cTable[(byte)''] = 135;
- _cTable[(byte)''] = _cTable[(byte)''] = 136;
- _cTable[(byte)''] = _cTable[(byte)''] = 137;
- _cTable[(byte)''] = _cTable[(byte)''] = 138;
- _cTable[(byte)''] = _cTable[(byte)''] = 139;
- _cTable[(byte)''] = _cTable[(byte)''] = 140;
- _cTable[(byte)''] = _cTable[(byte)''] = 141;
-
- _lTable[(byte)''] = _lTable[(byte)''] = 17;
- _lTable[(byte)''] = _lTable[(byte)''] = 15;
- _lTable[(byte)''] = _lTable[(byte)''] = 22;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 21;
- _lTable[(byte)''] = _lTable[(byte)''] = 16;
- _lTable[(byte)''] = _lTable[(byte)''] = 18;
- _lTable[(byte)''] = _lTable[(byte)''] = 19;
- _lTable[(byte)''] = _lTable[(byte)''] = 17;
- _lTable[(byte)''] = _lTable[(byte)''] = 23;
- _lTable[(byte)''] = _lTable[(byte)''] = 24;
- _lTable[(byte)''] = _lTable[(byte)''] = 17;
- _lTable[(byte)''] = _lTable[(byte)''] = 22;
- _lTable[(byte)''] = _lTable[(byte)''] = 16;
- _lTable[(byte)''] = _lTable[(byte)''] = 16;
-
- } else if (g_vm->getLanguage() == Common::FR_FRA) {
- // French
-
- // Translate accented characters as normal letters
-
- _cTable[(byte)''] = _cTable[(byte)''] = _cTable[(byte)''] = 0; // a
- _lTable[(byte)''] = _lTable[(byte)''] = _lTable[(byte)''] = 17;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 4; // e
- _lTable[(byte)''] = _lTable[(byte)''] = 15;
-
- _cTable[(byte)''] = _cTable[(byte)''] = _cTable[(byte)''] = 8; // i
- _lTable[(byte)''] = _lTable[(byte)''] = _lTable[(byte)''] = 16;
-
- _cTable[(byte)''] = _cTable[(byte)''] = _cTable[(byte)''] = _cTable[(byte)''] = 14; // o
- _lTable[(byte)''] = _lTable[(byte)''] = _lTable[(byte)''] = _lTable[(byte)''] = 19;
-
- _cTable[(byte)''] = _cTable[(byte)''] = 20; // u
- _lTable[(byte)''] = _lTable[(byte)''] = 15;
-
- } else if (g_vm->getLanguage() == Common::DE_DEU) {
- // German
-
- _cTable[''] = 142;
- // SS = 143
-
- _lTable[''] = 24;
- }
}
diff --git a/engines/tony/tony.cpp b/engines/tony/tony.cpp
index ec2ee49ba2..9124bed50d 100644
--- a/engines/tony/tony.cpp
+++ b/engines/tony/tony.cpp
@@ -111,6 +111,10 @@ Common::Error TonyEngine::run() {
* Initialize the game
*/
Common::ErrorCode TonyEngine::init() {
+ // Load DAT file (used by font manager)
+ if (!loadTonyDat())
+ return Common::kUnknownError;
+
if (isCompressed()) {
Common::SeekableReadStream *stream = SearchMan.createReadStreamForMember("data1.cab");
if (!stream)
@@ -177,6 +181,94 @@ Common::ErrorCode TonyEngine::init() {
return Common::kNoError;
}
+bool TonyEngine::loadTonyDat() {
+ Common::String msg;
+ Common::File in;
+
+ in.open("tony.dat");
+
+ if (!in.isOpen()) {
+ msg = "You're missing the 'tony.dat' file. Get it from the ScummVM website";
+ GUIErrorMessage(msg);
+ warning("%s", msg.c_str());
+ return false;
+ }
+
+ // Read header
+ char buf[4+1];
+ in.read(buf, 4);
+ buf[4] = '\0';
+
+ if (strcmp(buf, "TONY")) {
+ msg = "File 'tony.dat' is corrupt. Get it from the ScummVM website";
+ GUIErrorMessage(msg);
+ warning("%s", msg.c_str());
+ return false;
+ }
+
+ int majVer = in.readByte();
+ int minVer = in.readByte();
+
+ if ((majVer != TONY_DAT_VER_MAJ) || (minVer != TONY_DAT_VER_MIN)) {
+ msg = Common::String::format("File 'tony.dat' is wrong version. Expected %d.%d but got %d.%d. Get it from the ScummVM website", TONY_DAT_VER_MAJ, TONY_DAT_VER_MIN, majVer, minVer);
+ GUIErrorMessage(msg);
+ warning("%s", msg.c_str());
+
+ return false;
+ }
+
+ int expectedLangVariant = -1;
+ switch (g_vm->getLanguage()) {
+ case Common::IT_ITA:
+ expectedLangVariant = 0;
+ break;
+ case Common::PL_POL:
+ expectedLangVariant = 1;
+ break;
+ case Common::RU_RUS:
+ expectedLangVariant = 2;
+ break;
+ case Common::CZ_CZE:
+ expectedLangVariant = 3;
+ break;
+ case Common::FR_FRA:
+ expectedLangVariant = 4;
+ break;
+ case Common::DE_DEU:
+ expectedLangVariant = 5;
+ break;
+ default:
+ msg = Common::String::format("Font variant not present in 'tony.dat'. Get it from the ScummVM website");
+ GUIErrorMessage(msg);
+ warning("%s", msg.c_str());
+
+ return false;
+ }
+
+ int numVariant = in.readUint16BE();
+ if (expectedLangVariant > numVariant) {
+ msg = Common::String::format("Font variant not present in 'tony.dat'. Get it from the ScummVM website");
+ GUIErrorMessage(msg);
+ warning("%s", msg.c_str());
+
+ return false;
+ }
+
+ in.seek(in.pos() + (2 * 256 * 8 * expectedLangVariant));
+ for (int i = 0; i < 256; i++) {
+ _cTableDialog[i] = in.readSint16BE();
+ _lTableDialog[i] = in.readSint16BE();
+ _cTableMacc[i] = in.readSint16BE();
+ _lTableMacc[i] = in.readSint16BE();
+ _cTableCred[i] = in.readSint16BE();
+ _lTableCred[i] = in.readSint16BE();
+ _cTableObj[i] = in.readSint16BE();
+ _lTableObj[i] = in.readSint16BE();
+ }
+
+ return true;
+}
+
void TonyEngine::initCustomFunctionMap() {
INIT_CUSTOM_FUNCTION(_funcList, _funcListStrings);
}
diff --git a/engines/tony/tony.h b/engines/tony/tony.h
index 18cddf3f2a..f8358b15a7 100644
--- a/engines/tony/tony.h
+++ b/engines/tony/tony.h
@@ -70,6 +70,8 @@ enum {
struct TonyGameDescription;
#define MAX_SFX_CHANNELS 32
+#define TONY_DAT_VER_MAJ 0
+#define TONY_DAT_VER_MIN 1
struct VoiceHeader {
int _offset;
@@ -81,6 +83,7 @@ struct VoiceHeader {
class TonyEngine : public Engine {
private:
Common::ErrorCode init();
+ bool loadTonyDat();
void initMusic();
void closeMusic();
bool openVoiceDatabase();
@@ -106,6 +109,15 @@ public:
Globals _globals;
Debugger *_debugger;
+ int16 _cTableDialog[256];
+ int16 _lTableDialog[256];
+ int16 _cTableMacc[256];
+ int16 _lTableMacc[256];
+ int16 _cTableCred[256];
+ int16 _lTableCred[256];
+ int16 _cTableObj[256];
+ int16 _lTableObj[256];
+
enum DataDir {
DD_BASE = 1,
DD_SAVE,