OpenCores
URL https://opencores.org/ocsvn/or1k_old/or1k_old/trunk

Subversion Repositories or1k_old

[/] [or1k_old/] [trunk/] [mw/] [src/] [fonts/] [korean/] [jo16x16.c] - Rev 1782

Compare with Previous | Blame | View Log

/*
 *	Copyright (C) 2001 O Young Jong
 *
 *	Copying or modifying this code for any purpose is permitted,
 *	provided that this copyright notice is preserved in its entirety
 *	in all copies or modifications.
 *
 *	No warranties is provided, as to this code.
 */
 
#define   FONT_SIZE 32
#define   NTYPES1   8
#define   NTYPES2   4
#define   NTYPES3   4
 
static char HanFont1[NTYPES1][19][FONT_SIZE] = {
          0,  0,  0,  0,  0,  0,  0,  0, 63,128, 17,128,  3,  0,  6,  0,
         12,  0, 24,  0, 48,  0, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 63,128, 13,128, 13,128, 27,  0,
         27,  0, 54,  0, 76,  0, 16,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 96,  0, 48,  0, 48,  0, 48,  0,
         48,  0, 48,128, 63,  0, 28,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  2,  0,127,  0, 48,  0, 48,  0, 48,  0,
         48,  0, 48,128, 63,  0, 28,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,127,128, 54,  0, 54,  0, 54,  0,
         54,  0, 54, 64, 63,128, 27,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,127,  0, 35,  0,  2,  0,126,  0,
         48,  0, 48,128, 63,  0, 28,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,127,  0, 51,  0, 51,  0, 51,  0,
         51,  0, 50,  0, 63,  0, 32,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  6,  0, 99,  0, 51,  0, 51,  0, 63,  0,
         51,  0, 51,  0, 63,  0, 34,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,219,  0,109,128,109,128,127,128,
        109,128,109,128,127,128, 73,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  4,  0,  6,  0,  6,  0,  6,  0,  6,  0,
         15,  0, 25,128, 49,128, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 18,  0, 27,  0, 27,  0, 27,  0,
         63,  0,109,128,141,128, 16,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 28,  0, 62,  0, 99,  0, 99,  0,
         99,  0, 62,  0, 28,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 63,128, 17,128,  3,  0,  6,  0,
         15,  0, 25,128, 49,128, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,127,128, 45,128, 13,128, 27,  0,
         63,  0,109,128,217,128, 16,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 12,  0,  6,  0,  0,  0, 63,  0, 19,  0,  6,  0,
         12,  0, 31,  0, 51,  0, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 63,128,  3,  0,127,  0, 38,  0,
         12,  0, 24,  0, 48,  0, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  2,  0,127,  0, 48,  0, 50,  0, 63,  0,
         48,  0, 48,128, 63,  0, 28,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  2,  0,127,  0,  4,  0, 38,  0, 54,  0,
          4, 64,  9,128,127,  0, 32,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 24,  0, 12,  0,  5,  0,127,128, 44,  0, 30,  0,
         51,  0, 51,  0, 30,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 31,240, 12, 48,  0, 48,  0, 48,  0, 48,
          0, 32,  0, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 62,248,  6, 24,  6, 24,  6, 24,  4, 16,
          8, 32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 24,  0, 12,  0, 12,  0, 12, 16,  7,248,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0, 32, 63,240, 24,  0, 24,  0, 24, 32, 15,240,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 63,248, 24,192, 24,192, 25,208, 14,120,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 15,240,  0, 48, 31,224, 12,  0, 12, 32,
          7,240,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 31,240, 12,112, 12, 96, 12, 64, 15,224,
          8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0, 96, 24, 48, 12, 48, 15,240, 12, 48, 15,240,
          8, 32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 51, 48, 25,152, 31,248, 25,152, 31,248,
         17, 16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  1,  0,  1,128,  1,128,  3,  0,  7,240, 12, 56,
         48,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  2, 64,  3, 96,  3, 96,  6,192, 15,240, 27, 56,
         36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  7,192, 12, 96, 12, 96, 12, 96,  7,192,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 15,224,  1,192,  3,128,  6,240, 12, 56,
         16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 31,240, 11, 96,  6,192, 15,224, 27, 56,
         36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,  0,  1,128, 31,240,  1,224,  3,128,  6,240,
         24, 56, 32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 31,240,  8, 48,  0,112, 31,176, 12, 48,
          0, 32,  0, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0, 32, 31,240, 12,  0, 15,240, 12,  0, 12, 32,
          7,240,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0, 32, 31,248, 12, 96,  6, 96,  6,192, 31,248,
          8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,  0,  1,144, 31,248, 11,192,  6, 96,  6, 96,
          3,192,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,240,  8, 48,  0, 48,  0, 32,  0, 64,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,248,  3, 24,  3, 24,  2, 16,  4, 32,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 24,  0, 12,  0, 12, 32,  7,240,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 32, 31,240, 12,  0, 12,  0,  7,240,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 63,240, 25,128, 25,128, 14,240,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  0, 48, 31,224, 12,  0,  7,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,240, 12,112, 12, 96, 15,224,  8,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 24,192, 12, 96, 15,224, 12, 96, 15,224,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 27, 96, 13,176, 15,240, 13,176, 15,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  1,  0,  1,128,  1,128,  3,240,  6, 56, 24,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  4, 64,  6, 96,  6, 96, 15,248, 25,152, 34,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,192,  6, 96,  6, 96,  6, 96,  3,192,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,224,  3,192,  7,112, 12, 56, 48,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,248,  6, 96, 15,248, 25,156, 34,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  3,  0,  1,128, 31,240,  1,192, 15,120, 56,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  4, 48,  0,240, 15, 48,  4, 32,  0, 64,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,240, 12,  0, 15,240, 12,  0,  7,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 16, 31,248,  6, 96,  6, 96, 31,248,  8,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  3,  0,  1,160, 15,240,  3,192,  6, 96,  3,192,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 63,128, 17,128,  1,128,  1,128,
          1,  0,  2,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,127,128, 25,128, 25,128, 17,  0,
         34,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 96,  0, 48,  0, 49,  0, 31,128,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  1,  0,127,128, 48,  0, 49,  0, 31,128,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,255,128,102,  0,110,  0,119,128,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 63,128,  1,128,127,  0, 48,  0,
         31,128,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,127,128, 49,128, 49,  0, 63,  0,
         32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 99,  0, 49,128, 63,128, 49,128, 63,  0,
         32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,219,  0,109,128,127,128,109,128,127,  0,
         64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  4,  0,  6,  0,  6,  0, 12,  0, 31,128, 49,128,
         64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 18,  0, 27,  0, 27,  0, 63,128,109,128,
        144,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 31,  0, 49,128, 49,128, 31,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 63,  0, 12,  0, 31,128, 49,128,
         64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 63,128, 27,  0, 63,128, 77,128,
         16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 12,  0,  4,  0, 63,  0, 14,  0, 27,128,
         49,128, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0, 63,128,  1,128, 63,128,  1,128,
          1,  0,  2,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  1,  0,127,128, 48,  0, 63,128, 48,  0,
         31,128,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  2,  0,127,  0, 36,  0, 54,  0, 20,  0,
        127,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 28,  0, 12,  0,127,128, 30,  0, 51,  0,
         30,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 63,128,  1,128,  1,128,  1,  0,  2,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,127,128, 25,128, 25,128, 17,  0, 34,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 48,  0, 24,  0, 25,  0, 15,128,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  1,  0, 63,128, 24,  0, 25,  0, 15,128,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,127,128, 54,  0, 54,  0, 27,128,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,128,  1,128, 63,  0, 24,  0, 15,128,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 63,128, 25,128, 25,  0, 31,  0, 16,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 51,  0, 25,128, 31,128, 25,128, 31,  0, 16,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,219,  0,109,128,127,128,109,128,127,  0, 72,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 12,  0, 12,  0, 12,  0, 31,128, 49,128, 64,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 18,  0, 27,  0, 27,  0, 31,128, 45,128, 72,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 30,  0, 51,  0, 51,  0, 30,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,  0,  3,  0,  6,  0, 15,128, 25,128, 32,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 63,128, 13,128, 27,  0, 63,192,108,192,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0, 12,  0,  6,  0, 63,128,  4,  0, 15,128, 25,128, 96,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 31,128,  1,128, 31,128,  1,128,  1,  0,
          2,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 63,128, 24,  0, 31,128, 24,  0, 15,128,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 63,128, 18,  0, 11,  0, 10,  0, 63,128, 16,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 12,  0,  6,  0, 63,128, 14,  0, 27,  0, 14,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 63,  0,  3,  0,  6,  0, 12,  0, 24,  0,
         48,  0, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 63,128, 13,128, 27,  0, 54,  0,108,  0,
          8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 96,  0, 48,  0, 48,  0, 49,  0, 62,  0,
         24,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  2,  0,127,  0, 48,  0, 48,  0, 48,  0, 51,128,
         30,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,127,128, 54,  0, 54,  0, 63,128, 27,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 63,  0,  3,  0,126,  0, 48,  0, 49,128,
         30,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,127,  0, 51,  0, 51,  0, 50,  0, 62,  0,
         32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,102,  0, 51,  0, 63,  0, 51,  0, 51,  0, 62,  0,
         32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,219,  0,109,128,127,128,109,128,127,  0,
         68,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  4,  0,  6,  0,  6,  0, 12,  0, 30,  0, 51,  0,
         65,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  2,  0, 19,  0, 27,  0, 27,  0, 63,  0, 77,128,
         16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 30,  0, 51,  0, 51,  0, 51,  0, 30,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 63,  0,  6,  0, 12,  0, 30,  0, 51,  0,
         64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 63,128,  9,128, 27,  0, 63,  0, 77,128,
         16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 24,  0, 12,  0, 62,  0, 12,  0, 30,  0, 51,  0,
         64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0, 63,  0,  3,  0,126,  0, 12,  0, 24,  0,
         48,  0, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,127,  0, 48,  0, 62,  0, 48,  0, 49,128,
         30,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  2,  0,127,  0, 36,  0, 54,  0, 21,128,126,  0,
         32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 24,  0, 12,  0,127,  0, 28,  0, 54,  0, 54,  0,
         28,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  4, 48,  0, 48,  0, 32,  0, 64,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 62,248,  6, 24,  4, 16,  8, 32,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 12,  0,  6,  0,  6, 32,  3,240,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  6,  0,  6,  0,  3,240,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,240, 13,128, 13,160,  6,240,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,240,  0, 48, 15,224,  6,  0,  3,224,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  6, 48,  6, 32,  7,224,  4,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 12, 96,  6, 48,  7,240,  6, 48,  7,224,  4,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 27, 96, 13,176, 15,240, 13,176, 15,224,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  1,  0,  1,128,  3,128,  7,240, 12, 56, 48,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  4, 64,  6, 96,  6, 96, 12,192, 31,248, 51, 24,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,192,  6, 96,  6, 96,  3,192,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,224,  1,192,  3,240, 14, 56, 48,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,240,  6, 96, 12,192, 31,248, 35, 24,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  3,  0,  1,128, 31,240,  3,192, 14,120, 56, 24,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  0, 48, 31,240,  0, 48,  0, 32,  0, 64,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,224,  6,  0,  7,224,  6,  0,  3,224,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  6, 96,  2,192, 15,240,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  3,  0,  1,128, 15,240,  3,192,  6, 96,  3,192,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 63,  0, 19,  0,  3,  0,  2,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,127,128, 25,128, 25,128, 17,  0, 34,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 48,  0, 24,  0, 25,  0, 15,128,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  1,  0, 63,128, 24,  0, 15,128,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,127,128, 54,  0, 54,  0, 27,128,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,  0,  3,  0, 62,  0, 24,128, 15,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 63,  0, 27,  0, 26,  0, 30,  0, 16,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 54,  0, 27,  0, 31,  0, 27,  0, 30,  0, 16,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,219,  0,109,128,127,128,109,128,127,  0, 64,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  4,  0,  6,  0,  6,  0, 15,128, 25,128, 96,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  2,  0, 19,  0, 27,  0, 31,128, 45,128, 80,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 14,  0, 27,  0, 27,  0, 14,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,  0,  6,  0, 15,128, 25,128, 96,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 63,128, 27,  0, 31,128, 45,128, 80,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0, 12,  0,  6,  0, 31,128,  7,  0, 13,128, 48,128,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 63,  0,  3,  0, 63,  0,  3,  0,  2,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 63,  0, 24,  0, 31,  0, 24,  0, 15,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 63,128, 27,  0, 10,128, 63,  0, 24,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0, 12,  0,  6,  0, 63,128, 14,  0, 27,  0, 14,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0
};
 
