Framebuffer的简单应用

Framebuffer的简单应用

网上可以直接搜到应用Framebuffer画图的示例程序,但是他们大多是一样,估计是早期的一份程序散播的。然而如果需要写入字符则大多没有示例。最近我就研究一下如何直接操作Framebuffer绘制字符串。

简单操作Framebuffer分为几个步骤

1.打开framebuffer设备,一般是/dev/fb0

2.使用ioctl读取fb_var_screeninfo和fb_fix_screeninfon两个结构体信息。

fb_var_screeninfo和fb_fix_screeninfon可以看我摘录的嵌入式开发板Framebuffer的原理

3.使用mmap函数映射内存

4.直接对内存进行操作,内存中每一个字节或每两个字节(具体由具体设备决定)代表一个像素,直接设置这个像素的值,就可以改变这个像素的颜色。

具体的代码可以去网上搜搜,有很多。

 

在Framebuffer上绘制字符串的方法。

实际上跟画图的原理一样,事先设计好一串二进制数,每一位代表一个像素点,然后让想要显示的位设置为1,这样绘制的时候只要将为1的位设置为想要的颜色即可。

复制代码
0xf8,  /* 11111000 */
0x6c,  /* 01101100 */
0x66,  /* 01100110 */
0x66,  /* 01100110 */
0x66,  /* 01100110 */
0x6c,  /* 01101100 */
0xf8,  /* 11111000 */
0x00,  /* 00000000 */
复制代码

可以看到,右边图中的1构成了一个D的形状,这就是字模。不管是显示汉字也好还是显示英文字母也好,都是由字模构成。知道这一层就好说,只要我能生成指定的字模,我就可以绘制出自己想要的中文或者英文。


最近研究tslib,发现其中提供了font_8x8.c和font_8x16,font.h文件,于是我直接抄袭了tslib的绘制字符串的方法,自己做了一些改动

复制代码
void put_char_8x8(int x, int y, int c, int colidx)
{
    int i,j,bits;
    for (i = 0; i < font_vga_8x8.height; i++) {
        bits = font_vga_8x8.data [font_vga_8x8.height * c + i];
        for (j = 0; j < font_vga_8x8.width; j++, bits <<= 1)
        {
            if (bits & 0x80)
                pixel (x + j, y + i, colidx);
        }
    }
}
复制代码

先来看看font_8x8.c文件

