LISTVIEW - Custom (Sample)

From SEGGER Wiki
Jump to: navigation, search
LISTVIEW_Custom.c
LISTVIEW Custom.png
File(s) required
  • LISTVIEW_Custom.c
Runs in simulation Yes
Runs on target Yes
Download LISTVIEW_Custom.c

This sample demonstrates custom drawing of a LISTVIEW widget.

Demo

Code

/*********************************************************************
*                    SEGGER Microcontroller GmbH                     *
*        Solutions for real time microcontroller applications        *
**********************************************************************
*                                                                    *
*        (c) 1996 - 2020  SEGGER Microcontroller GmbH                *
*                                                                    *
*        Internet: www.segger.com    Support:  support@segger.com    *
*                                                                    *
**********************************************************************

** emWin V6.10 - Graphical user interface for embedded applications **
emWin is protected by international copyright laws.   Knowledge of the
source code may not be used to write a similar product.  This file may
only  be used  in accordance  with  a license  and should  not be  re-
distributed in any way. We appreciate your understanding and fairness.
----------------------------------------------------------------------
File        : LISTVIEW_Custom.c
Purpose     : Sample that demonstrates how to give LISTVIEW widgets
              in emWin a custom look.
Requirements: WindowManager - (x)
              MemoryDevices - ( )
              AntiAliasing  - (x)
              VNC-Server    - ( )
              PNG-Library   - ( )
              TrueTypeFonts - ( )
Wiki link   : https://wiki.segger.com/LISTVIEW_-_Custom_(Sample)
---------------------------END-OF-HEADER------------------------------
*/

#include "DIALOG.h"

/*********************************************************************
*
*       Defines
*
**********************************************************************
*/
#define COLOR_BK          GUI_MAKE_COLOR(0x00121A1B)
#define COLOR_ITEM_BK     GUI_MAKE_COLOR(0x001C2422)
#define COLOR_ITEM_BK_SEL GUI_MAKE_COLOR(0x00005774)
#define COLOR_ITEM_FRAME  GUI_MAKE_COLOR(0x0056F8FF)
#define COLOR_TEXT        GUI_MAKE_COLOR(0x0054F1F8)
#define SPACING           10
#define FRAME_COLOR       GUI_MAKE_COLOR(0x0030737B)

/*********************************************************************
*
*       Static data
*
**********************************************************************
*/
static const char * _acContent[][4] = {
  { "Digital", "Output 1", "0.25A", "Med.", },
  { "Analog",  "Input 1",  "0.1A",  "Low",  },
  { "Analog",  "Input 2",  "0.4A",  "High", },
  { "Digital", "Input 3",  "0.1A",  "Low",  },
  { "None",    "NC",       "-.--",  "",     },
};



