/****************************************************************************** * <<< MPCSMon - Monitor for MPCS >>> (w) by dukat 2006 * * DEZ 2010 - FlatTV - MPCSMON goes to OSCAMMON on Coolstream ******************************************************************************/ #define MPCSMON_DREAM_7025 #define MPCSMON_FB_32BPP #define CFGFILE "/var/tuxbox/config/oscammon.conf" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include FT_FREETYPE_H #include FT_CACHE_H #include FT_CACHE_SMALL_BITMAPS_H #include struct input_event ev; #define RC_0 '0' #define RC_1 '1' #define RC_2 '2' #define RC_3 '3' #define RC_4 '4' #define RC_5 '5' #define RC_6 '6' #define RC_7 '7' #define RC_8 '8' #define RC_9 '9' #define RC_RIGHT 0x0191 #define RC_LEFT 0x0192 #define RC_UP 0x0193 #define RC_DOWN 0x0194 #define RC_PLUS 0x0195 #define RC_MINUS 0x0196 #define RC_OK 0x0D #define RC_STANDBY 0x1C #define RC_ESC RC_HOME #define RC_HOME 0x01B1 #define RC_MUTE 0x01B2 #define RC_HELP 0x01B3 #define RC_DBOX 0x01B4 #define RC_INFO RC_HELP #define RC_GREEN 0x01A1 #define RC_YELLOW 0x01A2 #define RC_RED 0x01A3 #define RC_BLUE 0x01A4 #define RC_PAUSE RC_HELP #define RC_ALTGR 0x12 #define RC_BS 0x7F #define RC_POS1 RC_HOME #define RC_END 0x13 #define RC_INS 0x10 #define RC_ENTF 0x11 #define RC_STRG 0x00 #define RC_LSHIFT 0x0E #define RC_RSHIFT 0x0E #define RC_ALT 0x0F #define RC_NUM RC_DBOX #define RC_ROLLEN 0x00 #define RC_F5 RC_DBOX #define RC_F6 RC_HELP #define RC_F7 RC_MUTE #define RC_F8 0x01C8 #define RC_F9 0x01C9 #define RC_F10 0x01CA #define RC_RET 0x0D #define RC_RET1 0x01CC #define RC_CAPSLOCK 0x01CD #define RC_ON 0x01CE #define RC_F1 RC_RED #define RC_F2 RC_GREEN #define RC_F3 RC_YELLOW #define RC_F4 RC_BLUE #define RC_PAGEUP RC_PLUS #define RC_PAGEDOWN RC_MINUS //#define RC_PAUSE 0x77 #define RC_STOP 0x80 #define RC_TIME 0x8B #define RC_FORWARD 0x9F #define RC_REWIND 0xA8 #define RC_PLAY 0xCF //freetype stuff #define FONT "/share/fonts/pakenham.ttf" enum {LEFT, CENTER, RIGHT}; enum {SMALL, BIG}; //framebuffer stuff static struct fb_fix_screeninfo fix_screeninfo; static struct fb_var_screeninfo var_screeninfo; enum {FILL, GRID}; enum {TRANSP, BLACK, RED , GREEN , BROWN , BLUE , MAGENTA , CYAN , B_GRAY, GRAY , B_RED, B_GREEN, YELLOW, B_BLUE, B_MAGENTA, B_CYAN, WHITE , BLUE0, BLUE1, BLUE2, BLUE3, ORANGE, NGDARK, L_NGDARK}; static unsigned char bgra[][4] = { "\x00\x00\x00\x00","\x00\x00\x00\xFF","\x00\x00\x80\xFF","\x00\x80\x00\xFF", "\x00\x48\xA0\xFF","\x80\x00\x00\xFF","\x80\x00\x80\xFF","\x80\x80\x00\xFF", "\xA0\xA0\xA0\xFF","\x50\x50\x50\xFF","\x00\x00\xFF\xFF","\x00\xFF\x00\xFF", "\x00\xFF\xFF\xFF","\xFF\x00\x00\xFF","\xFF\x00\xFF\xFF","\xFF\xFF\x00\xFF", "\xFF\xFF\xFF\xFF","\xFF\x80\x00\xF0","\x80\x00\x00\xF0","\xFF\x80\x00\xFF", "\x40\x20\x00\xFF","\x00\xC0\xFF\xFF","\x0C\x0C\x0C\xF7","\x10\x10\x10\xF7" }; char circle[] = { 0,0,0,0,0,9,9,9,9,9,0,0,0,0,0, 0,0,0,9,9,9,9,9,9,9,9,9,0,0,0, 0,0,9,9,9,1,1,1,1,1,9,9,9,0,0, 0,9,9,1,1,1,1,1,1,1,1,1,9,9,0, 0,9,9,1,1,1,1,1,1,1,1,1,9,9,0, 9,9,1,1,1,1,1,1,1,1,1,1,1,9,9, 9,9,1,1,1,1,1,1,1,1,1,1,1,9,9, 9,9,1,1,1,1,1,1,1,1,1,1,1,9,9, 9,9,1,1,1,1,1,1,1,1,1,1,1,9,9, 9,9,1,1,1,1,1,1,1,1,1,1,1,9,9, 0,9,9,1,1,1,1,1,1,1,1,1,9,9,0, 0,9,9,1,1,1,1,1,1,1,1,1,9,9,0, 0,0,9,9,9,1,1,1,1,1,9,9,9,0,0, 0,0,0,9,9,9,9,9,9,9,9,9,0,0,0, 0,0,0,0,0,9,9,9,9,9,0,0,0,0,0 }; #ifdef NOT_USED_YET char scroll_up[] = { BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE }; char scroll_dn[] = { WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, WHITE, WHITE, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1, BLUE1 }; //lcd stuff unsigned char lcd_buffer[] = { 0xE0, 0xF8, 0xFC, 0xFE, 0xFE, 0xFF, 0x7F, 0x7F, 0x7F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0xFF, 0xFF, 0xFF, 0xC7, 0xBB, 0x3B, 0xFB, 0xFB, 0x3B, 0xBB, 0xC7, 0xFF, 0x07, 0xFB, 0xFB, 0x07, 0xFB, 0xFB, 0xFB, 0x07, 0xFF, 0x87, 0x7B, 0xFB, 0xC7, 0xFB, 0x7B, 0x7B, 0x87, 0xFF, 0x07, 0xFB, 0xFB, 0x3B, 0xFB, 0xFB, 0xFB, 0x3B, 0xFB, 0xFB, 0x07, 0xFF, 0x07, 0xFB, 0xFB, 0xBB, 0xFB, 0xFB, 0xFB, 0x07, 0xFF, 0x27, 0xDB, 0xDB, 0x27, 0xFF, 0x07, 0xFB, 0xFB, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x6F, 0x7F, 0x7F, 0x7F, 0xFF, 0xFE, 0xFE, 0xFC, 0xF8, 0xE0, 0xFF, 0x7F, 0x7F, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x70, 0x6F, 0x6F, 0x70, 0x7F, 0x7F, 0x7F, 0x70, 0x6F, 0x6F, 0x6C, 0x6F, 0x6F, 0x6F, 0x70, 0x7F, 0x70, 0x6F, 0x6F, 0x71, 0x6F, 0x6F, 0x6F, 0x70, 0x7F, 0x70, 0x6F, 0x6F, 0x70, 0x6F, 0x6F, 0x6F, 0x70, 0x6F, 0x6F, 0x70, 0x7F, 0x70, 0x6F, 0x6F, 0x71, 0x6F, 0x6F, 0x6F, 0x70, 0x7F, 0x70, 0x6F, 0x6F, 0x70, 0x7F, 0x70, 0x6F, 0x6F, 0x6C, 0x6D, 0x6D, 0x6D, 0x73, 0x7F, 0x7F, 0x7F, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7B, 0x7F, 0x7F, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xF8, 0xFC, 0x04, 0xFC, 0xF8, 0x00, 0xFC, 0xFC, 0x30, 0x60, 0xFC, 0xFC, 0x00, 0xFC, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x40, 0xC0, 0x00, 0xC0, 0x40, 0xC0, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0xC0, 0x20, 0x20, 0x20, 0x20, 0xC0, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01, 0x01, 0x80, 0xC0, 0xE1, 0x31, 0x18, 0x09, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x77, 0x55, 0xDD, 0x00, 0xDD, 0x55, 0xDD, 0x00, 0xDD, 0x55, 0x77, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xE3, 0x14, 0x14, 0x14, 0x14, 0xE3, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x81, 0x83, 0x9F, 0x9E, 0x8F, 0x87, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xFF, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x80, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x83, 0x80, 0x80, 0x80, 0xFF, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x83, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x83, 0x80, 0x80, 0x80, 0x81, 0x82, 0x82, 0x82, 0x82, 0x81, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x83, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x83, 0x80, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xE0, 0x60, 0x60, 0xA0, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0xA0, 0x60, 0x60, 0xE0, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x10, 0x10, 0x10, 0x10, 0xE0, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x80, 0x40, 0x21, 0x11, 0x0A, 0x06, 0x04, 0x08, 0x08, 0x04, 0x06, 0x0A, 0x11, 0x21, 0x40, 0x80, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x3E, 0x01, 0x00, 0x00, 0xC0, 0x3E, 0x01, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0x07, 0x18, 0x20, 0x40, 0x43, 0x83, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x83, 0x83, 0x80, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x83, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x83, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x83, 0x80, 0x80, 0x80, 0x80, 0x83, 0x84, 0x84, 0x84, 0x84, 0x83, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x83, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x83, 0x80, 0x80, 0x80, 0x83, 0x86, 0x84, 0x84, 0x84, 0x84, 0x84, 0x84, 0x86, 0x43, 0x40, 0x20, 0x18, 0x07 }; char lcd_status[] = { 1,1,1,1,0,0,1,1,1,1,1,0,1,1,0,1,1, /* PAU */ 1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1, 1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1, 1,1,1,1,0,0,1,1,1,1,1,0,1,1,0,1,1, 1,1,0,0,0,0,1,1,0,1,1,0,1,1,0,1,1, 1,1,0,0,0,0,1,1,0,1,1,0,1,1,0,1,1, 1,1,0,0,0,0,1,1,0,1,1,0,1,1,1,1,1, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0, 0,0,0,0,0,0,0,1,1,0,1,1,1,0,0,0,0, 0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0, 0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0, 0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0, 0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0, 0,0,0,0,1,1,1,0,1,1,0,0,0,0,0,0,0, 0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0, 0,1,1,1,0,0,1,1,0,0,1,1,0,1,1,0,0, /* ONL */ 1,1,0,1,1,0,1,1,0,0,1,1,0,1,1,0,0, 1,1,0,1,1,0,1,1,1,0,1,1,0,1,1,0,0, 1,1,0,1,1,0,1,1,1,1,1,1,0,1,1,0,0, 1,1,0,1,1,0,1,1,0,1,1,1,0,1,1,0,0, 1,1,0,1,1,0,1,1,0,0,1,1,0,1,1,0,0, 0,1,1,1,0,0,1,1,0,0,1,1,0,1,1,1,1, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0, 0,0,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0, 0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0, 0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0, 0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0, 0,1,1,1,0,0,1,1,1,1,1,1,0,1,1,0,0, /* OFL */ 1,1,0,1,1,0,0,1,1,0,0,0,0,1,1,0,0, 1,1,0,1,1,0,0,1,1,0,0,0,0,1,1,0,0, 1,1,0,1,1,0,0,1,1,1,1,0,0,1,1,0,0, 1,1,0,1,1,0,0,1,1,0,0,0,0,1,1,0,0, 1,1,0,1,1,0,0,1,1,0,0,0,0,1,1,0,0, 0,1,1,1,0,0,0,1,1,0,0,0,0,1,1,1,1, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,1,1,1,0,1,1,1,0,0,0,0,0, 0,0,0,0,0,1,1,1,0,1,1,1,1,0,0,0,0, 0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0, 0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0, 0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0, 0,0,0,0,1,1,1,1,1,1,1,1,1,0,0,0,0, 0,0,0,0,0,1,1,1,0,1,1,1,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }; char lcd_digits[] = { 0,1,1,1,1,1,1,1,1,0, 1,1,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,1,1,0,0,0,1, 1,0,0,0,1,1,0,0,0,1, 1,0,0,0,1,1,0,0,0,1, 1,0,0,0,1,1,0,0,0,1, 1,0,0,0,1,1,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,1,1, 0,1,1,1,1,1,1,1,1,0, 0,0,0,1,1,1,1,0,0,0, 0,0,1,1,0,0,1,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,0,0,0,0,1,0,0, 0,0,1,1,0,0,1,1,0,0, 0,0,0,1,1,1,1,0,0,0, 0,1,1,1,1,1,1,1,1,0, 1,1,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,0,1, 0,1,1,1,1,1,0,0,0,1, 1,1,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,1,1, 1,0,0,0,0,1,1,1,1,0, 1,0,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,1,1, 0,1,1,1,1,1,1,1,1,0, 0,1,1,1,1,1,1,1,1,0, 1,1,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,0,1, 0,1,1,1,1,1,0,0,0,1, 1,1,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,1,1,0, 1,1,0,0,0,0,0,0,1,1, 0,1,1,1,1,1,0,0,0,1, 1,1,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,1,1, 0,1,1,1,1,1,1,1,1,0, 0,1,1,1,0,1,1,1,1,0, 1,1,0,1,1,1,0,0,1,1, 1,0,0,0,1,0,0,0,0,1, 1,0,0,0,1,0,0,0,0,1, 1,0,0,0,1,0,0,0,0,1, 1,0,0,0,1,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,0,1, 0,1,1,1,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,0,1, 0,0,0,0,1,1,0,0,1,1, 0,0,0,0,0,1,1,1,1,0, 0,1,1,1,1,1,1,1,1,0, 1,1,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,1,1, 1,0,0,0,0,1,1,1,1,0, 1,0,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,0,1, 0,1,1,1,1,1,0,0,0,1, 1,1,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,1,1, 0,1,1,1,1,1,1,1,1,0, 0,1,1,1,1,1,1,1,1,0, 1,1,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,1,1, 1,0,0,0,0,1,1,1,1,0, 1,0,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,1,1,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,1,1, 0,1,1,1,1,1,1,1,1,0, 0,1,1,1,1,1,1,1,1,0, 1,1,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,0,1, 0,1,1,1,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,0,1, 0,0,0,0,1,1,0,0,1,1, 0,0,0,0,0,1,1,1,1,0, 0,1,1,1,1,1,1,1,1,0, 1,1,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,1,1,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,1,1, 0,1,1,0,0,0,0,1,1,0, 1,1,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,1,1,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,1,1, 0,1,1,1,1,1,1,1,1,0, 0,1,1,1,1,1,1,1,1,0, 1,1,0,0,0,0,0,0,1,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,1,1,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,0,1, 0,1,1,1,1,0,0,0,0,1, 1,1,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,0,0,0,0,0,0,0,0,1, 1,1,0,0,0,0,0,0,1,1, 0,1,1,1,1,1,1,1,1,0, }; #endif