View Code
 1 /**********************************************/
   2 /*                                            */
   3 /*       Font file generated by cpi2fnt       */
   4 /*                                            */
   5 /**********************************************/
   6 
   7 #include "font.h"
   8 
   9 #define FONTDATAMAX 2048
  10 
  11 static unsigned char fontdata_8x8[FONTDATAMAX] = {
  12 
  13     /* 0 0x00 '^@' */
  14     0x00, /* 00000000 */
  15     0x00, /* 00000000 */
  16     0x00, /* 00000000 */
  17     0x00, /* 00000000 */
  18     0x00, /* 00000000 */
  19     0x00, /* 00000000 */
  20     0x00, /* 00000000 */
  21     0x00, /* 00000000 */
  22 
  23     /* 1 0x01 '^A' */
  24     0x7e, /* 01111110 */
  25     0x81, /* 10000001 */
  26     0xa5, /* 10100101 */
  27     0x81, /* 10000001 */
  28     0xbd, /* 10111101 */
  29     0x99, /* 10011001 */
  30     0x81, /* 10000001 */
  31     0x7e, /* 01111110 */
  32 
  33     /* 2 0x02 '^B' */
  34     0x7e, /* 01111110 */
  35     0xff, /* 11111111 */
  36     0xdb, /* 11011011 */
  37     0xff, /* 11111111 */
  38     0xc3, /* 11000011 */
  39     0xe7, /* 11100111 */
  40     0xff, /* 11111111 */
  41     0x7e, /* 01111110 */
  42 
  43     /* 3 0x03 '^C' */
  44     0x6c, /* 01101100 */
  45     0xfe, /* 11111110 */
  46     0xfe, /* 11111110 */
  47     0xfe, /* 11111110 */
  48     0x7c, /* 01111100 */
  49     0x38, /* 00111000 */
  50     0x10, /* 00010000 */
  51     0x00, /* 00000000 */
  52 
  53     /* 4 0x04 '^D' */
  54     0x10, /* 00010000 */
  55     0x38, /* 00111000 */
  56     0x7c, /* 01111100 */
  57     0xfe, /* 11111110 */
  58     0x7c, /* 01111100 */
  59     0x38, /* 00111000 */
  60     0x10, /* 00010000 */
  61     0x00, /* 00000000 */
  62 
  63     /* 5 0x05 '^E' */
  64     0x38, /* 00111000 */
  65     0x7c, /* 01111100 */
  66     0x38, /* 00111000 */
  67     0xfe, /* 11111110 */
  68     0xfe, /* 11111110 */
  69     0xd6, /* 11010110 */
  70     0x10, /* 00010000 */
  71     0x38, /* 00111000 */
  72 
  73     /* 6 0x06 '^F' */
  74     0x10, /* 00010000 */
  75     0x38, /* 00111000 */
  76     0x7c, /* 01111100 */
  77     0xfe, /* 11111110 */
  78     0xfe, /* 11111110 */
  79     0x7c, /* 01111100 */
  80     0x10, /* 00010000 */
  81     0x38, /* 00111000 */
  82 
  83     /* 7 0x07 '^G' */
  84     0x00, /* 00000000 */
  85     0x00, /* 00000000 */
  86     0x18, /* 00011000 */
  87     0x3c, /* 00111100 */
  88     0x3c, /* 00111100 */
  89     0x18, /* 00011000 */
  90     0x00, /* 00000000 */
  91     0x00, /* 00000000 */
  92 
  93     /* 8 0x08 '^H' */
  94     0xff, /* 11111111 */
  95     0xff, /* 11111111 */
  96     0xe7, /* 11100111 */
  97     0xc3, /* 11000011 */
  98     0xc3, /* 11000011 */
  99     0xe7, /* 11100111 */
 100     0xff, /* 11111111 */
 101     0xff, /* 11111111 */
 102 
 103     /* 9 0x09 '^I' */
 104     0x00, /* 00000000 */
 105     0x3c, /* 00111100 */
 106     0x66, /* 01100110 */
 107     0x42, /* 01000010 */
 108     0x42, /* 01000010 */
 109     0x66, /* 01100110 */
 110     0x3c, /* 00111100 */
 111     0x00, /* 00000000 */
 112 
 113     /* 10 0x0a '^J' */
 114     0xff, /* 11111111 */
 115     0xc3, /* 11000011 */
 116     0x99, /* 10011001 */
 117     0xbd, /* 10111101 */
 118     0xbd, /* 10111101 */
 119     0x99, /* 10011001 */
 120     0xc3, /* 11000011 */
 121     0xff, /* 11111111 */
 122 
 123     /* 11 0x0b '^K' */
 124     0x0f, /* 00001111 */
 125     0x07, /* 00000111 */
 126     0x0f, /* 00001111 */
 127     0x7d, /* 01111101 */
 128     0xcc, /* 11001100 */
 129     0xcc, /* 11001100 */
 130     0xcc, /* 11001100 */
 131     0x78, /* 01111000 */
 132 
 133     /* 12 0x0c '^L' */
 134     0x3c, /* 00111100 */
 135     0x66, /* 01100110 */
 136     0x66, /* 01100110 */
 137     0x66, /* 01100110 */
 138     0x3c, /* 00111100 */
 139     0x18, /* 00011000 */
 140     0x7e, /* 01111110 */
 141     0x18, /* 00011000 */
 142 
 143     /* 13 0x0d '^M' */
 144     0x3f, /* 00111111 */
 145     0x33, /* 00110011 */
 146     0x3f, /* 00111111 */
 147     0x30, /* 00110000 */
 148     0x30, /* 00110000 */
 149     0x70, /* 01110000 */
 150     0xf0, /* 11110000 */
 151     0xe0, /* 11100000 */
 152 
 153     /* 14 0x0e '^N' */
 154     0x7f, /* 01111111 */
 155     0x63, /* 01100011 */
 156     0x7f, /* 01111111 */
 157     0x63, /* 01100011 */
 158     0x63, /* 01100011 */
 159     0x67, /* 01100111 */
 160     0xe6, /* 11100110 */
 161     0xc0, /* 11000000 */
 162 
 163     /* 15 0x0f '^O' */
 164     0x18, /* 00011000 */
 165     0xdb, /* 11011011 */
 166     0x3c, /* 00111100 */
 167     0xe7, /* 11100111 */
 168     0xe7, /* 11100111 */
 169     0x3c, /* 00111100 */
 170     0xdb, /* 11011011 */
 171     0x18, /* 00011000 */
 172 
 173     /* 16 0x10 '^P' */
 174     0x80, /* 10000000 */
 175     0xe0, /* 11100000 */
 176     0xf8, /* 11111000 */
 177     0xfe, /* 11111110 */
 178     0xf8, /* 11111000 */
 179     0xe0, /* 11100000 */
 180     0x80, /* 10000000 */
 181     0x00, /* 00000000 */
 182 
 183     /* 17 0x11 '^Q' */
 184     0x02, /* 00000010 */
 185     0x0e, /* 00001110 */
 186     0x3e, /* 00111110 */
 187     0xfe, /* 11111110 */
 188     0x3e, /* 00111110 */
 189     0x0e, /* 00001110 */
 190     0x02, /* 00000010 */
 191     0x00, /* 00000000 */
 192 
 193     /* 18 0x12 '^R' */
 194     0x18, /* 00011000 */
 195     0x3c, /* 00111100 */
 196     0x7e, /* 01111110 */
 197     0x18, /* 00011000 */
 198     0x18, /* 00011000 */
 199     0x7e, /* 01111110 */
 200     0x3c, /* 00111100 */
 201     0x18, /* 00011000 */
 202 
 203     /* 19 0x13 '^S' */
 204     0x66, /* 01100110 */
 205     0x66, /* 01100110 */
 206     0x66, /* 01100110 */
 207     0x66, /* 01100110 */
 208     0x66, /* 01100110 */
 209     0x00, /* 00000000 */
 210     0x66, /* 01100110 */
 211     0x00, /* 00000000 */
 212 
 213     /* 20 0x14 '^T' */
 214     0x7f, /* 01111111 */
 215     0xdb, /* 11011011 */
 216     0xdb, /* 11011011 */
 217     0x7b, /* 01111011 */
 218     0x1b, /* 00011011 */
 219     0x1b, /* 00011011 */
 220     0x1b, /* 00011011 */
 221     0x00, /* 00000000 */
 222 
 223     /* 21 0x15 '^U' */
 224     0x3e, /* 00111110 */
 225     0x61, /* 01100001 */
 226     0x3c, /* 00111100 */
 227     0x66, /* 01100110 */
 228     0x66, /* 01100110 */
 229     0x3c, /* 00111100 */
 230     0x86, /* 10000110 */
 231     0x7c, /* 01111100 */
 232 
 233     /* 22 0x16 '^V' */
 234     0x00, /* 00000000 */
 235     0x00, /* 00000000 */
 236     0x00, /* 00000000 */
 237     0x00, /* 00000000 */
 238     0x7e, /* 01111110 */
 239     0x7e, /* 01111110 */
 240     0x7e, /* 01111110 */
 241     0x00, /* 00000000 */
 242 
 243     /* 23 0x17 '^W' */
 244     0x18, /* 00011000 */
 245     0x3c, /* 00111100 */
 246     0x7e, /* 01111110 */
 247     0x18, /* 00011000 */
 248     0x7e, /* 01111110 */
 249     0x3c, /* 00111100 */
 250     0x18, /* 00011000 */
 251     0xff, /* 11111111 */
 252 
 253     /* 24 0x18 '^X' */
 254     0x18, /* 00011000 */
 255     0x3c, /* 00111100 */
 256     0x7e, /* 01111110 */
 257     0x18, /* 00011000 */
 258     0x18, /* 00011000 */
 259     0x18, /* 00011000 */
 260     0x18, /* 00011000 */
 261     0x00, /* 00000000 */
 262 
 263     /* 25 0x19 '^Y' */
 264     0x18, /* 00011000 */
 265     0x18, /* 00011000 */
 266     0x18, /* 00011000 */
 267     0x18, /* 00011000 */
 268     0x7e, /* 01111110 */
 269     0x3c, /* 00111100 */
 270     0x18, /* 00011000 */
 271     0x00, /* 00000000 */
 272 
 273     /* 26 0x1a '^Z' */
 274     0x00, /* 00000000 */
 275     0x18, /* 00011000 */
 276     0x0c, /* 00001100 */
 277     0xfe, /* 11111110 */
 278     0x0c, /* 00001100 */
 279     0x18, /* 00011000 */
 280     0x00, /* 00000000 */
 281     0x00, /* 00000000 */
 282 
 283     /* 27 0x1b '^[' */
 284     0x00, /* 00000000 */
 285     0x30, /* 00110000 */
 286     0x60, /* 01100000 */
 287     0xfe, /* 11111110 */
 288     0x60, /* 01100000 */
 289     0x30, /* 00110000 */
 290     0x00, /* 00000000 */
 291     0x00, /* 00000000 */
 292 
 293     /* 28 0x1c '^\' */
 294     0x00, /* 00000000 */
 295     0x00, /* 00000000 */
 296     0xc0, /* 11000000 */
 297     0xc0, /* 11000000 */
 298     0xc0, /* 11000000 */
 299     0xfe, /* 11111110 */
 300     0x00, /* 00000000 */
 301     0x00, /* 00000000 */
 302 
 303     /* 29 0x1d '^]' */
 304     0x00, /* 00000000 */
 305     0x24, /* 00100100 */
 306     0x66, /* 01100110 */
 307     0xff, /* 11111111 */
 308     0x66, /* 01100110 */
 309     0x24, /* 00100100 */
 310     0x00, /* 00000000 */
 311     0x00, /* 00000000 */
 312 
 313     /* 30 0x1e '^^' */
 314     0x00, /* 00000000 */
 315     0x18, /* 00011000 */
 316     0x3c, /* 00111100 */
 317     0x7e, /* 01111110 */
 318     0xff, /* 11111111 */
 319     0xff, /* 11111111 */
 320     0x00, /* 00000000 */
 321     0x00, /* 00000000 */
 322 
 323     /* 31 0x1f '^_' */
 324     0x00, /* 00000000 */
 325     0xff, /* 11111111 */
 326     0xff, /* 11111111 */
 327     0x7e, /* 01111110 */
 328     0x3c, /* 00111100 */
 329     0x18, /* 00011000 */
 330     0x00, /* 00000000 */
 331     0x00, /* 00000000 */
 332 
 333     /* 32 0x20 ' ' */
 334     0x00, /* 00000000 */
 335     0x00, /* 00000000 */
 336     0x00, /* 00000000 */
 337     0x00, /* 00000000 */
 338     0x00, /* 00000000 */
 339     0x00, /* 00000000 */
 340     0x00, /* 00000000 */
 341     0x00, /* 00000000 */
 342 
 343     /* 33 0x21 '!' */
 344     0x18, /* 00011000 */
 345     0x3c, /* 00111100 */
 346     0x3c, /* 00111100 */
 347     0x18, /* 00011000 */
 348     0x18, /* 00011000 */
 349     0x00, /* 00000000 */
 350     0x18, /* 00011000 */
 351     0x00, /* 00000000 */
 352 
 353     /* 34 0x22 '"' */
 354     0x66, /* 01100110 */
 355     0x66, /* 01100110 */
 356     0x24, /* 00100100 */
 357     0x00, /* 00000000 */
 358     0x00, /* 00000000 */
 359     0x00, /* 00000000 */
 360     0x00, /* 00000000 */
 361     0x00, /* 00000000 */
 362 
 363     /* 35 0x23 '#' */
 364     0x6c, /* 01101100 */
 365     0x6c, /* 01101100 */
 366     0xfe, /* 11111110 */
 367     0x6c, /* 01101100 */
 368     0xfe, /* 11111110 */
 369     0x6c, /* 01101100 */
 370     0x6c, /* 01101100 */
 371     0x00, /* 00000000 */
 372 
 373     /* 36 0x24 '$' */
 374     0x18, /* 00011000 */
 375     0x3e, /* 00111110 */
 376     0x60, /* 01100000 */
 377     0x3c, /* 00111100 */
 378     0x06, /* 00000110 */
 379     0x7c, /* 01111100 */
 380     0x18, /* 00011000 */
 381     0x00, /* 00000000 */
 382 
 383     /* 37 0x25 '%' */
 384     0x00, /* 00000000 */
 385     0xc6, /* 11000110 */
 386     0xcc, /* 11001100 */
 387     0x18, /* 00011000 */
 388     0x30, /* 00110000 */
 389     0x66, /* 01100110 */
 390     0xc6, /* 11000110 */
 391     0x00, /* 00000000 */
 392 
 393     /* 38 0x26 '&' */
 394     0x38, /* 00111000 */
 395     0x6c, /* 01101100 */
 396     0x38, /* 00111000 */
 397     0x76, /* 01110110 */
 398     0xdc, /* 11011100 */
 399     0xcc, /* 11001100 */
 400     0x76, /* 01110110 */
 401     0x00, /* 00000000 */
 402 
 403     /* 39 0x27 ''' */
 404     0x18, /* 00011000 */
 405     0x18, /* 00011000 */
 406     0x30, /* 00110000 */
 407     0x00, /* 00000000 */
 408     0x00, /* 00000000 */
 409     0x00, /* 00000000 */
 410     0x00, /* 00000000 */
 411     0x00, /* 00000000 */
 412 
 413     /* 40 0x28 '(' */
 414     0x0c, /* 00001100 */
 415     0x18, /* 00011000 */
 416     0x30, /* 00110000 */
 417     0x30, /* 00110000 */
 418     0x30, /* 00110000 */
 419     0x18, /* 00011000 */
 420     0x0c, /* 00001100 */
 421     0x00, /* 00000000 */
 422 
 423     /* 41 0x29 ')' */
 424     0x30, /* 00110000 */
 425     0x18, /* 00011000 */
 426     0x0c, /* 00001100 */
 427     0x0c, /* 00001100 */
 428     0x0c, /* 00001100 */
 429     0x18, /* 00011000 */
 430     0x30, /* 00110000 */
 431     0x00, /* 00000000 */
 432 
 433     /* 42 0x2a '*' */
 434     0x00, /* 00000000 */
 435     0x66, /* 01100110 */
 436     0x3c, /* 00111100 */
 437     0xff, /* 11111111 */
 438     0x3c, /* 00111100 */
 439     0x66, /* 01100110 */
 440     0x00, /* 00000000 */
 441     0x00, /* 00000000 */
 442 
 443     /* 43 0x2b '+' */
 444     0x00, /* 00000000 */
 445     0x18, /* 00011000 */
 446     0x18, /* 00011000 */
 447     0x7e, /* 01111110 */
 448     0x18, /* 00011000 */
 449     0x18, /* 00011000 */
 450     0x00, /* 00000000 */
 451     0x00, /* 00000000 */
 452 
 453     /* 44 0x2c ',' */
 454     0x00, /* 00000000 */
 455     0x00, /* 00000000 */
 456     0x00, /* 00000000 */
 457     0x00, /* 00000000 */
 458     0x00, /* 00000000 */
 459     0x18, /* 00011000 */
 460     0x18, /* 00011000 */
 461     0x30, /* 00110000 */
 462 
 463     /* 45 0x2d '-' */
 464     0x00, /* 00000000 */
 465     0x00, /* 00000000 */
 466     0x00, /* 00000000 */
 467     0x7e, /* 01111110 */
 468     0x00, /* 00000000 */
 469     0x00, /* 00000000 */
 470     0x00, /* 00000000 */
 471     0x00, /* 00000000 */
 472 
 473     /* 46 0x2e '.' */
 474     0x00, /* 00000000 */
 475     0x00, /* 00000000 */
 476     0x00, /* 00000000 */
 477     0x00, /* 00000000 */
 478     0x00, /* 00000000 */
 479     0x18, /* 00011000 */
 480     0x18, /* 00011000 */
 481     0x00, /* 00000000 */
 482 
 483     /* 47 0x2f '/' */
 484     0x06, /* 00000110 */
 485     0x0c, /* 00001100 */
 486     0x18, /* 00011000 */
 487     0x30, /* 00110000 */
 488     0x60, /* 01100000 */
 489     0xc0, /* 11000000 */
 490     0x80, /* 10000000 */
 491     0x00, /* 00000000 */
 492 
 493     /* 48 0x30 '0' */
 494     0x38, /* 00111000 */
 495     0x6c, /* 01101100 */
 496     0xc6, /* 11000110 */
 497     0xd6, /* 11010110 */
 498     0xc6, /* 11000110 */
 499     0x6c, /* 01101100 */
 500     0x38, /* 00111000 */
 501     0x00, /* 00000000 */
 502 
 503     /* 49 0x31 '1' */
 504     0x18, /* 00011000 */
 505     0x38, /* 00111000 */
 506     0x18, /* 00011000 */
 507     0x18, /* 00011000 */
 508     0x18, /* 00011000 */
 509     0x18, /* 00011000 */
 510     0x7e, /* 01111110 */
 511     0x00, /* 00000000 */
 512 
 513     /* 50 0x32 '2' */
 514     0x7c, /* 01111100 */
 515     0xc6, /* 11000110 */
 516     0x06, /* 00000110 */
 517     0x1c, /* 00011100 */
 518     0x30, /* 00110000 */
 519     0x66, /* 01100110 */
 520     0xfe, /* 11111110 */
 521     0x00, /* 00000000 */
 522 
 523     /* 51 0x33 '3' */
 524     0x7c, /* 01111100 */
 525     0xc6, /* 11000110 */
 526     0x06, /* 00000110 */
 527     0x3c, /* 00111100 */
 528     0x06, /* 00000110 */
 529     0xc6, /* 11000110 */
 530     0x7c, /* 01111100 */
 531     0x00, /* 00000000 */
 532 
 533     /* 52 0x34 '4' */
 534     0x1c, /* 00011100 */
 535     0x3c, /* 00111100 */
 536     0x6c, /* 01101100 */
 537     0xcc, /* 11001100 */
 538     0xfe, /* 11111110 */
 539     0x0c, /* 00001100 */
 540     0x1e, /* 00011110 */
 541     0x00, /* 00000000 */
 542 
 543     /* 53 0x35 '5' */
 544     0xfe, /* 11111110 */
 545     0xc0, /* 11000000 */
 546     0xc0, /* 11000000 */
 547     0xfc, /* 11111100 */
 548     0x06, /* 00000110 */
 549     0xc6, /* 11000110 */
 550     0x7c, /* 01111100 */
 551     0x00, /* 00000000 */
 552 
 553     /* 54 0x36 '6' */
 554     0x38, /* 00111000 */
 555     0x60, /* 01100000 */
 556     0xc0, /* 11000000 */
 557     0xfc, /* 11111100 */
 558     0xc6, /* 11000110 */
 559     0xc6, /* 11000110 */
 560     0x7c, /* 01111100 */
 561     0x00, /* 00000000 */
 562 
 563     /* 55 0x37 '7' */
 564     0xfe, /* 11111110 */
 565     0xc6, /* 11000110 */
 566     0x0c, /* 00001100 */
 567     0x18, /* 00011000 */
 568     0x30, /* 00110000 */
 569     0x30, /* 00110000 */
 570     0x30, /* 00110000 */
 571     0x00, /* 00000000 */
 572 
 573     /* 56 0x38 '8' */
 574     0x7c, /* 01111100 */
 575     0xc6, /* 11000110 */
 576     0xc6, /* 11000110 */
 577     0x7c, /* 01111100 */
 578     0xc6, /* 11000110 */
 579     0xc6, /* 11000110 */
 580     0x7c, /* 01111100 */
 581     0x00, /* 00000000 */
 582 
 583     /* 57 0x39 '9' */
 584     0x7c, /* 01111100 */
 585     0xc6, /* 11000110 */
 586     0xc6, /* 11000110 */
 587     0x7e, /* 01111110 */
 588     0x06, /* 00000110 */
 589     0x0c, /* 00001100 */
 590     0x78, /* 01111000 */
 591     0x00, /* 00000000 */
 592 
 593     /* 58 0x3a ':' */
 594     0x00, /* 00000000 */
 595     0x18, /* 00011000 */
 596     0x18, /* 00011000 */
 597     0x00, /* 00000000 */
 598     0x00, /* 00000000 */
 599     0x18, /* 00011000 */
 600     0x18, /* 00011000 */
 601     0x00, /* 00000000 */
 602 
 603     /* 59 0x3b ';' */
 604     0x00, /* 00000000 */
 605     0x18, /* 00011000 */
 606     0x18, /* 00011000 */
 607     0x00, /* 00000000 */
 608     0x00, /* 00000000 */
 609     0x18, /* 00011000 */
 610     0x18, /* 00011000 */
 611     0x30, /* 00110000 */
 612 
 613     /* 60 0x3c '<' */
 614     0x06, /* 00000110 */
 615     0x0c, /* 00001100 */
 616     0x18, /* 00011000 */
 617     0x30, /* 00110000 */
 618     0x18, /* 00011000 */
 619     0x0c, /* 00001100 */
 620     0x06, /* 00000110 */
 621     0x00, /* 00000000 */
 622 
 623     /* 61 0x3d '=' */
 624     0x00, /* 00000000 */
 625     0x00, /* 00000000 */
 626     0x7e, /* 01111110 */
 627     0x00, /* 00000000 */
 628     0x00, /* 00000000 */
 629     0x7e, /* 01111110 */
 630     0x00, /* 00000000 */
 631     0x00, /* 00000000 */
 632 
 633     /* 62 0x3e '>' */
 634     0x60, /* 01100000 */
 635     0x30, /* 00110000 */
 636     0x18, /* 00011000 */
 637     0x0c, /* 00001100 */
 638     0x18, /* 00011000 */
 639     0x30, /* 00110000 */
 640     0x60, /* 01100000 */
 641     0x00, /* 00000000 */
 642 
 643     /* 63 0x3f '?' */
 644     0x7c, /* 01111100 */
 645     0xc6, /* 11000110 */
 646     0x0c, /* 00001100 */
 647     0x18, /* 00011000 */
 648     0x18, /* 00011000 */
 649     0x00, /* 00000000 */
 650     0x18, /* 00011000 */
 651     0x00, /* 00000000 */
 652 
 653     /* 64 0x40 '@' */
 654     0x7c, /* 01111100 */
 655     0xc6, /* 11000110 */
 656     0xde, /* 11011110 */
 657     0xde, /* 11011110 */
 658     0xde, /* 11011110 */
 659     0xc0, /* 11000000 */
 660     0x78, /* 01111000 */
 661     0x00, /* 00000000 */
 662 
 663     /* 65 0x41 'A' */
 664     0x38, /* 00111000 */
 665     0x6c, /* 01101100 */
 666     0xc6, /* 11000110 */
 667     0xfe, /* 11111110 */
 668     0xc6, /* 11000110 */
 669     0xc6, /* 11000110 */
 670     0xc6, /* 11000110 */
 671     0x00, /* 00000000 */
 672 
 673     /* 66 0x42 'B' */
 674     0xfc, /* 11111100 */
 675     0x66, /* 01100110 */
 676     0x66, /* 01100110 */
 677     0x7c, /* 01111100 */
 678     0x66, /* 01100110 */
 679     0x66, /* 01100110 */
 680     0xfc, /* 11111100 */
 681     0x00, /* 00000000 */
 682 
 683     /* 67 0x43 'C' */
 684     0x3c, /* 00111100 */
 685     0x66, /* 01100110 */
 686     0xc0, /* 11000000 */
 687     0xc0, /* 11000000 */
 688     0xc0, /* 11000000 */
 689     0x66, /* 01100110 */
 690     0x3c, /* 00111100 */
 691     0x00, /* 00000000 */
 692 
 693     /* 68 0x44 'D' */
 694     0xf8, /* 11111000 */
 695     0x6c, /* 01101100 */
 696     0x66, /* 01100110 */
 697     0x66, /* 01100110 */
 698     0x66, /* 01100110 */
 699     0x6c, /* 01101100 */
 700     0xf8, /* 11111000 */
 701     0x00, /* 00000000 */
 702 
 703     /* 69 0x45 'E' */
 704     0xfe, /* 11111110 */
 705     0x62, /* 01100010 */
 706     0x68, /* 01101000 */
 707     0x78, /* 01111000 */
 708     0x68, /* 01101000 */
 709     0x62, /* 01100010 */
 710     0xfe, /* 11111110 */
 711     0x00, /* 00000000 */
 712 
 713     /* 70 0x46 'F' */
 714     0xfe, /* 11111110 */
 715     0x62, /* 01100010 */
 716     0x68, /* 01101000 */
 717     0x78, /* 01111000 */
 718     0x68, /* 01101000 */
 719     0x60, /* 01100000 */
 720     0xf0, /* 11110000 */
 721     0x00, /* 00000000 */
 722 
 723     /* 71 0x47 'G' */
 724     0x3c, /* 00111100 */
 725     0x66, /* 01100110 */
 726     0xc0, /* 11000000 */
 727     0xc0, /* 11000000 */
 728     0xce, /* 11001110 */
 729     0x66, /* 01100110 */
 730     0x3a, /* 00111010 */
 731     0x00, /* 00000000 */
 732 
 733     /* 72 0x48 'H' */
 734     0xc6, /* 11000110 */
 735     0xc6, /* 11000110 */
 736     0xc6, /* 11000110 */
 737     0xfe, /* 11111110 */
 738     0xc6, /* 11000110 */
 739     0xc6, /* 11000110 */
 740     0xc6, /* 11000110 */
 741     0x00, /* 00000000 */
 742 
 743     /* 73 0x49 'I' */
 744     0x3c, /* 00111100 */
 745     0x18, /* 00011000 */
 746     0x18, /* 00011000 */
 747     0x18, /* 00011000 */
 748     0x18, /* 00011000 */
 749     0x18, /* 00011000 */
 750     0x3c, /* 00111100 */
 751     0x00, /* 00000000 */
 752 
 753     /* 74 0x4a 'J' */
 754     0x1e, /* 00011110 */
 755     0x0c, /* 00001100 */
 756     0x0c, /* 00001100 */
 757     0x0c, /* 00001100 */
 758     0xcc, /* 11001100 */
 759     0xcc, /* 11001100 */
 760     0x78, /* 01111000 */
 761     0x00, /* 00000000 */
 762 
 763     /* 75 0x4b 'K' */
 764     0xe6, /* 11100110 */
 765     0x66, /* 01100110 */
 766     0x6c, /* 01101100 */
 767     0x78, /* 01111000 */
 768     0x6c, /* 01101100 */
 769     0x66, /* 01100110 */
 770     0xe6, /* 11100110 */
 771     0x00, /* 00000000 */
 772 
 773     /* 76 0x4c 'L' */
 774     0xf0, /* 11110000 */
 775     0x60, /* 01100000 */
 776     0x60, /* 01100000 */
 777     0x60, /* 01100000 */
 778     0x62, /* 01100010 */
 779     0x66, /* 01100110 */
 780     0xfe, /* 11111110 */
 781     0x00, /* 00000000 */
 782 
 783     /* 77 0x4d 'M' */
 784     0xc6, /* 11000110 */
 785     0xee, /* 11101110 */
 786     0xfe, /* 11111110 */
 787     0xfe, /* 11111110 */
 788     0xd6, /* 11010110 */
 789     0xc6, /* 11000110 */
 790     0xc6, /* 11000110 */
 791     0x00, /* 00000000 */
 792 
 793     /* 78 0x4e 'N' */
 794     0xc6, /* 11000110 */
 795     0xe6, /* 11100110 */
 796     0xf6, /* 11110110 */
 797     0xde, /* 11011110 */
 798     0xce, /* 11001110 */
 799     0xc6, /* 11000110 */
 800     0xc6, /* 11000110 */
 801     0x00, /* 00000000 */
 802 
 803     /* 79 0x4f 'O' */
 804     0x7c, /* 01111100 */
 805     0xc6, /* 11000110 */
 806     0xc6, /* 11000110 */
 807     0xc6, /* 11000110 */
 808     0xc6, /* 11000110 */
 809     0xc6, /* 11000110 */
 810     0x7c, /* 01111100 */
 811     0x00, /* 00000000 */
 812 
 813     /* 80 0x50 'P' */
 814     0xfc, /* 11111100 */
 815     0x66, /* 01100110 */
 816     0x66, /* 01100110 */
 817     0x7c, /* 01111100 */
 818     0x60, /* 01100000 */
 819     0x60, /* 01100000 */
 820     0xf0, /* 11110000 */
 821     0x00, /* 00000000 */
 822 
 823     /* 81 0x51 'Q' */
 824     0x7c, /* 01111100 */
 825     0xc6, /* 11000110 */
 826     0xc6, /* 11000110 */
 827     0xc6, /* 11000110 */
 828     0xc6, /* 11000110 */
 829     0xce, /* 11001110 */
 830     0x7c, /* 01111100 */
 831     0x0e, /* 00001110 */
 832 
 833     /* 82 0x52 'R' */
 834     0xfc, /* 11111100 */
 835     0x66, /* 01100110 */
 836     0x66, /* 01100110 */
 837     0x7c, /* 01111100 */
 838     0x6c, /* 01101100 */
 839     0x66, /* 01100110 */
 840     0xe6, /* 11100110 */
 841     0x00, /* 00000000 */
 842 
 843     /* 83 0x53 'S' */
 844     0x3c, /* 00111100 */
 845     0x66, /* 01100110 */
 846     0x30, /* 00110000 */
 847     0x18, /* 00011000 */
 848     0x0c, /* 00001100 */
 849     0x66, /* 01100110 */
 850     0x3c, /* 00111100 */
 851     0x00, /* 00000000 */
 852 
 853     /* 84 0x54 'T' */
 854     0x7e, /* 01111110 */
 855     0x7e, /* 01111110 */
 856     0x5a, /* 01011010 */
 857     0x18, /* 00011000 */
 858     0x18, /* 00011000 */
 859     0x18, /* 00011000 */
 860     0x3c, /* 00111100 */
 861     0x00, /* 00000000 */
 862 
 863     /* 85 0x55 'U' */
 864     0xc6, /* 11000110 */
 865     0xc6, /* 11000110 */
 866     0xc6, /* 11000110 */
 867     0xc6, /* 11000110 */
 868     0xc6, /* 11000110 */
 869     0xc6, /* 11000110 */
 870     0x7c, /* 01111100 */
 871     0x00, /* 00000000 */
 872 
 873     /* 86 0x56 'V' */
 874     0xc6, /* 11000110 */
 875     0xc6, /* 11000110 */
 876     0xc6, /* 11000110 */
 877     0xc6, /* 11000110 */
 878     0xc6, /* 11000110 */
 879     0x6c, /* 01101100 */
 880     0x38, /* 00111000 */
 881     0x00, /* 00000000 */
 882 
 883     /* 87 0x57 'W' */
 884     0xc6, /* 11000110 */
 885     0xc6, /* 11000110 */
 886     0xc6, /* 11000110 */
 887     0xd6, /* 11010110 */
 888     0xd6, /* 11010110 */
 889     0xfe, /* 11111110 */
 890     0x6c, /* 01101100 */
 891     0x00, /* 00000000 */
 892 
 893     /* 88 0x58 'X' */
 894     0xc6, /* 11000110 */
 895     0xc6, /* 11000110 */
 896     0x6c, /* 01101100 */
 897     0x38, /* 00111000 */
 898     0x6c, /* 01101100 */
 899     0xc6, /* 11000110 */
 900     0xc6, /* 11000110 */
 901     0x00, /* 00000000 */
 902 
 903     /* 89 0x59 'Y' */
 904     0x66, /* 01100110 */
 905     0x66, /* 01100110 */
 906     0x66, /* 01100110 */
 907     0x3c, /* 00111100 */
 908     0x18, /* 00011000 */
 909     0x18, /* 00011000 */
 910     0x3c, /* 00111100 */
 911     0x00, /* 00000000 */
 912 
 913     /* 90 0x5a 'Z' */
 914     0xfe, /* 11111110 */
 915     0xc6, /* 11000110 */
 916     0x8c, /* 10001100 */
 917     0x18, /* 00011000 */
 918     0x32, /* 00110010 */
 919     0x66, /* 01100110 */
 920     0xfe, /* 11111110 */
 921     0x00, /* 00000000 */
 922 
 923     /* 91 0x5b '[' */
 924     0x3c, /* 00111100 */
 925     0x30, /* 00110000 */
 926     0x30, /* 00110000 */
 927     0x30, /* 00110000 */
 928     0x30, /* 00110000 */
 929     0x30, /* 00110000 */
 930     0x3c, /* 00111100 */
 931     0x00, /* 00000000 */
 932 
 933     /* 92 0x5c '\' */
 934     0xc0, /* 11000000 */
 935     0x60, /* 01100000 */
 936     0x30, /* 00110000 */
 937     0x18, /* 00011000 */
 938     0x0c, /* 00001100 */
 939     0x06, /* 00000110 */
 940     0x02, /* 00000010 */
 941     0x00, /* 00000000 */
 942 
 943     /* 93 0x5d ']' */
 944     0x3c, /* 00111100 */
 945     0x0c, /* 00001100 */
 946     0x0c, /* 00001100 */
 947     0x0c, /* 00001100 */
 948     0x0c, /* 00001100 */
 949     0x0c, /* 00001100 */
 950     0x3c, /* 00111100 */
 951     0x00, /* 00000000 */
 952 
 953     /* 94 0x5e '^' */
 954     0x10, /* 00010000 */
 955     0x38, /* 00111000 */
 956     0x6c, /* 01101100 */
 957     0xc6, /* 11000110 */
 958     0x00, /* 00000000 */
 959     0x00, /* 00000000 */
 960     0x00, /* 00000000 */
 961     0x00, /* 00000000 */
 962 
 963     /* 95 0x5f '_' */
 964     0x00, /* 00000000 */
 965     0x00, /* 00000000 */
 966     0x00, /* 00000000 */
 967     0x00, /* 00000000 */
 968     0x00, /* 00000000 */
 969     0x00, /* 00000000 */
 970     0x00, /* 00000000 */
 971     0xff, /* 11111111 */
 972 
 973     /* 96 0x60 '`' */
 974     0x30, /* 00110000 */
 975     0x18, /* 00011000 */
 976     0x0c, /* 00001100 */
 977     0x00, /* 00000000 */
 978     0x00, /* 00000000 */
 979     0x00, /* 00000000 */
 980     0x00, /* 00000000 */
 981     0x00, /* 00000000 */
 982 
 983     /* 97 0x61 'a' */
 984     0x00, /* 00000000 */
 985     0x00, /* 00000000 */
 986     0x78, /* 01111000 */
 987     0x0c, /* 00001100 */
 988     0x7c, /* 01111100 */
 989     0xcc, /* 11001100 */
 990     0x76, /* 01110110 */
 991     0x00, /* 00000000 */
 992 
 993     /* 98 0x62 'b' */
 994     0xe0, /* 11100000 */
 995     0x60, /* 01100000 */
 996     0x7c, /* 01111100 */
 997     0x66, /* 01100110 */
 998     0x66, /* 01100110 */
 999     0x66, /* 01100110 */
1000     0xdc, /* 11011100 */
1001     0x00, /* 00000000 */
1002 
1003     /* 99 0x63 'c' */
1004     0x00, /* 00000000 */
1005     0x00, /* 00000000 */
1006     0x7c, /* 01111100 */
1007     0xc6, /* 11000110 */
1008     0xc0, /* 11000000 */
1009     0xc6, /* 11000110 */
1010     0x7c, /* 01111100 */
1011     0x00, /* 00000000 */
1012 
1013     /* 100 0x64 'd' */
1014     0x1c, /* 00011100 */
1015     0x0c, /* 00001100 */
1016     0x7c, /* 01111100 */
1017     0xcc, /* 11001100 */
1018     0xcc, /* 11001100 */
1019     0xcc, /* 11001100 */
1020     0x76, /* 01110110 */
1021     0x00, /* 00000000 */
1022 
1023     /* 101 0x65 'e' */
1024     0x00, /* 00000000 */
1025     0x00, /* 00000000 */
1026     0x7c, /* 01111100 */
1027     0xc6, /* 11000110 */
1028     0xfe, /* 11111110 */
1029     0xc0, /* 11000000 */
1030     0x7c, /* 01111100 */
1031     0x00, /* 00000000 */
1032 
1033     /* 102 0x66 'f' */
1034     0x3c, /* 00111100 */
1035     0x66, /* 01100110 */
1036     0x60, /* 01100000 */
1037     0xf8, /* 11111000 */
1038     0x60, /* 01100000 */
1039     0x60, /* 01100000 */
1040     0xf0, /* 11110000 */
1041     0x00, /* 00000000 */
1042 
1043     /* 103 0x67 'g' */
1044     0x00, /* 00000000 */
1045     0x00, /* 00000000 */
1046     0x76, /* 01110110 */
1047     0xcc, /* 11001100 */
1048     0xcc, /* 11001100 */
1049     0x7c, /* 01111100 */
1050     0x0c, /* 00001100 */
1051     0xf8, /* 11111000 */
1052 
1053     /* 104 0x68 'h' */
1054     0xe0, /* 11100000 */
1055     0x60, /* 01100000 */
1056     0x6c, /* 01101100 */
1057     0x76, /* 01110110 */
1058     0x66, /* 01100110 */
1059     0x66, /* 01100110 */
1060     0xe6, /* 11100110 */
1061     0x00, /* 00000000 */
1062 
1063     /* 105 0x69 'i' */
1064     0x18, /* 00011000 */
1065     0x00, /* 00000000 */
1066     0x38, /* 00111000 */
1067     0x18, /* 00011000 */
1068     0x18, /* 00011000 */
1069     0x18, /* 00011000 */
1070     0x3c, /* 00111100 */
1071     0x00, /* 00000000 */
1072 
1073     /* 106 0x6a 'j' */
1074     0x06, /* 00000110 */
1075     0x00, /* 00000000 */
1076     0x06, /* 00000110 */
1077     0x06, /* 00000110 */
1078     0x06, /* 00000110 */
1079     0x66, /* 01100110 */
1080     0x66, /* 01100110 */
1081     0x3c, /* 00111100 */
1082 
1083     /* 107 0x6b 'k' */
1084     0xe0, /* 11100000 */
1085     0x60, /* 01100000 */
1086     0x66, /* 01100110 */
1087     0x6c, /* 01101100 */
1088     0x78, /* 01111000 */
1089     0x6c, /* 01101100 */
1090     0xe6, /* 11100110 */
1091     0x00, /* 00000000 */
1092 
1093     /* 108 0x6c 'l' */
1094     0x38, /* 00111000 */
1095     0x18, /* 00011000 */
1096     0x18, /* 00011000 */
1097     0x18, /* 00011000 */
1098     0x18, /* 00011000 */
1099     0x18, /* 00011000 */
1100     0x3c, /* 00111100 */
1101     0x00, /* 00000000 */
1102 
1103     /* 109 0x6d 'm' */
1104     0x00, /* 00000000 */
1105     0x00, /* 00000000 */
1106     0xec, /* 11101100 */
1107     0xfe, /* 11111110 */
1108     0xd6, /* 11010110 */
1109     0xd6, /* 11010110 */
1110     0xd6, /* 11010110 */
1111     0x00, /* 00000000 */
1112 
1113     /* 110 0x6e 'n' */
1114     0x00, /* 00000000 */
1115     0x00, /* 00000000 */
1116     0xdc, /* 11011100 */
1117     0x66, /* 01100110 */
1118     0x66, /* 01100110 */
1119     0x66, /* 01100110 */
1120     0x66, /* 01100110 */
1121     0x00, /* 00000000 */
1122 
1123     /* 111 0x6f 'o' */
1124     0x00, /* 00000000 */
1125     0x00, /* 00000000 */
1126     0x7c, /* 01111100 */
1127     0xc6, /* 11000110 */
1128     0xc6, /* 11000110 */
1129     0xc6, /* 11000110 */
1130     0x7c, /* 01111100 */
1131     0x00, /* 00000000 */
1132 
1133     /* 112 0x70 'p' */
1134     0x00, /* 00000000 */
1135     0x00, /* 00000000 */
1136     0xdc, /* 11011100 */
1137     0x66, /* 01100110 */
1138     0x66, /* 01100110 */
1139     0x7c, /* 01111100 */
1140     0x60, /* 01100000 */
1141     0xf0, /* 11110000 */
1142 
1143     /* 113 0x71 'q' */
1144     0x00, /* 00000000 */
1145     0x00, /* 00000000 */
1146     0x76, /* 01110110 */
1147     0xcc, /* 11001100 */
1148     0xcc, /* 11001100 */
1149     0x7c, /* 01111100 */
1150     0x0c, /* 00001100 */
1151     0x1e, /* 00011110 */
1152 
1153     /* 114 0x72 'r' */
1154     0x00, /* 00000000 */
1155     0x00, /* 00000000 */
1156     0xdc, /* 11011100 */
1157     0x76, /* 01110110 */
1158     0x60, /* 01100000 */
1159     0x60, /* 01100000 */
1160     0xf0, /* 11110000 */
1161     0x00, /* 00000000 */
1162 
1163     /* 115 0x73 's' */
1164     0x00, /* 00000000 */
1165     0x00, /* 00000000 */
1166     0x7e, /* 01111110 */
1167     0xc0, /* 11000000 */
1168     0x7c, /* 01111100 */
1169     0x06, /* 00000110 */
1170     0xfc, /* 11111100 */
1171     0x00, /* 00000000 */
1172 
1173     /* 116 0x74 't' */
1174     0x30, /* 00110000 */
1175     0x30, /* 00110000 */
1176     0xfc, /* 11111100 */
1177     0x30, /* 00110000 */
1178     0x30, /* 00110000 */
1179     0x36, /* 00110110 */
1180     0x1c, /* 00011100 */
1181     0x00, /* 00000000 */
1182 
1183     /* 117 0x75 'u' */
1184     0x00, /* 00000000 */
1185     0x00, /* 00000000 */
1186     0xcc, /* 11001100 */
1187     0xcc, /* 11001100 */
1188     0xcc, /* 11001100 */
1189     0xcc, /* 11001100 */
1190     0x76, /* 01110110 */
1191     0x00, /* 00000000 */
1192 
1193     /* 118 0x76 'v' */
1194     0x00, /* 00000000 */
1195     0x00, /* 00000000 */
1196     0xc6, /* 11000110 */
1197     0xc6, /* 11000110 */
1198     0xc6, /* 11000110 */
1199     0x6c, /* 01101100 */
1200     0x38, /* 00111000 */
1201     0x00, /* 00000000 */
1202 
1203     /* 119 0x77 'w' */
1204     0x00, /* 00000000 */
1205     0x00, /* 00000000 */
1206     0xc6, /* 11000110 */
1207     0xd6, /* 11010110 */
1208     0xd6, /* 11010110 */
1209     0xfe, /* 11111110 */
1210     0x6c, /* 01101100 */
1211     0x00, /* 00000000 */
1212 
1213     /* 120 0x78 'x' */
1214     0x00, /* 00000000 */
1215     0x00, /* 00000000 */
1216     0xc6, /* 11000110 */
1217     0x6c, /* 01101100 */
1218     0x38, /* 00111000 */
1219     0x6c, /* 01101100 */
1220     0xc6, /* 11000110 */
1221     0x00, /* 00000000 */
1222 
1223     /* 121 0x79 'y' */
1224     0x00, /* 00000000 */
1225     0x00, /* 00000000 */
1226     0xc6, /* 11000110 */
1227     0xc6, /* 11000110 */
1228     0xc6, /* 11000110 */
1229     0x7e, /* 01111110 */
1230     0x06, /* 00000110 */
1231     0xfc, /* 11111100 */
1232 
1233     /* 122 0x7a 'z' */
1234     0x00, /* 00000000 */
1235     0x00, /* 00000000 */
1236     0x7e, /* 01111110 */
1237     0x4c, /* 01001100 */
1238     0x18, /* 00011000 */
1239     0x32, /* 00110010 */
1240     0x7e, /* 01111110 */
1241     0x00, /* 00000000 */
1242 
1243     /* 123 0x7b '{' */
1244     0x0e, /* 00001110 */
1245     0x18, /* 00011000 */
1246     0x18, /* 00011000 */
1247     0x70, /* 01110000 */
1248     0x18, /* 00011000 */
1249     0x18, /* 00011000 */
1250     0x0e, /* 00001110 */
1251     0x00, /* 00000000 */
1252 
1253     /* 124 0x7c '|' */
1254     0x18, /* 00011000 */
1255     0x18, /* 00011000 */
1256     0x18, /* 00011000 */
1257     0x18, /* 00011000 */
1258     0x18, /* 00011000 */
1259     0x18, /* 00011000 */
1260     0x18, /* 00011000 */
1261     0x00, /* 00000000 */
1262 
1263     /* 125 0x7d '}' */
1264     0x70, /* 01110000 */
1265     0x18, /* 00011000 */
1266     0x18, /* 00011000 */
1267     0x0e, /* 00001110 */
1268     0x18, /* 00011000 */
1269     0x18, /* 00011000 */
1270     0x70, /* 01110000 */
1271     0x00, /* 00000000 */
1272 
1273     /* 126 0x7e '~' */
1274     0x76, /* 01110110 */
1275     0xdc, /* 11011100 */
1276     0x00, /* 00000000 */
1277     0x00, /* 00000000 */
1278     0x00, /* 00000000 */
1279     0x00, /* 00000000 */
1280     0x00, /* 00000000 */
1281     0x00, /* 00000000 */
1282 
1283     /* 127 0x7f '' */
1284     0x00, /* 00000000 */
1285     0x10, /* 00010000 */
1286     0x38, /* 00111000 */
1287     0x6c, /* 01101100 */
1288     0xc6, /* 11000110 */
1289     0xc6, /* 11000110 */
1290     0xfe, /* 11111110 */
1291     0x00, /* 00000000 */
1292 
1293     /* 128 0x80 '' */
1294     0x7c, /* 01111100 */
1295     0xc6, /* 11000110 */
1296     0xc0, /* 11000000 */
1297     0xc0, /* 11000000 */
1298     0xc6, /* 11000110 */
1299     0x7c, /* 01111100 */
1300     0x0c, /* 00001100 */
1301     0x78, /* 01111000 */
1302 
1303     /* 129 0x81 '' */
1304     0xcc, /* 11001100 */
1305     0x00, /* 00000000 */
1306     0xcc, /* 11001100 */
1307     0xcc, /* 11001100 */
1308     0xcc, /* 11001100 */
1309     0xcc, /* 11001100 */
1310     0x76, /* 01110110 */
1311     0x00, /* 00000000 */
1312 
1313     /* 130 0x82 '' */
1314     0x0c, /* 00001100 */
1315     0x18, /* 00011000 */
1316     0x7c, /* 01111100 */
1317     0xc6, /* 11000110 */
1318     0xfe, /* 11111110 */
1319     0xc0, /* 11000000 */
1320     0x7c, /* 01111100 */
1321     0x00, /* 00000000 */
1322 
1323     /* 131 0x83 '' */
1324     0x7c, /* 01111100 */
1325     0x82, /* 10000010 */
1326     0x78, /* 01111000 */
1327     0x0c, /* 00001100 */
1328     0x7c, /* 01111100 */
1329     0xcc, /* 11001100 */
1330     0x76, /* 01110110 */
1331     0x00, /* 00000000 */
1332 
1333     /* 132 0x84 '' */
1334     0xc6, /* 11000110 */
1335     0x00, /* 00000000 */
1336     0x78, /* 01111000 */
1337     0x0c, /* 00001100 */
1338     0x7c, /* 01111100 */
1339     0xcc, /* 11001100 */
1340     0x76, /* 01110110 */
1341     0x00, /* 00000000 */
1342 
1343     /* 133 0x85 '' */
1344     0x30, /* 00110000 */
1345     0x18, /* 00011000 */
1346     0x78, /* 01111000 */
1347     0x0c, /* 00001100 */
1348     0x7c, /* 01111100 */
1349     0xcc, /* 11001100 */
1350     0x76, /* 01110110 */
1351     0x00, /* 00000000 */
1352 
1353     /* 134 0x86 '' */
1354     0x30, /* 00110000 */
1355     0x30, /* 00110000 */
1356     0x78, /* 01111000 */
1357     0x0c, /* 00001100 */
1358     0x7c, /* 01111100 */
1359     0xcc, /* 11001100 */
1360     0x76, /* 01110110 */
1361     0x00, /* 00000000 */
1362 
1363     /* 135 0x87 '' */
1364     0x00, /* 00000000 */
1365     0x00, /* 00000000 */
1366     0x7e, /* 01111110 */
1367     0xc0, /* 11000000 */
1368     0xc0, /* 11000000 */
1369     0x7e, /* 01111110 */
1370     0x0c, /* 00001100 */
1371     0x38, /* 00111000 */
1372 
1373     /* 136 0x88 '' */
1374     0x7c, /* 01111100 */
1375     0x82, /* 10000010 */
1376     0x7c, /* 01111100 */
1377     0xc6, /* 11000110 */
1378     0xfe, /* 11111110 */
1379     0xc0, /* 11000000 */
1380     0x7c, /* 01111100 */
1381     0x00, /* 00000000 */
1382 
1383     /* 137 0x89 '' */
1384     0xc6, /* 11000110 */
1385     0x00, /* 00000000 */
1386     0x7c, /* 01111100 */
1387     0xc6, /* 11000110 */
1388     0xfe, /* 11111110 */
1389     0xc0, /* 11000000 */
1390     0x7c, /* 01111100 */
1391     0x00, /* 00000000 */
1392 
1393     /* 138 0x8a '' */
1394     0x30, /* 00110000 */
1395     0x18, /* 00011000 */
1396     0x7c, /* 01111100 */
1397     0xc6, /* 11000110 */
1398     0xfe, /* 11111110 */
1399     0xc0, /* 11000000 */
1400     0x7c, /* 01111100 */
1401     0x00, /* 00000000 */
1402 
1403     /* 139 0x8b '' */
1404     0x66, /* 01100110 */
1405     0x00, /* 00000000 */
1406     0x38, /* 00111000 */
1407     0x18, /* 00011000 */
1408     0x18, /* 00011000 */
1409     0x18, /* 00011000 */
1410     0x3c, /* 00111100 */
1411     0x00, /* 00000000 */
1412 
1413     /* 140 0x8c '' */
1414     0x7c, /* 01111100 */
1415     0x82, /* 10000010 */
1416     0x38, /* 00111000 */
1417     0x18, /* 00011000 */
1418     0x18, /* 00011000 */
1419     0x18, /* 00011000 */
1420     0x3c, /* 00111100 */
1421     0x00, /* 00000000 */
1422 
1423     /* 141 0x8d '' */
1424     0x30, /* 00110000 */
1425     0x18, /* 00011000 */
1426     0x00, /* 00000000 */
1427     0x38, /* 00111000 */
1428     0x18, /* 00011000 */
1429     0x18, /* 00011000 */
1430     0x3c, /* 00111100 */
1431     0x00, /* 00000000 */
1432 
1433     /* 142 0x8e '' */
1434     0xc6, /* 11000110 */
1435     0x38, /* 00111000 */
1436     0x6c, /* 01101100 */
1437     0xc6, /* 11000110 */
1438     0xfe, /* 11111110 */
1439     0xc6, /* 11000110 */
1440     0xc6, /* 11000110 */
1441     0x00, /* 00000000 */
1442 
1443     /* 143 0x8f '' */
1444     0x38, /* 00111000 */
1445     0x6c, /* 01101100 */
1446     0x7c, /* 01111100 */
1447     0xc6, /* 11000110 */
1448     0xfe, /* 11111110 */
1449     0xc6, /* 11000110 */
1450     0xc6, /* 11000110 */
1451     0x00, /* 00000000 */
1452 
1453     /* 144 0x90 '' */
1454     0x18, /* 00011000 */
1455     0x30, /* 00110000 */
1456     0xfe, /* 11111110 */
1457     0xc0, /* 11000000 */
1458     0xf8, /* 11111000 */
1459     0xc0, /* 11000000 */
1460     0xfe, /* 11111110 */
1461     0x00, /* 00000000 */
1462 
1463     /* 145 0x91 '' */
1464     0x00, /* 00000000 */
1465     0x00, /* 00000000 */
1466     0x7e, /* 01111110 */
1467     0x18, /* 00011000 */
1468     0x7e, /* 01111110 */
1469     0xd8, /* 11011000 */
1470     0x7e, /* 01111110 */
1471     0x00, /* 00000000 */
1472 
1473     /* 146 0x92 '' */
1474     0x3e, /* 00111110 */
1475     0x6c, /* 01101100 */
1476     0xcc, /* 11001100 */
1477     0xfe, /* 11111110 */
1478     0xcc, /* 11001100 */
1479     0xcc, /* 11001100 */
1480     0xce, /* 11001110 */
1481     0x00, /* 00000000 */
1482 
1483     /* 147 0x93 '' */
1484     0x7c, /* 01111100 */
1485     0x82, /* 10000010 */
1486     0x7c, /* 01111100 */
1487     0xc6, /* 11000110 */
1488     0xc6, /* 11000110 */
1489     0xc6, /* 11000110 */
1490     0x7c, /* 01111100 */
1491     0x00, /* 00000000 */
1492 
1493     /* 148 0x94 '' */
1494     0xc6, /* 11000110 */
1495     0x00, /* 00000000 */
1496     0x7c, /* 01111100 */
1497     0xc6, /* 11000110 */
1498     0xc6, /* 11000110 */
1499     0xc6, /* 11000110 */
1500     0x7c, /* 01111100 */
1501     0x00, /* 00000000 */
1502 
1503     /* 149 0x95 '' */
1504     0x30, /* 00110000 */
1505     0x18, /* 00011000 */
1506     0x7c, /* 01111100 */
1507     0xc6, /* 11000110 */
1508     0xc6, /* 11000110 */
1509     0xc6, /* 11000110 */
1510     0x7c, /* 01111100 */
1511     0x00, /* 00000000 */
1512 
1513     /* 150 0x96 '' */
1514     0x78, /* 01111000 */
1515     0x84, /* 10000100 */
1516     0x00, /* 00000000 */
1517     0xcc, /* 11001100 */
1518     0xcc, /* 11001100 */
1519     0xcc, /* 11001100 */
1520     0x76, /* 01110110 */
1521     0x00, /* 00000000 */
1522 
1523     /* 151 0x97 '' */
1524     0x60, /* 01100000 */
1525     0x30, /* 00110000 */
1526     0xcc, /* 11001100 */
1527     0xcc, /* 11001100 */
1528     0xcc, /* 11001100 */
1529     0xcc, /* 11001100 */
1530     0x76, /* 01110110 */
1531     0x00, /* 00000000 */
1532 
1533     /* 152 0x98 '' */
1534     0xc6, /* 11000110 */
1535     0x00, /* 00000000 */
1536     0xc6, /* 11000110 */
1537     0xc6, /* 11000110 */
1538     0xc6, /* 11000110 */
1539     0x7e, /* 01111110 */
1540     0x06, /* 00000110 */
1541     0xfc, /* 11111100 */
1542 
1543     /* 153 0x99 '' */
1544     0xc6, /* 11000110 */
1545     0x38, /* 00111000 */
1546     0x6c, /* 01101100 */
1547     0xc6, /* 11000110 */
1548     0xc6, /* 11000110 */
1549     0x6c, /* 01101100 */
1550     0x38, /* 00111000 */
1551     0x00, /* 00000000 */
1552 
1553     /* 154 0x9a '' */
1554     0xc6, /* 11000110 */
1555     0x00, /* 00000000 */
1556     0xc6, /* 11000110 */
1557     0xc6, /* 11000110 */
1558     0xc6, /* 11000110 */
1559     0xc6, /* 11000110 */
1560     0x7c, /* 01111100 */
1561     0x00, /* 00000000 */
1562 
1563     /* 155 0x9b '' */
1564     0x18, /* 00011000 */
1565     0x18, /* 00011000 */
1566     0x7e, /* 01111110 */
1567     0xc0, /* 11000000 */
1568     0xc0, /* 11000000 */
1569     0x7e, /* 01111110 */
1570     0x18, /* 00011000 */
1571     0x18, /* 00011000 */
1572 
1573     /* 156 0x9c '' */
1574     0x38, /* 00111000 */
1575     0x6c, /* 01101100 */
1576     0x64, /* 01100100 */
1577     0xf0, /* 11110000 */
1578     0x60, /* 01100000 */
1579     0x66, /* 01100110 */
1580     0xfc, /* 11111100 */
1581     0x00, /* 00000000 */
1582 
1583     /* 157 0x9d '' */
1584     0x66, /* 01100110 */
1585     0x66, /* 01100110 */
1586     0x3c, /* 00111100 */
1587     0x7e, /* 01111110 */
1588     0x18, /* 00011000 */
1589     0x7e, /* 01111110 */
1590     0x18, /* 00011000 */
1591     0x18, /* 00011000 */
1592 
1593     /* 158 0x9e '' */
1594     0xf8, /* 11111000 */
1595     0xcc, /* 11001100 */
1596     0xcc, /* 11001100 */
1597     0xfa, /* 11111010 */
1598     0xc6, /* 11000110 */
1599     0xcf, /* 11001111 */
1600     0xc6, /* 11000110 */
1601     0xc7, /* 11000111 */
1602 
1603     /* 159 0x9f '' */
1604     0x0e, /* 00001110 */
1605     0x1b, /* 00011011 */
1606     0x18, /* 00011000 */
1607     0x3c, /* 00111100 */
1608     0x18, /* 00011000 */
1609     0xd8, /* 11011000 */
1610     0x70, /* 01110000 */
1611     0x00, /* 00000000 */
1612 
1613     /* 160 0xa0 '' */
1614     0x18, /* 00011000 */
1615     0x30, /* 00110000 */
1616     0x78, /* 01111000 */
1617     0x0c, /* 00001100 */
1618     0x7c, /* 01111100 */
1619     0xcc, /* 11001100 */
1620     0x76, /* 01110110 */
1621     0x00, /* 00000000 */
1622 
1623     /* 161 0xa1 '' */
1624     0x0c, /* 00001100 */
1625     0x18, /* 00011000 */
1626     0x00, /* 00000000 */
1627     0x38, /* 00111000 */
1628     0x18, /* 00011000 */
1629     0x18, /* 00011000 */
1630     0x3c, /* 00111100 */
1631     0x00, /* 00000000 */
1632 
1633     /* 162 0xa2 '' */
1634     0x0c, /* 00001100 */
1635     0x18, /* 00011000 */
1636     0x7c, /* 01111100 */
1637     0xc6, /* 11000110 */
1638     0xc6, /* 11000110 */
1639     0xc6, /* 11000110 */
1640     0x7c, /* 01111100 */
1641     0x00, /* 00000000 */
1642 
1643     /* 163 0xa3 '' */
1644     0x18, /* 00011000 */
1645     0x30, /* 00110000 */
1646     0xcc, /* 11001100 */
1647     0xcc, /* 11001100 */
1648     0xcc, /* 11001100 */
1649     0xcc, /* 11001100 */
1650     0x76, /* 01110110 */
1651     0x00, /* 00000000 */
1652 
1653     /* 164 0xa4 '' */
1654     0x76, /* 01110110 */
1655     0xdc, /* 11011100 */
1656     0x00, /* 00000000 */
1657     0xdc, /* 11011100 */
1658     0x66, /* 01100110 */
1659     0x66, /* 01100110 */
1660     0x66, /* 01100110 */
1661     0x00, /* 00000000 */
1662 
1663     /* 165 0xa5 '' */
1664     0x76, /* 01110110 */
1665     0xdc, /* 11011100 */
1666     0x00, /* 00000000 */
1667     0xe6, /* 11100110 */
1668     0xf6, /* 11110110 */
1669     0xde, /* 11011110 */
1670     0xce, /* 11001110 */
1671     0x00, /* 00000000 */
1672 
1673     /* 166 0xa6 '' */
1674     0x3c, /* 00111100 */
1675     0x6c, /* 01101100 */
1676     0x6c, /* 01101100 */
1677     0x3e, /* 00111110 */
1678     0x00, /* 00000000 */
1679     0x7e, /* 01111110 */
1680     0x00, /* 00000000 */
1681     0x00, /* 00000000 */
1682 
1683     /* 167 0xa7 '' */
1684     0x38, /* 00111000 */
1685     0x6c, /* 01101100 */
1686     0x6c, /* 01101100 */
1687     0x38, /* 00111000 */
1688     0x00, /* 00000000 */
1689     0x7c, /* 01111100 */
1690     0x00, /* 00000000 */
1691     0x00, /* 00000000 */
1692 
1693     /* 168 0xa8 '' */
1694     0x18, /* 00011000 */
1695     0x00, /* 00000000 */
1696     0x18, /* 00011000 */
1697     0x18, /* 00011000 */
1698     0x30, /* 00110000 */
1699     0x63, /* 01100011 */
1700     0x3e, /* 00111110 */
1701     0x00, /* 00000000 */
1702 
1703     /* 169 0xa9 '' */
1704     0x00, /* 00000000 */
1705     0x00, /* 00000000 */
1706     0x00, /* 00000000 */
1707     0xfe, /* 11111110 */
1708     0xc0, /* 11000000 */
1709     0xc0, /* 11000000 */
1710     0x00, /* 00000000 */
1711     0x00, /* 00000000 */
1712 
1713     /* 170 0xaa '' */
1714     0x00, /* 00000000 */
1715     0x00, /* 00000000 */
1716     0x00, /* 00000000 */
1717     0xfe, /* 11111110 */
1718     0x06, /* 00000110 */
1719     0x06, /* 00000110 */
1720     0x00, /* 00000000 */
1721     0x00, /* 00000000 */
1722 
1723     /* 171 0xab '' */
1724     0x63, /* 01100011 */
1725     0xe6, /* 11100110 */
1726     0x6c, /* 01101100 */
1727     0x7e, /* 01111110 */
1728     0x33, /* 00110011 */
1729     0x66, /* 01100110 */
1730     0xcc, /* 11001100 */
1731     0x0f, /* 00001111 */
1732 
1733     /* 172 0xac '' */
1734     0x63, /* 01100011 */
1735     0xe6, /* 11100110 */
1736     0x6c, /* 01101100 */
1737     0x7a, /* 01111010 */
1738     0x36, /* 00110110 */
1739     0x6a, /* 01101010 */
1740     0xdf, /* 11011111 */
1741     0x06, /* 00000110 */
1742 
1743     /* 173 0xad '' */
1744     0x18, /* 00011000 */
1745     0x00, /* 00000000 */
1746     0x18, /* 00011000 */
1747     0x18, /* 00011000 */
1748     0x3c, /* 00111100 */
1749     0x3c, /* 00111100 */
1750     0x18, /* 00011000 */
1751     0x00, /* 00000000 */
1752 
1753     /* 174 0xae '' */
1754     0x00, /* 00000000 */
1755     0x33, /* 00110011 */
1756     0x66, /* 01100110 */
1757     0xcc, /* 11001100 */
1758     0x66, /* 01100110 */
1759     0x33, /* 00110011 */
1760     0x00, /* 00000000 */
1761     0x00, /* 00000000 */
1762 
1763     /* 175 0xaf '' */
1764     0x00, /* 00000000 */
1765     0xcc, /* 11001100 */
1766     0x66, /* 01100110 */
1767     0x33, /* 00110011 */
1768     0x66, /* 01100110 */
1769     0xcc, /* 11001100 */
1770     0x00, /* 00000000 */
1771     0x00, /* 00000000 */
1772 
1773     /* 176 0xb0 '' */
1774     0x22, /* 00100010 */
1775     0x88, /* 10001000 */
1776     0x22, /* 00100010 */
1777     0x88, /* 10001000 */
1778     0x22, /* 00100010 */
1779     0x88, /* 10001000 */
1780     0x22, /* 00100010 */
1781     0x88, /* 10001000 */
1782 
1783     /* 177 0xb1 '' */
1784     0x55, /* 01010101 */
1785     0xaa, /* 10101010 */
1786     0x55, /* 01010101 */
1787     0xaa, /* 10101010 */
1788     0x55, /* 01010101 */
1789     0xaa, /* 10101010 */
1790     0x55, /* 01010101 */
1791     0xaa, /* 10101010 */
1792 
1793     /* 178 0xb2 '' */
1794     0x77, /* 01110111 */
1795     0xdd, /* 11011101 */
1796     0x77, /* 01110111 */
1797     0xdd, /* 11011101 */
1798     0x77, /* 01110111 */
1799     0xdd, /* 11011101 */
1800     0x77, /* 01110111 */
1801     0xdd, /* 11011101 */
1802 
1803     /* 179 0xb3 '' */
1804     0x18, /* 00011000 */
1805     0x18, /* 00011000 */
1806     0x18, /* 00011000 */
1807     0x18, /* 00011000 */
1808     0x18, /* 00011000 */
1809     0x18, /* 00011000 */
1810     0x18, /* 00011000 */
1811     0x18, /* 00011000 */
1812 
1813     /* 180 0xb4 '' */
1814     0x18, /* 00011000 */
1815     0x18, /* 00011000 */
1816     0x18, /* 00011000 */
1817     0x18, /* 00011000 */
1818     0xf8, /* 11111000 */
1819     0x18, /* 00011000 */
1820     0x18, /* 00011000 */
1821     0x18, /* 00011000 */
1822 
1823     /* 181 0xb5 '' */
1824     0x18, /* 00011000 */
1825     0x18, /* 00011000 */
1826     0xf8, /* 11111000 */
1827     0x18, /* 00011000 */
1828     0xf8, /* 11111000 */
1829     0x18, /* 00011000 */
1830     0x18, /* 00011000 */
1831     0x18, /* 00011000 */
1832 
1833     /* 182 0xb6 '' */
1834     0x36, /* 00110110 */
1835     0x36, /* 00110110 */
1836     0x36, /* 00110110 */
1837     0x36, /* 00110110 */
1838     0xf6, /* 11110110 */
1839     0x36, /* 00110110 */
1840     0x36, /* 00110110 */
1841     0x36, /* 00110110 */
1842 
1843     /* 183 0xb7 '' */
1844     0x00, /* 00000000 */
1845     0x00, /* 00000000 */
1846     0x00, /* 00000000 */
1847     0x00, /* 00000000 */
1848     0xfe, /* 11111110 */
1849     0x36, /* 00110110 */
1850     0x36, /* 00110110 */
1851     0x36, /* 00110110 */
1852 
1853     /* 184 0xb8 '' */
1854     0x00, /* 00000000 */
1855     0x00, /* 00000000 */
1856     0xf8, /* 11111000 */
1857     0x18, /* 00011000 */
1858     0xf8, /* 11111000 */
1859     0x18, /* 00011000 */
1860     0x18, /* 00011000 */
1861     0x18, /* 00011000 */
1862 
1863     /* 185 0xb9 '' */
1864     0x36, /* 00110110 */
1865     0x36, /* 00110110 */
1866     0xf6, /* 11110110 */
1867     0x06, /* 00000110 */
1868     0xf6, /* 11110110 */
1869     0x36, /* 00110110 */
1870     0x36, /* 00110110 */
1871     0x36, /* 00110110 */
1872 
1873     /* 186 0xba '' */
1874     0x36, /* 00110110 */
1875     0x36, /* 00110110 */
1876     0x36, /* 00110110 */
1877     0x36, /* 00110110 */
1878     0x36, /* 00110110 */
1879     0x36, /* 00110110 */
1880     0x36, /* 00110110 */
1881     0x36, /* 00110110 */
1882 
1883     /* 187 0xbb '' */
1884     0x00, /* 00000000 */
1885     0x00, /* 00000000 */
1886     0xfe, /* 11111110 */
1887     0x06, /* 00000110 */
1888     0xf6, /* 11110110 */
1889     0x36, /* 00110110 */
1890     0x36, /* 00110110 */
1891     0x36, /* 00110110 */
1892 
1893     /* 188 0xbc '' */
1894     0x36, /* 00110110 */
1895     0x36, /* 00110110 */
1896     0xf6, /* 11110110 */
1897     0x06, /* 00000110 */
1898     0xfe, /* 11111110 */
1899     0x00, /* 00000000 */
1900     0x00, /* 00000000 */
1901     0x00, /* 00000000 */
1902 
1903     /* 189 0xbd '' */
1904     0x36, /* 00110110 */
1905     0x36, /* 00110110 */
1906     0x36, /* 00110110 */
1907     0x36, /* 00110110 */
1908     0xfe, /* 11111110 */
1909     0x00, /* 00000000 */
1910     0x00, /* 00000000 */
1911     0x00, /* 00000000 */
1912 
1913     /* 190 0xbe '' */
1914     0x18, /* 00011000 */
1915     0x18, /* 00011000 */
1916     0xf8, /* 11111000 */
1917     0x18, /* 00011000 */
1918     0xf8, /* 11111000 */
1919     0x00, /* 00000000 */
1920     0x00, /* 00000000 */
1921     0x00, /* 00000000 */
1922 
1923     /* 191 0xbf '' */
1924     0x00, /* 00000000 */
1925     0x00, /* 00000000 */
1926     0x00, /* 00000000 */
1927     0x00, /* 00000000 */
1928     0xf8, /* 11111000 */
1929     0x18, /* 00011000 */
1930     0x18, /* 00011000 */
1931     0x18, /* 00011000 */
1932 
1933     /* 192 0xc0 '' */
1934     0x18, /* 00011000 */
1935     0x18, /* 00011000 */
1936     0x18, /* 00011000 */
1937     0x18, /* 00011000 */
1938     0x1f, /* 00011111 */
1939     0x00, /* 00000000 */
1940     0x00, /* 00000000 */
1941     0x00, /* 00000000 */
1942 
1943     /* 193 0xc1 '' */
1944     0x18, /* 00011000 */
1945     0x18, /* 00011000 */
1946     0x18, /* 00011000 */
1947     0x18, /* 00011000 */
1948     0xff, /* 11111111 */
1949     0x00, /* 00000000 */
1950     0x00, /* 00000000 */
1951     0x00, /* 00000000 */
1952 
1953     /* 194 0xc2 '' */
1954     0x00, /* 00000000 */
1955     0x00, /* 00000000 */
1956     0x00, /* 00000000 */
1957     0x00, /* 00000000 */
1958     0xff, /* 11111111 */
1959     0x18, /* 00011000 */
1960     0x18, /* 00011000 */
1961     0x18, /* 00011000 */
1962 
1963     /* 195 0xc3 '' */
1964     0x18, /* 00011000 */
1965     0x18, /* 00011000 */
1966     0x18, /* 00011000 */
1967     0x18, /* 00011000 */
1968     0x1f, /* 00011111 */
1969     0x18, /* 00011000 */
1970     0x18, /* 00011000 */
1971     0x18, /* 00011000 */
1972 
1973     /* 196 0xc4 '' */
1974     0x00, /* 00000000 */
1975     0x00, /* 00000000 */
1976     0x00, /* 00000000 */
1977     0x00, /* 00000000 */
1978     0xff, /* 11111111 */
1979     0x00, /* 00000000 */
1980     0x00, /* 00000000 */
1981     0x00, /* 00000000 */
1982 
1983     /* 197 0xc5 '' */
1984     0x18, /* 00011000 */
1985     0x18, /* 00011000 */
1986     0x18, /* 00011000 */
1987     0x18, /* 00011000 */
1988     0xff, /* 11111111 */
1989     0x18, /* 00011000 */
1990     0x18, /* 00011000 */
1991     0x18, /* 00011000 */
1992 
1993     /* 198 0xc6 '' */
1994     0x18, /* 00011000 */
1995     0x18, /* 00011000 */
1996     0x1f, /* 00011111 */
1997     0x18, /* 00011000 */
1998     0x1f, /* 00011111 */
1999     0x18, /* 00011000 */
2000     0x18, /* 00011000 */
2001     0x18, /* 00011000 */
2002 
2003     /* 199 0xc7 '' */
2004     0x36, /* 00110110 */
2005     0x36, /* 00110110 */
2006     0x36, /* 00110110 */
2007     0x36, /* 00110110 */
2008     0x37, /* 00110111 */
2009     0x36, /* 00110110 */
2010     0x36, /* 00110110 */
2011     0x36, /* 00110110 */
2012 
2013     /* 200 0xc8 '' */
2014     0x36, /* 00110110 */
2015     0x36, /* 00110110 */
2016     0x37, /* 00110111 */
2017     0x30, /* 00110000 */
2018     0x3f, /* 00111111 */
2019     0x00, /* 00000000 */
2020     0x00, /* 00000000 */
2021     0x00, /* 00000000 */
2022 
2023     /* 201 0xc9 '' */
2024     0x00, /* 00000000 */
2025     0x00, /* 00000000 */
2026     0x3f, /* 00111111 */
2027     0x30, /* 00110000 */
2028     0x37, /* 00110111 */
2029     0x36, /* 00110110 */
2030     0x36, /* 00110110 */
2031     0x36, /* 00110110 */
2032 
2033     /* 202 0xca '' */
2034     0x36, /* 00110110 */
2035     0x36, /* 00110110 */
2036     0xf7, /* 11110111 */
2037     0x00, /* 00000000 */
2038     0xff, /* 11111111 */
2039     0x00, /* 00000000 */
2040     0x00, /* 00000000 */
2041     0x00, /* 00000000 */
2042 
2043     /* 203 0xcb '' */
2044     0x00, /* 00000000 */
2045     0x00, /* 00000000 */
2046     0xff, /* 11111111 */
2047     0x00, /* 00000000 */
2048     0xf7, /* 11110111 */
2049     0x36, /* 00110110 */
2050     0x36, /* 00110110 */
2051     0x36, /* 00110110 */
2052 
2053     /* 204 0xcc '' */
2054     0x36, /* 00110110 */
2055     0x36, /* 00110110 */
2056     0x37, /* 00110111 */
2057     0x30, /* 00110000 */
2058     0x37, /* 00110111 */
2059     0x36, /* 00110110 */
2060     0x36, /* 00110110 */
2061     0x36, /* 00110110 */
2062 
2063     /* 205 0xcd '' */
2064     0x00, /* 00000000 */
2065     0x00, /* 00000000 */
2066     0xff, /* 11111111 */
2067     0x00, /* 00000000 */
2068     0xff, /* 11111111 */
2069     0x00, /* 00000000 */
2070     0x00, /* 00000000 */
2071     0x00, /* 00000000 */
2072 
2073     /* 206 0xce '' */
2074     0x36, /* 00110110 */
2075     0x36, /* 00110110 */
2076     0xf7, /* 11110111 */
2077     0x00, /* 00000000 */
2078     0xf7, /* 11110111 */
2079     0x36, /* 00110110 */
2080     0x36, /* 00110110 */
2081     0x36, /* 00110110 */
2082 
2083     /* 207 0xcf '' */
2084     0x18, /* 00011000 */
2085     0x18, /* 00011000 */
2086     0xff, /* 11111111 */
2087     0x00, /* 00000000 */
2088     0xff, /* 11111111 */
2089     0x00, /* 00000000 */
2090     0x00, /* 00000000 */
2091     0x00, /* 00000000 */
2092 
2093     /* 208 0xd0 '' */
2094     0x36, /* 00110110 */
2095     0x36, /* 00110110 */
2096     0x36, /* 00110110 */
2097     0x36, /* 00110110 */
2098     0xff, /* 11111111 */
2099     0x00, /* 00000000 */
2100     0x00, /* 00000000 */
2101     0x00, /* 00000000 */
2102 
2103     /* 209 0xd1 '' */
2104     0x00, /* 00000000 */
2105     0x00, /* 00000000 */
2106     0xff, /* 11111111 */
2107     0x00, /* 00000000 */
2108     0xff, /* 11111111 */
2109     0x18, /* 00011000 */
2110     0x18, /* 00011000 */
2111     0x18, /* 00011000 */
2112 
2113     /* 210 0xd2 '' */
2114     0x00, /* 00000000 */
2115     0x00, /* 00000000 */
2116     0x00, /* 00000000 */
2117     0x00, /* 00000000 */
2118     0xff, /* 11111111 */
2119     0x36, /* 00110110 */
2120     0x36, /* 00110110 */
2121     0x36, /* 00110110 */
2122 
2123     /* 211 0xd3 '' */
2124     0x36, /* 00110110 */
2125     0x36, /* 00110110 */
2126     0x36, /* 00110110 */
2127     0x36, /* 00110110 */
2128     0x3f, /* 00111111 */
2129     0x00, /* 00000000 */
2130     0x00, /* 00000000 */
2131     0x00, /* 00000000 */
2132 
2133     /* 212 0xd4 '' */
2134     0x18, /* 00011000 */
2135     0x18, /* 00011000 */
2136     0x1f, /* 00011111 */
2137     0x18, /* 00011000 */
2138     0x1f, /* 00011111 */
2139     0x00, /* 00000000 */
2140     0x00, /* 00000000 */
2141     0x00, /* 00000000 */
2142 
2143     /* 213 0xd5 '' */
2144     0x00, /* 00000000 */
2145     0x00, /* 00000000 */
2146     0x1f, /* 00011111 */
2147     0x18, /* 00011000 */
2148     0x1f, /* 00011111 */
2149     0x18, /* 00011000 */
2150     0x18, /* 00011000 */
2151     0x18, /* 00011000 */
2152 
2153     /* 214 0xd6 '' */
2154     0x00, /* 00000000 */
2155     0x00, /* 00000000 */
2156     0x00, /* 00000000 */
2157     0x00, /* 00000000 */
2158     0x3f, /* 00111111 */
2159     0x36, /* 00110110 */
2160     0x36, /* 00110110 */
2161     0x36, /* 00110110 */
2162 
2163     /* 215 0xd7 '' */
2164     0x36, /* 00110110 */
2165     0x36, /* 00110110 */
2166     0x36, /* 00110110 */
2167     0x36, /* 00110110 */
2168     0xff, /* 11111111 */
2169     0x36, /* 00110110 */
2170     0x36, /* 00110110 */
2171     0x36, /* 00110110 */
2172 
2173     /* 216 0xd8 '' */
2174     0x18, /* 00011000 */
2175     0x18, /* 00011000 */
2176     0xff, /* 11111111 */
2177     0x18, /* 00011000 */
2178     0xff, /* 11111111 */
2179     0x18, /* 00011000 */
2180     0x18, /* 00011000 */
2181     0x18, /* 00011000 */
2182 
2183     /* 217 0xd9 '' */
2184     0x18, /* 00011000 */
2185     0x18, /* 00011000 */
2186     0x18, /* 00011000 */
2187     0x18, /* 00011000 */
2188     0xf8, /* 11111000 */
2189     0x00, /* 00000000 */
2190     0x00, /* 00000000 */
2191     0x00, /* 00000000 */
2192 
2193     /* 218 0xda '' */
2194     0x00, /* 00000000 */
2195     0x00, /* 00000000 */
2196     0x00, /* 00000000 */
2197     0x00, /* 00000000 */
2198     0x1f, /* 00011111 */
2199     0x18, /* 00011000 */
2200     0x18, /* 00011000 */
2201     0x18, /* 00011000 */
2202 
2203     /* 219 0xdb '' */
2204     0xff, /* 11111111 */
2205     0xff, /* 11111111 */
2206     0xff, /* 11111111 */
2207     0xff, /* 11111111 */
2208     0xff, /* 11111111 */
2209     0xff, /* 11111111 */
2210     0xff, /* 11111111 */
2211     0xff, /* 11111111 */
2212 
2213     /* 220 0xdc '' */
2214     0x00, /* 00000000 */
2215     0x00, /* 00000000 */
2216     0x00, /* 00000000 */
2217     0x00, /* 00000000 */
2218     0xff, /* 11111111 */
2219     0xff, /* 11111111 */
2220     0xff, /* 11111111 */
2221     0xff, /* 11111111 */
2222 
2223     /* 221 0xdd '' */
2224     0xf0, /* 11110000 */
2225     0xf0, /* 11110000 */
2226     0xf0, /* 11110000 */
2227     0xf0, /* 11110000 */
2228     0xf0, /* 11110000 */
2229     0xf0, /* 11110000 */
2230     0xf0, /* 11110000 */
2231     0xf0, /* 11110000 */
2232 
2233     /* 222 0xde '' */
2234     0x0f, /* 00001111 */
2235     0x0f, /* 00001111 */
2236     0x0f, /* 00001111 */
2237     0x0f, /* 00001111 */
2238     0x0f, /* 00001111 */
2239     0x0f, /* 00001111 */
2240     0x0f, /* 00001111 */
2241     0x0f, /* 00001111 */
2242 
2243     /* 223 0xdf '' */
2244     0xff, /* 11111111 */
2245     0xff, /* 11111111 */
2246     0xff, /* 11111111 */
2247     0xff, /* 11111111 */
2248     0x00, /* 00000000 */
2249     0x00, /* 00000000 */
2250     0x00, /* 00000000 */
2251     0x00, /* 00000000 */
2252 
2253     /* 224 0xe0 '' */
2254     0x00, /* 00000000 */
2255     0x00, /* 00000000 */
2256     0x76, /* 01110110 */
2257     0xdc, /* 11011100 */
2258     0xc8, /* 11001000 */
2259     0xdc, /* 11011100 */
2260     0x76, /* 01110110 */
2261     0x00, /* 00000000 */
2262 
2263     /* 225 0xe1 '' */
2264     0x78, /* 01111000 */
2265     0xcc, /* 11001100 */
2266     0xcc, /* 11001100 */
2267     0xd8, /* 11011000 */
2268     0xcc, /* 11001100 */
2269     0xc6, /* 11000110 */
2270     0xcc, /* 11001100 */
2271     0x00, /* 00000000 */
2272 
2273     /* 226 0xe2 '' */
2274     0xfe, /* 11111110 */
2275     0xc6, /* 11000110 */
2276     0xc0, /* 11000000 */
2277     0xc0, /* 11000000 */
2278     0xc0, /* 11000000 */
2279     0xc0, /* 11000000 */
2280     0xc0, /* 11000000 */
2281     0x00, /* 00000000 */
2282 
2283     /* 227 0xe3 '' */
2284     0x00, /* 00000000 */
2285     0x00, /* 00000000 */
2286     0xfe, /* 11111110 */
2287     0x6c, /* 01101100 */
2288     0x6c, /* 01101100 */
2289     0x6c, /* 01101100 */
2290     0x6c, /* 01101100 */
2291     0x00, /* 00000000 */
2292 
2293     /* 228 0xe4 '' */
2294     0xfe, /* 11111110 */
2295     0xc6, /* 11000110 */
2296     0x60, /* 01100000 */
2297     0x30, /* 00110000 */
2298     0x60, /* 01100000 */
2299     0xc6, /* 11000110 */
2300     0xfe, /* 11111110 */
2301     0x00, /* 00000000 */
2302 
2303     /* 229 0xe5 '' */
2304     0x00, /* 00000000 */
2305     0x00, /* 00000000 */
2306     0x7e, /* 01111110 */
2307     0xd8, /* 11011000 */
2308     0xd8, /* 11011000 */
2309     0xd8, /* 11011000 */
2310     0x70, /* 01110000 */
2311     0x00, /* 00000000 */
2312 
2313     /* 230 0xe6 '' */
2314     0x00, /* 00000000 */
2315     0x00, /* 00000000 */
2316     0x66, /* 01100110 */
2317     0x66, /* 01100110 */
2318     0x66, /* 01100110 */
2319     0x66, /* 01100110 */
2320     0x7c, /* 01111100 */
2321     0xc0, /* 11000000 */
2322 
2323     /* 231 0xe7 '' */
2324     0x00, /* 00000000 */
2325     0x76, /* 01110110 */
2326     0xdc, /* 11011100 */
2327     0x18, /* 00011000 */
2328     0x18, /* 00011000 */
2329     0x18, /* 00011000 */
2330     0x18, /* 00011000 */
2331     0x00, /* 00000000 */
2332 
2333     /* 232 0xe8 '' */
2334     0x7e, /* 01111110 */
2335     0x18, /* 00011000 */
2336     0x3c, /* 00111100 */
2337     0x66, /* 01100110 */
2338     0x66, /* 01100110 */
2339     0x3c, /* 00111100 */
2340     0x18, /* 00011000 */
2341     0x7e, /* 01111110 */
2342 
2343     /* 233 0xe9 '' */
2344     0x38, /* 00111000 */
2345     0x6c, /* 01101100 */
2346     0xc6, /* 11000110 */
2347     0xfe, /* 11111110 */
2348     0xc6, /* 11000110 */
2349     0x6c, /* 01101100 */
2350     0x38, /* 00111000 */
2351     0x00, /* 00000000 */
2352 
2353     /* 234 0xea '' */
2354     0x38, /* 00111000 */
2355     0x6c, /* 01101100 */
2356     0xc6, /* 11000110 */
2357     0xc6, /* 11000110 */
2358     0x6c, /* 01101100 */
2359     0x6c, /* 01101100 */
2360     0xee, /* 11101110 */
2361     0x00, /* 00000000 */
2362 
2363     /* 235 0xeb '' */
2364     0x0e, /* 00001110 */
2365     0x18, /* 00011000 */
2366     0x0c, /* 00001100 */
2367     0x3e, /* 00111110 */
2368     0x66, /* 01100110 */
2369     0x66, /* 01100110 */
2370     0x3c, /* 00111100 */
2371     0x00, /* 00000000 */
2372 
2373     /* 236 0xec '' */
2374     0x00, /* 00000000 */
2375     0x00, /* 00000000 */
2376     0x7e, /* 01111110 */
2377     0xdb, /* 11011011 */
2378     0xdb, /* 11011011 */
2379     0x7e, /* 01111110 */
2380     0x00, /* 00000000 */
2381     0x00, /* 00000000 */
2382 
2383     /* 237 0xed '' */
2384     0x06, /* 00000110 */
2385     0x0c, /* 00001100 */
2386     0x7e, /* 01111110 */
2387     0xdb, /* 11011011 */
2388     0xdb, /* 11011011 */
2389     0x7e, /* 01111110 */
2390     0x60, /* 01100000 */
2391     0xc0, /* 11000000 */
2392 
2393     /* 238 0xee '' */
2394     0x1e, /* 00011110 */
2395     0x30, /* 00110000 */
2396     0x60, /* 01100000 */
2397     0x7e, /* 01111110 */
2398     0x60, /* 01100000 */
2399     0x30, /* 00110000 */
2400     0x1e, /* 00011110 */
2401     0x00, /* 00000000 */
2402 
2403     /* 239 0xef '' */
2404     0x00, /* 00000000 */
2405     0x7c, /* 01111100 */
2406     0xc6, /* 11000110 */
2407     0xc6, /* 11000110 */
2408     0xc6, /* 11000110 */
2409     0xc6, /* 11000110 */
2410     0xc6, /* 11000110 */
2411     0x00, /* 00000000 */
2412 
2413     /* 240 0xf0 '' */
2414     0x00, /* 00000000 */
2415     0xfe, /* 11111110 */
2416     0x00, /* 00000000 */
2417     0xfe, /* 11111110 */
2418     0x00, /* 00000000 */
2419     0xfe, /* 11111110 */
2420     0x00, /* 00000000 */
2421     0x00, /* 00000000 */
2422 
2423     /* 241 0xf1 '' */
2424     0x18, /* 00011000 */
2425     0x18, /* 00011000 */
2426     0x7e, /* 01111110 */
2427     0x18, /* 00011000 */
2428     0x18, /* 00011000 */
2429     0x00, /* 00000000 */
2430     0x7e, /* 01111110 */
2431     0x00, /* 00000000 */
2432 
2433     /* 242 0xf2 '' */
2434     0x30, /* 00110000 */
2435     0x18, /* 00011000 */
2436     0x0c, /* 00001100 */
2437     0x18, /* 00011000 */
2438     0x30, /* 00110000 */
2439     0x00, /* 00000000 */
2440     0x7e, /* 01111110 */
2441     0x00, /* 00000000 */
2442 
2443     /* 243 0xf3 '' */
2444     0x0c, /* 00001100 */
2445     0x18, /* 00011000 */
2446     0x30, /* 00110000 */
2447     0x18, /* 00011000 */
2448     0x0c, /* 00001100 */
2449     0x00, /* 00000000 */
2450     0x7e, /* 01111110 */
2451     0x00, /* 00000000 */
2452 
2453     /* 244 0xf4 '' */
2454     0x0e, /* 00001110 */
2455     0x1b, /* 00011011 */
2456     0x1b, /* 00011011 */
2457     0x18, /* 00011000 */
2458     0x18, /* 00011000 */
2459     0x18, /* 00011000 */
2460     0x18, /* 00011000 */
2461     0x18, /* 00011000 */
2462 
2463     /* 245 0xf5 '' */
2464     0x18, /* 00011000 */
2465     0x18, /* 00011000 */
2466     0x18, /* 00011000 */
2467     0x18, /* 00011000 */
2468     0x18, /* 00011000 */
2469     0xd8, /* 11011000 */
2470     0xd8, /* 11011000 */
2471     0x70, /* 01110000 */
2472 
2473     /* 246 0xf6 '' */
2474     0x00, /* 00000000 */
2475     0x18, /* 00011000 */
2476     0x00, /* 00000000 */
2477     0x7e, /* 01111110 */
2478     0x00, /* 00000000 */
2479     0x18, /* 00011000 */
2480     0x00, /* 00000000 */
2481     0x00, /* 00000000 */
2482 
2483     /* 247 0xf7 '' */
2484     0x00, /* 00000000 */
2485     0x76, /* 01110110 */
2486     0xdc, /* 11011100 */
2487     0x00, /* 00000000 */
2488     0x76, /* 01110110 */
2489     0xdc, /* 11011100 */
2490     0x00, /* 00000000 */
2491     0x00, /* 00000000 */
2492 
2493     /* 248 0xf8 '' */
2494     0x38, /* 00111000 */
2495     0x6c, /* 01101100 */
2496     0x6c, /* 01101100 */
2497     0x38, /* 00111000 */
2498     0x00, /* 00000000 */
2499     0x00, /* 00000000 */
2500     0x00, /* 00000000 */
2501     0x00, /* 00000000 */
2502 
2503     /* 249 0xf9 '' */
2504     0x00, /* 00000000 */
2505     0x00, /* 00000000 */
2506     0x00, /* 00000000 */
2507     0x18, /* 00011000 */
2508     0x18, /* 00011000 */
2509     0x00, /* 00000000 */
2510     0x00, /* 00000000 */
2511     0x00, /* 00000000 */
2512 
2513     /* 250 0xfa '' */
2514     0x00, /* 00000000 */
2515     0x00, /* 00000000 */
2516     0x00, /* 00000000 */
2517     0x18, /* 00011000 */
2518     0x00, /* 00000000 */
2519     0x00, /* 00000000 */
2520     0x00, /* 00000000 */
2521     0x00, /* 00000000 */
2522 
2523     /* 251 0xfb '' */
2524     0x0f, /* 00001111 */
2525     0x0c, /* 00001100 */
2526     0x0c, /* 00001100 */
2527     0x0c, /* 00001100 */
2528     0xec, /* 11101100 */
2529     0x6c, /* 01101100 */
2530     0x3c, /* 00111100 */
2531     0x1c, /* 00011100 */
2532 
2533     /* 252 0xfc '' */
2534     0x6c, /* 01101100 */
2535     0x36, /* 00110110 */
2536     0x36, /* 00110110 */
2537     0x36, /* 00110110 */
2538     0x36, /* 00110110 */
2539     0x00, /* 00000000 */
2540     0x00, /* 00000000 */
2541     0x00, /* 00000000 */
2542 
2543     /* 253 0xfd '' */
2544     0x78, /* 01111000 */
2545     0x0c, /* 00001100 */
2546     0x18, /* 00011000 */
2547     0x30, /* 00110000 */
2548     0x7c, /* 01111100 */
2549     0x00, /* 00000000 */
2550     0x00, /* 00000000 */
2551     0x00, /* 00000000 */
2552 
2553     /* 254 0xfe '' */
2554     0x00, /* 00000000 */
2555     0x00, /* 00000000 */
2556     0x3c, /* 00111100 */
2557     0x3c, /* 00111100 */
2558     0x3c, /* 00111100 */
2559     0x3c, /* 00111100 */
2560     0x00, /* 00000000 */
2561     0x00, /* 00000000 */
2562 
2563     /* 255 0xff '' */
2564     0x00, /* 00000000 */
2565     0x00, /* 00000000 */
2566     0x00, /* 00000000 */
2567     0x00, /* 00000000 */
2568     0x00, /* 00000000 */
2569     0x00, /* 00000000 */
2570     0x00, /* 00000000 */
2571     0x00, /* 00000000 */
2572 };
2573 
2574 
2575 struct fbcon_font_desc font_vga_8x8 = {
2576     VGA8x8_IDX,
2577     "VGA8x8",
2578     8,
2579     8,
2580     fontdata_8x8,
2581     0
2582 };

