Преглед на файлове

splash.h: use binary literals for bitmaps

Same bits as before, but now directly visible as nice grid of 0s and 1s..
Include bitmaps and codegen script that generate splash.h.
Billy Donahue преди 6 години
родител
ревизия
d6c345c245
променени са 5 файла, в които са добавени 148 реда и са изтрити 100 реда
  1. 10 0
      scripts/Makefile
  2. 38 0
      scripts/make_splash.py
  3. BIN
      scripts/splash1.png
  4. BIN
      scripts/splash2.png
  5. 100 100
      splash.h

+ 10 - 0
scripts/Makefile

@@ -0,0 +1,10 @@
+
+PY=python3
+
+splash.h: make_splash.py splash1.png splash2.png
+	${PY} make_splash.py splash1.png splash1 >$@
+	${PY} make_splash.py splash2.png splash2 >>$@
+
+clean:
+	rm -f splash.h
+

+ 38 - 0
scripts/make_splash.py

@@ -0,0 +1,38 @@
+#!/usr/bin/env python3
+# pip install pillow to get the PIL module
+
+import sys
+from PIL import Image
+
+def main(fn, id):
+  image = Image.open(fn)
+  print("\n"
+        "#define {id}_width  {w}\n"
+        "#define {id}_height {h}\n"
+        "\n"
+        "const uint8_t PROGMEM {id}_data[] = {{\n"
+        .format(id=id, w=image.width, h=image.height), end='')
+  for y in range(0, image.height):
+    for x in range(0, (image.width + 7)//8 * 8):
+      if x == 0:
+        print("  ", end='')
+      if x % 8 == 0:
+        print("B", end='')
+
+      bit = '0'
+      if x < image.width and image.getpixel((x,y)) != 0:
+        bit = '1'
+      print(bit, end='')
+
+      if x % 8 == 7:
+        print(",", end='')
+    print()
+  print("};")
+
+if __name__ == '__main__':
+    if len(sys.argv) < 3:
+      print("Usage: {} <imagefile> <id>\n".format(sys.argv[0]), file=sys.stderr);
+      sys.exit(1)
+    fn = sys.argv[1]
+    id = sys.argv[2]
+    main(fn, id)

BIN
scripts/splash1.png


BIN
scripts/splash2.png


+ 100 - 100
splash.h

@@ -1,108 +1,108 @@
+
 #define splash1_width  82
 #define splash1_height 64
 
 const uint8_t PROGMEM splash1_data[] = {
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x1F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F,
-  0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xE0,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xF0, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x7F, 0xF0, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x3F, 0xFE, 0x7F, 0xF0, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x3F, 0xFF, 0x7F, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x1F, 0xFF, 0xFB, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x0F, 0xFF, 0xF9, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x0F, 0xFF, 0xF9, 0xFF, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
-  0xFF, 0xF1, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFC,
-  0x73, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x3F,
-  0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x1E, 0x0F,
-  0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFE, 0x1F, 0xFC,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xF8, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xDF, 0xFF, 0xE0, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x19, 0xFF, 0xC0, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x3F, 0x3C, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x7E, 0x7C, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x7F, 0xFE, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0xFF, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF,
-  0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xEF,
-  0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xCF, 0xFE,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x07, 0xFE, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFC, 0x07, 0xFE, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x03, 0xFE, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
-  0x80, 0x00, 0xFC, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x07, 0x80,
-  0x01, 0xFC, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x07, 0x80, 0x01,
-  0xFC, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x07, 0x80, 0x01, 0xE0,
-  0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00,
-  0x00, 0x00, 0x1E, 0x00, 0x7F, 0xE3, 0xF7, 0x9F, 0xF9, 0xFD, 0xE7, 0x78,
-  0x7B, 0xDF, 0xC0, 0xFF, 0xF7, 0xFF, 0xBF, 0xFD, 0xFD, 0xFF, 0x78, 0x7B,
-  0xDF, 0xC0, 0xFF, 0xF7, 0xFF, 0xBF, 0xFD, 0xFD, 0xFF, 0x78, 0x7B, 0xDF,
-  0xC0, 0xF0, 0xF7, 0x87, 0xBC, 0x3D, 0xE1, 0xFF, 0x78, 0x7B, 0xDE, 0x00,
-  0xF0, 0xF7, 0x87, 0xBC, 0x3D, 0xE1, 0xF0, 0x78, 0x7B, 0xDE, 0x00, 0x00,
-  0xF7, 0x87, 0x80, 0x3D, 0xE1, 0xE0, 0x78, 0x7B, 0xDE, 0x00, 0x7F, 0xF7,
-  0x87, 0x9F, 0xFD, 0xE1, 0xE0, 0x78, 0x7B, 0xDE, 0x00, 0xFF, 0xF7, 0x87,
-  0xBF, 0xFD, 0xE1, 0xE0, 0x78, 0x7B, 0xDE, 0x00, 0xF0, 0xF7, 0x87, 0xBC,
-  0x3D, 0xE1, 0xE0, 0x78, 0x7B, 0xDE, 0x00, 0xF0, 0xF7, 0x87, 0xBC, 0x3D,
-  0xE1, 0xE0, 0x78, 0x7B, 0xDE, 0x00, 0xF0, 0xF7, 0x87, 0xBC, 0x3D, 0xE1,
-  0xE0, 0x78, 0x7B, 0xDE, 0x00, 0xFF, 0xF7, 0xFF, 0xBF, 0xFD, 0xE1, 0xE0,
-  0x7F, 0xFB, 0xDF, 0xC0, 0xFF, 0xF7, 0xFF, 0xBF, 0xFD, 0xE1, 0xE0, 0x7F,
-  0xFB, 0xDF, 0xC0, 0x7C, 0xF3, 0xF3, 0x9F, 0x3D, 0xE1, 0xE0, 0x3E, 0x7B,
-  0xCF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0,
-  0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0x68, 0xDB, 0x11, 0x1A, 0x31, 0xC0, 0xFF,
-  0xFF, 0xFF, 0xFF, 0xFD, 0x2B, 0x5A, 0xFB, 0x6A, 0xEF, 0xC0, 0xFF, 0xFF,
-  0xFF, 0xFF, 0xFD, 0x4B, 0x5B, 0x3B, 0x1A, 0x33, 0xC0, 0xFF, 0xFF, 0xFF,
-  0xFF, 0xFD, 0x6B, 0x5B, 0xDB, 0x6A, 0xFD, 0xC0 };
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00000001,B10000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00000011,B10000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00000111,B11000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00001111,B11000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00011111,B11100000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11100000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11110000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B01111111,B11110000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00011111,B11111000,B01111111,B11110000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00111111,B11111110,B01111111,B11110000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00111111,B11111111,B01111111,B11110000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00011111,B11111111,B11111011,B11100000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00001111,B11111111,B11111001,B11111111,B11000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00001111,B11111111,B11111001,B11111111,B11111000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000111,B11111111,B11110001,B11111111,B11111111,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000011,B11111100,B01110011,B11111111,B11111111,B10000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000001,B11111110,B00111111,B11111111,B11111111,B10000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B11111111,B00011110,B00001111,B11111111,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B01111111,B11111110,B00011111,B11111100,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111111,B11111000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00001111,B11011111,B11111111,B11100000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00011111,B00011001,B11111111,B11000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00111111,B00111100,B11111111,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B01111110,B01111100,B11111000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B01111111,B11111110,B01111100,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B11111111,B11111111,B11111100,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000001,B11111111,B11101111,B11111110,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000001,B11111111,B11001111,B11111110,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000011,B11111111,B00000111,B11111110,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000011,B11111100,B00000111,B11111110,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000011,B11110000,B00000011,B11111110,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000001,B10000000,B00000000,B11111110,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B01111110,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00111110,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00001100,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B00000111,B10000000,B00000000,B11111100,B00000000,B00000000,B00000011,B11000000,B00000000,
+  B00000000,B00000000,B00000111,B10000000,B00000001,B11111100,B00000000,B00000000,B00000011,B11000000,B00000000,
+  B00000000,B00000000,B00000111,B10000000,B00000001,B11111100,B00000000,B00000000,B00000011,B11000000,B00000000,
+  B00000000,B00000000,B00000111,B10000000,B00000001,B11100000,B00000000,B00000000,B00000000,B00011110,B00000000,
+  B00000000,B00000000,B00000111,B10000000,B00000001,B11100000,B00000000,B00000000,B00000000,B00011110,B00000000,
+  B01111111,B11100011,B11110111,B10011111,B11111001,B11111101,B11100111,B01111000,B01111011,B11011111,B11000000,
+  B11111111,B11110111,B11111111,B10111111,B11111101,B11111101,B11111111,B01111000,B01111011,B11011111,B11000000,
+  B11111111,B11110111,B11111111,B10111111,B11111101,B11111101,B11111111,B01111000,B01111011,B11011111,B11000000,
+  B11110000,B11110111,B10000111,B10111100,B00111101,B11100001,B11111111,B01111000,B01111011,B11011110,B00000000,
+  B11110000,B11110111,B10000111,B10111100,B00111101,B11100001,B11110000,B01111000,B01111011,B11011110,B00000000,
+  B00000000,B11110111,B10000111,B10000000,B00111101,B11100001,B11100000,B01111000,B01111011,B11011110,B00000000,
+  B01111111,B11110111,B10000111,B10011111,B11111101,B11100001,B11100000,B01111000,B01111011,B11011110,B00000000,
+  B11111111,B11110111,B10000111,B10111111,B11111101,B11100001,B11100000,B01111000,B01111011,B11011110,B00000000,
+  B11110000,B11110111,B10000111,B10111100,B00111101,B11100001,B11100000,B01111000,B01111011,B11011110,B00000000,
+  B11110000,B11110111,B10000111,B10111100,B00111101,B11100001,B11100000,B01111000,B01111011,B11011110,B00000000,
+  B11110000,B11110111,B10000111,B10111100,B00111101,B11100001,B11100000,B01111000,B01111011,B11011110,B00000000,
+  B11111111,B11110111,B11111111,B10111111,B11111101,B11100001,B11100000,B01111111,B11111011,B11011111,B11000000,
+  B11111111,B11110111,B11111111,B10111111,B11111101,B11100001,B11100000,B01111111,B11111011,B11011111,B11000000,
+  B01111100,B11110011,B11110011,B10011111,B00111101,B11100001,B11100000,B00111110,B01111011,B11001111,B11000000,
+  B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
+  B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11000000,
+  B11111111,B11111111,B11111111,B11111111,B11111101,B01101000,B11011011,B00010001,B00011010,B00110001,B11000000,
+  B11111111,B11111111,B11111111,B11111111,B11111101,B00101011,B01011010,B11111011,B01101010,B11101111,B11000000,
+  B11111111,B11111111,B11111111,B11111111,B11111101,B01001011,B01011011,B00111011,B00011010,B00110011,B11000000,
+  B11111111,B11111111,B11111111,B11111111,B11111101,B01101011,B01011011,B11011011,B01101010,B11111101,B11000000,
+};
 
 #define splash2_width  115
