summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2007-04-04 00:16:11 +0000
committerJens Arnold <amiconn@rockbox.org>2007-04-04 00:16:11 +0000
commit5a6968918800d64062fa03deae530886aaa42db7 (patch)
tree6055ceb960b2caf179268e4ed27e3fd59731934d
parent61350bf91cbe18c5a6d390c1d0140326031703e1 (diff)
Replace obsolete generate_rocklatin tool with player_unifont tool.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13014 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/drivers/lcd-charset-player.c4
-rw-r--r--firmware/export/lcd-charcell.h2
-rw-r--r--tools/Makefile4
-rwxr-xr-xtools/configure2
-rw-r--r--tools/generate_rocklatin.c747
-rw-r--r--tools/player_unifont.c778
6 files changed, 785 insertions, 752 deletions
diff --git a/firmware/drivers/lcd-charset-player.c b/firmware/drivers/lcd-charset-player.c
index 5e97f06f43..db1cd04884 100644
--- a/firmware/drivers/lcd-charset-player.c
+++ b/firmware/drivers/lcd-charset-player.c
@@ -110,7 +110,7 @@ enum {
#endif
};
-static const struct xchar_info xchar_info_newlcd[] = {
+const struct xchar_info xchar_info_newlcd[] = {
/* Standard ascii */
{ 0x20, 0, 0, 0x20 }, /* */
{ 0x21, 0, 0, 0x21 }, /* ! */
@@ -610,7 +610,7 @@ static const struct xchar_info xchar_info_newlcd[] = {
{ 0xfffd, 0, 0, 0x91 },
};
-static const struct xchar_info xchar_info_oldlcd[] = {
+const struct xchar_info xchar_info_oldlcd[] = {
/* Standard ascii */
{ 0x20, 0, 0, 0x24 }, /* */
{ 0x21, 0, 0, 0x25 }, /* ! */
diff --git a/firmware/export/lcd-charcell.h b/firmware/export/lcd-charcell.h
index 0684f9cd7b..8fc1dbba19 100644
--- a/firmware/export/lcd-charcell.h
+++ b/firmware/export/lcd-charcell.h
@@ -16,6 +16,8 @@
* KIND, either express or implied.
*
****************************************************************************/
+
+#include "config.h"
/* target dependent - to be adjusted for other charcell targets */
#define HW_PATTERN_SIZE 7 /* number of bytes per pattern */
diff --git a/tools/Makefile b/tools/Makefile
index d957f75327..a25447c20e 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -53,8 +53,8 @@ convbdf: convbdf.c
codepages: codepages.c codepage_tables.c
$(SILENT)$(CC) -g $+ -o $@
-generate_rocklatin: generate_rocklatin.c ../firmware/drivers/lcd-player-charset.c
- $(SILENT)$(CC) -DHAVE_LCD_CHARCELLS -D__CONFIG_H__ -I../firmware/export $+ -o $@
+player_unifont: player_unifont.c ../firmware/drivers/lcd-charset-player.c
+ $(SILENT)$(CC) -DARCHOS_PLAYER -D__PCTOOL__ -I../firmware/export $+ -o $@
uclpack:
$(SILENT)$(MAKE) -C ucl
diff --git a/tools/configure b/tools/configure
index 0341a29e85..86f0db4425 100755
--- a/tools/configure
+++ b/tools/configure
@@ -661,7 +661,7 @@ EOF
# toolset is the tools within the tools directory that we build for
# this particular target.
- toolset="$toolset scramble descramble sh2d uclpack"
+ toolset="$toolset scramble descramble sh2d player_unifont uclpack"
# Note: the convbdf is present in the toolset just because: 1) the
# firmware/Makefile assumes it is present always, and 2) we will need it when we
diff --git a/tools/generate_rocklatin.c b/tools/generate_rocklatin.c
deleted file mode 100644
index 2736f0d7c3..0000000000
--- a/tools/generate_rocklatin.c
+++ /dev/null
@@ -1,747 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2003 by Kjell Ericson
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#define CHAR_WIDTH 8
-#define CHAR_HEIGHT 8
-
-#define BITMAP_WIDTH ((CHAR_WIDTH)*17)
-#define BITMAP_HEIGHT ((CHAR_HEIGHT)*17)
-
-#define SIZE 2
-
-unsigned int bitmap[BITMAP_WIDTH][BITMAP_HEIGHT];
-
-extern unsigned char extended_font_player[256][8];
-
-extern unsigned char font_new_player[256][5];
-extern unsigned char font_old_player[256][5];
-
-extern unsigned short new_lcd_rocklatin1_to_xlcd[];
-extern unsigned short old_lcd_rocklatin1_to_xlcd[];
-extern unsigned char lcd_player_extended_lcd_to_rocklatin1[];
-
-unsigned char (* font)[256][5];
-unsigned short *rocklatin;
-
-char show_subst=0;
-char show_hardware=0;
-char shadow_show_hardware=0;
-
-void set_pixel(int x, int y, int col)
-{
- bitmap[x][y]=col;
-}
-
-void draw_extended_char(unsigned char chr, int x, int y)
-{
- int x2, y2;
- unsigned char *data;
- short mapped_char;
- int col=0;
-
- data=extended_font_player[chr];
- col=0xf00000;
-
- for (x2=0; x2<5; x2++) {
- for (y2=0; y2<7; y2++) {
- if (data[y2]&((1<<4)>>x2))
- set_pixel(x+x2, y+y2, col);
- else
- set_pixel(x+x2, y+y2, 0xc0c0c0);
- }
- }
-}
-
-
-void draw_char(unsigned char chr, int x, int y)
-{
- int x2, y2;
- unsigned char *data;
- short mapped_char;
- int col=0;
-
- if (show_hardware)
- mapped_char=chr;
- else {
- mapped_char=rocklatin[chr];
- if (chr<=0x20 && mapped_char==0xff)
- mapped_char=rocklatin[' '];
- }
- if (mapped_char>=512) {
- if (show_subst) {
- chr=lcd_player_extended_lcd_to_rocklatin1[mapped_char-512];
- mapped_char=rocklatin[chr];
- data=(*font)[mapped_char];
- } else {
- draw_extended_char(mapped_char-512, x, y);
- return;
- }
- col=0xf00000;
- } else if (mapped_char<256) {
- data=(*font)[mapped_char];
- } else if (mapped_char>=256) {
- mapped_char=mapped_char-256;
- }
-
- for (x2=0; x2<5; x2++) {
- for (y2=0; y2<7; y2++) {
- if (data[x2]&(1<<y2))
- set_pixel(x+x2, y+y2, col);
- else
- set_pixel(x+x2, y+y2, 0xc0c0c0);
- }
- }
-}
-
-int main (int argc, char** argv)
-{
- int x, y;
- int loop;
- char *filename;
- FILE *fp;
-
- printf("This tool will generate gif-pictures that reflect the current "
- "rocklatin1 charset of the Player.\nThis tool is compiled with "
- "the source, so don't forget to 'make' it before starting.\n"
- "This tool will generate pnm-pictures that then automatically is "
- "converted to gif pictures using the 'convert' tool of "
- "ImageMagick.\n"
- "The generated gif-pictures shall then be copied to www/docs.\n");
-
- for (loop=0; loop<6; loop++) {
- switch (loop) {
- case 0:
- font=&font_old_player;
- rocklatin=old_lcd_rocklatin1_to_xlcd;
- filename="lcd_old.gif";
- show_subst=0;
- show_hardware=0;
- break;
- case 1:
- font=&font_new_player;
- rocklatin=new_lcd_rocklatin1_to_xlcd;
- filename="lcd_new.gif";
- show_subst=0;
- show_hardware=0;
- break;
- case 2:
- font=&font_old_player;
- rocklatin=old_lcd_rocklatin1_to_xlcd;
- filename="lcd_old_subst.gif";
- show_subst=1;
- show_hardware=0;
- break;
- case 3:
- font=&font_new_player;
- rocklatin=new_lcd_rocklatin1_to_xlcd;
- filename="lcd_new_subst.gif";
- show_subst=1;
- show_hardware=0;
- break;
- case 4:
- font=&font_old_player;
- rocklatin=old_lcd_rocklatin1_to_xlcd;
- filename="lcd_old_hw.gif";
- show_subst=1;
- show_hardware=1;
- break;
- case 5:
- font=&font_new_player;
- rocklatin=new_lcd_rocklatin1_to_xlcd;
- filename="lcd_new_hw.gif";
- show_subst=1;
- show_hardware=1;
- break;
- default:
- printf("Not in loop!\n");
- exit(0);
- }
- fp=fopen("tmp.pnm", "wb");
- if (!fp) {
- printf("Error opening %s!\n", filename);
- exit(0);
- }
- memset(bitmap, 255, sizeof(bitmap));
-
- fprintf(fp, "P3\n#PNM showing a picture of the Rocklatin charset\n");
-
- fprintf(fp, "%d %d\n255\n", BITMAP_HEIGHT*SIZE, BITMAP_WIDTH*SIZE);
-
- shadow_show_hardware=show_hardware;
- show_hardware=0;
- for (x=0; x<16; x++) {
- draw_char(x+(x<10?'0':'A'-10), CHAR_WIDTH+CHAR_WIDTH*x+1, 0);
- draw_char(x+(x<10?'0':'A'-10), 1, CHAR_WIDTH+CHAR_WIDTH*x);
- }
- show_hardware=shadow_show_hardware;
-
- for (x=0; x<16; x++) {
- for (y=0; y<16; y++) {
- draw_char(x+y*16, CHAR_WIDTH+CHAR_WIDTH*x+1, y*CHAR_HEIGHT+CHAR_HEIGHT);
- }
- }
-
- for (y=0; y<BITMAP_HEIGHT; y++) {
- int i, z;
- for (i=0; i<SIZE; i++) {
- for (x=0; x<BITMAP_WIDTH; x++) {
- unsigned int col=bitmap[x][y];
- if (y<CHAR_HEIGHT || x<CHAR_WIDTH) {
- col=0xffffffff-col;
- }
- for (z=0; z<SIZE; z++) {
- fprintf(fp, "%d ", (col>>16)&255);
- fprintf(fp, "%d ", (col>>8)&255);
- fprintf(fp, "%d ", (col)&255);
- }
- }
- fprintf(fp, "\n");
- }
- }
- fclose(fp);
- {
- char buffer[200];
- sprintf(buffer, "convert tmp.pnm %s", filename);
- system(buffer);
- system("rm tmp.pnm");
- }
- }
-}
-
-unsigned char font_new_player[256][5] = {
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 00 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 01 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 02 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 03 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 04 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 05 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 06 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 07 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 08 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 09 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0a */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0b */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0c */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0d */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0e */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0f */
- { 0x3e, 0x1c, 0x1c, 0x08, 0x08 }, /* 10 */
- { 0x08, 0x08, 0x1c, 0x1c, 0x3e }, /* 11 */
- { 0x02, 0x04, 0x08, 0x10, 0x20 }, /* 12 */
- { 0x00, 0x4f, 0x00, 0x4f, 0x00 }, /* 13 */
- { 0x06, 0x0f, 0x7f, 0x01, 0x7f }, /* 14 */
- { 0x48, 0x56, 0x55, 0x35, 0x09 }, /* 15 */
- { 0x0c, 0x0c, 0x0c, 0x0c, 0x0c }, /* 16 */
- { 0x10, 0x38, 0x54, 0x10, 0x1f }, /* 17 */
- { 0x04, 0x02, 0x7f, 0x02, 0x04 }, /* 18 */
- { 0x10, 0x20, 0x7f, 0x20, 0x10 }, /* 19 */
- { 0x7f, 0x3e, 0x1c, 0x08, 0x7f }, /* 1a */
- { 0x7f, 0x08, 0x1c, 0x3e, 0x7f }, /* 1b */
- { 0x7f, 0x08, 0x2a, 0x1c, 0x08 }, /* 1c */
- { 0x08, 0x1c, 0x2a, 0x08, 0x7f }, /* 1d */
- { 0x02, 0x0e, 0x3e, 0x0e, 0x02 }, /* 1e */
- { 0x20, 0x38, 0x3e, 0x38, 0x20 }, /* 1f */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 20 */
- { 0x00, 0x00, 0x4f, 0x00, 0x00 }, /* 21 */
- { 0x00, 0x07, 0x00, 0x07, 0x00 }, /* 22 */
- { 0x14, 0x7f, 0x14, 0x7f, 0x14 }, /* 23 */
- { 0x24, 0x2a, 0x7f, 0x2a, 0x12 }, /* 24 */
- { 0x23, 0x13, 0x08, 0x64, 0x62 }, /* 25 */
- { 0x36, 0x49, 0x55, 0x22, 0x50 }, /* 26 */
- { 0x00, 0x05, 0x03, 0x00, 0x00 }, /* 27 */
- { 0x00, 0x1c, 0x22, 0x41, 0x00 }, /* 28 */
- { 0x00, 0x41, 0x22, 0x1c, 0x00 }, /* 29 */
- { 0x14, 0x08, 0x3e, 0x08, 0x14 }, /* 2a */
- { 0x08, 0x08, 0x3e, 0x08, 0x08 }, /* 2b */
- { 0x00, 0x50, 0x30, 0x00, 0x00 }, /* 2c */
- { 0x08, 0x08, 0x08, 0x08, 0x08 }, /* 2d */
- { 0x00, 0x30, 0x30, 0x00, 0x00 }, /* 2e */
- { 0x20, 0x10, 0x08, 0x04, 0x02 }, /* 2f */
- { 0x3e, 0x51, 0x49, 0x45, 0x3e }, /* 30 */
- { 0x00, 0x42, 0x7f, 0x40, 0x00 }, /* 31 */
- { 0x42, 0x61, 0x51, 0x49, 0x46 }, /* 32 */
- { 0x21, 0x41, 0x45, 0x4b, 0x31 }, /* 33 */
- { 0x18, 0x14, 0x12, 0x7f, 0x10 }, /* 34 */
- { 0x27, 0x45, 0x45, 0x45, 0x39 }, /* 35 */
- { 0x3c, 0x4a, 0x49, 0x49, 0x30 }, /* 36 */
- { 0x01, 0x01, 0x71, 0x0d, 0x03 }, /* 37 */
- { 0x36, 0x49, 0x49, 0x49, 0x36 }, /* 38 */
- { 0x06, 0x49, 0x49, 0x29, 0x1e }, /* 39 */
- { 0x00, 0x36, 0x36, 0x00, 0x00 }, /* 3a */
- { 0x00, 0x5b, 0x3b, 0x00, 0x00 }, /* 3b */
- { 0x08, 0x14, 0x22, 0x41, 0x00 }, /* 3c */
- { 0x14, 0x14, 0x14, 0x14, 0x14 }, /* 3d */
- { 0x00, 0x41, 0x22, 0x14, 0x08 }, /* 3e */
- { 0x02, 0x01, 0x51, 0x09, 0x06 }, /* 3f */
- { 0x32, 0x49, 0x79, 0x41, 0x3e }, /* 40 */
- { 0x7e, 0x11, 0x11, 0x11, 0x7e }, /* 41 */
- { 0x7f, 0x49, 0x49, 0x49, 0x36 }, /* 42 */
- { 0x3e, 0x41, 0x41, 0x41, 0x22 }, /* 43 */
- { 0x7f, 0x41, 0x41, 0x22, 0x1c }, /* 44 */
- { 0x7f, 0x49, 0x49, 0x49, 0x41 }, /* 45 */
- { 0x7f, 0x09, 0x09, 0x09, 0x01 }, /* 46 */
- { 0x3e, 0x41, 0x49, 0x49, 0x7a }, /* 47 */
- { 0x7f, 0x08, 0x08, 0x08, 0x7f }, /* 48 */
- { 0x00, 0x41, 0x7f, 0x41, 0x00 }, /* 49 */
- { 0x20, 0x41, 0x41, 0x3f, 0x01 }, /* 4a */
- { 0x7f, 0x08, 0x14, 0x22, 0x41 }, /* 4b */
- { 0x7f, 0x40, 0x40, 0x40, 0x40 }, /* 4c */
- { 0x7f, 0x02, 0x0c, 0x02, 0x7f }, /* 4d */
- { 0x7f, 0x04, 0x08, 0x10, 0x7f }, /* 4e */
- { 0x3e, 0x41, 0x41, 0x41, 0x3e }, /* 4f */
- { 0x7f, 0x09, 0x09, 0x09, 0x06 }, /* 50 */
- { 0x3e, 0x41, 0x41, 0x21, 0x5e }, /* 51 */
- { 0x7f, 0x09, 0x19, 0x29, 0x46 }, /* 52 */
- { 0x26, 0x49, 0x49, 0x49, 0x32 }, /* 53 */
- { 0x01, 0x01, 0x7f, 0x01, 0x01 }, /* 54 */
- { 0x3f, 0x40, 0x40, 0x40, 0x3f }, /* 55 */
- { 0x1f, 0x20, 0x40, 0x20, 0x1f }, /* 56 */
- { 0x3f, 0x40, 0x38, 0x40, 0x3f }, /* 57 */
- { 0x63, 0x14, 0x08, 0x14, 0x63 }, /* 58 */
- { 0x03, 0x04, 0x78, 0x04, 0x03 }, /* 59 */
- { 0x61, 0x51, 0x49, 0x45, 0x43 }, /* 5a */
- { 0x00, 0x7f, 0x41, 0x41, 0x00 }, /* 5b */
- { 0x15, 0x16, 0x7c, 0x16, 0x15 }, /* 5c */
- { 0x00, 0x41, 0x41, 0x7f, 0x00 }, /* 5d */
- { 0x04, 0x02, 0x01, 0x02, 0x04 }, /* 5e */
- { 0x40, 0x40, 0x40, 0x40, 0x40 }, /* 5f */
- { 0x00, 0x01, 0x02, 0x04, 0x00 }, /* 60 */
- { 0x20, 0x54, 0x54, 0x54, 0x78 }, /* 61 */
- { 0x7f, 0x48, 0x44, 0x44, 0x38 }, /* 62 */
- { 0x38, 0x44, 0x44, 0x44, 0x20 }, /* 63 */
- { 0x38, 0x44, 0x44, 0x48, 0x7f }, /* 64 */
- { 0x38, 0x54, 0x54, 0x54, 0x18 }, /* 65 */
- { 0x08, 0x7e, 0x09, 0x01, 0x02 }, /* 66 */
- { 0x0c, 0x52, 0x52, 0x52, 0x3e }, /* 67 */
- { 0x7f, 0x08, 0x04, 0x04, 0x78 }, /* 68 */
- { 0x00, 0x44, 0x7d, 0x40, 0x00 }, /* 69 */
- { 0x20, 0x40, 0x44, 0x3d, 0x00 }, /* 6a */
- { 0x7f, 0x10, 0x28, 0x44, 0x00 }, /* 6b */
- { 0x00, 0x41, 0x7f, 0x40, 0x00 }, /* 6c */
- { 0x7c, 0x04, 0x18, 0x04, 0x78 }, /* 6d */
- { 0x7c, 0x08, 0x04, 0x04, 0x78 }, /* 6e */
- { 0x38, 0x44, 0x44, 0x44, 0x38 }, /* 6f */
- { 0x7c, 0x14, 0x14, 0x14, 0x08 }, /* 70 */
- { 0x08, 0x14, 0x14, 0x18, 0x7c }, /* 71 */
- { 0x7c, 0x08, 0x04, 0x04, 0x08 }, /* 72 */
- { 0x48, 0x54, 0x54, 0x54, 0x20 }, /* 73 */
- { 0x04, 0x3f, 0x44, 0x40, 0x20 }, /* 74 */
- { 0x3c, 0x40, 0x40, 0x20, 0x7c }, /* 75 */
- { 0x1c, 0x20, 0x40, 0x20, 0x1c }, /* 76 */
- { 0x3c, 0x40, 0x30, 0x40, 0x3c }, /* 77 */
- { 0x44, 0x28, 0x10, 0x28, 0x44 }, /* 78 */
- { 0x4c, 0x50, 0x50, 0x50, 0x3c }, /* 79 */
- { 0x44, 0x64, 0x54, 0x4c, 0x44 }, /* 7a */
- { 0x00, 0x08, 0x36, 0x41, 0x00 }, /* 7b */
- { 0x00, 0x00, 0x7f, 0x00, 0x00 }, /* 7c */
- { 0x00, 0x41, 0x36, 0x08, 0x00 }, /* 7d */
- { 0x08, 0x08, 0x2a, 0x1c, 0x08 }, /* 7e */
- { 0x08, 0x1c, 0x2a, 0x08, 0x08 }, /* 7f */
- { 0x40, 0x40, 0x40, 0x40, 0x40 }, /* 80 */
- { 0x60, 0x60, 0x60, 0x60, 0x60 }, /* 81 */
- { 0x70, 0x70, 0x70, 0x70, 0x70 }, /* 82 */
- { 0x78, 0x78, 0x78, 0x78, 0x78 }, /* 83 */
- { 0x7c, 0x7c, 0x7c, 0x7c, 0x7c }, /* 84 */
- { 0x7e, 0x7e, 0x7e, 0x7e, 0x7e }, /* 85 */
- { 0x7f, 0x7f, 0x7f, 0x7f, 0x7f }, /* 86 */
- { 0x08, 0x2a, 0x1c, 0x2a, 0x08 }, /* 87 */
- { 0x7f, 0x00, 0x00, 0x00, 0x7f }, /* 88 */
- { 0x7f, 0x7f, 0x00, 0x00, 0x7f }, /* 89 */
- { 0x7f, 0x7f, 0x7f, 0x00, 0x7f }, /* 8a */
- { 0x00, 0x7f, 0x00, 0x00, 0x00 }, /* 8b */
- { 0x00, 0x7f, 0x7f, 0x00, 0x00 }, /* 8c */
- { 0x00, 0x7f, 0x7f, 0x7f, 0x00 }, /* 8d */
- { 0x00, 0x7f, 0x7f, 0x7f, 0x7f }, /* 8e */
- { 0x3e, 0x3e, 0x3e, 0x3e, 0x3e }, /* 8f */
- { 0x1c, 0x3e, 0x3e, 0x3e, 0x1c }, /* 90 */
- { 0x7f, 0x41, 0x41, 0x41, 0x7f }, /* 91 */
- { 0x7f, 0x5b, 0x41, 0x5f, 0x7f }, /* 92 */
- { 0x7f, 0x4d, 0x55, 0x59, 0x7f }, /* 93 */
- { 0x20, 0x40, 0x3c, 0x04, 0x04 }, /* 94 */
- { 0x44, 0x44, 0x5f, 0x44, 0x44 }, /* 95 */
- { 0x22, 0x14, 0x08, 0x14, 0x22 }, /* 96 */
- { 0x08, 0x08, 0x2a, 0x08, 0x08 }, /* 97 */
- { 0x45, 0x29, 0x11, 0x29, 0x45 }, /* 98 */
- { 0x1d, 0x15, 0x17, 0x00, 0x00 }, /* 99 */
- { 0x15, 0x15, 0x1f, 0x00, 0x00 }, /* 9a */
- { 0x17, 0x08, 0x74, 0x56, 0x5d }, /* 9b */
- { 0x17, 0x08, 0x24, 0x32, 0x79 }, /* 9c */
- { 0x35, 0x1f, 0x28, 0x34, 0x7a }, /* 9d */
- { 0x08, 0x14, 0x2a, 0x14, 0x22 }, /* 9e */
- { 0x22, 0x14, 0x2a, 0x14, 0x08 }, /* 9f */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* a0 */
- { 0x70, 0x50, 0x70, 0x00, 0x00 }, /* a1 */
- { 0x00, 0x00, 0x0f, 0x01, 0x01 }, /* a2 */
- { 0x40, 0x40, 0x78, 0x00, 0x00 }, /* a3 */
- { 0x10, 0x20, 0x40, 0x00, 0x00 }, /* a4 */
- { 0x00, 0x18, 0x18, 0x00, 0x00 }, /* a5 */
- { 0x0a, 0x0a, 0x4a, 0x2a, 0x1e }, /* a6 */
- { 0x04, 0x44, 0x34, 0x14, 0x0c }, /* a7 */
- { 0x20, 0x10, 0x78, 0x04, 0x00 }, /* a8 */
- { 0x18, 0x08, 0x4c, 0x48, 0x38 }, /* a9 */
- { 0x48, 0x48, 0x78, 0x48, 0x48 }, /* aa */
- { 0x48, 0x28, 0x18, 0x7c, 0x08 }, /* ab */
- { 0x08, 0x7c, 0x08, 0x28, 0x18 }, /* ac */
- { 0x40, 0x48, 0x48, 0x78, 0x40 }, /* ad */
- { 0x54, 0x54, 0x54, 0x7c, 0x00 }, /* ae */
- { 0x18, 0x00, 0x58, 0x40, 0x38 }, /* af */
- { 0x08, 0x08, 0x08, 0x08, 0x08 }, /* b0 */
- { 0x01, 0x41, 0x3d, 0x09, 0x07 }, /* b1 */
- { 0x10, 0x08, 0x7c, 0x02, 0x01 }, /* b2 */
- { 0x0e, 0x02, 0x43, 0x22, 0x1e }, /* b3 */
- { 0x42, 0x42, 0x7e, 0x42, 0x42 }, /* b4 */
- { 0x22, 0x12, 0x0a, 0x7f, 0x02 }, /* b5 */
- { 0x42, 0x3f, 0x02, 0x42, 0x3e }, /* b6 */
- { 0x0a, 0x0a, 0x7f, 0x0a, 0x0a }, /* b7 */
- { 0x08, 0x46, 0x42, 0x22, 0x1e }, /* b8 */
- { 0x04, 0x03, 0x42, 0x3e, 0x02 }, /* b9 */
- { 0x42, 0x42, 0x42, 0x42, 0x7e }, /* ba */
- { 0x02, 0x07, 0x42, 0x3f, 0x02 }, /* bb */
- { 0x4a, 0x4a, 0x40, 0x20, 0x10 }, /* bc */
- { 0x42, 0x22, 0x12, 0x2a, 0x46 }, /* bd */
- { 0x02, 0x3f, 0x42, 0x4a, 0x46 }, /* be */
- { 0x06, 0x48, 0x40, 0x20, 0x1e }, /* bf */
- { 0x08, 0x46, 0x4a, 0x32, 0x1e }, /* c0 */
- { 0x0a, 0x4a, 0x3e, 0x09, 0x08 }, /* c1 */
- { 0x0e, 0x00, 0x4e, 0x20, 0x1e }, /* c2 */
- { 0x04, 0x45, 0x3d, 0x05, 0x04 }, /* c3 */
- { 0x00, 0x7f, 0x08, 0x10, 0x00 }, /* c4 */
- { 0x44, 0x24, 0x1f, 0x04, 0x04 }, /* c5 */
- { 0x40, 0x42, 0x42, 0x42, 0x40 }, /* c6 */
- { 0x42, 0x2a, 0x12, 0x2a, 0x06 }, /* c7 */
- { 0x22, 0x12, 0x7b, 0x16, 0x22 }, /* c8 */
- { 0x00, 0x40, 0x20, 0x1f, 0x00 }, /* c9 */
- { 0x78, 0x00, 0x02, 0x04, 0x78 }, /* ca */
- { 0x3f, 0x44, 0x44, 0x44, 0x44 }, /* cb */
- { 0x02, 0x42, 0x42, 0x22, 0x1e }, /* cc */
- { 0x04, 0x02, 0x04, 0x08, 0x30 }, /* cd */
- { 0x32, 0x02, 0x7f, 0x02, 0x32 }, /* ce */
- { 0x02, 0x12, 0x22, 0x52, 0x0e }, /* cf */
- { 0x00, 0x2a, 0x2a, 0x2a, 0x40 }, /* d0 */
- { 0x38, 0x24, 0x22, 0x20, 0x70 }, /* d1 */
- { 0x40, 0x28, 0x10, 0x28, 0x06 }, /* d2 */
- { 0x0a, 0x3e, 0x4a, 0x4a, 0x4a }, /* d3 */
- { 0x04, 0x7f, 0x04, 0x14, 0x0c }, /* d4 */
- { 0x40, 0x42, 0x42, 0x7e, 0x40 }, /* d5 */
- { 0x4a, 0x4a, 0x4a, 0x4a, 0x7e }, /* d6 */
- { 0x04, 0x05, 0x45, 0x25, 0x1c }, /* d7 */
- { 0x1f, 0x40, 0x20, 0x1f, 0x00 }, /* d8 */
- { 0x7c, 0x00, 0x7e, 0x40, 0x30 }, /* d9 */
- { 0x7e, 0x40, 0x20, 0x10, 0x08 }, /* da */
- { 0x7f, 0x41, 0x41, 0x41, 0x7f }, /* db */
- { 0x0e, 0x02, 0x42, 0x22, 0x1e }, /* dc */
- { 0x42, 0x42, 0x40, 0x20, 0x18 }, /* dd */
- { 0x02, 0x04, 0x01, 0x02, 0x00 }, /* de */
- { 0x07, 0x05, 0x07, 0x00, 0x00 }, /* df */
- { 0x38, 0x44, 0x48, 0x30, 0x4c }, /* e0 */
- { 0x7c, 0x2a, 0x2a, 0x2a, 0x14 }, /* e1 */
- { 0x02, 0x4c, 0x30, 0x0c, 0x02 }, /* e2 */
- { 0x44, 0x3c, 0x04, 0x7c, 0x44 }, /* e3 */
- { 0x63, 0x55, 0x49, 0x41, 0x41 }, /* e4 */
- { 0x38, 0x44, 0x4c, 0x54, 0x24 }, /* e5 */
- { 0x40, 0x3e, 0x10, 0x10, 0x1e }, /* e6 */
- { 0x04, 0x04, 0x3c, 0x44, 0x44 }, /* e7 */
- { 0x49, 0x55, 0x7f, 0x55, 0x49 }, /* e8 */
- { 0x3c, 0x4a, 0x4a, 0x4a, 0x3c }, /* e9 */
- { 0x58, 0x64, 0x04, 0x64, 0x58 }, /* ea */
- { 0x3a, 0x45, 0x45, 0x45, 0x39 }, /* eb */
- { 0x60, 0x50, 0x20, 0x50, 0x30 }, /* ec */
- { 0x08, 0x54, 0x3e, 0x15, 0x08 }, /* ed */
- { 0x14, 0x2a, 0x2a, 0x2a, 0x00 }, /* ee */
- { 0x7c, 0x0a, 0x09, 0x09, 0x06 }, /* ef */
- { 0x08, 0x04, 0x08, 0x10, 0x08 }, /* f0 */
- { 0x14, 0x0a, 0x14, 0x28, 0x14 }, /* f1 */
- { 0x24, 0x3b, 0x2a, 0x7e, 0x2a }, /* f2 */
- { 0x40, 0x3f, 0x15, 0x15, 0x7f }, /* f3 */
- { 0x46, 0x20, 0x1f, 0x20, 0x46 }, /* f4 */
- { 0x24, 0x14, 0x7f, 0x18, 0x24 }, /* f5 */
- { 0x24, 0x14, 0x7f, 0x14, 0x24 }, /* f6 */
- { 0x44, 0x6a, 0x79, 0x6a, 0x44 }, /* f7 */
- { 0x40, 0x44, 0x7f, 0x44, 0x40 }, /* f8 */
- { 0x7f, 0x49, 0x49, 0x49, 0x7f }, /* f9 */
- { 0x14, 0x14, 0x7c, 0x14, 0x12 }, /* fa */
- { 0x44, 0x3c, 0x14, 0x14, 0x74 }, /* fb */
- { 0x7c, 0x14, 0x1c, 0x14, 0x7c }, /* fc */
- { 0x2a, 0x55, 0x2a, 0x55, 0x2a }, /* fd */
- { 0x55, 0x2a, 0x55, 0x2a, 0x55 }, /* fe */
- { 0x7f, 0x7f, 0x7f, 0x7f, 0x7f } /* ff */
-};
-
-unsigned char font_old_player[256][5] = {
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 00 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 01 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 02 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 03 */
- { 0x3e, 0x41, 0x5d, 0x55, 0x1e }, /* 04 */
- { 0x48, 0x7e, 0x49, 0x49, 0x42 }, /* 05 */
- { 0x24, 0x2a, 0x7f, 0x2a, 0x12 }, /* 06 */
- { 0x15, 0x16, 0x7c, 0x16, 0x15 }, /* 07 */
- { 0x38, 0x55, 0x56, 0x54, 0x18 }, /* 08 */
- { 0x38, 0x54, 0x56, 0x55, 0x18 }, /* 09 */
- { 0x38, 0x41, 0x42, 0x20, 0x78 }, /* 0a */
- { 0x00, 0x49, 0x7a, 0x40, 0x00 }, /* 0b */
- { 0x30, 0x49, 0x4a, 0x48, 0x30 }, /* 0c */
- { 0x0e, 0x51, 0x51, 0x71, 0x11 }, /* 0d */
- { 0x1f, 0x10, 0x7c, 0x14, 0x04 }, /* 0e */
- { 0x5c, 0x32, 0x2a, 0x26, 0x1d }, /* 0f */
- { 0x18, 0x64, 0x3c, 0x26, 0x18 }, /* 10 */
- { 0x0f, 0x09, 0x7d, 0x34, 0x5c }, /* 11 */
- { 0x70, 0x2a, 0x2d, 0x2a, 0x70 }, /* 12 */
- { 0x20, 0x52, 0x55, 0x52, 0x78 }, /* 13 */
- { 0x60, 0x58, 0x46, 0x58, 0x60 }, /* 14 */
- { 0x40, 0x40, 0x40, 0x40, 0x40 }, /* 15 */
- { 0x1c, 0x55, 0x7f, 0x55, 0x1c }, /* 16 */
- { 0x7f, 0x01, 0x01, 0x01, 0x07 }, /* 17 */
- { 0x70, 0x0c, 0x03, 0x0c, 0x70 }, /* 18 */
- { 0x4e, 0x71, 0x01, 0x71, 0x4e }, /* 19 */
- { 0x01, 0x7f, 0x01, 0x7f, 0x01 }, /* 1a */
- { 0x0f, 0x10, 0x7f, 0x10, 0x0f }, /* 1b */
- { 0x41, 0x63, 0x55, 0x49, 0x41 }, /* 1c */
- { 0x3e, 0x49, 0x49, 0x49, 0x3e }, /* 1d */
- { 0x63, 0x49, 0x49, 0x49, 0x63 }, /* 1e */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 1f */
- { 0x7e, 0x09, 0x7f, 0x49, 0x49 }, /* 20 */
- { 0x24, 0x54, 0x78, 0x54, 0x58 }, /* 21 */
- { 0x7e, 0x01, 0x25, 0x26, 0x18 }, /* 22 */
- { 0x7c, 0x54, 0x56, 0x45, 0x44 }, /* 23 */
- { 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 24 */
- { 0x00, 0x00, 0x5f, 0x00, 0x00 }, /* 25 */
- { 0x05, 0x03, 0x00, 0x05, 0x03 }, /* 26 */
- { 0x14, 0x7f, 0x14, 0x7f, 0x14 }, /* 27 */
- { 0x22, 0x1c, 0x14, 0x1c, 0x22 }, /* 28 */
- { 0x23, 0x13, 0x08, 0x64, 0x62 }, /* 29 */
- { 0x36, 0x49, 0x56, 0x20, 0x58 }, /* 2a */
- { 0x00, 0x05, 0x03, 0x00, 0x00 }, /* 2b */
- { 0x00, 0x1c, 0x22, 0x41, 0x00 }, /* 2c */
- { 0x00, 0x41, 0x22, 0x1c, 0x00 }, /* 2d */
- { 0x22, 0x14, 0x7f, 0x14, 0x22 }, /* 2e */
- { 0x08, 0x08, 0x3e, 0x08, 0x08 }, /* 2f */
- { 0x00, 0x50, 0x30, 0x00, 0x00 }, /* 30 */
- { 0x08, 0x08, 0x08, 0x08, 0x08 }, /* 31 */
- { 0x00, 0x30, 0x30, 0x00, 0x00 }, /* 32 */
- { 0x20, 0x10, 0x08, 0x04, 0x02 }, /* 33 */
- { 0x3e, 0x41, 0x41, 0x41, 0x3e }, /* 34 */
- { 0x00, 0x42, 0x7f, 0x40, 0x00 }, /* 35 */
- { 0x42, 0x61, 0x51, 0x49, 0x46 }, /* 36 */
- { 0x21, 0x41, 0x45, 0x4b, 0x31 }, /* 37 */
- { 0x18, 0x14, 0x12, 0x7f, 0x10 }, /* 38 */
- { 0x27, 0x45, 0x45, 0x45, 0x39 }, /* 39 */
- { 0x3c, 0x4a, 0x49, 0x49, 0x30 }, /* 3a */
- { 0x01, 0x01, 0x71, 0x0d, 0x03 }, /* 3b */
- { 0x36, 0x49, 0x49, 0x49, 0x36 }, /* 3c */
- { 0x06, 0x49, 0x49, 0x29, 0x1e }, /* 3d */
- { 0x00, 0x36, 0x36, 0x00, 0x00 }, /* 3e */
- { 0x00, 0x56, 0x36, 0x00, 0x00 }, /* 3f */
- { 0x08, 0x1c, 0x36, 0x63, 0x41 }, /* 40 */
- { 0x14, 0x14, 0x14, 0x14, 0x14 }, /* 41 */
- { 0x41, 0x63, 0x36, 0x1c, 0x08 }, /* 42 */
- { 0x02, 0x01, 0x51, 0x09, 0x06 }, /* 43 */
- { 0x00, 0x00, 0x7d, 0x00, 0x00 }, /* 44 */
- { 0x7c, 0x12, 0x11, 0x12, 0x7c }, /* 45 */
- { 0x7f, 0x49, 0x49, 0x49, 0x36 }, /* 46 */
- { 0x3e, 0x41, 0x41, 0x41, 0x22 }, /* 47 */
- { 0x7f, 0x41, 0x41, 0x22, 0x1c }, /* 48 */
- { 0x7f, 0x49, 0x49, 0x49, 0x41 }, /* 49 */
- { 0x7f, 0x09, 0x09, 0x09, 0x01 }, /* 4a */
- { 0x3e, 0x41, 0x49, 0x49, 0x38 }, /* 4b */
- { 0x7f, 0x08, 0x08, 0x08, 0x7f }, /* 4c */
- { 0x00, 0x41, 0x7f, 0x41, 0x00 }, /* 4d */
- { 0x20, 0x41, 0x41, 0x3f, 0x01 }, /* 4e */
- { 0x7f, 0x08, 0x14, 0x22, 0x41 }, /* 4f */
- { 0x7f, 0x40, 0x40, 0x40, 0x40 }, /* 50 */
- { 0x7f, 0x02, 0x04, 0x02, 0x7f }, /* 51 */
- { 0x7f, 0x04, 0x08, 0x10, 0x7f }, /* 52 */
- { 0x3e, 0x41, 0x41, 0x41, 0x3e }, /* 53 */
- { 0x7f, 0x09, 0x09, 0x09, 0x06 }, /* 54 */
- { 0x3e, 0x41, 0x41, 0x21, 0x5e }, /* 55 */
- { 0x7f, 0x09, 0x19, 0x29, 0x46 }, /* 56 */
- { 0x26, 0x49, 0x49, 0x49, 0x32 }, /* 57 */
- { 0x01, 0x01, 0x7f, 0x01, 0x01 }, /* 58 */
- { 0x3f, 0x40, 0x40, 0x40, 0x3f }, /* 59 */
- { 0x1f, 0x20, 0x40, 0x20, 0x1f }, /* 5a */
- { 0x3f, 0x40, 0x20, 0x40, 0x3f }, /* 5b */
- { 0x63, 0x14, 0x08, 0x14, 0x63 }, /* 5c */
- { 0x03, 0x04, 0x78, 0x04, 0x03 }, /* 5d */
- { 0x61, 0x51, 0x49, 0x45, 0x43 }, /* 5e */
- { 0x70, 0x29, 0x24, 0x29, 0x70 }, /* 5f */
- { 0x38, 0x45, 0x44, 0x45, 0x38 }, /* 60 */
- { 0x7a, 0x09, 0x11, 0x22, 0x79 }, /* 61 */
- { 0x3c, 0x41, 0x40, 0x41, 0x3c }, /* 62 */
- { 0x0a, 0x55, 0x55, 0x55, 0x28 }, /* 63 */
- { 0x30, 0x48, 0x45, 0x40, 0x20 }, /* 64 */
- { 0x20, 0x54, 0x54, 0x54, 0x78 }, /* 65 */
- { 0x7f, 0x44, 0x44, 0x44, 0x38 }, /* 66 */
- { 0x38, 0x44, 0x44, 0x44, 0x44 }, /* 67 */
- { 0x38, 0x44, 0x44, 0x44, 0x7f }, /* 68 */
- { 0x38, 0x54, 0x54, 0x54, 0x58 }, /* 69 */
- { 0x00, 0x04, 0x7e, 0x05, 0x05 }, /* 6a */
- { 0x08, 0x54, 0x54, 0x54, 0x3c }, /* 6b */
- { 0x7f, 0x08, 0x04, 0x04, 0x78 }, /* 6c */
- { 0x00, 0x44, 0x7d, 0x40, 0x00 }, /* 6d */
- { 0x20, 0x40, 0x44, 0x3d, 0x00 }, /* 6e */
- { 0x00, 0x7f, 0x10, 0x28, 0x44 }, /* 6f */
- { 0x00, 0x41, 0x7f, 0x40, 0x00 }, /* 70 */
- { 0x7c, 0x04, 0x78, 0x04, 0x78 }, /* 71 */
- { 0x7c, 0x08, 0x04, 0x04, 0x78 }, /* 72 */
- { 0x38, 0x44, 0x44, 0x44, 0x38 }, /* 73 */
- { 0x7c, 0x14, 0x14, 0x14, 0x08 }, /* 74 */
- { 0x08, 0x14, 0x14, 0x14, 0x7c }, /* 75 */
- { 0x00, 0x7c, 0x08, 0x04, 0x04 }, /* 76 */
- { 0x48, 0x54, 0x54, 0x54, 0x20 }, /* 77 */
- { 0x00, 0x04, 0x3f, 0x44, 0x44 }, /* 78 */
- { 0x3c, 0x40, 0x40, 0x20, 0x7c }, /* 79 */
- { 0x1c, 0x20, 0x40, 0x20, 0x1c }, /* 7a */
- { 0x3c, 0x40, 0x20, 0x40, 0x3c }, /* 7b */
- { 0x44, 0x28, 0x10, 0x28, 0x44 }, /* 7c */
- { 0x4c, 0x50, 0x50, 0x50, 0x3c }, /* 7d */
- { 0x44, 0x64, 0x54, 0x4c, 0x44 }, /* 7e */
- { 0x20, 0x55, 0x54, 0x55, 0x78 }, /* 7f */
- { 0x30, 0x4a, 0x48, 0x4a, 0x30 }, /* 80 */
- { 0x7a, 0x11, 0x09, 0x0a, 0x71 }, /* 81 */
- { 0x38, 0x42, 0x40, 0x22, 0x78 }, /* 82 */
- { 0x20, 0x55, 0x56, 0x54, 0x78 }, /* 83 */
- { 0x0c, 0x12, 0x52, 0x32, 0x12 }, /* 84 */
- { 0x20, 0x00, 0x20, 0x00, 0x20 }, /* 85 */
- { 0x10, 0x18, 0x1c, 0x18, 0x10 }, /* 86 */
- { 0x04, 0x0c, 0x1c, 0x0c, 0x04 }, /* 87 */
- { 0x08, 0x1c, 0x3e, 0x7f, 0x00 }, /* 88 */
- { 0x00, 0x7f, 0x3e, 0x1c, 0x08 }, /* 89 */
- { 0x7f, 0x03, 0x03, 0x06, 0x06 }, /* 8a */
- { 0x55, 0x2a, 0x55, 0x2a, 0x55 }, /* 8b */
- { 0x78, 0x15, 0x16, 0x14, 0x78 }, /* 8c */
- { 0x78, 0x14, 0x16, 0x15, 0x78 }, /* 8d */
- { 0x78, 0x16, 0x15, 0x16, 0x78 }, /* 8e */
- { 0x7a, 0x15, 0x15, 0x16, 0x79 }, /* 8f */
- { 0x7c, 0x55, 0x56, 0x54, 0x44 }, /* 90 */
- { 0x7c, 0x56, 0x55, 0x46, 0x44 }, /* 91 */
- { 0x7c, 0x55, 0x54, 0x45, 0x44 }, /* 92 */
- { 0x00, 0x45, 0x7e, 0x44, 0x00 }, /* 93 */
- { 0x00, 0x44, 0x7e, 0x45, 0x00 }, /* 94 */
- { 0x08, 0x7f, 0x49, 0x22, 0x1c }, /* 95 */
- { 0x38, 0x45, 0x46, 0x44, 0x38 }, /* 96 */
- { 0x38, 0x44, 0x46, 0x45, 0x38 }, /* 97 */
- { 0x38, 0x46, 0x45, 0x46, 0x38 }, /* 98 */
- { 0x3a, 0x45, 0x45, 0x46, 0x39 }, /* 99 */
- { 0x3c, 0x41, 0x42, 0x40, 0x3c }, /* 9a */
- { 0x3c, 0x40, 0x42, 0x41, 0x3c }, /* 9b */
- { 0x20, 0x54, 0x56, 0x55, 0x78 }, /* 9c */
- { 0x20, 0x56, 0x55, 0x56, 0x78 }, /* 9d */
- { 0x22, 0x55, 0x55, 0x56, 0x79 }, /* 9e */
- { 0x38, 0x56, 0x55, 0x56, 0x18 }, /* 9f */
- { 0x38, 0x55, 0x54, 0x55, 0x18 }, /* a0 */
- { 0x00, 0x48, 0x7a, 0x41, 0x00 }, /* a1 */
- { 0x00, 0x4a, 0x79, 0x42, 0x00 }, /* a2 */
- { 0x00, 0x49, 0x78, 0x41, 0x00 }, /* a3 */
- { 0x30, 0x48, 0x4a, 0x49, 0x30 }, /* a4 */
- { 0x30, 0x4a, 0x49, 0x4a, 0x30 }, /* a5 */
- { 0x32, 0x49, 0x49, 0x4a, 0x31 }, /* a6 */
- { 0x38, 0x40, 0x42, 0x21, 0x78 }, /* a7 */
- { 0x18, 0x24, 0x67, 0x24, 0x24 }, /* a8 */
- { 0x00, 0x00, 0x00, 0x7f, 0x41 }, /* a9 */
- { 0x00, 0x7d, 0x0a, 0x05, 0x04 }, /* aa */
- { 0x38, 0x45, 0x46, 0x45, 0x44 }, /* ab */
- { 0x48, 0x55, 0x56, 0x55, 0x20 }, /* ac */
- { 0x38, 0x55, 0x56, 0x55, 0x18 }, /* ad */
- { 0x38, 0x42, 0x45, 0x22, 0x78 }, /* ae */
- { 0x0c, 0x50, 0x52, 0x51, 0x3c }, /* af */
- { 0x30, 0x4a, 0x4a, 0x7f, 0x02 }, /* b0 */
- { 0x38, 0x44, 0x46, 0x45, 0x44 }, /* b1 */
- { 0x0e, 0x15, 0x75, 0x55, 0x06 }, /* b2 */
- { 0x08, 0x15, 0x15, 0x75, 0x5e }, /* b3 */
- { 0x44, 0x64, 0x55, 0x4c, 0x44 }, /* b4 */
- { 0x44, 0x64, 0x56, 0x4d, 0x44 }, /* b5 */
- { 0x48, 0x54, 0x56, 0x55, 0x20 }, /* b6 */
- { 0x7c, 0x08, 0x06, 0x05, 0x78 }, /* b7 */
- { 0x00, 0x49, 0x7f, 0x44, 0x00 }, /* b8 */
- { 0x1c, 0x5e, 0x6f, 0x5e, 0x1c }, /* b9 */
- { 0x7c, 0x09, 0x06, 0x05, 0x78 }, /* ba */
- { 0x08, 0x3f, 0x48, 0x48, 0x03 }, /* bb */
- { 0x38, 0x44, 0x7f, 0x00, 0x03 }, /* bc */
- { 0x44, 0x65, 0x56, 0x4d, 0x44 }, /* bd */
- { 0x02, 0x01, 0x01, 0x01, 0x01 }, /* be */
- { 0x02, 0x01, 0x01, 0x01, 0x7d }, /* bf */
- { 0x41, 0x41, 0x41, 0x41, 0x42 }, /* c0 */
- { 0x39, 0x45, 0x55, 0x55, 0x31 }, /* c1 */
- { 0x09, 0x55, 0x55, 0x55, 0x3d }, /* c2 */
- { 0x02, 0x55, 0x75, 0x15, 0x08 }, /* c3 */
- { 0x04, 0x2a, 0x6a, 0x2a, 0x10 }, /* c4 */
- { 0x00, 0x44, 0x7d, 0x44, 0x00 }, /* c5 */
- { 0x00, 0x44, 0x7c, 0x40, 0x00 }, /* c6 */
- { 0x3c, 0x42, 0x41, 0x42, 0x3d }, /* c7 */
- { 0x3a, 0x45, 0x44, 0x46, 0x39 }, /* c8 */
- { 0x3a, 0x41, 0x40, 0x22, 0x79 }, /* c9 */
- { 0x32, 0x49, 0x48, 0x4a, 0x31 }, /* ca */
- { 0x20, 0x40, 0x40, 0x40, 0x5f }, /* cb */
- { 0x5f, 0x40, 0x40, 0x40, 0x20 }, /* cc */
- { 0x0e, 0x1e, 0x3c, 0x1e, 0x0e }, /* cd */
- { 0x41, 0x7f, 0x00, 0x00, 0x00 }, /* ce */
- { 0x32, 0x39, 0x25, 0x39, 0x32 }, /* cf */
- { 0x22, 0x41, 0x0e, 0x49, 0x2a }, /* d0 */
- { 0x42, 0x41, 0x41, 0x41, 0x41 }, /* d1 */
- { 0x1c, 0x14, 0x14, 0x22, 0x7f }, /* d2 */
- { 0x7e, 0x79, 0x49, 0x79, 0x7e }, /* d3 */
- { 0x00, 0x08, 0x30, 0x0c, 0x02 }, /* d4 */
- { 0x14, 0x36, 0x77, 0x36, 0x14 }, /* d5 */
- { 0x00, 0x7c, 0x7c, 0x7f, 0x00 }, /* d6 */
- { 0x7f, 0x7f, 0x00, 0x41, 0x41 }, /* d7 */
- { 0x41, 0x41, 0x00, 0x41, 0x41 }, /* d8 */
- { 0x00, 0x02, 0x5f, 0x62, 0x22 }, /* d9 */
- { 0x7f, 0x7f, 0x00, 0x7f, 0x7f }, /* da */
- { 0x08, 0x1c, 0x3e, 0x1c, 0x08 }, /* db */
- { 0x7c, 0x4c, 0x54, 0x4c, 0x7c }, /* dc */
- { 0x08, 0x7b, 0x3f, 0x7b, 0x08 }, /* dd */
- { 0x00, 0x50, 0x20, 0x50, 0x00 }, /* de */
- { 0x60, 0x60, 0x60, 0x60, 0x60 }, /* df */
- { 0x70, 0x70, 0x70, 0x70, 0x70 }, /* e0 */
- { 0x78, 0x78, 0x78, 0x78, 0x78 }, /* e1 */
- { 0x7c, 0x7c, 0x7c, 0x7c, 0x7c }, /* e2 */
- { 0x7e, 0x7e, 0x7e, 0x7e, 0x7e }, /* e3 */
- { 0x00, 0x00, 0x70, 0x08, 0x04 }, /* e4 */
- { 0x00, 0x3e, 0x41, 0x1c, 0x22 }, /* e5 */
- { 0x5e, 0x52, 0x72, 0x52, 0x5e }, /* e6 */
- { 0x20, 0x10, 0x0a, 0x06, 0x0e }, /* e7 */
- { 0x02, 0x04, 0x28, 0x30, 0x38 }, /* e8 */
- { 0x20, 0x55, 0x56, 0x56, 0x79 }, /* e9 */
- { 0x01, 0x01, 0x01, 0x01, 0x02 }, /* ea */
- { 0x04, 0x08, 0x70, 0x00, 0x00 }, /* eb */
- { 0x7f, 0x7f, 0x7f, 0x7f, 0x7f }, /* ec */
- { 0x7f, 0x63, 0x55, 0x49, 0x51 }, /* ed */
- { 0x01, 0x01, 0x01, 0x01, 0x01 }, /* ee */
- { 0x7f, 0x01, 0x01, 0x01, 0x01 }, /* ef */
- { 0x70, 0x78, 0x6c, 0x06, 0x06 }, /* f0 */
- { 0x17, 0x15, 0x7d, 0x48, 0x48 }, /* f1 */
- { 0x52, 0x7a, 0x42, 0x06, 0x7c }, /* f2 */
- { 0x25, 0x35, 0x29, 0x01, 0x7e }, /* f3 */
- { 0x00, 0x00, 0x07, 0x08, 0x10 }, /* f4 */
- { 0x20, 0x40, 0x40, 0x40, 0x40 }, /* f5 */
- { 0x40, 0x40, 0x40, 0x40, 0x20 }, /* f6 */
- { 0x10, 0x08, 0x07, 0x00, 0x00 }, /* f7 */
- { 0x30, 0x48, 0x45, 0x43, 0x47 }, /* f8 */
- { 0x7c, 0x46, 0x67, 0x46, 0x7c }, /* f9 */
- { 0x55, 0x55, 0x41, 0x7f, 0x03 }, /* fa */
- { 0x1c, 0x36, 0x36, 0x36, 0x1c }, /* fb */
- { 0x60, 0x7c, 0x02, 0x31, 0x3f }, /* fc */
- { 0x51, 0x49, 0x55, 0x63, 0x7f }, /* fd */
- { 0x7f, 0x60, 0x60, 0x00, 0x00 }, /* fe */
- { 0x7f, 0x03, 0x03, 0x00, 0x00 } /* ff */
-};
diff --git a/tools/player_unifont.c b/tools/player_unifont.c
new file mode 100644
index 0000000000..2b5121d501
--- /dev/null
+++ b/tools/player_unifont.c
@@ -0,0 +1,778 @@
+/***************************************************************************
+ * __________ __ ___.
+ * Open \______ \ ____ ____ | | _\_ |__ _______ ___
+ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
+ * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
+ * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
+ * \/ \/ \/ \/ \/
+ * $Id$
+ *
+ * Copyright (C) 2007 by Jens Arnold
+ * Based on the work of Kjell Ericson
+ *
+ * All files in this archive are subject to the GNU General Public License.
+ * See the file COPYING in the source tree root for full license agreement.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ****************************************************************************/
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdbool.h>
+#include <string.h>
+#include "lcd-charcell.h"
+
+#define CHAR_WIDTH 8
+#define CHAR_HEIGHT 8
+#define BITMAP_WIDTH (CHAR_WIDTH*(16+3))
+#define SIZE 2
+
+#define CHAR_BG_STD 0xc0c0c0
+#define CHAR_BG_ALT 0x808080
+#define CHAR_FG_STD 0x000000
+#define CHAR_FG_ALT 0xf00000
+
+static unsigned char font_player_newlcd[256][7] = {
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 00 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 01 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 02 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 03 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 04 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 05 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 06 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 07 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 08 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 09 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0a */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0b */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0c */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0d */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0e */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 0f */
+ { 0x00, 0x10, 0x1c, 0x1f, 0x1c, 0x10, 0x00 }, /* 10 */
+ { 0x00, 0x01, 0x07, 0x1f, 0x07, 0x01, 0x00 }, /* 11 */
+ { 0x00, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00 }, /* 12 */
+ { 0x0a, 0x0a, 0x0a, 0x0a, 0x00, 0x00, 0x0a }, /* 13 */
+ { 0x0f, 0x1d, 0x1d, 0x0d, 0x05, 0x05, 0x05 }, /* 14 */
+ { 0x07, 0x08, 0x0e, 0x11, 0x0e, 0x02, 0x1c }, /* 15 */
+ { 0x00, 0x00, 0x1f, 0x1f, 0x00, 0x00, 0x00 }, /* 16 */
+ { 0x01, 0x01, 0x05, 0x09, 0x1f, 0x08, 0x04 }, /* 17 */
+ { 0x04, 0x0e, 0x15, 0x04, 0x04, 0x04, 0x04 }, /* 18 */
+ { 0x04, 0x04, 0x04, 0x04, 0x15, 0x0e, 0x04 }, /* 19 */
+ { 0x11, 0x19, 0x1d, 0x1f, 0x1d, 0x19, 0x11 }, /* 1a */
+ { 0x11, 0x13, 0x17, 0x1f, 0x17, 0x13, 0x11 }, /* 1b */
+ { 0x10, 0x14, 0x12, 0x1f, 0x12, 0x14, 0x10 }, /* 1c */
+ { 0x01, 0x05, 0x09, 0x1f, 0x09, 0x05, 0x01 }, /* 1d */
+ { 0x00, 0x1f, 0x0e, 0x0e, 0x04, 0x04, 0x00 }, /* 1e */
+ { 0x00, 0x04, 0x04, 0x0e, 0x0e, 0x1f, 0x00 }, /* 1f */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 20 */
+ { 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x04 }, /* 21 */
+ { 0x0a, 0x0a, 0x0a, 0x00, 0x00, 0x00, 0x00 }, /* 22 */
+ { 0x0a, 0x0a, 0x1f, 0x0a, 0x1f, 0x0a, 0x0a }, /* 23 */
+ { 0x04, 0x0f, 0x14, 0x0e, 0x05, 0x1e, 0x04 }, /* 24 */
+ { 0x18, 0x19, 0x02, 0x04, 0x08, 0x13, 0x03 }, /* 25 */
+ { 0x0c, 0x12, 0x14, 0x08, 0x15, 0x12, 0x0d }, /* 26 */
+ { 0x0c, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00 }, /* 27 */
+ { 0x02, 0x04, 0x08, 0x08, 0x08, 0x04, 0x02 }, /* 28 */
+ { 0x08, 0x04, 0x02, 0x02, 0x02, 0x04, 0x08 }, /* 29 */
+ { 0x00, 0x04, 0x15, 0x0e, 0x15, 0x04, 0x00 }, /* 2a */
+ { 0x00, 0x04, 0x04, 0x1f, 0x04, 0x04, 0x00 }, /* 2b */
+ { 0x00, 0x00, 0x00, 0x00, 0x0c, 0x04, 0x08 }, /* 2c */
+ { 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00 }, /* 2d */
+ { 0x00, 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x00 }, /* 2e */
+ { 0x00, 0x01, 0x02, 0x04, 0x08, 0x10, 0x00 }, /* 2f */
+ { 0x0e, 0x11, 0x13, 0x15, 0x19, 0x11, 0x0e }, /* 30 */
+ { 0x04, 0x0c, 0x04, 0x04, 0x04, 0x04, 0x0e }, /* 31 */
+ { 0x0e, 0x11, 0x01, 0x02, 0x04, 0x08, 0x1f }, /* 32 */
+ { 0x1f, 0x02, 0x04, 0x02, 0x01, 0x11, 0x0e }, /* 33 */
+ { 0x02, 0x06, 0x0a, 0x12, 0x1f, 0x02, 0x02 }, /* 34 */
+ { 0x1f, 0x10, 0x1e, 0x01, 0x01, 0x11, 0x0e }, /* 35 */
+ { 0x06, 0x08, 0x10, 0x1e, 0x11, 0x11, 0x0e }, /* 36 */
+ { 0x1f, 0x01, 0x02, 0x02, 0x04, 0x04, 0x04 }, /* 37 */
+ { 0x0e, 0x11, 0x11, 0x0e, 0x11, 0x11, 0x0e }, /* 38 */
+ { 0x0e, 0x11, 0x11, 0x0f, 0x01, 0x02, 0x0c }, /* 39 */
+ { 0x00, 0x0c, 0x0c, 0x00, 0x0c, 0x0c, 0x00 }, /* 3a */
+ { 0x0c, 0x0c, 0x00, 0x0c, 0x0c, 0x04, 0x08 }, /* 3b */
+ { 0x02, 0x04, 0x08, 0x10, 0x08, 0x04, 0x02 }, /* 3c */
+ { 0x00, 0x00, 0x1f, 0x00, 0x1f, 0x00, 0x00 }, /* 3d */
+ { 0x08, 0x04, 0x02, 0x01, 0x02, 0x04, 0x08 }, /* 3e */
+ { 0x0e, 0x11, 0x01, 0x02, 0x04, 0x00, 0x04 }, /* 3f */
+ { 0x0e, 0x11, 0x01, 0x0d, 0x15, 0x15, 0x0e }, /* 40 */
+ { 0x0e, 0x11, 0x11, 0x11, 0x1f, 0x11, 0x11 }, /* 41 */
+ { 0x1e, 0x11, 0x11, 0x1e, 0x11, 0x11, 0x1e }, /* 42 */
+ { 0x0e, 0x11, 0x10, 0x10, 0x10, 0x11, 0x0e }, /* 43 */
+ { 0x1c, 0x12, 0x11, 0x11, 0x11, 0x12, 0x1c }, /* 44 */
+ { 0x1f, 0x10, 0x10, 0x1e, 0x10, 0x10, 0x1f }, /* 45 */
+ { 0x1f, 0x10, 0x10, 0x1e, 0x10, 0x10, 0x10 }, /* 46 */
+ { 0x0e, 0x11, 0x10, 0x17, 0x11, 0x11, 0x0f }, /* 47 */
+ { 0x11, 0x11, 0x11, 0x1f, 0x11, 0x11, 0x11 }, /* 48 */
+ { 0x0e, 0x04, 0x04, 0x04, 0x04, 0x04, 0x0e }, /* 49 */
+ { 0x0f, 0x02, 0x02, 0x02, 0x02, 0x12, 0x0c }, /* 4a */
+ { 0x11, 0x12, 0x14, 0x18, 0x14, 0x12, 0x11 }, /* 4b */
+ { 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x1f }, /* 4c */
+ { 0x11, 0x1b, 0x15, 0x15, 0x11, 0x11, 0x11 }, /* 4d */
+ { 0x11, 0x11, 0x19, 0x15, 0x13, 0x11, 0x11 }, /* 4e */
+ { 0x0e, 0x11, 0x11, 0x11, 0x11, 0x11, 0x0e }, /* 4f */
+ { 0x1e, 0x11, 0x11, 0x1e, 0x10, 0x10, 0x10 }, /* 50 */
+ { 0x0e, 0x11, 0x11, 0x11, 0x11, 0x12, 0x0d }, /* 51 */
+ { 0x1e, 0x11, 0x11, 0x1e, 0x14, 0x12, 0x11 }, /* 52 */
+ { 0x0e, 0x11, 0x10, 0x0e, 0x01, 0x11, 0x0e }, /* 53 */
+ { 0x1f, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04 }, /* 54 */
+ { 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x0e }, /* 55 */
+ { 0x11, 0x11, 0x11, 0x11, 0x11, 0x0a, 0x04 }, /* 56 */
+ { 0x11, 0x11, 0x11, 0x15, 0x15, 0x15, 0x0a }, /* 57 */
+ { 0x11, 0x11, 0x0a, 0x04, 0x0a, 0x11, 0x11 }, /* 58 */
+ { 0x11, 0x11, 0x0a, 0x04, 0x04, 0x04, 0x04 }, /* 59 */
+ { 0x1f, 0x01, 0x02, 0x04, 0x08, 0x10, 0x1f }, /* 5a */
+ { 0x0e, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0e }, /* 5b */
+ { 0x11, 0x0a, 0x1f, 0x04, 0x1f, 0x04, 0x04 }, /* 5c */
+ { 0x0e, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0e }, /* 5d */
+ { 0x04, 0x0a, 0x11, 0x00, 0x00, 0x00, 0x00 }, /* 5e */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f }, /* 5f */
+ { 0x08, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00 }, /* 60 */
+ { 0x00, 0x00, 0x0e, 0x01, 0x0f, 0x11, 0x0f }, /* 61 */
+ { 0x10, 0x10, 0x16, 0x19, 0x11, 0x11, 0x1e }, /* 62 */
+ { 0x00, 0x00, 0x0e, 0x10, 0x10, 0x11, 0x0e }, /* 63 */
+ { 0x01, 0x01, 0x0d, 0x13, 0x11, 0x11, 0x0f }, /* 64 */
+ { 0x00, 0x00, 0x0e, 0x11, 0x1f, 0x10, 0x0e }, /* 65 */
+ { 0x06, 0x09, 0x08, 0x1c, 0x08, 0x08, 0x08 }, /* 66 */
+ { 0x00, 0x0f, 0x11, 0x11, 0x0f, 0x01, 0x0e }, /* 67 */
+ { 0x10, 0x10, 0x16, 0x19, 0x11, 0x11, 0x11 }, /* 68 */
+ { 0x04, 0x00, 0x0c, 0x04, 0x04, 0x04, 0x0e }, /* 69 */
+ { 0x02, 0x00, 0x06, 0x02, 0x02, 0x12, 0x0c }, /* 6a */
+ { 0x10, 0x10, 0x12, 0x14, 0x18, 0x14, 0x12 }, /* 6b */
+ { 0x0c, 0x04, 0x04, 0x04, 0x04, 0x04, 0x0e }, /* 6c */
+ { 0x00, 0x00, 0x1a, 0x15, 0x15, 0x11, 0x11 }, /* 6d */
+ { 0x00, 0x00, 0x16, 0x19, 0x11, 0x11, 0x11 }, /* 6e */
+ { 0x00, 0x00, 0x0e, 0x11, 0x11, 0x11, 0x0e }, /* 6f */
+ { 0x00, 0x00, 0x1e, 0x11, 0x1e, 0x10, 0x10 }, /* 70 */
+ { 0x00, 0x00, 0x0d, 0x13, 0x0f, 0x01, 0x01 }, /* 71 */
+ { 0x00, 0x00, 0x16, 0x19, 0x10, 0x10, 0x10 }, /* 72 */
+ { 0x00, 0x00, 0x0e, 0x10, 0x0e, 0x01, 0x1e }, /* 73 */
+ { 0x08, 0x08, 0x1c, 0x08, 0x08, 0x09, 0x06 }, /* 74 */
+ { 0x00, 0x00, 0x11, 0x11, 0x11, 0x13, 0x0d }, /* 75 */
+ { 0x00, 0x00, 0x11, 0x11, 0x11, 0x0a, 0x04 }, /* 76 */
+ { 0x00, 0x00, 0x11, 0x11, 0x15, 0x15, 0x0a }, /* 77 */
+ { 0x00, 0x00, 0x11, 0x0a, 0x04, 0x0a, 0x11 }, /* 78 */
+ { 0x00, 0x00, 0x11, 0x11, 0x0f, 0x01, 0x1e }, /* 79 */
+ { 0x00, 0x00, 0x1f, 0x02, 0x04, 0x08, 0x1f }, /* 7a */
+ { 0x02, 0x04, 0x04, 0x08, 0x04, 0x04, 0x02 }, /* 7b */
+ { 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04 }, /* 7c */
+ { 0x08, 0x04, 0x04, 0x02, 0x04, 0x04, 0x08 }, /* 7d */
+ { 0x00, 0x04, 0x02, 0x1f, 0x02, 0x04, 0x00 }, /* 7e */
+ { 0x00, 0x04, 0x08, 0x1f, 0x08, 0x04, 0x00 }, /* 7f */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f }, /* 80 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f }, /* 81 */
+ { 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f }, /* 82 */
+ { 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x1f }, /* 83 */
+ { 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f }, /* 84 */
+ { 0x00, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f }, /* 85 */
+ { 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f }, /* 86 */
+ { 0x00, 0x0a, 0x04, 0x1f, 0x04, 0x0a, 0x00 }, /* 87 */
+ { 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11 }, /* 88 */
+ { 0x19, 0x19, 0x19, 0x19, 0x19, 0x19, 0x19 }, /* 89 */
+ { 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d, 0x1d }, /* 8a */
+ { 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08 }, /* 8b */
+ { 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c }, /* 8c */
+ { 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e }, /* 8d */
+ { 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f }, /* 8e */
+ { 0x00, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x00 }, /* 8f */
+ { 0x00, 0x0e, 0x1f, 0x1f, 0x1f, 0x0e, 0x00 }, /* 90 */
+ { 0x1f, 0x11, 0x11, 0x11, 0x11, 0x11, 0x1f }, /* 91 */
+ { 0x1f, 0x1b, 0x13, 0x1b, 0x1b, 0x11, 0x1f }, /* 92 */
+ { 0x1f, 0x11, 0x1d, 0x1b, 0x17, 0x11, 0x1f }, /* 93 */
+ { 0x00, 0x00, 0x07, 0x04, 0x04, 0x14, 0x08 }, /* 94 */
+ { 0x04, 0x04, 0x1f, 0x04, 0x04, 0x00, 0x1f }, /* 95 */
+ { 0x00, 0x11, 0x0a, 0x04, 0x0a, 0x11, 0x00 }, /* 96 */
+ { 0x00, 0x04, 0x00, 0x1f, 0x00, 0x04, 0x00 }, /* 97 */
+ { 0x1f, 0x00, 0x11, 0x0a, 0x04, 0x0a, 0x11 }, /* 98 */
+ { 0x1c, 0x04, 0x1c, 0x10, 0x1c, 0x00, 0x00 }, /* 99 */
+ { 0x1c, 0x04, 0x1c, 0x04, 0x1c, 0x00, 0x00 }, /* 9a */
+ { 0x11, 0x12, 0x17, 0x09, 0x17, 0x04, 0x07 }, /* 9b */
+ { 0x11, 0x12, 0x14, 0x09, 0x13, 0x07, 0x01 }, /* 9c */
+ { 0x18, 0x09, 0x1a, 0x0d, 0x1b, 0x17, 0x01 }, /* 9d */
+ { 0x00, 0x05, 0x0a, 0x14, 0x0a, 0x05, 0x00 }, /* 9e */
+ { 0x00, 0x14, 0x0a, 0x05, 0x0a, 0x14, 0x00 }, /* 9f */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* a0 */
+ { 0x00, 0x00, 0x00, 0x00, 0x1c, 0x14, 0x1c }, /* a1 */
+ { 0x07, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00 }, /* a2 */
+ { 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x1c }, /* a3 */
+ { 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x04 }, /* a4 */
+ { 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x00, 0x00 }, /* a5 */
+ { 0x00, 0x1f, 0x01, 0x1f, 0x01, 0x02, 0x04 }, /* a6 */
+ { 0x00, 0x00, 0x1f, 0x01, 0x06, 0x04, 0x08 }, /* a7 */
+ { 0x00, 0x00, 0x02, 0x04, 0x0c, 0x14, 0x04 }, /* a8 */
+ { 0x00, 0x00, 0x04, 0x1f, 0x11, 0x01, 0x06 }, /* a9 */
+ { 0x00, 0x00, 0x00, 0x1f, 0x04, 0x04, 0x1f }, /* aa */
+ { 0x00, 0x00, 0x02, 0x1f, 0x06, 0x0a, 0x12 }, /* ab */
+ { 0x00, 0x00, 0x08, 0x1f, 0x09, 0x0a, 0x08 }, /* ac */
+ { 0x00, 0x00, 0x00, 0x0e, 0x02, 0x02, 0x1f }, /* ad */
+ { 0x00, 0x00, 0x1e, 0x02, 0x1e, 0x02, 0x1e }, /* ae */
+ { 0x00, 0x00, 0x00, 0x15, 0x15, 0x01, 0x06 }, /* af */
+ { 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00 }, /* b0 */
+ { 0x1f, 0x01, 0x05, 0x06, 0x04, 0x04, 0x08 }, /* b1 */
+ { 0x01, 0x02, 0x04, 0x0c, 0x14, 0x04, 0x04 }, /* b2 */
+ { 0x04, 0x1f, 0x11, 0x11, 0x01, 0x02, 0x04 }, /* b3 */
+ { 0x00, 0x1f, 0x04, 0x04, 0x04, 0x04, 0x1f }, /* b4 */
+ { 0x02, 0x1f, 0x02, 0x06, 0x0a, 0x12, 0x02 }, /* b5 */
+ { 0x08, 0x1f, 0x09, 0x09, 0x09, 0x09, 0x12 }, /* b6 */
+ { 0x04, 0x1f, 0x04, 0x1f, 0x04, 0x04, 0x04 }, /* b7 */
+ { 0x00, 0x0f, 0x09, 0x11, 0x01, 0x02, 0x0c }, /* b8 */
+ { 0x08, 0x0f, 0x12, 0x02, 0x02, 0x02, 0x04 }, /* b9 */
+ { 0x00, 0x1f, 0x01, 0x01, 0x01, 0x01, 0x1f }, /* ba */
+ { 0x0a, 0x1f, 0x0a, 0x02, 0x02, 0x02, 0x04 }, /* bb */
+ { 0x00, 0x18, 0x00, 0x18, 0x01, 0x02, 0x1c }, /* bc */
+ { 0x00, 0x1f, 0x01, 0x02, 0x04, 0x0a, 0x11 }, /* bd */
+ { 0x08, 0x1f, 0x09, 0x0a, 0x08, 0x08, 0x07 }, /* be */
+ { 0x00, 0x11, 0x11, 0x09, 0x01, 0x02, 0x0c }, /* bf */
+ { 0x00, 0x0f, 0x09, 0x15, 0x03, 0x02, 0x0c }, /* c0 */
+ { 0x02, 0x1c, 0x04, 0x1f, 0x04, 0x04, 0x08 }, /* c1 */
+ { 0x00, 0x15, 0x15, 0x15, 0x01, 0x02, 0x04 }, /* c2 */
+ { 0x0e, 0x00, 0x1f, 0x04, 0x04, 0x04, 0x08 }, /* c3 */
+ { 0x08, 0x08, 0x08, 0x0c, 0x0a, 0x08, 0x08 }, /* c4 */
+ { 0x04, 0x04, 0x1f, 0x04, 0x04, 0x08, 0x10 }, /* c5 */
+ { 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x1f }, /* c6 */
+ { 0x00, 0x1f, 0x01, 0x0a, 0x04, 0x0a, 0x10 }, /* c7 */
+ { 0x04, 0x1f, 0x02, 0x04, 0x0e, 0x15, 0x04 }, /* c8 */
+ { 0x02, 0x02, 0x02, 0x02, 0x02, 0x04, 0x08 }, /* c9 */
+ { 0x00, 0x04, 0x02, 0x11, 0x11, 0x11, 0x11 }, /* ca */
+ { 0x10, 0x10, 0x1f, 0x10, 0x10, 0x10, 0x0f }, /* cb */
+ { 0x00, 0x1f, 0x01, 0x01, 0x01, 0x02, 0x0c }, /* cc */
+ { 0x00, 0x08, 0x14, 0x02, 0x01, 0x01, 0x00 }, /* cd */
+ { 0x04, 0x1f, 0x04, 0x04, 0x15, 0x15, 0x04 }, /* ce */
+ { 0x00, 0x1f, 0x01, 0x01, 0x0a, 0x04, 0x02 }, /* cf */
+ { 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x01 }, /* d0 */
+ { 0x00, 0x04, 0x08, 0x10, 0x11, 0x1f, 0x01 }, /* d1 */
+ { 0x00, 0x01, 0x01, 0x0a, 0x04, 0x0a, 0x10 }, /* d2 */
+ { 0x00, 0x1f, 0x08, 0x1f, 0x08, 0x08, 0x07 }, /* d3 */
+ { 0x08, 0x08, 0x1f, 0x09, 0x0a, 0x08, 0x08 }, /* d4 */
+ { 0x00, 0x0e, 0x02, 0x02, 0x02, 0x02, 0x1f }, /* d5 */
+ { 0x00, 0x1f, 0x01, 0x1f, 0x01, 0x01, 0x1f }, /* d6 */
+ { 0x0e, 0x00, 0x1f, 0x01, 0x01, 0x02, 0x04 }, /* d7 */
+ { 0x12, 0x12, 0x12, 0x12, 0x12, 0x04, 0x08 }, /* d8 */
+ { 0x00, 0x04, 0x14, 0x14, 0x15, 0x15, 0x16 }, /* d9 */
+ { 0x00, 0x10, 0x10, 0x11, 0x12, 0x14, 0x18 }, /* da */
+ { 0x1f, 0x11, 0x11, 0x11, 0x11, 0x11, 0x1f }, /* db */
+ { 0x00, 0x1f, 0x11, 0x11, 0x01, 0x02, 0x04 }, /* dc */
+ { 0x00, 0x18, 0x00, 0x01, 0x01, 0x02, 0x1c }, /* dd */
+ { 0x04, 0x12, 0x08, 0x00, 0x00, 0x00, 0x00 }, /* de */
+ { 0x1c, 0x14, 0x1c, 0x00, 0x00, 0x00, 0x00 }, /* df */
+ { 0x00, 0x00, 0x09, 0x15, 0x12, 0x12, 0x0d }, /* e0 */
+ { 0x00, 0x0e, 0x11, 0x1e, 0x11, 0x1e, 0x10 }, /* e1 */
+ { 0x00, 0x11, 0x0a, 0x0a, 0x04, 0x04, 0x08 }, /* e2 */
+ { 0x00, 0x00, 0x1f, 0x0a, 0x0a, 0x0a, 0x13 }, /* e3 */
+ { 0x1f, 0x10, 0x08, 0x04, 0x08, 0x10, 0x1f }, /* e4 */
+ { 0x00, 0x00, 0x0f, 0x14, 0x12, 0x11, 0x0e }, /* e5 */
+ { 0x00, 0x09, 0x09, 0x09, 0x0f, 0x08, 0x10 }, /* e6 */
+ { 0x00, 0x00, 0x1f, 0x04, 0x04, 0x04, 0x03 }, /* e7 */
+ { 0x1f, 0x04, 0x0e, 0x15, 0x0e, 0x04, 0x1f }, /* e8 */
+ { 0x00, 0x0e, 0x11, 0x1f, 0x11, 0x11, 0x0e }, /* e9 */
+ { 0x00, 0x00, 0x0e, 0x11, 0x11, 0x0a, 0x1b }, /* ea */
+ { 0x0f, 0x10, 0x0e, 0x11, 0x11, 0x11, 0x0e }, /* eb */
+ { 0x00, 0x00, 0x00, 0x00, 0x0b, 0x15, 0x1a }, /* ec */
+ { 0x02, 0x04, 0x0e, 0x15, 0x0e, 0x04, 0x08 }, /* ed */
+ { 0x00, 0x0e, 0x10, 0x0e, 0x10, 0x0e, 0x00 }, /* ee */
+ { 0x06, 0x09, 0x11, 0x1e, 0x10, 0x10, 0x10 }, /* ef */
+ { 0x00, 0x00, 0x08, 0x15, 0x02, 0x00, 0x00 }, /* f0 */
+ { 0x00, 0x08, 0x15, 0x0a, 0x15, 0x02, 0x00 }, /* f1 */
+ { 0x08, 0x0f, 0x12, 0x0f, 0x0a, 0x1f, 0x02 }, /* f2 */
+ { 0x0f, 0x09, 0x0f, 0x09, 0x0f, 0x09, 0x11 }, /* f3 */
+ { 0x04, 0x15, 0x15, 0x04, 0x04, 0x0a, 0x11 }, /* f4 */
+ { 0x04, 0x04, 0x1d, 0x06, 0x0e, 0x15, 0x04 }, /* f5 */
+ { 0x04, 0x04, 0x1f, 0x04, 0x0e, 0x15, 0x04 }, /* f6 */
+ { 0x04, 0x0a, 0x11, 0x0e, 0x04, 0x0e, 0x1f }, /* f7 */
+ { 0x04, 0x04, 0x0e, 0x04, 0x04, 0x04, 0x1f }, /* f8 */
+ { 0x1f, 0x11, 0x11, 0x1f, 0x11, 0x11, 0x1f }, /* f9 */
+ { 0x00, 0x01, 0x1e, 0x04, 0x1f, 0x04, 0x04 }, /* fa */
+ { 0x00, 0x00, 0x1f, 0x08, 0x0f, 0x09, 0x11 }, /* fb */
+ { 0x00, 0x00, 0x1f, 0x15, 0x1f, 0x11, 0x11 }, /* fc */
+ { 0x0a, 0x15, 0x0a, 0x15, 0x0a, 0x15, 0x0a }, /* fd */
+ { 0x15, 0x0a, 0x15, 0x0a, 0x15, 0x0a, 0x15 }, /* fe */
+ { 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f }, /* ff */
+};
+static unsigned char font_player_oldlcd[256][7] = {
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 00 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 01 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 02 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 03 */
+ { 0x0e, 0x11, 0x17, 0x15, 0x17, 0x10, 0x0e }, /* 04 */
+ { 0x06, 0x09, 0x08, 0x1e, 0x08, 0x08, 0x1f }, /* 05 */
+ { 0x04, 0x0f, 0x14, 0x0e, 0x05, 0x1e, 0x04 }, /* 06 */
+ { 0x11, 0x0a, 0x1f, 0x04, 0x1f, 0x04, 0x04 }, /* 07 */
+ { 0x08, 0x04, 0x0e, 0x11, 0x1f, 0x10, 0x0e }, /* 08 */
+ { 0x02, 0x04, 0x0e, 0x11, 0x1f, 0x10, 0x0e }, /* 09 */
+ { 0x08, 0x04, 0x00, 0x11, 0x11, 0x13, 0x0d }, /* 0a */
+ { 0x08, 0x04, 0x00, 0x0c, 0x04, 0x04, 0x0e }, /* 0b */
+ { 0x08, 0x04, 0x00, 0x0e, 0x11, 0x11, 0x0e }, /* 0c */
+ { 0x0f, 0x10, 0x10, 0x10, 0x0f, 0x02, 0x0e }, /* 0d */
+ { 0x10, 0x10, 0x17, 0x14, 0x1e, 0x04, 0x04 }, /* 0e */
+ { 0x01, 0x0e, 0x13, 0x15, 0x19, 0x0e, 0x10 }, /* 0f */
+ { 0x00, 0x02, 0x0e, 0x15, 0x15, 0x0e, 0x08 }, /* 10 */
+ { 0x1c, 0x10, 0x17, 0x1d, 0x07, 0x06, 0x05 }, /* 11 */
+ { 0x04, 0x0a, 0x04, 0x0e, 0x11, 0x1f, 0x11 }, /* 12 */
+ { 0x04, 0x0a, 0x04, 0x01, 0x0f, 0x11, 0x0f }, /* 13 */
+ { 0x00, 0x04, 0x04, 0x0a, 0x0a, 0x11, 0x1f }, /* 14 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f }, /* 15 */
+ { 0x0e, 0x04, 0x1f, 0x15, 0x1f, 0x04, 0x0e }, /* 16 */
+ { 0x1f, 0x11, 0x11, 0x10, 0x10, 0x10, 0x10 }, /* 17 */
+ { 0x04, 0x04, 0x0a, 0x0a, 0x11, 0x11, 0x11 }, /* 18 */
+ { 0x0e, 0x11, 0x11, 0x11, 0x0a, 0x0a, 0x1b }, /* 19 */
+ { 0x1f, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a }, /* 1a */
+ { 0x15, 0x15, 0x15, 0x15, 0x0e, 0x04, 0x04 }, /* 1b */
+ { 0x1f, 0x08, 0x04, 0x02, 0x04, 0x08, 0x1f }, /* 1c */
+ { 0x0e, 0x11, 0x11, 0x1f, 0x11, 0x11, 0x0e }, /* 1d */
+ { 0x1f, 0x11, 0x00, 0x0e, 0x00, 0x11, 0x1f }, /* 1e */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 1f */
+ { 0x0f, 0x14, 0x14, 0x1f, 0x14, 0x14, 0x17 }, /* 20 */
+ { 0x00, 0x00, 0x1a, 0x05, 0x0f, 0x14, 0x0f }, /* 21 */
+ { 0x0c, 0x12, 0x16, 0x11, 0x11, 0x16, 0x10 }, /* 22 */
+ { 0x02, 0x04, 0x1f, 0x10, 0x1c, 0x10, 0x1f }, /* 23 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* 24 */
+ { 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x04 }, /* 25 */
+ { 0x1b, 0x09, 0x12, 0x00, 0x00, 0x00, 0x00 }, /* 26 */
+ { 0x0a, 0x0a, 0x1f, 0x0a, 0x1f, 0x0a, 0x0a }, /* 27 */
+ { 0x00, 0x11, 0x0e, 0x0a, 0x0e, 0x11, 0x00 }, /* 28 */
+ { 0x18, 0x19, 0x02, 0x04, 0x08, 0x13, 0x03 }, /* 29 */
+ { 0x08, 0x14, 0x14, 0x09, 0x15, 0x12, 0x0d }, /* 2a */
+ { 0x0c, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00 }, /* 2b */
+ { 0x02, 0x04, 0x08, 0x08, 0x08, 0x04, 0x02 }, /* 2c */
+ { 0x08, 0x04, 0x02, 0x02, 0x02, 0x04, 0x08 }, /* 2d */
+ { 0x04, 0x15, 0x0e, 0x04, 0x0e, 0x15, 0x04 }, /* 2e */
+ { 0x00, 0x04, 0x04, 0x1f, 0x04, 0x04, 0x00 }, /* 2f */
+ { 0x00, 0x00, 0x00, 0x00, 0x0c, 0x04, 0x08 }, /* 30 */
+ { 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00 }, /* 31 */
+ { 0x00, 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x00 }, /* 32 */
+ { 0x00, 0x01, 0x02, 0x04, 0x08, 0x10, 0x00 }, /* 33 */
+ { 0x0e, 0x11, 0x11, 0x11, 0x11, 0x11, 0x0e }, /* 34 */
+ { 0x04, 0x0c, 0x04, 0x04, 0x04, 0x04, 0x0e }, /* 35 */
+ { 0x0e, 0x11, 0x01, 0x02, 0x04, 0x08, 0x1f }, /* 36 */
+ { 0x1f, 0x02, 0x04, 0x02, 0x01, 0x11, 0x0e }, /* 37 */
+ { 0x02, 0x06, 0x0a, 0x12, 0x1f, 0x02, 0x02 }, /* 38 */
+ { 0x1f, 0x10, 0x1e, 0x01, 0x01, 0x11, 0x0e }, /* 39 */
+ { 0x06, 0x08, 0x10, 0x1e, 0x11, 0x11, 0x0e }, /* 3a */
+ { 0x1f, 0x01, 0x02, 0x02, 0x04, 0x04, 0x04 }, /* 3b */
+ { 0x0e, 0x11, 0x11, 0x0e, 0x11, 0x11, 0x0e }, /* 3c */
+ { 0x0e, 0x11, 0x11, 0x0f, 0x01, 0x02, 0x0c }, /* 3d */
+ { 0x00, 0x0c, 0x0c, 0x00, 0x0c, 0x0c, 0x00 }, /* 3e */
+ { 0x00, 0x0c, 0x0c, 0x00, 0x0c, 0x04, 0x08 }, /* 3f */
+ { 0x03, 0x06, 0x0c, 0x18, 0x0c, 0x06, 0x03 }, /* 40 */
+ { 0x00, 0x00, 0x1f, 0x00, 0x1f, 0x00, 0x00 }, /* 41 */
+ { 0x18, 0x0c, 0x06, 0x03, 0x06, 0x0c, 0x18 }, /* 42 */
+ { 0x0e, 0x11, 0x01, 0x02, 0x04, 0x00, 0x04 }, /* 43 */
+ { 0x04, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04 }, /* 44 */
+ { 0x04, 0x0a, 0x11, 0x11, 0x1f, 0x11, 0x11 }, /* 45 */
+ { 0x1e, 0x11, 0x11, 0x1e, 0x11, 0x11, 0x1e }, /* 46 */
+ { 0x0e, 0x11, 0x10, 0x10, 0x10, 0x11, 0x0e }, /* 47 */
+ { 0x1c, 0x12, 0x11, 0x11, 0x11, 0x12, 0x1c }, /* 48 */
+ { 0x1f, 0x10, 0x10, 0x1e, 0x10, 0x10, 0x1f }, /* 49 */
+ { 0x1f, 0x10, 0x10, 0x1e, 0x10, 0x10, 0x10 }, /* 4a */
+ { 0x0e, 0x10, 0x10, 0x17, 0x11, 0x11, 0x0e }, /* 4b */
+ { 0x11, 0x11, 0x11, 0x1f, 0x11, 0x11, 0x11 }, /* 4c */
+ { 0x0e, 0x04, 0x04, 0x04, 0x04, 0x04, 0x0e }, /* 4d */
+ { 0x0f, 0x02, 0x02, 0x02, 0x02, 0x12, 0x0c }, /* 4e */
+ { 0x11, 0x12, 0x14, 0x18, 0x14, 0x12, 0x11 }, /* 4f */
+ { 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x1f }, /* 50 */
+ { 0x11, 0x1b, 0x15, 0x11, 0x11, 0x11, 0x11 }, /* 51 */
+ { 0x11, 0x11, 0x19, 0x15, 0x13, 0x11, 0x11 }, /* 52 */
+ { 0x0e, 0x11, 0x11, 0x11, 0x11, 0x11, 0x0e }, /* 53 */
+ { 0x1e, 0x11, 0x11, 0x1e, 0x10, 0x10, 0x10 }, /* 54 */
+ { 0x0e, 0x11, 0x11, 0x11, 0x11, 0x12, 0x0d }, /* 55 */
+ { 0x1e, 0x11, 0x11, 0x1e, 0x14, 0x12, 0x11 }, /* 56 */
+ { 0x0e, 0x11, 0x10, 0x0e, 0x01, 0x11, 0x0e }, /* 57 */
+ { 0x1f, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04 }, /* 58 */
+ { 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x0e }, /* 59 */
+ { 0x11, 0x11, 0x11, 0x11, 0x11, 0x0a, 0x04 }, /* 5a */
+ { 0x11, 0x11, 0x11, 0x11, 0x11, 0x15, 0x0a }, /* 5b */
+ { 0x11, 0x11, 0x0a, 0x04, 0x0a, 0x11, 0x11 }, /* 5c */
+ { 0x11, 0x11, 0x0a, 0x04, 0x04, 0x04, 0x04 }, /* 5d */
+ { 0x1f, 0x01, 0x02, 0x04, 0x08, 0x10, 0x1f }, /* 5e */
+ { 0x0a, 0x00, 0x04, 0x0a, 0x11, 0x1f, 0x11 }, /* 5f */
+ { 0x0a, 0x00, 0x0e, 0x11, 0x11, 0x11, 0x0e }, /* 60 */
+ { 0x0d, 0x12, 0x00, 0x19, 0x15, 0x13, 0x11 }, /* 61 */
+ { 0x0a, 0x00, 0x11, 0x11, 0x11, 0x11, 0x0e }, /* 62 */
+ { 0x0e, 0x10, 0x0e, 0x11, 0x0e, 0x01, 0x0e }, /* 63 */
+ { 0x04, 0x00, 0x04, 0x08, 0x10, 0x11, 0x0e }, /* 64 */
+ { 0x00, 0x00, 0x0e, 0x01, 0x0f, 0x11, 0x0f }, /* 65 */
+ { 0x10, 0x10, 0x1e, 0x11, 0x11, 0x11, 0x1e }, /* 66 */
+ { 0x00, 0x00, 0x0f, 0x10, 0x10, 0x10, 0x0f }, /* 67 */
+ { 0x01, 0x01, 0x0f, 0x11, 0x11, 0x11, 0x0f }, /* 68 */
+ { 0x00, 0x00, 0x0e, 0x11, 0x1f, 0x10, 0x0f }, /* 69 */
+ { 0x03, 0x04, 0x0f, 0x04, 0x04, 0x04, 0x04 }, /* 6a */
+ { 0x00, 0x00, 0x0f, 0x11, 0x0f, 0x01, 0x0e }, /* 6b */
+ { 0x10, 0x10, 0x16, 0x19, 0x11, 0x11, 0x11 }, /* 6c */
+ { 0x04, 0x00, 0x0c, 0x04, 0x04, 0x04, 0x0e }, /* 6d */
+ { 0x02, 0x00, 0x06, 0x02, 0x02, 0x12, 0x0c }, /* 6e */
+ { 0x08, 0x08, 0x09, 0x0a, 0x0c, 0x0a, 0x09 }, /* 6f */
+ { 0x0c, 0x04, 0x04, 0x04, 0x04, 0x04, 0x0e }, /* 70 */
+ { 0x00, 0x00, 0x1a, 0x15, 0x15, 0x15, 0x15 }, /* 71 */
+ { 0x00, 0x00, 0x16, 0x19, 0x11, 0x11, 0x11 }, /* 72 */
+ { 0x00, 0x00, 0x0e, 0x11, 0x11, 0x11, 0x0e }, /* 73 */
+ { 0x00, 0x00, 0x1e, 0x11, 0x1e, 0x10, 0x10 }, /* 74 */
+ { 0x00, 0x00, 0x0f, 0x11, 0x0f, 0x01, 0x01 }, /* 75 */
+ { 0x00, 0x00, 0x0b, 0x0c, 0x08, 0x08, 0x08 }, /* 76 */
+ { 0x00, 0x00, 0x0e, 0x10, 0x0e, 0x01, 0x1e }, /* 77 */
+ { 0x04, 0x04, 0x0f, 0x04, 0x04, 0x04, 0x03 }, /* 78 */
+ { 0x00, 0x00, 0x11, 0x11, 0x11, 0x13, 0x0d }, /* 79 */
+ { 0x00, 0x00, 0x11, 0x11, 0x11, 0x0a, 0x04 }, /* 7a */
+ { 0x00, 0x00, 0x11, 0x11, 0x11, 0x15, 0x0a }, /* 7b */
+ { 0x00, 0x00, 0x11, 0x0a, 0x04, 0x0a, 0x11 }, /* 7c */
+ { 0x00, 0x00, 0x11, 0x11, 0x0f, 0x01, 0x1e }, /* 7d */
+ { 0x00, 0x00, 0x1f, 0x02, 0x04, 0x08, 0x1f }, /* 7e */
+ { 0x0a, 0x00, 0x0e, 0x01, 0x0f, 0x11, 0x0f }, /* 7f */
+ { 0x00, 0x0a, 0x00, 0x0e, 0x11, 0x11, 0x0e }, /* 80 */
+ { 0x0d, 0x12, 0x00, 0x16, 0x19, 0x11, 0x11 }, /* 81 */
+ { 0x00, 0x0a, 0x00, 0x11, 0x11, 0x13, 0x0d }, /* 82 */
+ { 0x08, 0x04, 0x0e, 0x01, 0x0f, 0x11, 0x0f }, /* 83 */
+ { 0x00, 0x0f, 0x10, 0x10, 0x0f, 0x02, 0x04 }, /* 84 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x15, 0x00 }, /* 85 */
+ { 0x00, 0x00, 0x04, 0x0e, 0x1f, 0x00, 0x00 }, /* 86 */
+ { 0x00, 0x00, 0x1f, 0x0e, 0x04, 0x00, 0x00 }, /* 87 */
+ { 0x02, 0x06, 0x0e, 0x1e, 0x0e, 0x06, 0x02 }, /* 88 */
+ { 0x08, 0x0c, 0x0e, 0x0f, 0x0e, 0x0c, 0x08 }, /* 89 */
+ { 0x1c, 0x1f, 0x13, 0x10, 0x10, 0x10, 0x10 }, /* 8a */
+ { 0x15, 0x0a, 0x15, 0x0a, 0x15, 0x0a, 0x15 }, /* 8b */
+ { 0x08, 0x04, 0x0e, 0x11, 0x1f, 0x11, 0x11 }, /* 8c */
+ { 0x02, 0x04, 0x0e, 0x11, 0x1f, 0x11, 0x11 }, /* 8d */
+ { 0x04, 0x0a, 0x0e, 0x11, 0x1f, 0x11, 0x11 }, /* 8e */
+ { 0x0d, 0x12, 0x0e, 0x11, 0x1f, 0x11, 0x11 }, /* 8f */
+ { 0x08, 0x04, 0x1f, 0x10, 0x1e, 0x10, 0x1f }, /* 90 */
+ { 0x04, 0x0a, 0x1f, 0x10, 0x1c, 0x10, 0x1f }, /* 91 */
+ { 0x0a, 0x00, 0x1f, 0x10, 0x1c, 0x10, 0x1f }, /* 92 */
+ { 0x08, 0x04, 0x0e, 0x04, 0x04, 0x04, 0x0e }, /* 93 */
+ { 0x02, 0x04, 0x0e, 0x04, 0x04, 0x04, 0x0e }, /* 94 */
+ { 0x0c, 0x0a, 0x09, 0x1d, 0x09, 0x0a, 0x0c }, /* 95 */
+ { 0x08, 0x04, 0x0e, 0x11, 0x11, 0x11, 0x0e }, /* 96 */
+ { 0x02, 0x04, 0x0e, 0x11, 0x11, 0x11, 0x0e }, /* 97 */
+ { 0x04, 0x0a, 0x0e, 0x11, 0x11, 0x11, 0x0e }, /* 98 */
+ { 0x0d, 0x12, 0x0e, 0x11, 0x11, 0x11, 0x0e }, /* 99 */
+ { 0x08, 0x04, 0x11, 0x11, 0x11, 0x11, 0x0e }, /* 9a */
+ { 0x02, 0x04, 0x11, 0x11, 0x11, 0x11, 0x0e }, /* 9b */
+ { 0x02, 0x04, 0x0e, 0x01, 0x0f, 0x11, 0x0f }, /* 9c */
+ { 0x04, 0x0a, 0x0e, 0x01, 0x0f, 0x11, 0x0f }, /* 9d */
+ { 0x0d, 0x12, 0x0e, 0x01, 0x0f, 0x11, 0x0f }, /* 9e */
+ { 0x04, 0x0a, 0x0e, 0x11, 0x1f, 0x10, 0x0e }, /* 9f */
+ { 0x0a, 0x00, 0x0e, 0x11, 0x1f, 0x10, 0x0e }, /* a0 */
+ { 0x02, 0x04, 0x00, 0x0c, 0x04, 0x04, 0x0e }, /* a1 */
+ { 0x04, 0x0a, 0x00, 0x0c, 0x04, 0x04, 0x0e }, /* a2 */
+ { 0x0a, 0x00, 0x00, 0x0c, 0x04, 0x04, 0x0e }, /* a3 */
+ { 0x02, 0x04, 0x00, 0x0e, 0x11, 0x11, 0x0e }, /* a4 */
+ { 0x04, 0x0a, 0x00, 0x0e, 0x11, 0x11, 0x0e }, /* a5 */
+ { 0x0d, 0x12, 0x00, 0x0e, 0x11, 0x11, 0x0e }, /* a6 */
+ { 0x02, 0x04, 0x00, 0x11, 0x11, 0x13, 0x0d }, /* a7 */
+ { 0x04, 0x04, 0x0f, 0x10, 0x10, 0x0f, 0x04 }, /* a8 */
+ { 0x03, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03 }, /* a9 */
+ { 0x0a, 0x04, 0x0b, 0x0c, 0x08, 0x08, 0x08 }, /* aa */
+ { 0x0a, 0x04, 0x0f, 0x10, 0x10, 0x10, 0x0f }, /* ab */
+ { 0x0a, 0x04, 0x0e, 0x10, 0x0e, 0x01, 0x1e }, /* ac */
+ { 0x0a, 0x04, 0x0e, 0x11, 0x1f, 0x10, 0x0e }, /* ad */
+ { 0x04, 0x0a, 0x04, 0x11, 0x11, 0x13, 0x0d }, /* ae */
+ { 0x02, 0x04, 0x11, 0x11, 0x0f, 0x01, 0x0e }, /* af */
+ { 0x02, 0x0f, 0x02, 0x0e, 0x12, 0x12, 0x0e }, /* b0 */
+ { 0x02, 0x04, 0x0f, 0x10, 0x10, 0x10, 0x0f }, /* b1 */
+ { 0x0e, 0x11, 0x1f, 0x10, 0x0e, 0x04, 0x06 }, /* b2 */
+ { 0x0e, 0x01, 0x0f, 0x11, 0x0f, 0x02, 0x03 }, /* b3 */
+ { 0x04, 0x00, 0x1f, 0x02, 0x04, 0x08, 0x1f }, /* b4 */
+ { 0x02, 0x04, 0x1f, 0x02, 0x04, 0x08, 0x1f }, /* b5 */
+ { 0x02, 0x04, 0x0e, 0x10, 0x0e, 0x01, 0x1e }, /* b6 */
+ { 0x02, 0x04, 0x16, 0x19, 0x11, 0x11, 0x11 }, /* b7 */
+ { 0x0c, 0x04, 0x06, 0x0c, 0x04, 0x04, 0x0e }, /* b8 */
+ { 0x04, 0x0e, 0x1f, 0x1f, 0x1b, 0x04, 0x0e }, /* b9 */
+ { 0x0a, 0x04, 0x16, 0x19, 0x11, 0x11, 0x11 }, /* ba */
+ { 0x09, 0x09, 0x08, 0x1e, 0x08, 0x08, 0x06 }, /* bb */
+ { 0x05, 0x05, 0x0c, 0x14, 0x14, 0x14, 0x0c }, /* bc */
+ { 0x0a, 0x04, 0x1f, 0x02, 0x04, 0x08, 0x1f }, /* bd */
+ { 0x0f, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* be */
+ { 0x0f, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01 }, /* bf */
+ { 0x1e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1f }, /* c0 */
+ { 0x1f, 0x00, 0x0e, 0x10, 0x17, 0x11, 0x0e }, /* c1 */
+ { 0x1f, 0x00, 0x0f, 0x11, 0x0f, 0x01, 0x0e }, /* c2 */
+ { 0x0e, 0x10, 0x0e, 0x01, 0x0e, 0x04, 0x0c }, /* c3 */
+ { 0x00, 0x0e, 0x10, 0x0e, 0x01, 0x0e, 0x04 }, /* c4 */
+ { 0x04, 0x00, 0x0e, 0x04, 0x04, 0x04, 0x0e }, /* c5 */
+ { 0x00, 0x00, 0x0c, 0x04, 0x04, 0x04, 0x0e }, /* c6 */
+ { 0x05, 0x0a, 0x11, 0x11, 0x11, 0x11, 0x0e }, /* c7 */
+ { 0x09, 0x12, 0x0e, 0x11, 0x11, 0x11, 0x0e }, /* c8 */
+ { 0x09, 0x12, 0x00, 0x11, 0x11, 0x13, 0x0d }, /* c9 */
+ { 0x09, 0x12, 0x00, 0x0e, 0x11, 0x11, 0x0e }, /* ca */
+ { 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x0f }, /* cb */
+ { 0x10, 0x10, 0x10, 0x10, 0x10, 0x01, 0x1e }, /* cc */
+ { 0x00, 0x1b, 0x1f, 0x1f, 0x0e, 0x04, 0x00 }, /* cd */
+ { 0x18, 0x08, 0x08, 0x08, 0x08, 0x08, 0x18 }, /* ce */
+ { 0x0e, 0x11, 0x04, 0x0a, 0x1b, 0x1f, 0x00 }, /* cf */
+ { 0x0a, 0x15, 0x04, 0x07, 0x00, 0x11, 0x0a }, /* d0 */
+ { 0x0f, 0x10, 0x00, 0x00, 0x00, 0x00, 0x1f }, /* d1 */
+ { 0x01, 0x03, 0x1d, 0x11, 0x1d, 0x03, 0x01 }, /* d2 */
+ { 0x0e, 0x11, 0x11, 0x1f, 0x1b, 0x1b, 0x1f }, /* d3 */
+ { 0x00, 0x01, 0x02, 0x0a, 0x04, 0x04, 0x00 }, /* d4 */
+ { 0x04, 0x0e, 0x1f, 0x00, 0x1f, 0x0e, 0x04 }, /* d5 */
+ { 0x02, 0x02, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e }, /* d6 */
+ { 0x1b, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1b }, /* d7 */
+ { 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1b }, /* d8 */
+ { 0x04, 0x0f, 0x04, 0x04, 0x04, 0x03, 0x06 }, /* d9 */
+ { 0x1b, 0x1b, 0x1b, 0x1b, 0x1b, 0x1b, 0x1b }, /* da */
+ { 0x00, 0x04, 0x0e, 0x1f, 0x0e, 0x04, 0x00 }, /* db */
+ { 0x00, 0x00, 0x1f, 0x1b, 0x15, 0x11, 0x1f }, /* dc */
+ { 0x0e, 0x0e, 0x04, 0x1f, 0x0e, 0x0e, 0x0a }, /* dd */
+ { 0x00, 0x00, 0x00, 0x00, 0x0a, 0x04, 0x0a }, /* de */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f }, /* df */
+ { 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f }, /* e0 */
+ { 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x1f }, /* e1 */
+ { 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f }, /* e2 */
+ { 0x00, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f }, /* e3 */
+ { 0x00, 0x00, 0x01, 0x02, 0x04, 0x04, 0x04 }, /* e4 */
+ { 0x04, 0x09, 0x0a, 0x0a, 0x0a, 0x09, 0x04 }, /* e5 */
+ { 0x00, 0x1f, 0x11, 0x11, 0x1f, 0x04, 0x1f }, /* e6 */
+ { 0x00, 0x07, 0x03, 0x05, 0x08, 0x10, 0x00 }, /* e7 */
+ { 0x00, 0x10, 0x08, 0x05, 0x03, 0x07, 0x00 }, /* e8 */
+ { 0x09, 0x06, 0x0e, 0x01, 0x0f, 0x11, 0x0f }, /* e9 */
+ { 0x1e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ea */
+ { 0x00, 0x00, 0x10, 0x08, 0x04, 0x04, 0x04 }, /* eb */
+ { 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f }, /* ec */
+ { 0x1f, 0x18, 0x14, 0x12, 0x15, 0x18, 0x1f }, /* ed */
+ { 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, /* ee */
+ { 0x1f, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10 }, /* ef */
+ { 0x00, 0x03, 0x07, 0x0c, 0x18, 0x1c, 0x1c }, /* f0 */
+ { 0x1c, 0x10, 0x1c, 0x07, 0x1c, 0x04, 0x07 }, /* f1 */
+ { 0x00, 0x1e, 0x03, 0x09, 0x19, 0x09, 0x1d }, /* f2 */
+ { 0x1e, 0x01, 0x19, 0x05, 0x09, 0x1d, 0x01 }, /* f3 */
+ { 0x04, 0x04, 0x04, 0x02, 0x01, 0x00, 0x00 }, /* f4 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0f }, /* f5 */
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1e }, /* f6 */
+ { 0x04, 0x04, 0x04, 0x08, 0x10, 0x00, 0x00 }, /* f7 */
+ { 0x07, 0x03, 0x05, 0x08, 0x10, 0x10, 0x0f }, /* f8 */
+ { 0x04, 0x0e, 0x1f, 0x11, 0x11, 0x15, 0x1f }, /* f9 */
+ { 0x1f, 0x03, 0x1a, 0x02, 0x1a, 0x02, 0x1e }, /* fa */
+ { 0x00, 0x0e, 0x1f, 0x11, 0x1f, 0x0e, 0x00 }, /* fb */
+ { 0x03, 0x05, 0x09, 0x09, 0x0b, 0x1b, 0x18 }, /* fc */
+ { 0x1f, 0x03, 0x05, 0x09, 0x15, 0x03, 0x1f }, /* fd */
+ { 0x10, 0x10, 0x10, 0x10, 0x10, 0x1c, 0x1c }, /* fe */
+ { 0x1c, 0x1c, 0x10, 0x10, 0x10, 0x10, 0x10 }, /* ff */
+};
+
+static unsigned char (*font_player)[256][7];
+
+static unsigned bitmap[BITMAP_WIDTH][CHAR_HEIGHT];
+static bool show_subst, show_hardware;
+static bool newlcd;
+
+bool is_new_player(void)
+{
+ return newlcd;
+}
+
+static void draw_pattern(int fg, int bg, int x, const unsigned char *pattern)
+{
+ int x2, y2;
+
+ for (y2 = 0; y2 < 7; y2++)
+ {
+ unsigned data = pattern[y2];
+
+ for (x2 = 0; x2 < 5; x2++)
+ bitmap[x+x2][y2] = (data & (0x10 >> x2)) ? fg : bg;
+ }
+}
+
+static void draw_hexdigit(int x, int digit)
+{
+ int x2, y2;
+
+ draw_pattern(CHAR_FG_STD, CHAR_BG_STD, x + 1,
+ font_player_newlcd[digit+(digit<10?'0':'A'-10)]);
+
+ for (y2 = 0; y2 < CHAR_HEIGHT; y2++)
+ for (x2 = 0; x2 < CHAR_WIDTH; x2++)
+ bitmap[x+x2][y2] ^= 0xffffff;
+}
+
+static void flush_bitmap(FILE *fp)
+{
+ int x, y;
+
+ for (y = 0; y < CHAR_HEIGHT; y++)
+ {
+ int i, z;
+
+ for (i = 0; i < SIZE; i++)
+ {
+ for (x = 0; x < BITMAP_WIDTH; x++)
+ {
+ unsigned int col = bitmap[x][y];
+
+ for (z = 0; z < SIZE; z++)
+ {
+ fprintf(fp, "%d %d %d ", (col >> 16) & 255,
+ (col >> 8) & 255, (col) & 255);
+ }
+ }
+ fprintf(fp, "\n");
+ }
+ }
+}
+
+
+int main(int argc, char **argv)
+{
+ int x, y;
+ int i, lines, block, oldblock;
+ int loop;
+ char *filename;
+ FILE *fp;
+
+ printf("This tool will generate gif-pictures that reflect the current "
+ "unicode charset of the Player.\n");
+
+ for (loop = 0; loop < 6; loop++)
+ {
+ switch (loop)
+ {
+ case 0:
+ font_player = &font_player_oldlcd;
+ newlcd = false;
+ lcd_charset_init();
+ filename = "lcd_old.gif";
+ show_subst = false;
+ show_hardware = false;
+ break;
+ case 1:
+ font_player = &font_player_newlcd;
+ newlcd = true;
+ lcd_charset_init();
+ filename = "lcd_new.gif";
+ show_subst = false;
+ show_hardware = false;
+ break;
+ case 2:
+ font_player = &font_player_oldlcd;
+ newlcd = false;
+ lcd_charset_init();
+ filename = "lcd_old_subst.gif";
+ show_subst = true;
+ show_hardware = false;
+ break;
+ case 3:
+ font_player = &font_player_newlcd;
+ newlcd = true;
+ lcd_charset_init();
+ filename = "lcd_new_subst.gif";
+ show_subst = true;
+ show_hardware = false;
+ break;
+ case 4:
+ font_player = &font_player_oldlcd;
+ xchar_info = NULL;
+ xchar_info_size = 256;
+ filename = "lcd_old_hw.gif";
+ show_subst = true;
+ show_hardware = true;
+ break;
+ case 5:
+ font_player = &font_player_newlcd;
+ xchar_info = NULL;
+ xchar_info_size = 256;
+ filename = "lcd_new_hw.gif";
+ show_subst = true;
+ show_hardware = true;
+ break;
+ default:
+ printf("Not in loop!\n");
+ exit(0);
+ }
+ fp = fopen("tmp.pnm", "wb");
+ if (!fp)
+ {
+ printf("Error opening %s!\n", filename);
+ exit(0);
+ }
+ if (show_hardware)
+ {
+ /* hardware mapping is always 16 lines */
+ lines = 16;
+ }
+ else
+ {
+ /* count lines */
+ for (lines = 0, oldblock = -1, i = 0; i < xchar_info_size; i++)
+ {
+ block = xchar_info[i].ucs >> 4;
+ if (block != oldblock)
+ {
+ lines++;
+ oldblock = block;
+ }
+ }
+ }
+ fprintf(fp, "P3\n#PNM showing a picture of the Player unicode charset\n");
+ fprintf(fp, "%d %d\n255\n", BITMAP_WIDTH*SIZE, CHAR_HEIGHT*SIZE*(lines+1));
+
+ memset(bitmap, 255, sizeof(bitmap));
+ for (x = 0; x < 16; x++)
+ {
+ draw_hexdigit(3*CHAR_WIDTH + x * CHAR_WIDTH, x);
+ }
+
+ for (oldblock = -1, i = 0; i < xchar_info_size; i++)
+ {
+ block = show_hardware ? (i >> 4) : (xchar_info[i].ucs >> 4);
+ if (block != oldblock)
+ {
+ flush_bitmap(fp);
+ memset(bitmap, 255, sizeof(bitmap));
+ draw_hexdigit(0, (block >> 8) & 0xf);
+ draw_hexdigit(CHAR_WIDTH, (block >> 4) & 0xf);
+ draw_hexdigit(2*CHAR_WIDTH, block & 0xf);
+ oldblock = block;
+ }
+ if (show_hardware)
+ {
+ draw_pattern(CHAR_FG_STD, CHAR_BG_STD,
+ 3*CHAR_WIDTH+1 + (i & 0xf) * CHAR_WIDTH,
+ (*font_player)[i]);
+ }
+ else
+ {
+ if (xchar_info[i].priority == 0)
+ {
+ draw_pattern(CHAR_FG_STD, CHAR_BG_STD,
+ 3*CHAR_WIDTH+1
+ + (xchar_info[i].ucs & 0xf) * CHAR_WIDTH,
+ (*font_player)[xchar_info[i].hw_char]);
+ }
+ else
+ {
+ if (show_subst)
+ {
+ draw_pattern(CHAR_FG_ALT, CHAR_BG_STD,
+ 3*CHAR_WIDTH+1
+ + (xchar_info[i].ucs & 0xf) * CHAR_WIDTH,
+ (*font_player)[xchar_info[i].hw_char]);
+ }
+ else
+ {
+ if ((xchar_info[i].glyph & 0x8000) == 0)
+ draw_pattern(CHAR_FG_ALT, CHAR_BG_STD,
+ 3*CHAR_WIDTH+1
+ + (xchar_info[i].ucs & 0xf) * CHAR_WIDTH,
+ xfont_fixed[xchar_info[i].glyph]);
+ else
+ draw_pattern(CHAR_FG_STD, CHAR_BG_ALT,
+ 3*CHAR_WIDTH+1
+ + (xchar_info[i].ucs & 0xf) * CHAR_WIDTH,
+ font_player_newlcd[' ']);
+ }
+ }
+ }
+ }
+ flush_bitmap(fp);
+ fclose(fp);
+ {
+ char buffer[200];
+
+ sprintf(buffer, "convert tmp.pnm %s", filename);
+ system(buffer);
+ system("rm tmp.pnm");
+ }
+ }
+}