|
|
1.1 root 1: //
2: // nono
1.1.1.3 root 3: // Copyright (C) 2020 nono project
4: // Licensed under nono-license.txt
1.1 root 5: //
6:
1.1.1.4 ! root 7: //
! 8: // LCD (HD44780)
! 9: //
! 10:
1.1 root 11: #include "lcd.h"
12:
1.1.1.2 root 13: std::unique_ptr<LCDDevice> gLCD;
1.1 root 14:
15: LCDDevice::LCDDevice()
16: {
17: logname = "lcd";
18: devname = "LCD(HD44780)";
1.1.1.4 ! root 19: monitor_size = nnSize(67, 3);
1.1 root 20: }
21:
22: LCDDevice::~LCDDevice()
23: {
24: }
25:
26: bool
27: LCDDevice::PowerOff()
28: {
29: // オフをどう表現するかはあるが、とりあえずモニタ画面での表示を消すのが
30: // 主目的なので空白で埋める。
31: memset(ddram, 0x20, sizeof(ddram));
1.1.1.4 ! root 32: update++;
1.1 root 33: return true;
34: }
35:
36: void
37: LCDDevice::SetRW(bool val)
38: {
39: rw = val;
40: putlog(2, "R/W = %c", val ? 'R' : 'W');
41: }
42:
43: void
44: LCDDevice::SetRS(int val)
45: {
46: rs = val;
47: putlog(2, "RS = %d", rs);
48: }
49:
50: void
51: LCDDevice::SetE(bool val)
52: {
53: en = val;
54: putlog(2, "E = %d", en);
55: }
56:
57: // E, RS, R/W 線の状態を取得する (PIO1 のポートC 読み込み用)
58: uint8
59: LCDDevice::Get() const
60: {
61: return (en ? 0x80 : 0)
62: | (rs >> 6)
63: | (rw ? 0x20 : 0);
64: }
65:
66: uint8
67: LCDDevice::Read()
68: {
69: if (en == false || rw == false) {
70: // XXX どうなるんだろ
71: return 0xff;
72: }
73: if (rs == 0) {
74: // ステータスレジスタの読み込み
75: // B A A A A A A A
76: // | +-+-+-+-+-+-+-- アドレスカウンタ
77: // +---------------- ビジーフラグ %1=BUSY
78:
79: // XXX ビジーは未実装
1.1.1.4 ! root 80: return (addr & 0x7f);
1.1 root 81: } else {
82: putlog(0, "未実装データ読み込み");
83: }
84: return 0xff;
85: }
86:
87: void
88: LCDDevice::Write(uint8 data)
89: {
90: if (en == false || rw == true) {
91: // どうなるんだろ
92: return;
93: }
94: if (rs == 0) {
95: // コマンド書き込み
1.1.1.4 ! root 96:
1.1 root 97: if ((data & 0x80)) {
1.1.1.4 ! root 98: addr = data;
! 99: putlog(1, "DDRAM アドレスセット $%02x", addr & 0x7f);
1.1 root 100: } else if ((data & 0x40)) {
1.1.1.4 ! root 101: addr = data;
! 102: putlog(1, "CGRAM アドレスセット $%02x", addr & 0x3f);
1.1 root 103: } else if ((data & 0x20)) {
104: // ファンクション・セット
105: // 0x38 (8ビットバス、2行表示、8ライン/行)モードのみサポート
106: if (data != 0x38) {
107: putlog(0, "コマンド書き込み $%02x ファンクションセット(未実装)",
108: data);
109: }
110: } else if ((data & 0x10)) {
111: // カーソル移動
112: putlog(0, "コマンド書き込み $%02x カーソル移動(未実装)", data);
113: } else if ((data & 0x08)) {
114: // 表示ON/OFF
115: // 文字表示 ON/OFF のみサポート
116: disp_char = (data & 0x04);
117: // XXX それ以外は未サポート
118: } else if ((data & 0x04)) {
119: // エントリモード
120: addr_inc = (data & 0x02);
121: // XXX 表示シフトは未サポート
122: } else if ((data & 0x02)) {
123: // カーソルホーム
1.1.1.4 ! root 124: addr = 0x40;
1.1 root 125: } else if ((data & 0x01)) {
126: // 表示クリア
127: memset(ddram, 0x20, sizeof(ddram));
1.1.1.4 ! root 128: addr = 0x40;
! 129: update++;
1.1 root 130: } else {
131: // $00 が書き込まれるんだけど、データシートにはないんだよね。
132: // 無視していいかな。
133: putlog(2, "未定義書き込み $%02x", data);
134: }
135: } else {
1.1.1.4 ! root 136: if ((addr & 0x80)) {
! 137: putlog(1, "DDRAM データ書き込み X=%d Y=%d <- $%02x",
! 138: (addr & 0x7f) % 0x40, (addr & 0x7f) / 0x40, data);
! 139: } else {
! 140: putlog(1, "CGRAM データ書き込み $%02x <- $%02x", addr & 0x3f, data);
! 141: }
! 142: ram[addr] = data;
! 143: update++;
1.1 root 144: // アドレス更新
1.1.1.4 ! root 145: // DDRAM は各行 0x27 までしか存在していないが、stride が 0x40 バイト。
! 146: // XXX CGRAM が折り返すかどうかは分からないがそのまま DDRAM 領域に
! 147: // 行っても困ると思うのでとりあえず。
1.1 root 148: if (addr_inc) {
149: addr++;
1.1.1.4 ! root 150: if (addr == 0x80) // CGRAM (XXX)
1.1 root 151: addr = 0x40;
1.1.1.4 ! root 152: else if (addr == 0x80 + 0x28) // DDRAM 1行目
! 153: addr = 0x80 + 0x40;
! 154: else if (addr == 0x80 + 0x68) // DDRAM 2行目
! 155: addr = 0x80 + 0;
1.1 root 156: } else {
157: addr--;
1.1.1.4 ! root 158: if (addr == 0x3f) // CGRAM (XXX)
! 159: addr = 0x7f;
! 160: else if (addr == 0x7f) // DDRAM 1行目
! 161: addr = 0x80 + 0x67;
! 162: else if (addr == 0x80 + 0x3f) // DDRAM 2行目
! 163: addr = 0x80 + 0x27;
1.1 root 164: }
165: }
166: }
167:
1.1.1.2 root 168: // PIO1 からのピーク用
169: uint8
170: LCDDevice::Peek() const
171: {
172: if (en == false || rw == false) {
173: // XXX どうなるんだろ
174: return 0xff;
175: }
176: if (rs == 0) {
1.1.1.4 ! root 177: // XXX ?
! 178: return (addr & 0x7f);
1.1.1.2 root 179: } else {
180: // データ読み込みは未実装
181: }
182: return 0xff;
183: }
184:
1.1.1.4 ! root 185: void
! 186: LCDDevice::MonitorUpdate(TextScreen &monitor)
1.1 root 187: {
188: char buf[17];
189:
1.1.1.4 ! root 190: // 0 1 2 3 4 5 6
! 191: // 01234567890123456789012345678901234567890123456789012345678901234567
! 192: // RW=R RS=0 E=0
! 193: // 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f |0123456789abcdef|
! 194: // 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f |0123456789abcdef|
! 195:
1.1 root 196: monitor.Clear();
1.1.1.4 ! root 197: monitor.Print(0, 0, "RW=%c RS=%d E=%d", rw ? 'R' : 'W', rs, en);
1.1 root 198:
199: for (int y = 0; y < 2; y++) {
200: memcpy(buf, &ddram[y * 0x40], 16);
201: buf[16] = '\0';
1.1.1.4 ! root 202: // 16進を表示する端から文字ダンプ用に加工していく
! 203: for (int x = 0; x < 16; x++) {
! 204: monitor.Print(x * 3 + (x / 8), y + 1, "%02x", buf[x]);
! 205: if (buf[x] < 0x20 || buf[x] > 0x7e) {
! 206: buf[x] = '.';
! 207: }
! 208: }
! 209: monitor.Print(49, y + 1, "|%-16s|", buf);
1.1 root 210: }
211: }
1.1.1.4 ! root 212:
! 213: // CGROM は ROM A00 版のみ考慮する (A02 版との共存は今の所考えない)。
! 214: // A00 版は以下のような配置になっている。
! 215: //
! 216: // +0+1+2+3+4+5+6+7+8+9+a+b+c+d+e+f
! 217: // 0x00 <------------ CGRAM ----------->
! 218: // 0x10
! 219: // 0x20 ! " # $ % & ' ( ) * + , - . /
! 220: // 0x30 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
! 221: // 0x40 @ A B C D E F G H I J K L M N O
! 222: // 0x50 P Q R S T U V W X Y Z [ \ ] ^ _
! 223: // 0x60 ` a b c d e f g h i j k l m n o
! 224: // 0x70 p q r s t u v w x y z { | } →←
! 225: // 0x80
! 226: // 0x90
! 227: // 0xa0 。「」、・ヲァィゥェォャュョッ
! 228: // 0xb0 ーアイウエオカキクケコサシスセソ
! 229: // 0xc0 タチツテトナニヌネノハヒフヘホマ
! 230: // 0xd0 ミムメモヤユヨラリルレロワン゛゜
! 231: // 0xe0 <---- 5x10 ギリシャ文字など --->
! 232: // 0xf0 <---- 5x10 ギリシャ文字など --->
! 233: //
! 234: // 0x00 〜 0x07 は 8文字の CGRAM で、0x08 〜 0x0f には同じものが見える。
! 235: // 0x20〜0x7f と 0xa0〜0xdf までが 5x7 フォント、
! 236: // 0xe0〜0xff は 5x7 フォントと 5x10 フォントが混在している。
! 237: // 5x7 フォントは、メモリとしては 5x8 分(8バイト) を使用し、一番下のラインを
! 238: // 常に空白としておく (LCD の1行自体が 5x8 で構成されており、一番下が
! 239: // カーソル用に予約されているため)。
! 240: // 一方 5x10 フォントのカーソルはこのフォントの一つ下に表示するので 5x11
! 241: // フォントのうち一番下のラインがカーソル用とも言える。5x10 モードはサポート
! 242: // しないので、サイズを揃えるため上から 5x8 分のデータだけを保持することにする。
! 243: // (5x10 モードをサポートする時になんとかすること)
! 244: //
! 245: // 空き領域が多いこと、どのみち CGRAM 部分を考慮する必要があること、それと
! 246: // もし 5x10 モードをサポートする場合には途中でライン数が変わることなどから、
! 247: // フォントデータの取得は生データに直接アクセスさせるのではなく、1文字ずつ
! 248: // フォントデータのアドレスを返す方式にする。
! 249:
! 250: // 文字コード ch のフォントデータ(の先頭アドレス) を取得する。
! 251: //
! 252: // 連続する 8 バイトがフォントデータで、下位側(右側) 5ビットのみ有効。
! 253: // 9バイト目が次の文字の1バイト目であることは保証していないので必ず1文字ごと
! 254: // に呼び出すこと。また CGRAM 領域のように動的に変化する場合もあるため
! 255: // 呼び出し側でこの読み出し値をキャッシュしないこと。
! 256: const uint8 *
! 257: LCDDevice::GetFont(int ch) const
! 258: {
! 259: // CGRAM 部分
! 260: if (ch < 0x10) {
! 261: ch &= 0x07;
! 262: return &cgram[ch * 8];
! 263: }
! 264:
! 265: if (ch < 0x20) {
! 266: return &CGROM[0]; // space
! 267: }
! 268:
! 269: // ASCII 部分
! 270: if (ch < 0x80) {
! 271: return &CGROM[(ch - 0x20) * 8];
! 272: }
! 273:
! 274: if (ch < 0xa0) {
! 275: return &CGROM[0]; // space
! 276: }
! 277:
! 278: // カナ以降
! 279: return &CGROM[(ch - 0xa0 + 0x60) * 8];
! 280: }
! 281:
! 282: /*static*/ const uint8 LCDDevice::CGROM[12 * 16 * 8] =
! 283: {
! 284: 0b000'00000, // 0x20 space
! 285: 0b000'00000,
! 286: 0b000'00000,
! 287: 0b000'00000,
! 288: 0b000'00000,
! 289: 0b000'00000,
! 290: 0b000'00000,
! 291: 0,
! 292:
! 293: 0b000'00100, // 0x21 !
! 294: 0b000'00100,
! 295: 0b000'00100,
! 296: 0b000'00100,
! 297: 0b000'00100,
! 298: 0b000'00000,
! 299: 0b000'00100,
! 300: 0,
! 301:
! 302: 0b000'01010, // 0x22 "
! 303: 0b000'01010,
! 304: 0b000'00000,
! 305: 0b000'00000,
! 306: 0b000'00000,
! 307: 0b000'00000,
! 308: 0b000'00000,
! 309: 0,
! 310:
! 311: 0b000'01010, // 0x23 #
! 312: 0b000'01010,
! 313: 0b000'11111,
! 314: 0b000'01010,
! 315: 0b000'11111,
! 316: 0b000'01010,
! 317: 0b000'01010,
! 318: 0,
! 319:
! 320: 0b000'00100, // 0x24 $
! 321: 0b000'01110,
! 322: 0b000'10100,
! 323: 0b000'01110,
! 324: 0b000'00101,
! 325: 0b000'01110,
! 326: 0b000'00100,
! 327: 0,
! 328:
! 329: 0b000'11000, // 0x25 %
! 330: 0b000'11001,
! 331: 0b000'00010,
! 332: 0b000'00100,
! 333: 0b000'01011,
! 334: 0b000'10011,
! 335: 0b000'00000,
! 336: 0,
! 337:
! 338: 0b000'01100, // 0x26 &
! 339: 0b000'10010,
! 340: 0b000'10100,
! 341: 0b000'01000,
! 342: 0b000'10100,
! 343: 0b000'10010,
! 344: 0b000'01101,
! 345: 0,
! 346:
! 347: 0b000'01100, // 0x27 '
! 348: 0b000'00100,
! 349: 0b000'01000,
! 350: 0b000'00000,
! 351: 0b000'00000,
! 352: 0b000'00000,
! 353: 0b000'00000,
! 354: 0,
! 355:
! 356: 0b000'00010, // 0x28 (
! 357: 0b000'00100,
! 358: 0b000'01000,
! 359: 0b000'01000,
! 360: 0b000'01000,
! 361: 0b000'00100,
! 362: 0b000'00010,
! 363: 0,
! 364:
! 365: 0b000'01000, // 0x29 )
! 366: 0b000'00100,
! 367: 0b000'00010,
! 368: 0b000'00010,
! 369: 0b000'00010,
! 370: 0b000'00100,
! 371: 0b000'01000,
! 372: 0,
! 373:
! 374: 0b000'00000, // 0x2a *
! 375: 0b000'00100,
! 376: 0b000'10101,
! 377: 0b000'01110,
! 378: 0b000'10101,
! 379: 0b000'00100,
! 380: 0b000'00000,
! 381: 0,
! 382:
! 383: 0b000'00000, // 0x2b +
! 384: 0b000'00100,
! 385: 0b000'00100,
! 386: 0b000'11111,
! 387: 0b000'00100,
! 388: 0b000'00100,
! 389: 0b000'00000,
! 390: 0,
! 391:
! 392: 0b000'00000, // 0x2c ,
! 393: 0b000'00000,
! 394: 0b000'00000,
! 395: 0b000'00000,
! 396: 0b000'01100,
! 397: 0b000'00100,
! 398: 0b000'01000,
! 399: 0,
! 400:
! 401: 0b000'00000, // 0x2d -
! 402: 0b000'00000,
! 403: 0b000'00000,
! 404: 0b000'11111,
! 405: 0b000'00000,
! 406: 0b000'00000,
! 407: 0b000'00000,
! 408: 0,
! 409:
! 410: 0b000'00000, // 0x2e .
! 411: 0b000'00000,
! 412: 0b000'00000,
! 413: 0b000'00000,
! 414: 0b000'00000,
! 415: 0b000'01100,
! 416: 0b000'01100,
! 417: 0,
! 418:
! 419: 0b000'00000, // 0x2f /
! 420: 0b000'00001,
! 421: 0b000'00010,
! 422: 0b000'00100,
! 423: 0b000'01000,
! 424: 0b000'10000,
! 425: 0b000'00000,
! 426: 0,
! 427:
! 428: 0b000'01110, // 0x30 0
! 429: 0b000'10001,
! 430: 0b000'10011,
! 431: 0b000'10101,
! 432: 0b000'11001,
! 433: 0b000'10001,
! 434: 0b000'01110,
! 435: 0,
! 436:
! 437: 0b000'00100, // 0x31 1
! 438: 0b000'01100,
! 439: 0b000'00100,
! 440: 0b000'00100,
! 441: 0b000'00100,
! 442: 0b000'00100,
! 443: 0b000'01110,
! 444: 0,
! 445:
! 446: 0b000'01110, // 0x32 2
! 447: 0b000'10001,
! 448: 0b000'10001,
! 449: 0b000'00010,
! 450: 0b000'00100,
! 451: 0b000'01000,
! 452: 0b000'11111,
! 453: 0,
! 454:
! 455: 0b000'11111, // 0x33 3
! 456: 0b000'00010,
! 457: 0b000'00100,
! 458: 0b000'01110,
! 459: 0b000'00001,
! 460: 0b000'10001,
! 461: 0b000'01110,
! 462: 0,
! 463:
! 464: 0b000'00010, // 0x34 4
! 465: 0b000'00110,
! 466: 0b000'01010,
! 467: 0b000'10010,
! 468: 0b000'11111,
! 469: 0b000'00010,
! 470: 0b000'00010,
! 471: 0,
! 472:
! 473: 0b000'11111, // 0x35 5
! 474: 0b000'10000,
! 475: 0b000'10000,
! 476: 0b000'11110,
! 477: 0b000'00001,
! 478: 0b000'10001,
! 479: 0b000'01110,
! 480: 0,
! 481:
! 482: 0b000'00110, // 0x36 6
! 483: 0b000'01000,
! 484: 0b000'10000,
! 485: 0b000'11110,
! 486: 0b000'10001,
! 487: 0b000'10001,
! 488: 0b000'01110,
! 489: 0,
! 490:
! 491: 0b000'11111, // 0x37 7
! 492: 0b000'00001,
! 493: 0b000'00010,
! 494: 0b000'00100,
! 495: 0b000'00100,
! 496: 0b000'00100,
! 497: 0b000'00100,
! 498: 0,
! 499:
! 500: 0b000'01110, // 0x38 8
! 501: 0b000'10001,
! 502: 0b000'10001,
! 503: 0b000'01110,
! 504: 0b000'10001,
! 505: 0b000'10001,
! 506: 0b000'01110,
! 507: 0,
! 508:
! 509: 0b000'01110, // 0x39 9
! 510: 0b000'10001,
! 511: 0b000'10001,
! 512: 0b000'01111,
! 513: 0b000'00001,
! 514: 0b000'00010,
! 515: 0b000'01100,
! 516: 0,
! 517:
! 518: 0b000'00000, // 0x3a :
! 519: 0b000'01100,
! 520: 0b000'01100,
! 521: 0b000'00000,
! 522: 0b000'01100,
! 523: 0b000'01100,
! 524: 0b000'00000,
! 525: 0,
! 526:
! 527: 0b000'00000, // 0x3b ;
! 528: 0b000'01100,
! 529: 0b000'01100,
! 530: 0b000'00000,
! 531: 0b000'01100,
! 532: 0b000'00100,
! 533: 0b000'01000,
! 534: 0,
! 535:
! 536: 0b000'00010, // 0x3c <
! 537: 0b000'00100,
! 538: 0b000'01000,
! 539: 0b000'10000,
! 540: 0b000'01000,
! 541: 0b000'00100,
! 542: 0b000'00010,
! 543: 0,
! 544:
! 545: 0b000'00000, // 0x3d =
! 546: 0b000'00000,
! 547: 0b000'11111,
! 548: 0b000'00000,
! 549: 0b000'11111,
! 550: 0b000'00000,
! 551: 0b000'00000,
! 552: 0,
! 553:
! 554: 0b000'01000, // 0x3e >
! 555: 0b000'00100,
! 556: 0b000'00010,
! 557: 0b000'00001,
! 558: 0b000'00010,
! 559: 0b000'00100,
! 560: 0b000'01000,
! 561: 0,
! 562:
! 563: 0b000'01110, // 0x3f ?
! 564: 0b000'10001,
! 565: 0b000'00001,
! 566: 0b000'00010,
! 567: 0b000'00100,
! 568: 0b000'00000,
! 569: 0b000'00100,
! 570: 0,
! 571:
! 572: 0b000'01110, // 0x40 @
! 573: 0b000'10001,
! 574: 0b000'00001,
! 575: 0b000'01101,
! 576: 0b000'10101,
! 577: 0b000'10101,
! 578: 0b000'01110,
! 579: 0,
! 580:
! 581: 0b000'01110, // 0x41 A
! 582: 0b000'10001,
! 583: 0b000'10001,
! 584: 0b000'10001,
! 585: 0b000'11111,
! 586: 0b000'10001,
! 587: 0b000'10001,
! 588: 0,
! 589:
! 590: 0b000'11110, // 0x42 B
! 591: 0b000'10001,
! 592: 0b000'10001,
! 593: 0b000'11110,
! 594: 0b000'10001,
! 595: 0b000'10001,
! 596: 0b000'11110,
! 597: 0,
! 598:
! 599: 0b000'01110, // 0x43 C
! 600: 0b000'10001,
! 601: 0b000'10000,
! 602: 0b000'10000,
! 603: 0b000'10000,
! 604: 0b000'10001,
! 605: 0b000'01110,
! 606: 0,
! 607:
! 608: 0b000'11100, // 0x44 D
! 609: 0b000'10010,
! 610: 0b000'10001,
! 611: 0b000'10001,
! 612: 0b000'10001,
! 613: 0b000'10010,
! 614: 0b000'11100,
! 615: 0,
! 616:
! 617: 0b000'11111, // 0x45 E
! 618: 0b000'10000,
! 619: 0b000'10000,
! 620: 0b000'11110,
! 621: 0b000'10000,
! 622: 0b000'10000,
! 623: 0b000'11111,
! 624: 0,
! 625:
! 626: 0b000'11111, // 0x46 F
! 627: 0b000'10000,
! 628: 0b000'10000,
! 629: 0b000'11110,
! 630: 0b000'10000,
! 631: 0b000'10000,
! 632: 0b000'10000,
! 633: 0,
! 634:
! 635: 0b000'01110, // 0x47 G
! 636: 0b000'10001,
! 637: 0b000'10000,
! 638: 0b000'10011,
! 639: 0b000'10001,
! 640: 0b000'10001,
! 641: 0b000'01110,
! 642: 0,
! 643:
! 644: 0b000'10001, // 0x48 H
! 645: 0b000'10001,
! 646: 0b000'10001,
! 647: 0b000'11111,
! 648: 0b000'10001,
! 649: 0b000'10001,
! 650: 0b000'10001,
! 651: 0,
! 652:
! 653: 0b000'01110, // 0x49 I
! 654: 0b000'00100,
! 655: 0b000'00100,
! 656: 0b000'00100,
! 657: 0b000'00100,
! 658: 0b000'00100,
! 659: 0b000'01110,
! 660: 0,
! 661:
! 662: 0b000'00111, // 0x4a J
! 663: 0b000'00010,
! 664: 0b000'00010,
! 665: 0b000'00010,
! 666: 0b000'10010,
! 667: 0b000'10010,
! 668: 0b000'01100,
! 669: 0,
! 670:
! 671: 0b000'10001, // 0x4b K
! 672: 0b000'10010,
! 673: 0b000'10100,
! 674: 0b000'11000,
! 675: 0b000'10100,
! 676: 0b000'10010,
! 677: 0b000'10001,
! 678: 0,
! 679:
! 680: 0b000'10000, // 0x4c L
! 681: 0b000'10000,
! 682: 0b000'10000,
! 683: 0b000'10000,
! 684: 0b000'10000,
! 685: 0b000'10000,
! 686: 0b000'11111,
! 687: 0,
! 688:
! 689: 0b000'10001, // 0x4d M
! 690: 0b000'11011,
! 691: 0b000'10101,
! 692: 0b000'10101,
! 693: 0b000'10001,
! 694: 0b000'10001,
! 695: 0b000'10001,
! 696: 0,
! 697:
! 698: 0b000'10001, // 0x4e N
! 699: 0b000'10001,
! 700: 0b000'11001,
! 701: 0b000'10101,
! 702: 0b000'10011,
! 703: 0b000'10001,
! 704: 0b000'10001,
! 705: 0,
! 706:
! 707: 0b000'01110, // 0x4f O
! 708: 0b000'10001,
! 709: 0b000'10001,
! 710: 0b000'10001,
! 711: 0b000'10001,
! 712: 0b000'10001,
! 713: 0b000'01110,
! 714: 0,
! 715:
! 716: 0b000'11110, // 0x50 P
! 717: 0b000'10001,
! 718: 0b000'10001,
! 719: 0b000'11110,
! 720: 0b000'10000,
! 721: 0b000'10000,
! 722: 0b000'10000,
! 723: 0,
! 724:
! 725: 0b000'01110, // 0x51 Q
! 726: 0b000'10001,
! 727: 0b000'10001,
! 728: 0b000'10001,
! 729: 0b000'10101,
! 730: 0b000'10010,
! 731: 0b000'01101,
! 732: 0,
! 733:
! 734: 0b000'11110, // 0x52 R
! 735: 0b000'10001,
! 736: 0b000'10001,
! 737: 0b000'11110,
! 738: 0b000'10100,
! 739: 0b000'10010,
! 740: 0b000'10001,
! 741: 0,
! 742:
! 743: 0b000'01111, // 0x53 S
! 744: 0b000'10000,
! 745: 0b000'10000,
! 746: 0b000'01110,
! 747: 0b000'00001,
! 748: 0b000'00001,
! 749: 0b000'11110,
! 750: 0,
! 751:
! 752: 0b000'11111, // 0x54 T
! 753: 0b000'00100,
! 754: 0b000'00100,
! 755: 0b000'00100,
! 756: 0b000'00100,
! 757: 0b000'00100,
! 758: 0b000'00100,
! 759: 0,
! 760:
! 761: 0b000'10001, // 0x55 U
! 762: 0b000'10001,
! 763: 0b000'10001,
! 764: 0b000'10001,
! 765: 0b000'10001,
! 766: 0b000'10001,
! 767: 0b000'01110,
! 768: 0,
! 769:
! 770: 0b000'10001, // 0x56 V
! 771: 0b000'10001,
! 772: 0b000'10001,
! 773: 0b000'10001,
! 774: 0b000'10001,
! 775: 0b000'01010,
! 776: 0b000'00100,
! 777: 0,
! 778:
! 779: 0b000'10001, // 0x57 W
! 780: 0b000'10001,
! 781: 0b000'10001,
! 782: 0b000'10001,
! 783: 0b000'10101,
! 784: 0b000'10101,
! 785: 0b000'01010,
! 786: 0,
! 787:
! 788: 0b000'10001, // 0x58 X
! 789: 0b000'10001,
! 790: 0b000'01010,
! 791: 0b000'00100,
! 792: 0b000'01010,
! 793: 0b000'10001,
! 794: 0b000'10001,
! 795: 0,
! 796:
! 797: 0b000'10001, // 0x59 Y
! 798: 0b000'10001,
! 799: 0b000'10001,
! 800: 0b000'01010,
! 801: 0b000'00100,
! 802: 0b000'00100,
! 803: 0b000'00100,
! 804: 0,
! 805:
! 806: 0b000'11111, // 0x5a Z
! 807: 0b000'00001,
! 808: 0b000'00010,
! 809: 0b000'00100,
! 810: 0b000'01000,
! 811: 0b000'10000,
! 812: 0b000'11111,
! 813: 0,
! 814:
! 815: 0b000'01110, // 0x5b [
! 816: 0b000'01000,
! 817: 0b000'01000,
! 818: 0b000'01000,
! 819: 0b000'01000,
! 820: 0b000'01000,
! 821: 0b000'01110,
! 822: 0,
! 823:
! 824: 0b000'10001, // 0x5c ¥
! 825: 0b000'01010,
! 826: 0b000'11111,
! 827: 0b000'00100,
! 828: 0b000'11111,
! 829: 0b000'00100,
! 830: 0b000'00100,
! 831: 0,
! 832:
! 833: 0b000'01110, // 0x5d ]
! 834: 0b000'00010,
! 835: 0b000'00010,
! 836: 0b000'00010,
! 837: 0b000'00010,
! 838: 0b000'00010,
! 839: 0b000'01110,
! 840: 0,
! 841:
! 842: 0b000'00100, // 0x5e ^
! 843: 0b000'01010,
! 844: 0b000'10001,
! 845: 0b000'00000,
! 846: 0b000'00000,
! 847: 0b000'00000,
! 848: 0b000'00000,
! 849: 0,
! 850:
! 851: 0b000'00000, // 0x5f _
! 852: 0b000'00000,
! 853: 0b000'00000,
! 854: 0b000'00000,
! 855: 0b000'00000,
! 856: 0b000'00000,
! 857: 0b000'11111,
! 858: 0,
! 859:
! 860: 0b000'01000, // 0x60 `
! 861: 0b000'00100,
! 862: 0b000'00010,
! 863: 0b000'00000,
! 864: 0b000'00000,
! 865: 0b000'00000,
! 866: 0b000'00000,
! 867: 0,
! 868:
! 869: 0b000'00000, // 0x61 a
! 870: 0b000'00000,
! 871: 0b000'01110,
! 872: 0b000'00001,
! 873: 0b000'01111,
! 874: 0b000'10001,
! 875: 0b000'01111,
! 876: 0,
! 877:
! 878: 0b000'10000, // 0x62 b
! 879: 0b000'10000,
! 880: 0b000'10110,
! 881: 0b000'11001,
! 882: 0b000'10001,
! 883: 0b000'10001,
! 884: 0b000'11110,
! 885: 0,
! 886:
! 887: 0b000'00000, // 0x63 c
! 888: 0b000'00000,
! 889: 0b000'01110,
! 890: 0b000'10001,
! 891: 0b000'10000,
! 892: 0b000'10001,
! 893: 0b000'01110,
! 894: 0,
! 895:
! 896: 0b000'00001, // 0x64 d
! 897: 0b000'00001,
! 898: 0b000'01101,
! 899: 0b000'10011,
! 900: 0b000'10001,
! 901: 0b000'10001,
! 902: 0b000'01111,
! 903: 0,
! 904:
! 905: 0b000'00000, // 0x65 e
! 906: 0b000'00000,
! 907: 0b000'01110,
! 908: 0b000'10001,
! 909: 0b000'11111,
! 910: 0b000'10000,
! 911: 0b000'01110,
! 912: 0,
! 913:
! 914: 0b000'00011, // 0x66 f
! 915: 0b000'00100,
! 916: 0b000'01110,
! 917: 0b000'00100,
! 918: 0b000'00100,
! 919: 0b000'00100,
! 920: 0b000'00100,
! 921: 0,
! 922:
! 923: 0b000'00000, // 0x67 g
! 924: 0b000'00000,
! 925: 0b000'01111,
! 926: 0b000'10001,
! 927: 0b000'01111,
! 928: 0b000'00001,
! 929: 0b000'01110,
! 930: 0,
! 931:
! 932: 0b000'10000, // 0x68 h
! 933: 0b000'10000,
! 934: 0b000'10110,
! 935: 0b000'11001,
! 936: 0b000'10001,
! 937: 0b000'10001,
! 938: 0b000'10001,
! 939: 0,
! 940:
! 941: 0b000'00100, // 0x69 i
! 942: 0b000'00000,
! 943: 0b000'01100,
! 944: 0b000'00100,
! 945: 0b000'00100,
! 946: 0b000'00100,
! 947: 0b000'01110,
! 948: 0,
! 949:
! 950: 0b000'00010, // 0x6a j
! 951: 0b000'00000,
! 952: 0b000'00110,
! 953: 0b000'00010,
! 954: 0b000'00010,
! 955: 0b000'10010,
! 956: 0b000'01100,
! 957: 0,
! 958:
! 959: 0b000'10000, // 0x6b k
! 960: 0b000'10000,
! 961: 0b000'10010,
! 962: 0b000'10100,
! 963: 0b000'11000,
! 964: 0b000'10100,
! 965: 0b000'10010,
! 966: 0,
! 967:
! 968: 0b000'01100, // 0x6c l
! 969: 0b000'00100,
! 970: 0b000'00100,
! 971: 0b000'00100,
! 972: 0b000'00100,
! 973: 0b000'00100,
! 974: 0b000'01110,
! 975: 0,
! 976:
! 977: 0b000'00000, // 0x6d m
! 978: 0b000'00000,
! 979: 0b000'11010,
! 980: 0b000'10101,
! 981: 0b000'10101,
! 982: 0b000'10001,
! 983: 0b000'10001,
! 984: 0,
! 985:
! 986: 0b000'00000, // 0x6e n
! 987: 0b000'00000,
! 988: 0b000'10110,
! 989: 0b000'11001,
! 990: 0b000'10001,
! 991: 0b000'10001,
! 992: 0b000'10001,
! 993: 0,
! 994:
! 995: 0b000'00000, // 0x6f o
! 996: 0b000'00000,
! 997: 0b000'01110,
! 998: 0b000'10001,
! 999: 0b000'10001,
! 1000: 0b000'10001,
! 1001: 0b000'01110,
! 1002: 0,
! 1003:
! 1004: 0b000'00000, // 0x70 p
! 1005: 0b000'00000,
! 1006: 0b000'11110,
! 1007: 0b000'10001,
! 1008: 0b000'11110,
! 1009: 0b000'10000,
! 1010: 0b000'10000,
! 1011: 0,
! 1012:
! 1013: 0b000'00000, // 0x71 q
! 1014: 0b000'00000,
! 1015: 0b000'01111,
! 1016: 0b000'10001,
! 1017: 0b000'01111,
! 1018: 0b000'00001,
! 1019: 0b000'00001,
! 1020: 0,
! 1021:
! 1022: 0b000'00000, // 0x72 r
! 1023: 0b000'00000,
! 1024: 0b000'10110,
! 1025: 0b000'11001,
! 1026: 0b000'10000,
! 1027: 0b000'10000,
! 1028: 0b000'10000,
! 1029: 0,
! 1030:
! 1031: 0b000'00000, // 0x73 s
! 1032: 0b000'00000,
! 1033: 0b000'01110,
! 1034: 0b000'10000,
! 1035: 0b000'01110,
! 1036: 0b000'00001,
! 1037: 0b000'11110,
! 1038: 0,
! 1039:
! 1040: 0b000'00000, // 0x74 t
! 1041: 0b000'01000,
! 1042: 0b000'11110,
! 1043: 0b000'01000,
! 1044: 0b000'01000,
! 1045: 0b000'01000,
! 1046: 0b000'00110,
! 1047: 0,
! 1048:
! 1049: 0b000'00000, // 0x75 u
! 1050: 0b000'00000,
! 1051: 0b000'10001,
! 1052: 0b000'10001,
! 1053: 0b000'10001,
! 1054: 0b000'10011,
! 1055: 0b000'01101,
! 1056: 0,
! 1057:
! 1058: 0b000'00000, // 0x76 v
! 1059: 0b000'00000,
! 1060: 0b000'10001,
! 1061: 0b000'10001,
! 1062: 0b000'10001,
! 1063: 0b000'01010,
! 1064: 0b000'00100,
! 1065: 0,
! 1066:
! 1067: 0b000'00000, // 0x77 w
! 1068: 0b000'00000,
! 1069: 0b000'10001,
! 1070: 0b000'10001,
! 1071: 0b000'10101,
! 1072: 0b000'10101,
! 1073: 0b000'01010,
! 1074: 0,
! 1075:
! 1076: 0b000'00000, // 0x78 x
! 1077: 0b000'00000,
! 1078: 0b000'10001,
! 1079: 0b000'01010,
! 1080: 0b000'00100,
! 1081: 0b000'01010,
! 1082: 0b000'10001,
! 1083: 0,
! 1084:
! 1085: 0b000'00000, // 0x79 y
! 1086: 0b000'00000,
! 1087: 0b000'10001,
! 1088: 0b000'10001,
! 1089: 0b000'01111,
! 1090: 0b000'00001,
! 1091: 0b000'01110,
! 1092: 0,
! 1093:
! 1094: 0b000'00000, // 0x7a z
! 1095: 0b000'00000,
! 1096: 0b000'11111,
! 1097: 0b000'00010,
! 1098: 0b000'00100,
! 1099: 0b000'01000,
! 1100: 0b000'11111,
! 1101: 0,
! 1102:
! 1103: 0b000'00010, // 0x7b {
! 1104: 0b000'00100,
! 1105: 0b000'00100,
! 1106: 0b000'01000,
! 1107: 0b000'00100,
! 1108: 0b000'00100,
! 1109: 0b000'00010,
! 1110: 0,
! 1111:
! 1112: 0b000'00100, // 0x7c |
! 1113: 0b000'00100,
! 1114: 0b000'00100,
! 1115: 0b000'00100,
! 1116: 0b000'00100,
! 1117: 0b000'00100,
! 1118: 0b000'00100,
! 1119: 0,
! 1120:
! 1121: 0b000'01000, // 0x7d }
! 1122: 0b000'00100,
! 1123: 0b000'00100,
! 1124: 0b000'00010,
! 1125: 0b000'00100,
! 1126: 0b000'00100,
! 1127: 0b000'01000,
! 1128: 0,
! 1129:
! 1130: 0b000'00000, // 0x7e →
! 1131: 0b000'00100,
! 1132: 0b000'00010,
! 1133: 0b000'11111,
! 1134: 0b000'00010,
! 1135: 0b000'00100,
! 1136: 0b000'00000,
! 1137: 0,
! 1138:
! 1139: 0b000'00000, // 0x7f ←
! 1140: 0b000'00100,
! 1141: 0b000'01000,
! 1142: 0b000'11111,
! 1143: 0b000'01000,
! 1144: 0b000'00100,
! 1145: 0b000'00000,
! 1146: 0,
! 1147:
! 1148:
! 1149: 0b000'00000, // 0xa0 space
! 1150: 0b000'00000,
! 1151: 0b000'00000,
! 1152: 0b000'00000,
! 1153: 0b000'00000,
! 1154: 0b000'00000,
! 1155: 0b000'00000,
! 1156: 0,
! 1157:
! 1158: 0b000'00000, // 0xa1 。
! 1159: 0b000'00000,
! 1160: 0b000'00000,
! 1161: 0b000'00000,
! 1162: 0b000'11100,
! 1163: 0b000'10100,
! 1164: 0b000'11100,
! 1165: 0,
! 1166:
! 1167: 0b000'00111, // 0xa2 「
! 1168: 0b000'00100,
! 1169: 0b000'00100,
! 1170: 0b000'00100,
! 1171: 0b000'00000,
! 1172: 0b000'00000,
! 1173: 0b000'00000,
! 1174: 0,
! 1175:
! 1176: 0b000'00000, // 0xa3 」
! 1177: 0b000'00000,
! 1178: 0b000'00000,
! 1179: 0b000'00100,
! 1180: 0b000'00100,
! 1181: 0b000'00100,
! 1182: 0b000'11100,
! 1183: 0,
! 1184:
! 1185: 0b000'00000, // 0xa4 、
! 1186: 0b000'00000,
! 1187: 0b000'00000,
! 1188: 0b000'00000,
! 1189: 0b000'10000,
! 1190: 0b000'01000,
! 1191: 0b000'00100,
! 1192: 0,
! 1193:
! 1194: 0b000'00000, // 0xa5 ・
! 1195: 0b000'00000,
! 1196: 0b000'00000,
! 1197: 0b000'01100,
! 1198: 0b000'01100,
! 1199: 0b000'00000,
! 1200: 0b000'00000,
! 1201: 0,
! 1202:
! 1203: 0b000'00000, // 0xa6 ヲ
! 1204: 0b000'11111,
! 1205: 0b000'00001,
! 1206: 0b000'01111,
! 1207: 0b000'00001,
! 1208: 0b000'00010,
! 1209: 0b000'01100,
! 1210: 0,
! 1211:
! 1212: 0b000'00000, // 0xa7 ァ
! 1213: 0b000'00000,
! 1214: 0b000'11111,
! 1215: 0b000'00001,
! 1216: 0b000'00110,
! 1217: 0b000'00100,
! 1218: 0b000'01000,
! 1219: 0,
! 1220:
! 1221: 0b000'00000, // 0xa8 ィ
! 1222: 0b000'00000,
! 1223: 0b000'00010,
! 1224: 0b000'00100,
! 1225: 0b000'01100,
! 1226: 0b000'10100,
! 1227: 0b000'00100,
! 1228: 0,
! 1229:
! 1230: 0b000'00000, // 0xa9 ゥ
! 1231: 0b000'00000,
! 1232: 0b000'00100,
! 1233: 0b000'11111,
! 1234: 0b000'10001,
! 1235: 0b000'00001,
! 1236: 0b000'00110,
! 1237: 0,
! 1238:
! 1239: 0b000'00000, // 0xaa ェ
! 1240: 0b000'00000,
! 1241: 0b000'11111,
! 1242: 0b000'00100,
! 1243: 0b000'00100,
! 1244: 0b000'00100,
! 1245: 0b000'11111,
! 1246: 0,
! 1247:
! 1248: 0b000'00000, // 0xab ォ
! 1249: 0b000'00000,
! 1250: 0b000'00010,
! 1251: 0b000'11111,
! 1252: 0b000'00110,
! 1253: 0b000'01010,
! 1254: 0b000'10010,
! 1255: 0,
! 1256:
! 1257: 0b000'00000, // 0xac ャ
! 1258: 0b000'00000,
! 1259: 0b000'01000,
! 1260: 0b000'11111,
! 1261: 0b000'01001,
! 1262: 0b000'01010,
! 1263: 0b000'01000,
! 1264: 0,
! 1265:
! 1266: 0b000'00000, // 0xad ュ
! 1267: 0b000'00000,
! 1268: 0b000'00000,
! 1269: 0b000'11110,
! 1270: 0b000'00010,
! 1271: 0b000'00010,
! 1272: 0b000'11111,
! 1273: 0,
! 1274:
! 1275: 0b000'00000, // 0xae ョ
! 1276: 0b000'00000,
! 1277: 0b000'11111,
! 1278: 0b000'00001,
! 1279: 0b000'11111,
! 1280: 0b000'00001,
! 1281: 0b000'11111,
! 1282: 0,
! 1283:
! 1284: 0b000'00000, // 0xaf ッ
! 1285: 0b000'00000,
! 1286: 0b000'10101,
! 1287: 0b000'10101,
! 1288: 0b000'00001,
! 1289: 0b000'00001,
! 1290: 0b000'00110,
! 1291: 0,
! 1292:
! 1293: 0b000'00000, // 0xb0 ー
! 1294: 0b000'00000,
! 1295: 0b000'10000,
! 1296: 0b000'01111,
! 1297: 0b000'00000,
! 1298: 0b000'00000,
! 1299: 0b000'00000,
! 1300: 0,
! 1301:
! 1302: 0b000'00000, // 0xb1 ア
! 1303: 0b000'11111,
! 1304: 0b000'00001,
! 1305: 0b000'00101,
! 1306: 0b000'00110,
! 1307: 0b000'00100,
! 1308: 0b000'01000,
! 1309: 0,
! 1310:
! 1311: 0b000'00001, // 0xb2 イ
! 1312: 0b000'00010,
! 1313: 0b000'00100,
! 1314: 0b000'01100,
! 1315: 0b000'10100,
! 1316: 0b000'00100,
! 1317: 0b000'00100,
! 1318: 0,
! 1319:
! 1320: 0b000'00100, // 0xb3 ウ
! 1321: 0b000'11111,
! 1322: 0b000'10001,
! 1323: 0b000'10001,
! 1324: 0b000'00001,
! 1325: 0b000'00010,
! 1326: 0b000'00100,
! 1327: 0,
! 1328:
! 1329: 0b000'00000, // 0xb4 エ
! 1330: 0b000'11111,
! 1331: 0b000'00100,
! 1332: 0b000'00100,
! 1333: 0b000'00100,
! 1334: 0b000'00100,
! 1335: 0b000'11111,
! 1336: 0,
! 1337:
! 1338: 0b000'00010, // 0xb5 オ
! 1339: 0b000'11111,
! 1340: 0b000'00010,
! 1341: 0b000'00110,
! 1342: 0b000'01010,
! 1343: 0b000'10010,
! 1344: 0b000'00010,
! 1345: 0,
! 1346:
! 1347: 0b000'01000, // 0xb6 カ
! 1348: 0b000'11111,
! 1349: 0b000'01001,
! 1350: 0b000'01001,
! 1351: 0b000'01001,
! 1352: 0b000'01001,
! 1353: 0b000'10010,
! 1354: 0,
! 1355:
! 1356: 0b000'00100, // 0xb7 キ
! 1357: 0b000'11111,
! 1358: 0b000'00100,
! 1359: 0b000'11111,
! 1360: 0b000'00100,
! 1361: 0b000'00100,
! 1362: 0b000'00100,
! 1363: 0,
! 1364:
! 1365: 0b000'00000, // 0xb8 ク
! 1366: 0b000'01111,
! 1367: 0b000'01001,
! 1368: 0b000'10001,
! 1369: 0b000'00001,
! 1370: 0b000'00010,
! 1371: 0b000'01100,
! 1372: 0,
! 1373:
! 1374: 0b000'01000, // 0xb9 ケ
! 1375: 0b000'01111,
! 1376: 0b000'10010,
! 1377: 0b000'00010,
! 1378: 0b000'00010,
! 1379: 0b000'00010,
! 1380: 0b000'00100,
! 1381: 0,
! 1382:
! 1383: 0b000'00000, // 0xba コ
! 1384: 0b000'11111,
! 1385: 0b000'00001,
! 1386: 0b000'00001,
! 1387: 0b000'00001,
! 1388: 0b000'00001,
! 1389: 0b000'11111,
! 1390: 0,
! 1391:
! 1392: 0b000'01010, // 0xbb サ
! 1393: 0b000'11111,
! 1394: 0b000'01010,
! 1395: 0b000'01010,
! 1396: 0b000'00010,
! 1397: 0b000'00100,
! 1398: 0b000'01000,
! 1399: 0,
! 1400:
! 1401: 0b000'00000, // 0xbc シ
! 1402: 0b000'11001,
! 1403: 0b000'00001,
! 1404: 0b000'11001,
! 1405: 0b000'00001,
! 1406: 0b000'00010,
! 1407: 0b000'11100,
! 1408: 0,
! 1409:
! 1410: 0b000'00000, // 0xbd ス
! 1411: 0b000'11111,
! 1412: 0b000'00001,
! 1413: 0b000'00010,
! 1414: 0b000'00100,
! 1415: 0b000'01010,
! 1416: 0b000'10001,
! 1417: 0,
! 1418:
! 1419: 0b000'01000, // 0xbe セ
! 1420: 0b000'11111,
! 1421: 0b000'01001,
! 1422: 0b000'01001,
! 1423: 0b000'01010,
! 1424: 0b000'01000,
! 1425: 0b000'00110,
! 1426: 0,
! 1427:
! 1428: 0b000'00000, // 0xbf ソ
! 1429: 0b000'10001,
! 1430: 0b000'10001,
! 1431: 0b000'01001,
! 1432: 0b000'00001,
! 1433: 0b000'00010,
! 1434: 0b000'01100,
! 1435: 0,
! 1436:
! 1437: 0b000'00000, // 0xc0 タ
! 1438: 0b000'01111,
! 1439: 0b000'01001,
! 1440: 0b000'10101,
! 1441: 0b000'00011,
! 1442: 0b000'00010,
! 1443: 0b000'01100,
! 1444: 0,
! 1445:
! 1446: 0b000'00010, // 0xc1 チ
! 1447: 0b000'01100,
! 1448: 0b000'00100,
! 1449: 0b000'11111,
! 1450: 0b000'00100,
! 1451: 0b000'00100,
! 1452: 0b000'01000,
! 1453: 0,
! 1454:
! 1455: 0b000'00000, // 0xc2 ツ
! 1456: 0b000'10101,
! 1457: 0b000'10101,
! 1458: 0b000'10101,
! 1459: 0b000'00001,
! 1460: 0b000'00010,
! 1461: 0b000'00100,
! 1462: 0,
! 1463:
! 1464: 0b000'01110, // 0xc3 テ
! 1465: 0b000'00000,
! 1466: 0b000'11111,
! 1467: 0b000'00100,
! 1468: 0b000'00100,
! 1469: 0b000'00100,
! 1470: 0b000'01000,
! 1471: 0,
! 1472:
! 1473: 0b000'01000, // 0xc4 ト
! 1474: 0b000'01000,
! 1475: 0b000'01000,
! 1476: 0b000'01100,
! 1477: 0b000'01010,
! 1478: 0b000'01000,
! 1479: 0b000'01000,
! 1480: 0,
! 1481:
! 1482: 0b000'00100, // 0xc5 ナ
! 1483: 0b000'00100,
! 1484: 0b000'11111,
! 1485: 0b000'00100,
! 1486: 0b000'00100,
! 1487: 0b000'00100,
! 1488: 0b000'01000,
! 1489: 0,
! 1490:
! 1491: 0b000'00000, // 0xc6 ニ
! 1492: 0b000'01110,
! 1493: 0b000'00000,
! 1494: 0b000'00000,
! 1495: 0b000'00000,
! 1496: 0b000'00000,
! 1497: 0b000'11111,
! 1498: 0,
! 1499:
! 1500: 0b000'00000, // 0xc7 ヌ
! 1501: 0b000'11111,
! 1502: 0b000'00001,
! 1503: 0b000'01010,
! 1504: 0b000'00100,
! 1505: 0b000'01010,
! 1506: 0b000'10001,
! 1507: 0,
! 1508:
! 1509: 0b000'00100, // 0xc8 ネ
! 1510: 0b000'11111,
! 1511: 0b000'00010,
! 1512: 0b000'00100,
! 1513: 0b000'01110,
! 1514: 0b000'10101,
! 1515: 0b000'00100,
! 1516: 0,
! 1517:
! 1518: 0b000'00000, // 0xc9 ノ
! 1519: 0b000'00010,
! 1520: 0b000'00010,
! 1521: 0b000'00010,
! 1522: 0b000'00010,
! 1523: 0b000'00100,
! 1524: 0b000'01000,
! 1525: 0,
! 1526:
! 1527: 0b000'00000, // 0xca ハ
! 1528: 0b000'00100,
! 1529: 0b000'00010,
! 1530: 0b000'10001,
! 1531: 0b000'10001,
! 1532: 0b000'10001,
! 1533: 0b000'10001,
! 1534: 0,
! 1535:
! 1536: 0b000'00000, // 0xcb ヒ
! 1537: 0b000'10000,
! 1538: 0b000'11111,
! 1539: 0b000'10000,
! 1540: 0b000'10000,
! 1541: 0b000'10000,
! 1542: 0b000'01111,
! 1543: 0,
! 1544:
! 1545: 0b000'00000, // 0xcc フ
! 1546: 0b000'11111,
! 1547: 0b000'00001,
! 1548: 0b000'00001,
! 1549: 0b000'00001,
! 1550: 0b000'00010,
! 1551: 0b000'01100,
! 1552: 0,
! 1553:
! 1554: 0b000'00000, // 0xcd ヘ
! 1555: 0b000'01000,
! 1556: 0b000'10100,
! 1557: 0b000'10010,
! 1558: 0b000'00001,
! 1559: 0b000'00001,
! 1560: 0b000'00000,
! 1561: 0,
! 1562:
! 1563: 0b000'00100, // 0xce ホ
! 1564: 0b000'11111,
! 1565: 0b000'00100,
! 1566: 0b000'10101,
! 1567: 0b000'10101,
! 1568: 0b000'10101,
! 1569: 0b000'00100,
! 1570: 0,
! 1571:
! 1572: 0b000'00000, // 0xcf マ
! 1573: 0b000'11111,
! 1574: 0b000'00001,
! 1575: 0b000'00001,
! 1576: 0b000'01010,
! 1577: 0b000'00100,
! 1578: 0b000'00010,
! 1579: 0,
! 1580:
! 1581: 0b000'00000, // 0xd0 ミ
! 1582: 0b000'01110,
! 1583: 0b000'00000,
! 1584: 0b000'01110,
! 1585: 0b000'00000,
! 1586: 0b000'01110,
! 1587: 0b000'00001,
! 1588: 0,
! 1589:
! 1590: 0b000'00000, // 0xd1 ム
! 1591: 0b000'00100,
! 1592: 0b000'00100,
! 1593: 0b000'01000,
! 1594: 0b000'01001,
! 1595: 0b000'10011,
! 1596: 0b000'11101,
! 1597: 0,
! 1598:
! 1599: 0b000'00000, // 0xd2 メ
! 1600: 0b000'00001,
! 1601: 0b000'00001,
! 1602: 0b000'00101,
! 1603: 0b000'00010,
! 1604: 0b000'00101,
! 1605: 0b000'11000,
! 1606: 0,
! 1607:
! 1608: 0b000'00000, // 0xd3 モ
! 1609: 0b000'11111,
! 1610: 0b000'00100,
! 1611: 0b000'11111,
! 1612: 0b000'00100,
! 1613: 0b000'00100,
! 1614: 0b000'00011,
! 1615: 0,
! 1616:
! 1617: 0b000'01000, // 0xd4 ヤ
! 1618: 0b000'01000,
! 1619: 0b000'11111,
! 1620: 0b000'01001,
! 1621: 0b000'01010,
! 1622: 0b000'01000,
! 1623: 0b000'01000,
! 1624: 0,
! 1625:
! 1626: 0b000'00000, // 0xd5 ユ
! 1627: 0b000'01110,
! 1628: 0b000'00010,
! 1629: 0b000'00010,
! 1630: 0b000'00010,
! 1631: 0b000'00010,
! 1632: 0b000'11111,
! 1633: 0,
! 1634:
! 1635: 0b000'00000, // 0xd6 ヨ
! 1636: 0b000'11111,
! 1637: 0b000'00001,
! 1638: 0b000'01111,
! 1639: 0b000'00001,
! 1640: 0b000'00001,
! 1641: 0b000'11111,
! 1642: 0,
! 1643:
! 1644: 0b000'01110, // 0xd7 ラ
! 1645: 0b000'00000,
! 1646: 0b000'11111,
! 1647: 0b000'00001,
! 1648: 0b000'00001,
! 1649: 0b000'00010,
! 1650: 0b000'00100,
! 1651: 0,
! 1652:
! 1653: 0b000'00000, // 0xd8 リ
! 1654: 0b000'10010,
! 1655: 0b000'10010,
! 1656: 0b000'10010,
! 1657: 0b000'00010,
! 1658: 0b000'00100,
! 1659: 0b000'01000,
! 1660: 0,
! 1661:
! 1662: 0b000'00000, // 0xd9 ル
! 1663: 0b000'00100,
! 1664: 0b000'10100,
! 1665: 0b000'10100,
! 1666: 0b000'10101,
! 1667: 0b000'10101,
! 1668: 0b000'00110,
! 1669: 0,
! 1670:
! 1671: 0b000'00000, // 0xda レ
! 1672: 0b000'10000,
! 1673: 0b000'10000,
! 1674: 0b000'10001,
! 1675: 0b000'10010,
! 1676: 0b000'10100,
! 1677: 0b000'11000,
! 1678: 0,
! 1679:
! 1680: 0b000'00000, // 0xdb ロ
! 1681: 0b000'11111,
! 1682: 0b000'10001,
! 1683: 0b000'10001,
! 1684: 0b000'10001,
! 1685: 0b000'10001,
! 1686: 0b000'11111,
! 1687: 0,
! 1688:
! 1689: 0b000'00000, // 0xdc ワ
! 1690: 0b000'11111,
! 1691: 0b000'10001,
! 1692: 0b000'10001,
! 1693: 0b000'00001,
! 1694: 0b000'00010,
! 1695: 0b000'00100,
! 1696: 0,
! 1697:
! 1698: 0b000'00000, // 0xdd ン
! 1699: 0b000'11000,
! 1700: 0b000'00000,
! 1701: 0b000'00001,
! 1702: 0b000'00001,
! 1703: 0b000'00010,
! 1704: 0b000'11100,
! 1705: 0,
! 1706:
! 1707: 0b000'00100, // 0xde ゛
! 1708: 0b000'10010,
! 1709: 0b000'01000,
! 1710: 0b000'00000,
! 1711: 0b000'00000,
! 1712: 0b000'00000,
! 1713: 0b000'00000,
! 1714: 0,
! 1715:
! 1716: 0b000'11100, // 0xdf ゜
! 1717: 0b000'10100,
! 1718: 0b000'11100,
! 1719: 0b000'00000,
! 1720: 0b000'00000,
! 1721: 0b000'00000,
! 1722: 0b000'00000,
! 1723: 0,
! 1724:
! 1725: // ここから実際には 5x10 dot も混ざるが、現在はサポートしていない
! 1726:
! 1727: 0b000'00000, // 0xe0 α
! 1728: 0b000'00000,
! 1729: 0b000'00001,
! 1730: 0b000'01101,
! 1731: 0b000'10010,
! 1732: 0b000'10010,
! 1733: 0b000'01101,
! 1734: 0b000'00000,
! 1735:
! 1736: 0b000'01010, // 0xe1 a‥(Latin Small Letter A with Diaeresis)
! 1737: 0b000'00000,
! 1738: 0b000'01110,
! 1739: 0b000'00001,
! 1740: 0b000'01111,
! 1741: 0b000'10001,
! 1742: 0b000'01111,
! 1743: 0b000'00000,
! 1744:
! 1745: 0b000'00000, // 0xe2 β (10dot)
! 1746: 0b000'00000,
! 1747: 0b000'01110,
! 1748: 0b000'10001,
! 1749: 0b000'11110,
! 1750: 0b000'10001,
! 1751: 0b000'11110,
! 1752: 0b000'10000,
! 1753:
! 1754: 0b000'00000, // 0xe3 ε
! 1755: 0b000'00000,
! 1756: 0b000'01110,
! 1757: 0b000'10000,
! 1758: 0b000'01110,
! 1759: 0b000'10000,
! 1760: 0b000'01110,
! 1761: 0b000'00000,
! 1762:
! 1763: 0b000'00000, // 0xe4 μ (10dot)
! 1764: 0b000'00000,
! 1765: 0b000'10001,
! 1766: 0b000'10001,
! 1767: 0b000'10001,
! 1768: 0b000'10011,
! 1769: 0b000'11101,
! 1770: 0b000'10000,
! 1771:
! 1772: 0b000'00000, // 0xe5 σ
! 1773: 0b000'00000,
! 1774: 0b000'01111,
! 1775: 0b000'10010,
! 1776: 0b000'10001,
! 1777: 0b000'10001,
! 1778: 0b000'01110,
! 1779: 0b000'00000,
! 1780:
! 1781: 0b000'00000, // 0xe6 ρ (10dot)
! 1782: 0b000'00000,
! 1783: 0b000'00000,
! 1784: 0b000'00000,
! 1785: 0b000'00000,
! 1786: 0b000'00000,
! 1787: 0b000'00000,
! 1788: 0b000'00000,
! 1789:
! 1790: 0b000'00000, // 0xe7 g (10dot ver)
! 1791: 0b000'00000,
! 1792: 0b000'01111,
! 1793: 0b000'10001,
! 1794: 0b000'10001,
! 1795: 0b000'10001,
! 1796: 0b000'01111,
! 1797: 0b000'00001,
! 1798:
! 1799: 0b000'00000, // 0xe8 √(?)
! 1800: 0b000'00111,
! 1801: 0b000'00100,
! 1802: 0b000'00100,
! 1803: 0b000'10100,
! 1804: 0b000'01000,
! 1805: 0b000'00000,
! 1806: 0b000'00000,
! 1807:
! 1808: 0b000'00000, // 0xe9 ^(-1) (?)
! 1809: 0b000'00010,
! 1810: 0b000'11010,
! 1811: 0b000'00010,
! 1812: 0b000'00000,
! 1813: 0b000'00000,
! 1814: 0b000'00000,
! 1815: 0b000'00000,
! 1816:
! 1817: 0b000'00010, // 0xea j (10dot ver)
! 1818: 0b000'00000,
! 1819: 0b000'00110,
! 1820: 0b000'00010,
! 1821: 0b000'00010,
! 1822: 0b000'00010,
! 1823: 0b000'00010,
! 1824: 0b000'00010,
! 1825:
! 1826: 0b000'00000, // 0xeb ^x (?)
! 1827: 0b000'00000,
! 1828: 0b000'00000,
! 1829: 0b000'00000,
! 1830: 0b000'00000,
! 1831: 0b000'00000,
! 1832: 0b000'00000,
! 1833: 0b000'00000,
! 1834:
! 1835: 0b000'00000, // 0xec ¢
! 1836: 0b000'00100,
! 1837: 0b000'01110,
! 1838: 0b000'10100,
! 1839: 0b000'10101,
! 1840: 0b000'01110,
! 1841: 0b000'00100,
! 1842: 0b000'00000,
! 1843:
! 1844: 0b000'00000, // 0xed L=(?)
! 1845: 0b000'00000,
! 1846: 0b000'00000,
! 1847: 0b000'00000,
! 1848: 0b000'00000,
! 1849: 0b000'00000,
! 1850: 0b000'00000,
! 1851: 0b000'00000,
! 1852:
! 1853: 0b000'00000, // 0xee n ̄(n マクロン?)
! 1854: 0b000'00000,
! 1855: 0b000'00000,
! 1856: 0b000'00000,
! 1857: 0b000'00000,
! 1858: 0b000'00000,
! 1859: 0b000'00000,
! 1860: 0b000'00000,
! 1861:
! 1862: 0b000'01010, // 0xef o‥(Latin Small Letter O with Diaeresis)
! 1863: 0b000'00000,
! 1864: 0b000'01110,
! 1865: 0b000'10001,
! 1866: 0b000'10001,
! 1867: 0b000'10001,
! 1868: 0b000'01110,
! 1869: 0b000'00000,
! 1870:
! 1871: 0b000'00000, // 0xf0 p (10dot ver)
! 1872: 0b000'00000,
! 1873: 0b000'10110,
! 1874: 0b000'11001,
! 1875: 0b000'10001,
! 1876: 0b000'10001,
! 1877: 0b000'11110,
! 1878: 0b000'10000,
! 1879:
! 1880: 0b000'00000, // 0xf1 q (10dot ver)
! 1881: 0b000'00000,
! 1882: 0b000'01101,
! 1883: 0b000'10011,
! 1884: 0b000'10001,
! 1885: 0b000'10001,
! 1886: 0b000'01111,
! 1887: 0b000'00001,
! 1888:
! 1889: 0b000'01110, // 0xf2 θ(?)
! 1890: 0b000'10001,
! 1891: 0b000'10001,
! 1892: 0b000'11111,
! 1893: 0b000'10001,
! 1894: 0b000'10001,
! 1895: 0b000'01110,
! 1896: 0b000'00000,
! 1897:
! 1898: 0b000'00000, // 0xf3 ∞(?)
! 1899: 0b000'00000,
! 1900: 0b000'01010,
! 1901: 0b000'10101,
! 1902: 0b000'10101,
! 1903: 0b000'01010,
! 1904: 0b000'00000,
! 1905: 0b000'00000,
! 1906:
! 1907: 0b000'00000, // 0xf4 Ω
! 1908: 0b000'01110,
! 1909: 0b000'10001,
! 1910: 0b000'10001,
! 1911: 0b000'10001,
! 1912: 0b000'01010,
! 1913: 0b000'11011,
! 1914: 0b000'00000,
! 1915:
! 1916: 0b000'01010, // 0xf5 u‥(?)
! 1917: 0b000'00000,
! 1918: 0b000'10001,
! 1919: 0b000'10001,
! 1920: 0b000'10001,
! 1921: 0b000'10011,
! 1922: 0b000'01101,
! 1923: 0b000'00000,
! 1924:
! 1925: 0b000'11111, // 0xf6 Σ
! 1926: 0b000'01000,
! 1927: 0b000'00100,
! 1928: 0b000'00010,
! 1929: 0b000'00100,
! 1930: 0b000'01000,
! 1931: 0b000'11111,
! 1932: 0b000'00000,
! 1933:
! 1934: 0b000'00000, // 0xf7 π
! 1935: 0b000'00000,
! 1936: 0b000'11111,
! 1937: 0b000'01010,
! 1938: 0b000'01010,
! 1939: 0b000'01010,
! 1940: 0b000'10011,
! 1941: 0b000'00000,
! 1942:
! 1943: 0b000'11111, // 0xf8 x ̄(?)
! 1944: 0b000'00000,
! 1945: 0b000'10001,
! 1946: 0b000'01010,
! 1947: 0b000'00100,
! 1948: 0b000'01010,
! 1949: 0b000'10001,
! 1950: 0b000'00000,
! 1951:
! 1952: 0b000'00000, // 0xf9 y (10dot ver)
! 1953: 0b000'00000,
! 1954: 0b000'10001,
! 1955: 0b000'10001,
! 1956: 0b000'10001,
! 1957: 0b000'10001,
! 1958: 0b000'01111,
! 1959: 0b000'00001,
! 1960:
! 1961: 0b000'00000, // 0xfa 千
! 1962: 0b000'00001,
! 1963: 0b000'01110,
! 1964: 0b000'00100,
! 1965: 0b000'11111,
! 1966: 0b000'00100,
! 1967: 0b000'00100,
! 1968: 0b000'00000,
! 1969:
! 1970: 0b000'00000, // 0xfb 万
! 1971: 0b000'11111,
! 1972: 0b000'01000,
! 1973: 0b000'01111,
! 1974: 0b000'01001,
! 1975: 0b000'01001,
! 1976: 0b000'10001,
! 1977: 0b000'00000,
! 1978:
! 1979: 0b000'00000, // 0xfc 円
! 1980: 0b000'11111,
! 1981: 0b000'10101,
! 1982: 0b000'10101,
! 1983: 0b000'11111,
! 1984: 0b000'10001,
! 1985: 0b000'10001,
! 1986: 0b000'00000,
! 1987:
! 1988: 0b000'00000, // 0xfd ÷
! 1989: 0b000'00000,
! 1990: 0b000'00100,
! 1991: 0b000'00000,
! 1992: 0b000'11111,
! 1993: 0b000'00000,
! 1994: 0b000'00100,
! 1995: 0b000'00000,
! 1996:
! 1997: 0b000'00000, // 0xfe space
! 1998: 0b000'00000,
! 1999: 0b000'00000,
! 2000: 0b000'00000,
! 2001: 0b000'00000,
! 2002: 0b000'00000,
! 2003: 0b000'00000,
! 2004: 0b000'00000,
! 2005:
! 2006: 0b000'11111, // 0xff cursor
! 2007: 0b000'11111,
! 2008: 0b000'11111,
! 2009: 0b000'11111,
! 2010: 0b000'11111,
! 2011: 0b000'11111,
! 2012: 0b000'11111,
! 2013: 0b000'11111,
! 2014: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.