实际其中定义了所有ASCii码的字模,这样就可以直接使用了。

然后我修改了font_8x8.c文件生成自己的font_16x16文件,在其中放入用软件生成的字模,并且修改了tslib的函数

View Code
1 /**********************************************/
 2 /*                                            */
 3 /*       Font file generated by cpi2fnt       */
 4 /*       自己编写的                             */
 5 /**********************************************/
 6 
 7 #include "font.h"
 8 
 9 #define FONTDATAMAX 1024
10 
11 static unsigned char fontdata_16x16[FONTDATAMAX] = {
12     /*0 '0'*/
13     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
14     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
15     
16     /*1 '测'*/
17     0x00,0x04,0x27,0xC4,0x14,0x44,0x14,0x54,0x85,0x54,0x45,0x54,0x45,0x54,0x15,0x54,
18     0x15,0x54,0x25,0x54,0xE5,0x54,0x21,0x04,0x22,0x84,0x22,0x44,0x24,0x14,0x08,0x08,
19     
20     /*2 '试'*/
21     0x00,0x28,0x20,0x24,0x10,0x24,0x10,0x20,0x07,0xFE,0x00,0x20,0xF0,0x20,0x17,0xE0,
22     0x11,0x20,0x11,0x10,0x11,0x10,0x15,0x10,0x19,0xCA,0x17,0x0A,0x02,0x06,0x00,0x02,
23     
24     /*3 '程'*/
25     0x08,0x00,0x1D,0xFC,0xF1,0x04,0x11,0x04,0x11,0x04,0xFD,0xFC,0x10,0x00,0x30,0x00,
26     0x39,0xFE,0x54,0x20,0x54,0x20,0x91,0xFC,0x10,0x20,0x10,0x20,0x13,0xFE,0x10,0x00,
27     
28     /*4 '序'*/
29     0x01,0x00,0x00,0x80,0x3F,0xFE,0x20,0x00,0x23,0xF8,0x20,0x10,0x20,0xA0,0x20,0x40,
30     0x2F,0xFE,0x20,0x42,0x20,0x44,0x20,0x40,0x40,0x40,0x40,0x40,0x81,0x40,0x00,0x80,
31     
32     /*5 '1'*/
33     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x1F,0x80,0x01,0x80,0x01,0x80,0x01,0x80,
34     0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x1F,0xF8,0x00,0x00,0x00,0x00,
35 
36     /*6 '6'*/
37     0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xF8,0x0E,0x0C,0x18,0x00,0x10,0x00,0x33,0xF8,
38     0x3C,0x0C,0x30,0x06,0x30,0x06,0x18,0x06,0x0C,0x0C,0x07,0xF0,0x00,0x00,0x00,0x00,
39     
40     /*7 'x'*/
41     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFC,
42     0x0E,0x30,0x03,0xC0,0x01,0xC0,0x06,0xE0,0x0C,0x78,0x7E,0xFE,0x00,0x00,0x00,0x00,
43 
44 };
45 
46 
47 struct fbcon_font_desc font_vga_16x16 = {
48     VGA16x16_IDX,
49     "VGA16x16",
50     16,
51     16,
52     fontdata_16x16,
53     0
54 };

我改造的函数

复制代码
 1 void put_char_16x16(int x, int y, int c, int colidx)
 2 {
 3     int i,j,bits;
 4     for (i = 0; i < font_vga_16x16.height; i++) {
 5         bits = font_vga_16x16.data [font_vga_16x16.height * c*2 + i*2];
 6         for (j = 0; j < 8; j++, bits <<= 1)
 7         {
 8             if (bits & 0x80)
 9                 pixel (x + j, y + i, colidx);
10         }
11         bits = font_vga_16x16.data [font_vga_16x16.height * c* 2 + i*2 + 1];
12         for (j = 8; j < font_vga_16x16.width; j++, bits <<= 1)
13         {
14             if (bits & 0x80)
15                 pixel (x + j, y + i, colidx);
16         }
17     }
18 }
复制代码

我的代码

http://download.csdn.net/detail/cxjchen/5366605

 
 
 
标签: linux
原文地址:https://www.cnblogs.com/Leo_wl/p/3076215.html