[Scummvm-cvs-logs] CVS: scummvm/simon charset.cpp,1.27,1.28 simon.cpp,1.446,1.447 verb.cpp,1.23,1.24

Travis Howell kirben at users.sourceforge.net
Sat Jul 31 03:15:01 CEST 2004


Update of /cvsroot/scummvm/scummvm/simon
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29499/simon

Modified Files:
	charset.cpp simon.cpp verb.cpp 
Log Message:

Add support for Russian Simon1.


Index: charset.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/charset.cpp,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -d -r1.27 -r1.28
--- charset.cpp	6 Jan 2004 12:45:31 -0000	1.27
+++ charset.cpp	31 Jul 2004 10:14:05 -0000	1.28
@@ -373,6 +373,7 @@
 }
 
 #ifdef __PALM_OS__
+static const byte *russian_video_font;
 static const byte *french_video_font;
 static const byte *german_video_font;
 static const byte *hebrew_video_font;
@@ -380,6 +381,107 @@
 static const byte *spanish_video_font;
 static const byte *video_font;
 #else
+static const byte russian_video_font[] = {
+	0, 0, 0, 0, 0, 0, 0, 0,
+	32, 112, 112, 32, 32, 0, 32, 0,
+	48, 48, 96, 0, 0, 0, 0, 0,
+	0, 144, 0, 96, 144, 144, 104, 0,
+	0, 144, 0, 96, 144, 144, 96, 0,
+	0, 144, 0, 144, 144, 144, 96, 0,
+	0, 16, 40, 16, 42, 68, 58, 0,
+	48, 48, 96, 0, 0, 0, 0, 0,
+	0, 4, 8, 8, 8, 8, 4, 0,
+	0, 32, 16, 16, 16, 16, 32, 0,
+	72, 84, 84, 116, 84, 84, 72, 0,
+	0, 112, 136, 240, 136, 136, 240, 0,
+	0, 0, 0, 0, 0, 48, 48, 96,
+	0, 0, 0, 240, 0, 0, 0, 0,
+	0, 0, 0, 0, 0, 48, 48, 0,
+	16, 32, 0, 120, 112, 64, 56, 0,
+	112, 136, 152, 168, 200, 136, 112, 0,
+	32, 96, 32, 32, 32, 32, 112, 0,
+	112, 136, 8, 48, 64, 136, 248, 0,
+	112, 136, 8, 48, 8, 136, 112, 0,
+	16, 48, 80, 144, 248, 16, 56, 0,
+	248, 128, 240, 8, 8, 136, 112, 0,
+	48, 64, 128, 240, 136, 136, 112, 0,
+	248, 136, 8, 16, 32, 32, 32, 0,
+	112, 136, 136, 112, 136, 136, 112, 0,
+	112, 136, 136, 120, 8, 16, 96, 0,
+	0, 0, 48, 48, 0, 48, 48, 0,
+	32, 16, 0, 112, 8, 248, 120, 0,
+	0, 0, 96, 48, 40, 40, 112, 0,
+	0, 0, 112, 88, 20, 20, 56, 0,
+	0, 0, 120, 4, 28, 4, 120, 0,
+	112, 136, 8, 16, 32, 0, 32, 0,
+	0, 0, 84, 84, 84, 84, 56, 4,
+	56, 68, 68, 124, 68, 68, 68, 0,
+	124, 36, 32, 56, 36, 36, 120, 0,
+	120, 36, 36, 56, 36, 36, 120, 0,
+	124, 36, 32, 32, 32, 32, 112, 0,
+	56, 40, 40, 40, 40, 40, 124, 68,
+	124, 36, 32, 56, 32, 36, 124, 0,
+	84, 84, 84, 56, 84, 84, 84, 0,
+	56, 68, 4, 24, 4, 68, 56, 0,
+	68, 68, 76, 84, 100, 68, 68, 0,
+	100, 40, 40, 48, 40, 36, 100, 0,
+	28, 36, 36, 36, 36, 36, 100, 0,
+	68, 108, 84, 68, 68, 68, 68, 0,
+	68, 68, 68, 124, 68, 68, 68, 0,
+	56, 68, 68, 68, 68, 68, 56, 0,
+	124, 68, 68, 68, 68, 68, 68, 0,
+	120, 36, 36, 56, 32, 32, 112, 0,
+	56, 68, 64, 64, 64, 68, 56, 0,
+	124, 84, 16, 16, 16, 16, 56, 0,
+	100, 36, 36, 28, 4, 4, 56, 0,
+	56, 84, 84, 84, 56, 16, 56, 0,
+	108, 40, 16, 16, 40, 40, 108, 0,
+	72, 72, 72, 72, 72, 72, 60, 4,
+	76, 72, 72, 56, 8, 8, 28, 0,
+	84, 84, 84, 84, 84, 84, 60, 0,
+	84, 84, 84, 84, 84, 84, 56, 4,
+	56, 68, 4, 28, 4, 68, 56, 0,
+	0, 0, 68, 100, 84, 84, 100, 0,
+	0, 0, 72, 84, 116, 84, 72, 0,
+	0, 0, 60, 68, 60, 36, 100, 0,
+	0, 0, 120, 4, 24, 4, 120, 0,
+	0, 0, 100, 40, 48, 40, 100, 0,
+	60, 68, 68, 60, 36, 68, 68, 0,
+	0, 0, 56, 4, 60, 68, 60, 0,
+	60, 64, 32, 56, 68, 68, 56, 0,
+	48, 72, 80, 120, 68, 68, 56, 0,
+	0, 0, 120, 4, 56, 64, 60, 0,
+	56, 4, 4, 60, 68, 68, 56, 0,
+	0, 0, 56, 68, 120, 64, 56, 0,
+	40, 0, 56, 68, 120, 64, 56, 0,
+	0, 0, 84, 84, 56, 84, 84, 0,
+	64, 0, 192, 64, 64, 64, 224, 0,
+	0, 0, 68, 68, 68, 68, 60, 0,
+	56, 0, 68, 68, 68, 68, 60, 0,
+	192, 64, 64, 64, 64, 64, 224, 0,
+	0, 0, 28, 36, 36, 36, 100, 0,
+	0, 0, 68, 108, 84, 68, 68, 0,
+	0, 0, 56, 68, 68, 68, 56, 0,
+	0, 0, 68, 68, 124, 68, 68, 0,
+	0, 0, 124, 68, 68, 68, 68, 0,
+	0, 0, 120, 36, 36, 56, 32, 112,
+	0, 0, 60, 64, 64, 64, 60, 0,
+	0, 0, 124, 84, 16, 16, 56, 0,
+	0, 0, 68, 68, 60, 4, 56, 0,
+	48, 16, 56, 84, 84, 56, 16, 56,
+	0, 0, 68, 40, 16, 40, 68, 0,
+	0, 0, 72, 72, 72, 72, 60, 4,
+	0, 0, 76, 72, 72, 56, 8, 28,
+	0, 0, 84, 84, 84, 84, 60, 0,
+	32, 80, 0, 96, 144, 144, 96, 0,
+	0, 14, 8, 48, 8, 8, 14, 0,
+	0, 8, 8, 8, 8, 8, 8, 0,
+	0, 112, 16, 12, 16, 16, 112, 0,
+	0, 0, 0, 0, 0, 0, 248, 0,
+	252, 252, 252, 252, 252, 252, 252, 252,
+	240, 240, 240, 240, 240, 240, 240, 240,
+};
+
 static const byte french_video_font[] = {
 	0, 0, 0, 0, 0, 0, 0, 0,
 	32, 112, 112, 32, 32, 0, 32, 0,
@@ -997,7 +1099,9 @@
 	dst = dx_lock_2();
 	dst += y * _dx_surface_pitch + x * 8 + fcs->textColumnOffset;
 
-	if (_language == 20) {
+	if (_language == 21) {
+		src = russian_video_font + (chr - 0x20) * 8;
+	} else if (_language == 20) {
 		src = hebrew_video_font + (chr - 0x20) * 8;
 	} else if (_language == 5) {
 		src = spanish_video_font + (chr - 0x20) * 8;

Index: simon.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/simon.cpp,v
retrieving revision 1.446
retrieving revision 1.447
diff -u -d -r1.446 -r1.447
--- simon.cpp	31 Jul 2004 08:55:08 -0000	1.446
+++ simon.cpp	31 Jul 2004 10:14:05 -0000	1.447
@@ -4743,9 +4743,6 @@
 		_subtitles = true;
 	}
 
-	if (_language == 4 || (_language > 5 && _language < 20))
-		error("The only known versions are English, French, German, Hebrew, Italian and Spanish");
-
 	while (1) {
 		hitarea_stuff();
 		handle_verb_clicked(_verb_hitarea);

Index: verb.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/simon/verb.cpp,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- verb.cpp	6 Jan 2004 12:45:31 -0000	1.23
+++ verb.cpp	31 Jul 2004 10:14:05 -0000	1.24
@@ -26,6 +26,23 @@
 
 namespace Simon {
 
+static const char *const russian_verb_names[] = {
+	"Ietj _",
+	"Qnotrft< pa",
+	"Nt_r[t<",
+	"Ecjdat<",
+
+	"Q=fst<",
+	"C^]t<",
+	"Ha_r[t<",
+	"Isqom<^ocat<",
+
+	"Docorjt<",
+	"Qp]t<",
+	"Neft<",
+	"Eat<"
+};
+
 static const char *const hebrew_verb_names[] = {
 	"LJ @L",
 	"DQZKL RL",
@@ -128,6 +145,12 @@
 	"Give"
 };
 
+static const char *const russian_verb_prep_names[] = {
+	"", "", "", "",
+	"", "", "", "s yfn?",
+	"", "", "", "_onu ?"
+};
+
 static const char *const hebrew_verb_prep_names[] = {
 	"", "", "", "",
 	"", "", "", "RM ND ?",
@@ -198,6 +221,7 @@
 
 	if (_show_preposition) {
 		switch (_language) {
+		case 21: verb_prep_names = russian_verb_prep_names; break;
 		case 20: verb_prep_names = hebrew_verb_prep_names; break;
 		case  5: verb_prep_names = spanish_verb_prep_names; break;
 		case  3: verb_prep_names = italian_verb_prep_names; break;
@@ -209,6 +233,7 @@
 		txt = verb_prep_names[hitarea_id];
 	} else {
 		switch (_language) {
+		case 21: verb_names = russian_verb_names; break;
 		case 20: verb_names = hebrew_verb_names; break;
 		case  5: verb_names = spanish_verb_names; break;
 		case  3: verb_names = italian_verb_names; break;





More information about the Scummvm-git-logs mailing list