static char HanFont2[NTYPES2][21][FONT_SIZE] = {
          0,  0,  0, 48,  0, 24,  0, 24,  0, 24,  0, 24,  0, 26,  0, 31,
          0, 24,  0, 24,  0, 24,  0, 24,  0, 24,  0, 24,  0, 16,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 54,  0, 62,  0, 54,
          0, 54,  0, 54,  0, 54,  0, 54,  0, 54,  0, 38,  0,  4,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 24,  0, 26,  0, 31,  0, 24,
          0, 26,  0, 31,  0, 24,  0, 24,  0, 24,  0, 24,  0, 16,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 62,  0, 54,  0, 54,
          0, 62,  0, 54,  0, 54,  0, 54,  0, 54,  0, 38,  0,  4,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0,252,
          0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 54,  0, 54,  1,246,
          0, 54,  0, 54,  0, 54,  0, 54,  0, 54,  0, 38,  0,  4,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0,252,  0, 12,  0, 12,
          0,252,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  1,246,  0, 54,  0, 54,
          1,246,  0, 54,  0, 54,  0, 54,  0, 54,  0, 38,  0,  4,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  2,  0,
          3,  0,  3,  0,  3,  0,  3, 12,127,254, 32,  0,  0,  0,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 24,  0, 24,  0, 24,  0, 26,
         24, 31, 24, 56, 24,216,127, 24, 48, 24,  0, 24,  0, 16,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 54,  0, 54, 16, 54,
         24, 62, 24,118, 25,182,126, 54, 48, 54,  0, 38,  0,  4,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,
         24, 12, 24, 44, 24,204,127, 12, 48, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          9,  0, 13,128, 13,128, 13,140,127,254, 32,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 12,
        127,254, 33,128,  1,128,  1,128,  1,128,  1,128,  1,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 28,
          0,108,127,140, 54,252,  6, 76,  6, 12,  4, 12,  0,  8,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 54,  0, 54,  0,118,
          1,182,126, 54, 45,246, 12,182, 12, 54,  8, 38,  0,  4,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 28,
          0,108,127,140, 54, 12,  6, 12,  6, 12,  4, 12,  0,  8,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 12,
        127,254, 38, 96,  6, 96,  6, 96,  6, 96,  6, 96,  4, 64,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0, 12,127,254, 32,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,
          0, 12,  0, 44,  0,204,127, 12, 48, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,
          0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 24,  0, 24,  0, 26,  0, 31,
          0, 24,  0, 24,  0, 24,  0, 24,  0, 24,  0, 24,  0, 16,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 54,  0, 62,  0, 54,
          0, 54,  0, 54,  0, 54,  0, 54,  0, 54,  0, 38,  0,  4,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 24,  0, 26,  0, 31,  0, 24,
          0, 26,  0, 31,  0, 24,  0, 24,  0, 24,  0, 24,  0, 16,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 62,  0, 54,  0, 54,
          0, 62,  0, 54,  0, 54,  0, 54,  0, 54,  0, 38,  0,  4,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0,252,
          0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 54,  0, 54,  1,246,
          0, 54,  0, 54,  0, 54,  0, 54,  0, 54,  0, 38,  0,  4,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0,252,  0, 12,  0, 12,
          0,252,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  1,246,  0, 54,  0, 54,
          1,246,  0, 54,  0, 54,  0, 54,  0, 54,  0, 38,  0,  4,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          1,  0,  1,128,  1,128,  1,140,127,254, 32,  0,  0,  0,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 24,  0, 24,  0, 24,  0, 26,
         12, 31, 12, 56, 12,216,127, 24, 48, 24,  0, 24,  0, 16,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 54,  0, 54,  0, 54,
         12, 62, 12,118, 13,182,126, 54, 48, 54,  0, 38,  0,  4,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,
         12, 12, 12, 44, 12,204,127, 12, 48, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          4,128,  6,192,  6,192,  6,204,127,254, 32,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 12,
        127,254, 33,128,  1,128,  1,128,  1,128,  1,128,  1,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 28,
          0,108,127,140, 54,252,  6, 76,  6, 12,  4, 12,  0,  8,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 54,  0, 54,  0,118,
          1,182,126, 54, 45,246, 12,182, 12, 54,  8, 38,  0,  4,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 28,
          0,108,127,140, 54, 12,  6, 12,  6, 12,  4, 12,  0,  8,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 12,
        127,254, 38, 96,  6, 96,  6, 96,  6, 96,  6, 96,  4, 64,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0, 12,127,254, 32,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,
          0, 12,  0, 44,  0,204,127, 12, 48, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,
          0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 24,  0, 31,  0, 24,  0, 24,
          0, 16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 62,  0, 54,  0, 54,  0, 54,
          0, 36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 31,  0, 24,  0, 31,  0, 24,
          0, 16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 62,  0, 54,  0, 62,  0, 54,
          0, 36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0,252,  0, 12,  0, 12,
          0,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  1,246,  0, 54,  0, 54,
          0, 36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0,252,  0, 12,  0,252,  0, 12,
          0,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0,246,  0, 54,  0,246,  0, 54,
          0, 36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  3,  0,  3, 12,127,254,
         32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 26, 16, 31, 24, 56, 24,216,
        127, 24, 48, 16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54, 16, 62, 24,118, 25,182,
        126, 54, 48, 38,  0,  4,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12, 24, 12, 24,108, 25,140,
        126, 12, 48, 12,  0,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 13,128, 13,140,127,254,
         32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 12,127,254,
         33,128,  1,128,  1,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 44,  0,204,127, 12, 44,124,
         12, 12,  8,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0,182,127, 54, 54,246,
          6, 54,  4, 36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 44,  0,204,127, 12, 54, 12,
          6, 12,  4,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 12,127,254,
         35, 96,  3, 96,  2, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 12,127,254,
         32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0,108,  1,140,
        126, 12, 48,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,
          0,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 24,  0, 31,  0, 24,  0, 24,
          0, 16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 62,  0, 54,  0, 54,
          0, 36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 31,  0, 24,  0, 31,  0, 24,
          0, 16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 62,  0, 54,  0, 62,  0, 54,
          0, 36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0,252,  0, 12,  0, 12,
          0,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  1,246,  0, 54,  0, 54,
          0, 36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0,252,  0, 12,  0,252,  0, 12,
          0,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0,246,  0, 54,  0,246,  0, 54,
          0, 36,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  1,128,  1,140,
        127,254, 32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 48,  0, 24,  0, 24,  0, 26, 12, 31, 12, 56, 12,216,
        127, 24, 48, 16,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54, 12, 62, 12,118, 13,182,
        126, 38, 48,  4,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12, 12, 12, 12,108, 13,140,
        126, 12, 48,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  6,192,  6,204,
        127,254, 32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 12,127,254,
         33,128,  1,128,  1,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 44,  0,204,127,124,
         54, 12,  6,  8,  4,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 12,  0,102,  0, 54,  0, 54,  0, 54,  0,182,127, 54,
         54,246,  6, 36,  4,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 44,  0,204,127, 12,
         54, 12,  6,  8,  4,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 12,127,254,
         35, 96,  3, 96,  2, 64,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 12,
        127,254, 32,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0,108,  1,140,
        126, 12, 48,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,  0, 12,
          0,  8,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0
};
 
