diff --git a/arduino/obs_control.ino/icons.h b/arduino/obs_control.ino/icons.h new file mode 100644 index 0000000..f2c9761 --- /dev/null +++ b/arduino/obs_control.ino/icons.h @@ -0,0 +1,909 @@ +const uint8_t icon_blank []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_twitch []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x03, +0xc0, 0x01, 0x80, 0x00, 0x00, 0x00, 0x18, 0x03, +0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x18, 0x03, +0xc0, 0x06, 0x00, 0x00, 0x00, 0x00, 0x18, 0x03, +0xc0, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x10, 0x03, +0xc0, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x18, 0x03, +0xc0, 0x10, 0x7f, 0xff, 0xff, 0xfe, 0x18, 0x03, +0xc0, 0x10, 0x4a, 0xaa, 0xaa, 0xae, 0x18, 0x03, +0xc0, 0x17, 0x40, 0x00, 0x00, 0x02, 0x10, 0x03, +0xc0, 0x16, 0x60, 0x00, 0x00, 0x06, 0x18, 0x03, +0xc0, 0x10, 0x40, 0x00, 0x00, 0x06, 0x18, 0x03, +0xc0, 0x10, 0x40, 0x00, 0x00, 0x02, 0x08, 0x03, +0xc0, 0x17, 0x40, 0x00, 0x00, 0x06, 0x18, 0x03, +0xc0, 0x12, 0x60, 0x58, 0x2c, 0x06, 0x18, 0x03, +0xc0, 0x18, 0x40, 0x7c, 0x7e, 0x02, 0x08, 0x03, +0xc0, 0x10, 0x40, 0xc4, 0x22, 0x06, 0x18, 0x03, +0xc0, 0x17, 0x60, 0xc6, 0x63, 0x06, 0x18, 0x03, +0xc0, 0x10, 0x40, 0x44, 0x62, 0x02, 0x08, 0x03, +0xc0, 0x10, 0x40, 0xc4, 0x22, 0x06, 0x18, 0x03, +0xc0, 0x17, 0x60, 0xc4, 0x62, 0x06, 0x18, 0x03, +0xc0, 0x17, 0x40, 0x46, 0x63, 0x02, 0x08, 0x03, +0xc0, 0x10, 0x40, 0xc4, 0x22, 0x06, 0x18, 0x03, +0xc0, 0x10, 0x40, 0xc4, 0x62, 0x06, 0x18, 0x03, +0xc0, 0x17, 0x40, 0x44, 0x62, 0x02, 0x08, 0x03, +0xc0, 0x16, 0x60, 0xfc, 0x3e, 0x06, 0x18, 0x03, +0xc0, 0x10, 0x40, 0x00, 0x10, 0x06, 0x18, 0x03, +0xc0, 0x10, 0x40, 0x00, 0x00, 0x1c, 0x10, 0x03, +0xc0, 0x17, 0x60, 0x00, 0x00, 0x30, 0x30, 0x03, +0xc0, 0x12, 0x40, 0x00, 0x00, 0x60, 0x60, 0x03, +0xc0, 0x18, 0x40, 0x00, 0x00, 0xc0, 0xc0, 0x03, +0xc0, 0x10, 0x40, 0x00, 0x01, 0x81, 0x80, 0x03, +0xc0, 0x17, 0x7d, 0x83, 0xff, 0x07, 0x00, 0x03, +0xc0, 0x10, 0x7f, 0xc7, 0xfc, 0x06, 0x00, 0x03, +0xc0, 0x10, 0x00, 0x4c, 0x00, 0x0c, 0x00, 0x03, +0xc0, 0x17, 0x00, 0xd8, 0x00, 0x38, 0x00, 0x03, +0xc0, 0x17, 0x00, 0x50, 0x00, 0x30, 0x00, 0x03, +0xc0, 0x10, 0x00, 0xf0, 0x00, 0x60, 0x00, 0x03, +0xc0, 0x1d, 0x50, 0x40, 0xab, 0xc0, 0x00, 0x03, +0xc0, 0x0f, 0xfe, 0x03, 0xff, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x06, 0x03, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x02, 0x04, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x06, 0x0c, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x03, 0x78, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x03, 0xf0, 0x00, 0x00, 0x00, 0x03, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_scen_intro []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x2f, 0xe4, 0x18, 0x0c, +0x60, 0x00, 0x00, 0x0f, 0xfa, 0x00, 0x08, 0x06, +0x60, 0x00, 0x02, 0xfe, 0x80, 0x08, 0xd8, 0x06, +0xc0, 0x00, 0xbf, 0xd0, 0x00, 0xc4, 0x48, 0x03, +0xc0, 0x2f, 0xd0, 0x00, 0x4c, 0x4c, 0x4c, 0x03, +0xc0, 0x78, 0x00, 0x44, 0x44, 0x40, 0x08, 0x03, +0xc0, 0x40, 0x04, 0x44, 0xc4, 0x00, 0xfc, 0x03, +0xc0, 0x44, 0x44, 0x44, 0x00, 0x2f, 0xd0, 0x03, +0xc0, 0x44, 0x64, 0x40, 0x2f, 0xf4, 0x00, 0x03, +0xc0, 0x64, 0x40, 0x0f, 0xfa, 0x00, 0x00, 0x03, +0xc0, 0x70, 0x03, 0xff, 0x80, 0x00, 0x00, 0x03, +0xc0, 0x7d, 0x5f, 0xa8, 0x00, 0x00, 0x00, 0x03, +0xc0, 0xc7, 0xfe, 0xa9, 0x5a, 0xaa, 0xa8, 0x03, +0xc0, 0x87, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, +0xc0, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x78, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x36, 0x66, 0x66, 0x66, 0x66, 0x64, 0x03, +0xc0, 0x62, 0x22, 0x22, 0x22, 0x22, 0x2c, 0x03, +0xc0, 0x26, 0x66, 0x66, 0x66, 0x66, 0x64, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x32, 0x92, 0x49, 0x24, 0x95, 0x56, 0x03, +0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x63, 0xff, 0x3c, 0x1f, 0xff, 0x84, 0x03, +0xc0, 0x20, 0xaa, 0x28, 0x05, 0x54, 0x86, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x3f, 0xfc, 0x1f, 0xe7, 0x84, 0x03, +0xc0, 0x60, 0x3b, 0xf8, 0x1f, 0x47, 0x8c, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x3f, 0xfd, 0xb6, 0xdb, 0x6e, 0xfc, 0x03, +0xc0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x40, 0x02, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x40, 0x02, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x45, 0xc7, 0x9e, 0x3c, 0x00, 0x03, +0xc0, 0x00, 0x46, 0x66, 0x19, 0x56, 0x00, 0x03, +0xc0, 0x00, 0x44, 0x22, 0x18, 0x43, 0x00, 0x03, +0xc0, 0x00, 0x44, 0x66, 0x10, 0xc1, 0x00, 0x03, +0x60, 0x00, 0x44, 0x22, 0x18, 0x43, 0x00, 0x06, +0x60, 0x00, 0x44, 0x62, 0x18, 0x42, 0x00, 0x06, +0x70, 0x00, 0x4c, 0x23, 0x10, 0x66, 0x00, 0x0c, +0x38, 0x00, 0x44, 0x63, 0xd8, 0x3c, 0x00, 0x1c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_scen_1 []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x2f, 0xe4, 0x18, 0x0c, +0x60, 0x00, 0x00, 0x0f, 0xfa, 0x00, 0x08, 0x06, +0x60, 0x00, 0x02, 0xfe, 0x80, 0x08, 0xd8, 0x06, +0xc0, 0x00, 0xbf, 0xd0, 0x00, 0xc4, 0x48, 0x03, +0xc0, 0x2f, 0xd0, 0x00, 0x4c, 0x4c, 0x4c, 0x03, +0xc0, 0x78, 0x00, 0x44, 0x44, 0x40, 0x08, 0x03, +0xc0, 0x40, 0x04, 0x44, 0xc4, 0x00, 0xfc, 0x03, +0xc0, 0x44, 0x44, 0x44, 0x00, 0x2f, 0xd0, 0x03, +0xc0, 0x44, 0x64, 0x40, 0x2f, 0xf4, 0x00, 0x03, +0xc0, 0x64, 0x40, 0x0f, 0xfa, 0x00, 0x00, 0x03, +0xc0, 0x70, 0x03, 0xff, 0x80, 0x00, 0x00, 0x03, +0xc0, 0x7d, 0x5f, 0xa8, 0x00, 0x00, 0x00, 0x03, +0xc0, 0xc7, 0xfe, 0xa9, 0x5a, 0xaa, 0xa8, 0x03, +0xc0, 0x87, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, +0xc0, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x78, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x36, 0x66, 0x66, 0x66, 0x66, 0x64, 0x03, +0xc0, 0x62, 0x22, 0x22, 0x22, 0x22, 0x2c, 0x03, +0xc0, 0x26, 0x66, 0x66, 0x66, 0x66, 0x64, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x32, 0x92, 0x49, 0x24, 0x95, 0x56, 0x03, +0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x63, 0xff, 0x3c, 0x1f, 0xff, 0x84, 0x03, +0xc0, 0x20, 0xaa, 0x28, 0x05, 0x54, 0x86, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x3f, 0xfc, 0x1f, 0xe7, 0x84, 0x03, +0xc0, 0x60, 0x3b, 0xf8, 0x1f, 0x47, 0x8c, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x3f, 0xfd, 0xb6, 0xdb, 0x6e, 0xfc, 0x03, +0xc0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x01, 0x83, +0xc0, 0x88, 0x00, 0x00, 0x00, 0x00, 0x07, 0x83, +0xc1, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x83, +0xc1, 0x80, 0x60, 0xe1, 0x70, 0x78, 0x01, 0x83, +0xc0, 0xc0, 0x91, 0x19, 0xac, 0x84, 0x01, 0x03, +0xc0, 0x71, 0x83, 0x09, 0x88, 0x84, 0x01, 0x83, +0xc0, 0x19, 0x03, 0xf9, 0x08, 0xfc, 0x01, 0x83, +0x60, 0x0d, 0x83, 0x11, 0x89, 0xa4, 0x01, 0x86, +0x60, 0x09, 0x83, 0x01, 0x0c, 0x80, 0x01, 0x06, +0x71, 0x58, 0x99, 0x89, 0x80, 0xc4, 0x01, 0x8c, +0x39, 0xf0, 0xf0, 0xf1, 0x0c, 0x7c, 0x07, 0xfc, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xf0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_scen_2 []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x2f, 0xe4, 0x18, 0x0c, +0x60, 0x00, 0x00, 0x0f, 0xfa, 0x00, 0x08, 0x06, +0x60, 0x00, 0x02, 0xfe, 0x80, 0x08, 0xd8, 0x06, +0xc0, 0x00, 0xbf, 0xd0, 0x00, 0xc4, 0x48, 0x03, +0xc0, 0x2f, 0xd0, 0x00, 0x4c, 0x4c, 0x4c, 0x03, +0xc0, 0x78, 0x00, 0x44, 0x44, 0x40, 0x08, 0x03, +0xc0, 0x40, 0x04, 0x44, 0xc4, 0x00, 0xfc, 0x03, +0xc0, 0x44, 0x44, 0x44, 0x00, 0x2f, 0xd0, 0x03, +0xc0, 0x44, 0x64, 0x40, 0x2f, 0xf4, 0x00, 0x03, +0xc0, 0x64, 0x40, 0x0f, 0xfa, 0x00, 0x00, 0x03, +0xc0, 0x70, 0x03, 0xff, 0x80, 0x00, 0x00, 0x03, +0xc0, 0x7d, 0x5f, 0xa8, 0x00, 0x00, 0x00, 0x03, +0xc0, 0xc7, 0xfe, 0xa9, 0x5a, 0xaa, 0xa8, 0x03, +0xc0, 0x87, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, +0xc0, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x78, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x36, 0x66, 0x66, 0x66, 0x66, 0x64, 0x03, +0xc0, 0x62, 0x22, 0x22, 0x22, 0x22, 0x2c, 0x03, +0xc0, 0x26, 0x66, 0x66, 0x66, 0x66, 0x64, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x32, 0x92, 0x49, 0x24, 0x95, 0x56, 0x03, +0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x63, 0xff, 0x3c, 0x1f, 0xff, 0x84, 0x03, +0xc0, 0x20, 0xaa, 0x28, 0x05, 0x54, 0x86, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x3f, 0xfc, 0x1f, 0xe7, 0x84, 0x03, +0xc0, 0x60, 0x3b, 0xf8, 0x1f, 0x47, 0x8c, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x3f, 0xfd, 0xb6, 0xdb, 0x6e, 0xfc, 0x03, +0xc0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x07, 0x83, +0xc0, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, +0xc1, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, +0xc1, 0x80, 0x60, 0xe1, 0x70, 0x78, 0x00, 0x43, +0xc0, 0xc0, 0x91, 0x19, 0xac, 0x84, 0x00, 0xc3, +0xc0, 0x71, 0x83, 0x09, 0x88, 0x84, 0x00, 0x83, +0xc0, 0x19, 0x03, 0xf9, 0x08, 0xfc, 0x01, 0x83, +0x60, 0x0d, 0x83, 0x11, 0x89, 0xa4, 0x03, 0x06, +0x60, 0x09, 0x83, 0x01, 0x0c, 0x80, 0x04, 0x06, +0x71, 0x58, 0x99, 0x89, 0x80, 0xc4, 0x06, 0x8e, +0x39, 0xf0, 0xf0, 0xf1, 0x0c, 0x7c, 0x0f, 0xfc, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_scen_3 []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x2f, 0xe4, 0x18, 0x0c, +0x60, 0x00, 0x00, 0x0f, 0xfa, 0x00, 0x08, 0x06, +0x60, 0x00, 0x02, 0xfe, 0x80, 0x08, 0xd8, 0x06, +0xc0, 0x00, 0xbf, 0xd0, 0x00, 0xc4, 0x48, 0x03, +0xc0, 0x2f, 0xd0, 0x00, 0x4c, 0x4c, 0x4c, 0x03, +0xc0, 0x78, 0x00, 0x44, 0x44, 0x40, 0x08, 0x03, +0xc0, 0x40, 0x04, 0x44, 0xc4, 0x00, 0xfc, 0x03, +0xc0, 0x44, 0x44, 0x44, 0x00, 0x2f, 0xd0, 0x03, +0xc0, 0x44, 0x64, 0x40, 0x2f, 0xf4, 0x00, 0x03, +0xc0, 0x64, 0x40, 0x0f, 0xfa, 0x00, 0x00, 0x03, +0xc0, 0x70, 0x03, 0xff, 0x80, 0x00, 0x00, 0x03, +0xc0, 0x7d, 0x5f, 0xa8, 0x00, 0x00, 0x00, 0x03, +0xc0, 0xc7, 0xfe, 0xa9, 0x5a, 0xaa, 0xa8, 0x03, +0xc0, 0x87, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, +0xc0, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x78, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x36, 0x66, 0x66, 0x66, 0x66, 0x64, 0x03, +0xc0, 0x62, 0x22, 0x22, 0x22, 0x22, 0x2c, 0x03, +0xc0, 0x26, 0x66, 0x66, 0x66, 0x66, 0x64, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x32, 0x92, 0x49, 0x24, 0x95, 0x56, 0x03, +0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x63, 0xff, 0x3c, 0x1f, 0xff, 0x84, 0x03, +0xc0, 0x20, 0xaa, 0x28, 0x05, 0x54, 0x86, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x3f, 0xfc, 0x1f, 0xe7, 0x84, 0x03, +0xc0, 0x60, 0x3b, 0xf8, 0x1f, 0x47, 0x8c, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x3f, 0xfd, 0xb6, 0xdb, 0x6e, 0xfc, 0x03, +0xc0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x07, 0x83, +0xc0, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, +0xc1, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, +0xc1, 0x80, 0x60, 0xe1, 0x70, 0x78, 0x00, 0x43, +0xc0, 0xc0, 0x91, 0x19, 0xac, 0x84, 0x02, 0xc3, +0xc0, 0x71, 0x83, 0x09, 0x88, 0x84, 0x07, 0x83, +0xc0, 0x19, 0x03, 0xf9, 0x08, 0xfc, 0x00, 0xc3, +0x60, 0x0d, 0x83, 0x11, 0x89, 0xa4, 0x00, 0x46, +0x60, 0x09, 0x83, 0x01, 0x0c, 0x80, 0x00, 0x46, +0x71, 0x58, 0x99, 0x89, 0x80, 0xc4, 0x08, 0x8e, +0x39, 0xf0, 0xf0, 0xf1, 0x0c, 0x7c, 0x07, 0x9c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xf0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_scen_outro []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xf8, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x2f, 0xe4, 0x18, 0x0c, +0x60, 0x00, 0x00, 0x0f, 0xfa, 0x00, 0x08, 0x06, +0x60, 0x00, 0x02, 0xfe, 0x80, 0x08, 0xd8, 0x06, +0xc0, 0x00, 0xbf, 0xd0, 0x00, 0xc4, 0x48, 0x03, +0xc0, 0x2f, 0xd0, 0x00, 0x4c, 0x4c, 0x4c, 0x03, +0xc0, 0x78, 0x00, 0x44, 0x44, 0x40, 0x08, 0x03, +0xc0, 0x40, 0x04, 0x44, 0xc4, 0x00, 0xfc, 0x03, +0xc0, 0x44, 0x44, 0x44, 0x00, 0x2f, 0xd0, 0x03, +0xc0, 0x44, 0x64, 0x40, 0x2f, 0xf4, 0x00, 0x03, +0xc0, 0x64, 0x40, 0x0f, 0xfa, 0x00, 0x00, 0x03, +0xc0, 0x70, 0x03, 0xff, 0x80, 0x00, 0x00, 0x03, +0xc0, 0x7d, 0x5f, 0xa8, 0x00, 0x00, 0x00, 0x03, +0xc0, 0xc7, 0xfe, 0xa9, 0x5a, 0xaa, 0xa8, 0x03, +0xc0, 0x87, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, +0xc0, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x78, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x36, 0x66, 0x66, 0x66, 0x66, 0x64, 0x03, +0xc0, 0x62, 0x22, 0x22, 0x22, 0x22, 0x2c, 0x03, +0xc0, 0x26, 0x66, 0x66, 0x66, 0x66, 0x64, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x32, 0x92, 0x49, 0x24, 0x95, 0x56, 0x03, +0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x63, 0xff, 0x3c, 0x1f, 0xff, 0x84, 0x03, +0xc0, 0x20, 0xaa, 0x28, 0x05, 0x54, 0x86, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x3f, 0xfc, 0x1f, 0xe7, 0x84, 0x03, +0xc0, 0x60, 0x3b, 0xf8, 0x1f, 0x47, 0x8c, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x06, 0x03, +0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, +0xc0, 0x3f, 0xfd, 0xb6, 0xdb, 0x6e, 0xfc, 0x03, +0xc0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x03, 0x18, 0x00, 0x20, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x08, 0x00, 0x20, 0x00, 0x00, 0x03, +0xc0, 0x04, 0x04, 0x42, 0x79, 0xe3, 0xc0, 0x03, +0xc0, 0x04, 0x04, 0x86, 0x61, 0x94, 0x60, 0x03, +0xc0, 0x04, 0x04, 0xc2, 0x21, 0x84, 0x30, 0x03, +0xc0, 0x04, 0x04, 0x46, 0x61, 0x0c, 0x20, 0x03, +0x60, 0x06, 0x0c, 0x82, 0x21, 0x84, 0x30, 0x06, +0x60, 0x06, 0x08, 0x46, 0x21, 0x84, 0x20, 0x06, +0x70, 0x03, 0x58, 0xee, 0x35, 0x06, 0x60, 0x0c, +0x38, 0x01, 0xf0, 0x34, 0x39, 0x83, 0xc0, 0x1c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_volu []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x5a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x01, 0x8a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x06, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x08, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x30, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x60, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x01, 0xa0, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x01, 0xff, 0x20, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0xa2, 0x20, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x43, 0x20, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x02, 0x20, 0x0a, 0x02, 0x00, 0x03, +0xc0, 0x02, 0x42, 0x20, 0x1a, 0x02, 0x00, 0x03, +0xc0, 0x02, 0xa3, 0x20, 0x0a, 0x03, 0x00, 0x03, +0xc0, 0x02, 0x01, 0x20, 0x0a, 0x02, 0x00, 0x03, +0xc0, 0x02, 0x42, 0x20, 0x1a, 0x2f, 0xa0, 0x03, +0xc0, 0x02, 0x43, 0x20, 0x0a, 0x3f, 0xe0, 0x03, +0xc0, 0x02, 0x02, 0x20, 0x0a, 0x02, 0x00, 0x03, +0xc0, 0x02, 0x42, 0x00, 0x1a, 0x03, 0x00, 0x03, +0xc0, 0x02, 0xc3, 0x00, 0x0a, 0x02, 0x00, 0x03, +0xc0, 0x02, 0x02, 0x20, 0x0a, 0x03, 0x00, 0x03, +0xc0, 0x02, 0x42, 0x20, 0x12, 0x00, 0x00, 0x03, +0xc0, 0x02, 0xa3, 0x20, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x01, 0xfe, 0x00, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x01, 0x80, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0xe0, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x30, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x0c, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x07, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x01, 0x9a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_vold []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x5a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x01, 0x8a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x06, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x08, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x30, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x60, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x01, 0xa0, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x01, 0xff, 0x20, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0xa2, 0x20, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x43, 0x20, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x02, 0x20, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x42, 0x20, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0xa3, 0x20, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x01, 0x20, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x42, 0x20, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x43, 0x20, 0x0a, 0x2a, 0x00, 0x03, +0xc0, 0x02, 0x02, 0x20, 0x0a, 0x3f, 0x00, 0x03, +0xc0, 0x02, 0x42, 0x00, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0xc3, 0x00, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x02, 0x20, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x02, 0x42, 0x20, 0x12, 0x00, 0x00, 0x03, +0xc0, 0x02, 0xa3, 0x20, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x01, 0xfe, 0x00, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x01, 0x80, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0xe0, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x30, 0x1a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x0c, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x07, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x01, 0x9a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x6a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_mic_on []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0xc0, 0x00, 0x00, 0x07, 0xd0, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x3c, 0x78, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x60, 0x0e, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x01, 0x00, 0x01, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x01, 0x80, 0x01, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x03, 0x00, 0x00, 0xc0, 0x00, 0x03, +0xc0, 0x00, 0x03, 0x68, 0x0d, 0xc0, 0x00, 0x03, +0xc0, 0x00, 0x03, 0xf8, 0x1f, 0xc0, 0x00, 0x03, +0xc0, 0x00, 0x06, 0x00, 0x00, 0x40, 0x00, 0x03, +0xc0, 0x00, 0x03, 0xa8, 0x0d, 0xc0, 0x00, 0x03, +0xc0, 0x00, 0x07, 0xf8, 0x1f, 0xc0, 0x00, 0x03, +0xc0, 0x00, 0x02, 0x00, 0x00, 0x40, 0x00, 0x03, +0xc0, 0x00, 0x07, 0x68, 0x0a, 0xc0, 0x00, 0x03, +0xc0, 0x00, 0x03, 0xf8, 0x1f, 0xe0, 0x00, 0x03, +0xc0, 0x00, 0x06, 0x00, 0x00, 0x40, 0x00, 0x03, +0xc0, 0x00, 0x2e, 0x00, 0x00, 0x7a, 0x00, 0x03, +0xc0, 0x00, 0xfe, 0x88, 0x81, 0x7f, 0x00, 0x03, +0xc0, 0x00, 0xc6, 0x99, 0x19, 0x42, 0x00, 0x03, +0xc0, 0x00, 0xd6, 0x89, 0x91, 0x77, 0x00, 0x03, +0xc0, 0x00, 0x7e, 0x00, 0x00, 0x7e, 0x00, 0x03, +0xc0, 0x00, 0x36, 0x00, 0x00, 0x48, 0x00, 0x03, +0xc0, 0x00, 0x12, 0x00, 0x00, 0x48, 0x00, 0x03, +0xc0, 0x00, 0x36, 0x00, 0x00, 0x6c, 0x00, 0x03, +0xc0, 0x00, 0x12, 0x00, 0x00, 0x48, 0x00, 0x03, +0xc0, 0x00, 0x1b, 0x00, 0x00, 0xd8, 0x00, 0x03, +0xc0, 0x00, 0x1b, 0x00, 0x00, 0xd8, 0x00, 0x03, +0xc0, 0x00, 0x09, 0x00, 0x01, 0x90, 0x00, 0x03, +0xc0, 0x00, 0x09, 0x80, 0x01, 0x30, 0x00, 0x03, +0xc0, 0x00, 0x0c, 0xe0, 0x06, 0x60, 0x00, 0x03, +0xc0, 0x00, 0x06, 0x60, 0x0c, 0xc0, 0x00, 0x03, +0xc0, 0x00, 0x03, 0x1f, 0x71, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x01, 0x87, 0xc3, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0xe0, 0x0e, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x3e, 0xf8, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x07, 0xe0, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x04, 0x20, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x06, 0x60, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x04, 0x60, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x3f, 0xfe, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0xd1, 0x07, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x01, 0x80, 0x01, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x3f, 0xff, 0xff, 0xfc, 0x00, 0x03, +0xc0, 0x00, 0x40, 0x24, 0xa8, 0x16, 0x00, 0x03, +0xc0, 0x00, 0x40, 0x00, 0x00, 0x06, 0x00, 0x03, +0xc0, 0x00, 0x3f, 0xff, 0xff, 0xfc, 0x00, 0x03, +0xc0, 0x00, 0x15, 0x49, 0x05, 0x40, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_bcast_on []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x40, 0x00, 0x00, 0x01, 0x00, 0x03, +0xc0, 0x00, 0xc0, 0x00, 0x00, 0x01, 0x80, 0x03, +0xc0, 0x00, 0x80, 0x00, 0x00, 0x00, 0xc0, 0x03, +0xc0, 0x01, 0x82, 0x00, 0x00, 0x20, 0x40, 0x03, +0xc0, 0x03, 0x06, 0x00, 0x00, 0x30, 0x60, 0x03, +0xc0, 0x02, 0x0c, 0x00, 0x00, 0x18, 0x20, 0x03, +0xc0, 0x02, 0x08, 0x10, 0x02, 0x08, 0x30, 0x03, +0xc0, 0x06, 0x18, 0x30, 0x06, 0x0c, 0x10, 0x03, +0xc0, 0x04, 0x18, 0x60, 0x03, 0x04, 0x18, 0x03, +0xc0, 0x04, 0x10, 0x60, 0x81, 0x06, 0x10, 0x03, +0xc0, 0x0c, 0x30, 0xc3, 0xe1, 0x86, 0x18, 0x03, +0xc0, 0x04, 0x30, 0x42, 0x30, 0x82, 0x18, 0x03, +0xc0, 0x0c, 0x10, 0xc2, 0x31, 0x86, 0x08, 0x03, +0xc0, 0x04, 0x30, 0xc3, 0x61, 0x86, 0x18, 0x03, +0xc0, 0x0c, 0x30, 0x43, 0xe1, 0x02, 0x18, 0x03, +0xc0, 0x04, 0x10, 0x61, 0xc1, 0x04, 0x10, 0x03, +0xc0, 0x06, 0x18, 0x23, 0x63, 0x04, 0x10, 0x03, +0xc0, 0x06, 0x18, 0x33, 0x26, 0x0c, 0x10, 0x03, +0xc0, 0x02, 0x0c, 0x02, 0x30, 0x08, 0x30, 0x03, +0xc0, 0x03, 0x04, 0x02, 0x30, 0x18, 0x20, 0x03, +0xc0, 0x01, 0x06, 0x06, 0x30, 0x30, 0x60, 0x03, +0xc0, 0x01, 0x82, 0x06, 0xf0, 0x20, 0xc0, 0x03, +0xc0, 0x00, 0xc0, 0x0f, 0x90, 0x00, 0xc0, 0x03, +0xc0, 0x00, 0xc0, 0x0e, 0x08, 0x01, 0x80, 0x03, +0xc0, 0x00, 0x00, 0x0b, 0x8c, 0x01, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x19, 0xcc, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x18, 0x74, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x10, 0x1e, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x30, 0x3e, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x21, 0xe2, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x2f, 0x83, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x7c, 0x01, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x60, 0x01, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x40, 0x01, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0xcc, 0x89, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0xcc, 0x88, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0xc8, 0x89, 0xc0, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x80, 0x00, 0xc0, 0x00, 0x03, +0xc0, 0x00, 0x01, 0x00, 0x00, 0x40, 0x00, 0x03, +0xc0, 0x00, 0x01, 0x80, 0x00, 0x40, 0x00, 0x03, +0xc0, 0x00, 0x03, 0xff, 0xcf, 0x60, 0x00, 0x03, +0xc0, 0x00, 0x02, 0x00, 0x04, 0x20, 0x00, 0x03, +0xc0, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, +0xc0, 0x00, 0x1f, 0xff, 0xff, 0xfe, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x55, 0x52, 0x40, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_rec_on []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0xff, 0xff, 0xc0, 0x00, 0x03, +0xc0, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x03, +0xc0, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, +0xc0, 0x00, 0x06, 0x3f, 0xff, 0x30, 0x00, 0x03, +0xc0, 0x00, 0x0c, 0x6a, 0xab, 0x90, 0x00, 0x03, +0xc0, 0x00, 0x18, 0x60, 0x01, 0xb0, 0x00, 0x03, +0xc0, 0x7f, 0xf0, 0x3f, 0xff, 0x30, 0x00, 0x03, +0xc0, 0x80, 0x00, 0x00, 0x88, 0x10, 0x00, 0x03, +0xc0, 0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x03, +0xc0, 0xc0, 0x00, 0x00, 0x00, 0x30, 0x0e, 0x03, +0xc0, 0x87, 0xfb, 0x40, 0x18, 0x30, 0x33, 0x03, +0xc0, 0x8f, 0xff, 0xe0, 0x3e, 0x10, 0x63, 0x03, +0xc0, 0x8c, 0x00, 0x30, 0x62, 0x31, 0xc3, 0x03, +0xc0, 0x8c, 0x00, 0x20, 0x23, 0x37, 0x1b, 0x03, +0xc0, 0xc4, 0x00, 0x20, 0x76, 0x1e, 0x19, 0x03, +0xc0, 0x8c, 0x00, 0x20, 0x3c, 0x36, 0x0b, 0x03, +0xc0, 0x8c, 0x00, 0x30, 0x00, 0x32, 0x1b, 0x03, +0xc0, 0x84, 0x00, 0x20, 0x00, 0x16, 0x19, 0x03, +0xc0, 0x8c, 0x00, 0x20, 0x00, 0x36, 0x0b, 0x03, +0xc0, 0xce, 0xaa, 0xa0, 0x00, 0x32, 0x19, 0x03, +0xc0, 0x87, 0xff, 0xe0, 0x00, 0x36, 0x0b, 0x03, +0xc0, 0x80, 0x00, 0x00, 0x00, 0x16, 0x1b, 0x03, +0xc0, 0x85, 0x6d, 0xa0, 0x00, 0x32, 0x19, 0x03, +0xc0, 0x8f, 0xff, 0xe0, 0x00, 0x36, 0x0b, 0x03, +0xc0, 0xc0, 0x00, 0x00, 0x00, 0x16, 0x1b, 0x03, +0xc0, 0x80, 0x00, 0x00, 0x00, 0x32, 0x09, 0x03, +0xc0, 0x80, 0x00, 0x00, 0x00, 0x36, 0x1b, 0x03, +0xc0, 0x80, 0x00, 0x00, 0x00, 0x1e, 0x1b, 0x03, +0xc0, 0xa0, 0x02, 0x04, 0x44, 0x73, 0x09, 0x03, +0xc0, 0xb3, 0x26, 0x64, 0x4c, 0xb1, 0xc3, 0x03, +0xc0, 0xb2, 0x26, 0x64, 0x44, 0xd0, 0x63, 0x03, +0xc0, 0xc0, 0x20, 0x00, 0x40, 0x30, 0x3f, 0x03, +0xc0, 0x80, 0x00, 0x00, 0x00, 0x30, 0x0e, 0x03, +0xc0, 0x7f, 0xff, 0xff, 0x80, 0x30, 0x00, 0x03, +0xc0, 0x25, 0x8b, 0x09, 0x70, 0x10, 0x00, 0x03, +0xc0, 0x01, 0x86, 0x00, 0x30, 0x30, 0x00, 0x03, +0xc0, 0x00, 0xfc, 0x00, 0x1f, 0xe0, 0x00, 0x03, +0xc0, 0x00, 0x50, 0x00, 0x02, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_snd_on []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0xc0, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x05, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0d, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0c, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x3d, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x6c, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0xcd, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x03, 0x85, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x0e, 0x0c, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x18, 0x0d, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x60, 0x05, 0x80, 0xc0, 0x03, +0xc0, 0x00, 0x00, 0xc0, 0x0c, 0x80, 0x60, 0x03, +0xc0, 0x00, 0x03, 0xc0, 0x0d, 0x80, 0x60, 0x03, +0xc0, 0x05, 0x5e, 0xc0, 0x04, 0x84, 0x20, 0x03, +0xc0, 0x1f, 0xf8, 0x40, 0x0d, 0x86, 0x10, 0x03, +0xc0, 0x30, 0x08, 0xc0, 0x0d, 0x83, 0x18, 0x03, +0xc0, 0x6e, 0x08, 0xc0, 0x04, 0x81, 0x18, 0x03, +0xc0, 0x20, 0x0c, 0xc0, 0x0d, 0x91, 0x88, 0x03, +0xc0, 0x60, 0x08, 0x40, 0x0c, 0xb0, 0x8c, 0x03, +0xc0, 0x26, 0x08, 0xc0, 0x05, 0x90, 0x8c, 0x03, +0xc0, 0x6e, 0x0c, 0xc0, 0x0d, 0x98, 0xc4, 0x03, +0xc0, 0x60, 0x08, 0x40, 0x0c, 0x88, 0xc4, 0x03, +0xc0, 0x20, 0x08, 0xc0, 0x05, 0x88, 0xc4, 0x03, +0xc0, 0x66, 0x0c, 0xc0, 0x0d, 0x8c, 0xc6, 0x03, +0xc0, 0x2a, 0x08, 0x40, 0x0c, 0x88, 0x44, 0x03, +0xc0, 0x60, 0x08, 0xc0, 0x05, 0x88, 0xc4, 0x03, +0xc0, 0x60, 0x08, 0xc0, 0x0d, 0x88, 0xc4, 0x03, +0xc0, 0x26, 0x0c, 0x00, 0x0c, 0x98, 0x84, 0x03, +0xc0, 0x64, 0x08, 0x00, 0x05, 0x98, 0x8c, 0x03, +0xc0, 0x20, 0x08, 0xc0, 0x0c, 0xb1, 0x8c, 0x03, +0xc0, 0x60, 0x0c, 0xc0, 0x05, 0x81, 0x08, 0x03, +0xc0, 0x2e, 0x08, 0x40, 0x0d, 0x83, 0x18, 0x03, +0xc0, 0x30, 0x08, 0xc0, 0x0c, 0x83, 0x18, 0x03, +0xc0, 0x1f, 0xfc, 0x00, 0x05, 0x86, 0x30, 0x03, +0xc0, 0x0a, 0xa6, 0x00, 0x0d, 0x80, 0x20, 0x03, +0xc0, 0x00, 0x03, 0x80, 0x04, 0x80, 0x60, 0x03, +0xc0, 0x00, 0x00, 0xc0, 0x0d, 0x80, 0xc0, 0x03, +0xc0, 0x00, 0x00, 0x70, 0x0d, 0x80, 0x80, 0x03, +0xc0, 0x00, 0x00, 0x1c, 0x04, 0x80, 0x80, 0x03, +0xc0, 0x00, 0x00, 0x0e, 0x0d, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x01, 0x85, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x01, 0xcc, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x7d, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x1c, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x0d, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x05, 0x80, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; + +const uint8_t icon_webcam_on []PROGMEM ={0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, +0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x01, 0xff, 0xff, 0xff, 0xff, 0x80, 0x03, +0xc0, 0x07, 0xbe, 0xfb, 0xef, 0xbf, 0xc0, 0x03, +0xc0, 0x06, 0x00, 0x00, 0x00, 0x00, 0x60, 0x03, +0xc0, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x60, 0x03, +0xc0, 0x08, 0x00, 0x00, 0x00, 0x00, 0x30, 0x03, +0xc0, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x20, 0x03, +0xc0, 0x0c, 0x00, 0x05, 0x40, 0x00, 0x30, 0x03, +0xc0, 0x08, 0x00, 0x3f, 0xf8, 0x00, 0x30, 0x03, +0xc0, 0x0c, 0x00, 0xe8, 0x2e, 0x00, 0x30, 0x03, +0xc0, 0x0c, 0x01, 0x80, 0x07, 0x00, 0x30, 0x03, +0xc0, 0x18, 0x03, 0x40, 0x01, 0x80, 0x30, 0x03, +0xc0, 0x0c, 0x06, 0x0f, 0xe1, 0xc0, 0x30, 0x03, +0xc0, 0x08, 0x0c, 0x1f, 0xf8, 0x60, 0x30, 0x03, +0xc0, 0x0c, 0x0c, 0x78, 0x38, 0x60, 0x20, 0x03, +0xc0, 0x0c, 0x18, 0xe0, 0x0e, 0x30, 0x30, 0x03, +0xc0, 0x08, 0x18, 0xc0, 0x06, 0x30, 0x70, 0x03, +0xc0, 0x0c, 0x11, 0xc0, 0x03, 0x10, 0x20, 0x03, +0xc0, 0x1c, 0x31, 0x80, 0x06, 0x38, 0x30, 0x03, +0xc0, 0x08, 0x19, 0x80, 0x03, 0x10, 0x30, 0x03, +0xc0, 0x0c, 0x31, 0x80, 0x01, 0x18, 0x60, 0x03, +0xc0, 0x08, 0x31, 0x80, 0x03, 0x38, 0x30, 0x03, +0xc0, 0x0c, 0x11, 0x80, 0x03, 0x10, 0x30, 0x03, +0xc0, 0x0c, 0x38, 0xc0, 0x03, 0x30, 0x60, 0x03, +0xc0, 0x0c, 0x10, 0xc0, 0x06, 0x30, 0x30, 0x03, +0xc0, 0x18, 0x18, 0xe0, 0x0e, 0x30, 0x30, 0x03, +0xc0, 0x0c, 0x0c, 0x38, 0x38, 0x60, 0x60, 0x03, +0xc0, 0x08, 0x0e, 0x3f, 0xe8, 0xc0, 0x30, 0x03, +0xc0, 0x0c, 0x06, 0x06, 0xa0, 0xc0, 0x30, 0x03, +0xc0, 0x0c, 0x03, 0x80, 0x83, 0x80, 0x60, 0x03, +0xc0, 0x08, 0x01, 0xa0, 0x0b, 0x00, 0x30, 0x03, +0xc0, 0x0c, 0x00, 0xf4, 0x5e, 0x00, 0x30, 0x03, +0xc0, 0x18, 0x00, 0x3f, 0xf8, 0x00, 0x60, 0x03, +0xc0, 0x0c, 0x00, 0x05, 0x80, 0x00, 0x30, 0x03, +0xc0, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x30, 0x03, +0xc0, 0x08, 0x00, 0x00, 0x00, 0x00, 0x60, 0x03, +0xc0, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x60, 0x03, +0xc0, 0x0e, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, +0xc0, 0x06, 0x80, 0x22, 0x54, 0x95, 0xc0, 0x03, +0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0x80, 0x03, +0xc0, 0x00, 0xbf, 0xee, 0xd6, 0xea, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, +0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, +0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, +0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, +0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, +0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, +0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00}; \ No newline at end of file diff --git a/arduino/obs_control.ino/latex_colors.h b/arduino/obs_control.ino/latex_colors.h new file mode 100644 index 0000000..7f7333c --- /dev/null +++ b/arduino/obs_control.ino/latex_colors.h @@ -0,0 +1,141 @@ + +#define ALICEBLUE 0xF7DF +#define ANTIQUEWHITE 0xFF5A +#define AQUA 0x07FF +#define AQUAMARINE 0x7FFA +#define AZURE 0xF7FF +#define BEIGE 0xF7BB +#define BISQUE 0xFF38 +#define BLACK 0x0000 +#define BLANCHEDALMOND 0xFF59 +#define BLUE 0x001F +#define BLUEVIOLET 0x895C +#define BROWN 0xA145 +#define BURLYWOOD 0xDDD0 +#define CADETBLUE 0x5CF4 +#define CHARTREUSE 0x7FE0 +#define CHOCOLATE 0xD343 +#define CORAL 0xFBEA +#define CORNFLOWERBLUE 0x64BD +#define CORNSILK 0xFFDB +#define CRIMSON 0xD8A7 +#define CYAN 0x07FF +#define DARKBLUE 0x0011 +#define DARKCYAN 0x0451 +#define DARKGOLDENROD 0xBC21 +#define DARKGRAY 0xAD55 +#define DARKGREEN 0x0320 +#define DARKKHAKI 0xBDAD +#define DARKMAGENTA 0x8811 +#define DARKOLIVEGREEN 0x5345 +#define DARKORANGE 0xFC60 +#define DARKORCHID 0x9999 +#define DARKRED 0x8800 +#define DARKSALMON 0xECAF +#define DARKSEAGREEN 0x8DF1 +#define DARKSLATEBLUE 0x49F1 +#define DARKSLATEGRAY 0x2A69 +#define DARKTURQUOISE 0x067A +#define DARKVIOLET 0x901A +#define DEEPPINK 0xF8B2 +#define DEEPSKYBLUE 0x05FF +#define DIMGRAY 0x6B4D +#define DODGERBLUE 0x1C9F +#define FIREBRICK 0xB104 +#define FLORALWHITE 0xFFDE +#define FORESTGREEN 0x2444 +#define FUCHSIA 0xF81F +#define GAINSBORO 0xDEFB +#define GHOSTWHITE 0xFFDF +#define GOLD 0xFEA0 +#define GOLDENROD 0xDD24 +#define GRAY 0x8410 +#define GREEN 0x0400 +#define GREENYELLOW 0xAFE5 +#define HONEYDEW 0xF7FE +#define HOTPINK 0xFB56 +#define INDIANRED 0xCAEB +#define INDIGO 0x4810 +#define IVORY 0xFFFE +#define KHAKI 0xF731 +#define LAVENDER 0xE73F +#define LAVENDERBLUSH 0xFF9E +#define LAWNGREEN 0x7FE0 +#define LEMONCHIFFON 0xFFD9 +#define LIGHTBLUE 0xAEDC +#define LIGHTCORAL 0xF410 +#define LIGHTCYAN 0xE7FF +#define LIGHTGOLDENRODYELLOW 0xFFDA +#define LIGHTGREEN 0x9772 +#define LIGHTGREY 0xD69A +#define LIGHTPINK 0xFDB8 +#define LIGHTSALMON 0xFD0F +#define LIGHTSEAGREEN 0x2595 +#define LIGHTSKYBLUE 0x867F +#define LIGHTSLATEGRAY 0x7453 +#define LIGHTSTEELBLUE 0xB63B +#define LIGHTYELLOW 0xFFFC +#define LIME 0x07E0 +#define LIMEGREEN 0x3666 +#define LINEN 0xFF9C +#define MAGENTA 0xF81F +#define MAROON 0x8000 +#define MEDIUMAQUAMARINE 0x6675 +#define MEDIUMBLUE 0x0019 +#define MEDIUMORCHID 0xBABA +#define MEDIUMPURPLE 0x939B +#define MEDIUMSEAGREEN 0x3D8E +#define MEDIUMSLATEBLUE 0x7B5D +#define MEDIUMSPRINGGREEN 0x07D3 +#define MEDIUMTURQUOISE 0x4E99 +#define MEDIUMVIOLETRED 0xC0B0 +#define MIDNIGHTBLUE 0x18CE +#define MINTCREAM 0xF7FF +#define MISTYROSE 0xFF3C +#define MOCCASIN 0xFF36 +#define NAVAJOWHITE 0xFEF5 +#define NAVY 0x0010 +#define OLDLACE 0xFFBC +#define OLIVE 0x8400 +#define OLIVEDRAB 0x6C64 +#define ORANGE 0xFD20 +#define ORANGERED 0xFA20 +#define ORCHID 0xDB9A +#define PALEGOLDENROD 0xEF55 +#define PALEGREEN 0x9FD3 +#define PALETURQUOISE 0xAF7D +#define PALEVIOLETRED 0xDB92 +#define PAPAYAWHIP 0xFF7A +#define PEACHPUFF 0xFED7 +#define PERU 0xCC27 +#define PINK 0xFE19 +#define PLUM 0xDD1B +#define POWDERBLUE 0xB71C +#define PURPLE 0x8010 +#define RED 0xF800 +#define ROSYBROWN 0xBC71 +#define ROYALBLUE 0x435C +#define SADDLEBROWN 0x8A22 +#define SALMON 0xFC0E +#define SANDYBROWN 0xF52C +#define SEAGREEN 0x2C4A +#define SEASHELL 0xFFBD +#define SIENNA 0xA285 +#define SILVER 0xC618 +#define SKYBLUE 0x867D +#define SLATEBLUE 0x6AD9 +#define SLATEGRAY 0x7412 +#define SNOW 0xFFDF +#define SPRINGGREEN 0x07EF +#define STEELBLUE 0x4416 +#define TAN 0xD5B1 +#define TEAL 0x0410 +#define THISTLE 0xDDFB +#define TOMATO 0xFB08 +#define TURQUOISE 0x471A +#define VIOLET 0xEC1D +#define WHEAT 0xF6F6 +#define WHITE 0xFFFF +#define WHITESMOKE 0xF7BE +#define YELLOW 0xFFE0 +#define YELLOWGREEN 0x9E66 \ No newline at end of file diff --git a/arduino/obs_control.ino/obs_control.ino.ino b/arduino/obs_control.ino/obs_control.ino.ino new file mode 100644 index 0000000..f5a24a9 --- /dev/null +++ b/arduino/obs_control.ino/obs_control.ino.ino @@ -0,0 +1,403 @@ +#include +#include "Keyboard.h" +#include "Adafruit_GFX.h" +#include "Adafruit_RA8875.h" +#include "latex_colors.h" +#include "icons.h" + +//These #defines are specific to the ARDUINO PRO MICRO +#define RA8875_INT 8 +#define RA8875_CS 10 +#define RA8875_RESET 7 + +/* For a 4.3" LCD - Alter for other displays*/ +#define LCD_WIDTH 480 +#define LCD_HEIGHT 272 + +/* Mimics layout of StreamDeck */ +#define NUM_ROWS 3 +#define NUM_COLS 5 + +/* The bitmaps are the displayed buttons, these are the touch areas for the buttons*/ +#define BOX_WIDTH 64 +#define BOX_HEIGHT 64 + +#define LCD_MARGIN 20 + +#define DEFAULT_SCENE 0 + +Adafruit_RA8875 tft = Adafruit_RA8875(RA8875_CS, RA8875_RESET); +uint16_t tx, ty; + +/* Button Array stores the X and Y corners of the button */ +uint16_t button_dims[NUM_ROWS*NUM_COLS][4]; +uint8_t button = 0; +uint8_t active_scene = DEFAULT_SCENE; +bool vol_toggle, bcast_toggle, rec_toggle, mic_toggle, webcam_toggle = 0; + +void toggleScene(uint8_t current_scene){ + switch(current_scene){ + case 0: + tft.drawBitmap(button_dims[current_scene][0], button_dims[current_scene][2], icon_scen_intro, 64, 64, WHITE); + break; + + case 1: + tft.drawBitmap(button_dims[current_scene][0], button_dims[current_scene][2], icon_scen_1, 64, 64, WHITE); + break; + + case 2: + tft.drawBitmap(button_dims[current_scene][0], button_dims[current_scene][2], icon_scen_2, 64, 64, WHITE); + break; + + case 3: + tft.drawBitmap(button_dims[current_scene][0], button_dims[current_scene][2], icon_scen_3, 64, 64, WHITE); + break; + + case 4: + tft.drawBitmap(button_dims[current_scene][0], button_dims[current_scene][2], icon_scen_outro, 64, 64, WHITE); + break; + + default: + break; + + } +} + +void setup() { + Serial.begin(115200); + Serial.println("Welcome to OBS Control...."); + + /* Initialise the display using 'RA8875_480x272' or 'RA8875_800x480' */ + if (!tft.begin(RA8875_480x272)) { + Serial.println("ERROR: RA8875 LCD control board not found!"); + while (1); + } else { + Serial.println("INFO: Found RA8875 LCD board..."); + } + + Serial.println("INFO: Initializing LCD..."); + tft.displayOn(true); + tft.GPIOX(true); // Enable TFT - display enable tied to GPIOX + tft.PWM1config(true, RA8875_PWM_CLK_DIV1024); // PWM output for backlight + tft.PWM1out(255); + + // With hardware accelleration this is instant + tft.fillScreen(BLACK); + + //Draw the boxes for the input + Serial.println("INFO: Drawing the buttons..."); + uint8_t col_spacing = (LCD_WIDTH-(NUM_COLS*BOX_WIDTH)-(LCD_MARGIN*2))/(NUM_COLS-1); + uint8_t row_spacing = (LCD_HEIGHT-(NUM_ROWS*BOX_HEIGHT)-(LCD_MARGIN*2))/(NUM_ROWS-1); + + for(uint8_t row=0; row < NUM_ROWS; row++){ + for(uint8_t col=0; col < NUM_COLS; col++){ + //store the meta-data about the button + button_dims[button][0] = LCD_MARGIN+(col*(BOX_WIDTH+col_spacing)); + button_dims[button][1] = LCD_MARGIN+(col*(BOX_WIDTH+col_spacing))+BOX_WIDTH; + button_dims[button][2] = LCD_MARGIN+row*(BOX_HEIGHT+row_spacing); + button_dims[button][3] = LCD_MARGIN+row*(BOX_HEIGHT+row_spacing)+BOX_HEIGHT; + + switch (button) { + case 0: + if(button == DEFAULT_SCENE) { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_intro, 64, 64, BLUE); + active_scene = 0; + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F1); + Keyboard.releaseAll(); + Keyboard.end(); + } else { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_intro, 64, 64, WHITE); + } + break; + + case 1: + if(button == DEFAULT_SCENE) { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_1, 64, 64, BLUE); + active_scene = 0; + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F2); + Keyboard.releaseAll(); + Keyboard.end(); + } else { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_1, 64, 64, WHITE); + } + break; + + case 2: + if(button == DEFAULT_SCENE) { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_2, 64, 64, BLUE); + active_scene = 0; + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F3); + Keyboard.releaseAll(); + Keyboard.end(); + } else { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_2, 64, 64, WHITE); + } + break; + + case 3: + if(button == DEFAULT_SCENE) { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_3, 64, 64, BLUE); + active_scene = 0; + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F4); + Keyboard.releaseAll(); + Keyboard.end(); + } else { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_3, 64, 64, WHITE); + } + break; + + case 4: + if(button == DEFAULT_SCENE) { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_outro, 64, 64, BLUE); + active_scene = 0; + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F5); + Keyboard.releaseAll(); + Keyboard.end(); + } else { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_outro, 64, 64, WHITE); + } + break; + + case 5: + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_webcam_on, 64, 64, WHITE); + break; + + case 6: + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_mic_on, 64, 64, WHITE); + break; + + case 7: + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_snd_on, 64, 64, WHITE); + break; + + case 8: + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_rec_on, 64, 64, WHITE); + break; + + case 9: + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_bcast_on, 64, 64, WHITE); + break; + + default: + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_blank, 64, 64, WHITE); + break; + } + + button++; + } + } + + //Set up the touch interface w/ interrupts + Serial.println("INFO: Setting up touch interface..."); + pinMode(RA8875_INT, INPUT); + digitalWrite(RA8875_INT, HIGH); + tft.touchEnable(true); + +} + +void loop() { + int x, y; + float xScale = 1024.0F/tft.width(); + float yScale = 1024.0F/tft.height(); + + /* Wait around for touch events */ + if (! digitalRead(RA8875_INT)) + { + while (tft.touched()) + { + tft.touchRead(&tx, &ty); + x = tx/xScale; + y = ty/yScale; + //Serial.print(x); Serial.print(", "); Serial.println(y); + delay(2); + } + for(uint8_t button=0; button<(NUM_ROWS*NUM_COLS); button++){ + if((x >= button_dims[button][0]) && (x <= button_dims[button][1])){ + if((y >= button_dims[button][2]) && (y <= button_dims[button][3])){ + + switch(button) { + case 0: + if(active_scene == button) { + break; + } else { + toggleScene(active_scene); + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_intro, 64, 64, BLUE); + active_scene = 0; + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F1); + Keyboard.releaseAll(); + Keyboard.end(); + break; + } + break; + + case 1: + if(active_scene == button) { + break; + } else { + toggleScene(active_scene); + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_1, 64, 64, BLUE); + active_scene = 1; + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F2); + Keyboard.releaseAll(); + Keyboard.end(); + break; + } + break; + + case 2: + if(active_scene == button) { + break; + } else { + toggleScene(active_scene); + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_2, 64, 64, BLUE); + active_scene = 2; + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F3); + Keyboard.releaseAll(); + Keyboard.end(); + break; + } + break; + + case 3: + if(active_scene == button) { + break; + } else { + toggleScene(active_scene); + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_3, 64, 64, BLUE); + active_scene = 3; + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F4); + Keyboard.releaseAll(); + Keyboard.end(); + break; + } + break; + + case 4: + if(active_scene == button) { + break; + } else { + toggleScene(active_scene); + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_scen_outro, 64, 64, BLUE); + active_scene = 4; + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F5); + Keyboard.releaseAll(); + Keyboard.end(); + } + break; + + case 5: + webcam_toggle = !webcam_toggle; + if(webcam_toggle == 1){ + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_webcam_on, 64, 64, RED); + } else { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_webcam_on, 64, 64, WHITE); + } + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F8); + Keyboard.releaseAll(); + Keyboard.end(); + break; + + case 6: + mic_toggle = !mic_toggle; + if(mic_toggle == 1){ + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_mic_on, 64, 64, RED); + } else { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_mic_on, 64, 64, WHITE); + } + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F9); + Keyboard.releaseAll(); + Keyboard.end(); + break; + + case 7: + vol_toggle = !vol_toggle; + if(vol_toggle == 1){ + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_snd_on, 64, 64, RED); + } else { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_snd_on, 64, 64, WHITE); + } + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F12); + Keyboard.releaseAll(); + Keyboard.end(); + break; + + case 8: + rec_toggle = !rec_toggle; + if(rec_toggle == 1){ + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_rec_on, 64, 64, RED); + } else { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_rec_on, 64, 64, WHITE); + } + + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F10); + Keyboard.releaseAll(); + Keyboard.end(); + break; + + case 9: + bcast_toggle = !bcast_toggle; + if(bcast_toggle == 1){ + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_bcast_on, 64, 64, RED); + } else { + tft.drawBitmap(button_dims[button][0], button_dims[button][2], icon_bcast_on, 64, 64, WHITE); + } + Keyboard.begin(); + Keyboard.press(KEY_LEFT_CTRL); + Keyboard.press(KEY_RIGHT_ALT); + Keyboard.press(KEY_F11); + Keyboard.releaseAll(); + Keyboard.end(); + break; + + default: + break; + } + } + } + } + + } + +}