/* Start of unicode area <Basic Latin> */
GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0020[  1] = { /* code 0020, SPACE */
  0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0021[ 24] = { /* code 0021, EXCLAMATION MARK */
  0x9F, 0x00,
  0x9F, 0x00,
  0x9F, 0x00,
  0x9F, 0x00,
  0x7E, 0x00,
  0x7D, 0x00,
  0x7D, 0x00,
  0x7D, 0x00,
  0x47, 0x00,
  0x00, 0x00,
  0x5A, 0x00,
  0x8E, 0x10
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0022[  8] = { /* code 0022, QUOTATION MARK */
  0xD4, 0x97,
  0xD4, 0x97,
  0xD3, 0x96,
  0xD2, 0x95
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0023[ 60] = { /* code 0023, NUMBER SIGN */
  0x00, 0x07, 0xB0, 0x1F, 0x20,
  0x00, 0x0A, 0x80, 0x4E, 0x00,
  0x00, 0x0E, 0x40, 0x8A, 0x00,
  0x6F, 0xFF, 0xFF, 0xFF, 0xF4,
  0x12, 0x6D, 0x22, 0xE5, 0x20,
  0x00, 0x8A, 0x02, 0xF1, 0x00,
  0x00, 0xB7, 0x05, 0xD0, 0x00,
  0xFF, 0xFF, 0xFF, 0xFF, 0x90,
  0x23, 0xF3, 0x2B, 0x82, 0x10,
  0x04, 0xE0, 0x0E, 0x50, 0x00,
  0x07, 0xB0, 0x1F, 0x20, 0x00,
  0x09, 0x90, 0x3E, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0024[ 80] = { /* code 0024, DOLLAR SIGN */
  0x00, 0x00, 0x88, 0x00, 0x00,
  0x00, 0x00, 0x99, 0x00, 0x00,
  0x00, 0x4C, 0xFF, 0xB2, 0x00,
  0x03, 0xFB, 0x66, 0xEE, 0x10,
  0x08, 0xF1, 0x00, 0x4F, 0x60,
  0x09, 0xE0, 0x00, 0x0D, 0x70,
  0x05, 0xF9, 0x00, 0x00, 0x00,
  0x00, 0x8F, 0xE9, 0x30, 0x00,
  0x00, 0x03, 0x9E, 0xF9, 0x00,
  0x00, 0x00, 0x00, 0x9F, 0x50,
  0x1B, 0x60, 0x00, 0x0E, 0x90,
  0x0E, 0xB0, 0x00, 0x1F, 0x90,
  0x07, 0xF9, 0x46, 0xCF, 0x30,
  0x00, 0x7D, 0xFF, 0xB4, 0x00,
  0x00, 0x00, 0xB7, 0x00, 0x00,
  0x00, 0x00, 0x75, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0025[ 72] = { /* code 0025, PERCENT SIGN */
  0x03, 0xDF, 0xB1, 0x00, 0x00, 0x00,
  0x0D, 0x60, 0xB9, 0x00, 0x85, 0x00,
  0x2F, 0x00, 0x6C, 0x03, 0xE1, 0x00,
  0x2F, 0x00, 0x6C, 0x0C, 0x60, 0x00,
  0x0D, 0x60, 0xB9, 0x7B, 0x00, 0x00,
  0x03, 0xDF, 0xB3, 0xE2, 0x00, 0x00,
  0x00, 0x00, 0x0A, 0x85, 0xDF, 0xA0,
  0x00, 0x00, 0x5D, 0x1E, 0x51, 0xC7,
  0x00, 0x01, 0xD4, 0x4E, 0x00, 0x7B,
  0x00, 0x08, 0xA0, 0x4E, 0x00, 0x7B,
  0x00, 0x0B, 0x10, 0x1E, 0x51, 0xB7,
  0x00, 0x00, 0x00, 0x05, 0xDF, 0xA0
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0026[ 72] = { /* code 0026, AMPERSAND */
  0x00, 0x2B, 0xFE, 0x80, 0x00, 0x00,
  0x00, 0xDD, 0x56, 0xF7, 0x00, 0x00,
  0x02, 0xF6, 0x00, 0xBB, 0x00, 0x00,
  0x01, 0xF8, 0x02, 0xE7, 0x00, 0x00,
  0x00, 0x9F, 0x7E, 0xA0, 0x00, 0x00,
  0x00, 0x2F, 0xF8, 0x00, 0x00, 0x00,
  0x02, 0xEC, 0xDD, 0x10, 0x56, 0x00,
  0x0D, 0xC1, 0x2E, 0xB0, 0xAB, 0x00,
  0x2F, 0x60, 0x03, 0xFA, 0xE7, 0x00,
  0x1F, 0x80, 0x00, 0x5F, 0xE1, 0x00,
  0x09, 0xF8, 0x45, 0xBF, 0xF5, 0x00,
  0x00, 0x7D, 0xFE, 0xA3, 0xAE, 0x30
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0027[  8] = { /* code 0027, APOSTROPHE */
  0x2F, 0x20,
  0x2F, 0x10,
  0x2F, 0x00,
  0x2F, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0028[ 54] = { /* code 0028, LEFT PARENTHESIS */
  0x00, 0x08, 0x50,
  0x00, 0x7D, 0x20,
  0x03, 0xF3, 0x00,
  0x0B, 0xA0, 0x00,
  0x2F, 0x50, 0x00,
  0x7F, 0x00, 0x00,
  0xAC, 0x00, 0x00,
  0xCA, 0x00, 0x00,
  0xD9, 0x00, 0x00,
  0xD9, 0x00, 0x00,
  0xCB, 0x00, 0x00,
  0xAC, 0x00, 0x00,
  0x7F, 0x00, 0x00,
  0x2F, 0x50, 0x00,
  0x0B, 0xA0, 0x00,
  0x03, 0xF3, 0x00,
  0x00, 0x7D, 0x10,
  0x00, 0x08, 0x50
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0029[ 54] = { /* code 0029, RIGHT PARENTHESIS */
  0x75, 0x00, 0x00,
  0x4E, 0x40, 0x00,
  0x07, 0xE1, 0x00,
  0x00, 0xD8, 0x00,
  0x00, 0x8E, 0x00,
  0x00, 0x3F, 0x40,
  0x00, 0x0F, 0x70,
  0x00, 0x0D, 0x90,
  0x00, 0x0D, 0xB0,
  0x00, 0x0D, 0xB0,
  0x00, 0x0D, 0x90,
  0x00, 0x0F, 0x70,
  0x00, 0x3F, 0x40,
  0x00, 0x7E, 0x00,
  0x00, 0xD8, 0x00,
  0x06, 0xE1, 0x00,
  0x3E, 0x40, 0x00,
  0x75, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_002A[ 28] = { /* code 002A, ASTERISK */
  0x00, 0x0E, 0x40, 0x00,
  0x10, 0x0D, 0x40, 0x20,
  0x9E, 0xAE, 0xBD, 0xE0,
  0x02, 0xAF, 0xC4, 0x00,
  0x02, 0xE8, 0xF4, 0x00,
  0x0A, 0xB0, 0x7D, 0x00,
  0x02, 0x20, 0x03, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_002B[ 50] = { /* code 002B, PLUS SIGN */
  0x00, 0x00, 0x75, 0x00, 0x00,
  0x00, 0x00, 0xF9, 0x00, 0x00,
  0x00, 0x00, 0xF9, 0x00, 0x00,
  0x00, 0x00, 0xF9, 0x00, 0x00,
  0x6F, 0xFF, 0xFF, 0xFF, 0xF0,
  0x37, 0x77, 0xFC, 0x77, 0x70,
  0x00, 0x00, 0xF9, 0x00, 0x00,
  0x00, 0x00, 0xF9, 0x00, 0x00,
  0x00, 0x00, 0xF9, 0x00, 0x00,
  0x00, 0x00, 0x42, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_002C[  8] = { /* code 002C, COMMA */
  0x0D, 0x80,
  0x0F, 0x80,
  0x3F, 0x40,
  0x7A, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_002D[  6] = { /* code 002D, HYPHEN-MINUS */
  0xBF, 0xFF, 0x60,
  0x34, 0x44, 0x10
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_002E[  4] = { /* code 002E, FULL STOP */
  0x7B, 0x00,
  0xAD, 0x10
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_002F[ 52] = { /* code 002F, SOLIDUS */
  0x00, 0x00, 0x1E, 0x50,
  0x00, 0x00, 0x6E, 0x00,
  0x00, 0x00, 0xB8, 0x00,
  0x00, 0x02, 0xF2, 0x00,
  0x00, 0x08, 0xC0, 0x00,
  0x00, 0x0E, 0x60, 0x00,
  0x00, 0x5E, 0x10, 0x00,
  0x00, 0xB9, 0x00, 0x00,
  0x02, 0xF3, 0x00, 0x00,
  0x07, 0xC0, 0x00, 0x00,
  0x0D, 0x70, 0x00, 0x00,
  0x4F, 0x10, 0x00, 0x00,
  0xAA, 0x00, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0030[ 48] = { /* code 0030, DIGIT ZERO */
  0x05, 0xCF, 0xEA, 0x10,
  0x4F, 0xA4, 0x6E, 0xC0,
  0xBD, 0x00, 0x05, 0xF4,
  0xE9, 0x00, 0x01, 0xF7,
  0xF7, 0x00, 0x00, 0xF9,
  0xF7, 0x00, 0x00, 0xF9,
  0xF7, 0x00, 0x00, 0xF9,
  0xF7, 0x00, 0x00, 0xF8,
  0xE9, 0x00, 0x01, 0xF7,
  0xBD, 0x00, 0x05, 0xF3,
  0x3F, 0xB4, 0x5E, 0xC0,
  0x05, 0xCF, 0xEA, 0x10
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0031[ 36] = { /* code 0031, DIGIT ONE */
  0x00, 0x06, 0xD0,
  0x17, 0xEF, 0xF0,
  0x9E, 0x89, 0xF0,
  0x30, 0x07, 0xF0,
  0x00, 0x07, 0xF0,
  0x00, 0x07, 0xF0,
  0x00, 0x07, 0xF0,
  0x00, 0x07, 0xF0,
  0x00, 0x07, 0xF0,
  0x00, 0x07, 0xF0,
  0x00, 0x07, 0xF0,
  0x00, 0x07, 0xF0
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0032[ 60] = { /* code 0032, DIGIT TWO */
  0x00, 0x7D, 0xFE, 0xA2, 0x00,
  0x08, 0xF8, 0x46, 0xED, 0x00,
  0x1F, 0x90, 0x00, 0x5F, 0x50,
  0x3B, 0x40, 0x00, 0x3F, 0x50,
  0x00, 0x00, 0x00, 0x7F, 0x10,
  0x00, 0x00, 0x02, 0xE8, 0x00,
  0x00, 0x00, 0x1D, 0xC0, 0x00,
  0x00, 0x01, 0xCD, 0x10, 0x00,
  0x00, 0x0B, 0xD1, 0x00, 0x00,
  0x00, 0xAE, 0x20, 0x00, 0x00,
  0x09, 0xF6, 0x44, 0x44, 0x30,
  0x0F, 0xFF, 0xFF, 0xFF, 0xD0
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0033[ 60] = { /* code 0033, DIGIT THREE */
  0x00, 0x7D, 0xFE, 0x91, 0x00,
  0x07, 0xF8, 0x46, 0xEC, 0x00,
  0x0F, 0x90, 0x00, 0x6F, 0x30,
  0x16, 0x20, 0x00, 0x5F, 0x30,
  0x00, 0x00, 0x03, 0xDB, 0x00,
  0x00, 0x0B, 0xFF, 0xC1, 0x00,
  0x00, 0x03, 0x46, 0xEB, 0x00,
  0x00, 0x00, 0x00, 0x4F, 0x40,
  0x16, 0x20, 0x00, 0x2F, 0x60,
  0x2F, 0x80, 0x00, 0x4F, 0x40,
  0x09, 0xF7, 0x46, 0xEC, 0x00,
  0x00, 0x7D, 0xFE, 0x91, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0034[ 60] = { /* code 0034, DIGIT FOUR */
  0x00, 0x00, 0x07, 0xF7, 0x00,
  0x00, 0x00, 0x2F, 0xF7, 0x00,
  0x00, 0x00, 0xBC, 0xF7, 0x00,
  0x00, 0x06, 0xE3, 0xF7, 0x00,
  0x00, 0x2E, 0x62, 0xF7, 0x00,
  0x00, 0xBC, 0x02, 0xF7, 0x00,
  0x06, 0xF2, 0x02, 0xF7, 0x00,
  0x1E, 0x70, 0x02, 0xF7, 0x00,
  0x8F, 0xFF, 0xFF, 0xFF, 0xF2,
  0x24, 0x44, 0x45, 0xF9, 0x40,
  0x00, 0x00, 0x02, 0xF7, 0x00,
  0x00, 0x00, 0x02, 0xF7, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0035[ 48] = { /* code 0035, DIGIT FIVE */
  0x0B, 0xFF, 0xFF, 0xF7,
  0x0C, 0xB6, 0x66, 0x63,
  0x0E, 0x70, 0x00, 0x00,
  0x1F, 0x60, 0x00, 0x00,
  0x2F, 0xBE, 0xFC, 0x40,
  0x3F, 0xB6, 0x7D, 0xF3,
  0x01, 0x00, 0x02, 0xEA,
  0x00, 0x00, 0x00, 0xAD,
  0x44, 0x00, 0x00, 0xAD,
  0x8E, 0x10, 0x01, 0xEA,
  0x2E, 0xB4, 0x4B, 0xF3,
  0x03, 0xBF, 0xFB, 0x40
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0036[ 48] = { /* code 0036, DIGIT SIX */
  0x00, 0x29, 0xDF, 0x00,
  0x03, 0xED, 0x74, 0x00,
  0x1E, 0xA0, 0x00, 0x00,
  0x6F, 0x10, 0x00, 0x00,
  0xAC, 0x8E, 0xFC, 0x30,
  0xDF, 0xC5, 0x5D, 0xE2,
  0xDC, 0x00, 0x02, 0xF8,
  0xD9, 0x00, 0x00, 0xCB,
  0xCB, 0x00, 0x00, 0xCB,
  0x8F, 0x20, 0x02, 0xF8,
  0x1D, 0xD5, 0x5C, 0xE1,
  0x02, 0xAF, 0xFB, 0x20
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0037[ 60] = { /* code 0037, DIGIT SEVEN */
  0x6F, 0xFF, 0xFF, 0xFF, 0xD0,
  0x14, 0x44, 0x44, 0x4F, 0x80,
  0x00, 0x00, 0x00, 0x6F, 0x10,
  0x00, 0x00, 0x00, 0xD9, 0x00,
  0x00, 0x00, 0x05, 0xF3, 0x00,
  0x00, 0x00, 0x0C, 0xB0, 0x00,
  0x00, 0x00, 0x4F, 0x40, 0x00,
  0x00, 0x00, 0xBC, 0x00, 0x00,
  0x00, 0x03, 0xF6, 0x00, 0x00,
  0x00, 0x0A, 0xE0, 0x00, 0x00,
  0x00, 0x2F, 0x70, 0x00, 0x00,
  0x00, 0x9F, 0x10, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0038[ 60] = { /* code 0038, DIGIT EIGHT */
  0x00, 0x5C, 0xFE, 0xA2, 0x00,
  0x05, 0xFA, 0x46, 0xED, 0x00,
  0x0B, 0xD0, 0x00, 0x5F, 0x40,
  0x0B, 0xC0, 0x00, 0x4F, 0x40,
  0x05, 0xF6, 0x02, 0xBD, 0x00,
  0x00, 0x7F, 0xFF, 0xE2, 0x00,
  0x04, 0xF9, 0x46, 0xDB, 0x00,
  0x0D, 0xB0, 0x00, 0x3F, 0x60,
  0x0F, 0x70, 0x00, 0x0E, 0x90,
  0x0E, 0xA0, 0x00, 0x2F, 0x70,
  0x07, 0xF9, 0x45, 0xDE, 0x10,
  0x00, 0x6D, 0xFE, 0xA2, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0039[ 60] = { /* code 0039, DIGIT NINE */
  0x00, 0x6D, 0xFE, 0x70, 0x00,
  0x07, 0xF9, 0x48, 0xF7, 0x00,
  0x0E, 0xA0, 0x00, 0x9F, 0x10,
  0x2F, 0x60, 0x00, 0x3F, 0x50,
  0x2F, 0x60, 0x00, 0x2F, 0x60,
  0x0E, 0xA0, 0x00, 0x5F, 0x60,
  0x08, 0xF8, 0x47, 0xEF, 0x60,
  0x00, 0x8E, 0xFB, 0x6F, 0x40,
  0x00, 0x00, 0x00, 0x7F, 0x10,
  0x00, 0x00, 0x02, 0xE9, 0x00,
  0x00, 0x25, 0x8E, 0xC1, 0x00,
  0x00, 0x7F, 0xC7, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_003A[ 18] = { /* code 003A, COLON */
  0x9D, 0x10,
  0x7B, 0x00,
  0x00, 0x00,
  0x00, 0x00,
  0x00, 0x00,
  0x00, 0x00,
  0x00, 0x00,
  0x7B, 0x00,
  0xAD, 0x10
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_003B[ 22] = { /* code 003B, SEMICOLON */
  0x09, 0xD1,
  0x07, 0xB0,
  0x00, 0x00,
  0x00, 0x00,
  0x00, 0x00,
  0x00, 0x00,
  0x00, 0x00,
  0x0D, 0x80,
  0x0F, 0x80,
  0x3F, 0x40,
  0x7A, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_003C[ 28] = { /* code 003C, LESS-THAN SIGN */
  0x00, 0x00, 0x03, 0x95,
  0x00, 0x05, 0xBF, 0xD3,
  0x17, 0xDF, 0x94, 0x00,
  0x6F, 0xB1, 0x00, 0x00,
  0x17, 0xDE, 0x93, 0x00,
  0x00, 0x05, 0xBF, 0xD3,
  0x00, 0x00, 0x03, 0x95
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_003D[ 20] = { /* code 003D, EQUALS SIGN */
  0xBF, 0xFF, 0xFF, 0xF4,
  0x46, 0x66, 0x66, 0x61,
  0x00, 0x00, 0x00, 0x00,
  0xBF, 0xFF, 0xFF, 0xF4,
  0x46, 0x66, 0x66, 0x61
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_003E[ 28] = { /* code 003E, GREATER-THAN SIGN */
  0xB6, 0x10, 0x00, 0x00,
  0x8E, 0xE9, 0x30, 0x00,
  0x00, 0x5B, 0xFC, 0x50,
  0x00, 0x00, 0x3D, 0xF4,
  0x01, 0x6B, 0xFC, 0x50,
  0x8E, 0xE9, 0x30, 0x00,
  0xB6, 0x10, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_003F[ 48] = { /* code 003F, QUESTION MARK */
  0x02, 0xBF, 0xFB, 0x30,
  0x1E, 0xD6, 0x6D, 0xE1,
  0x5F, 0x30, 0x05, 0xF5,
  0x00, 0x00, 0x04, 0xF5,
  0x00, 0x00, 0x0B, 0xE1,
  0x00, 0x00, 0xAF, 0x50,
  0x00, 0x08, 0xF5, 0x00,
  0x00, 0x0E, 0xA0, 0x00,
  0x00, 0x09, 0x50, 0x00,
  0x00, 0x00, 0x00, 0x00,
  0x00, 0x0A, 0x60, 0x00,
  0x00, 0x1E, 0x90, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0040[128] = { /* code 0040, COMMERCIAL AT */
  0x00, 0x00, 0x17, 0xCF, 0xFD, 0x92, 0x00, 0x00,
  0x00, 0x03, 0xEB, 0x42, 0x23, 0x8E, 0x50, 0x00,
  0x00, 0x3E, 0x60, 0x00, 0x00, 0x03, 0xE3, 0x00,
  0x00, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x6B, 0x00,
  0x04, 0xE1, 0x00, 0x6D, 0xFB, 0x30, 0x0E, 0x20,
  0x09, 0x90, 0x05, 0xE4, 0x2C, 0x70, 0x0B, 0x50,
  0x0C, 0x60, 0x0E, 0x70, 0x0C, 0x60, 0x09, 0x60,
  0x0F, 0x40, 0x3F, 0x10, 0x0E, 0x50, 0x09, 0x60,
  0x0F, 0x20, 0x6E, 0x00, 0x0F, 0x30, 0x0B, 0x50,
  0x0F, 0x30, 0x6E, 0x00, 0x3F, 0x20, 0x0E, 0x20,
  0x0D, 0x50, 0x3F, 0x74, 0xCF, 0x50, 0x9A, 0x00,
  0x0A, 0x90, 0x08, 0xFD, 0x56, 0xEF, 0x91, 0x00,
  0x04, 0xE1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0xBB, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x1B, 0xD5, 0x10, 0x25, 0x30, 0x00, 0x00,
  0x00, 0x00, 0x6B, 0xEF, 0xEA, 0x30, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0041[ 72] = { /* code 0041, LATIN CAPITAL LETTER A */
  0x00, 0x00, 0x6F, 0x60, 0x00, 0x00,
  0x00, 0x00, 0xCF, 0xC0, 0x00, 0x00,
  0x00, 0x02, 0xF9, 0xF2, 0x00, 0x00,
  0x00, 0x08, 0xE1, 0xE8, 0x00, 0x00,
  0x00, 0x0E, 0xA0, 0xAE, 0x00, 0x00,
  0x00, 0x5F, 0x50, 0x4F, 0x50, 0x00,
  0x00, 0xBE, 0x00, 0x0E, 0xB0, 0x00,
  0x01, 0xF9, 0x00, 0x09, 0xF1, 0x00,
  0x07, 0xFF, 0xFF, 0xFF, 0xF7, 0x00,
  0x0D, 0xD6, 0x66, 0x66, 0xDD, 0x00,
  0x3F, 0x70, 0x00, 0x00, 0x7F, 0x30,
  0xAF, 0x10, 0x00, 0x00, 0x1F, 0xA0
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0042[ 60] = { /* code 0042, LATIN CAPITAL LETTER B */
  0x9F, 0xFF, 0xFE, 0xA2, 0x00,
  0x9F, 0x66, 0x67, 0xED, 0x00,
  0x9F, 0x00, 0x00, 0x6F, 0x30,
  0x9F, 0x00, 0x00, 0x5F, 0x40,
  0x9F, 0x00, 0x03, 0xDD, 0x00,
  0x9F, 0xFF, 0xFF, 0xE2, 0x00,
  0x9F, 0x44, 0x46, 0xDD, 0x10,
  0x9F, 0x00, 0x00, 0x2F, 0x70,
  0x9F, 0x00, 0x00, 0x0F, 0x90,
  0x9F, 0x00, 0x00, 0x3F, 0x70,
  0x9F, 0x44, 0x47, 0xDE, 0x10,
  0x9F, 0xFF, 0xFE, 0xA2, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0043[ 60] = { /* code 0043, LATIN CAPITAL LETTER C */
  0x00, 0x6C, 0xFF, 0xB4, 0x00,
  0x0A, 0xF9, 0x66, 0xBF, 0x50,
  0x6F, 0x60, 0x00, 0x0C, 0xE0,
  0xBD, 0x00, 0x00, 0x06, 0xF3,
  0xFA, 0x00, 0x00, 0x00, 0x00,
  0xF9, 0x00, 0x00, 0x00, 0x00,
  0xF9, 0x00, 0x00, 0x00, 0x00,
  0xFA, 0x00, 0x00, 0x00, 0x00,
  0xBD, 0x00, 0x00, 0x06, 0xF3,
  0x6F, 0x60, 0x00, 0x0C, 0xE0,
  0x0B, 0xF8, 0x46, 0xBF, 0x40,
  0x00, 0x7D, 0xFE, 0xB4, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0044[ 60] = { /* code 0044, LATIN CAPITAL LETTER D */
  0x9F, 0xFF, 0xFB, 0x50, 0x00,
  0x9F, 0x66, 0x6A, 0xF9, 0x00,
  0x9F, 0x00, 0x00, 0x6F, 0x60,
  0x9F, 0x00, 0x00, 0x0C, 0xC0,
  0x9F, 0x00, 0x00, 0x08, 0xF1,
  0x9F, 0x00, 0x00, 0x07, 0xF2,
  0x9F, 0x00, 0x00, 0x07, 0xF2,
  0x9F, 0x00, 0x00, 0x08, 0xF1,
  0x9F, 0x00, 0x00, 0x0C, 0xC0,
  0x9F, 0x00, 0x00, 0x7F, 0x60,
  0x9F, 0x44, 0x6A, 0xF9, 0x00,
  0x9F, 0xFF, 0xEB, 0x50, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0045[ 60] = { /* code 0045, LATIN CAPITAL LETTER E */
  0x9F, 0xFF, 0xFF, 0xFF, 0x00,
  0x9F, 0x66, 0x66, 0x66, 0x00,
  0x9F, 0x00, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00, 0x00,
  0x9F, 0xFF, 0xFF, 0xF4, 0x00,
  0x9F, 0x44, 0x44, 0x41, 0x00,
  0x9F, 0x00, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00, 0x00,
  0x9F, 0x44, 0x44, 0x44, 0x00,
  0x9F, 0xFF, 0xFF, 0xFF, 0x20
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0046[ 48] = { /* code 0046, LATIN CAPITAL LETTER F */
  0x9F, 0xFF, 0xFF, 0xFD,
  0x9F, 0x66, 0x66, 0x65,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0xFF, 0xFF, 0xF2,
  0x9F, 0x44, 0x44, 0x40,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0047[ 60] = { /* code 0047, LATIN CAPITAL LETTER G */
  0x00, 0x7C, 0xFF, 0xB5, 0x00,
  0x0B, 0xF9, 0x66, 0xBF, 0x60,
  0x6F, 0x60, 0x00, 0x0B, 0xE1,
  0xBD, 0x00, 0x00, 0x04, 0xB3,
  0xEA, 0x00, 0x00, 0x00, 0x00,
  0xF9, 0x00, 0x00, 0x00, 0x00,
  0xF9, 0x00, 0x2F, 0xFF, 0xF6,
  0xEA, 0x00, 0x04, 0x47, 0xF6,
  0xBE, 0x00, 0x00, 0x04, 0xF6,
  0x4F, 0x80, 0x00, 0x04, 0xF6,
  0x08, 0xFA, 0x55, 0x7D, 0xE3,
  0x00, 0x5B, 0xFF, 0xD9, 0x20
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0048[ 60] = { /* code 0048, LATIN CAPITAL LETTER H */
  0x9F, 0x00, 0x00, 0x00, 0xDB,
  0x9F, 0x00, 0x00, 0x00, 0xDB,
  0x9F, 0x00, 0x00, 0x00, 0xDB,
  0x9F, 0x00, 0x00, 0x00, 0xDB,
  0x9F, 0x00, 0x00, 0x00, 0xDB,
  0x9F, 0xFF, 0xFF, 0xFF, 0xFB,
  0x9F, 0x44, 0x44, 0x44, 0xEB,
  0x9F, 0x00, 0x00, 0x00, 0xDB,
  0x9F, 0x00, 0x00, 0x00, 0xDB,
  0x9F, 0x00, 0x00, 0x00, 0xDB,
  0x9F, 0x00, 0x00, 0x00, 0xDB,
  0x9F, 0x00, 0x00, 0x00, 0xDB
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0049[ 24] = { /* code 0049, LATIN CAPITAL LETTER I */
  0x7F, 0x20,
  0x7F, 0x20,
  0x7F, 0x20,
  0x7F, 0x20,
  0x7F, 0x20,
  0x7F, 0x20,
  0x7F, 0x20,
  0x7F, 0x20,
  0x7F, 0x20,
  0x7F, 0x20,
  0x7F, 0x20,
  0x7F, 0x20
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_004A[ 60] = { /* code 004A, LATIN CAPITAL LETTER J */
  0x00, 0x00, 0x00, 0x7F, 0x20,
  0x00, 0x00, 0x00, 0x7F, 0x20,
  0x00, 0x00, 0x00, 0x7F, 0x20,
  0x00, 0x00, 0x00, 0x7F, 0x20,
  0x00, 0x00, 0x00, 0x7F, 0x20,
  0x00, 0x00, 0x00, 0x7F, 0x20,
  0x00, 0x00, 0x00, 0x7F, 0x20,
  0x00, 0x00, 0x00, 0x7F, 0x20,
  0x47, 0x00, 0x00, 0x8F, 0x10,
  0x7F, 0x30, 0x00, 0xBE, 0x00,
  0x1E, 0xD6, 0x5A, 0xF7, 0x00,
  0x03, 0xBE, 0xFD, 0x60, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_004B[ 60] = { /* code 004B, LATIN CAPITAL LETTER K */
  0x9F, 0x00, 0x00, 0x2E, 0xC1,
  0x9F, 0x00, 0x01, 0xDD, 0x10,
  0x9F, 0x00, 0x0B, 0xE2, 0x00,
  0x9F, 0x00, 0xAE, 0x30, 0x00,
  0x9F, 0x08, 0xF4, 0x00, 0x00,
  0x9F, 0x6F, 0xB0, 0x00, 0x00,
  0x9F, 0xD6, 0xF7, 0x00, 0x00,
  0x9F, 0x30, 0x7F, 0x30, 0x00,
  0x9F, 0x00, 0x0B, 0xE1, 0x00,
  0x9F, 0x00, 0x02, 0xEB, 0x00,
  0x9F, 0x00, 0x00, 0x5F, 0x80,
  0x9F, 0x00, 0x00, 0x09, 0xF4
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_004C[ 48] = { /* code 004C, LATIN CAPITAL LETTER L */
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x44, 0x44, 0x43,
  0x9F, 0xFF, 0xFF, 0xFB
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_004D[ 84] = { /* code 004D, LATIN CAPITAL LETTER M */
  0x9F, 0xA0, 0x00, 0x00, 0x00, 0xDF, 0x70,
  0x9F, 0xF1, 0x00, 0x00, 0x04, 0xFF, 0x70,
  0x9E, 0xF7, 0x00, 0x00, 0x0A, 0xDF, 0x70,
  0x9D, 0xAD, 0x00, 0x00, 0x1F, 0x7F, 0x70,
  0x9D, 0x4F, 0x40, 0x00, 0x7F, 0x3F, 0x70,
  0x9E, 0x0D, 0xA0, 0x00, 0xDA, 0x2F, 0x70,
  0x9F, 0x07, 0xF1, 0x04, 0xF4, 0x2F, 0x70,
  0x9F, 0x01, 0xF7, 0x0A, 0xD0, 0x2F, 0x70,
  0x9F, 0x00, 0x9D, 0x1F, 0x70, 0x2F, 0x70,
  0x9F, 0x00, 0x3F, 0xBF, 0x10, 0x2F, 0x70,
  0x9F, 0x00, 0x0C, 0xF9, 0x00, 0x2F, 0x70,
  0x9F, 0x00, 0x06, 0xF3, 0x00, 0x2F, 0x70
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_004E[ 60] = { /* code 004E, LATIN CAPITAL LETTER N */
  0xBF, 0x40, 0x00, 0x00, 0xF9,
  0xBF, 0xD0, 0x00, 0x00, 0xF9,
  0xBF, 0xF8, 0x00, 0x00, 0xF9,
  0xBD, 0x9F, 0x30, 0x00, 0xF9,
  0xBD, 0x1D, 0xD0, 0x00, 0xF9,
  0xBD, 0x04, 0xF8, 0x00, 0xF9,
  0xBD, 0x00, 0x9F, 0x30, 0xF9,
  0xBD, 0x00, 0x1D, 0xC0, 0xF9,
  0xBD, 0x00, 0x04, 0xF7, 0xF9,
  0xBD, 0x00, 0x00, 0xAF, 0xF9,
  0xBD, 0x00, 0x00, 0x1E, 0xF9,
  0xBD, 0x00, 0x00, 0x05, 0xF9
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_004F[ 60] = { /* code 004F, LATIN CAPITAL LETTER O */
  0x00, 0x6C, 0xFE, 0xB4, 0x00,
  0x0A, 0xFA, 0x67, 0xCF, 0x50,
  0x5F, 0x70, 0x00, 0x0B, 0xE1,
  0xBD, 0x00, 0x00, 0x03, 0xF6,
  0xEA, 0x00, 0x00, 0x00, 0xF9,
  0xF9, 0x00, 0x00, 0x00, 0xDB,
  0xF9, 0x00, 0x00, 0x00, 0xDB,
  0xEA, 0x00, 0x00, 0x00, 0xE9,
  0xBD, 0x00, 0x00, 0x03, 0xF6,
  0x5F, 0x70, 0x00, 0x0B, 0xE1,
  0x0A, 0xFA, 0x66, 0xCF, 0x60,
  0x00, 0x6C, 0xFF, 0xB4, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0050[ 60] = { /* code 0050, LATIN CAPITAL LETTER P */
  0x7F, 0xFF, 0xFF, 0xC6, 0x00,
  0x7F, 0x76, 0x66, 0xAF, 0x80,
  0x7F, 0x20, 0x00, 0x0A, 0xF1,
  0x7F, 0x20, 0x00, 0x06, 0xF4,
  0x7F, 0x20, 0x00, 0x07, 0xF3,
  0x7F, 0x20, 0x00, 0x5E, 0xC0,
  0x7F, 0xFF, 0xFF, 0xFB, 0x20,
  0x7F, 0x54, 0x44, 0x20, 0x00,
  0x7F, 0x20, 0x00, 0x00, 0x00,
  0x7F, 0x20, 0x00, 0x00, 0x00,
  0x7F, 0x20, 0x00, 0x00, 0x00,
  0x7F, 0x20, 0x00, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0051[ 70] = { /* code 0051, LATIN CAPITAL LETTER Q */
  0x00, 0x6C, 0xFF, 0xB4, 0x00,
  0x08, 0xFB, 0x66, 0xBF, 0x60,
  0x4F, 0x90, 0x00, 0x0A, 0xF2,
  0xAE, 0x10, 0x00, 0x02, 0xF8,
  0xDB, 0x00, 0x00, 0x00, 0xDB,
  0xE9, 0x00, 0x00, 0x00, 0xBB,
  0xE9, 0x00, 0x00, 0x00, 0xBB,
  0xDB, 0x00, 0x00, 0x00, 0xDB,
  0xAE, 0x00, 0x00, 0x02, 0xF8,
  0x4F, 0x80, 0x00, 0x0A, 0xF2,
  0x08, 0xFB, 0x66, 0xBF, 0x60,
  0x00, 0x5C, 0xFF, 0xFE, 0x30,
  0x00, 0x00, 0x00, 0x2C, 0xF6,
  0x00, 0x00, 0x00, 0x01, 0xA3
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0052[ 60] = { /* code 0052, LATIN CAPITAL LETTER R */
  0xDF, 0xFF, 0xFD, 0x81, 0x00,
  0xDD, 0x66, 0x69, 0xFB, 0x00,
  0xDB, 0x00, 0x00, 0x7F, 0x40,
  0xDB, 0x00, 0x00, 0x4F, 0x60,
  0xDB, 0x00, 0x00, 0x5F, 0x50,
  0xDB, 0x00, 0x04, 0xED, 0x00,
  0xDF, 0xFF, 0xFF, 0xB2, 0x00,
  0xDC, 0x44, 0x6F, 0x60, 0x00,
  0xDB, 0x00, 0x0B, 0xE1, 0x00,
  0xDB, 0x00, 0x03, 0xF8, 0x00,
  0xDB, 0x00, 0x00, 0x9F, 0x20,
  0xDB, 0x00, 0x00, 0x1F, 0xB0
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0053[ 60] = { /* code 0053, LATIN CAPITAL LETTER S */
  0x00, 0x5B, 0xFF, 0xC6, 0x00,
  0x06, 0xFA, 0x66, 0x9F, 0x90,
  0x0E, 0xB0, 0x00, 0x08, 0xF2,
  0x0F, 0xA0, 0x00, 0x02, 0x93,
  0x0A, 0xF7, 0x10, 0x00, 0x00,
  0x01, 0xAF, 0xFB, 0x61, 0x00,
  0x00, 0x02, 0x8C, 0xFE, 0x50,
  0x00, 0x00, 0x00, 0x3C, 0xF2,
  0x39, 0x20, 0x00, 0x04, 0xF6,
  0x2F, 0x80, 0x00, 0x05, 0xF5,
  0x08, 0xFA, 0x54, 0x7E, 0xD0,
  0x00, 0x5B, 0xEF, 0xD8, 0x10
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0054[ 60] = { /* code 0054, LATIN CAPITAL LETTER T */
  0x9F, 0xFF, 0xFF, 0xFF, 0xFB,
  0x36, 0x66, 0xDE, 0x66, 0x64,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0055[ 60] = { /* code 0055, LATIN CAPITAL LETTER U */
  0xDB, 0x00, 0x00, 0x0B, 0xD0,
  0xDB, 0x00, 0x00, 0x0B, 0xD0,
  0xDB, 0x00, 0x00, 0x0B, 0xD0,
  0xDB, 0x00, 0x00, 0x0B, 0xD0,
  0xDB, 0x00, 0x00, 0x0B, 0xD0,
  0xDB, 0x00, 0x00, 0x0B, 0xD0,
  0xDB, 0x00, 0x00, 0x0B, 0xD0,
  0xDB, 0x00, 0x00, 0x0B, 0xD0,
  0xCC, 0x00, 0x00, 0x0B, 0xD0,
  0x9F, 0x20, 0x00, 0x1E, 0xA0,
  0x2E, 0xD7, 0x46, 0xDE, 0x20,
  0x02, 0xAE, 0xFE, 0xA2, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0056[ 72] = { /* code 0056, LATIN CAPITAL LETTER V */
  0x7F, 0x30, 0x00, 0x00, 0x3F, 0x80,
  0x2F, 0x90, 0x00, 0x00, 0x8F, 0x20,
  0x0B, 0xE0, 0x00, 0x00, 0xEB, 0x00,
  0x06, 0xF4, 0x00, 0x04, 0xF6, 0x00,
  0x01, 0xE9, 0x00, 0x09, 0xF1, 0x00,
  0x00, 0x9E, 0x00, 0x0E, 0xA0, 0x00,
  0x00, 0x4F, 0x50, 0x5F, 0x40, 0x00,
  0x00, 0x0D, 0xA0, 0xAD, 0x00, 0x00,
  0x00, 0x07, 0xF1, 0xF8, 0x00, 0x00,
  0x00, 0x02, 0xFB, 0xF2, 0x00, 0x00,
  0x00, 0x00, 0xBF, 0xC0, 0x00, 0x00,
  0x00, 0x00, 0x6F, 0x60, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0057[ 96] = { /* code 0057, LATIN CAPITAL LETTER W */
  0x6F, 0x30, 0x00, 0x3F, 0x70, 0x00, 0x0F, 0x90,
  0x2F, 0x70, 0x00, 0x7F, 0xB0, 0x00, 0x3F, 0x50,
  0x0D, 0xA0, 0x00, 0xBE, 0xF1, 0x00, 0x7F, 0x10,
  0x0A, 0xE0, 0x01, 0xF7, 0xF4, 0x00, 0xAD, 0x00,
  0x06, 0xF2, 0x05, 0xF2, 0xC9, 0x00, 0xE9, 0x00,
  0x02, 0xF6, 0x09, 0xC0, 0x8D, 0x02, 0xF6, 0x00,
  0x00, 0xE9, 0x0D, 0x80, 0x3F, 0x26, 0xF2, 0x00,
  0x00, 0xAD, 0x3F, 0x30, 0x0E, 0x69, 0xD0, 0x00,
  0x00, 0x7F, 0x7E, 0x00, 0x0A, 0xAC, 0x90, 0x00,
  0x00, 0x3F, 0xD9, 0x00, 0x06, 0xEE, 0x60, 0x00,
  0x00, 0x0E, 0xF5, 0x00, 0x01, 0xFF, 0x20, 0x00,
  0x00, 0x0A, 0xF1, 0x00, 0x00, 0xCE, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0058[ 72] = { /* code 0058, LATIN CAPITAL LETTER X */
  0x3F, 0xB0, 0x00, 0x02, 0xEC, 0x00,
  0x07, 0xF5, 0x00, 0x0A, 0xF3, 0x00,
  0x00, 0xCD, 0x10, 0x4F, 0x80, 0x00,
  0x00, 0x3F, 0x80, 0xDD, 0x00, 0x00,
  0x00, 0x08, 0xF9, 0xF3, 0x00, 0x00,
  0x00, 0x00, 0xDF, 0x90, 0x00, 0x00,
  0x00, 0x01, 0xDF, 0xA0, 0x00, 0x00,
  0x00, 0x09, 0xF8, 0xF4, 0x00, 0x00,
  0x00, 0x4F, 0x70, 0xCD, 0x10, 0x00,
  0x01, 0xDD, 0x00, 0x3F, 0x90, 0x00,
  0x08, 0xF4, 0x00, 0x09, 0xF3, 0x00,
  0x3F, 0xA0, 0x00, 0x01, 0xED, 0x10
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0059[ 60] = { /* code 0059, LATIN CAPITAL LETTER Y */
  0x9F, 0x30, 0x00, 0x01, 0xEB,
  0x1E, 0xB0, 0x00, 0x08, 0xF3,
  0x07, 0xF4, 0x00, 0x1F, 0xA0,
  0x00, 0xEB, 0x00, 0x8F, 0x20,
  0x00, 0x6F, 0x52, 0xF8, 0x00,
  0x00, 0x0C, 0xC9, 0xE1, 0x00,
  0x00, 0x04, 0xFF, 0x70, 0x00,
  0x00, 0x00, 0xCE, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00,
  0x00, 0x00, 0xBD, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_005A[ 60] = { /* code 005A, LATIN CAPITAL LETTER Z */
  0x2F, 0xFF, 0xFF, 0xFF, 0xF4,
  0x16, 0x66, 0x66, 0x6E, 0xE1,
  0x00, 0x00, 0x00, 0x7F, 0x50,
  0x00, 0x00, 0x03, 0xF9, 0x00,
  0x00, 0x00, 0x0D, 0xD1, 0x00,
  0x00, 0x00, 0x9F, 0x30, 0x00,
  0x00, 0x04, 0xF8, 0x00, 0x00,
  0x00, 0x1D, 0xC0, 0x00, 0x00,
  0x00, 0xAF, 0x30, 0x00, 0x00,
  0x05, 0xF7, 0x00, 0x00, 0x00,
  0x2E, 0xD4, 0x44, 0x44, 0x42,
  0x4F, 0xFF, 0xFF, 0xFF, 0xF7
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_005B[ 34] = { /* code 005B, LEFT SQUARE BRACKET */
  0xBF, 0xF6,
  0xBC, 0x41,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBB, 0x00,
  0xBC, 0x41,
  0xBF, 0xF6
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_005C[ 52] = { /* code 005C, REVERSE SOLIDUS */
  0x7E, 0x10, 0x00, 0x00,
  0x2F, 0x60, 0x00, 0x00,
  0x0B, 0xB0, 0x00, 0x00,
  0x05, 0xF2, 0x00, 0x00,
  0x00, 0xE8, 0x00, 0x00,
  0x00, 0x8E, 0x00, 0x00,
  0x00, 0x2F, 0x50, 0x00,
  0x00, 0x0B, 0xB0, 0x00,
  0x00, 0x06, 0xF2, 0x00,
  0x00, 0x00, 0xE7, 0x00,
  0x00, 0x00, 0x9D, 0x00,
  0x00, 0x00, 0x3F, 0x40,
  0x00, 0x00, 0x0C, 0xA0
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_005D[ 34] = { /* code 005D, RIGHT SQUARE BRACKET */
  0xDF, 0xF4,
  0x38, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x06, 0xF4,
  0x38, 0xF4,
  0xDF, 0xF4
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_005E[ 24] = { /* code 005E, CIRCUMFLEX ACCENT */
  0x00, 0x3F, 0x30, 0x00,
  0x00, 0xAF, 0xA0, 0x00,
  0x01, 0xF9, 0xF1, 0x00,
  0x07, 0xD0, 0xE7, 0x00,
  0x0D, 0x70, 0x8D, 0x00,
  0x5F, 0x20, 0x2F, 0x40
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_005F[  8] = { /* code 005F, LOW LINE */
  0xFF, 0xFF, 0xFF, 0xF9,
  0x44, 0x44, 0x44, 0x42
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0060[  4] = { /* code 0060, GRAVE ACCENT */
  0x2D, 0xB1,
  0x01, 0xC8
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0061[ 45] = { /* code 0061, LATIN SMALL LETTER A */
  0x00, 0x7D, 0xFE, 0x80, 0x00,
  0x08, 0xF7, 0x48, 0xF8, 0x00,
  0x0D, 0x80, 0x00, 0xBD, 0x00,
  0x00, 0x00, 0x00, 0x9D, 0x00,
  0x02, 0x9D, 0xFF, 0xFD, 0x00,
  0x0D, 0xC4, 0x22, 0xAD, 0x00,
  0x3F, 0x60, 0x00, 0xBD, 0x00,
  0x1E, 0xD6, 0x6B, 0xFD, 0x00,
  0x03, 0xCF, 0xE8, 0x9F, 0x10
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0062[ 52] = { /* code 0062, LATIN SMALL LETTER B */
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x00, 0x00, 0x00,
  0x9F, 0x6D, 0xFD, 0x50,
  0x9F, 0xD6, 0x5B, 0xF4,
  0x9F, 0x10, 0x00, 0xDB,
  0x9F, 0x00, 0x00, 0x9E,
  0x9F, 0x00, 0x00, 0x7F,
  0x9F, 0x00, 0x00, 0x9E,
  0x9F, 0x20, 0x00, 0xDB,
  0x9F, 0xD6, 0x5B, 0xF4,
  0x9D, 0x5D, 0xFD, 0x50
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0063[ 45] = { /* code 0063, LATIN SMALL LETTER C */
  0x00, 0x5C, 0xFE, 0x91, 0x00,
  0x05, 0xFA, 0x46, 0xEC, 0x00,
  0x0D, 0xB0, 0x00, 0x4F, 0x40,
  0x1F, 0x60, 0x00, 0x04, 0x10,
  0x2F, 0x60, 0x00, 0x00, 0x00,
  0x1F, 0x60, 0x00, 0x00, 0x00,
  0x0D, 0xB0, 0x00, 0x3F, 0x40,
  0x05, 0xF9, 0x45, 0xDC, 0x00,
  0x00, 0x5C, 0xFE, 0x91, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0064[ 52] = { /* code 0064, LATIN SMALL LETTER D */
  0x00, 0x00, 0x00, 0xF9,
  0x00, 0x00, 0x00, 0xF9,
  0x00, 0x00, 0x00, 0xF9,
  0x00, 0x00, 0x00, 0xF9,
  0x04, 0xCF, 0xD7, 0xF9,
  0x3F, 0xC5, 0x6C, 0xF9,
  0xBE, 0x10, 0x01, 0xF9,
  0xE9, 0x00, 0x00, 0xF9,
  0xF7, 0x00, 0x00, 0xF9,
  0xE9, 0x00, 0x00, 0xF9,
  0xAE, 0x10, 0x01, 0xF9,
  0x3F, 0xC5, 0x6C, 0xF9,
  0x04, 0xCF, 0xD7, 0xD9
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0065[ 45] = { /* code 0065, LATIN SMALL LETTER E */
  0x00, 0x4C, 0xFE, 0x80, 0x00,
  0x04, 0xFA, 0x47, 0xE9, 0x00,
  0x0D, 0xC0, 0x00, 0x7F, 0x10,
  0x3F, 0x60, 0x00, 0x3F, 0x50,
  0x4F, 0xFF, 0xFF, 0xFF, 0x60,
  0x3F, 0x74, 0x44, 0x44, 0x10,
  0x0E, 0xA0, 0x00, 0x03, 0x00,
  0x06, 0xFA, 0x44, 0xAE, 0x10,
  0x00, 0x5C, 0xFF, 0xB3, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0066[ 39] = { /* code 0066, LATIN SMALL LETTER F */
  0x00, 0x1B, 0xFE,
  0x00, 0xBE, 0x75,
  0x00, 0xF9, 0x00,
  0x00, 0xF7, 0x00,
  0x7F, 0xFF, 0xF7,
  0x24, 0xF9, 0x42,
  0x00, 0xF7, 0x00,
  0x00, 0xF7, 0x00,
  0x00, 0xF7, 0x00,
  0x00, 0xF7, 0x00,
  0x00, 0xF7, 0x00,
  0x00, 0xF7, 0x00,
  0x00, 0xF7, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0067[ 48] = { /* code 0067, LATIN SMALL LETTER G */
  0x04, 0xCF, 0xD7, 0xD9,
  0x3F, 0xC5, 0x5C, 0xF9,
  0xBE, 0x10, 0x01, 0xE9,
  0xEA, 0x00, 0x00, 0xD9,
  0xF9, 0x00, 0x00, 0xD9,
  0xEA, 0x00, 0x00, 0xD9,
  0xAE, 0x10, 0x01, 0xE9,
  0x3F, 0xC5, 0x5C, 0xF9,
  0x04, 0xCF, 0xD7, 0xF9,
  0x01, 0x00, 0x02, 0xF7,
  0x4E, 0x74, 0x5C, 0xE1,
  0x07, 0xCF, 0xEB, 0x20
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0068[ 52] = { /* code 0068, LATIN SMALL LETTER H */
  0xF7, 0x00, 0x00, 0x00,
  0xF7, 0x00, 0x00, 0x00,
  0xF7, 0x00, 0x00, 0x00,
  0xF7, 0x00, 0x00, 0x00,
  0xF8, 0x8E, 0xFB, 0x20,
  0xFF, 0xA4, 0x7E, 0xB0,
  0xFA, 0x00, 0x09, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0069[ 13] = { /* code 0069, LATIN SMALL LETTER I */
  0x88,
  0xBC,
  0x00,
  0x00,
  0xBB,
  0xBB,
  0xBB,
  0xBB,
  0xBB,
  0xBB,
  0xBB,
  0xBB,
  0xBB
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_006A[ 32] = { /* code 006A, LATIN SMALL LETTER J */
  0x00, 0x97,
  0x00, 0xDB,
  0x00, 0x00,
  0x00, 0x00,
  0x00, 0xDB,
  0x00, 0xDB,
  0x00, 0xDB,
  0x00, 0xDB,
  0x00, 0xDB,
  0x00, 0xDB,
  0x00, 0xDB,
  0x00, 0xDB,
  0x00, 0xDB,
  0x00, 0xDB,
  0x36, 0xF9,
  0x9F, 0xB2
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_006B[ 52] = { /* code 006B, LATIN SMALL LETTER K */
  0xDB, 0x00, 0x00, 0x00,
  0xDB, 0x00, 0x00, 0x00,
  0xDB, 0x00, 0x00, 0x00,
  0xDB, 0x00, 0x00, 0x00,
  0xDB, 0x00, 0x2E, 0xA0,
  0xDB, 0x01, 0xEB, 0x10,
  0xDB, 0x1D, 0xC1, 0x00,
  0xDB, 0xBE, 0x10, 0x00,
  0xDF, 0xCF, 0x40, 0x00,
  0xDC, 0x09, 0xE1, 0x00,
  0xDB, 0x01, 0xDB, 0x00,
  0xDB, 0x00, 0x4F, 0x70,
  0xDB, 0x00, 0x08, 0xF4
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_006C[ 13] = { /* code 006C, LATIN SMALL LETTER L */
  0xBD,
  0xBD,
  0xBD,
  0xBD,
  0xBD,
  0xBD,
  0xBD,
  0xBD,
  0xBD,
  0xBD,
  0xBD,
  0xBD,
  0xBD
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_006D[ 63] = { /* code 006D, LATIN SMALL LETTER M */
  0xBA, 0x8E, 0xFC, 0x33, 0xCF, 0xE9, 0x00,
  0xBF, 0xA5, 0x6E, 0xEE, 0x74, 0x9F, 0x70,
  0xBC, 0x00, 0x06, 0xF7, 0x00, 0x0C, 0xB0,
  0xBB, 0x00, 0x04, 0xF4, 0x00, 0x0B, 0xB0,
  0xBB, 0x00, 0x04, 0xF4, 0x00, 0x0B, 0xB0,
  0xBB, 0x00, 0x04, 0xF4, 0x00, 0x0B, 0xB0,
  0xBB, 0x00, 0x04, 0xF4, 0x00, 0x0B, 0xB0,
  0xBB, 0x00, 0x04, 0xF4, 0x00, 0x0B, 0xB0,
  0xBB, 0x00, 0x04, 0xF4, 0x00, 0x0B, 0xB0
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_006E[ 36] = { /* code 006E, LATIN SMALL LETTER N */
  0xF7, 0x9E, 0xFB, 0x20,
  0xFF, 0xA4, 0x7E, 0xB0,
  0xFA, 0x00, 0x09, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_006F[ 45] = { /* code 006F, LATIN SMALL LETTER O */
  0x00, 0x3B, 0xFF, 0xB3, 0x00,
  0x03, 0xEC, 0x55, 0xCE, 0x30,
  0x0B, 0xD1, 0x00, 0x1D, 0xB0,
  0x0F, 0x80, 0x00, 0x08, 0xF0,
  0x2F, 0x70, 0x00, 0x07, 0xF2,
  0x0F, 0x80, 0x00, 0x08, 0xF0,
  0x0B, 0xD0, 0x00, 0x1D, 0xB0,
  0x03, 0xEB, 0x44, 0xBE, 0x30,
  0x00, 0x3B, 0xFF, 0xB3, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0070[ 48] = { /* code 0070, LATIN SMALL LETTER P */
  0x9C, 0x7D, 0xFD, 0x40,
  0x9F, 0xC5, 0x5C, 0xF3,
  0x9E, 0x10, 0x01, 0xEA,
  0x9D, 0x00, 0x00, 0xAE,
  0x9D, 0x00, 0x00, 0x9F,
  0x9D, 0x00, 0x00, 0xAE,
  0x9E, 0x00, 0x01, 0xEA,
  0x9F, 0xB4, 0x4C, 0xF3,
  0x9D, 0x7D, 0xFD, 0x40,
  0x9D, 0x00, 0x00, 0x00,
  0x9D, 0x00, 0x00, 0x00,
  0x9D, 0x00, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0071[ 48] = { /* code 0071, LATIN SMALL LETTER Q */
  0x05, 0xDF, 0xD7, 0xD7,
  0x4F, 0xB4, 0x5C, 0xF7,
  0xBE, 0x10, 0x01, 0xF7,
  0xF9, 0x00, 0x00, 0xF7,
  0xF7, 0x00, 0x00, 0xF7,
  0xF8, 0x00, 0x00, 0xF7,
  0xBD, 0x00, 0x01, 0xF7,
  0x4F, 0xB4, 0x5C, 0xF7,
  0x04, 0xDF, 0xD7, 0xF7,
  0x00, 0x00, 0x00, 0xF7,
  0x00, 0x00, 0x00, 0xF7,
  0x00, 0x00, 0x00, 0xF7
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0072[ 27] = { /* code 0072, LATIN SMALL LETTER R */
  0xBB, 0x8E, 0x90,
  0xBF, 0xD8, 0x50,
  0xBE, 0x10, 0x00,
  0xBD, 0x00, 0x00,
  0xBD, 0x00, 0x00,
  0xBD, 0x00, 0x00,
  0xBD, 0x00, 0x00,
  0xBD, 0x00, 0x00,
  0xBD, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0073[ 36] = { /* code 0073, LATIN SMALL LETTER S */
  0x00, 0x7D, 0xFE, 0x80,
  0x08, 0xF7, 0x48, 0xF9,
  0x0B, 0xC0, 0x00, 0x9C,
  0x08, 0xF9, 0x41, 0x00,
  0x00, 0x6C, 0xFF, 0xA2,
  0x00, 0x00, 0x15, 0xEC,
  0x1F, 0x80, 0x00, 0x8F,
  0x09, 0xE7, 0x46, 0xEB,
  0x00, 0x8D, 0xFE, 0x91
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0074[ 33] = { /* code 0074, LATIN SMALL LETTER T */
  0x02, 0xF7, 0x00,
  0x02, 0xF7, 0x00,
  0xBF, 0xFF, 0xF2,
  0x35, 0xF9, 0x40,
  0x02, 0xF7, 0x00,
  0x02, 0xF7, 0x00,
  0x02, 0xF7, 0x00,
  0x02, 0xF7, 0x00,
  0x01, 0xF7, 0x00,
  0x00, 0xEC, 0x61,
  0x00, 0x6E, 0xF3
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0075[ 36] = { /* code 0075, LATIN SMALL LETTER U */
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF7, 0x00, 0x07, 0xF0,
  0xF9, 0x00, 0x09, 0xF0,
  0xBE, 0x65, 0x9F, 0xF0,
  0x1B, 0xFF, 0xA9, 0xF0
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0076[ 36] = { /* code 0076, LATIN SMALL LETTER V */
  0xAD, 0x00, 0x00, 0xEA,
  0x4F, 0x30, 0x03, 0xF4,
  0x0E, 0x80, 0x08, 0xE0,
  0x08, 0xD0, 0x0D, 0x80,
  0x03, 0xF3, 0x3F, 0x30,
  0x00, 0xD8, 0x8D, 0x00,
  0x00, 0x7D, 0xD7, 0x00,
  0x00, 0x2F, 0xF2, 0x00,
  0x00, 0x0B, 0xB0, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0077[ 63] = { /* code 0077, LATIN SMALL LETTER W */
  0x6F, 0x20, 0x04, 0xF4, 0x00, 0x3F, 0x50,
  0x1F, 0x60, 0x09, 0xF8, 0x00, 0x7F, 0x10,
  0x0C, 0xA0, 0x0E, 0xCD, 0x00, 0xAB, 0x00,
  0x08, 0xE0, 0x3F, 0x3F, 0x30, 0xE7, 0x00,
  0x03, 0xF3, 0x8B, 0x0C, 0x73, 0xF3, 0x00,
  0x00, 0xE7, 0xD6, 0x07, 0xC7, 0xD0, 0x00,
  0x00, 0xAD, 0xF2, 0x03, 0xFC, 0x90, 0x00,
  0x00, 0x5F, 0xB0, 0x00, 0xDF, 0x40, 0x00,
  0x00, 0x1F, 0x70, 0x00, 0x8F, 0x10, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0078[ 36] = { /* code 0078, LATIN SMALL LETTER X */
  0x4F, 0x80, 0x02, 0xFA,
  0x09, 0xF2, 0x0B, 0xD1,
  0x01, 0xDB, 0x5F, 0x40,
  0x00, 0x4F, 0xE9, 0x00,
  0x00, 0x0C, 0xF3, 0x00,
  0x00, 0x5F, 0xEB, 0x00,
  0x01, 0xEA, 0x4F, 0x60,
  0x0A, 0xE2, 0x0A, 0xE2,
  0x5F, 0x70, 0x01, 0xEB
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_0079[ 48] = { /* code 0079, LATIN SMALL LETTER Y */
  0xAF, 0x10, 0x00, 0xEA,
  0x4F, 0x50, 0x05, 0xF4,
  0x0D, 0xB0, 0x0A, 0xD0,
  0x08, 0xF1, 0x0E, 0x80,
  0x02, 0xF6, 0x5F, 0x30,
  0x00, 0xBB, 0x9C, 0x00,
  0x00, 0x6F, 0xE7, 0x00,
  0x00, 0x1F, 0xF1, 0x00,
  0x00, 0x0B, 0xB0, 0x00,
  0x00, 0x1F, 0x50, 0x00,
  0x26, 0xCD, 0x00, 0x00,
  0x5F, 0xC2, 0x00, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_007A[ 36] = { /* code 007A, LATIN SMALL LETTER Z */
  0x4F, 0xFF, 0xFF, 0xF9,
  0x14, 0x44, 0x4B, 0xF4,
  0x00, 0x00, 0x4F, 0x80,
  0x00, 0x01, 0xEB, 0x00,
  0x00, 0x0B, 0xE2, 0x00,
  0x00, 0x7F, 0x40, 0x00,
  0x04, 0xF8, 0x00, 0x00,
  0x1E, 0xD4, 0x44, 0x43,
  0x4F, 0xFF, 0xFF, 0xFD
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_007B[ 48] = { /* code 007B, LEFT CURLY BRACKET */
  0x00, 0x02, 0xA7,
  0x00, 0x1E, 0xA0,
  0x00, 0x7F, 0x10,
  0x00, 0x9F, 0x00,
  0x00, 0x9F, 0x00,
  0x00, 0xAD, 0x00,
  0x03, 0xEA, 0x00,
  0x6F, 0xD1, 0x00,
  0x16, 0xF7, 0x00,
  0x00, 0xAD, 0x00,
  0x00, 0x9E, 0x00,
  0x00, 0x9F, 0x00,
  0x00, 0x9F, 0x00,
  0x00, 0x6F, 0x30,
  0x00, 0x0D, 0xB1,
  0x00, 0x01, 0xA7
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_007C[ 14] = { /* code 007C, VERTICAL LINE */
  0x7B,
  0x7B,
  0x7B,
  0x7B,
  0x7B,
  0x7B,
  0x7B,
  0x7B,
  0x7B,
  0x7B,
  0x7B,
  0x7B,
  0x7B,
  0x7B
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_007D[ 48] = { /* code 007D, RIGHT CURLY BRACKET */
  0x8A, 0x20, 0x00,
  0x0A, 0xE1, 0x00,
  0x02, 0xF6, 0x00,
  0x00, 0xF9, 0x00,
  0x00, 0xF9, 0x00,
  0x00, 0xE9, 0x00,
  0x00, 0xAE, 0x30,
  0x00, 0x1C, 0xF6,
  0x00, 0x7F, 0x61,
  0x00, 0xDA, 0x00,
  0x00, 0xF9, 0x00,
  0x00, 0xF9, 0x00,
  0x00, 0xF8, 0x00,
  0x03, 0xF6, 0x00,
  0x1C, 0xD0, 0x00,
  0x8A, 0x10, 0x00
};

GUI_CONST_STORAGE unsigned char acGUI_FontRoboto20_007E[ 20] = { /* code 007E, TILDE */
  0x07, 0xEE, 0x80, 0x00, 0x77,
  0x5F, 0x77, 0xEB, 0x12, 0xE7,
  0xAB, 0x00, 0x3D, 0xFF, 0xB1,
  0x11, 0x00, 0x00, 0x54, 0x00
};

GUI_CONST_STORAGE GUI_CHARINFO_EXT GUI_FontRoboto20_CharInfo[95] = {
  {   1,   1,   0,  16,   4, acGUI_FontRoboto20_0020 } /* code 0020, SPACE */
  ,{   3,  12,   1,   4,   4, acGUI_FontRoboto20_0021 } /* code 0021, EXCLAMATION MARK */
  ,{   4,   4,   1,   3,   5, acGUI_FontRoboto20_0022 } /* code 0022, QUOTATION MARK */
  ,{  10,  12,   1,   4,  10, acGUI_FontRoboto20_0023 } /* code 0023, NUMBER SIGN */
  ,{   9,  16,   0,   2,  10, acGUI_FontRoboto20_0024 } /* code 0024, DOLLAR SIGN */
  ,{  12,  12,   0,   4,  12, acGUI_FontRoboto20_0025 } /* code 0025, PERCENT SIGN */
  ,{  11,  12,   0,   4,  11, acGUI_FontRoboto20_0026 } /* code 0026, AMPERSAND */
  ,{   3,   4,   0,   3,   3, acGUI_FontRoboto20_0027 } /* code 0027, APOSTROPHE */
  ,{   5,  18,   1,   2,   6, acGUI_FontRoboto20_0028 } /* code 0028, LEFT PARENTHESIS */
  ,{   5,  18,   0,   2,   6, acGUI_FontRoboto20_0029 } /* code 0029, RIGHT PARENTHESIS */
  ,{   8,   7,   0,   4,   7, acGUI_FontRoboto20_002A } /* code 002A, ASTERISK */
  ,{   9,  10,   0,   6,  10, acGUI_FontRoboto20_002B } /* code 002B, PLUS SIGN */
  ,{   3,   4,   0,  14,   3, acGUI_FontRoboto20_002C } /* code 002C, COMMA */
  ,{   5,   2,   0,  10,   5, acGUI_FontRoboto20_002D } /* code 002D, HYPHEN-MINUS */
  ,{   3,   2,   1,  14,   4, acGUI_FontRoboto20_002E } /* code 002E, FULL STOP */
  ,{   7,  13,   0,   4,   7, acGUI_FontRoboto20_002F } /* code 002F, SOLIDUS */
  ,{   8,  12,   1,   4,  10, acGUI_FontRoboto20_0030 } /* code 0030, DIGIT ZERO */
  ,{   5,  12,   1,   4,  10, acGUI_FontRoboto20_0031 } /* code 0031, DIGIT ONE */
  ,{   9,  12,   0,   4,  10, acGUI_FontRoboto20_0032 } /* code 0032, DIGIT TWO */
  ,{   9,  12,   0,   4,  10, acGUI_FontRoboto20_0033 } /* code 0033, DIGIT THREE */
  ,{  10,  12,   0,   4,  10, acGUI_FontRoboto20_0034 } /* code 0034, DIGIT FOUR */
  ,{   8,  12,   1,   4,  10, acGUI_FontRoboto20_0035 } /* code 0035, DIGIT FIVE */
  ,{   8,  12,   1,   4,  10, acGUI_FontRoboto20_0036 } /* code 0036, DIGIT SIX */
  ,{   9,  12,   0,   4,  10, acGUI_FontRoboto20_0037 } /* code 0037, DIGIT SEVEN */
  ,{   9,  12,   0,   4,  10, acGUI_FontRoboto20_0038 } /* code 0038, DIGIT EIGHT */
  ,{   9,  12,   0,   4,  10, acGUI_FontRoboto20_0039 } /* code 0039, DIGIT NINE */
  ,{   3,   9,   1,   7,   4, acGUI_FontRoboto20_003A } /* code 003A, COLON */
  ,{   4,  11,   0,   7,   4, acGUI_FontRoboto20_003B } /* code 003B, SEMICOLON */
  ,{   8,   7,   0,   7,   9, acGUI_FontRoboto20_003C } /* code 003C, LESS-THAN SIGN */
  ,{   8,   5,   1,   8,   9, acGUI_FontRoboto20_003D } /* code 003D, EQUALS SIGN */
  ,{   8,   7,   1,   7,   9, acGUI_FontRoboto20_003E } /* code 003E, GREATER-THAN SIGN */
  ,{   8,  12,   0,   4,   8, acGUI_FontRoboto20_003F } /* code 003F, QUESTION MARK */
  ,{  15,  16,   0,   4,  15, acGUI_FontRoboto20_0040 } /* code 0040, COMMERCIAL AT */
  ,{  11,  12,   0,   4,  11, acGUI_FontRoboto20_0041 } /* code 0041, LATIN CAPITAL LETTER A */
  ,{   9,  12,   1,   4,  11, acGUI_FontRoboto20_0042 } /* code 0042, LATIN CAPITAL LETTER B */
  ,{  10,  12,   1,   4,  11, acGUI_FontRoboto20_0043 } /* code 0043, LATIN CAPITAL LETTER C */
  ,{  10,  12,   1,   4,  11, acGUI_FontRoboto20_0044 } /* code 0044, LATIN CAPITAL LETTER D */
  ,{   9,  12,   1,   4,  10, acGUI_FontRoboto20_0045 } /* code 0045, LATIN CAPITAL LETTER E */
  ,{   8,  12,   1,   4,   9, acGUI_FontRoboto20_0046 } /* code 0046, LATIN CAPITAL LETTER F */
  ,{  10,  12,   1,   4,  12, acGUI_FontRoboto20_0047 } /* code 0047, LATIN CAPITAL LETTER G */
  ,{  10,  12,   1,   4,  12, acGUI_FontRoboto20_0048 } /* code 0048, LATIN CAPITAL LETTER H */
  ,{   3,  12,   1,   4,   5, acGUI_FontRoboto20_0049 } /* code 0049, LATIN CAPITAL LETTER I */
  ,{   9,  12,   0,   4,   9, acGUI_FontRoboto20_004A } /* code 004A, LATIN CAPITAL LETTER J */
  ,{  10,  12,   1,   4,  11, acGUI_FontRoboto20_004B } /* code 004B, LATIN CAPITAL LETTER K */
  ,{   8,  12,   1,   4,   9, acGUI_FontRoboto20_004C } /* code 004C, LATIN CAPITAL LETTER L */
  ,{  13,  12,   1,   4,  15, acGUI_FontRoboto20_004D } /* code 004D, LATIN CAPITAL LETTER M */
  ,{  10,  12,   1,   4,  12, acGUI_FontRoboto20_004E } /* code 004E, LATIN CAPITAL LETTER N */
  ,{  10,  12,   1,   4,  12, acGUI_FontRoboto20_004F } /* code 004F, LATIN CAPITAL LETTER O */
  ,{  10,  12,   1,   4,  11, acGUI_FontRoboto20_0050 } /* code 0050, LATIN CAPITAL LETTER P */
  ,{  10,  14,   1,   4,  12, acGUI_FontRoboto20_0051 } /* code 0051, LATIN CAPITAL LETTER Q */
  ,{   9,  12,   1,   4,  10, acGUI_FontRoboto20_0052 } /* code 0052, LATIN CAPITAL LETTER R */
  ,{  10,  12,   0,   4,  10, acGUI_FontRoboto20_0053 } /* code 0053, LATIN CAPITAL LETTER S */
  ,{  10,  12,   0,   4,  10, acGUI_FontRoboto20_0054 } /* code 0054, LATIN CAPITAL LETTER T */
  ,{   9,  12,   1,   4,  11, acGUI_FontRoboto20_0055 } /* code 0055, LATIN CAPITAL LETTER U */
  ,{  11,  12,   0,   4,  11, acGUI_FontRoboto20_0056 } /* code 0056, LATIN CAPITAL LETTER V */
  ,{  15,  12,   0,   4,  15, acGUI_FontRoboto20_0057 } /* code 0057, LATIN CAPITAL LETTER W */
  ,{  11,  12,   0,   4,  11, acGUI_FontRoboto20_0058 } /* code 0058, LATIN CAPITAL LETTER X */
  ,{  10,  12,   0,   4,  10, acGUI_FontRoboto20_0059 } /* code 0059, LATIN CAPITAL LETTER Y */
  ,{  10,  12,   0,   4,  10, acGUI_FontRoboto20_005A } /* code 005A, LATIN CAPITAL LETTER Z */
  ,{   4,  17,   1,   2,   5, acGUI_FontRoboto20_005B } /* code 005B, LEFT SQUARE BRACKET */
  ,{   7,  13,   0,   4,   7, acGUI_FontRoboto20_005C } /* code 005C, REVERSE SOLIDUS */
  ,{   4,  17,   0,   2,   5, acGUI_FontRoboto20_005D } /* code 005D, RIGHT SQUARE BRACKET */
  ,{   7,   6,   0,   4,   7, acGUI_FontRoboto20_005E } /* code 005E, CIRCUMFLEX ACCENT */
  ,{   8,   2,   0,  16,   8, acGUI_FontRoboto20_005F } /* code 005F, LOW LINE */
  ,{   4,   2,   0,   4,   5, acGUI_FontRoboto20_0060 } /* code 0060, GRAVE ACCENT */
  ,{   9,   9,   0,   7,   9, acGUI_FontRoboto20_0061 } /* code 0061, LATIN SMALL LETTER A */
  ,{   8,  13,   1,   3,  10, acGUI_FontRoboto20_0062 } /* code 0062, LATIN SMALL LETTER B */
  ,{   9,   9,   0,   7,   9, acGUI_FontRoboto20_0063 } /* code 0063, LATIN SMALL LETTER C */
  ,{   8,  13,   1,   3,  10, acGUI_FontRoboto20_0064 } /* code 0064, LATIN SMALL LETTER D */
  ,{   9,   9,   0,   7,   9, acGUI_FontRoboto20_0065 } /* code 0065, LATIN SMALL LETTER E */
  ,{   6,  13,   0,   3,   6, acGUI_FontRoboto20_0066 } /* code 0066, LATIN SMALL LETTER F */
  ,{   8,  12,   1,   7,  10, acGUI_FontRoboto20_0067 } /* code 0067, LATIN SMALL LETTER G */
  ,{   7,  13,   1,   3,   9, acGUI_FontRoboto20_0068 } /* code 0068, LATIN SMALL LETTER H */
  ,{   2,  13,   1,   3,   4, acGUI_FontRoboto20_0069 } /* code 0069, LATIN SMALL LETTER I */
  ,{   4,  16,  -1,   3,   4, acGUI_FontRoboto20_006A } /* code 006A, LATIN SMALL LETTER J */
  ,{   8,  13,   1,   3,   9, acGUI_FontRoboto20_006B } /* code 006B, LATIN SMALL LETTER K */
  ,{   2,  13,   1,   3,   4, acGUI_FontRoboto20_006C } /* code 006C, LATIN SMALL LETTER L */
  ,{  13,   9,   1,   7,  15, acGUI_FontRoboto20_006D } /* code 006D, LATIN SMALL LETTER M */
  ,{   7,   9,   1,   7,   9, acGUI_FontRoboto20_006E } /* code 006E, LATIN SMALL LETTER N */
  ,{  10,   9,   0,   7,  10, acGUI_FontRoboto20_006F } /* code 006F, LATIN SMALL LETTER O */
  ,{   8,  12,   1,   7,  10, acGUI_FontRoboto20_0070 } /* code 0070, LATIN SMALL LETTER P */
  ,{   8,  12,   1,   7,  10, acGUI_FontRoboto20_0071 } /* code 0071, LATIN SMALL LETTER Q */
  ,{   5,   9,   1,   7,   6, acGUI_FontRoboto20_0072 } /* code 0072, LATIN SMALL LETTER R */
  ,{   8,   9,   0,   7,   9, acGUI_FontRoboto20_0073 } /* code 0073, LATIN SMALL LETTER S */
  ,{   6,  11,   0,   5,   6, acGUI_FontRoboto20_0074 } /* code 0074, LATIN SMALL LETTER T */
  ,{   7,   9,   1,   7,   9, acGUI_FontRoboto20_0075 } /* code 0075, LATIN SMALL LETTER U */
  ,{   8,   9,   0,   7,   8, acGUI_FontRoboto20_0076 } /* code 0076, LATIN SMALL LETTER V */
  ,{  13,   9,   0,   7,  13, acGUI_FontRoboto20_0077 } /* code 0077, LATIN SMALL LETTER W */
  ,{   8,   9,   0,   7,   8, acGUI_FontRoboto20_0078 } /* code 0078, LATIN SMALL LETTER X */
  ,{   8,  12,   0,   7,   8, acGUI_FontRoboto20_0079 } /* code 0079, LATIN SMALL LETTER Y */
  ,{   8,   9,   0,   7,   8, acGUI_FontRoboto20_007A } /* code 007A, LATIN SMALL LETTER Z */
  ,{   6,  16,   0,   3,   6, acGUI_FontRoboto20_007B } /* code 007B, LEFT CURLY BRACKET */
  ,{   2,  14,   1,   4,   4, acGUI_FontRoboto20_007C } /* code 007C, VERTICAL LINE */
  ,{   6,  16,   0,   3,   6, acGUI_FontRoboto20_007D } /* code 007D, RIGHT CURLY BRACKET */
  ,{  10,   4,   1,   9,  12, acGUI_FontRoboto20_007E } /* code 007E, TILDE */
};

GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto20_Prop1 = {
  0x0020 /* first character */
  ,0x007E /* last character  */
  ,&GUI_FontRoboto20_CharInfo[  0] /* address of first character */
  ,(GUI_CONST_STORAGE GUI_FONT_PROP_EXT *)0 /* pointer to next GUI_FONT_PROP_EXT */
};

GUI_CONST_STORAGE GUI_FONT GUI_FontRoboto20 = {
  GUI_FONTTYPE_PROP_AA4_EXT /* type of font    */
  ,20 /* height of font  */
  ,20 /* space of font y */
  ,1 /* magnification x */
  ,1 /* magnification y */
  ,{&GUI_FontRoboto20_Prop1}
  ,16 /* Baseline */
  ,9 /* Height of lowercase characters */
  ,12 /* Height of capital characters */
};


/*********************************************************************
*
*       Static code
*
**********************************************************************
*/
/*********************************************************************
*
*       _OwnerDrawListview
*/
static int _OwnerDrawListview(const WIDGET_ITEM_DRAW_INFO * pDrawItemInfo) {
  char acBuffer[64];
  int  Sel;
  int  Border;
  int  xSize;
  int  FontPos;

  switch (pDrawItemInfo->Cmd) {
  case WIDGET_ITEM_GET_XSIZE:
    //
    // Return x-size of item
    //
    return LISTVIEW_OwnerDraw(pDrawItemInfo);
  case WIDGET_ITEM_GET_YSIZE:
    //
    // Return y-size of item
    //
    return LISTVIEW_OwnerDraw(pDrawItemInfo);
  case WIDGET_ITEM_DRAW:
    //
    // Draw item / row
    //
    GUI_SetTextMode(GUI_TM_TRANS);
    LISTVIEW_GetItemText(pDrawItemInfo->hWin, pDrawItemInfo->Col, pDrawItemInfo->ItemIndex, acBuffer, sizeof(acBuffer));
    Sel = LISTVIEW_GetSel(pDrawItemInfo->hWin);
    if(Sel == pDrawItemInfo->ItemIndex) {
      GUI_SetColor(GUI_WHITE);
    } else {
      GUI_SetColor(COLOR_TEXT);
    }
    Border = LISTVIEW_GetLBorder(pDrawItemInfo->hWin);
    FontPos = ((pDrawItemInfo->y1 - pDrawItemInfo->y0) - GUI_GetFontDistY()) / 2;
    GUI_DispStringAt(acBuffer, pDrawItemInfo->x0 + Border, pDrawItemInfo->y0 + FontPos);
    return 0;
  case WIDGET_ITEM_DRAW_BACKGROUND:
    //
    // Draw item / row background
    //
    Sel = LISTVIEW_GetSel(pDrawItemInfo->hWin);
    if(Sel == pDrawItemInfo->ItemIndex) {
      GUI_SetBkColor(COLOR_ITEM_BK_SEL);
      GUI_ClearRect(pDrawItemInfo->x0, pDrawItemInfo->y0, pDrawItemInfo->x1, pDrawItemInfo->y1);
      //
      // Draw rect the size of the widget.
      //
      xSize = WM_GetXSize(pDrawItemInfo->hWin);
      GUI_SetColor(COLOR_ITEM_FRAME);
      GUI_AA_DrawRoundedRect(1, pDrawItemInfo->y0, xSize - 2, pDrawItemInfo->y1, 5);
    } else {
      GUI_SetBkColor(COLOR_ITEM_BK);
      GUI_ClearRect(pDrawItemInfo->x0, pDrawItemInfo->y0, pDrawItemInfo->x1, pDrawItemInfo->y1);
      //
      // Separator lines
      //
      if (pDrawItemInfo->ItemIndex != 0) {
        GUI_SetColor(GUI_GRAY_60);
        GUI_DrawHLine(pDrawItemInfo->y0, pDrawItemInfo->x0, pDrawItemInfo->x1);
      }
    }
    return 0;
  default:
    return LISTVIEW_OwnerDraw(pDrawItemInfo);
  }
}

/*********************************************************************
*
*       _HeaderSkin
*/
static int _HeaderSkin(const WIDGET_ITEM_DRAW_INFO * pDrawItemInfo) {
  char     acBuffer[64];
  int      FontPos;
  GUI_RECT Rect;
  GUI_RECT Clip;
  int      xSize;

  switch(pDrawItemInfo->Cmd) {
  case WIDGET_ITEM_DRAW_BACKGROUND:
    GUI_SetBkColor(COLOR_BK);
    GUI_ClearRect(pDrawItemInfo->x0, pDrawItemInfo->y0, pDrawItemInfo->x1, pDrawItemInfo->y1);
    //
    // Draw rounded frame
    //
    GUI_SetColor(FRAME_COLOR);
    xSize    = WM_GetXSize(pDrawItemInfo->hWin);
    Rect.x0  = 0;
    Rect.x1  = xSize - 1;
    Rect.y0  = pDrawItemInfo->y0;
    Rect.y1  = pDrawItemInfo->y1;
    Clip     = Rect;
    //Clip.y1 -= 8;
    WM_SetUserClipRect(&Clip);
    GUI_SetPenSize(2);
    GUI_AA_DrawRoundedRectEx(&Rect, 7);
    WM_SetUserClipRect(NULL);
    //
    // Draw rest of frame.
    //
    //GUI_DrawHLine(Clip.y1 - 2, Clip.x0, Clip.x1);
    //GUI_DrawHLine(Clip.y1 - 1, Clip.x0, Clip.x1);
    return 0;
  case WIDGET_ITEM_DRAW_TEXT:
    HEADER_GetItemText(pDrawItemInfo->hWin, pDrawItemInfo->ItemIndex, acBuffer, sizeof(acBuffer));
    GUI_SetColor(GUI_WHITE);
    GUI_SetFont(HEADER_GetFont(pDrawItemInfo->hWin));
    GUI_SetTextMode(GUI_TM_TRANS);
    FontPos = ((pDrawItemInfo->y1 - pDrawItemInfo->y0) - GUI_GetFontDistY()) / 2;
    GUI_DispStringAt(acBuffer, pDrawItemInfo->x0 + SPACING, pDrawItemInfo->y0 + FontPos);
    return 0;
  default:
    return HEADER_DrawSkinFlex(pDrawItemInfo);
  }
}

/*********************************************************************
*
*       Public code
*
**********************************************************************
*/
/*********************************************************************
*
*       MainTask
*/
void MainTask(void) {
  WM_HWIN hListview;
  WM_HWIN hHeader;
  int     i;

  //
  // Init GUI
  //
  GUI_Init();
  GUI_SetBkColor(COLOR_BK);
  GUI_Clear();
  //
  // Create LISTVIEW widget
  //
  hListview = LISTVIEW_CreateEx(10, 10, 360, 240, WM_HBKWIN, WM_CF_SHOW, 0, GUI_ID_LISTVIEW0);
  LISTVIEW_SetFont(hListview, &GUI_FontRoboto20);
  //
  // Add columns to LISTVIEW
  //
  LISTVIEW_AddColumn(hListview, 80,  "Type",     GUI_TA_LEFT);
  LISTVIEW_AddColumn(hListview, 120, "Channel",  GUI_TA_LEFT);
  LISTVIEW_AddColumn(hListview, 79,  "Current",  GUI_TA_LEFT);
  LISTVIEW_AddColumn(hListview, 80,  "Speed",    GUI_TA_LEFT);
  //
  // Add rows to LISTVIEW
  //
  for (i = 0; i < GUI_COUNTOF(_acContent); i++) {
    LISTVIEW_AddRow(hListview, _acContent[i]);
  }
  //
  // Set LISTVIEW properties
  //
  LISTVIEW_SetLBorder(hListview, SPACING);
  LISTVIEW_SetRBorder(hListview, SPACING);
  LISTVIEW_SetSel(hListview, 0);
  LISTVIEW_SetRowHeight(hListview, 35);
  //
  // Set OwnerDraw function
  //
  LISTVIEW_SetOwnerDraw(hListview, _OwnerDrawListview);
  //
  // Set HEADER properties
  //
  hHeader = LISTVIEW_GetHeader(hListview);
  HEADER_SetFont(hHeader, &GUI_FontRoboto20);
  HEADER_SetHeight(hHeader, 40);
  HEADER_SetSkin(hHeader, _HeaderSkin);
  HEADER_SetColumnsResizeable(hHeader, 0);
  while (1) {
    GUI_Delay(100);
  }
}

/*************************** End of file ****************************/