-#define splash2_height  32
+#define splash2_height 32
 
 const uint8_t PROGMEM splash2_data[] = {
-  0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF0,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x03, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xF8,
-  0x00, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x7E, 0x00, 0x00, 0x01, 0xE0, 0x00,
-  0x7F, 0x0F, 0xF8, 0x00, 0x00, 0x00, 0x03, 0xC0, 0x00, 0xFE, 0x00, 0x00,
-  0x01, 0xE0, 0x00, 0xFF, 0xEF, 0xF8, 0x00, 0x00, 0x00, 0x03, 0xC0, 0x00,
-  0xFE, 0x00, 0x00, 0x01, 0xE0, 0x00, 0xFF, 0xFF, 0xF8, 0x00, 0x00, 0x00,
-  0x03, 0xC0, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x7F, 0xFE, 0x7F,
-  0xC0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0x00,
-  0x3F, 0xFE, 0x7F, 0xF8, 0x3F, 0xF1, 0xFB, 0xCF, 0xFC, 0xFE, 0xF3, 0xBC,
-  0x3D, 0xEF, 0xE0, 0x1F, 0xFE, 0x7F, 0xFF, 0x7F, 0xFB, 0xFF, 0xDF, 0xFE,
-  0xFE, 0xFF, 0xBC, 0x3D, 0xEF, 0xE0, 0x1F, 0xC6, 0xFF, 0xFF, 0x7F, 0xFB,
-  0xFF, 0xDF, 0xFE, 0xFE, 0xFF, 0xBC, 0x3D, 0xEF, 0xE0, 0x0F, 0xE3, 0xC7,
-  0xFE, 0x78, 0x7B, 0xC3, 0xDE, 0x1E, 0xF0, 0xFF, 0xBC, 0x3D, 0xEF, 0x00,
-  0x07, 0xFF, 0x87, 0xFC, 0x78, 0x7B, 0xC3, 0xDE, 0x1E, 0xF0, 0xF8, 0x3C,
-  0x3D, 0xEF, 0x00, 0x01, 0xFF, 0xFF, 0xF0, 0x00, 0x7B, 0xC3, 0xC0, 0x1E,
-  0xF0, 0xF0, 0x3C, 0x3D, 0xEF, 0x00, 0x01, 0xF3, 0x7F, 0xE0, 0x3F, 0xFB,
-  0xC3, 0xCF, 0xFE, 0xF0, 0xF0, 0x3C, 0x3D, 0xEF, 0x00, 0x03, 0xE3, 0x3F,
-  0x80, 0x7F, 0xFB, 0xC3, 0xDF, 0xFE, 0xF0, 0xF0, 0x3C, 0x3D, 0xEF, 0x00,
-  0x07, 0xE7, 0x3C, 0x00, 0x78, 0x7B, 0xC3, 0xDE, 0x1E, 0xF0, 0xF0, 0x3C,
-  0x3D, 0xEF, 0x00, 0x07, 0xFF, 0xBE, 0x00, 0x78, 0x7B, 0xC3, 0xDE, 0x1E,
-  0xF0, 0xF0, 0x3C, 0x3D, 0xEF, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x78, 0x7B,
-  0xC3, 0xDE, 0x1E, 0xF0, 0xF0, 0x3C, 0x3D, 0xEF, 0x00, 0x0F, 0xFF, 0xFE,
-  0x00, 0x7F, 0xFB, 0xFF, 0xDF, 0xFE, 0xF0, 0xF0, 0x3F, 0xFD, 0xEF, 0xE0,
-  0x0F, 0xFF, 0xFF, 0x00, 0x7F, 0xFB, 0xFF, 0xDF, 0xFE, 0xF0, 0xF0, 0x3F,
-  0xFD, 0xEF, 0xE0, 0x0F, 0xF9, 0xFF, 0x00, 0x3E, 0x79, 0xF9, 0xCF, 0x9E,
-  0xF0, 0xF0, 0x1F, 0x3D, 0xE7, 0xE0, 0x1F, 0xF1, 0xFF, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0xFF,
-  0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0,
-  0x1C, 0x00, 0x7F, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFE, 0xB4, 0x6D, 0x88,
-  0x8D, 0x18, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFE,
-  0x95, 0xAD, 0x7D, 0xB5, 0x77, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x7F, 0xFF,
-  0xFF, 0xFF, 0xFE, 0xA5, 0xAD, 0x9D, 0x8D, 0x19, 0xE0, 0x00, 0x00, 0x06,
-  0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFE, 0xB5, 0xAD, 0xED, 0xB5, 0x7E, 0xE0 };
+  B00000000,B00000000,B01100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000000,B11100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000001,B11100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000001,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000011,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000111,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00000111,B11111000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
+  B00000000,B00001111,B11111000,B00000000,B00000000,B00000000,B00000011,B11000000,B00000000,B01111110,B00000000,B00000000,B00000001,B11100000,B00000000,
+  B01111111,B00001111,B11111000,B00000000,B00000000,B00000000,B00000011,B11000000,B00000000,B11111110,B00000000,B00000000,B00000001,B11100000,B00000000,
+  B11111111,B11101111,B11111000,B00000000,B00000000,B00000000,B00000011,B11000000,B00000000,B11111110,B00000000,B00000000,B00000001,B11100000,B00000000,
+  B11111111,B11111111,B11111000,B00000000,B00000000,B00000000,B00000011,B11000000,B00000000,B11110000,B00000000,B00000000,B00000000,B00001111,B00000000,
+  B01111111,B11111110,B01111111,B11000000,B00000000,B00000000,B00000011,B11000000,B00000000,B11110000,B00000000,B00000000,B00000000,B00001111,B00000000,
+  B00111111,B11111110,B01111111,B11111000,B00111111,B11110001,B11111011,B11001111,B11111100,B11111110,B11110011,B10111100,B00111101,B11101111,B11100000,
+  B00011111,B11111110,B01111111,B11111111,B01111111,B11111011,B11111111,B11011111,B11111110,B11111110,B11111111,B10111100,B00111101,B11101111,B11100000,
+  B00011111,B11000110,B11111111,B11111111,B01111111,B11111011,B11111111,B11011111,B11111110,B11111110,B11111111,B10111100,B00111101,B11101111,B11100000,
+  B00001111,B11100011,B11000111,B11111110,B01111000,B01111011,B11000011,B11011110,B00011110,B11110000,B11111111,B10111100,B00111101,B11101111,B00000000,
+  B00000111,B11111111,B10000111,B11111100,B01111000,B01111011,B11000011,B11011110,B00011110,B11110000,B11111000,B00111100,B00111101,B11101111,B00000000,
+  B00000001,B11111111,B11111111,B11110000,B00000000,B01111011,B11000011,B11000000,B00011110,B11110000,B11110000,B00111100,B00111101,B11101111,B00000000,
+  B00000001,B11110011,B01111111,B11100000,B00111111,B11111011,B11000011,B11001111,B11111110,B11110000,B11110000,B00111100,B00111101,B11101111,B00000000,
+  B00000011,B11100011,B00111111,B10000000,B01111111,B11111011,B11000011,B11011111,B11111110,B11110000,B11110000,B00111100,B00111101,B11101111,B00000000,
+  B00000111,B11100111,B00111100,B00000000,B01111000,B01111011,B11000011,B11011110,B00011110,B11110000,B11110000,B00111100,B00111101,B11101111,B00000000,
+  B00000111,B11111111,B10111110,B00000000,B01111000,B01111011,B11000011,B11011110,B00011110,B11110000,B11110000,B00111100,B00111101,B11101111,B00000000,
+  B00000111,B11111111,B11111110,B00000000,B01111000,B01111011,B11000011,B11011110,B00011110,B11110000,B11110000,B00111100,B00111101,B11101111,B00000000,
+  B00001111,B11111111,B11111110,B00000000,B01111111,B11111011,B11111111,B11011111,B11111110,B11110000,B11110000,B00111111,B11111101,B11101111,B11100000,
+  B00001111,B11111111,B11111111,B00000000,B01111111,B11111011,B11111111,B11011111,B11111110,B11110000,B11110000,B00111111,B11111101,B11101111,B11100000,
+  B00001111,B11111001,B11111111,B00000000,B00111110,B01111001,B11111001,B11001111,B10011110,B11110000,B11110000,B00011111,B00111101,B11100111,B11100000,
+  B00011111,B11110001,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,
+  B00011111,B10000000,B11111111,B00000000,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11100000,
+  B00011100,B00000000,B01111111,B00000000,B01111111,B11111111,B11111111,B11111111,B11111110,B10110100,B01101101,B10001000,B10001101,B00011000,B11100000,
+  B00000000,B00000000,B00011111,B00000000,B01111111,B11111111,B11111111,B11111111,B11111110,B10010101,B10101101,B01111101,B10110101,B01110111,B11100000,
+  B00000000,B00000000,B00001111,B00000000,B01111111,B11111111,B11111111,B11111111,B11111110,B10100101,B10101101,B10011101,B10001101,B00011001,B11100000,
+  B00000000,B00000000,B00000110,B00000000,B01111111,B11111111,B11111111,B11111111,B11111110,B10110101,B10101101,B11101101,B10110101,B01111110,B11100000,
+};