diff options
Diffstat (limited to 'tools/make-scumm-fontdata.c')
-rw-r--r-- | tools/make-scumm-fontdata.c | 889 |
1 files changed, 889 insertions, 0 deletions
diff --git a/tools/make-scumm-fontdata.c b/tools/make-scumm-fontdata.c new file mode 100644 index 0000000000..f251a22b80 --- /dev/null +++ b/tools/make-scumm-fontdata.c @@ -0,0 +1,889 @@ +/* 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. + * + * $URL$ + * $Id$ + */ + +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +/* English Zak font. */ +static const unsigned char englishCharsetDataV2[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x03, 0x06, 0x0C, 0x18, 0x3E, 0x03, 0x00, + 0x80, 0xC0, 0x60, 0x30, 0x18, 0x7C, 0xC0, 0x00, + 0x00, 0x03, 0x3E, 0x18, 0x0C, 0x06, 0x03, 0x01, + 0x00, 0xC0, 0x7C, 0x18, 0x30, 0x60, 0xC0, 0x80, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, + 0x03, 0x03, 0x03, 0x07, 0x07, 0x0F, 0x1F, 0x7F, + 0xE0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xE0, + 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0C, 0x18, + 0x00, 0x00, 0x00, 0x80, 0xC0, 0x60, 0x30, 0x18, + 0x18, 0x30, 0x60, 0xC0, 0x80, 0x00, 0x00, 0x00, + 0x18, 0x0C, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x1F, 0x1F, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xF8, 0xF8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xF8, 0xF8, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1F, 0x1F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x03, 0x07, 0x0C, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xC0, 0xE0, 0x30, 0x18, 0x18, + 0x18, 0x18, 0x30, 0xE0, 0xC0, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x0C, 0x07, 0x03, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1F, 0x1F, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xF8, 0xF8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, + 0x18, 0x3C, 0x66, 0xC3, 0xC3, 0x66, 0x3C, 0x18, + 0x18, 0x3C, 0x7E, 0xFF, 0xFF, 0x7E, 0x3C, 0x18, + 0x18, 0x66, 0xC3, 0xDB, 0xDB, 0xC3, 0x66, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x66, 0x66, 0xFF, 0x66, 0xFF, 0x66, 0x66, 0x00, + 0x18, 0x3E, 0x58, 0x3C, 0x1A, 0x7C, 0x18, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x00, + 0x3C, 0x66, 0x3C, 0x38, 0x67, 0x66, 0x3F, 0x00, + 0x06, 0x0C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0C, 0x18, 0x30, 0x30, 0x30, 0x18, 0x0C, 0x00, + 0x30, 0x18, 0x0C, 0x0C, 0x0C, 0x18, 0x30, 0x00, + 0x00, 0x66, 0x3C, 0xFF, 0x3C, 0x66, 0x00, 0x00, + 0x00, 0x18, 0x18, 0x7E, 0x18, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, + 0x00, 0x03, 0x06, 0x0C, 0x18, 0x30, 0x60, 0x00, + 0x3C, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00, + 0x18, 0x18, 0x38, 0x18, 0x18, 0x18, 0x7E, 0x00, + 0x3C, 0x66, 0x06, 0x0C, 0x30, 0x60, 0x7E, 0x00, + 0x3C, 0x66, 0x06, 0x1C, 0x06, 0x66, 0x3C, 0x00, + 0x06, 0x0E, 0x1E, 0x66, 0x7F, 0x06, 0x06, 0x00, + 0x7E, 0x60, 0x7C, 0x06, 0x06, 0x66, 0x3C, 0x00, + 0x3C, 0x66, 0x60, 0x7C, 0x66, 0x66, 0x3C, 0x00, + 0x7E, 0x66, 0x0C, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x3C, 0x66, 0x66, 0x3C, 0x66, 0x66, 0x3C, 0x00, + 0x3C, 0x66, 0x66, 0x3E, 0x06, 0x66, 0x3C, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x0E, 0x18, 0x30, 0x60, 0x30, 0x18, 0x0E, 0x00, + 0x7C, 0x82, 0xBA, 0xA2, 0xBA, 0x82, 0x7C, 0x00, + 0x70, 0x18, 0x0C, 0x06, 0x0C, 0x18, 0x70, 0x00, + 0x3C, 0x66, 0x06, 0x0C, 0x18, 0x00, 0x18, 0x00, + 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, + 0x18, 0x3C, 0x66, 0x7E, 0x66, 0x66, 0x66, 0x00, + 0x7C, 0x66, 0x66, 0x7C, 0x66, 0x66, 0x7C, 0x00, + 0x3C, 0x66, 0x60, 0x60, 0x60, 0x66, 0x3C, 0x00, + 0x78, 0x6C, 0x66, 0x66, 0x66, 0x6C, 0x78, 0x00, + 0x7E, 0x60, 0x60, 0x78, 0x60, 0x60, 0x7E, 0x00, + 0x7E, 0x60, 0x60, 0x78, 0x60, 0x60, 0x60, 0x00, + 0x3C, 0x66, 0x60, 0x6E, 0x66, 0x66, 0x3C, 0x00, + 0x66, 0x66, 0x66, 0x7E, 0x66, 0x66, 0x66, 0x00, + 0x3C, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00, + 0x1E, 0x0C, 0x0C, 0x0C, 0x0C, 0x6C, 0x38, 0x00, + 0x66, 0x6C, 0x78, 0x70, 0x78, 0x6C, 0x66, 0x00, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7E, 0x00, + 0x63, 0x77, 0x7F, 0x6B, 0x63, 0x63, 0x63, 0x00, + 0x66, 0x76, 0x7E, 0x7E, 0x6E, 0x66, 0x66, 0x00, + 0x3C, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00, + 0x7C, 0x66, 0x66, 0x7C, 0x60, 0x60, 0x60, 0x00, + 0x3C, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x0E, 0x00, + 0x7C, 0x66, 0x66, 0x7C, 0x78, 0x6C, 0x66, 0x00, + 0x3C, 0x66, 0x60, 0x3C, 0x06, 0x66, 0x3C, 0x00, + 0x7E, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x18, 0x00, + 0x63, 0x63, 0x63, 0x6B, 0x7F, 0x77, 0x63, 0x00, + 0x66, 0x66, 0x3C, 0x18, 0x3C, 0x66, 0x66, 0x00, + 0x66, 0x66, 0x66, 0x3C, 0x18, 0x18, 0x18, 0x00, + 0x7E, 0x06, 0x0C, 0x18, 0x30, 0x60, 0x7E, 0x00, + 0x3C, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3C, 0x00, + 0x0C, 0x12, 0x30, 0x7C, 0x30, 0x62, 0xFC, 0x00, + 0x3C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3C, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xDB, 0xDB, 0x00, + 0x00, 0x10, 0x30, 0x7F, 0x7F, 0x30, 0x10, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3C, 0x06, 0x3E, 0x66, 0x3E, 0x00, + 0x00, 0x60, 0x60, 0x7C, 0x66, 0x66, 0x7C, 0x00, + 0x00, 0x00, 0x3C, 0x60, 0x60, 0x60, 0x3C, 0x00, + 0x00, 0x06, 0x06, 0x3E, 0x66, 0x66, 0x3E, 0x00, + 0x00, 0x00, 0x3C, 0x66, 0x7E, 0x60, 0x3C, 0x00, + 0x00, 0x0E, 0x18, 0x3E, 0x18, 0x18, 0x18, 0x00, + 0x00, 0x00, 0x3E, 0x66, 0x66, 0x3E, 0x06, 0x7C, + 0x00, 0x60, 0x60, 0x7C, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x18, 0x00, 0x38, 0x18, 0x18, 0x3C, 0x00, + 0x00, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x3C, + 0x00, 0x60, 0x60, 0x6C, 0x78, 0x6C, 0x66, 0x00, + 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3C, 0x00, + 0x00, 0x00, 0x66, 0x7F, 0x7F, 0x6B, 0x63, 0x00, + 0x00, 0x00, 0x7C, 0x66, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x00, 0x3C, 0x66, 0x66, 0x66, 0x3C, 0x00, + 0x00, 0x00, 0x7C, 0x66, 0x66, 0x7C, 0x60, 0x60, + 0x00, 0x00, 0x3E, 0x66, 0x66, 0x3E, 0x06, 0x06, + 0x00, 0x00, 0x7C, 0x66, 0x60, 0x60, 0x60, 0x00, + 0x00, 0x00, 0x3E, 0x60, 0x3C, 0x06, 0x7C, 0x00, + 0x00, 0x18, 0x7E, 0x18, 0x18, 0x18, 0x0E, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3E, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3C, 0x18, 0x00, + 0x00, 0x00, 0x63, 0x6B, 0x7F, 0x3E, 0x36, 0x00, + 0x00, 0x00, 0x66, 0x3C, 0x18, 0x3C, 0x66, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3E, 0x0C, 0x78, + 0x00, 0x00, 0x7E, 0x0C, 0x18, 0x30, 0x7E, 0x00, + 0x01, 0x03, 0x06, 0x6C, 0x78, 0x70, 0x60, 0x00, + 0x18, 0x3C, 0x7E, 0xFF, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0xFF, 0x7E, 0x3C, 0x18, + 0x10, 0x30, 0x70, 0xFF, 0xFF, 0x70, 0x30, 0x10, + 0x08, 0x0C, 0x0E, 0xFF, 0xFF, 0x0E, 0x0C, 0x08, +}; + +/* German Zak font */ +static const unsigned char germanCharsetDataV2[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x03, 0x06, 0x0c, 0x18, 0x3e, 0x03, 0x00, + 0x80, 0xc0, 0x60, 0x30, 0x18, 0x7c, 0xc0, 0x00, + 0x00, 0x03, 0x3e, 0x18, 0x0c, 0x06, 0x03, 0x01, + 0x00, 0xc0, 0x7c, 0x18, 0x30, 0x60, 0xc0, 0x80, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, + 0x03, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x7f, + 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, + 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, + 0x00, 0x00, 0x00, 0x80, 0xc0, 0x60, 0x30, 0x18, + 0x18, 0x30, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, + 0x18, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xf8, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xf8, 0xf8, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1f, 0x1f, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x03, 0x07, 0x0c, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, 0x18, 0x18, + 0x18, 0x18, 0x30, 0xe0, 0xc0, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1f, 0x1f, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xf8, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xff, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x3c, 0x66, 0xc3, 0xc3, 0x66, 0x3c, 0x18, + 0x18, 0x3c, 0x7e, 0xff, 0xff, 0x7e, 0x3c, 0x18, + 0x18, 0x66, 0xc3, 0xdb, 0xdb, 0xc3, 0x66, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x66, 0x66, 0xff, 0x66, 0xff, 0x66, 0x66, 0x00, + 0x18, 0x3e, 0x60, 0x3c, 0x06, 0x7c, 0x18, 0x00, + 0x62, 0x66, 0x0c, 0x18, 0x30, 0x66, 0x46, 0x00, + 0x3c, 0x66, 0x3c, 0x38, 0x67, 0x66, 0x3f, 0x00, + 0x30, 0x18, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0c, 0x18, 0x30, 0x30, 0x30, 0x18, 0x0c, 0x00, + 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x18, 0x30, 0x00, + 0x00, 0x66, 0x3c, 0xff, 0x3c, 0x66, 0x00, 0x00, + 0x00, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, + 0x00, 0x03, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x18, 0x18, 0x38, 0x18, 0x18, 0x18, 0x7e, 0x00, + 0x3c, 0x66, 0x06, 0x0c, 0x30, 0x60, 0x7e, 0x00, + 0x3c, 0x66, 0x06, 0x1c, 0x06, 0x66, 0x3c, 0x00, + 0x06, 0x0e, 0x1e, 0x66, 0x7f, 0x06, 0x06, 0x00, + 0x7e, 0x60, 0x7c, 0x06, 0x06, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x60, 0x7c, 0x66, 0x66, 0x3c, 0x00, + 0x7e, 0x66, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x3c, 0x66, 0x66, 0x3c, 0x66, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x66, 0x3e, 0x06, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x0e, 0x18, 0x30, 0x60, 0x30, 0x18, 0x0e, 0x00, + 0x7c, 0x82, 0xba, 0xa2, 0xa2, 0xba, 0x82, 0x7c, + 0x70, 0x18, 0x0c, 0x06, 0x0c, 0x18, 0x70, 0x00, + 0x3c, 0x66, 0x06, 0x0c, 0x18, 0x00, 0x18, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x3c, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x66, 0x66, 0x7c, 0x00, + 0x3c, 0x66, 0x60, 0x60, 0x60, 0x66, 0x3c, 0x00, + 0x78, 0x6c, 0x66, 0x66, 0x66, 0x6c, 0x78, 0x00, + 0x7e, 0x60, 0x60, 0x78, 0x60, 0x60, 0x7e, 0x00, + 0x7e, 0x60, 0x60, 0x78, 0x60, 0x60, 0x60, 0x00, + 0x3c, 0x66, 0x60, 0x6e, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x3c, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0x1e, 0x0c, 0x0c, 0x0c, 0x0c, 0x6c, 0x38, 0x00, + 0x66, 0x6c, 0x78, 0x70, 0x78, 0x6c, 0x66, 0x00, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7e, 0x00, + 0x63, 0x77, 0x7f, 0x6b, 0x63, 0x63, 0x63, 0x00, + 0x66, 0x76, 0x7e, 0x7e, 0x6e, 0x66, 0x66, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x60, 0x60, 0x60, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x0e, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x78, 0x6c, 0x66, 0x00, + 0x3c, 0x66, 0x60, 0x3c, 0x06, 0x66, 0x3c, 0x00, + 0x7e, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0x63, 0x63, 0x63, 0x6b, 0x7f, 0x77, 0x63, 0x00, + 0x66, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0x66, 0x00, + 0x66, 0x66, 0x66, 0x3c, 0x18, 0x18, 0x18, 0x00, + 0x7e, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x7e, 0x00, + 0x66, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x66, 0x00, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x66, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdb, 0xdb, 0x00, + 0x00, 0x10, 0x30, 0x7f, 0x7f, 0x30, 0x10, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x00, 0x60, 0x60, 0x7c, 0x66, 0x66, 0x7c, 0x00, + 0x00, 0x00, 0x3c, 0x60, 0x60, 0x60, 0x3c, 0x00, + 0x00, 0x06, 0x06, 0x3e, 0x66, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x00, 0x0e, 0x18, 0x3e, 0x18, 0x18, 0x18, 0x00, + 0x00, 0x00, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x7c, + 0x00, 0x60, 0x60, 0x7c, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x18, 0x00, 0x38, 0x18, 0x18, 0x3c, 0x00, + 0x00, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x3c, + 0x00, 0x60, 0x60, 0x6c, 0x78, 0x6c, 0x66, 0x00, + 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0x00, 0x00, 0x66, 0x7f, 0x7f, 0x6b, 0x63, 0x00, + 0x00, 0x00, 0x7c, 0x66, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x7c, 0x66, 0x66, 0x7c, 0x60, 0x60, + 0x00, 0x00, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x06, + 0x00, 0x00, 0x7c, 0x66, 0x60, 0x60, 0x60, 0x00, + 0x00, 0x00, 0x3e, 0x60, 0x3c, 0x06, 0x7c, 0x00, + 0x00, 0x18, 0x7e, 0x18, 0x18, 0x18, 0x0e, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0x00, 0x00, 0x63, 0x6b, 0x7f, 0x3e, 0x36, 0x00, + 0x00, 0x00, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3e, 0x0c, 0x78, + 0x00, 0x00, 0x7e, 0x0c, 0x18, 0x30, 0x7e, 0x00, + 0x66, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x18, 0x3c, 0x66, 0x7e, 0x66, 0x66, 0x00, + 0x42, 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x1c, 0x36, 0x36, 0x7c, 0x66, 0x66, 0x7c, 0x40, + 0x08, 0x0c, 0x0e, 0xff, 0xff, 0x0e, 0x0c, 0x08, +}; + +/* German C64 MM */ +static const unsigned char germanCharsetDataV0[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x03, 0x06, 0x0c, 0x18, 0x3e, 0x03, 0x00, + 0x80, 0xc0, 0x60, 0x30, 0x18, 0x7c, 0xc0, 0x00, + 0x00, 0x03, 0x3e, 0x18, 0x0c, 0x06, 0x03, 0x01, + 0x00, 0xc0, 0x7c, 0x18, 0x30, 0x60, 0xc0, 0x80, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, + 0x03, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x7f, + 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, + 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, + 0x00, 0x00, 0x00, 0x80, 0xc0, 0x60, 0x30, 0x18, + 0x18, 0x30, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, + 0x18, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xf8, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xf8, 0xf8, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1f, 0x1f, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x03, 0x07, 0x0c, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, 0x18, 0x18, + 0x18, 0x18, 0x30, 0xe0, 0xc0, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1f, 0x1f, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xf8, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xff, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x3c, 0x66, 0xc3, 0xc3, 0x66, 0x3c, 0x18, + 0x18, 0x3c, 0x7e, 0xff, 0xff, 0x7e, 0x3c, 0x18, + 0x18, 0x66, 0xc3, 0xdb, 0xdb, 0xc3, 0x66, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x66, 0x66, 0xff, 0x66, 0xff, 0x66, 0x66, 0x00, + 0x66, 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x00, + 0x3c, 0x66, 0x3c, 0x38, 0x67, 0x66, 0x3f, 0x00, + 0x06, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0c, 0x18, 0x30, 0x30, 0x30, 0x18, 0x0c, 0x00, + 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x18, 0x30, 0x00, + 0x3c, 0x66, 0x66, 0x7c, 0x66, 0x66, 0x6c, 0x60, + 0x66, 0x3c, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, + 0x00, 0x03, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x18, 0x18, 0x38, 0x18, 0x18, 0x18, 0x7e, 0x00, + 0x3c, 0x66, 0x06, 0x0c, 0x30, 0x60, 0x7e, 0x00, + 0x3c, 0x66, 0x06, 0x1c, 0x06, 0x66, 0x3c, 0x00, + 0x06, 0x0e, 0x1e, 0x66, 0x7f, 0x06, 0x06, 0x00, + 0x7e, 0x60, 0x7c, 0x06, 0x06, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x60, 0x7c, 0x66, 0x66, 0x3c, 0x00, + 0x7e, 0x66, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x3c, 0x66, 0x66, 0x3c, 0x66, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x66, 0x3e, 0x06, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x66, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x7c, 0x82, 0xba, 0xa2, 0xba, 0x82, 0x7c, 0x00, + 0x66, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x06, 0x0c, 0x18, 0x00, 0x18, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x3c, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x66, 0x66, 0x7c, 0x00, + 0x3c, 0x66, 0x60, 0x60, 0x60, 0x66, 0x3c, 0x00, + 0x78, 0x6c, 0x66, 0x66, 0x66, 0x6c, 0x78, 0x00, + 0x7e, 0x60, 0x60, 0x78, 0x60, 0x60, 0x7e, 0x00, + 0x7e, 0x60, 0x60, 0x78, 0x60, 0x60, 0x60, 0x00, + 0x3c, 0x66, 0x60, 0x6e, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x3c, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0x1e, 0x0c, 0x0c, 0x0c, 0x0c, 0x6c, 0x38, 0x00, + 0x66, 0x6c, 0x78, 0x70, 0x78, 0x6c, 0x66, 0x00, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7e, 0x00, + 0x63, 0x77, 0x7f, 0x6b, 0x63, 0x63, 0x63, 0x00, + 0x66, 0x76, 0x7e, 0x7e, 0x6e, 0x66, 0x66, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x60, 0x60, 0x60, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x0e, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x78, 0x6c, 0x66, 0x00, + 0x3c, 0x66, 0x60, 0x3c, 0x06, 0x66, 0x3c, 0x00, + 0x7e, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0x63, 0x63, 0x63, 0x6b, 0x7f, 0x77, 0x63, 0x00, + 0x66, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0x66, 0x00, + 0x66, 0x66, 0x66, 0x3c, 0x18, 0x18, 0x18, 0x00, + 0x7e, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x7e, 0x00, + 0x66, 0x00, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x0c, 0x12, 0x30, 0x7c, 0x30, 0x62, 0xfc, 0x00, + 0x66, 0x24, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x18, 0x3c, 0x7e, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x10, 0x30, 0x7f, 0x7f, 0x30, 0x10, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x00, 0x60, 0x60, 0x7c, 0x66, 0x66, 0x7c, 0x00, + 0x00, 0x00, 0x3c, 0x60, 0x60, 0x60, 0x3c, 0x00, + 0x00, 0x06, 0x06, 0x3e, 0x66, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x00, 0x0e, 0x18, 0x3e, 0x18, 0x18, 0x18, 0x00, + 0x00, 0x00, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x7c, + 0x00, 0x60, 0x60, 0x7c, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x18, 0x00, 0x38, 0x18, 0x18, 0x3c, 0x00, + 0x00, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x3c, + 0x00, 0x60, 0x60, 0x6c, 0x78, 0x6c, 0x66, 0x00, + 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0x00, 0x00, 0x66, 0x7f, 0x7f, 0x6b, 0x63, 0x00, + 0x00, 0x00, 0x7c, 0x66, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x7c, 0x66, 0x66, 0x7c, 0x60, 0x60, + 0x00, 0x00, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x06, + 0x00, 0x00, 0x7c, 0x66, 0x60, 0x60, 0x60, 0x00, + 0x00, 0x00, 0x3e, 0x60, 0x3c, 0x06, 0x7c, 0x00, + 0x00, 0x18, 0x7e, 0x18, 0x18, 0x18, 0x0e, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0x00, 0x00, 0x63, 0x6b, 0x7f, 0x3e, 0x36, 0x00, + 0x00, 0x00, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3e, 0x0c, 0x78, + 0x00, 0x00, 0x7e, 0x0c, 0x18, 0x30, 0x7e, 0x00, + 0x01, 0x03, 0x06, 0x6c, 0x78, 0x70, 0x60, 0x00, + 0x18, 0x3c, 0x7e, 0xff, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0xff, 0x7e, 0x3c, 0x18, + 0x10, 0x30, 0x70, 0xff, 0xff, 0x70, 0x30, 0x10, + 0x08, 0x0c, 0x0e, 0xff, 0xff, 0x0e, 0x0c, 0x08, +}; + +/* French Zak font. */ +static const unsigned char frenchCharsetDataV2[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x03, 0x06, 0x0c, 0x18, 0x3e, 0x03, 0x00, + 0x80, 0xc0, 0x60, 0x30, 0x18, 0x7c, 0xc0, 0x00, + 0x00, 0x03, 0x3e, 0x18, 0x0c, 0x06, 0x03, 0x01, + 0x00, 0xc0, 0x7c, 0x18, 0x30, 0x60, 0xc0, 0x80, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, + 0x03, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x7f, + 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, + 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, + 0x00, 0x00, 0x00, 0x80, 0xc0, 0x60, 0x30, 0x18, + 0x18, 0x30, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, + 0x18, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xf8, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xf8, 0xf8, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1f, 0x1f, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x03, 0x07, 0x0c, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, 0x18, 0x18, + 0x18, 0x18, 0x30, 0xe0, 0xc0, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1f, 0x1f, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xf8, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xff, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x3c, 0x66, 0xc3, 0xc3, 0x66, 0x3c, 0x18, + 0x18, 0x3c, 0x7e, 0xff, 0xff, 0x7e, 0x3c, 0x18, + 0x18, 0x66, 0xc3, 0xdb, 0xdb, 0xc3, 0x66, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x66, 0x66, 0xff, 0x66, 0xff, 0x66, 0x66, 0x00, + 0x18, 0x3e, 0x60, 0x3c, 0x06, 0x7c, 0x18, 0x00, + 0x62, 0x66, 0x0c, 0x18, 0x30, 0x66, 0x46, 0x00, + 0x3c, 0x66, 0x3c, 0x38, 0x67, 0x66, 0x3f, 0x00, + 0x30, 0x18, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0c, 0x18, 0x30, 0x30, 0x30, 0x18, 0x0c, 0x00, + 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x18, 0x30, 0x00, + 0x00, 0x66, 0x3c, 0xff, 0x3c, 0x66, 0x00, 0x00, + 0x00, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, + 0x00, 0x03, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x18, 0x18, 0x38, 0x18, 0x18, 0x18, 0x7e, 0x00, + 0x3c, 0x66, 0x06, 0x0c, 0x30, 0x60, 0x7e, 0x00, + 0x3c, 0x66, 0x06, 0x1c, 0x06, 0x66, 0x3c, 0x00, + 0x06, 0x0e, 0x1e, 0x66, 0x7f, 0x06, 0x06, 0x00, + 0x7e, 0x60, 0x7c, 0x06, 0x06, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x60, 0x7c, 0x66, 0x66, 0x3c, 0x00, + 0x7e, 0x66, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x3c, 0x66, 0x66, 0x3c, 0x66, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x66, 0x3e, 0x06, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x10, 0x08, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x18, 0x24, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x3c, 0x60, 0x60, 0x3c, 0x18, 0x38, + 0x3c, 0x66, 0x06, 0x0c, 0x18, 0x00, 0x18, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x3c, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x66, 0x66, 0x7c, 0x00, + 0x3c, 0x66, 0x60, 0x60, 0x60, 0x66, 0x3c, 0x00, + 0x78, 0x6c, 0x66, 0x66, 0x66, 0x6c, 0x78, 0x00, + 0x7e, 0x60, 0x60, 0x78, 0x60, 0x60, 0x7e, 0x00, + 0x7e, 0x60, 0x60, 0x78, 0x60, 0x60, 0x60, 0x00, + 0x3c, 0x66, 0x60, 0x6e, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x3c, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0x1e, 0x0c, 0x0c, 0x0c, 0x0c, 0x6c, 0x38, 0x00, + 0x66, 0x6c, 0x78, 0x70, 0x78, 0x6c, 0x66, 0x00, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7e, 0x00, + 0x63, 0x77, 0x7f, 0x6b, 0x63, 0x63, 0x63, 0x00, + 0x66, 0x76, 0x7e, 0x7e, 0x6e, 0x66, 0x66, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x60, 0x60, 0x60, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x0e, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x78, 0x6c, 0x66, 0x00, + 0x3c, 0x66, 0x60, 0x3c, 0x06, 0x66, 0x3c, 0x00, + 0x7e, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0x63, 0x63, 0x63, 0x6b, 0x7f, 0x77, 0x63, 0x00, + 0x66, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0x66, 0x00, + 0x66, 0x66, 0x66, 0x3c, 0x18, 0x18, 0x18, 0x00, + 0x7e, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x7e, 0x00, + 0x08, 0x10, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x10, 0x08, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x18, 0x24, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdb, 0xdb, 0x00, + 0x00, 0x6c, 0x00, 0x38, 0x18, 0x18, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x00, 0x60, 0x60, 0x7c, 0x66, 0x66, 0x7c, 0x00, + 0x00, 0x00, 0x3c, 0x60, 0x60, 0x60, 0x3c, 0x00, + 0x00, 0x06, 0x06, 0x3e, 0x66, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x00, 0x0e, 0x18, 0x3e, 0x18, 0x18, 0x18, 0x00, + 0x00, 0x00, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x7c, + 0x00, 0x60, 0x60, 0x7c, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x18, 0x00, 0x38, 0x18, 0x18, 0x3c, 0x00, + 0x00, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x3c, + 0x00, 0x60, 0x60, 0x6c, 0x78, 0x6c, 0x66, 0x00, + 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0x00, 0x00, 0x66, 0x7f, 0x7f, 0x6b, 0x63, 0x00, + 0x00, 0x00, 0x7c, 0x66, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x7c, 0x66, 0x66, 0x7c, 0x60, 0x60, + 0x00, 0x00, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x06, + 0x00, 0x00, 0x7c, 0x66, 0x60, 0x60, 0x60, 0x00, + 0x00, 0x00, 0x3e, 0x60, 0x3c, 0x06, 0x7c, 0x00, + 0x00, 0x18, 0x7e, 0x18, 0x18, 0x18, 0x0e, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0x00, 0x00, 0x63, 0x6b, 0x7f, 0x3e, 0x36, 0x00, + 0x00, 0x00, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3e, 0x0c, 0x78, + 0x00, 0x00, 0x7e, 0x0c, 0x18, 0x30, 0x7e, 0x00, + 0x18, 0x24, 0x00, 0x38, 0x18, 0x18, 0x3c, 0x00, + 0x18, 0x24, 0x00, 0x3c, 0x66, 0x66, 0x3c, 0x00, + 0x10, 0x08, 0x00, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x18, 0x24, 0x00, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x08, 0x0c, 0x0e, 0xff, 0xff, 0x0e, 0x0c, 0x08, +}; + +/* Italian Zak font. */ +static const unsigned char italianCharsetDataV2[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x03, 0x06, 0x0c, 0x18, 0x3e, 0x03, 0x00, + 0x80, 0xc0, 0x60, 0x30, 0x18, 0x7c, 0xc0, 0x00, + 0x00, 0x03, 0x3e, 0x18, 0x0c, 0x06, 0x03, 0x01, + 0x00, 0xc0, 0x7c, 0x18, 0x30, 0x60, 0xc0, 0x80, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, + 0x03, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x7f, + 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, + 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, + 0x00, 0x00, 0x00, 0x80, 0xc0, 0x60, 0x30, 0x18, + 0x18, 0x30, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, + 0x18, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xf8, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xf8, 0xf8, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1f, 0x1f, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x03, 0x07, 0x0c, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, 0x18, 0x18, + 0x18, 0x18, 0x30, 0xe0, 0xc0, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1f, 0x1f, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xf8, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xff, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x3c, 0x66, 0xc3, 0xc3, 0x66, 0x3c, 0x18, + 0x18, 0x3c, 0x7e, 0xff, 0xff, 0x7e, 0x3c, 0x18, + 0x18, 0x66, 0xc3, 0xdb, 0xdb, 0xc3, 0x66, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x66, 0x66, 0xff, 0x66, 0xff, 0x66, 0x66, 0x00, + 0x18, 0x3e, 0x60, 0x3c, 0x06, 0x7c, 0x18, 0x00, + 0x62, 0x66, 0x0c, 0x18, 0x30, 0x66, 0x46, 0x00, + 0x3c, 0x66, 0x3c, 0x38, 0x67, 0x66, 0x3f, 0x00, + 0x30, 0x18, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0c, 0x18, 0x30, 0x30, 0x30, 0x18, 0x0c, 0x00, + 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x18, 0x30, 0x00, + 0x00, 0x66, 0x3c, 0xff, 0x3c, 0x66, 0x00, 0x00, + 0x00, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, + 0x00, 0x03, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x18, 0x18, 0x38, 0x18, 0x18, 0x18, 0x7e, 0x00, + 0x3c, 0x66, 0x06, 0x0c, 0x30, 0x60, 0x7e, 0x00, + 0x3c, 0x66, 0x06, 0x1c, 0x06, 0x66, 0x3c, 0x00, + 0x06, 0x0e, 0x1e, 0x66, 0x7f, 0x06, 0x06, 0x00, + 0x7e, 0x60, 0x7c, 0x06, 0x06, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x60, 0x7c, 0x66, 0x66, 0x3c, 0x00, + 0x7e, 0x66, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x3c, 0x66, 0x66, 0x3c, 0x66, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x66, 0x3e, 0x06, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x10, 0x08, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x08, 0x10, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x10, 0x08, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x3c, 0x66, 0x06, 0x0c, 0x18, 0x00, 0x18, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x3c, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x66, 0x66, 0x7c, 0x00, + 0x3c, 0x66, 0x60, 0x60, 0x60, 0x66, 0x3c, 0x00, + 0x78, 0x6c, 0x66, 0x66, 0x66, 0x6c, 0x78, 0x00, + 0x7e, 0x60, 0x60, 0x78, 0x60, 0x60, 0x7e, 0x00, + 0x7e, 0x60, 0x60, 0x78, 0x60, 0x60, 0x60, 0x00, + 0x3c, 0x66, 0x60, 0x6e, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x3c, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0x1e, 0x0c, 0x0c, 0x0c, 0x0c, 0x6c, 0x38, 0x00, + 0x66, 0x6c, 0x78, 0x70, 0x78, 0x6c, 0x66, 0x00, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7e, 0x00, + 0x63, 0x77, 0x7f, 0x6b, 0x63, 0x63, 0x63, 0x00, + 0x66, 0x76, 0x7e, 0x7e, 0x6e, 0x66, 0x66, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x60, 0x60, 0x60, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x0e, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x78, 0x6c, 0x66, 0x00, + 0x3c, 0x66, 0x60, 0x3c, 0x06, 0x66, 0x3c, 0x00, + 0x7e, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0x63, 0x63, 0x63, 0x6b, 0x7f, 0x77, 0x63, 0x00, + 0x66, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0x66, 0x00, + 0x66, 0x66, 0x66, 0x3c, 0x18, 0x18, 0x18, 0x00, + 0x7e, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x7e, 0x00, + 0x08, 0x10, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x10, 0x08, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x18, 0x24, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdb, 0xdb, 0x00, + 0x00, 0x6c, 0x00, 0x38, 0x18, 0x18, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x00, 0x60, 0x60, 0x7c, 0x66, 0x66, 0x7c, 0x00, + 0x00, 0x00, 0x3c, 0x60, 0x60, 0x60, 0x3c, 0x00, + 0x00, 0x06, 0x06, 0x3e, 0x66, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x00, 0x0e, 0x18, 0x3e, 0x18, 0x18, 0x18, 0x00, + 0x00, 0x00, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x7c, + 0x00, 0x60, 0x60, 0x7c, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x18, 0x00, 0x38, 0x18, 0x18, 0x3c, 0x00, + 0x00, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x3c, + 0x00, 0x60, 0x60, 0x6c, 0x78, 0x6c, 0x66, 0x00, + 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0x00, 0x00, 0x66, 0x7f, 0x7f, 0x6b, 0x63, 0x00, + 0x00, 0x00, 0x7c, 0x66, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x7c, 0x66, 0x66, 0x7c, 0x60, 0x60, + 0x00, 0x00, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x06, + 0x00, 0x00, 0x7c, 0x66, 0x60, 0x60, 0x60, 0x00, + 0x00, 0x00, 0x3e, 0x60, 0x3c, 0x06, 0x7c, 0x00, + 0x00, 0x18, 0x7e, 0x18, 0x18, 0x18, 0x0e, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0x00, 0x00, 0x63, 0x6b, 0x7f, 0x3e, 0x36, 0x00, + 0x00, 0x00, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3e, 0x0c, 0x78, + 0x00, 0x00, 0x7e, 0x0c, 0x18, 0x30, 0x7e, 0x00, + 0x10, 0x08, 0x00, 0x38, 0x18, 0x18, 0x3c, 0x00, + 0x10, 0x08, 0x00, 0x3c, 0x66, 0x66, 0x3c, 0x00, + 0x10, 0x08, 0x00, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x18, 0x24, 0x00, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x08, 0x0c, 0x0e, 0xff, 0xff, 0x0e, 0x0c, 0x08, +}; + +/* Spanish Zak font. */ +static const unsigned char spanishCharsetDataV2[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x03, 0x06, 0x0c, 0x18, 0x3e, 0x03, 0x00, + 0x80, 0xc0, 0x60, 0x30, 0x18, 0x7c, 0xc0, 0x00, + 0x00, 0x03, 0x3e, 0x18, 0x0c, 0x06, 0x03, 0x01, + 0x00, 0xc0, 0x7c, 0x18, 0x30, 0x60, 0xc0, 0x80, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, + 0x03, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x7f, + 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, + 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, + 0x00, 0x00, 0x00, 0x80, 0xc0, 0x60, 0x30, 0x18, + 0x18, 0x30, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, + 0x18, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xf8, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xf8, 0xf8, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1f, 0x1f, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x03, 0x07, 0x0c, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x30, 0x18, 0x18, + 0x18, 0x18, 0x30, 0xe0, 0xc0, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x0c, 0x07, 0x03, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x1f, 0x1f, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xf8, 0xf8, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0xff, 0xff, 0x18, 0x18, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x3c, 0x66, 0xc3, 0xc3, 0x66, 0x3c, 0x18, + 0x18, 0x3c, 0x7e, 0xff, 0xff, 0x7e, 0x3c, 0x18, + 0x18, 0x66, 0xc3, 0xdb, 0xdb, 0xc3, 0x66, 0x18, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x66, 0x66, 0xff, 0x66, 0xff, 0x66, 0x66, 0x00, + 0x18, 0x3e, 0x60, 0x3c, 0x06, 0x7c, 0x18, 0x00, + 0x62, 0x66, 0x0c, 0x18, 0x30, 0x66, 0x46, 0x00, + 0x3c, 0x66, 0x3c, 0x38, 0x67, 0x66, 0x3f, 0x00, + 0x30, 0x18, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0c, 0x18, 0x30, 0x30, 0x30, 0x18, 0x0c, 0x00, + 0x30, 0x18, 0x0c, 0x0c, 0x0c, 0x18, 0x30, 0x00, + 0x00, 0x66, 0x3c, 0xff, 0x3c, 0x66, 0x00, 0x00, + 0x00, 0x18, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, + 0x00, 0x03, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x18, 0x18, 0x38, 0x18, 0x18, 0x18, 0x7e, 0x00, + 0x3c, 0x66, 0x06, 0x0c, 0x30, 0x60, 0x7e, 0x00, + 0x3c, 0x66, 0x06, 0x1c, 0x06, 0x66, 0x3c, 0x00, + 0x06, 0x0e, 0x1e, 0x66, 0x7f, 0x06, 0x06, 0x00, + 0x7e, 0x60, 0x7c, 0x06, 0x06, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x60, 0x7c, 0x66, 0x66, 0x3c, 0x00, + 0x7e, 0x66, 0x0c, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x3c, 0x66, 0x66, 0x3c, 0x66, 0x66, 0x3c, 0x00, + 0x3c, 0x66, 0x66, 0x3e, 0x06, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x18, 0x30, + 0x0e, 0x18, 0x30, 0x60, 0x30, 0x18, 0x0e, 0x00, + 0x7c, 0x82, 0xba, 0xa2, 0xa2, 0xba, 0x82, 0x7c, + 0x70, 0x18, 0x0c, 0x06, 0x0c, 0x18, 0x70, 0x00, + 0x3c, 0x66, 0x06, 0x0c, 0x18, 0x00, 0x18, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x18, 0x3c, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x66, 0x66, 0x7c, 0x00, + 0x3c, 0x66, 0x60, 0x60, 0x60, 0x66, 0x3c, 0x00, + 0x78, 0x6c, 0x66, 0x66, 0x66, 0x6c, 0x78, 0x00, + 0x7e, 0x60, 0x60, 0x78, 0x60, 0x60, 0x7e, 0x00, + 0x7e, 0x60, 0x60, 0x78, 0x60, 0x60, 0x60, 0x00, + 0x3c, 0x66, 0x60, 0x6e, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x7e, 0x66, 0x66, 0x66, 0x00, + 0x3c, 0x18, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0x1e, 0x0c, 0x0c, 0x0c, 0x0c, 0x6c, 0x38, 0x00, + 0x66, 0x6c, 0x78, 0x70, 0x78, 0x6c, 0x66, 0x00, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7e, 0x00, + 0x63, 0x77, 0x7f, 0x6b, 0x63, 0x63, 0x63, 0x00, + 0x66, 0x76, 0x7e, 0x7e, 0x6e, 0x66, 0x66, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x60, 0x60, 0x60, 0x00, + 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x0e, 0x00, + 0x7c, 0x66, 0x66, 0x7c, 0x78, 0x6c, 0x66, 0x00, + 0x3c, 0x66, 0x60, 0x3c, 0x06, 0x66, 0x3c, 0x00, + 0x7e, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0x63, 0x63, 0x63, 0x6b, 0x7f, 0x77, 0x63, 0x00, + 0x66, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0x66, 0x00, + 0x66, 0x66, 0x66, 0x3c, 0x18, 0x18, 0x18, 0x00, + 0x7e, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x7e, 0x00, + 0x66, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x66, 0x00, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x66, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xdb, 0xdb, 0x00, + 0x00, 0x10, 0x30, 0x7f, 0x7f, 0x30, 0x10, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3c, 0x06, 0x3e, 0x66, 0x3e, 0x00, + 0x00, 0x60, 0x60, 0x7c, 0x66, 0x66, 0x7c, 0x00, + 0x00, 0x00, 0x3c, 0x60, 0x60, 0x60, 0x3c, 0x00, + 0x00, 0x06, 0x06, 0x3e, 0x66, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x7e, 0x60, 0x3c, 0x00, + 0x00, 0x0e, 0x18, 0x3e, 0x18, 0x18, 0x18, 0x00, + 0x00, 0x00, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x7c, + 0x00, 0x60, 0x60, 0x7c, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x18, 0x00, 0x38, 0x18, 0x18, 0x3c, 0x00, + 0x00, 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x3c, + 0x00, 0x60, 0x60, 0x6c, 0x78, 0x6c, 0x66, 0x00, + 0x00, 0x38, 0x18, 0x18, 0x18, 0x18, 0x3c, 0x00, + 0x00, 0x00, 0x66, 0x7f, 0x7f, 0x6b, 0x63, 0x00, + 0x00, 0x00, 0x7c, 0x66, 0x66, 0x66, 0x66, 0x00, + 0x00, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x00, 0x00, 0x7c, 0x66, 0x66, 0x7c, 0x60, 0x60, + 0x00, 0x00, 0x3e, 0x66, 0x66, 0x3e, 0x06, 0x06, + 0x00, 0x00, 0x7c, 0x66, 0x60, 0x60, 0x60, 0x00, + 0x00, 0x00, 0x3e, 0x60, 0x3c, 0x06, 0x7c, 0x00, + 0x00, 0x18, 0x7e, 0x18, 0x18, 0x18, 0x0e, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3e, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x00, + 0x00, 0x00, 0x63, 0x6b, 0x7f, 0x3e, 0x36, 0x00, + 0x00, 0x00, 0x66, 0x3c, 0x18, 0x3c, 0x66, 0x00, + 0x00, 0x00, 0x66, 0x66, 0x66, 0x3e, 0x0c, 0x78, + 0x00, 0x00, 0x7e, 0x0c, 0x18, 0x30, 0x7e, 0x00, + 0x66, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x66, 0x18, 0x3c, 0x66, 0x7e, 0x66, 0x66, 0x00, + 0x42, 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, + 0x1c, 0x36, 0x36, 0x7c, 0x66, 0x66, 0x7c, 0x40, + 0x08, 0x0c, 0x0e, 0xff, 0xff, 0x0e, 0x0c, 0x08, +}; + +unsigned char *specialCharsetData = NULL; +int numSpecialChars = 0; + +void compressCharset(const unsigned char *data, char *var, char *name) { + int i; + + printf("// %s\n", name); + printf("static const byte %s[] = {\n", var); + + for (i = 0; i < 128; i++) { + if (memcmp(data + 8 * i, englishCharsetDataV2 + 8 * i, 8) != 0) { + /* The character is different from our baseline font. + * Look in the list of special characters. + */ + int j; + + for (j = 0; j < numSpecialChars; j++) { + if (memcmp(data + 8 * i, specialCharsetData + 8 * j, 8) == 0) + break; + } + + if (j >= numSpecialChars) { + specialCharsetData = (unsigned char *)realloc(specialCharsetData, 8 * (numSpecialChars + 1)); + memcpy(specialCharsetData + 8 * numSpecialChars, data + 8 * i, 8); + numSpecialChars++; + } + + printf("\t%d, %d,\n", i, j); + } + } + + printf("};\n\n"); +} + +int main() { + int i, j; + + printf("// These replacement character tables have been created using the\n"); + printf("// make-scumm-fontdata tool.\n\n"); + + /* + * Create an array of replacement characters for each font data set. + * Each replacement character consists of a character code and an + * offset into the specialCharsetData[] array. + */ + + compressCharset(germanCharsetDataV2, "germanCharsetDataV2", "German Zak font."); + compressCharset(germanCharsetDataV0, "germanCharsetDataV0", "German C64 MM."); + compressCharset(frenchCharsetDataV2, "frenchCharsetDataV2", "French Zak font."); + compressCharset(italianCharsetDataV2, "italianCharsetDataV2", "Italian Zak font."); + compressCharset(spanishCharsetDataV2, "spanishCharsetDataV2", "Spanish Zak font."); + + printf("// Special characters\n"); + printf("static const byte specialCharsetData[] = {\n"); + + for (i = 0; i < numSpecialChars; i++) { + printf("\t"); + for (j = 0; j < 8; j++) { + printf("0x%02x,", specialCharsetData[8 * i + j]); + if (j < 7) + printf(" "); + } + printf("\n"); + } + + printf("};\n"); + + return 0; +} |