static char HanFont3[NTYPES3][27][FONT_SIZE] = {
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,248,  4, 24,  0, 24,  0, 24,  0, 16,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,248,  3, 24,  3, 24,  3, 24,  2, 16,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31, 48,  3, 48,  3, 56,  3,108,  2,204,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  6,  0,  3,  0,  3,  0,  3,  8,  1,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 24,124, 12, 24, 12, 24, 13,188,  7,102,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 48, 24, 24, 12,124, 12, 56, 13,108,  7, 56,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 16, 15,248,  6,  0,  6,  0,  6, 16,  3,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,248,  0, 24,  7,240,  6,  0,  3,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,252,  1,140, 15, 12, 12,204,  7,136,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,252,  1,236, 15,108, 12,108,  7,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,204,  1,236, 15,124, 12,108,  7,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,152,  1,152, 15, 24, 12,188,  7,102,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,252,  1,224, 15,120, 12, 96,  7,188,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,252,  1,168, 15, 40, 12,168,  7,124,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 48, 15,152,  1,252, 15, 56, 12,236,  7, 56,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,248,  3, 24,  3, 24,  3, 16,  3,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 48,  6, 24,  3, 24,  3,248,  3, 24,  3,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  9,152, 13,152, 15,152, 13,190, 15,230,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,128,  0,192,  0,192,  1,224,  3, 56,  6, 24,  8,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  2, 32,  3, 48,  3, 48,  7,240, 12,220, 25,140,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  1,240,  3, 24,  3, 24,  3, 24,  1,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,240,  0,192,  1,224,  3, 56,  6, 24,  8,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  1,128,  0,192,  7,240,  1,192,  3,120,  6, 24,  8,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,248,  0, 24,  7,248,  2, 24,  0, 16,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,248,  3,  0,  3,248,  3,  0,  1,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,248,  2, 32,  3, 48,  3, 96,  7,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  1,128,  0,192,  7,248,  1,224,  3, 48,  1,224,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,252,  2, 12,  0, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,252,  1,140,  1,140,  1,140,  1,  8,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,152,  1,152,  1,156,  1,182,  1,102,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,  0,  1,128,  1,128,  1,132,  0,254,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 12, 62,  6, 12,  6, 12,  6,222,  3,179,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24, 12, 12,  6, 62,  6, 28,  6,182,  3,156,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  8,  7,252,  3,  0,  3,  0,  3,  8,  1,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,248,  0, 24,  7,248,  6,  0,  3,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,254,  0,198,  7,134,  6,102,  3,196,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,254,  0,246,  7,182,  6, 54,  3,254,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,204,  1,236, 15,124, 12,108,  7,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,152,  1,152, 15, 24, 12,188,  7,102,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,252,  1,224, 15,120, 12, 96,  7,188,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,252,  1,168, 15, 40, 12,168,  7,124,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  7,204,  0,254,  7,156,  6,118,  3,156,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,252,  1,140,  1,140,  1,136,  1,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 48,  6, 24,  3, 24,  3,248,  3, 24,  3,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  9,152, 13,152, 15,152, 13,190, 15,230,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 64,  0, 96,  0, 96,  0,240,  1,156,  3, 12,  4,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  1, 16,  1,152,  1,152,  3,248,  6,110, 12,198,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,248,  1,140,  1,140,  1,140,  0,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,248,  0, 96,  0,240,  1,156,  3, 12,  4,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,192,  0, 96,  3,248,  0,224,  1,188,  3, 12,  4,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,252,  0, 12,  3,252,  1, 12,  0,  8,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,252,  1,128,  1,252,  1,128,  0,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,252,  1, 16,  1,152,  1,176,  3,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,192,  0, 96,  3,252,  0,240,  1,152,  0,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,252,  2, 12,  0, 12,  0, 12,  0,  8,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,254,  0,198,  0,198,  0,198,  0,132,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,152,  1,152,  1,156,  1,182,  1,102,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,  0,  1,128,  1,128,  1,132,  0,254,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 12, 62,  6, 12,  6, 12,  6,222,  3,179,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24, 12, 12,  6, 62,  6, 28,  6,182,  3,156,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  4,  3,254,  1,128,  1,128,  1,132,  0,254,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,252,  0, 12,  3,252,  3,  0,  1,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,254,  0,198,  7,134,  6,102,  3,196,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,254,  0,246,  7,182,  6, 54,  3,254,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,230,  0,246,  7,190,  6, 54,  3,254,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,204,  0,204,  7,140,  6, 94,  3,179,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,254,  0,240,  7,188,  6, 48,  3,222,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,254,  0,212,  7,148,  6, 84,  3,190,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  7,204,  0,254,  7,156,  6,118,  3,156,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,252,  1,140,  1,140,  1,136,  1,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 24,  3, 12,  1,140,  1,252,  1,140,  1,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  4,204,  6,204,  7,204,  6,223,  7,243,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 64,  0, 96,  0, 96,  0,240,  1,156,  3, 12,  4,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  1, 16,  1,152,  1,152,  3,248,  6,110, 12,198,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0,248,  1,140,  1,140,  1,140,  0,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,248,  0, 96,  0,240,  1,156,  3, 12,  4,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,192,  0, 96,  3,248,  0,224,  1,188,  3, 12,  4,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,252,  0, 12,  3,252,  1, 12,  0,  8,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,252,  1,128,  1,252,  1,128,  0,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,252,  1, 16,  1,152,  1,176,  3,252,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,192,  0, 96,  3,252,  0,240,  1,152,  0,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  4, 48,  0, 48,  0, 48,  0, 32,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  3, 48,  3, 48,  3, 48,  2, 32,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31, 48,  3, 48,  3, 56,  3,108,  2,204,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 12,  0,  6,  0,  6,  0,  6, 16,  3,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 24,248, 12, 48, 12, 48, 13,120,  6,204,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 96, 24, 48, 12,248, 12,112, 12,216,  7,112,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  0, 32, 15,240,  6,  0,  6, 32,  3,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,240,  0, 48,  7,224,  6,  0,  3,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,248,  3, 24, 30, 24, 25,152, 15, 16,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,248,  3,216, 30,216, 24,216, 15,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,152,  3,216, 30,248, 24,216, 15,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31, 48,  3, 48, 30, 48, 25,120, 14,204,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,248,  3,192, 30,240, 24,192, 15,120,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 31,248,  3, 80, 30, 80, 25, 80, 14,248,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 96, 31, 48,  3,248, 30,112, 25,216, 14,112,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  6, 48,  6, 48,  6, 32,  7,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0, 96, 12, 48,  6, 48,  7,240,  6, 48,  7,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 18, 48, 27, 48, 31, 48, 27,124, 30,204,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  1,128,  1,128,  3,192,  6,112, 28, 48,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  4, 64,  6, 96,  6, 96, 15,224, 25,184, 51, 24,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  3,192,  6, 96,  6, 96,  6, 96,  3,192,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0,  7,240,  0,192,  1,224,  3, 56,  6, 24,  8,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  1,128,  0,192,  7,240,  1,192,  3,120,  6, 24,  8,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  0,112, 15,176,  6, 48,  0, 32,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  6,  0,  7,240,  6,  0,  3,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  0,  0, 15,240,  4, 64,  6, 96,  6,192, 15,240,  0,  0,
          0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
          0,  0,  3,  0,  1,128, 15,240,  3,192,  6, 96,  3,192,  0,  0
};
 
 
static	void memor(char *s1, char *s2, int len)
{
        do {
		*s1++ |= *s2++;
	} while (--len);
}
 
 
int	get_han_image( int johab_code, char *bitmap)
{
    static char idxtbl1[] = {
             0,  0,  1,  2,  3,  4,  5,  6,
             7,  8,  9, 10, 11, 12, 13, 14,
            15, 16, 17, 18, 19,  0,  0,  0,
             0,  0,  0,  0,  0,  0,  0,  0
    };
    static char idxtbl2[] = {
             0,  0,  0,  1,  2,  3,  4,  5,
             0,  0,  6,  7,  8,  9, 10, 11,
             0,  0, 12, 13, 14, 15, 16, 17,
             0,  0, 18, 19, 20, 21,  0,  0
    };
    static char idxtbl3[] = {
             0,  0,  1,  2,  3,  4,  5,  6,
             7,  8,  9, 10, 11, 12, 13, 14,
            15, 16,  0, 17, 18, 19, 20, 21,
            22, 23, 24, 25, 26, 27,  0,  0
    };
 
    static char type1tbl_no[]  = {
            0, 0, 0, 0, 0, 0, 0, 0,
	    0, 1, 3, 3, 3, 1, 2, 4,
	    4, 4, 2, 1, 3, 0,       0, 0
    };
    static char type1tbl_yes[] = {
            5, 5, 5, 5, 5, 5, 5, 5,
	    5, 6, 7, 7, 7, 6, 6, 7,
	    7, 7, 6, 6, 7, 5,       0, 0
    };
    static char type3tbl[] = {
            0, 0, 2, 0, 2, 1, 2, 1,
	    2, 3, 0, 2, 1, 3, 3, 1,
	    2, 1, 3, 3, 1, 1,       0, 0
    };
 
    unsigned short h1, h2, h3, type1, type2, type3;
 
    h1 = (johab_code>>10) & 0x1f;
    h2 = (johab_code>>5)  & 0x1f;
    h3 = (johab_code)     & 0x1f;
 
    h1 = idxtbl1[h1];
    h2 = idxtbl2[h2];
    h3 = idxtbl3[h3];
 
    type1 = h3 ? type1tbl_yes[h2] : type1tbl_no[h2];
    type2 = ((h1 == 0 || h1 == 1 || h1 == 16) ? 0 : 1) + (h3 ? 2 : 0);
    type3 = type3tbl[h2];
 
    if (h1)
            memcpy(bitmap, HanFont1[type1][h1-1], FONT_SIZE);
    else
            memset(bitmap, 0, FONT_SIZE);
    if (h2) memor(bitmap, HanFont2[type2][h2-1], FONT_SIZE);
    if (h3) memor(bitmap, HanFont3[type3][h3-1], FONT_SIZE);
 
    /* For GdBitmap(), byte swapping is need. */
    for( h1=0; h1<16; h1++)
    {
	    h2 = bitmap[h1*2];
	    bitmap[h1*2] = bitmap[h1*2+1];
	    bitmap[h1*2+1] = h2;
    }
    return 16;
}
 
#ifdef	TEST
void	DrawImage( char *bitmap )
{
	int	i,j;
	unsigned char	us;
 
	for ( j=0; j < 16; j++ )
	{
		us = bitmap[j*2];
		for ( i=0x80; i; i=i>>1 )
		{
			if ( us & i )
				putchar('*');
			else
				putchar(' ');
		}
 
		us = bitmap[j*2+1];
		for ( i=0x80; i; i=i>>1 )
		{
			if ( us & i )
				putchar('*');
			else
				putchar(' ');
		}
 
		printf("\n");
	}
 
}
 
 
#define	MSG	"eii i ae VA"
main(int ac, char *av[])
{
	unsigned short ch;
	char	ch_img[HBSIZE];
 
	/* Make sure that ch has right hangul code */
	ch = 0xb877;
	GetHanImage( ch, ch_img );
 
	DrawImage(ch_img);
	return 0;
}
#endif
 

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.