diff options
author | Travis Howell | 2006-04-09 11:34:10 +0000 |
---|---|---|
committer | Travis Howell | 2006-04-09 11:34:10 +0000 |
commit | 6a1636c292e28759728cd2c404e420936bf2dc78 (patch) | |
tree | 4f38ba85c41f4caa2e078ec20d1028c2732850c5 | |
parent | 00a48b248f07fb5e0698555fe2f63377f6aba3bd (diff) | |
download | scummvm-rg350-6a1636c292e28759728cd2c404e420936bf2dc78.tar.gz scummvm-rg350-6a1636c292e28759728cd2c404e420936bf2dc78.tar.bz2 scummvm-rg350-6a1636c292e28759728cd2c404e420936bf2dc78.zip |
Add font table for FF
svn-id: r21722
-rw-r--r-- | engines/simon/charset.cpp | 267 |
1 files changed, 237 insertions, 30 deletions
diff --git a/engines/simon/charset.cpp b/engines/simon/charset.cpp index 0ecdebff07..87d1b943fc 100644 --- a/engines/simon/charset.cpp +++ b/engines/simon/charset.cpp @@ -1300,10 +1300,208 @@ static const byte video_font[] = { }; #endif +static const byte feeble_video_font[] = { + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 128,128,128,128,128,128,128,0,0,128,0,0,0, + 144,144,144,0,0,0,0,0,0,0,0,0,0, + 0,72,252,72,72,252,72,0,0,0,0,0,0, + 124,146,144,144,124,18,18,18,146,124,16,16,0, + 62,98,146,100,8,16,32,76,146,140,0,0,0, + 0,112,136,136,80,32,82,138,132,122,0,0,0, + 128,128,128,0,0,0,0,0,0,0,0,0,0, + 32,64,128,128,128,128,128,128,64,32,0,0,0, + 128,64,32,32,32,32,32,32,64,128,0,0,0, + 16,146,84,56,56,84,146,16,0,0,0,0,0, + 0,0,16,16,16,254,16,16,16,0,0,0,0, + 0,0,0,0,0,0,0,0,0,64,64,128,0, + 0,0,0,0,0,254,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,128,0,0,0, + 0,0,1,2,4,8,16,32,64,128,128,0,0, + 120,132,132,132,132,132,132,132,132,120,0,0,0, + 16,48,16,16,16,16,16,16,16,56,0,0,0, + 120,132,132,4,4,8,16,32,64,252,0,0,0, + 124,130,130,2,2,28,2,2,130,124,0,0,0, + 4,12,20,36,68,132,254,4,4,4,0,0,0, + 254,128,128,252,2,2,2,2,130,124,0,0,0, + 62,64,128,252,130,130,130,130,130,124,0,0,0, + 254,2,2,2,2,4,8,16,16,16,0,0,0, + 120,132,132,132,120,132,132,132,132,120,0,0,0, + 124,130,130,130,130,130,126,2,2,124,0,0,0, + 0,0,0,0,128,0,0,0,128,0,0,0,0, + 0,0,0,0,0,64,0,0,0,64,64,128,0, + 0,0,16,32,64,128,64,32,16,0,0,0,0, + 0,0,0,254,0,0,254,0,0,0,0,0,0, + 0,0,128,64,32,16,32,64,128,0,0,0,0, + 60,66,130,2,4,8,16,16,0,16,16,0,0, + 60,66,130,154,166,166,156,128,128,126,0,0,0, + 124,130,130,130,130,254,130,130,130,130,0,0,0, + 252,130,130,130,252,130,130,130,130,252,0,0,0, + 124,130,130,128,128,128,128,130,130,124,0,0,0, + 252,130,130,130,130,130,130,130,130,252,0,0,0, + 254,128,128,128,128,252,128,128,128,254,0,0,0, + 254,128,128,128,128,252,128,128,128,128,0,0,0, + 124,130,130,128,128,134,130,130,130,124,0,0,0, + 130,130,130,130,130,254,130,130,130,130,0,0,0, + 224,64,64,64,64,64,64,64,64,224,0,0,0, + 30,2,2,2,2,2,130,130,130,124,0,0,0, + 130,130,132,136,144,224,144,136,132,130,0,0,0, + 128,128,128,128,128,128,128,128,128,254,0,0,0, + 130,198,170,146,130,130,130,130,130,130,0,0,0, + 130,130,194,162,146,138,134,130,130,130,0,0,0, + 124,130,130,130,130,130,130,130,130,124,0,0,0, + 252,130,130,130,130,252,128,128,128,128,0,0,0, + 124,130,130,130,130,130,130,130,130,126,2,2,0, + 252,130,130,130,130,252,130,130,130,130,0,0,0, + 124,130,128,128,124,2,2,130,130,124,0,0,0, + 254,16,16,16,16,16,16,16,16,16,0,0,0, + 130,130,130,130,130,130,130,130,130,124,0,0,0, + 130,130,130,130,130,130,130,68,40,16,0,0,0, + 130,130,130,130,130,130,130,146,170,198,0,0,0, + 130,68,40,16,16,16,16,40,68,130,0,0,0, + 130,130,130,130,68,40,16,16,16,16,0,0,0, + 254,2,2,4,8,16,32,64,128,254,0,0,0, + 224,128,128,128,128,128,128,128,128,224,0,0,0, + 128,128,64,32,16,8,4,2,1,0,0,0,0, + 224,32,32,32,32,32,32,32,32,224,0,0,0, + 160,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,255,0,0,0, + 32,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,62,66,130,130,130,134,122,0,0,0, + 128,128,128,252,130,130,130,130,130,252,0,0,0, + 0,0,0,124,130,128,128,128,130,124,0,0,0, + 2,2,2,126,130,130,130,130,130,126,0,0,0, + 0,0,0,124,130,130,254,128,128,126,0,0,0, + 28,32,32,248,32,32,32,32,32,32,0,0,0, + 0,0,0,62,66,130,130,130,130,126,2,2,124, + 128,128,128,252,130,130,130,130,130,130,0,0,0, + 64,0,0,64,192,64,64,64,64,224,0,0,0, + 16,0,0,16,16,16,16,16,16,16,16,16,224, + 128,128,128,132,136,144,224,144,136,132,0,0,0, + 192,64,64,64,64,64,64,64,64,64,0,0,0, + 0,0,0,252,146,146,146,146,146,146,0,0,0, + 0,0,0,156,162,194,130,130,130,130,0,0,0, + 0,0,0,124,130,130,130,130,130,124,0,0,0, + 0,0,0,252,130,130,130,130,130,252,128,128,128, + 0,0,0,126,130,130,130,130,130,126,2,2,2, + 0,0,0,156,162,194,128,128,128,128,0,0,0, + 0,0,0,124,128,128,120,4,4,248,0,0,0, + 32,32,32,248,32,32,32,32,32,28,0,0,0, + 0,0,0,130,130,130,130,130,130,126,0,0,0, + 0,0,0,130,130,130,130,68,40,16,0,0,0, + 0,0,0,146,146,146,146,146,146,124,0,0,0, + 0,0,0,130,68,40,16,40,68,130,0,0,0, + 0,0,0,130,130,130,130,130,130,126,2,2,124, + 0,0,0,254,4,8,16,32,64,254,0,0,0, + 48,64,64,64,64,128,64,64,64,64,48,0,0, + 128,128,128,128,128,128,128,128,128,128,128,128,0, + 192,32,32,32,32,16,32,32,32,32,192,0,0, + 152,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,254,0,0, + 124,130,130,128,128,128,128,130,130,124,16,16,48, + 0,40,0,130,130,130,130,130,130,126,0,0,0, + 16,32,0,124,130,130,254,128,128,126,0,0,0, + 16,40,0,62,66,130,130,130,134,122,0,0,0, + 0,40,0,62,66,130,130,130,134,122,0,0,0, + 16,8,0,62,66,130,130,130,134,122,0,0,0, + 8,20,8,62,66,130,130,130,134,122,0,0,0, + 0,0,0,124,130,128,128,128,130,124,16,16,48, + 16,40,0,124,130,130,254,128,128,126,0,0,0, + 0,40,0,124,130,130,254,128,128,126,0,0,0, + 16,8,0,124,130,130,254,128,128,126,0,0,0, + 0,160,0,64,192,64,64,64,64,224,0,0,0, + 64,160,0,64,192,64,64,64,64,224,0,0,0, + 128,64,0,64,192,64,64,64,64,224,0,0,0, + 40,0,124,130,130,130,254,130,130,130,0,0,0, + 16,40,124,130,130,130,254,130,130,130,0,0,0, + 40,0,254,128,128,252,128,128,128,254,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 16,40,0,124,130,130,130,130,130,124,0,0,0, + 0,40,0,124,130,130,130,130,130,124,0,0,0, + 32,16,0,124,130,130,130,130,130,124,0,0,0, + 16,40,0,130,130,130,130,130,130,126,0,0,0, + 16,8,0,130,130,130,130,130,130,126,0,0,0, + 0,40,0,130,130,130,130,130,130,126,2,2,124, + 40,0,124,130,130,130,130,130,130,124,0,0,0, + 40,0,130,130,130,130,130,130,130,124,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 8,16,0,62,66,130,130,130,134,122,0,0,0, + 64,128,0,64,192,64,64,64,64,224,0,0,0, + 16,32,0,124,130,130,130,130,130,124,0,0,0, + 8,16,0,130,130,130,130,130,130,126,0,0,0, + 20,40,0,156,162,194,130,130,130,130,0,0,0, + 20,40,130,194,162,146,138,134,130,130,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 16,16,0,16,16,32,64,128,130,132,120,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 128,0,0,128,128,128,128,128,128,128,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0, + 60,66,130,130,130,132,132,130,130,130,156,128,128, + 0,0,0,0,0,0,0,0,0,0,0,0,0, +}; + void SimonEngine::video_putchar_drawchar(WindowBlock *window, uint x, uint y, byte chr) { const byte *src; byte color, *dst; - uint h, i; + uint h, w, i; if (_noOracleScroll) return; @@ -1313,38 +1511,47 @@ void SimonEngine::video_putchar_drawchar(WindowBlock *window, uint x, uint y, by dst = getFrontBuf(); dst += y * _dxSurfacePitch + x + window->textColumnOffset; - switch(_language) { - case Common::RU_RUS: - src = russian_video_font + (chr - 0x20) * 8; - break; - case Common::PL_POL: - src = polish_video_font + (chr - 0x20) * 8; - break; - case Common::HB_ISR: - src = hebrew_video_font + (chr - 0x20) * 8; - break; - case Common::ES_ESP: - src = spanish_video_font + (chr - 0x20) * 8; - break; - case Common::IT_ITA: - src = italian_video_font + (chr - 0x20) * 8; - break; - case Common::FR_FRA: - src = french_video_font + (chr - 0x20) * 8; - break; - case Common::DE_DEU: - src = german_video_font + (chr - 0x20) * 8; - break; - case Common::EN_ANY: - src = video_font + (chr - 0x20) * 8; - break; - default: - error("video_putchar_drawchar: Unknown language %d\n", _language); + if (getGameType() == GType_FF) { + h = 13; + w = feebleFontSize[chr - 0x20]; + + src = feeble_video_font + (chr - 0x20) * 13; + } else { + h = 8; + w = 6; + + switch(_language) { + case Common::RU_RUS: + src = russian_video_font + (chr - 0x20) * 8; + break; + case Common::PL_POL: + src = polish_video_font + (chr - 0x20) * 8; + break; + case Common::HB_ISR: + src = hebrew_video_font + (chr - 0x20) * 8; + break; + case Common::ES_ESP: + src = spanish_video_font + (chr - 0x20) * 8; + break; + case Common::IT_ITA: + src = italian_video_font + (chr - 0x20) * 8; + break; + case Common::FR_FRA: + src = french_video_font + (chr - 0x20) * 8; + break; + case Common::DE_DEU: + src = german_video_font + (chr - 0x20) * 8; + break; + case Common::EN_ANY: + src = video_font + (chr - 0x20) * 8; + break; + default: + error("video_putchar_drawchar: Unknown language %d\n", _language); + } } color = window->text_color; - h = 8; do { int8 b = *src++; i = 0; @@ -1352,7 +1559,7 @@ void SimonEngine::video_putchar_drawchar(WindowBlock *window, uint x, uint y, by if (b < 0) dst[i] = color; b <<= 1; - } while (++i != 6); + } while (++i != w); dst += _dxSurfacePitch; } while (--h); |