diff --git a/.vscode/launch.json b/.vscode/launch.json
new file mode 100644
index 0000000..b6bb6d6
--- /dev/null
+++ b/.vscode/launch.json
@@ -0,0 +1,24 @@
+{
+ "version": "0.2.0",
+ "configurations": [
+ {
+ "name": "C/C++ Runner: Debug Session",
+ "type": "cppdbg",
+ "request": "launch",
+ "args": [],
+ "stopAtEntry": false,
+ "externalConsole": true,
+ "cwd": "c:/Users/xushenghao/Desktop/controller-hd/User/application/mode",
+ "program": "c:/Users/xushenghao/Desktop/controller-hd/User/application/mode/build/Debug/outDebug",
+ "MIMode": "gdb",
+ "miDebuggerPath": "gdb",
+ "setupCommands": [
+ {
+ "description": "Enable pretty-printing for gdb",
+ "text": "-enable-pretty-printing",
+ "ignoreFailures": true
+ }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/MDK-ARM/RTE/_controller-v2/RTE_Components.h b/MDK-ARM/RTE/_controller-v2/RTE_Components.h
index 481bf87..391636b 100644
--- a/MDK-ARM/RTE/_controller-v2/RTE_Components.h
+++ b/MDK-ARM/RTE/_controller-v2/RTE_Components.h
@@ -1,6 +1,6 @@
/*
- * Auto generated Run-Time-Environment Component Configuration File
+ * Auto generated Run-Time-Environment Configuration File
* *** Do not modify ! ***
*
* Project: 'controller-v2'
@@ -17,4 +17,5 @@
#define CMSIS_device_header "stm32l4xx.h"
+
#endif /* RTE_COMPONENTS_H */
diff --git a/MDK-ARM/controller-v2.uvoptx b/MDK-ARM/controller-v2.uvoptx
index 4a97cf5..5fb74ec 100644
--- a/MDK-ARM/controller-v2.uvoptx
+++ b/MDK-ARM/controller-v2.uvoptx
@@ -103,7 +103,7 @@
1
0
0
- 11
+ 6
@@ -308,6 +308,7 @@
1
+ 0
0
2
10000000
diff --git a/MDK-ARM/controller-v2.uvprojx b/MDK-ARM/controller-v2.uvprojx
index 0d8ec8e..81414e4 100644
--- a/MDK-ARM/controller-v2.uvprojx
+++ b/MDK-ARM/controller-v2.uvprojx
@@ -10,14 +10,14 @@
controller-v2
0x4
ARM-ADS
- 5060061::V5.06 update 1 (build 61)::ARMCC
+ 5060960::V5.06 update 7 (build 960)::.\ARMCC
0
STM32L476VGTx
STMicroelectronics
- Keil.STM32L4xx_DFP.2.1.0
- http://www.keil.com/pack
+ Keil.STM32L4xx_DFP.2.6.2
+ https://www.keil.com/pack/
IRAM(0x20000000,0x00018000) IRAM2(0x10000000,0x00008000) IROM(0x08000000,0x00100000) CPUTYPE("Cortex-M4") FPU2 DSP CLOCK(12000000) ELITTLE
@@ -184,6 +184,8 @@
0
0
1
+ 0
+ 0
1
0
8
@@ -350,7 +352,7 @@
0
0
0
- 0
+ 4
@@ -1255,7 +1257,7 @@
2
2
2
- 2
+ 0
@@ -1339,7 +1341,7 @@
2
2
2
- 2
+ 0
diff --git a/User/application/mode/mode.c b/User/application/mode/mode.c
index 0a323ba..8956dad 100644
--- a/User/application/mode/mode.c
+++ b/User/application/mode/mode.c
@@ -77,30 +77,22 @@ void mode_test_process(void)
*/
void mode_travel_statistics(void)
{
- static float32 loop_current_last = 0.0f; // 上一次的电流
- static uint8_t change_count = 0;
+static uint8_t internal_count = 0;
float32 loop = 0.0;
// 输入电流
loop = get_current();
- rt_data.loop_current = get_current_deal(loop);
- // 过滤掉不稳定的电流值
- if (loop_current_last != rt_data.loop_current)
+ loop = get_current_deal(loop);
+ if (internal_count++ >= 10)
{
- if (change_count++ >= 2)
- {
- loop_current_last = rt_data.loop_current;
- change_count = 0;
- }
- else
- {
- return;
- }
+ internal_count = 0;
+ rt_data.loop_current = loop;
}
else
{
- change_count = 0;
- lpf_window_reset(mode_get()->show_loop_lpf);
- lpf_window_reset(mode_get()->show_actual_lpf);
+ if (ABS(rt_data.loop_current - loop) >= 0.05f)
+ {
+ rt_data.loop_current = loop;
+ }
}
// 获取目标行程
diff --git a/User/application/src/fal_execution.c b/User/application/src/fal_execution.c
index 033147d..9128ee4 100644
--- a/User/application/src/fal_execution.c
+++ b/User/application/src/fal_execution.c
@@ -295,7 +295,7 @@ fdb_time_t fal_execution_get_time(void)
tt.minute = hex_format_dec(timestamp.Date.Minute);
tt.second = hex_format_dec(timestamp.Date.Second);
- return (int32_t)time2stamp(dd, tt);
+ return (int32_t)time2stamp(&dd, &tt);
}
/**
* 从 KV 存储中读取指定键的值
diff --git a/User/board/src/board.c b/User/board/src/board.c
index 3fa092f..9bca3b8 100644
--- a/User/board/src/board.c
+++ b/User/board/src/board.c
@@ -354,7 +354,6 @@ void system_clock_config_hight(void)
*/
void gui_flush(void)
{
-
}
/**
@@ -364,7 +363,6 @@ void gui_flush(void)
*/
void gui_flush_Clear(void)
{
-
}
/**
@@ -374,7 +372,6 @@ void gui_flush_Clear(void)
*/
void gui_clr(void)
{
-
}
/**
@@ -384,7 +381,6 @@ void gui_clr(void)
*/
void gui_set_clear_flag(void)
{
-
}
/**
@@ -404,7 +400,6 @@ BOOL gui_get_clear_flag(void)
*/
void gui_full(void)
{
-
}
/**
@@ -414,7 +409,6 @@ void gui_full(void)
*/
void gui_open()
{
-
}
/**
@@ -424,7 +418,6 @@ void gui_open()
*/
void gui_close()
{
-
}
/**
@@ -434,7 +427,6 @@ void gui_close()
*/
void gui_set_scandir(uint8_t dir)
{
-
}
/***************************************** 板卡参数相关函数 *****************************************/
@@ -692,7 +684,7 @@ float32 get_current(void)
float32 f = 0.0;
// 读取回路电流ADC值
- adc_raw[ADC_LOOP_CHANNEL] = adc_result_average(ADCS_1, ADC_LOOP_CHANNEL);
+ adc_raw[ADC_LOOP_CHANNEL] = adc_result_median_average(ADCS_1, ADC_LOOP_CHANNEL);
f = adc_raw[ADC_LOOP_CHANNEL];
// 计算回路电流
@@ -723,7 +715,7 @@ float32 get_current_deal(float32 current)
}
else
{
- return (uint16_t)(current * 10) * 0.1f;
+ return (uint16_t)(current * 100) * 0.01f;
}
}
diff --git a/User/lib/bootload/bootload.h b/User/lib/bootload/bootload.h
index 44dbfaa..f888e28 100644
--- a/User/lib/bootload/bootload.h
+++ b/User/lib/bootload/bootload.h
@@ -4,6 +4,8 @@
#include "flash.h"
#include "flow.h"
+#define BOOTLOAD_SET_FLAG 0xbb01
+#define BOOTLOAD_UNSET_FLAG 0xbb01
/**
* @brief Defines the start address of the application in flash memory.
*/
@@ -22,7 +24,7 @@
/**
* @brief Defines the start address of the backup area for the application in flash memory.
*/
-#define BOOTLOAD_APP_BACKUP_ADDR_START (BOOTLOAD_APP_START_ADDRESS + LL_FLASH_BANK1_PAGE_NUM * LL_FLASH_PAGE_SIZE)
+#define BOOTLOAD_APP_BACKUP_ADDR_START (BOOTLOAD_APP_START_ADDRESS + 256 * LL_FLASH_PAGE_SIZE)
/**
* @brief Defines the timeout for the bootloading process.
diff --git a/User/lib/flashdb/fal/fal_cfg.h b/User/lib/flashdb/fal/fal_cfg.h
index 722194c..f453e0a 100644
--- a/User/lib/flashdb/fal/fal_cfg.h
+++ b/User/lib/flashdb/fal/fal_cfg.h
@@ -17,7 +17,8 @@
#define EEPROM_M95_1_BLOCK_SIZE M95_PAGE_SIZE_128 * 64
#define EEPROM_M95_2_BLOCK_SIZE M95_PAGE_SIZE_256 * 32
-#define EEPROM_FM24_BLOCK_SIZE FM24_PAGE_SIZE * 8
+
+#define EEPROM_FM24_BLOCK_SIZE FM24_PAGE_SIZE * 4 // 因为块大小为2的N次方
#define EEPROM_M95_1_SIZE _M95512_
#define EEPROM_M95_2_SIZE _M95M02_
diff --git a/User/lib/flashdb/fal_eeprom24_port.c b/User/lib/flashdb/fal_eeprom24_port.c
index 8d56c31..c9995fb 100644
--- a/User/lib/flashdb/fal_eeprom24_port.c
+++ b/User/lib/flashdb/fal_eeprom24_port.c
@@ -24,7 +24,7 @@ struct fal_flash_dev eeprom_fm24 =
.len = EEPROM_FM24_SIZE,
.blk_size = EEPROM_FM24_BLOCK_SIZE,
.ops = {init, read, write, erase},
- .write_gran = 8};
+ .write_gran = 1};
static int init(void)
{
@@ -33,6 +33,10 @@ static int init(void)
static int erase(long offset, size_t size)
{
+ // uint8_t buf[EEPROM_FM24_BLOCK_SIZE];
+ // osel_memset(buf, 0x00, EEPROM_FM24_BLOCK_SIZE);
+ // uint32_t addr = eeprom_fm24.addr + offset;
+ // eeprom_fm24_write(addr, (uint8_t *)buf, size);
return size;
}
diff --git a/User/lib/flashdb/fal_eeprom95_port.c b/User/lib/flashdb/fal_eeprom95_port.c
index 5727697..037f810 100644
--- a/User/lib/flashdb/fal_eeprom95_port.c
+++ b/User/lib/flashdb/fal_eeprom95_port.c
@@ -11,7 +11,8 @@
#include
static int init(void);
-static int erase(long offset, size_t size);
+static int erase1(long offset, size_t size);
+static int erase2(long offset, size_t size);
static int read1(long offset, uint8_t *buf, size_t size);
static int write1(long offset, const uint8_t *buf, size_t size);
@@ -26,7 +27,7 @@ struct fal_flash_dev eeprom_m95_1 =
.addr = 0x000000,
.len = EEPROM_M95_1_SIZE,
.blk_size = EEPROM_M95_1_BLOCK_SIZE,
- .ops = {init, read1, write1, erase},
+ .ops = {init, read1, write1, erase1},
.write_gran = 8}; // 设置写粒度,单位 bit, 0 表示未生效(默认值为 0 ),该成员是 fal 版本大于 0.4.0 的新增成员。各个 flash 写入粒度不尽相同,可通过该成员进行设置,以下列举几种常见 Flash 写粒度
struct fal_flash_dev eeprom_m95_2 =
@@ -35,7 +36,7 @@ struct fal_flash_dev eeprom_m95_2 =
.addr = 0x000000,
.len = EEPROM_M95_2_SIZE,
.blk_size = EEPROM_M95_2_BLOCK_SIZE,
- .ops = {init, read2, write2, erase},
+ .ops = {init, read2, write2, erase2},
.write_gran = 8};
static int init(void)
@@ -43,9 +44,21 @@ static int init(void)
return 1;
}
-static int erase(long offset, size_t size)
+static int erase1(long offset, size_t size)
{
- __NOP();
+ // uint8_t buf[EEPROM_M95_1_BLOCK_SIZE];
+ // osel_memset(buf, 0x00, EEPROM_M95_1_BLOCK_SIZE);
+ // uint32_t addr = eeprom_m95_1.addr + offset;
+ // eeprom_m95_write(M95_1, addr, (uint8_t *)buf, size);
+ return size;
+}
+
+static int erase2(long offset, size_t size)
+{
+ // uint8_t buf[EEPROM_M95_2_BLOCK_SIZE];
+ // osel_memset(buf, 0x00, EEPROM_M95_2_BLOCK_SIZE);
+ // uint32_t addr = eeprom_m95_2.addr + offset;
+ // eeprom_m95_write(M95_2, addr, (uint8_t *)buf, size);
return size;
}
diff --git a/User/lib/flashdb/fdb_def.h b/User/lib/flashdb/fdb_def.h
index 51da4f9..7e65075 100644
--- a/User/lib/flashdb/fdb_def.h
+++ b/User/lib/flashdb/fdb_def.h
@@ -50,7 +50,7 @@ extern "C"
/* the file cache table size, it will improve GC speed in file mode when using cache */
#ifndef FDB_FILE_CACHE_TABLE_SIZE
-#define FDB_FILE_CACHE_TABLE_SIZE 6
+#define FDB_FILE_CACHE_TABLE_SIZE 2
#endif
#ifndef FDB_WRITE_GRAN
diff --git a/User/lib/flashdb/fdb_kvdb.c b/User/lib/flashdb/fdb_kvdb.c
index 363b28c..4e737cd 100644
--- a/User/lib/flashdb/fdb_kvdb.c
+++ b/User/lib/flashdb/fdb_kvdb.c
@@ -43,7 +43,7 @@
/* the total remain empty sector threshold before GC */
#ifndef FDB_GC_EMPTY_SEC_THRESHOLD
-#define FDB_GC_EMPTY_SEC_THRESHOLD 6 // https://github.com/armink/FlashDB/issues/156
+#define FDB_GC_EMPTY_SEC_THRESHOLD 1 // https://github.com/armink/FlashDB/issues/156 这个值设定大了会有异常
#endif
/* the string KV value buffer size for legacy fdb_get_kv(db, ) function */
diff --git a/User/lib/inc/data_type_def.h b/User/lib/inc/data_type_def.h
index 941a0a3..94694ca 100644
--- a/User/lib/inc/data_type_def.h
+++ b/User/lib/inc/data_type_def.h
@@ -11,6 +11,9 @@
#ifndef __DATA_TYPE_DEF_H_
#define __DATA_TYPE_DEF_H_
#include
+#ifndef PI
+#define PI (3.14159265358979323846f)
+#endif
#ifndef TRUE
#define TRUE 1
@@ -73,6 +76,29 @@ typedef union
#pragma pack()
+typedef enum
+{
+ DATA_TYPE_INT8 = 0, // 8-bit signed integer
+ DATA_TYPE_UINT8, // 8-bit unsigned integer
+ DATA_TYPE_INT16, // 16-bit signed integer
+ DATA_TYPE_UINT16, // 16-bit unsigned integer
+ DATA_TYPE_INT32, // 32-bit signed integer
+ DATA_TYPE_UINT32, // 32-bit unsigned integer
+ DATA_TYPE_INT64, // 64-bit signed integer
+ DATA_TYPE_UINT64, // 64-bit unsigned integer
+ DATA_TYPE_FLOAT, // 32-bit floating point number
+ DATA_TYPE_DOUBLE, // 64-bit floating point number
+ DATA_TYPE_STRING, // string
+ DATA_TYPE_ARRAY, // array
+ DATA_TYPE_STRUCT, // structure
+ DATA_TYPE_UNION, // union
+ DATA_TYPE_ENUM, // enumeration
+ DATA_TYPE_POINTER, // pointer
+ DATA_TYPE_FUNCTION, // function
+ DATA_TYPE_VOID, // void
+ DATA_TYPE_MAX,
+} data_type_e;
+
typedef uint16_t nwk_id_t;
/**
@@ -162,6 +188,15 @@ typedef uint16_t nwk_id_t;
#define RANGE(x, a, b) (MIN(MAX(x, a), b))
#endif
+/**
+ * @brief Macro to check if a value is between a minimum and maximum value (inclusive).
+ * @param x The value to check.
+ * @param min The minimum value.
+ * @param max The maximum value.
+ * @return Returns 1 if the value is between the minimum and maximum values (inclusive), 0 otherwise.
+ */
+#define IS_BETWEEN(x, min, max) ((x) >= min && (x) <= max)
+
#define ARRAY_LEN(arr) (sizeof(arr)) / (sizeof(arr[0]))
#define HI_UINT16(a) (((uint16_t)(a) >> 8) & 0xFF)
@@ -237,5 +272,5 @@ static inline float32 S2B_FLOAT32(float fv)
#define ASCII_TO_NUM(c) ((c) >= '0' && (c) <= '9' ? (c) - '0' : (c) - 'A' + 10)
// 数字转换为ASSIC码
-#define NUM_TO_ASCII(x) ((x) < 10 ? (x) + '0' : (x)-10 + 'A')
+#define NUM_TO_ASCII(x) ((x) < 10 ? (x) + '0' : (x) - 10 + 'A')
#endif /* __DATA_TYPE_DEF_H_ */
diff --git a/User/lib/inc/lib.h b/User/lib/inc/lib.h
index b04099d..4fac283 100644
--- a/User/lib/inc/lib.h
+++ b/User/lib/inc/lib.h
@@ -40,7 +40,7 @@
typedef struct
{
- uint16_t year;
+ uint8_t year;
uint8_t month;
uint8_t day;
} rtc_date_t;
@@ -52,6 +52,7 @@ typedef struct
uint8_t second;
} rtc_time_t;
+extern void assic_to_str(uint8_t *assic, uint8_t len, uint8_t *str); // ASCII码转字符串
extern uint32_t cpu_encrypt(void); // CPU加密
extern BOOL cpu_judge_encrypt(uint32_t cupid_encrypt); // CPU判断加密
extern void version_split(uint8_t *version, uint8_t *hi, uint8_t *lo); // 版本号1.0拆解成1和0
@@ -63,15 +64,17 @@ extern uint32_t crc32_compute(const uint8_t *const data, uint16_t length); // CR
extern uint8_t xor_compute(const uint8_t *const data, uint16_t length); // 异或校验
extern uint8_t get_bit_num(uint8_t bit); // 获取bit位的值
extern BOOL is_bit_set(int x, int k); // 判断x的第k位是否为1
-extern uint8_t isLeap(uint16_t year); // 检查是否是闰年
+extern uint8_t is_leap(uint16_t year); // 检查是否是闰年
extern uint16_t dayOfyear(uint16_t year, uint8_t month, uint8_t day); // 计算一年中的第几天
extern uint16_t weekOfyear(uint16_t year, uint8_t month, uint8_t day); // 计算一年中的第几周
extern uint8_t get_weekday(uint16_t year, uint8_t month, uint8_t day); // 获取今天星期几
extern uint8_t hex_format_dec(uint8_t hex); // 十六进制转十进制
extern uint8_t dec_format_hex(uint8_t dec); // 十进制转十六进制
extern void quicksort(uint16_t arr[], int low, int high); // 快速排序
+extern void insertion_sort(uint16_t arr[], uint8_t n); // 插入排序
-extern uint32_t time2stamp(rtc_date_t date, rtc_time_t time); // 北京时间转时间戳
+extern uint32_t time2stamp(rtc_date_t *date, rtc_time_t *time); // 北京时间转时间戳
extern void stamp2time(uint32_t stamp, rtc_date_t *date, rtc_time_t *time); // 时间戳转北京时间
-
-#endif //__LIB_H
+extern void convert_seconds(uint32_t total_seconds, char *date); // 秒数转换成时分秒
+extern void add_commas(uint32_t num, char *result); // 数字添加逗号
+#endif //__LIB_H
diff --git a/User/lib/inc/malloc.h b/User/lib/inc/malloc.h
index c408863..65b6586 100644
--- a/User/lib/inc/malloc.h
+++ b/User/lib/inc/malloc.h
@@ -15,7 +15,7 @@
// mem1内存参数设定.mem1完全处于内部SRAM里面.(设置内部SARM的内存池和内存表的参数)
#define MEM1_BLOCK_SIZE 32 // 一个内存块大小为32字节
-#define MEM1_MAX_SIZE 26 * 1024 // 最大管理内存 1K (我们这个内存管理系统的内部SRAM可控制的内存大小)
+#define MEM1_MAX_SIZE 24 * 1024 // 最大管理内存 1K (我们这个内存管理系统的内部SRAM可控制的内存大小)
#define MEM1_ALLOC_TABLE_SIZE MEM1_MAX_SIZE / MEM1_BLOCK_SIZE // 内存表大小(有多少块内存块)
// mem2内存参数设定.mem2的内存池处于外部SRAM里面
diff --git a/User/lib/lcd/gui/AntiAlias/CCGUIAntiAlias.bat b/User/lib/lcd/gui/AntiAlias/CCGUIAntiAlias.bat
new file mode 100644
index 0000000..b6725d9
--- /dev/null
+++ b/User/lib/lcd/gui/AntiAlias/CCGUIAntiAlias.bat
@@ -0,0 +1,13 @@
+@ECHO OFF
+
+ECHO CCGUIAntiAlias.BAT: Compiling GUI\AntiAlias
+
+CALL CC GUIAAArc
+CALL CC GUIAAChar
+CALL CC GUIAAChar2
+CALL CC GUIAAChar4
+CALL CC GUIAACircle
+CALL CC GUIAALib
+CALL CC GUIAALine
+CALL CC GUIAAPoly
+CALL CC GUIAAPolyOut
diff --git a/User/lib/lcd/gui/AntiAlias/GUIAAArc.c b/User/lib/lcd/gui/AntiAlias/GUIAAArc.c
new file mode 100644
index 0000000..36655c2
--- /dev/null
+++ b/User/lib/lcd/gui/AntiAlias/GUIAAArc.c
@@ -0,0 +1,87 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIArcAA.C
+Purpose : Draw Arc routines with Antialiasing
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include
+#include
+#include
+
+#include "GUI_Protected.h"
+
+#if GUI_SUPPORT_AA
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawArcAA
+*/
+static void _DrawArcAA(int x0, int y0, int rx, int ry, int a0, int a1) {
+ int PenSizePrev = GUI_GetPenSize();
+ int PenSize_AA;
+ int Factor;
+
+ Factor = GUI_Context.AA_HiResEnable ? 1 : GUI_Context.AA_Factor;
+ /* Convert into Hires coordinates (if not already done) */
+ x0 *= Factor;
+ y0 *= Factor;
+ rx *= Factor;
+ ry *= Factor;
+ PenSize_AA = PenSizePrev * GUI_Context.AA_Factor;
+ GUI_AA_Init_HiRes(x0 - rx - PenSize_AA, x0 + rx + PenSize_AA);
+ GUI_SetPenSize(PenSize_AA);
+ GL_DrawArc(x0, y0, rx, ry,a0,a1);
+ GUI_SetPenSize(PenSizePrev); /* restore former pen size */
+ /* Cleanup */
+ GUI_AA_Exit();
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_AA_DrawArc
+*/
+void GUI_AA_DrawArc(int x0, int y0, int rx, int ry, int a0, int a1) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG_AA(x0,y0);
+ WM_ITERATE_START(NULL) {
+ #endif
+ _DrawArcAA( x0, y0, rx, ry, a0, a1);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+#else /* Avoid problems with empty object modules */
+ void GUIAAArc_C(void);
+ void GUIAAArc_C(void) {}
+#endif /* GUI_SUPPORT_AA */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/AntiAlias/GUIAAChar.c b/User/lib/lcd/gui/AntiAlias/GUIAAChar.c
new file mode 100644
index 0000000..99ee9dc
--- /dev/null
+++ b/User/lib/lcd/gui/AntiAlias/GUIAAChar.c
@@ -0,0 +1,167 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUICharAA.C
+Purpose : Display antialiased
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+
+#if GUI_SUPPORT_AA
+
+#include
+#include
+
+/*********************************************************************
+*
+* Types
+*
+**********************************************************************
+*/
+
+typedef void tSetPixelAA(int x, int y, U8 Intens);
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static const U8 Bit2Mask0[] = {1<<7, 1<<5, 1<<3, 1<<1};
+static const U8 Bit2Mask1[] = {1<<6, 1<<4, 1<<2, 1<<0};
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* Draw
+*/
+static void Draw(int x0, int y0, int XSize, int YSize, int BytesPerLine, const U8*pData) {
+ int x, y;
+ tSetPixelAA* pfSetPixelAA;
+ pfSetPixelAA = (GUI_Context.TextMode & GUI_TM_TRANS)
+ ? LCD_SetPixelAA : LCD_SetPixelAA_NoTrans;
+ for (y=0; yp.pProp; pProp; pProp=(const GUI_FONT_PROP*) pProp->pNext) {
+ if ((c>=pProp->First) && (c<=pProp->Last))
+ break;
+ }
+ return pProp;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIPROPAA_DispChar
+*/
+void GUIPROPAA_DispChar(U16P c) {
+ int BytesPerLine;
+ GUI_DRAWMODE DrawMode = GUI_Context.TextMode;
+ const GUI_FONT_PROP* pProp = GUIPROP_FindChar(GUI_Context.pAFont->p.pProp, c);
+ if (pProp) {
+ GUI_DRAWMODE OldDrawMode;
+ const GUI_CHARINFO* pCharInfo = pProp->paCharInfo+(c-pProp->First);
+ BytesPerLine = pCharInfo->BytesPerLine;
+ OldDrawMode = LCD_SetDrawMode(DrawMode);
+ Draw ( GUI_Context.DispPosX, GUI_Context.DispPosY,
+ (pCharInfo->XSize+1)/2,
+ GUI_Context.pAFont->YSize,
+ BytesPerLine,
+ (U8 const*) pCharInfo->pData
+ );
+ LCD_SetDrawMode(OldDrawMode); /* Restore draw mode */
+ GUI_Context.DispPosX += (pCharInfo->XDist+1)/2;
+ }
+}
+
+/*********************************************************************
+*
+* GUIPROPAA_GetCharDistX
+*/
+int GUIPROPAA_GetCharDistX(U16P c) {
+ int r;
+ const GUI_FONT_PROP* pProp = GUIPROP_FindChar(GUI_Context.pAFont->p.pProp, c);
+ r = (pProp) ? (pProp->paCharInfo+(c-pProp->First))->XSize : 0;
+ return (r+1)/2;
+}
+
+/*********************************************************************
+*
+* GUIPROPAA_GetFontInfo
+*/
+void GUIPROPAA_GetFontInfo(const GUI_FONT * pFont, GUI_FONTINFO* pfi) {
+ GUI_USE_PARA(pFont);
+ pfi->Flags = GUI_FONTINFO_FLAG_PROP | GUI_FONTINFO_FLAG_AA;
+}
+
+/*********************************************************************
+*
+* GUIPROPAA_IsInFont
+*/
+char GUIPROPAA_IsInFont(const GUI_FONT * pFont, U16 c) {
+ const GUI_FONT_PROP* pProp = GUIPROP_FindChar(pFont->p.pProp, c);
+ return (pProp==NULL) ? 0 : 1;
+}
+
+#else /* Avoid problems with empty object modules */
+ void GUIAAChar_C(void);
+ void GUIAAChar_C(void) {}
+#endif /* GUI_SUPPORT_AA */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/AntiAlias/GUIAAChar2.c b/User/lib/lcd/gui/AntiAlias/GUIAAChar2.c
new file mode 100644
index 0000000..7291253
--- /dev/null
+++ b/User/lib/lcd/gui/AntiAlias/GUIAAChar2.c
@@ -0,0 +1,201 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUICharAA2.C
+Purpose : Display antialiased 2bpp
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+
+#if GUI_SUPPORT_AA
+
+#include
+#include
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define MAX_CHAR_SIZE 100
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+/* used by transparent characters */
+static const int aConvTable[4] = {0, 5, 10, 15};
+
+/* used by non transparent characters */
+static LCD_COLOR aColor[4];
+static LCD_PIXELINDEX OldColorIndex, OldBkColorIndex;
+static GUI_LOGPALETTE Palette = {4, 0, &aColor[0]};
+static GUI_BITMAP Bitmap = {0, 0, 0, 2, 0, &Palette, 0};
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* DrawNoTrans
+*/
+static void DrawNoTrans(int x0, int y0, int XSize, int YSize, int BytesPerLine, const U8*pData) {
+ if ((OldColorIndex != LCD_COLORINDEX) ||
+ (OldBkColorIndex != LCD_BKCOLORINDEX)) {
+ int i;
+ LCD_PIXELINDEX BkColorIndex = LCD_BKCOLORINDEX;
+ LCD_PIXELINDEX ColorIndex = LCD_COLORINDEX;
+ LCD_COLOR BkColor = LCD_Index2Color(BkColorIndex);
+ LCD_COLOR Color = LCD_Index2Color(ColorIndex);
+ aColor[0] = BkColor;
+ for (i = 1; i < 3; i++) {
+ U8 Intens;
+ Intens = 5 * i;
+ aColor[i] = LCD_AA_MixColors(Color, BkColor, Intens);
+ }
+ aColor[3] = Color;
+ LCD_GetpPalConvTableUncached(&Palette);
+ OldColorIndex = ColorIndex;
+ OldBkColorIndex = BkColorIndex;
+ }
+ Bitmap.XSize = XSize;
+ Bitmap.YSize = YSize;
+ Bitmap.BytesPerLine = BytesPerLine;
+ Bitmap.pData = pData;
+ GL_DrawBitmap(&Bitmap, x0, y0);
+}
+
+/*********************************************************************
+*
+* DrawTrans
+*/
+static void DrawTrans(int x0, int y0, int XSize, int YSize, int BytesPerLine, const U8*pData) {
+ int x, y;
+ for (y = 0; y < YSize; y++) {
+ const U8 *pData0 = pData;
+ U8 Rem = XSize & 3;
+ for (x = 0; x < XSize - 1; x += 4) {
+ LCD_SetPixelAA(x + x0 , y0 + y, aConvTable[((*pData0 ) >> 6) ]);
+ LCD_SetPixelAA(x + x0 + 1, y0 + y, aConvTable[((*pData0 ) >> 4) & 0x03]);
+ LCD_SetPixelAA(x + x0 + 2, y0 + y, aConvTable[((*pData0 ) >> 2) & 0x03]);
+ LCD_SetPixelAA(x + x0 + 3, y0 + y, aConvTable[((*pData0++) ) & 0x03]);
+ }
+ if (Rem) {
+ LCD_SetPixelAA(x + x0 , y0 + y, aConvTable[((*pData0 ) >> 6) ]);
+ if (Rem > 1) {
+ LCD_SetPixelAA(x + x0 + 1, y0 + y, aConvTable[((*pData0 ) >> 4) & 0x03]);
+ if (Rem > 2) {
+ LCD_SetPixelAA(x + x0 + 2, y0 + y, aConvTable[((*pData0 ) >> 2) & 0x03]);
+ }
+ }
+ }
+ pData += BytesPerLine;
+ }
+}
+
+/*********************************************************************
+*
+* GUIPROP_FindChar
+*/
+static const GUI_FONT_PROP* GUIPROP_FindChar(const GUI_FONT_PROP* pProp, U16P c) {
+ for (pProp = GUI_Context.pAFont->p.pProp; pProp; pProp=(const GUI_FONT_PROP*) pProp->pNext) {
+ if ((c>=pProp->First) && (c<=pProp->Last))
+ break;
+ }
+ return pProp;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIPROP_AA2_DispChar
+*/
+void GUIPROP_AA2_DispChar(U16P c) {
+ int BytesPerLine;
+ GUI_DRAWMODE DrawMode = GUI_Context.TextMode;
+ const GUI_FONT_PROP* pProp = GUIPROP_FindChar(GUI_Context.pAFont->p.pProp, c);
+ if (pProp) {
+ GUI_DRAWMODE OldDrawMode;
+ const GUI_CHARINFO* pCharInfo = pProp->paCharInfo+(c-pProp->First);
+ BytesPerLine = pCharInfo->BytesPerLine;
+ OldDrawMode = LCD_SetDrawMode(DrawMode);
+ if (DrawMode & GUI_TM_TRANS) {
+ DrawTrans(GUI_Context.DispPosX,
+ GUI_Context.DispPosY,
+ pCharInfo->XSize,
+ GUI_Context.pAFont->YSize,
+ BytesPerLine,
+ (U8 const*)pCharInfo->pData
+ );
+ } else {
+ DrawNoTrans(GUI_Context.DispPosX,
+ GUI_Context.DispPosY,
+ pCharInfo->XSize,
+ GUI_Context.pAFont->YSize,
+ BytesPerLine,
+ (U8 const*)pCharInfo->pData
+ );
+ }
+ LCD_SetDrawMode(OldDrawMode); /* Restore draw mode */
+ GUI_Context.DispPosX += pCharInfo->XDist;
+ }
+}
+
+/*********************************************************************
+*
+* GUIPROP_AA2_GetCharDistX
+*/
+int GUIPROP_AA2_GetCharDistX(U16P c) {
+ const GUI_FONT_PROP* pProp = GUIPROP_FindChar(GUI_Context.pAFont->p.pProp, c);
+ return (pProp) ? (pProp->paCharInfo+(c-pProp->First))->XSize : 0;
+}
+
+/*********************************************************************
+*
+* GUIPROP_AA2_GetFontInfo
+*/
+void GUIPROP_AA2_GetFontInfo(const GUI_FONT * pFont, GUI_FONTINFO* pfi) {
+ GUI_USE_PARA(pFont);
+ pfi->Flags = GUI_FONTINFO_FLAG_PROP | GUI_FONTINFO_FLAG_AA2;
+}
+
+/*********************************************************************
+*
+* GUIPROP_AA2_IsInFont
+*/
+char GUIPROP_AA2_IsInFont(const GUI_FONT * pFont, U16 c) {
+ const GUI_FONT_PROP* pProp = GUIPROP_FindChar(pFont->p.pProp, c);
+ return (pProp==NULL) ? 0 : 1;
+}
+
+#else /* Avoid problems with empty object modules */
+ void GUIAAChar2_C(void);
+ void GUIAAChar2_C(void) {}
+#endif /* GUI_SUPPORT_AA */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/AntiAlias/GUIAAChar4.c b/User/lib/lcd/gui/AntiAlias/GUIAAChar4.c
new file mode 100644
index 0000000..318359b
--- /dev/null
+++ b/User/lib/lcd/gui/AntiAlias/GUIAAChar4.c
@@ -0,0 +1,129 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUICharAA.C
+Purpose : Display antialiased
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+
+#if GUI_SUPPORT_AA
+
+#include
+#include
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* Draw
+*/
+static void Draw(int x0, int y0, int XSize, int YSize, int BytesPerLine, const U8*pData) {
+ int x, y;
+ tLCD_SetPixelAA* pfSetPixelAA;
+ pfSetPixelAA = (GUI_Context.TextMode && GUI_TM_TRANS) ?
+ LCD_SetPixelAA : LCD_SetPixelAA_NoTrans;
+ for (y=0; y>4); /* x0+x changed -> x+x0 to avoid problems with IAR's ICCMC80 */
+ (*pfSetPixelAA)(x0+x+1,y0+y, (*pData0++)&15);
+ }
+ if (XSize&1) {
+ (*pfSetPixelAA)(x0+x,y0+y, (*pData0)&15);
+ }
+ pData+=BytesPerLine;
+ }
+}
+
+/*********************************************************************
+*
+* GUIPROP_FindChar
+*/
+static const GUI_FONT_PROP* GUIPROP_FindChar(const GUI_FONT_PROP* pProp, U16P c) {
+ for (pProp = GUI_Context.pAFont->p.pProp; pProp; pProp=(const GUI_FONT_PROP*) pProp->pNext) {
+ if ((c>=pProp->First) && (c<=pProp->Last))
+ break;
+ }
+ return pProp;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIPROP_AA4_DispChar
+*/
+void GUIPROP_AA4_DispChar(U16P c) {
+ int BytesPerLine;
+ GUI_DRAWMODE DrawMode = GUI_Context.TextMode;
+ const GUI_FONT_PROP* pProp = GUIPROP_FindChar(GUI_Context.pAFont->p.pProp, c);
+ if (pProp) {
+ GUI_DRAWMODE OldDrawMode;
+ const GUI_CHARINFO* pCharInfo = pProp->paCharInfo+(c-pProp->First);
+ BytesPerLine = pCharInfo->BytesPerLine;
+ OldDrawMode = LCD_SetDrawMode(DrawMode);
+ Draw ( GUI_Context.DispPosX, GUI_Context.DispPosY,
+ pCharInfo->XSize,
+ GUI_Context.pAFont->YSize,
+ BytesPerLine,
+ (U8 const*)pCharInfo->pData
+ );
+ LCD_SetDrawMode(OldDrawMode); /* Restore draw mode */
+ GUI_Context.DispPosX += pCharInfo->XDist;
+ }
+}
+
+/*********************************************************************
+*
+* GUIPROP_AA4_GetCharDistX
+*/
+int GUIPROP_AA4_GetCharDistX(U16P c) {
+ const GUI_FONT_PROP* pProp = GUIPROP_FindChar(GUI_Context.pAFont->p.pProp, c);
+ return (pProp) ? (pProp->paCharInfo+(c-pProp->First))->XSize : 0;
+}
+
+/*********************************************************************
+*
+* GUIPROP_AA4_GetFontInfo
+*/
+void GUIPROP_AA4_GetFontInfo(const GUI_FONT * pFont, GUI_FONTINFO* pfi) {
+ GUI_USE_PARA(pFont);
+ pfi->Flags = GUI_FONTINFO_FLAG_PROP | GUI_FONTINFO_FLAG_AA4;
+}
+
+/*********************************************************************
+*
+* GUIPROP_AA4_IsInFont
+*/
+char GUIPROP_AA4_IsInFont(const GUI_FONT * pFont, U16 c) {
+ const GUI_FONT_PROP* pProp = GUIPROP_FindChar(pFont->p.pProp, c);
+ return (pProp==NULL) ? 0 : 1;
+}
+
+#else /* Avoid problems with empty object modules */
+ void GUIAAChar4_C(void);
+ void GUIAAChar4_C(void) {}
+#endif /* GUI_SUPPORT_AA */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/AntiAlias/GUIAACircle.c b/User/lib/lcd/gui/AntiAlias/GUIAACircle.c
new file mode 100644
index 0000000..3b6f876
--- /dev/null
+++ b/User/lib/lcd/gui/AntiAlias/GUIAACircle.c
@@ -0,0 +1,133 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUICirleAA.C
+Purpose : Draw Circle routines with Antialiasing
+
+TBD: Circle needs to be calculated from top to bottom in order
+to avoid AA problems at certain positions.
+
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+#include
+#include
+#include
+
+#if GUI_SUPPORT_AA
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* FillCircle
+*/
+static void FillCircle(int x0, int y0, int r) {
+ int i, x;
+ int sqmax = r*r+r/2;
+ int yMin, yMax;
+ /* First step : find uppermost and lowermost coordinates */
+ yMin = y0 - r;
+ yMax = y0 + r;
+ /* Use Clipping rect to reduce calculation (if possible) */
+ if (GUI_Context.pClipRect_HL) {
+ if (yMax > GUI_Context.pClipRect_HL->y1)
+ yMax = GUI_Context.pClipRect_HL->y1;
+ if (yMin < GUI_Context.pClipRect_HL->y0)
+ yMin = GUI_Context.pClipRect_HL->y0;
+ }
+ /* Draw top half */
+ for (i=0, x=r; i= yMin) && (y <= yMax)) {
+ /* calc proper x-value */
+ while ((i*i+x*x) >sqmax)
+ --x;
+ LCD_HL_DrawHLine (x0-x, y, x0+x);
+ }
+ }
+ /* Draw bottom half */
+ for (i=0, x=r; i= yMin) && (y <= yMax)) {
+ /* calc proper x-value */
+ while ((i*i+x*x) >sqmax)
+ --x;
+ LCD_HL_DrawHLine (x0-x, y, x0+x);
+ }
+ }
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_FillCircleAA_HiRes
+*/
+void GL_FillCircleAA_HiRes(int x0, int y0, int r) {
+/* Init AA Subsystem, pass horizontal limits */
+ GUI_AA_Init_HiRes(x0-r, x0+r);
+/* Do the actual drawing */
+ FillCircle(x0, y0, r);
+/* Cleanup */
+ GUI_AA_Exit();
+}
+
+/*********************************************************************
+*
+* GUI_AA_FillCircle
+*/
+void GUI_AA_FillCircle(int x0, int y0, int r) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT Rect;
+ #endif
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG_AA(x0,y0);
+ #endif
+ if (!GUI_Context.AA_HiResEnable) {
+ x0 *= GUI_Context.AA_Factor;
+ y0 *= GUI_Context.AA_Factor;
+ r *= GUI_Context.AA_Factor;
+ }
+ #if (GUI_WINSUPPORT)
+ Rect.x0 = GUI_AA_HiRes2Pixel(x0 - r);
+ Rect.x1 = GUI_AA_HiRes2Pixel(x0 + r);
+ Rect.y0 = GUI_AA_HiRes2Pixel(y0 - r);
+ Rect.y1 = GUI_AA_HiRes2Pixel(y0 + r);
+ WM_ITERATE_START(&Rect); {
+ #endif
+ GL_FillCircleAA_HiRes(x0, y0, r);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+#else /* Avoid problems with empty object modules */
+ void GUIAACircle_C(void);
+ void GUIAACircle_C(void) {}
+#endif /* GUI_SUPPORT_AA */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/AntiAlias/GUIAALib.c b/User/lib/lcd/gui/AntiAlias/GUIAALib.c
new file mode 100644
index 0000000..eff811d
--- /dev/null
+++ b/User/lib/lcd/gui/AntiAlias/GUIAALib.c
@@ -0,0 +1,280 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIAALib.C
+Purpose : Antialiasing library
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+#include "LCD_ConfDefaults.h" /* Required in order to know max. XSize so we do not waste memory */
+
+#if GUI_SUPPORT_AA
+
+#include
+#include
+
+/*********************************************************************
+*
+* Defines, config defaults
+*
+**********************************************************************
+*/
+
+#ifndef GUI_AA_LINEBUFFER_SIZE
+ #define GUI_AA_LINEBUFFER_SIZE LCD_XSIZE
+#endif
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static U8 abAABuffer[GUI_AA_LINEBUFFER_SIZE]; /* This could be changed to dynamic memory ... */
+static U8* pabAABuffer;
+static int _x0, _x1, _y, _x0_InUse, _x1_InUse;
+static GUI_RECT ClipRect_HL;
+
+static tLCD_HL_APIList DrawAPICopy; /* Copy of device function ptr list */
+static const tLCD_HL_APIList* pLCD_HLPrev; /* Copy of device function ptr list */
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _CleanLine
+*/
+static void _CleanLine(void) {
+ GUI_MEMSET(pabAABuffer,0, _x1 - _x0+1);
+ _y = -16383; /* Invalidate */
+ _x0_InUse = 16383;
+ _x1_InUse = -16383;
+}
+
+/*********************************************************************
+*
+* _FlushLine
+*/
+static void _FlushLine(void) {
+ int i;
+ int iEnd = _x1_InUse-_x0;
+ int IMax = GUI_Context.AA_Factor * GUI_Context.AA_Factor;
+ for (i =_x0_InUse-_x0; i<=iEnd; i++) {
+ int Intens = *(pabAABuffer+i);
+ if (Intens) {
+ /* Check we can use line draw */
+ if (Intens == IMax) {
+ int j;
+ for (j=i; jpfDrawHLine(_x0+i, _y, _x0+j);
+ i = j; /*xxx*/
+ } else {
+ LCD_HL_DrawPixel (_x0+i,_y);
+ }
+ } else {
+ LCD_SetPixelAA(_x0+i,_y, (15*Intens+IMax/2)/IMax);
+ }
+ }
+ }
+ _CleanLine();
+}
+
+/*********************************************************************
+*
+* _DrawHLine
+*
+* Purpose:
+* This is the redirected DrawHLine routine which is called
+* instead of the default output routine. Its job is to do
+* antialiasing and then perform the drawing operations.
+*/
+static void _DrawHLine (int x0, int y, int x1) {
+ int x0Real, x1Real;
+/* Make sure there is something to do */
+ if (x1 _x1_InUse)
+ _x1_InUse = x1Real;
+/* Clip (should not be necessary ... Just to be on the safe side ! */
+ if (x0Real < _x0) {
+ x0 = _x0 * GUI_Context.AA_Factor;
+ }
+ if (x1Real > _x1) {
+ x1 = (_x1+1)*GUI_Context.AA_Factor-1;
+ }
+/* Make sure there is still something to do (after clipping) */
+ if (x11; ) {
+ *pDest++ +=GUI_Context.AA_Factor;
+ }
+ /* Last Pixel */
+ *pDest += (1+x1- (x1_Off+_x0) *GUI_Context.AA_Factor);
+ }
+ }
+}
+
+/*********************************************************************
+*
+* CalcClipRectHL
+*/
+static void CalcClipRectHL(void) {
+ ClipRect_HL.x0 = GUI_Context.ClipRect.x0 * GUI_Context.AA_Factor;
+ ClipRect_HL.y0 = GUI_Context.ClipRect.y0 * GUI_Context.AA_Factor;
+ ClipRect_HL.x1 = (GUI_Context.ClipRect.x1+1) * GUI_Context.AA_Factor -1;
+ ClipRect_HL.y1 = (GUI_Context.ClipRect.y1+1) * GUI_Context.AA_Factor -1;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_AA_Init
+*/
+int GUI_AA_Init(int x0, int x1) {
+ int r =0;
+ /* Bounds checking:
+ Make sure x0, x1 are in legal range ...
+ (The important point is that they span no more than configured as
+ buffer size)
+ */
+ if (x0<0)
+ x0 =0;
+ if (x1-x0 > GUI_AA_LINEBUFFER_SIZE-1)
+ x1 = x0+GUI_AA_LINEBUFFER_SIZE-1;
+ /* Is there anything to do at all ??? */
+ if (x1 < x0) {
+ x1 = x0; /* Not really ... */
+ r =1;
+ }
+ DrawAPICopy = *GUI_Context.pLCD_HL; /* Copy API table */
+ pLCD_HLPrev = GUI_Context.pLCD_HL; /* Remember list ptr (for restore) */
+ DrawAPICopy.pfDrawHLine = _DrawHLine; /* modify function ptr. for hline */
+ GUI_Context.pLCD_HL = &DrawAPICopy; /* Use copy of fp-list */
+ pabAABuffer = abAABuffer;
+ _x0 = x0;
+ _x1 = x1;
+ _CleanLine();
+ CalcClipRectHL();
+ GUI_Context.pClipRect_HL = &ClipRect_HL;
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_AA_Init_HiRes
+*/
+int GUI_AA_Init_HiRes(int x0, int x1) {
+ x0 /= GUI_Context.AA_Factor;
+ x1 /= GUI_Context.AA_Factor;
+ return GUI_AA_Init(x0, x1);
+}
+
+/*********************************************************************
+*
+* GUI_AA_SetFactor
+*/
+void GUI_AA_SetFactor(int Factor) {
+ GUI_Context.AA_Factor = Factor;
+ CalcClipRectHL(); /* High level clipping depends on quality factor */
+}
+
+/*********************************************************************
+*
+* GUI_AA_GetFactor
+*/
+int GUI_AA_GetFactor(void) {
+ return GUI_Context.AA_Factor;
+}
+
+/*********************************************************************
+*
+* GUI_AA_DisableHiRes
+*/
+void GUI_AA_DisableHiRes(void) {
+ GUI_Context.AA_HiResEnable = 0;
+}
+
+/*********************************************************************
+*
+* GUI_AA_EnableHiRes
+*/
+void GUI_AA_EnableHiRes(void) {
+ GUI_Context.AA_HiResEnable =1;
+}
+
+/*********************************************************************
+*
+* GUI_AA_HiRes2Pixel
+*/
+I16 GUI_AA_HiRes2Pixel(int HiRes) {
+ return GUI_Context.AA_Factor ? (HiRes / GUI_Context.AA_Factor) : HiRes;
+}
+
+/*********************************************************************
+*
+* GUI_AA_Exit
+*/
+void GUI_AA_Exit(void) {
+ _FlushLine();
+ /* restore previous settings */
+ GUI_Context.pLCD_HL = pLCD_HLPrev;
+ GUI_Context.pClipRect_HL = &GUI_Context.ClipRect;
+}
+
+#else /* Avoid problems with empty object modules */
+ void GUIAALib_C(void);
+ void GUIAALib_C(void) {}
+#endif /* GUI_SUPPORT_AA */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/AntiAlias/GUIAALine.c b/User/lib/lcd/gui/AntiAlias/GUIAALine.c
new file mode 100644
index 0000000..a9970fd
--- /dev/null
+++ b/User/lib/lcd/gui/AntiAlias/GUIAALine.c
@@ -0,0 +1,109 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIAALine.C
+Purpose : Drawing lines with antialiasing
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include
+
+#if GUI_SUPPORT_AA
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _AA_DrawLine
+*/
+static void _AA_DrawLine(int x0, int y0, int x1, int y1) {
+ int xMin, xMax;
+ U8 PenSizeOld = GUI_GetPenSize();
+ U8 PenSizeHR = PenSizeOld * GUI_Context.AA_Factor;
+ U8 OldPenShape = GUI_SetPenShape(GUI_PS_FLAT);
+ /* Calculate left and right borders for AA module */
+ if (x0 < x1) {
+ xMin = x0;
+ xMax = x1;
+ } else {
+ xMin = x1;
+ xMax = x0;
+ }
+ if (GUI_Context.AA_HiResEnable) {
+ xMin -= PenSizeHR;
+ xMax += PenSizeHR;
+ xMin /= GUI_Context.AA_Factor;
+ xMax /= GUI_Context.AA_Factor;
+ } else {
+ xMin -= PenSizeOld;
+ xMax += PenSizeOld;
+ x0 *= GUI_Context.AA_Factor;
+ x1 *= GUI_Context.AA_Factor;
+ y0 *= GUI_Context.AA_Factor;
+ y1 *= GUI_Context.AA_Factor;
+ }
+ /* Do the actual drawing */
+ GUI_AA_Init(xMin, xMax);
+ GUI_SetPenSize(PenSizeHR);
+ GL_DrawLine(x0 , y0 , x1 , y1 );
+ GUI_AA_Exit();
+ /* Draw end points (can be optimized away in future, TBD*/
+ switch (OldPenShape) {
+ case GUI_PS_ROUND:
+ {
+ int r = GUI_Context.AA_Factor * PenSizeOld / 2;
+ GL_FillCircleAA_HiRes(x0 , y0 , r);
+ GL_FillCircleAA_HiRes(x1 , y1 , r);
+ }
+ break;
+ }
+ GUI_SetPenSize(PenSizeOld);
+ GUI_SetPenShape(OldPenShape);
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_AA_DrawLine
+*/
+void GUI_AA_DrawLine(int x0, int y0, int x1, int y1) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG_AA(x0,y0);
+ WM_ADDORG_AA(x1,y1);
+ WM_ITERATE_START(NULL); {
+ #endif
+ _AA_DrawLine(x0, y0, x1, y1);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+#else /* Avoid problems with empty object modules */
+ void GUIAALine_C(void);
+ void GUIAALine_C(void) {}
+#endif /* GUI_SUPPORT_AA */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/AntiAlias/GUIAAPoly.c b/User/lib/lcd/gui/AntiAlias/GUIAAPoly.c
new file mode 100644
index 0000000..3c0e9d1
--- /dev/null
+++ b/User/lib/lcd/gui/AntiAlias/GUIAAPoly.c
@@ -0,0 +1,112 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIPolyAA.C
+Purpose : Draw Polygon routines with Antialiasing
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+
+#include
+#include
+#include
+
+#if GUI_SUPPORT_AA
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _FillPolygonAA
+*/
+static void _FillPolygonAA(GUI_POINT* paPoint, int NumPoints, int x, int y) {
+ int i;
+ int Stat;
+ int x0,x1;
+ int PosFactor = GUI_Context.AA_HiResEnable ? 1 : GUI_Context.AA_Factor;
+/* Calc horizontal limits and init GUI_AA */
+ x0 = x1 = paPoint[0].x;
+ for (i=1; i< NumPoints; i++) {
+ int x = paPoint[i].x;
+ if (xx1)
+ x1 = x;
+ }
+ if (!GUI_Context.AA_HiResEnable) {
+ Stat = GUI_AA_Init(x0+x,x1+x);
+ } else {
+ Stat = GUI_AA_Init((x0+x)/GUI_Context.AA_Factor,(x1+x)/GUI_Context.AA_Factor);
+ }
+ if (Stat ==0) {
+ /* Modify pointlist */
+ if (!GUI_Context.AA_HiResEnable) {
+ for (i=0; i< NumPoints; i++) {
+ paPoint[i].x *= GUI_Context.AA_Factor;
+ paPoint[i].y *= GUI_Context.AA_Factor;
+ }
+ }
+ GL_FillPolygon(paPoint, NumPoints, x * PosFactor, y * PosFactor);
+ /* Restore pointlist */
+ if (!GUI_Context.AA_HiResEnable) {
+ for (i=0; i< NumPoints; i++) {
+ paPoint[i].x /= GUI_Context.AA_Factor;
+ paPoint[i].y /= GUI_Context.AA_Factor;
+ }
+ }
+ /* Cleanup */
+ }
+ GUI_AA_Exit();
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_AA_FillPolygon
+*/
+void GUI_AA_FillPolygon(/*const*/ GUI_POINT* pPoints, int NumPoints, int x0, int y0) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG_AA(x0,y0);
+ WM_ITERATE_START(NULL); {
+ #endif
+/* Variables in MEMDEV module (with memory devices only) */
+ #if GUI_SUPPORT_MEMDEV
+ if (GUI_Context.pDeviceAPI->pfFillPolygonAA)
+ GUI_Context.pDeviceAPI->pfFillPolygonAA(pPoints, NumPoints, x0, y0);
+ else
+ #endif
+ _FillPolygonAA (pPoints, NumPoints, x0, y0);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+#else /* Avoid problems with empty object modules */
+ void GUIAAPoly_C(void);
+ void GUIAAPoly_C(void) {}
+#endif /* GUI_SUPPORT_AA */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/AntiAlias/GUIAAPolyOut.c b/User/lib/lcd/gui/AntiAlias/GUIAAPolyOut.c
new file mode 100644
index 0000000..c635a54
--- /dev/null
+++ b/User/lib/lcd/gui/AntiAlias/GUIAAPolyOut.c
@@ -0,0 +1,54 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIPolyOutAA.C
+Purpose : Draw Polygon outline routines with Antialiasing
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include
+
+#include "GUI.h"
+
+#if GUI_SUPPORT_AA
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_AA_DrawPolyOutline
+*/
+void GUI_AA_DrawPolyOutline(const GUI_POINT* pSrc, int NumPoints, int Thickness, int x, int y) {
+ U8 PrevDraw;
+ GUI_POINT aiTemp[10];
+ GUI_EnlargePolygon(&aiTemp[0], pSrc, NumPoints, Thickness);
+ GUI_AA_FillPolygon( &aiTemp[0], NumPoints, x, y );
+ PrevDraw = LCD_SetDrawMode(GUI_DRAWMODE_REV);
+/* Copy points due to const qualifier */
+ memcpy(aiTemp, pSrc, NumPoints*2*sizeof(GUI_POINT));
+ GUI_AA_FillPolygon( aiTemp, NumPoints, x, y );
+ LCD_SetDrawMode(PrevDraw);
+}
+
+#else /* Avoid problems with empty object modules */
+ void GUIAAPolyOut_C(void);
+ void GUIAAPolyOut_C(void) {}
+#endif /* GUI_SUPPORT_AA */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/AntiAlias/vssver.scc b/User/lib/lcd/gui/AntiAlias/vssver.scc
new file mode 100644
index 0000000..2f0c075
Binary files /dev/null and b/User/lib/lcd/gui/AntiAlias/vssver.scc differ
diff --git a/User/lib/lcd/gui/Config/GUIConf.h b/User/lib/lcd/gui/Config/GUIConf.h
new file mode 100644
index 0000000..c397d32
--- /dev/null
+++ b/User/lib/lcd/gui/Config/GUIConf.h
@@ -0,0 +1,39 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* �C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIConf.h
+Purpose : Configures abilities, fonts etc.
+----------------------------------------------------------------------
+*/
+
+#ifndef GUICONF_H
+#define GUICONF_H
+
+#define GUI_OS (0) /* Compile with multitasking support */
+#define GUI_SUPPORT_TOUCH (0) /* Support a touch screen (req. win-manager) */
+#define GUI_SUPPORT_UNICODE (1) /* Support mixed ASCII/UNICODE strings */
+
+#define GUI_DEFAULT_FONT &GUI_FontHZ16x16
+#define GUI_ALLOC_SIZE 5000 /* Size of dynamic memory ... For WM and memory devices*/
+
+/*********************************************************************
+ *
+ * Configuration of available packages
+ */
+
+#define GUI_WINSUPPORT 0 /* Window manager package available */
+#define GUI_SUPPORT_MEMDEV 0 /* Memory devices available */
+#define GUI_SUPPORT_AA 1 /* Anti aliasing available */
+
+#endif /* Avoid multiple inclusion */
diff --git a/User/lib/lcd/gui/Config/GUITouchConf.h b/User/lib/lcd/gui/Config/GUITouchConf.h
new file mode 100644
index 0000000..db2a9f6
--- /dev/null
+++ b/User/lib/lcd/gui/Config/GUITouchConf.h
@@ -0,0 +1,31 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUITouch.Conf.h
+Purpose : Configures touch screen module
+----------------------------------------------------------------------
+*/
+
+
+#ifndef GUITOUCH_CONF_H
+#define GUITOUCH_CONF_H
+
+
+#define GUI_TOUCH_AD_LEFT 20
+#define GUI_TOUCH_AD_RIGHT 240
+#define GUI_TOUCH_SWAP_XY 1
+#define GUI_TOUCH_MIRROR_X 0
+#define GUI_TOUCH_MIRROR_Y 1
+
+#endif /* GUITOUCH_CONF_H */
diff --git a/User/lib/lcd/gui/Config/GUI_X.c b/User/lib/lcd/gui/Config/GUI_X.c
new file mode 100644
index 0000000..ce7fa4f
--- /dev/null
+++ b/User/lib/lcd/gui/Config/GUI_X.c
@@ -0,0 +1,90 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_X.C
+Purpose : Config / System dependent externals for GUI
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI.h"
+#include "GUI_X.h"
+
+/*********************************************************************
+ *
+ * Global data
+ */
+volatile int OS_TimeMS;
+
+/*********************************************************************
+*
+* Timing:
+* GUI_X_GetTime()
+* GUI_X_Delay(int)
+
+ Some timing dependent routines require a GetTime
+ and delay function. Default time unit (tick), normally is
+ 1 ms.
+*/
+
+int GUI_X_GetTime(void)
+{
+ return OS_TimeMS;
+}
+
+void GUI_X_Delay(int ms)
+{
+ int tEnd = OS_TimeMS + ms;
+ while ((tEnd - OS_TimeMS) > 0)
+ ;
+}
+
+/*********************************************************************
+ *
+ * GUI_X_Init()
+ *
+ * Note:
+ * GUI_X_Init() is called from GUI_Init is a possibility to init
+ * some hardware which needs to be up and running before the GUI.
+ * If not required, leave this routine blank.
+ */
+
+void GUI_X_Init(void) {}
+
+/*********************************************************************
+ *
+ * GUI_X_ExecIdle
+ *
+ * Note:
+ * Called if WM is in idle state
+ */
+
+void GUI_X_ExecIdle(void) {}
+
+/*********************************************************************
+*
+* Logging: OS dependent
+
+Note:
+ Logging is used in higher debug levels only. The typical target
+ build does not use logging and does therefor not require any of
+ the logging routines below. For a release build without logging
+ the routines below may be eliminated to save some space.
+ (If the linker is not function aware and eliminates unreferenced
+ functions automatically)
+
+*/
+
+void GUI_X_Log(const char *s) { GUI_USE_PARA(s); }
+void GUI_X_Warn(const char *s) { GUI_USE_PARA(s); }
+void GUI_X_ErrorOut(const char *s) { GUI_USE_PARA(s); }
diff --git a/User/lib/lcd/gui/Config/LCDConf.h b/User/lib/lcd/gui/Config/LCDConf.h
new file mode 100644
index 0000000..cacd1ff
--- /dev/null
+++ b/User/lib/lcd/gui/Config/LCDConf.h
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* �C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDConf_1375_C8_C320x240.h
+Purpose : Sample configuration file
+----------------------------------------------------------------------
+*/
+
+#ifndef LCDCONF_H
+#define LCDCONF_H
+#include "board.h" // user defined
+
+/*********************************************************************
+ *
+ * General configuration of LCD
+ *
+ **********************************************************************
+ */
+
+#define LCD_XSIZE (400) /* X-resolution of LCD, Logical coor. */
+#define LCD_YSIZE (240) /* Y-resolution of LCD, Logical coor. */
+
+#define LCD_BITSPERPIXEL (8)
+
+#define LCD_CONTROLLER (-1)
+
+#define LCD_INIT_CONTROLLER() lcd_init();
+
+#endif /* LCDCONF_H */
diff --git a/User/lib/lcd/gui/Config/vssver.scc b/User/lib/lcd/gui/Config/vssver.scc
new file mode 100644
index 0000000..7b91b53
Binary files /dev/null and b/User/lib/lcd/gui/Config/vssver.scc differ
diff --git a/User/lib/lcd/gui/ConvertColor/CCConvertColor.bat b/User/lib/lcd/gui/ConvertColor/CCConvertColor.bat
new file mode 100644
index 0000000..31cbd0f
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/CCConvertColor.bat
@@ -0,0 +1,25 @@
+@ECHO OFF
+ECHO CCConvertColor.bat: Compiling GUI\ConvertColor
+CALL CC LCDP111
+CALL CC LCDP222
+CALL CC LCDP233
+CALL CC LCDP323
+CALL CC LCDP332
+CALL CC LCDP444_12
+CALL CC LCDP444_12_1
+CALL CC LCDP444_16
+CALL CC LCDP555
+CALL CC LCDP556
+CALL CC LCDP565
+CALL CC LCDP655
+CALL CC LCDP8666
+CALL CC LCDP8666_1
+CALL CC LCDPM233
+CALL CC LCDPM323
+CALL CC LCDPM332
+CALL CC LCDPM444_12
+CALL CC LCDPM444_16
+CALL CC LCDPM555
+CALL CC LCDPM556
+CALL CC LCDPM565
+CALL CC LCDPM655
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP111.c b/User/lib/lcd/gui/ConvertColor/LCDP111.c
new file mode 100644
index 0000000..918a7da
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP111.c
@@ -0,0 +1,98 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD111.C
+Purpose : Color conversion routines for 111 color mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code, LCD_FIXEDPALETTE == 111, 8 basic colors
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_111
+*/
+unsigned LCD_Color2Index_111(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>>(0+7)) &1;
+ g = (Color>>(8+7)) &1;
+ b = (Color>>(16+7)) &1;
+ return r+(g<<1)+(b<<2);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_111
+*/
+LCD_COLOR LCD_Index2Color_111(int Index) {
+ U16 r,g,b;
+ r = (((Index>>0)&1)*0xff);
+ g = (((Index>>1)&1)*0xff);
+ b = (Index>>2) *0xff;
+ return r | (g<<8) | ((U32)b<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_111
+*/
+unsigned LCD_GetIndexMask_111(void) {
+ return 0x0007;
+}
+
+/*********************************************************************
+*
+* Public code, LCD_FIXEDPALETTE == 111, 8 basic colors, SWAP_RB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M111
+*/
+unsigned LCD_Color2Index_M111(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>>(0+7)) &1;
+ g = (Color>>(8+7)) &1;
+ b = (Color>>(16+7)) &1;
+ return b+(g<<1)+(r<<2);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_M111
+*/
+LCD_COLOR LCD_Index2Color_M111(int Index) {
+ U16 r,g,b;
+ r = (((Index>>0)&1)*0xff);
+ g = (((Index>>1)&1)*0xff);
+ b = (Index>>2) *0xff;
+ return b | (g<<8) | ((U32)r<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M111
+*/
+unsigned LCD_GetIndexMask_M111(void) {
+ return 0x0007;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP222.c b/User/lib/lcd/gui/ConvertColor/LCDP222.c
new file mode 100644
index 0000000..4dc03cf
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP222.c
@@ -0,0 +1,98 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD222.C
+Purpose : Color conversion routines for 222 mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code, LCD_FIXEDPALETTE == 222, 64 colors
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_222
+*/
+unsigned LCD_Color2Index_222(LCD_COLOR Color) {
+ int r,g,b;
+ r = ((Color&255) +0x2a)/0x55;
+ g = (((Color>>8)&255) +0x2a)/0x55;
+ b = (((Color>>16)&255)+0x2a)/0x55;
+ return r+(g<<2)+(b<<4);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_222
+*/
+LCD_COLOR LCD_Index2Color_222(int Index) {
+ U16P r,g,b;
+ r = ((Index>>0)&3)*0x55;
+ g = ((Index>>2)&3)*0x55;
+ b = (Index>>4) *0x55;
+ return (((U32)b)<<16)|(g<<8)|r;
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_222
+*/
+unsigned LCD_GetIndexMask_222(void) {
+ return 0x0003f;
+}
+
+/*********************************************************************
+*
+* Public code, LCD_FIXEDPALETTE == 222, 64 colors, SWAP_RB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M222
+*/
+unsigned LCD_Color2Index_M222(LCD_COLOR Color) {
+ int r,g,b;
+ r = ((Color&255) +0x2a)/0x55;
+ g = (((Color>>8)&255) +0x2a)/0x55;
+ b = (((Color>>16)&255)+0x2a)/0x55;
+ return b+(g<<2)+(r<<4);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_M222
+*/
+LCD_COLOR LCD_Index2Color_M222(int Index) {
+ U16P r,g,b;
+ r = ((Index>>0)&3)*0x55;
+ g = ((Index>>2)&3)*0x55;
+ b = (Index>>4) *0x55;
+ return (((U32)r)<<16)|(g<<8)|b;
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M222
+*/
+unsigned LCD_GetIndexMask_M222(void) {
+ return 0x003f;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP233.c b/User/lib/lcd/gui/ConvertColor/LCDP233.c
new file mode 100644
index 0000000..a36c202
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP233.c
@@ -0,0 +1,65 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP233.C
+Purpose : Color conversion routines for 233 mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 233, 256 colors, BBGGGRRR
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_233
+*/
+unsigned LCD_Color2Index_233(LCD_COLOR Color) {
+ int r, g, b;
+ r = Color & 255;
+ g = (Color >> 8 ) & 255;
+ b = Color >> 16;
+ r = (r * 7 + 127) / 255;
+ g = (g * 7 + 127) / 255;
+ b = (b + 42) / 85;
+ return r + (g << 3) + (b << 6);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_233
+*/
+LCD_COLOR LCD_Index2Color_233(int Index) {
+ int r, g, b;
+ r = (Index & 7) * 255 / 7;
+ g = ((Index >> 3) & 7) * 255 / 7;
+ b = ((Index >> 6) & 3) * 85;
+ return r + (g << 8) + (((U32)b) << 16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_233
+*/
+unsigned LCD_GetIndexMask_233(void) {
+ return 0xff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP323.c b/User/lib/lcd/gui/ConvertColor/LCDP323.c
new file mode 100644
index 0000000..36aac45
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP323.c
@@ -0,0 +1,65 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP323.C
+Purpose : Color conversion routines for 323 mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 323, 256 colors, BBBGGRRR
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_323
+*/
+unsigned LCD_Color2Index_323(LCD_COLOR Color) {
+ int r, g, b;
+ r = Color & 255;
+ g = (Color >> 8 ) & 255;
+ b = Color >> 16;
+ r = (r * 7 + 127) / 255;
+ g = (g + 42) / 85;
+ b = (b * 7 + 127) / 255;
+ return r + (g << 3) + (b << 5);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_323
+*/
+LCD_COLOR LCD_Index2Color_323(int Index) {
+ int r, g, b;
+ r = (Index & 7) * 255 / 7;
+ g = ((Index >> 3) & 3) * 85;
+ b = ((Index >> 5) & 7) * 255 / 7;
+ return r + (g << 8) + (((U32)b) << 16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_323
+*/
+unsigned LCD_GetIndexMask_323(void) {
+ return 0xff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP332.c b/User/lib/lcd/gui/ConvertColor/LCDP332.c
new file mode 100644
index 0000000..4303387
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP332.c
@@ -0,0 +1,65 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP332.C
+Purpose : Color conversion routines for 332 mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 332, 256 colors, BBBGGGRR
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_332
+*/
+unsigned LCD_Color2Index_332(LCD_COLOR Color) {
+ int r, g, b;
+ r = Color & 255;
+ g = (Color >> 8 ) & 255;
+ b = Color >> 16;
+ r = (r + 42) / 85;
+ g = (g * 7 + 127) / 255;
+ b = (b * 7 + 127) / 255;
+ return r + (g << 2) + (b << 5);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_332
+*/
+LCD_COLOR LCD_Index2Color_332(int Index) {
+ unsigned r, g, b;
+ r = (Index & 3) * 85;
+ g = ((Index >> 2) & 7) * 255 / 7;
+ b = ((Index >> 5) & 7) * 255 / 7;
+ return r + (g << 8) + (((U32)b) << 16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_332
+*/
+unsigned LCD_GetIndexMask_332(void) {
+ return 0xff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP444_12.c b/User/lib/lcd/gui/ConvertColor/LCDP444_12.c
new file mode 100644
index 0000000..b9b660f
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP444_12.c
@@ -0,0 +1,70 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP444_12.c
+Purpose : Color conversion routines for LCD-drivers
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 444, 4096 colors, 0000BBBBGGGGRRRR
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_444_12
+*/
+unsigned LCD_Color2Index_444_12(LCD_COLOR Color) {
+ unsigned int r,g,b;
+ r = Color & 255;
+ g = (Color >> 8) & 255;
+ b = (Color >> 16) & 255;
+ r = (r + 8) / 17;
+ g = (g + 8) / 17;
+ b = (b + 8) / 17;
+ return r + (g << 4) + (b << 8);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_444_12
+*/
+LCD_COLOR LCD_Index2Color_444_12(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ r = Index & 0xf;
+ g = (Index >> 4) & 0xf;
+ b = ((unsigned)Index >> 8) & 0xf;
+ /* Convert the color masks */
+ r = r * 17;
+ g = g * 17;
+ b = b * 17;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_444_12
+*/
+unsigned LCD_GetIndexMask_444_12(void) {
+ return 0x0fff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP444_12_1.c b/User/lib/lcd/gui/ConvertColor/LCDP444_12_1.c
new file mode 100644
index 0000000..34d2461
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP444_12_1.c
@@ -0,0 +1,70 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP444_12_1.c
+Purpose : Color conversion routines for LCD-drivers
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 444, 4096 colors, RRRRGGGGBBBB----
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_444_12_1
+*/
+unsigned LCD_Color2Index_444_12_1(LCD_COLOR Color) {
+ unsigned int r,g,b;
+ r = Color & 255;
+ g = (Color >> 8) & 255;
+ b = (Color >> 16) & 255;
+ r = (r + 8) / 17;
+ g = (g + 8) / 17;
+ b = (b + 8) / 17;
+ return (b << 4) + (g << 8) + (r << 12);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_444_12_1
+*/
+LCD_COLOR LCD_Index2Color_444_12_1(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ r = ((unsigned)Index >> 12) & 0xf;
+ g = ((unsigned)Index >> 8) & 0xf;
+ b = ((unsigned)Index >> 4) & 0xf;
+ /* Convert the color masks */
+ r = r * 17;
+ g = g * 17;
+ b = b * 17;
+ return r + (g << 8) + (((U32)b) << 16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_444_12_1
+*/
+unsigned LCD_GetIndexMask_444_12_1(void) {
+ return 0xfff0;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP444_16.c b/User/lib/lcd/gui/ConvertColor/LCDP444_16.c
new file mode 100644
index 0000000..2ad5078
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP444_16.c
@@ -0,0 +1,70 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP444_16.C
+Purpose : Color conversion routines for LCD-drivers
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 444, 4096 colors, 0BBBB0GGGG0RRRR0
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_444_16
+*/
+unsigned LCD_Color2Index_444_16(LCD_COLOR Color) {
+ unsigned int r,g,b;
+ r = Color & 255;
+ g = (Color >> 8) & 255;
+ b = (Color >> 16) & 255;
+ r = (r + 8) / 17;
+ g = (g + 8) / 17;
+ b = (b + 8) / 17;
+ return (r << 1) + (g << 6) + (b << 11);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_444_16
+*/
+LCD_COLOR LCD_Index2Color_444_16(int Index) {
+ unsigned int r,g,b;
+ /* Separate the color masks */
+ r = (Index >> 1) & 0xf;
+ g = (Index >> 6) & 0xf;
+ b = ((unsigned)Index >> 11) & 0xf;
+ /* Convert the color masks */
+ r = r * 17;
+ g = g * 17;
+ b = b * 17;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_444_16
+*/
+unsigned LCD_GetIndexMask_444_16(void) {
+ return 0x7bde;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP555.c b/User/lib/lcd/gui/ConvertColor/LCDP555.c
new file mode 100644
index 0000000..c95e07a
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP555.c
@@ -0,0 +1,82 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP555.C
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define B_BITS 5
+#define G_BITS 5
+#define R_BITS 5
+
+#define R_MASK ((1 << R_BITS) -1)
+#define G_MASK ((1 << G_BITS) -1)
+#define B_MASK ((1 << B_BITS) -1)
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 555, 32768 colors, 0BBBBBGGGGGRRRRR
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_555
+*/
+unsigned LCD_Color2Index_555(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>> (8 - R_BITS)) & R_MASK;
+ g = (Color>> (16 - G_BITS)) & G_MASK;
+ b = (Color>> (24 - B_BITS)) & B_MASK;
+ return r + (g << R_BITS) + (b << (G_BITS + R_BITS));
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_555
+*/
+LCD_COLOR LCD_Index2Color_555(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ r = Index & R_MASK;
+ g = (Index >> R_BITS) & G_MASK;
+ b = ((unsigned)Index >> (R_BITS + G_BITS)) & B_MASK;
+ /* Convert the color masks */
+ r = r * 255 / R_MASK;
+ g = g * 255 / G_MASK;
+ b = b * 255 / B_MASK;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_555
+*/
+unsigned LCD_GetIndexMask_555(void) {
+ return 0x7fff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP556.c b/User/lib/lcd/gui/ConvertColor/LCDP556.c
new file mode 100644
index 0000000..9cdba92
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP556.c
@@ -0,0 +1,82 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP556.C
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define B_BITS 5
+#define G_BITS 5
+#define R_BITS 6
+
+#define R_MASK ((1 << R_BITS) -1)
+#define G_MASK ((1 << G_BITS) -1)
+#define B_MASK ((1 << B_BITS) -1)
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 556, 65536 colors, BBBBBGGGGGRRRRRR
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_556
+*/
+unsigned LCD_Color2Index_556(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>> (8 - R_BITS)) & R_MASK;
+ g = (Color>> (16 - G_BITS)) & G_MASK;
+ b = (Color>> (24 - B_BITS)) & B_MASK;
+ return r + (g << R_BITS) + (b << (G_BITS + R_BITS));
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_556
+*/
+LCD_COLOR LCD_Index2Color_556(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ r = Index & R_MASK;
+ g = (Index >> R_BITS) & G_MASK;
+ b = ((unsigned)Index >> (R_BITS + G_BITS)) & B_MASK;
+ /* Convert the color masks */
+ r = r * 255 / R_MASK;
+ g = g * 255 / G_MASK;
+ b = b * 255 / B_MASK;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_556
+*/
+unsigned LCD_GetIndexMask_556(void) {
+ return 0xffff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP565.c b/User/lib/lcd/gui/ConvertColor/LCDP565.c
new file mode 100644
index 0000000..97bc2a2
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP565.c
@@ -0,0 +1,65 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP565.C
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define B_BITS 5
+#define G_BITS 6
+#define R_BITS 5
+
+#define R_MASK ((1 << R_BITS) -1)
+#define G_MASK ((1 << G_BITS) -1)
+#define B_MASK ((1 << B_BITS) -1)
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 565, 65536 colors, BBBBBGGGGGGRRRRR
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_565
+*/
+unsigned LCD_Color2Index_565(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>> (8 - R_BITS)) & R_MASK;
+ g = (Color>> (16 - G_BITS)) & G_MASK;
+ b = (Color>> (24 - B_BITS)) & B_MASK;
+ return r + (g << R_BITS) + (b << (G_BITS + R_BITS));
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_565
+*/
+unsigned LCD_GetIndexMask_565(void) {
+ return 0xffff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP655.c b/User/lib/lcd/gui/ConvertColor/LCDP655.c
new file mode 100644
index 0000000..0d3ff74
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP655.c
@@ -0,0 +1,82 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP655.C
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define B_BITS 6
+#define G_BITS 5
+#define R_BITS 5
+
+#define R_MASK ((1 << R_BITS) -1)
+#define G_MASK ((1 << G_BITS) -1)
+#define B_MASK ((1 << B_BITS) -1)
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 655, 65536 colors, BBBBBBGGGGGRRRRR
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_655
+*/
+unsigned LCD_Color2Index_655(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>> (8 - R_BITS)) & R_MASK;
+ g = (Color>> (16 - G_BITS)) & G_MASK;
+ b = (Color>> (24 - B_BITS)) & B_MASK;
+ return r + (g << R_BITS) + (b << (G_BITS + R_BITS));
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_655
+*/
+LCD_COLOR LCD_Index2Color_655(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ r = Index & R_MASK;
+ g = (Index >> R_BITS) & G_MASK;
+ b = ((unsigned)Index >> (R_BITS + G_BITS)) & B_MASK;
+ /* Convert the color masks */
+ r = r * 255 / R_MASK;
+ g = g * 255 / G_MASK;
+ b = b * 255 / B_MASK;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_655
+*/
+unsigned LCD_GetIndexMask_655(void) {
+ return 0xffff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP8666.c b/User/lib/lcd/gui/ConvertColor/LCDP8666.c
new file mode 100644
index 0000000..5f25c1a
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP8666.c
@@ -0,0 +1,104 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD866.C
+Purpose : Color conversion routines for 866 mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+
+#if GUI_SUPPORT_MEMDEV
+
+/*********************************************************************
+*
+* LCD_Color2Index_8666
+*
+* Purpose
+* API table for this color conversion mode. Only used by memory
+* devices in this mode.
+*/
+const LCD_API_COLOR_CONV LCD_API_ColorConv_8666 = {
+ LCD_Color2Index_8666,
+ LCD_Index2Color_8666,
+ LCD_GetIndexMask_8666
+};
+
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_8666
+*/
+unsigned LCD_Color2Index_8666(LCD_COLOR Color) {
+ int r,g,b,Index;
+ r = Color&255;
+ g = (Color>>8)&255;
+ b = Color>>16;
+/* Check if image is a gray scale ... */
+ if ((r==g) && (g==b)) {
+ return 120+ (r+8)/17; /* Convert into colors from 120 - 135*/
+ }
+/* Convert into the 6*6*6 colors ... */
+ r = (r*5+127)/255;
+ g = (g*5+127)/255;
+ b = (b*5+127)/255;
+ Index = r+6*g+36*b;
+ return (Index<108) ? Index : Index+40;
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_8666
+*/
+LCD_COLOR LCD_Index2Color_8666(int Index) {
+ unsigned int r,g;
+ U32 b;
+ /* 16 Gray scale range ? */
+ if ((Index>=120) && (Index<136)) {
+ return (U32)0x111111 * (U32)(Index-120);
+ }
+ if (Index>=108) {
+ if (Index<148)
+ return 0; /* Black for illegal indices */
+ Index -= 40;
+ }
+ r = (Index%6)*(255/5);
+ g = ((Index/6)%6)*(255/5);
+ b = (Index/36)*(255/5);
+ return r+(g<<8)+((U32)b<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_8666
+*/
+unsigned LCD_GetIndexMask_8666(void) {
+ return 0xff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDP8666_1.c b/User/lib/lcd/gui/ConvertColor/LCDP8666_1.c
new file mode 100644
index 0000000..e8c33da
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDP8666_1.c
@@ -0,0 +1,82 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP8666_1.C
+Purpose : Color conversion routines for 86661 mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_8666_1
+*/
+unsigned LCD_Color2Index_8666_1(LCD_COLOR Color) {
+ int r, g, b, Index;
+ r = Color & 255;
+ g = (Color >> 8) & 255;
+ b = Color >> 16;
+/* Check if image is a gray scale ... */
+ if ((r == g) && (g == b)) {
+ return 120 + (r + 8) / 17; /* Convert into colors from 120 - 135 */
+ }
+/* Convert into the 6*6*6 colors ... */
+ r = (r * 5 + 127) / 255;
+ g = (g * 5 + 127) / 255;
+ b = (b * 5 + 127) / 255;
+ Index = r + 6 * g + 36 * b;
+ return (Index < 108) ? Index + 12 : Index + 28;
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_8666_1
+*/
+LCD_COLOR LCD_Index2Color_8666_1(int Index) {
+ unsigned int r,g;
+ U32 b;
+ /* 16 Gray scale range ? */
+ if ((Index >= 120) && (Index < 136)) {
+ return (U32)0x111111 * (U32)(Index - 120);
+ }
+ if ((Index < 12) || (Index > 243)) {
+ return 0; /* Black for illegal indices */
+ }
+ if (Index >= 120) {
+ Index -= 28;
+ } else {
+ Index -= 12;
+ }
+ r = (Index % 6) * (255 / 5);
+ g = ((Index / 6) % 6) * (255 / 5);
+ b = (Index / 36) * (255 / 5);
+ return r + (g << 8) + ((U32)b << 16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_8666_1
+*/
+unsigned LCD_GetIndexMask_8666_1(void) {
+ return 0xff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDPM233.c b/User/lib/lcd/gui/ConvertColor/LCDPM233.c
new file mode 100644
index 0000000..90e2a52
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDPM233.c
@@ -0,0 +1,65 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDPM233.C
+Purpose : Color conversion routines for -233 mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == -233, 256 colors, RRGGGBBB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M233
+*/
+unsigned LCD_Color2Index_M233(LCD_COLOR Color) {
+ unsigned r, g, b;
+ r = Color & 255;
+ g = (Color >> 8 ) & 255;
+ b = Color >> 16;
+ r = (r + 42 ) / 85;
+ g = (g * 7 + 127) / 255;
+ b = (b * 7 + 127) / 255;
+ return b + (g << 3) + (r << 6);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_M233
+*/
+LCD_COLOR LCD_Index2Color_M233(int Index) {
+ unsigned r, g, b;
+ b = (Index & 7) * 255 / 7;
+ g = ((Index >> 3) & 7) * 255 / 7;
+ r = ((Index >> 6) & 3) * 85;
+ return r + (g << 8) + (((U32)b) << 16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M233
+*/
+unsigned LCD_GetIndexMask_M233(void) {
+ return 0xff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDPM323.c b/User/lib/lcd/gui/ConvertColor/LCDPM323.c
new file mode 100644
index 0000000..78fc307
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDPM323.c
@@ -0,0 +1,65 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDPM323.C
+Purpose : Color conversion routines for -323 mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == -323, 256 colors, RRRGGBBB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M323
+*/
+unsigned LCD_Color2Index_M323(LCD_COLOR Color) {
+ unsigned r, g, b;
+ r = Color & 255;
+ g = (Color >> 8 ) & 255;
+ b = Color >> 16;
+ r = (r * 7 + 127) / 255;
+ g = (g + 42) / 85;
+ b = (b * 7 + 127) / 255;
+ return b + (g << 3) + (r << 5);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_M323
+*/
+LCD_COLOR LCD_Index2Color_M323(int Index) {
+ unsigned r, g, b;
+ b = (Index & 7) * 255 / 7;
+ g = ((Index >> 3) & 3) * 85;
+ r = ((Index >> 5) & 7) * 255 / 7;
+ return r + (g << 8) + (((U32)b) << 16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M323
+*/
+unsigned LCD_GetIndexMask_M323(void) {
+ return 0xff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDPM332.c b/User/lib/lcd/gui/ConvertColor/LCDPM332.c
new file mode 100644
index 0000000..2917fee
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDPM332.c
@@ -0,0 +1,65 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDPM332.C
+Purpose : Color conversion routines for -332 mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == -332, 256 colors, RRRGGGBB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M332
+*/
+unsigned LCD_Color2Index_M332(LCD_COLOR Color) {
+ unsigned r, g, b;
+ r = Color & 255;
+ g = (Color >> 8 ) & 255;
+ b = Color >> 16;
+ r = (r * 7 + 127) / 255;
+ g = (g * 7 + 127) / 255;
+ b = (b + 42) / 85;
+ return b + (g << 2) + (r << 5);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_M332
+*/
+LCD_COLOR LCD_Index2Color_M332(int Index) {
+ unsigned r, g, b;
+ b = (Index & 3) * 85;
+ g = ((Index >> 2) & 7) * 255 / 7;
+ r = ((Index >> 5) & 7) * 255 / 7;
+ return r + (g << 8) + (((U32)b) << 16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M332
+*/
+unsigned LCD_GetIndexMask_M332(void) {
+ return 0xff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDPM444_12.c b/User/lib/lcd/gui/ConvertColor/LCDPM444_12.c
new file mode 100644
index 0000000..f408595
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDPM444_12.c
@@ -0,0 +1,70 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDPM444_12.c
+Purpose : Color conversion routines for LCD-drivers
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 444, 4096 colors, RRRRGGGGBBBB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M444_12
+*/
+unsigned LCD_Color2Index_M444_12(LCD_COLOR Color) {
+ unsigned int r,g,b;
+ r = Color & 255;
+ g = (Color >> 8) & 255;
+ b = (Color >> 16) & 255;
+ r = (r + 8) / 17;
+ g = (g + 8) / 17;
+ b = (b + 8) / 17;
+ return b + (g << 4) + (r << 8);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_M444_12
+*/
+LCD_COLOR LCD_Index2Color_M444_12(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ b = Index & 0xf;
+ g = (Index >> 4) & 0xf;
+ r = ((unsigned)Index >> 8) & 0xf;
+ /* Convert the color masks */
+ r = r * 17;
+ g = g * 17;
+ b = b * 17;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M444_12
+*/
+unsigned LCD_GetIndexMask_M444_12(void) {
+ return 0x0fff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDPM444_16.c b/User/lib/lcd/gui/ConvertColor/LCDPM444_16.c
new file mode 100644
index 0000000..891c5e3
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDPM444_16.c
@@ -0,0 +1,70 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDPM444_16.C
+Purpose : Color conversion routines for LCD-drivers
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 444, 4096 colors, 0RRRR0GGGG0BBBB0
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M444_16
+*/
+unsigned LCD_Color2Index_M444_16(LCD_COLOR Color) {
+ unsigned int r,g,b;
+ r = Color & 255;
+ g = (Color >> 8) & 255;
+ b = (Color >> 16) & 255;
+ r = (r + 8) / 17;
+ g = (g + 8) / 17;
+ b = (b + 8) / 17;
+ return (b << 1) + (g << 6) + (r << 11);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_M444_16
+*/
+LCD_COLOR LCD_Index2Color_M444_16(int Index) {
+ unsigned int r,g,b;
+ /* Separate the color masks */
+ b = (Index >> 1) & 0xf;
+ g = (Index >> 6) & 0xf;
+ r = ((unsigned)Index >> 11) & 0xf;
+ /* Convert the color masks */
+ r = r * 17;
+ g = g * 17;
+ b = b * 17;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M444_16
+*/
+unsigned LCD_GetIndexMask_M444_16(void) {
+ return 0x7bde;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDPM555.c b/User/lib/lcd/gui/ConvertColor/LCDPM555.c
new file mode 100644
index 0000000..d08c1fb
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDPM555.c
@@ -0,0 +1,82 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDM555.C
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define B_BITS 5
+#define G_BITS 5
+#define R_BITS 5
+
+#define R_MASK ((1 << R_BITS) -1)
+#define G_MASK ((1 << G_BITS) -1)
+#define B_MASK ((1 << B_BITS) -1)
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 555, 32768 colors, 0RRRRRGGGGGBBBBB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M555
+*/
+unsigned LCD_Color2Index_M555(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>> (8 - R_BITS)) & R_MASK;
+ g = (Color>> (16 - G_BITS)) & G_MASK;
+ b = (Color>> (24 - B_BITS)) & B_MASK;
+ return b + (g << B_BITS) + (r << (G_BITS + B_BITS));
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_M555
+*/
+LCD_COLOR LCD_Index2Color_M555(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ b = Index & B_MASK;
+ g = (Index >> B_BITS) & G_MASK;
+ r = ((unsigned)Index >> (B_BITS + G_BITS)) & R_MASK;
+ /* Convert the color masks */
+ r = r * 255 / R_MASK;
+ g = g * 255 / G_MASK;
+ b = b * 255 / B_MASK;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M555
+*/
+unsigned LCD_GetIndexMask_M555(void) {
+ return 0x7fff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDPM556.c b/User/lib/lcd/gui/ConvertColor/LCDPM556.c
new file mode 100644
index 0000000..d6f0f00
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDPM556.c
@@ -0,0 +1,82 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDM556.C
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define B_BITS 5
+#define G_BITS 5
+#define R_BITS 6
+
+#define R_MASK ((1 << R_BITS) -1)
+#define G_MASK ((1 << G_BITS) -1)
+#define B_MASK ((1 << B_BITS) -1)
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 556, 65536 colors, RRRRRRGGGGGBBBBB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M556
+*/
+unsigned LCD_Color2Index_M556(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>> (8 - R_BITS)) & R_MASK;
+ g = (Color>> (16 - G_BITS)) & G_MASK;
+ b = (Color>> (24 - B_BITS)) & B_MASK;
+ return b + (g << B_BITS) + (r << (G_BITS + B_BITS));
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_M556
+*/
+LCD_COLOR LCD_Index2Color_M556(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ b = Index & B_MASK;
+ g = (Index >> B_BITS) & G_MASK;
+ r = ((unsigned)Index >> (B_BITS + G_BITS)) & R_MASK;
+ /* Convert the color masks */
+ r = r * 255 / R_MASK;
+ g = g * 255 / G_MASK;
+ b = b * 255 / B_MASK;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M556
+*/
+unsigned LCD_GetIndexMask_M556(void) {
+ return 0xffff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDPM565.c b/User/lib/lcd/gui/ConvertColor/LCDPM565.c
new file mode 100644
index 0000000..b059a73
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDPM565.c
@@ -0,0 +1,65 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDM565.C
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define B_BITS 5
+#define G_BITS 6
+#define R_BITS 5
+
+#define R_MASK ((1 << R_BITS) -1)
+#define G_MASK ((1 << G_BITS) -1)
+#define B_MASK ((1 << B_BITS) -1)
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 565, 65536 colors, RRRRRGGGGGGBBBBB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M565
+*/
+unsigned LCD_Color2Index_M565(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>> (8 - R_BITS)) & R_MASK;
+ g = (Color>> (16 - G_BITS)) & G_MASK;
+ b = (Color>> (24 - B_BITS)) & B_MASK;
+ return b + (g << B_BITS) + (r << (G_BITS + B_BITS));
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M565
+*/
+unsigned LCD_GetIndexMask_M565(void) {
+ return 0xffff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/LCDPM655.c b/User/lib/lcd/gui/ConvertColor/LCDPM655.c
new file mode 100644
index 0000000..fe1b209
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertColor/LCDPM655.c
@@ -0,0 +1,82 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDPM655.C
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define B_BITS 6
+#define G_BITS 5
+#define R_BITS 5
+
+#define R_MASK ((1 << R_BITS) -1)
+#define G_MASK ((1 << G_BITS) -1)
+#define B_MASK ((1 << B_BITS) -1)
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 655, 65536 colors, RRRRRGGGGGBBBBBB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_M655
+*/
+unsigned LCD_Color2Index_M655(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>> (8 - R_BITS)) & R_MASK;
+ g = (Color>> (16 - G_BITS)) & G_MASK;
+ b = (Color>> (24 - B_BITS)) & B_MASK;
+ return b + (g << B_BITS) + (r << (G_BITS + B_BITS));
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_M655
+*/
+LCD_COLOR LCD_Index2Color_M655(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ b = Index & B_MASK;
+ g = (Index >> B_BITS) & G_MASK;
+ r = ((unsigned)Index >> (B_BITS + G_BITS)) & R_MASK;
+ /* Convert the color masks */
+ r = r * 255 / R_MASK;
+ g = g * 255 / G_MASK;
+ b = b * 255 / B_MASK;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_M655
+*/
+unsigned LCD_GetIndexMask_M655(void) {
+ return 0xffff;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertColor/vssver.scc b/User/lib/lcd/gui/ConvertColor/vssver.scc
new file mode 100644
index 0000000..a86f34e
Binary files /dev/null and b/User/lib/lcd/gui/ConvertColor/vssver.scc differ
diff --git a/User/lib/lcd/gui/ConvertMono/CCConvertMono.bat b/User/lib/lcd/gui/ConvertMono/CCConvertMono.bat
new file mode 100644
index 0000000..58950c3
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertMono/CCConvertMono.bat
@@ -0,0 +1,5 @@
+@ECHO OFF
+ECHO CCConvertMono.BAT: Compiling GUI\ConvertMono
+CALL CC LCDP0
+CALL CC LCDP2
+CALL CC LCDP4
diff --git a/User/lib/lcd/gui/ConvertMono/LCDP0.c b/User/lib/lcd/gui/ConvertMono/LCDP0.c
new file mode 100644
index 0000000..33133ed
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertMono/LCDP0.c
@@ -0,0 +1,76 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP0.C
+Purpose : Color conversion routines for LCD-drivers
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Private.h" /* inter modul definitions */
+#include "GUI.h"
+
+/*********************************************************************
+*
+* Public code, 1/2/4/8 bpp color, LUT
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_0
+*/
+unsigned LCD_Color2Index_0(LCD_COLOR Color, const LCD_PHYSPALETTE* pPhysPal) {
+ int i;
+ int NumEntries = pPhysPal->NumEntries;
+ int BestIndex = 0;
+ U32 BestDiff = 0xffffff; /* Initialize to worst match */
+ const LCD_COLOR* pPalEntry;
+/* Try to find perfect match */
+ i=0; pPalEntry = &pPhysPal->pPalEntries[0];
+ do {
+ if (Color==*(pPalEntry+i))
+ return i;
+ } while (++ipPalEntries[0];
+ do {
+ U32 Diff = GUI_CalcColorDist (Color, *(pPalEntry+i));
+ if (Diff < BestDiff) {
+ BestDiff = Diff;
+ BestIndex = i;
+ }
+ } while (++i= (unsigned) pPhysPal->NumEntries) {
+ return 0; /* Illegal index */
+ }
+ return *(pPhysPal->pPalEntries+Index);
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_0
+*/
+unsigned LCD_GetIndexMask_0(void) {
+ return ((1 << LCD_BITSPERPIXEL) - 1);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertMono/LCDP2.c b/User/lib/lcd/gui/ConvertMono/LCDP2.c
new file mode 100644
index 0000000..ef2501e
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertMono/LCDP2.c
@@ -0,0 +1,81 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD2.C
+Purpose : Color conversion routines for 4 bpp gray LCDs
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+
+#if GUI_SUPPORT_MEMDEV
+
+/*********************************************************************
+*
+* LCD_Color2Index_2
+*
+* Purpose
+* API table for this color conversion mode. Only used by memory
+* devices in this mode.
+*/
+const LCD_API_COLOR_CONV LCD_API_ColorConv_2 = {
+ LCD_Color2Index_2,
+ LCD_Index2Color_2,
+ LCD_GetIndexMask_2
+};
+
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_2
+*/
+unsigned LCD_Color2Index_2(LCD_COLOR Color) {
+ int r,g,b;
+ r = Color &255;
+ g = (Color>>8) &255;
+ b = Color>>16;
+ return (r+g+b+127) /255;
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_2
+*/
+LCD_COLOR LCD_Index2Color_2(int Index) {
+ return ((U32)Index)*0x555555;
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_2
+*/
+unsigned LCD_GetIndexMask_2(void) {
+ return 0x03;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertMono/LCDP4.c b/User/lib/lcd/gui/ConvertMono/LCDP4.c
new file mode 100644
index 0000000..104608c
--- /dev/null
+++ b/User/lib/lcd/gui/ConvertMono/LCDP4.c
@@ -0,0 +1,81 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD4.C
+Purpose : Color conversion routines for 4 bpp gray LCDs
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+
+#if GUI_SUPPORT_MEMDEV
+
+/*********************************************************************
+*
+* LCD_Color2Index_4
+*
+* Purpose
+* API table for this color conversion mode. Only used by memory
+* devices in this mode.
+*/
+const LCD_API_COLOR_CONV LCD_API_ColorConv_4 = {
+ LCD_Color2Index_4,
+ LCD_Index2Color_4,
+ LCD_GetIndexMask_4
+};
+
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_4
+*/
+unsigned LCD_Color2Index_4(LCD_COLOR Color) {
+ int r,g,b;
+ r = (Color>>(0+4)) &15;
+ g = (Color>>(8+4)) &15;
+ b = (Color>>(16+4)) &15;
+ return (r+g+b+1) /3;
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_4
+*/
+LCD_COLOR LCD_Index2Color_4(int Index) {
+ return ((U32)Index)*0x111111;
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_4
+*/
+unsigned LCD_GetIndexMask_4(void) {
+ return 0x0f;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/ConvertMono/vssver.scc b/User/lib/lcd/gui/ConvertMono/vssver.scc
new file mode 100644
index 0000000..5016c4a
Binary files /dev/null and b/User/lib/lcd/gui/ConvertMono/vssver.scc differ
diff --git a/User/lib/lcd/gui/Core/CCGUICore.bat b/User/lib/lcd/gui/Core/CCGUICore.bat
new file mode 100644
index 0000000..a5c9a54
--- /dev/null
+++ b/User/lib/lcd/gui/Core/CCGUICore.bat
@@ -0,0 +1,199 @@
+@ECHO OFF
+ECHO CCGUICore.BAT: Compiling GUI\Core
+CALL CC GUI2DLib
+CALL CC GUI__AddSpaceHex
+CALL CC GUI__CalcTextRect
+CALL CC GUI__DivideRound
+CALL CC GUI__DivideRound32
+CALL CC GUI__GetFontSizeY
+CALL CC GUI__GetNumChars
+CALL CC GUI__HandleEOLine
+CALL CC GUI__IntersectRect
+CALL CC GUI__IntersectRects
+CALL CC GUI__memset
+CALL CC GUI__memset16
+CALL CC GUI__Read
+CALL CC GUI__ReduceRect
+CALL CC GUI__SetText
+CALL CC GUI__strcmp
+CALL CC GUI__strlen
+CALL CC GUI__Wrap
+CALL CC GUI_AddBin
+CALL CC GUI_AddDec
+CALL CC GUI_AddDecMin
+CALL CC GUI_AddDecShift
+CALL CC GUI_AddHex
+CALL CC GUI_ALLOC_AllocInit
+CALL CC GUI_ALLOC_AllocZero
+CALL CC GUI_BMP
+CALL CC GUI_BMP_Serialize
+CALL CC GUI_CalcColorDist
+CALL CC GUI_ClearRectEx
+CALL CC GUI_Color2VisColor
+CALL CC GUI_CursorArrowL
+CALL CC GUI_CursorArrowLI
+CALL CC GUI_CursorArrowLPx
+CALL CC GUI_CursorArrowM
+CALL CC GUI_CursorArrowMI
+CALL CC GUI_CursorArrowMPx
+CALL CC GUI_CursorArrowS
+CALL CC GUI_CursorArrowSI
+CALL CC GUI_CursorArrowSPx
+CALL CC GUI_CursorCrossL
+CALL CC GUI_CursorCrossLI
+CALL CC GUI_CursorCrossLPx
+CALL CC GUI_CursorCrossM
+CALL CC GUI_CursorCrossMI
+CALL CC GUI_CursorCrossMPx
+CALL CC GUI_CursorCrossS
+CALL CC GUI_CursorCrossSI
+CALL CC GUI_CursorCrossSPx
+CALL CC GUI_CursorHeaderM
+CALL CC GUI_CursorHeaderMI
+CALL CC GUI_CursorHeaderMPx
+CALL CC GUI_CursorPal
+CALL CC GUI_CursorPalI
+CALL CC GUI_DispBin
+CALL CC GUI_DispCEOL
+CALL CC GUI_DispChar
+CALL CC GUI_DispChars
+CALL CC GUI_DispHex
+CALL CC GUI_DispString
+CALL CC GUI_DispStringAt
+CALL CC GUI_DispStringAtCEOL
+CALL CC GUI_DispStringHCenter
+CALL CC GUI_DispStringInRect
+CALL CC GUI_DispStringInRectEx
+CALL CC GUI_DispStringLen
+CALL CC GUI_DrawBitmap
+CALL CC GUI_DrawBitmapEx
+CALL CC GUI_DrawBitmapExp
+CALL CC GUI_DrawBitmapMag
+CALL CC GUI_DrawFocusRect
+CALL CC GUI_DrawGraph
+CALL CC GUI_DrawHLine
+CALL CC GUI_DrawPie
+CALL CC GUI_DrawPixel
+CALL CC GUI_DrawPolyline
+CALL CC GUI_DrawRectEx
+CALL CC GUI_DrawVLine
+CALL CC GUI_ErrorOut
+CALL CC GUI_Exec
+CALL CC GUI_FillPolygon
+CALL CC GUI_FillRect
+CALL CC GUI_FillRectEx
+CALL CC GUI_GetBitmapPixelColor
+CALL CC GUI_GetBitmapPixelIndex
+CALL CC GUI_GetClientRect
+CALL CC GUI_GetColor
+CALL CC GUI_GetDispPos
+CALL CC GUI_GetFont
+CALL CC GUI_GetFontInfo
+CALL CC GUI_GetFontSizeY
+CALL CC GUI_GetLineStyle
+CALL CC GUI_GetStringDistX
+CALL CC GUI_GetTextAlign
+CALL CC GUI_GetTextExtend
+CALL CC GUI_GetTextMode
+CALL CC GUI_GetVersionString
+CALL CC GUI_GetYSizeOfFont
+CALL CC GUI_Goto
+CALL CC GUI_InvertRect
+CALL CC GUI_IsInFont
+CALL CC GUI_Log
+CALL CC GUI_MergeRect
+CALL CC GUI_MOUSE
+CALL CC GUI_MOUSE_DriverPS2
+CALL CC GUI_MoveRect
+CALL CC GUI_OnKey
+CALL CC GUI_Pen
+CALL CC GUI_PID
+CALL CC GUI_RectsIntersect
+CALL CC GUI_SaveContext
+CALL CC GUI_SelectLayer
+CALL CC GUI_SelectLCD
+CALL CC GUI_SetColor
+CALL CC GUI_SetColorIndex
+CALL CC GUI_SetDecChar
+CALL CC GUI_SetDefault
+CALL CC GUI_SetDrawMode
+CALL CC GUI_SetFont
+CALL CC GUI_SetLBorder
+CALL CC GUI_SetLineStyle
+CALL CC GUI_SetLUTColor
+CALL CC GUI_SetLUTColorEx
+CALL CC GUI_SetLUTEntry
+CALL CC GUI_SetOrg
+CALL CC GUI_SetPixelIndex
+CALL CC GUI_SetTextAlign
+CALL CC GUI_SetTextMode
+CALL CC GUI_SetTextStyle
+CALL CC GUI_SIF
+CALL CC GUI_SIF_Prop
+CALL CC GUI_TOUCH
+CALL CC GUI_TOUCH_DriverAnalog
+CALL CC GUI_TOUCH_StoreState
+CALL CC GUI_TOUCH_StoreUnstable
+CALL CC GUI_UC
+CALL CC GUI_UC_DispString
+CALL CC GUI_UC_EncodeNone
+CALL CC GUI_UC_EncodeUTF8
+CALL CC GUI_WaitKey
+CALL CC GUI_WaitEvent
+CALL CC GUI_Warn
+CALL CC GUIAlloc
+CALL CC GUIArc
+CALL CC GUIChar
+CALL CC GUICharLine
+CALL CC GUICharM
+CALL CC GUICharP
+CALL CC GUICirc
+CALL CC GUIColor2Index
+CALL CC GUICore
+CALL CC GUICurs
+CALL CC GUIEncJS
+CALL CC GUIIndex2Color
+CALL CC GUIPolyE
+CALL CC GUIPolyM
+CALL CC GUIPolyR
+CALL CC GUIRealloc
+CALL CC GUIStream
+CALL CC GUITask
+CALL CC GUITime
+CALL CC GUITimer
+CALL CC GUIUC0
+CALL CC GUIVal
+CALL CC GUIValf
+CALL CC LCD
+CALL CC LCD_API
+CALL CC LCD_DrawBitmap_565
+CALL CC LCD_DrawBitmap_M565
+CALL CC LCD_DrawVLine
+CALL CC LCD_GetColorIndex
+CALL CC LCD_GetEx
+CALL CC LCD_GetNumDisplays
+CALL CC LCD_GetPixelColor
+CALL CC LCD_Index2ColorEx
+CALL CC LCD_L0_Generic
+CALL CC LCD_MixColors256
+CALL CC LCD_Mirror
+CALL CC LCD_Rotate180
+CALL CC LCD_RotateCW
+CALL CC LCD_RotateCCW
+CALL CC LCD_SelectLCD
+CALL CC LCD_SetClipRectEx
+CALL CC LCD_SetAPI
+CALL CC LCD_UpdateColorIndices
+CALL CC LCDAA
+CALL CC LCDColor
+CALL CC LCDGetP
+CALL CC LCDInfo
+CALL CC LCDInfo0
+CALL CC LCDInfo1
+CALL CC LCDL0Delta
+CALL CC LCDL0Mag
+CALL CC LCDP1
+CALL CC LCDP565_Index2Color
+CALL CC LCDPM565_Index2Color
+CALL CC LCDRLE4
+CALL CC LCDRLE8
diff --git a/User/lib/lcd/gui/Core/GUI.h b/User/lib/lcd/gui/Core/GUI.h
new file mode 100644
index 0000000..cb12354
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI.h
@@ -0,0 +1,1419 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* �C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI.h
+Purpose : GUI API include file
+---------------------------END-OF-HEADER------------------------------
+
+Attention : Do not modify this file ! If you do, you will not
+ be able do update to a later GUI version !
+
+*/
+
+#ifndef GUI_H
+#define GUI_H
+#define __EMWIN_GSC__ /* Allow "C" to find out that emWin GSC is used */
+
+#include "GUI_ConfDefaults.h"
+#include "GUIType.h"
+#include "GUIVersion.h"
+
+#if defined(__cplusplus)
+extern "C"
+{ /* Make sure we have C-declarations in C++ programs */
+#endif
+
+/*********************************************************************
+ *
+ * Limitations for certain C51 Keil (__C51__)
+ *
+ **********************************************************************
+ */
+#if defined(__C51__) && GUI_SUPPORT_MEMDEV
+#error __C51__ (Keil) can not support function pointers sufficiently ! -> Disable memory devices -> GUI_SUPPORT_MEMDEV 0
+#endif
+
+/*********************************************************************
+ *
+ * macros, function replacement
+ *
+ **********************************************************************
+ */
+#define GUI_COUNTOF(a) (sizeof(a) / sizeof(a[0]))
+
+ /************************************************************
+ *
+ * GUI_KEY_...
+ *
+ *************************************************************
+ These ID values are basically meant to be used with widgets
+ Note that we have chosen the values to be close to existing
+ "standards", so do not change them unless forced to.
+
+ */
+
+#define GUI_KEY_BACKSPACE 8 /* ASCII: BACKSPACE Crtl-H */
+#define GUI_KEY_TAB 9 /* ASCII: TAB Crtl-I */
+#define GUI_KEY_ENTER 13 /* ASCII: ENTER Crtl-M */
+#define GUI_KEY_LEFT 16
+#define GUI_KEY_UP 17
+#define GUI_KEY_RIGHT 18
+#define GUI_KEY_DOWN 19
+#define GUI_KEY_HOME 23
+#define GUI_KEY_END 24
+#define GUI_KEY_SHIFT 25
+#define GUI_KEY_CONTROL 26
+#define GUI_KEY_ESCAPE 27 /* ASCII: ESCAPE 0x1b */
+#define GUI_KEY_INSERT 29
+#define GUI_KEY_DELETE 30
+#define GUI_KEY_SPACE 32
+
+#define GUI_KEY_F1 40
+#define GUI_KEY_F2 41
+
+ /*********************************************************************
+ *
+ * Dialog item IDs
+ *
+ * The IDs below are arbitrary values. They just have to be unique
+ * within the dialog.
+ *
+ * If you use your own Ids, we recommend to use values above GUI_ID_USER.
+ */
+
+#define GUI_ID_OK 1
+#define GUI_ID_CANCEL 2
+#define GUI_ID_YES 3
+#define GUI_ID_NO 4
+#define GUI_ID_CLOSE 5
+#define GUI_ID_HELP 6
+#define GUI_ID_MAXIMIZE 7
+#define GUI_ID_MINIMIZE 8
+
+#define GUI_ID_VSCROLL 0xFE
+#define GUI_ID_HSCROLL 0xFF
+
+#define GUI_ID_EDIT0 0x100
+#define GUI_ID_EDIT1 0x101
+#define GUI_ID_EDIT2 0x102
+#define GUI_ID_EDIT3 0x103
+#define GUI_ID_EDIT4 0x104
+#define GUI_ID_EDIT5 0x105
+#define GUI_ID_EDIT6 0x106
+#define GUI_ID_EDIT7 0x107
+#define GUI_ID_EDIT8 0x108
+#define GUI_ID_EDIT9 0x109
+
+#define GUI_ID_LISTBOX0 0x110
+#define GUI_ID_LISTBOX1 0x111
+#define GUI_ID_LISTBOX2 0x112
+#define GUI_ID_LISTBOX3 0x113
+#define GUI_ID_LISTBOX4 0x114
+#define GUI_ID_LISTBOX5 0x115
+#define GUI_ID_LISTBOX6 0x116
+#define GUI_ID_LISTBOX7 0x117
+#define GUI_ID_LISTBOX8 0x118
+#define GUI_ID_LISTBOX9 0x119
+
+#define GUI_ID_CHECK0 0x120
+#define GUI_ID_CHECK1 0x121
+#define GUI_ID_CHECK2 0x122
+#define GUI_ID_CHECK3 0x123
+#define GUI_ID_CHECK4 0x124
+#define GUI_ID_CHECK5 0x125
+#define GUI_ID_CHECK6 0x126
+#define GUI_ID_CHECK7 0x127
+#define GUI_ID_CHECK8 0x128
+
+#define GUI_ID_SLIDER0 0x130
+#define GUI_ID_SLIDER1 0x131
+#define GUI_ID_SLIDER2 0x132
+#define GUI_ID_SLIDER3 0x133
+#define GUI_ID_SLIDER4 0x134
+#define GUI_ID_SLIDER5 0x135
+#define GUI_ID_SLIDER6 0x136
+#define GUI_ID_SLIDER7 0x137
+#define GUI_ID_SLIDER8 0x138
+#define GUI_ID_SLIDER9 0x139
+
+#define GUI_ID_SCROLLBAR0 0x140
+#define GUI_ID_SCROLLBAR1 0x141
+#define GUI_ID_SCROLLBAR2 0x142
+#define GUI_ID_SCROLLBAR3 0x142
+
+#define GUI_ID_RADIO0 0x150
+#define GUI_ID_RADIO1 0x151
+#define GUI_ID_RADIO2 0x152
+#define GUI_ID_RADIO3 0x153
+#define GUI_ID_RADIO4 0x154
+#define GUI_ID_RADIO5 0x155
+#define GUI_ID_RADIO6 0x156
+#define GUI_ID_RADIO7 0x157
+
+#define GUI_ID_TEXT0 0x160
+#define GUI_ID_TEXT1 0x161
+#define GUI_ID_TEXT2 0x162
+#define GUI_ID_TEXT3 0x163
+#define GUI_ID_TEXT4 0x164
+#define GUI_ID_TEXT5 0x165
+#define GUI_ID_TEXT6 0x166
+#define GUI_ID_TEXT7 0x167
+#define GUI_ID_TEXT8 0x168
+#define GUI_ID_TEXT9 0x169
+
+#define GUI_ID_BUTTON0 0x170
+#define GUI_ID_BUTTON1 0x171
+#define GUI_ID_BUTTON2 0x172
+#define GUI_ID_BUTTON3 0x173
+#define GUI_ID_BUTTON4 0x174
+#define GUI_ID_BUTTON5 0x175
+#define GUI_ID_BUTTON6 0x176
+#define GUI_ID_BUTTON7 0x177
+#define GUI_ID_BUTTON8 0x178
+#define GUI_ID_BUTTON9 0x179
+
+#define GUI_ID_DROPDOWN0 0x180
+#define GUI_ID_DROPDOWN1 0x181
+#define GUI_ID_DROPDOWN2 0x182
+#define GUI_ID_DROPDOWN3 0x183
+
+#define GUI_ID_MULTIEDIT0 0x190
+#define GUI_ID_MULTIEDIT1 0x191
+#define GUI_ID_MULTIEDIT2 0x192
+#define GUI_ID_MULTIEDIT3 0x193
+
+#define GUI_ID_LISTVIEW0 0x200
+#define GUI_ID_LISTVIEW1 0x201
+#define GUI_ID_LISTVIEW2 0x202
+#define GUI_ID_LISTVIEW3 0x203
+
+#define GUI_ID_PROGBAR0 0x210
+#define GUI_ID_PROGBAR1 0x211
+#define GUI_ID_PROGBAR2 0x212
+#define GUI_ID_PROGBAR3 0x213
+
+#define GUI_ID_USER 0x800
+
+ /*********************************************************************
+ *
+ * Constants needed for GL
+ *
+ **********************************************************************
+ */
+
+ /**********************************
+ *
+ * Text styles
+ *
+ ***********************************
+ */
+
+#define GUI_TS_NORMAL (0)
+#define GUI_TS_UNDERLINE (1 << 0)
+#define GUI_TS_STRIKETHRU (1 << 1)
+#define GUI_TS_OVERLINE (1 << 2)
+
+ /**********************************
+ *
+ * Line styles
+ *
+ ***********************************
+ */
+
+#define GUI_LS_SOLID (0)
+#define GUI_LS_DASH (1)
+#define GUI_LS_DOT (2)
+#define GUI_LS_DASHDOT (3)
+#define GUI_LS_DASHDOTDOT (4)
+
+ /**********************************
+ *
+ * Pen shapes
+ *
+ ***********************************
+ */
+
+#define GUI_PS_ROUND (0)
+#define GUI_PS_FLAT (1)
+#define GUI_PS_SQUARE (2)
+
+ /* *********************************
+ *
+ * Standard colors
+ *
+ *********************************
+ */
+
+#define GUI_BLUE 0xFF0000
+#define GUI_GREEN 0x00FF00
+#define GUI_RED 0x0000FF
+#define GUI_CYAN 0xFFFF00
+#define GUI_MAGENTA 0xFF00FF
+#define GUI_YELLOW 0x00FFFF
+#define GUI_LIGHTBLUE 0xFF8080
+#define GUI_LIGHTGREEN 0x80FF80
+#define GUI_LIGHTRED 0x8080FF
+#define GUI_LIGHTCYAN 0xFFFF80
+#define GUI_LIGHTMAGENTA 0xFF80FF
+#define GUI_LIGHTYELLOW 0x80FFFF
+#define GUI_DARKBLUE 0x800000
+#define GUI_DARKGREEN 0x008000
+#define GUI_DARKRED 0x000080
+#define GUI_DARKCYAN 0x808000
+#define GUI_DARKMAGENTA 0x800080
+#define GUI_DARKYELLOW 0x008080
+#define GUI_WHITE 0xFFFFFF
+#define GUI_LIGHTGRAY 0xD3D3D3
+#define GUI_GRAY 0x808080
+#define GUI_DARKGRAY 0x404040
+#define GUI_BLACK 0x000000
+
+#define GUI_BROWN 0x2A2AA5
+
+#define GUI_INVALID_COLOR 0xFFFFFFF /* Invalid color - more than 24 bits */
+
+/* *********************************
+ *
+ * Coordinates
+ *
+ *********************************
+ */
+#define GUI_COORD_X 0
+#define GUI_COORD_Y 1
+
+ /*********************************************************************
+ *
+ * Standard Fonts
+ *
+ **********************************************************************
+
+ Note: The external declarations for the fonts are now also included in
+ this file.
+ */
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontHZ200x200;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontHZ16x16;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontHZ18x18;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontHZ20x20;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontHZ24x24;
+
+ /* Proportional fonts */
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font8_ASCII, GUI_Font8_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font10S_ASCII, GUI_Font10S_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font10_ASCII, GUI_Font10_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font13_ASCII, GUI_Font13_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font13B_ASCII, GUI_Font13B_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font13H_ASCII, GUI_Font13H_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font13HB_ASCII, GUI_Font13HB_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font16_ASCII, GUI_Font16_1, GUI_Font16_HK, GUI_Font16_1HK;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font16B_ASCII, GUI_Font16B_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font24_ASCII, GUI_Font24_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font24B_ASCII, GUI_Font24B_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font32_ASCII, GUI_Font32_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font32B_ASCII, GUI_Font32B_1;
+
+ /* Monospaced */
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font4x6;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font6x8, GUI_Font6x9;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font8x8, GUI_Font8x9;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font8x10_ASCII;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font8x12_ASCII;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font8x13_ASCII, GUI_Font8x13_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font8x15B_ASCII, GUI_Font8x15B_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font8x16, GUI_Font8x17, GUI_Font8x18;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_Font8x16x1x2, GUI_Font8x16x2x2, GUI_Font8x16x3x3;
+
+ /* Digits */
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontD24x32;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontD32;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontD36x48;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontD48;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontD48x64;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontD64;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontD60x80;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontD80;
+
+ /* Comic fonts */
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontComic18B_ASCII, GUI_FontComic18B_1;
+ extern GUI_CONST_STORAGE GUI_FONT GUI_FontComic24B_ASCII, GUI_FontComic24B_1;
+
+ /*
+ *********************************
+ * *
+ * Text and drawing mode defines *
+ * *
+ *********************************
+
+ These defines come in two flavors: the long version (.._DRAWMODE_..)
+ and the short ones (.._DM_..). They are identical, feel free to use
+ which ever one you like best.
+
+ */
+
+#define GUI_DRAWMODE_NORMAL LCD_DRAWMODE_NORMAL
+#define GUI_DRAWMODE_XOR LCD_DRAWMODE_XOR
+#define GUI_DRAWMODE_TRANS LCD_DRAWMODE_TRANS
+#define GUI_DRAWMODE_REV LCD_DRAWMODE_REV
+#define GUI_DM_NORMAL LCD_DRAWMODE_NORMAL
+#define GUI_DM_XOR LCD_DRAWMODE_XOR
+#define GUI_DM_TRANS LCD_DRAWMODE_TRANS
+#define GUI_DM_REV LCD_DRAWMODE_REV
+
+#define GUI_TEXTMODE_NORMAL LCD_DRAWMODE_NORMAL
+#define GUI_TEXTMODE_XOR LCD_DRAWMODE_XOR
+#define GUI_TEXTMODE_TRANS LCD_DRAWMODE_TRANS
+#define GUI_TEXTMODE_REV LCD_DRAWMODE_REV
+#define GUI_TM_NORMAL LCD_DRAWMODE_NORMAL
+#define GUI_TM_XOR LCD_DRAWMODE_XOR
+#define GUI_TM_TRANS LCD_DRAWMODE_TRANS
+#define GUI_TM_REV LCD_DRAWMODE_REV
+
+/* Text alignment flags, horizontal */
+#define GUI_TA_HORIZONTAL (3 << 0)
+#define GUI_TA_LEFT (0 << 0)
+#define GUI_TA_RIGHT (1 << 0)
+#define GUI_TA_CENTER (2 << 0)
+#define GUI_TA_HCENTER GUI_TA_CENTER /* easier to remember :-) */
+
+/* Text alignment flags, vertical */
+#define GUI_TA_VERTICAL (3 << 2)
+#define GUI_TA_TOP (0 << 2)
+#define GUI_TA_BOTTOM (1 << 2)
+#define GUI_TA_BASELINE (2 << 2)
+#define GUI_TA_VCENTER (3 << 2)
+
+/* *********************************
+ *
+ * Min/Max coordinates
+ *
+ *********************************
+ */
+/* Define minimum and maximum coordinates in x and y */
+#define GUI_XMIN -4095
+#define GUI_XMAX 4095
+#define GUI_YMIN -4095
+#define GUI_YMAX 4095
+
+ /*********************************************************************
+ *
+ * Support for multitasking systems (locking)
+ *
+ **********************************************************************
+ */
+
+#if !GUI_OS
+#define GUI_LOCK()
+#define GUI_UNLOCK()
+#define GUITASK_INIT()
+#define GUITASK_COPY_CONTEXT()
+#else
+void GUI_Lock(void);
+void GUI_Unlock(void);
+void GUITASK_Init(void);
+void GUITASK_CopyContext(void);
+#define GUI_LOCK() GUI_Lock()
+#define GUI_UNLOCK() GUI_Unlock()
+#define GUITASK_INIT() GUITASK_Init()
+#define GUITASK_COPY_CONTEXT() GUITASK_CopyContext()
+#endif
+
+ /*********************************************************************
+ *
+ * GUI_CONTEXT
+ *
+ **********************************************************************
+
+ This structure is public for one reason only:
+ To allow the application to save and restore the context.
+ */
+
+ typedef union
+ {
+ U8 aColorIndex8[2];
+ U16 aColorIndex16[2];
+ } LCD_COLORINDEX_UNION;
+
+ typedef struct
+ {
+ /* Variables in LCD module */
+ LCD_COLORINDEX_UNION GLCD;
+ LCD_RECT ClipRect;
+ U8 DrawMode;
+ U8 SelLayer;
+ U8 TextStyle;
+ /* Variables in GL module */
+ GUI_RECT *pClipRect_HL; /* High level clip rectangle ... Speed optimization so drawing routines can optimize */
+ U8 PenSize;
+ U8 PenShape;
+ U8 LineStyle;
+ U8 FillStyle;
+ /* Variables in GUICHAR module */
+ const GUI_FONT GUI_UNI_PTR *pAFont;
+ const GUI_UC_ENC_APILIST *pUC_API; /* Unicode encoding API */
+ I16P LBorder;
+ I16P DispPosX, DispPosY;
+ I16P DrawPosX, DrawPosY;
+ I16P TextMode, TextAlign;
+ GUI_COLOR Color, BkColor; /* Required only when changing devices and for speed opt (caching) */
+ /* Variables in WM module */
+#if GUI_WINSUPPORT
+ const GUI_RECT *WM__pUserClipRect;
+ GUI_HWIN hAWin;
+ int xOff, yOff;
+#endif
+ /* Variables in MEMDEV module (with memory devices only) */
+#if GUI_SUPPORT_DEVICES
+ const tLCDDEV_APIList *pDeviceAPI; /* function pointers only */
+ GUI_HMEM hDevData;
+ GUI_RECT ClipRectPrev;
+#endif
+ /* Variables in Anitaliasing module */
+#if GUI_SUPPORT_AA
+ const tLCD_HL_APIList *pLCD_HL; /* Required to reroute drawing (HLine & Pixel) to the AA module */
+ U8 AA_Factor;
+ U8 AA_HiResEnable;
+#endif
+ } GUI_CONTEXT;
+
+/* Rename GUI_SaveContext in order to avoid crashes if wrong GUIConf is used */
+#if (GUI_WINSUPPORT && GUI_SUPPORT_DEVICES)
+#define GUI_SaveContext GUI_SaveContext_W_M
+#elif (!GUI_WINSUPPORT && GUI_SUPPORT_DEVICES)
+#define GUI_SaveContext GUI_SaveContext_M
+#elif (GUI_WINSUPPORT && !GUI_SUPPORT_DEVICES)
+#define GUI_SaveContext GUI_SaveContext_W
+#else
+#define GUI_SaveContext GUI_SaveContext_
+#endif
+
+ /*********************************************************************
+ *
+ * General routines
+ *
+ **********************************************************************
+ */
+ int GUI_Init(void);
+ void GUI_SetDefault(void);
+ GUI_DRAWMODE GUI_SetDrawMode(GUI_DRAWMODE dm);
+ const char *GUI_GetVersionString(void);
+ void GUI_SaveContext(GUI_CONTEXT *pContext);
+ void GUI_RestoreContext(const GUI_CONTEXT *pContext);
+
+ /*********************************************************************
+ *
+ * Rectangle helper functions
+ *
+ **********************************************************************
+ */
+
+ int GUI_RectsIntersect(const GUI_RECT *pr0, const GUI_RECT *pr1);
+ void GUI_MoveRect(GUI_RECT *pRect, int x, int y);
+ void GUI_MergeRect(GUI_RECT *pDest, const GUI_RECT *pr0, const GUI_RECT *pr1);
+ int GUI__IntersectRects(GUI_RECT *pDest, const GUI_RECT *pr0, const GUI_RECT *pr1);
+ void GUI__IntersectRect(GUI_RECT *pDest, const GUI_RECT *pr0);
+ void GUI__ReduceRect(GUI_RECT *pDest, const GUI_RECT *pRect, int Dist);
+
+ /*********************************************************************
+ *
+ * Misc helper functions
+ *
+ **********************************************************************
+ */
+
+ int GUI__DivideRound(int a, int b);
+ I32 GUI__DivideRound32(I32 a, I32 b);
+ int GUI__SetText(GUI_HMEM *phText, const char *s);
+
+ /*********************************************************************
+ *
+ * Get / Set Attributes
+ *
+ **********************************************************************
+ */
+
+ GUI_COLOR GUI_GetBkColor(void);
+ GUI_COLOR GUI_GetColor(void);
+ int GUI_GetBkColorIndex(void);
+ int GUI_GetColorIndex(void);
+ U8 GUI_GetPenSize(void);
+ U8 GUI_GetPenShape(void);
+ U8 GUI_GetLineStyle(void);
+ U8 GUI_GetFillStyle(void);
+
+ void GUI_SetBkColor(GUI_COLOR);
+ void GUI_SetColor(GUI_COLOR);
+ void GUI_SetBkColorIndex(int Index);
+ void GUI_SetColorIndex(int Index);
+
+ U8 GUI_SetPenSize(U8 Size);
+ U8 GUI_SetPenShape(U8 Shape);
+ U8 GUI_SetLineStyle(U8 Style);
+ U8 GUI_SetFillStyle(U8 Style);
+
+ /* Get/Set Character used as decimal point (usually '.' or ',') */
+ char GUI_GetDecChar(void);
+ char GUI_SetDecChar(char c);
+
+ /*********************************************************************
+ *
+ * Color / Index related functions
+ *
+ **********************************************************************
+ */
+
+ int GUI_Color2Index(GUI_COLOR color);
+ GUI_COLOR GUI_Color2VisColor(GUI_COLOR color);
+ char GUI_ColorIsAvailable(GUI_COLOR color);
+ GUI_COLOR GUI_Index2Color(int Index);
+ void GUI_InitLUT(void);
+ void GUI_SetLUTEntry(U8 Pos, GUI_COLOR Color);
+ void GUI_SetLUTColor(U8 Pos, GUI_COLOR Color);
+ void GUI_SetLUTColorEx(U8 Pos, LCD_COLOR Color, unsigned int LayerIndex);
+ U32 GUI_CalcColorDist(GUI_COLOR Color0, GUI_COLOR Color1);
+ U32 GUI_CalcVisColorError(GUI_COLOR color);
+
+ /*********************************************************************
+ *
+ * Logging (for debugging primarily)
+ *
+ **********************************************************************
+ */
+ void GUI_Log(const char *s);
+ void GUI_Log1(const char *s, int p0);
+ void GUI_Log2(const char *s, int p0, int p1);
+ void GUI_Log3(const char *s, int p0, int p1, int p2);
+ void GUI_Log4(const char *s, int p0, int p1, int p2, int p3);
+ void GUI_Warn(const char *s);
+ void GUI_Warn1(const char *s, int p0);
+ void GUI_Warn2(const char *s, int p0, int p1);
+ void GUI_Warn3(const char *s, int p0, int p1, int p2);
+ void GUI_Warn4(const char *s, int p0, int p1, int p2, int p3);
+ void GUI_ErrorOut(const char *s);
+ void GUI_ErrorOut1(const char *s, int p0);
+ void GUI_ErrorOut2(const char *s, int p0, int p1);
+ void GUI_ErrorOut3(const char *s, int p0, int p1, int p2);
+ void GUI_ErrorOut4(const char *s, int p0, int p1, int p2, int p3);
+
+ /*********************************************************************
+ *
+ * 2d - GL
+ *
+ **********************************************************************
+ */
+
+ int GUI_BMP_Draw(const void *pFileData, int x0, int y0);
+ int GUI_BMP_GetXSize(const void *pFileData);
+ int GUI_BMP_GetYSize(const void *pFileData);
+ void GUI_Clear(void);
+ void GUI_ClearRect(int x0, int y0, int x1, int y1);
+ void GUI_ClearRectEx(const GUI_RECT *pRect);
+ void GUI_DrawArc(int x0, int y0, int rx, int ry, int a0, int a1);
+ void GUI_DrawBitmap(const GUI_BITMAP GUI_UNI_PTR *pBM, int x0, int y0);
+ void GUI_DrawBitmapMag(const GUI_BITMAP GUI_UNI_PTR *pBM, int x0, int y0, int XMul, int YMul);
+ void GUI_DrawBitmapEx(const GUI_BITMAP GUI_UNI_PTR *pBitmap, int x0, int y0, int xCenter, int yCenter, int xMag, int yMag);
+ void GUI_DrawBitmapExp(int x0, int y0, int XSize, int YSize, int XMul, int YMul, int BitsPerPixel, int BytesPerLine, const U8 GUI_UNI_PTR *pData, const GUI_LOGPALETTE GUI_UNI_PTR *pPal);
+ void GUI_DrawCircle(int x0, int y0, int r);
+ void GUI_DrawEllipse(int x0, int y0, int rx, int ry);
+ void GUI_DrawGraph(I16 *pay, int NumPoints, int x0, int y0);
+ void GUI_DrawHLine(int y0, int x0, int x1);
+ void GUI_DrawLine(int x0, int y0, int x1, int y1);
+ void GUI_DrawLineRel(int dx, int dy);
+ void GUI_DrawLineTo(int x, int y);
+ void GUI_DrawPie(int x0, int y0, int r, int a0, int a1, int Type);
+ void GUI_DrawPixel(int x, int y);
+ void GUI_DrawPoint(int x, int y);
+ void GUI_DrawPolygon(const GUI_POINT *pPoints, int NumPoints, int x0, int y0);
+ void GUI_DrawPolyLine(const GUI_POINT *pPoints, int NumPoints, int x0, int y0);
+ void GUI_DrawFocusRect(const GUI_RECT *pRect, int Dist);
+ void GUI_DrawRect(int x0, int y0, int x1, int y1); // 画矩形
+ void GUI_DrawRectEx(const GUI_RECT *pRect);
+ void GUI_DrawVLine(int x0, int y0, int y1);
+ void GUI_FillCircle(int x0, int y0, int r);
+ void GUI_FillEllipse(int x0, int y0, int rx, int ry);
+ void GUI_FillPolygon(const GUI_POINT *pPoints, int NumPoints, int x0, int y0);
+ void GUI_FillRect(int x0, int y0, int x1, int y1);
+ void GUI_FillRectEx(const GUI_RECT *pRect);
+ void GUI_GetClientRect(GUI_RECT *pRect);
+ void GUI_InvertRect(int x0, int y0, int x1, int y1);
+ void GUI_MoveRel(int dx, int dy);
+ void GUI_MoveTo(int x, int y);
+
+ /*********************************************************************
+ *
+ * JPEG support
+ *
+ **********************************************************************
+ */
+ typedef struct
+ {
+ int XSize;
+ int YSize;
+ } GUI_JPEG_INFO;
+
+ int GUI_JPEG_Draw(const void *pFileData, int DataSize, int x0, int y0);
+ int GUI_JPEG_GetInfo(const void *pFileData, int DataSize, GUI_JPEG_INFO *pInfo);
+
+ /*********************************************************************
+ *
+ * Cursor routines
+ *
+ **********************************************************************
+ */
+
+ typedef struct
+ {
+ const GUI_UNI_PTR GUI_BITMAP *pBitmap;
+ int xHot, yHot;
+ } GUI_CURSOR;
+
+#if GUI_SUPPORT_CURSOR
+ void GUI_CURSOR_Activate(void);
+ void GUI_CURSOR_Deactivate(void);
+ void GUI_CURSOR_Hide(void);
+ void GUI_CURSOR_SetXor(const GUI_BITMAP *pBM, int x, int y);
+ void GUI_CURSOR_SetPosition(int x, int y);
+ const GUI_CURSOR GUI_UNI_PTR *GUI_CURSOR_Select(const GUI_CURSOR GUI_UNI_PTR *pCursor);
+ void GUI_CURSOR_Show(void);
+#else
+#define GUI_CURSOR_Show()
+#define GUI_CURSOR_Clear() ;
+#endif
+
+ /*********************************************************************
+ *
+ * Cursors and their bitmaps
+ *
+ **********************************************************************
+ */
+ extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowS, GUI_CursorArrowSI;
+ extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowM, GUI_CursorArrowMI;
+ extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowL, GUI_CursorArrowLI;
+ extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossS, GUI_CursorCrossSI;
+ extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossM, GUI_CursorCrossMI;
+ extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossL, GUI_CursorCrossLI;
+ extern GUI_CONST_STORAGE GUI_CURSOR GUI_CursorHeaderM, GUI_CursorHeaderMI;
+
+ extern GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapArrowS, GUI_BitmapArrowSI;
+ extern GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapArrowM, GUI_BitmapArrowMI;
+ extern GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapArrowL, GUI_BitmapArrowLI;
+ extern GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapCrossS, GUI_BitmapCrossSI;
+ extern GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapCrossM, GUI_BitmapCrossMI;
+ extern GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapCrossL, GUI_BitmapCrossLI;
+
+ /*********************************************************************
+ *
+ * Text related routines
+ *
+ **********************************************************************
+ */
+
+ void GUI_DispCEOL(void);
+ void GUI_DispChar(U16 c);
+ void GUI_DispChars(U16 c, int Cnt);
+ void GUI_DispCharAt(U16 c, I16P x, I16P y);
+ void GUI_DispString(const char GUI_UNI_PTR *s);
+ void GUI_DispStringAt(const char GUI_UNI_PTR *s, int x, int y);
+ void GUI_DispStringAtCEOL(const char GUI_UNI_PTR *s, int x, int y);
+ void GUI_DispStringHCenterAt(const char GUI_UNI_PTR *s, int x, int y);
+ void GUI__DispStringInRect(const char GUI_UNI_PTR *s, GUI_RECT *pRect, int TextAlign, int MaxNumChars);
+ void GUI_DispStringInRect(const char GUI_UNI_PTR *s, GUI_RECT *pRect, int Flags);
+#if GUI_SUPPORT_ROTATION
+ void GUI_DispStringInRectEx(const char GUI_UNI_PTR *s, GUI_RECT *pRect, int TextAlign, int MaxLen, const GUI_ROTATION *pLCD_Api);
+#endif
+ void GUI_DispStringInRectMax(const char GUI_UNI_PTR *s, GUI_RECT *pRect, int TextAlign, int MaxLen); /* Not to be doc. */
+ void GUI_DispStringLen(const char GUI_UNI_PTR *s, int Len);
+ void GUI_GetTextExtend(GUI_RECT *pRect, const char GUI_UNI_PTR *s, int Len);
+ int GUI_GetYAdjust(void);
+ int GUI_GetDispPosX(void);
+ int GUI_GetDispPosY(void);
+ const GUI_FONT GUI_UNI_PTR *GUI_GetFont(void);
+ int GUI_GetCharDistX(U16 c);
+ int GUI_GetStringDistX(const char GUI_UNI_PTR *s);
+ int GUI_GetFontDistY(void);
+ int GUI_GetFontSizeY(void);
+ void GUI_GetFontInfo(const GUI_FONT GUI_UNI_PTR *pFont, GUI_FONTINFO *pfi);
+ int GUI_GetYSizeOfFont(const GUI_FONT GUI_UNI_PTR *pFont);
+ int GUI_GetYDistOfFont(const GUI_FONT GUI_UNI_PTR *pFont);
+ int GUI_GetTextAlign(void);
+ int GUI_GetTextMode(void);
+ char GUI_IsInFont(const GUI_FONT GUI_UNI_PTR *pFont, U16 c);
+ int GUI_SetTextAlign(int Align);
+ int GUI_SetTextMode(int Mode);
+ char GUI_SetTextStyle(char Style);
+ int GUI_SetLBorder(int x);
+ void GUI_SetOrg(int x, int y);
+ const GUI_FONT GUI_UNI_PTR *GUI_SetFont(const GUI_FONT GUI_UNI_PTR *pNewFont);
+ char GUI_GotoXY(int x, int y);
+ char GUI_GotoX(int x);
+ char GUI_GotoY(int y);
+ void GUI_DispNextLine(void);
+
+ /*********************************************************************
+ *
+ * Position independent fonts
+ *
+ **********************************************************************
+ */
+ void GUI_SIF_CreateFont(void *pFontData, GUI_FONT *pFont, const GUI_SIF_TYPE *pFontType);
+ void GUI_SIF_DeleteFont(GUI_FONT *pFont);
+
+ /*********************************************************************
+ *
+ * Unicode support
+ *
+ **********************************************************************
+ */
+
+ int GUI_UC_Encode(char *s, U16 Char);
+ int GUI_UC_GetCharSize(const char GUI_UNI_PTR *s);
+ U16 GUI_UC_GetCharCode(const char GUI_UNI_PTR *s);
+ void GUI_UC_SetEncodeNone(void);
+ void GUI_UC_SetEncodeUTF8(void);
+
+ void GUI_UC_DispString(const U16 GUI_UNI_PTR *s);
+ void GUI_UC2DB(U16 Code, U8 *pOut);
+ U16 GUI_DB2UC(U8 Byte0, U8 Byte1);
+
+ /* *********************************
+ * *
+ * GUIVAL.C *
+ * *
+ *********************************
+ */
+
+ void GUI_DispBin(U32 v, U8 Len);
+ void GUI_DispBinAt(U32 v, I16P x, I16P y, U8 Len);
+ void GUI_DispDec(I32 v, U8 Len); // 十进制显示
+ void GUI_DispDecAt(I32 v, I16P x, I16P y, U8 Len);
+ void GUI_DispDecMin(I32 v);
+ void GUI_DispDecShift(I32 v, U8 Len, U8 Shift);
+ void GUI_DispDecSpace(I32 v, U8 MaxDigits);
+ void GUI_DispHex(U32 v, U8 Len);
+ void GUI_DispHexAt(U32 v, I16P x, I16P y, U8 Len);
+ void GUI_DispSDec(I32 v, U8 Len); // 显示加减号
+ void GUI_DispSDecShift(I32 v, U8 Len, U8 Shift);
+
+ /* *********************************
+ * *
+ * GUIVALF.C *
+ * *
+ *********************************
+
+ Routines to display floating point values. These routines use the routines
+ defined in the module GUIVAL.C as base routines.
+
+ */
+
+ void GUI_DispFloat(float v, char Len);
+ void GUI_DispFloatFix(float v, char Len, char Fract);
+ void GUI_DispFloatMin(float v, char Fract);
+ void GUI_DispSFloatFix(float v, char Len, char Fract);
+ void GUI_DispSFloatMin(float v, char Fract);
+
+ /*********************************************************************
+ *
+ * Dynamic memory management
+ *
+ **********************************************************************
+ */
+
+#if !defined(GUI_ALLOC_ALLOC)
+ /* diagnostics */
+ GUI_ALLOC_DATATYPE GUI_ALLOC_GetUsed(void);
+ GUI_ALLOC_DATATYPE GUI_ALLOC_GetNumFreeBytes(void);
+#endif
+
+ GUI_HMEM GUI_ALLOC_AllocInit(const void *pInitData, GUI_ALLOC_DATATYPE Size);
+ GUI_HMEM GUI_ALLOC_AllocNoInit(GUI_ALLOC_DATATYPE size);
+ GUI_HMEM GUI_ALLOC_AllocZero(GUI_ALLOC_DATATYPE size);
+ void GUI_ALLOC_Free(GUI_HMEM hMem);
+ void GUI_ALLOC_FreePtr(GUI_HMEM *phMem);
+ GUI_ALLOC_DATATYPE GUI_ALLOC_GetSize(GUI_HMEM hMem);
+ GUI_ALLOC_DATATYPE GUI_ALLOC_GetMaxSize(void);
+ void *GUI_ALLOC_h2p(GUI_HMEM hMem);
+ void GUI_ALLOC_Init(void);
+ GUI_HMEM GUI_ALLOC_Realloc(GUI_HMEM hOld, int NewSize);
+
+ /*********************************************************************
+ *
+ * Memory device: GUI_MEMDEV
+ *
+ **********************************************************************
+ */
+
+#define GUI_MEMDEV_HASTRANS 0
+#define GUI_MEMDEV_NOTRANS (1 << 0)
+
+#if GUI_SUPPORT_DEVICES
+ typedef GUI_HMEM GUI_MEMDEV_Handle;
+ typedef void GUI_CALLBACK_VOID_P(void *p);
+
+ typedef struct
+ {
+ GUI_RECT rView, rPrev;
+ char FirstCall;
+ } GUI_AUTODEV;
+
+ typedef struct
+ {
+ char DrawFixed;
+ char IsMeasurement;
+ } GUI_AUTODEV_INFO;
+
+ int GUI_MEMDEV_CreateAuto(GUI_AUTODEV *pAutoDev);
+ void GUI_MEMDEV_DeleteAuto(GUI_AUTODEV *pAutoDev);
+ int GUI_MEMDEV_DrawAuto(GUI_AUTODEV *pAutoDev, GUI_AUTODEV_INFO *pAutoDevInfo, GUI_CALLBACK_VOID_P *pfDraw, void *pData);
+
+ /* Create a memory device which is compatible to the selected LCD */
+ GUI_MEMDEV_Handle GUI_MEMDEV_Create(int x0, int y0, int XSize, int YSize);
+ GUI_MEMDEV_Handle GUI_MEMDEV_CreateEx(int x0, int y0, int XSize, int YSize, int Flags);
+ GUI_MEMDEV_Handle GUI_MEMDEV_CreateFixed(int x0, int y0, int xsize, int ysize, int Flags,
+ const tLCDDEV_APIList *pMemDevAPI,
+ const LCD_API_COLOR_CONV *pColorConvAPI);
+ void GUI_MEMDEV_Clear(GUI_MEMDEV_Handle hMem);
+ void GUI_MEMDEV_CopyFromLCD(GUI_MEMDEV_Handle hMem);
+ void GUI_MEMDEV_CopyFromLCDAA(GUI_MEMDEV_Handle hMem);
+ void GUI_MEMDEV_CopyToLCD(GUI_MEMDEV_Handle hMem);
+ void GUI_MEMDEV_CopyToLCDAA(GUI_MEMDEV_Handle hMem);
+ void GUI_MEMDEV_CopyToLCDAt(GUI_MEMDEV_Handle hMem, int x, int y);
+ int GUI_MEMDEV_CompareWithLCD(GUI_MEMDEV_Handle hMem, int *px, int *py, int *pExp, int *pAct);
+ void GUI_MEMDEV_Delete(GUI_MEMDEV_Handle MemDev);
+ int GUI_MEMDEV_GetXSize(GUI_MEMDEV_Handle hMem);
+ int GUI_MEMDEV_GetYSize(GUI_MEMDEV_Handle hMem);
+ void GUI_MEMDEV_ReduceYSize(GUI_MEMDEV_Handle hMem, int YSize);
+ GUI_MEMDEV_Handle GUI_MEMDEV_Select(GUI_MEMDEV_Handle hMem); /* Select (activate) a particular memory device. */
+ void GUI_MEMDEV_SetOrg(GUI_MEMDEV_Handle hMem, int x0, int y0);
+ void GUI_MEMDEV_WriteAt(GUI_MEMDEV_Handle hMem, int x, int y);
+ void GUI_MEMDEV_Write(GUI_MEMDEV_Handle hMem);
+ void GUI_MEMDEV_WriteAlphaAt(GUI_MEMDEV_Handle hMem, int Alpha, int x, int y);
+ void GUI_MEMDEV_WriteAlpha(GUI_MEMDEV_Handle hMem, int Alpha);
+ void GUI_MEMDEV_WriteExAt(GUI_MEMDEV_Handle hMem, int x, int y, int xMag, int yMag, int Alpha);
+ void GUI_MEMDEV_WriteEx(GUI_MEMDEV_Handle hMem, int xMag, int yMag, int Alpha);
+ int GUI_MEMDEV_Draw(GUI_RECT *pRect, GUI_CALLBACK_VOID_P *pfDraw, void *pData, int MemSize, int Flags);
+ void *GUI_MEMDEV_GetDataPtr(GUI_MEMDEV_Handle hMem);
+#endif
+
+ void GUI_SelectLCD(void);
+ unsigned int GUI_SelectLayer(unsigned int Index);
+
+ /**************************************************************
+ *
+ * Measure device: GUI_MEASDEV
+ *
+ ***************************************************************
+ */
+
+ typedef GUI_HMEM GUI_MEASDEV_Handle;
+
+ GUI_MEASDEV_Handle GUI_MEASDEV_Create(void);
+ void GUI_MEASDEV_Delete(GUI_MEASDEV_Handle hMemDev);
+ void GUI_MEASDEV_Select(GUI_MEASDEV_Handle hMem);
+ void GUI_MEASDEV_GetRect(GUI_MEASDEV_Handle hMem, GUI_RECT *pRect);
+ void GUI_MEASDEV_ClearRect(GUI_MEASDEV_Handle hMem);
+
+ /************************************************************
+ *
+ * Polygon helpers
+ *
+ *************************************************************
+ */
+ void GUI_RotatePolygon(GUI_POINT *pDest, const GUI_POINT *pSrc, int NumPoints, float Angle);
+ void GUI_MagnifyPolygon(GUI_POINT *pDest, const GUI_POINT *pSrc, int NumPoints, int Mag);
+ void GUI_EnlargePolygon(GUI_POINT *pDest, const GUI_POINT *pSrc, int NumPoints, int Len);
+
+ /************************************************************
+ *
+ * Streamed bitmap
+ *
+ *************************************************************
+ */
+ void GUI_DrawStreamedBitmap(const GUI_BITMAP_STREAM *pBitmapStream, int x, int y);
+
+ /************************************************************
+ *
+ * BMP-export
+ *
+ *************************************************************
+ */
+ typedef void GUI_CALLBACK_VOID_U8_P(U8 Data, void *p);
+
+ void GUI_BMP_SerializeEx(GUI_CALLBACK_VOID_U8_P *pfSerialize, int x0, int y0, int xSize, int ySize, void *p);
+ void GUI_BMP_Serialize(GUI_CALLBACK_VOID_U8_P *pfSerialize, void *p);
+
+ /*********************************************************************
+ *
+ * Time / execution related routines
+ *
+ **********************************************************************
+ */
+ void GUI_Delay(int Period);
+ int GUI_GetTime(void);
+ int GUI_Exec(void); /* Execute all jobs ... Return 0 if nothing was done. */
+ int GUI_Exec1(void); /* Execute one job ... Return 0 if nothing was done. */
+
+ /*********************************************************************
+ *
+ * MessageBox
+ *
+ **********************************************************************
+
+ Note: These should be moved into a separate file.
+ */
+ int GUI_MessageBox(const char *sMessage, const char *sCaption, int Flags);
+#define GUI_MESSAGEBOX_CF_MOVEABLE (1 << 4)
+
+#define GUI_MB_OK 20
+#define GUI_MB_WARNING 21
+
+ /*********************************************************************
+ *
+ * GUI_TIMER module
+ *
+ **********************************************************************
+ */
+
+ typedef struct
+ {
+ GUI_TIMER_TIME Time;
+ U32 Context;
+ } GUI_TIMER_MESSAGE;
+
+ typedef GUI_HMEM GUI_TIMER_HANDLE;
+ typedef void GUI_TIMER_CALLBACK(/*const*/ GUI_TIMER_MESSAGE *pTM);
+
+ GUI_TIMER_HANDLE GUI_TIMER_Create(GUI_TIMER_CALLBACK *cb, int Time, U32 Context, int Flags);
+ void GUI_TIMER_Delete(GUI_TIMER_HANDLE hObj);
+
+ /* Methods changing properties */
+ void GUI_TIMER_SetPeriod(GUI_TIMER_HANDLE hObj, GUI_TIMER_TIME Period);
+ void GUI_TIMER_SetTime(GUI_TIMER_HANDLE hObj, GUI_TIMER_TIME Period);
+ void GUI_TIMER_SetDelay(GUI_TIMER_HANDLE hObj, GUI_TIMER_TIME Delay);
+ void GUI_TIMER_Restart(GUI_TIMER_HANDLE hObj);
+ int GUI_TIMER_Exec(void);
+
+ void GUI_TIMER_Context(GUI_TIMER_HANDLE hObj, U32 Context); // houhh 20061020
+
+ /******************************************************************
+ *
+ * Anti Aliasing
+ *
+ *******************************************************************
+ */
+
+ void GUI_AA_DisableHiRes(void);
+ void GUI_AA_EnableHiRes(void);
+ int GUI_AA_GetFactor(void);
+ void GUI_AA_SetFactor(int Factor);
+ void GUI_AA_DrawArc(int x0, int y0, int rx, int ry, int a0, int a1);
+ void GUI_AA_DrawLine(int x0, int y0, int x1, int y1);
+ void GUI_AA_DrawPolyOutline(const GUI_POINT *pSrc, int NumPoints, int Thickness, int x, int y);
+ void GUI_AA_FillCircle(int x0, int y0, int r);
+ void GUI_AA_FillPolygon(GUI_POINT *pPoints, int NumPoints, int x0, int y0);
+
+ /******************************************************************
+ *
+ * Keyboard
+ *
+ *******************************************************************
+ */
+
+ /* Message layer */
+ void GUI_StoreKeyMsg(int Key, int Pressed);
+ void GUI_SendKeyMsg(int Key, int Pressed);
+ int GUI_PollKeyMsg(void);
+
+ /* Message hook */
+ typedef int GUI_KEY_MSG_HOOK(int Key, int Pressed);
+ extern GUI_KEY_MSG_HOOK *GUI_pfKeyMsgHook;
+ GUI_KEY_MSG_HOOK *GUI_SetKeyMsgHook(GUI_KEY_MSG_HOOK *pHook);
+
+ /* Application layer */
+ int GUI_GetKey(void);
+ int GUI_WaitKey(void);
+ void GUI_StoreKey(int c);
+ void GUI_ClearKeyBuffer(void);
+
+ /*********************************************************************
+ *
+ * Task syncronisation (depends on configuration)
+ */
+ void GUI_WaitEvent(void);
+
+ /*********************************************************************
+ *
+ * PID (Pointer input device ... mouse/touch)
+ */
+
+ void GUI_PID_StoreState(const GUI_PID_STATE *pState);
+ int GUI_PID_GetState(GUI_PID_STATE *pState);
+
+ /*********************************************************************
+ *
+ * Mouse, generic
+ */
+ int GUI_MOUSE_GetState(GUI_PID_STATE *pState);
+ void GUI_MOUSE_StoreState(const GUI_PID_STATE *pState);
+
+ /*********************************************************************
+ *
+ * TOUCH screen, generic
+ */
+
+ int GUI_TOUCH_GetState(GUI_PID_STATE *pState);
+ void GUI_TOUCH_GetUnstable(int *px, int *py); /* for diagnostics only */
+ void GUI_TOUCH_StoreState(int x, int y);
+ void GUI_TOUCH_StoreStateEx(const GUI_PID_STATE *pState);
+ void GUI_TOUCH_StoreUnstable(int x, int y);
+
+ /*********************************************************************
+ *
+ * Mouse, PS2 driver
+ */
+ void GUI_MOUSE_DRIVER_PS2_Init(void); /* optional */
+ void GUI_MOUSE_DRIVER_PS2_OnRx(unsigned char Data);
+
+ /*********************************************************************
+ *
+ * TOUCH screen, analog driver
+ */
+ void GUI_TOUCH_Exec(void);
+ int GUI_TOUCH_Calibrate(int Coord, int Log0, int Log1, int Phys0, int Phys1);
+ void GUI_TOUCH_SetDefaultCalibration(void);
+ int GUI_TOUCH_GetxPhys(void); /* for diagnostics only */
+ int GUI_TOUCH_GetyPhys(void); /* for diagnostics only */
+ void GUI_TOUCH_GetCalData(int Coord, int *pMin, int *pMax);
+
+ /*********************************************************************
+ *
+ * TOUCH
+ *
+ * imports
+ *
+ **********************************************************************
+
+ Please note: The following functions are required by the module.
+ They need to be part of your application software (or rather, part
+ of the hardware-layer of your software).
+ */
+
+ void GUI_TOUCH_X_ActivateX(void);
+ void GUI_TOUCH_X_ActivateY(void);
+ void GUI_TOUCH_X_Disable(void);
+ int GUI_TOUCH_X_MeasureX(void);
+ int GUI_TOUCH_X_MeasureY(void);
+
+ /**************************************************************
+ *
+ * Constants for fonts and bitmaps
+ *
+ ***************************************************************
+ */
+
+ extern const GUI_BITMAP_METHODS GUI_BitmapMethodsRLE4;
+ extern const GUI_BITMAP_METHODS GUI_BitmapMethodsRLE8;
+ extern const GUI_BITMAP_METHODS GUI_BitmapMethods565;
+ extern const GUI_BITMAP_METHODS GUI_BitmapMethodsM565;
+
+#define GUI_COMPRESS_RLE4 0
+#define GUI_COMPRESS_RLE8 0
+
+#define GUI_DRAW_RLE4 &GUI_BitmapMethodsRLE4 /* Method table ! */
+#define GUI_DRAW_RLE8 &GUI_BitmapMethodsRLE8 /* Method table ! */
+#define GUI_DRAW_BMP565 &GUI_BitmapMethods565 /* Method table ! */
+#define GUI_DRAW_BMPM565 &GUI_BitmapMethodsM565 /* Method table ! */
+
+ /**************************************************************
+ *
+ * Defines for constants
+ *
+ ***************************************************************
+ */
+
+#define ________ 0x0
+#define _______X 0x1
+#define ______X_ 0x2
+#define ______XX 0x3
+#define _____X__ 0x4
+#define _____X_X 0x5
+#define _____XX_ 0x6
+#define _____XXX 0x7
+#define ____X___ 0x8
+#define ____X__X 0x9
+#define ____X_X_ 0xa
+#define ____X_XX 0xb
+#define ____XX__ 0xc
+#define ____XX_X 0xd
+#define ____XXX_ 0xe
+#define ____XXXX 0xf
+#define ___X____ 0x10
+#define ___X___X 0x11
+#define ___X__X_ 0x12
+#define ___X__XX 0x13
+#define ___X_X__ 0x14
+#define ___X_X_X 0x15
+#define ___X_XX_ 0x16
+#define ___X_XXX 0x17
+#define ___XX___ 0x18
+#define ___XX__X 0x19
+#define ___XX_X_ 0x1a
+#define ___XX_XX 0x1b
+#define ___XXX__ 0x1c
+#define ___XXX_X 0x1d
+#define ___XXXX_ 0x1e
+#define ___XXXXX 0x1f
+#define __X_____ 0x20
+#define __X____X 0x21
+#define __X___X_ 0x22
+#define __X___XX 0x23
+#define __X__X__ 0x24
+#define __X__X_X 0x25
+#define __X__XX_ 0x26
+#define __X__XXX 0x27
+#define __X_X___ 0x28
+#define __X_X__X 0x29
+#define __X_X_X_ 0x2a
+#define __X_X_XX 0x2b
+#define __X_XX__ 0x2c
+#define __X_XX_X 0x2d
+#define __X_XXX_ 0x2e
+#define __X_XXXX 0x2f
+#define __XX____ 0x30
+#define __XX___X 0x31
+#define __XX__X_ 0x32
+#define __XX__XX 0x33
+#define __XX_X__ 0x34
+#define __XX_X_X 0x35
+#define __XX_XX_ 0x36
+#define __XX_XXX 0x37
+#define __XXX___ 0x38
+#define __XXX__X 0x39
+#define __XXX_X_ 0x3a
+#define __XXX_XX 0x3b
+#define __XXXX__ 0x3c
+#define __XXXX_X 0x3d
+#define __XXXXX_ 0x3e
+#define __XXXXXX 0x3f
+#define _X______ 0x40
+#define _X_____X 0x41
+#define _X____X_ 0x42
+#define _X____XX 0x43
+#define _X___X__ 0x44
+#define _X___X_X 0x45
+#define _X___XX_ 0x46
+#define _X___XXX 0x47
+#define _X__X___ 0x48
+#define _X__X__X 0x49
+#define _X__X_X_ 0x4a
+#define _X__X_XX 0x4b
+#define _X__XX__ 0x4c
+#define _X__XX_X 0x4d
+#define _X__XXX_ 0x4e
+#define _X__XXXX 0x4f
+#define _X_X____ 0x50
+#define _X_X___X 0x51
+#define _X_X__X_ 0x52
+#define _X_X__XX 0x53
+#define _X_X_X__ 0x54
+#define _X_X_X_X 0x55
+#define _X_X_XX_ 0x56
+#define _X_X_XXX 0x57
+#define _X_XX___ 0x58
+#define _X_XX__X 0x59
+#define _X_XX_X_ 0x5a
+#define _X_XX_XX 0x5b
+#define _X_XXX__ 0x5c
+#define _X_XXX_X 0x5d
+#define _X_XXXX_ 0x5e
+#define _X_XXXXX 0x5f
+#define _XX_____ 0x60
+#define _XX____X 0x61
+#define _XX___X_ 0x62
+#define _XX___XX 0x63
+#define _XX__X__ 0x64
+#define _XX__X_X 0x65
+#define _XX__XX_ 0x66
+#define _XX__XXX 0x67
+#define _XX_X___ 0x68
+#define _XX_X__X 0x69
+#define _XX_X_X_ 0x6a
+#define _XX_X_XX 0x6b
+#define _XX_XX__ 0x6c
+#define _XX_XX_X 0x6d
+#define _XX_XXX_ 0x6e
+#define _XX_XXXX 0x6f
+#define _XXX____ 0x70
+#define _XXX___X 0x71
+#define _XXX__X_ 0x72
+#define _XXX__XX 0x73
+#define _XXX_X__ 0x74
+#define _XXX_X_X 0x75
+#define _XXX_XX_ 0x76
+#define _XXX_XXX 0x77
+#define _XXXX___ 0x78
+#define _XXXX__X 0x79
+#define _XXXX_X_ 0x7a
+#define _XXXX_XX 0x7b
+#define _XXXXX__ 0x7c
+#define _XXXXX_X 0x7d
+#define _XXXXXX_ 0x7e
+#define _XXXXXXX 0x7f
+#define X_______ 0x80
+#define X______X 0x81
+#define X_____X_ 0x82
+#define X_____XX 0x83
+#define X____X__ 0x84
+#define X____X_X 0x85
+#define X____XX_ 0x86
+#define X____XXX 0x87
+#define X___X___ 0x88
+#define X___X__X 0x89
+#define X___X_X_ 0x8a
+#define X___X_XX 0x8b
+#define X___XX__ 0x8c
+#define X___XX_X 0x8d
+#define X___XXX_ 0x8e
+#define X___XXXX 0x8f
+#define X__X____ 0x90
+#define X__X___X 0x91
+#define X__X__X_ 0x92
+#define X__X__XX 0x93
+#define X__X_X__ 0x94
+#define X__X_X_X 0x95
+#define X__X_XX_ 0x96
+#define X__X_XXX 0x97
+#define X__XX___ 0x98
+#define X__XX__X 0x99
+#define X__XX_X_ 0x9a
+#define X__XX_XX 0x9b
+#define X__XXX__ 0x9c
+#define X__XXX_X 0x9d
+#define X__XXXX_ 0x9e
+#define X__XXXXX 0x9f
+#define X_X_____ 0xa0
+#define X_X____X 0xa1
+#define X_X___X_ 0xa2
+#define X_X___XX 0xa3
+#define X_X__X__ 0xa4
+#define X_X__X_X 0xa5
+#define X_X__XX_ 0xa6
+#define X_X__XXX 0xa7
+#define X_X_X___ 0xa8
+#define X_X_X__X 0xa9
+#define X_X_X_X_ 0xaa
+#define X_X_X_XX 0xab
+#define X_X_XX__ 0xac
+#define X_X_XX_X 0xad
+#define X_X_XXX_ 0xae
+#define X_X_XXXX 0xaf
+#define X_XX____ 0xb0
+#define X_XX___X 0xb1
+#define X_XX__X_ 0xb2
+#define X_XX__XX 0xb3
+#define X_XX_X__ 0xb4
+#define X_XX_X_X 0xb5
+#define X_XX_XX_ 0xb6
+#define X_XX_XXX 0xb7
+#define X_XXX___ 0xb8
+#define X_XXX__X 0xb9
+#define X_XXX_X_ 0xba
+#define X_XXX_XX 0xbb
+#define X_XXXX__ 0xbc
+#define X_XXXX_X 0xbd
+#define X_XXXXX_ 0xbe
+#define X_XXXXXX 0xbf
+#define XX______ 0xc0
+#define XX_____X 0xc1
+#define XX____X_ 0xc2
+#define XX____XX 0xc3
+#define XX___X__ 0xc4
+#define XX___X_X 0xc5
+#define XX___XX_ 0xc6
+#define XX___XXX 0xc7
+#define XX__X___ 0xc8
+#define XX__X__X 0xc9
+#define XX__X_X_ 0xca
+#define XX__X_XX 0xcb
+#define XX__XX__ 0xcc
+#define XX__XX_X 0xcd
+#define XX__XXX_ 0xce
+#define XX__XXXX 0xcf
+#define XX_X____ 0xd0
+#define XX_X___X 0xd1
+#define XX_X__X_ 0xd2
+#define XX_X__XX 0xd3
+#define XX_X_X__ 0xd4
+#define XX_X_X_X 0xd5
+#define XX_X_XX_ 0xd6
+#define XX_X_XXX 0xd7
+#define XX_XX___ 0xd8
+#define XX_XX__X 0xd9
+#define XX_XX_X_ 0xda
+#define XX_XX_XX 0xdb
+#define XX_XXX__ 0xdc
+#define XX_XXX_X 0xdd
+#define XX_XXXX_ 0xde
+#define XX_XXXXX 0xdf
+#define XXX_____ 0xe0
+#define XXX____X 0xe1
+#define XXX___X_ 0xe2
+#define XXX___XX 0xe3
+#define XXX__X__ 0xe4
+#define XXX__X_X 0xe5
+#define XXX__XX_ 0xe6
+#define XXX__XXX 0xe7
+#define XXX_X___ 0xe8
+#define XXX_X__X 0xe9
+#define XXX_X_X_ 0xea
+#define XXX_X_XX 0xeb
+#define XXX_XX__ 0xec
+#define XXX_XX_X 0xed
+#define XXX_XXX_ 0xee
+#define XXX_XXXX 0xef
+#define XXXX____ 0xf0
+#define XXXX___X 0xf1
+#define XXXX__X_ 0xf2
+#define XXXX__XX 0xf3
+#define XXXX_X__ 0xf4
+#define XXXX_X_X 0xf5
+#define XXXX_XX_ 0xf6
+#define XXXX_XXX 0xf7
+#define XXXXX___ 0xf8
+#define XXXXX__X 0xf9
+#define XXXXX_X_ 0xfa
+#define XXXXX_XX 0xfb
+#define XXXXXX__ 0xfc
+#define XXXXXX_X 0xfd
+#define XXXXXXX_ 0xfe
+#define XXXXXXXX 0xff
+
+ /**************************************************************
+ *
+ * Compatibility with older versions
+ *
+ ***************************************************************
+ */
+
+#define GUI_DispString_UC GUI_UC_DispString
+#define TOUCH_X_ActivateX GUI_TOUCH_X_ActivateX
+#define TOUCH_X_ActivateY GUI_TOUCH_X_ActivateY
+#define TOUCH_X_Disable GUI_TOUCH_X_Disable
+#define TOUCH_X_MeasureX GUI_TOUCH_X_MeasureX
+#define TOUCH_X_MeasureY GUI_TOUCH_X_MeasureY
+#define GUI_SelLayer GUI_SelectLayer
+#if defined(__cplusplus)
+}
+#endif
+
+#endif /* ifdef GUI_H */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI2DLib.c b/User/lib/lcd/gui/Core/GUI2DLib.c
new file mode 100644
index 0000000..5f24e38
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI2DLib.c
@@ -0,0 +1,689 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI2DLib.C
+Purpose : Main part of the 2D graphics library
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* defines
+*
+**********************************************************************
+*/
+
+#define ABS(v) ((v>0) ? v : -v)
+
+/*********************************************************************
+*
+* static code, helper functions
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _SwapInt
+*/
+static void _SwapInt(int* pa, int* pb) {
+ int t;
+ t = *pa;
+ *pa = *pb;
+ *pb = t;
+}
+
+/*********************************************************************
+*
+* Abs
+*/
+static int Abs(int v) {
+ return ABS(v);
+}
+
+/*********************************************************************
+*
+* trigonometric functions
+*
+* NOTE:
+* All trigonometric functions are for internal usage only and
+* use the following conventions:
+*
+* Angles: 4096 <==> 360
+*
+**********************************************************************
+*/
+
+#if GUI_45DEG != 512
+ #error Wrong define for this library !
+#endif
+
+/*********************************************************************
+*
+* sin / cos (internal)
+*
+* Angle : 90/1024
+* Data : 1/1024
+*/
+static const U16 aSin[] = {
+ 0, /* 1/16 *90 */
+ 100, /* 1/16 *90 */
+ 200, /* 2/16 *90 */
+ 297, /* 3/16 *90 */
+ 392, /* 4/16 *90 */
+ 483, /* 5/16 *90 */
+ 569, /* 6/16 *90 */
+ 650, /* 7/16 *90 */
+ 724, /* 8/16 *90 */
+ 792, /* 9/16 *90 */
+ 851, /* 10/16 *90 */
+ 903, /* 11/16 *90 */
+ 946, /* 12/16 *90 */
+ 980, /* 13/16 *90 */
+ 1004, /* 14/16 *90 */
+ 1019, /* 15/16 *90 */
+ 1024 /* 16/16 *90 */
+};
+
+/*********************************************************************
+*
+* GUI_sin
+*/
+int GUI_sin(int angle) {
+ char IsNeg =0;
+ int i;
+ U16 Faktor;
+ U32 t;
+ angle &= ((1<<12)-1); /* reduce to 0-360 degrees */
+ if (angle> 2* GUI_90DEG) {
+ angle -= 2* GUI_90DEG;
+ IsNeg =1;
+ }
+ if (angle> GUI_90DEG) { /* between 90-180 */
+ angle = 2*GUI_90DEG-angle; /* use sine symetry */
+ }
+ /* Now angle is reduced to 0 <= <= 90 */
+#if 0
+ angle >>=2; /* make sure we do not exceed 16 bits in calculations */
+ i = angle>>4;
+ Faktor = (1<<4)-(angle&((1<<4)-1));
+ r = aSin[i]*Faktor;
+ if (Faktor !=(1<<4)) {
+ r += aSin[i+1]*((1<<4)-Faktor);
+ }
+ r = (r+(1<<3)) >>4; /* divide,incl. rounding */
+#else
+ i = angle>>6;
+ {
+ Faktor = (U16)((1<<6)-(angle&((1<<6)-1)));
+ t = aSin[i]*(U32)Faktor;
+ if (Faktor !=(1<<6)) {
+ t += aSin[i+1]*((1<<6)-Faktor);
+ }
+ }
+ t = (t+(1<<5)) >>6; /* divide,incl. rounding */
+#endif
+ return (IsNeg) ? 0-t : t;
+}
+
+/*********************************************************************
+*
+* GUI_cos
+*/
+int GUI_cos(int angle) {
+ return GUI_sin(angle+GUI_90DEG);
+}
+
+/*********************************************************************
+*
+* atan() (internal)
+*
+* Angle : 360/4096
+*/
+const I16 aTan[] = {
+ 0, /* atan(0/16) */
+ 41, /* atan(1/16) */
+ 81, /* atan(2/16) */
+ 121, /* atan(3/16) */
+ 160, /* atan(4/16) */
+ 197, /* atan(5/16) */
+ 234, /* atan(6/16) */
+ 269, /* atan(7/16) */
+ 302, /* atan(8/16) */
+ 334, /* atan(9/16) */
+ 364, /* atan(10/16) */
+ 393, /* atan(11/16) */
+ 419, /* atan(12/16) */
+ 445, /* atan(13/16) */
+ 469, /* atan(14/16) */
+ 491, /* atan(15/16) */
+ 512 /* atan(1) = 45 = 512/1024 */
+};
+
+/*********************************************************************
+*
+* _atan0_45
+*
+* Calculate arctan of q, where q is any where between 0 and 1024
+*/
+static int _atan0_45(int q) {
+ int r;
+ int i, Faktor;
+ /* Now angle is reduced to 0 <= <= 90 ==> 0 <= <= 256*/
+ q >>=2; /* make sure we do not exceed 16 bits in calculations */
+ i = q>>4;
+ Faktor = (1<<4)-(q&((1<<4)-1));
+ r = aTan[i]*Faktor;
+ if (Faktor !=(1<<4)) {
+ r += aTan[i+1]*((1<<4)-Faktor);
+ }
+ r = (r+(1<<3))/(1<<4); /* divide incl. rounding */
+ return r;
+}
+
+/*********************************************************************
+*
+* _atan2
+*/
+static int _atan2(I32 x, I32 y) {
+ U8 q =0;
+ int angle;
+/* first make sure we are in angle between 0 and 45 */
+ if (x<0) {
+ q=1;
+ x=-x;
+ }
+ if (y<0) {
+ q |= (1<<1);
+ y=-y;
+ }
+ if (y>x) {
+ int t = y;
+ y=x;
+ x=t;
+ q |= (1<<2);
+ }
+ y <<=10;
+ y += (x/2);
+ y /= x;
+ angle = _atan0_45(y);
+ if (q&(1<<2)) { /* y/x reverse ? */
+ angle = GUI_90DEG-angle;
+ }
+ if (q&1) { /* xreverse ? */
+ angle = GUI_180DEG-angle;
+ }
+ if (q&(1<<1)) { /* y-reverse ? */
+ angle = GUI_360DEG-angle;
+ }
+ return angle;
+}
+
+/*********************************************************************
+*
+* _SetLineColor
+*/
+static int _SetLineColor(int i) {
+ switch (GUI_Context.LineStyle) {
+ case GUI_LS_DASH:
+ i = (i+6)%16;
+ return (i<12);
+ case GUI_LS_DOT:
+ i %= 4;
+ return (i<2);
+ case GUI_LS_DASHDOT:
+ i %= 20;
+ if (i<12)
+ return 1;
+ else if ((i>=16) && (i<18))
+ return 1;
+ return 0;
+ case GUI_LS_DASHDOTDOT:
+ i %= 24;
+ if (i<12)
+ return 1;
+ else if ((i>=16) && (i<18))
+ return 1;
+ else if ((i>=20) && (i<22))
+ return 1;
+ else
+ return 0;
+ }
+ return 0;
+}
+
+/*********************************************************************
+*
+* _atan2
+*/
+#if 0
+int _atan2(int xDiff, int yDiff) {
+ double atanf = atan2(xDiff, yDiff);
+ return (int)(atanf*(16384.0/6.2831852));
+}
+#endif
+
+/*********************************************************************
+*
+* _CalcOrto
+*/
+static void _CalcOrto(int xDiff, int yDiff, I32 r, int*px, int*py) {
+ I32 x,y;
+/*
+ int Angle = _atan2(xDiff, yDiff);
+*/
+#if 0
+ double Angle = atan2(xDiff, yDiff);
+ x = (int)(-r*cos(Angle));
+ y = (int)(r*sin(Angle));
+#else
+ int Angle = _atan2(xDiff, yDiff);
+ Angle+= GUI_90DEG;
+ x = ( r*(I32)GUI_cos(Angle));
+ y = ( r*(I32)GUI_sin(Angle));
+#endif
+ x = (x<0) ? -((-x+512)>>10) : ((x+512)>>10);
+ y = (y<0) ? -((-y+512)>>10) : ((y+512)>>10);
+ *px = x;
+ *py = y;
+}
+
+/*********************************************************************
+*
+* DrawLine, public
+*
+* Draw end points of the line.
+* In most cases, this is a circle.
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawLineEnd
+*/
+static void _DrawLineEnd(int x0, int y0) {
+ switch (GUI_Context.PenShape) {
+ case GUI_PS_ROUND:
+ GL_DrawPoint(x0,y0);
+ break;
+ case GUI_PS_FLAT:
+ break;
+ }
+}
+
+/*********************************************************************
+*
+* DrawLine, public
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_DrawLine
+*/
+void GL_DrawLine(int x0, int y0, int x1, int y1) {
+ if (GUI_Context.PenSize ==1) {
+ GL_DrawLine1(x0,y0,x1,y1);
+ } else {
+ int xdiff, ydiff;
+ xdiff = x0-x1;
+ ydiff = y0-y1;
+ if (xdiff | ydiff) {
+ GUI_POINT Poly[4];
+ int xOff, yOff;
+ int xOffP, yOffP, xOffM, yOffM;
+ _CalcOrto(x0-x1,y0-y1, (I32)(GUI_Context.PenSize-1), &xOff, &yOff);
+ /* Do rounding for offsets */
+ if (xOff >0) {
+ xOffP = (xOff+1)/2;
+ xOffM = xOff /2;
+ } else {
+ xOffP = xOff/2;
+ xOffM = (xOff-1) /2;
+ }
+ if (yOff >0) {
+ yOffP = (yOff+1)/2;
+ yOffM = yOff /2;
+ } else {
+ yOffP = yOff/2;
+ yOffM = (yOff-1) /2;
+ }
+ Poly[0].x = x0+xOffP;
+ Poly[0].y = y0+yOffP;
+ Poly[1].x = x0-xOffM;
+ Poly[1].y = y0-yOffM;
+ Poly[2].x = x1-xOffM;
+ Poly[2].y = y1-yOffM;
+ Poly[3].x = x1+xOffP;
+ Poly[3].y = y1+yOffP;
+ GL_FillPolygon(&Poly[0], 4, 0,0);
+ _DrawLineEnd(x0,y0);
+ _DrawLineEnd(x1,y1);
+ }
+ }
+}
+
+/*********************************************************************
+*
+* GUI_DrawLine
+*/
+void GUI_DrawLine(int x0, int y0, int x1, int y1) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ WM_ADDORG(x1,y1);
+ WM_ITERATE_START(NULL); {
+ #endif
+ GL_DrawLine (x0, y0, x1, y1);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GL_DrawPolygon
+*/
+void GL_DrawPolygon(const GUI_POINT*pPoints, int NumPoints, int x0, int y0) {
+ const GUI_POINT* pPoint = pPoints;
+ GL_MoveTo(pPoint->x+x0, pPoint->y+y0);
+ while (--NumPoints >0) {
+ pPoint++;
+ GL_DrawLineTo(pPoint->x+x0, pPoint->y+y0);
+ }
+ /* Now draw closing line unless it has already been closed */
+ if ( (pPoint->x != pPoints->x)
+ ||(pPoint->y != pPoints->y))
+ {
+ GL_DrawLineTo(pPoints->x+x0, pPoints->y+y0);
+ }
+}
+
+/*********************************************************************
+*
+* GUI_DrawPolygon
+*/
+void GUI_DrawPolygon(const GUI_POINT* pPoints, int NumPoints, int x0, int y0) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ WM_ITERATE_START(NULL); {
+ #endif
+ GL_DrawPolygon (pPoints, NumPoints, x0, y0);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* Draw Line to group
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_DrawLineRelNM
+*/
+static void GL_DrawLineRelNM(int dx, int dy) {
+ GL_DrawLine (GUI_Context.DrawPosX, GUI_Context.DrawPosY,
+ GUI_Context.DrawPosX+dx, GUI_Context.DrawPosY+dy);
+}
+
+/*********************************************************************
+*
+* GUI_DrawLineRel
+*/
+void GUI_DrawLineRel(int dx, int dy) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ITERATE_START(NULL); {
+ #endif
+ GL_DrawLineRelNM(dx,dy);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_MoveRel(dx,dy);
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GL_DrawLineTo
+*/
+void GL_DrawLineTo(int x, int y) {
+ GL_DrawLine (GUI_Context.DrawPosX, GUI_Context.DrawPosY, x, y);
+ GUI_Context.DrawPosX = x;
+ GUI_Context.DrawPosY = y;
+}
+
+/*********************************************************************
+*
+* GL_DrawLineToNM
+*/
+static void GL_DrawLineToNM(int x, int y) {
+ GL_DrawLine (GUI_Context.DrawPosX, GUI_Context.DrawPosY, x, y);
+}
+
+/*********************************************************************
+*
+* GUI_DrawLineTo
+*/
+void GUI_DrawLineTo(int x, int y) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x,y);
+ WM_ITERATE_START(NULL); {
+ #endif
+ GL_DrawLineToNM(x,y);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GL_MoveTo(x,y);
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_MoveRel
+*/
+void GUI_MoveRel(int dx, int dy) { /*tbd: GL_LinePos. */
+ GUI_LOCK();
+ GUI_Context.DrawPosX += dx;
+ GUI_Context.DrawPosY += dy;
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GL_MoveTo
+*/
+void GL_MoveTo(int x, int y) {
+ GUI_Context.DrawPosX = x;
+ GUI_Context.DrawPosY = y;
+}
+
+/*********************************************************************
+*
+* GUI_MoveTo
+*/
+void GUI_MoveTo(int x, int y) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x,y);
+ #endif
+ GL_MoveTo(x,y);
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* Rectangle filling / inverting
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawRect
+*/
+static void _DrawRect(int x0, int y0, int x1, int y1) {
+ LCD_DrawHLine(x0, y0, x1);
+ LCD_DrawHLine(x0, y1, x1);
+ LCD_DrawVLine(x0, y0 + 1, y1 - 1);
+ LCD_DrawVLine(x1, y0 + 1, y1 - 1);
+}
+
+/*********************************************************************
+*
+* GUI_DrawRect
+*/
+void GUI_DrawRect(int x0, int y0, int x1, int y1) {
+ #if (GUI_WINSUPPORT)
+ int Off;
+ GUI_RECT r;
+ #endif
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ Off = GUI_Context.PenSize -1;
+ WM_ADDORG(x0,y0);
+ WM_ADDORG(x1,y1);
+ r.x0 = x0 - Off;
+ r.x1 = x1 + Off;
+ r.y0 = y0 - Off;
+ r.y1 = y1 + Off;
+ WM_ITERATE_START(&r); {
+ #endif
+ _DrawRect(x0, y0, x1, y1);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* DrawLine, internal, 1 pixel
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_DrawLine1
+*/
+void GL_DrawLine1(int x0, int y0, int x1, int y1) {
+ int xdiff = x1-x0;
+ int ydiff = y1-y0;
+ int xdiffby2;
+ int i;
+ char Swapped =0;
+/* check if no line */
+ if (!(xdiff|ydiff)) {
+ GL_DrawPoint(x0,y0);
+ return;
+ }
+#if 0
+/* check if horizontal line */
+ if (!xdiff) {
+ GL_DrawVLine(x0,y0,y1);
+ return;
+ }
+/* check if vertical line */
+ if (!ydiff) {
+ GL_DrawHLine(y0,x0,x1);
+ return;
+ }
+#endif
+/* check if we swap x and y for calculation */
+ if (Abs(xdiff) < Abs(ydiff)) {
+ _SwapInt(&xdiff,&ydiff);
+ _SwapInt(&x0,&y0);
+ _SwapInt(&x1,&y1);
+ Swapped =1;
+ }
+/* make sure line direction is positive */
+ if (xdiff!=Abs(xdiff)) {
+ xdiff = -xdiff;
+ ydiff = -ydiff;
+ _SwapInt(&x0,&x1);
+ _SwapInt(&y0,&y1);
+ }
+ xdiffby2 = xdiff/2;
+ if (ydiff<0)
+ xdiffby2 = -xdiffby2;
+/* Draw pixel by pixel solid*/
+ if (GUI_Context.LineStyle == GUI_LS_SOLID) {
+ for (i=0; i<=xdiff; i++) {
+ I32 l = ((I32)ydiff)*i+xdiffby2;
+ int y = (ABS(l)<32767) ? (y0 + ((int)l)/xdiff) : (y0 + l/xdiff);
+ if (!Swapped)
+ LCD_HL_DrawPixel(x0+i, y);
+ else
+ LCD_HL_DrawPixel(y, x0+i);
+ }
+/* Draw pixel by pixel with fill style */
+ } else {
+ for (i=0; i<=xdiff; i++) {
+ long l = ((long)ydiff)*i+xdiffby2;
+ int y = (ABS(l)<32767) ? (y0 + ((int)l)/xdiff) : (y0 + l/xdiff);
+ if (!_SetLineColor(i)) {
+ if (!Swapped)
+ LCD_HL_DrawPixel(x0+i, y);
+ else
+ LCD_HL_DrawPixel(y, x0+i);
+ }
+ }
+ }
+}
+
+/*********************************************************************
+*
+* Draw point
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_DrawPoint
+*/
+void GL_DrawPoint(int x, int y) {
+ if (GUI_Context.PenSize == 1) {
+ LCD_HL_DrawPixel(x, y);
+ } else {
+ GL_FillCircle(x, y, (GUI_Context.PenSize - 1) / 2);
+ }
+}
+
+/*********************************************************************
+*
+* GUI_DrawPoint
+*/
+void GUI_DrawPoint(int x, int y) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x, y);
+ WM_ITERATE_START(NULL); {
+ #endif
+ GL_DrawPoint(x, y);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIAlloc.c b/User/lib/lcd/gui/Core/GUIAlloc.c
new file mode 100644
index 0000000..b28b498
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIAlloc.c
@@ -0,0 +1,548 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIAlloc.C
+Purpose : Dynamic memory management
+----------------------------------------------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include /* for memcpy, memset */
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Internal memory management
+*
+**********************************************************************
+*/
+
+#ifndef GUI_ALLOC_ALLOC
+
+#if GUI_ALLOC_SIZE==0
+ #error GUI_ALLOC_SIZE needs to be > 0 when using this module
+#endif
+
+/*********************************************************************
+*
+* Defines, config defaults
+*
+**********************************************************************
+*/
+
+/* Permit automatic defragmentation when necessary */
+#ifndef GUI_ALLOC_AUTDEFRAG
+ #define GUI_ALLOC_AUTDEFRAG 1
+#endif
+
+#ifndef GUI_BLOCK_ALIGN /* 2 means 4 bytes, 1 means 2 bytes */
+ #define GUI_BLOCK_ALIGN 2 /* 1 can be used on 16-bit CPUs and CPUs */
+#endif /* which do not require aligned 32-bit */
+ /* values (such as x86) */
+
+#ifndef GUI_MAXBLOCKS
+ #define GUI_MAXBLOCKS (2 + GUI_ALLOC_SIZE / 32)
+#endif
+
+#ifndef GUI_ALLOC_LOCATION
+ #define GUI_ALLOC_LOCATION
+#endif
+
+#ifndef GUI_MEM_ALLOC /* Allows us in some systems to place the GUI memory */
+ #define GUI_MEM_ALLOC /* in a different memory space ... eg "__far" */
+#endif
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define Min(v0,v1) ((v0>v1) ? v1 : v0)
+#define Max(v0,v1) ((v0>v1) ? v0 : v1)
+#define ASSIGN_IF_LESS(v0,v1) if (v1= 256
+ #define HANDLE U16
+#else
+ #define HANDLE U8
+#endif
+
+/*********************************************************************
+*
+* Types
+*
+**********************************************************************
+*/
+
+typedef union {
+ int aintHeap[GUI_ALLOC_SIZE / 4]; /* required for proper alignement */
+ U8 abHeap[GUI_ALLOC_SIZE];
+} GUI_HEAP;
+
+typedef struct {
+ GUI_ALLOC_DATATYPE Off; /* Offset of memory area */
+ GUI_ALLOC_DATATYPE Size; /* usable size of allocated block */
+ HANDLE Next; /* next handle in linked list */
+ HANDLE Prev;
+} tBlock;
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+GUI_MEM_ALLOC GUI_HEAP GUI_Heap GUI_ALLOC_LOCATION; /* Public for debugging only */
+
+static tBlock aBlock[GUI_MAXBLOCKS];
+
+struct {
+ int NumUsedBlocks, NumFreeBlocks, NumFreeBlocksMin; /* For statistical purposes only */
+ GUI_ALLOC_DATATYPE NumUsedBytes, NumFreeBytes, NumFreeBytesMin;
+} GUI_ALLOC;
+
+static char IsInitialized =0;
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _Size2LegalSize
+*
+* Return value:
+* Legal allocation size
+*/
+static GUI_ALLOC_DATATYPE _Size2LegalSize(GUI_ALLOC_DATATYPE size) {
+ return (size + ((1 << GUI_BLOCK_ALIGN) - 1)) & ~((1 << GUI_BLOCK_ALIGN) - 1);
+}
+
+/*********************************************************************
+*
+* _GetSize
+*/
+static GUI_ALLOC_DATATYPE _GetSize(GUI_HMEM hMem) {
+ return aBlock[hMem].Size;
+}
+
+/*********************************************************************
+*
+* _Free
+*/
+static void _Free(GUI_HMEM hMem) {
+ GUI_ALLOC_DATATYPE Size;
+ GUI_DEBUG_LOG1("\nGUI_ALLOC_Free(%d)", hMem);
+ /* Do some error checking ... */
+ #if GUI_DEBUG_LEVEL>0
+ /* Block not allocated ? */
+ if (aBlock[hMem].Size == 0) {
+ GUI_DEBUG_ERROROUT("GUI_ALLOC_Free(): Invalid hMem");
+ return;
+ }
+ #endif
+ Size = aBlock[hMem].Size;
+ #ifdef WIN32
+ GUI_MEMSET(&GUI_Heap.abHeap[aBlock[hMem].Off], 0xcc, Size);
+ #endif
+ GUI_ALLOC.NumFreeBytes += Size;
+ GUI_ALLOC.NumUsedBytes -= Size;
+ aBlock[hMem].Size = 0;
+ {
+ int Next = aBlock[hMem].Next;
+ int Prev = aBlock[hMem].Prev;
+ aBlock[Prev].Next = Next;
+ if (Next) {
+ aBlock[Next].Prev = Prev;
+ }
+ }
+ GUI_ALLOC.NumFreeBlocks++;
+ GUI_ALLOC.NumUsedBlocks--;
+}
+
+/*********************************************************************
+*
+* _FindFreeHandle
+*
+* Return value:
+* Free handle
+*/
+static GUI_HMEM _FindFreeHandle(void) {
+ int i;
+ for (i=1; i< GUI_MAXBLOCKS; i++) {
+ if (aBlock[i].Size ==0)
+ return i;
+ }
+ GUI_DEBUG_ERROROUT1("Insufficient memory handles configured (GUI_MAXBLOCKS == %d (See GUIConf.h))", GUI_MAXBLOCKS);
+ return GUI_HMEM_NULL;
+}
+
+/*********************************************************************
+*
+* _FindHole
+*
+* Return value:
+* Offset to the memory hole (if available)
+* -1 if not available
+*/
+static GUI_HMEM _FindHole(GUI_ALLOC_DATATYPE Size) {
+ int i, iNext;
+ for (i=0; (iNext = aBlock[i].Next) != 0; i = iNext) {
+ int NumFreeBytes = aBlock[iNext].Off- (aBlock[i].Off+aBlock[i].Size);
+ if (NumFreeBytes>=Size) {
+ return i;
+ }
+ }
+ /* Check last block */
+ if (GUI_ALLOC_SIZE - (aBlock[i].Off+aBlock[i].Size) >= Size) {
+ return i;
+ }
+ return -1;
+}
+
+/*********************************************************************
+*
+* _CreateHole
+*
+* Return value:
+* Offset to the memory hole (if available)
+* -1 if not available
+*/
+static GUI_HMEM _CreateHole(GUI_ALLOC_DATATYPE Size) {
+ int i, iNext;
+ int r = -1;
+ for (i=0; (iNext =aBlock[i].Next) !=0; i= iNext) {
+ GUI_ALLOC_DATATYPE NumFreeBytes = aBlock[iNext].Off- (aBlock[i].Off+aBlock[i].Size);
+ if (NumFreeBytes < Size) {
+ GUI_ALLOC_DATATYPE NumBytesBeforeBlock = aBlock[iNext].Off - (aBlock[i].Off+aBlock[i].Size);
+ if (NumBytesBeforeBlock) {
+ U8* pData = &GUI_Heap.abHeap[aBlock[iNext].Off];
+ memmove(pData-NumBytesBeforeBlock, pData, aBlock[iNext].Size);
+ aBlock[iNext].Off -=NumBytesBeforeBlock;
+ }
+ }
+ }
+ /* Check last block */
+ if (GUI_ALLOC_SIZE - (aBlock[i].Off+aBlock[i].Size) >= Size) {
+ r = i;
+ }
+ return r;
+}
+
+/*********************************************************************
+*
+* _CheckInit
+*/
+static void _CheckInit(void) {
+ if (!IsInitialized) {
+ GUI_ALLOC_Init();
+ }
+}
+
+/*********************************************************************
+*
+* _Alloc
+*/
+static GUI_HMEM _Alloc(GUI_ALLOC_DATATYPE size) {
+ GUI_HMEM hMemNew, hMemIns;
+ _CheckInit();
+ size = _Size2LegalSize(size);
+ /* Check if memory is available at all ...*/
+ if (size > GUI_ALLOC.NumFreeBytes) {
+ GUI_DEBUG_WARN1("GUI_ALLOC_Alloc: Insufficient memory configured (Trying to alloc % bytes)", size);
+ return 0;
+ }
+ /* Locate free handle */
+ if ((hMemNew = _FindFreeHandle()) == 0)
+ return 0;
+ /* Locate or Create hole of sufficient size */
+ hMemIns = _FindHole(size);
+ #if GUI_ALLOC_AUTDEFRAG
+ if (hMemIns == -1) {
+ hMemIns = _CreateHole(size);
+ }
+ #endif
+ /* Occupy hole */
+ if (hMemIns==-1) {
+ GUI_DEBUG_ERROROUT1("GUI_ALLOC_Alloc: Could not allocate %d bytes",size);
+ return 0;
+ }
+ {
+ GUI_ALLOC_DATATYPE Off = aBlock[hMemIns].Off + aBlock[hMemIns].Size;
+ int Next = aBlock[hMemIns].Next;
+ aBlock[hMemNew].Size = size;
+ aBlock[hMemNew].Off = Off;
+ if ((aBlock[hMemNew].Next = Next) >0) {
+ aBlock[Next].Prev = hMemNew;
+ }
+ aBlock[hMemNew].Prev = hMemIns;
+ aBlock[hMemIns].Next = hMemNew;
+ }
+ /* Keep track of number of blocks and av. memory */
+ GUI_ALLOC.NumUsedBlocks++;
+ GUI_ALLOC.NumFreeBlocks--;
+ if (GUI_ALLOC.NumFreeBlocksMin > GUI_ALLOC.NumFreeBlocks) {
+ GUI_ALLOC.NumFreeBlocksMin = GUI_ALLOC.NumFreeBlocks;
+ }
+ GUI_ALLOC.NumUsedBytes += size;
+ GUI_ALLOC.NumFreeBytes -= size;
+ if (GUI_ALLOC.NumFreeBytesMin > GUI_ALLOC.NumFreeBytes) {
+ GUI_ALLOC.NumFreeBytesMin = GUI_ALLOC.NumFreeBytes;
+ }
+ return hMemNew;
+}
+
+/*********************************************************************
+*
+* Exported routines
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_ALLOC_Init
+*/
+void GUI_ALLOC_Init(void) {
+ GUI_DEBUG_LOG("\nGUI_ALLOC_Init...");
+ GUI_ALLOC.NumFreeBlocksMin = GUI_ALLOC.NumFreeBlocks = GUI_MAXBLOCKS-1;
+ GUI_ALLOC.NumFreeBytesMin = GUI_ALLOC.NumFreeBytes = GUI_ALLOC_SIZE;
+ GUI_ALLOC.NumUsedBlocks = 0;
+ GUI_ALLOC.NumUsedBytes = 0;
+ aBlock[0].Size = (1< 0
+ if (!hMem) {
+ GUI_DEBUG_ERROROUT("\n"__FILE__ " GUI_ALLOC_h2p: illegal argument (0 handle)");
+ return 0;
+ }
+ if (aBlock[hMem].Size == 0) {
+ GUI_DEBUG_ERROROUT("Dereferencing free block");
+ }
+
+ #endif
+ return HMEM2PTR(hMem);
+}
+
+/*********************************************************************
+*
+* GUI_ALLOC_GetNumFreeBytes
+*/
+GUI_ALLOC_DATATYPE GUI_ALLOC_GetNumFreeBytes(void) {
+ _CheckInit();
+ return GUI_ALLOC.NumFreeBytes;
+}
+
+/*********************************************************************
+*
+* GUI_ALLOC_GetMaxSize
+*
+* Purpose:
+* Returns the biggest available blocksize (without relocation).
+*/
+GUI_ALLOC_DATATYPE GUI_ALLOC_GetMaxSize(void) {
+ GUI_ALLOC_DATATYPE r = 0;
+ GUI_ALLOC_DATATYPE NumFreeBytes;
+ int i, iNext;
+
+ GUI_LOCK();
+ _CheckInit();
+ for (i=0; (iNext =aBlock[i].Next) !=0; i= iNext) {
+ NumFreeBytes = aBlock[iNext].Off- (aBlock[i].Off+aBlock[i].Size);
+ if (NumFreeBytes > r) {
+ r = NumFreeBytes;
+ }
+ }
+ /* Check last block */
+ NumFreeBytes = (GUI_ALLOC_SIZE - (aBlock[i].Off+aBlock[i].Size));
+ if (NumFreeBytes > r) {
+ r = NumFreeBytes;
+ }
+ GUI_UNLOCK();
+ return r;
+}
+
+#else
+
+/*********************************************************************
+*
+* External memory management functions
+*
+* The functions below will generate code only if the GUI memory
+* management is not used (GUI_ALLOC_ALLOC defined).
+*
+* Note:
+* The memory block allocated is bigger than the requested one, as we
+* store some add. information (size of the memory block) there.
+*
+**********************************************************************
+*/
+
+typedef struct {
+ union {
+ GUI_ALLOC_DATATYPE Size;
+ int Dummy; /* Needed to guarantee alignment on 32 / 64 bit CPUs */
+ } Info; /* Unnamed would be best, but is not supported by all compilers */
+} INFO;
+
+/*********************************************************************
+*
+* _GetSize
+*/
+static GUI_ALLOC_DATATYPE _GetSize(GUI_HMEM hMem) {
+ INFO * pInfo;
+ pInfo = (INFO *)GUI_ALLOC_H2P(hMem);
+ return pInfo->Info.Size;
+}
+
+/*********************************************************************
+*
+* _Free
+*/
+static void _Free(GUI_HMEM hMem) {
+ GUI_ALLOC_FREE(hMem);
+}
+
+/*********************************************************************
+*
+* GUI_ALLOC_AllocNoInit
+*/
+GUI_HMEM GUI_ALLOC_AllocNoInit(GUI_ALLOC_DATATYPE Size) {
+ GUI_HMEM hMem;
+ if (Size == 0) {
+ return (GUI_HMEM)0;
+ }
+ hMem= GUI_ALLOC_ALLOC(Size + sizeof(INFO));
+ /* Init info structure */
+ if (hMem) {
+ INFO * pInfo;
+ pInfo = (INFO *)GUI_ALLOC_H2P(hMem);
+ pInfo->Info.Size = Size;
+ }
+ return hMem;
+}
+
+/*********************************************************************
+*
+* GUI_ALLOC_h2p
+*/
+void* GUI_ALLOC_h2p(GUI_HMEM hMem) {
+ U8* p = (U8*)GUI_ALLOC_H2P(hMem); /* Pointer to memory block from memory manager */
+ p += sizeof(INFO); /* Convert to pointer to usable area */
+ return p;
+}
+
+/*********************************************************************
+*
+* GUI_ALLOC_GetMaxSize
+*/
+GUI_ALLOC_DATATYPE GUI_ALLOC_GetMaxSize(void) {
+ return GUI_ALLOC_GETMAXSIZE();
+}
+
+/*********************************************************************
+*
+* GUI_ALLOC_Init
+*/
+void GUI_ALLOC_Init(void) {
+ #ifdef GUI_ALLOC_INIT
+ GUI_ALLOC_INIT();
+ #endif
+}
+
+#endif
+
+/*********************************************************************
+*
+* Public code, common memory management functions
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_ALLOC_GetSize
+*/
+GUI_ALLOC_DATATYPE GUI_ALLOC_GetSize(GUI_HMEM hMem) {
+ /* Do the error checking first */
+ #if GUI_DEBUG_LEVEL>0
+ if (!hMem) {
+ GUI_DEBUG_ERROROUT("\n"__FILE__ " GUI_ALLOC_h2p: illegal argument (0 handle)");
+ return 0;
+ }
+ #endif
+ return _GetSize(hMem);
+}
+
+/*********************************************************************
+*
+* GUI_ALLOC_Free
+*/
+void GUI_ALLOC_Free(GUI_HMEM hMem) {
+ if (hMem == GUI_HMEM_NULL) { /* Note: This is not an error, it is permitted */
+ return;
+ }
+ GUI_LOCK();
+ GUI_DEBUG_LOG1("\nGUI_ALLOC_Free(%d)", hMem);
+ _Free(hMem);
+ GUI_UNLOCK();
+}
+
+
+/*********************************************************************
+*
+* GUI_ALLOC_FreePtr
+*/
+void GUI_ALLOC_FreePtr(GUI_HMEM *ph) {
+ GUI_LOCK();
+ GUI_ALLOC_Free(*ph);
+ *ph =0;
+ GUI_UNLOCK();
+}
+
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIArc.c b/User/lib/lcd/gui/Core/GUIArc.c
new file mode 100644
index 0000000..4b5fc82
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIArc.c
@@ -0,0 +1,262 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIARCFloat.C
+Purpose : Draw Arc routines based on floating point
+----------------------------------------------------------------------
+Version-Date---Author-Explanation
+----------------------------------------------------------------------
+2.00.00 000325 RS First release of the new algorithm
+----------------------------------------------------------------------
+Known problems or limitations with current version
+----------------------------------------------------------------------
+None.
+----------------------------------------------------------------------
+Open issues
+----------------------------------------------------------------------
+None
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "arm_math.h"
+#include "GUI_Protected.h"
+
+/*********************************************************************
+ *
+ * Static code
+ *
+ **********************************************************************
+ */
+/*********************************************************************
+ *
+ * _CalcX
+ */
+static void _CalcX(int *px, int y, U32 r2)
+{
+ int x = *px;
+ U32 y2 = (U32)y * (U32)y;
+ U32 r2y2 = r2 - y2;
+ U32 x2;
+ if (y2 >= r2)
+ {
+ *px = 0;
+ return;
+ }
+ /* x2 = r2-y2 */
+ do
+ {
+ x++;
+ x2 = (U32)x * (U32)x;
+ } while (x2 < r2y2);
+ *px = x - 1;
+}
+
+/*********************************************************************
+ *
+ * _CalcInterSectLin
+ */
+static float _CalcInterSectLin(float y, float y0, float y1, float x0, float x1)
+{
+ if (y1 == y0)
+ {
+ return y0;
+ }
+ else
+ {
+ float Slope = (x1 - x0) / (y1 - y0);
+ return (y - y0) * Slope + x0;
+ }
+}
+
+/*********************************************************************
+ *
+ * _DrawArc
+ */
+static void _DrawArc(int x0, int y0, int rx, int ry, int Angle0, int Angle1, int xMul, int yMul)
+{
+ float afx[4];
+ float afy[4];
+ float ri = rx - (GUI_Context.PenSize + 1.5) / 2;
+ float ro = rx + (GUI_Context.PenSize + 1.5) / 2;
+ float fAngle0 = Angle0 * 3.1415926 / 180;
+ float fAngle1 = Angle1 * 3.1415926 / 180;
+ float sin0 = arm_sin_f32(fAngle0);
+ float sin1 = arm_sin_f32(fAngle1);
+ float cos0 = arm_cos_f32(fAngle0);
+ float cos1 = arm_cos_f32(fAngle1);
+ U32 ri2 = ri * ri;
+ U32 ro2 = ro * ro;
+ int y, yMax, yMin;
+ afy[0] = ri * sin0;
+ afy[1] = ro * sin0;
+ afy[2] = ri * sin1;
+ afy[3] = ro * sin1;
+ afx[0] = ri * cos0;
+ afx[1] = ro * cos0;
+ afx[2] = ri * cos1;
+ afx[3] = ro * cos1;
+ yMin = ceil(afy[0]);
+ yMax = floor(afy[3]);
+ /* Use Clipping rect to reduce calculation (if possible) */
+ if (GUI_Context.pClipRect_HL)
+ {
+ if (yMul == 1)
+ {
+ if (yMax > (GUI_Context.pClipRect_HL->y1 - y0))
+ yMax = (GUI_Context.pClipRect_HL->y1 - y0);
+ if (yMin < (GUI_Context.pClipRect_HL->y0 - y0))
+ yMin = (GUI_Context.pClipRect_HL->y0 - y0);
+ }
+ if (yMul == -1)
+ {
+ if (yMin > (GUI_Context.pClipRect_HL->y1 - y0))
+ yMin = (GUI_Context.pClipRect_HL->y1 - y0);
+ if (yMax < (GUI_Context.pClipRect_HL->y0 - y0))
+ yMax = (GUI_Context.pClipRect_HL->y0 - y0);
+ }
+ }
+ /* Start drawing lines ... */
+ {
+ int xMinDisp, xMaxDisp, xMin = 0, xMax = 0;
+ for (y = yMax; y >= yMin; y--)
+ {
+ _CalcX(&xMin, y, ri2);
+ _CalcX(&xMax, y, ro2);
+ if ((float)y < afy[1])
+ {
+ xMaxDisp = _CalcInterSectLin(y, afy[0], afy[1], afx[0], afx[1]);
+ }
+ else
+ {
+ xMaxDisp = xMax;
+ }
+ if ((float)y > afy[2])
+ {
+ xMinDisp = _CalcInterSectLin(y, afy[2], afy[3], afx[2], afx[3]);
+ }
+ else
+ {
+ xMinDisp = xMin;
+ }
+ if (xMul > 0)
+ LCD_HL_DrawHLine(xMinDisp + x0, yMul * y + y0, xMaxDisp + x0);
+ else
+ LCD_HL_DrawHLine(-xMaxDisp + x0, yMul * y + y0, -xMinDisp + x0);
+ }
+ }
+#if 0 /* Test code */
+{
+ int i;
+ GUI_SetColor( GUI_WHITE );
+ for (i=0; i<4; i++)
+ LCD_HL_DrawPixel(afx[i]+x0, afy[i]+y0);
+}
+#endif
+ GUI_USE_PARA(ry);
+}
+
+/*********************************************************************
+ *
+ * Public code
+ *
+ **********************************************************************
+ */
+/*********************************************************************
+ *
+ * GL_DrawArc
+ */
+void GL_DrawArc(int x0, int y0, int rx, int ry, int a0, int a1)
+{
+ int aEnd;
+ a0 += 360;
+ a1 += 360;
+ while (a0 >= 360)
+ {
+ a0 -= 360;
+ a1 -= 360;
+ }
+/* Do first quadrant 0-90 degree */
+DoFirst:
+ if (a1 <= 0)
+ return;
+ if (a0 < 90)
+ {
+ if (a0 < 0)
+ a0 = 0;
+ aEnd = (a1 < 90) ? a1 : 90;
+ _DrawArc(x0, y0, rx, ry, a0, aEnd, 1, -1);
+ }
+ a1 -= 90;
+ a0 -= 90;
+ /* Do second quadrant 90-180 degree */
+ if (a1 <= 0)
+ return;
+ if (a0 < 90)
+ {
+ if (a0 < 0)
+ a0 = 0;
+ aEnd = (a1 < 90) ? a1 : 90;
+ _DrawArc(x0, y0, rx, ry, 90 - aEnd, 90 - a0, -1, -1);
+ }
+ a1 -= 90;
+ a0 -= 90;
+ /* Do third quadrant 180-270 degree */
+ if (a1 <= 0)
+ return;
+ if (a0 < 90)
+ {
+ if (a0 < 0)
+ a0 = 0;
+ aEnd = (a1 < 90) ? a1 : 90;
+ _DrawArc(x0, y0, rx, ry, a0, aEnd, -1, 1);
+ }
+ a1 -= 90;
+ a0 -= 90;
+ /* Do last quadrant 270-360 degree */
+ if (a1 <= 0)
+ return;
+ if (a0 < 90)
+ {
+ if (a0 < 0)
+ a0 = 0;
+ aEnd = (a1 < 90) ? a1 : 90;
+ _DrawArc(x0, y0, rx, ry, 90 - aEnd, 90 - a0, 1, 1);
+ }
+ a1 -= 90;
+ a0 -= 90;
+ goto DoFirst;
+}
+
+/*********************************************************************
+ *
+ * GUI_DrawArc
+ */
+void GUI_DrawArc(int x0, int y0, int rx, int ry, int a0, int a1)
+{
+ GUI_LOCK();
+#if (GUI_WINSUPPORT)
+ WM_ADDORG(x0, y0);
+ WM_ITERATE_START(NULL)
+ {
+#endif
+ GL_DrawArc(x0, y0, rx, ry, a0, a1);
+#if (GUI_WINSUPPORT)
+ }
+ WM_ITERATE_END();
+#endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIChar.c b/User/lib/lcd/gui/Core/GUIChar.c
new file mode 100644
index 0000000..f7328e6
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIChar.c
@@ -0,0 +1,113 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIChar.C
+Purpose : Implementation of character and string services
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispNextLine
+*/
+void GUI_DispNextLine(void) {
+ GUI_LOCK();
+ GUI_Context.DispPosY += GUI_GetFontDistY();
+ GUI_Context.DispPosX = GUI_Context.LBorder;
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GL_DispChar
+*/
+void GL_DispChar(U16 c) {
+ /* check for control characters */
+ if (c == '\n') {
+ GUI_DispNextLine();
+ } else {
+ if (c != '\r') {
+ GUI_LOCK();
+ GUI_Context.pAFont->pfDispChar(c);
+ if (GUI_pfDispCharStyle) {
+ GUI_pfDispCharStyle(c);
+ }
+ GUI_UNLOCK();
+ }
+ }
+}
+
+/*********************************************************************
+*
+* GUI_GetYAdjust
+*
+* Returns adjustment in vertical (Y) direction
+*
+* Note: The return value needs to be subtracted from
+* the y-position of the character.
+*/
+int GUI_GetYAdjust(void) {
+ int r = 0;
+ GUI_LOCK();
+ switch (GUI_Context.TextAlign & GUI_TA_VERTICAL) {
+ case GUI_TA_BOTTOM:
+ r = GUI_Context.pAFont->YSize - 1;
+ break;
+ case GUI_TA_VCENTER:
+ r = GUI_Context.pAFont->YSize / 2;
+ break;
+ case GUI_TA_BASELINE:
+ r = GUI_Context.pAFont->YSize / 2;
+ }
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_GetFontDistY
+*/
+int GUI_GetFontDistY(void) {
+ int r;
+ GUI_LOCK();
+// r = GUI_Context.pAFont->YDist;
+ r = GUI_Context.pAFont->YDist * GUI_Context.pAFont->YMag;
+
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_GetCharDistX
+*/
+int GUI_GetCharDistX(U16 c) {
+ int r;
+ GUI_LOCK();
+ r = GUI_Context.pAFont->pfGetCharDistX(c);
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUICharLine.c b/User/lib/lcd/gui/Core/GUICharLine.c
new file mode 100644
index 0000000..7666fda
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUICharLine.c
@@ -0,0 +1,145 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUICharLine.C
+Purpose : Implementation of character and string services
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DispLine
+*/
+static void _DispLine(const char GUI_UNI_PTR *s, int MaxNumChars, const GUI_RECT *pRect) {
+ /* Check if we have anything to do at all ... */
+ if (GUI_Context.pClipRect_HL) {
+ if (GUI_RectsIntersect(GUI_Context.pClipRect_HL, pRect) == 0)
+ return;
+ }
+ #if GUI_COMPILER_SUPPORTS_FP
+ if (GUI_Context.pAFont->pafEncode) {
+ GUI_Context.pAFont->pafEncode->pfDispLine(s, MaxNumChars);
+ } else {
+ #else
+ {
+ #endif
+ U16 Char;
+ while (--MaxNumChars >= 0) {
+ Char = GUI_UC__GetCharCodeInc(&s);
+ GUI_Context.pAFont->pfDispChar(Char);
+ if (GUI_pfDispCharStyle) {
+ GUI_pfDispCharStyle(Char);
+ }
+ }
+ }
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__GetLineNumChars
+*/
+int GUI__GetLineNumChars(const char GUI_UNI_PTR *s, int MaxNumChars) {
+ int NumChars = 0;
+ if (s) {
+ #if GUI_COMPILER_SUPPORTS_FP
+ if (GUI_Context.pAFont->pafEncode) {
+ return GUI_Context.pAFont->pafEncode->pfGetLineLen(s, MaxNumChars);
+ }
+ #endif
+ for (; NumChars < MaxNumChars; NumChars++) {
+ U16 Data = GUI_UC__GetCharCodeInc(&s);
+ if ((Data == 0) || (Data == '\n')) {
+ break;
+ }
+ }
+ }
+ return NumChars;
+}
+
+/*********************************************************************
+*
+* GUI_GetLineDistX
+*
+* This routine is used to calculate the length of a line in pixels.
+*/
+int GUI__GetLineDistX(const char GUI_UNI_PTR *s, int MaxNumChars) {
+ int Dist = 0;
+ if (s) {
+ U16 Char;
+ #if GUI_COMPILER_SUPPORTS_FP
+ if (GUI_Context.pAFont->pafEncode) {
+ return GUI_Context.pAFont->pafEncode->pfGetLineDistX(s, MaxNumChars);
+ }
+ #endif
+ while (--MaxNumChars >= 0) {
+ Char = GUI_UC__GetCharCodeInc(&s);
+ Dist += GUI_GetCharDistX(Char);
+ }
+ }
+ return Dist;
+}
+
+/*********************************************************************
+*
+* GUI__DispLine
+*/
+void GUI__DispLine(const char GUI_UNI_PTR *s, int MaxNumChars, const GUI_RECT* pr) {
+ GUI_RECT r;
+ #if GUI_SUPPORT_ROTATION
+ if (GUI_pLCD_APIList) {
+ #if GUI_WINSUPPORT
+ WM_ITERATE_START(NULL) {
+ #endif
+ /* Do the actual drawing via routine call. */
+ _DispLine(s, MaxNumChars, &r);
+ #if GUI_WINSUPPORT
+ } WM_ITERATE_END();
+ #endif
+ } else
+ #endif
+ {
+ r = *pr;
+ #if GUI_WINSUPPORT
+ WM_ADDORG(r.x0, r.y0);
+ WM_ADDORG(r.x1, r.y1);
+ WM_ITERATE_START(&r) {
+ #endif
+ GUI_Context.DispPosX = r.x0;
+ GUI_Context.DispPosY = r.y0;
+ /* Do the actual drawing via routine call. */
+ _DispLine(s, MaxNumChars, &r);
+ #if GUI_WINSUPPORT
+ } WM_ITERATE_END();
+ WM_SUBORG(GUI_Context.DispPosX, GUI_Context.DispPosY);
+ #endif
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUICharM.c b/User/lib/lcd/gui/Core/GUICharM.c
new file mode 100644
index 0000000..38a04ee
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUICharM.c
@@ -0,0 +1,167 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIChar.C
+Purpose : Implementation of memory devices
+----------------------------------------------------------------------
+Version-Date---Author-Explanation
+----------------------------------------------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIMONO_DispChar
+*
+* Purpose:
+* This is the routine that displays a character. It is used by all
+* other routines which display characters as a subroutine.
+*/
+void GUIMONO_DispChar(U16P c) {
+ int c0, c1;
+ const unsigned char GUI_UNI_PTR * pd;
+ int x = GUI_Context.DispPosX;
+ int y = GUI_Context.DispPosY;
+ /* do some checking if drawing is actually necessary ... */
+ const GUI_FONT_MONO GUI_UNI_PTR * pMono = GUI_Context.pAFont->p.pMono;
+ unsigned int FirstChar = pMono->FirstChar;
+ /* translate character into 2 characters to display : c0,c1 */
+ /* Check if regular character first. */
+ if ((c >= (U16P)FirstChar) &&(c <= (U16P)pMono->LastChar)) {
+ pd = pMono->pData;
+ c0 = ((int)c) - FirstChar;
+ c1 = -1;
+ } else {
+ /* Check if character is in translation table */
+ GUI_FONT_TRANSINFO const GUI_UNI_PTR * pti = pMono->pTrans;
+ pd = pMono->pTransData;
+ if (pti) {
+ FirstChar = pti->FirstChar;
+ if ((c >= (U16P)FirstChar) && (c <= (U16P)pti->LastChar)) {
+ GUI_FONT_TRANSLIST const GUI_UNI_PTR * ptl;
+ c -= pti->FirstChar;
+ ptl = pti->pList;
+ ptl += c;
+ c0 = ptl->c0;
+ c1 = ptl->c1;
+ } else {
+ c0 = c1 = -1;
+ }
+ } else {
+ c0 = c1 = -1;
+ }
+ }
+ /* Draw first character if it is valid */
+ if (c0!=-1) {
+ int BytesPerChar = GUI_Context.pAFont->YSize*pMono->BytesPerLine;
+ GUI_DRAWMODE DrawMode;
+ int XSize = pMono->XSize;
+ int YSize = GUI_Context.pAFont->YSize;
+ /* Select the right drawing mode */
+ DrawMode = GUI_Context.TextMode;
+ /* call drawing routine */
+ {
+ U8 OldMode = LCD_SetDrawMode(DrawMode);
+ LCD_DrawBitmap( x, y,
+ XSize, YSize,
+ GUI_Context.pAFont->XMag, GUI_Context.pAFont->YMag,
+ 1, /* Bits per Pixel */
+ pMono->BytesPerLine,
+ pd + c0* BytesPerChar,
+ &LCD_BKCOLORINDEX
+ );
+ if (c1 != -1) {
+ LCD_SetDrawMode(DrawMode | LCD_DRAWMODE_TRANS);
+ LCD_DrawBitmap( x, y,
+ XSize, YSize,
+ GUI_Context.pAFont->XMag, GUI_Context.pAFont->YMag,
+ 1, /* Bits per Pixel */
+ pMono->BytesPerLine,
+ pd + c1* BytesPerChar,
+ &LCD_BKCOLORINDEX
+ );
+ }
+ /* Fill empty pixel lines */
+ if (GUI_Context.pAFont->YDist > GUI_Context.pAFont->YSize) {
+ if (DrawMode != LCD_DRAWMODE_TRANS) {
+ LCD_SetDrawMode(DrawMode ^ LCD_DRAWMODE_REV); /* Reverse so we can fill with BkColor */
+ LCD_FillRect(x,
+ y + GUI_Context.pAFont->YSize * GUI_Context.pAFont->YDist,
+ x + XSize * GUI_Context.pAFont->XMag,
+ y + GUI_Context.pAFont->YDist);
+ }
+ }
+ LCD_SetDrawMode(OldMode);
+ }
+ }
+//houhh 20061119...
+// GUI_Context.DispPosX+=pMono->XDist;
+ GUI_Context.DispPosX+=pMono->XDist * GUI_Context.pAFont->XMag;
+
+}
+
+/*********************************************************************
+*
+* GUIMONO_GetCharDistX
+*/
+int GUIMONO_GetCharDistX(U16P c) {
+ const GUI_FONT_MONO GUI_UNI_PTR * pMono = GUI_Context.pAFont->p.pMono;
+ GUI_USE_PARA(c);
+// return pMono->XDist;
+//houhh 20061119...
+ return pMono->XDist*GUI_Context.pAFont->XMag;
+
+}
+
+/*********************************************************************
+*
+* GUIMONO_GetFontInfo
+*/
+void GUIMONO_GetFontInfo(const GUI_FONT GUI_UNI_PTR * pFont, GUI_FONTINFO* pfi) {
+ GUI_USE_PARA(pFont);
+ pfi->Flags = GUI_FONTINFO_FLAG_MONO;
+}
+
+/*********************************************************************
+*
+* GUIMONO_IsInFont
+*/
+char GUIMONO_IsInFont(const GUI_FONT GUI_UNI_PTR * pFont, U16 c) {
+ const GUI_FONT_MONO GUI_UNI_PTR * pMono = pFont->p.pMono;
+ unsigned int FirstChar = pMono->FirstChar;
+ /* Check if regular character first. */
+ if ((c >= (U16P)FirstChar) &&(c <= (U16P)pMono->LastChar)) {
+ return 1; /* Yes, we have it ! */
+ } else {
+ /* Check if character is in translation table */
+ GUI_FONT_TRANSINFO const GUI_UNI_PTR * pti;
+ pti = pMono->pTrans;
+ if (pti) {
+ if ((c >= pti->FirstChar) && (c <= pti->LastChar)) {
+ return 1; /* Yes, we have it ! */
+ }
+ }
+ }
+ return 0; /* No, we can not display this character */
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUICharP.c b/User/lib/lcd/gui/Core/GUICharP.c
new file mode 100644
index 0000000..ddd6143
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUICharP.c
@@ -0,0 +1,121 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUICharP.C
+Purpose : Implementation of Proportional fonts
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIPROP_FindChar
+*/
+static const GUI_FONT_PROP GUI_UNI_PTR * GUIPROP_FindChar(const GUI_FONT_PROP GUI_UNI_PTR* pProp, U16P c) {
+ for (; pProp; pProp = pProp->pNext) {
+ if ((c>=pProp->First) && (c<=pProp->Last))
+ break;
+ }
+ return pProp;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIPROP_DispChar
+*
+* Purpose:
+* This is the routine that displays a character. It is used by all
+* other routines which display characters as a subroutine.
+*/
+void GUIPROP_DispChar(U16P c) {
+ int BytesPerLine;
+ GUI_DRAWMODE DrawMode = GUI_Context.TextMode;
+ const GUI_FONT_PROP GUI_UNI_PTR * pProp = GUIPROP_FindChar(GUI_Context.pAFont->p.pProp, c);
+ if (pProp) {
+ GUI_DRAWMODE OldDrawMode;
+ const GUI_CHARINFO GUI_UNI_PTR * pCharInfo = pProp->paCharInfo+(c-pProp->First);
+ BytesPerLine = pCharInfo->BytesPerLine;
+ OldDrawMode = LCD_SetDrawMode(DrawMode);
+ LCD_DrawBitmap( GUI_Context.DispPosX, GUI_Context.DispPosY,
+ pCharInfo->XSize,
+ GUI_Context.pAFont->YSize,
+ GUI_Context.pAFont->XMag,
+ GUI_Context.pAFont->YMag,
+ 1, /* Bits per Pixel */
+ BytesPerLine,
+ pCharInfo->pData,
+ &LCD_BKCOLORINDEX
+ );
+ /* Fill empty pixel lines */
+ if (GUI_Context.pAFont->YDist > GUI_Context.pAFont->YSize) {
+ int YMag = GUI_Context.pAFont->YMag;
+ int YDist = GUI_Context.pAFont->YDist * YMag;
+ int YSize = GUI_Context.pAFont->YSize * YMag;
+ if (DrawMode != LCD_DRAWMODE_TRANS) {
+ LCD_COLOR OldColor = GUI_GetColor();
+ GUI_SetColor(GUI_GetBkColor());
+ LCD_FillRect(GUI_Context.DispPosX,
+ GUI_Context.DispPosY + YSize,
+ GUI_Context.DispPosX + pCharInfo->XSize,
+ GUI_Context.DispPosY + YDist);
+ GUI_SetColor(OldColor);
+ }
+ }
+ LCD_SetDrawMode(OldDrawMode); /* Restore draw mode */
+ GUI_Context.DispPosX += pCharInfo->XDist * GUI_Context.pAFont->XMag;
+ }
+}
+
+/*********************************************************************
+*
+* GUIPROP_GetCharDistX
+*/
+int GUIPROP_GetCharDistX(U16P c) {
+ const GUI_FONT_PROP GUI_UNI_PTR * pProp = GUIPROP_FindChar(GUI_Context.pAFont->p.pProp, c);
+ return (pProp) ? (pProp->paCharInfo+(c-pProp->First))->XSize * GUI_Context.pAFont->XMag : 0;
+}
+
+/*********************************************************************
+*
+* GUIPROP_GetFontInfo
+*/
+void GUIPROP_GetFontInfo(const GUI_FONT GUI_UNI_PTR * pFont, GUI_FONTINFO* pfi) {
+ GUI_USE_PARA(pFont);
+ pfi->Flags = GUI_FONTINFO_FLAG_PROP;
+}
+
+/*********************************************************************
+*
+* GUIPROP_IsInFont
+*/
+char GUIPROP_IsInFont(const GUI_FONT GUI_UNI_PTR * pFont, U16 c) {
+ const GUI_FONT_PROP GUI_UNI_PTR * pProp = GUIPROP_FindChar(pFont->p.pProp, c);
+ return (pProp==NULL) ? 0 : 1;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUICirc.c b/User/lib/lcd/gui/Core/GUICirc.c
new file mode 100644
index 0000000..dd3488c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUICirc.c
@@ -0,0 +1,271 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUICirc.C
+Purpose : Circle and ellipse drawing functions
+----------------------------------------------------------------------
+Version-Date---Author-Explanation
+----------------------------------------------------------------------
+1.00.02 011115 JE a) GL_FillEllipse, GL_FillCircle, GL_DrawCircle changed
+1.00.01 011113 JE a) GL_DrawEllipse changed
+1.00.00 991206 RS First release
+----------------------------------------------------------------------
+Known problems or limitations with current version
+----------------------------------------------------------------------
+None.
+----------------------------------------------------------------------
+Open issues
+----------------------------------------------------------------------
+None
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* Draw8Point
+*/
+static void Draw8Point(int x0,int y0, int xoff, int yoff) {
+ LCD_HL_DrawPixel(x0+xoff,y0+yoff);
+ LCD_HL_DrawPixel(x0-xoff,y0+yoff);
+ LCD_HL_DrawPixel(x0+yoff,y0+xoff);
+ LCD_HL_DrawPixel(x0+yoff,y0-xoff);
+ if (yoff) {
+ LCD_HL_DrawPixel(x0+xoff,y0-yoff);
+ LCD_HL_DrawPixel(x0-xoff,y0-yoff);
+ LCD_HL_DrawPixel(x0-yoff,y0+xoff);
+ LCD_HL_DrawPixel(x0-yoff,y0-xoff);
+ }
+}
+
+/*********************************************************************
+*
+* Public code, circle
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_DrawCircle
+*/
+void GL_DrawCircle(int x0, int y0, int r) {
+ I32 i;
+ int imax = ((I32)((I32)r*707))/1000+1;
+ I32 sqmax = (I32)r*(I32)r+(I32)r/2;
+ I32 y=r;
+ Draw8Point(x0,y0,r,0);
+ for (i=1; i<= imax; i++) {
+ if ((i*i+y*y) >sqmax) {
+ Draw8Point(x0,y0,i,y);
+ y--;
+ }
+ Draw8Point(x0,y0,i,y);
+ }
+}
+
+/*********************************************************************
+*
+* GUI_DrawCircle
+*/
+void GUI_DrawCircle(int x0, int y0, int r) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT Rect;
+ #endif
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ Rect.x0 = x0-r;
+ Rect.x1 = x0+r;
+ Rect.y0 = y0-r;
+ Rect.y1 = y0+r;
+ WM_ITERATE_START(&Rect); {
+ #endif
+ GL_DrawCircle( x0, y0, r);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GL_FillCircle
+*/
+void GL_FillCircle(int x0, int y0, int r) {
+ I32 i;
+ int imax = ((I32)((I32)r*707))/1000+1;
+ I32 sqmax = (I32)r*(I32)r+(I32)r/2;
+ I32 x=r;
+ LCD_HL_DrawHLine(x0-r,y0,x0+r);
+ for (i=1; i<= imax; i++) {
+ if ((i*i+x*x) >sqmax) {
+ /* draw lines from outside */
+ if (x>imax) {
+ LCD_HL_DrawHLine (x0-i+1,y0+x, x0+i-1);
+ LCD_HL_DrawHLine (x0-i+1,y0-x, x0+i-1);
+ }
+ x--;
+ }
+ /* draw lines from inside (center) */
+ LCD_HL_DrawHLine(x0-x,y0+i, x0+x);
+ LCD_HL_DrawHLine(x0-x,y0-i, x0+x);
+ }
+}
+
+/*********************************************************************
+*
+* GUI_FillCircle
+*/
+void GUI_FillCircle(int x0, int y0, int r) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ WM_ITERATE_START(NULL); {
+ #endif
+ GL_FillCircle(x0,y0,r);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* Public code, ellipse
+*
+* The most efficient way to calculate the ellipse positions is using
+* the knowledge that the ellipse is just circle which has compressed
+* (or stretched) in one direction. For a circle, the following
+* equation holds true for all points located on the border of it:
+*
+* x^2 + y(x)^2 = r^2 = const
+*
+* Therefor, for an ellipse we can make use of the following equation:
+*
+* (ry*x)^2 + (rx*y(x))^2 = (ry*rx)^2 = const
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_FillEllipse
+*/
+void GL_FillEllipse(int x0, int y0, int rx, int ry) {
+ I32 OutConst, Sum, SumY;
+ int x,y;
+ U32 _rx = rx;
+ U32 _ry = ry;
+ OutConst = _rx*_rx*_ry*_ry /* Constant as explaint above */
+ +(_rx*_rx*_ry>>1); /* To compensate for rounding */
+ x = rx;
+ for (y=0; y<=ry; y++) {
+ SumY =((I32)(rx*rx))*((I32)(y*y)); /* Does not change in loop */
+ while (Sum = SumY + ((I32)(ry*ry))*((I32)(x*x)),
+ (x>0) && (Sum>OutConst))
+ {
+ x--;
+ }
+ LCD_HL_DrawHLine(x0-x, y0+y, x0+x);
+ if (y)
+ LCD_HL_DrawHLine(x0-x, y0-y, x0+x);
+ }
+}
+
+/*********************************************************************
+*
+* GUI_FillEllipse
+*/
+void GUI_FillEllipse(int x0, int y0, int rx, int ry) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ /* Calc rectangle in order to avoid unnecessary drawing ops. */
+ r.x0 = x0-rx; r.x1 = x0+rx; r.y0 = y0-ry; r.y1 = y0+ry;
+ WM_ITERATE_START(&r); {
+ #endif
+ GL_FillEllipse (x0,y0, rx, ry);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GL_DrawEllipse
+*/
+void GL_DrawEllipse(int x0, int y0, int rx, int ry) {
+ I32 OutConst, Sum, SumY;
+ int x,y;
+ int xOld;
+ U32 _rx = rx;
+ U32 _ry = ry;
+ OutConst = _rx*_rx*_ry*_ry /* Constant as explaint above */
+ +(_rx*_rx*_ry>>1); /* To compensate for rounding */
+ xOld = x = rx;
+ for (y=0; y<=ry; y++) {
+ if (y==ry) {
+ x=0;
+ } else {
+ SumY =((I32)(rx*rx))*((I32)(y*y)); /* Does not change in loop */
+ while (Sum = SumY + ((I32)(ry*ry))*((I32)(x*x)),
+ (x>0) && (Sum>OutConst)) x--;
+ }
+ /* Since we draw lines, we can not draw on the first
+ iteration
+ */
+ if (y) {
+ GL_DrawLine1(x0-xOld,y0-y+1,x0-x,y0-y);
+ GL_DrawLine1(x0-xOld,y0+y-1,x0-x,y0+y);
+ GL_DrawLine1(x0+xOld,y0-y+1,x0+x,y0-y);
+ GL_DrawLine1(x0+xOld,y0+y-1,x0+x,y0+y);
+ }
+ xOld = x;
+ }
+}
+
+/*********************************************************************
+*
+* GUI_DrawEllipse
+*/
+void GUI_DrawEllipse(int x0, int y0, int rx, int ry) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ /* Calc rectangle in order to avoid unnecessary drawing ops. */
+ r.x0 = x0-rx; r.x1 = x0+rx; r.y0 = y0-ry; r.y1 = y0+ry;
+ WM_ITERATE_START(&r); {
+ #endif
+ GL_DrawEllipse(x0, y0, rx, ry);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIColor2Index.c b/User/lib/lcd/gui/Core/GUIColor2Index.c
new file mode 100644
index 0000000..ad83be0
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIColor2Index.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIColor2Index.C
+Purpose : Converts a RGB-value to a color index
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_Color2Index
+*/
+int GUI_Color2Index(GUI_COLOR Color) {
+ int Index;
+ GUI_LOCK();
+ Index = LCD_Color2Index(Color);
+ GUI_UNLOCK();
+ return Index;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUICore.c b/User/lib/lcd/gui/Core/GUICore.c
new file mode 100644
index 0000000..9619f24
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUICore.c
@@ -0,0 +1,179 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUICore.C
+Purpose : Core routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+
+#define GL_CORE_C
+
+#include "GUI_Private.h"
+#include "GUIDebug.h"
+
+#if GUI_WINSUPPORT
+#include "WM_GUI.h"
+#include "WM.h"
+#endif
+
+/*********************************************************************
+ *
+ * Static data
+ *
+ **********************************************************************
+ */
+#if GUI_SUPPORT_AA
+static const tLCD_HL_APIList _HL_APIList = {
+ LCD_DrawHLine,
+ LCD_DrawPixel};
+#endif
+
+/*********************************************************************
+ *
+ * Static code
+ *
+ **********************************************************************
+ */
+/*********************************************************************
+ *
+ * _InitContext
+ *
+ * Purpose
+ * Initializes the given context.
+ *
+ * Special considerations
+ * Make sure that no GUI functions are called, because locking is
+ * not allowed here (GUITASK_INIT not yet called).
+ */
+static void _InitContext(GUI_CONTEXT *pContext)
+{
+/* memset(..,0,..) is not required, as this function is called only at startup of the GUI when data is 0 */
+#if GUI_SUPPORT_DEVICES
+ pContext->pDeviceAPI = LCD_aAPI[0]; /* &LCD_L0_APIList; */
+#endif
+ pContext->pClipRect_HL = &GUI_Context.ClipRect;
+ LCD_L0_GetRect(&pContext->ClipRect);
+#if GUI_SUPPORT_AA
+ pContext->pLCD_HL = &_HL_APIList;
+#endif
+ pContext->pAFont = GUI_DEFAULT_FONT;
+ pContext->pClipRect_HL = &GUI_Context.ClipRect;
+ pContext->PenSize = 1;
+/* Variables in WM module */
+#if GUI_WINSUPPORT
+ pContext->hAWin = WM_GetDesktopWindow();
+#endif
+/* Variables in GUI_AA module */
+#if GUI_SUPPORT_AA
+ pContext->AA_Factor = 3;
+#endif
+ pContext->Color = GUI_INVALID_COLOR;
+ pContext->BkColor = GUI_INVALID_COLOR;
+ LCD_SetBkColor(GUI_DEFAULT_BKCOLOR);
+ LCD_SetColor(GUI_DEFAULT_COLOR);
+ pContext->pUC_API = &GUI__API_TableNone;
+}
+
+/*********************************************************************
+ *
+ * Public code
+ *
+ **********************************************************************
+ */
+/*********************************************************************
+ *
+ * GUI_ClearRect
+ */
+void GUI_ClearRect(int x0, int y0, int x1, int y1)
+{
+ GUI_DRAWMODE PrevDraw;
+#if GUI_WINSUPPORT
+ GUI_RECT r;
+#endif
+ GUI_LOCK();
+ PrevDraw = LCD_SetDrawMode(GUI_DRAWMODE_REV);
+#if GUI_WINSUPPORT
+ WM_ADDORG(x0, y0);
+ WM_ADDORG(x1, y1);
+ r.x0 = x0;
+ r.x1 = x1;
+ r.y0 = y0;
+ r.y1 = y1;
+ WM_ITERATE_START(&r)
+ {
+#endif
+ LCD_FillRect(x0, y0, x1, y1);
+#if GUI_WINSUPPORT
+ }
+ WM_ITERATE_END();
+#endif
+ LCD_SetDrawMode(PrevDraw);
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+ *
+ * GUI_Clear
+ */
+void GUI_Clear(void)
+{
+ GUI_GotoXY(0, 0); /* Reset text cursor to upper left */
+ GUI_ClearRect(GUI_XMIN, GUI_YMIN, GUI_XMAX, GUI_YMAX);
+}
+
+/*********************************************************************
+ *
+ * GUI_Init
+ *
+ * Purpose:
+ * Init of GUI internal data structures & variables
+ */
+int GUI_Init(void)
+{
+ int r;
+ GUI_DEBUG_LOG("\nGUI_Init()");
+ /* Init system wide globals first */
+ GUI_DecChar = '.';
+ GUI_X_Init();
+ /* Init context */
+ _InitContext(&GUI_Context);
+ GUITASK_INIT();
+ r = LCD_Init();
+#if GUI_WINSUPPORT
+ WM_Init();
+#endif
+ GUITASK_COPY_CONTEXT();
+#if defined(GUI_TRIAL_VERSION)
+ {
+ int i;
+ for (i = 0; i < 10; i++)
+ {
+ GUI_DispString("This uC-GUI library\n"
+ "is for evaluation\n"
+ "purpose only.\n"
+ "A license is\n"
+ "required to use\n"
+ "it in a product\n\n"
+ "www.micrium.com\n");
+ GUI_GotoXY(0, 0);
+ }
+ }
+ GUI_Clear();
+#endif
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUICurs.c b/User/lib/lcd/gui/Core/GUICurs.c
new file mode 100644
index 0000000..0f43a54
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUICurs.c
@@ -0,0 +1,423 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUICurs.C
+Purpose : Cursor routines of the graphics library
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+
+#if GUI_SUPPORT_CURSOR
+
+/*********************************************************************
+*
+* static data
+*
+**********************************************************************
+*/
+
+static GUI_HMEM _hBuffer;
+static GUI_RECT _Rect;
+static char _CursorIsVis; /* Currently visible ? */
+static char _CursorOn;
+static const GUI_CURSOR GUI_UNI_PTR * _pCursor;
+static U8 _CursorDeActCnt;
+static int _AllocSize;
+static int _x, _y; /* Position of hot spot */
+static GUI_RECT _ClipRect;
+static LCD_PIXELINDEX _ColorIndex[4]; /* Color-Cache */
+
+/*********************************************************************
+*
+* static code, helper functions
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _SetPixelIndex
+*
+* Purpose
+* Sets the pixel index for the Cursor.
+* Note the following:
+* - We do the clipping in this routine
+* - We do NOT call the driver directly, but thru its API table.
+* This allows others (e.g. the VNC server) to be in the loop-
+*/
+static void _SetPixelIndex(int x, int y, int Index) {
+ if ((y >= _ClipRect.y0) && (y <= _ClipRect.y1)) {
+ if ((x >= _ClipRect.x0) && (x <= _ClipRect.x1)) {
+ LCD_aAPI[0]->pfSetPixelIndex(x, y, Index);
+ }
+ }
+}
+
+/*********************************************************************
+*
+* _GetPixelIndex
+*
+* Purpose
+* Gets a pixel index for the Cursor.
+*/
+static int _GetPixelIndex(int x, int y) {
+ if ((y >= _ClipRect.y0) && (y <= _ClipRect.y1)) {
+ if ((x >= _ClipRect.x0) && (x <= _ClipRect.x1)) {
+ return LCD_L0_GetPixelIndex(x, y);
+ }
+ }
+ return 0;
+}
+
+/*********************************************************************
+*
+* _Undraw
+*
+* Purpose
+* Remove the cursors
+*/
+static void _Undraw(void) {
+ int x, y, xSize, ySize;
+ LCD_PIXELINDEX* pData;
+ /* Save bitmap data */
+ GUI_LOCK();
+ if (_hBuffer) {
+ pData = (LCD_PIXELINDEX*)GUI_ALLOC_h2p(_hBuffer);
+ xSize = _Rect.x1 - _Rect.x0 + 1;
+ ySize = _Rect.y1 - _Rect.y0 + 1;
+ for (y = 0; y < ySize; y++) {
+ for (x = 0; x < xSize; x++) {
+ _SetPixelIndex(x + _Rect.x0, y + _Rect.y0, *(pData + x));
+ }
+ pData += _pCursor->pBitmap->XSize;
+ }
+ }
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* _Log2Phys
+*/
+static int _Log2Phys(int Index) {
+ if (Index < 4) {
+ return _ColorIndex[Index];
+ } else {
+ LCD_COLOR Color = *(_pCursor->pBitmap->pPal->pPalEntries + Index);
+ return LCD_Color2Index(Color);
+ }
+}
+
+/*********************************************************************
+*
+* _Draw
+*/
+static void _Draw(void) {
+ int x, y, xSize, ySize;
+ LCD_PIXELINDEX* pData;
+ const GUI_BITMAP GUI_UNI_PTR * pBM;
+ GUI_LOCK();
+ if (_hBuffer) {
+ /* Save bitmap data */
+ pBM = _pCursor->pBitmap;
+ pData = (LCD_PIXELINDEX*)GUI_ALLOC_h2p(_hBuffer);
+ xSize = _Rect.x1 - _Rect.x0 + 1;
+ ySize = _Rect.y1 - _Rect.y0 + 1;
+ for (y = 0; y < ySize; y++) {
+ for (x = 0; x < xSize; x++) {
+ int BitmapPixel;
+ *(pData + x) = _GetPixelIndex(_Rect.x0 + x, _Rect.y0 + y);
+ BitmapPixel = GUI_GetBitmapPixelIndex(pBM, x, y);
+ if (BitmapPixel) {
+ _SetPixelIndex(_Rect.x0 + x, _Rect.y0 + y, _Log2Phys(BitmapPixel));
+ }
+ }
+ pData += pBM->XSize;
+ }
+ }
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* _CalcRect
+*/
+static void _CalcRect(void) {
+ if (_pCursor) {
+ _Rect.x0 = _x - _pCursor->xHot;
+ _Rect.y0 = _y - _pCursor->yHot;
+ _Rect.x1 = _Rect.x0 + _pCursor->pBitmap->XSize - 1;
+ _Rect.y1 = _Rect.y0 + _pCursor->pBitmap->YSize - 1;
+ }
+}
+
+/*********************************************************************
+*
+* _Hide
+*/
+static void _Hide(void) {
+ if (_CursorIsVis) {
+ _Undraw();
+ _CursorIsVis = 0;
+ }
+}
+
+/*********************************************************************
+*
+* _Show
+*/
+static void _Show(void) {
+ if (_CursorOn && (_CursorDeActCnt==0)) {
+ _CursorIsVis = 1;
+ _Draw();
+ }
+}
+
+/*********************************************************************
+*
+* _TempHide
+*
+* Purpose:
+* Hide cursor if a part of the given rectangle is located in the
+* rectangle used for the cursor. This routine is called automatically
+* by the window manager. This way the window manager can
+* automatically make sure that the cursor is always displayed
+* correctly.
+*
+* Params:
+* pRect Rectangle under consideration
+*
+* Return value:
+* 0: No action taken
+* Cursor was not visible or not affected because rectangles
+* did not overlap
+* 1: Cursor hidden -> WM needs to restore cursor after
+* drawing operation
+*/
+static char _TempHide(const GUI_RECT* pRect) {
+ if (!_CursorIsVis) {
+ return 0; /* Cursor not visible -> nothing to do */
+ }
+ if ((pRect == NULL) || GUI_RectsIntersect(pRect, &_Rect)) {
+ _Hide(); /* Cursor needs to be hidden */
+ return 1;
+ }
+ return 0; /* Cursor not affected -> nothing to do */
+}
+
+/*********************************************************************
+*
+* _TempUnhide
+*/
+static void _TempUnhide(void) {
+ _Show();
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_CURSOR_Activate
+*/
+void GUI_CURSOR_Activate(void) {
+ GUI_LOCK();
+ if ((--_CursorDeActCnt) ==0) {
+ _Show();
+ }
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_CURSOR_Deactivate
+*/
+void GUI_CURSOR_Deactivate(void) {
+ GUI_LOCK();
+ if (_CursorDeActCnt++ ==0)
+ _Hide();
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_CURSOR_Select
+*/
+const GUI_CURSOR GUI_UNI_PTR * GUI_CURSOR_Select(const GUI_CURSOR GUI_UNI_PTR * pCursor) {
+ int AllocSize;
+ const GUI_BITMAP GUI_UNI_PTR * pBM;
+ const GUI_CURSOR GUI_UNI_PTR * pOldCursor;
+ GUI_LOCK();
+ pOldCursor = _pCursor;
+ if (pCursor != _pCursor) {
+ int i;
+ pBM = pCursor->pBitmap;
+ i = pBM->pPal->NumEntries > 4 ? 4 : pBM->pPal->NumEntries;
+ while (i--) {
+ LCD_COLOR Color = *(pBM->pPal->pPalEntries + i);
+ _ColorIndex[i] = LCD_Color2Index(Color);
+ }
+ _Hide();
+ AllocSize = pBM->XSize * pBM->YSize * sizeof(LCD_PIXELINDEX);
+ if (AllocSize != _AllocSize) {
+ GUI_ALLOC_Free(_hBuffer);
+ _hBuffer = 0;
+ }
+ _hBuffer = GUI_ALLOC_AllocZero(AllocSize);
+ _CursorOn = 1;
+ _pCursor = pCursor;
+ _CalcRect();
+ _Show();
+ }
+ GUI_UNLOCK();
+ return pOldCursor;
+}
+
+/*********************************************************************
+*
+* GUI_CURSOR_Hide
+*/
+void GUI_CURSOR_Hide(void) {
+ GUI_LOCK();
+ _Hide();
+ _CursorOn = 0;
+ /* Set function pointer which window manager can use */
+ GUI_CURSOR_pfTempHide = NULL;
+ GUI_CURSOR_pfTempUnhide = NULL;
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_CURSOR_Show
+*/
+void GUI_CURSOR_Show(void) {
+ GUI_LOCK();
+ LCDDEV_L0_GetRect(&_ClipRect);
+ _Hide();
+ _CursorOn = 1;
+ /* Set function pointer which window manager can use */
+ GUI_CURSOR_pfTempHide = _TempHide;
+ GUI_CURSOR_pfTempUnhide = _TempUnhide;
+ if (!_pCursor) {
+ GUI_CURSOR_Select(GUI_DEFAULT_CURSOR);
+ } else {
+ _Show();
+ }
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_CURSOR_SetPosition
+*/
+void GUI_CURSOR_SetPosition(int xNewPos, int yNewPos) {
+ int x, xStart, xStep, xEnd, xOff, xOverlapMin, xOverlapMax;
+ int y, yStart, yStep, yEnd, yOff, yOverlapMin, yOverlapMax;
+ int xSize;
+ LCD_PIXELINDEX* pData;
+ GUI_LOCK();
+ if (_hBuffer) {
+ if ((_x != xNewPos) | (_y != yNewPos)) {
+ if (_CursorOn) {
+ const GUI_BITMAP GUI_UNI_PTR * pBM = _pCursor->pBitmap;
+ /* Save & set clip rect */
+ /* Compute helper variables */
+ pData = (LCD_PIXELINDEX*)GUI_ALLOC_h2p(_hBuffer);
+ xSize = _pCursor->pBitmap->XSize;
+ xOff = xNewPos - _x;
+ if (xOff > 0) {
+ xStep = 1;
+ xStart = 0;
+ xEnd = _pCursor->pBitmap->XSize;
+ xOverlapMax = xEnd -1;
+ xOverlapMin = xOff;
+ } else {
+ xStep = -1;
+ xStart = xSize - 1;
+ xEnd = -1;
+ xOverlapMin = 0;
+ xOverlapMax = xStart + xOff;
+ }
+ yOff = yNewPos - _y;
+ if (yOff > 0) {
+ yStep = 1;
+ yStart = 0;
+ yEnd = _pCursor->pBitmap->YSize;
+ yOverlapMax = yEnd -1;
+ yOverlapMin = yOff;
+ } else {
+ yStep = -1;
+ yStart = _pCursor->pBitmap->YSize - 1;
+ yEnd = -1;
+ yOverlapMin = 0;
+ yOverlapMax = yStart + yOff;
+ }
+ /* Restore & Draw */
+ for (y = yStart; y != yEnd; y += yStep) {
+ char yOverlaps;
+ char yNewOverlaps;
+ int yNew = y + yOff;
+ yOverlaps = (y >= yOverlapMin) && (y <= yOverlapMax);
+ yNewOverlaps = (yNew >= yOverlapMin) && (yNew <= yOverlapMax);
+ for (x= xStart; x != xEnd; x += xStep) {
+ char xyOverlaps, xyNewOverlaps;
+ int BitmapPixel;
+ LCD_PIXELINDEX Pixel;
+ LCD_PIXELINDEX* pSave = pData + x + y * xSize;
+ int xNew = x + xOff;
+ BitmapPixel = GUI_GetBitmapPixelIndex(pBM, x, y);
+ xyOverlaps = (x >= xOverlapMin) && (x <= xOverlapMax) && yOverlaps;
+ xyNewOverlaps = (xNew >= xOverlapMin) && (xNew <= xOverlapMax) && yNewOverlaps;
+ /* Restore old pixel if it was not transparent */
+ if (BitmapPixel) {
+ if (!xyOverlaps || (GUI_GetBitmapPixelIndex(pBM, x - xOff, y - yOff) == 0)) {
+ _SetPixelIndex(x + _Rect.x0, y + _Rect.y0, *(pSave));
+ }
+ }
+ /* Save */
+ if (xyNewOverlaps) {
+ Pixel = *(pData + xNew + yNew * xSize);
+ } else {
+ Pixel = _GetPixelIndex(_Rect.x0 + xNew, _Rect.y0 + yNew);
+ }
+ *pSave = Pixel;
+ /* Write new ... We could write pixel by pixel here */
+ if (BitmapPixel) {
+ LCD_PIXELINDEX NewPixel = _Log2Phys(BitmapPixel);
+ _SetPixelIndex(_Rect.x0 + xNew, _Rect.y0 + yNew, NewPixel);
+ }
+ }
+ }
+ }
+ _x = xNewPos;
+ _y = yNewPos;
+ _CalcRect();
+ }
+ }
+ GUI_UNLOCK();
+}
+
+#else
+
+void GUICurs_C(void);
+void GUICurs_C(void) {} /* avoid empty object files */
+
+#endif /* GUI_SUPPORT_CURSOR */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIDebug.h b/User/lib/lcd/gui/Core/GUIDebug.h
new file mode 100644
index 0000000..044f3d0
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIDebug.h
@@ -0,0 +1,173 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDebug.h
+Purpose : Debug macros
+----------------------------------------------------------------------
+ Debug macros for logging
+
+ In the GUI Simulation, all output is transferred into the log window.
+*/
+
+#ifndef GUI_DEBUG_H
+#define GUI_DEBUG_H
+
+#include "GUI.h"
+#include "GUI_X.h"
+
+#define GUI_DEBUG_LEVEL_NOCHECK 0 /* No run time checks are performed */
+#define GUI_DEBUG_LEVEL_CHECK_PARA 1 /* Parameter checks are performed to avoid crashes */
+#define GUI_DEBUG_LEVEL_CHECK_ALL 2 /* Parameter checks and consistency checks are performed */
+#define GUI_DEBUG_LEVEL_LOG_ERRORS 3 /* Errors are recorded */
+#define GUI_DEBUG_LEVEL_LOG_WARNINGS 4 /* Errors & Warnings are recorded */
+#define GUI_DEBUG_LEVEL_LOG_ALL 5 /* Errors, Warnings and Messages are recorded. */
+
+#ifndef GUI_DEBUG_LEVEL
+ #ifdef WIN32
+ // #define GUI_DEBUG_LEVEL GUI_DEBUG_LEVEL_LOG_WARNINGS /* Simulation should log all warnings */
+ #define GUI_DEBUG_LEVEL GUI_DEBUG_LEVEL_LOG_ALL /* Simulation should log all warnings */
+ #else
+ #define GUI_DEBUG_LEVEL GUI_DEBUG_LEVEL_CHECK_PARA /* For most targets, min. size is important */
+ #endif
+#endif
+
+/*******************************************************************
+*
+* Commandline
+*
+********************************************************************
+*/
+
+#ifdef WIN32
+ #define GUI_DEBUG_GETCMDLINE() SIM_GetCmdLine()
+#else
+ #define GUI_DEBUG_GETCMDLINE() 0
+#endif
+
+/*******************************************************************
+*
+* Error macros
+*
+********************************************************************
+*/
+
+/* Make sure the macros are actually defined */
+
+#if GUI_DEBUG_LEVEL >= GUI_DEBUG_LEVEL_LOG_ERRORS
+ #define GUI_DEBUG_ERROROUT(s) GUI_ErrorOut(s)
+ #define GUI_DEBUG_ERROROUT1(s,p0) GUI_ErrorOut1(s,p0)
+ #define GUI_DEBUG_ERROROUT2(s,p0,p1) GUI_ErrorOut2(s,p0,p1)
+ #define GUI_DEBUG_ERROROUT3(s,p0,p1,p2) GUI_ErrorOut3(s,p0,p1,p2)
+ #define GUI_DEBUG_ERROROUT4(s,p0,p1,p2,p3) GUI_ErrorOut4(s,p0,p1,p2,p3)
+ #define GUI_DEBUG_ERROROUT_IF(exp,s) { if (exp) GUI_DEBUG_ERROROUT(s); }
+ #define GUI_DEBUG_ERROROUT1_IF(exp,s,p0) { if (exp) GUI_DEBUG_ERROROUT1(s,p0); }
+ #define GUI_DEBUG_ERROROUT2_IF(exp,s,p0,p1) { if (exp) GUI_DEBUG_ERROROUT2(s,p0,p1); }
+ #define GUI_DEBUG_ERROROUT3_IF(exp,s,p0,p1,p2) { if (exp) GUI_DEBUG_ERROROUT3(s,p0,p1,p2); }
+ #define GUI_DEBUG_ERROROUT4_IF(exp,s,p0,p1,p2,p3) { if (exp) GUI_DEBUG_ERROROUT4(s,p0,p1,p2,p3); }
+#else
+ #define GUI_DEBUG_ERROROUT(s)
+ #define GUI_DEBUG_ERROROUT1(s,p0)
+ #define GUI_DEBUG_ERROROUT2(s,p0,p1)
+ #define GUI_DEBUG_ERROROUT3(s,p0,p1,p2)
+ #define GUI_DEBUG_ERROROUT4(s,p0,p1,p2,p3)
+ #define GUI_DEBUG_ERROROUT_IF(exp,s)
+ #define GUI_DEBUG_ERROROUT1_IF(exp,s,p0)
+ #define GUI_DEBUG_ERROROUT2_IF(exp,s,p0,p1)
+ #define GUI_DEBUG_ERROROUT3_IF(exp,s,p0,p1,p2)
+ #define GUI_DEBUG_ERROROUT4_IF(exp,s,p0,p1,p2,p3)
+#endif
+
+/*******************************************************************
+*
+* Warning macros
+*
+********************************************************************
+*/
+
+/* Make sure the macros are actually defined */
+
+#if GUI_DEBUG_LEVEL >= GUI_DEBUG_LEVEL_LOG_WARNINGS
+ #define GUI_DEBUG_WARN(s) GUI_Warn(s)
+ #define GUI_DEBUG_WARN1(s,p0) GUI_Warn1(s,p0)
+ #define GUI_DEBUG_WARN2(s,p0,p1) GUI_Warn2(s,p0,p1)
+ #define GUI_DEBUG_WARN3(s,p0,p1,p2) GUI_Warn3(s,p0,p1,p2)
+ #define GUI_DEBUG_WARN4(s,p0,p1,p2,p3) GUI_Warn4(s,p0,p1,p2,p3)
+ #define GUI_DEBUG_WARN_IF(exp,s) { if (exp) GUI_DEBUG_WARN(s); }
+ #define GUI_DEBUG_WARN1_IF(exp,s,p0) { if (exp) GUI_DEBUG_WARN1(s,p0); }
+ #define GUI_DEBUG_WARN2_IF(exp,s,p0,p1) { if (exp) GUI_DEBUG_WARN2(s,p0,p1); }
+ #define GUI_DEBUG_WARN3_IF(exp,s,p0,p1,p2) { if (exp) GUI_DEBUG_WARN3(s,p0,p1,p2); }
+ #define GUI_DEBUG_WARN4_IF(exp,s,p0,p1,p2,p3) { if (exp) GUI_DEBUG_WARN4(s,p0,p1,p2,p3); }
+#else
+ #define GUI_DEBUG_WARN(s)
+ #define GUI_DEBUG_WARN1(s,p0)
+ #define GUI_DEBUG_WARN2(s,p0,p1)
+ #define GUI_DEBUG_WARN3(s,p0,p1,p2)
+ #define GUI_DEBUG_WARN4(s,p0,p1,p2,p3)
+ #define GUI_DEBUG_WARN_IF(exp,s)
+ #define GUI_DEBUG_WARN1_IF(exp,s,p0)
+ #define GUI_DEBUG_WARN2_IF(exp,s,p0,p1)
+ #define GUI_DEBUG_WARN3_IF(exp,s,p0,p1,p2)
+ #define GUI_DEBUG_WARN4_IF(exp,s,p0,p1,p2,p3)
+#endif
+
+/*******************************************************************
+*
+* Logging macros
+*
+********************************************************************
+*/
+/* Make sure the macros are actually defined */
+
+#if GUI_DEBUG_LEVEL >= GUI_DEBUG_LEVEL_LOG_ALL
+ #define GUI_DEBUG_LOG(s) GUI_Log(s)
+ #define GUI_DEBUG_LOG1(s,p0) GUI_Warn1(s,p0)
+ #define GUI_DEBUG_LOG2(s,p0,p1) GUI_Warn2(s,p0,p1)
+ #define GUI_DEBUG_LOG3(s,p0,p1,p2) GUI_Warn3(s,p0,p1,p2)
+ #define GUI_DEBUG_LOG4(s,p0,p1,p2,p3) GUI_Warn4(s,p0,p1,p2,p3)
+ #define GUI_DEBUG_LOG_IF(exp,s) { if (exp) GUI_DEBUG_LOG(s); }
+ #define GUI_DEBUG_LOG1_IF(exp,s,p0) { if (exp) GUI_DEBUG_LOG1(s,p0); }
+ #define GUI_DEBUG_LOG2_IF(exp,s,p0,p1) { if (exp) GUI_DEBUG_LOG2(s,p0,p1); }
+ #define GUI_DEBUG_LOG3_IF(exp,s,p0,p1,p2) { if (exp) GUI_DEBUG_LOG3(s,p0,p1,p2); }
+ #define GUI_DEBUG_LOG4_IF(exp,s,p0,p1,p2,p3) { if (exp) GUI_DEBUG_LOG4(s,p0,p1,p2,p3); }
+#else
+ #define GUI_DEBUG_LOG(s)
+ #define GUI_DEBUG_LOG1(s,p0)
+ #define GUI_DEBUG_LOG2(s,p0,p1)
+ #define GUI_DEBUG_LOG3(s,p0,p1,p2)
+ #define GUI_DEBUG_LOG4(s,p0,p1,p2,p3)
+ #define GUI_DEBUG_LOG_IF(exp,s)
+ #define GUI_DEBUG_LOG1_IF(exp,s,p0)
+ #define GUI_DEBUG_LOG2_IF(exp,s,p0,p1)
+ #define GUI_DEBUG_LOG3_IF(exp,s,p0,p1,p2)
+ #define GUI_DEBUG_LOG4_IF(exp,s,p0,p1,p2,p3)
+#endif
+
+/*******************************************************************
+*
+* Asserts
+*
+********************************************************************
+*/
+#if GUI_DEBUG_LEVEL >= GUI_DEBUG_LEVEL_LOG_ERRORS
+ #define GUI_DEBUG_ASSERT(exp) { if (!exp) GUI_DEBUG_ERROROUT(#exp); }
+#else
+ #define GUI_DEBUG_ASSERT(exp)
+#endif
+
+#endif /* LCD_H */
+
+
+
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIEncJS.c b/User/lib/lcd/gui/Core/GUIEncJS.c
new file mode 100644
index 0000000..7c8a73f
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIEncJS.c
@@ -0,0 +1,116 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIEncSJ.C
+Purpose : Implementation of Shift JIS decoding
+----------------------------------------------------------------------
+Version-Date---Author-Explanation
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* DB2SJIS
+*/
+static U16 DB2SJIS(U8 Byte0, U8 Byte1) {
+ return Byte1 | (((U16)Byte0)<<8);
+}
+
+/*********************************************************************
+*
+* _GetLineDistX_SJIS
+*/
+static int _GetLineDistX_SJIS(const char GUI_UNI_PTR *s, int Len) {
+ int Dist =0;
+ if (s) {
+ U8 c0;
+ while (((c0=*(const U8*)s) !=0) && Len >=0) {
+ s++; Len--;
+ if (c0 > 127) {
+ U8 c1 = *(const U8*)s++;
+ Len--;
+ Dist += GUI_GetCharDistX(DB2SJIS(c0, c1));
+ } else {
+ Dist += GUI_GetCharDistX(c0);
+ }
+ }
+ }
+ return Dist;
+}
+
+/*********************************************************************
+*
+* _GetLineLen_SJIS
+* Purpose:
+* Returns the number of characters in a string.
+*
+* NOTE:
+* The return value can be used as offset into the
+* string, which means that double characters count double
+*/
+static int _GetLineLen_SJIS(const char GUI_UNI_PTR *s, int MaxLen) {
+ int Len =0;
+ U8 c0;
+ while (((c0=*(const U8*)s) !=0) && Len < MaxLen) {
+ s++;
+ if (c0 > 127) {
+ Len++; s++;
+ } else {
+ switch (c0) {
+ case '\n': return Len;
+ }
+ }
+ Len++;
+ }
+ return Len;
+}
+
+/*********************************************************************
+*
+* _DispLine_SJIS
+*/
+static void _DispLine_SJIS(const char GUI_UNI_PTR *s, int Len) {
+ U8 c0;
+ while (--Len >=0) {
+ c0=*(const U8*)s++;
+ if (c0 > 127) {
+ U8 c1 = *(const U8*)s++;
+ Len--;
+ GL_DispChar (DB2SJIS(c0, c1));
+ } else {
+ GL_DispChar(c0);
+ }
+ }
+}
+
+/*********************************************************************
+*
+* GUI_ENC_APIList_SJIS, API list
+*/
+const tGUI_ENC_APIList GUI_ENC_APIList_SJIS = {
+ _GetLineDistX_SJIS,
+ _GetLineLen_SJIS,
+ _DispLine_SJIS
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIIndex2Color.c b/User/lib/lcd/gui/Core/GUIIndex2Color.c
new file mode 100644
index 0000000..6a664e0
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIIndex2Color.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIIndex2Color.C
+Purpose : Converts a color index to a RGB-value
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_Index2Color
+*/
+GUI_COLOR GUI_Index2Color(int Index) {
+ GUI_COLOR Color;
+ GUI_LOCK();
+ Color = LCD_Index2Color(Index);
+ GUI_UNLOCK();
+ return Color;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIPolyE.c b/User/lib/lcd/gui/Core/GUIPolyE.c
new file mode 100644
index 0000000..a84f2de
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIPolyE.c
@@ -0,0 +1,152 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIPolyE.c
+Purpose : Polygon enlarge
+----------------------------------------------------------------------
+*/
+
+#include
+#include "GUI.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Types
+*
+**********************************************************************
+*/
+
+typedef struct {
+ float x, y;
+} tfPoint;
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _fround
+*/
+static int _fround(float f) {
+ if (f>0)
+ return f+0.5f;
+ return f-0.5f;
+}
+
+/*********************************************************************
+*
+* _Normalize
+*/
+static void _Normalize(tfPoint* pfPoint) {
+ float fx = pfPoint->x;
+ float fy = pfPoint->y;
+ float r = sqrt(fx*fx + fy*fy);
+ if (r > 0) {
+ pfPoint->x = fx/r;
+ pfPoint->y = fy/r;
+ }
+}
+
+/*********************************************************************
+*
+* _ReverseLen
+*/
+static void _ReverseLen(tfPoint* pfPoint) {
+ float fx = pfPoint->x;
+ float fy = pfPoint->y;
+ float r = sqrt(fx*fx/2 + fy*fy/2);
+ if (r > 0) {
+ pfPoint->x = fx/r/r;
+ pfPoint->y = fy/r/r;
+ }
+}
+
+/*********************************************************************
+*
+* _GetVect
+*/
+static void _GetVect(tfPoint* pfPoint, const GUI_POINT* pSrc, int NumPoints, int Index) {
+ int Off0 = (Index + NumPoints-1) % NumPoints;
+ int Off1 = Index % NumPoints;
+ pfPoint->x = pSrc[Off1].x - pSrc[Off0].x;
+ pfPoint->y = pSrc[Off1].y - pSrc[Off0].y;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_EnlargePolygon
+*/
+#if 0
+void GUI_EnlargePolygon(GUI_POINT* pDest, const GUI_POINT* pSrc, int NumPoints, int Len) {
+ int j;
+ /* Calc destination points */
+ for (j=0; jx = (pSrc+j)->x + x;
+ (pDest+j)->y = (pSrc+j)->y + y;
+ }
+}
+
+#else
+
+void GUI_EnlargePolygon(GUI_POINT* pDest, const GUI_POINT* pSrc, int NumPoints, int Len) {
+ int j;
+ /* Calc destination points */
+ for (j=0; jx = (pSrc+j)->x + x;
+ (pDest+j)->y = (pSrc+j)->y + y;
+ }
+}
+#endif
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIPolyM.c b/User/lib/lcd/gui/Core/GUIPolyM.c
new file mode 100644
index 0000000..338e927
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIPolyM.c
@@ -0,0 +1,41 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIPolyR.c
+Purpose : Polygon rotation
+----------------------------------------------------------------------
+*/
+
+#include
+#include "GUI.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_MagnifyPolygon
+*/
+void GUI_MagnifyPolygon(GUI_POINT* pDest, const GUI_POINT* pSrc, int NumPoints, int Mag) {
+ int j;
+ for (j=0; jx = (pSrc+j)->x * Mag;
+ (pDest+j)->y = (pSrc+j)->y * Mag;
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIPolyR.c b/User/lib/lcd/gui/Core/GUIPolyR.c
new file mode 100644
index 0000000..34734b7
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIPolyR.c
@@ -0,0 +1,47 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIPolyR.c
+Purpose : Polygon rotation
+----------------------------------------------------------------------
+*/
+
+#include "arm_math.h"
+#include "GUI.h"
+
+/*********************************************************************
+ *
+ * Public code
+ *
+ **********************************************************************
+ */
+/*********************************************************************
+ *
+ * GUI_RotatePolygon
+ */
+void GUI_RotatePolygon(GUI_POINT *pDest, const GUI_POINT *pSrc, int NumPoints, float Angle)
+{
+ int j;
+ float fcos = arm_cos_f32(Angle);
+ float fsin = arm_sin_f32(Angle);
+ for (j = 0; j < NumPoints; j++)
+ {
+ int x = (pSrc + j)->x;
+ int y = (pSrc + j)->y;
+ (pDest + j)->x = x * fcos + y * fsin;
+ (pDest + j)->y = -x * fsin + y * fcos;
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIRealloc.c b/User/lib/lcd/gui/Core/GUIRealloc.c
new file mode 100644
index 0000000..44b9859
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIRealloc.c
@@ -0,0 +1,65 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIRealloc.C
+Purpose : Dynamic memory management
+----------------------------------------------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include /* for memcpy, memset */
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public routines: Using internal memory management
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_ALLOC_Realloc
+*
+* Purpose:
+* Reallocate a memory block. This is typically used to grow memory
+* blocks. The contents of the old memory block are copied into the
+* new block (or as much as fits in case of shrinkage).
+* In case of error the old memory block (and its handle) remain
+* unchanged.
+*
+* Return value:
+* On success: Handle of newly allocated memory block
+* On error: 0
+*/
+GUI_HMEM GUI_ALLOC_Realloc(GUI_HMEM hOld, int NewSize) {
+ GUI_HMEM hNew;
+ hNew = GUI_ALLOC_AllocNoInit(NewSize);
+ if (hNew && hOld) {
+ void *pNew, *pOld;
+ int Size, OldSize;
+ OldSize = GUI_ALLOC_GetSize(hOld);
+ Size = (OldSize < NewSize) ? OldSize : NewSize;
+ GUI_LOCK();
+ pNew = GUI_ALLOC_h2p(hNew);
+ pOld = GUI_ALLOC_h2p(hOld);
+ memcpy(pNew, pOld, Size);
+ GUI_UNLOCK();
+ GUI_ALLOC_Free(hOld);
+ }
+ return hNew;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIStream.c b/User/lib/lcd/gui/Core/GUIStream.c
new file mode 100644
index 0000000..c4d5eab
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIStream.c
@@ -0,0 +1,48 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIStream.c
+Purpose : Support for streamed bitmaps
+----------------------------------------------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawStreamedBitmap
+*/
+void GUI_DrawStreamedBitmap(const GUI_BITMAP_STREAM *pBitmapHeader, int x, int y) {
+ GUI_BITMAP Bitmap = {0};
+ GUI_LOGPALETTE Palette;
+ Bitmap.BitsPerPixel = pBitmapHeader->BitsPerPixel;
+ Bitmap.BytesPerLine = pBitmapHeader->BytesPerLine;
+ Bitmap.pData = ((const U8*)pBitmapHeader)+16+4*pBitmapHeader->NumColors;
+ Bitmap.pPal = &Palette;
+ Bitmap.XSize = pBitmapHeader->XSize;
+ Bitmap.YSize = pBitmapHeader->YSize;
+ Palette.HasTrans = pBitmapHeader->HasTrans;
+ Palette.NumEntries = pBitmapHeader->NumColors;
+ Palette.pPalEntries = (const LCD_COLOR*)((const U8*)pBitmapHeader+16);
+ GUI_DrawBitmap(&Bitmap, x, y);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUITask.c b/User/lib/lcd/gui/Core/GUITask.c
new file mode 100644
index 0000000..9679f45
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUITask.c
@@ -0,0 +1,231 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUITASK.C
+Purpose : Saves/Restores task context with supported OSs.
+ It also uses a resource semaphore.
+
+ The following externals are used and should typically be defined
+ in GUI_X.c:
+
+ U32 GUI_X_GetTaskId();
+ void GUI_X_Unlock();
+ void GUI_X_Lock();
+
+----------------------------------------------------------------------
+Version-Date---Author-Explanation
+----------------------------------------------------------------------
+3.70 031016 TQ GUI_MAXTASK set to 4
+3.60 030902 TQ GUI_MAXTASK increased to 6
+3.52 030618 RS GUI_MAX_LOCK_NESTING increased
+3.40 030228 RS GUI_MAX_LOCK_NESTING introduced
+3.02a 020722 RS Use of macro GUI_DEBUG_ERROROUT_IF in order
+ to simplify th code.
+3.02 020514 RS Avoided nested calls of GUI_X_Lock, GUI_X_Unlock
+ (because some RTOSes, such as CMX and u/C-OS
+ could not handle this easily)
+3.00 010425 RS Cleanup for Version 3.00
+ a) Dummy routines added to avoid link errors
+ in case some modules are compiled with
+ different settings
+1.00.01 990926 RS Fix in order to make sure init task has no
+ context of its own (_CurrentTaskNo =-1)
+1.00.00 990918 RS Initial version for version control purposes.
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Configuration defaults
+*
+**********************************************************************
+*/
+
+#ifndef GUI_MAXTASK
+ #define GUI_MAXTASK (4)
+#endif
+
+#ifndef GUI_MAX_LOCK_NESTING
+ #define GUI_MAX_LOCK_NESTING 48 /* If a lot of nested dialogs are used, this may not be sufficient. */
+#endif
+
+#if GUI_OS
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static struct {
+ U32 TaskID;
+ GUI_CONTEXT Context;
+} _Save[GUI_MAXTASK];
+
+static int _CurrentTaskNo = -1;
+static int _EntranceCnt = 0;
+static U32 _TaskIDLock = 0;
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _GetTaskNo
+*/
+static int _GetTaskNo(void) {
+ int i;
+ for (i=0; i< GUI_MAXTASK; i++) {
+ U32 TaskId = GUI_X_GetTaskId();
+ if (_Save[i].TaskID == TaskId)
+ return i;
+ if (_Save[i].TaskID == 0) {
+ _Save[i].TaskID = TaskId;
+ return i;
+ }
+ }
+ GUI_DEBUG_ERROROUT("No Context available for task ... (increase GUI_MAXTASK)");
+ return 0;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_Unlock
+*/
+void GUI_Unlock(void) {
+ if (--_EntranceCnt == 0) {
+ GUI_X_Unlock();
+ }
+ /* Test if _EntranceCnt is in reasonable range ... Not required in release builds */
+ GUI_DEBUG_ERROROUT_IF((_EntranceCnt < 0), "GUITASK.c: GUI_Unlock() _EntranceCnt underflow ");
+}
+
+/*********************************************************************
+*
+* GUI_Lock
+*/
+void GUI_Lock(void) {
+ if (_EntranceCnt == 0) {
+ GUI_X_Lock();
+ _TaskIDLock = GUI_X_GetTaskId(); /* Save task ID */
+ } else {
+ if (_TaskIDLock != GUI_X_GetTaskId()) {
+ GUI_X_Lock();
+ _TaskIDLock = GUI_X_GetTaskId(); /* Save task ID */
+ }
+ }
+ if (++_EntranceCnt == 1) {
+ int TaskNo = _GetTaskNo();
+ if (TaskNo != _CurrentTaskNo) {
+ /* Save data of current task */
+ if (_CurrentTaskNo>=0) { /* Make sure _CurrentTaskNo is valid */
+ _Save[_CurrentTaskNo].Context = GUI_Context;
+ /* Load data of this task */
+ GUI_Context = _Save[TaskNo].Context;
+ }
+ _CurrentTaskNo = TaskNo;
+ }
+ }
+ /* Test if _EntranceCnt is in reasonable range ... Not required in release builds */
+ GUI_DEBUG_ERROROUT_IF((_EntranceCnt > GUI_MAX_LOCK_NESTING), "GUITASK.c: GUI_Lock() _EntranceCnt overflow ");
+}
+
+/*********************************************************************
+*
+* GUITASK_Init
+*/
+void GUITASK_Init(void) {
+ _CurrentTaskNo =-1; /* Invalidate */
+ GUI_X_InitOS();
+}
+
+
+/*********************************************************************
+*
+* GUITASK_CopyContext
+*/
+void GUITASK_CopyContext(void) {
+ int i;
+ for (i = 0; i < GUI_MAXTASK; i++) {
+ _Save[i].Context = GUI_Context;
+ _Save[i].TaskID = 0;
+ }
+}
+
+
+#if defined(WIN32) && defined(_DEBUG)
+
+/*********************************************************************
+*
+* GUITASK_AssertLock
+*
+*/
+void GUITASK_AssertLock(void) {
+ if (!_EntranceCnt) {
+ GUI_DEBUG_ERROROUT("GUITASK.c: GUITASK_AssertLock failed!");
+ }
+}
+
+/*********************************************************************
+*
+* GUITASK_AssertNoLock
+*
+*/
+void GUITASK_AssertNoLock(void) {
+ GUI_Lock();
+ if (_EntranceCnt > 1) {
+ GUI_DEBUG_ERROROUT("GUITASK.c: GUITASK_AssertNoLock failed!");
+ }
+ GUI_Unlock();
+}
+
+#endif
+
+#else
+
+/*********************************************************************
+*
+* Dummy Kernel routines
+*
+* The routines below are dummies in case configuration tells us not
+* to use any kernel. In this case the routines below should
+* not be required, but it can not hurt to have them. The linker
+* will eliminate them anyhow.
+*/
+void GUI_Unlock(void);
+void GUI_Unlock(void) {}
+void GUI_Lock(void);
+void GUI_Lock(void) {}
+void GUITASK_Init(void);
+void GUITASK_Init(void) {}
+void GUITASK_StoreDefaultContext(void);
+void GUITASK_StoreDefaultContext(void) {}
+
+#endif
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUITime.c b/User/lib/lcd/gui/Core/GUITime.c
new file mode 100644
index 0000000..5669d6f
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUITime.c
@@ -0,0 +1,51 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUITime.C
+Purpose : Time related routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetTime
+*/
+int GUI_GetTime(void) {
+ return GUI_X_GetTime();
+}
+
+/*********************************************************************
+*
+* GUI_Delay
+*/
+void GUI_Delay(int Period) {
+ int EndTime = GUI_GetTime()+Period;
+ int tRem; /* remaining Time */
+ GUI_ASSERT_NO_LOCK();
+ while (tRem = EndTime- GUI_GetTime(), tRem>0) {
+ GUI_Exec();
+ GUI_X_Delay((tRem >5) ? 5 : tRem);
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUITimer.c b/User/lib/lcd/gui/Core/GUITimer.c
new file mode 100644
index 0000000..8cbb749
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUITimer.c
@@ -0,0 +1,273 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUITimer.c
+Purpose : Supplies timers
+----------------------------------------------------------------------
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define GUI_TIMER_H2P(h) (GUI_TIMER_Obj*)GUI_ALLOC_h2p(h)
+
+/*********************************************************************
+*
+* Types
+*
+**********************************************************************
+*/
+
+typedef struct {
+ GUI_TIMER_CALLBACK* cb;
+ GUI_TIMER_HANDLE hNext;
+ int Flags;
+ U32 Context;
+ GUI_TIMER_TIME t0;
+ GUI_TIMER_TIME Period;
+} GUI_TIMER_Obj;
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+GUI_TIMER_HANDLE hFirstTimer;
+GUI_TIMER_HANDLE _hActiveTimer;
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _Unlink
+*/
+static void _Unlink(GUI_TIMER_HANDLE hTimer) {
+ GUI_TIMER_Obj* pTimer = GUI_TIMER_H2P(hTimer);
+ GUI_TIMER_HANDLE hi;
+ GUI_TIMER_Obj* pi;
+/* Check if it is the first element */
+ if (hFirstTimer == hTimer) {
+ hFirstTimer = pTimer->hNext;
+ return;
+ }
+ hi = hFirstTimer;
+/* Try to find it in the list ... */
+ while(hi) {
+ /* GUI_ASSERT(hi<1000,0); */
+ pi = GUI_TIMER_H2P(hi);
+ if (pi->hNext == hTimer) {
+ pi->hNext = pTimer->hNext;
+ break;
+ }
+ hi = pi->hNext;
+ }
+}
+
+/*********************************************************************
+*
+* _Link
+*
+* Purpose:
+* This routine inserts the new timer (referenced by its handle) into
+* the linked list. The linked list is sorted according to timestamps.
+* The first element is the timer which expires first.
+*/
+static void _Link(GUI_TIMER_HANDLE hNew) {
+ GUI_TIMER_Obj* pNew = GUI_TIMER_H2P(hNew);
+ GUI_TIMER_Obj* pTimer;
+ GUI_TIMER_Obj* pNext;
+ GUI_TIMER_HANDLE hNext;
+ if (hFirstTimer ==0) { /* List is empty, make it the only element */
+ hFirstTimer = hNew;
+ pNew->hNext = 0;
+ } else {
+ GUI_TIMER_Obj* pFirstTimer = GUI_TIMER_H2P(hFirstTimer);
+/* Check if we have to make it the first element */
+ if ((pNew->t0 - pFirstTimer->t0) <=0) {
+ pNew->hNext = hFirstTimer;
+ hFirstTimer = hNew;
+ return;
+ } else {
+ GUI_TIMER_HANDLE hTimer = hFirstTimer;
+/* Put it into the list */
+ do {
+ pTimer = GUI_TIMER_H2P(hTimer);
+ hNext = pTimer->hNext;
+ if (hNext ==0)
+ goto Append;
+ pNext = GUI_TIMER_H2P(hNext);
+ if ((pNew->t0 - pNext->t0) <=0) {
+ pNew->hNext = hNext;
+ pTimer->hNext= hNew;
+ return;
+ }
+ } while(1);
+/* Put it at the end of the list */
+Append:
+ pNew->hNext = hNext;
+ pTimer->hNext= hNew;
+ return;
+ }
+ }
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_TIMER_Exec
+*/
+int GUI_TIMER_Exec(void) {
+ int r = 0;
+ GUI_TIMER_TIME t = GUI_GetTime();
+ GUI_LOCK(); {
+ while (hFirstTimer) {
+ GUI_TIMER_Obj* pTimer = GUI_TIMER_H2P(hFirstTimer);
+ if ((pTimer->t0-t) <=0) {
+ GUI_TIMER_MESSAGE tm;
+ tm.Time = t;
+ tm.Context = pTimer->Context;
+ _hActiveTimer = hFirstTimer;
+ hFirstTimer = pTimer->hNext;
+ pTimer->cb(&tm);
+ r = 1;
+ } else
+ break;
+ }
+ /*
+ GUI_TIMER_Obj* pObj = GUI_TIMER_H2P(hObj);
+ pObj->t0 = Time;
+ */
+ } GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_TIMER_Create
+*/
+GUI_TIMER_HANDLE GUI_TIMER_Create(GUI_TIMER_CALLBACK* cb, int Time, U32 Context, int Flags) {
+ GUI_TIMER_HANDLE hObj;
+ GUI_TIMER_Obj* pObj;
+ GUI_LOCK();
+ GUI_USE_PARA(Flags);
+ GUI_USE_PARA(Time);
+ GUI_pfTimerExec = GUI_TIMER_Exec;
+ {
+ /* Alloc memory for obj */
+ hObj = GUI_ALLOC_AllocZero(sizeof(GUI_TIMER_Obj));
+ pObj = GUI_TIMER_H2P(hObj);
+ /* init member variables */
+ pObj->cb = cb;
+ pObj->Context = Context;
+ pObj->t0 = Time; //houhh 20061018...
+ /* Link it */
+ _Link(hObj);
+ } GUI_UNLOCK();
+ return hObj;
+}
+
+/*********************************************************************
+*
+* GUI_TIMER_Delete
+*/
+void GUI_TIMER_Delete(GUI_TIMER_HANDLE hObj) {
+/* Unlink Timer */
+ GUI_LOCK();
+ _Unlink(hObj);
+ GUI_ALLOC_Free(hObj);
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_TIMER_SetPeriod
+*/
+void GUI_TIMER_SetPeriod(GUI_TIMER_HANDLE hObj, GUI_TIMER_TIME Period) {
+ GUI_LOCK(); {
+ GUI_TIMER_Obj* pObj = GUI_TIMER_H2P(hObj);
+ pObj->Period = Period;
+ } GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_TIMER_SetTime
+*/
+void GUI_TIMER_SetTime(GUI_TIMER_HANDLE hObj, GUI_TIMER_TIME Time) {
+ GUI_LOCK(); {
+ GUI_TIMER_Obj* pObj = GUI_TIMER_H2P(hObj);
+ pObj->t0 = Time;
+ } GUI_UNLOCK();
+}
+
+//////
+void GUI_TIMER_Context(GUI_TIMER_HANDLE hObj, U32 Context) {
+ GUI_LOCK(); {
+ GUI_TIMER_Obj* pObj = GUI_TIMER_H2P(hObj);
+ pObj->Context = Context;
+ } GUI_UNLOCK();
+}
+//////
+
+/*********************************************************************
+*
+* GUI_TIMER_SetDelay
+*/
+void GUI_TIMER_SetDelay(GUI_TIMER_HANDLE hObj, GUI_TIMER_TIME Delay) {
+ GUI_LOCK(); {
+ GUI_TIMER_Obj* pObj = GUI_TIMER_H2P(hObj);
+ pObj->t0 = Delay;
+ _Unlink(hObj);
+ _Link(hObj);
+ } GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_TIMER_Restart
+*/
+void GUI_TIMER_Restart(GUI_TIMER_HANDLE hObj) {
+ GUI_TIMER_Obj* pObj;
+ GUI_LOCK();
+ {
+ if (hObj == 0) {
+ hObj = _hActiveTimer;
+ }
+ pObj = GUI_TIMER_H2P(hObj);
+ pObj->t0 = GUI_GetTime() +pObj->Period;
+ _Unlink(hObj);
+ _Link(hObj);
+ } GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIType.h b/User/lib/lcd/gui/Core/GUIType.h
new file mode 100644
index 0000000..de22bc3
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIType.h
@@ -0,0 +1,385 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIType.h
+Purpose : Include file define the types used for GUI
+---------------------------END-OF-HEADER------------------------------
+
+Attention : Do not modify this file ! If you do, you will not
+ be able do update to a later GUI version !
+
+*/
+
+#ifndef GUITYPE_H_INCLUDED
+#define GUITYPE_H_INCLUDED
+
+#include "LCD.h"
+#include "GUIConf.h"
+
+/* *************************************************************
+ * *
+ * Simple types *
+ * *
+ *************************************************************
+*/
+
+typedef const char * GUI_ConstString;
+
+
+/* *************************************************************
+ * *
+ * Structures *
+ * *
+ *************************************************************
+*/
+
+typedef LCD_COLOR GUI_COLOR;
+typedef LCD_LOGPALETTE GUI_LOGPALETTE;
+typedef LCD_DRAWMODE GUI_DRAWMODE;
+typedef LCD_RECT GUI_RECT;
+
+typedef struct {
+ void (* pfDraw)(int x0,int y0,int xsize, int ysize, const U8 GUI_UNI_PTR * pPixel, const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal, int xMag, int yMag);
+ GUI_COLOR (* pfIndex2Color)(int Index);
+} GUI_BITMAP_METHODS;
+
+typedef struct {
+ U16P XSize;
+ U16P YSize;
+ U16P BytesPerLine;
+ U16P BitsPerPixel;
+ const U8 GUI_UNI_PTR * pData;
+ const GUI_LOGPALETTE GUI_UNI_PTR * pPal;
+ const GUI_BITMAP_METHODS * pMethods;
+} GUI_BITMAP;
+
+/* This structure may not be changed because the data that it
+ expects is read in binary form (via any kind of interface,
+ at runtime).
+ This structure should therefor not be changed.
+*/
+typedef struct {
+ U16 ID; /* Version 1.00 => 100*/
+ U16 Version;
+ U16 XSize;
+ U16 YSize;
+ U16 BytesPerLine;
+ U16 BitsPerPixel;
+ U16 NumColors;
+ U16 HasTrans;
+} GUI_BITMAP_STREAM;
+
+typedef struct {
+ int x,y;
+ unsigned char Pressed;
+} GUI_PID_STATE;
+
+/*
+ ****************************************
+ * *
+ * FONT structures (new in V1.10) *
+ * *
+ ****************************************
+*/
+
+/* Translation list. Translates a character code into up to 2
+ indices of images to display on top of each other;
+ '' -> index('a'), index('') */
+typedef struct {
+ I16P c0;
+ I16P c1;
+} GUI_FONT_TRANSLIST;
+
+typedef struct {
+ U16P FirstChar;
+ U16P LastChar;
+ const GUI_FONT_TRANSLIST GUI_UNI_PTR * pList;
+} GUI_FONT_TRANSINFO;
+
+typedef struct {
+ U8 XSize;
+ U8 XDist;
+ U8 BytesPerLine;
+ const unsigned char GUI_UNI_PTR * pData;
+} GUI_CHARINFO;
+
+typedef struct GUI_FONT_PROP {
+ U16P First; /* first character */
+ U16P Last; /* last character */
+ const GUI_CHARINFO GUI_UNI_PTR * paCharInfo; /* address of first character */
+ const struct GUI_FONT_PROP GUI_UNI_PTR * pNext; /* pointer to next */
+} GUI_FONT_PROP;
+
+typedef struct {
+ const unsigned char GUI_UNI_PTR * pData;
+ const U8 GUI_UNI_PTR * pTransData;
+ const GUI_FONT_TRANSINFO GUI_UNI_PTR * pTrans;
+ U16P FirstChar;
+ U16P LastChar;
+ U8 XSize;
+ U8 XDist;
+ U8 BytesPerLine;
+} GUI_FONT_MONO;
+
+
+typedef struct GUI_FONT_INFO {
+ U16P First; /* first character */
+ U16P Last; /* last character */
+ const GUI_CHARINFO* paCharInfo; /* address of first character */
+ const struct GUI_FONT_INFO* pNext; /* pointer to next */
+} GUI_FONT_INFO;
+
+/*
+ ****************************************
+ * *
+ * FONT info structure *
+ * *
+ ****************************************
+
+This structure is used when retrieving information about a font.
+It is designed for future expansion without incompatibilities.
+*/
+typedef struct {
+ U16 Flags;
+ U8 Baseline;
+ U8 LHeight; /* height of a small lower case character (a,x) */
+ U8 CHeight; /* height of a small upper case character (A,X) */
+} GUI_FONTINFO;
+
+#define GUI_FONTINFO_FLAG_PROP (1<<0) /* Is proportional */
+#define GUI_FONTINFO_FLAG_MONO (1<<1) /* Is monospaced */
+#define GUI_FONTINFO_FLAG_AA (1<<2) /* Is an antialiased font */
+#define GUI_FONTINFO_FLAG_AA2 (1<<3) /* Is an antialiased font, 2bpp */
+#define GUI_FONTINFO_FLAG_AA4 (1<<4) /* Is an antialiased font, 4bpp */
+
+
+/**********************************************************************
+*
+* UNICODE Encoding
+*
+***********************************************************************
+*/
+typedef U16 tGUI_GetCharCode(const char GUI_UNI_PTR *s);
+typedef int tGUI_GetCharSize(const char GUI_UNI_PTR *s);
+typedef int tGUI_CalcSizeOfChar(U16 Char);
+typedef int tGUI_Encode(char *s, U16 Char);
+
+typedef struct {
+ tGUI_GetCharCode* pfGetCharCode;
+ tGUI_GetCharSize* pfGetCharSize;
+ tGUI_CalcSizeOfChar* pfCalcSizeOfChar;
+ tGUI_Encode* pfEncode;
+} GUI_UC_ENC_APILIST;
+
+/**********************************************************************
+*
+* FONT Encoding
+*
+***********************************************************************
+*/
+
+typedef int tGUI_GetLineDistX(const char GUI_UNI_PTR *s, int Len);
+typedef int tGUI_GetLineLen(const char GUI_UNI_PTR *s, int MaxLen);
+typedef void tGL_DispLine(const char GUI_UNI_PTR *s, int Len);
+
+typedef struct {
+ tGUI_GetLineDistX* pfGetLineDistX;
+ tGUI_GetLineLen* pfGetLineLen;
+ tGL_DispLine* pfDispLine;
+} tGUI_ENC_APIList;
+
+extern const tGUI_ENC_APIList GUI_ENC_APIList_SJIS;
+
+
+/*
+ ****************************************
+ * *
+ * FONT methods *
+ * *
+ ****************************************
+
+The parameter to the methods called pFont should be of type
+GUI_FONT, but unfortunately a lot of compilers can not handle
+forward declarations right ...
+So it ends up to be a void pointer.
+*/
+
+typedef struct GUI_FONT GUI_FONT;
+
+typedef void GUI_DISPCHAR(U16 c);
+typedef int GUI_GETCHARDISTX(U16P c);
+typedef void GUI_GETFONTINFO(const GUI_FONT GUI_UNI_PTR * pFont, GUI_FONTINFO * pfi);
+typedef char GUI_ISINFONT (const GUI_FONT GUI_UNI_PTR * pFont, U16 c);
+
+#define DECLARE_FONT(Type) \
+void GUI##Type##_DispChar (U16P c); \
+int GUI##Type##_GetCharDistX(U16P c); \
+void GUI##Type##_GetFontInfo (const GUI_FONT GUI_UNI_PTR * pFont, GUI_FONTINFO * pfi); \
+char GUI##Type##_IsInFont (const GUI_FONT GUI_UNI_PTR * pFont, U16 c)
+
+#if defined(__cplusplus)
+extern "C" { /* Make sure we have C-declarations in C++ programs */
+#endif
+
+/* MONO: Monospaced fonts */
+DECLARE_FONT(MONO);
+#define GUI_FONTTYPE_MONO \
+ GUIMONO_DispChar, \
+ GUIMONO_GetCharDistX, \
+ GUIMONO_GetFontInfo, \
+ GUIMONO_IsInFont, \
+ (tGUI_ENC_APIList*)0
+
+/* PROP: Proportional fonts */
+DECLARE_FONT(PROP);
+#define GUI_FONTTYPE_PROP \
+ GUIPROP_DispChar, \
+ GUIPROP_GetCharDistX, \
+ GUIPROP_GetFontInfo, \
+ GUIPROP_IsInFont, \
+ (tGUI_ENC_APIList*)0
+
+/* PROP: Proportional fonts SJIS */
+DECLARE_FONT(PROP);
+#define GUI_FONTTYPE_PROP_SJIS \
+ GUIPROP_DispChar, \
+ GUIPROP_GetCharDistX, \
+ GUIPROP_GetFontInfo, \
+ GUIPROP_IsInFont, \
+ &GUI_ENC_APIList_SJIS
+
+/* PROPAA: Proportional, antialiased fonts */
+DECLARE_FONT(PROPAA);
+#define GUI_FONTTYPE_PROPAA \
+ GUIPROPAA_DispChar, \
+ GUIPROPAA_GetCharDistX, \
+ GUIPROPAA_GetFontInfo, \
+ GUIPROPAA_IsInFont, \
+ (tGUI_ENC_APIList*)0
+
+/* PROPAA: Proportional, antialiased fonts, 2bpp */
+DECLARE_FONT(PROP_AA2);
+#define GUI_FONTTYPE_PROP_AA2 \
+ GUIPROP_AA2_DispChar, \
+ GUIPROP_AA2_GetCharDistX, \
+ GUIPROP_AA2_GetFontInfo, \
+ GUIPROP_AA2_IsInFont, \
+ (tGUI_ENC_APIList*)0
+
+/* PROPAA: Proportional, antialiased fonts, 2bpp, SJIS encoding */
+DECLARE_FONT(PROP_AA2);
+#define GUI_FONTTYPE_PROP_AA2_SJIS \
+ GUIPROP_AA2_DispChar, \
+ GUIPROP_AA2_GetCharDistX, \
+ GUIPROP_AA2_GetFontInfo, \
+ GUIPROP_AA2_IsInFont, \
+ GUI_ENCODE_SJIS
+
+/* PROPAA: Proportional, antialiased fonts, 4bpp */
+DECLARE_FONT(PROP_AA4);
+#define GUI_FONTTYPE_PROP_AA4 \
+ GUIPROP_AA4_DispChar, \
+ GUIPROP_AA4_GetCharDistX, \
+ GUIPROP_AA4_GetFontInfo, \
+ GUIPROP_AA4_IsInFont, \
+ (tGUI_ENC_APIList*)0
+
+/* PROPAA: Proportional, antialiased fonts, 4bpp, SJIS encoding */
+DECLARE_FONT(PROP_AA4);
+#define GUI_FONTTYPE_PROP_AA4_SJIS \
+ GUIPROP_AA4_DispChar, \
+ GUIPROP_AA4_GetCharDistX, \
+ GUIPROP_AA4_GetFontInfo, \
+ GUIPROP_AA4_IsInFont, \
+ GUI_ENCODE_SJIS
+
+#if defined(__cplusplus)
+ }
+#endif
+
+struct GUI_FONT {
+ GUI_DISPCHAR* pfDispChar;
+ GUI_GETCHARDISTX* pfGetCharDistX;
+ GUI_GETFONTINFO* pfGetFontInfo;
+ GUI_ISINFONT* pfIsInFont;
+ const tGUI_ENC_APIList* pafEncode;
+ U8 YSize;
+ U8 YDist;
+ char XMag;
+ char YMag;
+ union {
+ const void GUI_UNI_PTR * pFontData;
+ const GUI_FONT_MONO GUI_UNI_PTR * pMono;
+ const GUI_FONT_PROP GUI_UNI_PTR * pProp;
+ } p;
+ U8 Baseline;
+ U8 LHeight; /* height of a small lower case character (a,x) */
+ U8 CHeight; /* height of a small upper case character (A,X) */
+};
+
+/*********************************************************************
+*
+* Position independent font structures
+*/
+typedef struct {
+ U32 ID; /* Font file ID */
+ U16 YSize; /* Height of font */
+ U16 YDist; /* Space of font Y */
+ U16 Baseline; /* Index of baseline */
+ U16 LHeight; /* Height of a small lower case character (a) */
+ U16 CHeight; /* Height of a upper case character (A) */
+ U16 NumAreas; /* Number of character areas */
+} GUI_SI_FONT;
+
+typedef struct {
+ U16 First; /* Index of first character */
+ U16 Last; /* Index of last character */
+} GUI_SIF_CHAR_AREA;
+
+typedef struct {
+ U16 XSize; /* Size of bitmap data in X */
+ U16 XDist; /* Number of pixels for increment cursor in X */
+ U16 BytesPerLine; /* Number of bytes per line */
+ U16 Dummy;
+ U32 OffData; /* Offset of pixel data */
+} GUI_SIF_CHARINFO;
+
+typedef struct tGUI_SIF_APIList_struct {
+ GUI_DISPCHAR * pDispChar;
+ GUI_GETCHARDISTX * pGetCharDistX;
+ GUI_GETFONTINFO * pGetFontInfo;
+ GUI_ISINFONT * pIsInFont;
+} tGUI_SIF_APIList;
+
+#define GUI_SIF_TYPE tGUI_SIF_APIList
+#define GUI_SIF_TYPE_PROP &GUI_SIF_APIList_Prop
+
+extern const tGUI_SIF_APIList GUI_SIF_APIList_Prop;
+
+/*
+ *********************************
+ * *
+ * Typedefs *
+ * *
+ *********************************
+*/
+
+#ifndef GUI_HMEM
+ #define GUI_HMEM I16P
+#endif
+#define GUI_HMEM_NULL (0)
+typedef GUI_HMEM GUI_HWIN;
+#endif /* GUITYPE_H_INCLUDED */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIUC0.c b/User/lib/lcd/gui/Core/GUIUC0.c
new file mode 100644
index 0000000..87059c9
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIUC0.c
@@ -0,0 +1,74 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIUC0.C
+Purpose : Implementation of character and string services
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_UC2DB
+*
+* Purpose:
+* Convert Convert UNICODE 16-bit value into double byte version
+* - Byte0: First byte, msb
+* - Byte1: Last byte, lsb
+*/
+void GUI_UC2DB(U16 Code, U8* pOut) {
+/* move regular ASCII to (unused) 0xE000-0xE0ff area */
+ if (Code < 0x100) {
+ if (Code !=0) /* end marker ? */
+ Code += 0xe000;
+ } else {
+/* If Low byte 0: Move to (unused) 0xE100-0xE1ff area */
+ if ((Code&0xff) == 0) {
+ Code = (Code>>8) +0xe100;
+ }
+ }
+/* Convert into double byte, putting msb first*/
+ *pOut++ = Code >> 8; /* Save msb first */
+ *pOut = Code & 0xff;
+}
+
+/*********************************************************************
+*
+* GUI_DB2UC
+*
+* Purpose:
+* Convert Unicode double byte into UNICODE.
+* - Byte0: First byte, msb
+* - Byte1: Last byte, lsb
+*/
+U16 GUI_DB2UC(U8 Byte0, U8 Byte1) {
+ if (Byte0==0)
+ return 0;
+ if ((Byte0&0xfe) == 0xe0) {
+ if (Byte0 == 0xe0) /* ASCII */
+ return Byte1;
+ return ((U16)Byte1)<<8; /* low byte was zero */
+ }
+ return Byte1 | (((U16)Byte0)<<8);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIVal.c b/User/lib/lcd/gui/Core/GUIVal.c
new file mode 100644
index 0000000..b845481
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIVal.c
@@ -0,0 +1,111 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIVAL.C
+Purpose : Routines to display values as dec, binary or hex
+----------------------------------------------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+#include "string.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispDecShift
+*/
+void GUI_DispDecShift(I32 v, U8 Len, U8 Shift) {
+ char ac[12];
+ char* s = ac;
+ GUI_AddDecShift(v, Len, Shift, &s);
+ GUI_DispString(ac);
+}
+
+/*********************************************************************
+*
+* GUI_DispSDecShift
+*/
+void GUI_DispSDecShift(I32 v, U8 Len, U8 Shift) {
+ char ac[12];
+ char* s = ac;
+ v = GUI_AddSign(v, &s);
+ GUI_AddDecShift(v, --Len, Shift, &s);
+ GUI_DispString(ac);
+}
+
+/*********************************************************************
+*
+* GUI_DispDecMin
+*/
+void GUI_DispDecMin(I32 v) {
+ char ac[12];
+ char* s = ac;
+ GUI_AddDecMin(v, &s);
+ GUI_DispString(ac);
+}
+
+/*********************************************************************
+*
+* GUI_DispDecSpace
+*/
+void GUI_DispDecSpace(I32 v, U8 MaxDigits) {
+ char ac[12];
+ char* s = ac;
+ U8 Len;
+ if (v < 0) {
+ v = GUI_AddSign(v, &s);
+ MaxDigits--;
+ }
+ Len = GUI_Long2Len(v);
+ while (Len++ < MaxDigits) {
+ *s++ = ' ';
+ }
+ GUI_AddDecMin(v, &s);
+ GUI_DispString(ac);
+}
+
+/*********************************************************************
+*
+* GUI_DispSDec
+*/
+void GUI_DispSDec(I32 v, U8 Len) {
+ GUI_DispSDecShift(v,Len,0);
+}
+
+/*********************************************************************
+*
+* GUI_DispDec
+*/
+void GUI_DispDec(I32 v, U8 Len) {
+ GUI_DispDecShift(v, Len,0);
+}
+
+/*********************************************************************
+*
+* GUI_DispDecAt
+*/
+void GUI_DispDecAt(I32 v, I16P x, I16P y, U8 Len) {
+ char ac[12];
+ char* s = ac;
+ GUI_AddDecShift(v, Len, 0, &s);
+ GUI_DispStringAt(ac, x, y);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIValf.c b/User/lib/lcd/gui/Core/GUIValf.c
new file mode 100644
index 0000000..9e714f6
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIValf.c
@@ -0,0 +1,110 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIValF.C
+Purpose : Displaying floating point values
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "math.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DispFloatFix
+*/
+static void _DispFloatFix(float f, char Len, char Decs, int DrawPlusSign) {
+ f *= GUI_Pow10[(unsigned)Decs];
+ f += 0.5f;
+ f = (float) floor (f);
+ if (DrawPlusSign) {
+ GUI_DispSDecShift((long)f, Len, Decs);
+ } else {
+ GUI_DispDecShift((long)f, Len, Decs);
+ }
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispFloatFix
+*/
+void GUI_DispFloatFix(float f, char Len, char Decs) {
+ _DispFloatFix(f, Len, Decs, 0);
+}
+
+/*********************************************************************
+*
+* GUI_DispFloatMin
+*/
+void GUI_DispFloatMin(float f, char Fract) {
+ char Len;
+ Len = GUI_Long2Len((long)f);
+ if ((f < 0) && (f > -1)) { /* If value < 0 and > -1 (e.g. -0.123) increment length by 1 */
+ Len++;
+ }
+ _DispFloatFix(f, (char)(Len + Fract + (Fract ? 1 : 0)), (char)Fract, 0);
+}
+
+/*********************************************************************
+*
+* GUI_DispFloat
+*/
+void GUI_DispFloat(float f, char Len) {
+ int Decs;
+ Decs = Len - GUI_Long2Len((long)f)-1;
+ if ((f < 0) && (f > -1)) { /* If value < 0 and > -1 (e.g. -0.123) decrement Decs */
+ Decs--;
+ }
+ if (Decs<0)
+ Decs =0;
+ _DispFloatFix(f, Len, (char)Decs, 0);
+}
+
+/*********************************************************************
+*
+* GUI_DispSFloatFix
+*/
+void GUI_DispSFloatFix(float f, char Len, char Fract) {
+ _DispFloatFix (f, Len, Fract, 1);
+}
+
+/*********************************************************************
+*
+* GUI_DispSFloatMin
+*/
+void GUI_DispSFloatMin(float f, char Fract) {
+ char Len;
+ Len = GUI_Long2Len((long)f);
+ if ((f < 0) && (f > -1)) { /* If value < 0 and > -1 (e.g. -0.123) increment length by 1 */
+ Len++;
+ }
+ if (f>0) {
+ Len++;
+ }
+ _DispFloatFix(f, (char)(Len + Fract + (Fract ? 1 : 0)), (char)Fract, 1);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUIVersion.h b/User/lib/lcd/gui/Core/GUIVersion.h
new file mode 100644
index 0000000..bb3fa3b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUIVersion.h
@@ -0,0 +1,27 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIVersion.h
+Purpose : Include file defining current GUI version
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#ifndef GUI_VERSION_H
+#define GUI_VERSION_H
+
+#define GUI_VERSION 39001
+
+#endif /* Avoid multiple inclusion */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_ALLOC_AllocInit.c b/User/lib/lcd/gui/Core/GUI_ALLOC_AllocInit.c
new file mode 100644
index 0000000..5f44ff4
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_ALLOC_AllocInit.c
@@ -0,0 +1,61 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIAlloc.C
+Purpose : Dynamic memory management
+----------------------------------------------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include /* for memcpy, memset */
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Internal memory management
+*
+**********************************************************************
+*/
+
+/*********************************************************************
+*
+* GUI_ALLOC_AllocInit
+*
+* Purpose:
+* Alloc memory block of the given size and initialize from the given pointer.
+* If the pointer is a NULL pointer, zeroinit
+*/
+GUI_HMEM GUI_ALLOC_AllocInit(const void *pInitData, GUI_ALLOC_DATATYPE Size) {
+ GUI_HMEM hMem;
+ GUI_LOCK();
+ if (Size == 0) {
+ return (GUI_HMEM)0;
+ }
+ hMem = GUI_ALLOC_AllocNoInit(Size);
+ if (hMem) {
+ void *pMem;
+ pMem = GUI_ALLOC_h2p(hMem);
+ if (pInitData) {
+ memcpy(pMem, pInitData, Size);
+ } else {
+ GUI_MEMSET((U8*)pMem, 0, Size);
+ }
+ }
+ GUI_UNLOCK();
+ return hMem;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_ALLOC_AllocZero.c b/User/lib/lcd/gui/Core/GUI_ALLOC_AllocZero.c
new file mode 100644
index 0000000..69bc100
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_ALLOC_AllocZero.c
@@ -0,0 +1,49 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIAlloc.C
+Purpose : Dynamic memory management
+----------------------------------------------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include /* for memcpy, memset */
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Internal memory management
+*
+**********************************************************************
+*/
+
+/*********************************************************************
+*
+* GUI_ALLOC_AllocZero
+*/
+GUI_HMEM GUI_ALLOC_AllocZero(GUI_ALLOC_DATATYPE Size) {
+ GUI_HMEM hMem;
+ GUI_LOCK();
+ GUI_DEBUG_LOG2("\nGUI_ALLOC_Alloc... requesting %d, %d avail", Size, GUI_ALLOC_GetMaxSize());
+ hMem = GUI_ALLOC_AllocNoInit(Size);
+ if (hMem) {
+ GUI_MEMSET((U8*)GUI_ALLOC_h2p(hMem), 0, Size); /* Zeroinit ! */
+ }
+ GUI_UNLOCK();
+ return hMem;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_AddBin.c b/User/lib/lcd/gui/Core/GUI_AddBin.c
new file mode 100644
index 0000000..6159e7e
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_AddBin.c
@@ -0,0 +1,49 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_AddBin.c
+Purpose : Converts binary value 2 string
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_AddBin
+*/
+void GUI_AddBin(U32 v, U8 Len, char** ps) {
+ char *s = *ps;
+#if GUI_DEBUG_LEVEL >1
+ if (Len > 32) {
+ GUI_DEBUG_WARN("Can not display more than 32 bin. digits");
+ Len = 32;
+ }
+#endif
+ (*ps) += Len;
+ **ps = '\0'; /* Make sure string is 0-terminated */
+ while(Len--) {
+ *(s + Len) = (char)('0' + (v & 1));
+ v >>= 1;
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_AddDec.c b/User/lib/lcd/gui/Core/GUI_AddDec.c
new file mode 100644
index 0000000..aecc5f5
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_AddDec.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_AddDec.c
+Purpose : Routines to display values in decimal form
+----------------------------------------------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+#include "string.h"
+
+/*********************************************************************
+*
+* Public routines
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_AddDec
+*/
+void GUI_AddDec(I32 v, U8 Len, char**ps) {
+ GUI_AddDecShift(v, Len, 0, ps);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_AddDecMin.c b/User/lib/lcd/gui/Core/GUI_AddDecMin.c
new file mode 100644
index 0000000..81cf36a
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_AddDecMin.c
@@ -0,0 +1,39 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_AddDecMin.c
+Purpose : Routines to display values in decimal form
+----------------------------------------------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+#include "string.h"
+
+/*********************************************************************
+*
+* Public routines
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_AddDecMin
+*/
+void GUI_AddDecMin(I32 v, char**ps) {
+ U8 Len = GUI_Long2Len(v);
+ GUI_AddDecShift(v, Len, 0, ps);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_AddDecShift.c b/User/lib/lcd/gui/Core/GUI_AddDecShift.c
new file mode 100644
index 0000000..1471e96
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_AddDecShift.c
@@ -0,0 +1,137 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_AddDecShift.c
+Purpose : Routines to display values as dec
+----------------------------------------------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+#include "string.h"
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+
+const U32 GUI_Pow10[10] = {
+ 1 , 10, 100, 1000, 10000,
+ 100000, 1000000, 10000000, 100000000, 1000000000
+};
+
+/*********************************************************************
+*
+* Static routines
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _Check_NegLong
+*/
+static int _Check_NegLong(I32 *pv, char**ps) {
+ if (*pv < 0) {
+ *(*ps)++ = '-';
+ *pv = -*pv;
+ return 1;
+ }
+ return 0;
+}
+
+/*********************************************************************
+*
+* Module internal routines
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_Long2Len
+*/
+int GUI_Long2Len(I32 vSign) {
+ int Len = 1;
+ I32 v = (vSign > 0) ? vSign : -vSign;
+ while (( ((U32)v) >= GUI_Pow10[Len]) && (Len < 9)) {
+ Len++;
+ }
+ if (vSign < 0) {
+ Len++;
+ }
+ return Len;
+}
+
+/*********************************************************************
+*
+* GUI_AddSign
+*/
+long GUI_AddSign(long v, char**ps) {
+ char c;
+ if (v < 0) {
+ c = '-';
+ v = -v;
+ } else {
+ c = '+';
+ }
+ *(*ps)++ = c;
+ **ps = '\0';
+ return v;
+}
+
+/*********************************************************************
+*
+* Public routines
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_AddDecShift
+*/
+void GUI_AddDecShift(I32 v, U8 Len, U8 Shift, char**ps) {
+ char c;
+ long d;
+ #ifndef _CM16C
+ Len -= _Check_NegLong(&v, ps); /* TASKING: Tool internal error S003: asertion failed - please report */
+ #else
+ if (v < 0) {
+ *(*ps)++ = '-';
+ v = -v;
+ }
+ #endif
+ if (Shift) {
+ Len--;
+ }
+#if GUI_DEBUG_LEVEL >1
+ if (Len > 9) {
+ Len = 9;
+ GUI_DEBUG_ERROROUT("Can not display more than 9 dec. digits");
+ }
+#endif
+ if ((U32)v >= GUI_Pow10[Len])
+ v = GUI_Pow10[Len] - 1;
+ while (Len) {
+ if (Len-- == Shift)
+ *(*ps)++ = GUI_DecChar;
+ d = GUI_Pow10[Len];
+ c = (char) (v / d);
+ v -= c * d;
+ *(*ps)++ = c + '0';
+ }
+ **ps = 0;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_AddHex.c b/User/lib/lcd/gui/Core/GUI_AddHex.c
new file mode 100644
index 0000000..90a54ab
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_AddHex.c
@@ -0,0 +1,54 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_AddHex.c
+Purpose : Converts hex value 2 string
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static const char acHex[16] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_AddHex
+*/
+void GUI_AddHex(U32 v, U8 Len, char**ps) {
+ char *s = *ps;
+ if (Len > 8) {
+ return;
+ }
+ (*ps) += Len;
+ **ps = '\0'; /* Make sure string is 0-terminated */
+ while(Len--) {
+ *(s + Len) = acHex[v & 15];
+ v >>= 4;
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_AddKeyMsgHook.c b/User/lib/lcd/gui/Core/GUI_AddKeyMsgHook.c
new file mode 100644
index 0000000..57bef5d
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_AddKeyMsgHook.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetKeyMsgHook.c
+Purpose : Implementation of GUI_SetKeyMsgHook
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetKeyMsgHook
+*/
+GUI_KEY_MSG_HOOK* GUI_SetKeyMsgHook(GUI_KEY_MSG_HOOK* pHook) {
+ GUI_KEY_MSG_HOOK* r;
+ r = GUI_pfKeyMsgHook;
+ GUI_pfKeyMsgHook = pHook;
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_BMP.c b/User/lib/lcd/gui/Core/GUI_BMP.c
new file mode 100644
index 0000000..52a6852
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_BMP.c
@@ -0,0 +1,214 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_BMP.c
+Purpose : Implementation of GUI_BMP... functions
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Static functions
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _GetStep
+*/
+static int _GetStep(int * pYSize, int * pY) {
+ if (*pYSize > 0) {
+ *pY = *pYSize - 1;
+ return -1;
+ } else if (*pYSize < 0) {
+ *pYSize = -*pYSize;
+ *pY = 0;
+ return 1;
+ } else {
+ return 0;
+ }
+}
+
+/*********************************************************************
+*
+* _DrawBitmap_Pal
+*/
+static int _DrawBitmap_Pal(const U8 * pData, int x0, int y0, int XSize, int YSize, int Bpp, int NumColors) {
+ int i, y, Step;
+ int BytesPerLine = 0;
+ Step = _GetStep(&YSize, &y);
+ if (!Step) {
+ return 1;
+ }
+ for (i = 0; i < NumColors; i++) {
+ U8 r, g, b;
+ b = *(pData);
+ g = *(pData + 1);
+ r = *(pData + 2);
+ pData += 4;
+ LCD__aConvTable[i] = LCD_Color2Index(((U32)b << 16) | (g << 8) | r);
+ }
+ switch (Bpp) {
+ case 1:
+ BytesPerLine = ((XSize + 31) >> 5) << 2;
+ break;
+ case 4:
+ BytesPerLine = (((XSize << 2) + 31) >> 5) << 2;
+ break;
+ case 8:
+ BytesPerLine = ((XSize + 3) >> 2) << 2;
+ break;
+ }
+ for (; (y < YSize) && (y >= 0); y += Step) {
+ LCD_DrawBitmap(x0, y0 + y, XSize, 1, 1, 1, Bpp, XSize, pData, LCD__aConvTable);
+ pData += BytesPerLine;
+ }
+ return 0;
+}
+
+/*********************************************************************
+*
+* _DrawBitmap_24bpp
+*/
+static int _DrawBitmap_24bpp(const U8 * pData, int x0, int y0, int XSize, int YSize) {
+ int x, y, BytesPerLine, Step;
+ Step = _GetStep(&YSize, &y);
+ if (!Step) {
+ return 1;
+ }
+ BytesPerLine = ((24 * XSize + 31) >> 5) << 2;
+ for (; (y < YSize) && (y >= 0); y += Step) {
+ for (x = 0; x < XSize; x++) {
+ const U8 * pColor = pData + 3 * x;
+ U8 r, g, b;
+ b = *(pColor);
+ g = *(pColor + 1);
+ r = *(pColor + 2);
+ LCD_SetPixelIndex(x0 + x, y0 + y, LCD_Color2Index(((U32)b << 16) | (g << 8) | r));
+ }
+ pData += BytesPerLine;
+ }
+ return 0;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_BMP_GetXSize
+*/
+int GUI_BMP_GetXSize(const void * pBMP) {
+ const U8 * pSrc = (const U8 *)pBMP;
+ if (!pBMP) {
+ return 0;
+ }
+ pSrc += 18; /* skip rest of BITMAPFILEHEADER */
+ return GUI__Read32(&pSrc);
+}
+
+/*********************************************************************
+*
+* GUI_BMP_GetYSize
+*/
+int GUI_BMP_GetYSize(const void * pBMP) {
+ const U8 * pSrc = (const U8 *)pBMP;
+ if (!pBMP) {
+ return 0;
+ }
+ pSrc += 22;
+ return labs((int)GUI__Read32(&pSrc));
+}
+
+/*********************************************************************
+*
+* GUI_BMP_Draw
+*/
+int GUI_BMP_Draw(const void * pBMP, int x0, int y0) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ int Ret = 0;
+ I32 Width, Height;
+ U16 BitCount, Type;
+ U32 ClrUsed, Compression;
+ int NumColors;
+ const U8 * pSrc = (const U8 *)pBMP;
+ Type = GUI__Read16(&pSrc); /* get type from BITMAPFILEHEADER */
+ pSrc += 12; /* skip rest of BITMAPFILEHEADER */
+ /* get values from BITMAPINFOHEADER */
+ pSrc += 4;
+ Width = GUI__Read32(&pSrc);
+ Height = GUI__Read32(&pSrc);
+ pSrc += 2;
+ BitCount = GUI__Read16(&pSrc);
+ Compression = GUI__Read32(&pSrc);
+ pSrc += 12;
+ ClrUsed = GUI__Read32(&pSrc);
+ pSrc += 4;
+ /* calculate number of colors */
+ switch (BitCount) {
+ case 0: return 1; /* biBitCount = 0 (JPEG format) not supported. Please convert image ! */
+ case 1: NumColors = 2; break;
+ case 4: NumColors = 16; break;
+ case 8: NumColors = 256; break;
+ case 24: NumColors = 0; break;
+ default:
+ return 1; /* biBitCount should be 1, 4, 8 or 24 */
+ }
+ if (NumColors && ClrUsed) {
+ NumColors = ClrUsed;
+ }
+ /* check validity of bmp */
+ if ((NumColors > LCD_MAX_LOG_COLORS) ||
+ (Type != 0x4d42) || /* 'BM' */
+ (Compression) || /* only uncompressed bitmaps */
+ (Width > 1024) ||
+ (Height > 1024)) {
+ return 1;
+ }
+ /* start output */
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ r.x1 = (r.x0 = x0) + Width - 1;
+ r.y1 = (r.y0 = y0) + Height - 1;
+ WM_ITERATE_START(&r) {
+ #endif
+ /* Show bitmap */
+ switch (BitCount) {
+ case 1:
+ case 4:
+ case 8:
+ Ret = _DrawBitmap_Pal(pSrc, x0, y0, Width, Height, BitCount, NumColors);
+ break;
+ case 24:
+ Ret = _DrawBitmap_24bpp(pSrc, x0, y0, Width, Height);
+ break;
+ }
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+ return Ret;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_BMP_Serialize.c b/User/lib/lcd/gui/Core/GUI_BMP_Serialize.c
new file mode 100644
index 0000000..dc2824e
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_BMP_Serialize.c
@@ -0,0 +1,133 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_BMP_Serialize.c
+Purpose : Implementation of GUI_BMP_Serialize
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI.h"
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define DIB_HEADER_MARKER ((U16) ('M' << 8) | 'B') /* DIB Header Marker - used in writing DIBs to files */
+
+#define SIZEOF_BITMAPFILEHEADER 14
+#define SIZEOF_BITMAPINFOHEADER 40
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _SendU16
+*/
+static void _SendU16(GUI_CALLBACK_VOID_U8_P * pfSerialize, U16 Data, void * p) {
+ (*pfSerialize)((U8)Data, p);
+ (*pfSerialize)(Data >> 8, p);
+}
+
+/*********************************************************************
+*
+* _SendU32
+*/
+static void _SendU32(GUI_CALLBACK_VOID_U8_P * pfSerialize, U32 Data, void * p) {
+ _SendU16(pfSerialize, (U16)Data, p);
+ _SendU16(pfSerialize, Data >> 16, p);
+}
+
+/*********************************************************************
+*
+* Exported routines
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_BMP_SerializeEx
+*/
+void GUI_BMP_SerializeEx(GUI_CALLBACK_VOID_U8_P * pfSerialize, int x0, int y0, int xSize, int ySize, void * p) {
+ int x, y, i;
+ U32 BitmapOffset, FileSize;
+ int BPP = LCD_GetBitsPerPixel();
+ int BytesPerLine = ((BPP > 8) ? (2 * xSize + 2) : (xSize + 3)) & ~3;
+ int NumColors = (BPP > 8) ? 0 : (1 << BPP);
+ /* Write BITMAPFILEHEADER */
+ BitmapOffset = SIZEOF_BITMAPFILEHEADER
+ + SIZEOF_BITMAPINFOHEADER
+ + NumColors * 4;
+ FileSize = BitmapOffset
+ + ySize * BytesPerLine;
+ _SendU16(pfSerialize, DIB_HEADER_MARKER, p); /* bfType */
+ _SendU32(pfSerialize, FileSize, p); /* bfSize */
+ _SendU32(pfSerialize, 0, p); /* bfReserved1, bfReserved2 */
+ _SendU32(pfSerialize, BitmapOffset, p); /* bfOffBits */
+ /* Write BITMAPINFOHEADER */
+ _SendU32(pfSerialize, SIZEOF_BITMAPINFOHEADER, p); /* biSize */
+ _SendU32(pfSerialize, xSize, p); /* biWidth */
+ _SendU32(pfSerialize, ySize, p); /* biHeighth */
+ _SendU16(pfSerialize, 1, p); /* biPlanes */
+ _SendU16(pfSerialize, (BPP <= 8) ? 8 : 16, p); /* biBitCount */
+ _SendU32(pfSerialize, 0, p); /* biCompression */
+ _SendU32(pfSerialize, 0, p); /* biSizeImage */
+ _SendU32(pfSerialize, 0, p); /* biXPelsPerMeter */
+ _SendU32(pfSerialize, 0, p); /* biYPelsPerMeter */
+ _SendU32(pfSerialize, NumColors, p); /* biClrUsed */
+ _SendU32(pfSerialize, 0, p); /* biClrImportant */
+ /* Write palette */
+ for (i = 0; i < NumColors; i++) {
+ U32 Color;
+ Color = GUI_Index2Color(i);
+ Color = ((Color >> 16) & 255) | (Color & 0xff00) | ((Color & 0xff) << 16);
+ _SendU32(pfSerialize, Color, p);
+ }
+ /* Write pixels */
+ for (y = ySize - 1; y >= 0; y--) {
+ for (x = 0; x < xSize; x++) {
+ if (BPP <= 8) {
+ pfSerialize(LCD_GetPixelIndex(x0 + x, y0 + y), p);
+ } else {
+ U16 Color16;
+ U32 Color = LCD_GetPixelColor(x0 + x, y0 + y);
+ int b = ((Color >> 16) * 31 + 127) / 255;
+ int g = (((Color >> 8) & 255) * 31 + 127) / 255;
+ int r = ((Color & 255) * 31 + 127) / 255;
+ Color16 = (r << 10) | (g << 5) | b; /* 16 bpp Bitmaps in windows are 555: rrrrrgggggbbbbb */
+ _SendU16(pfSerialize, Color16, p);
+ }
+ }
+ /* Align pointer to next U32 */
+ for (i = BytesPerLine & 3; i > 0; i--) {
+ pfSerialize(0, p);
+ }
+ }
+}
+
+/*********************************************************************
+*
+* GUI_BMP_Serialize
+*/
+void GUI_BMP_Serialize(GUI_CALLBACK_VOID_U8_P * pfSerialize, void * p) {
+ GUI_BMP_SerializeEx(pfSerialize, 0, 0, LCD_GetXSize(), LCD_GetYSize(), p);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CalcColorDist.c b/User/lib/lcd/gui/Core/GUI_CalcColorDist.c
new file mode 100644
index 0000000..bc957dd
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CalcColorDist.c
@@ -0,0 +1,81 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CalcColorDist
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI.h"
+
+/*********************************************************************
+*
+* defines
+*
+**********************************************************************
+*/
+
+#if 1 /* Normaly calculate square values */
+
+ #define SQUARE(Dist) ((U16)Dist) * ((U16)Dist)
+
+#else
+
+ #define S(x) ((x)*(x))
+ #define SQUARES(Base) S(Base+0), S(Base+1), S(Base+2), S(Base+3), S(Base+4), S(Base+5), \
+ S(Base+6), S(Base+7), S(Base+8), S(Base+9), S(Base+10), S(Base+11), \
+ S(Base+12), S(Base+13), S(Base+14), S(Base+15)
+
+ static const U16 aSquare[] = {
+ SQUARES(0*16)
+ ,SQUARES(1*16), SQUARES(2*16), SQUARES(3*16)
+ ,SQUARES(4*16) ,SQUARES(5*16), SQUARES(6*16), SQUARES(7*16)
+ ,SQUARES(8*16) ,SQUARES(9*16), SQUARES(10*16),SQUARES(11*16)
+ ,SQUARES(12*16),SQUARES(13*16),SQUARES(14*16),SQUARES(15*16)
+ };
+
+ #define SQUARE(Dist) aSquare[Dist]
+
+#endif
+
+/*********************************************************************
+*
+* public code, color conversions for palette based displays
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_CalcColorDist
+*/
+U32 GUI_CalcColorDist (LCD_COLOR PalColor, LCD_COLOR Color) {
+/* This routine does not use abs() because we are optimizing for speed ! */
+ I16 Dist;
+ U32 Sum;
+ Dist = (PalColor&0xff) - (Color&0xff);
+ if (Dist < 0)
+ Dist = -Dist;
+ Sum = SQUARE(Dist);
+ Dist = ((PalColor>>8)&0xff) - ((Color>>8)&0xff);
+ if (Dist < 0)
+ Dist = -Dist;
+ Sum += SQUARE(Dist);
+ Dist = (PalColor>>16) - (Color>>16);
+ if (Dist < 0)
+ Dist = -Dist;
+ return Sum + SQUARE(Dist);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_ClearRectEx.c b/User/lib/lcd/gui/Core/GUI_ClearRectEx.c
new file mode 100644
index 0000000..48d3410
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_ClearRectEx.c
@@ -0,0 +1,36 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_ClearRectEx.c
+Purpose : Implementation of said function
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_ClearRectEx
+*/
+void GUI_ClearRectEx(const GUI_RECT* pRect) {
+ GUI_ClearRect(pRect->x0, pRect->y0, pRect->x1, pRect->y1);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_Color2VisColor.c b/User/lib/lcd/gui/Core/GUI_Color2VisColor.c
new file mode 100644
index 0000000..450dad8
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_Color2VisColor.c
@@ -0,0 +1,58 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_Color2VisColor.C
+Purpose : Implementation of GUI_Color2VisColor
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_Color2VisColor
+*/
+GUI_COLOR GUI_Color2VisColor(GUI_COLOR color) {
+ I16 Index;
+ GUI_COLOR r;
+ GUI_LOCK();
+ Index = LCD_Color2Index(color);
+ r = LCD_Index2Color(Index);
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_ColorIsAvailable
+*/
+char GUI_ColorIsAvailable(GUI_COLOR color) {
+ return (GUI_Color2VisColor(color) == color) ? 1 : 0;
+}
+
+/*********************************************************************
+*
+* GUI_CalcVisColorError
+*/
+U32 GUI_CalcVisColorError(GUI_COLOR color) {
+ return GUI_CalcColorDist(color, GUI_Color2VisColor(color));
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_ConfDefaults.h b/User/lib/lcd/gui/Core/GUI_ConfDefaults.h
new file mode 100644
index 0000000..19655c6
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_ConfDefaults.h
@@ -0,0 +1,155 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_ConfDefaults.h
+Purpose : Defaults for GUI config switches.
+---------------------------END-OF-HEADER------------------------------
+
+Attention : Do not modify this file ! If you do, you will not
+ be able do update to a later GUI version !
+
+*/
+
+#ifndef GUI_CONFDEFAULTS_H
+#define GUI_CONFDEFAULTS_H
+
+#include "GUIConf.h"
+
+/**********************************************************************
+*
+* Defaults for config switches
+*
+***********************************************************************
+*/
+
+/* Define "universal pointer". Normally, this is not needed (define will expand to nothing)
+ However, on some systems (AVR - IAR compiler) it can be necessary ( -> __generic),
+ since a default pointer can access RAM only, not the built-in Flash
+*/
+#ifndef GUI_UNI_PTR
+ #define GUI_UNI_PTR
+ #define GUI_UNI_PTR_USED 0
+#else
+ #define GUI_UNI_PTR_USED 1
+#endif
+
+/* Define const storage. Normally, this is not needed (define will expand to const)
+ However, on some systems (AVR - IAR compiler) it can be necessary ( -> __flash const),
+ since otherwise constants are copied into RAM
+*/
+#ifndef GUI_ALLOC_SIZE
+ #define GUI_ALLOC_SIZE 1000
+#endif
+
+#ifndef GUI_CONST_STORAGE
+ #define GUI_CONST_STORAGE const
+#endif
+
+#ifndef GUI_SUPPORT_TOUCH
+ #define GUI_SUPPORT_TOUCH 0
+#endif
+
+#ifndef GUI_SUPPORT_MOUSE
+ #define GUI_SUPPORT_MOUSE 0
+#endif
+
+#ifndef GUI_SUPPORT_MEMDEV
+ #define GUI_SUPPORT_MEMDEV 0
+#endif
+
+#ifndef GUI_SUPPORT_AA
+ #define GUI_SUPPORT_AA 0
+#endif
+
+#ifndef GUI_OS
+ #define GUI_OS 0
+#endif
+
+#ifndef GUI_SUPPORT_LARGE_BITMAPS
+ #if GUI_ALLOC_SIZE > 65535
+ #define GUI_SUPPORT_LARGE_BITMAPS 1
+ #else
+ #define GUI_SUPPORT_LARGE_BITMAPS 0
+ #endif
+#endif
+
+#ifndef GUI_COMPATIBLE_MODE
+ #define GUI_COMPATIBLE_MODE 1
+#endif
+
+#ifndef GUI_NUM_LAYERS
+ #define GUI_NUM_LAYERS 1
+#endif
+
+#ifndef GUI_SUPPORT_CURSOR
+ #define GUI_SUPPORT_CURSOR (GUI_SUPPORT_MOUSE | GUI_SUPPORT_TOUCH)
+#endif
+
+#ifndef GUI_SUPPORT_DEVICES
+ #ifdef __C51__ /* Keil C51 limitation ... Indirect function calls are limited */
+ #define GUI_SUPPORT_DEVICES 0
+ #else
+ #define GUI_SUPPORT_DEVICES (GUI_SUPPORT_MEMDEV | (GUI_NUM_LAYERS > 1))
+ #endif
+#endif
+
+/* Some compilers for very simple chips can not generate code for function pointers
+with parameters. In this case, we do not use function pointers, but limit the functionality slightly */
+#ifndef GUI_COMPILER_SUPPORTS_FP
+ #ifdef __C51__
+ #define GUI_COMPILER_SUPPORTS_FP 0
+ #else
+ #define GUI_COMPILER_SUPPORTS_FP 1
+ #endif
+#endif
+
+#ifndef GUI_SUPPORT_ROTATION
+ #if GUI_COMPILER_SUPPORTS_FP
+ #define GUI_SUPPORT_ROTATION 1
+ #else
+ #define GUI_SUPPORT_ROTATION 0
+ #endif
+#endif
+
+/* In order to avoid warnings for undefined parameters */
+#ifndef GUI_USE_PARA
+ #if defined (__BORLANDC__) || defined(NC30) || defined(NC308)
+ #define GUI_USE_PARA(para)
+ #else
+ #define GUI_USE_PARA(para) para=para;
+ #endif
+#endif
+
+/* Default for types */
+#ifndef GUI_TIMER_TIME
+ #define GUI_TIMER_TIME int /* default is to use 16 bits for 16 bit CPUs,
+ 32 bits on 32 bit CPUs for timing */
+#endif
+
+/* Types used for memory allocation */
+#if GUI_ALLOC_SIZE <32767
+ #define GUI_ALLOC_DATATYPE I16
+ #define GUI_ALLOC_DATATYPE_U U16
+#else
+ #define GUI_ALLOC_DATATYPE I32
+ #define GUI_ALLOC_DATATYPE_U U32
+#endif
+
+#ifndef GUI_MEMSET
+ #define GUI_MEMSET GUI__memset
+#endif
+
+
+#endif /* ifdef GUI_CONFDEFAULTS_H */
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorArrowL.c b/User/lib/lcd/gui/Core/GUI_CursorArrowL.c
new file mode 100644
index 0000000..546e047
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorArrowL.c
@@ -0,0 +1,36 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorArrowL.C
+Purpose : Defines the arrow cursor, large
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapArrowL = {
+ 18, /* XSize */
+ 30, /* YSize */
+ 5, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_ArrowL, /* Pointer to picture data (indices) */
+ &GUI_CursorPal /* Pointer to palette */
+};
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowL = {
+ &GUI_BitmapArrowL, 0, 0
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorArrowLI.c b/User/lib/lcd/gui/Core/GUI_CursorArrowLI.c
new file mode 100644
index 0000000..1bf8e8b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorArrowLI.c
@@ -0,0 +1,36 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorArrowLI.c
+Purpose : Defines the arrow cursor, large inverted
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapArrowLI = {
+ 18, /* XSize */
+ 30, /* YSize */
+ 5, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_ArrowL, /* Pointer to picture data (indices) */
+ &GUI_CursorPalI /* Pointer to palette */
+};
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowLI = {
+ &GUI_BitmapArrowLI, 0, 0
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorArrowLPx.c b/User/lib/lcd/gui/Core/GUI_CursorArrowLPx.c
new file mode 100644
index 0000000..e4bc95b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorArrowLPx.c
@@ -0,0 +1,55 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorArrowLPx.C
+Purpose : Defines the pixel offset of the arrow cursor, large
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE unsigned char GUI_Pixels_ArrowL[150] = {
+ 0x40, 0x00, 0x00, 0x00, 0x00,
+ 0x50, 0x00, 0x00, 0x00, 0x00,
+ 0x64, 0x00, 0x00, 0x00, 0x00,
+ 0x69, 0x00, 0x00, 0x00, 0x00,
+ 0x6A, 0x40, 0x00, 0x00, 0x00,
+ 0x6A, 0x90, 0x00, 0x00, 0x00,
+ 0x6A, 0xA4, 0x00, 0x00, 0x00,
+ 0x6A, 0xA9, 0x00, 0x00, 0x00,
+ 0x6A, 0xAA, 0x40, 0x00, 0x00,
+ 0x6A, 0xAA, 0x90, 0x00, 0x00,
+ 0x6A, 0xAA, 0xA4, 0x00, 0x00,
+ 0x6A, 0xAA, 0xA9, 0x00, 0x00,
+ 0x6A, 0xAA, 0xAA, 0x40, 0x00,
+ 0x6A, 0xAA, 0xAA, 0x90, 0x00,
+ 0x6A, 0xAA, 0xAA, 0xA4, 0x00,
+ 0x6A, 0xAA, 0xAA, 0xA9, 0x00,
+ 0x6A, 0xAA, 0xAA, 0xAA, 0x40,
+ 0x6A, 0xAA, 0x95, 0x55, 0x50,
+ 0x6A, 0x9A, 0x90, 0x00, 0x00,
+ 0x6A, 0x46, 0xA4, 0x00, 0x00,
+ 0x69, 0x06, 0xA4, 0x00, 0x00,
+ 0x64, 0x01, 0xA9, 0x00, 0x00,
+ 0x50, 0x01, 0xA9, 0x00, 0x00,
+ 0x40, 0x00, 0x6A, 0x40, 0x00,
+ 0x00, 0x00, 0x6A, 0x40, 0x00,
+ 0x00, 0x00, 0x1A, 0x90, 0x00,
+ 0x00, 0x00, 0x1A, 0x90, 0x00,
+ 0x00, 0x00, 0x06, 0xA4, 0x00,
+ 0x00, 0x00, 0x06, 0xA4, 0x00,
+ 0x00, 0x00, 0x01, 0x50, 0x00
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorArrowM.c b/User/lib/lcd/gui/Core/GUI_CursorArrowM.c
new file mode 100644
index 0000000..61a1c50
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorArrowM.c
@@ -0,0 +1,36 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorArrowM.C
+Purpose : Defines the arrow cursor, medium
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapArrowM = {
+ 12, /* XSize */
+ 20, /* YSize */
+ 3, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_ArrowM, /* Pointer to picture data (indices) */
+ &GUI_CursorPal /* Pointer to palette */
+};
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowM = {
+ &GUI_BitmapArrowM, 0, 0
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorArrowMI.c b/User/lib/lcd/gui/Core/GUI_CursorArrowMI.c
new file mode 100644
index 0000000..db0c4bd
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorArrowMI.c
@@ -0,0 +1,36 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorArrowMI.C
+Purpose : Defines the arrow cursor, medium inverted
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapArrowMI = {
+ 12, /* XSize */
+ 20, /* YSize */
+ 3, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_ArrowM, /* Pointer to picture data (indices) */
+ &GUI_CursorPalI /* Pointer to palette */
+};
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowMI = {
+ &GUI_BitmapArrowMI, 0, 0
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorArrowMPx.c b/User/lib/lcd/gui/Core/GUI_CursorArrowMPx.c
new file mode 100644
index 0000000..fb6d532
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorArrowMPx.c
@@ -0,0 +1,45 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorArrowMPx.C
+Purpose : Defines the pixel offset of the arrow cursor, medium
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE unsigned char GUI_Pixels_ArrowM[60] = {
+ 0x40, 0x00, 0x00,
+ 0x50, 0x00, 0x00,
+ 0x64, 0x00, 0x00,
+ 0x69, 0x00, 0x00,
+ 0x6A, 0x40, 0x00,
+ 0x6A, 0x90, 0x00,
+ 0x6A, 0xA4, 0x00,
+ 0x6A, 0xA9, 0x00,
+ 0x6A, 0xAA, 0x40,
+ 0x6A, 0xAA, 0x90,
+ 0x6A, 0xAA, 0xA4,
+ 0x6A, 0xA9, 0x55,
+ 0x69, 0xA9, 0x00,
+ 0x64, 0x6A, 0x40,
+ 0x50, 0x6A, 0x40,
+ 0x40, 0x1A, 0x90,
+ 0x00, 0x1A, 0x90,
+ 0x00, 0x06, 0xA4,
+ 0x00, 0x06, 0xA4,
+ 0x00, 0x01, 0x50
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorArrowS.c b/User/lib/lcd/gui/Core/GUI_CursorArrowS.c
new file mode 100644
index 0000000..0f7fb59
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorArrowS.c
@@ -0,0 +1,36 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorArrowS.C
+Purpose : Defines the arrow cursor, small
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapArrowS = {
+ 9, /* XSize */
+ 15, /* YSize */
+ 3, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_ArrowS, /* Pointer to picture data (indices) */
+ &GUI_CursorPal /* Pointer to palette */
+};
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowS = {
+ &GUI_BitmapArrowS, 0, 0
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorArrowSI.c b/User/lib/lcd/gui/Core/GUI_CursorArrowSI.c
new file mode 100644
index 0000000..b7ccc9a
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorArrowSI.c
@@ -0,0 +1,36 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorArrowSI.c
+Purpose : Defines the arrow cursor, small inverted
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapArrowSI = {
+ 9, /* XSize */
+ 15, /* YSize */
+ 3, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_ArrowS, /* Pointer to picture data (indices) */
+ &GUI_CursorPalI /* Pointer to palette */
+};
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorArrowSI = {
+ &GUI_BitmapArrowSI, 0, 0
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorArrowSPx.c b/User/lib/lcd/gui/Core/GUI_CursorArrowSPx.c
new file mode 100644
index 0000000..ad36d77
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorArrowSPx.c
@@ -0,0 +1,39 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorArrowSPx.C
+Purpose : Defines the pixel offset of the arrow cursor, small
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE unsigned char GUI_Pixels_ArrowS[45] = {
+ 0x40, 0x00, 0x00,
+ 0x50, 0x00, 0x00,
+ 0x64, 0x00, 0x00,
+ 0x69, 0x00, 0x00,
+ 0x6A, 0x40, 0x00,
+ 0x6A, 0x90, 0x00,
+ 0x6A, 0xA4, 0x00,
+ 0x6A, 0xA9, 0x00,
+ 0x6A, 0x95, 0x40,
+ 0x66, 0x90, 0x00,
+ 0x51, 0xA4, 0x00,
+ 0x41, 0xA4, 0x00,
+ 0x00, 0x69, 0x00,
+ 0x00, 0x69, 0x00,
+ 0x00, 0x14, 0x00
+};
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorCrossL.c b/User/lib/lcd/gui/Core/GUI_CursorCrossL.c
new file mode 100644
index 0000000..179e2fa
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorCrossL.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorCrossL.c
+Purpose : Defines the cross cursor, large
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapCrossL = {
+ 31, /* XSize */
+ 31, /* YSize */
+ 8, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_CrossL, /* Pointer to picture data (indices) */
+ &GUI_CursorPal /* Pointer to palette */
+};
+
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossL = {
+ &GUI_BitmapCrossL, 15, 15
+};
+
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorCrossLI.c b/User/lib/lcd/gui/Core/GUI_CursorCrossLI.c
new file mode 100644
index 0000000..26c75be
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorCrossLI.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorCrossLI.c
+Purpose : Defines the cross cursor, large
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapCrossLI = {
+ 31, /* XSize */
+ 31, /* YSize */
+ 8, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_CrossL, /* Pointer to picture data (indices) */
+ &GUI_CursorPalI /* Pointer to palette */
+};
+
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossLI = {
+ &GUI_BitmapCrossLI, 15, 15
+};
+
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorCrossLPx.c b/User/lib/lcd/gui/Core/GUI_CursorCrossLPx.c
new file mode 100644
index 0000000..c80feaa
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorCrossLPx.c
@@ -0,0 +1,57 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorCrossLPx.C
+Purpose : Defines the pixel offset of the cross cursor, large
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE unsigned char GUI_Pixels_CrossL[248] = {
+ 0x00, 0x00, 0x00, 0x05, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x55, 0x55, 0x55, 0x56, 0x55, 0x55, 0x55, 0x54,
+ 0x6A, 0xAA, 0xAA, 0xA9, 0xAA, 0xAA, 0xAA, 0xA4,
+ 0x55, 0x55, 0x55, 0x56, 0x55, 0x55, 0x55, 0x54,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x06, 0x40, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x05, 0x40, 0x00, 0x00, 0x00
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorCrossM.c b/User/lib/lcd/gui/Core/GUI_CursorCrossM.c
new file mode 100644
index 0000000..0f89417
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorCrossM.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorCrossM.C
+Purpose : Defines the cross cursor, medium
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapCrossM = {
+ 21, /* XSize */
+ 21, /* YSize */
+ 6, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_CrossM, /* Pointer to picture data (indices) */
+ &GUI_CursorPal /* Pointer to palette */
+};
+
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossM = {
+ &GUI_BitmapCrossM, 10, 10
+};
+
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorCrossMI.c b/User/lib/lcd/gui/Core/GUI_CursorCrossMI.c
new file mode 100644
index 0000000..f8979e3
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorCrossMI.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorCrossMI.c
+Purpose : Defines the cross cursor, medium
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapCrossMI = {
+ 21, /* XSize */
+ 21, /* YSize */
+ 6, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_CrossM, /* Pointer to picture data (indices) */
+ &GUI_CursorPalI /* Pointer to palette */
+};
+
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossMI = {
+ &GUI_BitmapCrossMI, 10, 10
+};
+
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorCrossMPx.c b/User/lib/lcd/gui/Core/GUI_CursorCrossMPx.c
new file mode 100644
index 0000000..aca8897
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorCrossMPx.c
@@ -0,0 +1,47 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorCrossMPx.C
+Purpose : Defines the pixel offset of the cross cursor, large
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE unsigned char GUI_Pixels_CrossM[126] = {
+ 0x00, 0x00, 0x15, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x55, 0x55, 0x59, 0x55, 0x55, 0x40,
+ 0x6A, 0xAA, 0xA6, 0xAA, 0xAA, 0x40,
+ 0x55, 0x55, 0x59, 0x55, 0x55, 0x40,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x15, 0x00, 0x00, 0x00
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorCrossS.c b/User/lib/lcd/gui/Core/GUI_CursorCrossS.c
new file mode 100644
index 0000000..b5f2867
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorCrossS.c
@@ -0,0 +1,39 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorCrossS.C
+Purpose : Defines the cross cursor, small
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapCrossS = {
+ 11, /* XSize */
+ 11, /* YSize */
+ 3, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_CrossS, /* Pointer to picture data (indices) */
+ &GUI_CursorPal /* Pointer to palette */
+};
+
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossS = {
+ &GUI_BitmapCrossS, 5, 5
+};
+
+
+/*************************** End of file ****************************/
+
diff --git a/User/lib/lcd/gui/Core/GUI_CursorCrossSI.c b/User/lib/lcd/gui/Core/GUI_CursorCrossSI.c
new file mode 100644
index 0000000..2cb8b34
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorCrossSI.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorCrossSI.c
+Purpose : Defines the cross cursor, small inverted
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE GUI_BITMAP GUI_BitmapCrossSI = {
+ 11, /* XSize */
+ 11, /* YSize */
+ 3, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_Pixels_CrossS, /* Pointer to picture data (indices) */
+ &GUI_CursorPalI /* Pointer to palette */
+};
+
+
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorCrossSI = {
+ &GUI_BitmapCrossSI, 5, 5
+};
+
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorCrossSPx.c b/User/lib/lcd/gui/Core/GUI_CursorCrossSPx.c
new file mode 100644
index 0000000..660db8a
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorCrossSPx.c
@@ -0,0 +1,37 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorCrossSPx.C
+Purpose : Defines the pixel offset of the cross cursor, small
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+GUI_CONST_STORAGE unsigned char GUI_Pixels_CrossS[33] = {
+ 0x00, 0x54, 0x00,
+ 0x00, 0x64, 0x00,
+ 0x00, 0x64, 0x00,
+ 0x00, 0x64, 0x00,
+ 0x55, 0x65, 0x54,
+ 0x6A, 0x9A, 0xA4,
+ 0x55, 0x65, 0x54,
+ 0x00, 0x64, 0x00,
+ 0x00, 0x64, 0x00,
+ 0x00, 0x64, 0x00,
+ 0x00, 0x54, 0x00
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorHeaderM.c b/User/lib/lcd/gui/Core/GUI_CursorHeaderM.c
new file mode 100644
index 0000000..438a0ea
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorHeaderM.c
@@ -0,0 +1,49 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorHeaderM.c
+Purpose : Defines the header cursor, medium size
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* static data, cursor bitmap
+*
+**********************************************************************
+*/
+
+static GUI_CONST_STORAGE GUI_BITMAP _BitmapHeaderM = {
+ 17, /* XSize */
+ 17, /* YSize */
+ 5, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_PixelsHeaderM, /* Pointer to picture data (indices) */
+ &GUI_CursorPal /* Pointer to palette */
+};
+
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorHeaderM = {
+ &_BitmapHeaderM, 8, 8
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorHeaderMI.c b/User/lib/lcd/gui/Core/GUI_CursorHeaderMI.c
new file mode 100644
index 0000000..77bb62b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorHeaderMI.c
@@ -0,0 +1,49 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorHeaderMI.c
+Purpose : Defines the header cursor, medium size, invers
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* static data, cursor bitmap
+*
+**********************************************************************
+*/
+
+static GUI_CONST_STORAGE GUI_BITMAP _Bitmap = {
+ 17, /* XSize */
+ 17, /* YSize */
+ 5, /* BytesPerLine */
+ 2, /* BitsPerPixel */
+ GUI_PixelsHeaderM, /* Pointer to picture data (indices) */
+ &GUI_CursorPalI /* Pointer to palette */
+};
+
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+GUI_CONST_STORAGE GUI_CURSOR GUI_CursorHeaderMI = {
+ &_Bitmap, 8, 8
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorHeaderMPx.c b/User/lib/lcd/gui/Core/GUI_CursorHeaderMPx.c
new file mode 100644
index 0000000..2bf796b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorHeaderMPx.c
@@ -0,0 +1,49 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorHeaderMPx.c
+Purpose : Defines the pixels of the header cursor, medium
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public (internal) data
+*
+**********************************************************************
+*/
+
+GUI_CONST_STORAGE unsigned char GUI_PixelsHeaderM[5 * 17] = {
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x04, 0x01, 0x90, 0x04, 0x00,
+ 0x19, 0x55, 0x95, 0x59, 0x00,
+ 0x6a, 0xaa, 0xaa, 0xaa, 0x40,
+ 0x19, 0x55, 0x95, 0x59, 0x00,
+ 0x04, 0x01, 0x90, 0x04, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+ 0x00, 0x01, 0x90, 0x00, 0x00,
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorPal.c b/User/lib/lcd/gui/Core/GUI_CursorPal.c
new file mode 100644
index 0000000..6614c6f
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorPal.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorPal.C
+Purpose : Defines the colors for most cursors
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static GUI_CONST_STORAGE GUI_COLOR _aColor[] = {
+ 0x0000FF, 0x000000, 0xFFFFFF
+};
+
+GUI_CONST_STORAGE GUI_LOGPALETTE GUI_CursorPal = {
+ 3, /* number of entries */
+ 1, /* Has transparency */
+ &_aColor[0]
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_CursorPalI.c b/User/lib/lcd/gui/Core/GUI_CursorPalI.c
new file mode 100644
index 0000000..b499ada
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_CursorPalI.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_CursorPalI.C
+Purpose : Defines the colors for most inverted cursors
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static GUI_CONST_STORAGE GUI_COLOR _aColor[] = {
+ 0x0000FF, 0xFFFFFF, 0x000000
+};
+
+GUI_CONST_STORAGE GUI_LOGPALETTE GUI_CursorPalI = {
+ 3, /* number of entries */
+ 1, /* Has transparency */
+ &_aColor[0]
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispBin.c b/User/lib/lcd/gui/Core/GUI_DispBin.c
new file mode 100644
index 0000000..ec57ff7
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispBin.c
@@ -0,0 +1,52 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispBin.c
+Purpose : Routines to display values as binary
+----------------------------------------------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+#include "string.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispBin
+*/
+void GUI_DispBin(U32 v, U8 Len) {
+ char ac[33];
+ char* s = ac;
+ GUI_AddBin(v, Len, &s);
+ GUI_DispString(ac);
+}
+
+/*********************************************************************
+*
+* GUI_DispBinAt
+*/
+void GUI_DispBinAt(U32 v, I16P x, I16P y, U8 Len) {
+ char ac[33];
+ char* s = ac;
+ GUI_AddBin(v, Len, &s);
+ GUI_DispStringAt(ac, x, y);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispCEOL.c b/User/lib/lcd/gui/Core/GUI_DispCEOL.c
new file mode 100644
index 0000000..c316302
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispCEOL.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispBin.c
+Purpose : Routines to display values as binary
+----------------------------------------------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+#include "string.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispCEOL
+*/
+void GUI_DispCEOL(void) {
+ int y = GUI_Context.DispPosY - GUI_GetYAdjust();
+ GUI_ClearRect(GUI_Context.DispPosX, y, 4000, /* Max pos x */
+ y + GUI_Context.pAFont->YDist - 1);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispChar.c b/User/lib/lcd/gui/Core/GUI_DispChar.c
new file mode 100644
index 0000000..6eb2914
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispChar.c
@@ -0,0 +1,84 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispChar.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* CL_DispChar
+*/
+#if (GUI_WINSUPPORT)
+static void CL_DispChar(U16 c) {
+ GUI_RECT r;
+ WM_ADDORG(GUI_Context.DispPosX, GUI_Context.DispPosY);
+ r.x1 = (r.x0 = GUI_Context.DispPosX) + GUI_GetCharDistX(c) - 1;
+ r.y1 = (r.y0 = GUI_Context.DispPosY) + GUI_GetFontSizeY() - 1;
+ WM_ITERATE_START(&r) {
+ GL_DispChar(c);
+ } WM_ITERATE_END();
+ if (c != '\n') {
+ GUI_Context.DispPosX = r.x1 + 1;
+ }
+ WM_SUBORG(GUI_Context.DispPosX, GUI_Context.DispPosY);
+}
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispChar
+*/
+void GUI_DispChar(U16 c) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ CL_DispChar(c);
+ #else
+ GL_DispChar(c);
+ #endif
+ GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_DispCharAt
+*/
+void GUI_DispCharAt(U16 c, I16P x, I16P y) {
+ GUI_LOCK();
+ GUI_Context.DispPosX = x;
+ GUI_Context.DispPosY = y;
+ #if (GUI_WINSUPPORT)
+ CL_DispChar(c);
+ #else
+ GL_DispChar(c);
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispChars.c b/User/lib/lcd/gui/Core/GUI_DispChars.c
new file mode 100644
index 0000000..866fdc7
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispChars.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispChars.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispChars
+*/
+void GUI_DispChars(U16P c, int NumChars) {
+ while (--NumChars >= 0) {
+ GUI_DispChar(c);
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispHex.c b/User/lib/lcd/gui/Core/GUI_DispHex.c
new file mode 100644
index 0000000..b7f75a6
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispHex.c
@@ -0,0 +1,52 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispHex.C
+Purpose : Routines to display hex
+----------------------------------------------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public routines
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispHex
+*/
+void GUI_DispHex(U32 v, U8 Len) {
+ char ac[9];
+ char* s = ac;
+ GUI_AddHex(v, Len, &s);
+ GUI_DispString(ac);
+}
+
+/*********************************************************************
+*
+* GUI_DispHexAt
+*/
+void GUI_DispHexAt(U32 v, I16P x, I16P y, U8 Len) {
+ char ac[9];
+ char* s = ac;
+ GUI_AddHex(v, Len, &s);
+ GUI_DispStringAt(ac, x, y);
+}
+
+/*************************** End of file ****************************/
+
diff --git a/User/lib/lcd/gui/Core/GUI_DispString.c b/User/lib/lcd/gui/Core/GUI_DispString.c
new file mode 100644
index 0000000..926f0b1
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispString.c
@@ -0,0 +1,85 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispString.C
+Purpose : Implementation of GUI_DispString function.
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispString
+*/
+void GUI_DispString(const char GUI_UNI_PTR *s) {
+ int xAdjust, yAdjust, xOrg;
+ int FontSizeY;
+ if (!s)
+ return;
+ GUI_LOCK();
+ FontSizeY = GUI_GetFontDistY();
+ xOrg = GUI_Context.DispPosX;
+ /* Adjust vertical position */
+ yAdjust = GUI_GetYAdjust();
+ GUI_Context.DispPosY -= yAdjust;
+ for (; *s; s++) {
+ GUI_RECT r;
+ int LineNumChars = GUI__GetLineNumChars(s, 0x7fff);
+ int xLineSize = GUI__GetLineDistX(s, LineNumChars);
+ /* Check if x-position needs to be changed due to h-alignment */
+ switch (GUI_Context.TextAlign & GUI_TA_HORIZONTAL) {
+ case GUI_TA_CENTER: xAdjust = xLineSize / 2; break;
+ case GUI_TA_RIGHT: xAdjust = xLineSize; break;
+ default: xAdjust = 0;
+ }
+ r.x0 = GUI_Context.DispPosX -= xAdjust;
+ r.x1 = r.x0 + xLineSize - 1;
+ r.y0 = GUI_Context.DispPosY;
+ r.y1 = r.y0 + FontSizeY - 1;
+ GUI__DispLine(s, LineNumChars, &r);
+ GUI_Context.DispPosY = r.y0;
+ s += GUI_UC__NumChars2NumBytes(s, LineNumChars);
+ if ((*s == '\n') || (*s == '\r')) {
+ switch (GUI_Context.TextAlign & GUI_TA_HORIZONTAL) {
+ case GUI_TA_CENTER:
+ case GUI_TA_RIGHT:
+ GUI_Context.DispPosX = xOrg;
+ break;
+ default:
+ GUI_Context.DispPosX = GUI_Context.LBorder;
+ break;
+ }
+ if (*s == '\n')
+ GUI_Context.DispPosY += FontSizeY;
+ } else {
+ GUI_Context.DispPosX = r.x0 + xLineSize;
+ }
+ if (*s == 0) /* end of string (last line) reached ? */
+ break;
+ }
+ GUI_Context.DispPosY += yAdjust;
+ GUI_Context.TextAlign &= ~GUI_TA_HORIZONTAL;
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispStringAt.c b/User/lib/lcd/gui/Core/GUI_DispStringAt.c
new file mode 100644
index 0000000..93d357e
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispStringAt.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispStringAt.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispStringAt
+*/
+void GUI_DispStringAt(const char GUI_UNI_PTR *s, int x, int y) {
+ GUI_LOCK();
+ GUI_Context.DispPosX = x;
+ GUI_Context.DispPosY = y;
+ GUI_DispString(s);
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispStringAtCEOL.c b/User/lib/lcd/gui/Core/GUI_DispStringAtCEOL.c
new file mode 100644
index 0000000..cbea15b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispStringAtCEOL.c
@@ -0,0 +1,37 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispStringAtCEOL.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispStringAtCEOL
+*/
+void GUI_DispStringAtCEOL(const char GUI_UNI_PTR *s, int x, int y) {
+ GUI_DispStringAt(s,x,y);
+ GUI_DispCEOL();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispStringHCenter.c b/User/lib/lcd/gui/Core/GUI_DispStringHCenter.c
new file mode 100644
index 0000000..f584398
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispStringHCenter.c
@@ -0,0 +1,41 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispStringHCenter.c
+Purpose : Implementation of optional routine
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispStringHCenterAt
+*/
+void GUI_DispStringHCenterAt(const char GUI_UNI_PTR *s, int x, int y) {
+ int Align;
+ Align = GUI_SetTextAlign((GUI_Context.TextAlign & ~GUI_TA_LEFT) | GUI_TA_CENTER);
+ GUI_DispStringAt(s, x, y);
+ GUI_SetTextAlign(Align);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispStringInRect.c b/User/lib/lcd/gui/Core/GUI_DispStringInRect.c
new file mode 100644
index 0000000..49b0613
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispStringInRect.c
@@ -0,0 +1,169 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispStringInRect.c
+Purpose : Implementation of GUI_DispStringInRect
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include
+#include "GUI_Protected.h"
+#if GUI_WINSUPPORT
+#include "WM.h"
+#endif
+
+/*********************************************************************
+ *
+ * Public code
+ *
+ **********************************************************************
+ */
+/*********************************************************************
+ *
+ * GUI__DispStringInRect
+ */
+void GUI__DispStringInRect(const char GUI_UNI_PTR *s, GUI_RECT *pRect, int TextAlign, int MaxNumChars)
+{
+ GUI_RECT r;
+ GUI_RECT rLine;
+ int y = 0;
+ const char GUI_UNI_PTR *sOrg = s;
+ int FontYSize;
+ int xLine = 0;
+ int LineLen;
+ int NumCharsRem; /* Number of remaining characters */
+ FontYSize = GUI_GetFontSizeY();
+ if (pRect)
+ {
+ r = *pRect;
+ }
+ else
+ {
+ GUI_GetClientRect(&r);
+ }
+ /* handle vertical alignment */
+ if ((TextAlign & GUI_TA_VERTICAL) == GUI_TA_TOP)
+ {
+ y = r.y0;
+ }
+ else
+ {
+ int NumLines;
+ /* Count the number of lines */
+ for (NumCharsRem = MaxNumChars, NumLines = 1; NumCharsRem; NumLines++)
+ {
+ LineLen = GUI__GetLineNumChars(s, NumCharsRem);
+ NumCharsRem -= LineLen;
+ s += GUI_UC__NumChars2NumBytes(s, LineLen);
+ if (GUI__HandleEOLine(&s))
+ break;
+ }
+ /* Do the vertical alignment */
+ switch (TextAlign & GUI_TA_VERTICAL)
+ {
+ case GUI_TA_BASELINE:
+ case GUI_TA_BOTTOM:
+ y = r.y1 - NumLines * FontYSize + 1;
+ break;
+ case GUI_TA_VCENTER:
+ y = r.y0 + (r.y1 - r.y0 + 1 - NumLines * FontYSize) / 2;
+ break;
+ }
+ }
+ /* Output string */
+ for (NumCharsRem = MaxNumChars, s = sOrg; NumCharsRem;)
+ {
+ int xLineSize;
+ LineLen = GUI__GetLineNumChars(s, NumCharsRem);
+ NumCharsRem -= LineLen;
+ xLineSize = GUI__GetLineDistX(s, LineLen);
+ switch (TextAlign & GUI_TA_HORIZONTAL)
+ {
+ case GUI_TA_HCENTER:
+ xLine = r.x0 + (r.x1 - r.x0 - xLineSize) / 2;
+ break;
+ case GUI_TA_LEFT:
+ xLine = r.x0;
+ break;
+ case GUI_TA_RIGHT:
+ xLine = r.x1 - xLineSize + 1;
+ }
+ rLine.x0 = GUI_Context.DispPosX = xLine;
+ rLine.x1 = rLine.x0 + xLineSize - 1;
+ rLine.y0 = GUI_Context.DispPosY = y;
+ rLine.y1 = y + FontYSize - 1;
+ GUI__DispLine(s, LineLen, &rLine);
+ s += GUI_UC__NumChars2NumBytes(s, LineLen);
+ y += GUI_GetFontDistY();
+ if (GUI__HandleEOLine(&s))
+ break;
+ }
+}
+
+/*********************************************************************
+ *
+ * GUI_DispStringInRectMax
+ */
+#if (GUI_WINSUPPORT)
+void GUI_DispStringInRectMax(const char GUI_UNI_PTR *s, GUI_RECT *pRect, int TextAlign, int MaxLen)
+{
+ if (s)
+ {
+ const GUI_RECT *pOldClipRect = NULL;
+ GUI_RECT r;
+ GUI_LOCK();
+ if (pRect)
+ {
+ pOldClipRect = WM_SetUserClipRect(pRect);
+ if (pOldClipRect)
+ {
+ GUI__IntersectRects(&r, pRect, pOldClipRect);
+ WM_SetUserClipRect(&r);
+ }
+ }
+ GUI__DispStringInRect(s, pRect, TextAlign, MaxLen);
+ WM_SetUserClipRect(pOldClipRect);
+ GUI_UNLOCK();
+ }
+}
+
+#else
+
+void GUI_DispStringInRectMax(const char GUI_UNI_PTR *s, GUI_RECT *pRect, int TextAlign, int MaxLen)
+{
+ GUI_RECT Rect_Old, r;
+ if (s && pRect)
+ {
+ GUI_LOCK();
+ Rect_Old = GUI_Context.ClipRect;
+ GUI__IntersectRects(&r, pRect, &Rect_Old);
+ LCD_SetClipRectEx(&r);
+ GUI__DispStringInRect(s, pRect, TextAlign, MaxLen);
+ LCD_SetClipRectEx(&Rect_Old);
+ GUI_UNLOCK();
+ }
+}
+#endif
+
+/*********************************************************************
+ *
+ * GUI_DispStringInRect
+ */
+void GUI_DispStringInRect(const char GUI_UNI_PTR *s, GUI_RECT *pRect, int TextAlign)
+{
+ GUI_DispStringInRectMax(s, pRect, TextAlign, 0x7fff);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispStringInRectEx.c b/User/lib/lcd/gui/Core/GUI_DispStringInRectEx.c
new file mode 100644
index 0000000..dda6c93
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispStringInRectEx.c
@@ -0,0 +1,115 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispStringInRectEx.c
+Purpose : Implementation of GUI_DispStringInRectEx
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Private.h"
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+#if GUI_SUPPORT_ROTATION
+
+/*********************************************************************
+*
+* Global data
+*
+**********************************************************************
+*/
+
+GUI_RECT GUI_RectDispString; /* Used by LCD_Rotate... */
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+static const GUI_ROTATION * _SetRotation(const GUI_ROTATION* pLCD_Api) {
+ const GUI_ROTATION * pLCD_ApiOld;
+ GUI_LOCK();
+ pLCD_ApiOld = GUI_pLCD_APIList;
+ if (pLCD_Api) {
+ GUI_Context.pClipRect_HL = NULL; /* Do not perform high level clipping in rotated mode */
+ } else {
+ GUI_Context.pClipRect_HL = &GUI_Context.ClipRect;
+ }
+ GUI_pLCD_APIList = pLCD_Api;
+ GUI_UNLOCK();
+ return pLCD_ApiOld;
+}
+
+/*********************************************************************
+*
+* Exported code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispStringInRectEx
+*/
+void GUI_DispStringInRectEx(const char GUI_UNI_PTR *s, GUI_RECT* pRect, int TextAlign, int MaxLen, const GUI_ROTATION * pLCD_Api) {
+ const GUI_ROTATION * pLCD_ApiOld;
+ if (pLCD_Api == GUI_ROTATE_0) {
+ /* Do nothing else but calling GUI_DispStringInRectMax if pLCD_Api == GUI_ROTATE_0 */
+ GUI_DispStringInRectMax(s, pRect, TextAlign, MaxLen);
+ } else {
+ #if (!GUI_WINSUPPORT)
+ GUI_RECT Rect_Old;
+ #else
+ const GUI_RECT * pOldClipRect = NULL;
+ #endif
+ GUI_RECT rClip, rText = {0};
+ GUI_LOCK();
+ /* Set the clip rectangle */
+ if (pRect) {
+ rText = *pRect;
+ GUI_RectDispString = rText;
+ #if (GUI_WINSUPPORT)
+ pOldClipRect = WM_SetUserClipRect(pRect);
+ if (pOldClipRect) {
+ GUI__IntersectRects(&rClip, pRect, pOldClipRect);
+ WM_SetUserClipRect(&rClip);
+ }
+ #else
+ Rect_Old = GUI_Context.ClipRect;
+ GUI__IntersectRects(&rClip, pRect, &Rect_Old);
+ LCD_SetClipRectEx(&rClip);
+ #endif
+ }
+ pLCD_ApiOld = _SetRotation(pLCD_Api); /* Set the new function pointer for rotating text */
+ pLCD_Api->pfRect2TextRect(&rText); /* Calculate the text rectangle */
+ GUI__DispStringInRect(s, &rText, TextAlign, MaxLen); /* Display the string */
+ /* Restore old clipping rectangle */
+ #if (GUI_WINSUPPORT)
+ WM_SetUserClipRect(pOldClipRect);
+ #else
+ LCD_SetClipRectEx(&Rect_Old);
+ #endif
+ _SetRotation(pLCD_ApiOld);
+ GUI_UNLOCK();
+ }
+}
+
+#else /* Avoid empty object files */
+void GUI_DispStringInRectEx_C(void);
+void GUI_DispStringInRectEx_C(void) {}
+#endif
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispStringInRectMax.c b/User/lib/lcd/gui/Core/GUI_DispStringInRectMax.c
new file mode 100644
index 0000000..0c9dadd
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispStringInRectMax.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispStringInRectMax.c
+Purpose : Implementation of GUI_DispStringInRectMax
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include
+#include "GUI_Protected.h"
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DispStringLen.c b/User/lib/lcd/gui/Core/GUI_DispStringLen.c
new file mode 100644
index 0000000..b4a12c3
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DispStringLen.c
@@ -0,0 +1,45 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DispStringLen.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DispStringLen
+*/
+void GUI_DispStringLen(const char GUI_UNI_PTR *s, int MaxNumChars) {
+ U16 Char;
+ GUI_LOCK();
+ while (MaxNumChars && ((Char = GUI_UC__GetCharCodeInc(&s)) != 0)) {
+ GUI_DispChar(Char);
+ MaxNumChars--;
+ }
+ while (MaxNumChars--) {
+ GUI_DispChar(' ');
+ }
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawBitmap.c b/User/lib/lcd/gui/Core/GUI_DrawBitmap.c
new file mode 100644
index 0000000..9c6c893
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawBitmap.c
@@ -0,0 +1,88 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawBitmap.C
+Purpose : Implementation of GUI_DrawBitmap
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_DrawBitmap
+*
+* Purpose:
+* Translates the external bitmap format into an internal
+* format. This turned out to be necessary as the internal
+* format is easier to create and more flexible for routines
+* that draw text-bitmaps.
+*/
+void GL_DrawBitmap(const GUI_BITMAP GUI_UNI_PTR * pBitmap, int x0, int y0) {
+ GUI_DRAWMODE PrevDraw;
+ const GUI_LOGPALETTE GUI_UNI_PTR * pPal;
+ pPal = pBitmap->pPal;
+ PrevDraw = GUI_SetDrawMode(0); /* No Get... at this point */
+ GUI_SetDrawMode((pPal && pPal->HasTrans) ? (PrevDraw|GUI_DRAWMODE_TRANS) : PrevDraw &(~GUI_DRAWMODE_TRANS));
+ if (pBitmap->pMethods) {
+ #if GUI_COMPILER_SUPPORTS_FP /* Do not support this on VERY simple chips and compilers */
+ pBitmap->pMethods->pfDraw(x0, y0, pBitmap->XSize ,pBitmap->YSize, (U8 const *)pBitmap->pData, pBitmap->pPal, 1, 1);
+ #endif
+ } else {
+ const LCD_PIXELINDEX* pTrans;
+ pTrans = LCD_GetpPalConvTable(pBitmap->pPal);
+ if (!pTrans) {
+ pTrans = (pBitmap->BitsPerPixel != 1) ? NULL : &LCD_BKCOLORINDEX;
+ }
+ LCD_DrawBitmap( x0,y0
+ ,pBitmap->XSize ,pBitmap->YSize
+ ,1,1
+ ,pBitmap->BitsPerPixel
+ ,pBitmap->BytesPerLine
+ ,pBitmap->pData
+ ,pTrans);
+ }
+ GUI_SetDrawMode(PrevDraw);
+}
+
+/*********************************************************************
+*
+* GUI_DrawBitmap
+*/
+void GUI_DrawBitmap(const GUI_BITMAP GUI_UNI_PTR * pBitmap, int x0, int y0) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ r.x1 = (r.x0 = x0) + pBitmap->XSize-1;
+ r.y1 = (r.y0 = y0) + pBitmap->YSize-1;
+ WM_ITERATE_START(&r) {
+ #endif
+ GL_DrawBitmap(pBitmap, x0, y0);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawBitmapEx.c b/User/lib/lcd/gui/Core/GUI_DrawBitmapEx.c
new file mode 100644
index 0000000..708da4d
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawBitmapEx.c
@@ -0,0 +1,155 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawBitmapEx.c
+Purpose : Draws a bitmap with free magnification
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+#include "stdlib.h"
+
+/*********************************************************************
+*
+* static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_DrawBitmapEx
+*/
+static void GL_DrawBitmapEx(const GUI_BITMAP GUI_UNI_PTR * pBitmap, int x0, int y0,
+ int xCenter, int yCenter, int xMag, int yMag) {
+ LCD_PIXELINDEX Index, IndexPrev = 0;
+ LCD_COLOR Color;
+ int x, y, xi, yi, xSize, ySize, xAct, xStart, xMagAbs, xiMag, yMin, yMax, yEnd, yPrev, yStep;
+ char Cached, HasTrans = 0;
+ /* Use clipping rect to reduce calculation */
+ yMin = GUI_Context.ClipRect.y0;
+ yMax = GUI_Context.ClipRect.y1;
+ /* Init some values */
+ xSize = pBitmap->XSize;
+ ySize = pBitmap->YSize;
+ xMagAbs = ((xMag < 0) ? -xMag : xMag);
+ x0 -= (I32)((xMag < 0) ? xSize - xCenter - 1 : xCenter) * (I32)(xMagAbs) / (I32)(1000);
+ yEnd = y0 + GUI__DivideRound32(((I32)(-yCenter) * (I32)(yMag)), 1000);
+ yPrev = yEnd + 1;
+ yStep = (yMag < 0) ? -1 : 1;
+ if (pBitmap->pPal) {
+ if (pBitmap->pPal->HasTrans) {
+ HasTrans = 1;
+ }
+ }
+ for (yi = 0; yi < ySize; yi++) {
+ y = yEnd;
+ yEnd = y0 + GUI__DivideRound32(((I32)(yi + 1 - yCenter) * (I32)(yMag)), 1000);
+ if (y != yPrev) {
+ yPrev = y;
+ do {
+ if ((y >= yMin) && (y <= yMax)) {
+ xStart = -1;
+ x = 0;
+ xiMag = 0;
+ Cached = 0;
+ for (xi = 0; xi < xSize; xi++) {
+ xiMag += xMagAbs;
+ if (xiMag >= 1000) {
+ xAct = (xMag > 0) ? xi : xSize - xi - 1;
+ Index = GUI_GetBitmapPixelIndex(pBitmap, xAct, yi);
+ if (Index != IndexPrev || xStart == -1) {
+ if ((Index == 0) && HasTrans) {
+ /* Transparent color ... clear cache */
+ if (Cached) {
+ LCD_DrawHLine(x0 + xStart, y, x0 + x - 1);
+ Cached = 0;
+ }
+ } else {
+ /* Another color ... draw contents of cache */
+ if (Cached && xStart != -1) {
+ LCD_DrawHLine(x0 + xStart, y, x0 + x - 1);
+ }
+ xStart = x;
+ Cached = 1;
+ if (pBitmap->pMethods) {
+ Color = pBitmap->pMethods->pfIndex2Color(Index);
+ } else {
+ Color = pBitmap->pPal->pPalEntries[Index];
+ }
+ LCD_SetColorIndex(LCDDEV_L0_Color2Index(Color));
+ }
+ IndexPrev = Index;
+ }
+ do {
+ x++;
+ xiMag -= 1000;
+ } while (xiMag >= 1000);
+ }
+ }
+ /* Clear cache */
+ if (Cached) {
+ LCD_DrawHLine(x0 + xStart, y, x0 + x - 1);
+ }
+ }
+ y += yStep;
+ } while ((yMag < 0) ? (y > yEnd) : (y < yEnd));
+ }
+ }
+}
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawBitmapEx
+*/
+void GUI_DrawBitmapEx(const GUI_BITMAP GUI_UNI_PTR * pBitmap, int x0, int y0,
+ int xCenter, int yCenter, int xMag, int yMag) {
+ GUI_COLOR OldColor;
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ GUI_LOCK();
+ OldColor = GUI_GetColor();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0, y0);
+ if (xMag >= 0) {
+ r.x0 = x0 + GUI__DivideRound32(((I32)(-xCenter) * (I32)(xMag)), 1000);
+ r.x1 = x0 + GUI__DivideRound32(((I32)(pBitmap->XSize - xCenter - 1) * (I32)(xMag)), 1000);
+ } else {
+ r.x1 = x0 + GUI__DivideRound32(((I32)(-xCenter) * (I32)(xMag)), 1000);
+ r.x0 = x0 + GUI__DivideRound32(((I32)(pBitmap->XSize - xCenter - 1) * (I32)(xMag)), 1000);
+ }
+ if (yMag >= 0) {
+ r.y0 = y0 + GUI__DivideRound32(((I32)(-yCenter) * (I32)(yMag)), 1000);
+ r.y1 = y0 + GUI__DivideRound32(((I32)(pBitmap->YSize - yCenter - 1) * (I32)(yMag)), 1000);
+ } else {
+ r.y1 = y0 + GUI__DivideRound32(((I32)(-yCenter) * (I32)(yMag)), 1000);
+ r.y0 = y0 + GUI__DivideRound32(((I32)(pBitmap->YSize - yCenter - 1) * (I32)(yMag)), 1000);
+ }
+ WM_ITERATE_START(&r) {
+ #endif
+ GL_DrawBitmapEx(pBitmap, x0, y0, xCenter, yCenter, xMag, yMag);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_SetColor(OldColor);
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawBitmapExp.c b/User/lib/lcd/gui/Core/GUI_DrawBitmapExp.c
new file mode 100644
index 0000000..4996d8a
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawBitmapExp.c
@@ -0,0 +1,62 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawBitmapExp.C
+Purpose : Implementation of GUI_DrawBitmapExp
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawBitmapExp
+*/
+void GUI_DrawBitmapExp(int x0, int y0, int XSize, int YSize, int XMul, int YMul,
+ int BitsPerPixel, int BytesPerLine, const U8 GUI_UNI_PTR * pData,
+ const GUI_LOGPALETTE GUI_UNI_PTR * pPal)
+{
+ GUI_DRAWMODE PrevDraw;
+ const LCD_PIXELINDEX* pTrans;
+ GUI_LOCK();
+ pTrans = LCD_GetpPalConvTable(pPal);
+ PrevDraw = GUI_SetDrawMode((pPal && pPal->HasTrans) ? GUI_DRAWMODE_TRANS : 0);
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ {
+ GUI_RECT r;
+ r.x0 = x0;
+ r.x1 = x0 + XSize * XMul -1;
+ r.y0 = y0;
+ r.y1 = y0 + YSize * YMul -1;
+ WM_ITERATE_START(&r); {
+ #endif
+ LCD_DrawBitmap( x0, y0 ,XSize ,YSize, XMul, YMul
+ ,BitsPerPixel, BytesPerLine, pData, pTrans);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ }
+ #endif
+ GUI_SetDrawMode(PrevDraw);
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawBitmapMag.c b/User/lib/lcd/gui/Core/GUI_DrawBitmapMag.c
new file mode 100644
index 0000000..901a1de
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawBitmapMag.c
@@ -0,0 +1,74 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawBitmapMag.C
+Purpose : Implementation file for GUI_DrawBitmapMag
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawBitmapMag
+*/
+void GUI_DrawBitmapMag(const GUI_BITMAP GUI_UNI_PTR *pBitmap, int x0, int y0, int xMul, int yMul) {
+ GUI_DRAWMODE PrevDraw;
+ int xSize, ySize;
+ const GUI_LOGPALETTE GUI_UNI_PTR * pPal;
+ const LCD_PIXELINDEX* pTrans;
+ GUI_LOCK();
+ pPal = pBitmap->pPal;
+ xSize = pBitmap->XSize;
+ ySize = pBitmap->YSize;
+ pTrans = LCD_GetpPalConvTable(pPal);
+ if (!pTrans) {
+ pTrans = (pBitmap->BitsPerPixel != 1) ? NULL : &LCD_BKCOLORINDEX;
+ }
+ PrevDraw = GUI_SetDrawMode((pPal && pPal->HasTrans) ? GUI_DRAWMODE_TRANS : 0);
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ {
+ GUI_RECT r;
+ r.x0 = x0;
+ r.x1 = x0 + xSize * xMul -1;
+ r.y0 = y0;
+ r.y1 = y0 + ySize * yMul -1;
+ WM_ITERATE_START(&r);
+ #endif
+ if (pBitmap->pMethods) {
+ #if GUI_COMPILER_SUPPORTS_FP /* Do not support this on VERY simple chips and compilers */
+ pBitmap->pMethods->pfDraw(x0, y0, pBitmap->XSize ,pBitmap->YSize, (U8 const *)pBitmap->pData, pBitmap->pPal, xMul, yMul);
+ #endif
+ } else {
+ LCD_DrawBitmap(x0, y0, xSize, ySize, xMul, yMul
+ ,pBitmap->BitsPerPixel, pBitmap->BytesPerLine
+ ,pBitmap->pData, pTrans);
+ }
+ #if (GUI_WINSUPPORT)
+ WM_ITERATE_END();
+ }
+ #endif
+ GUI_SetDrawMode(PrevDraw);
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawFocusRect.c b/User/lib/lcd/gui/Core/GUI_DrawFocusRect.c
new file mode 100644
index 0000000..57d9dcc
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawFocusRect.c
@@ -0,0 +1,69 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawFocusRect.C
+Purpose : Implementation of GUI_DrawFocusRect
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawFocusRect
+*/
+static void _DrawFocusRect(const GUI_RECT* pr) {
+ int i;
+ for (i = pr->x0; i <= pr->x1; i += 2) {
+ LCD_DrawPixel(i, pr->y0);
+ LCD_DrawPixel(i, pr->y1);
+ }
+ for (i = pr->y0; i <= pr->y1; i += 2) {
+ LCD_DrawPixel(pr->x0, i);
+ LCD_DrawPixel(pr->x1, i);
+ }
+}
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawFocusRect
+*/
+void GUI_DrawFocusRect(const GUI_RECT *pRect, int Dist) {
+ GUI_RECT r;
+ GUI__ReduceRect(&r, pRect, Dist);
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(r.x0, r.y0);
+ WM_ADDORG(r.x1, r.y1);
+ WM_ITERATE_START(&r); {
+ #endif
+ _DrawFocusRect(&r);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawGraph.c b/User/lib/lcd/gui/Core/GUI_DrawGraph.c
new file mode 100644
index 0000000..9de2c48
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawGraph.c
@@ -0,0 +1,95 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawPolyline.c
+Purpose : Implementation of GUI_DrawPolyline
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawGraph
+*/
+static void _DrawGraph(I16 *pay, int NumPoints, int xOff, int yOff) {
+ int i;
+ int y0, y1;
+ int yClip0, yClip1;
+ /* Perform high level clipping in x */
+ yClip0 = GUI_Context.pClipRect_HL->y0;
+ yClip1 = GUI_Context.pClipRect_HL->y1;
+ i=0;
+ if (GUI_Context.pClipRect_HL) {
+ if (xOff < GUI_Context.pClipRect_HL->x0)
+ i = GUI_Context.pClipRect_HL->x0 - xOff;
+ if (xOff+NumPoints-1 > GUI_Context.pClipRect_HL->x1)
+ NumPoints = GUI_Context.pClipRect_HL->x1 - xOff + 1;
+ }
+ /* Start drawing if there is something left to do after x-clipping */
+ if (i < NumPoints) {
+ y0 = *(pay + i++) + yOff;
+ /* Iterate */
+ for (; i < NumPoints; i++) {
+ /* Perform high level clipping in y */
+ y1 = *(pay + i) + yOff;
+ if ((y0 >= yClip0) || (y1 >= yClip0)) {
+ if ((y0 <= yClip1) || (y1 <= yClip1)) {
+ int y01;
+ y01 = (y1 + y0) / 2;
+ if (y0 <= y1) {
+ LCD_DrawVLine(i + xOff - 1, y0, y01);
+ LCD_DrawVLine(i + xOff, y01, y1);
+ } else {
+ LCD_DrawVLine(i + xOff - 1, y01, y0);
+ LCD_DrawVLine(i + xOff, y1, y01);
+ }
+ }
+ }
+ y0 = y1;
+ }
+ }
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawGraph
+*/
+void GUI_DrawGraph(I16 *pay, int NumPoints, int x0, int y0) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ WM_ITERATE_START(NULL); {
+ #endif
+ _DrawGraph(pay, NumPoints, x0, y0);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawHLine.c b/User/lib/lcd/gui/Core/GUI_DrawHLine.c
new file mode 100644
index 0000000..07c3259
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawHLine.c
@@ -0,0 +1,52 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawHLine.C
+Purpose : Implementation of GUI_DrawHLine
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawHLine
+*/
+void GUI_DrawHLine(int y0, int x0, int x1) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ WM_ADDORGX(x1);
+ r.x0 = x0;
+ r.x1 = x1;
+ r.y1 = r.y0 = y0;
+ WM_ITERATE_START(&r) {
+ #endif
+ LCD_HL_DrawHLine(x0, y0, x1);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawPie.c b/User/lib/lcd/gui/Core/GUI_DrawPie.c
new file mode 100644
index 0000000..2dbfd25
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawPie.c
@@ -0,0 +1,66 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIARCFloat.C
+Purpose : Draw Arc routines based on floating point
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawPie
+*/
+static void _DrawPie(int x0, int y0, unsigned int r, int Angle0, int Angle1, int Type) {
+ int PenSizeOld;
+ PenSizeOld = GUI_GetPenSize();
+ GUI_SetPenSize(r);
+ r /= 2;
+ GL_DrawArc(x0,y0,r,r,Angle0, Angle1);
+ GUI_SetPenSize(PenSizeOld);
+ GUI_USE_PARA(Type);
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawPie
+*/
+void GUI_DrawPie(int x0, int y0, int r, int a0, int a1, int Type) {
+ GUI_LOCK();
+ #if GUI_WINSUPPORT
+ WM_ADDORG(x0,y0);
+ WM_ITERATE_START(NULL) {
+ #endif
+ _DrawPie( x0, y0, r, a0, a1, Type);
+ #if GUI_WINSUPPORT
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawPixel.c b/User/lib/lcd/gui/Core/GUI_DrawPixel.c
new file mode 100644
index 0000000..171f7de
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawPixel.c
@@ -0,0 +1,50 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawPixel.c
+Purpose : Implementation of GUI_DrawPixel
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawPixel
+*/
+void GUI_DrawPixel(int x, int y) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x,y);
+ r.x0 = r.x1 = x;
+ r.y0 = r.y1 = y;
+ WM_ITERATE_START(&r); {
+ #endif
+ LCD_HL_DrawPixel(x,y);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawPolyline.c b/User/lib/lcd/gui/Core/GUI_DrawPolyline.c
new file mode 100644
index 0000000..d2cf6ac
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawPolyline.c
@@ -0,0 +1,66 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawPolyLine.c
+Purpose : Implementation of GUI_DrawPolyline
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawPolyLine
+*
+* Draw Poly line, which does not have to be a closed shape
+*/
+static void _DrawPolyLine(const GUI_POINT*pPoints, int NumPoints, int x0, int y0) {
+ GL_MoveTo(pPoints->x+x0, pPoints->y+y0);
+ while (--NumPoints >0) {
+ pPoints++;
+ GL_DrawLineTo(pPoints->x+x0, pPoints->y+y0);
+ }
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawPolyLine
+*/
+void GUI_DrawPolyLine(const GUI_POINT* pPoints, int NumPoints, int x0, int y0) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ WM_ITERATE_START(NULL); {
+ #endif
+ _DrawPolyLine (pPoints, NumPoints, x0, y0);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawRectEx.c b/User/lib/lcd/gui/Core/GUI_DrawRectEx.c
new file mode 100644
index 0000000..d242c6c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawRectEx.c
@@ -0,0 +1,36 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawRectEx.C
+Purpose : Implementation of GUI_DrawRectEx
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawRectEx
+*/
+void GUI_DrawRectEx(const GUI_RECT* pRect) {
+ GUI_DrawRect(pRect->x0, pRect->y0, pRect->x1, pRect->y1);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_DrawVLine.c b/User/lib/lcd/gui/Core/GUI_DrawVLine.c
new file mode 100644
index 0000000..a413273
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_DrawVLine.c
@@ -0,0 +1,52 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawVLine.C
+Purpose : Implementation of GUI_DrawVLine
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_DrawVLine
+*/
+void GUI_DrawVLine(int x0, int y0, int y1) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ WM_ADDORGY(y1);
+ r.x1 = r.x0 = x0;
+ r.y0 = y0;
+ r.y1 = y1;
+ WM_ITERATE_START(&r); {
+ #endif
+ LCD_DrawVLine(x0, y0, y1);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_ErrorOut.c b/User/lib/lcd/gui/Core/GUI_ErrorOut.c
new file mode 100644
index 0000000..749e61b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_ErrorOut.c
@@ -0,0 +1,126 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_ErrorOut.C
+Purpose : Logging (used only at higher debug levels)
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include
+#include "GUI_Protected.h"
+#include "GUI_X.h"
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define MAXLEN 50
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _CopyString
+*/
+static void _CopyString(char*d, const char*s, int MaxLen) {
+ while ((MaxLen > 0) && *s) {
+ *d++ = *s++;
+ MaxLen--;
+ }
+ *d = 0;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_ErrorOut
+*/
+void GUI_ErrorOut(const char *s) { GUI_X_ErrorOut(s); }
+
+/*********************************************************************
+*
+* GUI_ErrorOut1
+*/
+void GUI_ErrorOut1(const char *s, int p0) {
+ char ac[MAXLEN + 10];
+ char* sOut = ac;
+ GUI_MEMSET((U8*)ac, 0, sizeof(ac));
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI_ErrorOut(ac);
+}
+
+/*********************************************************************
+*
+* GUI_ErrorOut2
+*/
+void GUI_ErrorOut2(const char *s, int p0, int p1) {
+ char ac[MAXLEN + 20];
+ char* sOut = ac;
+ GUI_MEMSET((U8*)ac, 0, sizeof(ac));
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI__AddSpaceHex(p1, 8, &sOut);
+ GUI_ErrorOut(ac);
+}
+
+/*********************************************************************
+*
+* GUI_ErrorOut3
+*/
+void GUI_ErrorOut3(const char *s, int p0, int p1, int p2) {
+ char ac[MAXLEN + 30];
+ char* sOut = ac;
+ GUI_MEMSET((U8*)ac, 0, sizeof(ac));
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI__AddSpaceHex(p1, 8, &sOut);
+ GUI__AddSpaceHex(p2, 8, &sOut);
+ GUI_ErrorOut(ac);
+}
+
+/*********************************************************************
+*
+* GUI_ErrorOut4
+*/
+void GUI_ErrorOut4(const char *s, int p0, int p1, int p2, int p3) {
+ char ac[MAXLEN + 40] = {0};
+ char* sOut = ac;
+ GUI_MEMSET((U8*)ac, 0, sizeof(ac));
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI__AddSpaceHex(p1, 8, &sOut);
+ GUI__AddSpaceHex(p2, 8, &sOut);
+ GUI__AddSpaceHex(p3, 8, &sOut);
+ GUI_ErrorOut(ac);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_Exec.c b/User/lib/lcd/gui/Core/GUI_Exec.c
new file mode 100644
index 0000000..9a1210e
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_Exec.c
@@ -0,0 +1,62 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_Exec.c
+Purpose : Implementation of GUI_Exec
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+#if GUI_WINSUPPORT
+#include "WM.h"
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_Exec1
+*/
+int GUI_Exec1(void) {
+ int r = 0;
+ /* Execute background jobs */
+ if (GUI_pfTimerExec) {
+ if ((*GUI_pfTimerExec)()) {
+ r = 1; /* We have done something */
+ }
+ }
+ #if GUI_WINSUPPORT /* If 0, WM will not generate any code */
+ if (WM_Exec())
+ r = 1;
+ #endif
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_Exec
+*/
+int GUI_Exec(void) {
+ int r = 0;
+ while (GUI_Exec1()) {
+ r = 1; /* We have done something */
+ }
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_FillPolygon.c b/User/lib/lcd/gui/Core/GUI_FillPolygon.c
new file mode 100644
index 0000000..10ed2e3
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_FillPolygon.c
@@ -0,0 +1,275 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_FillPolygon.C
+Purpose : Fill polygon routine
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* defines, Configs
+*
+**********************************************************************
+*/
+
+#define GUI_FP_MAXCOUNT 12
+
+/*********************************************************************
+*
+* static data
+*
+**********************************************************************
+*/
+
+static int GL_FP_Cnt;
+static I16 _aX[GUI_FP_MAXCOUNT];
+
+/*********************************************************************
+*
+* static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawHLine
+*/
+static void _DrawHLine(int x0, int y, int x1) {
+ if (x0 < x1) {
+ LCD_HL_DrawHLine(x0, y, x1);
+ } else {
+ LCD_HL_DrawHLine(x1, y, x0);
+ }
+}
+
+/*********************************************************************
+*
+* _CheckYInterSect
+*
+* This function returns the x-coordinate of the intersection
+* of the given line at the given y-coordinate.
+* If there is no intersection, GUI_XMAX is returned.
+* This routine does not work for horizontal lines, as there
+* would be more than a single point as intersection. This situation
+* needs to be checked prior to calling the routine.
+* Returns:
+* 0 if no intersection
+* 1 if we have an intersection
+*/
+static int _CheckYInterSect(int y, int* px, const GUI_POINT*paPoint0, const GUI_POINT*paPoint1) {
+ int x0, y0, x1, y1;
+ if (paPoint0->y <= (paPoint1)->y) {
+ y0 = paPoint0->y;
+ if (y0 > y) /* Check if there is an intersection ... (early out) */
+ return 0;
+ y1 = paPoint1->y;
+ if (y1 < y) /* Check if there is an intersection ... (early out) */
+ return 0;
+ x0 = paPoint0->x;
+ x1 = paPoint1->x;
+ } else {
+ y0 = paPoint1->y;
+ if (y0 > y) /* Check if there is an intersection ... (early out) */
+ return 0;
+ y1 = paPoint0->y;
+ if (y1 < y) /* Check if there is an intersection ... (early out) */
+ return 0;
+ x0 = paPoint1->x;
+ x1 = paPoint0->x;
+ }
+/* Calculate intersection */
+ {
+ I32 Mul = (I32)(x1 - x0) * (I32)(y - y0);
+ if (Mul > 0) {
+ Mul += (y1 - y0) >> 1; /* for proper rounding */
+ } else {
+ Mul -= ((y1 - y0) >> 1) - 1; /* for proper rounding */
+ }
+ x0 += Mul / (y1 - y0);
+ }
+ *px = x0;
+ return 1;
+}
+
+/*********************************************************************
+*
+* _Add
+*
+* This function adds a point into the sorted array
+*/
+static void _Add(int x) {
+ if (GL_FP_Cnt < GUI_FP_MAXCOUNT) {
+ int i;
+ /* Move all entries to the right (bigger x-value) */
+ for (i=GL_FP_Cnt; i ; i--) {
+ if (_aX[i-1] < x)
+ break;
+ _aX[i] = _aX[i-1];
+ }
+ /* Insert new entry */
+ _aX[i] = x;
+ GL_FP_Cnt++;
+ }
+}
+
+/*********************************************************************
+*
+* _Init
+*
+* This function initialise the sorted array
+*/
+static void _Init(void) {
+ GL_FP_Cnt = 0;
+}
+
+/*********************************************************************
+*
+* _Flush
+*
+* This function draw lines between points in the array
+*/
+static void _Flush(int x0, int y) {
+ int i, x = 0;
+ char On=0;
+ for (i=0; i= 0) {
+ x += xOff;
+ LCD_HL_DrawHLine(x, y + yOff, x); /* V-point, not crossing the polygon */
+ } else {
+ _Add(x);
+ }
+}
+
+/*********************************************************************
+*
+* _GetPrevPointDiffy
+*
+* Find previous point which is not on the same height
+*/
+static int _GetPrevPointDiffy(const GUI_POINT* paPoint, int i,
+ const int NumPoints, const int y0) {
+ int j, y1;
+ for (j = 0; j < (NumPoints - 1) ; j++) {
+ i = (i != 0) ? i - 1 : NumPoints - 1;
+ y1 = (paPoint + i)->y;
+ if (y1 != y0) {
+ return y1;
+ }
+ }
+ return y0;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_FillPolygon
+*
+* This function calculates the polygon
+*/
+void GL_FillPolygon (const GUI_POINT*paPoint, int NumPoints, int xOff, int yOff) {
+ int i, y;
+ int yMin = GUI_YMAX;
+ int yMax = GUI_YMIN;
+/* First step : find uppermost and lowermost coordinates */
+ for (i=0; iy;
+ if (y < yMin)
+ yMin = y;
+ if (y > yMax)
+ yMax = y;
+ }
+/* Use Clipping rect to reduce calculation (if possible) */
+ if (GUI_Context.pClipRect_HL) {
+ if (yMax > (GUI_Context.pClipRect_HL->y1 - yOff))
+ yMax = (GUI_Context.pClipRect_HL->y1 - yOff);
+ if (yMin < (GUI_Context.pClipRect_HL->y0 - yOff))
+ yMin = (GUI_Context.pClipRect_HL->y0 - yOff);
+ }
+/* Second step: Calculate and draw horizontal lines */
+ for (y=yMin; y<=yMax; y++) {
+ _Init();
+ /* find next intersection and count lines*/
+ for (i=0; iy;
+ int y1 = (paPoint + i1)->y;
+ /* Check if starting point is on line */
+ if (y0 == y) {
+ if (y1 == y) { /* Add the entire line */
+ _DrawHLine((paPoint + i )->x + xOff , y + yOff, (paPoint + i1)->x + xOff);
+ } else { /* Add only one point */
+ int yPrev = _GetPrevPointDiffy(paPoint, i, NumPoints, y);
+ if (yPrev != y) {
+ _AddPoint((paPoint + i)->x, y, yPrev - y, y1 - y, xOff, yOff);
+ }
+ }
+ } else if (y1 != y) { /* Ignore if end-point is on the line */
+ if (((y1 >= y) && (y0 <= y)) || ((y0 >= y) && (y1 <= y))) {
+ int xIntersect;
+ if (_CheckYInterSect(y, &xIntersect, paPoint + i, paPoint + i1)) {
+ _Add(xIntersect);
+ }
+ }
+ }
+ }
+ _Flush(xOff, y + yOff);
+ }
+}
+
+/*********************************************************************
+*
+* GUI_FillPolygon
+*/
+void GUI_FillPolygon(const GUI_POINT* pPoints, int NumPoints, int x0, int y0) {
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0, y0);
+ WM_ITERATE_START(NULL); {
+ #endif
+ GL_FillPolygon (pPoints, NumPoints, x0, y0);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_FillRect.c b/User/lib/lcd/gui/Core/GUI_FillRect.c
new file mode 100644
index 0000000..acb370d
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_FillRect.c
@@ -0,0 +1,51 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_FillRect.C
+Purpose : Implementation of GUI_FillRect
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_FillRect
+*/
+void GUI_FillRect(int x0, int y0, int x1, int y1) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ GUI_LOCK();
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ WM_ADDORG(x1,y1);
+ r.x0 = x0; r.x1 = x1;
+ r.y0 = y0; r.y1 = y1;
+ WM_ITERATE_START(&r); {
+ #endif
+ LCD_FillRect(x0,y0,x1,y1);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_FillRectEx.c b/User/lib/lcd/gui/Core/GUI_FillRectEx.c
new file mode 100644
index 0000000..d38cc7a
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_FillRectEx.c
@@ -0,0 +1,37 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_FillRectEx.c
+Purpose : Implementation of GUI_FillRectEx
+---------------------------END-OF-HEADER------------------------------
+*/
+
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_FillRectEx
+*/
+void GUI_FillRectEx(const GUI_RECT* pRect) {
+ GUI_FillRect(pRect->x0, pRect->y0, pRect->x1, pRect->y1);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_FontIntern.h b/User/lib/lcd/gui/Core/GUI_FontIntern.h
new file mode 100644
index 0000000..96a9c2c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_FontIntern.h
@@ -0,0 +1,67 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_FontIntern.h
+Purpose : Internal decalrations used in font files
+---------------------------END-OF-HEADER------------------------------
+
+Attention : Do not modify this file ! If you do, you will not
+ be able do update to a later GUI version !
+
+*/
+
+
+#ifndef GUI_FONTINTERN_H /* Guard against multiple inclusion */
+#define GUI_FONTINTERN_H
+
+#include "GUI.h"
+
+#if defined(__cplusplus)
+extern "C" { /* Make sure we have C-declarations in C++ programs */
+#endif
+
+
+extern GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font8ASCII_Prop;
+extern GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font10S_ASCII_FontProp1;
+extern GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font10ASCIIProp1;
+extern GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16ASCIIProp1;
+
+extern GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16_1_FontProp1;
+extern GUI_CONST_STORAGE GUI_FONT_PROP FontComic24BProp_ASCII;
+
+extern GUI_CONST_STORAGE GUI_CHARINFO GUI_Font24B_ASCII_CharInfo[95];
+extern GUI_CONST_STORAGE GUI_CHARINFO GUI_Font24_ASCII_CharInfo[95];
+extern GUI_CONST_STORAGE GUI_CHARINFO GUI_Font32B_ASCII_CharInfo[95];
+
+extern GUI_CONST_STORAGE GUI_CHARINFO GUI_Font32_ASCII_CharInfo[95];
+extern GUI_CONST_STORAGE GUI_CHARINFO GUI_CharInfoF8x13_ASCII[96];
+extern GUI_CONST_STORAGE GUI_CHARINFO GUI_CharInfoF8x15B_ASCII[96];
+extern GUI_CONST_STORAGE GUI_CHARINFO CharInfo18B_ASCII[97];
+extern GUI_CONST_STORAGE GUI_CHARINFO CharInfo24B_ASCII[96];
+extern GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13ASCII_Prop1;
+extern GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13B_ASCII_Prop1;
+extern GUI_CONST_STORAGE GUI_CHARINFO GUI_Font13H_ASCII_CharInfo[95];
+extern GUI_CONST_STORAGE GUI_CHARINFO GUI_Font13HB_ASCII_CharInfo[95];
+extern GUI_CONST_STORAGE GUI_CHARINFO GUI_Font16_HK_CharInfo[169];
+extern GUI_CONST_STORAGE GUI_CHARINFO GUI_Font16B_ASCII_CharInfo[95];
+
+
+#if defined(__cplusplus)
+ }
+#endif
+
+
+#endif /* Guard against multiple inclusion */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetBitmapPixelColor.c b/User/lib/lcd/gui/Core/GUI_GetBitmapPixelColor.c
new file mode 100644
index 0000000..90daa8e
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetBitmapPixelColor.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetBitmapPixelColor.c
+Purpose : Gets the color from one pixel of a bitmap
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetBitmapPixelColor
+*/
+GUI_COLOR GUI_GetBitmapPixelColor(const GUI_BITMAP GUI_UNI_PTR * pBMP, unsigned x, unsigned y) {
+ int Index = GUI_GetBitmapPixelIndex(pBMP, x, y);
+ if (pBMP->pPal->HasTrans && (Index == 0)) {
+ return GUI_INVALID_COLOR;
+ }
+ return pBMP->pPal->pPalEntries[Index];
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetBitmapPixelIndex.c b/User/lib/lcd/gui/Core/GUI_GetBitmapPixelIndex.c
new file mode 100644
index 0000000..df28f4a
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetBitmapPixelIndex.c
@@ -0,0 +1,64 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetBitmapPixelIndex.c
+Purpose : Implementation of GUI_GetBitmapPixelIndex
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetBitmapPixelIndex
+*/
+int GUI_GetBitmapPixelIndex(const GUI_BITMAP GUI_UNI_PTR * pBMP, unsigned x, unsigned y) {
+ unsigned Off, Value;
+ switch (pBMP->BitsPerPixel) {
+ case 1:
+ Off = (x >> 3) + (y * pBMP->BytesPerLine);
+ Value = *(pBMP->pData + Off);
+ Value = Value >> (7 - (x & 0x7)) & 0x1;
+ break;
+ case 2:
+ Off = (x >> 2) + (y * pBMP->BytesPerLine);
+ Value = *(pBMP->pData + Off);
+ Value = Value >> (6 - ((x << 1) & 0x6)) & 0x3;
+ break;
+ case 4:
+ Off = (x >> 1) + (y * pBMP->BytesPerLine);
+ Value = *(pBMP->pData + Off);
+ Value = (x & 1) ? (Value & 0xF) : (Value >> 4);
+ break;
+ case 8:
+ Off = x + y * pBMP->BytesPerLine;
+ Value = *(pBMP->pData + Off);
+ break;
+ case 16:
+ Off = (x << 1) + y * pBMP->BytesPerLine;
+ Value = *(pBMP->pData + Off) | (*(pBMP->pData + Off + 1) << 8);
+ break;
+ default:
+ Value = 0;
+ }
+ return Value;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetClientRect.c b/User/lib/lcd/gui/Core/GUI_GetClientRect.c
new file mode 100644
index 0000000..8ce6c2b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetClientRect.c
@@ -0,0 +1,51 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetClientRect.c
+Purpose : Implementation of GUI_GetClientRect
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetClientRect
+*/
+void GUI_GetClientRect(GUI_RECT* pRect) {
+ if (!pRect)
+ return;
+ #if GUI_WINSUPPORT
+ WM_GetClientRect(pRect);
+ #else
+ pRect->x0 = 0;
+ pRect->y0 = 0;
+ pRect->x1 = LCD_GET_XSIZE();
+ pRect->y1 = LCD_GET_YSIZE();
+ #endif
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetColor.c b/User/lib/lcd/gui/Core/GUI_GetColor.c
new file mode 100644
index 0000000..988d11c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetColor.c
@@ -0,0 +1,76 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetColor.C
+Purpose : Implementation of different GUI_GetColor routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetBkColorIndex
+*/
+int GUI_GetBkColorIndex(void) {
+ int r;
+ GUI_LOCK();
+ r = LCD_GetBkColorIndex();
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_GetBkColor
+*/
+GUI_COLOR GUI_GetBkColor(void) {
+ GUI_COLOR r;
+ GUI_LOCK();
+ r = LCD_Index2Color(LCD_GetBkColorIndex());
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_GetColorIndex
+*/
+int GUI_GetColorIndex(void) {
+ int r;
+ GUI_LOCK();
+ r = LCD_GetColorIndex();
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_GetColor
+*/
+GUI_COLOR GUI_GetColor(void) {
+ GUI_COLOR r;
+ GUI_LOCK();
+ r = LCD_Index2Color(LCD_GetColorIndex());
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetDispPos.c b/User/lib/lcd/gui/Core/GUI_GetDispPos.c
new file mode 100644
index 0000000..e185498
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetDispPos.c
@@ -0,0 +1,58 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetDispPos.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetDispPosX
+*
+* Purpose:
+* Return X-component of current display position
+*/
+int GUI_GetDispPosX(void) {
+ int r;
+ GUI_LOCK();
+ r = GUI_Context.DispPosX;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_GetDispPosY
+*
+* Purpose:
+* Return Y-component of current display position
+*/
+int GUI_GetDispPosY(void) {
+ int r;
+ GUI_LOCK();
+ r = GUI_Context.DispPosY;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetFont.c b/User/lib/lcd/gui/Core/GUI_GetFont.c
new file mode 100644
index 0000000..b481a23
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetFont.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetFont.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetFont
+*/
+const GUI_FONT GUI_UNI_PTR* GUI_GetFont(void) {
+ const GUI_FONT GUI_UNI_PTR * r;
+ GUI_LOCK();
+ r = GUI_Context.pAFont;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetFontInfo.c b/User/lib/lcd/gui/Core/GUI_GetFontInfo.c
new file mode 100644
index 0000000..fff4402
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetFontInfo.c
@@ -0,0 +1,49 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetFontInfo.C
+Purpose : Get GUI_FONTINFO structure
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include
+
+#if GUI_COMPILER_SUPPORTS_FP
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetFontInfo
+*/
+void GUI_GetFontInfo(const GUI_FONT GUI_UNI_PTR * pFont, GUI_FONTINFO * pFontInfo) {
+ GUI_LOCK();
+ if (pFont == NULL) {
+ pFont = GUI_Context.pAFont;
+ }
+ pFontInfo->Baseline = pFont->Baseline;
+ pFontInfo->CHeight = pFont->CHeight;
+ pFontInfo->LHeight = pFont->LHeight;
+ pFont->pfGetFontInfo(pFont, pFontInfo);
+ GUI_UNLOCK();
+}
+
+#endif
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetFontSizeY.c b/User/lib/lcd/gui/Core/GUI_GetFontSizeY.c
new file mode 100644
index 0000000..d0ae9bd
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetFontSizeY.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetFontSizeY.c
+Purpose : Implementation of optional routine
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetFontSizeY
+*/
+int GUI_GetFontSizeY(void) {
+ int r;
+ GUI_LOCK();
+ r = GUI__GetFontSizeY();
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetLineStyle.c b/User/lib/lcd/gui/Core/GUI_GetLineStyle.c
new file mode 100644
index 0000000..e8f814a
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetLineStyle.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetLineStyle.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetLineStyle
+*/
+U8 GUI_GetLineStyle(void) {
+ U8 r;
+ GUI_LOCK();
+ r = GUI_Context.LineStyle;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetStringDistX.c b/User/lib/lcd/gui/Core/GUI_GetStringDistX.c
new file mode 100644
index 0000000..391a11a
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetStringDistX.c
@@ -0,0 +1,37 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetStringDistX.C
+Purpose : Implementation of optional routine
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetStringDistX
+*/
+int GUI_GetStringDistX(const char GUI_UNI_PTR * s) {
+ return GUI__GetLineDistX(s, GUI__strlen(s));
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetTextAlign.c b/User/lib/lcd/gui/Core/GUI_GetTextAlign.c
new file mode 100644
index 0000000..36752b2
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetTextAlign.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetTextAlign.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetTextAlign
+*/
+int GUI_GetTextAlign(void) {
+ int r;
+ GUI_LOCK();
+ r = GUI_Context.TextAlign;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetTextExtend.c b/User/lib/lcd/gui/Core/GUI_GetTextExtend.c
new file mode 100644
index 0000000..5258c8e
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetTextExtend.c
@@ -0,0 +1,64 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetTextExtend.c
+Purpose : Implementation of GUI_GetTextExtend
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetTextExtend
+*/
+void GUI_GetTextExtend(GUI_RECT* pRect, const char GUI_UNI_PTR * s, int MaxNumChars) {
+ int xMax = 0;
+ int NumLines = 0;
+ int LineSizeX = 0;
+ U16 Char;
+ pRect->x0 = GUI_Context.DispPosX;
+ pRect->y0 = GUI_Context.DispPosY;
+ while (MaxNumChars--) {
+ Char = GUI_UC__GetCharCodeInc(&s);
+ if ((Char == '\n') || (Char == 0)) {
+ if (LineSizeX > xMax) {
+ xMax = LineSizeX;
+ }
+ LineSizeX = 0;
+ NumLines++;
+ if (!Char) {
+ break;
+ }
+ } else {
+ LineSizeX += GUI_GetCharDistX(Char);
+ }
+ }
+ if (LineSizeX > xMax) {
+ xMax = LineSizeX;
+ }
+ if (!NumLines) {
+ NumLines = 1;
+ }
+ pRect->x1 = pRect->x0 + xMax - 1;
+ pRect->y1 = pRect->y0 + GUI__GetFontSizeY() * NumLines - 1;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetTextMode.c b/User/lib/lcd/gui/Core/GUI_GetTextMode.c
new file mode 100644
index 0000000..3cab5e4
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetTextMode.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetTextMode.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetTextMode
+*/
+int GUI_GetTextMode(void) {
+ int r;
+ GUI_LOCK();
+ r = GUI_Context.TextMode;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetVersionString.c b/User/lib/lcd/gui/Core/GUI_GetVersionString.c
new file mode 100644
index 0000000..eb0359c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetVersionString.c
@@ -0,0 +1,52 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetVersionString.c
+Purpose : Version information functions
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static char _acVersion[] = {"X.XX\0\0"};
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetVersionString
+*/
+const char* GUI_GetVersionString(void) {
+ _acVersion[0] = '0' + (GUI_VERSION / 10000);
+ _acVersion[2] = '0' + (GUI_VERSION / 1000) % 10;
+ _acVersion[3] = '0' + (GUI_VERSION / 100) % 10;
+ #if GUI_VERSION%100
+ _acVersion[4] = 'a' - 1 + (GUI_VERSION % 100);
+ #endif
+ return _acVersion;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_GetYSizeOfFont.c b/User/lib/lcd/gui/Core/GUI_GetYSizeOfFont.c
new file mode 100644
index 0000000..0b7f3d7
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_GetYSizeOfFont.c
@@ -0,0 +1,44 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_GetYSizeOfFont.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetYSizeOfFont
+*/
+int GUI_GetYSizeOfFont(const GUI_FONT GUI_UNI_PTR * pFont) {
+ return pFont->YSize * pFont->YMag;
+}
+
+/*********************************************************************
+*
+* GUI_GetYDistOfFont
+*/
+int GUI_GetYDistOfFont(const GUI_FONT GUI_UNI_PTR * pFont) {
+ return pFont->YDist * pFont->YMag;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_Goto.c b/User/lib/lcd/gui/Core/GUI_Goto.c
new file mode 100644
index 0000000..975eb19
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_Goto.c
@@ -0,0 +1,92 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_Goto.c
+Purpose : Implementation of GUI_Goto... routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _GotoY
+*/
+static char _GotoY(int y) {
+ GUI_Context.DispPosY = y;
+ return 0;
+}
+
+/*********************************************************************
+*
+* _GotoX
+*/
+static char _GotoX(int x) {
+ GUI_Context.DispPosX = x;
+ return 0;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GotoY
+*/
+char GUI_GotoY(int y) {
+ char r;
+ GUI_LOCK();
+ r = _GotoY(y);
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_GotoX
+*/
+char GUI_GotoX(int x) {
+ char r;
+ GUI_LOCK();
+ r = _GotoX(x);
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_GotoXY
+*/
+char GUI_GotoXY(int x, int y) {
+ char r;
+ GUI_LOCK();
+ r = _GotoX(x);
+ r |= _GotoY(y);
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_InitLUT.c b/User/lib/lcd/gui/Core/GUI_InitLUT.c
new file mode 100644
index 0000000..5a87efd
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_InitLUT.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_InitLUT.c
+Purpose : Implementation of GUI_InitLUT
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_InitLUT
+*/
+void GUI_InitLUT(void) {
+ GUI_LOCK();
+ LCD_InitLUT();
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_InvertRect.c b/User/lib/lcd/gui/Core/GUI_InvertRect.c
new file mode 100644
index 0000000..e3cef40
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_InvertRect.c
@@ -0,0 +1,56 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_InvertRect.C
+Purpose : Implementation file for GUI_InvertRect
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_InvertRect
+*/
+void GUI_InvertRect(int x0, int y0, int x1, int y1) {
+ GUI_DRAWMODE PrevDraw;
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ GUI_LOCK();
+ PrevDraw = GUI_SetDrawMode(GUI_DRAWMODE_XOR);
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0, y0);
+ WM_ADDORG(x1, y1);
+ r.x0 = x0;
+ r.x1 = x1;
+ r.y0 = y0;
+ r.y1 = y1;
+ WM_ITERATE_START(&r); {
+ #endif
+ LCD_FillRect(x0, y0, x1, y1);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_SetDrawMode(PrevDraw);
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_IsInFont.c b/User/lib/lcd/gui/Core/GUI_IsInFont.c
new file mode 100644
index 0000000..7ff850f
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_IsInFont.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_IsInFont.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_IsInFont
+*/
+char GUI_IsInFont(const GUI_FONT GUI_UNI_PTR *pFont, U16 c) {
+ if (pFont == NULL) {
+ pFont = GUI_Context.pAFont;
+ }
+ return pFont->pfIsInFont(pFont, c);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_Log.c b/User/lib/lcd/gui/Core/GUI_Log.c
new file mode 100644
index 0000000..4e88f56
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_Log.c
@@ -0,0 +1,126 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_Log.C
+Purpose : Logging (used only at higher debug levels)
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include
+#include "GUI_Protected.h"
+#include "GUI_X.h"
+
+/*********************************************************************
+*
+* defines
+*
+**********************************************************************
+*/
+
+#define MAXLEN 50
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _CopyString
+*/
+static void _CopyString(char* d, const char* s, int MaxLen) {
+ while ((MaxLen > 0) && *s) {
+ *d++ = *s++;
+ MaxLen--;
+ }
+ *d = 0;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+* Note: These routines are needed only in higher debug levels.
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_Log
+*/
+void GUI_Log(const char *s) {
+ GUI_X_Log(s);
+}
+
+/*********************************************************************
+*
+* GUI_Log1
+*/
+void GUI_Log1(const char *s, int p0) {
+ char ac[MAXLEN + 10];
+ char* sOut = ac;
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI_Log(ac);
+}
+
+/*********************************************************************
+*
+* GUI_Log2
+*/
+void GUI_Log2(const char *s, int p0, int p1) {
+ char ac[MAXLEN + 20];
+ char* sOut = ac;
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI__AddSpaceHex(p1, 8, &sOut);
+ GUI_Log(ac);
+}
+
+/*********************************************************************
+*
+* GUI_Log3
+*/
+void GUI_Log3(const char *s, int p0, int p1, int p2) {
+ char ac[MAXLEN + 30];
+ char* sOut = ac;
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI__AddSpaceHex(p1, 8, &sOut);
+ GUI__AddSpaceHex(p2, 8, &sOut);
+ GUI_Log(ac);
+}
+
+/*********************************************************************
+*
+* GUI_Log4
+*/
+void GUI_Log4(const char *s, int p0, int p1, int p2, int p3) {
+ char ac[MAXLEN + 40];
+ char* sOut = ac;
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI__AddSpaceHex(p1, 8, &sOut);
+ GUI__AddSpaceHex(p2, 8, &sOut);
+ GUI__AddSpaceHex(p3, 8, &sOut);
+ GUI_Log(ac);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_MOUSE.c b/User/lib/lcd/gui/Core/GUI_MOUSE.c
new file mode 100644
index 0000000..98e5da3
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_MOUSE.c
@@ -0,0 +1,60 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_MOUSE.C
+Purpose : Generic mouse routines
+----------------------------------------------------------------------
+*/
+
+#include /* memcmp */
+#include "LCD_Private.h" /* private modul definitions & config */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static GUI_PID_STATE _State;
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_MOUSE_GetState
+*/
+int GUI_MOUSE_GetState(GUI_PID_STATE *pState) {
+ *pState = _State;
+ return (_State.Pressed != 0) ? 1 : 0;
+}
+
+/*********************************************************************
+*
+* GUI_MOUSE_StoreState
+*/
+void GUI_MOUSE_StoreState(const GUI_PID_STATE *pState) {
+ if (memcmp(pState, &_State, sizeof(_State))) {
+ _State = *pState;
+ GUI_PID_StoreState(pState);
+ }
+}
+
+/*************************** End of file ****************************/
+
diff --git a/User/lib/lcd/gui/Core/GUI_MOUSE_DriverPS2.c b/User/lib/lcd/gui/Core/GUI_MOUSE_DriverPS2.c
new file mode 100644
index 0000000..682e8ba
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_MOUSE_DriverPS2.c
@@ -0,0 +1,135 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUITOUCH.C
+Purpose : Touch screen manager
+----------------------------------------------------------------------
+This module handles the touch screen. It is configured in the file
+GUITouch.conf.h (Should be located in the Config\ directory).
+----------------------------------------------------------------------
+*/
+
+#include "LCD_Private.h" /* private modul definitions & config */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static int _ScreenX = 0; /* x-pos */
+static int _ScreenY = 0; /* y-pos */
+static int _NumBytesInBuffer = 0; /* bytes in rx buffer */
+static U8 _Buttons = 0; /* button status */
+static U8 _abInBuffer[3]; /* mouse rx buffer */
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _EvaPacket
+*
+* Purpose:
+* Process data packet from mouse:
+*
+* | D7 D6 D5 D4 D3 D2 D1 D0
+* ----------+----------------------------------------------
+* 1st byte | -- -- Y- X- 1 -- LB RB
+* 2nd byte | X7 X6 X5 X4 X3 X2 X1 X0
+* 3rd byte | Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
+*/
+static void _EvaPacket(void) {
+ char a;
+ GUI_PID_STATE State;
+ _Buttons = _abInBuffer[0] & 0x03;
+ a = _abInBuffer[1];
+ /* test x move sign. */
+ if(_abInBuffer[0] & 0x10) {
+ a=-a;
+ _ScreenX -= a;
+ } /* direction is negative, move left */
+ else {
+ _ScreenX += a;
+ }
+ a = _abInBuffer[2];
+ /* test y move sign. */
+ if(_abInBuffer[0] & 0x20) {
+ a=-a;
+ _ScreenY += a;
+ } /* direction is negative, move down */ else {
+ _ScreenY -= a;
+ }
+ /* check min/max positions */
+ if (_ScreenX < 0) {
+ _ScreenX = 0;
+ } else if (_ScreenX > LCD_XSIZE-1) {
+ _ScreenX = LCD_XSIZE-1;
+ } if (_ScreenY < 0) {
+ _ScreenY = 0;
+ } else if (_ScreenY > LCD_YSIZE-1) {
+ _ScreenY = LCD_YSIZE-1;
+ }
+ /* signal new mouse data */
+ State.x = _ScreenX;
+ State.y = _ScreenY;
+ State.Pressed = _Buttons;
+ GUI_MOUSE_StoreState(&State);
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_MOUSE_DRIVER_PS2_OnRx
+*
+* Purpose:
+* Mouse receive interrupt handler. The PS2 mouse interrupt gets
+* in three bytes from the mouse, then wakes up the mouse LSR.
+*/
+void GUI_MOUSE_DRIVER_PS2_OnRx(unsigned char Data) {
+ if (!_NumBytesInBuffer) {
+ /* check for start frame */
+ if ((Data & 0x0c) == 0x08) {
+ _abInBuffer[0] = Data;
+ _NumBytesInBuffer++;
+ }
+ } else {
+ _abInBuffer[_NumBytesInBuffer] = Data;
+ _NumBytesInBuffer++;
+ if (_NumBytesInBuffer >= 3) {
+ _EvaPacket();
+ _NumBytesInBuffer = 0;
+ }
+ }
+}
+
+/*********************************************************************
+*
+* GUI_MOUSE_DRIVER_PS2_Init
+*/
+void GUI_MOUSE_DRIVER_PS2_Init(void) {
+ _NumBytesInBuffer = 0;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_MergeRect.c b/User/lib/lcd/gui/Core/GUI_MergeRect.c
new file mode 100644
index 0000000..88caea5
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_MergeRect.c
@@ -0,0 +1,59 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_MergeRect.c
+Purpose : Implementation of GUI_MergeRect
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define Min(v0,v1) ((v0>v1) ? v1 : v0)
+#define Max(v0,v1) ((v0>v1) ? v0 : v1)
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_MergeRect
+*
+* Purpose:
+* Calc smalles rectangles containing both rects.
+*/
+void GUI_MergeRect(GUI_RECT* pDest, const GUI_RECT* pr0, const GUI_RECT* pr1) {
+ if (pDest) {
+ if (pr0 && pr1) {
+ pDest->x0 = Min(pr0->x0, pr1->x0);
+ pDest->y0 = Min(pr0->y0, pr1->y0);
+ pDest->x1 = Max(pr0->x1, pr1->x1);
+ pDest->y1 = Max(pr0->y1, pr1->y1);
+ return;
+ }
+ *pDest = *(pr0 ? pr0 : pr1);
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_MoveRect.c b/User/lib/lcd/gui/Core/GUI_MoveRect.c
new file mode 100644
index 0000000..1c8aac5
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_MoveRect.c
@@ -0,0 +1,41 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_MoveRect.c
+Purpose : Implementation of GUI_MoveRect
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_MoveRect
+*/
+void GUI_MoveRect(GUI_RECT *pRect, int dx, int dy) {
+ if (pRect) {
+ pRect->x0 += dx;
+ pRect->x1 += dx;
+ pRect->y0 += dy;
+ pRect->y1 += dy;
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_OnKey.c b/User/lib/lcd/gui/Core/GUI_OnKey.c
new file mode 100644
index 0000000..d64bd70
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_OnKey.c
@@ -0,0 +1,147 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_OnKey.c
+Purpose : Implementation of GUI_StoreKeyMsg
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+#if GUI_WINSUPPORT
+
+static int _KeyMsgCnt;
+static struct {
+ int Key;
+ int PressedCnt;
+} _KeyMsg;
+
+#endif
+
+static int _Key;
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+
+GUI_KEY_MSG_HOOK* GUI_pfKeyMsgHook;
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetKey
+*/
+int GUI_GetKey(void) {
+ int r = _Key;
+ _Key = 0;
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_StoreKey
+*/
+void GUI_StoreKey(int Key) {
+ if (!_Key) {
+ _Key = Key;
+ }
+ GUI_X_SIGNAL_EVENT();
+}
+
+/*********************************************************************
+*
+* GUI_ClearKeyBuffer
+*/
+void GUI_ClearKeyBuffer(void) {
+ while (GUI_GetKey());
+}
+
+/*********************************************************************
+*
+* GUI_StoreKeyMsg
+*/
+void GUI_StoreKeyMsg(int Key, int PressedCnt) {
+ #if GUI_WINSUPPORT /* If 0, WM will not generate any code */
+ _KeyMsg.Key = Key;
+ _KeyMsg.PressedCnt = PressedCnt;
+ _KeyMsgCnt = 1;
+ GUI_X_SIGNAL_EVENT();
+ #else
+ GUI_USE_PARA(PressedCnt);
+ GUI_StoreKey(Key);
+ #endif
+}
+
+/*********************************************************************
+*
+* GUI_PollKeyMsg
+*/
+#if GUI_WINSUPPORT /* If 0, WM will not generate any code */
+int GUI_PollKeyMsg(void) {
+ int r = 0;
+ GUI_LOCK();
+ if (_KeyMsgCnt) {
+ int Key;
+ _KeyMsgCnt--;
+ Key = _KeyMsg.Key;
+ WM_OnKey(Key, _KeyMsg.PressedCnt);
+ if (_KeyMsg.PressedCnt == 1) {
+ GUI_StoreKey(Key);
+ }
+ r = 1; /* We have done something */
+ }
+ GUI_UNLOCK();
+ return r;
+}
+#endif
+
+/*********************************************************************
+*
+* GUI_SendKeyMsg
+*
+* Purpose:
+* Send the key to a window using the window manager (if available).
+* If no window is ready to take the input, we call the store routine
+* and wait for somebody to poll the buffer.
+*/
+void GUI_SendKeyMsg(int Key, int PressedCnt) {
+ #if GUI_WINSUPPORT /* If 0, WM will not generate any code */
+ if (!WM_OnKey(Key, PressedCnt)) {
+ GUI_StoreKeyMsg(Key, PressedCnt);
+ }
+ #else
+ GUI_StoreKeyMsg(Key, PressedCnt);
+ #endif
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_PID.c b/User/lib/lcd/gui/Core/GUI_PID.c
new file mode 100644
index 0000000..ed7c974
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_PID.c
@@ -0,0 +1,86 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_PID.C
+Purpose : PID (Pointer input device) management
+----------------------------------------------------------------------
+*/
+
+#include
+#include
+#include
+#include "LCD_Private.h" /* private modul definitions & config */
+#include "GUI_Protected.h"
+
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static GUI_PID_STATE _State;
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _PID_Load
+*
+* Purpose:
+* If the window manager is available, write the function pointer for
+* the PID handler.
+*/
+static void _PID_Load(void) {
+ #if (GUI_WINSUPPORT)
+ WM_pfHandlePID = WM_HandlePID;
+ #endif
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_PID_GetState
+*/
+int GUI_PID_GetState(GUI_PID_STATE *pState) {
+ *pState = _State;
+ return (pState->Pressed != 0) ? 1 : 0;
+}
+
+/*********************************************************************
+*
+* GUI_PID_StoreState
+*/
+void GUI_PID_StoreState(const GUI_PID_STATE *pState) {
+ _PID_Load();
+ if (memcmp(&_State, pState, sizeof(_State))) {
+ _State = *pState;
+ GUI_X_SIGNAL_EVENT();
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_Pen.c b/User/lib/lcd/gui/Core/GUI_Pen.c
new file mode 100644
index 0000000..615c3d6
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_Pen.c
@@ -0,0 +1,78 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_Pen.C
+Purpose : Getting / Setting pen attributes
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetPenSize
+*/
+U8 GUI_GetPenSize(void) {
+ U8 r;
+ GUI_LOCK();
+ r = GUI_Context.PenSize;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_GetPenShape
+*/
+U8 GUI_GetPenShape(void) {
+ U8 r;
+ GUI_LOCK();
+ r = GUI_Context.PenShape;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_SetPenSize
+*/
+U8 GUI_SetPenSize(U8 PenSize) {
+ U8 r;
+ GUI_LOCK();
+ r = GUI_Context.PenSize;
+ GUI_Context.PenSize = PenSize;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_SetPenShape
+*/
+U8 GUI_SetPenShape(U8 PenShape) {
+ U8 r;
+ GUI_LOCK();
+ r = GUI_Context.PenShape;
+ GUI_Context.PenShape = PenShape;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_Private.h b/User/lib/lcd/gui/Core/GUI_Private.h
new file mode 100644
index 0000000..0cf3dc1
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_Private.h
@@ -0,0 +1,94 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_Private.h
+Purpose : GUI internal declarations
+---------------------------END-OF-HEADER------------------------------
+
+Attention : Do not modify this file ! If you do, you will not
+ be able do update to a later GUI version !
+
+*/
+
+#ifndef GUI_PRIVATE_H
+#define GUI_PRIVATE_H
+
+#include "GUI_Protected.h"
+#include "LCD_Private.h" /* Required because of LCD_PIXELINDEX, which depends on LCDConf */
+
+#if GUI_SUPPORT_DEVICES
+ #define LCDDEV_L0_Color2Index GUI_Context.pDeviceAPI->pfColor2Index
+ #define LCDDEV_L0_DrawBitmap GUI_Context.pDeviceAPI->pfDrawBitmap
+ #define LCDDEV_L0_DrawHLine GUI_Context.pDeviceAPI->pfDrawHLine
+ #define LCDDEV_L0_DrawVLine GUI_Context.pDeviceAPI->pfDrawVLine
+ #define LCDDEV_L0_DrawPixel GUI_Context.pDeviceAPI->pfDrawPixel
+ #define LCDDEV_L0_FillRect GUI_Context.pDeviceAPI->pfFillRect
+ #define LCDDEV_L0_GetPixel GUI_Context.pDeviceAPI->pfGetPixel
+ #define LCDDEV_L0_GetRect GUI_Context.pDeviceAPI->pfGetRect
+ #define LCDDEV_L0_GetPixelIndex GUI_Context.pDeviceAPI->pfGetPixelIndex
+ #define LCDDEV_L0_Index2Color GUI_Context.pDeviceAPI->pfIndex2Color
+ #define LCDDEV_L0_SetPixelIndex GUI_Context.pDeviceAPI->pfSetPixelIndex
+ #define LCDDEV_L0_XorPixel GUI_Context.pDeviceAPI->pfXorPixel
+#else
+ #define LCDDEV_L0_Color2Index LCD_L0_Color2Index
+ #define LCDDEV_L0_DrawBitmap LCD_L0_DrawBitmap
+ #define LCDDEV_L0_DrawHLine LCD_L0_DrawHLine
+ #define LCDDEV_L0_DrawVLine LCD_L0_DrawVLine
+ #define LCDDEV_L0_DrawPixel LCD_L0_DrawPixel
+ #define LCDDEV_L0_FillRect LCD_L0_FillRect
+ #define LCDDEV_L0_GetPixel LCD_L0_GetPixel
+ #define LCDDEV_L0_GetRect LCD_L0_GetRect
+ #define LCDDEV_L0_GetPixelIndex LCD_L0_GetPixelIndex
+ #define LCDDEV_L0_Index2Color LCD_L0_Index2Color
+ #define LCDDEV_L0_SetPixelIndex LCD_L0_SetPixelIndex
+ #define LCDDEV_L0_XorPixel LCD_L0_XorPixel
+#endif
+
+void LCD_L0_DrawBitmap (int x0, int y0, int xsize, int ysize,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff, const LCD_PIXELINDEX* pTrans);
+void LCD_L0_1_DrawBitmap (int x0, int y0, int xsize, int ysize,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff, const LCD_PIXELINDEX* pTrans);
+void LCD_L0_2_DrawBitmap (int x0, int y0, int xsize, int ysize,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff, const LCD_PIXELINDEX* pTrans);
+void LCD_L0_3_DrawBitmap (int x0, int y0, int xsize, int ysize,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff, const LCD_PIXELINDEX* pTrans);
+void LCD_L0_4_DrawBitmap (int x0, int y0, int xsize, int ysize,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff, const LCD_PIXELINDEX* pTrans);
+void LCD_L0_MAG_DrawBitmap(int x0, int y0, int xsize, int ysize,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff, const LCD_PIXELINDEX* pTrans);
+void LCD_L0_DELTA_DrawBitmap(int x0, int y0, int xsize, int ysize,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff, const LCD_PIXELINDEX* pTrans);
+
+LCD_PIXELINDEX* LCD_GetpPalConvTable(const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal);
+LCD_PIXELINDEX* LCD_GetpPalConvTableUncached(const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal);
+
+
+#define GUI_POS_AUTO -4095 /* Position value for auto-pos */
+
+#if GUI_SUPPORT_MEMDEV
+ void* GUI_MEMDEV__XY2PTR (int x,int y);
+ void* GUI_MEMDEV__XY2PTREx(GUI_MEMDEV* pDev, int x,int y);
+ void GUI_MEMDEV__WriteToActiveAt(GUI_MEMDEV_Handle hMem,int x, int y);
+#endif
+
+#endif /* ifdef GUI_H */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_Protected.h b/User/lib/lcd/gui/Core/GUI_Protected.h
new file mode 100644
index 0000000..7ca0876
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_Protected.h
@@ -0,0 +1,404 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_Protected.h
+Purpose : GUI internal declarations
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#ifndef GUI_PROTECTED_H
+#define GUI_PROTECTED_H
+
+#include "GUI.h"
+#include "LCD_Protected.h"
+#include "GUIDebug.h"
+#if GUI_WINSUPPORT
+ #include "WM_GUI.h"
+#endif
+
+#if defined(__cplusplus)
+extern "C" { /* Make sure we have C-declarations in C++ programs */
+#endif
+
+/**********************************************************************
+*
+* Defaults for config switches
+*
+***********************************************************************
+
+ The config switches below do not affect the interface in GUI.h and
+ are therefor not required to be in GUI.h.
+*/
+
+/* Short address area.
+ For most compilers, this is "near" or "__near"
+ We do not use this except for some CPUs which we know to always have some
+ near memory, because the GUI_Context ans some other data will be declared
+ to be in this short address (near) memory area as it has a major effect
+ on performance.
+ Please define in GUIConf.h (if you want to use it)
+*/
+#ifndef GUI_SADDR
+ #define GUI_SADDR
+#endif
+
+#ifndef GUI_DEFAULT_FONT
+ #define GUI_DEFAULT_FONT &GUI_Font6x8
+#endif
+
+#ifndef GUI_DEFAULT_CURSOR
+ #define GUI_DEFAULT_CURSOR &GUI_CursorArrowM
+#endif
+
+#ifndef GUI_DEFAULT_BKCOLOR
+ #define GUI_DEFAULT_BKCOLOR GUI_BLACK
+#endif
+
+#ifndef GUI_DEFAULT_COLOR
+ #define GUI_DEFAULT_COLOR GUI_WHITE
+#endif
+
+#ifndef GUI_X_SIGNAL_EVENT
+ #define GUI_X_SIGNAL_EVENT()
+#endif
+
+#ifndef GUI_X_WAIT_EVENT
+ #define GUI_X_WAIT_EVENT() GUI_X_ExecIdle()
+#endif
+
+
+/* *********************************
+ * *
+ * Angles *
+ * *
+ *********************************
+*/
+
+#define GUI_45DEG 512
+#define GUI_90DEG (2*GUI_45DEG)
+#define GUI_180DEG (4*GUI_45DEG)
+#define GUI_360DEG (8*GUI_45DEG)
+
+
+
+
+
+/*****************************************************
+*
+* Locking checks
+*
+******************************************************
+*/
+
+#if defined (WIN32) && defined (_DEBUG) && GUI_OS
+ #define GUI_ASSERT_LOCK() GUITASK_AssertLock()
+ #define GUI_ASSERT_NO_LOCK() GUITASK_AssertNoLock()
+ void GUITASK_AssertLock(void);
+ void GUITASK_AssertNoLock(void);
+#else
+ #define GUI_ASSERT_LOCK()
+ #define GUI_ASSERT_NO_LOCK()
+#endif
+
+/*****************************************************
+*
+* Usage internals
+*
+******************************************************
+*/
+
+typedef enum { GUI_WRAPMODE_NONE, GUI_WRAPMODE_WORD, GUI_WRAPMODE_CHAR } GUI_WRAPMODE;
+
+typedef GUI_HMEM GUI_USAGE_Handle;
+typedef struct tsUSAGE_APIList tUSAGE_APIList;
+typedef struct GUI_Usage GUI_USAGE;
+#define GUI_USAGE_h GUI_USAGE_Handle
+
+
+
+typedef GUI_USAGE_h tUSAGE_CreateCompatible(GUI_USAGE* p);
+typedef void tUSAGE_AddPixel (GUI_USAGE* p, int x, int y);
+typedef void tUSAGE_AddHLine (GUI_USAGE* p, int x0, int y0, int len);
+typedef void tUSAGE_Clear (GUI_USAGE* p);
+typedef void tUSAGE_Delete (GUI_USAGE_h h);
+typedef int tUSAGE_GetNextDirty (GUI_USAGE* p, int *pxOff, int yOff);
+#define GUI_USAGE_H2P(h) ((GUI_USAGE*)GUI_ALLOC_h2p(h))
+
+
+void GUI_USAGE_DecUseCnt(GUI_USAGE_Handle hUsage);
+
+GUI_USAGE_Handle GUI_USAGE_BM_Create(int x0, int y0, int xsize, int ysize, int Flags);
+void GUI_USAGE_Select(GUI_USAGE_Handle hUsage);
+void GUI_USAGE_AddRect(GUI_USAGE* pUsage, int x0, int y0, int xSize, int ySize);
+#define GUI_USAGE_AddPixel(p, x,y) p->pAPI->pfAddPixel(p,x,y)
+#define GUI_USAGE_AddHLine(p,x,y,len) p->pAPI->pfAddHLine(p,x,y,len)
+#define GUI_USAGE_Clear(p) p->pAPI->pfClear(p)
+#define GUI_USAGE_Delete(p) p->pAPI->pfDelete(p)
+#define GUI_USAGE_GetNextDirty(p,pxOff, yOff) p->pAPI->pfGetNextDirty(p,pxOff, yOff)
+
+struct tsUSAGE_APIList {
+ tUSAGE_AddPixel* pfAddPixel;
+ tUSAGE_AddHLine* pfAddHLine;
+ tUSAGE_Clear* pfClear;
+ tUSAGE_CreateCompatible* pfCreateCompatible;
+ tUSAGE_Delete* pfDelete;
+ tUSAGE_GetNextDirty* pfGetNextDirty;
+} ;
+
+struct GUI_Usage {
+ I16P x0, y0, XSize, YSize;
+ const tUSAGE_APIList *pAPI;
+ I16 UseCnt;
+};
+
+/*****************************************************
+*
+* GUI_MEMDEV
+*
+******************************************************
+*/
+
+#if GUI_SUPPORT_MEMDEV
+ typedef struct /*GUI_MEMDEV*/ {
+ I16P x0, y0, XSize, YSize;
+ int NumColors;
+ unsigned BytesPerLine;
+ unsigned BitsPerPixel;
+ unsigned LayerIndex;
+ GUI_HMEM hUsage;
+ tLCDDEV_Color2Index* pfColor2Index;
+ tLCDDEV_Index2Color* pfIndex2Color;
+ tLCDDEV_GetIndexMask* pfGetIndexMask;
+ const tLCDDEV_APIList* pAPIList;
+ } GUI_MEMDEV;
+
+ #define GUI_MEMDEV_H2P(h) ((GUI_MEMDEV*)GUI_ALLOC_h2p(h))
+
+ void GUI_MEMDEV__CopyFromLCD (GUI_MEMDEV_Handle hMem);
+ void GUI_MEMDEV__GetRect (GUI_RECT* pRect);
+ unsigned GUI_MEMDEV__Color2Index (LCD_COLOR Color);
+ LCD_COLOR GUI_MEMDEV__Index2Color (int Index);
+ unsigned int GUI_MEMDEV__GetIndexMask(void);
+
+ GUI_MEMDEV_Handle GUI_MEMDEV__CreateFixed(int x0, int y0, int xsize, int ysize, int Flags
+ ,const tLCDDEV_APIList * pMemDevAPI
+ ,tLCDDEV_Color2Index* pfColor2Index
+ ,tLCDDEV_Index2Color* pfIndex2Color
+ ,tLCDDEV_GetIndexMask* pfGetIndexMask);
+
+#endif
+
+/*******************************************************************
+*
+* LCD_HL_ level defines
+*
+********************************************************************
+*/
+
+#if GUI_SUPPORT_AA
+ #define LCD_HL_DrawHLine GUI_Context.pLCD_HL->pfDrawHLine
+ #define LCD_HL_DrawPixel GUI_Context.pLCD_HL->pfDrawPixel
+#else
+ #define LCD_HL_DrawHLine LCD_DrawHLine
+ #define LCD_HL_DrawPixel LCD_DrawPixel
+#endif
+
+
+/*********************************************************************
+*
+* Helper functions
+*
+***********************************************************************
+*/
+
+#define GUI_ZEROINIT(Obj) GUI_MEMSET(Obj, 0, sizeof(Obj))
+int GUI_cos(int angle);
+int GUI_sin(int angle);
+void GL_DrawLine1(int x0, int y0, int x1, int y1);
+extern const U32 GUI_Pow10[10];
+
+/* GUIAALib.c --- direct anti-aliased drawing */
+int GUI_AA_Init(int x0, int x1);
+int GUI_AA_Init_HiRes(int x0, int x1);
+void GUI_AA_Exit(void);
+I16 GUI_AA_HiRes2Pixel(int HiRes);
+
+void GL_FillCircleAA_HiRes(int x0, int y0, int r);
+
+/* Conversion routines */
+void GUI_AddHex (U32 v, U8 Len, char**ps);
+void GUI_AddBin (U32 v, U8 Len, char**ps);
+void GUI_AddDecMin (I32 v, char**ps);
+void GUI_AddDec (I32 v, U8 Len, char**ps);
+void GUI_AddDecShift(I32 v, U8 Len, U8 Shift, char**ps);
+long GUI_AddSign (long v, char**ps);
+int GUI_Long2Len (I32 v);
+
+#define GUI_UC__GetCharSize(sText) GUI_Context.pUC_API->pfGetCharSize(sText)
+#define GUI_UC__GetCharCode(sText) GUI_Context.pUC_API->pfGetCharCode(sText)
+
+int GUI_UC__CalcSizeOfChar (U16 Char);
+U16 GUI_UC__GetCharCodeInc (const char GUI_UNI_PTR ** ps);
+int GUI_UC__NumChars2NumBytes(const char GUI_UNI_PTR * s, int NumChars);
+int GUI_UC__NumBytes2NumChars(const char GUI_UNI_PTR * s, int NumBytes);
+
+int GUI__GetLineNumChars (const char GUI_UNI_PTR *s, int MaxNumChars);
+int GUI__GetNumChars (const char GUI_UNI_PTR *s);
+int GUI__GetLineDistX (const char GUI_UNI_PTR *s, int Len);
+int GUI__GetFontSizeY (void);
+int GUI__HandleEOLine (const char GUI_UNI_PTR **ps);
+void GUI__DispLine (const char GUI_UNI_PTR *s, int Len, const GUI_RECT* pr);
+void GUI__AddSpaceHex (U32 v, U8 Len, char**ps);
+void GUI__CalcTextRect (const char GUI_UNI_PTR* pText, const GUI_RECT* pTextRectIn, GUI_RECT* pTextRectOut, int TextAlign);
+
+int GUI__WrapGetNumCharsDisp (const char GUI_UNI_PTR * pText, int xSize, GUI_WRAPMODE WrapMode);
+int GUI__WrapGetNumCharsToNextLine (const char GUI_UNI_PTR * pText, int xSize, GUI_WRAPMODE WrapMode);
+int GUI__WrapGetNumBytesToNextLine (const char GUI_UNI_PTR * pText, int xSize, GUI_WRAPMODE WrapMode);
+void GUI__memset (U8 * p, U8 Fill, int NumBytes);
+void GUI__memset16 (U16* p, U16 Fill, int NumWords);
+int GUI__strlen (const char GUI_UNI_PTR * s);
+int GUI__strcmp (const char GUI_UNI_PTR * s0, const char GUI_UNI_PTR * s1);
+int GUI__strcmp_hp (GUI_HMEM hs0, const char GUI_UNI_PTR * s1);
+
+/* Reading data routines */
+U16 GUI__Read16(const U8 ** ppData);
+U32 GUI__Read32(const U8 ** ppData);
+
+/*********************************************************************
+*
+* 2d - GL
+*
+**********************************************************************
+*/
+
+void GL_DispChar (U16 c);
+void GL_DrawArc (int x0, int y0, int rx, int ry, int a0, int a1);
+void GL_DrawBitmap (const GUI_BITMAP GUI_UNI_PTR * pBM, int x0, int y0);
+void GL_DrawCircle (int x0, int y0, int r);
+void GL_DrawEllipse (int x0, int y0, int rx, int ry);
+void GL_DrawHLine (int y0, int x0, int x1);
+void GL_DrawPolygon (const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
+void GL_DrawPoint (int x, int y);
+void GL_DrawLineRel (int dx, int dy);
+void GL_DrawLineTo (int x, int y);
+void GL_DrawLine (int x0, int y0, int x1, int y1);
+void GL_MoveTo (int x, int y);
+void GL_FillCircle (int x0, int y0, int r);
+void GL_FillCircleAA (int x0, int y0, int r);
+void GL_FillEllipse (int x0, int y0, int rx, int ry);
+void GL_FillPolygon (const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
+void GL_SetDefault (void);
+
+/************************************************************
+*
+* Callback pointers for dynamic linkage
+*
+*************************************************************
+Dynamic linkage pointers reduces configuration hassles.
+*/
+typedef int GUI_tfTimer(void);
+typedef char GUI_CURSOR_tfTempHide (const GUI_RECT* pRect);
+typedef void GUI_CURSOR_tfTempUnhide(void);
+typedef int WM_tfHandlePID(void);
+
+
+/************************************************************
+*
+* Cursors
+*
+*************************************************************
+*/
+
+extern GUI_CONST_STORAGE unsigned char GUI_Pixels_ArrowS[45];
+extern GUI_CONST_STORAGE unsigned char GUI_Pixels_ArrowM[60];
+extern GUI_CONST_STORAGE unsigned char GUI_Pixels_ArrowL[150];
+extern GUI_CONST_STORAGE unsigned char GUI_Pixels_CrossS[33];
+extern GUI_CONST_STORAGE unsigned char GUI_Pixels_CrossM[126];
+extern GUI_CONST_STORAGE unsigned char GUI_Pixels_CrossL[248];
+extern GUI_CONST_STORAGE unsigned char GUI_PixelsHeaderM[5 * 17];
+
+
+extern GUI_CONST_STORAGE GUI_LOGPALETTE GUI_CursorPal;
+extern GUI_CONST_STORAGE GUI_LOGPALETTE GUI_CursorPalI;
+
+/************************************************************
+*
+* Text rotation
+*
+*************************************************************
+*/
+
+extern GUI_RECT GUI_RectDispString; /* Used by LCD_Rotate...() and GUI_DispStringInRect() */
+
+/*********************************************************************
+*
+* Bitmap related functions
+*
+**********************************************************************
+*/
+
+int GUI_GetBitmapPixelIndex(const GUI_BITMAP GUI_UNI_PTR * pBMP, unsigned x, unsigned y);
+GUI_COLOR GUI_GetBitmapPixelColor(const GUI_BITMAP GUI_UNI_PTR * pBMP, unsigned x, unsigned y);
+
+#if defined(__cplusplus)
+}
+#endif
+
+#endif /* Avoid multiple inclusion */
+
+/************************************************************
+*
+* GUI_EXTERN declartions/definitions
+*
+*************************************************************
+*/
+
+#ifdef GL_CORE_C
+ #define GUI_EXTERN
+#else
+ #if defined(__cplusplus)
+ #define GUI_EXTERN extern "C"
+ #else
+ #define GUI_EXTERN extern
+ #endif
+#endif
+
+GUI_EXTERN GUI_SADDR GUI_CONTEXT GUI_Context; /* Thread wide globals */
+GUI_EXTERN GUI_SADDR char GUI_DecChar;
+GUI_EXTERN GUI_tfTimer* GUI_pfTimerExec;
+GUI_EXTERN WM_tfHandlePID* WM_pfHandlePID;
+GUI_EXTERN void (*GUI_pfDispCharStyle)(U16 Char);
+
+#if GUI_COMPILER_SUPPORTS_FP && GUI_SUPPORT_ROTATION
+ GUI_EXTERN const tLCD_APIList * GUI_pLCD_APIList; /* Used for rotating text */
+#endif
+
+#if GUI_SUPPORT_CURSOR
+ GUI_EXTERN GUI_CURSOR_tfTempHide* GUI_CURSOR_pfTempHide;
+ GUI_EXTERN GUI_CURSOR_tfTempUnhide* GUI_CURSOR_pfTempUnhide;
+#endif
+
+#if defined(__cplusplus)
+extern "C" { /* Make sure we have C-declarations in C++ programs */
+#endif
+
+extern const GUI_UC_ENC_APILIST GUI__API_TableNone;
+
+#if defined(__cplusplus)
+ }
+#endif
+
+#undef GUI_EXTERN
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_RectsIntersect.c b/User/lib/lcd/gui/Core/GUI_RectsIntersect.c
new file mode 100644
index 0000000..25036a4
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_RectsIntersect.c
@@ -0,0 +1,53 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_RectsIntersect.C
+Purpose : Implementation of GUI_RectsIntersect
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_RectsIntersect
+*
+* Purpose:
+* Check if rectangle do intersect.
+*
+* Return value:
+* 0 if they do not.
+* 1 if they do.
+*/
+int GUI_RectsIntersect(const GUI_RECT* pr0, const GUI_RECT* pr1) {
+ if (pr0->y0 <= pr1->y1) {
+ if (pr1->y0 <= pr0->y1) {
+ if (pr0->x0 <= pr1->x1) {
+ if (pr1->x0 <= pr0->x1) {
+ return 1;
+ }
+ }
+ }
+ }
+ return 0;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SIF.c b/User/lib/lcd/gui/Core/GUI_SIF.c
new file mode 100644
index 0000000..e36f039
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SIF.c
@@ -0,0 +1,69 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SIF.c
+Purpose : Implementation of system independend fonts
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Exported code
+*
+**********************************************************************
+*/
+
+/*********************************************************************
+*
+* GUI_SIF_CreateFont
+*/
+void GUI_SIF_CreateFont(void * pFontData, GUI_FONT * pFont, const GUI_SIF_TYPE * pFontType) {
+ const U8 * pSrc = (const U8 *)pFontData;
+ U32 ID;
+ /* Set pFontData of GUI_FONT structure to the first byte */
+ pFont->p.pFontData = pFontData;
+ /* Check ID */
+ ID = GUI__Read32(&pSrc);
+ if (ID != 0x50495547) { /* 'GUIP' */
+ GUI_DEBUG_ERROROUT("ID of downloaded font wrong!");
+ return;
+ }
+ /* Read properties of the font */
+ pFont->YSize = GUI__Read16(&pSrc);
+ pFont->YDist = GUI__Read16(&pSrc);
+ pFont->Baseline = GUI__Read16(&pSrc);
+ pFont->LHeight = GUI__Read16(&pSrc);
+ pFont->CHeight = GUI__Read16(&pSrc);
+ /* Magnification is always 1 */
+ pFont->XMag = 1;
+ pFont->YMag = 1;
+ /* Set function pointers */
+ pFont->pfDispChar = pFontType->pDispChar;
+ pFont->pfGetCharDistX = pFontType->pGetCharDistX;
+ pFont->pfGetFontInfo = pFontType->pGetFontInfo;
+ pFont->pfIsInFont = pFontType->pIsInFont;
+ pFont->pafEncode = 0;
+ /* Use the new font */
+ GUI_SetFont(pFont);
+}
+
+/*********************************************************************
+*
+* GUI_SIF_DeleteFont
+*/
+void GUI_SIF_DeleteFont(GUI_FONT * pFont) {
+ GUI_USE_PARA(pFont);
+}
diff --git a/User/lib/lcd/gui/Core/GUI_SIF_Prop.c b/User/lib/lcd/gui/Core/GUI_SIF_Prop.c
new file mode 100644
index 0000000..21b92bf
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SIF_Prop.c
@@ -0,0 +1,168 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SIF_Prop.c
+Purpose : Implementation of system independend fonts
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+
+/*********************************************************************
+*
+* _GetNumCharAreas
+*/
+static int _GetNumCharAreas(const GUI_FONT GUI_UNI_PTR * pFont) {
+ U16 NumCharAreas;
+ const U8 * pData;
+ pData = (const U8 *)pFont->p.pFontData + 14 /* Skip ID, YSize, YDist, Baseline, LHeight and CHeight */;
+ NumCharAreas = GUI__Read16(&pData);
+ return NumCharAreas;
+}
+
+/*********************************************************************
+*
+* _GetpCharInfo
+*/
+static const U8 * _GetpCharInfo(const GUI_FONT GUI_UNI_PTR * pFont, U16P c) {
+ const U8 * pCharArea, * pCharInfo;
+ int NumCharAreas;
+ NumCharAreas = _GetNumCharAreas(pFont); /* Get # of char areas */
+ pCharArea = (const U8 *)pFont->p.pFontData
+ + sizeof(GUI_SI_FONT); /* Set char area pointer to first char area */
+ pCharInfo = pCharArea
+ + sizeof(GUI_SIF_CHAR_AREA) * NumCharAreas; /* Set char info pointer to first character info */
+ do {
+ GUI_SIF_CHAR_AREA CharArea;
+ CharArea.First = GUI__Read16(&pCharArea);
+ CharArea.Last = GUI__Read16(&pCharArea);
+ if ((c >= CharArea.First) && (c <= CharArea.Last)) {
+ pCharInfo += sizeof(GUI_SIF_CHARINFO) * (c - CharArea.First);
+ return pCharInfo;
+ }
+ pCharInfo += sizeof(GUI_SIF_CHARINFO) * (CharArea.Last - CharArea.First + 1);
+ } while(--NumCharAreas);
+ return 0;
+}
+
+/*********************************************************************
+*
+* Exported code
+*
+**********************************************************************
+*/
+
+/*********************************************************************
+*
+* GUI_SIF_DispChar
+*/
+static void _GUI_SIF_DispChar(U16P c) {
+ const U8 * pCharInfo, * pData;
+ pCharInfo = _GetpCharInfo(GUI_Context.pAFont, c);
+ if (pCharInfo) {
+ GUI_DRAWMODE DrawMode, OldDrawMode;
+ GUI_SIF_CHARINFO CharInfo;
+ CharInfo.XSize = GUI__Read16(&pCharInfo);
+ CharInfo.XDist = GUI__Read16(&pCharInfo);
+ CharInfo.BytesPerLine = GUI__Read16(&pCharInfo);
+ GUI__Read16(&pCharInfo); /* Dummy */
+ CharInfo.OffData = GUI__Read32(&pCharInfo);
+ pData = (const U8 *)GUI_Context.pAFont->p.pFontData + CharInfo.OffData;
+ DrawMode = GUI_Context.TextMode;
+ OldDrawMode = LCD_SetDrawMode(DrawMode);
+ LCD_DrawBitmap(GUI_Context.DispPosX, GUI_Context.DispPosY,
+ CharInfo.XSize,
+ GUI_Context.pAFont->YSize,
+ GUI_Context.pAFont->XMag,
+ GUI_Context.pAFont->YMag,
+ 1,
+ CharInfo.BytesPerLine,
+ pData,
+ &LCD_BKCOLORINDEX);
+ /* Fill empty pixel lines */
+ if (GUI_Context.pAFont->YDist > GUI_Context.pAFont->YSize) {
+ int YMag = GUI_Context.pAFont->YMag;
+ int YDist = GUI_Context.pAFont->YDist * YMag;
+ int YSize = GUI_Context.pAFont->YSize * YMag;
+ if (DrawMode != LCD_DRAWMODE_TRANS) {
+ LCD_COLOR OldColor = GUI_GetColor();
+ GUI_SetColor(GUI_GetBkColor());
+ LCD_FillRect(GUI_Context.DispPosX,
+ GUI_Context.DispPosY + YSize,
+ GUI_Context.DispPosX + CharInfo.XSize,
+ GUI_Context.DispPosY + YDist);
+ GUI_SetColor(OldColor);
+ }
+ }
+ LCD_SetDrawMode(OldDrawMode); /* Restore draw mode */
+ GUI_Context.DispPosX += CharInfo.XDist;
+ }
+}
+
+/*********************************************************************
+*
+* GUI_SIF_GetCharDistX
+*/
+static int _GUI_SIF_GetCharDistX(U16P c) {
+ const U8 * pCharInfo;
+ U16 DistX = 0;
+ pCharInfo = _GetpCharInfo(GUI_Context.pAFont, c); /* Get pointer to char info data */
+ if (pCharInfo) {
+ pCharInfo += 2 /* Skip XSize */;
+ DistX = GUI__Read16(&pCharInfo);
+ }
+ return DistX;
+}
+
+/*********************************************************************
+*
+* GUI_SIF_GetFontInfo
+*/
+static void _GUI_SIF_GetFontInfo(const GUI_FONT GUI_UNI_PTR * pFont, GUI_FONTINFO * pfi) {
+ const U8 * pData;
+ pData = (const U8 *)pFont->p.pFontData + 4 /* Skip XSize and XDist */;
+ pfi->Baseline = GUI__Read16(&pData);
+ pfi->LHeight = GUI__Read16(&pData);
+ pfi->CHeight = GUI__Read16(&pData);
+ pfi->Flags = GUI_FONTINFO_FLAG_PROP;
+}
+
+/*********************************************************************
+*
+* GUI_SIF_IsInFont
+*/
+static char _GUI_SIF_IsInFont(const GUI_FONT GUI_UNI_PTR * pFont, U16 c) {
+ const U8 * pCharInfo;
+ GUI_USE_PARA(pFont);
+ pCharInfo = _GetpCharInfo(GUI_Context.pAFont, c);
+ return (pCharInfo) ? 1 : 0;
+}
+
+/*********************************************************************
+*
+* GUI_SIF_TYPE_PROP
+*/
+const tGUI_SIF_APIList GUI_SIF_APIList_Prop = {
+ _GUI_SIF_DispChar,
+ _GUI_SIF_GetCharDistX,
+ _GUI_SIF_GetFontInfo,
+ _GUI_SIF_IsInFont
+};
diff --git a/User/lib/lcd/gui/Core/GUI_SaveContext.c b/User/lib/lcd/gui/Core/GUI_SaveContext.c
new file mode 100644
index 0000000..157bd70
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SaveContext.c
@@ -0,0 +1,45 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SaveContext.c
+Purpose : Code to save and restore GUI context
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SaveContext
+*/
+void GUI_SaveContext(GUI_CONTEXT* pContext) {
+ *pContext = GUI_Context;
+}
+
+/*********************************************************************
+*
+* GUI_RestoreContext
+*/
+void GUI_RestoreContext(const GUI_CONTEXT* pContext) {
+ GUI_Context = *pContext;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SelectLCD.c b/User/lib/lcd/gui/Core/GUI_SelectLCD.c
new file mode 100644
index 0000000..f4ebe67
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SelectLCD.c
@@ -0,0 +1,49 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SelectLCD.c
+Purpose : Implementation of said routine
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SelectLCD
+*/
+void GUI_SelectLCD(void) {
+ GUI_LOCK();
+ #if GUI_SUPPORT_DEVICES
+ LCD_SelectLCD();
+ LCD_UpdateColorIndices();
+ #if GUI_WINSUPPORT
+ WM_Activate();
+ #endif
+ #endif
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SelectLayer.c b/User/lib/lcd/gui/Core/GUI_SelectLayer.c
new file mode 100644
index 0000000..ae03808
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SelectLayer.c
@@ -0,0 +1,45 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SelectLayer.c.C
+Purpose : Selection of Layer
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SelectLayer
+*/
+unsigned int GUI_SelectLayer(unsigned int Index) {
+ unsigned int OldIndex;
+ GUI_LOCK();
+ OldIndex = GUI_Context.SelLayer;
+ if (Index < GUI_NUM_LAYERS) {
+ GUI_Context.SelLayer = Index;
+ GUI_SelectLCD();
+ }
+ GUI_UNLOCK();
+ return OldIndex;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetColor.c b/User/lib/lcd/gui/Core/GUI_SetColor.c
new file mode 100644
index 0000000..5ae0412
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetColor.c
@@ -0,0 +1,48 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetColor.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetBkColor
+*/
+void GUI_SetBkColor(GUI_COLOR color) {
+ GUI_LOCK(); {
+ LCD_SetBkColor(color);
+ } GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_SetColor
+*/
+void GUI_SetColor(GUI_COLOR color) {
+ GUI_LOCK(); {
+ LCD_SetColor(color);
+ } GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetColorIndex.c b/User/lib/lcd/gui/Core/GUI_SetColorIndex.c
new file mode 100644
index 0000000..5a1853c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetColorIndex.c
@@ -0,0 +1,50 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_DrawBitmap.C
+Purpose : Implementation of GUI_DrawBitmap
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetBkColorIndex
+*/
+void GUI_SetBkColorIndex(int Index) {
+ GUI_LOCK(); {
+ GUI_Context.BkColor = GUI_INVALID_COLOR;
+ LCD_SetBkColorIndex(Index);
+ } GUI_UNLOCK();
+}
+
+/*********************************************************************
+*
+* GUI_SetColorIndex
+*/
+void GUI_SetColorIndex(int Index) {
+ GUI_LOCK(); {
+ GUI_Context.Color = GUI_INVALID_COLOR;
+ LCD_SetColorIndex(Index);
+ } GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetDecChar.c b/User/lib/lcd/gui/Core/GUI_SetDecChar.c
new file mode 100644
index 0000000..9074be4
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetDecChar.c
@@ -0,0 +1,47 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetDecChar.C
+Purpose : Routines to set the character used for decimal point
+----------------------------------------------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetDecChar
+*/
+char GUI_SetDecChar(char c) {
+ char r = GUI_DecChar;
+ GUI_DecChar = c;
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_GetDecChar
+*/
+char GUI_GetDecChar(void) {
+ return GUI_DecChar;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetDefault.c b/User/lib/lcd/gui/Core/GUI_SetDefault.c
new file mode 100644
index 0000000..9b28dc9
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetDefault.c
@@ -0,0 +1,53 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetDefault.c
+Purpose : Implementation of GUI_SetDefault
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GL_SetDefault
+*/
+void GL_SetDefault(void) {
+ GUI_SetBkColor(GUI_DEFAULT_BKCOLOR);
+ GUI_SetColor (GUI_DEFAULT_COLOR);
+ GUI_SetPenSize(1);
+ GUI_SetTextAlign(0);
+ GUI_SetTextMode(0);
+ GUI_SetDrawMode(0);
+ GUI_SetFont(GUI_DEFAULT_FONT);
+ GUI_SetLineStyle(GUI_LS_SOLID);
+}
+
+/*********************************************************************
+*
+* GUI_SetDefault
+*/
+void GUI_SetDefault(void) {
+ GUI_LOCK();
+ GL_SetDefault();
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetDrawMode.c b/User/lib/lcd/gui/Core/GUI_SetDrawMode.c
new file mode 100644
index 0000000..9a046ad
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetDrawMode.c
@@ -0,0 +1,43 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetDrawMode.C
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetDrawMode
+*/
+GUI_DRAWMODE GUI_SetDrawMode(GUI_DRAWMODE dm) {
+ GUI_DRAWMODE OldMode;
+ GUI_LOCK(); {
+ OldMode = LCD_SetDrawMode(dm);
+ } GUI_UNLOCK();
+ return OldMode;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetFont.c b/User/lib/lcd/gui/Core/GUI_SetFont.c
new file mode 100644
index 0000000..b6a5fb4
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetFont.c
@@ -0,0 +1,42 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetFont.C
+Purpose : Optional routines
+----------------------------------------------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetFont
+*/
+const GUI_FONT GUI_UNI_PTR* GUI_SetFont(const GUI_FONT GUI_UNI_PTR * pNewFont) {
+ const GUI_FONT GUI_UNI_PTR* pOldFont = GUI_Context.pAFont;
+ GUI_LOCK();
+ if (pNewFont)
+ GUI_Context.pAFont = pNewFont;
+ GUI_UNLOCK();
+ return pOldFont;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetLBorder.c b/User/lib/lcd/gui/Core/GUI_SetLBorder.c
new file mode 100644
index 0000000..1fb60d6
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetLBorder.c
@@ -0,0 +1,47 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetLBorder.C
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetLBorder
+*
+* Purpose:
+* Sets the left border (for carriage return).
+*/
+int GUI_SetLBorder(int x) {
+ int r;
+ GUI_LOCK();
+ r = GUI_Context.LBorder;
+ GUI_Context.LBorder = x;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetLUTColor.c b/User/lib/lcd/gui/Core/GUI_SetLUTColor.c
new file mode 100644
index 0000000..375a9ef
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetLUTColor.c
@@ -0,0 +1,45 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetLUTColor.c
+Purpose : Implementation of GUI_SetLUTColor
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+#include "LCD_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetLUTColor
+*/
+void GUI_SetLUTColor(U8 Pos, LCD_COLOR Color) {
+ #if LCD_PHYSCOLORS_IN_RAM
+ GUI_LOCK();
+ LCD_PhysColors[Pos] = Color;
+ LCD_SetLUTEntry(Pos, Color);
+ GUI_UNLOCK();
+ #else
+ GUI_USE_PARA(Pos);
+ GUI_USE_PARA(Color);
+ #endif
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetLUTColorEx.c b/User/lib/lcd/gui/Core/GUI_SetLUTColorEx.c
new file mode 100644
index 0000000..6b0987c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetLUTColorEx.c
@@ -0,0 +1,108 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetLUTColorEx.c
+Purpose : Implementation of GUI_SetLUTColorEx
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Private.h"
+#include "LCD_Private.h" /* Required for configuration, APIList */
+
+#if GUI_COMPILER_SUPPORTS_FP
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static const LCD_LUT_INFO _aLutInfo[GUI_NUM_LAYERS] = {
+ #if GUI_NUM_LAYERS > 1
+ {
+ #if (LCD_FIXEDPALETTE == 0) && (LCD_PHYSCOLORS_IN_RAM)
+ LCD_PhysColors, (I16)(1 << LCD_BITSPERPIXEL_0)
+ #else
+ NULL, 0
+ #endif
+ },
+ {
+ #if (LCD_FIXEDPALETTE_1 == 0) && (LCD_PHYSCOLORS_IN_RAM)
+ LCD_PhysColors_1, (I16)(1 << LCD_BITSPERPIXEL_1)
+ #else
+ NULL, 0
+ #endif
+ },
+ #if GUI_NUM_LAYERS > 2
+ {
+ #if (LCD_FIXEDPALETTE_1 == 0) && (LCD_PHYSCOLORS_IN_RAM)
+ LCD_PhysColors_2, (I16)(1 << LCD_BITSPERPIXEL_2)
+ #else
+ NULL, 0
+ #endif
+ },
+ #endif
+ #if GUI_NUM_LAYERS > 3
+ {
+ #if (LCD_FIXEDPALETTE_3 == 0) && (LCD_PHYSCOLORS_IN_RAM)
+ LCD_PhysColors_3, (I16)(1 << LCD_BITSPERPIXEL_3)
+ #else
+ NULL, 0
+ #endif
+ },
+ #endif
+ #if GUI_NUM_LAYERS > 4
+ {
+ #if (LCD_FIXEDPALETTE_4 == 0) && (LCD_PHYSCOLORS_IN_RAM)
+ LCD_PhysColors_4, (I16)(1 << LCD_BITSPERPIXEL_4)
+ #else
+ NULL, 0
+ #endif
+ },
+ #endif
+ #else
+ {
+ #if (LCD_FIXEDPALETTE == 0) && (LCD_PHYSCOLORS_IN_RAM)
+ LCD_PhysColors, 1 << LCD_BITSPERPIXEL
+ #else
+ NULL, 0
+ #endif
+ }
+ #endif
+};
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetLUTColorEx
+*/
+void GUI_SetLUTColorEx(U8 Pos, LCD_COLOR Color, unsigned int LayerIndex) {
+ if (LayerIndex < GUI_NUM_LAYERS) {
+ if (Pos < _aLutInfo[LayerIndex].NumEntries) {
+ LCD_aAPI[LayerIndex]->pfSetLUTEntry(Pos, Color);
+ _aLutInfo[LayerIndex].paColor[Pos] = Color;
+ }
+ }
+}
+
+#endif
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetLUTEntry.c b/User/lib/lcd/gui/Core/GUI_SetLUTEntry.c
new file mode 100644
index 0000000..3b116ed
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetLUTEntry.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetLUTEntry.c
+Purpose : Implementation of GUI_SetLUTEntry
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetLUTEntry
+*/
+void GUI_SetLUTEntry(U8 Pos, LCD_COLOR Color) {
+ GUI_LOCK();
+ LCD_SetLUTEntry(Pos, Color);
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetLineStyle.c b/User/lib/lcd/gui/Core/GUI_SetLineStyle.c
new file mode 100644
index 0000000..42596c0
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetLineStyle.c
@@ -0,0 +1,41 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetLineStyle.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetLineStyle
+*/
+U8 GUI_SetLineStyle(U8 LineStyle) {
+ U8 r;
+ GUI_LOCK();
+ r = GUI_Context.LineStyle;
+ GUI_Context.LineStyle = LineStyle;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetOrg.c b/User/lib/lcd/gui/Core/GUI_SetOrg.c
new file mode 100644
index 0000000..c3c3b48
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetOrg.c
@@ -0,0 +1,41 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetOrg.C
+Purpose : Defines the GUI_SetOrg function
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetOrg
+*/
+void GUI_SetOrg(int x, int y) {
+ GUI_LOCK();
+ LCD_L0_SetOrg(x, y);
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetPixelIndex.c b/User/lib/lcd/gui/Core/GUI_SetPixelIndex.c
new file mode 100644
index 0000000..dbe7fcf
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetPixelIndex.c
@@ -0,0 +1,58 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_SetPixelIndex.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Private.h"
+#include "LCD_Private.h"
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define RETURN_IF_Y_OUT() \
+ if (y < GUI_Context.ClipRect.y0) return; \
+ if (y > GUI_Context.ClipRect.y1) return;
+
+#define RETURN_IF_X_OUT() \
+ if (x < GUI_Context.ClipRect.x0) return; \
+ if (x > GUI_Context.ClipRect.x1) return;
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_SetPixelIndex
+*
+* Purpose:
+* Writes 1 pixel into the display.
+*/
+void LCD_SetPixelIndex(int x, int y, int ColorIndex) {
+ RETURN_IF_X_OUT();
+ RETURN_IF_Y_OUT();
+ LCDDEV_L0_SetPixelIndex(x, y, ColorIndex);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetTextAlign.c b/User/lib/lcd/gui/Core/GUI_SetTextAlign.c
new file mode 100644
index 0000000..c2cd8a4
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetTextAlign.c
@@ -0,0 +1,41 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetTextAlign.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetTextAlign
+*/
+int GUI_SetTextAlign(int Align) {
+ int r;
+ GUI_LOCK();
+ r = GUI_Context.TextAlign;
+ GUI_Context.TextAlign = Align;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetTextMode.c b/User/lib/lcd/gui/Core/GUI_SetTextMode.c
new file mode 100644
index 0000000..901966c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetTextMode.c
@@ -0,0 +1,41 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetTextMode.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetTextMode
+*/
+int GUI_SetTextMode(int Mode) {
+ int r;
+ GUI_LOCK();
+ r = GUI_Context.TextMode;
+ GUI_Context.TextMode = Mode;
+ GUI_UNLOCK();
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_SetTextStyle.c b/User/lib/lcd/gui/Core/GUI_SetTextStyle.c
new file mode 100644
index 0000000..222d73c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_SetTextStyle.c
@@ -0,0 +1,81 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_SetTextStyle.C
+Purpose : Implementation of various text styles
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__cbDrawTextStyle
+*/
+static void GUI__cbDrawTextStyle(U16 Char) {
+ int x0, x1;
+ x1 = GUI_Context.DispPosX - 1;
+ x0 = x1 - GUI_Context.pAFont->pfGetCharDistX(Char) + 1;
+ /* Handle Underline */
+ if (GUI_Context.TextStyle & GUI_TS_UNDERLINE) {
+ int yOff = GUI_Context.pAFont->Baseline;
+ if (yOff >= GUI_Context.pAFont->YSize) {
+ yOff = GUI_Context.pAFont->YSize - 1;
+ }
+ LCD_DrawHLine(x0, GUI_Context.DispPosY + yOff, x1);
+ }
+ /* Handle strike thru */
+ if (GUI_Context.TextStyle & GUI_TS_STRIKETHRU) {
+ int yOff = GUI_Context.pAFont->Baseline - ((GUI_Context.pAFont->CHeight + 1) / 2);
+ LCD_DrawHLine(x0, GUI_Context.DispPosY + yOff, x1);
+ }
+ /* Handle over line */
+ if (GUI_Context.TextStyle & GUI_TS_OVERLINE) {
+ int yOff = GUI_Context.pAFont->Baseline - GUI_Context.pAFont->CHeight - 1;
+ if (yOff < 0) {
+ yOff = 0;
+ }
+ LCD_DrawHLine(x0, GUI_Context.DispPosY + yOff, x1);
+ }
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_SetTextStyle
+*/
+char GUI_SetTextStyle(char Style) {
+ char OldStyle;
+ GUI_LOCK();
+ OldStyle = GUI_Context.TextStyle;
+ GUI_pfDispCharStyle = GUI__cbDrawTextStyle; /* Init function pointer (function in this module) */
+ GUI_Context.TextStyle = Style;
+ GUI_UNLOCK();
+ return OldStyle;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_TOUCH.c b/User/lib/lcd/gui/Core/GUI_TOUCH.c
new file mode 100644
index 0000000..c06e397
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_TOUCH.c
@@ -0,0 +1,59 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUITOUCH.C
+Purpose : Generic touch screen routines
+----------------------------------------------------------------------
+*/
+
+#include
+#include "LCD_Private.h" /* private modul definitions & config */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static GUI_PID_STATE _State;
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_TOUCH_GetState
+*/
+int GUI_TOUCH_GetState(GUI_PID_STATE *pState) {
+ *pState = _State;
+ return (_State.Pressed != 0) ? 1 : 0;
+}
+
+/*********************************************************************
+*
+* GUI_TOUCH_StoreStateEx
+*/
+void GUI_TOUCH_StoreStateEx(const GUI_PID_STATE *pState) {
+ if (memcmp(pState, &_State, sizeof(_State))) {
+ _State = *pState;
+ GUI_PID_StoreState(pState);
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_TOUCH_DriverAnalog.c b/User/lib/lcd/gui/Core/GUI_TOUCH_DriverAnalog.c
new file mode 100644
index 0000000..d963dd0
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_TOUCH_DriverAnalog.c
@@ -0,0 +1,299 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUITOUCH.C
+Purpose : Touch screen manager
+----------------------------------------------------------------------
+This module handles the touch screen. It is configured in the file
+GUITouch.conf.h (Should be located in the Config\ directory).
+----------------------------------------------------------------------
+*/
+
+#include
+#include
+#include
+#include "LCD_Private.h" /* private modul definitions & config */
+#include "GUI_Protected.h"
+
+/* Generate code only if configuration says so ! */
+#if GUI_SUPPORT_TOUCH
+
+#include "GUITouchConf.h" /* Located in GUIx, will include GUITouchConf.h */
+
+/*********************************************************************
+*
+* Defines, config defaults
+*
+**********************************************************************
+*/
+
+#ifndef GUI_TOUCH_AD_LEFT /* max value returned by AD-converter */
+ #define GUI_TOUCH_AD_LEFT 30
+#endif
+
+#ifndef GUI_TOUCH_AD_RIGHT /* min value returned by AD-converter */
+ #define GUI_TOUCH_AD_RIGHT 220
+#endif
+
+#ifndef GUI_TOUCH_AD_TOP /* max value returned by AD-converter */
+ #define GUI_TOUCH_AD_TOP 30
+#endif
+
+#ifndef GUI_TOUCH_AD_BOTTOM /* min value returned by AD-converter */
+ #define GUI_TOUCH_AD_BOTTOM 220
+#endif
+
+#ifndef GUI_TOUCH_SWAP_XY /* Is XY of touch swapped ? */
+ #define GUI_TOUCH_SWAP_XY 0
+#endif
+
+#ifndef GUI_TOUCH_MIRROR_X
+ #define GUI_TOUCH_MIRROR_X 0
+#endif
+
+#ifndef GUI_TOUCH_MIRROR_Y
+ #define GUI_TOUCH_MIRROR_Y 0
+#endif
+
+#ifndef GUI_TOUCH_YSIZE
+ #define GUI_TOUCH_YSIZE LCD_YSIZE
+#endif
+
+#ifndef GUI_TOUCH_XSIZE
+ #define GUI_TOUCH_XSIZE LCD_XSIZE
+#endif
+
+/*********************************************************************
+*
+* Types
+*
+**********************************************************************
+*/
+
+typedef struct {int Min; int Max; } tMinMax;
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static int xPhys, yPhys;
+
+static tMinMax xyMinMax[2] = {
+#if ((GUI_TOUCH_SWAP_XY==0) && (GUI_TOUCH_MIRROR_X==0)) || ((GUI_TOUCH_SWAP_XY) && (GUI_TOUCH_MIRROR_Y==0))
+ { GUI_TOUCH_AD_LEFT, GUI_TOUCH_AD_RIGHT },
+#else
+ { GUI_TOUCH_AD_RIGHT, GUI_TOUCH_AD_LEFT },
+#endif
+#if ((GUI_TOUCH_SWAP_XY==0) && (GUI_TOUCH_MIRROR_Y==0)) || ((GUI_TOUCH_SWAP_XY) && (GUI_TOUCH_MIRROR_X==0))
+ { GUI_TOUCH_AD_TOP, GUI_TOUCH_AD_BOTTOM }
+#else
+ { GUI_TOUCH_AD_BOTTOM, GUI_TOUCH_AD_TOP }
+#endif
+};
+
+#ifndef WIN32
+static int xMin;
+static int xMax;
+static int yMin;
+static int yMax;
+#endif
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _AD2X
+*
+* Purpose:
+* Convert physical value into (logical) coordinates.
+*/
+#ifndef WIN32
+static int _AD2X(int adx) {
+ I32 r = adx - xyMinMax[GUI_COORD_X].Min;
+ r *= GUI_TOUCH_XSIZE - 1;
+ return r / (xyMinMax[GUI_COORD_X].Max - xyMinMax[GUI_COORD_X].Min);
+}
+
+/*********************************************************************
+*
+* _AD2Y
+*
+* Purpose:
+* Convert physical value into (logical) coordinates.
+*/
+static int _AD2Y(int ady) {
+ I32 r = ady - xyMinMax[GUI_COORD_Y].Min;
+ r *= GUI_TOUCH_YSIZE - 1;
+ return r/(xyMinMax[GUI_COORD_Y].Max - xyMinMax[GUI_COORD_Y].Min);
+}
+#endif
+
+/*********************************************************************
+*
+* _Log2Phys
+*/
+static int _Log2Phys(int l, I32 l0, I32 l1, I32 p0, I32 p1) {
+ return p0+ ((p1 - p0) * (l - l0)) / (l1 - l0);
+}
+
+/*********************************************************************
+*
+* _StoreUnstable
+*/
+static void _StoreUnstable(int x, int y) {
+ static int _xLast = -1;
+ static int _yLast = -1;
+ int xOut, yOut;
+
+ if ((x != -1) && (y != -1) && (_xLast != -1) && (_yLast != -1)) {
+ xOut = _xLast;
+ yOut = _yLast;
+ } else {
+ xOut = -1;
+ yOut = -1;
+ }
+ _xLast = x;
+ _yLast = y;
+ GUI_TOUCH_StoreUnstable(xOut, yOut);
+}
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_TOUCH_GetxPhys
+*/
+int GUI_TOUCH_GetxPhys(void) {
+ return xPhys;
+}
+
+/*********************************************************************
+*
+* GUI_TOUCH_GetyPhys
+*/
+int GUI_TOUCH_GetyPhys(void) {
+ return yPhys;
+}
+
+/*********************************************************************
+*
+* GUI_TOUCH_SetDefaultCalibration
+*/
+void GUI_TOUCH_SetDefaultCalibration(void) {
+ xyMinMax[0].Min = GUI_TOUCH_AD_LEFT;
+ xyMinMax[0].Max = GUI_TOUCH_AD_RIGHT;
+ xyMinMax[1].Min = GUI_TOUCH_AD_TOP;
+ xyMinMax[1].Max = GUI_TOUCH_AD_BOTTOM;
+}
+
+/*********************************************************************
+*
+* GUI_TOUCH_Calibrate
+*/
+int GUI_TOUCH_Calibrate(int Coord, int Log0, int Log1, int Phys0, int Phys1) {
+ int l0 = 0;
+ int l1 = (Coord == GUI_COORD_X) ? LCD_XSIZE - 1 : LCD_YSIZE - 1;
+ if (labs(Phys0 - Phys1) < 20) {
+ return 1;
+ }
+ if (labs(Log0 - Log1) < 20) {
+ return 1;
+ }
+ xyMinMax[Coord].Min = _Log2Phys(l0, Log0, Log1, Phys0, Phys1);
+ xyMinMax[Coord].Max = _Log2Phys(l1, Log0, Log1, Phys0, Phys1);
+ return 0;
+}
+
+/*********************************************************************
+*
+* GUI_TOUCH_GetCalData
+*/
+void GUI_TOUCH_GetCalData(int Coord, int* pMin,int* pMax) {
+ *pMin = xyMinMax[Coord].Min;
+ *pMax = xyMinMax[Coord].Max;
+}
+
+/*********************************************************************
+*
+* GUI_TOUCH_Exec
+*/
+void GUI_TOUCH_Exec(void) {
+ #ifndef WIN32
+ static U8 ReadState;
+ int x,y;
+ /* calculate Min / Max values */
+ if (xyMinMax[GUI_COORD_X].Min < xyMinMax[GUI_COORD_X].Max) {
+ xMin = xyMinMax[GUI_COORD_X].Min;
+ xMax = xyMinMax[GUI_COORD_X].Max;
+ } else {
+ xMax = xyMinMax[GUI_COORD_X].Min;
+ xMin = xyMinMax[GUI_COORD_X].Max;
+ }
+ if (xyMinMax[GUI_COORD_Y].Min < xyMinMax[GUI_COORD_Y].Max) {
+ yMin = xyMinMax[GUI_COORD_Y].Min;
+ yMax = xyMinMax[GUI_COORD_Y].Max;
+ } else {
+ yMax = xyMinMax[GUI_COORD_Y].Min;
+ yMin = xyMinMax[GUI_COORD_Y].Max;
+ }
+ /* Execute the state machine which reads the touch */
+ switch (ReadState) {
+ case 0:
+ yPhys = TOUCH_X_MeasureY();
+ TOUCH_X_ActivateY(); /* Prepare X- measurement */
+ ReadState++;
+ break;
+ default:
+ xPhys = TOUCH_X_MeasureX();
+ TOUCH_X_ActivateX(); /* Prepare Y- measurement */
+ /* Convert values into logical values */
+ #if !GUI_TOUCH_SWAP_XY /* Is X/Y swapped ? */
+ x = xPhys;
+ y = yPhys;
+ #else
+ x = yPhys;
+ y = xPhys;
+ #endif
+ if ((x < xMin) || (x > xMax) || (y < yMin) || (y > yMax)) {
+ _StoreUnstable(-1, -1);
+ } else {
+ x = _AD2X(x);
+ y = _AD2Y(y);
+ _StoreUnstable(x, y);
+ }
+ /* Reset state machine */
+ ReadState = 0;
+ break;
+ }
+ #endif /* WIN32 */
+}
+
+#else
+
+void GUI_TOUCH_DriverAnalog_C(void); /* Avoid "no prototype" warnings */
+void GUI_TOUCH_DriverAnalog_C(void) {}
+
+#endif /* defined(GUI_SUPPORT_TOUCH) && GUI_SUPPORT_TOUCH */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_TOUCH_StoreState.c b/User/lib/lcd/gui/Core/GUI_TOUCH_StoreState.c
new file mode 100644
index 0000000..ee3ae6e
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_TOUCH_StoreState.c
@@ -0,0 +1,47 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUITOUCH_StoreState.C
+Purpose : Implementation of GUITOUCH_StoreState
+----------------------------------------------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_TOUCH_StoreState
+*
+* NOTE:
+* This is the older version. Prefer GUI_TOUCH_StoreStateEx in new code
+*/
+void GUI_TOUCH_StoreState(int x, int y) {
+ static GUI_PID_STATE _State; /* static so we retain coordinates when touch is released */
+ if ((x >= 0) && (y >= 0)) {
+ _State.Pressed = 1;
+ _State.x = x;
+ _State.y = y;
+ } else {
+ _State.Pressed = 0;
+ }
+ GUI_TOUCH_StoreStateEx(&_State);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_TOUCH_StoreUnstable.c b/User/lib/lcd/gui/Core/GUI_TOUCH_StoreUnstable.c
new file mode 100644
index 0000000..e9eb53b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_TOUCH_StoreUnstable.c
@@ -0,0 +1,62 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUITOUCH_StoreUnstable.C
+Purpose : Implementation of GUITOUCH_StoreUnstable
+----------------------------------------------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static int _x, _y;
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_TOUCH_StoreUnstable
+*/
+void GUI_TOUCH_StoreUnstable(int x, int y) {
+ int xDiff, yDiff;
+ xDiff = abs (x - _x);
+ yDiff = abs (y - _y);
+ if (xDiff + yDiff > 2) {
+ _x = x;
+ _y = y;
+ GUI_TOUCH_StoreState(x, y);
+ }
+}
+
+/*********************************************************************
+*
+* GUI_TOUCH_GetUnstable
+*/
+void GUI_TOUCH_GetUnstable(int* px, int* py) {
+ *px = _x;
+ *py = _y;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_UC.c b/User/lib/lcd/gui/Core/GUI_UC.c
new file mode 100644
index 0000000..bd40386
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_UC.c
@@ -0,0 +1,120 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_UC_EncodeUTF8.c
+Purpose : Encoding routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_UC_GetCharSize
+*/
+int GUI_UC_GetCharSize(const char GUI_UNI_PTR * s) {
+ int r;
+ GUI_LOCK();
+ r = GUI_Context.pUC_API->pfGetCharSize(s);
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_UC_GetCharCode
+*/
+U16 GUI_UC_GetCharCode(const char GUI_UNI_PTR * s) {
+ U16 r;
+ GUI_LOCK();
+ r = GUI_Context.pUC_API->pfGetCharCode(s);
+ GUI_UNLOCK();
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_UC_Encode
+*/
+int GUI_UC_Encode(char* s, U16 Char) {
+ #if GUI_COMPILER_SUPPORTS_FP
+ int r;
+ GUI_LOCK();
+ r = GUI_Context.pUC_API->pfEncode(s, Char);
+ GUI_UNLOCK();
+ return r;
+ #else
+ GUI_USE_PARA(s);
+ GUI_USE_PARA(Char);
+ return 0;
+ #endif
+}
+
+/*********************************************************************
+*
+* GUI_UC__CalcSizeOfChar
+*/
+int GUI_UC__CalcSizeOfChar(U16 Char) {
+ return GUI_Context.pUC_API->pfCalcSizeOfChar(Char);
+}
+
+/*********************************************************************
+*
+* GUI_UC__GetCharCodeInc
+*/
+U16 GUI_UC__GetCharCodeInc(const char GUI_UNI_PTR ** ps) {
+ const char GUI_UNI_PTR * s;
+ U16 r;
+ s = *ps;
+ r = GUI_UC__GetCharCode(s);
+ s += GUI_UC__GetCharSize(s);
+ *ps = s;
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI_UC__NumChars2NumBytes
+*/
+int GUI_UC__NumChars2NumBytes(const char GUI_UNI_PTR * s, int NumChars) {
+ int CharSize, NumBytes = 0;
+ while (NumChars--) {
+ CharSize = GUI_UC__GetCharSize(s);
+ s += CharSize;
+ NumBytes += CharSize;
+ }
+ return NumBytes;
+}
+
+/*********************************************************************
+*
+* GUI_UC__NumBytes2NumChars
+*/
+int GUI_UC__NumBytes2NumChars(const char GUI_UNI_PTR * s, int NumBytes) {
+ int CharSize, Chars = 0, Bytes = 0;
+ while (NumBytes > Bytes) {
+ CharSize = GUI_UC__GetCharSize(s + Bytes);
+ Bytes += CharSize;
+ Chars++;
+ }
+ return Chars;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_UC_DispString.c b/User/lib/lcd/gui/Core/GUI_UC_DispString.c
new file mode 100644
index 0000000..d2f50dd
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_UC_DispString.c
@@ -0,0 +1,161 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_UC_DispString.c
+Purpose : Implementation of GUI_UC_DispString
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _GetLineDistX
+*/
+static int _GetLineDistX(const U16 GUI_UNI_PTR *s, int MaxNumChars) {
+ int Dist =0;
+ if (s) {
+ U16 Char;
+ while (((Char = *s) != 0) && MaxNumChars >= 0) {
+ s++;
+ MaxNumChars--;
+ Dist += GUI_GetCharDistX(Char);
+ }
+ }
+ return Dist;
+}
+
+/*********************************************************************
+*
+* _GetLineLen
+*/
+static int _GetLineLen(const U16 GUI_UNI_PTR *s, int MaxLen) {
+ int Len =0;
+ if (!s)
+ return 0;
+ {
+ while ((*s !=0) && Len < MaxLen) {
+ Len++; s++;
+ }
+ }
+ return Len;
+}
+
+/*********************************************************************
+*
+* _DispLine_UC
+*/
+static void _DispLine_UC(const U16 GUI_UNI_PTR *s, int Len, const GUI_RECT *pRect) {
+ if (GUI_Context.pClipRect_HL) {
+ if (GUI_RectsIntersect(GUI_Context.pClipRect_HL, pRect) == 0)
+ return;
+ }
+ {
+ U16 c0;
+ while (--Len >=0) {
+ c0=*s++;
+ GL_DispChar(c0);
+ }
+ }
+}
+
+/*********************************************************************
+*
+* _DispLine
+*/
+static void _DispLine(const U16 GUI_UNI_PTR *s, int Len, const GUI_RECT* pr) {
+ GUI_RECT r;
+ r = *pr;
+ #if GUI_WINSUPPORT
+ WM_ADDORG(r.x0,r.y0);
+ WM_ADDORG(r.x1,r.y1);
+ WM_ITERATE_START(&r) {
+ #endif
+ GUI_Context.DispPosX = r.x0;
+ GUI_Context.DispPosY = r.y0;
+ _DispLine_UC(s, Len, &r); /* Do the actual drawing via routine call. */
+ #if GUI_WINSUPPORT
+ } WM_ITERATE_END();
+ WM_SUBORG(GUI_Context.DispPosX, GUI_Context.DispPosY);
+ #endif
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_UC_DispString
+*/
+void GUI_UC_DispString(const U16 GUI_UNI_PTR *s) {
+ int xAdjust, yAdjust, xOrg;
+ int FontSizeY;
+ if (!s)
+ return;
+ GUI_LOCK();
+ FontSizeY = GUI_Context.pAFont->YSize;
+ xOrg = GUI_Context.DispPosX;
+ /* Adjust vertical position */
+ yAdjust = GUI_GetYAdjust();
+ GUI_Context.DispPosY -= yAdjust;
+ for (; *s; s++) {
+ GUI_RECT r;
+ int LineLen= _GetLineLen(s,0x7fff);
+ int xLineSize = _GetLineDistX(s, LineLen);
+ /* Check if x-position needs to be changed due to h-alignment */
+ switch (GUI_Context.TextAlign & GUI_TA_HORIZONTAL) {
+ case GUI_TA_CENTER: xAdjust= xLineSize/2; break;
+ case GUI_TA_RIGHT: xAdjust= xLineSize; break;
+ default: xAdjust= 0;
+ }
+ r.x0 = GUI_Context.DispPosX -= xAdjust;
+ r.x1 = r.x0 + xLineSize-1;
+ r.y0 = GUI_Context.DispPosY;
+ r.y1 = r.y0 + FontSizeY-1;
+ _DispLine(s, LineLen, &r);
+ GUI_Context.DispPosY = r.y0;
+ s += LineLen;
+ if (*s=='\n') {
+ switch (GUI_Context.TextAlign & GUI_TA_HORIZONTAL) {
+ case GUI_TA_CENTER:
+ case GUI_TA_RIGHT:
+ GUI_Context.DispPosX = xOrg;
+ break;
+ default:
+ GUI_Context.DispPosX = GUI_Context.LBorder;
+ break;
+ }
+ GUI_Context.DispPosY += GUI_GetFontDistY();
+ } else {
+ GUI_Context.DispPosX = r.x0+xLineSize;
+ }
+ if (*s==0) /* end of string (last line) reached ? */
+ break;
+ }
+ GUI_Context.DispPosY += yAdjust;
+ GUI_Context.TextAlign &= ~GUI_TA_HORIZONTAL;
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_UC_EncodeNone.c b/User/lib/lcd/gui/Core/GUI_UC_EncodeNone.c
new file mode 100644
index 0000000..f1173cc
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_UC_EncodeNone.c
@@ -0,0 +1,108 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_UC_EncodeNone.c
+Purpose : Encoding routines for non unicode systems (default)
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _GetCharCode
+*
+* Purpose:
+* Return the UNICODE character code of the current character.
+*/
+static U16 _GetCharCode(const char GUI_UNI_PTR * s) {
+ return *(const U8 GUI_UNI_PTR *)s;
+}
+
+/*********************************************************************
+*
+* _GetCharSize
+*
+* Purpose:
+* Return the number of bytes of the current character.
+*/
+static int _GetCharSize(const char GUI_UNI_PTR * s) {
+ GUI_USE_PARA(s);
+ return 1;
+}
+
+/*********************************************************************
+*
+* _CalcSizeOfChar
+*
+* Purpose:
+* Return the number of bytes needed for the given character.
+*/
+static int _CalcSizeOfChar(U16 Char) {
+ GUI_USE_PARA(Char);
+ return 1;
+}
+
+/*********************************************************************
+*
+* _Encode
+*
+* Purpose:
+* Encode character into 1/2/3 bytes.
+*/
+static int _Encode(char *s, U16 Char) {
+ *s = (U8)(Char);
+ return 1;
+}
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _API_Table
+*/
+const GUI_UC_ENC_APILIST GUI__API_TableNone = {
+ _GetCharCode, /* return character code as U16 */
+ _GetCharSize, /* return size of character: 1 */
+ _CalcSizeOfChar, /* return size of character: 1 */
+ _Encode /* Encode character */
+};
+
+/*********************************************************************
+*
+* Exported code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_UC_SetEncodeNone
+*/
+void GUI_UC_SetEncodeNone(void) {
+ GUI_LOCK();
+ GUI_Context.pUC_API = &GUI__API_TableNone;
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_UC_EncodeUTF8.c b/User/lib/lcd/gui/Core/GUI_UC_EncodeUTF8.c
new file mode 100644
index 0000000..cc0e1bf
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_UC_EncodeUTF8.c
@@ -0,0 +1,153 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_UC_EncodeUTF8.c
+Purpose : Encoding routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _GetCharCode
+*
+* Purpose:
+* Return the UNICODE character code of the current character.
+*/
+static U16 _GetCharCode(const char GUI_UNI_PTR * s) {
+ U16 r;
+ U8 Char = *(const U8*)s;
+ if ((Char & 0x80) == 0) { /* Single byte (ASCII) */
+ r = Char;
+ } else if ((Char & 0xe0) == 0xc0) { /* Double byte sequence */
+ r = (Char & 0x1f) << 6;
+ Char = *(++s);
+ Char &= 0x3f;
+ r |= Char;
+ } else if ((Char & 0xf0) == 0xe0) { /* 3 byte sequence */
+ r = (Char & 0x0f) << 12;
+ Char = *(++s);
+ Char &= 0x3f;
+ r |= (Char << 6);
+ Char = *(++s);
+ Char &= 0x3f;
+ r |= Char;
+ } else {
+ GUI_DEBUG_ERROROUT("Illegal character during UTF-8 decoding!");
+ r = 1; /* Illegal character. To avoid endless loops in upper layers, we return 1 rather than 0. */
+ }
+ return r;
+}
+
+/*********************************************************************
+*
+* _GetCharSize
+*
+* Purpose:
+* Return the number of bytes of the current character.
+*/
+static int _GetCharSize(const char GUI_UNI_PTR * s) {
+ U8 Char = *s;
+ if ((Char & 0x80) == 0) {
+ return 1;
+ } else if ((Char & 0xe0) == 0xc0) {
+ return 2;
+ } else if ((Char & 0xf0) == 0xe0) {
+ return 3;
+ }
+ GUI_DEBUG_ERROROUT("Illegal character during UTF-8 decoding!");
+ return 1; /* Illegal character. To avoid endless loops in upper layers, we return 1 rather than 0. */
+}
+
+/*********************************************************************
+*
+* _CalcSizeOfChar
+*
+* Purpose:
+* Return the number of bytes needed for the given character.
+*/
+static int _CalcSizeOfChar(U16 Char) {
+ int r;
+ if (Char & 0xF800) { /* Single byte (ASCII) */
+ r = 3;
+ } else if (Char & 0xFF80) { /* Double byte sequence */
+ r = 2;
+ } else { /* 3 byte sequence */
+ r = 1;
+ }
+ return r;
+}
+
+/*********************************************************************
+*
+* _Encode
+*
+* Purpose:
+* Encode character into 1/2/3 bytes.
+*/
+static int _Encode(char *s, U16 Char) {
+ int r;
+ r = _CalcSizeOfChar(Char);
+ switch (r) {
+ case 1:
+ *s = (char)Char;
+ break;
+ case 2:
+ *s++ = 0xC0 | (Char >> 6);
+ *s = 0x80 | (Char & 0x3F);
+ break;
+ case 3:
+ *s++ = 0xE0 | (Char >> 12);
+ *s++ = 0x80 | ((Char >> 6) & 0x3F);
+ *s = 0x80 | (Char & 0x3F);
+ break;
+ }
+ return r;
+}
+
+/*********************************************************************
+*
+* _API_Table
+*/
+static const GUI_UC_ENC_APILIST _API_Table = {
+ _GetCharCode, /* return character code as U16 (Unicode) */
+ _GetCharSize, /* return size of character: 1/2/3 */
+ _CalcSizeOfChar, /* return size of character: 1/2/3 */
+ _Encode /* Encode character into 1/2/3 bytes */
+};
+
+/*********************************************************************
+*
+* Exported code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_UC_SetEncodeUTF8
+*/
+void GUI_UC_SetEncodeUTF8(void) {
+ GUI_LOCK();
+ GUI_Context.pUC_API = &_API_Table;
+ GUI_UNLOCK();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_VNC.h b/User/lib/lcd/gui/Core/GUI_VNC.h
new file mode 100644
index 0000000..f1d9a9d
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_VNC.h
@@ -0,0 +1,95 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_VNC.h
+Purpose : Publics for the VNC server
+---------------------------END-OF-HEADER------------------------------
+
+Attention : Do not modify this file ! If you do, you will not
+ be able do update to a later GUI version !
+
+*/
+
+#ifndef GUI_VNC_H
+#define GUI_VNC_H
+
+#include "GUI.h"
+#include "LCD_Private.h" /* Required because the Driver API depends on Config currently */
+
+#if GUI_SUPPORT_DEVICES
+
+
+#if defined(__cplusplus)
+extern "C" { /* Make sure we have C-declarations in C++ programs */
+#endif
+
+
+/*********************************************************************
+*
+* defines
+*
+**********************************************************************
+*/
+#define GUI_VNC_NO_ERROR 0
+#define GUI_VNC_ERROR_MISC 1
+#define GUI_VNC_ERROR_WRONGFORMAT 2
+
+/*********************************************************************
+*
+* types
+*
+**********************************************************************
+*/
+typedef int (*GUI_tSend) (const U8 * pData, int len, void* pConnectInfo);
+typedef int (*GUI_tReceive)( U8 * pData, int len, void* pConnectInfo);
+
+typedef struct GUI_VNC_CONTEXT {
+ struct GUI_VNC_CONTEXT * pNext;
+ int LayerIndex;
+ /* Connection related data */
+ GUI_tSend pfSend;
+ GUI_tReceive pfReceive;
+ void* pConnectInfo;
+ U16 ServerIndex;
+ /* Display related info */
+ const tLCDDEV_APIList* pLayerAPIOrig;
+ tLCDDEV_APIList VNC_LayerAPI;
+ int x0Dirty, y0Dirty, x1Dirty, y1Dirty;
+ int XSize, YSize;
+ /* Status */
+ char ClientSupportsHextile;
+ char IsBigEndian;
+} GUI_VNC_CONTEXT;
+
+/*********************************************************************
+*
+* functions
+*
+**********************************************************************
+*/
+int GUI_VNC_Process (GUI_VNC_CONTEXT* pContext, GUI_tSend pfSend, GUI_tReceive pfReceive, void* pConnectInfo);
+void GUI_VNC_AttachToLayer(GUI_VNC_CONTEXT* pContext, int LayerIndex);
+int GUI_VNC_GetNumConnections(void);
+
+/**** External routine to link the server to the system ... USER defined ! ****/
+int GUI_VNC_X_StartServer(int LayerIndex, int ServerIndex);
+
+#if defined(__cplusplus)
+ }
+#endif
+
+#endif /* GUI_SUPPORT_DEVICES */
+#endif /* Avoid multiple inclusion */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_WaitEvent.c b/User/lib/lcd/gui/Core/GUI_WaitEvent.c
new file mode 100644
index 0000000..1523c4b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_WaitEvent.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_WaitEvent.c
+Purpose : Implementation of said function
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_WaitEvent
+*/
+void GUI_WaitEvent(void) {
+ GUI_X_WAIT_EVENT();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_WaitKey.c b/User/lib/lcd/gui/Core/GUI_WaitKey.c
new file mode 100644
index 0000000..bb48e61
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_WaitKey.c
@@ -0,0 +1,46 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_WaitKey.c
+Purpose : Implementation of GUI_WaitKey
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_WaitKey
+*/
+int GUI_WaitKey(void) {
+ int r;
+ do {
+ r = GUI_GetKey();
+ if (r) {
+ break;
+ }
+ if (!GUI_Exec()) {
+ GUI_X_WAIT_EVENT(); /* Wait for event (keyboard, mouse or whatever) */
+ }
+ } while (1);
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_Warn.c b/User/lib/lcd/gui/Core/GUI_Warn.c
new file mode 100644
index 0000000..0abc4ed
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_Warn.c
@@ -0,0 +1,126 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_Warn.C
+Purpose : Logging (used only at higher debug levels)
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include
+#include "GUI_Protected.h"
+#include "GUI_X.h"
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define MAXLEN 50
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _CopyString
+*/
+static void _CopyString(char*d, const char*s, int MaxLen) {
+ while ((MaxLen > 0) && *s) {
+ *d++ = *s++;
+ MaxLen--;
+ }
+ *d = 0;
+}
+
+/*********************************************************************
+*
+* Public code
+*
+* Note: These routines are needed only in higher debug levels.
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_Warn
+*/
+void GUI_Warn(const char *s) {
+ GUI_X_Warn(s);
+}
+
+/*********************************************************************
+*
+* GUI_Warn1
+*/
+void GUI_Warn1(const char *s, int p0) {
+ char ac[MAXLEN + 10];
+ char* sOut = ac;
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI_Warn(ac);
+}
+
+/*********************************************************************
+*
+* GUI_Warn2
+*/
+void GUI_Warn2(const char *s, int p0, int p1) {
+ char ac[MAXLEN + 20];
+ char* sOut = ac;
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI__AddSpaceHex(p1, 8, &sOut);
+ GUI_Warn(ac);
+}
+
+/*********************************************************************
+*
+* GUI_Warn3
+*/
+void GUI_Warn3(const char *s, int p0, int p1, int p2) {
+ char ac[MAXLEN + 30];
+ char* sOut = ac;
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI__AddSpaceHex(p1, 8, &sOut);
+ GUI__AddSpaceHex(p2, 8, &sOut);
+ GUI_Warn(ac);
+}
+
+/*********************************************************************
+*
+* GUI_Warn4
+*/
+void GUI_Warn4(const char *s, int p0, int p1, int p2, int p3) {
+ char ac[MAXLEN + 40];
+ char* sOut = ac;
+ _CopyString(ac, s, MAXLEN);
+ sOut += strlen(sOut);
+ GUI__AddSpaceHex(p0, 8, &sOut);
+ GUI__AddSpaceHex(p1, 8, &sOut);
+ GUI__AddSpaceHex(p2, 8, &sOut);
+ GUI__AddSpaceHex(p3, 8, &sOut);
+ GUI_Warn(ac);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI_X.h b/User/lib/lcd/gui/Core/GUI_X.h
new file mode 100644
index 0000000..850d46c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI_X.h
@@ -0,0 +1,79 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_X.h
+Purpose : Declarations for GUI_X module
+---------------------------END-OF-HEADER------------------------------
+
+Attention : Do not modify this file ! If you do, you will not
+ be able do update to a later GUI version !
+
+*/
+
+#ifndef GUI_X_H
+#define GUI_X_H
+
+#include "GUI.h"
+
+#if defined(__cplusplus)
+extern "C" { /* Make sure we have C-declarations in C++ programs */
+#endif
+
+/************************************************************
+*
+* GUI_X_
+*
+* externals, to be defined by application
+*
+*************************************************************
+
+The externals defined below should be defined by the
+application. They are per default contained in the module
+GUI_X.c.
+Note that a lot if not all of these are not required in most target
+systems.
+For this module, samples are available for configurations
+with or without operating system.
+*/
+
+/**** Init ****/
+void GUI_X_Init(void);
+
+/**** ExecIdle - called if nothing else is left to do ****/
+void GUI_X_ExecIdle(void);
+
+/**** Timing routines - required for blinking ****/
+int GUI_X_GetTime(void);
+void GUI_X_Delay(int Period);
+
+/**** Multitask routines - required only if multitasking is used (#define GUI_OS 1) ****/
+void GUI_X_Unlock(void);
+void GUI_X_Lock(void);
+U32 GUI_X_GetTaskId(void);
+void GUI_X_InitOS(void);
+
+/**** Event driving (optional with multitasking) ****/
+void GUI_X_WaitEvent(void);
+void GUI_X_SignalEvent(void);
+/**** Recording (logs/warnings and errors) - required only for higher levels ****/
+void GUI_X_Log(const char *s);
+void GUI_X_Warn(const char *s);
+void GUI_X_ErrorOut(const char *s);
+
+#if defined(__cplusplus)
+ }
+#endif
+#endif /* ifdef GUI_X_H */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__AddSpaceHex.c b/User/lib/lcd/gui/Core/GUI__AddSpaceHex.c
new file mode 100644
index 0000000..c0de245
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__AddSpaceHex.c
@@ -0,0 +1,40 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__AddSpaceHex.C
+Purpose : Internal function
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI.h"
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code (module internal)
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__AddSpaceHex
+*/
+void GUI__AddSpaceHex(U32 v, U8 Len, char** ps) {
+ char* s = *ps;
+ *s++ = ' ';
+ *ps = s;
+ GUI_AddHex(v, Len, ps);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__CalcTextRect.c b/User/lib/lcd/gui/Core/GUI__CalcTextRect.c
new file mode 100644
index 0000000..220b27c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__CalcTextRect.c
@@ -0,0 +1,75 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__CalcTextRect.c
+Purpose : Implementation of gui function
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "GUI_Protected.h"
+#include "GUI.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__CalcTextRect
+*/
+void GUI__CalcTextRect(const char GUI_UNI_PTR* pText, const GUI_RECT* pTextRectIn, GUI_RECT* pTextRectOut, int TextAlign) {
+ if (pText) {
+ int xPos, yPos, TextWidth, TextHeight;
+
+ /* Calculate X-pos of text */
+ TextWidth = GUI_GetStringDistX(pText);
+ switch (TextAlign & GUI_TA_HORIZONTAL) {
+ case GUI_TA_HCENTER:
+ xPos = pTextRectIn->x0 + ((pTextRectIn->x1 - pTextRectIn->x0 + 1) - TextWidth) / 2;
+ break;
+ case GUI_TA_RIGHT:
+ xPos = pTextRectIn->x1 - TextWidth + 1;
+ break;
+ default:
+ xPos = pTextRectIn->x0;
+ }
+
+ /* Calculate Y-pos of text*/
+ TextHeight = GUI_GetFontDistY();
+ switch (TextAlign & GUI_TA_VERTICAL) {
+ case GUI_TA_VCENTER:
+ yPos = pTextRectIn->y0 + ((pTextRectIn->y1 - pTextRectIn->y0 + 1) - TextHeight) / 2;
+ break;
+ case GUI_TA_BOTTOM:
+ yPos = pTextRectIn->y1 - TextHeight + 1;
+ break;
+ case GUI_TA_BASELINE:
+ default:
+ yPos = pTextRectIn->y0;
+ }
+
+ /* Return text rectangle */
+ pTextRectOut->x0 = xPos;
+ pTextRectOut->y0 = yPos;
+ pTextRectOut->x1 = xPos + TextWidth - 1;
+ pTextRectOut->y1 = yPos + TextHeight - 1;
+ } else {
+ *pTextRectOut = *pTextRectIn;
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__DivideRound.c b/User/lib/lcd/gui/Core/GUI__DivideRound.c
new file mode 100644
index 0000000..14a5303
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__DivideRound.c
@@ -0,0 +1,44 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__DivideRound.C
+Purpose : Implementation of GUI__DivideRound
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__DivideRound
+*
+* This routine is used internally for computations. Primary goal is
+* to minimize the effects of rounding which occur if we simply
+* divide.
+*/
+int GUI__DivideRound(int a, int b) {
+ int r = 0;
+ if (b) {
+ r = ((a + b / 2) / b);
+ }
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__DivideRound32.c b/User/lib/lcd/gui/Core/GUI__DivideRound32.c
new file mode 100644
index 0000000..da2aa39
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__DivideRound32.c
@@ -0,0 +1,47 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__DivideRound32.C
+Purpose : Implementation of GUI__DivideRound32
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__DivideRound32
+*
+* This routine is used internally for computations. Primary goal is
+* to minimize the effects of rounding which occur if we simply
+* divide.
+*/
+I32 GUI__DivideRound32(I32 a, I32 b) {
+ if (b) {
+ if (a < 0) {
+ return (a - (b >> 1)) / b;
+ } else {
+ return (a + (b >> 1)) / b;
+ }
+ }
+ return 0;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__GetFontSizeY.c b/User/lib/lcd/gui/Core/GUI__GetFontSizeY.c
new file mode 100644
index 0000000..bb78054
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__GetFontSizeY.c
@@ -0,0 +1,36 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__GetFontSizeY.c
+Purpose : Implementation of optional routine
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_GetFontSizeY
+*/
+int GUI__GetFontSizeY(void) {
+ return GUI_Context.pAFont->YSize * GUI_Context.pAFont->YMag;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__GetNumChars.c b/User/lib/lcd/gui/Core/GUI__GetNumChars.c
new file mode 100644
index 0000000..c235983
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__GetNumChars.c
@@ -0,0 +1,44 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__GetNumChars.c
+Purpose : Implementation of character and string services
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__GetNumChars
+*/
+int GUI__GetNumChars(const char GUI_UNI_PTR *s) {
+ int NumChars = 0;
+ if (s) {
+ while (GUI_UC__GetCharCodeInc(&s)) {
+ NumChars++;
+ }
+ }
+ return NumChars;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__HandleEOLine.c b/User/lib/lcd/gui/Core/GUI__HandleEOLine.c
new file mode 100644
index 0000000..1420433
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__HandleEOLine.c
@@ -0,0 +1,47 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__HandleEOLine.C
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+
+#include "GUI_Protected.h"
+#include "GUIDebug.h"
+
+
+/*********************************************************************
+*
+* GUI__HandleEOLine
+*
+* Is called when processing strings which may consist of
+* multiple lines after a line has been processed. It will
+* a) Swall the line feed character (if it is there)
+* b) Return 1 if end of string, otherwise 0
+*/
+int GUI__HandleEOLine(const char GUI_UNI_PTR **ps) {
+ const char GUI_UNI_PTR *s = *ps;
+ char c = *s++;
+ if (c == 0) {
+ return 1;
+ }
+ if (c == '\n') {
+ *ps = s;
+ }
+ return 0;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__IntersectRect.c b/User/lib/lcd/gui/Core/GUI__IntersectRect.c
new file mode 100644
index 0000000..1580604
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__IntersectRect.c
@@ -0,0 +1,59 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_IntersectRect.c
+Purpose : Implementation of GUI_IntersectRect
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__IntersectRects
+*
+* Purpose:
+* Calc intersection of rectangles
+*
+* Add. info:
+* Rectangles are passed as pointers. These pointers need to be valid;
+* a NULL pointer may not be passed. There is no check for NULL pointers
+* implemented in order to avoid avoid performance penalty.
+* There is a similar function available, GUI__IntersectRects(),
+* which takes 3 parameters and
+* has a return value. Note that this one should be preferred because
+* it is considerably faster and the call requires one parameter less.
+*/
+void GUI__IntersectRect(GUI_RECT* pDest, const GUI_RECT* pr0) {
+ if (pDest->x0 < pr0->x0) {
+ pDest->x0 = pr0->x0;
+ }
+ if (pDest->y0 < pr0->y0) {
+ pDest->y0 = pr0->y0;
+ }
+ if (pDest->x1 > pr0->x1) {
+ pDest->x1 = pr0->x1;
+ }
+ if (pDest->y1 > pr0->y1) {
+ pDest->y1 = pr0->y1;
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__IntersectRects.c b/User/lib/lcd/gui/Core/GUI__IntersectRects.c
new file mode 100644
index 0000000..47151f7
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__IntersectRects.c
@@ -0,0 +1,68 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_IntersectRects.c
+Purpose : Implementation of GUI_IntersectRects
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Macros
+*
+**********************************************************************
+*/
+
+#define MIN(v0,v1) ((v0>v1) ? v1 : v0)
+#define MAX(v0,v1) ((v0>v1) ? v0 : v1)
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__IntersectRects
+*
+* Purpose:
+* Calc intersection of rectangles
+*
+* Return value:
+* 1 if they do intersect,
+* 0 if there is no intersection
+*
+* Add. info:
+* Rectangles are passed as pointers. These pointers need to be valid;
+* a NULL pointer may not be passed. There is no check for NULL pointers
+* implemented in order to avoid avoid performance penalty.
+*/
+int GUI__IntersectRects(GUI_RECT* pDest, const GUI_RECT* pr0, const GUI_RECT* pr1) {
+ pDest->x0 = MAX (pr0->x0, pr1->x0);
+ pDest->y0 = MAX (pr0->y0, pr1->y0);
+ pDest->x1 = MIN (pr0->x1, pr1->x1);
+ pDest->y1 = MIN (pr0->y1, pr1->y1);
+ if (pDest->x1 < pDest->x0) {
+ return 0;
+ }
+ if (pDest->y1 < pDest->y0) {
+ return 0;
+ }
+ return 1;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__Read.c b/User/lib/lcd/gui/Core/GUI__Read.c
new file mode 100644
index 0000000..fb888e5
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__Read.c
@@ -0,0 +1,59 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__ReadData.c
+Purpose : Implementation of reading data
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Exported code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__Read16
+*/
+U16 GUI__Read16(const U8 ** ppData) {
+ const U8 * pData;
+ U16 Value;
+ pData = *ppData;
+ Value = *pData;
+ Value |= (U16)(*(pData + 1) << 8);
+ pData += 2;
+ *ppData = pData;
+ return Value;
+}
+
+/*********************************************************************
+*
+* GUI__Read32
+*/
+U32 GUI__Read32(const U8 ** ppData) {
+ const U8 * pData;
+ U32 Value;
+ pData = *ppData;
+ Value = *pData;
+ Value |= ( *(pData + 1) << 8);
+ Value |= ((U32)*(pData + 2) << 16);
+ Value |= ((U32)*(pData + 3) << 24);
+ pData += 4;
+ *ppData = pData;
+ return Value;
+}
+
diff --git a/User/lib/lcd/gui/Core/GUI__ReduceRect.c b/User/lib/lcd/gui/Core/GUI__ReduceRect.c
new file mode 100644
index 0000000..b69dfdb
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__ReduceRect.c
@@ -0,0 +1,39 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__ReduceRect.C
+Purpose : Implementation of GUI__ReduceRect
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__ReduceRect
+*/
+void GUI__ReduceRect(GUI_RECT* pDest, const GUI_RECT *pRect, int Dist) {
+ pDest->x0 = pRect->x0 + Dist;
+ pDest->x1 = pRect->x1 - Dist;
+ pDest->y0 = pRect->y0 + Dist;
+ pDest->y1 = pRect->y1 - Dist;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__SetText.c b/User/lib/lcd/gui/Core/GUI__SetText.c
new file mode 100644
index 0000000..153b92f
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__SetText.c
@@ -0,0 +1,51 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__SetText.C
+Purpose : Implementation of said function
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__SetText
+*/
+int GUI__SetText(GUI_HMEM* phText, const char* s) {
+ int r = 0;
+ if (GUI__strcmp_hp(*phText, s) != 0) { /* Make sure we have a quick out if nothing changes */
+ GUI_HMEM hMem;
+ hMem = GUI_ALLOC_AllocNoInit(GUI__strlen(s) + 1);
+ if (hMem) {
+ char* pMem;
+ pMem = (char*) GUI_ALLOC_h2p(hMem);
+ strcpy(pMem, s);
+ GUI_ALLOC_FreePtr(phText);
+ *phText = hMem;
+ r = 1;
+ }
+ }
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__Wrap.c b/User/lib/lcd/gui/Core/GUI__Wrap.c
new file mode 100644
index 0000000..2672ff4
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__Wrap.c
@@ -0,0 +1,161 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__WRAP.c
+Purpose : Implementation of wrap routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _IsLineEnd
+*/
+static int _IsLineEnd(U16 Char) {
+ if (!Char || (Char == '\n')) {
+ return 1;
+ }
+ return 0;
+}
+
+/*********************************************************************
+*
+* _GetWordWrap
+*/
+static int _GetWordWrap(const char GUI_UNI_PTR * s, int xSize) {
+ int xDist = 0, NumChars = 0, WordWrap = 0;
+ U16 Char, PrevChar = 0;
+ while (1) {
+ Char = GUI_UC__GetCharCodeInc(&s); /* Similar to: *s++ */
+ /* Let's first check if the line end is reached. In this case we are done. */
+ if (_IsLineEnd(Char)) {
+ WordWrap = NumChars;
+ break;
+ }
+ /* If current character is a space, we found a wrap position */
+ if ((Char == ' ') && (Char != PrevChar)) {
+ WordWrap = NumChars;
+ }
+ PrevChar = Char;
+ xDist += GUI_GetCharDistX(Char);
+ if ((xDist <= xSize) || (NumChars == 0)) {
+ NumChars++;
+ } else {
+ break;
+ }
+ }
+ if (!WordWrap) {
+ WordWrap = NumChars;
+ }
+ return WordWrap;
+}
+
+/*********************************************************************
+*
+* _GetCharWrap
+*/
+static int _GetCharWrap(const char GUI_UNI_PTR * s, int xSize) {
+ int xDist = 0, NumChars = 0;
+ U16 Char;
+ while ((Char = GUI_UC__GetCharCodeInc(&s)) != 0) {
+ xDist += GUI_GetCharDistX(Char);
+ if ((NumChars && (xDist > xSize)) || (Char == '\n')) {
+ break;
+ }
+ NumChars++;
+ }
+ return NumChars;
+}
+
+/*********************************************************************
+*
+* _GetNoWrap
+*/
+static int _GetNoWrap(const char GUI_UNI_PTR * s) {
+ return GUI__GetLineNumChars(s, 0x7FFF);
+}
+
+/*********************************************************************
+*
+* puplic code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__WrapGetNumCharsDisp
+*
+* Returns:
+* Number of characters to display in the line.
+* Trailing spaces and line end character are
+* not counted
+*/
+int GUI__WrapGetNumCharsDisp(const char GUI_UNI_PTR * pText, int xSize, GUI_WRAPMODE WrapMode) {
+ int r;
+ switch (WrapMode) {
+ case GUI_WRAPMODE_WORD:
+ r = _GetWordWrap(pText, xSize);
+ break;
+ case GUI_WRAPMODE_CHAR:
+ r = _GetCharWrap(pText, xSize);
+ break;
+ default:
+ r = _GetNoWrap(pText);
+ }
+ return r;
+}
+
+/*********************************************************************
+*
+* GUI__WrapGetNumCharsToNextLine
+*/
+int GUI__WrapGetNumCharsToNextLine(const char GUI_UNI_PTR * pText, int xSize, GUI_WRAPMODE WrapMode) {
+ int NumChars;
+ U16 Char;
+ NumChars = GUI__WrapGetNumCharsDisp(pText, xSize, WrapMode);
+ pText += GUI_UC__NumChars2NumBytes(pText, NumChars);
+ Char = GUI_UC__GetCharCodeInc(&pText);
+ if (Char == '\n') {
+ NumChars++;
+ } else {
+ if (WrapMode == GUI_WRAPMODE_WORD) {
+ while (Char == ' ') {
+ NumChars++;
+ Char = GUI_UC__GetCharCodeInc(&pText);
+ }
+ }
+ }
+ return NumChars;
+}
+
+/*********************************************************************
+*
+* GUI__WrapGetNumBytesToNextLine
+*/
+int GUI__WrapGetNumBytesToNextLine(const char GUI_UNI_PTR * pText, int xSize, GUI_WRAPMODE WrapMode) {
+ int NumChars, NumBytes;
+ NumChars = GUI__WrapGetNumCharsToNextLine(pText, xSize, WrapMode);
+ NumBytes = GUI_UC__NumChars2NumBytes(pText, NumChars);
+ return NumBytes;
+}
+
+/*************************** End of file ****************************/
+
diff --git a/User/lib/lcd/gui/Core/GUI__memset.c b/User/lib/lcd/gui/Core/GUI__memset.c
new file mode 100644
index 0000000..f89908c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__memset.c
@@ -0,0 +1,81 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__memset.c
+Purpose : Implementation of said function
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__memset
+*
+* Purpose:
+* Replacement for the memset function. The advantage is high speed
+* on all systems (sometime up to 10 times as fast as the one
+* in the library)
+* Main idea is to write int-wise.
+*/
+void GUI__memset(U8* p, U8 Fill, int NumBytes) {
+ int NumInts;
+ /* Write bytes until we are done or have reached an int boundary */
+ while (NumBytes && ((sizeof(int) - 1) & (U32)p)) {
+ *p++ = Fill;
+ NumBytes--;
+ }
+ /* Write Ints */
+ NumInts = (unsigned)NumBytes / sizeof(int);
+ if (NumInts) {
+ int FillInt;
+ int *pInt;
+ NumBytes &= (sizeof(int) - 1);
+ if (sizeof(int) == 2) { /* May some compilers generate a warning at this line: Condition is alwaws true/false */
+ FillInt = Fill * 0x101; /* May some compilers generate a warning at this line: Unreachable code */
+ } else if (sizeof(int) == 4) { /* May some compilers generate a warning at this line: Condition is alwaws true/false */
+ FillInt = Fill * 0x1010101; /* May some compilers generate a warning at this line: Unreachable code */
+ }
+ pInt = (int*)p;
+ /* Fill large amount of data at a time */
+ while (NumInts >= 4) {
+ *pInt++ = FillInt;
+ *pInt++ = FillInt;
+ *pInt++ = FillInt;
+ *pInt++ = FillInt;
+ NumInts -= 4;
+ }
+ /* Fill one int at a time */
+ while (NumInts) {
+ *pInt++ = FillInt;
+ NumInts--;
+ }
+ p = (U8*)pInt;
+ }
+ /* Fill the remainder byte wise */
+ while (NumBytes) {
+ *p++ = Fill;
+ NumBytes--;
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__memset16.c b/User/lib/lcd/gui/Core/GUI__memset16.c
new file mode 100644
index 0000000..e160651
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__memset16.c
@@ -0,0 +1,93 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__memset16.c
+Purpose : Implementation of said function
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__memset
+*
+* Purpose:
+* Equivalent to the memset function, for 16 bit Data.
+*/
+void GUI__memset16(U16 * p, U16 Fill, int NumWords) {
+ /* Code for 16 bit CPUs */
+ if (sizeof(int) == 2) { /* May some compilers generate a warning at this line: Condition is alwaws true/false */
+ if (NumWords >= 8) { /* May some compilers generate a warning at this line: Unreachable code */
+ *p++ = Fill;
+ *p++ = Fill;
+ *p++ = Fill;
+ *p++ = Fill;
+ *p++ = Fill;
+ *p++ = Fill;
+ *p++ = Fill;
+ *p++ = Fill;
+ NumWords -= 8;
+ }
+ while (NumWords) {
+ *p++ = Fill;
+ NumWords--;
+ }
+ } else {
+ int NumInts; /* May some compilers generate a warning at this line: Unreachable code */
+ /* Write 16 bit until we are done or have reached an int boundary */
+ if (2 & (U32)p) {
+ *p++ = Fill;
+ NumWords--;
+ }
+ /* Write Ints */
+ NumInts = (unsigned)NumWords / (sizeof(int) / 2);
+ if (NumInts) {
+ int FillInt;
+ int *pInt;
+ FillInt = Fill * 0x10001;
+
+ pInt = (int*)p;
+ /* Fill large amount of data at a time */
+ if (NumInts >= 4) {
+ do {
+ *pInt = FillInt;
+ *(pInt + 1) = FillInt;
+ *(pInt + 2) = FillInt;
+ *(pInt + 3) = FillInt;
+ pInt += 4;
+ } while ((NumInts -= 4) >= 4);
+ }
+ /* Fill one int at a time */
+ while (NumInts) {
+ *pInt++ = FillInt;
+ NumInts--;
+ }
+ p = (U16*)pInt;
+ }
+ /* Fill the remainder */
+ if (NumWords & 1) {
+ *p = Fill;
+ }
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__strcmp.c b/User/lib/lcd/gui/Core/GUI__strcmp.c
new file mode 100644
index 0000000..eca49f7
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__strcmp.c
@@ -0,0 +1,80 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__strcmp.c
+Purpose : Implementation of said function
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__strcmp
+*
+* Purpose:
+* Replacement for the strcmp function. The advantage is that it can
+* be called with NULL pointer(s).
+* A NULL string is treated as a an empty string ("").
+* Return value:
+* 0 if identical
+* 1 else
+*/
+int GUI__strcmp(const char GUI_UNI_PTR * s0, const char GUI_UNI_PTR * s1) {
+ if (s0 == NULL) {
+ s0 = "";
+ }
+ if (s1 == NULL) {
+ s1 = "";
+ }
+ do {
+ if (*s0 != *s1) {
+ return 1;
+ }
+ s1++;
+ } while (*++s0);
+ if (*s1) {
+ return 1; /* Not equal, since s1 is longer than s0 */
+ }
+ return 0; /* Equal ! */
+}
+
+/*********************************************************************
+*
+* GUI__strcmp_hp
+*
+* Purpose:
+* Replacement for the strcmp function. The advantage is that it can
+* be called with NULL pointer or 0 handle.
+* A NULL string is treated as a an empty string ("").
+* Return value:
+* 0 if identical
+* 1 else
+*/
+int GUI__strcmp_hp(GUI_HMEM hs0, const char GUI_UNI_PTR * s1) {
+ const char* s0 = NULL;
+ if (hs0) {
+ s0 = (const char*)GUI_ALLOC_h2p(hs0);
+ }
+ return GUI__strcmp(s0, s1);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/GUI__strlen.c b/User/lib/lcd/gui/Core/GUI__strlen.c
new file mode 100644
index 0000000..2d74333
--- /dev/null
+++ b/User/lib/lcd/gui/Core/GUI__strlen.c
@@ -0,0 +1,46 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI__strlen.c
+Purpose : Implementation of GUI__strlen
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI__strlen
+*
+* Purpose:
+* Replacement for the strlen function. The advantage is that it can
+* be called with a NULL pointer, in which case -1 is returned.
+*/
+int GUI__strlen(const char GUI_UNI_PTR * s) {
+ int r = -1;
+ if (s) {
+ do {
+ r++;
+ } while (*s++);
+ }
+ return r;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD.c b/User/lib/lcd/gui/Core/LCD.c
new file mode 100644
index 0000000..4f4977f
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD.c
@@ -0,0 +1,415 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD.c
+Purpose : Link between GUI and LCD_L0
+ Performs most of the clipping.
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#define LCD_C
+
+#include
+#include "GUI_Private.h"
+#include "LCD_Private.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+ *
+ * Defines
+ *
+ **********************************************************************
+ */
+
+#define RETURN_IF_Y_OUT() \
+ if (y < GUI_Context.ClipRect.y0) \
+ return; \
+ if (y > GUI_Context.ClipRect.y1) \
+ return;
+
+#define RETURN_IF_X_OUT() \
+ if (x < GUI_Context.ClipRect.x0) \
+ return; \
+ if (x > GUI_Context.ClipRect.x1) \
+ return;
+
+#define CLIP_X() \
+ if (x0 < GUI_Context.ClipRect.x0) \
+ { \
+ x0 = GUI_Context.ClipRect.x0; \
+ } \
+ if (x1 > GUI_Context.ClipRect.x1) \
+ { \
+ x1 = GUI_Context.ClipRect.x1; \
+ }
+
+#define CLIP_Y() \
+ if (y0 < GUI_Context.ClipRect.y0) \
+ { \
+ y0 = GUI_Context.ClipRect.y0; \
+ } \
+ if (y1 > GUI_Context.ClipRect.y1) \
+ { \
+ y1 = GUI_Context.ClipRect.y1; \
+ }
+
+/*********************************************************************
+ *
+ * Static code
+ *
+ **********************************************************************
+ */
+/*********************************************************************
+ *
+ * _GetColorIndex
+ */
+static int _GetColorIndex(int i) /* i is 0 or 1 */
+{
+ return (GUI_Context.DrawMode & LCD_DRAWMODE_REV) ? i - 1 : i;
+}
+
+/*********************************************************************
+ *
+ * Public code
+ *
+ **********************************************************************
+ */
+/*********************************************************************
+ *
+ * LCD_SetColorIndex
+ */
+void LCD_SetColorIndex(int Index)
+{
+ LCD_ACOLORINDEX[_GetColorIndex(1)] = Index;
+}
+
+/*********************************************************************
+ *
+ * LCD_SetBkColorIndex
+ */
+void LCD_SetBkColorIndex(int Index)
+{
+ LCD_ACOLORINDEX[_GetColorIndex(0)] = Index;
+}
+
+/*********************************************************************
+ *
+ * LCD_SetDrawMode
+ */
+LCD_DRAWMODE LCD_SetDrawMode(LCD_DRAWMODE dm)
+{
+ LCD_DRAWMODE OldDM = GUI_Context.DrawMode;
+ if ((GUI_Context.DrawMode ^ dm) & LCD_DRAWMODE_REV)
+ {
+ LCD_PIXELINDEX temp = LCD_BKCOLORINDEX;
+ LCD_BKCOLORINDEX = LCD_COLORINDEX;
+ LCD_COLORINDEX = temp;
+ }
+ GUI_Context.DrawMode = dm;
+ return OldDM;
+}
+
+/*********************************************************************
+ *
+ * LCD_DrawPixel
+ */
+void LCD_DrawPixel(int x, int y)
+{
+ RETURN_IF_Y_OUT();
+ RETURN_IF_X_OUT();
+ if (GUI_Context.DrawMode & LCD_DRAWMODE_XOR)
+ {
+ LCDDEV_L0_XorPixel(x, y);
+ }
+ else
+ {
+ LCDDEV_L0_SetPixelIndex(x, y, LCD_COLORINDEX);
+ }
+}
+
+/*********************************************************************
+ *
+ * LCD_DrawHLine
+ */
+void LCD_DrawHLine(int x0, int y, int x1)
+{
+ /* Perform clipping and check if there is something to do */
+ RETURN_IF_Y_OUT();
+ CLIP_X();
+ if (x1 < x0)
+ return;
+ /* Call driver to draw */
+ LCDDEV_L0_DrawHLine(x0, y, x1);
+}
+
+/*********************************************************************
+ *
+ * LCD_FillRect
+ */
+void LCD_FillRect(int x0, int y0, int x1, int y1)
+{
+ /* Perform clipping and check if there is something to do */
+ CLIP_X();
+ if (x1 < x0)
+ return;
+ CLIP_Y();
+ if (y1 < y0)
+ return;
+ /* Call driver to draw */
+ LCDDEV_L0_FillRect(x0, y0, x1, y1);
+}
+
+/*********************************************************************
+ *
+ * LCD_DrawBitmap
+ */
+void LCD_DrawBitmap(int x0, int y0, int xsize, int ysize, int xMul, int yMul,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR *pPixel, const LCD_PIXELINDEX *pTrans)
+{
+ U8 Data = 0;
+ int x1, y1;
+/* Handle rotation if necessary */
+#if GUI_SUPPORT_ROTATION
+ if (GUI_pLCD_APIList)
+ {
+ GUI_pLCD_APIList->pfDrawBitmap(x0, y0, xsize, ysize, xMul, yMul, BitsPerPixel, BytesPerLine, pPixel, pTrans);
+ return;
+ }
+#endif
+ /* Handle the optional Y-magnification */
+ y1 = y0 + ysize - 1;
+ x1 = x0 + xsize - 1;
+ /* Handle BITMAP without magnification */
+ if ((xMul | yMul) == 1)
+ {
+ int Diff;
+ /* Clip y0 (top) */
+ Diff = GUI_Context.ClipRect.y0 - y0;
+ if (Diff > 0)
+ {
+ ysize -= Diff;
+ if (ysize <= 0)
+ {
+ return;
+ }
+ y0 = GUI_Context.ClipRect.y0;
+#if GUI_SUPPORT_LARGE_BITMAPS /* Required only for 16 bit CPUs if some bitmaps are >64kByte */
+ pPixel += (U32)Diff * (U32)BytesPerLine;
+#else
+ pPixel += (unsigned)Diff * (unsigned)BytesPerLine;
+#endif
+ }
+ /* Clip y1 (bottom) */
+ Diff = y1 - GUI_Context.ClipRect.y1;
+ if (Diff > 0)
+ {
+ ysize -= Diff;
+ if (ysize <= 0)
+ {
+ return;
+ }
+ }
+ /* Clip right side */
+ Diff = x1 - GUI_Context.ClipRect.x1;
+ if (Diff > 0)
+ {
+ xsize -= Diff;
+ }
+ /* Clip left side ... (The difficult side ...) */
+ Diff = 0;
+ if (x0 < GUI_Context.ClipRect.x0)
+ {
+ Diff = GUI_Context.ClipRect.x0 - x0;
+ xsize -= Diff;
+ switch (BitsPerPixel)
+ {
+ case 1:
+ pPixel += (Diff >> 3);
+ x0 += (Diff >> 3) << 3;
+ Diff &= 7;
+ break;
+ case 2:
+ pPixel += (Diff >> 2);
+ x0 += (Diff >> 2) << 2;
+ Diff &= 3;
+ break;
+ case 4:
+ pPixel += (Diff >> 1);
+ x0 += (Diff >> 1) << 1;
+ Diff &= 1;
+ break;
+ case 8:
+ pPixel += Diff;
+ x0 += Diff;
+ Diff = 0;
+ break;
+ case 16:
+ pPixel += (Diff << 1);
+ x0 += Diff;
+ Diff = 0;
+ break;
+ }
+ }
+ if (xsize <= 0)
+ {
+ return;
+ }
+ LCDDEV_L0_DrawBitmap(x0, y0, xsize, ysize, BitsPerPixel, BytesPerLine, pPixel, Diff, pTrans);
+ }
+ else
+ {
+ /**** Handle BITMAP with magnification ***/
+ int x, y;
+ int yi;
+ int Shift = 8 - BitsPerPixel;
+ for (y = y0, yi = 0; yi < ysize; yi++, y += yMul, pPixel += BytesPerLine)
+ {
+ int yMax = y + yMul - 1;
+ /* Draw if within clip area (Optimization ... "if" is not required !) */
+ if ((yMax >= GUI_Context.ClipRect.y0) && (y <= GUI_Context.ClipRect.y1))
+ {
+ int BitsLeft = 0;
+ int xi;
+ const U8 GUI_UNI_PTR *pDataLine = pPixel;
+ for (x = x0, xi = 0; xi < xsize; xi++, x += xMul)
+ {
+ U8 Index;
+ if (!BitsLeft)
+ {
+ Data = *pDataLine++;
+ BitsLeft = 8;
+ }
+ Index = Data >> Shift;
+ Data <<= BitsPerPixel;
+ BitsLeft -= BitsPerPixel;
+ if (Index || ((GUI_Context.DrawMode & LCD_DRAWMODE_TRANS) == 0))
+ {
+ LCD_PIXELINDEX OldColor = LCD_COLORINDEX;
+ if (pTrans)
+ {
+ LCD_COLORINDEX = *(pTrans + Index);
+ }
+ else
+ {
+ LCD_COLORINDEX = Index;
+ }
+ LCD_FillRect(x, y, x + xMul - 1, yMax);
+ LCD_COLORINDEX = OldColor;
+ }
+ }
+ }
+ }
+ }
+}
+
+/*********************************************************************
+ *
+ * LCD_SetClipRectMax
+ */
+void LCD_SetClipRectMax(void)
+{
+ LCDDEV_L0_GetRect(&GUI_Context.ClipRect);
+}
+
+/*********************************************************************
+ *
+ * LCD_Init
+ */
+int LCD_Init(void)
+{
+ int r = 0;
+ GUI_DEBUG_LOG("\nLCD_Init...");
+ LCD_SetClipRectMax();
+ r |= LCD_L0_Init();
+#if GUI_NUM_LAYERS > 1
+ r |= LCD_L0_1_Init();
+#endif
+#if GUI_NUM_LAYERS > 2
+ r |= LCD_L0_2_Init();
+#endif
+#if GUI_NUM_LAYERS > 3
+ r |= LCD_L0_3_Init();
+#endif
+#if GUI_NUM_LAYERS > 4
+ r |= LCD_L0_4_Init();
+#endif
+ LCD_InitLUT();
+ {
+#if GUI_NUM_LAYERS > 1
+ int i;
+ for (i = GUI_NUM_LAYERS - 1; i >= 0; i--)
+ {
+ GUI_SelectLayer(i);
+#else
+ {
+#endif
+#if (GUI_DEFAULT_BKCOLOR != GUI_INVALID_COLOR)
+ /* Clear video memory */
+ LCD_SetDrawMode(GUI_DRAWMODE_REV);
+ // LCD_FillRect(0,0, GUI_XMAX, GUI_YMAX); // xsh:??????????????????
+ LCD_SetDrawMode(0);
+#endif
+ }
+ }
+ /* Switch LCD on */
+ LCD_On();
+ return r;
+}
+
+/*********************************************************************
+ *
+ * LCD_Color2Index
+ */
+int LCD_Color2Index(LCD_COLOR Color)
+{
+ return LCDDEV_L0_Color2Index(Color);
+}
+
+/*********************************************************************
+ *
+ * LCD_Index2Color
+ */
+LCD_COLOR LCD_Index2Color(int Index)
+{
+ return LCDDEV_L0_Index2Color(Index);
+}
+
+/*********************************************************************
+ *
+ * LCD_SetBkColor
+ */
+void LCD_SetBkColor(GUI_COLOR color)
+{
+ if (GUI_Context.BkColor != color)
+ {
+ GUI_Context.BkColor = color;
+ LCD_SetBkColorIndex(LCD_Color2Index(color));
+ }
+}
+
+/*********************************************************************
+ *
+ * LCD_SetColor
+ */
+void LCD_SetColor(GUI_COLOR color)
+{
+ if (GUI_Context.Color != color)
+ {
+ GUI_Context.Color = color;
+ LCD_SetColorIndex(LCD_Color2Index(color));
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD.h b/User/lib/lcd/gui/Core/LCD.h
new file mode 100644
index 0000000..e39a27f
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD.h
@@ -0,0 +1,538 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD.h
+Purpose : Declares LCD interface functions
+----------------------------------------------------------------------
+*/
+
+#ifndef LCD_H
+#define LCD_H
+
+#include "GUI_ConfDefaults.h" /* Used for GUI_UNI_PTR */
+
+#if defined(__cplusplus)
+extern "C" { /* Make sure we have C-declarations in C++ programs */
+#endif
+
+/*
+ ********************************************************************
+ * *
+ * Basic type defines *
+ * *
+ ********************************************************************
+
+The follwing are defines for types used in the LCD-driver and the
+GUI layers on top of that. Since "C" does not provide data types of
+fixed length which are identical on all platforms, this is done here.
+For most 16/32 controllers, the settings will work fine. However, if
+you have similar defines in other sections of your program, you might
+want to change or relocate these defines, e.g. in a TYPE.h file.
+*/
+
+#define I8 signed char
+#define U8 unsigned char /* unsigned 8 bits. */
+#define I16 signed short /* signed 16 bits. */
+#define U16 unsigned short /* unsigned 16 bits. */
+#define I32 signed long /* signed 32 bits. */
+#define U32 unsigned long /* unsigned 32 bits. */
+#define I16P I16 /* signed 16 bits OR MORE ! */
+#define U16P U16 /* unsigned 16 bits OR MORE ! */
+
+/*
+ ********************************************************************
+ * *
+ * Settings for windows simulation *
+ * *
+ ********************************************************************
+
+Some settings in the configuration may conflict with the values required
+in the Simulation. This is why we ignore the target settings for data
+types and use the correct settings for the simulation.
+(U32 could be defined as long, which would yield a 64 bit type on
+the PC)
+*/
+
+#ifdef WIN32
+ #pragma warning( disable : 4244 ) // Disable warning messages in simulation
+ #pragma warning( disable : 4761 ) // Disable warning "integral size mismatch in argument; conversion supplied"
+#endif
+
+
+/* *************************************************************
+ * *
+ * Constants *
+ * *
+ *************************************************************
+*/
+#define LCD_ERR0 (0x10)
+#define LCD_ERR_CONTROLLER_NOT_FOUND (LCD_ERR0+1)
+#define LCD_ERR_MEMORY (LCD_ERR0+2)
+
+/*
+ *********************************
+ * *
+ * Drawing modes *
+ * *
+ *********************************
+*/
+
+#define LCD_DRAWMODE_NORMAL (0)
+#define LCD_DRAWMODE_XOR (1<<0)
+#define LCD_DRAWMODE_TRANS (1<<1)
+#define LCD_DRAWMODE_REV (1<<2)
+
+
+
+/* *************************************************************
+ * *
+ * Typedefs *
+ * *
+ *************************************************************
+*/
+
+typedef int LCD_DRAWMODE;
+typedef U32 LCD_COLOR;
+
+
+/********************************************************
+*
+* Data structures
+*
+*********************************************************
+*/
+
+typedef struct { I16P x,y; } GUI_POINT;
+typedef struct { I16 x0,y0,x1,y1; } LCD_RECT;
+/*typedef struct { GUI_POINT P0, P1; } LCD_RECT; */
+
+typedef struct {
+ int NumEntries;
+ char HasTrans;
+ const LCD_COLOR GUI_UNI_PTR * pPalEntries;
+} LCD_LOGPALETTE;
+
+/* This is used for the simulation only ! */
+typedef struct {
+ int x,y;
+ unsigned char KeyStat;
+} LCD_tMouseState;
+
+/*********************************************************************
+*
+* Index2Color
+
+ This function needs to be int the public part of the software
+ since it is needed by the simulation. Most other driver
+ functions are hidden in the private header file.
+*/
+
+typedef LCD_COLOR tLCDDEV_Index2Color (int Index);
+typedef unsigned int tLCDDEV_Color2Index (LCD_COLOR Color);
+typedef unsigned int tLCDDEV_GetIndexMask (void);
+LCD_COLOR LCD_L0_Index2Color (int Index);
+LCD_COLOR LCD_L0_1_Index2Color(int Index);
+LCD_COLOR LCD_L0_2_Index2Color(int Index);
+LCD_COLOR LCD_L0_3_Index2Color(int Index);
+LCD_COLOR LCD_L0_4_Index2Color(int Index);
+unsigned int LCD_L0_Color2Index (LCD_COLOR Color);
+unsigned int LCD_L0_1_Color2Index(LCD_COLOR Color);
+unsigned int LCD_L0_2_Color2Index(LCD_COLOR Color);
+unsigned int LCD_L0_3_Color2Index(LCD_COLOR Color);
+unsigned int LCD_L0_4_Color2Index(LCD_COLOR Color);
+unsigned int LCD_L0_GetIndexMask (void);
+unsigned int LCD_L0_1_GetIndexMask(void);
+unsigned int LCD_L0_2_GetIndexMask(void);
+unsigned int LCD_L0_3_GetIndexMask(void);
+unsigned int LCD_L0_4_GetIndexMask(void);
+
+
+/*********************************************************************
+*
+* Color conversion API tables
+*/
+
+typedef struct {
+ tLCDDEV_Color2Index* pfColor2Index;
+ tLCDDEV_Index2Color* pfIndex2Color;
+ tLCDDEV_GetIndexMask* pfGetIndexMask;
+} LCD_API_COLOR_CONV;
+
+extern const LCD_API_COLOR_CONV LCD_API_ColorConv_1;
+extern const LCD_API_COLOR_CONV LCD_API_ColorConv_2;
+extern const LCD_API_COLOR_CONV LCD_API_ColorConv_4;
+extern const LCD_API_COLOR_CONV LCD_API_ColorConv_8666;
+
+#define GUI_COLOR_CONV_1 &LCD_API_ColorConv_1
+#define GUI_COLOR_CONV_2 &LCD_API_ColorConv_2
+#define GUI_COLOR_CONV_4 &LCD_API_ColorConv_4
+#define GUI_COLOR_CONV_8666 &LCD_API_ColorConv_8666
+
+/*********************************************************************
+*
+* LCDDEV function table
+*
+**********************************************************************
+
+ Below the routines which need to in an LCDDEV routine table are
+ defined. All of these routines have to be in the low-level driver
+ (LCD_L0) or in the memory device which can be used to replace the
+ driver.
+ The one exception to this is the SetClipRect routine, which would
+ be identical for all drivers and is therefor contained in the
+ level above (LCD).
+*/
+typedef void tLCDDEV_DrawHLine (int x0, int y0, int x1);
+typedef void tLCDDEV_DrawVLine (int x , int y0, int y1);
+typedef void tLCDDEV_FillRect (int x0, int y0, int x1, int y1);
+typedef unsigned int tLCDDEV_GetPixelIndex(int x, int y);
+typedef void tLCDDEV_SetPixelIndex(int x, int y, int ColorIndex);
+typedef void tLCDDEV_XorPixel (int x, int y);
+typedef void tLCDDEV_FillPolygon (const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
+typedef void tLCDDEV_FillPolygonAA(const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
+typedef void tLCDDEV_GetRect (LCD_RECT*pRect);
+typedef int tLCDDEV_Init (void);
+typedef void tLCDDEV_On (void);
+typedef void tLCDDEV_Off (void);
+typedef void tLCDDEV_SetLUTEntry (U8 Pos, LCD_COLOR color);
+
+/*********************************************************************
+*
+* Memory device API tables
+*/
+#if GUI_COMPILER_SUPPORTS_FP
+ typedef struct tLCDDEV_APIList_struct tLCDDEV_APIList;
+#endif
+
+typedef void tLCDDEV_DrawBitmap (int x0, int y0, int xsize, int ysize,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff,
+ const void* pTrans); /* Really LCD_PIXELINDEX, but is void to avoid compiler warnings*/
+
+struct tLCDDEV_APIList_struct {
+ tLCDDEV_Color2Index* pfColor2Index;
+ tLCDDEV_Index2Color* pfIndex2Color;
+ tLCDDEV_GetIndexMask* pfGetIndexMask;
+ tLCDDEV_DrawBitmap* pfDrawBitmap;
+ tLCDDEV_DrawHLine* pfDrawHLine;
+ tLCDDEV_DrawVLine* pfDrawVLine;
+ tLCDDEV_FillRect* pfFillRect;
+ tLCDDEV_GetPixelIndex* pfGetPixelIndex;
+ tLCDDEV_GetRect* pfGetRect;
+ tLCDDEV_SetPixelIndex* pfSetPixelIndex;
+ tLCDDEV_XorPixel* pfXorPixel;
+ tLCDDEV_SetLUTEntry* pfSetLUTEntry;
+ #if GUI_SUPPORT_MEMDEV
+ tLCDDEV_FillPolygon* pfFillPolygon;
+ tLCDDEV_FillPolygonAA* pfFillPolygonAA;
+ const tLCDDEV_APIList* pMemDevAPI;
+ unsigned BitsPerPixel;
+ #endif
+};
+#if GUI_COMPILER_SUPPORTS_FP
+ extern const struct tLCDDEV_APIList_struct GUI_MEMDEV__APIList1;
+ extern const struct tLCDDEV_APIList_struct GUI_MEMDEV__APIList8;
+ extern const struct tLCDDEV_APIList_struct GUI_MEMDEV__APIList16;
+
+ #define GUI_MEMDEV_APILIST_1 &GUI_MEMDEV__APIList1
+ #define GUI_MEMDEV_APILIST_8 &GUI_MEMDEV__APIList8
+ #define GUI_MEMDEV_APILIST_16 &GUI_MEMDEV__APIList16
+#endif
+
+/* *************************************************************
+ * *
+ * Defines *
+ * *
+ * for device capabilities *
+ * *
+ *************************************************************
+
+The following is the list of device capabilities which can, but do
+not have to be implemented in the driver. This way the driver can be
+enhanced in the future without affecting the driver interface,
+keeping older drivers compatible.
+More DevCaps can always be added in the future, as older drivers
+are guaranteed to return 0 for all unimplemented features or queries.
+
+The values below define the legal parameters to the LCD_GetDeviceCaps
+and the LCD_GetpCapFunc routines.
+*/
+
+#define LCD_DEVCAP_NUMCOLORS 0x0 /* Quest number of colors
+ which LCD can display */
+#define LCD_DEVCAP_XSIZE 0x1 /* Quest horiz. res. of display */
+#define LCD_DEVCAP_YSIZE 0x2 /* Quest vert. res. of display */
+#define LCD_DEVCAP_VXSIZE 0x3 /* Quest vert. res. of virtual disp.*/
+#define LCD_DEVCAP_VYSIZE 0x4 /* Quest vert. res. of virtual disp.*/
+#define LCD_DEVCAP_XORG 0x5 /* X-origin ... usually 0 */
+#define LCD_DEVCAP_YORG 0x6 /* Y-origin ... usually 0 */
+#define LCD_DEVCAP_CONTROLLER 0x7 /* LCD Controller (Numerical) */
+#define LCD_DEVCAP_BITSPERPIXEL 0x8 /* Bits per pixel ... 1/2/4/8 */
+#define LCD_DEVCAP_NUMPAGES 0x10 /* Quest number of pages of display */
+
+#define LCD_DEVCAP_COLOR 0x1000 /* Quest Color[0]
+ 0x1001 Quest Color[1]
+ 0x1002 Quest Color[2]
+ ... */
+ /* The next 4095 entries are reserved so up to 4096 colors
+ can be queried ...*/
+
+int LCD_GetXSize(void);
+int LCD_GetXSize_1(void);
+int LCD_GetXSizeEx(int Index);
+
+int LCD_GetYSize(void);
+int LCD_GetYSize_1(void);
+int LCD_GetYSizeEx(int Index);
+
+int LCD_GetVXSize(void);
+int LCD_GetVXSize_1(void);
+int LCD_GetVXSizeEx(int Index);
+
+int LCD_GetVYSize(void);
+int LCD_GetVYSize_1(void);
+int LCD_GetVYSizeEx(int Index);
+
+U32 LCD_GetNumColors(void);
+U32 LCD_GetNumColors_1(void);
+U32 LCD_GetNumColorsEx(int Index);
+
+int LCD_GetBitsPerPixel(void);
+int LCD_GetBitsPerPixel_1(void);
+int LCD_GetBitsPerPixelEx(int Index);
+
+int LCD_GetFixedPalette(void);
+int LCD_GetFixedPalette_1(void);
+I32 LCD_GetFixedPaletteEx(int Index);
+
+int LCD_GetXMag(void);
+int LCD_GetXMag_1(void);
+int LCD_GetXMagEx(int Index);
+
+int LCD_GetYMag(void);
+int LCD_GetYMag_1(void);
+int LCD_GetYMagEx(int Index);
+
+int LCD_GetMirrorXEx(int LayerIndex);
+int LCD_GetMirrorYEx(int LayerIndex);
+int LCD_GetSwapXYEx(int LayerIndex);
+
+int LCD_GetSwapRBEx(int LayerIndex);
+int LCD_GetDeltaModeEx(int LayerIndex);
+int LCD_GetBitsPerPixel_L0Ex(int LayerIndex);
+
+int LCD_GetNumLayers(void);
+
+#define LCD_GetNumDisplays() LCD_GetNumLayers()
+
+#define LCD_GET_XSIZE() LCD_GetXSize()
+#define LCD_GET_YSIZE() LCD_GetYSize()
+#define LCD_GET_VXSIZE() LCD_GetVXSize()
+#define LCD_GET_VYSIZE() LCD_GetVYSize()
+#define LCD_GET_NUMCOLORS() LCD_GetNumColors()
+#define LCD_GET_BITSPERPIXEL() LCD_GetBitsPerPixel()
+
+
+/*********************************************************************
+*
+* LCD_CLIP function table
+*
+**********************************************************************
+*/
+typedef void tLCD_HL_DrawHLine (int x0, int y0, int x1);
+typedef void tLCD_HL_DrawPixel (int x0, int y0);
+
+typedef struct {
+ tLCD_HL_DrawHLine* pfDrawHLine;
+ tLCD_HL_DrawPixel* pfDrawPixel;
+} tLCD_HL_APIList;
+
+void LCD_DrawHLine(int x0, int y0, int x1);
+void LCD_DrawPixel(int x0, int y0);
+void LCD_DrawVLine (int x, int y0, int y1);
+
+
+
+/*********************************************************************
+*
+* Declarations for LCD_
+*
+**********************************************************************
+*/
+
+void LCD_SetClipRectEx(const LCD_RECT* pRect);
+void LCD_SetClipRectMax(void);
+
+/* Get device capabilities (0 if not supported) */
+I32 LCD_GetDevCap(int Index);
+
+/* Initialize LCD using config-paramters */
+int LCD_Init(void);
+
+void LCD_SetBkColor (LCD_COLOR Color); /* Set background color */
+void LCD_SetColor (LCD_COLOR Color); /* Set foreground color */
+void LCD_SetPixelIndex(int x, int y, int ColorIndex);
+
+/* Palette routines (Not available on all drivers) */
+void LCD_InitLUT(void);
+
+/* Decompressors */
+//typedef void tfDrawSpecialBitmap(int x0,int y0,int xsize, int ysize, const U8 GUI_UNI_PTR *pPixel, const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal, int xMag, int yMag);
+void LCD_DrawBitmap_RLE8(int x0,int y0,int xsize, int ysize, const U8 GUI_UNI_PTR *pPixel, const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal, int xMag, int yMag);
+void LCD_DrawBitmap_RLE4(int x0,int y0,int xsize, int ysize, const U8 GUI_UNI_PTR *pPixel, const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal, int xMag, int yMag);
+void LCD_DrawBitmap_565 (int x0,int y0,int xsize, int ysize, const U8 GUI_UNI_PTR *pPixel, const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal, int xMag, int yMag);
+void LCD_DrawBitmap_M565(int x0,int y0,int xsize, int ysize, const U8 GUI_UNI_PTR *pPixel, const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal, int xMag, int yMag);
+
+LCD_DRAWMODE LCD_SetDrawMode (LCD_DRAWMODE dm);
+void LCD_SetColorIndex(int Index);
+void LCD_SetBkColorIndex(int Index);
+void LCD_FillRect(int x0, int y0, int x1, int y1);
+typedef void tLCD_SetPixelAA(int x, int y, U8 Intens);
+
+void LCD_SetPixelAA(int x, int y, U8 Intens);
+void LCD_SetPixelAA_NoTrans(int x, int y, U8 Intens);
+
+LCD_COLOR LCD_AA_MixColors(LCD_COLOR Color, LCD_COLOR BkColor, U8 Intens);
+LCD_COLOR LCD_MixColors256(LCD_COLOR Color, LCD_COLOR BkColor, unsigned Intens);
+LCD_COLOR LCD_GetPixelColor(int x, int y); /* Get RGB color of pixel */
+unsigned int LCD_GetPixelIndex(int x, int y);
+int LCD_GetBkColorIndex (void);
+int LCD_GetColorIndex (void);
+
+/*********************************************************************
+*
+* Optional support for rotatation
+*
+**********************************************************************
+*/
+
+#if GUI_SUPPORT_ROTATION
+
+typedef void tLCD_DrawBitmap(int x0, int y0, int xsize, int ysize,
+ int xMul, int yMul, int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pPixel, const void * pTrans);
+typedef void tRect2TextRect (LCD_RECT * pRect);
+
+struct tLCD_APIList_struct {
+ tLCD_DrawBitmap * pfDrawBitmap;
+ tRect2TextRect * pfRect2TextRect;
+};
+
+typedef struct tLCD_APIList_struct tLCD_APIList;
+
+extern tLCD_APIList LCD_APIListCCW;
+extern tLCD_APIList LCD_APIListCW;
+extern tLCD_APIList LCD_APIList180;
+
+#define GUI_ROTATION tLCD_APIList
+#define GUI_ROTATE_CCW &LCD_APIListCCW
+#define GUI_ROTATE_CW &LCD_APIListCW
+#define GUI_ROTATE_180 &LCD_APIList180
+#define GUI_ROTATE_0 0
+#endif
+
+
+/* *************************************************************
+ * *
+ * LCD publics not used by GUI *
+ * *
+ *************************************************************
+
+
+The following functions can, but do not have to be defined in the LCD driver
+as they are not used by the GUI level.
+
+*/
+
+
+
+#define LCD_On LCD_L0_On
+#define LCD_Off LCD_L0_Off
+#define LCD_ReInit LCD_L0_ReInit
+#define LCD_SetLUTEntry LCD_L0_SetLUTEntry
+
+
+#define LCD_CC_UNLOCK (0) /* Default mode: Cache is transparent */
+#define LCD_CC_LOCK (1) /* Cache is locked, no write operations */
+#define LCD_CC_FLUSH (2) /* Flush cache, do not change mode */
+U8 LCD_L0_ControlCache(U8 mode);
+U8 LCD_L0_1_ControlCache(U8 mode);
+U8 LCD_L0_2_ControlCache(U8 mode);
+U8 LCD_L0_3_ControlCache(U8 mode);
+U8 LCD_L0_4_ControlCache(U8 mode);
+void LCD_L0_Refresh(void);
+void LCD_L0_1_Refresh(void);
+void LCD_L0_2_Refresh(void);
+void LCD_L0_3_Refresh(void);
+void LCD_L0_4_Refresh(void);
+/* Check if controller is still properly initialized */
+int LCD_L0_CheckInit(void); /* returns if init is still O.K.
+ by reading all available registers of
+ Display controller.
+ 0: Init O.K.
+ */
+
+#define LCD_ControlCache LCD_L0_ControlCache
+
+/*
+ ******************************************
+ * *
+ * Support for paging *
+ * *
+ ******************************************
+*/
+
+int LCD_SelPage (int NewPage); /* returns formerly sel. page */
+int LCD_ShowPage (int NewPage); /* sets / returns visible page */
+int LCD_GetSelPage (void); /* returns selected page */
+int LCD_GetVisPage (void); /* returns visible page */
+
+
+/* *************************************************************
+ * *
+ * LCD imports *
+ * (for routines in LCDColor) *
+ * *
+ *************************************************************
+*/
+
+
+int LCD_Color2Index (LCD_COLOR Color);
+LCD_COLOR LCD_Index2Color (int Index);
+LCD_COLOR LCD_Index2ColorEx (int i, unsigned int LayerIndex);
+
+/*********************************************************************
+*
+* LCD_X_...
+*
+**********************************************************************
+*/
+
+void LCD_X_Init(void);
+void LCD_X_On (void);
+void LCD_X_Off (void);
+
+char LCD_X_Read00(void);
+char LCD_X_Read01(void);
+void LCD_X_Write00(char c);
+void LCD_X_Write01(char c);
+void LCD_X_WriteM01(char * pData, int NumBytes);
+
+#if defined(__cplusplus)
+ }
+#endif
+
+#endif /* LCD_H */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDAA.c b/User/lib/lcd/gui/Core/LCDAA.c
new file mode 100644
index 0000000..ceee261
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDAA.c
@@ -0,0 +1,117 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDAA.c
+Purpose : Low level antialiasing routines.
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#define LCD_C
+
+#include /* needed for definition of NULL */
+#include "LCD.h"
+#include "GUI_Private.h"
+#include "LCD_Private.h"
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define RETURN_IF_Y_OUT() \
+ if (y < GUI_Context.ClipRect.y0) \
+ return; \
+ if (y > GUI_Context.ClipRect.y1) \
+ return;
+
+#define RETURN_IF_X_OUT() \
+ if (x < GUI_Context.ClipRect.x0) return; \
+ if (x > GUI_Context.ClipRect.x1) return;
+
+#define CLIP_X() \
+ if (x0 < GUI_Context.ClipRect.x0) { x0 = GUI_Context.ClipRect.x0; } \
+ if (x1 > GUI_Context.ClipRect.x1) { x1 = GUI_Context.ClipRect.x1; }
+
+#define CLIP_Y() \
+ if (y0 < GUI_Context.ClipRect.y0) { y0 = GUI_Context.ClipRect.y0; } \
+ if (y1 > GUI_Context.ClipRect.y1) { y1 = GUI_Context.ClipRect.y1; }
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_AA_MixColors
+*/
+LCD_COLOR LCD_AA_MixColors(LCD_COLOR Color, LCD_COLOR BkColor, U8 Intens) {
+ /* Calc Color seperations for FgColor first */
+ I32 R = (Color&0xff)*Intens;
+ I32 G = (Color&0xff00)*Intens;
+ I32 B = (Color&0xff0000)*Intens;
+ /* Add Color seperations for BkColor */
+ Intens = 15-Intens;
+ R += (BkColor&0xff)*Intens;
+ G += (BkColor&0xff00)*Intens;
+ B += (BkColor&0xff0000)*Intens;
+ R = (R/15)&0xff;
+ G = (G/15)&0xff00;
+ B = (B/15)&0xff0000;
+ Color = R+G+B;
+ return Color;
+}
+
+/*********************************************************************
+*
+* LCD_SetPixelAA
+*/
+void LCD_SetPixelAA(int x, int y, U8 Intens) {
+ if (Intens == 0)
+ return;
+ RETURN_IF_Y_OUT();
+ RETURN_IF_X_OUT();
+ if (Intens >= 15) {
+ LCDDEV_L0_SetPixelIndex(x,y, LCD_COLORINDEX);
+ } else {
+ LCD_COLOR Color = LCD_Index2Color(LCD_COLORINDEX);
+ LCD_COLOR BkColor = LCD_GetPixelColor(x,y);
+ Color = LCD_AA_MixColors(Color, BkColor, Intens);
+ LCDDEV_L0_SetPixelIndex(x,y, LCD_Color2Index(Color));
+ }
+}
+
+/*********************************************************************
+*
+* LCD_SetPixelAA_NoTrans
+*/
+void LCD_SetPixelAA_NoTrans(int x, int y, U8 Intens) {
+ RETURN_IF_Y_OUT();
+ RETURN_IF_X_OUT();
+ if (Intens == 0) {
+ LCDDEV_L0_SetPixelIndex(x,y, LCD_BKCOLORINDEX);
+ } else if (Intens == 15) {
+ LCDDEV_L0_SetPixelIndex(x,y, LCD_COLORINDEX);
+ } else {
+ LCD_COLOR Color = LCD_AA_MixColors(LCD_Index2Color(LCD_COLORINDEX),
+ LCD_Index2Color(LCD_BKCOLORINDEX),
+ Intens);
+ LCDDEV_L0_SetPixelIndex(x,y,LCD_Color2Index(Color));
+ }
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDColor.c b/User/lib/lcd/gui/Core/LCDColor.c
new file mode 100644
index 0000000..80c8f74
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDColor.c
@@ -0,0 +1,181 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDColor.C
+Purpose : Color conversion routines for LCD-drivers
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#define LCDCOLOR_C
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+#include "LCD_Private.h" /* inter modul definitions & Config */
+
+/*********************************************************************
+*
+* Defines, config defaults
+*
+**********************************************************************
+*/
+
+#ifndef LCD_SIZEOF_COLORCACHE
+ #define LCD_SIZEOF_COLORCACHE 0
+#endif
+
+#if LCD_SIZEOF_COLORCACHE
+ static const LCD_LOGPALETTE * pLogPalCache;
+#endif
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+
+LCD_PIXELINDEX LCD__aConvTable[LCD_MAX_LOG_COLORS];
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_GetpPalConvTableUncached
+*/
+LCD_PIXELINDEX* LCD_GetpPalConvTableUncached(const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal) {
+ if (pLogPal == NULL) {
+ return NULL;
+ }
+ if (!pLogPal->pPalEntries) {
+ return NULL;
+ }
+ /* Check if sufficient space is available */
+ if (pLogPal->NumEntries > LCD_MAX_LOG_COLORS) {
+ return NULL;
+ }
+ /* Build conversion table */
+ {
+ int i;
+ int NumEntries = pLogPal->NumEntries;
+ const LCD_COLOR GUI_UNI_PTR * pPalEntry = &pLogPal->pPalEntries[0];
+ for (i=0; i< NumEntries; i++) {
+ LCD__aConvTable[i] = LCD_Color2Index(*(pPalEntry+i));
+ }
+ }
+ return &LCD__aConvTable[0];
+}
+
+/*********************************************************************
+*
+* LCD_GetpPalConvTable
+*/
+LCD_PIXELINDEX* LCD_GetpPalConvTable(const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal) {
+/* Check cache */
+ #if LCD_SIZEOF_COLORCACHE
+ if (pLogPalCache == pLogPal) {
+ return &LCD__aConvTable[0];
+ }
+ pLogPalCache = pLogPal;
+ #endif
+ return LCD_GetpPalConvTableUncached(pLogPal);
+}
+
+/*********************************************************************
+*
+* LCD_InitLUT
+*/
+void LCD_InitLUT(void) {
+ #if (LCD_BITSPERPIXEL <= 8)
+ {
+ int i;
+ for (i=0; i < LCD_NUM_COLORS; i++) {
+ LCD_COLOR color = LCD_Index2Color((U8)i);
+ #if LCD_REVERSE_LUT
+ color ^= 0xffffff; /* Invert R,G,B components */
+ #endif
+ LCD_L0_SetLUTEntry((U8)i, color);
+ }
+ }
+ #endif
+ #if (GUI_NUM_LAYERS > 1)
+ #if (LCD_BITSPERPIXEL_1 <= 8)
+ {
+ int i;
+ int DisplayOld = GUI_SelectLayer(1);
+ for (i=0; i < LCD_NUM_COLORS_1; i++) {
+ LCD_COLOR color = LCD_Index2Color((U8)i);
+ #if LCD_REVERSE_LUT_1
+ color ^= 0xffffff; /* Invert R,G,B components */
+ #endif
+ LCD_L0_1_SetLUTEntry((U8)i, color);
+ }
+ GUI_SelectLayer(DisplayOld);
+ }
+ #endif
+ #endif
+ #if (GUI_NUM_LAYERS > 2)
+ #if (LCD_BITSPERPIXEL_2 <= 8)
+ {
+ int i;
+ int DisplayOld = GUI_SelectLayer(2);
+ for (i=0; i < LCD_NUM_COLORS_2; i++) {
+ LCD_COLOR color = LCD_Index2Color((U8)i);
+ #if LCD_REVERSE_LUT_2
+ color ^= 0xffffff; /* Invert R,G,B components */
+ #endif
+ LCD_L0_2_SetLUTEntry((U8)i, color);
+ }
+ GUI_SelectLayer(DisplayOld);
+ }
+ #endif
+ #endif
+ #if (GUI_NUM_LAYERS > 3)
+ #if (LCD_BITSPERPIXEL_3 <= 8)
+ {
+ int i;
+ int DisplayOld = GUI_SelectLayer(3);
+ for (i=0; i < LCD_NUM_COLORS_3; i++) {
+ LCD_COLOR color = LCD_Index2Color((U8)i);
+ #if LCD_REVERSE_LUT_3
+ color ^= 0xffffff; /* Invert R,G,B components */
+ #endif
+ LCD_L0_3_SetLUTEntry((U8)i, color);
+ }
+ GUI_SelectLayer(DisplayOld);
+ }
+ #endif
+ #endif
+ #if (GUI_NUM_LAYERS > 4)
+ #if (LCD_BITSPERPIXEL_4 <= 8)
+ {
+ int i;
+ int DisplayOld = GUI_SelectLayer(4);
+ for (i=0; i < LCD_NUM_COLORS_4; i++) {
+ LCD_COLOR color = LCD_Index2Color((U8)i);
+ #if LCD_REVERSE_LUT_4
+ color ^= 0xffffff; /* Invert R,G,B components */
+ #endif
+ LCD_L0_4_SetLUTEntry((U8)i, color);
+ }
+ GUI_SelectLayer(DisplayOld);
+ }
+ #endif
+ #endif
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDGetP.c b/User/lib/lcd/gui/Core/LCDGetP.c
new file mode 100644
index 0000000..25f7aa9
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDGetP.c
@@ -0,0 +1,61 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDGetP.c
+Purpose : Get Pixel routines
+ Note: These routines are in a module of their own
+ because they are mostly not required to link
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+#include "GUIDebug.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_GetPixelIndex
+*
+* NOTE:
+* We can not use the standard clipping which we use for drawing
+* operations as it is perfectly legal to read pixels outside of
+* the clipping area. We therefor get the bounding rectangle of the
+* device and use it for clipping.
+*/
+unsigned LCD_GetPixelIndex(int x, int y) {
+ LCD_RECT r;
+ GUI_ASSERT_LOCK();
+ LCDDEV_L0_GetRect(&r);
+ if (x < r.x0) {
+ return 0;
+ }
+ if (x > r.x1) {
+ return 0;
+ }
+ if (y < r.y0) {
+ return 0;
+ }
+ if (y > r.y1) {
+ return 0;
+ }
+ return LCDDEV_L0_GetPixelIndex(x,y);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDInfo.c b/User/lib/lcd/gui/Core/LCDInfo.c
new file mode 100644
index 0000000..ca3c78a
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDInfo.c
@@ -0,0 +1,57 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDInfo.C
+Purpose : Routines returning info at runtime
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "LCD.h" /* interface definitions */
+#include "LCD_Private.h" /* private modul definitions & config */
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_GetDevCap
+*/
+I32 LCD_GetDevCap(int Index) {
+ switch (Index) {
+ case LCD_DEVCAP_NUMCOLORS:
+ return LCD_NUM_COLORS;
+ case LCD_DEVCAP_XSIZE:
+ return LCD_GetXSize();
+ case LCD_DEVCAP_YSIZE:
+ return LCD_GetYSize();
+ case LCD_DEVCAP_VXSIZE:
+ return LCD_VXSIZE;
+ case LCD_DEVCAP_VYSIZE:
+ return LCD_VYSIZE;
+ case LCD_DEVCAP_CONTROLLER:
+ return LCD_CONTROLLER;
+ case LCD_DEVCAP_BITSPERPIXEL:
+ return LCD_BITSPERPIXEL;
+ }
+ if ((Index >= LCD_DEVCAP_COLOR) && (Index < LCD_DEVCAP_COLOR+LCD_NUM_COLORS)) {
+ return LCD_Index2Color(Index-LCD_DEVCAP_COLOR);
+ }
+ return 0;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDInfo0.c b/User/lib/lcd/gui/Core/LCDInfo0.c
new file mode 100644
index 0000000..19769ee
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDInfo0.c
@@ -0,0 +1,41 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDInfo1.C
+Purpose : Routines returning info at runtime
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "LCD.h" /* interface definitions */
+#include "LCD_Private.h" /* private modul definitions & config */
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+
+int LCD_GetXSize(void) { return LCD_XSIZE; }
+int LCD_GetYSize(void) { return LCD_YSIZE; }
+int LCD_GetVXSize(void) { return LCD_VXSIZE; }
+int LCD_GetVYSize(void) { return LCD_VYSIZE; }
+int LCD_GetBitsPerPixel(void) { return LCD_BITSPERPIXEL; }
+U32 LCD_GetNumColors(void) { return LCD_NUM_COLORS; }
+int LCD_GetYMag(void) { return LCD_YMAG; }
+int LCD_GetXMag(void) { return LCD_XMAG; }
+int LCD_GetFixedPalette(void) { return LCD_FIXEDPALETTE; }
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDInfo1.c b/User/lib/lcd/gui/Core/LCDInfo1.c
new file mode 100644
index 0000000..03bcfca
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDInfo1.c
@@ -0,0 +1,53 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDInfo1.C
+Purpose : Routines returning info at runtime
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "LCD.h" /* interface definitions */
+#include "LCD_Private.h" /* private modul definitions & config */
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+
+#if GUI_NUM_LAYERS > 1
+ int LCD_GetXSize_1(void) { return LCD_XSIZE_1; }
+ int LCD_GetYSize_1(void) { return LCD_YSIZE_1; }
+ int LCD_GetVXSize_1(void) { return LCD_VXSIZE_1; }
+ int LCD_GetVYSize_1(void) { return LCD_VYSIZE_1; }
+ int LCD_GetBitsPerPixel_1(void) { return LCD_BITSPERPIXEL_1; }
+ U32 LCD_GetNumColors_1(void) { return LCD_NUM_COLORS_1; }
+ int LCD_GetYMag_1(void) { return LCD_YMAG_1; }
+ int LCD_GetXMag_1(void) { return LCD_XMAG_1; }
+ int LCD_GetFixedPalette_1(void) { return LCD_FIXEDPALETTE_1; }
+#else
+ int LCD_GetXSize_1(void) { return 0; }
+ int LCD_GetYSize_1(void) { return 0; }
+ int LCD_GetVXSize_1(void) { return 0; }
+ int LCD_GetVYSize_1(void) { return 0; }
+ int LCD_GetBitsPerPixel_1(void) { return 0; }
+ U32 LCD_GetNumColors_1(void) { return 0; }
+ int LCD_GetYMag_1(void) { return 0; }
+ int LCD_GetXMag_1(void) { return 0; }
+ int LCD_GetFixedPalette_1(void) { return 0; }
+#endif
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDL0Delta.c b/User/lib/lcd/gui/Core/LCDL0Delta.c
new file mode 100644
index 0000000..a582fe5
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDL0Delta.c
@@ -0,0 +1,516 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDL0Delta.c
+Purpose : Link between GUI and LCD_L0... if delta display needs to
+ be supported
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+#include "GUIDebug.h"
+#include "LCD_Private.h" /* private modul definitions & config */
+
+#if LCD_DELTA_MODE
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+static U8 _aPixelData_0[LCD_XSIZE];
+static U8 _aPixelData_1[LCD_XSIZE];
+static const GUI_LOGPALETTE _Pal;
+static GUI_BITMAP _Bm;
+static int _y;
+static U8 _aRGB[3];
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _SetRGB
+*/
+static void _SetRGB(LCD_PIXELINDEX ColorIndex) {
+ _aRGB[0] = ColorIndex & 0x00f;
+ _aRGB[1] = (ColorIndex & 0x0f0) >> 4;
+ _aRGB[2] = (ColorIndex & 0xf00) >> 8;
+}
+
+/*********************************************************************
+*
+* _SetPixel
+*/
+static void _SetPixelIndex(int x, LCD_PIXELINDEX ColorIndex) {
+ _SetRGB(ColorIndex);
+ _aPixelData_0[x] = _aRGB[(x + (_y & 1)) % 3];
+}
+
+/*********************************************************************
+*
+* _InitBM
+*/
+static void _InitBM(int xsize, int x0) {
+ _Bm.XSize = xsize;
+ _Bm.YSize = 1;
+ _Bm.BytesPerLine = xsize;
+ _Bm.BitsPerPixel = 8;
+ _Bm.pfDraw = 0;
+ _Bm.pData = &_aPixelData_0[x0];
+ _Bm.pPal = &_Pal;
+ _Bm.pfDraw = 0;
+}
+
+/*********************************************************************
+*
+* _DrawBitLine1BPP
+*/
+static void _DrawBitLine1BPP(int x, U8 const GUI_UNI_PTR * p, int Diff, int xsize, const LCD_PIXELINDEX * pTrans) {
+ int xx;
+ LCD_PIXELINDEX Index0 = *(pTrans+0);
+ LCD_PIXELINDEX Index1 = *(pTrans+1);
+ x += Diff;
+ xx = x;
+ switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS | LCD_DRAWMODE_XOR)) {
+ case 0:
+ do {
+ _SetPixelIndex(xx++, (*p & (0x80 >> Diff)) ? Index1 : Index0);
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ case LCD_DRAWMODE_TRANS:
+ do {
+ if (*p & (0x80 >> Diff)) {
+ _SetPixelIndex(xx, Index1);
+ } else {
+ _SetPixelIndex(xx, LCD_L0_GetPixelIndex(xx, _y));
+ }
+ xx++;
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ case LCD_DRAWMODE_XOR:;
+ do {
+ if (*p & (0x80 >> Diff)) {
+ int Pixel = LCD_L0_GetPixelIndex(xx, _y);
+ _SetPixelIndex(xx, LCD_NUM_COLORS - 1 - Pixel);
+ }
+ xx++;
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ }
+ LCD_L0_DrawBitmap(x, _y, _Bm.XSize, 1, _Bm.BitsPerPixel, _Bm.BytesPerLine, _Bm.pData, 0, 0);
+}
+
+/*********************************************************************
+*
+* _DrawBitLine2BPP
+*/
+static void _DrawBitLine2BPP(int x, U8 const GUI_UNI_PTR * p, int Diff, int xsize, const LCD_PIXELINDEX * pTrans) {
+ int xx;
+ LCD_PIXELINDEX Pixels = *p;
+ int CurrentPixel = Diff;
+ x += Diff;
+ xx = x;
+ switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS | LCD_DRAWMODE_XOR)) {
+ case 0:
+ if (pTrans) {
+ do {
+ int Shift = (3 - CurrentPixel) << 1;
+ int Index = (Pixels & (0xC0 >> (6 - Shift))) >> Shift;
+ LCD_PIXELINDEX PixelIndex = *(pTrans + Index);
+ _SetPixelIndex(xx++, PixelIndex);
+ if (++CurrentPixel == 4) {
+ CurrentPixel = 0;
+ Pixels = *(++p);
+ }
+ } while (--xsize);
+ } else {
+ do {
+ int Shift = (3 - CurrentPixel) << 1;
+ int Index = (Pixels & (0xC0 >> (6 - Shift))) >> Shift;
+ _SetPixelIndex(xx++, Index);
+ if (++CurrentPixel == 4) {
+ CurrentPixel = 0;
+ Pixels = *(++p);
+ }
+ } while (--xsize);
+ }
+ break;
+ case LCD_DRAWMODE_TRANS:
+ if (pTrans) {
+ do {
+ int Shift = (3 - CurrentPixel) << 1;
+ int Index = (Pixels & (0xC0 >> (6 - Shift))) >> Shift;
+ if (Index) {
+ LCD_PIXELINDEX PixelIndex = *(pTrans + Index);
+ _SetPixelIndex(xx, PixelIndex);
+ } else {
+ _SetPixelIndex(xx, LCD_L0_GetPixelIndex(xx, _y));
+ }
+ xx++;
+ if (++CurrentPixel == 4) {
+ CurrentPixel = 0;
+ Pixels = *(++p);
+ }
+ } while (--xsize);
+ } else {
+ do {
+ int Shift = (3 - CurrentPixel) << 1;
+ int Index = (Pixels & (0xC0 >> (6 - Shift))) >> Shift;
+ if (Index) {
+ _SetPixelIndex(xx, Index);
+ } else {
+ _SetPixelIndex(xx, LCD_L0_GetPixelIndex(xx, _y));
+ }
+ xx++;
+ if (++CurrentPixel == 4) {
+ CurrentPixel = 0;
+ Pixels = *(++p);
+ }
+ } while (--xsize);
+ }
+ break;
+ }
+ LCD_L0_DrawBitmap(x, _y, _Bm.XSize, 1, _Bm.BitsPerPixel, _Bm.BytesPerLine, _Bm.pData, 0, 0);
+}
+
+/*********************************************************************
+*
+* _DrawBitLine4BPP
+*/
+static void _DrawBitLine4BPP(int x, U8 const GUI_UNI_PTR * p, int Diff, int xsize, const LCD_PIXELINDEX * pTrans) {
+ int xx;
+ U8 Pixels = *p;
+ int CurrentPixel = Diff;
+ x += Diff;
+ xx = x;
+ switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS | LCD_DRAWMODE_XOR)) {
+ case 0:
+ if (pTrans) {
+ do {
+ int Shift = (1 - CurrentPixel) << 2;
+ int Index = (Pixels & (0xF0 >> (4 - Shift))) >> Shift;
+ LCD_PIXELINDEX PixelIndex = *(pTrans + Index);
+ _SetPixelIndex(xx++, PixelIndex);
+ if (++CurrentPixel == 2) {
+ CurrentPixel = 0;
+ Pixels = *(++p);
+ }
+ } while (--xsize);
+ } else {
+ do {
+ int Shift = (1 - CurrentPixel) << 2;
+ int Index = (Pixels & (0xF0 >> (4 - Shift))) >> Shift;
+ _SetPixelIndex(xx++, Index);
+ if (++CurrentPixel == 2) {
+ CurrentPixel = 0;
+ Pixels = *(++p);
+ }
+ } while (--xsize);
+ }
+ break;
+ case LCD_DRAWMODE_TRANS:
+ if (pTrans) {
+ do {
+ int Shift = (1 - CurrentPixel) << 2;
+ int Index = (Pixels & (0xF0 >> (4 - Shift))) >> Shift;
+ if (Index) {
+ U8 PixelIndex = *(pTrans + Index);
+ _SetPixelIndex(xx, PixelIndex);
+ } else {
+ _SetPixelIndex(xx, LCD_L0_GetPixelIndex(xx, _y));
+ }
+ xx++;
+ if (++CurrentPixel == 2) {
+ CurrentPixel = 0;
+ Pixels = *(++p);
+ }
+ } while (--xsize);
+ } else {
+ do {
+ int Shift = (1 - CurrentPixel) << 2;
+ int Index = (Pixels & (0xF0 >> (4 - Shift))) >> Shift;
+ if (Index) {
+ _SetPixelIndex(xx, Index);
+ } else {
+ _SetPixelIndex(xx, LCD_L0_GetPixelIndex(xx, _y));
+ }
+ xx++;
+ if (++CurrentPixel == 2) {
+ CurrentPixel = 0;
+ Pixels = *(++p);
+ }
+ } while (--xsize);
+ }
+ break;
+ }
+ LCD_L0_DrawBitmap(x, _y, _Bm.XSize, 1, _Bm.BitsPerPixel, _Bm.BytesPerLine, _Bm.pData, 0, 0);
+}
+
+/*********************************************************************
+*
+* _DrawBitLine8BPP
+*/
+static void _DrawBitLine8BPP(int x, U8 const GUI_UNI_PTR * p, int xsize, const LCD_PIXELINDEX * pTrans) {
+ int xx = x;
+ LCD_PIXELINDEX Pixel;
+ switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS | LCD_DRAWMODE_XOR)) {
+ case 0:
+ if (pTrans) {
+ for (; xsize > 0; xsize--, xx++, p++) {
+ Pixel = *p;
+ _SetPixelIndex(xx, *(pTrans + Pixel));
+ }
+ } else {
+ for (; xsize > 0; xsize--, xx++, p++) {
+ _SetPixelIndex(xx, *p);
+ }
+ }
+ break;
+ case LCD_DRAWMODE_TRANS:
+ if (pTrans) {
+ for (; xsize > 0; xsize--, xx++, p++) {
+ Pixel = *p;
+ if (Pixel) {
+ _SetPixelIndex(xx, *(pTrans + Pixel));
+ } else {
+ _SetPixelIndex(xx, LCD_L0_GetPixelIndex(xx, _y));
+ }
+ }
+ } else {
+ for (; xsize > 0; xsize--, xx++, p++) {
+ Pixel = *p;
+ if (Pixel) {
+ _SetPixelIndex(xx, Pixel);
+ } else {
+ _SetPixelIndex(xx, LCD_L0_GetPixelIndex(xx, _y));
+ }
+ }
+ }
+ break;
+ }
+ LCD_L0_DrawBitmap(x, _y, _Bm.XSize, 1, _Bm.BitsPerPixel, _Bm.BytesPerLine, _Bm.pData, 0, 0);
+}
+
+/*********************************************************************
+*
+* _DrawBitLine16BPP
+*/
+static void _DrawBitLine16BPP(int x, U16 const GUI_UNI_PTR * p, int xsize, const LCD_PIXELINDEX * pTrans) {
+ int xx = x;
+ LCD_PIXELINDEX pixel;
+ if ((GUI_Context.DrawMode & LCD_DRAWMODE_TRANS) == 0) {
+ if (pTrans) {
+ for (; xsize > 0; xsize--, xx++, p++) {
+ pixel = *p;
+ _SetPixelIndex(xx, *(pTrans + pixel));
+ }
+ } else {
+ for (;xsize > 0; xsize--, xx++, p++) {
+ _SetPixelIndex(xx, *p);
+ }
+ }
+ } else {
+ if (pTrans) {
+ for (; xsize > 0; xsize--, xx++, p++) {
+ pixel = *p;
+ if (pixel) {
+ _SetPixelIndex(xx, *(pTrans + pixel));
+ } else {
+ _SetPixelIndex(xx, LCD_L0_GetPixelIndex(xx, _y));
+ }
+ }
+ } else {
+ for (; xsize > 0; xsize--, xx++, p++) {
+ pixel = *p;
+ if (pixel) {
+ _SetPixelIndex(xx, pixel);
+ } else {
+ _SetPixelIndex(xx, LCD_L0_GetPixelIndex(xx, _y));
+ }
+ }
+ }
+ }
+ LCD_L0_DrawBitmap(x, _y, _Bm.XSize, 1, _Bm.BitsPerPixel, _Bm.BytesPerLine, _Bm.pData, 0, 0);
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_L0_DELTA_DrawBitmap
+*/
+void LCD_L0_DELTA_DrawBitmap(int x0, int y0,
+ int xsize, int ysize,
+ int BitsPerPixel,
+ int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff,
+ const LCD_PIXELINDEX* pTrans)
+{
+ int i;
+ _InitBM(xsize, x0 + Diff);
+ for (i = 0; i < ysize; i++) {
+ _y = i + y0;
+ switch (BitsPerPixel) {
+ case 1:
+ _DrawBitLine1BPP(x0, pData, Diff, xsize, pTrans);
+ break;
+ #if (LCD_MAX_LOG_COLORS > 2)
+ case 2:
+ _DrawBitLine2BPP(x0, pData, Diff, xsize, pTrans);
+ break;
+ #endif
+ #if (LCD_MAX_LOG_COLORS > 4)
+ case 4:
+ _DrawBitLine4BPP(x0, pData, Diff, xsize, pTrans);
+ break;
+ #endif
+ #if (LCD_MAX_LOG_COLORS > 16)
+ case 8:
+ _DrawBitLine8BPP(x0, pData, xsize, pTrans);
+ break;
+ #endif
+ #if (LCD_BITSPERPIXEL > 8)
+ case 16:
+ _DrawBitLine16BPP(x0, (const U16 *)pData, xsize, pTrans);
+ break;
+ #endif
+ }
+ pData += BytesPerLine;
+ }
+}
+
+/*********************************************************************
+*
+* LCD_L0_DELTA_DrawHLine
+*/
+void LCD_L0_DELTA_DrawHLine(int x0, int y, int x1) {
+ if (GUI_Context.DrawMode & LCD_DRAWMODE_XOR) {
+ for (; x0 <= x1; x0++) {
+ LCD_L0_XorPixel(x0, y);
+ }
+ } else {
+ LCD_L0_DELTA_FillRect(x0, y, x1, y);
+ }
+}
+
+/*********************************************************************
+*
+* LCD_L0_DELTA_DrawVLine
+*/
+void LCD_L0_DELTA_DrawVLine(int x , int y0, int y1) {
+ if (GUI_Context.DrawMode & LCD_DRAWMODE_XOR) {
+ for (; y0 <= y1; y0++) {
+ LCD_L0_XorPixel(x, y0);
+ }
+ } else {
+ int aIndex[2];
+ _SetRGB(LCD_COLORINDEX);
+ aIndex[0] = x % 3;
+ aIndex[1] = (x + 1) % 3;
+ for (; y0 <= y1; y0++) {
+ LCD_L0_SetPixelIndex(x, y0, _aRGB[aIndex[y0 & 1]]);
+ }
+ }
+}
+
+/*********************************************************************
+*
+* LCD_L0_DELTA_FillRect
+*/
+void LCD_L0_DELTA_FillRect(int x0, int y0, int x1, int y1) {
+ if (GUI_Context.DrawMode & LCD_DRAWMODE_XOR) {
+ for (; y0 <= y1; y0++) {
+ LCD_L0_DELTA_DrawHLine(x0, y0, x1);
+ }
+ } else {
+ int x, y, aInit_0 = 0, aInit_1 = 0;
+ _InitBM(x1 - x0 + 1, x0);/**/
+ _SetRGB(LCD_COLORINDEX);
+ for (y = y0; y <= y1; y++) {
+ int Index = y & 1;
+ if (Index) {
+ if (!aInit_1) {
+ for (x = x0; x <= x1; x++) {
+ _aPixelData_1[x] = _aRGB[(x + 1) % 3];
+ }
+ aInit_1 = 1;
+ }
+ LCD_L0_DrawBitmap(x0, y, _Bm.XSize, 1, _Bm.BitsPerPixel, _Bm.BytesPerLine, &_aPixelData_1[x0], 0, 0);
+ } else {
+ if (!aInit_0) {
+ for (x = x0; x <= x1; x++) {
+ _aPixelData_0[x] = _aRGB[x % 3];
+ }
+ aInit_0 = 1;
+ }
+ LCD_L0_DrawBitmap(x0, y, _Bm.XSize, 1, _Bm.BitsPerPixel, _Bm.BytesPerLine, _Bm.pData, 0, 0);
+ }
+ }
+ }
+}
+
+/*********************************************************************
+*
+* LCD_L0_DELTA_GetPixelIndex
+*/
+unsigned int LCD_L0_DELTA_GetPixelIndex(int x, int y) {
+ return LCD_L0_GetPixelIndex(x, y);
+}
+
+/*********************************************************************
+*
+* LCD_L0_DELTA_SetPixelIndex
+*/
+void LCD_L0_DELTA_SetPixelIndex(int x, int y, int ColorIndex) {
+ LCD_L0_SetPixelIndex(x, y, ColorIndex);
+}
+
+/*********************************************************************
+*
+* LCD_L0_DELTA_XorPixel
+*/
+void LCD_L0_DELTA_XorPixel(int x, int y) {
+ LCD_L0_XorPixel(x, y);
+}
+
+#else
+
+void LCDL0Delta_c(void);
+void LCDL0Delta_c(void) { } /* avoid empty object files */
+
+#endif
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDL0Mag.c b/User/lib/lcd/gui/Core/LCDL0Mag.c
new file mode 100644
index 0000000..89f9c49
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDL0Mag.c
@@ -0,0 +1,260 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD.c
+Purpose : Link between GUI and LCD_L0
+ Performs most of the clipping.
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+#include "GUIDebug.h"
+#include "LCD_Private.h" /* private modul definitions & config */
+
+#if LCD_XMAG > 2
+ #error Not yet supported
+#endif
+
+#if LCD_XMAG == 2
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static const U8 abData12[16] = {
+ 0x0, 0x3, 0xc, 0xf, 0x30, 0x33, 0x3c, 0x3f, 0xC0, 0xC3, 0xCc, 0xcf, 0xf0, 0xf3, 0xfc, 0xff
+};
+
+static const U8 abData22[16] = {
+ 0x0, 0x5, 0x5*2, 0x5*3,
+ 0x50*1+0x0, 0x50*1+0x5, 0x50*1+0x5*2, 0x50*1+0x5*3,
+ 0x50*2+0x0, 0x50*2+0x5, 0x50*2+0x5*2, 0x50*2+0x5*3,
+ 0x50*3+0x0, 0x50*3+0x5, 0x50*3+0x5*2, 0x50*3+0x5*3
+};
+
+static const U8 abData32[16] = {
+ 0x0, 0x11, 0x22, 0x33,
+ 0x44, 0x55, 0x66, 0x77,
+ 0x88, 0x99, 0xaa, 0xbb,
+ 0xcc, 0xdd, 0xee, 0xff
+};
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawBitline
+*/
+static void _DrawBitline(int x0, int y0, int xsize, int BPP, const U8*pData, int Diff, const LCD_PIXELINDEX* pTrans) {
+ union {
+ U8 ab[100]; /* Byte Buffer */
+ U16 au16[50]; /* Word Buffer */
+ } Buffer;
+ int i;
+ int NumPixels;
+ int NumPixelsMax = sizeof(Buffer.ab)*8/BPP/LCD_XMAG;
+ while (xsize >0) {
+ int iOff =0;
+ NumPixels = (xsize < NumPixelsMax) ? xsize : NumPixelsMax;
+ switch (BPP) {
+ case 1:
+ for (i=0; i>= 8-Diff;
+ Data &= 0xff;
+ } else {
+ Data = *pData;
+ }
+ pData++;
+ Buffer.ab[iOff++] = abData12[Data>>4];
+ Buffer.ab[iOff++] = abData12[Data&15];
+ }
+ break;
+ case 2:
+ for (i=0; i>= 8-(Diff<<1);
+ Data &= 0xff;
+ } else {
+ Data = *pData;
+ }
+ pData++;
+ Buffer.ab[iOff++] = abData22[Data>>4];
+ Buffer.ab[iOff++] = abData22[Data&15];
+ }
+ break;
+ case 4:
+ for (i=0; i>= 8-(Diff<<2);
+ Data &= 0xff;
+ } else {
+ Data = *pData;
+ }
+ pData++;
+ Buffer.ab[iOff++] = abData32[Data>>4];
+ Buffer.ab[iOff++] = abData32[Data&15];
+ }
+ break;
+ case 8:
+ for (i=0; i 2
+ GUI_MEMSET (&Buffer.ab[i*LCD_XMAG], *(pData+i), LCD_XMAG);
+ #else
+ Buffer.ab[i*LCD_XMAG] = Buffer.ab[i*LCD_XMAG+1] = *pData++;
+ #endif
+ }
+ break;
+ case 16:
+ for (i=0; i 2
+ GUI_MEMSET (&Buffer.ab[i*LCD_XMAG], *(pData+i), LCD_XMAG);
+ #else
+ Buffer.au16[i*LCD_XMAG] = Buffer.au16[i*LCD_XMAG+1] = *(U16*)pData;
+ pData += 2; /* Move to next word */
+ #endif
+ }
+ break;
+ }
+ LCD_L0_DrawBitmap(x0 + Diff * LCD_XMAG, y0, NumPixels * LCD_XMAG, LCD_YMAG, BPP, 0, Buffer.ab, 0, pTrans);
+ x0 += NumPixels*LCD_XMAG;
+ xsize -= NumPixels;
+ }
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_L0_MAG_DrawBitmap
+*/
+void LCD_L0_MAG_DrawBitmap(int x0, int y0, int xsize, int ysize,
+ int BPP, int BytesPerLine, const U8* pData, int Diff,
+ const LCD_PIXELINDEX* pTrans)
+{
+ int iLine;
+ y0 *= LCD_YMAG;
+ x0 *= LCD_XMAG;
+ for (iLine = 0; iLine < ysize; iLine++) {
+ #if LCD_XMAG == 1
+ LCD_L0_DrawBitmap(x0, y0, xsize, LCD_YMAG, BPP, 0, pData, Diff, pTrans);
+ #else
+ _DrawBitline(x0, y0, xsize, BPP, pData, Diff, pTrans);
+ #endif
+ y0+= LCD_YMAG;
+ pData += BytesPerLine;
+ }
+}
+
+/*********************************************************************
+*
+* LCD_L0_MAG_DrawHLine
+*/
+void LCD_L0_MAG_DrawHLine(int x0, int y0, int x1) {
+ x0 *= LCD_XMAG;
+ x1 = x1*(LCD_XMAG) + LCD_XMAG-1;
+ y0 *= LCD_YMAG;
+ LCD_L0_FillRect(x0, y0, x1, y0 + LCD_YMAG-1);
+}
+
+/*********************************************************************
+*
+* LCD_L0_MAG_DrawVLine
+*/
+void LCD_L0_MAG_DrawVLine(int x0 , int y0, int y1) {
+ y0 *= LCD_YMAG;
+ y1 = y1*(LCD_YMAG) + LCD_YMAG-1;
+ x0 *= LCD_XMAG;
+ LCD_L0_FillRect(x0, y0, x0 + LCD_XMAG-1, y1);
+}
+
+/*********************************************************************
+*
+* LCD_L0_MAG_FillRect
+*/
+void LCD_L0_MAG_FillRect(int x0, int y0, int x1, int y1) {
+ y0 *= LCD_YMAG;
+ y1 = y1*(LCD_YMAG) + LCD_YMAG-1;
+ x0 *= LCD_XMAG;
+ x1 = x1*(LCD_XMAG) + LCD_XMAG-1;
+ LCD_L0_FillRect(x0, y0, x1, y1);
+}
+
+/*********************************************************************
+*
+* LCD_L0_MAG_GetPixelIndex
+*/
+unsigned int LCD_L0_MAG_GetPixelIndex(int x, int y) {
+ return LCD_L0_GetPixelIndex(x* LCD_XMAG, y* LCD_YMAG);
+}
+
+/*********************************************************************
+*
+* LCD_L0_MAG_SetPixelIndex
+*/
+void LCD_L0_MAG_SetPixelIndex(int x, int y, int ColorIndex) {
+ int ix, iy;
+ y *= LCD_YMAG;
+ x *= LCD_XMAG;
+ for (iy=0; iy< LCD_YMAG; iy++) {
+ for (ix=0; ix< LCD_XMAG; ix++) {
+ LCD_L0_SetPixelIndex(x+ix, y+iy, ColorIndex);
+ }
+ }
+}
+
+/*********************************************************************
+*
+* LCD_L0_MAG_XorPixel
+*/
+void LCD_L0_MAG_XorPixel(int x, int y) {
+ int ix, iy;
+ y *= LCD_YMAG;
+ x *= LCD_XMAG;
+ for (iy=0; iy< LCD_YMAG; iy++) {
+ for (ix=0; ix< LCD_XMAG; ix++) {
+ LCD_L0_XorPixel(x+ix, y+iy);
+ }
+ }
+}
+
+#else
+
+void LCDL0Mag_c(void);
+void LCDL0Mag_c(void) { } /* avoid empty object files */
+
+#endif
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDP1.c b/User/lib/lcd/gui/Core/LCDP1.c
new file mode 100644
index 0000000..ca1fe0e
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDP1.c
@@ -0,0 +1,83 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD1.C
+Purpose : Color conversion routines for 1 bpp (b/w) mode
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+#include "LCD_Protected.h" /* inter modul definitions */
+
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+
+#if GUI_SUPPORT_MEMDEV
+
+/*********************************************************************
+*
+* LCD_Color2Index_1
+*
+* Purpose
+* API table for this color conversion mode. Only used by memory
+* devices in this mode.
+*/
+const LCD_API_COLOR_CONV LCD_API_ColorConv_1 = {
+ LCD_Color2Index_1,
+ LCD_Index2Color_1,
+ LCD_GetIndexMask_1
+};
+
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Color2Index_1
+*/
+unsigned LCD_Color2Index_1(LCD_COLOR Color) {
+ int r,g,b;
+ r = Color &255;
+ g = (Color>>8) &255;
+ b = Color>>16;
+ return (r+g+b+383) /(3*255);
+}
+
+/*********************************************************************
+*
+* LCD_Index2Color_1
+*/
+LCD_COLOR LCD_Index2Color_1(int Index) {
+ return Index ? 0xFFFFFF : 0;
+}
+
+/*********************************************************************
+*
+* LCD_GetIndexMask_1
+*/
+unsigned LCD_GetIndexMask_1(void) {
+ return 0x01;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDP565_Index2Color.c b/User/lib/lcd/gui/Core/LCDP565_Index2Color.c
new file mode 100644
index 0000000..17c3f2e
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDP565_Index2Color.c
@@ -0,0 +1,62 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDP565_Index2Color.c
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define B_BITS 5
+#define G_BITS 6
+#define R_BITS 5
+
+#define R_MASK ((1 << R_BITS) -1)
+#define G_MASK ((1 << G_BITS) -1)
+#define B_MASK ((1 << B_BITS) -1)
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 565, 65536 colors, BBBBBGGGGGGRRRRR
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Index2Color_565
+*/
+LCD_COLOR LCD_Index2Color_565(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ r = Index & R_MASK;
+ g = (Index >> R_BITS) & G_MASK;
+ b = ((unsigned)Index >> (R_BITS + G_BITS)) & B_MASK;
+ /* Convert the color masks */
+ r = r * 255 / R_MASK;
+ g = g * 255 / G_MASK;
+ b = b * 255 / B_MASK;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDPM565_Index2Color.c b/User/lib/lcd/gui/Core/LCDPM565_Index2Color.c
new file mode 100644
index 0000000..cd562e9
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDPM565_Index2Color.c
@@ -0,0 +1,62 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDPM565_Index2Color.c
+Purpose : Color conversion routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define B_BITS 5
+#define G_BITS 6
+#define R_BITS 5
+
+#define R_MASK ((1 << R_BITS) -1)
+#define G_MASK ((1 << G_BITS) -1)
+#define B_MASK ((1 << B_BITS) -1)
+
+/*********************************************************************
+*
+* Public code,
+*
+* LCD_FIXEDPALETTE == 565, 65536 colors, RRRRRGGGGGGBBBBB
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Index2Color_M565
+*/
+LCD_COLOR LCD_Index2Color_M565(int Index) {
+ unsigned int r,g,b;
+ /* Seperate the color masks */
+ b = Index & B_MASK;
+ g = (Index >> B_BITS) & G_MASK;
+ r = ((unsigned)Index >> (B_BITS + G_BITS)) & R_MASK;
+ /* Convert the color masks */
+ r = r * 255 / R_MASK;
+ g = g * 255 / G_MASK;
+ b = b * 255 / B_MASK;
+ return r + (g<<8) + (((U32)b)<<16);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDRLE4.c b/User/lib/lcd/gui/Core/LCDRLE4.c
new file mode 100644
index 0000000..aa1c12f
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDRLE4.c
@@ -0,0 +1,138 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDRLE4.c
+Purpose : Drawing routines for run length encoded bitmaps
+ with 4bpp
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "LCD.h"
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawBitmap_RLE4
+*/
+static void _DrawBitmap_RLE4(int x0,int y0,int xsize, int ysize, const U8 GUI_UNI_PTR * pPixel, const LCD_LOGPALETTE GUI_UNI_PTR* pLogPal, int xMag, int yMag) {
+ const LCD_PIXELINDEX* pTrans =NULL;
+ char NoTrans = !(GUI_Context.DrawMode & LCD_DRAWMODE_TRANS);
+ LCD_PIXELINDEX aColorIndex[2];
+ LCD_PIXELINDEX PixelIndex;
+ int xi,y;
+ int xL, yL;
+ char IsMagnified = ((yMag | xMag) != 1);
+ aColorIndex[0] = LCD_ACOLORINDEX[0];
+ aColorIndex[1] = LCD_ACOLORINDEX[1];
+ /* Handle color translation */
+ if ((pLogPal) && (pLogPal->pPalEntries)) {
+ if ((pTrans = LCD_GetpPalConvTable(pLogPal)) == NULL) {
+ return;
+ }
+ }
+ /* Check if we can limit the number of lines due to clipping) */
+ if (yMag == 1) {
+ if (ysize > GUI_Context.ClipRect.y1 - y0 + 1)
+ ysize = GUI_Context.ClipRect.y1 - y0 + 1;
+ }
+ /* Repeat until we have reached bottom */
+ for (xi=0, y = 0; y < ysize; ) {
+ U8 Cmd,Data;
+ Cmd= *pPixel++;
+ Data = *pPixel++;
+ if (Cmd) {
+ LCD_SetColorIndex(pTrans ? *(pTrans+Data) : Data);
+ while (Cmd) {
+ int xi1 = xi+Cmd;
+ if (xi1>=xsize)
+ xi1 = xsize;
+ Cmd -= (xi1-xi);
+ if (Data || NoTrans) { /* Skip transparent pixels */
+ if (IsMagnified) {
+ xL = xMag * xi + x0;
+ yL = yMag * y + y0;
+ LCD_FillRect(xL, yL, xL + xMag * (xi1 - xi) -1 , yL + yMag - 1);
+ } else {
+ LCD_DrawHLine(x0+xi, y + y0, xi1+x0-1);
+ }
+ }
+ xi =xi1;
+ if (xi1==xsize) {
+ y++;
+ xi=0;
+ }
+ }
+ } else {
+ while (Data--) {
+ U8 Index = *pPixel++;
+ if ((Index>>4) || NoTrans) { /* Skip transparent pixels */
+ PixelIndex = pTrans ? *(pTrans+(Index>>4)) : (Index>>4);
+ if (IsMagnified) {
+ LCD_SetColorIndex(PixelIndex);
+ xL = xMag * xi + x0;
+ yL = yMag * y + y0;
+ LCD_FillRect(xL, yL, xL + xMag -1 , yL + yMag - 1);
+ } else {
+ LCD_SetPixelIndex(x0+xi, y + y0, PixelIndex);
+ }
+ }
+ if (++xi >= xsize) {
+ xi=0; y++;
+ }
+ if (Data-- == 0)
+ break;
+ if ((Index&15) || NoTrans) { /* Skip transparent pixels */
+ PixelIndex = pTrans ? *(pTrans+(Index&15)) : (Index&15);
+ if (IsMagnified) {
+ LCD_SetColorIndex(PixelIndex);
+ xL = xMag * xi + x0;
+ yL = yMag * y + y0;
+ LCD_FillRect(xL, yL, xL + xMag -1 , yL + yMag - 1);
+ } else {
+ LCD_SetPixelIndex(x0+xi, y + y0, PixelIndex);
+ }
+ }
+ if (++xi >= xsize) {
+ xi=0; y++;
+ }
+ }
+ }
+ }
+ LCD_ACOLORINDEX[0] = aColorIndex[0];
+ LCD_ACOLORINDEX[1] = aColorIndex[1];
+}
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_BitmapMethodsRLE4
+*/
+const GUI_BITMAP_METHODS GUI_BitmapMethodsRLE4 = {
+ _DrawBitmap_RLE4,
+ NULL
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDRLE8.c b/User/lib/lcd/gui/Core/LCDRLE8.c
new file mode 100644
index 0000000..4da2e58
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDRLE8.c
@@ -0,0 +1,165 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDRLE8.c
+Purpose : Drawing routines for run length encoded bitmaps
+ with 8 bpp
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+#include "LCD_Private.h"
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static struct {
+ int x,y;
+ const U8 GUI_UNI_PTR * pPixel;
+ const U8 GUI_UNI_PTR * pPixelStart;
+} Cache;
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawBitmap_RLE8
+*/
+static void _DrawBitmap_RLE8(int x0,int y0,int xsize, int ysize, const U8 GUI_UNI_PTR * pPixel, const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal, int xMag, int yMag) {
+ LCD_PIXELINDEX aColorIndex[2];
+ LCD_PIXELINDEX PixelIndex;
+ int xi,y;
+ int xL, yL;
+ const U8 GUI_UNI_PTR * pPixelOrg = pPixel;
+ char NoTrans = !(GUI_Context.DrawMode & LCD_DRAWMODE_TRANS);
+ const LCD_PIXELINDEX* pTrans =NULL;
+ char IsMagnified = ((yMag | xMag) != 1);
+ aColorIndex[0] = LCD_ACOLORINDEX[0];
+ aColorIndex[1] = LCD_ACOLORINDEX[1];
+ /* Handle color translation */
+ if ((pLogPal) && (pLogPal->pPalEntries)) {
+ if ((pTrans = LCD_GetpPalConvTable(pLogPal)) == NULL) {
+ return;
+ }
+ }
+ /* Check if we can limit the number of lines due to clipping) */
+ if (yMag == 1) {
+ if (ysize > GUI_Context.ClipRect.y1 - y0 + 1)
+ ysize = GUI_Context.ClipRect.y1 - y0 + 1;
+ }
+ /* Init variables for looping */
+ xi=0;
+ y =0;
+ /* Check if we can use the cache to save some unnecessary iterations */
+ if (!IsMagnified) {
+ int yDiff = GUI_Context.ClipRect.y0 - y0;
+ if ((Cache.pPixelStart == pPixel) && (yDiff > Cache.y)) {
+ /* Accept cache values */
+ y = Cache.y;
+ xi = Cache.x;
+ pPixel = Cache.pPixel;
+ }
+ }
+ /* Init values for caching */
+ Cache.pPixel = Cache.pPixelStart = pPixelOrg;
+ Cache.x = Cache.y = 0;
+ /* Repeat until we have reached bottom */
+ for (; y < ysize; ) {
+ U8 Cmd = *pPixel++;
+ U8 Data = *pPixel++;
+ if (Cmd) {
+ /* Save cache info */
+ Cache.pPixel = pPixel-2;
+ Cache.x = xi;
+ Cache.y = y;
+ LCD_ACOLORINDEX[1] = pTrans ? *(pTrans+Data) : Data;
+ while (Cmd) {
+ int xi1 = xi+Cmd;
+ if (xi1>=xsize)
+ xi1 = xsize;
+ Cmd -= (xi1-xi);
+ if (Data || NoTrans) { /* Skip transparent pixels */
+ if (IsMagnified) {
+ xL = xMag * xi + x0;
+ yL = yMag * y + y0;
+ LCD_FillRect(xL, yL, xL + xMag * (xi1 - xi) -1 , yL + yMag - 1);
+ } else {
+ LCD_DrawHLine(x0+xi, y + y0, xi1+x0-1);
+ }
+ }
+ xi =xi1;
+ if (xi1==xsize) {
+ y++;
+ xi=0;
+ }
+ }
+ } else {
+ do {
+ U8 Index = *pPixel++;
+ if (Index || NoTrans) { /* Skip transparent pixels */
+ int x = x0+xi;
+ PixelIndex = pTrans ? *(pTrans+Index) : Index;
+ if (IsMagnified) {
+ LCD_SetColorIndex(PixelIndex);
+ xL = xMag * xi + x0;
+ yL = yMag * y + y0;
+ LCD_FillRect(xL, yL, xL + xMag -1 , yL + yMag - 1);
+ } else {
+ #if 1 /* High speed variant */
+ if (y + y0>= GUI_Context.ClipRect.y0)
+ if (x >= GUI_Context.ClipRect.x0)
+ if (x <= GUI_Context.ClipRect.x1)
+ LCDDEV_L0_SetPixelIndex(x, y + y0, PixelIndex);
+ #else
+ LCD_SetPixelIndex(x, y + y0, PixelIndex);
+ #endif
+ }
+ }
+ if (++xi >= xsize) {
+ xi=0; y++;
+ if (y >= ysize)
+ break;
+ }
+ } while (--Data);
+ }
+ }
+ LCD_ACOLORINDEX[0] = aColorIndex[0];
+ LCD_ACOLORINDEX[1] = aColorIndex[1];
+}
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_BitmapMethodsRLE8
+*/
+const GUI_BITMAP_METHODS GUI_BitmapMethodsRLE8 = {
+ _DrawBitmap_RLE8,
+ NULL
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCDSIM.h b/User/lib/lcd/gui/Core/LCDSIM.h
new file mode 100644
index 0000000..b45bbdb
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCDSIM.h
@@ -0,0 +1,90 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDSIM.h
+Purpose : Declares LCD interface functions
+----------------------------------------------------------------------
+*/
+
+#ifndef LCDSIM_H
+#define LCDSIM_H
+
+
+/************************************************************
+*
+* defines
+*
+*************************************************************
+*/
+#define LCDSIM_MAX_DISPLAYS 5
+
+/************************************************************
+*
+* LCDSIM_ General declarations
+*
+*************************************************************
+*/
+
+char* LCDSIM_Init(void);
+int LCDSIM_GetMouseState(LCD_tMouseState *pState);
+void LCDSIM_SetMouseState(int x, int y, int KeyStat);
+void LCDSIM_CheckMouseState(void);
+int LCDSIM_SaveBMP (const char * sFileName);
+int LCDSIM_SaveBMPEx (const char * sFileName, int x0, int y0, int xSize, int ySize);
+int LCDSIM_SaveSBMP (const char * sFileName);
+int LCDSIM_SaveSBMPEx(const char * sFileName, int x0, int y0, int xSize, int ySize);
+
+/************************************************************
+*
+* LCDSIM_ Functions for each display
+*
+*************************************************************
+*/
+
+void LCDSIM_FillRect(int x0, int y0, int x1, int y1, int Index, int LayerIndex);
+int LCDSIM_GetModifyCnt(int LayerIndex);
+int LCDSIM_GetModifyCntInfo(int LayerIndex);
+int LCDSIM_GetPixelColor(int x, int y, int LayerIndex);
+int LCDSIM_GetPixelIndex(int x, int y, int LayerIndex);
+int LCDSIM_Index2Color(int Index, int LayerIndex);
+int LCDSIM_RLUT_GetPixelIndex(int x, int y, int LayerIndex);
+void LCDSIM_RLUT_SetPixelIndex(int x, int y, int Index, int LayerIndex);
+void LCDSIM_SetLUTEntry(U8 Pos, LCD_COLOR color, int LayerIndex);
+void LCDSIM_SetPixelIndex(int x, int y, int Index, int LayerIndex);
+void LCDSIM_SetPixelColor(int x, int y, LCD_COLOR PixelColor, int LayerIndex);
+void LCDSIM_SetSubPixel(int x, int y, U8 Value, int LayerIndex);
+void LCDSIM_SetSubPixelPhys(int xPhys, int yPhys, int Index, int LayerIndex);
+void LCDSIM_SetPixelPhys(int x, int y, int Index, int LayerIndex);
+int LCDSIM_GetPixelPhys(int xPhys, int yPhys, int LayerIndex);
+void LCDSIM_FillRectPhys(int x0Phys, int y0Phys, int x1Phys, int y1Phys, int Index, int LayerIndex);
+
+/************************************************************
+*
+* LCDSIM_ Declarations for painting in windows program
+*
+*************************************************************
+*/
+
+#if defined(_WINDOWS_) | defined(_WINDOWS_H) /* if windows.h has already been included */
+ void LCDSIM_Paint (HWND hWnd);
+ void LCDSIM_PaintEx(HWND hWnd, LPRECT pRectDest, LPRECT pRectSrc);
+ void LCDSIM_PaintAt(HWND hWnd, int x, int y);
+#endif
+
+
+#endif /* LCD_H */
+
+
+
+
diff --git a/User/lib/lcd/gui/Core/LCD_API.c b/User/lib/lcd/gui/Core/LCD_API.c
new file mode 100644
index 0000000..c734b61
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_API.c
@@ -0,0 +1,302 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_API.C
+Purpose : Selection of LCD display
+---------------------------END-OF-HEADER------------------------------
+*/
+
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+#include "GUIDebug.h"
+#include "LCD_Private.h" /* Required for configuration, APIList */
+
+#if GUI_COMPILER_SUPPORTS_FP
+
+/*********************************************************************
+*
+* LCD Device
+* (if memory devices are supported)
+*
+**********************************************************************
+*/
+
+const tLCDDEV_APIList LCD_L0_APIList = {
+#if LCD_YMAG==1
+ #if LCD_DELTA_MODE
+ LCD_L0_Color2Index,
+ LCD_L0_Index2Color,
+ LCD_L0_GetIndexMask,
+ LCD_L0_DELTA_DrawBitmap,
+ LCD_L0_DELTA_DrawHLine,
+ LCD_L0_DELTA_DrawVLine,
+ LCD_L0_DELTA_FillRect,
+ LCD_L0_DELTA_GetPixelIndex,
+ LCD_L0_GetRect, /* Original routine is o.k. here, since we use the logical
+ coordinates for clipping, which are not magnified */
+ LCD_L0_DELTA_SetPixelIndex,
+ LCD_L0_DELTA_XorPixel,
+ LCD_L0_SetLUTEntry,
+ #else
+ LCD_L0_Color2Index,
+ LCD_L0_Index2Color,
+ LCD_L0_GetIndexMask,
+ (tLCDDEV_DrawBitmap*)LCD_L0_DrawBitmap,
+ LCD_L0_DrawHLine,
+ LCD_L0_DrawVLine,
+ LCD_L0_FillRect,
+ LCD_L0_GetPixelIndex,
+ LCD_L0_GetRect,
+ LCD_L0_SetPixelIndex,
+ LCD_L0_XorPixel,
+ LCD_L0_SetLUTEntry,
+ #endif
+#else
+ LCD_L0_Color2Index,
+ LCD_L0_Index2Color,
+ LCD_L0_GetIndexMask,
+ LCD_L0_MAG_DrawBitmap,
+ LCD_L0_MAG_DrawHLine,
+ LCD_L0_MAG_DrawVLine,
+ LCD_L0_MAG_FillRect,
+ LCD_L0_MAG_GetPixelIndex,
+ LCD_L0_GetRect, /* Original routine is o.k. here, since we use the logical
+ coordinates for clipping, which are not magnified */
+ LCD_L0_MAG_SetPixelIndex,
+ LCD_L0_MAG_XorPixel,
+ LCD_L0_SetLUTEntry,
+#endif
+#if GUI_SUPPORT_MEMDEV
+ NULL, /* pfFillPolygon */
+ NULL, /* pfFillPolygonAA */
+ #if LCD_BITSPERPIXEL <= 8
+ &GUI_MEMDEV__APIList8
+ #else
+ &GUI_MEMDEV__APIList16
+ #endif
+#endif
+};
+
+/*
+ *************************************************
+ * *
+ * LCD Device *
+ * (if memory devices are supported) *
+ * *
+ *************************************************
+*/
+
+#if GUI_NUM_LAYERS > 1
+const tLCDDEV_APIList LCD_L0_1_APIList = {
+#if LCD_YMAG_1 == 1
+ LCD_L0_1_Color2Index,
+ LCD_L0_1_Index2Color,
+ LCD_L0_1_GetIndexMask,
+ LCD_L0_1_DrawBitmap,
+ LCD_L0_1_DrawHLine,
+ LCD_L0_1_DrawVLine,
+ LCD_L0_1_FillRect,
+ LCD_L0_1_GetPixelIndex,
+ LCD_L0_1_GetRect,
+ LCD_L0_1_SetPixelIndex,
+ LCD_L0_1_XorPixel,
+ LCD_L0_1_SetLUTEntry,
+#else
+ LCD_L0_1_Color2Index,
+ LCD_L0_1_Index2Color,
+ LCD_L0_1_GetIndexMask,
+ LCD_L0_1_MAG_DrawBitmap,
+ LCD_L0_1_MAG_DrawHLine,
+ LCD_L0_1_MAG_DrawVLine,
+ LCD_L0_1_MAG_FillRect,
+ LCD_L0_1_MAG_GetPixelIndex,
+ LCD_L0_1_GetRect, /* Original routine is o.k. here, since we use the logical
+ coordinates for clipping, which are not magnified */
+ LCD_L0_1_MAG_SetPixelIndex,
+ LCD_L0_1_MAG_XorPixel,
+ LCD_L0_1_SetLUTEntry,
+#endif
+#if GUI_SUPPORT_MEMDEV
+ NULL, /* pfFillPolygon */
+ NULL, /* pfFillPolygonAA */
+ #if LCD_BITSPERPIXEL_1 <= 8
+ &GUI_MEMDEV__APIList8
+ #else
+ &GUI_MEMDEV__APIList16
+ #endif
+#endif
+};
+#endif
+
+#if GUI_NUM_LAYERS > 2
+const tLCDDEV_APIList LCD_L0_2_APIList = {
+#if LCD_YMAG_2 == 1
+ LCD_L0_2_Color2Index,
+ LCD_L0_2_Index2Color,
+ LCD_L0_2_GetIndexMask,
+ LCD_L0_2_DrawBitmap,
+ LCD_L0_2_DrawHLine,
+ LCD_L0_2_DrawVLine,
+ LCD_L0_2_FillRect,
+ LCD_L0_2_GetPixelIndex,
+ LCD_L0_2_GetRect,
+ LCD_L0_2_SetPixelIndex,
+ LCD_L0_2_XorPixel,
+ LCD_L0_2_SetLUTEntry,
+#else
+ LCD_L0_2_Color2Index,
+ LCD_L0_2_Index2Color,
+ LCD_L0_2_GetIndexMask,
+ LCD_L0_2_MAG_DrawBitmap,
+ LCD_L0_2_MAG_DrawHLine,
+ LCD_L0_2_MAG_DrawVLine,
+ LCD_L0_2_MAG_FillRect,
+ LCD_L0_2_MAG_GetPixelIndex,
+ LCD_L0_2_GetRect, /* Original routine is o.k. here, since we use the logical
+ coordinates for clipping, which are not magnified */
+ LCD_L0_2_MAG_SetPixelIndex,
+ LCD_L0_2_MAG_XorPixel,
+ LCD_L0_2_SetLUTEntry,
+#endif
+#if GUI_SUPPORT_MEMDEV
+ NULL, /* pfFillPolygon */
+ NULL, /* pfFillPolygonAA */
+ #if LCD_BITSPERPIXEL_2 <= 8
+ &GUI_MEMDEV__APIList8
+ #else
+ &GUI_MEMDEV__APIList16
+ #endif
+#endif
+};
+#endif
+
+#if GUI_NUM_LAYERS > 3
+const tLCDDEV_APIList LCD_L0_3_APIList = {
+#if LCD_YMAG_3 == 1
+ LCD_L0_3_Color2Index,
+ LCD_L0_3_Index2Color,
+ LCD_L0_3_GetIndexMask,
+ LCD_L0_3_DrawBitmap,
+ LCD_L0_3_DrawHLine,
+ LCD_L0_3_DrawVLine,
+ LCD_L0_3_FillRect,
+ LCD_L0_3_GetPixelIndex,
+ LCD_L0_3_GetRect,
+ LCD_L0_3_SetPixelIndex,
+ LCD_L0_3_XorPixel,
+ LCD_L0_3_SetLUTEntry,
+#else
+ LCD_L0_3_Color2Index,
+ LCD_L0_3_Index2Color,
+ LCD_L0_3_GetIndexMask,
+ LCD_L0_3_MAG_DrawBitmap,
+ LCD_L0_3_MAG_DrawHLine,
+ LCD_L0_3_MAG_DrawVLine,
+ LCD_L0_3_MAG_FillRect,
+ LCD_L0_3_MAG_GetPixelIndex,
+ LCD_L0_3_GetRect, /* Original routine is o.k. here, since we use the logical
+ coordinates for clipping, which are not magnified */
+ LCD_L0_3_MAG_SetPixelIndex,
+ LCD_L0_3_MAG_XorPixel,
+ LCD_L0_3_SetLUTEntry,
+#endif
+#if GUI_SUPPORT_MEMDEV
+ NULL, /* pfFillPolygon */
+ NULL, /* pfFillPolygonAA */
+ #if LCD_BITSPERPIXEL_3 <= 8
+ &GUI_MEMDEV__APIList8
+ #else
+ &GUI_MEMDEV__APIList16
+ #endif
+#endif
+};
+#endif
+
+#if GUI_NUM_LAYERS > 4
+const tLCDDEV_APIList LCD_L0_4_APIList = {
+#if LCD_YMAG_4 == 1
+ LCD_L0_4_Color2Index,
+ LCD_L0_4_Index2Color,
+ LCD_L0_4_GetIndexMask,
+ LCD_L0_4_DrawBitmap,
+ LCD_L0_4_DrawHLine,
+ LCD_L0_4_DrawVLine,
+ LCD_L0_4_FillRect,
+ LCD_L0_4_GetPixelIndex,
+ LCD_L0_4_GetRect,
+ LCD_L0_4_SetPixelIndex,
+ LCD_L0_4_XorPixel,
+ LCD_L0_4_SetLUTEntry,
+#else
+ LCD_L0_4_Color2Index,
+ LCD_L0_4_Index2Color,
+ LCD_L0_4_GetIndexMask,
+ LCD_L0_4_MAG_DrawBitmap,
+ LCD_L0_4_MAG_DrawHLine,
+ LCD_L0_4_MAG_DrawVLine,
+ LCD_L0_4_MAG_FillRect,
+ LCD_L0_4_MAG_GetPixelIndex,
+ LCD_L0_4_GetRect, /* Original routine is o.k. here, since we use the logical
+ coordinates for clipping, which are not magnified */
+ LCD_L0_4_MAG_SetPixelIndex,
+ LCD_L0_4_MAG_XorPixel,
+ LCD_L0_4_SetLUTEntry,
+#endif
+#if GUI_SUPPORT_MEMDEV
+ NULL, /* pfFillPolygon */
+ NULL, /* pfFillPolygonAA */
+ #if LCD_BITSPERPIXEL_4 <= 8
+ &GUI_MEMDEV__APIList8
+ #else
+ &GUI_MEMDEV__APIList16
+ #endif
+#endif
+};
+#endif
+
+/***********************************************************
+*
+* LCD_aAPI
+*
+* Purpose:
+* This table lists the available displays/layers by a single pointer.
+* It is important that these are non-constants, because some high level
+* software (such as the VNC server, but maybe also the mouse "Cursor" mdoule)
+* may need to override these pointers in order to link itself into the chain
+* of drawing routines.
+* However, the API tables may of course be constants.
+*
+*/
+
+const tLCDDEV_APIList* /*const*/ LCD_aAPI[] = {
+ &LCD_L0_APIList
+#if GUI_NUM_LAYERS > 1
+ ,&LCD_L0_1_APIList
+#endif
+#if GUI_NUM_LAYERS > 2
+ ,&LCD_L0_2_APIList
+#endif
+#if GUI_NUM_LAYERS > 3
+ ,&LCD_L0_3_APIList
+#endif
+#if GUI_NUM_LAYERS > 4
+ ,&LCD_L0_4_APIList
+#endif
+};
+
+#endif
+
+/*************************** End of file ****************************/
+
diff --git a/User/lib/lcd/gui/Core/LCD_ConfDefaults.h b/User/lib/lcd/gui/Core/LCD_ConfDefaults.h
new file mode 100644
index 0000000..a683fbd
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_ConfDefaults.h
@@ -0,0 +1,740 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* �C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_ConfDefaults.h
+Purpose : Valid LCD configuration and defaults
+----------------------------------------------------------------------
+*/
+
+#ifndef LCD_CONFIG_DEFAULTS_H
+#define LCD_CONFIG_DEFAULTS_H
+
+#include "LCDConf.h" /* Configuration header file */
+#include "GUI_ConfDefaults.h" /* Needed for GUI_NUM_LAYERS */
+/*********************************************************************
+ *
+ * Map the defines for this controller
+ *
+ * #define LCD_ LCD__0
+ *
+ **********************************************************************
+ */
+
+#ifdef LCD_CONTROLLER_0
+#define LCD_CONTROLLER LCD_CONTROLLER_0
+#endif
+
+#ifdef LCD_XSIZE_0
+#define LCD_XSIZE LCD_XSIZE_0
+#endif
+
+#ifdef LCD_YSIZE_0
+#define LCD_YSIZE LCD_YSIZE_0
+#endif
+
+#ifdef LCD_BITSPERPIXEL_0
+#define LCD_BITSPERPIXEL LCD_BITSPERPIXEL_0
+#endif
+
+#ifdef LCD_VYSIZE_0
+#define LCD_VYSIZE LCD_VYSIZE_0
+#endif
+
+#ifdef LCD_MIRROR_X_0
+#define LCD_MIRROR_X LCD_MIRROR_X_0
+#endif
+
+#ifdef LCD_MIRROR_Y_0
+#define LCD_MIRROR_Y LCD_MIRROR_Y_0
+#endif
+
+#ifdef LCD_SWAP_XY_0
+#define LCD_SWAP_XY LCD_SWAP_XY_0
+#endif
+
+#ifdef LCD_CACHE_CONTROL_0
+#define LCD_CACHE_CONTROL LCD_CACHE_CONTROL_0
+#endif
+
+#ifdef LCD_FIRSTSEG0_0
+#define LCD_FIRSTSEG0 LCD_FIRSTSEG0_0
+#endif
+
+#ifdef LCD_LASTSEG0_0
+#define LCD_LASTSEG0 LCD_LASTSEG0_0
+#endif
+
+#ifdef LCD_FIRSTCOM0_0
+#define LCD_FIRSTCOM0 LCD_FIRSTCOM0_0
+#endif
+
+#ifdef LCD_LASTCOM0_0
+#define LCD_LASTCOM0 LCD_LASTCOM0_0
+#endif
+
+#ifdef LCD_BITSPERPIXEL_L0_0
+#define LCD_BITSPERPIXEL_L0 LCD_BITSPERPIXEL_0
+#endif
+
+#ifdef LCD_DELTA_MODE_0
+#define LCD_DELTA_MODE LCD_DELTA_MODE_0
+#endif
+
+#ifdef LCD_XORG0_0
+#define LCD_XORG0 LCD_XORG0_0
+#endif
+
+#ifdef LCD_YORG0_0
+#define LCD_YORG0 LCD_YORG0_0
+#endif
+
+#ifdef LCD_FIXEDPALETTE_0
+#define LCD_FIXEDPALETTE LCD_FIXEDPALETTE_0
+#endif
+
+#ifdef LCD_CACHE_0
+#ifdef LCD_CACHE
+#undef LCD_CACHE
+#endif
+#define LCD_CACHE LCD_CACHE_0
+#endif
+
+#ifdef LCD_CHECKBUSY_0
+#ifdef LCD_CHECKBUSY
+#undef LCD_CHECKBUSY
+#endif
+#define LCD_CHECKBUSY LCD_CHECKBUSY_0
+#endif
+
+#ifdef LCD_SWAP_BYTE_ORDER_0
+#define LCD_SWAP_BYTE_ORDER LCD_SWAP_BYTE_ORDER_0
+#endif
+
+#ifdef LCD_SWAP_RB_0
+#define LCD_SWAP_RB LCD_SWAP_RB_0
+#endif
+
+#ifdef LCD_PHYSCOLORS_0
+#define LCD_PHYSCOLORS LCD_PHYSCOLORS_0
+#endif
+
+#ifndef LCD_ALLOW_NON_OPTIMIZED_MODE
+#define LCD_ALLOW_NON_OPTIMIZED_MODE 0
+#endif
+
+/*********************************************************************
+ *
+ * Some error checking
+ *
+ **********************************************************************
+ */
+#ifndef LCD_CONTROLLER
+#error LCD_CONTROLLER not defined !
+#endif
+
+/*******************************************************************
+ *
+ * Defaults for config switches
+ *
+ ********************************************************************
+ */
+
+#ifndef LCD_NUM_CONTROLLERS
+#define LCD_NUM_CONTROLLERS (1)
+#endif
+
+#ifndef LCD_NUM_COLORS
+#define LCD_NUM_COLORS (1L << LCD_BITSPERPIXEL)
+#endif
+
+/*********************************************************************
+ *
+ * Map the defines for controller 0 to general defines
+ *
+ **********************************************************************
+ */
+
+/* Allow use of multiple physical lines for one logical line ...
+ Used for delta-type LCDs, where value should be 2 */
+
+#ifndef LCD_YMAG
+#define LCD_YMAG 1
+#endif
+#ifndef LCD_XMAG
+#define LCD_XMAG 1
+#endif
+
+#ifndef LCD_VXSIZE
+#define LCD_VXSIZE (LCD_XSIZE * LCD_XMAG) /* virtual x-size */
+#endif
+#ifndef LCD_VYSIZE
+#define LCD_VYSIZE (LCD_YSIZE * LCD_YMAG) /* virtual y-size */
+#endif
+
+#ifndef LCD_SWAP_BYTE_ORDER
+#define LCD_SWAP_BYTE_ORDER (0) /* only for 16 bit bus, default is not swapped */
+#endif
+
+#ifndef LCD_MAX_LOG_COLORS
+#define LCD_MAX_LOG_COLORS (256)
+#endif
+
+/* Optionally swap red and blue components */
+#ifndef LCD_SWAP_RB
+#define LCD_SWAP_RB 0
+#endif
+
+#if !defined(LCD_CONTROLLER) && defined(LCD_CONTROLLER_0)
+#define LCD_CONTROLLER LCD_CONTROLLER_0
+#endif
+
+#if !defined(LCD_XSIZE) && defined(LCD_XSIZE_0)
+#define LCD_XSIZE LCD_XSIZE_0
+#endif
+
+#if !defined(LCD_YSIZE) && defined(LCD_YSIZE_0)
+#define LCD_YSIZE LCD_YSIZE_0
+#endif
+
+#if !defined(LCD_BITSPERPIXEL) && defined(LCD_BITSPERPIXEL_0)
+#define LCD_BITSPERPIXEL LCD_BITSPERPIXEL_0
+#endif
+
+#if !defined(LCD_VYSIZE) && defined(LCD_VYSIZE_0)
+#define LCD_VYSIZE LCD_VYSIZE_0
+#endif
+
+/*********************************************************************
+ *
+ * Defaults for Display 0 (first display)
+ *
+ **********************************************************************
+ */
+
+#ifndef LCD_MIRROR_X
+#define LCD_MIRROR_X (0) /* If active: X -> -X */
+#endif
+#ifndef LCD_MIRROR_Y
+#define LCD_MIRROR_Y (0) /* If active: Y -> -Y */
+#endif
+#ifndef LCD_SWAP_XY
+#define LCD_SWAP_XY (0) /* If active: X <-> Y */
+#endif
+#ifndef LCD_BITSPERPIXEL_L0
+#define LCD_BITSPERPIXEL_L0 LCD_BITSPERPIXEL
+#endif
+#ifndef LCD_DELTA_MODE
+#define LCD_DELTA_MODE 0 /**/
+#endif
+
+/* Position data for controller 0 */
+#ifndef LCD_XORG0
+#define LCD_XORG0 (0) /* leftmost position covered by this controller */
+#endif
+#ifndef LCD_YORG0
+#define LCD_YORG0 (0) /* topmost position covered by this controller */
+#endif
+#ifndef LCD_XSIZE0
+#define LCD_XSIZE0 (LCD_XSIZE) /* horizontal size covered by this controller */
+#endif
+#ifndef LCD_YSIZE0
+#define LCD_YSIZE0 (LCD_YSIZE) /* vertical size covered by this controller */
+#endif
+#ifndef LCD_FIRSTSEG0
+#define LCD_FIRSTSEG0 (0) /* first segment used by this controller */
+#endif
+#ifndef LCD_LASTSEG0
+#define LCD_LASTSEG0 (LCD_XSIZE - 1) /* Contr.0: last segment line used */
+#endif
+#ifndef LCD_FIRSTCOM0
+#define LCD_FIRSTCOM0 (0) /* first com used by this controller */
+#endif
+#ifndef LCD_LASTCOM0
+#define LCD_LASTCOM0 (LCD_YSIZE - 1) /* Contr.0: last com line used */
+#endif
+
+#if (!LCD_SWAP_XY)
+#define LCD_XSIZE_PHYS LCD_XSIZE
+#define LCD_YSIZE_PHYS LCD_YSIZE
+#define LCD_VXSIZE_PHYS LCD_VXSIZE
+#define LCD_VYSIZE_PHYS LCD_VYSIZE
+#else
+#define LCD_XSIZE_PHYS LCD_YSIZE
+#define LCD_YSIZE_PHYS LCD_XSIZE
+#define LCD_VXSIZE_PHYS LCD_VYSIZE
+#define LCD_VYSIZE_PHYS LCD_VXSIZE
+#endif
+
+/**********************************************************
+ *
+ * Color settings
+ */
+#ifndef LCD_REVERSE
+#define LCD_REVERSE 0
+#endif
+
+#ifndef LCD_REVERSE_LUT
+#define LCD_REVERSE_LUT 0
+#endif
+
+#ifndef LCD_PHYSCOLORS_IN_RAM
+#define LCD_PHYSCOLORS_IN_RAM 0
+#endif
+
+#if !defined(LCD_PHYSCOLORS)
+#if (LCD_BITSPERPIXEL == 1) | (LCD_BITSPERPIXEL == 2) | (LCD_BITSPERPIXEL == 4)
+#ifndef LCD_FIXEDPALETTE
+#define LCD_FIXEDPALETTE LCD_BITSPERPIXEL
+#endif
+#endif
+#endif /* defined (LCD_PHYSCOLORS) */
+
+#if !defined(LCD_FIXEDPALETTE)
+#if !defined(LCD_PHYSCOLORS)
+#if LCD_BITSPERPIXEL == 8
+// #define LCD_FIXEDPALETTE 8666
+#define LCD_FIXEDPALETTE 233
+
+#elif LCD_BITSPERPIXEL == 12
+#define LCD_FIXEDPALETTE 44412
+#elif LCD_BITSPERPIXEL == 15
+#define LCD_FIXEDPALETTE 555
+#elif LCD_BITSPERPIXEL == 16
+#define LCD_FIXEDPALETTE 565
+#else
+#define LCD_FIXEDPALETTE 0
+#endif
+#else
+#define LCD_FIXEDPALETTE 0
+#endif
+#endif
+
+#if (LCD_BITSPERPIXEL > 8) && defined(LCD_PHYSCOLORS)
+#error List of physical colors not permitted if more than 8 bpp are used !
+#endif
+
+#if (LCD_FIXEDPALETTE == 0)
+#if !defined(LCD_PHYSCOLORS)
+#error You have to define a fixed palette (LCD_FIXEDPALETTE) or
+#error the list of physical colors (LCD_PHYSCOLORS) in LCDConf.h !
+#endif
+#endif
+
+/* In order to avoid warnings for undefined parameters */
+#ifndef LCD_USE_PARA
+#define LCD_USE_PARA(para) para = para;
+#endif
+
+/*********************************************************************
+ *
+ * Defaults for Display 1 (second display)
+ *
+ **********************************************************************
+ */
+#if GUI_NUM_LAYERS > 1
+
+#ifndef LCD_MIRROR_X_1
+#define LCD_MIRROR_X_1 (0) /* If active: X -> -X */
+#endif
+#ifndef LCD_MIRROR_Y_1
+#define LCD_MIRROR_Y_1 (0) /* If active: Y -> -Y */
+#endif
+#ifndef LCD_SWAP_XY_1
+#define LCD_SWAP_XY_1 (0) /* If active: X <-> Y */
+#endif
+#ifndef LCD_BITSPERPIXEL_L0_1
+#define LCD_BITSPERPIXEL_L0_1 LCD_BITSPERPIXEL_1
+#endif
+#ifndef LCD_DELTA_MODE_1
+#define LCD_DELTA_MODE_1 0 /**/
+#endif
+
+#ifndef LCD_YMAG_1
+#define LCD_YMAG_1 1
+#endif
+
+#ifndef LCD_XMAG_1
+#define LCD_XMAG_1 1
+#endif
+
+#ifndef LCD_VXSIZE_1
+#define LCD_VXSIZE_1 (LCD_XSIZE_1 * LCD_XMAG_1) /* virtual x-size */
+#endif
+
+#ifndef LCD_VYSIZE_1
+#define LCD_VYSIZE_1 (LCD_YSIZE_1 * LCD_YMAG_1) /* virtual y-size */
+#endif
+
+#ifndef LCD_NUM_COLORS_1
+#define LCD_NUM_COLORS_1 (1L << LCD_BITSPERPIXEL_1)
+#endif
+
+/* Optionally swap red and blue components */
+#ifndef LCD_SWAP_RB_1
+#define LCD_SWAP_RB_1 0
+#endif
+
+/**********************************************************
+ *
+ * Color settings
+ */
+#ifndef LCD_REVERSE_1
+#define LCD_REVERSE_1 0
+#endif
+
+#ifndef LCD_REVERSE_LUT_1
+#define LCD_REVERSE_LUT_1 0
+#endif
+
+#if !defined(LCD_PHYSCOLORS_1)
+#if (LCD_BITSPERPIXEL_1 == 1) | (LCD_BITSPERPIXEL_1 == 2) | (LCD_BITSPERPIXEL_1 == 4)
+#ifndef LCD_FIXEDPALETTE_1
+#define LCD_FIXEDPALETTE_1 LCD_BITSPERPIXEL_1
+#endif
+#endif
+#endif /* defined (LCD_PHYSCOLORS) */
+
+#if !defined(LCD_FIXEDPALETTE_1)
+#if !defined(LCD_PHYSCOLORS_1)
+#if LCD_BITSPERPIXEL_1 == 8
+#define LCD_FIXEDPALETTE_1 8666
+#elif LCD_BITSPERPIXEL_1 == 15
+#define LCD_FIXEDPALETTE_1 555
+#elif LCD_BITSPERPIXEL_1 == 16
+#define LCD_FIXEDPALETTE_1 565
+#else
+#define LCD_FIXEDPALETTE_1 0
+#endif
+#else
+#define LCD_FIXEDPALETTE_1 0
+#endif
+#endif
+
+#if (LCD_BITSPERPIXEL_1 > 8) && defined(LCD_PHYSCOLORS_1)
+#error List of physical colors not permitted if more than 8 bpp are used !
+#endif
+
+#if (LCD_FIXEDPALETTE_1 == 0)
+#if !defined(LCD_PHYSCOLORS_1)
+#error You have to define a fixed palette (LCD_FIXEDPALETTE_1) or
+#error the list of physical colors (LCD_PHYSCOLORS_1) in LCDConf.h !
+#endif
+#endif
+#endif /* GUI_NUM_LAYERS > 1 */
+
+/*********************************************************************
+ *
+ * Defaults for Display 2 (third display)
+ *
+ **********************************************************************
+ */
+#if GUI_NUM_LAYERS > 2
+
+#ifndef LCD_MIRROR_X_2
+#define LCD_MIRROR_X_2 (0) /* If active: X -> -X */
+#endif
+#ifndef LCD_MIRROR_Y_2
+#define LCD_MIRROR_Y_2 (0) /* If active: Y -> -Y */
+#endif
+#ifndef LCD_SWAP_XY_2
+#define LCD_SWAP_XY_2 (0) /* If active: X <-> Y */
+#endif
+#ifndef LCD_BITSPERPIXEL_L0_2
+#define LCD_BITSPERPIXEL_L0_2 LCD_BITSPERPIXEL_2
+#endif
+#ifndef LCD_DELTA_MODE_2
+#define LCD_DELTA_MODE_2 0 /**/
+#endif
+
+#ifndef LCD_YMAG_2
+#define LCD_YMAG_2 1
+#endif
+
+#ifndef LCD_XMAG_2
+#define LCD_XMAG_2 1
+#endif
+
+#ifndef LCD_VXSIZE_2
+#define LCD_VXSIZE_2 (LCD_XSIZE_2 * LCD_XMAG_2) /* virtual x-size */
+#endif
+
+#ifndef LCD_VYSIZE_2
+#define LCD_VYSIZE_2 (LCD_YSIZE_2 * LCD_YMAG_2) /* virtual y-size */
+#endif
+
+#ifndef LCD_NUM_COLORS_2
+#define LCD_NUM_COLORS_2 (1L << LCD_BITSPERPIXEL_2)
+#endif
+
+/* Optionally swap red and blue components */
+#ifndef LCD_SWAP_RB_2
+#define LCD_SWAP_RB_2 0
+#endif
+
+/**********************************************************
+ *
+ * Color settings
+ */
+#ifndef LCD_REVERSE_2
+#define LCD_REVERSE_2 0
+#endif
+
+#ifndef LCD_REVERSE_LUT_2
+#define LCD_REVERSE_LUT_2 0
+#endif
+
+#if !defined(LCD_PHYSCOLORS_2)
+#if (LCD_BITSPERPIXEL_2 == 1) | (LCD_BITSPERPIXEL_2 == 2) | (LCD_BITSPERPIXEL_2 == 4)
+#ifndef LCD_FIXEDPALETTE_2
+#define LCD_FIXEDPALETTE_2 LCD_BITSPERPIXEL_2
+#endif
+#endif
+#endif /* defined (LCD_PHYSCOLORS) */
+
+#if !defined(LCD_FIXEDPALETTE_2)
+#if !defined(LCD_PHYSCOLORS_2)
+#if LCD_BITSPERPIXEL_2 == 8
+#define LCD_FIXEDPALETTE_2 8666
+#elif LCD_BITSPERPIXEL_2 == 15
+#define LCD_FIXEDPALETTE_2 555
+#elif LCD_BITSPERPIXEL_2 == 16
+#define LCD_FIXEDPALETTE_2 565
+#else
+#define LCD_FIXEDPALETTE_2 0
+#endif
+#else
+#define LCD_FIXEDPALETTE_2 0
+#endif
+#endif
+
+#if (LCD_BITSPERPIXEL_2 > 8) && defined(LCD_PHYSCOLORS_2)
+#error List of physical colors not permitted if more than 8 bpp are used !
+#endif
+
+#if (LCD_FIXEDPALETTE_2 == 0)
+#if !defined(LCD_PHYSCOLORS_2)
+#error You have to define a fixed palette (LCD_FIXEDPALETTE_2) or
+#error the list of physical colors (LCD_PHYSCOLORS_2) in LCDConf.h !
+#endif
+#endif
+#endif /* GUI_NUM_LAYERS > 2 */
+
+/*********************************************************************
+ *
+ * Defaults for Display 3 (fourth display)
+ *
+ **********************************************************************
+ */
+#if GUI_NUM_LAYERS > 3
+
+#ifndef LCD_MIRROR_X_3
+#define LCD_MIRROR_X_3 (0) /* If active: X -> -X */
+#endif
+#ifndef LCD_MIRROR_Y_3
+#define LCD_MIRROR_Y_3 (0) /* If active: Y -> -Y */
+#endif
+#ifndef LCD_SWAP_XY_3
+#define LCD_SWAP_XY_3 (0) /* If active: X <-> Y */
+#endif
+#ifndef LCD_BITSPERPIXEL_L0_3
+#define LCD_BITSPERPIXEL_L0_3 LCD_BITSPERPIXEL_3
+#endif
+#ifndef LCD_DELTA_MODE_3
+#define LCD_DELTA_MODE_3 0 /**/
+#endif
+
+#ifndef LCD_YMAG_3
+#define LCD_YMAG_3 1
+#endif
+
+#ifndef LCD_XMAG_3
+#define LCD_XMAG_3 1
+#endif
+
+#ifndef LCD_VXSIZE_3
+#define LCD_VXSIZE_3 (LCD_XSIZE_3 * LCD_XMAG_3) /* virtual x-size */
+#endif
+
+#ifndef LCD_VYSIZE_3
+#define LCD_VYSIZE_3 (LCD_YSIZE_3 * LCD_YMAG_3) /* virtual y-size */
+#endif
+
+#ifndef LCD_NUM_COLORS_3
+#define LCD_NUM_COLORS_3 (1L << LCD_BITSPERPIXEL_3)
+#endif
+
+/* Optionally swap red and blue components */
+#ifndef LCD_SWAP_RB_3
+#define LCD_SWAP_RB_3 0
+#endif
+
+/**********************************************************
+ *
+ * Color settings
+ */
+#ifndef LCD_REVERSE_3
+#define LCD_REVERSE_3 0
+#endif
+
+#ifndef LCD_REVERSE_LUT_3
+#define LCD_REVERSE_LUT_3 0
+#endif
+
+#if !defined(LCD_PHYSCOLORS_3)
+#if (LCD_BITSPERPIXEL_3 == 1) | (LCD_BITSPERPIXEL_3 == 2) | (LCD_BITSPERPIXEL_3 == 4)
+#ifndef LCD_FIXEDPALETTE_3
+#define LCD_FIXEDPALETTE_3 LCD_BITSPERPIXEL_3
+#endif
+#endif
+#endif /* defined (LCD_PHYSCOLORS) */
+
+#if !defined(LCD_FIXEDPALETTE_3)
+#if !defined(LCD_PHYSCOLORS_3)
+#if LCD_BITSPERPIXEL_3 == 8
+#define LCD_FIXEDPALETTE_3 8666
+#elif LCD_BITSPERPIXEL_3 == 15
+#define LCD_FIXEDPALETTE_3 555
+#elif LCD_BITSPERPIXEL_3 == 16
+#define LCD_FIXEDPALETTE_3 565
+#else
+#define LCD_FIXEDPALETTE_3 0
+#endif
+#else
+#define LCD_FIXEDPALETTE_3 0
+#endif
+#endif
+
+#if (LCD_BITSPERPIXEL_3 > 8) && defined(LCD_PHYSCOLORS_3)
+#error List of physical colors not permitted if more than 8 bpp are used !
+#endif
+
+#if (LCD_FIXEDPALETTE_3 == 0)
+#if !defined(LCD_PHYSCOLORS_3)
+#error You have to define a fixed palette (LCD_FIXEDPALETTE_3) or
+#error the list of physical colors (LCD_PHYSCOLORS_3) in LCDConf.h !
+#endif
+#endif
+#endif /* GUI_NUM_LAYERS > 3 */
+
+/*********************************************************************
+ *
+ * Defaults for Display 4 (fiveth display)
+ *
+ **********************************************************************
+ */
+#if GUI_NUM_LAYERS > 4
+
+#ifndef LCD_MIRROR_X_4
+#define LCD_MIRROR_X_4 (0) /* If active: X -> -X */
+#endif
+#ifndef LCD_MIRROR_Y_4
+#define LCD_MIRROR_Y_4 (0) /* If active: Y -> -Y */
+#endif
+#ifndef LCD_SWAP_XY_4
+#define LCD_SWAP_XY_4 (0) /* If active: X <-> Y */
+#endif
+#ifndef LCD_BITSPERPIXEL_L0_4
+#define LCD_BITSPERPIXEL_L0_4 LCD_BITSPERPIXEL_4
+#endif
+#ifndef LCD_DELTA_MODE_4
+#define LCD_DELTA_MODE_4 0 /**/
+#endif
+
+#ifndef LCD_YMAG_4
+#define LCD_YMAG_4 1
+#endif
+
+#ifndef LCD_XMAG_4
+#define LCD_XMAG_4 1
+#endif
+
+#ifndef LCD_VXSIZE_4
+#define LCD_VXSIZE_4 (LCD_XSIZE_4 * LCD_XMAG_4) /* virtual x-size */
+#endif
+
+#ifndef LCD_VYSIZE_4
+#define LCD_VYSIZE_4 (LCD_YSIZE_4 * LCD_YMAG_4) /* virtual y-size */
+#endif
+
+#ifndef LCD_NUM_COLORS_4
+#define LCD_NUM_COLORS_4 (1L << LCD_BITSPERPIXEL_4)
+#endif
+
+/* Optionally swap red and blue components */
+#ifndef LCD_SWAP_RB_4
+#define LCD_SWAP_RB_4 0
+#endif
+
+/**********************************************************
+ *
+ * Color settings
+ */
+#ifndef LCD_REVERSE_4
+#define LCD_REVERSE_4 0
+#endif
+
+#ifndef LCD_REVERSE_LUT_4
+#define LCD_REVERSE_LUT_4 0
+#endif
+
+#if !defined(LCD_PHYSCOLORS_4)
+#if (LCD_BITSPERPIXEL_4 == 1) | (LCD_BITSPERPIXEL_4 == 2) | (LCD_BITSPERPIXEL_4 == 4)
+#ifndef LCD_FIXEDPALETTE_4
+#define LCD_FIXEDPALETTE_4 LCD_BITSPERPIXEL_4
+#endif
+#endif
+#endif /* defined (LCD_PHYSCOLORS) */
+
+#if !defined(LCD_FIXEDPALETTE_4)
+#if !defined(LCD_PHYSCOLORS_4)
+#if LCD_BITSPERPIXEL_4 == 8
+#define LCD_FIXEDPALETTE_4 8666
+#elif LCD_BITSPERPIXEL_4 == 15
+#define LCD_FIXEDPALETTE_4 555
+#elif LCD_BITSPERPIXEL_4 == 16
+#define LCD_FIXEDPALETTE_4 565
+#else
+#define LCD_FIXEDPALETTE_4 0
+#endif
+#else
+#define LCD_FIXEDPALETTE_4 0
+#endif
+#endif
+
+#if (LCD_BITSPERPIXEL_4 > 8) && defined(LCD_PHYSCOLORS_4)
+#error List of physical colors not permitted if more than 8 bpp are used !
+#endif
+
+#if (LCD_FIXEDPALETTE_4 == 0)
+#if !defined(LCD_PHYSCOLORS_4)
+#error You have to define a fixed palette (LCD_FIXEDPALETTE_4) or
+#error the list of physical colors (LCD_PHYSCOLORS_4) in LCDConf.h !
+#endif
+#endif
+#endif /* GUI_NUM_LAYERS > 4 */
+
+/*********************************************************************
+ *
+ * Global defaults for all displays
+ *
+ **********************************************************************
+ */
+
+#if (LCD_BITSPERPIXEL <= 8) && (GUI_NUM_LAYERS < 2)
+#define LCD_PIXELINDEX U8
+#else
+#define LCD_PIXELINDEX U16
+#endif
+
+#endif /* LCD_INTERN_H */
diff --git a/User/lib/lcd/gui/Core/LCD_DrawBitmap_565.c b/User/lib/lcd/gui/Core/LCD_DrawBitmap_565.c
new file mode 100644
index 0000000..aba207e
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_DrawBitmap_565.c
@@ -0,0 +1,157 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_DrawBitmap_565.c
+Purpose : Drawing routine for drawing a 16bpp bitmap
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+#include "LCD_Private.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawBitmap_565
+*/
+static void _DrawBitmap_565(int x0,int y0,int xsize, int ysize, const U8 GUI_UNI_PTR * pPixel, const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal, int xMag, int yMag) {
+ const U16 * pData;
+ int y, OldIndex, PrevIndex, Mode, SwapRB, Mag, BytesPerLine, UseDrawBitmap = 0;
+ GUI_USE_PARA(pLogPal);
+ OldIndex = LCD_GetColorIndex();
+ PrevIndex = OldIndex;
+ pData = (const U16 *)pPixel;
+ Mode = LCD_GetFixedPaletteEx(GUI_Context.SelLayer);
+ SwapRB = LCD_GetSwapRBEx(GUI_Context.SelLayer);
+ Mag = (xMag | yMag);
+ BytesPerLine = xsize * 2;
+ #if GUI_SUPPORT_MEMDEV == 0
+ if ((Mode == 565) && (SwapRB == 0) && (Mag == 1)) {
+ UseDrawBitmap = 1;
+ }
+ #else
+ if (GUI_Context.pDeviceAPI->pMemDevAPI) {
+ if (((GUI_Context.hDevData && (GUI_Context.pDeviceAPI->pMemDevAPI->pfIndex2Color == LCD_Index2Color_565)) ||
+ ((GUI_Context.hDevData == 0) && (Mode == 565) && (SwapRB == 0))) && (Mag == 1)) {
+ UseDrawBitmap = 1;
+ }
+ }
+ #endif
+ if (UseDrawBitmap) {
+ LCD_DrawBitmap(x0, y0, xsize, ysize, 1, 1, 16, BytesPerLine, pPixel, 0);
+ } else {
+ if (Mag == 1) {
+ /* Perform clipping */
+ int x1, y1, Diff;
+ y1 = y0 + ysize - 1;
+ x1 = x0 + xsize - 1;
+ /* Clip Y */
+ if (y0 < GUI_Context.ClipRect.y0) {
+ Diff = GUI_Context.ClipRect.y0 -y0;
+ y0 = GUI_Context.ClipRect.y0;
+ #if GUI_SUPPORT_LARGE_BITMAPS /* Required only for 16 bit CPUs if some bitmaps are >64kByte */
+ pData += (U32)Diff * (U32)BytesPerLine / 2;
+ #else
+ pData += (unsigned)Diff * (unsigned)BytesPerLine / 2;
+ #endif
+ ysize -= Diff;
+ }
+ Diff = y1 - GUI_Context.ClipRect.y1;
+ if (Diff > 0) {
+ ysize -= Diff;
+ }
+ if (ysize <=0) {
+ return;
+ }
+ /* Clip right side */
+ Diff = x1 - GUI_Context.ClipRect.x1;
+ if (Diff > 0) {
+ xsize -= Diff;
+ }
+ /* Clip left side */
+ Diff =0;
+ if (x0 < GUI_Context.ClipRect.x0) {
+ Diff = GUI_Context.ClipRect.x0-x0;
+ xsize -= Diff;
+ pData += Diff;
+ x0 += Diff;
+ }
+ if (xsize <=0) {
+ return;
+ }
+ /* Simple, unmagnified output using LCD_L0_SetPixel() */
+ for (y = 0; y < ysize; y++) {
+ int x;
+ const U16 * p = pData;
+ for (x = 0; x < xsize; x++) {
+ U16 Index;
+ Index = *p++;
+ if (Index != PrevIndex) {
+ LCD_SetColor(LCD_Index2Color_565(Index));
+ PrevIndex = Index;
+ }
+ LCDDEV_L0_SetPixelIndex(x + x0, y + y0, LCD_COLORINDEX);
+ }
+ pData += BytesPerLine / 2;
+ }
+ } else {
+ /* Magnified output using LCD_FillRect() */
+ int x,y;
+ int yi;
+ for (y = y0, yi = 0; yi < ysize; yi++, y += yMag, pPixel += BytesPerLine) {
+ int yMax;
+ yMax = y + yMag - 1;
+ /* Draw if within clip area */
+ if ((yMax >= GUI_Context.ClipRect.y0) && (y <= GUI_Context.ClipRect.y1)) {
+ int xi;
+ const U16 GUI_UNI_PTR * p = pData;
+ for (x = x0, xi = 0; xi < xsize; xi++, x += xMag) {
+ U16 Index;
+ Index = *p++;
+ if (Index != PrevIndex) {
+ LCD_SetColor(LCD_Index2Color_565(Index));
+ PrevIndex = Index;
+ }
+ LCD_FillRect(x, y, x + xMag - 1, yMax);
+ }
+ }
+ pData += BytesPerLine / 2;
+ }
+ }
+ GUI_SetColorIndex(OldIndex);
+ }
+}
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_BitmapMethods565
+*/
+const GUI_BITMAP_METHODS GUI_BitmapMethods565 = {
+ _DrawBitmap_565,
+ LCD_Index2Color_565
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_DrawBitmap_M565.c b/User/lib/lcd/gui/Core/LCD_DrawBitmap_M565.c
new file mode 100644
index 0000000..5b9c844
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_DrawBitmap_M565.c
@@ -0,0 +1,157 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_DrawBitmap_M565.c
+Purpose : Drawing routine for drawing a 16bpp bitmap
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+#include "LCD_Private.h"
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawBitmap_M565
+*/
+static void _DrawBitmap_M565(int x0,int y0,int xsize, int ysize, const U8 GUI_UNI_PTR * pPixel, const LCD_LOGPALETTE GUI_UNI_PTR * pLogPal, int xMag, int yMag) {
+ const U16 * pData;
+ int y, OldIndex, PrevIndex, Mode, SwapRB, Mag, BytesPerLine, UseDrawBitmap = 0;
+ GUI_USE_PARA(pLogPal);
+ OldIndex = LCD_GetColorIndex();
+ PrevIndex = OldIndex;
+ pData = (const U16 *)pPixel;
+ Mode = LCD_GetFixedPaletteEx(GUI_Context.SelLayer);
+ SwapRB = LCD_GetSwapRBEx(GUI_Context.SelLayer);
+ Mag = (xMag | yMag);
+ BytesPerLine = xsize * 2;
+ #if GUI_SUPPORT_MEMDEV == 0
+ if ((Mode == 565) && (SwapRB == 1) && (Mag == 1)) {
+ UseDrawBitmap = 1;
+ }
+ #else
+ if (GUI_Context.pDeviceAPI->pMemDevAPI) {
+ if (((GUI_Context.hDevData && (GUI_Context.pDeviceAPI->pMemDevAPI->pfIndex2Color == LCD_Index2Color_565)) ||
+ ((GUI_Context.hDevData == 0) && (Mode == 565) && (SwapRB == 1))) && (Mag == 1)) {
+ UseDrawBitmap = 1;
+ }
+ }
+ #endif
+ if (UseDrawBitmap) {
+ LCD_DrawBitmap(x0, y0, xsize, ysize, 1, 1, 16, BytesPerLine, pPixel, 0);
+ } else {
+ if (Mag == 1) {
+ /* Perform clipping */
+ int x1, y1, Diff;
+ y1 = y0 + ysize - 1;
+ x1 = x0 + xsize - 1;
+ /* Clip Y */
+ if (y0 < GUI_Context.ClipRect.y0) {
+ Diff = GUI_Context.ClipRect.y0 -y0;
+ y0 = GUI_Context.ClipRect.y0;
+ #if GUI_SUPPORT_LARGE_BITMAPS /* Required only for 16 bit CPUs if some bitmaps are >64kByte */
+ pData += (U32)Diff * (U32)BytesPerLine / 2;
+ #else
+ pData += (unsigned)Diff * (unsigned)BytesPerLine / 2;
+ #endif
+ ysize -= Diff;
+ }
+ Diff = y1 - GUI_Context.ClipRect.y1;
+ if (Diff > 0) {
+ ysize -= Diff;
+ }
+ if (ysize <=0) {
+ return;
+ }
+ /* Clip right side */
+ Diff = x1 - GUI_Context.ClipRect.x1;
+ if (Diff > 0) {
+ xsize -= Diff;
+ }
+ /* Clip left side */
+ Diff =0;
+ if (x0 < GUI_Context.ClipRect.x0) {
+ Diff = GUI_Context.ClipRect.x0-x0;
+ xsize -= Diff;
+ pData += Diff;
+ x0 += Diff;
+ }
+ if (xsize <=0) {
+ return;
+ }
+ /* Simple, unmagnified output using LCD_L0_SetPixel() */
+ for (y = 0; y < ysize; y++) {
+ int x;
+ const U16 * p = pData;
+ for (x = 0; x < xsize; x++) {
+ U16 Index;
+ Index = *p++;
+ if (Index != PrevIndex) {
+ LCD_SetColor(LCD_Index2Color_M565(Index));
+ PrevIndex = Index;
+ }
+ LCDDEV_L0_SetPixelIndex(x + x0, y + y0, LCD_COLORINDEX);
+ }
+ pData += BytesPerLine / 2;
+ }
+ } else {
+ /* Magnified output using LCD_FillRect() */
+ int x,y;
+ int yi;
+ for (y = y0, yi = 0; yi < ysize; yi++, y += yMag, pPixel += BytesPerLine) {
+ int yMax;
+ yMax = y + yMag - 1;
+ /* Draw if within clip area */
+ if ((yMax >= GUI_Context.ClipRect.y0) && (y <= GUI_Context.ClipRect.y1)) {
+ int xi;
+ const U16 GUI_UNI_PTR * p = pData;
+ for (x = x0, xi = 0; xi < xsize; xi++, x += xMag) {
+ U16 Index;
+ Index = *p++;
+ if (Index != PrevIndex) {
+ LCD_SetColor(LCD_Index2Color_M565(Index));
+ PrevIndex = Index;
+ }
+ LCD_FillRect(x, y, x + xMag - 1, yMax);
+ }
+ }
+ pData += BytesPerLine / 2;
+ }
+ }
+ GUI_SetColorIndex(OldIndex);
+ }
+}
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_BitmapMethodsM565
+*/
+const GUI_BITMAP_METHODS GUI_BitmapMethodsM565 = {
+ _DrawBitmap_M565,
+ LCD_Index2Color_M565
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_DrawVLine.c b/User/lib/lcd/gui/Core/LCD_DrawVLine.c
new file mode 100644
index 0000000..23d2406
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_DrawVLine.c
@@ -0,0 +1,67 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_DrawVLine.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Private.h"
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define RETURN_IF_Y_OUT() \
+ if (y < GUI_Context.ClipRect.y0) return; \
+ if (y > GUI_Context.ClipRect.y1) return;
+
+#define RETURN_IF_X_OUT() \
+ if (x < GUI_Context.ClipRect.x0) return; \
+ if (x > GUI_Context.ClipRect.x1) return;
+
+#define CLIP_X() \
+ if (x0 < GUI_Context.ClipRect.x0) { x0 = GUI_Context.ClipRect.x0; } \
+ if (x1 > GUI_Context.ClipRect.x1) { x1 = GUI_Context.ClipRect.x1; }
+
+#define CLIP_Y() \
+ if (y0 < GUI_Context.ClipRect.y0) { y0 = GUI_Context.ClipRect.y0; } \
+ if (y1 > GUI_Context.ClipRect.y1) { y1 = GUI_Context.ClipRect.y1; }
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_DrawVLine
+*/
+void LCD_DrawVLine(int x, int y0, int y1) {
+ /* Perform clipping and check if there is something to do */
+ RETURN_IF_X_OUT();
+ CLIP_Y();
+ if (y1 < y0) {
+ return;
+ }
+ /* Call driver to draw */
+ LCDDEV_L0_DrawVLine(x, y0, y1);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_GetColorIndex.c b/User/lib/lcd/gui/Core/LCD_GetColorIndex.c
new file mode 100644
index 0000000..493b955
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_GetColorIndex.c
@@ -0,0 +1,45 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_GetColorIndex.c
+Purpose : Implementation of different LCD_GetColorIndex routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Private.h"
+#include "GUI_Protected.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_GetBkColorIndex
+*/
+int LCD_GetBkColorIndex(void) {
+ return LCD_BKCOLORINDEX;
+}
+
+/*********************************************************************
+*
+* LCD_GetColorIndex
+*/
+int LCD_GetColorIndex(void) {
+ return LCD_COLORINDEX;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_GetEx.c b/User/lib/lcd/gui/Core/LCD_GetEx.c
new file mode 100644
index 0000000..f50bd23
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_GetEx.c
@@ -0,0 +1,585 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_GetEx.C
+Purpose : Routines returning info at runtime
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "LCD.h" /* interface definitions */
+#include "LCD_Private.h" /* private modul definitions & config */
+
+/*********************************************************************
+ *
+ * Public code
+ *
+ **********************************************************************
+ */
+/*********************************************************************
+ *
+ * LCD_GetXSizeEx
+ */
+int LCD_GetXSizeEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_XSIZE;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_XSIZE_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_XSIZE_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_XSIZE_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_XSIZE_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetYSizeEx
+ */
+int LCD_GetYSizeEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_YSIZE;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_YSIZE_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_YSIZE_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_YSIZE_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_YSIZE_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetVXSizeEx
+ */
+int LCD_GetVXSizeEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_VXSIZE;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_VXSIZE_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_VXSIZE_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_VXSIZE_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_VXSIZE_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetVYSizeEx
+ */
+int LCD_GetVYSizeEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_VYSIZE;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_VYSIZE_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_VYSIZE_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_VYSIZE_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_VYSIZE_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetBitsPerPixelEx
+ */
+int LCD_GetBitsPerPixelEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_BITSPERPIXEL;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_BITSPERPIXEL_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_BITSPERPIXEL_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_BITSPERPIXEL_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_BITSPERPIXEL_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetBitsPerPixel_L0Ex
+ */
+int LCD_GetBitsPerPixel_L0Ex(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_BITSPERPIXEL_L0;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_BITSPERPIXEL_L0_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_BITSPERPIXEL_L0_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_BITSPERPIXEL_L0_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_BITSPERPIXEL_L0_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetNumColorsEx
+ */
+U32 LCD_GetNumColorsEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_NUM_COLORS;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_NUM_COLORS_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_NUM_COLORS_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_NUM_COLORS_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_NUM_COLORS_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetYMagEx
+ */
+int LCD_GetYMagEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_YMAG;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_YMAG_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_YMAG_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_YMAG_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_YMAG_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetXMagEx
+ */
+int LCD_GetXMagEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_XMAG;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_XMAG_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_XMAG_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_XMAG_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_XMAG_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetFixedPaletteEx
+ */
+I32 LCD_GetFixedPaletteEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_FIXEDPALETTE;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_FIXEDPALETTE_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_FIXEDPALETTE_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_FIXEDPALETTE_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_FIXEDPALETTE_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetMirrorXEx
+ */
+int LCD_GetMirrorXEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_MIRROR_X;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_MIRROR_X_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_MIRROR_X_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_MIRROR_X_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_MIRROR_X_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetMirrorYEx
+ */
+int LCD_GetMirrorYEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_MIRROR_Y;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_MIRROR_Y_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_MIRROR_Y_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_MIRROR_Y_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_MIRROR_Y_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetSwapXYEx
+ */
+int LCD_GetSwapXYEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_SWAP_XY;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_SWAP_XY_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_SWAP_XY_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_SWAP_XY_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_SWAP_XY_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetSwapRBEx
+ */
+int LCD_GetSwapRBEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_SWAP_RB;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_SWAP_RB_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_SWAP_RB_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_SWAP_RB_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_SWAP_RB_4;
+ }
+#endif
+ return 0;
+}
+
+/*********************************************************************
+ *
+ * LCD_GetDeltaModeEx
+ */
+int LCD_GetDeltaModeEx(int LayerIndex)
+{
+ if (LayerIndex == 0)
+ {
+ return LCD_DELTA_MODE;
+ }
+#if GUI_NUM_LAYERS > 1
+ if (LayerIndex == 1)
+ {
+ return LCD_DELTA_MODE_1;
+ }
+#endif
+#if GUI_NUM_LAYERS > 2
+ if (LayerIndex == 2)
+ {
+ return LCD_DELTA_MODE_2;
+ }
+#endif
+#if GUI_NUM_LAYERS > 3
+ if (LayerIndex == 3)
+ {
+ return LCD_DELTA_MODE_3;
+ }
+#endif
+#if GUI_NUM_LAYERS > 4
+ if (LayerIndex == 4)
+ {
+ return LCD_DELTA_MODE_4;
+ }
+#endif
+ return 0;
+}
+
+/************************* End of file ******************************/
diff --git a/User/lib/lcd/gui/Core/LCD_GetNumDisplays.c b/User/lib/lcd/gui/Core/LCD_GetNumDisplays.c
new file mode 100644
index 0000000..816c75b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_GetNumDisplays.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCDInfo1.C
+Purpose : Routines returning info at runtime
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "LCD.h" /* interface definitions */
+#include "LCD_Private.h" /* private modul definitions & config */
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_GetNumLayers
+*/
+int LCD_GetNumLayers(void) {
+ return GUI_NUM_LAYERS;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_GetPixelColor.c b/User/lib/lcd/gui/Core/LCD_GetPixelColor.c
new file mode 100644
index 0000000..75a1478
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_GetPixelColor.c
@@ -0,0 +1,39 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_GetPixelColor.c
+Purpose : Get Pixel routines
+ Note: These routines are in a module of their own
+ because they are mostly not required to link
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD.h" /* interface definitions */
+#include "LCD_Protected.h" /* inter modul definitions */
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_GetPixelColor
+*/
+LCD_COLOR LCD_GetPixelColor(int x, int y) {
+ return LCD_Index2Color(LCD_GetPixelIndex(x,y));
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_Index2ColorEx.c b/User/lib/lcd/gui/Core/LCD_Index2ColorEx.c
new file mode 100644
index 0000000..03452af
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_Index2ColorEx.c
@@ -0,0 +1,49 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_Index2ColorEx.c
+Purpose : Implementation of LCD_Index2ColorEx
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+#include "LCD_Private.h" /* Required for configuration, APIList */
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_Index2ColorEx
+*
+* Purpose:
+* Convert Index to color for the given display
+*/
+LCD_COLOR LCD_Index2ColorEx(int i, unsigned int LayerIndex) {
+ #if GUI_SUPPORT_DEVICES
+ LCD_COLOR r = 0;
+ if (LayerIndex < GUI_NUM_LAYERS) {
+ r = LCD_aAPI[LayerIndex]->pfIndex2Color(i);
+ }
+ return r;
+ #else
+ GUI_USE_PARA(LayerIndex);
+ return LCD_Index2Color(i);
+ #endif
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_L0_Generic.c b/User/lib/lcd/gui/Core/LCD_L0_Generic.c
new file mode 100644
index 0000000..1a6cb05
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_L0_Generic.c
@@ -0,0 +1,226 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_L0_Generic.c
+Purpose : Color conversion routines for LCD-drivers
+ This file may not be compiled by itself, but needs
+ to be included in every LCD driver
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#ifndef LCD_INCLUDEDRIVER_H /* includes only for stand-alone compilation, not as included file */
+ #include /* needed for definition of NULL */
+ #include "LCD_Private.h" /* private modul definitions & config */
+ #include "GUI_Private.h"
+ #include "GUIDebug.h"
+#endif
+
+/*********************************************************************
+*
+* Defines
+*
+**********************************************************************
+*/
+
+#define FIXEDPALETTE LCD_FIXEDPALETTE
+
+#if FIXEDPALETTE == -1 /* User defined color conversion routines */
+ #define COLOR2INDEX(Color) LCD_Color2Index_User(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_User(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_User()
+#elif FIXEDPALETTE == 0 /* User defined colors (LCD_PHYSCOLORS) */
+ #define COLOR2INDEX(Color) LCD_Color2Index_0(Color, &LCD_PhysPal)
+ #define INDEX2COLOR(Index) LCD_Index2Color_0(Index, &LCD_PhysPal)
+ #define GETINDEXMASK() LCD_GetIndexMask_0()
+#elif FIXEDPALETTE == 1
+ #define COLOR2INDEX(Color) LCD_Color2Index_1(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_1(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_1()
+#elif FIXEDPALETTE == 2
+ #define COLOR2INDEX(Color) LCD_Color2Index_2(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_2(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_2()
+#elif FIXEDPALETTE == 4
+ #define COLOR2INDEX(Color) LCD_Color2Index_4(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_4(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_4()
+#elif (FIXEDPALETTE == 111) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_111(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_111(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_111()
+#elif (FIXEDPALETTE == 111) && (LCD_SWAP_RB)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M111(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M111(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M111()
+#elif (FIXEDPALETTE == 222) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_222(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_222(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_222()
+#elif (FIXEDPALETTE == 222) && (LCD_SWAP_RB==1)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M222(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M222(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M222()
+#elif (FIXEDPALETTE == 233) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_233(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_233(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_233()
+#elif (FIXEDPALETTE == 233) && (LCD_SWAP_RB==1)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M233(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M233(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M233()
+#elif (FIXEDPALETTE == 323) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_323(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_323(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_323()
+#elif (FIXEDPALETTE == 323) && (LCD_SWAP_RB==1)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M323(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M323(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M323()
+#elif (FIXEDPALETTE == 332) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_332(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_332(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_332()
+#elif (FIXEDPALETTE == 332) && (LCD_SWAP_RB==1)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M332(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M332(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M332()
+#elif (FIXEDPALETTE == 444121)
+ #define COLOR2INDEX(Color) LCD_Color2Index_444_12_1(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_444_12_1(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_444_12_1()
+#elif (FIXEDPALETTE == 44412) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_444_12(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_444_12(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_444_12()
+#elif (FIXEDPALETTE == 44416) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_444_16(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_444_16(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_444_16()
+#elif (FIXEDPALETTE == 44412) && (LCD_SWAP_RB==1)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M444_12(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M444_12(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M444_12()
+#elif (FIXEDPALETTE == 44416) && (LCD_SWAP_RB==1)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M444_16(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M444_16(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M444_16()
+#elif (FIXEDPALETTE == 555) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_555(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_555(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_555()
+#elif (FIXEDPALETTE == 555) && (LCD_SWAP_RB)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M555(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M555(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M555()
+#elif (FIXEDPALETTE == 556) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_556(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_556(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_556()
+#elif (FIXEDPALETTE == 556) && (LCD_SWAP_RB)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M556(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M556(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M556()
+#elif (FIXEDPALETTE == 565) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_565(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_565(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_565()
+#elif (FIXEDPALETTE == 565) && (LCD_SWAP_RB)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M565(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M565(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M565()
+#elif (FIXEDPALETTE == 655) && (LCD_SWAP_RB==0)
+ #define COLOR2INDEX(Color) LCD_Color2Index_655(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_655(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_655()
+#elif (FIXEDPALETTE == 655) && (LCD_SWAP_RB)
+ #define COLOR2INDEX(Color) LCD_Color2Index_M655(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_M655(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_M655()
+#elif FIXEDPALETTE == 8666
+ #define COLOR2INDEX(Color) LCD_Color2Index_8666(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_8666(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_8666()
+#elif FIXEDPALETTE == 86661
+ #define COLOR2INDEX(Color) LCD_Color2Index_8666_1(Color)
+ #define INDEX2COLOR(Index) LCD_Index2Color_8666_1(Index)
+ #define GETINDEXMASK() LCD_GetIndexMask_8666_1()
+#else
+ #error Unsupported color mode
+#endif
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+#if (LCD_FIXEDPALETTE==0)
+ #if !LCD_PHYSCOLORS_IN_RAM
+ const
+ #endif
+ LCD_COLOR LCD_PhysColors[] = { LCD_PHYSCOLORS };
+ const LCD_PHYSPALETTE LCD_PhysPal = { LCD_NUM_COLORS, &LCD_PhysColors[0] };
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_L0_Color2Index
+*/
+unsigned int LCD_L0_Color2Index(LCD_COLOR Color) {
+ unsigned int Index;
+ Index = COLOR2INDEX(Color);
+ #if LCD_REVERSE
+ Index ^= ((1<x0 = 0;
+ pRect->y0 = 0;
+ pRect->x1 = LCD_XSIZE - 1;
+ pRect->y1 = LCD_YSIZE - 1;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_Mirror.c b/User/lib/lcd/gui/Core/LCD_Mirror.c
new file mode 100644
index 0000000..37a9cf3
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_Mirror.c
@@ -0,0 +1,65 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_Mirror.c
+Purpose : Data for 8 bit mirroring
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI.h"
+#include "LCD_Protected.h" /* private modul definitions & config */
+
+
+/*********************************************************************
+*
+* Public data
+*
+**********************************************************************
+*/
+GUI_CONST_STORAGE U8 LCD_aMirror[256] = {
+ ________, X_______, _X______, XX______, __X_____, X_X_____, _XX_____, XXX_____,
+ ___X____, X__X____, _X_X____, XX_X____, __XX____, X_XX____, _XXX____, XXXX____,
+ ____X___, X___X___, _X__X___, XX__X___, __X_X___, X_X_X___, _XX_X___, XXX_X___,
+ ___XX___, X__XX___, _X_XX___, XX_XX___, __XXX___, X_XXX___, _XXXX___, XXXXX___,
+ _____X__, X____X__, _X___X__, XX___X__, __X__X__, X_X__X__, _XX__X__, XXX__X__,
+ ___X_X__, X__X_X__, _X_X_X__, XX_X_X__, __XX_X__, X_XX_X__, _XXX_X__, XXXX_X__,
+ ____XX__, X___XX__, _X__XX__, XX__XX__, __X_XX__, X_X_XX__, _XX_XX__, XXX_XX__,
+ ___XXX__, X__XXX__, _X_XXX__, XX_XXX__, __XXXX__, X_XXXX__, _XXXXX__, XXXXXX__,
+ ______X_, X_____X_, _X____X_, XX____X_, __X___X_, X_X___X_, _XX___X_, XXX___X_,
+ ___X__X_, X__X__X_, _X_X__X_, XX_X__X_, __XX__X_, X_XX__X_, _XXX__X_, XXXX__X_,
+ ____X_X_, X___X_X_, _X__X_X_, XX__X_X_, __X_X_X_, X_X_X_X_, _XX_X_X_, XXX_X_X_,
+ ___XX_X_, X__XX_X_, _X_XX_X_, XX_XX_X_, __XXX_X_, X_XXX_X_, _XXXX_X_, XXXXX_X_,
+ _____XX_, X____XX_, _X___XX_, XX___XX_, __X__XX_, X_X__XX_, _XX__XX_, XXX__XX_,
+ ___X_XX_, X__X_XX_, _X_X_XX_, XX_X_XX_, __XX_XX_, X_XX_XX_, _XXX_XX_, XXXX_XX_,
+ ____XXX_, X___XXX_, _X__XXX_, XX__XXX_, __X_XXX_, X_X_XXX_, _XX_XXX_, XXX_XXX_,
+ ___XXXX_, X__XXXX_, _X_XXXX_, XX_XXXX_, __XXXXX_, X_XXXXX_, _XXXXXX_, XXXXXXX_,
+ _______X, X______X, _X_____X, XX_____X, __X____X, X_X____X, _XX____X, XXX____X,
+ ___X___X, X__X___X, _X_X___X, XX_X___X, __XX___X, X_XX___X, _XXX___X, XXXX___X,
+ ____X__X, X___X__X, _X__X__X, XX__X__X, __X_X__X, X_X_X__X, _XX_X__X, XXX_X__X,
+ ___XX__X, X__XX__X, _X_XX__X, XX_XX__X, __XXX__X, X_XXX__X, _XXXX__X, XXXXX__X,
+ _____X_X, X____X_X, _X___X_X, XX___X_X, __X__X_X, X_X__X_X, _XX__X_X, XXX__X_X,
+ ___X_X_X, X__X_X_X, _X_X_X_X, XX_X_X_X, __XX_X_X, X_XX_X_X, _XXX_X_X, XXXX_X_X,
+ ____XX_X, X___XX_X, _X__XX_X, XX__XX_X, __X_XX_X, X_X_XX_X, _XX_XX_X, XXX_XX_X,
+ ___XXX_X, X__XXX_X, _X_XXX_X, XX_XXX_X, __XXXX_X, X_XXXX_X, _XXXXX_X, XXXXXX_X,
+ ______XX, X_____XX, _X____XX, XX____XX, __X___XX, X_X___XX, _XX___XX, XXX___XX,
+ ___X__XX, X__X__XX, _X_X__XX, XX_X__XX, __XX__XX, X_XX__XX, _XXX__XX, XXXX__XX,
+ ____X_XX, X___X_XX, _X__X_XX, XX__X_XX, __X_X_XX, X_X_X_XX, _XX_X_XX, XXX_X_XX,
+ ___XX_XX, X__XX_XX, _X_XX_XX, XX_XX_XX, __XXX_XX, X_XXX_XX, _XXXX_XX, XXXXX_XX,
+ _____XXX, X____XXX, _X___XXX, XX___XXX, __X__XXX, X_X__XXX, _XX__XXX, XXX__XXX,
+ ___X_XXX, X__X_XXX, _X_X_XXX, XX_X_XXX, __XX_XXX, X_XX_XXX, _XXX_XXX, XXXX_XXX,
+ ____XXXX, X___XXXX, _X__XXXX, XX__XXXX, __X_XXXX, X_X_XXXX, _XX_XXXX, XXX_XXXX,
+ ___XXXXX, X__XXXXX, _X_XXXXX, XX_XXXXX, __XXXXXX, X_XXXXXX, _XXXXXXX, XXXXXXXX
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_MixColors256.c b/User/lib/lcd/gui/Core/LCD_MixColors256.c
new file mode 100644
index 0000000..ad94378
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_MixColors256.c
@@ -0,0 +1,57 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_MixColors256.c
+Purpose : Implementation of LCD_MixColors256
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "LCD.h"
+#include "GUI_Private.h"
+#include "LCD_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_MixColors256
+*
+* Purpose:
+* Mix 2 colors.
+*
+* Parameters:
+* Intens: Intensity of first color in 257 steps, from 0 to 256, where 256 equals 100%
+*/
+LCD_COLOR LCD_MixColors256(LCD_COLOR Color, LCD_COLOR BkColor, unsigned Intens) {
+ /* Calc Color seperations for FgColor first */
+ U32 R = (Color & 0xff) * Intens;
+ U32 G = (Color & 0xff00) * Intens;
+ U32 B = (Color & 0xff0000)* Intens;
+ /* Add Color seperations for BkColor */
+ Intens = 256 - Intens;
+ R += (BkColor & 0xff) * Intens;
+ G += (BkColor & 0xff00) * Intens;
+ B += (BkColor & 0xff0000) * Intens;
+ R = (R >> 8);
+ G = (G >> 8) & 0xff00;
+ B = (B >> 8) & 0xff0000;
+ return R + G + B;
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_Private.h b/User/lib/lcd/gui/Core/LCD_Private.h
new file mode 100644
index 0000000..b338292
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_Private.h
@@ -0,0 +1,117 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* �C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_Private.h
+Purpose : Internals of the LCD level
+----------------------------------------------------------------------
+*/
+
+#ifndef LCD_Private_H
+#define LCD_Private_H
+
+#include "LCD_ConfDefaults.h" /* Configuration header file */
+#include "LCD_Protected.h"
+#include "GUI.h"
+
+typedef struct
+{
+ LCD_COLOR *paColor;
+ I16 NumEntries;
+} LCD_LUT_INFO;
+
+#if LCD_PHYSCOLORS_IN_RAM
+#if (LCD_FIXEDPALETTE == 0)
+#if (LCD_FIXEDPALETTE == 0)
+extern LCD_COLOR LCD_PhysColors[1 << LCD_BITSPERPIXEL];
+#endif
+#endif
+#if (GUI_NUM_LAYERS > 1)
+#if (LCD_FIXEDPALETTE_1 == 0)
+extern LCD_COLOR LCD_PhysColors_1[1 << LCD_BITSPERPIXEL_1];
+#endif
+#endif
+#if (GUI_NUM_LAYERS > 2)
+#if (LCD_FIXEDPALETTE_2 == 0)
+extern LCD_COLOR LCD_PhysColors_2[1 << LCD_BITSPERPIXEL_2];
+#endif
+#endif
+#if (GUI_NUM_LAYERS > 3)
+#if (LCD_FIXEDPALETTE_3 == 0)
+extern LCD_COLOR LCD_PhysColors_3[1 << LCD_BITSPERPIXEL_3];
+#endif
+#endif
+#if (GUI_NUM_LAYERS > 4)
+#if (LCD_FIXEDPALETTE_4 == 0)
+extern LCD_COLOR LCD_PhysColors_4[1 << LCD_BITSPERPIXEL_4];
+#endif
+#endif
+#endif
+
+#if GUI_COMPILER_SUPPORTS_FP
+
+extern const struct tLCDDEV_APIList_struct * /* const */ LCD_aAPI[GUI_NUM_LAYERS];
+
+const tLCDDEV_APIList *LCD_SetAPI(const tLCDDEV_APIList *pAPI, int Index);
+
+#endif
+
+#if (LCD_BITSPERPIXEL <= 8) && (GUI_NUM_LAYERS < 2)
+#define LCD_BKCOLORINDEX GUI_Context.GLCD.aColorIndex8[0]
+#define LCD_COLORINDEX GUI_Context.GLCD.aColorIndex8[1]
+#define LCD_ACOLORINDEX GUI_Context.GLCD.aColorIndex8
+#else
+#define LCD_BKCOLORINDEX GUI_Context.GLCD.aColorIndex16[0]
+#define LCD_COLORINDEX GUI_Context.GLCD.aColorIndex16[1]
+#define LCD_ACOLORINDEX GUI_Context.GLCD.aColorIndex16
+#endif
+
+extern LCD_PIXELINDEX LCD__aConvTable[LCD_MAX_LOG_COLORS];
+void LCD_DrawBitmap(int x0, int y0,
+ int xsize, int ysize,
+ int xMul, int yMul,
+ int BitsPerPixel,
+ int BytesPerLine,
+ const U8 GUI_UNI_PTR *pPixel,
+ const LCD_PIXELINDEX *pTrans);
+void LCD_UpdateColorIndices(void);
+
+/*********************************************************************
+ *
+ * Support for Segment/COMLUTs
+ *
+ **********************************************************************
+ */
+
+#define LCD_TYPE_SEGTRANS U16
+#define LCD_TYPE_COMTRANS U16
+
+#ifdef LCD_LUT_COM
+#ifdef LCDCOLOR_C
+LCD_TYPE_COMTRANS LCD__aLine2Com0[LCD_YSIZE] = {LCD_LUT_COM};
+#else
+extern LCD_TYPE_COMTRANS LCD__aLine2Com0[LCD_YSIZE];
+#endif
+#endif
+
+#ifdef LCD_LUT_SEG
+#ifdef LCDCOLOR_C
+LCD_TYPE_SEGTRANS LCD__aCol2Seg0[LCD_XSIZE] = {LCD_LUT_SEG};
+#else
+extern LCD_TYPE_COMTRANS LCD__aCol2Seg0[LCD_XSIZE];
+#endif
+#endif
+
+#endif /* Avoid multiple inclusion */
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_Protected.h b/User/lib/lcd/gui/Core/LCD_Protected.h
new file mode 100644
index 0000000..fc08f2c
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_Protected.h
@@ -0,0 +1,255 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_Protected.h
+Purpose : Internals of the LCD level
+----------------------------------------------------------------------
+*/
+
+#ifndef LCD_INTERN_H
+#define LCD_INTERN_H
+
+#include "LCD.h"
+
+/*********************************************************************
+*
+* Data types
+*
+**********************************************************************
+*/
+
+typedef struct {
+ int NumEntries;
+ const LCD_COLOR* pPalEntries;
+} LCD_PHYSPALETTE;
+
+/*********************************************************************
+*
+* Data
+*
+**********************************************************************
+*/
+extern GUI_CONST_STORAGE U8 LCD_aMirror[256];
+
+
+/********************************************************
+*
+* Color conversion routines (used internally only !
+*
+*********************************************************
+*/
+unsigned LCD_Color2Index_User (LCD_COLOR Color);
+unsigned LCD_Color2Index_0 (LCD_COLOR Color, const LCD_PHYSPALETTE* pPhysPal);
+unsigned LCD_Color2Index_1 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M1 (LCD_COLOR Color);
+unsigned LCD_Color2Index_2 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M2 (LCD_COLOR Color);
+unsigned LCD_Color2Index_4 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M4 (LCD_COLOR Color);
+unsigned LCD_Color2Index_111 (LCD_COLOR Color);
+unsigned LCD_Color2Index_222 (LCD_COLOR Color);
+unsigned LCD_Color2Index_233 (LCD_COLOR Color);
+unsigned LCD_Color2Index_323 (LCD_COLOR Color);
+unsigned LCD_Color2Index_332 (LCD_COLOR Color);
+unsigned LCD_Color2Index_444_12 (LCD_COLOR Color);
+unsigned LCD_Color2Index_444_12_1(LCD_COLOR Color);
+unsigned LCD_Color2Index_444_16 (LCD_COLOR Color);
+unsigned LCD_Color2Index_555 (LCD_COLOR Color);
+unsigned LCD_Color2Index_565 (LCD_COLOR Color);
+unsigned LCD_Color2Index_556 (LCD_COLOR Color);
+unsigned LCD_Color2Index_655 (LCD_COLOR Color);
+unsigned LCD_Color2Index_8666 (LCD_COLOR Color);
+unsigned LCD_Color2Index_8666_1 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M111 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M222 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M233 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M323 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M332 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M444_12 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M444_16 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M555 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M565 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M556 (LCD_COLOR Color);
+unsigned LCD_Color2Index_M655 (LCD_COLOR Color);
+
+LCD_COLOR LCD_Index2Color_User (int Index);
+LCD_COLOR LCD_Index2Color_0 (int Index, const LCD_PHYSPALETTE* pPhysPal);
+LCD_COLOR LCD_Index2Color_1 (int Index);
+LCD_COLOR LCD_Index2Color_2 (int Index);
+LCD_COLOR LCD_Index2Color_4 (int Index);
+LCD_COLOR LCD_Index2Color_111 (int Index);
+LCD_COLOR LCD_Index2Color_222 (int Index);
+LCD_COLOR LCD_Index2Color_233 (int Index);
+LCD_COLOR LCD_Index2Color_323 (int Index);
+LCD_COLOR LCD_Index2Color_332 (int Index);
+LCD_COLOR LCD_Index2Color_444_12 (int Index);
+LCD_COLOR LCD_Index2Color_444_12_1(int Index);
+LCD_COLOR LCD_Index2Color_444_16 (int Index);
+LCD_COLOR LCD_Index2Color_555 (int Index);
+LCD_COLOR LCD_Index2Color_565 (int Index);
+LCD_COLOR LCD_Index2Color_556 (int Index);
+LCD_COLOR LCD_Index2Color_655 (int Index);
+LCD_COLOR LCD_Index2Color_8666 (int Index);
+LCD_COLOR LCD_Index2Color_8666_1 (int Index);
+LCD_COLOR LCD_Index2Color_M111 (int Index);
+LCD_COLOR LCD_Index2Color_M222 (int Index);
+LCD_COLOR LCD_Index2Color_M233 (int Index);
+LCD_COLOR LCD_Index2Color_M323 (int Index);
+LCD_COLOR LCD_Index2Color_M332 (int Index);
+LCD_COLOR LCD_Index2Color_M444_12 (int Index);
+LCD_COLOR LCD_Index2Color_M444_16 (int Index);
+LCD_COLOR LCD_Index2Color_M555 (int Index);
+LCD_COLOR LCD_Index2Color_M565 (int Index);
+LCD_COLOR LCD_Index2Color_M556 (int Index);
+LCD_COLOR LCD_Index2Color_M655 (int Index);
+
+unsigned LCD_GetIndexMask_User (void);
+unsigned LCD_GetIndexMask_0 (void);
+unsigned LCD_GetIndexMask_1 (void);
+unsigned LCD_GetIndexMask_M1 (void);
+unsigned LCD_GetIndexMask_2 (void);
+unsigned LCD_GetIndexMask_M2 (void);
+unsigned LCD_GetIndexMask_4 (void);
+unsigned LCD_GetIndexMask_M4 (void);
+unsigned LCD_GetIndexMask_111 (void);
+unsigned LCD_GetIndexMask_222 (void);
+unsigned LCD_GetIndexMask_233 (void);
+unsigned LCD_GetIndexMask_323 (void);
+unsigned LCD_GetIndexMask_332 (void);
+unsigned LCD_GetIndexMask_444_12 (void);
+unsigned LCD_GetIndexMask_444_12_1(void);
+unsigned LCD_GetIndexMask_444_16 (void);
+unsigned LCD_GetIndexMask_555 (void);
+unsigned LCD_GetIndexMask_565 (void);
+unsigned LCD_GetIndexMask_556 (void);
+unsigned LCD_GetIndexMask_655 (void);
+unsigned LCD_GetIndexMask_8666 (void);
+unsigned LCD_GetIndexMask_8666_1 (void);
+unsigned LCD_GetIndexMask_M111 (void);
+unsigned LCD_GetIndexMask_M222 (void);
+unsigned LCD_GetIndexMask_M233 (void);
+unsigned LCD_GetIndexMask_M323 (void);
+unsigned LCD_GetIndexMask_M332 (void);
+unsigned LCD_GetIndexMask_M444_12 (void);
+unsigned LCD_GetIndexMask_M444_16 (void);
+unsigned LCD_GetIndexMask_M555 (void);
+unsigned LCD_GetIndexMask_M565 (void);
+unsigned LCD_GetIndexMask_M556 (void);
+unsigned LCD_GetIndexMask_M655 (void);
+
+void LCD_SelectLCD(void);
+
+/*********************************************************************
+*
+* Declarations for LCD_L0_
+*
+**********************************************************************
+
+ Prefixes are as follows:
+ LCD_L0_xxx ... Driver for first LCD
+ LCD_L0_1_xxx ... Driver for second LCD/layer
+ LCD_L0_2_xxx ... Driver for third LCD/layer
+ LCD_L0_MAG_xxx ... Driver for first LCD, magnification level (calling LCD_L0_xxx after magnification)
+ LCD_L0_DELTA_xxx ... Driver for first LCD, delta mode
+
+*/
+
+unsigned int LCD_L0_Color2Index (LCD_COLOR Color);
+unsigned int LCD_L0_1_Color2Index (LCD_COLOR Color);
+unsigned int LCD_L0_2_Color2Index (LCD_COLOR Color);
+unsigned int LCD_L0_3_Color2Index (LCD_COLOR Color);
+unsigned int LCD_L0_4_Color2Index (LCD_COLOR Color);
+void LCD_L0_DrawHLine (int x0, int y0, int x1);
+void LCD_L0_1_DrawHLine (int x0, int y0, int x1);
+void LCD_L0_2_DrawHLine (int x0, int y0, int x1);
+void LCD_L0_3_DrawHLine (int x0, int y0, int x1);
+void LCD_L0_4_DrawHLine (int x0, int y0, int x1);
+void LCD_L0_MAG_DrawHLine (int x0, int y0, int x1);
+void LCD_L0_DELTA_DrawHLine (int x0, int y0, int x1);
+void LCD_L0_DrawVLine (int x, int y0, int y1);
+void LCD_L0_1_DrawVLine (int x, int y0, int y1);
+void LCD_L0_2_DrawVLine (int x, int y0, int y1);
+void LCD_L0_3_DrawVLine (int x, int y0, int y1);
+void LCD_L0_4_DrawVLine (int x, int y0, int y1);
+void LCD_L0_MAG_DrawVLine (int x, int y0, int y1);
+void LCD_L0_DELTA_DrawVLine (int x, int y0, int y1);
+void LCD_L0_FillRect (int x0, int y0, int x1, int y1);
+void LCD_L0_1_FillRect (int x0, int y0, int x1, int y1);
+void LCD_L0_2_FillRect (int x0, int y0, int x1, int y1);
+void LCD_L0_3_FillRect (int x0, int y0, int x1, int y1);
+void LCD_L0_4_FillRect (int x0, int y0, int x1, int y1);
+void LCD_L0_MAG_FillRect (int x0, int y0, int x1, int y1);
+void LCD_L0_DELTA_FillRect (int x0, int y0, int x1, int y1);
+unsigned int LCD_L0_GetPixelIndex (int x, int y);
+unsigned int LCD_L0_1_GetPixelIndex (int x, int y);
+unsigned int LCD_L0_2_GetPixelIndex (int x, int y);
+unsigned int LCD_L0_3_GetPixelIndex (int x, int y);
+unsigned int LCD_L0_4_GetPixelIndex (int x, int y);
+unsigned int LCD_L0_MAG_GetPixelIndex (int x, int y);
+unsigned int LCD_L0_DELTA_GetPixelIndex (int x, int y);
+void LCD_L0_GetRect (LCD_RECT * pRect);
+void LCD_L0_1_GetRect (LCD_RECT * pRect);
+void LCD_L0_2_GetRect (LCD_RECT * pRect);
+void LCD_L0_3_GetRect (LCD_RECT * pRect);
+void LCD_L0_4_GetRect (LCD_RECT * pRect);
+void LCD_L0_SetPixelIndex (int x, int y, int ColorIndex);
+void LCD_L0_1_SetPixelIndex (int x, int y, int ColorIndex);
+void LCD_L0_2_SetPixelIndex (int x, int y, int ColorIndex);
+void LCD_L0_3_SetPixelIndex (int x, int y, int ColorIndex);
+void LCD_L0_4_SetPixelIndex (int x, int y, int ColorIndex);
+void LCD_L0_MAG_SetPixelIndex (int x, int y, int ColorIndex);
+void LCD_L0_DELTA_SetPixelIndex (int x, int y, int ColorIndex);
+void LCD_L0_XorPixel (int x, int y);
+void LCD_L0_1_XorPixel (int x, int y);
+void LCD_L0_2_XorPixel (int x, int y);
+void LCD_L0_3_XorPixel (int x, int y);
+void LCD_L0_4_XorPixel (int x, int y);
+void LCD_L0_MAG_XorPixel (int x, int y);
+void LCD_L0_DELTA_XorPixel (int x, int y);
+int LCD_L0_Init (void);
+int LCD_L0_1_Init (void);
+int LCD_L0_2_Init (void);
+int LCD_L0_3_Init (void);
+int LCD_L0_4_Init (void);
+int LCD_L0_MAG_Init (void);
+int LCD_L0_DELTA_Init (void);
+void LCD_L0_On (void);
+void LCD_L0_1_On (void);
+void LCD_L0_2_On (void);
+void LCD_L0_3_On (void);
+void LCD_L0_4_On (void);
+void LCD_L0_Off (void);
+void LCD_L0_1_Off (void);
+void LCD_L0_2_Off (void);
+void LCD_L0_3_Off (void);
+void LCD_L0_4_Off (void);
+void LCD_L0_SetLUTEntry (U8 Pos, LCD_COLOR color);
+void LCD_L0_1_SetLUTEntry (U8 Pos, LCD_COLOR color);
+void LCD_L0_2_SetLUTEntry (U8 Pos, LCD_COLOR color);
+void LCD_L0_3_SetLUTEntry (U8 Pos, LCD_COLOR color);
+void LCD_L0_4_SetLUTEntry (U8 Pos, LCD_COLOR color);
+
+void LCD_L0_ReInit (void); /* Reinitialize LCD using config-paramters */
+void LCD_L0_Refresh (void); /* Refresh entire LCD */
+ /* Refresh LCD partially. Could be one line, depends on what
+ the LCD controller can handle efficiently */
+void LCD_L0_SetOrg (int x, int y);
+
+
+#endif /* LCD_INTERN_H */
+
+
+
+/*************************** End of file ****************************/
+
diff --git a/User/lib/lcd/gui/Core/LCD_Rotate180.c b/User/lib/lcd/gui/Core/LCD_Rotate180.c
new file mode 100644
index 0000000..f6c338d
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_Rotate180.c
@@ -0,0 +1,265 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_Rotate180.c
+Purpose : Implementation of GUI_SetRotation
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+#include "LCD.h"
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+#if GUI_SUPPORT_ROTATION
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawBitLine1BPP
+*/
+static void _DrawBitLine1BPP(int x, int y, U8 const GUI_UNI_PTR *p, int Diff, int xsize, const LCD_PIXELINDEX*pTrans) {
+ LCD_PIXELINDEX Index0 = *(pTrans+0);
+ LCD_PIXELINDEX Index1 = *(pTrans+1);
+ x -= Diff;
+ switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS | LCD_DRAWMODE_XOR)) {
+ case 0:
+ do {
+ LCDDEV_L0_SetPixelIndex(x--, y, (*p & (0x80 >> Diff)) ? Index1 : Index0);
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ case LCD_DRAWMODE_TRANS:
+ do {
+ if (*p & (0x80 >> Diff))
+ LCDDEV_L0_SetPixelIndex(x, y, Index1);
+ x--;
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ case LCD_DRAWMODE_XOR:;
+ do {
+ if (*p & (0x80 >> Diff)) {
+ int Pixel = LCD_L0_GetPixelIndex(x, y);
+ LCDDEV_L0_SetPixelIndex(x, y, LCD_NUM_COLORS - 1 - Pixel);
+ }
+ x--;
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ }
+}
+
+/*********************************************************************
+*
+* _DrawBitmap
+*
+* Purpose:
+* Draws a bitmap (1bpp) rotated by 180 degrees.
+*/
+static void _DrawBitmap(int x0, int y0,
+ int xsize, int ysize,
+ int BitsPerPixel,
+ int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff,
+ const LCD_PIXELINDEX* pTrans)
+{
+ int i;
+ /* Use _DrawBitLineXBPP */
+ for (i = 0; i < ysize; i++) {
+ switch (BitsPerPixel) {
+ case 1:
+ _DrawBitLine1BPP(x0, y0 - i, pData, Diff, xsize, pTrans);
+ break;
+ }
+ pData += BytesPerLine;
+ }
+}
+
+/*********************************************************************
+*
+* _Rect2TextRect
+*
+* Purpose:
+* This function transforms a given rectangle (window coordinates)
+* to the rectangle used to clip the text.
+*/
+static void _Rect2TextRect(GUI_RECT * pRect) {
+ GUI_USE_PARA(pRect);
+ /* nothing to do in case of rotating text by 180 degrees */
+}
+
+/*********************************************************************
+*
+* _TransformPoint180
+*
+* Purpose:
+* This function transforms an unrotated point (window
+* coordinates) into a rotated point in desktop coordinates
+* and handles the rotation of the current text rectangle.
+*/
+static void _TransformPoint180(int * pXPos, int * pYPos) {
+ GUI_RECT ClientRect = {0};
+ int xPos, yPos, xNumPixel, yNumPixel;
+ /* Get the client rectangle */
+ #if GUI_WINSUPPORT
+ WM_GetWindowRect(&ClientRect);
+ #else
+ GUI_GetClientRect(&ClientRect);
+ #endif
+ xNumPixel = LCD_GetXSize() - 1;
+ yNumPixel = LCD_GetYSize() - 1;
+ if (ClientRect.x1 > xNumPixel) {
+ ClientRect.x1 = xNumPixel;
+ }
+ if (ClientRect.y1 > yNumPixel) {
+ ClientRect.y1 = yNumPixel;
+ }
+ /* Save old positions */
+ xPos = *pXPos;
+ yPos = *pYPos;
+ /* Handle rotation of text rectangle */
+ *pXPos = ClientRect.x0 + GUI_RectDispString.x1 - (xPos - GUI_RectDispString.x0);
+ *pYPos = ClientRect.y0 + GUI_RectDispString.y1 - (yPos - GUI_RectDispString.y0);
+}
+
+/*********************************************************************
+*
+* _DrawBitmap180
+*/
+static void _DrawBitmap180(int x0, int y0, int xsize, int ysize, int xMul, int yMul,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pPixel, const LCD_PIXELINDEX* pTrans)
+{
+ U8 Data = 0;
+ int x1, y1;
+ /* Handle the optional Y-magnification */
+ y1 = y0 + ysize - 1;
+ x1 = x0 + xsize - 1;
+ /* Rotate positions */
+ _TransformPoint180(&x0, &y0);
+ _TransformPoint180(&x1, &y1);
+ /* Handle BITMAP without magnification */
+ if ((xMul == 1) && (yMul == 1)) {
+ int Diff;
+ /* Clip top */
+ if (y0 > GUI_Context.ClipRect.y1) {
+ int Diff = y0 - GUI_Context.ClipRect.y1;
+ y0 = GUI_Context.ClipRect.y1;
+ pPixel += Diff * BytesPerLine;
+ ysize -= Diff;
+ }
+ /* Clip bottom */
+ if (y1 < GUI_Context.ClipRect.y0) {
+ int Diff = GUI_Context.ClipRect.y0 - y1;
+ ysize -= Diff;
+ }
+ if (ysize <= 0) {
+ return;
+ }
+ /* Clip right side */
+ if (x1 < GUI_Context.ClipRect.x0) {
+ int Diff = GUI_Context.ClipRect.x0 - x1;
+ xsize -= Diff;
+ }
+ /* Clip left side */
+ Diff = 0;
+ if (x0 > GUI_Context.ClipRect.x1) {
+ Diff = x0 - GUI_Context.ClipRect.x1;
+ xsize -= Diff;
+ switch (BitsPerPixel) {
+ case 1:
+ pPixel += (Diff >> 3); x0 += (Diff >> 3) << 3; Diff &= 7;
+ break;
+ }
+ }
+ if (xsize <= 0) {
+ return;
+ }
+ _DrawBitmap(x0, y0, xsize, ysize, BitsPerPixel, BytesPerLine, pPixel, Diff, pTrans);
+ } else {
+ /* Handle BITMAP with magnification */
+ int x, y;
+ int yi;
+ int Shift = 8 - BitsPerPixel;
+ for (y = y0, yi = 0; yi < ysize; yi++, y -= yMul, pPixel += BytesPerLine) {
+ int yMax = y + yMul - 1;
+ /* Draw if within clip area (Optimization ... "if" is not required !) */
+ if ((yMax >= GUI_Context.ClipRect.y0) && (y <= GUI_Context.ClipRect.y1)) {
+ int BitsLeft = 0;
+ int xi;
+ const U8 GUI_UNI_PTR * pDataLine = pPixel;
+ for (x = x0, xi = 0; xi < xsize; xi++, x -= xMul) {
+ U8 Index;
+ if (!BitsLeft) {
+ Data = *pDataLine++;
+ BitsLeft =8;
+ }
+ Index = Data >> Shift;
+ Data <<= BitsPerPixel;
+ BitsLeft -= BitsPerPixel;
+ if (Index || ((GUI_Context.DrawMode & LCD_DRAWMODE_TRANS) == 0)) {
+ LCD_PIXELINDEX OldColor = LCD_COLORINDEX;
+ if (pTrans) {
+ LCD_COLORINDEX = *(pTrans + Index);
+ } else {
+ LCD_COLORINDEX = Index;
+ }
+ LCD_FillRect(x - xMul + 1, y, x, yMax);
+ LCD_COLORINDEX = OldColor;
+ }
+ }
+ }
+ }
+ }
+}
+
+/*********************************************************************
+*
+* Global data
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_APIList180
+*
+* Purpose:
+* Function pointer table for rotating text 180
+*/
+tLCD_APIList LCD_APIList180 = {
+ (tLCD_DrawBitmap*)&_DrawBitmap180,
+ &_Rect2TextRect
+};
+
+#else
+void LCD_Rotate180_C(void);
+void LCD_Rotate180_C(void){}
+#endif
+
diff --git a/User/lib/lcd/gui/Core/LCD_RotateCCW.c b/User/lib/lcd/gui/Core/LCD_RotateCCW.c
new file mode 100644
index 0000000..e38381b
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_RotateCCW.c
@@ -0,0 +1,268 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_RotateCCW.c
+Purpose : Implementation of GUI_SetRotation
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+#include "LCD.h"
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+#if GUI_SUPPORT_ROTATION
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawBitLine1BPP
+*/
+static void _DrawBitLine1BPP(int x, int y, U8 const GUI_UNI_PTR *p, int Diff, int xsize, const LCD_PIXELINDEX*pTrans) {
+ LCD_PIXELINDEX Index0 = *(pTrans+0);
+ LCD_PIXELINDEX Index1 = *(pTrans+1);
+ y -= Diff;
+ switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS | LCD_DRAWMODE_XOR)) {
+ case 0:
+ do {
+ LCDDEV_L0_SetPixelIndex(x, y, (*p & (0x80 >> Diff)) ? Index1 : Index0);
+ y--;
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ case LCD_DRAWMODE_TRANS:
+ do {
+ if (*p & (0x80 >> Diff))
+ LCDDEV_L0_SetPixelIndex(x, y, Index1);
+ y--;
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ case LCD_DRAWMODE_XOR:;
+ do {
+ if (*p & (0x80 >> Diff)) {
+ int Pixel = LCD_L0_GetPixelIndex(x, y);
+ LCDDEV_L0_SetPixelIndex(x, y, LCD_NUM_COLORS - 1 - Pixel);
+ }
+ y--;
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ }
+}
+
+/*********************************************************************
+*
+* _DrawBitmap
+*
+* Purpose:
+* Draws a bitmap (1bpp) counter clockwise.
+*/
+static void _DrawBitmap(int x0, int y0,
+ int xsize, int ysize,
+ int BitsPerPixel,
+ int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff,
+ const LCD_PIXELINDEX* pTrans)
+{
+ int i;
+ /* Use _DrawBitLineXBPP */
+ for (i=0; ix1;
+ y1 = pRect->y1;
+ pRect->x1 = pRect->x0 + (y1 - pRect->y0);
+ pRect->y1 = pRect->y0 + (x1 - pRect->x0);
+}
+
+/*********************************************************************
+*
+* _TransformPointCCW
+*
+* Purpose:
+* This function transforms an unrotated point (window
+* coordinates) into a rotated point in desktop coordinates
+* and handles the rotation of the current text rectangle.
+*/
+static void _TransformPointCCW(int * pXPos, int * pYPos) {
+ GUI_RECT ClientRect = {0};
+ int xPos, yPos, xNumPixel, yNumPixel;
+ /* Get the client rectangle */
+ #if GUI_WINSUPPORT
+ WM_GetWindowRect(&ClientRect);
+ #else
+ GUI_GetClientRect(&ClientRect);
+ #endif
+ xNumPixel = LCD_GetXSize() - 1;
+ yNumPixel = LCD_GetYSize() - 1;
+ if (ClientRect.x1 > xNumPixel) {
+ ClientRect.x1 = xNumPixel;
+ }
+ if (ClientRect.y1 > yNumPixel) {
+ ClientRect.y1 = yNumPixel;
+ }
+ /* Save old positions */
+ xPos = *pXPos;
+ yPos = *pYPos;
+ /* Rotate and add window origin */
+ *pXPos = ClientRect.x0 + yPos;
+ *pYPos = ClientRect.y1 - xPos;
+ /* Handle rotation of text rectangle */
+ *pXPos = *pXPos + GUI_RectDispString.x0 - GUI_RectDispString.y0;
+ *pYPos = *pYPos + GUI_RectDispString.y1 - (ClientRect.y1 - ClientRect.y0) + GUI_RectDispString.x0;
+}
+
+/*********************************************************************
+*
+* _DrawBitmapCCW
+*/
+static void _DrawBitmapCCW(int x0, int y0, int xsize, int ysize, int xMul, int yMul,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pPixel, const LCD_PIXELINDEX* pTrans)
+{
+ U8 Data = 0;
+ int x1, y1;
+ /* Handle the optional Y-magnification */
+ y1 = y0 + ysize - 1;
+ x1 = x0 + xsize - 1;
+ /* Rotate positions */
+ _TransformPointCCW(&x0, &y0);
+ _TransformPointCCW(&x1, &y1);
+ /* Handle BITMAP without magnification */
+ if ((xMul == 1) && (yMul == 1)) {
+ int Diff = 0;
+ /* Clip top */
+ if (y1 < GUI_Context.ClipRect.y0) {
+ int Diff = GUI_Context.ClipRect.y0 - y1;
+ xsize -= Diff;
+ }
+ /* Clip bottom */
+ if (y0 > GUI_Context.ClipRect.y1) {
+ Diff = y0 - GUI_Context.ClipRect.y1;
+ xsize -= Diff;
+ switch (BitsPerPixel) {
+ case 1:
+ pPixel += (Diff >> 3); y0 -= (Diff >> 3) << 3; Diff &= 7;
+ break;
+ }
+ }
+ if (ysize <= 0) {
+ return;
+ }
+ /* Clip right side */
+ if (x1 > GUI_Context.ClipRect.x1) {
+ int Diff = x1 - GUI_Context.ClipRect.x1;
+ ysize -= Diff;
+ }
+ /* Clip left side */
+ if (x0 < GUI_Context.ClipRect.x0) {
+ int Diff = GUI_Context.ClipRect.x0 - x0;
+ pPixel += Diff * BytesPerLine;
+ x0 += Diff;
+ ysize -= Diff;
+ }
+ if (xsize <= 0) {
+ return;
+ }
+ _DrawBitmap(x0, y0, xsize, ysize, BitsPerPixel, BytesPerLine, pPixel, Diff, pTrans);
+ } else {
+ /* Handle BITMAP with magnification */
+ int x, y, xi, yi;
+ int Shift = 8 - BitsPerPixel;
+ for (x = x0, xi = 0; xi < ysize; xi++, x += yMul, pPixel += BytesPerLine) {
+ int xMax = x + yMul - 1;
+ if ((xMax >= GUI_Context.ClipRect.x0) && (x <= GUI_Context.ClipRect.x1)) {
+ int BitsLeft = 0;
+ const U8 GUI_UNI_PTR * pDataLine = pPixel;
+ for (y = y0, yi = 0; yi < xsize; yi++, y -= xMul) {
+ U8 Index;
+ if (!BitsLeft) {
+ Data = *pDataLine++;
+ BitsLeft =8;
+ }
+ Index = Data >> Shift;
+ Data <<= BitsPerPixel;
+ BitsLeft -= BitsPerPixel;
+ if (Index || ((GUI_Context.DrawMode & LCD_DRAWMODE_TRANS) == 0)) {
+ LCD_PIXELINDEX OldColor = LCD_COLORINDEX;
+ if (pTrans) {
+ LCD_COLORINDEX = *(pTrans + Index);
+ } else {
+ LCD_COLORINDEX = Index;
+ }
+ LCD_FillRect(x, y - xMul + 1, xMax, y);
+ LCD_COLORINDEX = OldColor;
+ }
+ }
+ }
+ }
+ }
+}
+
+/*********************************************************************
+*
+* Global data
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_APIListCCW
+*
+* Purpose:
+* Function pointer table for rotating text CCW
+*/
+tLCD_APIList LCD_APIListCCW = {
+ (tLCD_DrawBitmap*)&_DrawBitmapCCW,
+ &_Rect2TextRect
+};
+
+#else
+void LCD_RotateCCW_C(void);
+void LCD_RotateCCW_C(void){}
+#endif
+
diff --git a/User/lib/lcd/gui/Core/LCD_RotateCW.c b/User/lib/lcd/gui/Core/LCD_RotateCW.c
new file mode 100644
index 0000000..41da1f9
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_RotateCW.c
@@ -0,0 +1,269 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_RotateCW.c
+Purpose : Implementation of GUI_SetRotation
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_Private.h"
+#include "LCD.h"
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+#if GUI_SUPPORT_ROTATION
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _DrawBitLine1BPP
+*/
+static void _DrawBitLine1BPP(int x, int y, U8 const GUI_UNI_PTR *p, int Diff, int xsize, const LCD_PIXELINDEX*pTrans) {
+ LCD_PIXELINDEX Index0 = *(pTrans+0);
+ LCD_PIXELINDEX Index1 = *(pTrans+1);
+ y -= Diff;
+ switch (GUI_Context.DrawMode & (LCD_DRAWMODE_TRANS | LCD_DRAWMODE_XOR)) {
+ case 0:
+ do {
+ LCDDEV_L0_SetPixelIndex(x, y, (*p & (0x80 >> Diff)) ? Index1 : Index0);
+ y++;
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ case LCD_DRAWMODE_TRANS:
+ do {
+ if (*p & (0x80 >> Diff))
+ LCDDEV_L0_SetPixelIndex(x, y, Index1);
+ y++;
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ case LCD_DRAWMODE_XOR:;
+ do {
+ if (*p & (0x80 >> Diff)) {
+ int Pixel = LCD_L0_GetPixelIndex(x, y);
+ LCDDEV_L0_SetPixelIndex(x, y, LCD_NUM_COLORS - 1 - Pixel);
+ }
+ y++;
+ if (++Diff == 8) {
+ Diff = 0;
+ p++;
+ }
+ } while (--xsize);
+ break;
+ }
+}
+
+/*********************************************************************
+*
+* _DrawBitmap
+*
+* Purpose:
+* Draws a bitmap (1bpp) clockwise.
+*/
+static void _DrawBitmap(int x0, int y0,
+ int xsize, int ysize,
+ int BitsPerPixel,
+ int BytesPerLine,
+ const U8 GUI_UNI_PTR * pData, int Diff,
+ const LCD_PIXELINDEX* pTrans)
+{
+ int i;
+ /* Use _DrawBitLineXBPP */
+ for (i = 0; i < ysize; i++) {
+ switch (BitsPerPixel) {
+ case 1:
+ _DrawBitLine1BPP(x0 - i, y0, pData, Diff, xsize, pTrans);
+ break;
+ }
+ pData += BytesPerLine;
+ }
+}
+
+/*********************************************************************
+*
+* _Rect2TextRect
+*
+* Purpose:
+* This function transforms a given rectangle (window coordinates)
+* to the rectangle used to clip the text.
+*/
+static void _Rect2TextRect(GUI_RECT * pRect) {
+ int x1, y1;
+ x1 = pRect->x1;
+ y1 = pRect->y1;
+ pRect->x1 = pRect->x0 + (y1 - pRect->y0);
+ pRect->y1 = pRect->y0 + (x1 - pRect->x0);
+}
+
+/*********************************************************************
+*
+* _TransformPointCW
+*
+* Purpose:
+* This function transforms an unrotated point (window
+* coordinates) into a rotated point in desktop coordinates
+* and handles the rotation of the current text rectangle.
+*/
+static void _TransformPointCW(int * pXPos, int * pYPos) {
+ GUI_RECT ClientRect = {0};
+ int xPos, yPos, xNumPixel, yNumPixel;
+ /* Get the client rectangle */
+ #if GUI_WINSUPPORT
+ WM_GetWindowRect(&ClientRect);
+ #else
+ GUI_GetClientRect(&ClientRect);
+ #endif
+ xNumPixel = LCD_GetXSize() - 1;
+ yNumPixel = LCD_GetYSize() - 1;
+ if (ClientRect.x1 > xNumPixel) {
+ ClientRect.x1 = xNumPixel;
+ }
+ if (ClientRect.y1 > yNumPixel) {
+ ClientRect.y1 = yNumPixel;
+ }
+ /* Save old positions */
+ xPos = *pXPos;
+ yPos = *pYPos;
+ /* Rotate and add window origin */
+ *pXPos = ClientRect.x0 - yPos;
+ *pYPos = ClientRect.y0 + xPos;
+ /* Handle rotation of text rectangle */
+ *pXPos = *pXPos + GUI_RectDispString.x1 + GUI_RectDispString.y0;
+ *pYPos = *pYPos + GUI_RectDispString.y0 - GUI_RectDispString.x0;
+}
+
+/*********************************************************************
+*
+* _DrawBitmapCW
+*/
+static void _DrawBitmapCW(int x0, int y0, int xsize, int ysize, int xMul, int yMul,
+ int BitsPerPixel, int BytesPerLine,
+ const U8 GUI_UNI_PTR * pPixel, const LCD_PIXELINDEX* pTrans)
+{
+ U8 Data = 0;
+ int x1, y1;
+ /* Handle the optional Y-magnification */
+ y1 = y0 + ysize - 1;
+ x1 = x0 + xsize - 1;
+ /* Rotate positions */
+ _TransformPointCW(&x0, &y0);
+ _TransformPointCW(&x1, &y1);
+ /* Handle BITMAP without magnification */
+ if ((xMul == 1) && (yMul == 1)) {
+ int Diff = 0;
+ /* Clip top */
+ if (y1 > GUI_Context.ClipRect.y1) {
+ int Diff = y1 - GUI_Context.ClipRect.y1;
+ xsize -= Diff;
+ }
+ /* Clip bottom */
+ if (y0 < GUI_Context.ClipRect.y0) {
+ Diff = GUI_Context.ClipRect.y1 - y0;
+ xsize -= Diff;
+ switch (BitsPerPixel) {
+ case 1:
+ pPixel += (Diff >> 3); y0 -= (Diff >> 3) << 3; Diff &= 7;
+ break;
+ }
+ }
+ if (ysize <=0) {
+ return;
+ }
+ /* Clip right side */
+ if (x0 > GUI_Context.ClipRect.x1) {
+ int Diff = x0 - GUI_Context.ClipRect.x1;
+ ysize -= Diff;
+ x0 -= Diff;
+ pPixel += Diff * BytesPerLine;
+ }
+ /* Clip left side */
+ if (x1 < GUI_Context.ClipRect.x0) {
+ int Diff = GUI_Context.ClipRect.x0 - x1;
+ x1 += Diff;
+ ysize -= Diff;
+ }
+ if (xsize <= 0) {
+ return;
+ }
+ _DrawBitmap(x0, y0, xsize, ysize, BitsPerPixel, BytesPerLine, pPixel, Diff, pTrans);
+ } else {
+ /* Handle BITMAP with magnification */
+ int x, y, xi, yi;
+ int Shift = 8 - BitsPerPixel;
+ for (x = x0, xi = 0; xi < ysize; xi++, x -= yMul, pPixel += BytesPerLine) {
+ int xMax = x - yMul + 1;
+ if ((xMax >= GUI_Context.ClipRect.x0) && (x <= GUI_Context.ClipRect.x1)) {
+ int BitsLeft = 0;
+ const U8 GUI_UNI_PTR * pDataLine = pPixel;
+ for (y = y0, yi = 0; yi < xsize; yi++, y += xMul) {
+ U8 Index;
+ if (!BitsLeft) {
+ Data = *pDataLine++;
+ BitsLeft =8;
+ }
+ Index = Data >> Shift;
+ Data <<= BitsPerPixel;
+ BitsLeft -= BitsPerPixel;
+ if (Index || ((GUI_Context.DrawMode & LCD_DRAWMODE_TRANS) == 0)) {
+ LCD_PIXELINDEX OldColor = LCD_COLORINDEX;
+ if (pTrans) {
+ LCD_COLORINDEX = *(pTrans + Index);
+ } else {
+ LCD_COLORINDEX = Index;
+ }
+ LCD_FillRect(xMax, y, x, y + xMul - 1);
+ LCD_COLORINDEX = OldColor;
+ }
+ }
+ }
+ }
+ }
+}
+
+/*********************************************************************
+*
+* Global data
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_APIListCW
+*
+* Purpose:
+* Function pointer table for rotating text CW
+*/
+tLCD_APIList LCD_APIListCW = {
+ (tLCD_DrawBitmap*)&_DrawBitmapCW,
+ &_Rect2TextRect
+};
+
+#else
+void LCD_RotateCW_C(void);
+void LCD_RotateCW_C(void){}
+#endif
+
diff --git a/User/lib/lcd/gui/Core/LCD_SelectLCD.c b/User/lib/lcd/gui/Core/LCD_SelectLCD.c
new file mode 100644
index 0000000..93d6569
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_SelectLCD.c
@@ -0,0 +1,50 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_SelectLCD.c
+Purpose : Implementation of said routine
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+
+#include "GUI_Private.h"
+#if GUI_WINSUPPORT
+#include "WM.h"
+#endif
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _SelectLCD
+*/
+void LCD_SelectLCD(void) {
+ #if GUI_SUPPORT_DEVICES
+ #if GUI_NUM_LAYERS == 1
+ GUI_Context.pDeviceAPI = LCD_aAPI[0];
+ #else
+ GUI_Context.pDeviceAPI = LCD_aAPI[GUI_Context.SelLayer];
+ #endif
+ GUI_Context.hDevData = 0;
+ #endif
+ GUI_Context.pClipRect_HL = &GUI_Context.ClipRect;
+ LCD_SetClipRectMax();
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_SetAPI.c b/User/lib/lcd/gui/Core/LCD_SetAPI.c
new file mode 100644
index 0000000..70a710f
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_SetAPI.c
@@ -0,0 +1,61 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_SetAPI.C
+Purpose : Implementation of said function
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI_Private.h"
+#include "GUIDebug.h"
+#include "LCD_Private.h" /* Required for configuration, APIList */
+
+#if GUI_SUPPORT_DEVICES
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_SetAPI
+*
+* Purpose:
+* Sets the API table for a layer.
+* Some high level software (such as the VNC server, but maybe also the mouse "Cursor" module)
+* may need to override these pointers in order to link itself into the chain
+* of drawing routines.
+*/
+const tLCDDEV_APIList* LCD_SetAPI(const tLCDDEV_APIList* pAPI, int Index) {
+ const tLCDDEV_APIList* pOldAPI;
+ pOldAPI = LCD_aAPI[Index];
+ /* Also aplly changes to current context if LCD of this layer is selected */
+ if ((GUI_Context.SelLayer == Index) && (GUI_Context.hDevData == 0)) {
+ GUI_Context.pDeviceAPI = pAPI;
+ }
+ LCD_aAPI[Index] = pAPI;
+ return pOldAPI;
+}
+
+#else
+
+void LCD_SetAPI_C(void);
+void LCD_SetAPI_C(void) {}
+
+#endif
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_SetClipRectEx.c b/User/lib/lcd/gui/Core/LCD_SetClipRectEx.c
new file mode 100644
index 0000000..42df145
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_SetClipRectEx.c
@@ -0,0 +1,47 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_ClipRectEx.c
+Purpose : Implementation of optional routines
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Private.h"
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_SetClipRectEx
+*
+* Purpose:
+* This function is actually a driver function.
+* Since it is identical for all drivers with only one controller,
+* it is placed here.
+* For multi-controller systems, this routine is placed in the
+* distribution driver.
+*/
+
+void LCD_SetClipRectEx(const GUI_RECT* pRect) {
+ LCD_RECT r;
+ LCDDEV_L0_GetRect(&r);
+ GUI__IntersectRects(&GUI_Context.ClipRect, pRect, &r);
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/LCD_UpdateColorIndices.c b/User/lib/lcd/gui/Core/LCD_UpdateColorIndices.c
new file mode 100644
index 0000000..383b952
--- /dev/null
+++ b/User/lib/lcd/gui/Core/LCD_UpdateColorIndices.c
@@ -0,0 +1,38 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : LCD_UpdateColorIndices.c
+Purpose : Implementation of LCD_UpdateColorIndices
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "LCD_Private.h"
+#include "GUI_Private.h"
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* LCD_UpdateColorIndices
+*/
+void LCD_UpdateColorIndices(void) {
+ LCD_SetColorIndex(LCD_Color2Index(GUI_Context.Color));
+ LCD_SetBkColorIndex(LCD_Color2Index(GUI_Context.BkColor));
+}
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Core/vssver.scc b/User/lib/lcd/gui/Core/vssver.scc
new file mode 100644
index 0000000..9d43d93
Binary files /dev/null and b/User/lib/lcd/gui/Core/vssver.scc differ
diff --git a/User/lib/lcd/gui/Font/CCGUIFont.BAT b/User/lib/lcd/gui/Font/CCGUIFont.BAT
new file mode 100644
index 0000000..05b25a3
--- /dev/null
+++ b/User/lib/lcd/gui/Font/CCGUIFont.BAT
@@ -0,0 +1,54 @@
+@ECHO OFF
+
+ECHO CCGUIFont.BAT: Compiling GUI\Font
+
+CALL CC F08_1
+CALL CC F08_ASCII
+CALL CC F10S_1
+CALL CC F10S_ASCII
+CALL CC F10_1
+CALL CC F10_ASCII
+CALL CC F13B_1
+CALL CC F13B_ASCII
+CALL CC F13HB_1
+CALL CC F13HB_ASCII
+CALL CC F13H_1
+CALL CC F13H_ASCII
+CALL CC F13_1
+CALL CC F13_ASCII
+CALL CC F16B_1
+CALL CC F16B_ASCII
+CALL CC F16_1
+CALL CC F16_1HK
+CALL CC F16_ASCII
+CALL CC F16_HK
+CALL CC F24_1
+CALL CC F24_ASCII
+CALL CC F24B_1
+CALL CC F24B_ASCII
+CALL CC F32_1
+CALL CC F32_ASCII
+CALL CC F32B_1
+CALL CC F32B_ASCII
+CALL CC F4x6
+CALL CC F6x8
+CALL CC F8x10_ASCII
+CALL CC F8x12_ASCII
+CALL CC F8x13_1
+CALL CC F8x13_ASCII
+CALL CC F8x15B_1
+CALL CC F8x15B_ASCII
+CALL CC F8x16
+CALL CC F8x8
+CALL CC FComic18B_1
+CALL CC FComic18B_ASCII
+CALL CC FComic24B_1
+CALL CC FComic24B_ASCII
+CALL CC FD24x32
+CALL CC FD32
+CALL CC FD36x48
+CALL CC FD48
+CALL CC FD48x64
+CALL CC FD60x80
+CALL CC FD64
+CALL CC FD80
diff --git a/User/lib/lcd/gui/Font/F08_1.c b/User/lib/lcd/gui/Font/F08_1.c
new file mode 100644
index 0000000..4322ef1
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F08_1.c
@@ -0,0 +1,1017 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F8_1.C
+Purpose : ISO 8859-1, West European Character Set
+Height : 8
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+GUI_CONST_STORAGE unsigned char acFont8_1_160[8] = { /* code 160 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_161[8] = { /* code 161 */
+ ________,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______};
+GUI_CONST_STORAGE unsigned char acFont8_1_162[8] = { /* code 162 */
+ ________,
+ __X_____,
+ _XXX____,
+ X_X_____,
+ X_X_____,
+ X_X_X___,
+ _XXX____,
+ __X_____};
+GUI_CONST_STORAGE unsigned char acFont8_1_163[8] = { /* code 163 */
+ __XX____,
+ _X______,
+ _X______,
+ XXX_____,
+ _X______,
+ _X__X___,
+ X_XX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_164[8] = { /* code 164 */
+ ________,
+ ________,
+ X___X___,
+ _XXX____,
+ _X_X____,
+ _XXX____,
+ X___X___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_165[8] = { /* code 165 */
+ X___X___,
+ _X_X____,
+ XXXXX___,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_166[8] = { /* code 166 */
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_167[8] = { /* code 167 */
+ __XX____,
+ _X__X___,
+ __X_____,
+ _X_X____,
+ __X_____,
+ X__X____,
+ _XX_____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_168[8] = { /* code 168 */
+ X___X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_169[8] = { /* code 169 */
+ XXXXX___,
+ X___X___,
+ X_X_X___,
+ X_XXX___,
+ X_X_X___,
+ X___X___,
+ XXXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_170[8] = { /* code 170 */
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_171[8] = { /* code 171 */
+ ________,
+ __X_X___,
+ _X_X____,
+ X_X_____,
+ _X_X____,
+ __X_X___,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_172[8] = { /* code 172 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ____X___,
+ ____X___,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_173[8] = { /* code 173 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_174[8] = { /* code 174 */
+ XXXXX___,
+ X___X___,
+ X_X_X___,
+ X___X___,
+ X__XX___,
+ X_X_X___,
+ XXXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_175[8] = { /* code 175 */
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_176[8] = { /* code 176 */
+ __X_____,
+ _X_X____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_177[8] = { /* code 177 */
+ ________,
+ __X_____,
+ _XXX____,
+ __X_____,
+ ________,
+ _XXX____,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_178[8] = { /* code 178 */
+ _XX_____,
+ X__X____,
+ __X_____,
+ _X______,
+ XXXX____,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_179[8] = { /* code 179 */
+ XXX_____,
+ ___X____,
+ _XX_____,
+ ___X____,
+ XXX_____,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_180[8] = { /* code 180 */
+ ___XX___,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_181[8] = { /* code 181 */
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ XX__X___,
+ X_XX____,
+ X_______};
+GUI_CONST_STORAGE unsigned char acFont8_1_182[8] = { /* code 182 */
+ _XXXX___,
+ X__XX___,
+ X__XX___,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_183[8] = { /* code 183 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_184[8] = { /* code 184 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XX_____};
+GUI_CONST_STORAGE unsigned char acFont8_1_185[8] = { /* code 185 */
+ _X______,
+ XX______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_186[8] = { /* code 186 */
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_187[8] = { /* code 187 */
+ ________,
+ X_X_____,
+ _X_X____,
+ __X_X___,
+ _X_X____,
+ X_X_____,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_188[8] = { /* code 188 */
+ X___X___,
+ X__X____,
+ X_X_____,
+ _X_X____,
+ X_XX____,
+ _X_X____,
+ _XXXX___,
+ ___X____};
+GUI_CONST_STORAGE unsigned char acFont8_1_189[8] = { /* code 189 */
+ X___X___,
+ X__X____,
+ X_X_____,
+ _X______,
+ X_XXX___,
+ ____X___,
+ ___X____,
+ __XXX___};
+GUI_CONST_STORAGE unsigned char acFont8_1_190[8] = { /* code 190 */
+ XX______,
+ _X______,
+ XX______,
+ _X__X___,
+ XX_XX___,
+ __X_X___,
+ __XXX___,
+ ____X___};
+GUI_CONST_STORAGE unsigned char acFont8_1_191[8] = { /* code 191 */
+ ________,
+ __X_____,
+ ________,
+ __X_____,
+ __X_____,
+ _X______,
+ X___X___,
+ _XXX____};
+GUI_CONST_STORAGE unsigned char acFont8_1_192[8] = { /* code 192 */
+ ________,
+ __X_____,
+ ___X____,
+ __X_X___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_};
+GUI_CONST_STORAGE unsigned char acFont8_1_193[8] = { /* code 193 */
+ ________,
+ ____X___,
+ ___X____,
+ __X_X___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_};
+GUI_CONST_STORAGE unsigned char acFont8_1_194[8] = { /* code 194 */
+ ________,
+ ___X____,
+ __X_X___,
+ __XXX___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_};
+GUI_CONST_STORAGE unsigned char acFont8_1_195[8] = { /* code 195 */
+ ________,
+ __XX__X_,
+ _X__XX__,
+ __XXX___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_};
+GUI_CONST_STORAGE unsigned char acFont8_1_196[8] = { /* code 196 */
+ ________,
+ _X___X__,
+ ___X____,
+ __X_X___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_};
+GUI_CONST_STORAGE unsigned char acFont8_1_197[8] = { /* code 197 */
+ ________,
+ __XXX___,
+ __X_X___,
+ __XXX___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_};
+GUI_CONST_STORAGE unsigned char acFont8_1_198[8] = { /* code 198 */
+ ________,
+ ___XXXX_,
+ __X_X___,
+ _X__X___,
+ _X__XXX_,
+ _XXXX___,
+ X___X___,
+ X___XXX_};
+GUI_CONST_STORAGE unsigned char acFont8_1_199[8] = { /* code 199 */
+ ________,
+ _XXXX___,
+ X____X__,
+ X_______,
+ X_______,
+ X____X__,
+ _XXXXX__,
+ ____X___};
+GUI_CONST_STORAGE unsigned char acFont8_1_200[8] = { /* code 200 */
+ _X______,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ XXXXX___};
+GUI_CONST_STORAGE unsigned char acFont8_1_201[8] = { /* code 201 */
+ ___X____,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ XXXXX___};
+GUI_CONST_STORAGE unsigned char acFont8_1_202[8] = { /* code 202 */
+ _XXX____,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ XXXXX___};
+GUI_CONST_STORAGE unsigned char acFont8_1_203[8] = { /* code 203 */
+ _X_X____,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ XXXXX___};
+GUI_CONST_STORAGE unsigned char acFont8_1_204[8] = { /* code 204 */
+ ________,
+ X_______,
+ _X______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_205[8] = { /* code 205 */
+ ________,
+ _X______,
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_206[8] = { /* code 206 */
+ ________,
+ _X______,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_207[8] = { /* code 207 */
+ ________,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_208[8] = { /* code 208 */
+ _XXXX___,
+ _X___X__,
+ _X____X_,
+ XXXX__X_,
+ _X____X_,
+ _X___X__,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_209[8] = { /* code 209 */
+ _X_X____,
+ X____X__,
+ XX___X__,
+ X_X__X__,
+ X__X_X__,
+ X___XX__,
+ X____X__,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_210[8] = { /* code 210 */
+ _X______,
+ __X_____,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_211[8] = { /* code 211 */
+ ____X___,
+ ___X____,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_212[8] = { /* code 212 */
+ __X_____,
+ _X_X____,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_213[8] = { /* code 213 */
+ __X_X___,
+ _X_X____,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_214[8] = { /* code 214 */
+ _X__X___,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_215[8] = { /* code 215 */
+ ________,
+ X___X___,
+ _X_X____,
+ __X_____,
+ _X_X____,
+ X___X___,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_216[8] = { /* code 216 */
+ __XXX_X_,
+ _X___X__,
+ X___X_X_,
+ X__X__X_,
+ X_X___X_,
+ _X___X__,
+ X_XXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_217[8] = { /* code 217 */
+ __X_____,
+ ___X____,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_218[8] = { /* code 218 */
+ ___X____,
+ __X_____,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_219[8] = { /* code 219 */
+ __X_____,
+ _X_X____,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_220[8] = { /* code 220 */
+ _X__X___,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_221[8] = { /* code 221 */
+ ___X____,
+ X_X___X_,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_222[8] = { /* code 222 */
+ ________,
+ X_______,
+ XXXXX___,
+ X____X__,
+ X____X__,
+ XXXXX___,
+ X_______,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_223[8] = { /* code 223 */
+ ________,
+ _XXX____,
+ X___X___,
+ X__X____,
+ X__XX___,
+ X_X__X__,
+ X__XX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_224[8] = { /* code 224 */
+ __X_____,
+ ___X____,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_225[8] = { /* code 225 */
+ ___X____,
+ __X_____,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_226[8] = { /* code 226 */
+ __X_____,
+ _X_X____,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_227[8] = { /* code 227 */
+ __X_X___,
+ _X_X____,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_228[8] = { /* code 228 */
+ _X_X____,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_229[8] = { /* code 229 */
+ _XXX____,
+ _X_X____,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXXX___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_230[16] = { /* code 230 */
+ ________,________,
+ _XXX_XXX,________,
+ ____X___,X_______,
+ _XXXXXXX,X_______,
+ X___X___,________,
+ X___X___,X_______,
+ _XXX_XXX,________,
+ ________,________};
+GUI_CONST_STORAGE unsigned char acFont8_1_231[8] = { /* code 231 */
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ___X____};
+GUI_CONST_STORAGE unsigned char acFont8_1_232[8] = { /* code 232 */
+ _X______,
+ __X_____,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ _XXX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_233[8] = { /* code 233 */
+ ___X____,
+ __X_____,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ _XXX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_234[8] = { /* code 234 */
+ __X_____,
+ _X_X____,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ _XXX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_235[8] = { /* code 235 */
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ _XXX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_236[8] = { /* code 236 */
+ X_______,
+ _X______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_237[8] = { /* code 237 */
+ _X______,
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_238[8] = { /* code 238 */
+ _X______,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_239[8] = { /* code 239 */
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_240[8] = { /* code 240 */
+ ________,
+ __XXX___,
+ _X_X____,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_241[8] = { /* code 241 */
+ __X_X___,
+ _X_X____,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_242[8] = { /* code 242 */
+ _X______,
+ __X_____,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_243[8] = { /* code 243 */
+ ___X____,
+ __X_____,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_244[8] = { /* code 244 */
+ __X_____,
+ _X_X____,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_245[8] = { /* code 245 */
+ __X_X___,
+ _X_X____,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_246[8] = { /* code 246 */
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_247[8] = { /* code 247 */
+ ________,
+ __X_____,
+ ________,
+ XXXXX___,
+ ________,
+ __X_____,
+ ________,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_248[8] = { /* code 248 */
+ ________,
+ ________,
+ _XX_X___,
+ X__XX___,
+ X_X_X___,
+ XX__X___,
+ X_XX____,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_249[8] = { /* code 249 */
+ _X______,
+ __X_____,
+ ________,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_250[8] = { /* code 250 */
+ ___X____,
+ __X_____,
+ ________,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_251[8] = { /* code 251 */
+ __X_____,
+ _X_X____,
+ ________,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_252[8] = { /* code 252 */
+ ________,
+ _X_X____,
+ ________,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_253[8] = { /* code 253 */
+ ___X____,
+ __X_____,
+ X___X___,
+ X___X___,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X______};
+GUI_CONST_STORAGE unsigned char acFont8_1_254[8] = { /* code 254 */
+ ________,
+ X_______,
+ XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_______,
+ ________};
+GUI_CONST_STORAGE unsigned char acFont8_1_255[8] = { /* code 255 */
+ ________,
+ __X_X___,
+ _X_X____,
+ X___X___,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X______};
+
+
+GUI_CONST_STORAGE GUI_CHARINFO Font8_1_CharInfo[96] = {
+ { 3, 3, 1, acFont8_1_160 } /* code 160 */
+ ,{ 2, 2, 1, acFont8_1_161 } /* code 161 */
+ ,{ 6, 6, 1, acFont8_1_162 } /* code 162 */
+ ,{ 6, 6, 1, acFont8_1_163 } /* code 163 */
+ ,{ 7, 7, 1, acFont8_1_164 } /* code 164 */
+ ,{ 6, 6, 1, acFont8_1_165 } /* code 165 */
+ ,{ 2, 2, 1, acFont8_1_166 } /* code 166 */
+ ,{ 6, 6, 1, acFont8_1_167 } /* code 167 */
+ ,{ 4, 4, 1, acFont8_1_168 } /* code 168 */
+ ,{ 8, 8, 1, acFont8_1_169 } /* code 169 */
+ ,{ 4, 4, 1, acFont8_1_170 } /* code 170 */
+ ,{ 6, 6, 1, acFont8_1_171 } /* code 171 */
+ ,{ 6, 6, 1, acFont8_1_172 } /* code 172 */
+ ,{ 4, 4, 1, acFont8_1_173 } /* code 173 */
+ ,{ 8, 8, 1, acFont8_1_174 } /* code 174 */
+ ,{ 6, 6, 1, acFont8_1_175 } /* code 175 */
+ ,{ 4, 4, 1, acFont8_1_176 } /* code 176 */
+ ,{ 6, 6, 1, acFont8_1_177 } /* code 177 */
+ ,{ 4, 4, 1, acFont8_1_178 } /* code 178 */
+ ,{ 4, 4, 1, acFont8_1_179 } /* code 179 */
+ ,{ 4, 4, 1, acFont8_1_180 } /* code 180 */
+ ,{ 6, 6, 1, acFont8_1_181 } /* code 181 */
+ ,{ 6, 6, 1, acFont8_1_182 } /* code 182 */
+ ,{ 3, 3, 1, acFont8_1_183 } /* code 183 */
+ ,{ 4, 4, 1, acFont8_1_184 } /* code 184 */
+ ,{ 4, 4, 1, acFont8_1_185 } /* code 185 */
+ ,{ 5, 5, 1, acFont8_1_186 } /* code 186 */
+ ,{ 6, 6, 1, acFont8_1_187 } /* code 187 */
+ ,{ 9, 9, 2, acFont8_1_188 } /* code 188 */
+ ,{ 10, 10, 2, acFont8_1_189 } /* code 189 */
+ ,{ 10, 10, 2, acFont8_1_190 } /* code 190 */
+ ,{ 6, 6, 1, acFont8_1_191 } /* code 191 */
+ ,{ 8, 8, 1, acFont8_1_192 } /* code 192 */
+ ,{ 8, 8, 1, acFont8_1_193 } /* code 193 */
+ ,{ 8, 8, 1, acFont8_1_194 } /* code 194 */
+ ,{ 8, 8, 1, acFont8_1_195 } /* code 195 */
+ ,{ 8, 8, 1, acFont8_1_196 } /* code 196 */
+ ,{ 8, 8, 1, acFont8_1_197 } /* code 197 */
+ ,{ 11, 11, 2, acFont8_1_198 } /* code 198 */
+ ,{ 7, 7, 1, acFont8_1_199 } /* code 199 */
+ ,{ 6, 6, 1, acFont8_1_200 } /* code 200 */
+ ,{ 6, 6, 1, acFont8_1_201 } /* code 201 */
+ ,{ 6, 6, 1, acFont8_1_202 } /* code 202 */
+ ,{ 6, 6, 1, acFont8_1_203 } /* code 203 */
+ ,{ 2, 2, 1, acFont8_1_204 } /* code 204 */
+ ,{ 2, 2, 1, acFont8_1_205 } /* code 205 */
+ ,{ 2, 2, 1, acFont8_1_206 } /* code 206 */
+ ,{ 2, 2, 1, acFont8_1_207 } /* code 207 */
+ ,{ 8, 8, 1, acFont8_1_208 } /* code 208 */
+ ,{ 7, 7, 1, acFont8_1_209 } /* code 209 */
+ ,{ 8, 8, 1, acFont8_1_210 } /* code 210 */
+ ,{ 8, 8, 1, acFont8_1_211 } /* code 211 */
+ ,{ 8, 8, 1, acFont8_1_212 } /* code 212 */
+ ,{ 8, 8, 1, acFont8_1_213 } /* code 213 */
+ ,{ 8, 8, 1, acFont8_1_214 } /* code 214 */
+ ,{ 6, 6, 1, acFont8_1_215 } /* code 215 */
+ ,{ 8, 8, 1, acFont8_1_216 } /* code 216 */
+ ,{ 7, 7, 1, acFont8_1_217 } /* code 217 */
+ ,{ 7, 7, 1, acFont8_1_218 } /* code 218 */
+ ,{ 7, 7, 1, acFont8_1_219 } /* code 219 */
+ ,{ 7, 7, 1, acFont8_1_220 } /* code 220 */
+ ,{ 8, 8, 1, acFont8_1_221 } /* code 221 */
+ ,{ 7, 7, 1, acFont8_1_222 } /* code 222 */
+ ,{ 7, 7, 1, acFont8_1_223 } /* code 223 */
+ ,{ 6, 6, 1, acFont8_1_224 } /* code 224 */
+ ,{ 6, 6, 1, acFont8_1_225 } /* code 225 */
+ ,{ 6, 6, 1, acFont8_1_226 } /* code 226 */
+ ,{ 6, 6, 1, acFont8_1_227 } /* code 227 */
+ ,{ 6, 6, 1, acFont8_1_228 } /* code 228 */
+ ,{ 6, 6, 1, acFont8_1_229 } /* code 229 */
+ ,{ 10, 10, 2, acFont8_1_230 } /* code 230 */
+ ,{ 6, 6, 1, acFont8_1_231 } /* code 231 */
+ ,{ 6, 6, 1, acFont8_1_232 } /* code 232 */
+ ,{ 6, 6, 1, acFont8_1_233 } /* code 233 */
+ ,{ 6, 6, 1, acFont8_1_234 } /* code 234 */
+ ,{ 6, 6, 1, acFont8_1_235 } /* code 235 */
+ ,{ 2, 2, 1, acFont8_1_236 } /* code 236 */
+ ,{ 2, 2, 1, acFont8_1_237 } /* code 237 */
+ ,{ 2, 2, 1, acFont8_1_238 } /* code 238 */
+ ,{ 2, 2, 1, acFont8_1_239 } /* code 239 */
+ ,{ 6, 6, 1, acFont8_1_240 } /* code 240 */
+ ,{ 6, 6, 1, acFont8_1_241 } /* code 241 */
+ ,{ 6, 6, 1, acFont8_1_242 } /* code 242 */
+ ,{ 6, 6, 1, acFont8_1_243 } /* code 243 */
+ ,{ 6, 6, 1, acFont8_1_244 } /* code 244 */
+ ,{ 6, 6, 1, acFont8_1_245 } /* code 245 */
+ ,{ 6, 6, 1, acFont8_1_246 } /* code 246 */
+ ,{ 6, 6, 1, acFont8_1_247 } /* code 247 */
+ ,{ 6, 6, 1, acFont8_1_248 } /* code 248 */
+ ,{ 6, 6, 1, acFont8_1_249 } /* code 249 */
+ ,{ 6, 6, 1, acFont8_1_250 } /* code 250 */
+ ,{ 6, 6, 1, acFont8_1_251 } /* code 251 */
+ ,{ 6, 6, 1, acFont8_1_252 } /* code 252 */
+ ,{ 6, 6, 1, acFont8_1_253 } /* code 253 */
+ ,{ 6, 6, 1, acFont8_1_254 } /* code 254 */
+ ,{ 6, 6, 1, acFont8_1_255 } /* code 255 */
+};
+
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font8_1_Prop = {
+ 160 /* first character */
+ ,255 /* last character */
+ ,Font8_1_CharInfo /* address of first character */
+ ,&GUI_Font8ASCII_Prop /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,8 /* height of font */
+ ,8 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font8_1_Prop}
+ , 7, 5, 7
+};
+GUI_FONT GUI_Font8_2 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,8 /* height of font */
+ ,8*2 /* space of font y */
+ ,2 /* magnification x */
+ ,2 /* magnification y */
+ ,{&GUI_Font8_1_Prop}
+ , 7, 5, 7
+};
+
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Font/F08_ASCII.c b/User/lib/lcd/gui/Font/F08_ASCII.c
new file mode 100644
index 0000000..aa07143
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F08_ASCII.c
@@ -0,0 +1,1182 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F8_ASCII.C
+Purpose : Proportional 8 pixel font, ASCII character set
+Height : 8
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFont8ASCII[][8] = {
+ {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* ! */
+ ,{
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ X_______,
+ ________}
+
+
+/* " */
+ ,{
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* # */
+ ,{
+ _X_X____,
+ _X_X____,
+ XXXXX___,
+ _X_X____,
+ XXXXX___,
+ _X_X____,
+ _X_X____,
+ ________}
+
+/* $ */
+ ,{
+ __X_____,
+ _XXXX___,
+ X_X_____,
+ _XXX____,
+ __X_X___,
+ XXXX____,
+ __X_____}
+
+/* % */
+ ,{
+ XX______,
+ XX__X___,
+ ___X____,
+ __X_____,
+ _X______,
+ X__XX___,
+ ___XX___,
+ ________}
+
+/* & */
+ ,{
+ _XX_____,
+ X__X____,
+ X_X_____,
+ _X______,
+ X_X_X___,
+ X__X____,
+ _XX_X___,
+ ________}
+
+/* ' */
+ ,{
+ XX______,
+ _X______,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* ( */
+ ,{
+ __X_____,
+ _X______,
+ X_______,
+ X_______,
+ X_______,
+ _X______,
+ __X_____,
+ ________}
+
+/* ) */
+ ,{
+ X_______,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ X_______,
+ ________}
+
+/* * */
+ ,{
+ ________,
+ _X_X____,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ _X_X____,
+ ________,
+ ________}
+
+ ,{
+ ________,
+ __X_____,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ ________,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ _X______,
+ X_______}
+
+ ,{
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ ________}
+
+ ,{
+ ________,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ ________,
+ ________}
+
+/* 0 */
+ ,{
+ _XXX____,
+ X___X___,
+ X__XX___,
+ X_X_X___,
+ XX__X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+/* 1 */
+ ,{
+ __X_____,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XXX____,
+ ________}
+
+/* 2 */
+ ,{
+ _XXX____,
+ X___X___,
+ ____X___,
+ __XX____,
+ _X______,
+ X_______,
+ XXXXX___,
+ ________}
+
+/* 3 */
+ ,{
+ _XXX____,
+ X___X___,
+ ____X___,
+ __XX____,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+/* 4 */
+ ,{
+ ___X____,
+ __XX____,
+ _X_X____,
+ X__X____,
+ XXXXX___,
+ ___X____,
+ ___X____,
+ ________}
+
+/* 5 */
+ ,{
+ XXXXX___,
+ X_______,
+ XXXX____,
+ ____X___,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+/* 6 */
+ ,{
+ __XX____,
+ _X______,
+ X_______,
+ XXXX____,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+/* 7 */
+ ,{
+ XXXXX___,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ ________}
+
+/* 8 */
+ ,{
+ _XXX____,
+ X___X___,
+ X___X___,
+ _XXX____,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+/* 9 */
+ ,{
+ _XXX____,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ____X___,
+ ___X____,
+ _XX_____,
+ ________}
+
+/* ':' 3a */
+ ,{
+ ________,
+ XX______,
+ XX______,
+ ________,
+ XX______,
+ XX______,
+ ________,
+ ________}
+
+/* ';' 3b */
+ ,{
+ ________,
+ ________,
+ XX______,
+ XX______,
+ ________,
+ XX______,
+ _X______,
+ X_______}
+
+
+/* '<' 3c */
+ ,{
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ _X______,
+ __X_____,
+ ___X____,
+ ________}
+
+/* '=' 3d */
+ ,{
+ ________,
+ ________,
+ XXXXX___,
+ ________,
+ XXXXX___,
+ ________,
+ ________,
+ ________}
+
+/* '>' */
+ ,{
+ X_______,
+ _X______,
+ __X_____,
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ ________}
+
+/* '?' */
+ ,{
+ _XXX____,
+ X___X___,
+ ____X___,
+ ___X____,
+ __X_____,
+ ________,
+ __X_____,
+ ________}
+
+/* @ */
+ ,{
+ _XXX____,
+ X___X___,
+ ____X___,
+ _XX_X___,
+ X_X_X___,
+ X_X_X___,
+ _XXX____,
+ ________}
+
+/* A */
+ ,{
+ _XXX____,
+ X___X___,
+ X___X___,
+ XXXXX___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+/* B */
+ ,{
+ XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ ________}
+
+/* C */
+ ,{
+ _XXX____,
+ X___X___,
+ X_______,
+ X_______,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________}
+
+/* D */
+ ,{
+ XXX_____,
+ X__X____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X__X____,
+ XXX_____,
+ ________}
+
+/* E */
+ ,{
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________}
+
+/* 1 */
+ ,{
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ ________}
+
+/* 1 */
+ ,{
+ _XXX____,
+ X___X___,
+ X_______,
+ X_______,
+ X__XX___,
+ X___X___,
+ _XXXX___,
+ ________}
+
+/* 1 */
+ ,{
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXXX___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+/* I */
+ ,{
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________}
+
+/* J */
+ ,{
+ __XXX___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ X__X____,
+ _XX_____,
+ ________}
+
+/* K */
+ ,{
+ X___X___,
+ X__X____,
+ X_X_____,
+ XX______,
+ X_X_____,
+ X__X____,
+ X___X___,
+ ________}
+
+/* L */
+ ,{
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________}
+
+/* M */
+ ,{
+ X___X___,
+ XX_XX___,
+ X_X_X___,
+ X_X_X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+/* N */
+ ,{
+ X___X___,
+ X___X___,
+ XX__X___,
+ X_X_X___,
+ X__XX___,
+ X___X___,
+ X___X___,
+ ________}
+
+/* O */
+ ,{
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+/* P */
+ ,{
+ XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ ________}
+
+/* Q */
+ ,{
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X_X_X___,
+ X__X____,
+ _XX_X___,
+ ________}
+
+/* R */
+ ,{
+ XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_X_____,
+ X__X____,
+ X___X___,
+ ________}
+
+/* S */
+ ,{
+ _XXX____,
+ X___X___,
+ X_______,
+ _XXX____,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+/* T */
+ ,{
+ XXXXX___,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________}
+
+/* U */
+ ,{
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+/* V */
+ ,{
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _X_X____,
+ __X_____,
+ ________}
+
+/* W */
+ ,{
+ X___X___,
+ X___X___,
+ X___X___,
+ X_X_X___,
+ X_X_X___,
+ X_X_X___,
+ _X_X____,
+ ________}
+
+/* X */
+ ,{
+ X___X___,
+ X___X___,
+ _X_X____,
+ __X_____,
+ _X_X____,
+ X___X___,
+ X___X___,
+ ________}
+
+/* Y */
+ ,{
+ X___X___,
+ X___X___,
+ _X_X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________}
+
+/* Z */
+ ,{
+ XXXXX___,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ XXXXX___,
+ ________}
+
+/* 5b */
+ ,{
+ XXX_____,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ XXX_____,
+ ________}
+
+/* 5c */
+ ,{
+ ________,
+ X_______,
+ _X______,
+ __X_____,
+ ___X____,
+ ____X___,
+ ________,
+ ________}
+
+/* 5d */
+ ,{
+ XXX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ XXX_____,
+ ________}
+
+/* 5e */
+ ,{
+ __X_____,
+ _X_X____,
+ X___X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* 5f */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___}
+
+/* 60 */
+ ,{
+ X_______,
+ _X______,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* a */
+ ,{
+ ________,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXXX___,
+ ________}
+
+/* b */
+ ,{
+ X_______,
+ X_______,
+ X_XX____,
+ XX__X___,
+ X___X___,
+ X___X___,
+ XXXX____,
+ ________}
+
+/* c */
+ ,{
+ ________,
+ ________,
+ _XX_____,
+ X__X____,
+ X_______,
+ X__X____,
+ _XX_____,
+ ________}
+
+/* d */
+ ,{
+ ____X___,
+ ____X___,
+ _XX_X___,
+ X__XX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________}
+
+/* e */
+ ,{
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ _XXX____,
+ ________}
+
+/* f */
+ ,{
+ __X_____,
+ _X_X____,
+ _X______,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ ________}
+
+/* g */
+ ,{
+ ________,
+ ________,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ____X___,
+ _XXX____}
+
+/* h */
+ ,{
+ X_______,
+ X_______,
+ X_XX____,
+ XX__X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+/* i */
+ ,{
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________}
+
+/* j */
+ ,{
+ __X_____,
+ ________,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ XX______}
+
+/* k */
+ ,{
+ X_______,
+ X_______,
+ X__X____,
+ X_X_____,
+ XX______,
+ X_X_____,
+ X__X____,
+ ________}
+
+/* l */
+ ,{
+ XX______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________}
+
+/* m */
+ ,{
+ ________,
+ ________,
+ XX_X____,
+ X_X_X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+/* n */
+ ,{
+ ________,
+ ________,
+ X_XX____,
+ XX_X____,
+ X__X____,
+ X__X____,
+ X__X____,
+ ________}
+
+/* o */
+ ,{
+ ________,
+ ________,
+ _XX_____,
+ X__X____,
+ X__X____,
+ X__X____,
+ _XX_____,
+ ________}
+
+/* p */
+ ,{
+ ________,
+ ________,
+ XXX_____,
+ X__X____,
+ X__X____,
+ XXX_____,
+ X_______,
+ X_______}
+
+/* q */
+ ,{
+ ________,
+ ________,
+ _XXX____,
+ X__X____,
+ X__X____,
+ _XXX____,
+ ___X____,
+ ___X____}
+
+/* r */
+ ,{
+ ________,
+ ________,
+ X_X_____,
+ XX______,
+ X_______,
+ X_______,
+ X_______,
+ ________}
+
+/* s */
+ ,{
+ ________,
+ ________,
+ _XXX____,
+ X_______,
+ _XX_____,
+ ___X____,
+ XXX_____,
+ ________}
+
+/* t */
+ ,{
+ _X______,
+ _X______,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________}
+
+/* u */
+ ,{
+ ________,
+ ________,
+ X__X____,
+ X__X____,
+ X__X____,
+ X__X____,
+ _XXX____,
+ ________}
+
+/* v */
+ ,{
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ _X_X____,
+ __X_____,
+ ________}
+
+/* w */
+ ,{
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ X_X_X___,
+ X_X_X___,
+ _X_X____,
+ ________}
+
+/* X */
+ ,{
+ ________,
+ ________,
+ X___X___,
+ _X_X____,
+ __X_____,
+ _X_X____,
+ X___X___,
+ ________}
+
+/* y */
+ ,{
+ ________,
+ ________,
+ X__X____,
+ X__X____,
+ X__X____,
+ _XXX____,
+ ___X____,
+ _XX_____}
+
+/* z */
+ ,{
+ ________,
+ ________,
+ XXXXX___,
+ ___X____,
+ __X_____,
+ _X______,
+ XXXXX___,
+ ________}
+
+/* 0x7b */
+ ,{
+ __X_____,
+ _X______,
+ _X______,
+ X_______,
+ _X______,
+ _X______,
+ __X_____,
+ ________}
+
+/* 0x7c */
+ ,{
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________}
+
+/* 0x7d */
+ ,{
+ X_______,
+ _X______,
+ _X______,
+ __X_____,
+ _X______,
+ _X______,
+ X_______,
+ ________}
+
+/* 0x7e */
+ ,{
+ _XX_X___,
+ X__X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+};
+
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font8_ASCII_CharInfo[95] = {
+ { 3,3,1, acFont8ASCII[0]} /* char.code 32: ' ' */
+ ,{ 2,2,1, acFont8ASCII[1]} /* char.code 33: '!' */
+ ,{ 4,4,1, acFont8ASCII[2]} /* char.code 34: '"' */
+ ,{ 6,6,1, acFont8ASCII[3]} /* char.code 35: '#' */
+ ,{ 6,6,1, acFont8ASCII[4]} /* char.code 36: '$' */
+ ,{ 6,6,1, acFont8ASCII[5]} /* char.code 37: '%' */
+ ,{ 6,6,1, acFont8ASCII[6]} /* char.code 38: '&' */
+ ,{ 3,3,1, acFont8ASCII[7]} /* char.code 39: ''' */
+ ,{ 4,4,1, acFont8ASCII[8]} /* char.code 40: '(' */
+ ,{ 4,4,1, acFont8ASCII[9]} /* char.code 41: ')' */
+ ,{ 6,6,1, acFont8ASCII[10]} /* char.code 42: '*' */
+ ,{ 6,6,1, acFont8ASCII[11]} /* char.code 43: '+' */
+ ,{ 3,3,1, acFont8ASCII[12]} /* char.code 44: ',' */
+ ,{ 6,6,1, acFont8ASCII[13]} /* char.code 45: '-' */
+ ,{ 3,3,1, acFont8ASCII[14]} /* char.code 46: '.' point */
+ ,{ 6,6,1, acFont8ASCII[15]} /* char.code 47: '/' */
+ ,{ 6,6,1, acFont8ASCII[16]} /* char.code 48: '0' */
+ ,{ 6,6,1, acFont8ASCII[17]} /* char.code 49: '1' */
+ ,{ 6,6,1, acFont8ASCII[18]} /* char.code 50: '2' */
+ ,{ 6,6,1, acFont8ASCII[19]} /* char.code 51: '3' */
+ ,{ 6,6,1, acFont8ASCII[20]} /* char.code 52: '4' */
+ ,{ 6,6,1, acFont8ASCII[21]} /* char.code 53: '5' */
+ ,{ 6,6,1, acFont8ASCII[22]} /* char.code 54: '6' */
+ ,{ 6,6,1, acFont8ASCII[23]} /* char.code 55: '7' */
+ ,{ 6,6,1, acFont8ASCII[24]} /* char.code 56: '8' */
+ ,{ 6,6,1, acFont8ASCII[25]} /* char.code 57: '9' */
+ ,{ 3,3,1, acFont8ASCII[26]} /* char.code 58: ':' */
+ ,{ 3,3,1, acFont8ASCII[27]} /* char.code 59: ';' */
+ ,{ 5,5,1, acFont8ASCII[28]} /* char.code 60: '<' */
+ ,{ 6,6,1, acFont8ASCII[29]} /* char.code 61: '=' */
+ ,{ 5,5,1, acFont8ASCII[30]} /* char.code 62: '>' */
+ ,{ 6,6,1, acFont8ASCII[31]} /* char.code 63: '?' */
+ ,{ 6,6,1, acFont8ASCII[32]} /* char.code 64: '@' */
+ ,{ 6,6,1, acFont8ASCII[33]} /* char.code 65: 'A' */
+ ,{ 6,6,1, acFont8ASCII[34]} /* char.code 66: 'B' */
+ ,{ 6,6,1, acFont8ASCII[35]} /* char.code 67: 'C' */
+ ,{ 6,6,1, acFont8ASCII[36]} /* char.code 68: 'D' */
+ ,{ 6,6,1, acFont8ASCII[37]} /* char.code 69: 'E' */
+ ,{ 6,6,1, acFont8ASCII[38]} /* char.code 70: 'F' */
+ ,{ 6,6,1, acFont8ASCII[39]} /* char.code 71: 'G' */
+ ,{ 6,6,1, acFont8ASCII[40]} /* char.code 72: 'H' */
+ ,{ 4,4,1, acFont8ASCII[41]} /* char.code 73: 'I' */
+ ,{ 6,6,1, acFont8ASCII[42]} /* char.code 74: 'J' */
+ ,{ 6,6,1, acFont8ASCII[43]} /* char.code 75: 'K' */
+ ,{ 6,6,1, acFont8ASCII[44]} /* char.code 76: 'L' */
+ ,{ 6,6,1, acFont8ASCII[45]} /* char.code 77: 'M' */
+ ,{ 6,6,1, acFont8ASCII[46]} /* char.code 78: 'N' */
+ ,{ 6,6,1, acFont8ASCII[47]} /* char.code 79: 'O' */
+ ,{ 6,6,1, acFont8ASCII[48]} /* char.code 80: 'P' */
+ ,{ 6,6,1, acFont8ASCII[49]} /* char.code 81: 'Q' */
+ ,{ 6,6,1, acFont8ASCII[50]} /* char.code 82: 'R' */
+ ,{ 6,6,1, acFont8ASCII[51]} /* char.code 83: 'S' */
+ ,{ 6,6,1, acFont8ASCII[52]} /* char.code 84: 'T' */
+ ,{ 6,6,1, acFont8ASCII[53]} /* char.code 85: 'U' */
+ ,{ 6,6,1, acFont8ASCII[54]} /* char.code 86: 'V' */
+ ,{ 6,6,1, acFont8ASCII[55]} /* char.code 87: 'W' */
+ ,{ 6,6,1, acFont8ASCII[56]} /* char.code 88: 'X' */
+ ,{ 6,6,1, acFont8ASCII[57]} /* char.code 89: 'Y' */
+ ,{ 6,6,1, acFont8ASCII[58]} /* char.code 90: 'Z' */
+ ,{ 4,4,1, acFont8ASCII[59]} /* char.code 91: '[' */
+ ,{ 6,6,1, acFont8ASCII[60]} /* char.code 92: '\' */
+ ,{ 4,4,1, acFont8ASCII[61]} /* char.code 93: ']' */
+ ,{ 6,6,1, acFont8ASCII[62]} /* char.code 94: '^' */
+ ,{ 6,6,1, acFont8ASCII[63]} /* char.code 95: '_' */
+ ,{ 6,6,1, acFont8ASCII[64]} /* char.code 96: '`' */
+ ,{ 6,6,1, acFont8ASCII[65]} /* char.code 97: 'a' */
+ ,{ 6,6,1, acFont8ASCII[66]} /* char.code 98: 'b' */
+ ,{ 5,5,1, acFont8ASCII[67]} /* char.code 99: 'c' */
+ ,{ 6,6,1, acFont8ASCII[68]} /* char.code 100: 'd' */
+ ,{ 6,6,1, acFont8ASCII[69]} /* char.code 101: 'e' */
+ ,{ 5,5,1, acFont8ASCII[70]} /* char.code 102: 'f' */
+ ,{ 6,6,1, acFont8ASCII[71]} /* char.code 103: 'g' */
+ ,{ 6,6,1, acFont8ASCII[72]} /* char.code 104: 'h' */
+ ,{ 2,2,1, acFont8ASCII[73]} /* char.code 105: 'i' */
+ ,{ 4,4,1, acFont8ASCII[74]} /* char.code 106: 'j' */
+ ,{ 5,5,1, acFont8ASCII[75]} /* char.code 107: 'k' */
+ ,{ 4,4,1, acFont8ASCII[76]} /* char.code 108: 'l' */
+ ,{ 6,6,1, acFont8ASCII[77]} /* char.code 109: 'm' */
+ ,{ 5,5,1, acFont8ASCII[78]} /* char.code 110: 'n' */
+ ,{ 5,5,1, acFont8ASCII[79]} /* char.code 111: 'o' */
+ ,{ 5,5,1, acFont8ASCII[80]} /* char.code 112: 'p' */
+ ,{ 5,5,1, acFont8ASCII[81]} /* char.code 113: 'q' */
+ ,{ 4,4,1, acFont8ASCII[82]} /* char.code 114: 'r' */
+ ,{ 5,5,1, acFont8ASCII[83]} /* char.code 115: 's' */
+ ,{ 4,4,1, acFont8ASCII[84]} /* char.code 116: 't' */
+ ,{ 5,5,1, acFont8ASCII[85]} /* char.code 117: 'u' */
+ ,{ 6,6,1, acFont8ASCII[86]} /* char.code 118: 'v' */
+ ,{ 6,6,1, acFont8ASCII[87]} /* char.code 119: 'w' */
+ ,{ 6,6,1, acFont8ASCII[88]} /* char.code 120: 'x' */
+ ,{ 5,5,1, acFont8ASCII[89]} /* char.code 121: 'y' */
+ ,{ 6,6,1, acFont8ASCII[90]} /* char.code 122: 'z' */
+ ,{ 4,4,1, acFont8ASCII[91]} /* char.code 123: '{' */
+ ,{ 3,3,1, acFont8ASCII[92]} /* char.code 124: '|' */
+ ,{ 4,4,1, acFont8ASCII[93]} /* char.code 125: '}' */
+ ,{ 6,6,1, acFont8ASCII[94]} /* char.code 126: '~' */
+};
+
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font8ASCII_Prop = {
+ 32 /* first character */
+ ,126 /* last character */
+ ,&GUI_Font8_ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONTRANGE */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,8 /* height of font */
+ ,8 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font8ASCII_Prop}
+ , 7, 5, 7
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Font/F10S_1.c b/User/lib/lcd/gui/Font/F10S_1.c
new file mode 100644
index 0000000..1dd616e
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F10S_1.c
@@ -0,0 +1,1293 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F10S.C
+Purpose : Proportional small font
+Height : 10
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_160[10] = { /* code 160 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_161[10] = { /* code 161 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_162[10] = { /* code 162 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __XX____,
+ _X______,
+ _X______,
+ __XX____,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_163[10] = { /* code 163 */
+ ________,
+ ________,
+ ___X____,
+ __X_X___,
+ __X_____,
+ _XXX____,
+ __X_____,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_164[10] = { /* code 164 */
+ ________,
+ ________,
+ _X_X____,
+ __X_____,
+ _X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_165[10] = { /* code 165 */
+ ________,
+ ________,
+ _X_X____,
+ __X_____,
+ _XXX____,
+ __X_____,
+ _XXX____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_166[10] = { /* code 166 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_167[10] = { /* code 167 */
+ ________,
+ ________,
+ __X_____,
+ _X_X____,
+ _XX_____,
+ _X_X____,
+ __XX____,
+ _X_X____,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_168[10] = { /* code 168 */
+ ________,
+ ________,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_169[10] = { /* code 169 */
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X_X_X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_170[10] = { /* code 170 */
+ ________,
+ ________,
+ __X_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_171[10] = { /* code 171 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_X___,
+ _X_X____,
+ __X_X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_172[10] = { /* code 172 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ____X___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_173[10] = { /* code 173 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_174[10] = { /* code 174 */
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X_X_X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_175[10] = { /* code 175 */
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_176[10] = { /* code 176 */
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_177[10] = { /* code 177 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XXX____,
+ __X_____,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_178[10] = { /* code 178 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_179[10] = { /* code 179 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_180[10] = { /* code 180 */
+ ________,
+ ________,
+ _X______,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_181[10] = { /* code 181 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ _XX_X___,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_182[10] = { /* code 182 */
+ ________,
+ ________,
+ __XX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_183[10] = { /* code 183 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_184[10] = { /* code 184 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_185[10] = { /* code 185 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_186[10] = { /* code 186 */
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_187[10] = { /* code 187 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ __X_X___,
+ _X_X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_188[10] = { /* code 188 */
+ ________,
+ ________,
+ __X_____,
+ __X__X__,
+ ____X___,
+ ___X_X__,
+ __X_XX__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_189[10] = { /* code 189 */
+ ________,
+ ________,
+ __X_____,
+ __X__X__,
+ ____X___,
+ ___X____,
+ __X_XX__,
+ _X__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_190[10] = { /* code 190 */
+ ________,
+ ________,
+ _XX_____,
+ _XX__X__,
+ ____X___,
+ ___X_X__,
+ __X_XX__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_191[10] = { /* code 191 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ ________,
+ __X_____,
+ __X_____,
+ _X______,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_192[10] = { /* code 192 */
+ __X_____,
+ ___X____,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _XXXXX__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_193[10] = { /* code 193 */
+ ____X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _XXXXX__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_194[10] = { /* code 194 */
+ ___X____,
+ __X_X___,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _XXXXX__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_195[10] = { /* code 195 */
+ ___X_X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _XXXXX__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_196[10] = { /* code 196 */
+ __X_X___,
+ ________,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _XXXXX__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_197[10] = { /* code 197 */
+ ___X____,
+ __X_X___,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _XXXXX__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_198[10] = { /* code 198 */
+ ________,
+ ________,
+ ____XXXX,
+ ___XX___,
+ ___XXXXX,
+ __X_X___,
+ _XXXX___,
+ _X__XXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_199[10] = { /* code 199 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ _X______,
+ _X______,
+ _X__X___,
+ __XX____,
+ ___X____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_200[10] = { /* code 200 */
+ __X_____,
+ ___X____,
+ _XXXX___,
+ _X______,
+ _XXXX___,
+ _X______,
+ _X______,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_201[10] = { /* code 201 */
+ ___X____,
+ __X_____,
+ _XXXX___,
+ _X______,
+ _XXXX___,
+ _X______,
+ _X______,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_202[10] = { /* code 202 */
+ ___X____,
+ __X_X___,
+ _XXXX___,
+ _X______,
+ _XXXX___,
+ _X______,
+ _X______,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_203[10] = { /* code 203 */
+ _X__X___,
+ ________,
+ _XXXX___,
+ _X______,
+ _XXXX___,
+ _X______,
+ _X______,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_204[10] = { /* code 204 */
+ X_______,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_205[10] = { /* code 205 */
+ __X_____,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_206[10] = { /* code 206 */
+ _X______,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_207[10] = { /* code 207 */
+ X_X_____,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_208[10] = { /* code 208 */
+ ________,
+ ________,
+ _XXXX___,
+ _X___X__,
+ XXX__X__,
+ _X___X__,
+ _X___X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_209[10] = { /* code 209 */
+ ___X_X__,
+ __X_X___,
+ _X___X__,
+ _XX__X__,
+ _X_X_X__,
+ _X__XX__,
+ _X___X__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_210[10] = { /* code 210 */
+ __X_____,
+ ___X____,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_211[10] = { /* code 211 */
+ ____X___,
+ ___X____,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_212[10] = { /* code 212 */
+ ___X____,
+ __X_X___,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_213[10] = { /* code 213 */
+ ___X_X__,
+ __X_X___,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_214[10] = { /* code 214 */
+ __X_X___,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_215[10] = { /* code 215 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ __X_____,
+ _X_X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_216[10] = { /* code 216 */
+ ________,
+ ________,
+ __XXXX__,
+ _X__XX__,
+ _X_X_X__,
+ _X_X_X__,
+ _XX__X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_217[10] = { /* code 217 */
+ __X_____,
+ ___X____,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_218[10] = { /* code 218 */
+ ____X___,
+ ___X____,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_219[10] = { /* code 219 */
+ ___X____,
+ __X_X___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_220[10] = { /* code 220 */
+ __X_X___,
+ ________,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_221[10] = { /* code 221 */
+ ____X___,
+ ___X____,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_222[10] = { /* code 222 */
+ ________,
+ ________,
+ _X______,
+ _XXX____,
+ _X__X___,
+ _X__X___,
+ _XXX____,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_223[10] = { /* code 223 */
+ ________,
+ ________,
+ __X_____,
+ _X_X____,
+ _XXX____,
+ _X__X___,
+ _X__X___,
+ _X_X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_224[10] = { /* code 224 */
+ ________,
+ _X______,
+ __X_____,
+ ________,
+ _XX_____,
+ ___X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_225[10] = { /* code 225 */
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ _XX_____,
+ ___X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_226[10] = { /* code 226 */
+ ________,
+ __X_____,
+ _X_X____,
+ ________,
+ _XX_____,
+ ___X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_227[10] = { /* code 227 */
+ ________,
+ __XX____,
+ _XX_____,
+ ________,
+ _XX_____,
+ ___X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_228[10] = { /* code 228 */
+ ________,
+ ________,
+ _X_X____,
+ ________,
+ _XX_____,
+ ___X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_229[10] = { /* code 229 */
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ ___X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_230[10] = { /* code 230 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_XX__,
+ ___X_X__,
+ _X_XX___,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_231[10] = { /* code 231 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _X______,
+ _X______,
+ __XX____,
+ ___X____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_232[10] = { /* code 232 */
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ __X_____,
+ _X_X____,
+ _X______,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_233[10] = { /* code 233 */
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ __X_____,
+ _X_X____,
+ _X______,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_234[10] = { /* code 234 */
+ ________,
+ __X_____,
+ _X_X____,
+ ________,
+ __X_____,
+ _X_X____,
+ _X______,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_235[10] = { /* code 235 */
+ ________,
+ ________,
+ _X_X____,
+ ________,
+ __X_____,
+ _X_X____,
+ _X______,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_236[10] = { /* code 236 */
+ ________,
+ X_______,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_237[10] = { /* code 237 */
+ ________,
+ __X_____,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_238[10] = { /* code 238 */
+ ________,
+ _X______,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_239[10] = { /* code 239 */
+ ________,
+ ________,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_240[10] = { /* code 240 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ___X____,
+ __XX____,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_241[10] = { /* code 241 */
+ ________,
+ __XX____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_242[10] = { /* code 242 */
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_243[10] = { /* code 243 */
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_244[10] = { /* code 244 */
+ ________,
+ ___X____,
+ __X_X___,
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_245[10] = { /* code 245 */
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_246[10] = { /* code 246 */
+ ________,
+ ________,
+ _X__X___,
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_247[10] = { /* code 247 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XXX____,
+ __X_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_248[10] = { /* code 248 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X_XX___,
+ _XX_X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_249[10] = { /* code 249 */
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_250[10] = { /* code 250 */
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_251[10] = { /* code 251 */
+ ________,
+ __X_____,
+ _X_X____,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_252[10] = { /* code 252 */
+ ________,
+ ________,
+ _X_X____,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_253[10] = { /* code 253 */
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_254[10] = { /* code 254 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _XX_____,
+ _X_X____,
+ _X_X____,
+ _XX_____,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10S_1_255[10] = { /* code 255 */
+ ________,
+ ________,
+ _X_X____,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X______};
+
+
+
+GUI_CONST_STORAGE GUI_CHARINFO Font10S_1_CharInfo[96] = {
+ { 2, 2, 1, acFont10S_1_160 } /* code 160 */
+ ,{ 2, 2, 1, acFont10S_1_161 } /* code 161 */
+ ,{ 4, 4, 1, acFont10S_1_162 } /* code 162 */
+ ,{ 5, 5, 1, acFont10S_1_163 } /* code 163 */
+ ,{ 4, 4, 1, acFont10S_1_164 } /* code 164 */
+ ,{ 4, 4, 1, acFont10S_1_165 } /* code 165 */
+ ,{ 2, 2, 1, acFont10S_1_166 } /* code 166 */
+ ,{ 4, 4, 1, acFont10S_1_167 } /* code 167 */
+ ,{ 3, 3, 1, acFont10S_1_168 } /* code 168 */
+ ,{ 6, 6, 1, acFont10S_1_169 } /* code 169 */
+ ,{ 3, 3, 1, acFont10S_1_170 } /* code 170 */
+ ,{ 5, 5, 1, acFont10S_1_171 } /* code 171 */
+ ,{ 5, 5, 1, acFont10S_1_172 } /* code 172 */
+ ,{ 2, 2, 1, acFont10S_1_173 } /* code 173 */
+ ,{ 6, 6, 1, acFont10S_1_174 } /* code 174 */
+ ,{ 4, 4, 1, acFont10S_1_175 } /* code 175 */
+ ,{ 2, 2, 1, acFont10S_1_176 } /* code 176 */
+ ,{ 4, 4, 1, acFont10S_1_177 } /* code 177 */
+ ,{ 2, 2, 1, acFont10S_1_178 } /* code 178 */
+ ,{ 2, 2, 1, acFont10S_1_179 } /* code 179 */
+ ,{ 2, 2, 1, acFont10S_1_180 } /* code 180 */
+ ,{ 5, 5, 1, acFont10S_1_181 } /* code 181 */
+ ,{ 4, 4, 1, acFont10S_1_182 } /* code 182 */
+ ,{ 2, 2, 1, acFont10S_1_183 } /* code 183 */
+ ,{ 3, 3, 1, acFont10S_1_184 } /* code 184 */
+ ,{ 2, 2, 1, acFont10S_1_185 } /* code 185 */
+ ,{ 3, 3, 1, acFont10S_1_186 } /* code 186 */
+ ,{ 5, 5, 1, acFont10S_1_187 } /* code 187 */
+ ,{ 6, 6, 1, acFont10S_1_188 } /* code 188 */
+ ,{ 6, 6, 1, acFont10S_1_189 } /* code 189 */
+ ,{ 6, 6, 1, acFont10S_1_190 } /* code 190 */
+ ,{ 4, 4, 1, acFont10S_1_191 } /* code 191 */
+ ,{ 6, 6, 1, acFont10S_1_192 } /* code 192 */
+ ,{ 6, 6, 1, acFont10S_1_193 } /* code 193 */
+ ,{ 6, 6, 1, acFont10S_1_194 } /* code 194 */
+ ,{ 6, 6, 1, acFont10S_1_195 } /* code 195 */
+ ,{ 6, 6, 1, acFont10S_1_196 } /* code 196 */
+ ,{ 6, 6, 1, acFont10S_1_197 } /* code 197 */
+ ,{ 8, 8, 1, acFont10S_1_198 } /* code 198 */
+ ,{ 5, 5, 1, acFont10S_1_199 } /* code 199 */
+ ,{ 5, 5, 1, acFont10S_1_200 } /* code 200 */
+ ,{ 5, 5, 1, acFont10S_1_201 } /* code 201 */
+ ,{ 5, 5, 1, acFont10S_1_202 } /* code 202 */
+ ,{ 5, 5, 1, acFont10S_1_203 } /* code 203 */
+ ,{ 2, 2, 1, acFont10S_1_204 } /* code 204 */
+ ,{ 3, 3, 1, acFont10S_1_205 } /* code 205 */
+ ,{ 3, 3, 1, acFont10S_1_206 } /* code 206 */
+ ,{ 3, 3, 1, acFont10S_1_207 } /* code 207 */
+ ,{ 6, 6, 1, acFont10S_1_208 } /* code 208 */
+ ,{ 6, 6, 1, acFont10S_1_209 } /* code 209 */
+ ,{ 6, 6, 1, acFont10S_1_210 } /* code 210 */
+ ,{ 6, 6, 1, acFont10S_1_211 } /* code 211 */
+ ,{ 6, 6, 1, acFont10S_1_212 } /* code 212 */
+ ,{ 6, 6, 1, acFont10S_1_213 } /* code 213 */
+ ,{ 6, 6, 1, acFont10S_1_214 } /* code 214 */
+ ,{ 4, 4, 1, acFont10S_1_215 } /* code 215 */
+ ,{ 6, 6, 1, acFont10S_1_216 } /* code 216 */
+ ,{ 6, 6, 1, acFont10S_1_217 } /* code 217 */
+ ,{ 6, 6, 1, acFont10S_1_218 } /* code 218 */
+ ,{ 6, 6, 1, acFont10S_1_219 } /* code 219 */
+ ,{ 6, 6, 1, acFont10S_1_220 } /* code 220 */
+ ,{ 6, 6, 1, acFont10S_1_221 } /* code 221 */
+ ,{ 5, 5, 1, acFont10S_1_222 } /* code 222 */
+ ,{ 5, 5, 1, acFont10S_1_223 } /* code 223 */
+ ,{ 4, 4, 1, acFont10S_1_224 } /* code 224 */
+ ,{ 4, 4, 1, acFont10S_1_225 } /* code 225 */
+ ,{ 4, 4, 1, acFont10S_1_226 } /* code 226 */
+ ,{ 4, 4, 1, acFont10S_1_227 } /* code 227 */
+ ,{ 4, 4, 1, acFont10S_1_228 } /* code 228 */
+ ,{ 4, 4, 1, acFont10S_1_229 } /* code 229 */
+ ,{ 6, 6, 1, acFont10S_1_230 } /* code 230 */
+ ,{ 4, 4, 1, acFont10S_1_231 } /* code 231 */
+ ,{ 4, 4, 1, acFont10S_1_232 } /* code 232 */
+ ,{ 4, 4, 1, acFont10S_1_233 } /* code 233 */
+ ,{ 4, 4, 1, acFont10S_1_234 } /* code 234 */
+ ,{ 4, 4, 1, acFont10S_1_235 } /* code 235 */
+ ,{ 2, 2, 1, acFont10S_1_236 } /* code 236 */
+ ,{ 3, 3, 1, acFont10S_1_237 } /* code 237 */
+ ,{ 3, 3, 1, acFont10S_1_238 } /* code 238 */
+ ,{ 3, 3, 1, acFont10S_1_239 } /* code 239 */
+ ,{ 5, 5, 1, acFont10S_1_240 } /* code 240 */
+ ,{ 4, 4, 1, acFont10S_1_241 } /* code 241 */
+ ,{ 5, 5, 1, acFont10S_1_242 } /* code 242 */
+ ,{ 5, 5, 1, acFont10S_1_243 } /* code 243 */
+ ,{ 5, 5, 1, acFont10S_1_244 } /* code 244 */
+ ,{ 5, 5, 1, acFont10S_1_245 } /* code 245 */
+ ,{ 5, 5, 1, acFont10S_1_246 } /* code 246 */
+ ,{ 4, 4, 1, acFont10S_1_247 } /* code 247 */
+ ,{ 5, 5, 1, acFont10S_1_248 } /* code 248 */
+ ,{ 4, 4, 1, acFont10S_1_249 } /* code 249 */
+ ,{ 4, 4, 1, acFont10S_1_250 } /* code 250 */
+ ,{ 4, 4, 1, acFont10S_1_251 } /* code 251 */
+ ,{ 4, 4, 1, acFont10S_1_252 } /* code 252 */
+ ,{ 4, 4, 1, acFont10S_1_253 } /* code 253 */
+ ,{ 4, 4, 1, acFont10S_1_254 } /* code 254 */
+ ,{ 4, 4, 1, acFont10S_1_255 } /* code 255 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP Font10S_1_FontProp1 = {
+ 160 /* first character */
+ ,255 /* last character */
+ ,&Font10S_1_CharInfo[0] /* address of first character */
+ ,&GUI_Font10S_ASCII_FontProp1 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font10S_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,10 /* height of font */
+ ,10 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&Font10S_1_FontProp1}
+ , 8, 4, 6
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Font/F10S_ASCII.c b/User/lib/lcd/gui/Font/F10S_ASCII.c
new file mode 100644
index 0000000..858b4a8
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F10S_ASCII.c
@@ -0,0 +1,1280 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F10S_ASCII.C
+Purpose : Proportional small font
+Height : 10
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_32[10] = { /* code 32 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_33[10] = { /* code 33 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_34[10] = { /* code 34 */
+ ________,
+ ________,
+ _X_X____,
+ _X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_35[10] = { /* code 35 */
+ ________,
+ ________,
+ __X_X___,
+ _XXXXX__,
+ __X_X___,
+ __X_X___,
+ _XXXXX__,
+ __X_X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_36[10] = { /* code 36 */
+ ________,
+ ________,
+ __X_____,
+ _XXX____,
+ _XX_____,
+ __X_____,
+ __XX____,
+ _XXX____,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_37[10] = { /* code 37 */
+ ________,
+ ________,
+ _XX_____,
+ _XX_X___,
+ ___X____,
+ __X_____,
+ _X_XX___,
+ ___XX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_38[10] = { /* code 38 */
+ ________,
+ ________,
+ __X_____,
+ _X_X____,
+ __X_____,
+ _X_XX___,
+ _X_X____,
+ __X_X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_39[10] = { /* code 39 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_40[10] = { /* code 40 */
+ ________,
+ ________,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_41[10] = { /* code 41 */
+ ________,
+ ________,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_42[10] = { /* code 42 */
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_43[10] = { /* code 43 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XXX____,
+ __X_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_44[10] = { /* code 44 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_45[10] = { /* code 45 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_46[10] = { /* code 46 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_47[10] = { /* code 47 */
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_48[10] = { /* code 48 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_49[10] = { /* code 49 */
+ ________,
+ ________,
+ __X_____,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_50[10] = { /* code 50 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ ____X___,
+ __XX____,
+ _X______,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_51[10] = { /* code 51 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ ___X____,
+ ____X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_52[10] = { /* code 52 */
+ ________,
+ ________,
+ ___X____,
+ __XX____,
+ __XX____,
+ _X_X____,
+ _XXXX___,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_53[10] = { /* code 53 */
+ ________,
+ ________,
+ _XXX____,
+ _X______,
+ _XX_____,
+ ___X____,
+ ___X____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_54[10] = { /* code 54 */
+ ________,
+ ________,
+ __XX____,
+ _X______,
+ _XXX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_55[10] = { /* code 55 */
+ ________,
+ ________,
+ _XXX____,
+ ___X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_56[10] = { /* code 56 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_57[10] = { /* code 57 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ __XXX___,
+ ____X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_58[10] = { /* code 58 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_59[10] = { /* code 59 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_60[10] = { /* code 60 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __X_____,
+ _X______,
+ __X_____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_61[10] = { /* code 61 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_62[10] = { /* code 62 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ __X_____,
+ ___X____,
+ __X_____,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_63[10] = { /* code 63 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ ___X____,
+ __X_____,
+ ________,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_64[10] = { /* code 64 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ _X__X__X,
+ _X_X_X_X,
+ _X__XXX_,
+ __X_____,
+ ___XXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_65[10] = { /* code 65 */
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_66[10] = { /* code 66 */
+ ________,
+ ________,
+ _XXXX___,
+ _X___X__,
+ _XXXX___,
+ _X___X__,
+ _X___X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_67[10] = { /* code 67 */
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X______,
+ _X______,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_68[10] = { /* code 68 */
+ ________,
+ ________,
+ _XXXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_69[10] = { /* code 69 */
+ ________,
+ ________,
+ _XXXX___,
+ _X______,
+ _XXX____,
+ _X______,
+ _X______,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_70[10] = { /* code 70 */
+ ________,
+ ________,
+ _XXXX___,
+ _X______,
+ _XXX____,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_71[10] = { /* code 71 */
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X______,
+ _X__XX__,
+ _X___X__,
+ __XXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_72[10] = { /* code 72 */
+ ________,
+ ________,
+ _X__X___,
+ _X__X___,
+ _XXXX___,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_73[10] = { /* code 73 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_74[10] = { /* code 74 */
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ _X_X____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_75[10] = { /* code 75 */
+ ________,
+ ________,
+ _X__X___,
+ _X_X____,
+ _XX_____,
+ _XX_____,
+ _X_X____,
+ _X__X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_76[10] = { /* code 76 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_77[10] = { /* code 77 */
+ ________,
+ ________,
+ _XX___XX,
+ _XX___XX,
+ _X_X_X_X,
+ _X_X_X_X,
+ _X__X__X,
+ _X__X__X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_78[10] = { /* code 78 */
+ ________,
+ ________,
+ _XX__X__,
+ _XX__X__,
+ _X_X_X__,
+ _X_X_X__,
+ _X__XX__,
+ _X__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_79[10] = { /* code 79 */
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_80[10] = { /* code 80 */
+ ________,
+ ________,
+ _XXX____,
+ _X__X___,
+ _X__X___,
+ _XXX____,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_81[10] = { /* code 81 */
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X_X_X__,
+ _X__X___,
+ __XX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_82[10] = { /* code 82 */
+ ________,
+ ________,
+ _XXXX___,
+ _X___X__,
+ _X___X__,
+ _XXXX___,
+ _X___X__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_83[10] = { /* code 83 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ __X_____,
+ ___X____,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_84[10] = { /* code 84 */
+ ________,
+ ________,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_85[10] = { /* code 85 */
+ ________,
+ ________,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_86[10] = { /* code 86 */
+ ________,
+ ________,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_87[10] = { /* code 87 */
+ ________,
+ ________,
+ _X_____X,
+ _X_____X,
+ __X_X_X_,
+ __X_X_X_,
+ ___X_X__,
+ ___X_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_88[10] = { /* code 88 */
+ ________,
+ ________,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ __X_X___,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_89[10] = { /* code 89 */
+ ________,
+ ________,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_90[10] = { /* code 90 */
+ ________,
+ ________,
+ _XXXX___,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_91[10] = { /* code 91 */
+ ________,
+ ________,
+ _XX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _XX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_92[10] = { /* code 92 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_93[10] = { /* code 93 */
+ ________,
+ ________,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_94[10] = { /* code 94 */
+ ________,
+ ________,
+ __X_____,
+ _X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_95[10] = { /* code 95 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_96[10] = { /* code 96 */
+ ________,
+ _X______,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_97[10] = { /* code 97 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ___X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_98[10] = { /* code 98 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _XXX____,
+ _X__X___,
+ _X__X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_99[10] = { /* code 99 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _X______,
+ _X______,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_100[10] = { /* code 100 */
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ __XXX___,
+ _X__X___,
+ _X__X___,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_101[10] = { /* code 101 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _X_X____,
+ _X______,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_102[10] = { /* code 102 */
+ ________,
+ ________,
+ __X_____,
+ _X______,
+ _XX_____,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_103[10] = { /* code 103 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X__X___,
+ _X__X___,
+ __XXX___,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_104[10] = { /* code 104 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _XX_____,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_105[10] = { /* code 105 */
+ ________,
+ ________,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_106[10] = { /* code 106 */
+ ________,
+ ________,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_107[10] = { /* code 107 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X_X____,
+ _XX_____,
+ _X_X____,
+ _X_X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_108[10] = { /* code 108 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_109[10] = { /* code 109 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ _X_X_X__,
+ _X_X_X__,
+ _X_X_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_110[10] = { /* code 110 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_111[10] = { /* code 111 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_112[10] = { /* code 112 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _X__X___,
+ _X__X___,
+ _XXX____,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_113[10] = { /* code 113 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X__X___,
+ _X__X___,
+ __XXX___,
+ ____X___,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_114[10] = { /* code 114 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_115[10] = { /* code 115 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _X______,
+ ___X____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_116[10] = { /* code 116 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _XX_____,
+ _X______,
+ _X______,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_117[10] = { /* code 117 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_118[10] = { /* code 118 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_119[10] = { /* code 119 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X_X__,
+ _X_X_X__,
+ __X_X___,
+ __X_X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_120[10] = { /* code 120 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X_X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_121[10] = { /* code 121 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_122[10] = { /* code 122 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ___X____,
+ _X______,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_123[10] = { /* code 123 */
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_124[10] = { /* code 124 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_125[10] = { /* code 125 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10S_ASCII_126[10] = { /* code 126 */
+ ________,
+ ________,
+ _X_X____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font10S_ASCII_CharInfo[96] = {
+ { 2, 2, 1, acFont10S_ASCII_32 } /* code 32 */
+ ,{ 2, 2, 1, acFont10S_ASCII_33 } /* code 33 */
+ ,{ 4, 4, 1, acFont10S_ASCII_34 } /* code 34 */
+ ,{ 6, 6, 1, acFont10S_ASCII_35 } /* code 35 */
+ ,{ 4, 4, 1, acFont10S_ASCII_36 } /* code 36 */
+ ,{ 5, 5, 1, acFont10S_ASCII_37 } /* code 37 */
+ ,{ 5, 5, 1, acFont10S_ASCII_38 } /* code 38 */
+ ,{ 2, 2, 1, acFont10S_ASCII_39 } /* code 39 */
+ ,{ 3, 3, 1, acFont10S_ASCII_40 } /* code 40 */
+ ,{ 3, 3, 1, acFont10S_ASCII_41 } /* code 41 */
+ ,{ 3, 3, 1, acFont10S_ASCII_42 } /* code 42 */
+ ,{ 4, 4, 1, acFont10S_ASCII_43 } /* code 43 */
+ ,{ 2, 2, 1, acFont10S_ASCII_44 } /* code 44 */
+ ,{ 3, 3, 1, acFont10S_ASCII_45 } /* code 45 */
+ ,{ 2, 2, 1, acFont10S_ASCII_46 } /* code 46 */
+ ,{ 3, 3, 1, acFont10S_ASCII_47 } /* code 47 */
+ ,{ 5, 5, 1, acFont10S_ASCII_48 } /* code 48 */
+ ,{ 3, 3, 1, acFont10S_ASCII_49 } /* code 49 */
+ ,{ 5, 5, 1, acFont10S_ASCII_50 } /* code 50 */
+ ,{ 5, 5, 1, acFont10S_ASCII_51 } /* code 51 */
+ ,{ 5, 5, 1, acFont10S_ASCII_52 } /* code 52 */
+ ,{ 4, 4, 1, acFont10S_ASCII_53 } /* code 53 */
+ ,{ 5, 5, 1, acFont10S_ASCII_54 } /* code 54 */
+ ,{ 4, 4, 1, acFont10S_ASCII_55 } /* code 55 */
+ ,{ 5, 5, 1, acFont10S_ASCII_56 } /* code 56 */
+ ,{ 5, 5, 1, acFont10S_ASCII_57 } /* code 57 */
+ ,{ 2, 2, 1, acFont10S_ASCII_58 } /* code 58 */
+ ,{ 2, 2, 1, acFont10S_ASCII_59 } /* code 59 */
+ ,{ 4, 4, 1, acFont10S_ASCII_60 } /* code 60 */
+ ,{ 4, 4, 1, acFont10S_ASCII_61 } /* code 61 */
+ ,{ 4, 4, 1, acFont10S_ASCII_62 } /* code 62 */
+ ,{ 5, 5, 1, acFont10S_ASCII_63 } /* code 63 */
+ ,{ 8, 8, 1, acFont10S_ASCII_64 } /* code 64 */
+ ,{ 6, 6, 1, acFont10S_ASCII_65 } /* code 65 */
+ ,{ 6, 6, 1, acFont10S_ASCII_66 } /* code 66 */
+ ,{ 6, 6, 1, acFont10S_ASCII_67 } /* code 67 */
+ ,{ 6, 6, 1, acFont10S_ASCII_68 } /* code 68 */
+ ,{ 5, 5, 1, acFont10S_ASCII_69 } /* code 69 */
+ ,{ 5, 5, 1, acFont10S_ASCII_70 } /* code 70 */
+ ,{ 6, 6, 1, acFont10S_ASCII_71 } /* code 71 */
+ ,{ 5, 5, 1, acFont10S_ASCII_72 } /* code 72 */
+ ,{ 2, 2, 1, acFont10S_ASCII_73 } /* code 73 */
+ ,{ 4, 4, 1, acFont10S_ASCII_74 } /* code 74 */
+ ,{ 5, 5, 1, acFont10S_ASCII_75 } /* code 75 */
+ ,{ 4, 4, 1, acFont10S_ASCII_76 } /* code 76 */
+ ,{ 8, 8, 1, acFont10S_ASCII_77 } /* code 77 */
+ ,{ 6, 6, 1, acFont10S_ASCII_78 } /* code 78 */
+ ,{ 6, 6, 1, acFont10S_ASCII_79 } /* code 79 */
+ ,{ 5, 5, 1, acFont10S_ASCII_80 } /* code 80 */
+ ,{ 6, 6, 1, acFont10S_ASCII_81 } /* code 81 */
+ ,{ 6, 6, 1, acFont10S_ASCII_82 } /* code 82 */
+ ,{ 5, 5, 1, acFont10S_ASCII_83 } /* code 83 */
+ ,{ 5, 5, 1, acFont10S_ASCII_84 } /* code 84 */
+ ,{ 6, 6, 1, acFont10S_ASCII_85 } /* code 85 */
+ ,{ 6, 6, 1, acFont10S_ASCII_86 } /* code 86 */
+ ,{ 8, 8, 1, acFont10S_ASCII_87 } /* code 87 */
+ ,{ 6, 6, 1, acFont10S_ASCII_88 } /* code 88 */
+ ,{ 6, 6, 1, acFont10S_ASCII_89 } /* code 89 */
+ ,{ 5, 5, 1, acFont10S_ASCII_90 } /* code 90 */
+ ,{ 3, 3, 1, acFont10S_ASCII_91 } /* code 91 */
+ ,{ 3, 3, 1, acFont10S_ASCII_92 } /* code 92 */
+ ,{ 3, 3, 1, acFont10S_ASCII_93 } /* code 93 */
+ ,{ 4, 4, 1, acFont10S_ASCII_94 } /* code 94 */
+ ,{ 5, 5, 1, acFont10S_ASCII_95 } /* code 95 */
+ ,{ 3, 3, 1, acFont10S_ASCII_96 } /* code 96 */
+ ,{ 4, 4, 1, acFont10S_ASCII_97 } /* code 97 */
+ ,{ 5, 5, 1, acFont10S_ASCII_98 } /* code 98 */
+ ,{ 4, 4, 1, acFont10S_ASCII_99 } /* code 99 */
+ ,{ 5, 5, 1, acFont10S_ASCII_100 } /* code 100 */
+ ,{ 4, 4, 1, acFont10S_ASCII_101 } /* code 101 */
+ ,{ 3, 3, 1, acFont10S_ASCII_102 } /* code 102 */
+ ,{ 5, 5, 1, acFont10S_ASCII_103 } /* code 103 */
+ ,{ 4, 4, 1, acFont10S_ASCII_104 } /* code 104 */
+ ,{ 2, 2, 1, acFont10S_ASCII_105 } /* code 105 */
+ ,{ 2, 2, 1, acFont10S_ASCII_106 } /* code 106 */
+ ,{ 4, 4, 1, acFont10S_ASCII_107 } /* code 107 */
+ ,{ 2, 2, 1, acFont10S_ASCII_108 } /* code 108 */
+ ,{ 6, 6, 1, acFont10S_ASCII_109 } /* code 109 */
+ ,{ 4, 4, 1, acFont10S_ASCII_110 } /* code 110 */
+ ,{ 5, 5, 1, acFont10S_ASCII_111 } /* code 111 */
+ ,{ 5, 5, 1, acFont10S_ASCII_112 } /* code 112 */
+ ,{ 5, 5, 1, acFont10S_ASCII_113 } /* code 113 */
+ ,{ 3, 3, 1, acFont10S_ASCII_114 } /* code 114 */
+ ,{ 4, 4, 1, acFont10S_ASCII_115 } /* code 115 */
+ ,{ 3, 3, 1, acFont10S_ASCII_116 } /* code 116 */
+ ,{ 4, 4, 1, acFont10S_ASCII_117 } /* code 117 */
+ ,{ 4, 4, 1, acFont10S_ASCII_118 } /* code 118 */
+ ,{ 6, 6, 1, acFont10S_ASCII_119 } /* code 119 */
+ ,{ 4, 4, 1, acFont10S_ASCII_120 } /* code 120 */
+ ,{ 4, 4, 1, acFont10S_ASCII_121 } /* code 121 */
+ ,{ 4, 4, 1, acFont10S_ASCII_122 } /* code 122 */
+ ,{ 3, 3, 1, acFont10S_ASCII_123 } /* code 123 */
+ ,{ 2, 2, 1, acFont10S_ASCII_124 } /* code 124 */
+ ,{ 3, 3, 1, acFont10S_ASCII_125 } /* code 125 */
+ ,{ 4, 4, 1, acFont10S_ASCII_126 } /* code 126 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font10S_ASCII_FontProp1 = {
+ 32 /* first character */
+ ,126 /* last character */
+ ,&GUI_Font10S_ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font10S_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,10 /* height of font */
+ ,10 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font10S_ASCII_FontProp1}
+ , 8, 4, 6
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Font/F10_1.c b/User/lib/lcd/gui/Font/F10_1.c
new file mode 100644
index 0000000..e77730e
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F10_1.c
@@ -0,0 +1,1687 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F10_1.C
+Purpose : ISO 8859-1 West European Character Set similar to Swiss
+Height : 10
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+/* The character codes 0x80 - 0x9f are not part of the
+ ISO 8859 extensions. If needed them you can include them
+ by using a modifyed copy of this file.
+*/
+
+#if 0
+
+GUI_CONST_STORAGE unsigned char acFont10_1_128[10] = { /* code 128 */
+ ________,
+ __XXXX__,
+ _X______,
+ XXXXXX__,
+ _X______,
+ XXXXXX__,
+ _X______,
+ __X_____,
+ ___XXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_129[10] = { /* code 129 */
+ ________,
+ _XXXXXX_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _XXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_130[10] = { /* code 130 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_131[10] = { /* code 131 */
+ ________,
+ ___XX___,
+ __X_____,
+ _XXX____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_132[10] = { /* code 132 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X_X_____,
+ X_X_____};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_133[20] = { /* code 133 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _X__X__X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_134[10] = { /* code 134 */
+ ________,
+ __X_____,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_135[10] = { /* code 135 */
+ ________,
+ __X_____,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ XXXXX___,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_136[10] = { /* code 136 */
+ ________,
+ __X_____,
+ _X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_137[20] = { /* code 137 */
+ ________,________,
+ _X__X___,________,
+ X_X_X___,________,
+ X_X_X___,________,
+ _X_X____,________,
+ ___X_X__,_X______,
+ __X_X_X_,X_X_____,
+ __X_X_X_,X_X_____,
+ __X__X__,_X______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_138[10] = { /* code 138 */
+ _X_X____,
+ __X_____,
+ _XXXXX__,
+ X____X__,
+ X_______,
+ _XXXX___,
+ _____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_139[10] = { /* code 139 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _X______,
+ X_______,
+ _X______,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_140[20] = { /* code 140 */
+ ________,________,
+ _XXX_XXX,XX______,
+ X___XX__,________,
+ X____X__,________,
+ X____XXX,XX______,
+ X____X__,________,
+ X____X__,________,
+ X___XX__,________,
+ _XXX_XXX,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_141[10] = { /* code 141 */
+ ________,
+ _XXXXXX_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _XXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_142[10] = { /* code 142 */
+ __X_X___,
+ ___X____,
+ XXXXXX__,
+ _____X__,
+ ___XX___,
+ __X_____,
+ _X______,
+ X_______,
+ XXXXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_143[10] = { /* code 143 */
+ ________,
+ _XXXXXX_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _XXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_144[10] = { /* code 144 */
+ ________,
+ _XXXXXX_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _XXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_145[10] = { /* code 145 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_146[10] = { /* code 146 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_147[10] = { /* code 147 */
+ ________,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_148[10] = { /* code 148 */
+ ________,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_149[10] = { /* code 149 */
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_150[10] = { /* code 150 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_151[20] = { /* code 151 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_152[10] = { /* code 152 */
+ ________,
+ _X_X____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_153[20] = { /* code 153 */
+ ________,________,
+ XXX_X___,X_______,
+ _X__XX_X,X_______,
+ _X__XX_X,X_______,
+ _X__X_X_,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_154[10] = { /* code 154 */
+ _X_X____,
+ __X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ _XX_____,
+ ___X____,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_155[10] = { /* code 155 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X_______,
+ _X______,
+ __X_____,
+ _X______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_156[20] = { /* code 156 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX_XXX,________,
+ X___X___,X_______,
+ X___XXXX,X_______,
+ X___X___,________,
+ X___X___,X_______,
+ _XXX_XXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_157[10] = { /* code 157 */
+ ________,
+ _XXXXXX_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _XXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_158[10] = { /* code 158 */
+ _X_X____,
+ __X_____,
+ ________,
+ XXXXX___,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_159[10] = { /* code 159 */
+ __X_X___,
+ X_____X_,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________};
+
+#endif
+
+GUI_CONST_STORAGE unsigned char acFont10_1_160[10] = { /* code 160 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_161[10] = { /* code 161 */
+ ________,
+ ________,
+ ________,
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_162[10] = { /* code 162 */
+ ________,
+ ___X____,
+ ___X____,
+ _XXX____,
+ X_X_X___,
+ X_X_____,
+ X_X_____,
+ X_X_X___,
+ _XXX____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_163[10] = { /* code 163 */
+ ________,
+ __XX____,
+ _X__X___,
+ _X______,
+ _X______,
+ XXX_____,
+ _X______,
+ _XX_____,
+ X__XX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_164[10] = { /* code 164 */
+ ________,
+ ________,
+ X____X__,
+ _XXXX___,
+ _X__X___,
+ _X__X___,
+ _XXXX___,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_165[10] = { /* code 165 */
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ XXXXX___,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_166[10] = { /* code 166 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_167[10] = { /* code 167 */
+ ________,
+ _XXX____,
+ X___X___,
+ _X______,
+ XXX_____,
+ X__X____,
+ _X__X___,
+ __X_X___,
+ ___X____,
+ X___X___};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_168[10] = { /* code 168 */
+ ________,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_169[10] = { /* code 169 */
+ ________,
+ __XXXX__,
+ _X____X_,
+ X__XXX_X,
+ X_X____X,
+ X_X____X,
+ X__XXX_X,
+ _X____X_,
+ __XXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_170[10] = { /* code 170 */
+ ________,
+ XXX_____,
+ __X_____,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_171[10] = { /* code 171 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_X___,
+ _X_X____,
+ X_X_____,
+ _X_X____,
+ __X_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_172[10] = { /* code 172 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ____X___,
+ ____X___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_173[10] = { /* code 173 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_174[10] = { /* code 174 */
+ ________,
+ __XXXX__,
+ _X____X_,
+ X_XXX__X,
+ X_X__X_X,
+ X_XXX__X,
+ X_X__X_X,
+ _X____X_,
+ __XXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_175[10] = { /* code 175 */
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_176[10] = { /* code 176 */
+ ________,
+ XXX_____,
+ X_X_____,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_177[10] = { /* code 177 */
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ ________,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_178[10] = { /* code 178 */
+ ________,
+ XXX_____,
+ __X_____,
+ _X______,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_179[10] = { /* code 179 */
+ ________,
+ XXX_____,
+ _X______,
+ __X_____,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_180[10] = { /* code 180 */
+ ________,
+ __X_____,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_181[10] = { /* code 181 */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXXX___,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_182[10] = { /* code 182 */
+ ________,
+ _XXXXX__,
+ XXX_X___,
+ XXX_X___,
+ _XX_X___,
+ __X_X___,
+ __X_X___,
+ __X_X___,
+ __X_X___,
+ __X_X___};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_183[10] = { /* code 183 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_184[10] = { /* code 184 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_185[10] = { /* code 185 */
+ ________,
+ __X_____,
+ _XX_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_186[10] = { /* code 186 */
+ ________,
+ _XX_____,
+ X__X____,
+ X__X____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_187[10] = { /* code 187 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X_X_____,
+ _X_X____,
+ __X_X___,
+ _X_X____,
+ X_X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_188[20] = { /* code 188 */
+ ________,________,
+ _X____X_,________,
+ XX___X__,________,
+ _X__X___,________,
+ _X__X___,________,
+ ___X__X_,________,
+ ___X_XX_,________,
+ __X_XXXX,________,
+ _X____X_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_189[20] = { /* code 189 */
+ ________,________,
+ __X____X,________,
+ _XX___X_,________,
+ __X__X__,________,
+ __X_X___,________,
+ ____X_XX,X_______,
+ ___X____,X_______,
+ __X____X,________,
+ __X___XX,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_190[20] = { /* code 190 */
+ ________,________,
+ XXX____X,________,
+ _X____X_,________,
+ __X__X__,________,
+ XXX__X__,________,
+ ____X__X,________,
+ ___X__XX,________,
+ __X__XXX,X_______,
+ __X____X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_191[10] = { /* code 191 */
+ ________,
+ ________,
+ __X_____,
+ ________,
+ __X_____,
+ __X_____,
+ _X______,
+ X_______,
+ X___X___,
+ _XXX____};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_192[10] = { /* code 192 */
+ __X_____,
+ ___X____,
+ __XXX___,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_193[10] = { /* code 193 */
+ ____X___,
+ ___X____,
+ __XXX___,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_194[10] = { /* code 194 */
+ ___X____,
+ __X_X___,
+ __XXX___,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_195[10] = { /* code 195 */
+ ___X_X__,
+ __X_X___,
+ __XXX___,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_196[10] = { /* code 196 */
+ __X_X___,
+ ________,
+ __XXX___,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_197[10] = { /* code 197 */
+ __XXX___,
+ __X_X___,
+ __XXX___,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_198[20] = { /* code 198 */
+ ________,________,
+ ___XXXXX,XX______,
+ ___X_X__,________,
+ __X__X__,________,
+ __X__XXX,XX______,
+ _X___X__,________,
+ _XXXXX__,________,
+ X____X__,________,
+ X____XXX,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_199[10] = { /* code 199 */
+ ________,
+ __XXX___,
+ _X___X__,
+ X_______,
+ X_______,
+ X_______,
+ _X___X__,
+ __XXXX__,
+ ___X____,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_200[10] = { /* code 200 */
+ _X______,
+ __X_____,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_201[10] = { /* code 201 */
+ ___X____,
+ __X_____,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_202[10] = { /* code 202 */
+ __X_____,
+ _X_X____,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_203[10] = { /* code 203 */
+ _X_X____,
+ ________,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_204[10] = { /* code 204 */
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_205[10] = { /* code 205 */
+ _X______,
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_206[10] = { /* code 206 */
+ X_______,
+ _X______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_207[10] = { /* code 207 */
+ _X______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_208[10] = { /* code 208 */
+ ________,
+ _XXXX___,
+ _X___X__,
+ _X____X_,
+ XXXX__X_,
+ _X____X_,
+ _X____X_,
+ _X___X__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_209[10] = { /* code 209 */
+ _X_X____,
+ X____X__,
+ XX___X__,
+ X_X__X__,
+ X_X__X__,
+ X__X_X__,
+ X__X_X__,
+ X___XX__,
+ X____X__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_210[10] = { /* code 210 */
+ __X_____,
+ ___X____,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_211[10] = { /* code 211 */
+ ____X___,
+ ___X____,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_212[10] = { /* code 212 */
+ ___X____,
+ __X_X___,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_213[10] = { /* code 213 */
+ ___X_X__,
+ __X_X___,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_214[10] = { /* code 214 */
+ __X_X___,
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_215[10] = { /* code 215 */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ _X_X____,
+ __X_____,
+ _X_X____,
+ X___X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_216[10] = { /* code 216 */
+ ________,
+ __XXX_X_,
+ _X___XX_,
+ X___X_X_,
+ X__X__X_,
+ X__X__X_,
+ X_X___X_,
+ _X___X__,
+ X_XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_217[10] = { /* code 217 */
+ __X_____,
+ ___X____,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_218[10] = { /* code 218 */
+ ___X____,
+ __X_____,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_219[10] = { /* code 219 */
+ __X_____,
+ _X_X____,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_220[10] = { /* code 220 */
+ __X_X___,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_221[10] = { /* code 221 */
+ ____X___,
+ X__X__X_,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_222[10] = { /* code 222 */
+ ________,
+ X_______,
+ X_______,
+ XXXXX___,
+ X____X__,
+ X____X__,
+ XXXXX___,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_223[10] = { /* code 223 */
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X__X____,
+ X__XX___,
+ X____X__,
+ X_X__X__,
+ X__XX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_224[10] = { /* code 224 */
+ __X_____,
+ ___X____,
+ ________,
+ _XXX____,
+ X___X___,
+ _XXXX___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_225[10] = { /* code 225 */
+ ___X____,
+ __X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ _XXXX___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_226[10] = { /* code 226 */
+ __X_____,
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ _XXXX___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_227[10] = { /* code 227 */
+ __X_X___,
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ _XXXX___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_228[10] = { /* code 228 */
+ ________,
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ _XXXX___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_229[10] = { /* code 229 */
+ _XXX____,
+ _X_X____,
+ _XXX____,
+ _XXX____,
+ X___X___,
+ _XXXX___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_230[20] = { /* code 230 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX_XXX,________,
+ X___X___,X_______,
+ _XXXXXXX,X_______,
+ X___X___,________,
+ X___X___,X_______,
+ _XXX_XXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_231[10] = { /* code 231 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X_______,
+ X___X___,
+ _XXX____,
+ __X_____,
+ ___X____};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_232[10] = { /* code 232 */
+ _X______,
+ __X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_233[10] = { /* code 233 */
+ ___X____,
+ __X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_234[10] = { /* code 234 */
+ __X_____,
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_235[10] = { /* code 235 */
+ ________,
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_236[10] = { /* code 236 */
+ X_______,
+ _X______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_237[10] = { /* code 237 */
+ _X______,
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_238[10] = { /* code 238 */
+ _X______,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_239[10] = { /* code 239 */
+ ________,
+ _X______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_240[10] = { /* code 240 */
+ ________,
+ __XXX___,
+ _X_X____,
+ ___X____,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_241[10] = { /* code 241 */
+ __X_X___,
+ _X_X____,
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_242[10] = { /* code 242 */
+ _X______,
+ __X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_243[10] = { /* code 243 */
+ ___X____,
+ __X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_244[10] = { /* code 244 */
+ __X_____,
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_245[10] = { /* code 245 */
+ __X_X___,
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_246[10] = { /* code 246 */
+ ________,
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_247[10] = { /* code 247 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ ________,
+ XXXXX___,
+ ________,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_248[10] = { /* code 248 */
+ ________,
+ ________,
+ ________,
+ _XX_X___,
+ X__XX___,
+ X_X_X___,
+ X_X_X___,
+ XX__X___,
+ X_XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_249[10] = { /* code 249 */
+ _X______,
+ __X_____,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_250[10] = { /* code 250 */
+ ___X____,
+ __X_____,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_251[10] = { /* code 251 */
+ __X_____,
+ _X_X____,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_252[10] = { /* code 252 */
+ ________,
+ _X_X____,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_253[10] = { /* code 253 */
+ ___X____,
+ __X_____,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_254[10] = { /* code 254 */
+ ________,
+ X_______,
+ X_______,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_1_255[10] = { /* code 255 */
+ ________,
+ _X_X____,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X______};
+
+
+
+GUI_CONST_STORAGE GUI_CHARINFO Font10_1_CharInfo[96] = {
+ { 3, 3, 1, acFont10_1_160 } /* code 160 */
+ ,{ 2, 2, 1, acFont10_1_161 } /* code 161 */
+ ,{ 6, 6, 1, acFont10_1_162 } /* code 162 */
+ ,{ 6, 6, 1, acFont10_1_163 } /* code 163 */
+ ,{ 7, 7, 1, acFont10_1_164 } /* code 164 */
+ ,{ 6, 6, 1, acFont10_1_165 } /* code 165 */
+ ,{ 2, 2, 1, acFont10_1_166 } /* code 166 */
+ ,{ 6, 6, 1, acFont10_1_167 } /* code 167 */
+ ,{ 4, 4, 1, acFont10_1_168 } /* code 168 */
+ ,{ 8, 8, 1, acFont10_1_169 } /* code 169 */
+ ,{ 4, 4, 1, acFont10_1_170 } /* code 170 */
+ ,{ 6, 6, 1, acFont10_1_171 } /* code 171 */
+ ,{ 6, 6, 1, acFont10_1_172 } /* code 172 */
+ ,{ 4, 4, 1, acFont10_1_173 } /* code 173 */
+ ,{ 8, 8, 1, acFont10_1_174 } /* code 174 */
+ ,{ 6, 6, 1, acFont10_1_175 } /* code 175 */
+ ,{ 4, 4, 1, acFont10_1_176 } /* code 176 */
+ ,{ 6, 6, 1, acFont10_1_177 } /* code 177 */
+ ,{ 4, 4, 1, acFont10_1_178 } /* code 178 */
+ ,{ 4, 4, 1, acFont10_1_179 } /* code 179 */
+ ,{ 4, 4, 1, acFont10_1_180 } /* code 180 */
+ ,{ 6, 6, 1, acFont10_1_181 } /* code 181 */
+ ,{ 6, 6, 1, acFont10_1_182 } /* code 182 */
+ ,{ 3, 3, 1, acFont10_1_183 } /* code 183 */
+ ,{ 4, 4, 1, acFont10_1_184 } /* code 184 */
+ ,{ 4, 4, 1, acFont10_1_185 } /* code 185 */
+ ,{ 5, 5, 1, acFont10_1_186 } /* code 186 */
+ ,{ 6, 6, 1, acFont10_1_187 } /* code 187 */
+ ,{ 9, 9, 2, acFont10_1_188 } /* code 188 */
+ ,{ 10, 10, 2, acFont10_1_189 } /* code 189 */
+ ,{ 10, 10, 2, acFont10_1_190 } /* code 190 */
+ ,{ 6, 6, 1, acFont10_1_191 } /* code 191 */
+ ,{ 8, 8, 1, acFont10_1_192 } /* code 192 */
+ ,{ 8, 8, 1, acFont10_1_193 } /* code 193 */
+ ,{ 8, 8, 1, acFont10_1_194 } /* code 194 */
+ ,{ 8, 8, 1, acFont10_1_195 } /* code 195 */
+ ,{ 8, 8, 1, acFont10_1_196 } /* code 196 */
+ ,{ 8, 8, 1, acFont10_1_197 } /* code 197 */
+ ,{ 11, 11, 2, acFont10_1_198 } /* code 198 */
+ ,{ 7, 7, 1, acFont10_1_199 } /* code 199 */
+ ,{ 6, 6, 1, acFont10_1_200 } /* code 200 */
+ ,{ 6, 6, 1, acFont10_1_201 } /* code 201 */
+ ,{ 6, 6, 1, acFont10_1_202 } /* code 202 */
+ ,{ 6, 6, 1, acFont10_1_203 } /* code 203 */
+ ,{ 2, 2, 1, acFont10_1_204 } /* code 204 */
+ ,{ 2, 2, 1, acFont10_1_205 } /* code 205 */
+ ,{ 2, 2, 1, acFont10_1_206 } /* code 206 */
+ ,{ 2, 2, 1, acFont10_1_207 } /* code 207 */
+ ,{ 8, 8, 1, acFont10_1_208 } /* code 208 */
+ ,{ 7, 7, 1, acFont10_1_209 } /* code 209 */
+ ,{ 8, 8, 1, acFont10_1_210 } /* code 210 */
+ ,{ 8, 8, 1, acFont10_1_211 } /* code 211 */
+ ,{ 8, 8, 1, acFont10_1_212 } /* code 212 */
+ ,{ 8, 8, 1, acFont10_1_213 } /* code 213 */
+ ,{ 8, 8, 1, acFont10_1_214 } /* code 214 */
+ ,{ 6, 6, 1, acFont10_1_215 } /* code 215 */
+ ,{ 8, 8, 1, acFont10_1_216 } /* code 216 */
+ ,{ 7, 7, 1, acFont10_1_217 } /* code 217 */
+ ,{ 7, 7, 1, acFont10_1_218 } /* code 218 */
+ ,{ 7, 7, 1, acFont10_1_219 } /* code 219 */
+ ,{ 7, 7, 1, acFont10_1_220 } /* code 220 */
+ ,{ 8, 8, 1, acFont10_1_221 } /* code 221 */
+ ,{ 7, 7, 1, acFont10_1_222 } /* code 222 */
+ ,{ 7, 7, 1, acFont10_1_223 } /* code 223 */
+ ,{ 6, 6, 1, acFont10_1_224 } /* code 224 */
+ ,{ 6, 6, 1, acFont10_1_225 } /* code 225 */
+ ,{ 6, 6, 1, acFont10_1_226 } /* code 226 */
+ ,{ 6, 6, 1, acFont10_1_227 } /* code 227 */
+ ,{ 6, 6, 1, acFont10_1_228 } /* code 228 */
+ ,{ 6, 6, 1, acFont10_1_229 } /* code 229 */
+ ,{ 10, 10, 2, acFont10_1_230 } /* code 230 */
+ ,{ 6, 6, 1, acFont10_1_231 } /* code 231 */
+ ,{ 6, 6, 1, acFont10_1_232 } /* code 232 */
+ ,{ 6, 6, 1, acFont10_1_233 } /* code 233 */
+ ,{ 6, 6, 1, acFont10_1_234 } /* code 234 */
+ ,{ 6, 6, 1, acFont10_1_235 } /* code 235 */
+ ,{ 2, 2, 1, acFont10_1_236 } /* code 236 */
+ ,{ 2, 2, 1, acFont10_1_237 } /* code 237 */
+ ,{ 2, 2, 1, acFont10_1_238 } /* code 238 */
+ ,{ 2, 2, 1, acFont10_1_239 } /* code 239 */
+ ,{ 6, 6, 1, acFont10_1_240 } /* code 240 */
+ ,{ 6, 6, 1, acFont10_1_241 } /* code 241 */
+ ,{ 6, 6, 1, acFont10_1_242 } /* code 242 */
+ ,{ 6, 6, 1, acFont10_1_243 } /* code 243 */
+ ,{ 6, 6, 1, acFont10_1_244 } /* code 244 */
+ ,{ 6, 6, 1, acFont10_1_245 } /* code 245 */
+ ,{ 6, 6, 1, acFont10_1_246 } /* code 246 */
+ ,{ 6, 6, 1, acFont10_1_247 } /* code 247 */
+ ,{ 6, 6, 1, acFont10_1_248 } /* code 248 */
+ ,{ 6, 6, 1, acFont10_1_249 } /* code 249 */
+ ,{ 6, 6, 1, acFont10_1_250 } /* code 250 */
+ ,{ 6, 6, 1, acFont10_1_251 } /* code 251 */
+ ,{ 6, 6, 1, acFont10_1_252 } /* code 252 */
+ ,{ 6, 6, 1, acFont10_1_253 } /* code 253 */
+ ,{ 6, 6, 1, acFont10_1_254 } /* code 254 */
+ ,{ 6, 6, 1, acFont10_1_255 } /* code 255 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP Font10_1Prop1 = {
+ 160 /* first character */
+ ,255 /* last character */
+ ,&Font10_1_CharInfo[0] /* address of first character */
+ ,&GUI_Font10ASCIIProp1 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font10_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,10 /* height of font */
+ ,10 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&Font10_1Prop1}
+ ,9, 6, 8
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Font/F10_ASCII.c b/User/lib/lcd/gui/Font/F10_ASCII.c
new file mode 100644
index 0000000..389e96b
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F10_ASCII.c
@@ -0,0 +1,1281 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F10_ASCII.c
+Purpose : ASCII character set
+Height : 10
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_32[10] = { /* code 32 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_33[10] = { /* code 33 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_34[10] = { /* code 34 */
+ ________,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_35[10] = { /* code 35 */
+ ________,
+ __X_X___,
+ __X_X___,
+ XXXXX___,
+ _X_X____,
+ _X_X____,
+ XXXXX___,
+ X_X_____,
+ X_X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_36[10] = { /* code 36 */
+ ________,
+ _XXX____,
+ X_X_X___,
+ X_X_____,
+ _XXX____,
+ __X_X___,
+ __X_X___,
+ X_X_X___,
+ _XXX____,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_37[20] = { /* code 37 */
+ ________,________,
+ _XX___X_,________,
+ X__X_X__,________,
+ X__X_X__,________,
+ _XX_X___,________,
+ ____X_XX,________,
+ ___X_X__,X_______,
+ ___X_X__,X_______,
+ __X___XX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_38[10] = { /* code 38 */
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ _X_X____,
+ X___XX__,
+ X___X___,
+ _XXX_X__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_39[10] = { /* code 39 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_40[10] = { /* code 40 */
+ ________,
+ __X_____,
+ _X______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _X______,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_41[10] = { /* code 41 */
+ ________,
+ X_______,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_42[10] = { /* code 42 */
+ ________,
+ _X______,
+ XXX_____,
+ _X______,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_43[10] = { /* code 43 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_44[10] = { /* code 44 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_45[10] = { /* code 45 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_46[10] = { /* code 46 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_47[10] = { /* code 47 */
+ ________,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_48[10] = { /* code 48 */
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_49[10] = { /* code 49 */
+ ________,
+ __X_____,
+ _XX_____,
+ X_X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_50[10] = { /* code 50 */
+ ________,
+ _XXX____,
+ X___X___,
+ ____X___,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_51[10] = { /* code 51 */
+ ________,
+ _XXX____,
+ X___X___,
+ ____X___,
+ __XX____,
+ ____X___,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_52[10] = { /* code 52 */
+ ________,
+ ___X____,
+ __XX____,
+ _X_X____,
+ _X_X____,
+ X__X____,
+ XXXXX___,
+ ___X____,
+ ___X____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_53[10] = { /* code 53 */
+ ________,
+ _XXXX___,
+ _X______,
+ X_______,
+ XXXX____,
+ ____X___,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_54[10] = { /* code 54 */
+ ________,
+ _XXX____,
+ X___X___,
+ X_______,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_55[10] = { /* code 55 */
+ ________,
+ XXXXX___,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_56[10] = { /* code 56 */
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_57[10] = { /* code 57 */
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_58[10] = { /* code 58 */
+ ________,
+ ________,
+ ________,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_59[10] = { /* code 59 */
+ ________,
+ ________,
+ ________,
+ X_______,
+ ________,
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_60[10] = { /* code 60 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ _XXX____,
+ X_______,
+ _XXX____,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_61[10] = { /* code 61 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ________,
+ XXXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_62[10] = { /* code 62 */
+ ________,
+ ________,
+ ________,
+ X_______,
+ _XXX____,
+ ____X___,
+ _XXX____,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_63[10] = { /* code 63 */
+ ________,
+ _XXX____,
+ X___X___,
+ ____X___,
+ ___X____,
+ __X_____,
+ __X_____,
+ ________,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_64[20] = { /* code 64 */
+ ________,________,
+ ___XXXXX,________,
+ _XX_____,X_______,
+ _X__XX_X,_X______,
+ X__X__XX,_X______,
+ X_X___X_,_X______,
+ X_X__XX_,X_______,
+ X__XX_XX,________,
+ _X______,_X______,
+ __XXXXXX,X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_65[10] = { /* code 65 */
+ ________,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_66[10] = { /* code 66 */
+ ________,
+ XXXXX___,
+ X____X__,
+ X____X__,
+ XXXXXX__,
+ X____X__,
+ X____X__,
+ X____X__,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_67[10] = { /* code 67 */
+ ________,
+ __XXX___,
+ _X___X__,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _X___X__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_68[10] = { /* code 68 */
+ ________,
+ XXXX____,
+ X___X___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___X___,
+ XXXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_69[10] = { /* code 69 */
+ ________,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXXX___,
+ X_______,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_70[10] = { /* code 70 */
+ ________,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_71[10] = { /* code 71 */
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_______,
+ X___XXX_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_72[10] = { /* code 72 */
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ XXXXXX__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_73[10] = { /* code 73 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_74[10] = { /* code 74 */
+ ________,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ X__X____,
+ X__X____,
+ _XX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_75[10] = { /* code 75 */
+ ________,
+ X____X__,
+ X___X___,
+ X__X____,
+ X_XX____,
+ XX_X____,
+ X___X___,
+ X___X___,
+ X____X__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_76[10] = { /* code 76 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_77[10] = { /* code 77 */
+ ________,
+ X_____X_,
+ XX___XX_,
+ XX___XX_,
+ X_X_X_X_,
+ X_X_X_X_,
+ X_X_X_X_,
+ X__X__X_,
+ X__X__X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_78[10] = { /* code 78 */
+ ________,
+ X____X__,
+ XX___X__,
+ X_X__X__,
+ X_X__X__,
+ X__X_X__,
+ X__X_X__,
+ X___XX__,
+ X____X__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_79[10] = { /* code 79 */
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_80[10] = { /* code 80 */
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_81[10] = { /* code 81 */
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X__XX_X_,
+ _X___X__,
+ __XXX_X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_82[10] = { /* code 82 */
+ ________,
+ XXXXX___,
+ X____X__,
+ X____X__,
+ XXXXX___,
+ X__X____,
+ X___X___,
+ X___X___,
+ X____X__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_83[10] = { /* code 83 */
+ ________,
+ _XXXX___,
+ X____X__,
+ X_______,
+ _XX_____,
+ ___XX___,
+ _____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_84[10] = { /* code 84 */
+ ________,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_85[10] = { /* code 85 */
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_86[10] = { /* code 86 */
+ ________,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_87[20] = { /* code 87 */
+ ________,________,
+ X____X__,__X_____,
+ X___X_X_,__X_____,
+ _X__X_X_,_X______,
+ _X__X_X_,_X______,
+ _X_X___X,_X______,
+ _X_X___X,_X______,
+ __X_____,X_______,
+ __X_____,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_88[10] = { /* code 88 */
+ ________,
+ X____X__,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ X____X__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_89[10] = { /* code 89 */
+ ________,
+ X_____X_,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_90[10] = { /* code 90 */
+ ________,
+ _XXXXX__,
+ ____X___,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ XXXXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_91[10] = { /* code 91 */
+ ________,
+ XX______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_92[10] = { /* code 92 */
+ ________,
+ X_______,
+ X_______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_93[10] = { /* code 93 */
+ ________,
+ XX______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_94[10] = { /* code 94 */
+ ________,
+ __X_____,
+ _X_X____,
+ _X_X____,
+ X___X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_95[10] = { /* code 95 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_96[10] = { /* code 96 */
+ ________,
+ X_______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_97[10] = { /* code 97 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ _XXXX___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_98[10] = { /* code 98 */
+ ________,
+ X_______,
+ X_______,
+ X_XX____,
+ XX__X___,
+ X___X___,
+ X___X___,
+ XX__X___,
+ X_XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_99[10] = { /* code 99 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X_______,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_100[10] = { /* code 100 */
+ ________,
+ ____X___,
+ ____X___,
+ _XX_X___,
+ X__XX___,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_101[10] = { /* code 101 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_102[10] = { /* code 102 */
+ ________,
+ __X_____,
+ _X______,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_103[10] = { /* code 103 */
+ ________,
+ ________,
+ ________,
+ _XX_X___,
+ X__XX___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ____X___,
+ _XXX____};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_104[10] = { /* code 104 */
+ ________,
+ X_______,
+ X_______,
+ X_XX____,
+ XX__X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_105[10] = { /* code 105 */
+ ________,
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_106[10] = { /* code 106 */
+ ________,
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_107[10] = { /* code 107 */
+ ________,
+ X_______,
+ X_______,
+ X__X____,
+ X_X_____,
+ XX______,
+ X_X_____,
+ X_X_____,
+ X__X____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_108[10] = { /* code 108 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_109[10] = { /* code 109 */
+ ________,
+ ________,
+ ________,
+ X_XXXX__,
+ XX_X__X_,
+ X__X__X_,
+ X__X__X_,
+ X__X__X_,
+ X__X__X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_110[10] = { /* code 110 */
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_111[10] = { /* code 111 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_112[10] = { /* code 112 */
+ ________,
+ ________,
+ ________,
+ X_XX____,
+ XX__X___,
+ X___X___,
+ X___X___,
+ XX__X___,
+ X_XX____,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_113[10] = { /* code 113 */
+ ________,
+ ________,
+ ________,
+ _XX_X___,
+ X__XX___,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_114[10] = { /* code 114 */
+ ________,
+ ________,
+ ________,
+ X_X_____,
+ XX______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_115[10] = { /* code 115 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ _XX_____,
+ ___X____,
+ X___X___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_116[10] = { /* code 116 */
+ ________,
+ X_______,
+ X_______,
+ XX______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ XX______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_117[10] = { /* code 117 */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_118[10] = { /* code 118 */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_119[20] = { /* code 119 */
+ ________,________,
+ ________,________,
+ ________,________,
+ X___X___,X_______,
+ X__X_X__,X_______,
+ _X_X_X_X,________,
+ _X_X_X_X,________,
+ __X___X_,________,
+ __X___X_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_120[10] = { /* code 120 */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X_X____,
+ X___X___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_121[10] = { /* code 121 */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_122[10] = { /* code 122 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_123[10] = { /* code 123 */
+ ________,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ X_______,
+ _X______,
+ _X______,
+ _X______,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_124[10] = { /* code 124 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_125[10] = { /* code 125 */
+ ________,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ ___X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont10_ASCII_126[10] = { /* code 126 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_X___,
+ X_XX____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font10_ASCII_CharInfo[96] = {
+ { 3, 3, 1, acFont10_ASCII_32 } /* code 32 */
+ ,{ 2, 2, 1, acFont10_ASCII_33 } /* code 33 */
+ ,{ 4, 4, 1, acFont10_ASCII_34 } /* code 34 */
+ ,{ 6, 6, 1, acFont10_ASCII_35 } /* code 35 */
+ ,{ 6, 6, 1, acFont10_ASCII_36 } /* code 36 */
+ ,{ 10, 10, 2, acFont10_ASCII_37 } /* code 37 */
+ ,{ 7, 7, 1, acFont10_ASCII_38 } /* code 38 */
+ ,{ 2, 2, 1, acFont10_ASCII_39 } /* code 39 */
+ ,{ 4, 4, 1, acFont10_ASCII_40 } /* code 40 */
+ ,{ 4, 4, 1, acFont10_ASCII_41 } /* code 41 */
+ ,{ 4, 4, 1, acFont10_ASCII_42 } /* code 42 */
+ ,{ 6, 6, 1, acFont10_ASCII_43 } /* code 43 */
+ ,{ 3, 3, 1, acFont10_ASCII_44 } /* code 44 */
+ ,{ 4, 4, 1, acFont10_ASCII_45 } /* code 45 */
+ ,{ 3, 3, 1, acFont10_ASCII_46 } /* code 46 */
+ ,{ 3, 3, 1, acFont10_ASCII_47 } /* code 47 */
+ ,{ 6, 6, 1, acFont10_ASCII_48 } /* code 48 */
+ ,{ 6, 6, 1, acFont10_ASCII_49 } /* code 49 */
+ ,{ 6, 6, 1, acFont10_ASCII_50 } /* code 50 */
+ ,{ 6, 6, 1, acFont10_ASCII_51 } /* code 51 */
+ ,{ 6, 6, 1, acFont10_ASCII_52 } /* code 52 */
+ ,{ 6, 6, 1, acFont10_ASCII_53 } /* code 53 */
+ ,{ 6, 6, 1, acFont10_ASCII_54 } /* code 54 */
+ ,{ 6, 6, 1, acFont10_ASCII_55 } /* code 55 */
+ ,{ 6, 6, 1, acFont10_ASCII_56 } /* code 56 */
+ ,{ 6, 6, 1, acFont10_ASCII_57 } /* code 57 */
+ ,{ 3, 3, 1, acFont10_ASCII_58 } /* code 58 */
+ ,{ 3, 3, 1, acFont10_ASCII_59 } /* code 59 */
+ ,{ 6, 6, 1, acFont10_ASCII_60 } /* code 60 */
+ ,{ 6, 6, 1, acFont10_ASCII_61 } /* code 61 */
+ ,{ 6, 6, 1, acFont10_ASCII_62 } /* code 62 */
+ ,{ 6, 6, 1, acFont10_ASCII_63 } /* code 63 */
+ ,{ 11, 11, 2, acFont10_ASCII_64 } /* code 64 */
+ ,{ 8, 8, 1, acFont10_ASCII_65 } /* code 65 */
+ ,{ 7, 7, 1, acFont10_ASCII_66 } /* code 66 */
+ ,{ 7, 7, 1, acFont10_ASCII_67 } /* code 67 */
+ ,{ 7, 7, 1, acFont10_ASCII_68 } /* code 68 */
+ ,{ 6, 6, 1, acFont10_ASCII_69 } /* code 69 */
+ ,{ 6, 6, 1, acFont10_ASCII_70 } /* code 70 */
+ ,{ 8, 8, 1, acFont10_ASCII_71 } /* code 71 */
+ ,{ 7, 7, 1, acFont10_ASCII_72 } /* code 72 */
+ ,{ 2, 2, 1, acFont10_ASCII_73 } /* code 73 */
+ ,{ 5, 5, 1, acFont10_ASCII_74 } /* code 74 */
+ ,{ 7, 7, 1, acFont10_ASCII_75 } /* code 75 */
+ ,{ 6, 6, 1, acFont10_ASCII_76 } /* code 76 */
+ ,{ 8, 8, 1, acFont10_ASCII_77 } /* code 77 */
+ ,{ 7, 7, 1, acFont10_ASCII_78 } /* code 78 */
+ ,{ 8, 8, 1, acFont10_ASCII_79 } /* code 79 */
+ ,{ 6, 6, 1, acFont10_ASCII_80 } /* code 80 */
+ ,{ 8, 8, 1, acFont10_ASCII_81 } /* code 81 */
+ ,{ 7, 7, 1, acFont10_ASCII_82 } /* code 82 */
+ ,{ 7, 7, 1, acFont10_ASCII_83 } /* code 83 */
+ ,{ 6, 6, 1, acFont10_ASCII_84 } /* code 84 */
+ ,{ 7, 7, 1, acFont10_ASCII_85 } /* code 85 */
+ ,{ 8, 8, 1, acFont10_ASCII_86 } /* code 86 */
+ ,{ 11, 11, 2, acFont10_ASCII_87 } /* code 87 */
+ ,{ 7, 7, 1, acFont10_ASCII_88 } /* code 88 */
+ ,{ 8, 8, 1, acFont10_ASCII_89 } /* code 89 */
+ ,{ 7, 7, 1, acFont10_ASCII_90 } /* code 90 */
+ ,{ 3, 3, 1, acFont10_ASCII_91 } /* code 91 */
+ ,{ 3, 3, 1, acFont10_ASCII_92 } /* code 92 */
+ ,{ 3, 3, 1, acFont10_ASCII_93 } /* code 93 */
+ ,{ 5, 5, 1, acFont10_ASCII_94 } /* code 94 */
+ ,{ 6, 6, 1, acFont10_ASCII_95 } /* code 95 */
+ ,{ 4, 4, 1, acFont10_ASCII_96 } /* code 96 */
+ ,{ 6, 6, 1, acFont10_ASCII_97 } /* code 97 */
+ ,{ 6, 6, 1, acFont10_ASCII_98 } /* code 98 */
+ ,{ 6, 6, 1, acFont10_ASCII_99 } /* code 99 */
+ ,{ 6, 6, 1, acFont10_ASCII_100 } /* code 100 */
+ ,{ 6, 6, 1, acFont10_ASCII_101 } /* code 101 */
+ ,{ 4, 4, 1, acFont10_ASCII_102 } /* code 102 */
+ ,{ 6, 6, 1, acFont10_ASCII_103 } /* code 103 */
+ ,{ 6, 6, 1, acFont10_ASCII_104 } /* code 104 */
+ ,{ 2, 2, 1, acFont10_ASCII_105 } /* code 105 */
+ ,{ 2, 2, 1, acFont10_ASCII_106 } /* code 106 */
+ ,{ 5, 5, 1, acFont10_ASCII_107 } /* code 107 */
+ ,{ 2, 2, 1, acFont10_ASCII_108 } /* code 108 */
+ ,{ 8, 8, 1, acFont10_ASCII_109 } /* code 109 */
+ ,{ 6, 6, 1, acFont10_ASCII_110 } /* code 110 */
+ ,{ 6, 6, 1, acFont10_ASCII_111 } /* code 111 */
+ ,{ 6, 6, 1, acFont10_ASCII_112 } /* code 112 */
+ ,{ 6, 6, 1, acFont10_ASCII_113 } /* code 113 */
+ ,{ 4, 4, 1, acFont10_ASCII_114 } /* code 114 */
+ ,{ 6, 6, 1, acFont10_ASCII_115 } /* code 115 */
+ ,{ 3, 3, 1, acFont10_ASCII_116 } /* code 116 */
+ ,{ 6, 6, 1, acFont10_ASCII_117 } /* code 117 */
+ ,{ 6, 6, 1, acFont10_ASCII_118 } /* code 118 */
+ ,{ 10, 10, 2, acFont10_ASCII_119 } /* code 119 */
+ ,{ 6, 6, 1, acFont10_ASCII_120 } /* code 120 */
+ ,{ 6, 6, 1, acFont10_ASCII_121 } /* code 121 */
+ ,{ 6, 6, 1, acFont10_ASCII_122 } /* code 122 */
+ ,{ 4, 4, 1, acFont10_ASCII_123 } /* code 123 */
+ ,{ 2, 2, 1, acFont10_ASCII_124 } /* code 124 */
+ ,{ 4, 4, 1, acFont10_ASCII_125 } /* code 125 */
+ ,{ 6, 6, 1, acFont10_ASCII_126 } /* code 126 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font10ASCIIProp1 = {
+ 32 /* first character */
+ ,126 /* last character */
+ ,&GUI_Font10_ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font10_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,10 /* height of font */
+ ,10 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font10ASCIIProp1}
+ , 9, 6, 8
+};
+
+/*************************** End of file ****************************/
diff --git a/User/lib/lcd/gui/Font/F13B_1.c b/User/lib/lcd/gui/Font/F13B_1.c
new file mode 100644
index 0000000..9509d7a
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F13B_1.c
@@ -0,0 +1,1581 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F13B_1.c
+Purpose : ISO 8859-1 West European Character Set, bold
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+/* Start of unicode area */
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00A0[ 13] = { /* code 00A0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00A1[ 13] = { /* code 00A1 */
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00A2[ 13] = { /* code 00A2 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ __XXXX__,
+ _XX_X___,
+ _XX_X___,
+ _XX_X___,
+ _XX_X___,
+ __XXXX__,
+ ____X___,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00A3[ 13] = { /* code 00A3 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _XX__X__,
+ _XX_____,
+ _XX_____,
+ XXXXX___,
+ _XX_____,
+ _XX_____,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00A4[ 13] = { /* code 00A4 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X____X__,
+ _XXXX___,
+ _X__X___,
+ _X__X___,
+ _XXXX___,
+ X____X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00A5[ 13] = { /* code 00A5 */
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ XXXXXX__,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00A6[ 13] = { /* code 00A6 */
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00A7[ 13] = { /* code 00A7 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX___X__,
+ XX______,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ____XX__,
+ X___XX__,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00A8[ 13] = { /* code 00A8 */
+ ________,
+ ________,
+ ________,
+ XX_XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00A9[ 26] = { /* code 00A9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _X_____X,________,
+ X__XXX__,X_______,
+ X_XX____,X_______,
+ X_XX____,X_______,
+ X_XX____,X_______,
+ X__XXX__,X_______,
+ _X_____X,________,
+ __XXXXX_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00AA[ 13] = { /* code 00AA */
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ___XX___,
+ _XXXX___,
+ XX_XX___,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00AB[ 13] = { /* code 00AB */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X__X_,
+ __XX_XX_,
+ _XX_XX__,
+ __XX_XX_,
+ ___X__X_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00AC[ 26] = { /* code 00AC */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00AD[ 13] = { /* code 00AD */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00AE[ 26] = { /* code 00AE */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _X_____X,________,
+ X_XXXX__,X_______,
+ X_XX_XX_,X_______,
+ X_XXXX__,X_______,
+ X_XX_XX_,X_______,
+ X_XX_XX_,X_______,
+ _X_____X,________,
+ __XXXXX_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00AF[ 13] = { /* code 00AF */
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00B0[ 13] = { /* code 00B0 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00B1[ 26] = { /* code 00B1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ _XXXXXXX,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00B2[ 13] = { /* code 00B2 */
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00B3[ 13] = { /* code 00B3 */
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ___XX___,
+ _XXX____,
+ ___XX___,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00B4[ 13] = { /* code 00B4 */
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00B5[ 13] = { /* code 00B5 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXXX__,
+ XX______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00B6[ 13] = { /* code 00B6 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XXXX_X__,
+ XXXX_X__,
+ XXXX_X__,
+ _XXX_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00B7[ 13] = { /* code 00B7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00B8[ 13] = { /* code 00B8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00B9[ 13] = { /* code 00B9 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _XXX____,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00BA[ 13] = { /* code 00BA */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ XX_XX___,
+ XX_XX___,
+ XX_XX___,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00BB[ 13] = { /* code 00BB */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X__X___,
+ _XX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ _X__X___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00BC[ 26] = { /* code 00BC */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX____X,________,
+ XXX___X_,________,
+ _XX___X_,________,
+ _XX__X__,XX______,
+ _XX__X_X,XX______,
+ ____X_X_,XX______,
+ ____X_XX,XXX_____,
+ ___X____,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00BD[ 26] = { /* code 00BD */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX____X,________,
+ XXX___X_,________,
+ _XX___X_,________,
+ _XX__X_X,XX______,
+ _XX__X__,_XX_____,
+ ____X___,_XX_____,
+ ____X___,XX______,
+ ___X___X,XXX_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00BE[ 26] = { /* code 00BE */
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX____X,________,
+ __XX__X_,________,
+ _XX___X_,________,
+ __XX_X__,XX______,
+ XXX__X_X,XX______,
+ ____X_X_,XX______,
+ ____X_XX,XXX_____,
+ ___X____,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00BF[ 13] = { /* code 00BF */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ _XX_____,
+ XX______,
+ XX__X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00C0[ 13] = { /* code 00C0 */
+ _XX_____,
+ __XX____,
+ ________,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00C1[ 13] = { /* code 00C1 */
+ ___XX___,
+ __XX____,
+ ________,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00C2[ 13] = { /* code 00C2 */
+ __XXX___,
+ _XX_XX__,
+ ________,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00C3[ 13] = { /* code 00C3 */
+ __XX_X__,
+ _X_XX___,
+ ________,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00C4[ 13] = { /* code 00C4 */
+ ________,
+ _XX_XX__,
+ ________,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00C5[ 13] = { /* code 00C5 */
+ ________,
+ ___X____,
+ __X_X___,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00C6[ 26] = { /* code 00C6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XX______,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ __XX_XXX,XX______,
+ _XXXXXX_,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ XX___XXX,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00C7[ 13] = { /* code 00C7 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ _XXXXX__,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00C8[ 13] = { /* code 00C8 */
+ _XX_____,
+ __XX____,
+ ________,
+ XXXXX___,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00C9[ 13] = { /* code 00C9 */
+ ___XX___,
+ __XX____,
+ ________,
+ XXXXX___,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00CA[ 13] = { /* code 00CA */
+ _XXX____,
+ XX_XX___,
+ ________,
+ XXXXX___,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00CB[ 13] = { /* code 00CB */
+ ________,
+ XX_XX___,
+ ________,
+ XXXXX___,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00CC[ 13] = { /* code 00CC */
+ XX______,
+ _XX_____,
+ ________,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00CD[ 13] = { /* code 00CD */
+ __XX____,
+ _XX_____,
+ ________,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00CE[ 13] = { /* code 00CE */
+ _XXX____,
+ XX_XX___,
+ ________,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00CF[ 13] = { /* code 00CF */
+ ________,
+ X__XX___,
+ ________,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00D0[ 26] = { /* code 00D0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX__,________,
+ _XX__XX_,________,
+ _XX___XX,________,
+ XXXXX_XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX__XX_,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00D1[ 13] = { /* code 00D1 */
+ __XX_X__,
+ _X_XX___,
+ ________,
+ XX___X__,
+ XXX__X__,
+ XXXX_X__,
+ X_XXXX__,
+ X__XXX__,
+ X___XX__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00D2[ 13] = { /* code 00D2 */
+ _XX_____,
+ __XX____,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00D3[ 13] = { /* code 00D3 */
+ ___XX___,
+ __XX____,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00D4[ 13] = { /* code 00D4 */
+ __XXX___,
+ _XX_XX__,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00D5[ 13] = { /* code 00D5 */
+ __XX_X__,
+ _X_XX___,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00D6[ 13] = { /* code 00D6 */
+ ________,
+ _XX_XX__,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00D7[ 26] = { /* code 00D7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __X___X_,________,
+ ___X_X__,________,
+ ____X___,________,
+ ___X_X__,________,
+ __X___X_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00D8[ 13] = { /* code 00D8 */
+ ________,
+ ________,
+ ______X_,
+ _XXXXX__,
+ XX__XXX_,
+ XX__XXX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XXX__XX_,
+ XXX__XX_,
+ _XXXXX__,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00D9[ 13] = { /* code 00D9 */
+ __XX____,
+ ___XX___,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00DA[ 13] = { /* code 00DA */
+ ___XX___,
+ __XX____,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00DB[ 13] = { /* code 00DB */
+ __XXX___,
+ _XX_XX__,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00DC[ 13] = { /* code 00DC */
+ ________,
+ _XX_XX__,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00DD[ 13] = { /* code 00DD */
+ ___XX___,
+ __XX____,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00DE[ 13] = { /* code 00DE */
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XXXXX___,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00DF[ 13] = { /* code 00DF */
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX_XX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX_XX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00E0[ 13] = { /* code 00E0 */
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00E1[ 13] = { /* code 00E1 */
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00E2[ 13] = { /* code 00E2 */
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00E3[ 13] = { /* code 00E3 */
+ ________,
+ ________,
+ __XX_X__,
+ _X_XX___,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00E4[ 13] = { /* code 00E4 */
+ ________,
+ ________,
+ ________,
+ _XX_XX__,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00E5[ 13] = { /* code 00E5 */
+ ________,
+ ________,
+ __XXX___,
+ __X_X___,
+ __XXX___,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00E6[ 26] = { /* code 00E6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXX_XX,X_______,
+ ____XX__,XX______,
+ _XXXXXXX,XX______,
+ XX__XX__,________,
+ XX__XX__,________,
+ _XXX_XXX,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00E7[ 13] = { /* code 00E7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ _XXXX___,
+ ___X____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00E8[ 13] = { /* code 00E8 */
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XXXXXX__,
+ XX______,
+ XX______,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00E9[ 13] = { /* code 00E9 */
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XXXXXX__,
+ XX______,
+ XX______,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00EA[ 13] = { /* code 00EA */
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XXXXXX__,
+ XX______,
+ XX______,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00EB[ 13] = { /* code 00EB */
+ ________,
+ ________,
+ ________,
+ _XX_XX__,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XXXXXX__,
+ XX______,
+ XX______,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00EC[ 13] = { /* code 00EC */
+ ________,
+ ________,
+ X_______,
+ XX______,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00ED[ 13] = { /* code 00ED */
+ ________,
+ ________,
+ _XX_____,
+ XX______,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00EE[ 13] = { /* code 00EE */
+ ________,
+ ________,
+ XX______,
+ __X_____,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00EF[ 13] = { /* code 00EF */
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00F0[ 13] = { /* code 00F0 */
+ ________,
+ ________,
+ _XX_X___,
+ __XX____,
+ _X_XX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00F1[ 13] = { /* code 00F1 */
+ ________,
+ ________,
+ __XX_X__,
+ _X_XX___,
+ ________,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00F2[ 13] = { /* code 00F2 */
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00F3[ 13] = { /* code 00F3 */
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00F4[ 13] = { /* code 00F4 */
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00F5[ 13] = { /* code 00F5 */
+ ________,
+ ________,
+ __XX_X__,
+ _X_XX___,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00F6[ 13] = { /* code 00F6 */
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00F7[ 26] = { /* code 00F7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ ___XX___,________,
+ ________,________,
+ XXXXXXXX,________,
+ ________,________,
+ ___XX___,________,
+ ___XX___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00F8[ 13] = { /* code 00F8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _____X__,
+ _XXXX___,
+ XX_XXX__,
+ XX_XXX__,
+ XXX_XX__,
+ XXX_XX__,
+ _XXXX___,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00F9[ 13] = { /* code 00F9 */
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00FA[ 13] = { /* code 00FA */
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00FB[ 13] = { /* code 00FB */
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00FC[ 13] = { /* code 00FC */
+ ________,
+ ________,
+ ________,
+ _XX_XX__,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00FD[ 13] = { /* code 00FD */
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00FE[ 13] = { /* code 00FE */
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXX___,
+ XX______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13B_1_00FF[ 13] = { /* code 00FF */
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font13B_1_CharInfo[96] = {
+ { 3, 3, 1, acFont13B_1_00A0 } /* code 00A0 */
+ ,{ 3, 3, 1, acFont13B_1_00A1 } /* code 00A1 */
+ ,{ 7, 7, 1, acFont13B_1_00A2 } /* code 00A2 */
+ ,{ 7, 7, 1, acFont13B_1_00A3 } /* code 00A3 */
+ ,{ 7, 7, 1, acFont13B_1_00A4 } /* code 00A4 */
+ ,{ 7, 7, 1, acFont13B_1_00A5 } /* code 00A5 */
+ ,{ 7, 7, 1, acFont13B_1_00A6 } /* code 00A6 */
+ ,{ 7, 7, 1, acFont13B_1_00A7 } /* code 00A7 */
+ ,{ 6, 6, 1, acFont13B_1_00A8 } /* code 00A8 */
+ ,{ 10, 10, 2, acFont13B_1_00A9 } /* code 00A9 */
+ ,{ 6, 6, 1, acFont13B_1_00AA } /* code 00AA */
+ ,{ 8, 8, 1, acFont13B_1_00AB } /* code 00AB */
+ ,{ 9, 9, 2, acFont13B_1_00AC } /* code 00AC */
+ ,{ 5, 5, 1, acFont13B_1_00AD } /* code 00AD */
+ ,{ 10, 10, 2, acFont13B_1_00AE } /* code 00AE */
+ ,{ 7, 7, 1, acFont13B_1_00AF } /* code 00AF */
+ ,{ 6, 6, 1, acFont13B_1_00B0 } /* code 00B0 */
+ ,{ 9, 9, 2, acFont13B_1_00B1 } /* code 00B1 */
+ ,{ 6, 6, 1, acFont13B_1_00B2 } /* code 00B2 */
+ ,{ 6, 6, 1, acFont13B_1_00B3 } /* code 00B3 */
+ ,{ 6, 6, 1, acFont13B_1_00B4 } /* code 00B4 */
+ ,{ 7, 7, 1, acFont13B_1_00B5 } /* code 00B5 */
+ ,{ 7, 7, 1, acFont13B_1_00B6 } /* code 00B6 */
+ ,{ 3, 3, 1, acFont13B_1_00B7 } /* code 00B7 */
+ ,{ 6, 6, 1, acFont13B_1_00B8 } /* code 00B8 */
+ ,{ 6, 6, 1, acFont13B_1_00B9 } /* code 00B9 */
+ ,{ 6, 6, 1, acFont13B_1_00BA } /* code 00BA */
+ ,{ 8, 8, 1, acFont13B_1_00BB } /* code 00BB */
+ ,{ 12, 12, 2, acFont13B_1_00BC } /* code 00BC */
+ ,{ 12, 12, 2, acFont13B_1_00BD } /* code 00BD */
+ ,{ 12, 12, 2, acFont13B_1_00BE } /* code 00BE */
+ ,{ 6, 6, 1, acFont13B_1_00BF } /* code 00BF */
+ ,{ 8, 8, 1, acFont13B_1_00C0 } /* code 00C0 */
+ ,{ 8, 8, 1, acFont13B_1_00C1 } /* code 00C1 */
+ ,{ 8, 8, 1, acFont13B_1_00C2 } /* code 00C2 */
+ ,{ 8, 8, 1, acFont13B_1_00C3 } /* code 00C3 */
+ ,{ 8, 8, 1, acFont13B_1_00C4 } /* code 00C4 */
+ ,{ 8, 8, 1, acFont13B_1_00C5 } /* code 00C5 */
+ ,{ 11, 11, 2, acFont13B_1_00C6 } /* code 00C6 */
+ ,{ 7, 7, 1, acFont13B_1_00C7 } /* code 00C7 */
+ ,{ 6, 6, 1, acFont13B_1_00C8 } /* code 00C8 */
+ ,{ 6, 6, 1, acFont13B_1_00C9 } /* code 00C9 */
+ ,{ 6, 6, 1, acFont13B_1_00CA } /* code 00CA */
+ ,{ 6, 6, 1, acFont13B_1_00CB } /* code 00CB */
+ ,{ 5, 5, 1, acFont13B_1_00CC } /* code 00CC */
+ ,{ 5, 5, 1, acFont13B_1_00CD } /* code 00CD */
+ ,{ 5, 5, 1, acFont13B_1_00CE } /* code 00CE */
+ ,{ 5, 5, 1, acFont13B_1_00CF } /* code 00CF */
+ ,{ 9, 9, 2, acFont13B_1_00D0 } /* code 00D0 */
+ ,{ 7, 7, 1, acFont13B_1_00D1 } /* code 00D1 */
+ ,{ 8, 8, 1, acFont13B_1_00D2 } /* code 00D2 */
+ ,{ 8, 8, 1, acFont13B_1_00D3 } /* code 00D3 */
+ ,{ 8, 8, 1, acFont13B_1_00D4 } /* code 00D4 */
+ ,{ 8, 8, 1, acFont13B_1_00D5 } /* code 00D5 */
+ ,{ 8, 8, 1, acFont13B_1_00D6 } /* code 00D6 */
+ ,{ 9, 9, 2, acFont13B_1_00D7 } /* code 00D7 */
+ ,{ 8, 8, 1, acFont13B_1_00D8 } /* code 00D8 */
+ ,{ 8, 8, 1, acFont13B_1_00D9 } /* code 00D9 */
+ ,{ 8, 8, 1, acFont13B_1_00DA } /* code 00DA */
+ ,{ 8, 8, 1, acFont13B_1_00DB } /* code 00DB */
+ ,{ 8, 8, 1, acFont13B_1_00DC } /* code 00DC */
+ ,{ 7, 7, 1, acFont13B_1_00DD } /* code 00DD */
+ ,{ 7, 7, 1, acFont13B_1_00DE } /* code 00DE */
+ ,{ 7, 7, 1, acFont13B_1_00DF } /* code 00DF */
+ ,{ 7, 7, 1, acFont13B_1_00E0 } /* code 00E0 */
+ ,{ 7, 7, 1, acFont13B_1_00E1 } /* code 00E1 */
+ ,{ 7, 7, 1, acFont13B_1_00E2 } /* code 00E2 */
+ ,{ 7, 7, 1, acFont13B_1_00E3 } /* code 00E3 */
+ ,{ 7, 7, 1, acFont13B_1_00E4 } /* code 00E4 */
+ ,{ 7, 7, 1, acFont13B_1_00E5 } /* code 00E5 */
+ ,{ 11, 11, 2, acFont13B_1_00E6 } /* code 00E6 */
+ ,{ 6, 6, 1, acFont13B_1_00E7 } /* code 00E7 */
+ ,{ 7, 7, 1, acFont13B_1_00E8 } /* code 00E8 */
+ ,{ 7, 7, 1, acFont13B_1_00E9 } /* code 00E9 */
+ ,{ 7, 7, 1, acFont13B_1_00EA } /* code 00EA */
+ ,{ 7, 7, 1, acFont13B_1_00EB } /* code 00EB */
+ ,{ 3, 3, 1, acFont13B_1_00EC } /* code 00EC */
+ ,{ 3, 3, 1, acFont13B_1_00ED } /* code 00ED */
+ ,{ 3, 3, 1, acFont13B_1_00EE } /* code 00EE */
+ ,{ 3, 3, 1, acFont13B_1_00EF } /* code 00EF */
+ ,{ 7, 7, 1, acFont13B_1_00F0 } /* code 00F0 */
+ ,{ 7, 7, 1, acFont13B_1_00F1 } /* code 00F1 */
+ ,{ 7, 7, 1, acFont13B_1_00F2 } /* code 00F2 */
+ ,{ 7, 7, 1, acFont13B_1_00F3 } /* code 00F3 */
+ ,{ 7, 7, 1, acFont13B_1_00F4 } /* code 00F4 */
+ ,{ 7, 7, 1, acFont13B_1_00F5 } /* code 00F5 */
+ ,{ 7, 7, 1, acFont13B_1_00F6 } /* code 00F6 */
+ ,{ 9, 9, 2, acFont13B_1_00F7 } /* code 00F7 */
+ ,{ 7, 7, 1, acFont13B_1_00F8 } /* code 00F8 */
+ ,{ 7, 7, 1, acFont13B_1_00F9 } /* code 00F9 */
+ ,{ 7, 7, 1, acFont13B_1_00FA } /* code 00FA */
+ ,{ 7, 7, 1, acFont13B_1_00FB } /* code 00FB */
+ ,{ 7, 7, 1, acFont13B_1_00FC } /* code 00FC */
+ ,{ 7, 7, 1, acFont13B_1_00FD } /* code 00FD */
+ ,{ 7, 7, 1, acFont13B_1_00FE } /* code 00FE */
+ ,{ 7, 7, 1, acFont13B_1_00FF } /* code 00FF */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13B_1_Prop1 = {
+ 0x00A0 /* first character */
+ ,0x00FF /* last character */
+ ,&GUI_Font13B_1_CharInfo[ 0] /* address of first character */
+ ,&GUI_Font13B_ASCII_Prop1 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font13B_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,13 /* height of font */
+ ,13 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font13B_1_Prop1}
+ ,11 ,6 ,8
+};
+
diff --git a/User/lib/lcd/gui/Font/F13B_ASCII.c b/User/lib/lcd/gui/Font/F13B_ASCII.c
new file mode 100644
index 0000000..4200132
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F13B_ASCII.c
@@ -0,0 +1,1565 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F13B_ASCII.c
+Purpose : Proportional Font, ASCII characters, bold
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+/* Start of unicode area */
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0020[ 13] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0021[ 13] = { /* code 0021 */
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0022[ 13] = { /* code 0022 */
+ ________,
+ ________,
+ XX_XX___,
+ XX_XX___,
+ XX_XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0023[ 26] = { /* code 0023 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X__X_,________,
+ ___X__X_,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ __X__X__,________,
+ XXXXXXX_,________,
+ XXXXXXX_,________,
+ _X__X___,________,
+ _X__X___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0024[ 13] = { /* code 0024 */
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ _XXXX___,
+ XX_X_X__,
+ XX_X____,
+ _XXXX___,
+ __X_XX__,
+ X_X_XX__,
+ _XXXX___,
+ __X_____,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0025[ 26] = { /* code 0025 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX___X,________,
+ XX_XX__X,________,
+ XX_XX_X_,________,
+ XX_XX_X_,XXX_____,
+ _XXX_X_X,X_XX____,
+ _____X_X,X_XX____,
+ ____X__X,X_XX____,
+ ____X___,XXX_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0026[ 26] = { /* code 0026 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,________,
+ XX_XX___,________,
+ XX_XX___,________,
+ _XXX__XX,________,
+ XX_XX_X_,________,
+ XX__XX__,________,
+ XX___XX_,________,
+ _XXXX_XX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0027[ 13] = { /* code 0027 */
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0028[ 13] = { /* code 0028 */
+ ________,
+ ________,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ _XX_____,
+ _XX_____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0029[ 13] = { /* code 0029 */
+ ________,
+ ________,
+ XX______,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_002A[ 13] = { /* code 002A */
+ ________,
+ ________,
+ __XX____,
+ X_XX_X__,
+ _XXXX___,
+ X_XX_X__,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_002B[ 26] = { /* code 002B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ _XXXXXXX,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_002C[ 13] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_002D[ 13] = { /* code 002D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_002E[ 13] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_002F[ 13] = { /* code 002F */
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0030[ 13] = { /* code 0030 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0031[ 13] = { /* code 0031 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _XXX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0032[ 13] = { /* code 0032 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0033[ 13] = { /* code 0033 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ ____XX__,
+ __XXX___,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0034[ 13] = { /* code 0034 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___XX___,
+ __XXX___,
+ _X_XX___,
+ X__XX___,
+ XXXXXX__,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0035[ 13] = { /* code 0035 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XXXX___,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0036[ 13] = { /* code 0036 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0037[ 13] = { /* code 0037 */
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0038[ 13] = { /* code 0038 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0039[ 13] = { /* code 0039 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ ____XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_003A[ 13] = { /* code 003A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_003B[ 13] = { /* code 003B */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_003C[ 26] = { /* code 003C */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ____XX__,________,
+ __XX____,________,
+ _X______,________,
+ __XX____,________,
+ ____XX__,________,
+ ______XX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_003D[ 26] = { /* code 003D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_003E[ 26] = { /* code 003E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ ___XX___,________,
+ _____XX_,________,
+ _______X,________,
+ _____XX_,________,
+ ___XX___,________,
+ _XX_____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_003F[ 13] = { /* code 003F */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X__XX___,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0040[ 26] = { /* code 0040 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _X_____X,________,
+ X__XXXX_,X_______,
+ X_XX_XX_,X_______,
+ X_XX_XX_,X_______,
+ X_XX_XX_,X_______,
+ X__XX_XX,________,
+ _X______,________,
+ __XXXXX_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0041[ 13] = { /* code 0041 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0042[ 13] = { /* code 0042 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0043[ 13] = { /* code 0043 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0044[ 13] = { /* code 0044 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XX__XX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XX__,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0045[ 13] = { /* code 0045 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0046[ 13] = { /* code 0046 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0047[ 13] = { /* code 0047 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ XX______,
+ XX______,
+ XX______,
+ XX__XXX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0048[ 13] = { /* code 0048 */
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0049[ 13] = { /* code 0049 */
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_004A[ 13] = { /* code 004A */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_004B[ 13] = { /* code 004B */
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX_XX___,
+ XXXX____,
+ XXX_____,
+ XXX_____,
+ XXXX____,
+ XX_XX___,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_004C[ 13] = { /* code 004C */
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_004D[ 26] = { /* code 004D */
+ ________,________,
+ ________,________,
+ ________,________,
+ XX_____X,X_______,
+ XXX___XX,X_______,
+ XXXX_XXX,X_______,
+ X_XXXX_X,X_______,
+ X__XX__X,X_______,
+ X______X,X_______,
+ X______X,X_______,
+ X______X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_004E[ 13] = { /* code 004E */
+ ________,
+ ________,
+ ________,
+ XX___X__,
+ XXX__X__,
+ XXXX_X__,
+ X_XXXX__,
+ X__XXX__,
+ X___XX__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_004F[ 13] = { /* code 004F */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0050[ 13] = { /* code 0050 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0051[ 13] = { /* code 0051 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ___XX___,
+ ____XXX_};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0052[ 13] = { /* code 0052 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXX___,
+ XX_XX___,
+ XX__XX__,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0053[ 13] = { /* code 0053 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX______,
+ XX______,
+ XXXXX___,
+ _XXXXX__,
+ ____XX__,
+ ____XX__,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0054[ 13] = { /* code 0054 */
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0055[ 13] = { /* code 0055 */
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0056[ 13] = { /* code 0056 */
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0057[ 26] = { /* code 0057 */
+ ________,________,
+ ________,________,
+ ________,________,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ _XX_XX_X,X_______,
+ _XXXXXXX,X_______,
+ _XXX__XX,X_______,
+ __XX__XX,________,
+ __XX__XX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0058[ 13] = { /* code 0058 */
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0059[ 13] = { /* code 0059 */
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_005A[ 13] = { /* code 005A */
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ ____XX__,
+ ___XXX__,
+ __XXX___,
+ _XXX____,
+ XXX_____,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_005B[ 13] = { /* code 005B */
+ ________,
+ ________,
+ XXXX____,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_005C[ 13] = { /* code 005C */
+ ________,
+ ________,
+ X_______,
+ X_______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ ___X____,
+ ___X____,
+ ____X___,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_005D[ 13] = { /* code 005D */
+ ________,
+ ________,
+ XXXX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_005E[ 26] = { /* code 005E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X____,________,
+ __X_X___,________,
+ _X___X__,________,
+ X_____X_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_005F[ 13] = { /* code 005F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0060[ 13] = { /* code 0060 */
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0061[ 13] = { /* code 0061 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0062[ 13] = { /* code 0062 */
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0063[ 13] = { /* code 0063 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0064[ 13] = { /* code 0064 */
+ ________,
+ ________,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0065[ 13] = { /* code 0065 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XXXXXX__,
+ XX______,
+ XX______,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0066[ 13] = { /* code 0066 */
+ ________,
+ ________,
+ _XXX____,
+ XX______,
+ XX______,
+ XXX_____,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0067[ 13] = { /* code 0067 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0068[ 13] = { /* code 0068 */
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0069[ 13] = { /* code 0069 */
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_006A[ 13] = { /* code 006A */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_006B[ 13] = { /* code 006B */
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX__XX__,
+ XX_XX___,
+ XXXX____,
+ XXXX____,
+ XX_XX___,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_006C[ 13] = { /* code 006C */
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_006D[ 26] = { /* code 006D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXX_XX,X_______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_006E[ 13] = { /* code 006E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_006F[ 13] = { /* code 006F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0070[ 13] = { /* code 0070 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXX___,
+ XX______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0071[ 13] = { /* code 0071 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ ____XX__};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0072[ 13] = { /* code 0072 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_X____,
+ XXXX____,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0073[ 13] = { /* code 0073 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX______,
+ XXXX____,
+ _XXXX___,
+ ___XX___,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0074[ 13] = { /* code 0074 */
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XXXX____,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0075[ 13] = { /* code 0075 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0076[ 13] = { /* code 0076 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0077[ 26] = { /* code 0077 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX_XX_XX,________,
+ XX_XX_XX,________,
+ XX_XX_XX,________,
+ XXXXXXXX,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0078[ 13] = { /* code 0078 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_0079[ 13] = { /* code 0079 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_007A[ 13] = { /* code 007A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_007B[ 13] = { /* code 007B */
+ ________,
+ ________,
+ ___XXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XXX__};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_007C[ 13] = { /* code 007C */
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_007D[ 13] = { /* code 007D */
+ ________,
+ ________,
+ XXX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXX_____};
+
+GUI_CONST_STORAGE unsigned char acFont13B_ASCII_007E[ 26] = { /* code 007E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX___X,________,
+ X__XX__X,________,
+ X___XXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font13B_ASCII_CharInfo[95] = {
+ { 3, 3, 1, acFont13B_ASCII_0020 } /* code 0020 */
+ ,{ 3, 3, 1, acFont13B_ASCII_0021 } /* code 0021 */
+ ,{ 6, 6, 1, acFont13B_ASCII_0022 } /* code 0022 */
+ ,{ 9, 9, 2, acFont13B_ASCII_0023 } /* code 0023 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0024 } /* code 0024 */
+ ,{ 13, 13, 2, acFont13B_ASCII_0025 } /* code 0025 */
+ ,{ 9, 9, 2, acFont13B_ASCII_0026 } /* code 0026 */
+ ,{ 3, 3, 1, acFont13B_ASCII_0027 } /* code 0027 */
+ ,{ 5, 5, 1, acFont13B_ASCII_0028 } /* code 0028 */
+ ,{ 5, 5, 1, acFont13B_ASCII_0029 } /* code 0029 */
+ ,{ 7, 7, 1, acFont13B_ASCII_002A } /* code 002A */
+ ,{ 9, 9, 2, acFont13B_ASCII_002B } /* code 002B */
+ ,{ 3, 3, 1, acFont13B_ASCII_002C } /* code 002C */
+ ,{ 5, 5, 1, acFont13B_ASCII_002D } /* code 002D */
+ ,{ 3, 3, 1, acFont13B_ASCII_002E } /* code 002E */
+ ,{ 6, 6, 1, acFont13B_ASCII_002F } /* code 002F */
+ ,{ 7, 7, 1, acFont13B_ASCII_0030 } /* code 0030 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0031 } /* code 0031 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0032 } /* code 0032 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0033 } /* code 0033 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0034 } /* code 0034 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0035 } /* code 0035 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0036 } /* code 0036 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0037 } /* code 0037 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0038 } /* code 0038 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0039 } /* code 0039 */
+ ,{ 3, 3, 1, acFont13B_ASCII_003A } /* code 003A */
+ ,{ 3, 3, 1, acFont13B_ASCII_003B } /* code 003B */
+ ,{ 9, 9, 2, acFont13B_ASCII_003C } /* code 003C */
+ ,{ 9, 9, 2, acFont13B_ASCII_003D } /* code 003D */
+ ,{ 9, 9, 2, acFont13B_ASCII_003E } /* code 003E */
+ ,{ 6, 6, 1, acFont13B_ASCII_003F } /* code 003F */
+ ,{ 10, 10, 2, acFont13B_ASCII_0040 } /* code 0040 */
+ ,{ 8, 8, 1, acFont13B_ASCII_0041 } /* code 0041 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0042 } /* code 0042 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0043 } /* code 0043 */
+ ,{ 8, 8, 1, acFont13B_ASCII_0044 } /* code 0044 */
+ ,{ 6, 6, 1, acFont13B_ASCII_0045 } /* code 0045 */
+ ,{ 6, 6, 1, acFont13B_ASCII_0046 } /* code 0046 */
+ ,{ 8, 8, 1, acFont13B_ASCII_0047 } /* code 0047 */
+ ,{ 8, 8, 1, acFont13B_ASCII_0048 } /* code 0048 */
+ ,{ 5, 5, 1, acFont13B_ASCII_0049 } /* code 0049 */
+ ,{ 6, 6, 1, acFont13B_ASCII_004A } /* code 004A */
+ ,{ 7, 7, 1, acFont13B_ASCII_004B } /* code 004B */
+ ,{ 6, 6, 1, acFont13B_ASCII_004C } /* code 004C */
+ ,{ 10, 10, 2, acFont13B_ASCII_004D } /* code 004D */
+ ,{ 7, 7, 1, acFont13B_ASCII_004E } /* code 004E */
+ ,{ 8, 8, 1, acFont13B_ASCII_004F } /* code 004F */
+ ,{ 7, 7, 1, acFont13B_ASCII_0050 } /* code 0050 */
+ ,{ 8, 8, 1, acFont13B_ASCII_0051 } /* code 0051 */
+ ,{ 8, 8, 1, acFont13B_ASCII_0052 } /* code 0052 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0053 } /* code 0053 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0054 } /* code 0054 */
+ ,{ 8, 8, 1, acFont13B_ASCII_0055 } /* code 0055 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0056 } /* code 0056 */
+ ,{ 11, 11, 2, acFont13B_ASCII_0057 } /* code 0057 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0058 } /* code 0058 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0059 } /* code 0059 */
+ ,{ 7, 7, 1, acFont13B_ASCII_005A } /* code 005A */
+ ,{ 5, 5, 1, acFont13B_ASCII_005B } /* code 005B */
+ ,{ 6, 6, 1, acFont13B_ASCII_005C } /* code 005C */
+ ,{ 5, 5, 1, acFont13B_ASCII_005D } /* code 005D */
+ ,{ 9, 9, 2, acFont13B_ASCII_005E } /* code 005E */
+ ,{ 7, 7, 1, acFont13B_ASCII_005F } /* code 005F */
+ ,{ 6, 6, 1, acFont13B_ASCII_0060 } /* code 0060 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0061 } /* code 0061 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0062 } /* code 0062 */
+ ,{ 6, 6, 1, acFont13B_ASCII_0063 } /* code 0063 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0064 } /* code 0064 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0065 } /* code 0065 */
+ ,{ 4, 4, 1, acFont13B_ASCII_0066 } /* code 0066 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0067 } /* code 0067 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0068 } /* code 0068 */
+ ,{ 3, 3, 1, acFont13B_ASCII_0069 } /* code 0069 */
+ ,{ 4, 4, 1, acFont13B_ASCII_006A } /* code 006A */
+ ,{ 7, 7, 1, acFont13B_ASCII_006B } /* code 006B */
+ ,{ 3, 3, 1, acFont13B_ASCII_006C } /* code 006C */
+ ,{ 11, 11, 2, acFont13B_ASCII_006D } /* code 006D */
+ ,{ 7, 7, 1, acFont13B_ASCII_006E } /* code 006E */
+ ,{ 7, 7, 1, acFont13B_ASCII_006F } /* code 006F */
+ ,{ 7, 7, 1, acFont13B_ASCII_0070 } /* code 0070 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0071 } /* code 0071 */
+ ,{ 5, 5, 1, acFont13B_ASCII_0072 } /* code 0072 */
+ ,{ 6, 6, 1, acFont13B_ASCII_0073 } /* code 0073 */
+ ,{ 5, 5, 1, acFont13B_ASCII_0074 } /* code 0074 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0075 } /* code 0075 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0076 } /* code 0076 */
+ ,{ 9, 9, 2, acFont13B_ASCII_0077 } /* code 0077 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0078 } /* code 0078 */
+ ,{ 7, 7, 1, acFont13B_ASCII_0079 } /* code 0079 */
+ ,{ 6, 6, 1, acFont13B_ASCII_007A } /* code 007A */
+ ,{ 7, 7, 1, acFont13B_ASCII_007B } /* code 007B */
+ ,{ 7, 7, 1, acFont13B_ASCII_007C } /* code 007C */
+ ,{ 7, 7, 1, acFont13B_ASCII_007D } /* code 007D */
+ ,{ 9, 9, 2, acFont13B_ASCII_007E } /* code 007E */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13B_ASCII_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font13B_ASCII_CharInfo[ 0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font13B_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,13 /* height of font */
+ ,13 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font13B_ASCII_Prop1}
+ ,11 ,6 ,8
+};
+
diff --git a/User/lib/lcd/gui/Font/F13HB_1.c b/User/lib/lcd/gui/Font/F13HB_1.c
new file mode 100644
index 0000000..99edc4d
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F13HB_1.c
@@ -0,0 +1,1587 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F13HB_1.C
+Purpose : ISO 8859-1, West European Character Set, bold, high
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00A0[ 13] = { /* code 00A0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00A1[ 13] = { /* code 00A1 */
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00A2[ 13] = { /* code 00A2 */
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ __XXXX__,
+ _XX_X_X_,
+ _XX_X___,
+ _XX_X___,
+ _XX_X___,
+ _XX_X_X_,
+ __XXXX__,
+ ____X___,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00A3[ 13] = { /* code 00A3 */
+ ________,
+ ________,
+ ___XXX__,
+ __XX__X_,
+ __XX____,
+ __XX____,
+ _XXXXX__,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00A4[ 13] = { /* code 00A4 */
+ ________,
+ ________,
+ ________,
+ X_____X_,
+ _XXXXX__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00A5[ 13] = { /* code 00A5 */
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ __XXXX__,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00A6[ 13] = { /* code 00A6 */
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00A7[ 13] = { /* code 00A7 */
+ ________,
+ ________,
+ _XXXXX__,
+ XX____X_,
+ XX______,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ _____XX_,
+ X____XX_,
+ _XXXXX__};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00A8[ 13] = { /* code 00A8 */
+ ________,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00A9[ 26] = { /* code 00A9 */
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __X_____,X_______,
+ _X______,_X______,
+ X___XXXX,__X_____,
+ X__XX___,__X_____,
+ X__XX___,__X_____,
+ X__XX___,__X_____,
+ X___XXXX,__X_____,
+ _X______,_X______,
+ __X_____,X_______,
+ ___XXXXX,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00AA[ 13] = { /* code 00AA */
+ ________,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00AB[ 26] = { /* code 00AB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X___X,________,
+ __XX__XX,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ __XX__XX,________,
+ ___X___X,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00AC[ 26] = { /* code 00AC */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00AD[ 13] = { /* code 00AD */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00AE[ 26] = { /* code 00AE */
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __X_____,X_______,
+ _X______,_X______,
+ X__XXXX_,__X_____,
+ X__XX_XX,__X_____,
+ X__XXXX_,__X_____,
+ X__XX_XX,__X_____,
+ X__XX__X,X_X_____,
+ _X______,_X______,
+ __X_____,X_______,
+ ___XXXXX,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00AF[ 13] = { /* code 00AF */
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00B0[ 13] = { /* code 00B0 */
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00B1[ 26] = { /* code 00B1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ __XXXXXX,X_______,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ __XXXXXX,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00B2[ 13] = { /* code 00B2 */
+ ________,
+ ________,
+ __XXX___,
+ _X__XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00B3[ 13] = { /* code 00B3 */
+ ________,
+ ________,
+ __XXX___,
+ _X__XX__,
+ ___XX___,
+ ____XX__,
+ _X__XX__,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00B4[ 13] = { /* code 00B4 */
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00B5[ 13] = { /* code 00B5 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ XXXX_XX_,
+ XX______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00B6[ 13] = { /* code 00B6 */
+ ________,
+ ________,
+ _XXXXXX_,
+ XXXXX_X_,
+ XXXXX_X_,
+ XXXXX_X_,
+ XXXXX_X_,
+ _XXXX_X_,
+ ____X_X_,
+ ____X_X_,
+ ____X_X_,
+ ____X_X_,
+ ____X_X_};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00B7[ 13] = { /* code 00B7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00B8[ 13] = { /* code 00B8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00B9[ 13] = { /* code 00B9 */
+ ________,
+ ________,
+ ___XX___,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00BA[ 13] = { /* code 00BA */
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00BB[ 26] = { /* code 00BB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _X___X__,________,
+ _XX__XX_,________,
+ __XX__XX,________,
+ __XX__XX,________,
+ _XX__XX_,________,
+ _X___X__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00BC[ 26] = { /* code 00BC */
+ ________,________,
+ ________,________,
+ __XX____,_X______,
+ _XXX____,X_______,
+ __XX___X,________,
+ __XX___X,___XX___,
+ __XX__X_,__XXX___,
+ __XX_X__,_X_XX___,
+ _____X__,X__XX___,
+ ____X___,XXXXXX__,
+ ___X____,___XX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00BD[ 26] = { /* code 00BD */
+ ________,________,
+ ________,________,
+ __XX____,_X______,
+ _XXX____,X_______,
+ __XX___X,________,
+ __XX___X,__XXX___,
+ __XX__X_,_X__XX__,
+ __XX_X__,____XX__,
+ _____X__,___XX___,
+ ____X___,__XX____,
+ ___X____,_XXXXX__,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00BE[ 26] = { /* code 00BE */
+ ________,________,
+ ________,________,
+ __XXX___,__X_____,
+ _X__XX__,_X______,
+ ___XX___,X_______,
+ ____XX__,X__XX___,
+ _X__XX_X,__XXX___,
+ __XXX_X_,_X_XX___,
+ ______X_,X__XX___,
+ _____X__,XXXXXX__,
+ ____X___,___XX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00BF[ 13] = { /* code 00BF */
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ _XX_____,
+ XX______,
+ XX___X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00C0[ 26] = { /* code 00C0 */
+ __XX____,________,
+ ___XX___,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00C1[ 26] = { /* code 00C1 */
+ _____XX_,________,
+ ____XX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00C2[ 26] = { /* code 00C2 */
+ ___XXX__,________,
+ __XX_XX_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00C3[ 26] = { /* code 00C3 */
+ ___XX__X,________,
+ __X__XX_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00C4[ 26] = { /* code 00C4 */
+ __XX_XX_,________,
+ __XX_XX_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00C5[ 26] = { /* code 00C5 */
+ ___XXX__,________,
+ __X___X_,________,
+ __XXXXX_,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00C6[ 26] = { /* code 00C6 */
+ ________,________,
+ ________,________,
+ ___XXXXX,XXXX____,
+ __XX__XX,________,
+ __XX__XX,________,
+ __XX__XX,________,
+ _XX___XX,XXXX____,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ XX____XX,________,
+ XX____XX,XXXX____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00C7[ 13] = { /* code 00C7 */
+ ________,
+ ________,
+ _XXXXX__,
+ XX____X_,
+ XX____X_,
+ XX______,
+ XX______,
+ XX______,
+ XX____X_,
+ XX____X_,
+ _XXXXX__,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00C8[ 13] = { /* code 00C8 */
+ _XX_____,
+ __XX____,
+ XXXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00C9[ 13] = { /* code 00C9 */
+ ___XX___,
+ __XX____,
+ XXXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00CA[ 13] = { /* code 00CA */
+ __XXX___,
+ _XX_XX__,
+ XXXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00CB[ 13] = { /* code 00CB */
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00CC[ 13] = { /* code 00CC */
+ XX______,
+ _XX_____,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00CD[ 13] = { /* code 00CD */
+ __XX____,
+ _XX_____,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00CE[ 13] = { /* code 00CE */
+ _XXX____,
+ XX_XX___,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00CF[ 13] = { /* code 00CF */
+ X__XX___,
+ X__XX___,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00D0[ 26] = { /* code 00D0 */
+ ________,________,
+ ________,________,
+ _XXXXXX_,________,
+ _XX___XX,________,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ XXXXX__X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX___XX,________,
+ _XXXXXX_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00D1[ 13] = { /* code 00D1 */
+ __XX__X_,
+ _X__XX__,
+ XXX___X_,
+ XXX___X_,
+ X_XX__X_,
+ X_XX__X_,
+ X__XX_X_,
+ X__XX_X_,
+ X___XXX_,
+ X___XXX_,
+ X____XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00D2[ 26] = { /* code 00D2 */
+ __XX____,________,
+ ___XX___,________,
+ _XXXXXX_,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XXXXXX_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00D3[ 26] = { /* code 00D3 */
+ ____XX__,________,
+ ___XX___,________,
+ _XXXXXX_,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XXXXXX_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00D4[ 26] = { /* code 00D4 */
+ ___XXX__,________,
+ __XX_XX_,________,
+ _XXXXXX_,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XXXXXX_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00D5[ 26] = { /* code 00D5 */
+ __XX__X_,________,
+ _X__XX__,________,
+ _XXXXXX_,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XXXXXX_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00D6[ 26] = { /* code 00D6 */
+ _XX__XX_,________,
+ _XX__XX_,________,
+ _XXXXXX_,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XXXXXX_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00D7[ 26] = { /* code 00D7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X___X,________,
+ ____X_X_,________,
+ _____X__,________,
+ ____X_X_,________,
+ ___X___X,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00D8[ 26] = { /* code 00D8 */
+ ________,________,
+ _______X,________,
+ _XXXXXX_,________,
+ XX___XXX,________,
+ XX__X_XX,________,
+ XX__X_XX,________,
+ XX_X__XX,________,
+ XX_X__XX,________,
+ XX_X__XX,________,
+ XXX___XX,________,
+ _XXXXXX_,________,
+ X_______,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00D9[ 13] = { /* code 00D9 */
+ __XX____,
+ ___XX___,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00DA[ 13] = { /* code 00DA */
+ ___XX___,
+ __XX____,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00DB[ 13] = { /* code 00DB */
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00DC[ 13] = { /* code 00DC */
+ _XX_XX__,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00DD[ 26] = { /* code 00DD */
+ ____XX__,________,
+ ___XX___,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ __XXXX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00DE[ 26] = { /* code 00DE */
+ ________,________,
+ ________,________,
+ XX______,________,
+ XXXXXXX_,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XXXXXXX_,________,
+ XX______,________,
+ XX______,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00DF[ 13] = { /* code 00DF */
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX_XXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX_XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00E0[ 13] = { /* code 00E0 */
+ ________,
+ __XX____,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ _____XX_,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00E1[ 13] = { /* code 00E1 */
+ ________,
+ ____XX__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ _____XX_,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00E2[ 13] = { /* code 00E2 */
+ ________,
+ __XXX___,
+ _XX_XX__,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ _____XX_,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00E3[ 13] = { /* code 00E3 */
+ ________,
+ __XX__X_,
+ _X__XX__,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ _____XX_,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00E4[ 13] = { /* code 00E4 */
+ ________,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ _____XX_,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00E5[ 13] = { /* code 00E5 */
+ ___XX___,
+ __X__X__,
+ __X__X__,
+ ___XX___,
+ __XXXX__,
+ _X___XX_,
+ _____XX_,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00E6[ 26] = { /* code 00E6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXX_XX,XX______,
+ _X__XX__,_XX_____,
+ ____XX__,_XX_____,
+ _XXXXXXX,XXX_____,
+ XX__XX__,________,
+ XX__XX__,__X_____,
+ _XXX__XX,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00E7[ 13] = { /* code 00E7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX___X__,
+ XX______,
+ XX______,
+ XX______,
+ XX___X__,
+ _XXXX___,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00E8[ 13] = { /* code 00E8 */
+ ________,
+ _XX_____,
+ __XX____,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX______,
+ XX____X_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00E9[ 13] = { /* code 00E9 */
+ ________,
+ ____XX__,
+ ___XX___,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX______,
+ XX____X_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00EA[ 13] = { /* code 00EA */
+ ________,
+ __XXX___,
+ _XX_XX__,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX______,
+ XX____X_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00EB[ 13] = { /* code 00EB */
+ ________,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX______,
+ XX____X_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00EC[ 13] = { /* code 00EC */
+ ________,
+ X_______,
+ XX______,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00ED[ 13] = { /* code 00ED */
+ ________,
+ _XX_____,
+ XX______,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00EE[ 13] = { /* code 00EE */
+ ________,
+ XX______,
+ __X_____,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00EF[ 13] = { /* code 00EF */
+ ________,
+ __X_____,
+ __X_____,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00F0[ 13] = { /* code 00F0 */
+ ________,
+ __XX_X__,
+ ___XX___,
+ __X_XX__,
+ _____XX_,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00F1[ 13] = { /* code 00F1 */
+ ________,
+ __XX__X_,
+ _X__XX__,
+ ________,
+ XX_XXX__,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00F2[ 13] = { /* code 00F2 */
+ ________,
+ _XX_____,
+ __XX____,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00F3[ 13] = { /* code 00F3 */
+ ________,
+ ____XX__,
+ ___XX___,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00F4[ 13] = { /* code 00F4 */
+ ________,
+ __XXX___,
+ _XX_XX__,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00F5[ 13] = { /* code 00F5 */
+ ________,
+ __XX__X_,
+ _X__XX__,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00F6[ 13] = { /* code 00F6 */
+ ________,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00F7[ 26] = { /* code 00F7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ ____XX__,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ ________,________,
+ ____XX__,________,
+ ____XX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00F8[ 13] = { /* code 00F8 */
+ ________,
+ ________,
+ ________,
+ ______X_,
+ _XXXXX__,
+ XX__XXX_,
+ XX__XXX_,
+ XX_X_XX_,
+ XXX__XX_,
+ XXX__XX_,
+ _XXXXX__,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00F9[ 13] = { /* code 00F9 */
+ ________,
+ _XX_____,
+ __XX____,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ _XXX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00FA[ 13] = { /* code 00FA */
+ ________,
+ ____XX__,
+ ___XX___,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ _XXX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00FB[ 13] = { /* code 00FB */
+ ________,
+ __XXX___,
+ _XX_XX__,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ _XXX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00FC[ 13] = { /* code 00FC */
+ ________,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ _XXX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00FD[ 13] = { /* code 00FD */
+ ________,
+ ____XX__,
+ ___XX___,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ ___XX___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00FE[ 13] = { /* code 00FE */
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX_XXX__,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXX__,
+ XX______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_1_00FF[ 13] = { /* code 00FF */
+ ________,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ ___XX___,
+ __XX____};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font13HB_1_CharInfo[96] = {
+ { 4, 4, 1, acFont13HB_1_00A0 } /* code 00A0 */
+ ,{ 5, 5, 1, acFont13HB_1_00A1 } /* code 00A1 */
+ ,{ 8, 8, 1, acFont13HB_1_00A2 } /* code 00A2 */
+ ,{ 8, 8, 1, acFont13HB_1_00A3 } /* code 00A3 */
+ ,{ 8, 8, 1, acFont13HB_1_00A4 } /* code 00A4 */
+ ,{ 8, 8, 1, acFont13HB_1_00A5 } /* code 00A5 */
+ ,{ 7, 7, 1, acFont13HB_1_00A6 } /* code 00A6 */
+ ,{ 8, 8, 1, acFont13HB_1_00A7 } /* code 00A7 */
+ ,{ 7, 7, 1, acFont13HB_1_00A8 } /* code 00A8 */
+ ,{ 12, 12, 2, acFont13HB_1_00A9 } /* code 00A9 */
+ ,{ 7, 7, 1, acFont13HB_1_00AA } /* code 00AA */
+ ,{ 9, 9, 2, acFont13HB_1_00AB } /* code 00AB */
+ ,{ 11, 11, 2, acFont13HB_1_00AC } /* code 00AC */
+ ,{ 6, 6, 1, acFont13HB_1_00AD } /* code 00AD */
+ ,{ 12, 12, 2, acFont13HB_1_00AE } /* code 00AE */
+ ,{ 8, 8, 1, acFont13HB_1_00AF } /* code 00AF */
+ ,{ 7, 7, 1, acFont13HB_1_00B0 } /* code 00B0 */
+ ,{ 11, 11, 2, acFont13HB_1_00B1 } /* code 00B1 */
+ ,{ 7, 7, 1, acFont13HB_1_00B2 } /* code 00B2 */
+ ,{ 7, 7, 1, acFont13HB_1_00B3 } /* code 00B3 */
+ ,{ 7, 7, 1, acFont13HB_1_00B4 } /* code 00B4 */
+ ,{ 8, 8, 1, acFont13HB_1_00B5 } /* code 00B5 */
+ ,{ 8, 8, 1, acFont13HB_1_00B6 } /* code 00B6 */
+ ,{ 4, 4, 1, acFont13HB_1_00B7 } /* code 00B7 */
+ ,{ 7, 7, 1, acFont13HB_1_00B8 } /* code 00B8 */
+ ,{ 7, 7, 1, acFont13HB_1_00B9 } /* code 00B9 */
+ ,{ 7, 7, 1, acFont13HB_1_00BA } /* code 00BA */
+ ,{ 9, 9, 2, acFont13HB_1_00BB } /* code 00BB */
+ ,{ 15, 15, 2, acFont13HB_1_00BC } /* code 00BC */
+ ,{ 15, 15, 2, acFont13HB_1_00BD } /* code 00BD */
+ ,{ 15, 15, 2, acFont13HB_1_00BE } /* code 00BE */
+ ,{ 7, 7, 1, acFont13HB_1_00BF } /* code 00BF */
+ ,{ 10, 10, 2, acFont13HB_1_00C0 } /* code 00C0 */
+ ,{ 10, 10, 2, acFont13HB_1_00C1 } /* code 00C1 */
+ ,{ 10, 10, 2, acFont13HB_1_00C2 } /* code 00C2 */
+ ,{ 10, 10, 2, acFont13HB_1_00C3 } /* code 00C3 */
+ ,{ 10, 10, 2, acFont13HB_1_00C4 } /* code 00C4 */
+ ,{ 10, 10, 2, acFont13HB_1_00C5 } /* code 00C5 */
+ ,{ 13, 13, 2, acFont13HB_1_00C6 } /* code 00C6 */
+ ,{ 8, 8, 1, acFont13HB_1_00C7 } /* code 00C7 */
+ ,{ 7, 7, 1, acFont13HB_1_00C8 } /* code 00C8 */
+ ,{ 7, 7, 1, acFont13HB_1_00C9 } /* code 00C9 */
+ ,{ 7, 7, 1, acFont13HB_1_00CA } /* code 00CA */
+ ,{ 7, 7, 1, acFont13HB_1_00CB } /* code 00CB */
+ ,{ 5, 5, 1, acFont13HB_1_00CC } /* code 00CC */
+ ,{ 5, 5, 1, acFont13HB_1_00CD } /* code 00CD */
+ ,{ 5, 5, 1, acFont13HB_1_00CE } /* code 00CE */
+ ,{ 5, 5, 1, acFont13HB_1_00CF } /* code 00CF */
+ ,{ 10, 10, 2, acFont13HB_1_00D0 } /* code 00D0 */
+ ,{ 8, 8, 1, acFont13HB_1_00D1 } /* code 00D1 */
+ ,{ 9, 9, 2, acFont13HB_1_00D2 } /* code 00D2 */
+ ,{ 9, 9, 2, acFont13HB_1_00D3 } /* code 00D3 */
+ ,{ 9, 9, 2, acFont13HB_1_00D4 } /* code 00D4 */
+ ,{ 9, 9, 2, acFont13HB_1_00D5 } /* code 00D5 */
+ ,{ 9, 9, 2, acFont13HB_1_00D6 } /* code 00D6 */
+ ,{ 11, 11, 2, acFont13HB_1_00D7 } /* code 00D7 */
+ ,{ 9, 9, 2, acFont13HB_1_00D8 } /* code 00D8 */
+ ,{ 8, 8, 1, acFont13HB_1_00D9 } /* code 00D9 */
+ ,{ 8, 8, 1, acFont13HB_1_00DA } /* code 00DA */
+ ,{ 8, 8, 1, acFont13HB_1_00DB } /* code 00DB */
+ ,{ 8, 8, 1, acFont13HB_1_00DC } /* code 00DC */
+ ,{ 9, 9, 2, acFont13HB_1_00DD } /* code 00DD */
+ ,{ 9, 9, 2, acFont13HB_1_00DE } /* code 00DE */
+ ,{ 8, 8, 1, acFont13HB_1_00DF } /* code 00DF */
+ ,{ 8, 8, 1, acFont13HB_1_00E0 } /* code 00E0 */
+ ,{ 8, 8, 1, acFont13HB_1_00E1 } /* code 00E1 */
+ ,{ 8, 8, 1, acFont13HB_1_00E2 } /* code 00E2 */
+ ,{ 8, 8, 1, acFont13HB_1_00E3 } /* code 00E3 */
+ ,{ 8, 8, 1, acFont13HB_1_00E4 } /* code 00E4 */
+ ,{ 8, 8, 1, acFont13HB_1_00E5 } /* code 00E5 */
+ ,{ 12, 12, 2, acFont13HB_1_00E6 } /* code 00E6 */
+ ,{ 7, 7, 1, acFont13HB_1_00E7 } /* code 00E7 */
+ ,{ 8, 8, 1, acFont13HB_1_00E8 } /* code 00E8 */
+ ,{ 8, 8, 1, acFont13HB_1_00E9 } /* code 00E9 */
+ ,{ 8, 8, 1, acFont13HB_1_00EA } /* code 00EA */
+ ,{ 8, 8, 1, acFont13HB_1_00EB } /* code 00EB */
+ ,{ 3, 3, 1, acFont13HB_1_00EC } /* code 00EC */
+ ,{ 3, 3, 1, acFont13HB_1_00ED } /* code 00ED */
+ ,{ 3, 3, 1, acFont13HB_1_00EE } /* code 00EE */
+ ,{ 3, 3, 1, acFont13HB_1_00EF } /* code 00EF */
+ ,{ 8, 8, 1, acFont13HB_1_00F0 } /* code 00F0 */
+ ,{ 8, 8, 1, acFont13HB_1_00F1 } /* code 00F1 */
+ ,{ 8, 8, 1, acFont13HB_1_00F2 } /* code 00F2 */
+ ,{ 8, 8, 1, acFont13HB_1_00F3 } /* code 00F3 */
+ ,{ 8, 8, 1, acFont13HB_1_00F4 } /* code 00F4 */
+ ,{ 8, 8, 1, acFont13HB_1_00F5 } /* code 00F5 */
+ ,{ 8, 8, 1, acFont13HB_1_00F6 } /* code 00F6 */
+ ,{ 11, 11, 2, acFont13HB_1_00F7 } /* code 00F7 */
+ ,{ 8, 8, 1, acFont13HB_1_00F8 } /* code 00F8 */
+ ,{ 8, 8, 1, acFont13HB_1_00F9 } /* code 00F9 */
+ ,{ 8, 8, 1, acFont13HB_1_00FA } /* code 00FA */
+ ,{ 8, 8, 1, acFont13HB_1_00FB } /* code 00FB */
+ ,{ 8, 8, 1, acFont13HB_1_00FC } /* code 00FC */
+ ,{ 8, 8, 1, acFont13HB_1_00FD } /* code 00FD */
+ ,{ 8, 8, 1, acFont13HB_1_00FE } /* code 00FE */
+ ,{ 8, 8, 1, acFont13HB_1_00FF } /* code 00FF */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13HB_1_Prop2 = {
+ 0x00A0 /* first character */
+ ,0x00FF /* last character */
+ ,&GUI_Font13HB_1_CharInfo[0] /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13HB_1_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font13HB_ASCII_CharInfo[0] /* address of first character */
+ ,&GUI_Font13HB_1_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font13HB_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,13 /* height of font */
+ ,13 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font13HB_1_Prop1}
+ , 11, 7, 9
+};
+
diff --git a/User/lib/lcd/gui/Font/F13HB_ASCII.c b/User/lib/lcd/gui/Font/F13HB_ASCII.c
new file mode 100644
index 0000000..483efb9
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F13HB_ASCII.c
@@ -0,0 +1,1563 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F13HB_ASCII.C
+Purpose : ASCII character set, bold, high
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0020[ 13] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0021[ 13] = { /* code 0021 */
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0022[ 13] = { /* code 0022 */
+ ________,
+ XX_XX___,
+ XX_XX___,
+ XX_XX___,
+ XX_XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0023[ 26] = { /* code 0023 */
+ ________,________,
+ ________,________,
+ ___X__X_,________,
+ ___X__X_,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ __X__X__,________,
+ XXXXXXX_,________,
+ XXXXXXX_,________,
+ _X__X___,________,
+ _X__X___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0024[ 13] = { /* code 0024 */
+ ___X____,
+ ___X____,
+ _XXXXX__,
+ XX_X__X_,
+ XX_X____,
+ XX_X____,
+ _XXXXX__,
+ ___X_XX_,
+ ___X_XX_,
+ X__X_XX_,
+ _XXXXX__,
+ ___X____,
+ ___X____};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0025[ 26] = { /* code 0025 */
+ ________,________,
+ ________,________,
+ _XXXX___,________,
+ XX__XX__,_X______,
+ XX__XX__,X_______,
+ XX__XX_X,________,
+ _XXXX_X_,XXXX____,
+ _____X_X,X__XX___,
+ ____X__X,X__XX___,
+ ___X___X,X__XX___,
+ ________,XXXX____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0026[ 26] = { /* code 0026 */
+ ________,________,
+ ________,________,
+ __XXXX__,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ __XXXX__,XX______,
+ _XX__XX_,XX______,
+ _XX___XX,X_______,
+ _XX___XX,________,
+ __XXXX_X,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0027[ 13] = { /* code 0027 */
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0028[ 13] = { /* code 0028 */
+ ________,
+ ___XX___,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ ___XX___};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0029[ 13] = { /* code 0029 */
+ ________,
+ _XX_____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_002A[ 13] = { /* code 002A */
+ ________,
+ ___XX___,
+ _X_XX_X_,
+ __XXXX__,
+ _X_XX_X_,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_002B[ 26] = { /* code 002B */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ __XXXXXX,X_______,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_002C[ 13] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ XX______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_002D[ 13] = { /* code 002D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_002E[ 13] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_002F[ 13] = { /* code 002F */
+ ________,
+ _____X__,
+ _____X__,
+ ____X___,
+ ____X___,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0030[ 13] = { /* code 0030 */
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0031[ 13] = { /* code 0031 */
+ ________,
+ ________,
+ ___XX___,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0032[ 13] = { /* code 0032 */
+ ________,
+ ________,
+ _XXXXX__,
+ X____XX_,
+ X____XX_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XXXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0033[ 13] = { /* code 0033 */
+ ________,
+ ________,
+ _XXXXX__,
+ X____XX_,
+ _____XX_,
+ _____XX_,
+ __XXXX__,
+ _____XX_,
+ _____XX_,
+ X____XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0034[ 13] = { /* code 0034 */
+ ________,
+ ________,
+ ____XX__,
+ ___XXX__,
+ __X_XX__,
+ _X__XX__,
+ X___XX__,
+ XXXXXXX_,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0035[ 13] = { /* code 0035 */
+ ________,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ X____XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0036[ 13] = { /* code 0036 */
+ ________,
+ ________,
+ __XXXX__,
+ _XX_____,
+ XX______,
+ XXXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0037[ 13] = { /* code 0037 */
+ ________,
+ ________,
+ XXXXXXX_,
+ _____XX_,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0038[ 13] = { /* code 0038 */
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0039[ 13] = { /* code 0039 */
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ _____XX_,
+ ____XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_003A[ 13] = { /* code 003A */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_003B[ 13] = { /* code 003B */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ XX______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_003C[ 26] = { /* code 003C */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ _____XX_,________,
+ ___XX___,________,
+ _XX_____,________,
+ _XX_____,________,
+ ___XX___,________,
+ _____XX_,________,
+ _______X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_003D[ 26] = { /* code 003D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ ________,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_003E[ 26] = { /* code 003E */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ ___XX___,________,
+ _____XX_,________,
+ _______X,X_______,
+ _______X,X_______,
+ _____XX_,________,
+ ___XX___,________,
+ _XX_____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_003F[ 13] = { /* code 003F */
+ ________,
+ ________,
+ _XXXX___,
+ X___XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0040[ 26] = { /* code 0040 */
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _X_____X,________,
+ X__XXXX_,X_______,
+ X_XX_XX_,X_______,
+ X_XX_XX_,X_______,
+ X_XX_XX_,X_______,
+ X_XX_XX_,X_______,
+ X__XX_XX,________,
+ _X______,________,
+ __XXXXXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0041[ 26] = { /* code 0041 */
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0042[ 13] = { /* code 0042 */
+ ________,
+ ________,
+ XXXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0043[ 13] = { /* code 0043 */
+ ________,
+ ________,
+ _XXXXX__,
+ XX____X_,
+ XX____X_,
+ XX______,
+ XX______,
+ XX______,
+ XX____X_,
+ XX____X_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0044[ 26] = { /* code 0044 */
+ ________,________,
+ ________,________,
+ XXXXXX__,________,
+ XX___XX_,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX___XX_,________,
+ XXXXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0045[ 13] = { /* code 0045 */
+ ________,
+ ________,
+ XXXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0046[ 13] = { /* code 0046 */
+ ________,
+ ________,
+ XXXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0047[ 13] = { /* code 0047 */
+ ________,
+ ________,
+ _XXXXX__,
+ XX____X_,
+ XX____X_,
+ XX______,
+ XX__XXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0048[ 26] = { /* code 0048 */
+ ________,________,
+ ________,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XXXXXXXX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0049[ 13] = { /* code 0049 */
+ ________,
+ ________,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_004A[ 13] = { /* code 004A */
+ ________,
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_004B[ 13] = { /* code 004B */
+ ________,
+ ________,
+ XX___XX_,
+ XX__XX__,
+ XX_XX___,
+ XXXX____,
+ XXX_____,
+ XXXX____,
+ XX_XX___,
+ XX__XX__,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_004C[ 13] = { /* code 004C */
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_004D[ 26] = { /* code 004D */
+ ________,________,
+ ________,________,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ X_XX__X_,XX______,
+ X_XX__X_,XX______,
+ X__XXX__,XX______,
+ X__XXX__,XX______,
+ X___X___,XX______,
+ X___X___,XX______,
+ X_______,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_004E[ 13] = { /* code 004E */
+ ________,
+ ________,
+ XXX___X_,
+ XXX___X_,
+ X_XX__X_,
+ X_XX__X_,
+ X__XX_X_,
+ X__XX_X_,
+ X___XXX_,
+ X___XXX_,
+ X____XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_004F[ 26] = { /* code 004F */
+ ________,________,
+ ________,________,
+ _XXXXXX_,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XXXXXX_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0050[ 13] = { /* code 0050 */
+ ________,
+ ________,
+ XXXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0051[ 26] = { /* code 0051 */
+ ________,________,
+ ________,________,
+ _XXXXXX_,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XXXXXX_,________,
+ _____XX_,________,
+ ______XX,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0052[ 26] = { /* code 0052 */
+ ________,________,
+ ________,________,
+ XXXXXX__,________,
+ XX___XX_,________,
+ XX___XX_,________,
+ XX___XX_,________,
+ XXXXXX__,________,
+ XX_XX___,________,
+ XX__XX__,________,
+ XX___XX_,________,
+ XX____XX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0053[ 13] = { /* code 0053 */
+ ________,
+ ________,
+ _XXXXX__,
+ XX____X_,
+ XX____X_,
+ XX______,
+ _XXXXX__,
+ _____XX_,
+ X____XX_,
+ X____XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0054[ 13] = { /* code 0054 */
+ ________,
+ ________,
+ XXXXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0055[ 13] = { /* code 0055 */
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0056[ 26] = { /* code 0056 */
+ ________,________,
+ ________,________,
+ XX____XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0057[ 26] = { /* code 0057 */
+ ________,________,
+ ________,________,
+ XX___XX_,__XX____,
+ XX___XX_,__XX____,
+ XX___XX_,__XX____,
+ XX__XXXX,__XX____,
+ _XX_XXXX,_XX_____,
+ _XXXX__X,XXX_____,
+ _XXXX__X,XXX_____,
+ __XX____,XX______,
+ __XX____,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0058[ 26] = { /* code 0058 */
+ ________,________,
+ ________,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XX__XX_,________,
+ __XXXX__,________,
+ ___XX___,________,
+ __XXXX__,________,
+ _XX__XX_,________,
+ XX____XX,________,
+ XX____XX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0059[ 26] = { /* code 0059 */
+ ________,________,
+ ________,________,
+ XX____XX,________,
+ XX____XX,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ __XXXX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_005A[ 13] = { /* code 005A */
+ ________,
+ ________,
+ XXXXXX__,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_005B[ 13] = { /* code 005B */
+ ________,
+ _XXXX___,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_005C[ 13] = { /* code 005C */
+ ________,
+ X_______,
+ X_______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ ___X____,
+ ___X____,
+ ____X___,
+ ____X___,
+ _____X__,
+ _____X__};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_005D[ 13] = { /* code 005D */
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_005E[ 26] = { /* code 005E */
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ ___X__X_,________,
+ __X____X,________,
+ _X______,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_005F[ 13] = { /* code 005F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0060[ 13] = { /* code 0060 */
+ ________,
+ __XX____,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0061[ 13] = { /* code 0061 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ _____XX_,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0062[ 13] = { /* code 0062 */
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX_XXX__,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0063[ 13] = { /* code 0063 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX___X__,
+ XX______,
+ XX______,
+ XX______,
+ XX___X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0064[ 13] = { /* code 0064 */
+ ________,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ _XXX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0065[ 13] = { /* code 0065 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX______,
+ XX____X_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0066[ 13] = { /* code 0066 */
+ ________,
+ __XXX___,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0067[ 13] = { /* code 0067 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ _XXX_XX_,
+ _____XX_,
+ _XXXXX__};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0068[ 13] = { /* code 0068 */
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX_XXX__,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0069[ 13] = { /* code 0069 */
+ ________,
+ XX______,
+ XX______,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_006A[ 13] = { /* code 006A */
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_006B[ 13] = { /* code 006B */
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX__XX__,
+ XX_XX___,
+ XXXX____,
+ XXX_____,
+ XXXX____,
+ XX_XX___,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_006C[ 13] = { /* code 006C */
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_006D[ 26] = { /* code 006D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXX_XX,X_______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_006E[ 13] = { /* code 006E */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_XXX__,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_006F[ 13] = { /* code 006F */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0070[ 13] = { /* code 0070 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_XXX__,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXX__,
+ XX______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0071[ 13] = { /* code 0071 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ _XXX_XX_,
+ _____XX_,
+ _____XX_};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0072[ 13] = { /* code 0072 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_XX___,
+ XXXXX___,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0073[ 13] = { /* code 0073 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX___X__,
+ XXX_____,
+ _XXXX___,
+ ___XXX__,
+ X___XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0074[ 13] = { /* code 0074 */
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ XXXXX___,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0075[ 13] = { /* code 0075 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ _XXX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0076[ 13] = { /* code 0076 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0077[ 26] = { /* code 0077 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ _XX_XX_X,X_______,
+ _XX_XX_X,X_______,
+ _XXX__XX,X_______,
+ __XX__XX,________,
+ __XX__XX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0078[ 13] = { /* code 0078 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_0079[ 13] = { /* code 0079 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ ___XX___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_007A[ 13] = { /* code 007A */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_007B[ 13] = { /* code 007B */
+ ________,
+ ___XXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XXX__};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_007C[ 13] = { /* code 007C */
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_007D[ 13] = { /* code 007D */
+ ________,
+ XXX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXX_____};
+
+GUI_CONST_STORAGE unsigned char acFont13HB_ASCII_007E[ 26] = { /* code 007E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXX___,_X______,
+ XXXXXX__,_X______,
+ X___XXXX,XX______,
+ X____XXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font13HB_ASCII_CharInfo[95] = {
+ { 4, 4, 1, acFont13HB_ASCII_0020 } /* code 0020 */
+ ,{ 5, 5, 1, acFont13HB_ASCII_0021 } /* code 0021 */
+ ,{ 6, 6, 1, acFont13HB_ASCII_0022 } /* code 0022 */
+ ,{ 9, 9, 2, acFont13HB_ASCII_0023 } /* code 0023 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0024 } /* code 0024 */
+ ,{ 14, 14, 2, acFont13HB_ASCII_0025 } /* code 0025 */
+ ,{ 11, 11, 2, acFont13HB_ASCII_0026 } /* code 0026 */
+ ,{ 4, 4, 1, acFont13HB_ASCII_0027 } /* code 0027 */
+ ,{ 6, 6, 1, acFont13HB_ASCII_0028 } /* code 0028 */
+ ,{ 6, 6, 1, acFont13HB_ASCII_0029 } /* code 0029 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_002A } /* code 002A */
+ ,{ 11, 11, 2, acFont13HB_ASCII_002B } /* code 002B */
+ ,{ 4, 4, 1, acFont13HB_ASCII_002C } /* code 002C */
+ ,{ 6, 6, 1, acFont13HB_ASCII_002D } /* code 002D */
+ ,{ 4, 4, 1, acFont13HB_ASCII_002E } /* code 002E */
+ ,{ 8, 8, 1, acFont13HB_ASCII_002F } /* code 002F */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0030 } /* code 0030 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0031 } /* code 0031 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0032 } /* code 0032 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0033 } /* code 0033 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0034 } /* code 0034 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0035 } /* code 0035 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0036 } /* code 0036 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0037 } /* code 0037 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0038 } /* code 0038 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0039 } /* code 0039 */
+ ,{ 5, 5, 1, acFont13HB_ASCII_003A } /* code 003A */
+ ,{ 5, 5, 1, acFont13HB_ASCII_003B } /* code 003B */
+ ,{ 11, 11, 2, acFont13HB_ASCII_003C } /* code 003C */
+ ,{ 11, 11, 2, acFont13HB_ASCII_003D } /* code 003D */
+ ,{ 11, 11, 2, acFont13HB_ASCII_003E } /* code 003E */
+ ,{ 7, 7, 1, acFont13HB_ASCII_003F } /* code 003F */
+ ,{ 10, 10, 2, acFont13HB_ASCII_0040 } /* code 0040 */
+ ,{ 10, 10, 2, acFont13HB_ASCII_0041 } /* code 0041 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0042 } /* code 0042 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0043 } /* code 0043 */
+ ,{ 9, 9, 2, acFont13HB_ASCII_0044 } /* code 0044 */
+ ,{ 7, 7, 1, acFont13HB_ASCII_0045 } /* code 0045 */
+ ,{ 6, 6, 1, acFont13HB_ASCII_0046 } /* code 0046 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0047 } /* code 0047 */
+ ,{ 9, 9, 2, acFont13HB_ASCII_0048 } /* code 0048 */
+ ,{ 5, 5, 1, acFont13HB_ASCII_0049 } /* code 0049 */
+ ,{ 6, 6, 1, acFont13HB_ASCII_004A } /* code 004A */
+ ,{ 8, 8, 1, acFont13HB_ASCII_004B } /* code 004B */
+ ,{ 7, 7, 1, acFont13HB_ASCII_004C } /* code 004C */
+ ,{ 11, 11, 2, acFont13HB_ASCII_004D } /* code 004D */
+ ,{ 8, 8, 1, acFont13HB_ASCII_004E } /* code 004E */
+ ,{ 9, 9, 2, acFont13HB_ASCII_004F } /* code 004F */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0050 } /* code 0050 */
+ ,{ 9, 9, 2, acFont13HB_ASCII_0051 } /* code 0051 */
+ ,{ 9, 9, 2, acFont13HB_ASCII_0052 } /* code 0052 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0053 } /* code 0053 */
+ ,{ 7, 7, 1, acFont13HB_ASCII_0054 } /* code 0054 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0055 } /* code 0055 */
+ ,{ 9, 9, 2, acFont13HB_ASCII_0056 } /* code 0056 */
+ ,{ 13, 13, 2, acFont13HB_ASCII_0057 } /* code 0057 */
+ ,{ 9, 9, 2, acFont13HB_ASCII_0058 } /* code 0058 */
+ ,{ 9, 9, 2, acFont13HB_ASCII_0059 } /* code 0059 */
+ ,{ 7, 7, 1, acFont13HB_ASCII_005A } /* code 005A */
+ ,{ 6, 6, 1, acFont13HB_ASCII_005B } /* code 005B */
+ ,{ 8, 8, 1, acFont13HB_ASCII_005C } /* code 005C */
+ ,{ 6, 6, 1, acFont13HB_ASCII_005D } /* code 005D */
+ ,{ 11, 11, 2, acFont13HB_ASCII_005E } /* code 005E */
+ ,{ 8, 8, 1, acFont13HB_ASCII_005F } /* code 005F */
+ ,{ 7, 7, 1, acFont13HB_ASCII_0060 } /* code 0060 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0061 } /* code 0061 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0062 } /* code 0062 */
+ ,{ 7, 7, 1, acFont13HB_ASCII_0063 } /* code 0063 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0064 } /* code 0064 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0065 } /* code 0065 */
+ ,{ 5, 5, 1, acFont13HB_ASCII_0066 } /* code 0066 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0067 } /* code 0067 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0068 } /* code 0068 */
+ ,{ 3, 3, 1, acFont13HB_ASCII_0069 } /* code 0069 */
+ ,{ 4, 4, 1, acFont13HB_ASCII_006A } /* code 006A */
+ ,{ 7, 7, 1, acFont13HB_ASCII_006B } /* code 006B */
+ ,{ 3, 3, 1, acFont13HB_ASCII_006C } /* code 006C */
+ ,{ 11, 11, 2, acFont13HB_ASCII_006D } /* code 006D */
+ ,{ 8, 8, 1, acFont13HB_ASCII_006E } /* code 006E */
+ ,{ 8, 8, 1, acFont13HB_ASCII_006F } /* code 006F */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0070 } /* code 0070 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0071 } /* code 0071 */
+ ,{ 6, 6, 1, acFont13HB_ASCII_0072 } /* code 0072 */
+ ,{ 7, 7, 1, acFont13HB_ASCII_0073 } /* code 0073 */
+ ,{ 6, 6, 1, acFont13HB_ASCII_0074 } /* code 0074 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0075 } /* code 0075 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0076 } /* code 0076 */
+ ,{ 11, 11, 2, acFont13HB_ASCII_0077 } /* code 0077 */
+ ,{ 7, 7, 1, acFont13HB_ASCII_0078 } /* code 0078 */
+ ,{ 8, 8, 1, acFont13HB_ASCII_0079 } /* code 0079 */
+ ,{ 7, 7, 1, acFont13HB_ASCII_007A } /* code 007A */
+ ,{ 7, 7, 1, acFont13HB_ASCII_007B } /* code 007B */
+ ,{ 7, 7, 1, acFont13HB_ASCII_007C } /* code 007C */
+ ,{ 7, 7, 1, acFont13HB_ASCII_007D } /* code 007D */
+ ,{ 11, 11, 2, acFont13HB_ASCII_007E } /* code 007E */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13HB_ASCII_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font13HB_ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font13HB_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,13 /* height of font */
+ ,13 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font13HB_ASCII_Prop1}
+ , 11, 7, 9
+};
+
diff --git a/User/lib/lcd/gui/Font/F13H_1.c b/User/lib/lcd/gui/Font/F13H_1.c
new file mode 100644
index 0000000..c7bfb0d
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F13H_1.c
@@ -0,0 +1,1586 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F13H_1.C
+Purpose : ISO 8859-1, West European Character Set
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont13H_1_00A0[ 13] = { /* code 00A0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00A1[ 13] = { /* code 00A1 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00A2[ 13] = { /* code 00A2 */
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ __XXXX__,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __XXXX__,
+ ___X____,
+ ___X____};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00A3[ 13] = { /* code 00A3 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ __X_____,
+ __X_____,
+ _XXXXX__,
+ __X_____,
+ __X_____,
+ _X______,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00A4[ 13] = { /* code 00A4 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X____X__,
+ _XXXX___,
+ _X__X___,
+ _X__X___,
+ _XXXX___,
+ X____X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00A5[ 13] = { /* code 00A5 */
+ ________,
+ ________,
+ X_____X_,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ ___X____,
+ _XXXXX__,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00A6[ 13] = { /* code 00A6 */
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00A7[ 13] = { /* code 00A7 */
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X_______,
+ _XXX____,
+ X___X___,
+ X____X__,
+ _X___X__,
+ __XXX___,
+ _____X__,
+ X____X__,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00A8[ 13] = { /* code 00A8 */
+ ________,
+ ________,
+ __X__X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00A9[ 26] = { /* code 00A9 */
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __X_____,X_______,
+ _X__XXX_,_X______,
+ X__X___X,__X_____,
+ X__X____,__X_____,
+ X__X____,__X_____,
+ X__X____,__X_____,
+ X__X___X,__X_____,
+ _X__XXX_,_X______,
+ __X_____,X_______,
+ ___XXXXX,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00AA[ 13] = { /* code 00AA */
+ ________,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00AB[ 13] = { /* code 00AB */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X__X__,
+ _X__X___,
+ X__X____,
+ X__X____,
+ _X__X___,
+ __X__X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00AC[ 26] = { /* code 00AC */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00AD[ 13] = { /* code 00AD */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00AE[ 26] = { /* code 00AE */
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __X_____,X_______,
+ _X_XXXX_,_X______,
+ X__X___X,__X_____,
+ X__X___X,__X_____,
+ X__XXXX_,__X_____,
+ X__X__X_,__X_____,
+ X__X___X,__X_____,
+ _X_X___X,_X______,
+ __X_____,X_______,
+ ___XXXXX,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00AF[ 13] = { /* code 00AF */
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00B0[ 13] = { /* code 00B0 */
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00B1[ 13] = { /* code 00B1 */
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00B2[ 13] = { /* code 00B2 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ ____X___,
+ ___X____,
+ __X_____,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00B3[ 13] = { /* code 00B3 */
+ ________,
+ ________,
+ _XXX____,
+ ____X___,
+ __XX____,
+ ____X___,
+ ____X___,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00B4[ 13] = { /* code 00B4 */
+ ________,
+ ____X___,
+ ___X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00B5[ 13] = { /* code 00B5 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___XX__,
+ XXXX_X__,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00B6[ 13] = { /* code 00B6 */
+ ________,
+ ________,
+ _XXXXX__,
+ XXXX_X__,
+ XXXX_X__,
+ XXXX_X__,
+ XXXX_X__,
+ _XXX_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00B7[ 13] = { /* code 00B7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00B8[ 13] = { /* code 00B8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00B9[ 13] = { /* code 00B9 */
+ ________,
+ ________,
+ ___X____,
+ __XX____,
+ ___X____,
+ ___X____,
+ ___X____,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00BA[ 13] = { /* code 00BA */
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00BB[ 13] = { /* code 00BB */
+ ________,
+ ________,
+ ________,
+ ________,
+ X__X____,
+ _X__X___,
+ __X__X__,
+ __X__X__,
+ _X__X___,
+ X__X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00BC[ 26] = { /* code 00BC */
+ ________,________,
+ ________,________,
+ __X_____,X_______,
+ _XX____X,________,
+ __X____X,________,
+ __X___X_,__X_____,
+ __X___X_,_XX_____,
+ __X__X__,X_X_____,
+ ____X__X,__X_____,
+ ____X__X,XXXX____,
+ ___X____,__X_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00BD[ 26] = { /* code 00BD */
+ ________,________,
+ ________,________,
+ __X____X,________,
+ _XX____X,________,
+ __X___X_,________,
+ __X___X_,_XX_____,
+ __X__X__,X__X____,
+ __X__X__,___X____,
+ ____X___,__X_____,
+ ____X___,_X______,
+ ___X____,XXXX____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00BE[ 26] = { /* code 00BE */
+ ________,________,
+ ________,________,
+ _XXX____,_X______,
+ ____X___,X_______,
+ __XX____,X_______,
+ ____X__X,__X_____,
+ ____X__X,_XX_____,
+ _XXX__X_,X_X_____,
+ _____X_X,__X_____,
+ _____X_X,XXXX____,
+ ____X___,__X_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00BF[ 13] = { /* code 00BF */
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ ________,
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00C0[ 13] = { /* code 00C0 */
+ __X_____,
+ ___X____,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00C1[ 13] = { /* code 00C1 */
+ ____X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00C2[ 13] = { /* code 00C2 */
+ ___XX___,
+ __X__X__,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00C3[ 13] = { /* code 00C3 */
+ __XX_X__,
+ _X_XX___,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00C4[ 13] = { /* code 00C4 */
+ _X___X__,
+ ________,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00C5[ 13] = { /* code 00C5 */
+ ___X____,
+ __X_X___,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00C6[ 26] = { /* code 00C6 */
+ ________,________,
+ ________,________,
+ ___XXXXX,XXX_____,
+ ___X__X_,________,
+ __X___X_,________,
+ __X___X_,________,
+ __X___XX,XXX_____,
+ _XXXXXX_,________,
+ _X____X_,________,
+ _X____X_,________,
+ X_____XX,XXX_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00C7[ 13] = { /* code 00C7 */
+ ________,
+ ________,
+ __XXXX__,
+ _X____X_,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _X____X_,
+ __XXXX__,
+ _____X__,
+ ___XX___};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00C8[ 13] = { /* code 00C8 */
+ __X_____,
+ ___X____,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00C9[ 13] = { /* code 00C9 */
+ ____X___,
+ ___X____,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00CA[ 13] = { /* code 00CA */
+ __XX____,
+ _X__X___,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00CB[ 13] = { /* code 00CB */
+ _X__X___,
+ ________,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00CC[ 13] = { /* code 00CC */
+ X_______,
+ _X______,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00CD[ 13] = { /* code 00CD */
+ __X_____,
+ _X______,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00CE[ 13] = { /* code 00CE */
+ _XX_____,
+ X__X____,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00CF[ 13] = { /* code 00CF */
+ X_X_____,
+ ________,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00D0[ 26] = { /* code 00D0 */
+ ________,________,
+ ________,________,
+ _XXXXX__,________,
+ _X____X_,________,
+ _X_____X,________,
+ _X_____X,________,
+ XXXX___X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X____X_,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00D1[ 13] = { /* code 00D1 */
+ __XX_X__,
+ _X_XX___,
+ XX____X_,
+ XX____X_,
+ X_X___X_,
+ X_X___X_,
+ X__X__X_,
+ X___X_X_,
+ X___X_X_,
+ X____XX_,
+ X____XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00D2[ 26] = { /* code 00D2 */
+ ___X____,________,
+ ____X___,________,
+ __XXXX__,________,
+ _X____X_,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ _X____X_,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00D3[ 26] = { /* code 00D3 */
+ ____X___,________,
+ ___X____,________,
+ __XXXX__,________,
+ _X____X_,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ _X____X_,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00D4[ 26] = { /* code 00D4 */
+ ___XX___,________,
+ __X__X__,________,
+ __XXXX__,________,
+ _X____X_,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ _X____X_,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00D5[ 26] = { /* code 00D5 */
+ ___XX_X_,________,
+ __X_XX__,________,
+ __XXXX__,________,
+ _X____X_,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ _X____X_,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00D6[ 26] = { /* code 00D6 */
+ __X__X__,________,
+ ________,________,
+ __XXXX__,________,
+ _X____X_,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ _X____X_,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00D7[ 26] = { /* code 00D7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X_____X,________,
+ __X___X_,________,
+ ___X_X__,________,
+ ____X___,________,
+ ___X_X__,________,
+ __X___X_,________,
+ _X_____X,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00D8[ 26] = { /* code 00D8 */
+ ________,________,
+ ________,________,
+ __XXXX_X,________,
+ _X____X_,________,
+ X____X_X,________,
+ X___X__X,________,
+ X__X___X,________,
+ X__X___X,________,
+ X_X____X,________,
+ _X____X_,________,
+ X_XXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00D9[ 13] = { /* code 00D9 */
+ __X_____,
+ ___X____,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00DA[ 13] = { /* code 00DA */
+ ____X___,
+ ___X____,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00DB[ 13] = { /* code 00DB */
+ ___XX___,
+ __X__X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00DC[ 13] = { /* code 00DC */
+ _X___X__,
+ ________,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00DD[ 13] = { /* code 00DD */
+ ____X___,
+ ___X____,
+ X_____X_,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00DE[ 13] = { /* code 00DE */
+ ________,
+ ________,
+ X_______,
+ X_______,
+ XXXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ XXXXX___,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00DF[ 13] = { /* code 00DF */
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X_XX____,
+ X___X___,
+ X____X__,
+ X____X__,
+ X___X___,
+ X_XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00E0[ 13] = { /* code 00E0 */
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ _XXXX___,
+ _____X__,
+ _____X__,
+ _XXXXX__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00E1[ 13] = { /* code 00E1 */
+ ________,
+ ____X___,
+ ___X____,
+ ________,
+ _XXXX___,
+ _____X__,
+ _____X__,
+ _XXXXX__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00E2[ 13] = { /* code 00E2 */
+ ________,
+ __XX____,
+ _X__X___,
+ ________,
+ _XXXX___,
+ _____X__,
+ _____X__,
+ _XXXXX__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00E3[ 13] = { /* code 00E3 */
+ ________,
+ __XX_X__,
+ _X_XX___,
+ ________,
+ _XXXX___,
+ _____X__,
+ _____X__,
+ _XXXXX__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00E4[ 13] = { /* code 00E4 */
+ ________,
+ ________,
+ _X__X___,
+ ________,
+ _XXXX___,
+ _____X__,
+ _____X__,
+ _XXXXX__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00E5[ 13] = { /* code 00E5 */
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ _XXXX___,
+ _____X__,
+ _____X__,
+ _XXXXX__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00E6[ 26] = { /* code 00E6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX__XX,________,
+ ____XX__,X_______,
+ ____X___,_X______,
+ _XXXXXXX,XX______,
+ X___X___,________,
+ X___XX__,_X______,
+ _XXX__XX,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00E7[ 13] = { /* code 00E7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _XXXX___,
+ ___X____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00E8[ 13] = { /* code 00E8 */
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ XXXXXX__,
+ X_______,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00E9[ 13] = { /* code 00E9 */
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ XXXXXX__,
+ X_______,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00EA[ 13] = { /* code 00EA */
+ ________,
+ __XX____,
+ _X__X___,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ XXXXXX__,
+ X_______,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00EB[ 13] = { /* code 00EB */
+ ________,
+ ________,
+ _X__X___,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ XXXXXX__,
+ X_______,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00EC[ 13] = { /* code 00EC */
+ ________,
+ X_______,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00ED[ 13] = { /* code 00ED */
+ ________,
+ __X_____,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00EE[ 13] = { /* code 00EE */
+ ________,
+ _X______,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00EF[ 13] = { /* code 00EF */
+ ________,
+ ________,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00F0[ 13] = { /* code 00F0 */
+ ________,
+ ________,
+ __X_X___,
+ ___X____,
+ _XX_X___,
+ _____X__,
+ _XXXXX__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00F1[ 13] = { /* code 00F1 */
+ ________,
+ __XX_X__,
+ _X_XX___,
+ ________,
+ X_XXX___,
+ XX___X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00F2[ 13] = { /* code 00F2 */
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00F3[ 13] = { /* code 00F3 */
+ ________,
+ ____X___,
+ ___X____,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00F4[ 13] = { /* code 00F4 */
+ ________,
+ __XX____,
+ _X__X___,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00F5[ 13] = { /* code 00F5 */
+ ________,
+ __XX_X__,
+ _X_XX___,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00F6[ 13] = { /* code 00F6 */
+ ________,
+ ________,
+ _X__X___,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00F7[ 26] = { /* code 00F7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X____,________,
+ ___X____,________,
+ ________,________,
+ XXXXXXX_,________,
+ ________,________,
+ ___X____,________,
+ ___X____,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00F8[ 13] = { /* code 00F8 */
+ ________,
+ ________,
+ ________,
+ _____X__,
+ __XXX___,
+ _X__X___,
+ X__X_X__,
+ X_X__X__,
+ X_X__X__,
+ _X__X___,
+ _XXX____,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00F9[ 13] = { /* code 00F9 */
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00FA[ 13] = { /* code 00FA */
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00FB[ 13] = { /* code 00FB */
+ ________,
+ __XX____,
+ _X__X___,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00FC[ 13] = { /* code 00FC */
+ ________,
+ ________,
+ _X__X___,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00FD[ 13] = { /* code 00FD */
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00FE[ 13] = { /* code 00FE */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_XXX___,
+ XX___X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ XXXXX___,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_1_00FF[ 13] = { /* code 00FF */
+ ________,
+ ________,
+ _X__X___,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font13H_1_CharInfo[96] = {
+ { 4, 4, 1, acFont13H_1_00A0 } /* code 00A0 */
+ ,{ 4, 4, 1, acFont13H_1_00A1 } /* code 00A1 */
+ ,{ 7, 7, 1, acFont13H_1_00A2 } /* code 00A2 */
+ ,{ 7, 7, 1, acFont13H_1_00A3 } /* code 00A3 */
+ ,{ 7, 7, 1, acFont13H_1_00A4 } /* code 00A4 */
+ ,{ 7, 7, 1, acFont13H_1_00A5 } /* code 00A5 */
+ ,{ 5, 5, 1, acFont13H_1_00A6 } /* code 00A6 */
+ ,{ 7, 7, 1, acFont13H_1_00A7 } /* code 00A7 */
+ ,{ 7, 7, 1, acFont13H_1_00A8 } /* code 00A8 */
+ ,{ 12, 12, 2, acFont13H_1_00A9 } /* code 00A9 */
+ ,{ 6, 6, 1, acFont13H_1_00AA } /* code 00AA */
+ ,{ 7, 7, 1, acFont13H_1_00AB } /* code 00AB */
+ ,{ 9, 9, 2, acFont13H_1_00AC } /* code 00AC */
+ ,{ 5, 5, 1, acFont13H_1_00AD } /* code 00AD */
+ ,{ 12, 12, 2, acFont13H_1_00AE } /* code 00AE */
+ ,{ 7, 7, 1, acFont13H_1_00AF } /* code 00AF */
+ ,{ 6, 6, 1, acFont13H_1_00B0 } /* code 00B0 */
+ ,{ 8, 8, 1, acFont13H_1_00B1 } /* code 00B1 */
+ ,{ 6, 6, 1, acFont13H_1_00B2 } /* code 00B2 */
+ ,{ 6, 6, 1, acFont13H_1_00B3 } /* code 00B3 */
+ ,{ 7, 7, 1, acFont13H_1_00B4 } /* code 00B4 */
+ ,{ 7, 7, 1, acFont13H_1_00B5 } /* code 00B5 */
+ ,{ 7, 7, 1, acFont13H_1_00B6 } /* code 00B6 */
+ ,{ 4, 4, 1, acFont13H_1_00B7 } /* code 00B7 */
+ ,{ 7, 7, 1, acFont13H_1_00B8 } /* code 00B8 */
+ ,{ 6, 6, 1, acFont13H_1_00B9 } /* code 00B9 */
+ ,{ 6, 6, 1, acFont13H_1_00BA } /* code 00BA */
+ ,{ 7, 7, 1, acFont13H_1_00BB } /* code 00BB */
+ ,{ 13, 13, 2, acFont13H_1_00BC } /* code 00BC */
+ ,{ 13, 13, 2, acFont13H_1_00BD } /* code 00BD */
+ ,{ 13, 13, 2, acFont13H_1_00BE } /* code 00BE */
+ ,{ 6, 6, 1, acFont13H_1_00BF } /* code 00BF */
+ ,{ 8, 8, 1, acFont13H_1_00C0 } /* code 00C0 */
+ ,{ 8, 8, 1, acFont13H_1_00C1 } /* code 00C1 */
+ ,{ 8, 8, 1, acFont13H_1_00C2 } /* code 00C2 */
+ ,{ 8, 8, 1, acFont13H_1_00C3 } /* code 00C3 */
+ ,{ 8, 8, 1, acFont13H_1_00C4 } /* code 00C4 */
+ ,{ 8, 8, 1, acFont13H_1_00C5 } /* code 00C5 */
+ ,{ 12, 12, 2, acFont13H_1_00C6 } /* code 00C6 */
+ ,{ 8, 8, 1, acFont13H_1_00C7 } /* code 00C7 */
+ ,{ 7, 7, 1, acFont13H_1_00C8 } /* code 00C8 */
+ ,{ 7, 7, 1, acFont13H_1_00C9 } /* code 00C9 */
+ ,{ 7, 7, 1, acFont13H_1_00CA } /* code 00CA */
+ ,{ 7, 7, 1, acFont13H_1_00CB } /* code 00CB */
+ ,{ 4, 4, 1, acFont13H_1_00CC } /* code 00CC */
+ ,{ 4, 4, 1, acFont13H_1_00CD } /* code 00CD */
+ ,{ 4, 4, 1, acFont13H_1_00CE } /* code 00CE */
+ ,{ 4, 4, 1, acFont13H_1_00CF } /* code 00CF */
+ ,{ 9, 9, 2, acFont13H_1_00D0 } /* code 00D0 */
+ ,{ 8, 8, 1, acFont13H_1_00D1 } /* code 00D1 */
+ ,{ 9, 9, 2, acFont13H_1_00D2 } /* code 00D2 */
+ ,{ 9, 9, 2, acFont13H_1_00D3 } /* code 00D3 */
+ ,{ 9, 9, 2, acFont13H_1_00D4 } /* code 00D4 */
+ ,{ 9, 9, 2, acFont13H_1_00D5 } /* code 00D5 */
+ ,{ 9, 9, 2, acFont13H_1_00D6 } /* code 00D6 */
+ ,{ 9, 9, 2, acFont13H_1_00D7 } /* code 00D7 */
+ ,{ 9, 9, 2, acFont13H_1_00D8 } /* code 00D8 */
+ ,{ 8, 8, 1, acFont13H_1_00D9 } /* code 00D9 */
+ ,{ 8, 8, 1, acFont13H_1_00DA } /* code 00DA */
+ ,{ 8, 8, 1, acFont13H_1_00DB } /* code 00DB */
+ ,{ 8, 8, 1, acFont13H_1_00DC } /* code 00DC */
+ ,{ 7, 7, 1, acFont13H_1_00DD } /* code 00DD */
+ ,{ 7, 7, 1, acFont13H_1_00DE } /* code 00DE */
+ ,{ 7, 7, 1, acFont13H_1_00DF } /* code 00DF */
+ ,{ 7, 7, 1, acFont13H_1_00E0 } /* code 00E0 */
+ ,{ 7, 7, 1, acFont13H_1_00E1 } /* code 00E1 */
+ ,{ 7, 7, 1, acFont13H_1_00E2 } /* code 00E2 */
+ ,{ 7, 7, 1, acFont13H_1_00E3 } /* code 00E3 */
+ ,{ 7, 7, 1, acFont13H_1_00E4 } /* code 00E4 */
+ ,{ 7, 7, 1, acFont13H_1_00E5 } /* code 00E5 */
+ ,{ 11, 11, 2, acFont13H_1_00E6 } /* code 00E6 */
+ ,{ 6, 6, 1, acFont13H_1_00E7 } /* code 00E7 */
+ ,{ 7, 7, 1, acFont13H_1_00E8 } /* code 00E8 */
+ ,{ 7, 7, 1, acFont13H_1_00E9 } /* code 00E9 */
+ ,{ 7, 7, 1, acFont13H_1_00EA } /* code 00EA */
+ ,{ 7, 7, 1, acFont13H_1_00EB } /* code 00EB */
+ ,{ 3, 3, 1, acFont13H_1_00EC } /* code 00EC */
+ ,{ 3, 3, 1, acFont13H_1_00ED } /* code 00ED */
+ ,{ 3, 3, 1, acFont13H_1_00EE } /* code 00EE */
+ ,{ 3, 3, 1, acFont13H_1_00EF } /* code 00EF */
+ ,{ 7, 7, 1, acFont13H_1_00F0 } /* code 00F0 */
+ ,{ 7, 7, 1, acFont13H_1_00F1 } /* code 00F1 */
+ ,{ 7, 7, 1, acFont13H_1_00F2 } /* code 00F2 */
+ ,{ 7, 7, 1, acFont13H_1_00F3 } /* code 00F3 */
+ ,{ 7, 7, 1, acFont13H_1_00F4 } /* code 00F4 */
+ ,{ 7, 7, 1, acFont13H_1_00F5 } /* code 00F5 */
+ ,{ 7, 7, 1, acFont13H_1_00F6 } /* code 00F6 */
+ ,{ 9, 9, 2, acFont13H_1_00F7 } /* code 00F7 */
+ ,{ 7, 7, 1, acFont13H_1_00F8 } /* code 00F8 */
+ ,{ 7, 7, 1, acFont13H_1_00F9 } /* code 00F9 */
+ ,{ 7, 7, 1, acFont13H_1_00FA } /* code 00FA */
+ ,{ 7, 7, 1, acFont13H_1_00FB } /* code 00FB */
+ ,{ 7, 7, 1, acFont13H_1_00FC } /* code 00FC */
+ ,{ 6, 6, 1, acFont13H_1_00FD } /* code 00FD */
+ ,{ 7, 7, 1, acFont13H_1_00FE } /* code 00FE */
+ ,{ 6, 6, 1, acFont13H_1_00FF } /* code 00FF */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13H_1_Prop2 = {
+ 0x00A0 /* first character */
+ ,0x00FF /* last character */
+ ,&GUI_Font13H_1_CharInfo[0] /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13H_1_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font13H_ASCII_CharInfo[0] /* address of first character */
+ ,&GUI_Font13H_1_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font13H_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,13 /* height of font */
+ ,13 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font13H_1_Prop1}
+ , 11, 7, 9
+};
+
diff --git a/User/lib/lcd/gui/Font/F13H_ASCII.c b/User/lib/lcd/gui/Font/F13H_ASCII.c
new file mode 100644
index 0000000..b49eec7
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F13H_ASCII.c
@@ -0,0 +1,1565 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F13H_ASCII.C
+Purpose : Proportional 13 pixel high font, ASCII character set
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0020[ 13] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0021[ 13] = { /* code 0021 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0022[ 13] = { /* code 0022 */
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0023[ 26] = { /* code 0023 */
+ ________,________,
+ ________,________,
+ ____X_X_,________,
+ ____X_X_,________,
+ __XXXXXX,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ _XXXXXX_,________,
+ ___X_X__,________,
+ __X_X___,________,
+ __X_X___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0024[ 13] = { /* code 0024 */
+ ________,
+ __X_____,
+ __X_____,
+ _XXXXX__,
+ X_X_____,
+ X_X_____,
+ _XX_____,
+ __XXX___,
+ __X__X__,
+ __X__X__,
+ XXXXX___,
+ __X_____,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0025[ 26] = { /* code 0025 */
+ ________,________,
+ ________,________,
+ __XX____,X_______,
+ _X__X__X,________,
+ _X__X__X,________,
+ _X__X_X_,________,
+ __XX_X__,XX______,
+ _____X_X,__X_____,
+ ____X__X,__X_____,
+ ____X__X,__X_____,
+ ___X____,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0026[ 26] = { /* code 0026 */
+ ________,________,
+ ________,________,
+ _XXXX___,________,
+ X____X__,________,
+ X____X__,________,
+ _X__X___,________,
+ _XXX__X_,________,
+ X___X_X_,________,
+ X____XX_,________,
+ X____XX_,________,
+ _XXXX__X,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0027[ 13] = { /* code 0027 */
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0028[ 13] = { /* code 0028 */
+ ________,
+ ____X___,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ ___X____,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0029[ 13] = { /* code 0029 */
+ ________,
+ X_______,
+ _X______,
+ __X_____,
+ __X_____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_002A[ 13] = { /* code 002A */
+ ________,
+ ___X____,
+ _X_X_X__,
+ __XXX___,
+ _X_X_X__,
+ ___X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_002B[ 13] = { /* code 002B */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_002C[ 13] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_002D[ 13] = { /* code 002D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_002E[ 13] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_002F[ 13] = { /* code 002F */
+ ________,
+ ____X___,
+ ____X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0030[ 13] = { /* code 0030 */
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0031[ 13] = { /* code 0031 */
+ ________,
+ ________,
+ ___X____,
+ _XXX____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0032[ 13] = { /* code 0032 */
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ _____X__,
+ _____X__,
+ ____X___,
+ __XX____,
+ _X______,
+ X_______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0033[ 13] = { /* code 0033 */
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ _____X__,
+ _____X__,
+ __XXX___,
+ _____X__,
+ _____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0034[ 13] = { /* code 0034 */
+ ________,
+ ________,
+ ____X___,
+ ___XX___,
+ __X_X___,
+ _X__X___,
+ X___X___,
+ XXXXXX__,
+ ____X___,
+ ____X___,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0035[ 13] = { /* code 0035 */
+ ________,
+ ________,
+ XXXXXX__,
+ X_______,
+ X_______,
+ XXXXX___,
+ _____X__,
+ _____X__,
+ _____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0036[ 13] = { /* code 0036 */
+ ________,
+ ________,
+ __XXX___,
+ _X______,
+ X_______,
+ XXXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0037[ 13] = { /* code 0037 */
+ ________,
+ ________,
+ XXXXXX__,
+ _____X__,
+ ____X___,
+ ____X___,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0038[ 13] = { /* code 0038 */
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0039[ 13] = { /* code 0039 */
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXXX__,
+ _____X__,
+ ____X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_003A[ 13] = { /* code 003A */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_003B[ 13] = { /* code 003B */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_003C[ 26] = { /* code 003C */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,________,
+ _____XX_,________,
+ ___XX___,________,
+ _XX_____,________,
+ ___XX___,________,
+ _____XX_,________,
+ _______X,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_003D[ 26] = { /* code 003D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_003E[ 26] = { /* code 003E */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X______,________,
+ __XX____,________,
+ ____XX__,________,
+ ______XX,________,
+ ____XX__,________,
+ __XX____,________,
+ _X______,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_003F[ 13] = { /* code 003F */
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0040[ 26] = { /* code 0040 */
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ _XX_____,XX______,
+ _X__XXXX,_X______,
+ X__X___X,__X_____,
+ X__X___X,__X_____,
+ X__X___X,__X_____,
+ X__X___X,__X_____,
+ _X__XXXX,XX______,
+ _XX_____,________,
+ ___XXXXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0041[ 13] = { /* code 0041 */
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ X_____X_,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0042[ 13] = { /* code 0042 */
+ ________,
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0043[ 13] = { /* code 0043 */
+ ________,
+ ________,
+ __XXXX__,
+ _X____X_,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _X____X_,
+ __XXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0044[ 13] = { /* code 0044 */
+ ________,
+ ________,
+ XXXXX___,
+ X____X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X____X__,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0045[ 13] = { /* code 0045 */
+ ________,
+ ________,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0046[ 13] = { /* code 0046 */
+ ________,
+ ________,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ XXXXXX__,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0047[ 13] = { /* code 0047 */
+ ________,
+ ________,
+ __XXXX__,
+ _X____X_,
+ X_______,
+ X_______,
+ X_______,
+ X___XXX_,
+ X_____X_,
+ _X____X_,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0048[ 13] = { /* code 0048 */
+ ________,
+ ________,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ XXXXXXX_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0049[ 13] = { /* code 0049 */
+ ________,
+ ________,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_004A[ 13] = { /* code 004A */
+ ________,
+ ________,
+ _XXX____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_004B[ 13] = { /* code 004B */
+ ________,
+ ________,
+ X____X__,
+ X___X___,
+ X__X____,
+ X_X_____,
+ XX______,
+ X_X_____,
+ X__X____,
+ X___X___,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_004C[ 13] = { /* code 004C */
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_004D[ 26] = { /* code 004D */
+ ________,________,
+ ________,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ X_X___X_,X_______,
+ X_X___X_,X_______,
+ X__X_X__,X_______,
+ X__X_X__,X_______,
+ X___X___,X_______,
+ X___X___,X_______,
+ X_______,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_004E[ 13] = { /* code 004E */
+ ________,
+ ________,
+ XX____X_,
+ XX____X_,
+ X_X___X_,
+ X_X___X_,
+ X__X__X_,
+ X___X_X_,
+ X___X_X_,
+ X____XX_,
+ X____XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_004F[ 26] = { /* code 004F */
+ ________,________,
+ ________,________,
+ __XXXX__,________,
+ _X____X_,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ _X____X_,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0050[ 13] = { /* code 0050 */
+ ________,
+ ________,
+ XXXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ XXXXX___,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0051[ 26] = { /* code 0051 */
+ ________,________,
+ ________,________,
+ __XXXX__,________,
+ _X____X_,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ X______X,________,
+ _X____X_,________,
+ __XXXX__,________,
+ ____X___,________,
+ _____XXX,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0052[ 13] = { /* code 0052 */
+ ________,
+ ________,
+ XXXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___X___,
+ XXXX____,
+ X___X___,
+ X____X__,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0053[ 13] = { /* code 0053 */
+ ________,
+ ________,
+ _XXXXX__,
+ X_____X_,
+ X_______,
+ X_______,
+ _XXXXX__,
+ ______X_,
+ ______X_,
+ X_____X_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0054[ 13] = { /* code 0054 */
+ ________,
+ ________,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0055[ 13] = { /* code 0055 */
+ ________,
+ ________,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0056[ 13] = { /* code 0056 */
+ ________,
+ ________,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0057[ 26] = { /* code 0057 */
+ ________,________,
+ ________,________,
+ X____X__,__X_____,
+ X____X__,__X_____,
+ X___X_X_,__X_____,
+ X___X_X_,__X_____,
+ _X__X_X_,_X______,
+ _X_X___X,_X______,
+ _X_X___X,_X______,
+ _X_X___X,_X______,
+ __X_____,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0058[ 13] = { /* code 0058 */
+ ________,
+ ________,
+ X_____X_,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0059[ 13] = { /* code 0059 */
+ ________,
+ ________,
+ X_____X_,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_005A[ 13] = { /* code 005A */
+ ________,
+ ________,
+ XXXXXX__,
+ _____X__,
+ ____X___,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ X_______,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_005B[ 13] = { /* code 005B */
+ ________,
+ _XXX____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _XXX____};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_005C[ 13] = { /* code 005C */
+ ________,
+ X_______,
+ X_______,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ____X___,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_005D[ 13] = { /* code 005D */
+ ________,
+ _XXX____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ _XXX____};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_005E[ 26] = { /* code 005E */
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ ___X__X_,________,
+ __X____X,________,
+ _X______,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_005F[ 13] = { /* code 005F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0060[ 13] = { /* code 0060 */
+ ________,
+ ___X____,
+ ____X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0061[ 13] = { /* code 0061 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ _____X__,
+ _____X__,
+ _XXXXX__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0062[ 13] = { /* code 0062 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_XXX___,
+ XX___X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0063[ 13] = { /* code 0063 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0064[ 13] = { /* code 0064 */
+ ________,
+ _____X__,
+ _____X__,
+ _____X__,
+ _XXXXX__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0065[ 13] = { /* code 0065 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ XXXXXX__,
+ X_______,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0066[ 13] = { /* code 0066 */
+ ________,
+ __XX____,
+ _X______,
+ _X______,
+ XXXX____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0067[ 13] = { /* code 0067 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ _____X__,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0068[ 13] = { /* code 0068 */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_XXX___,
+ XX___X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0069[ 13] = { /* code 0069 */
+ ________,
+ ________,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_006A[ 13] = { /* code 006A */
+ ________,
+ ________,
+ __X_____,
+ ________,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_006B[ 13] = { /* code 006B */
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X___X___,
+ X__X____,
+ X_X_____,
+ XX______,
+ X_X_____,
+ X__X____,
+ X___X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_006C[ 13] = { /* code 006C */
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_006D[ 26] = { /* code 006D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _X_XX__X,X_______,
+ _XX__XX_,_X______,
+ _X___X__,_X______,
+ _X___X__,_X______,
+ _X___X__,_X______,
+ _X___X__,_X______,
+ _X___X__,_X______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_006E[ 13] = { /* code 006E */
+ ________,
+ ________,
+ ________,
+ ________,
+ X_XXX___,
+ XX___X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_006F[ 13] = { /* code 006F */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0070[ 13] = { /* code 0070 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X_XXX___,
+ XX___X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ XXXXX___,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0071[ 13] = { /* code 0071 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ _____X__,
+ _____X__};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0072[ 13] = { /* code 0072 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X_XX____,
+ XX______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0073[ 13] = { /* code 0073 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X_______,
+ _XXX____,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0074[ 13] = { /* code 0074 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ XXXX____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0075[ 13] = { /* code 0075 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0076[ 13] = { /* code 0076 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0077[ 26] = { /* code 0077 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ X___X___,X_______,
+ X___X___,X_______,
+ _X_X_X_X,________,
+ _X_X_X_X,________,
+ _X_X_X_X,________,
+ __X___X_,________,
+ __X___X_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0078[ 13] = { /* code 0078 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ _X_X____,
+ _X_X____,
+ X___X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_0079[ 13] = { /* code 0079 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_007A[ 13] = { /* code 007A */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_007B[ 13] = { /* code 007B */
+ ________,
+ ___XX___,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ XX______,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ___XX___};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_007C[ 13] = { /* code 007C */
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_007D[ 13] = { /* code 007D */
+ ________,
+ XX______,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ___XX___,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13H_ASCII_007E[ 26] = { /* code 007E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX___X,________,
+ _X__X__X,________,
+ _X___XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font13H_ASCII_CharInfo[95] = {
+ { 4, 4, 1, acFont13H_ASCII_0020 } /* code 0020 */
+ ,{ 4, 4, 1, acFont13H_ASCII_0021 } /* code 0021 */
+ ,{ 5, 5, 1, acFont13H_ASCII_0022 } /* code 0022 */
+ ,{ 9, 9, 2, acFont13H_ASCII_0023 } /* code 0023 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0024 } /* code 0024 */
+ ,{ 12, 12, 2, acFont13H_ASCII_0025 } /* code 0025 */
+ ,{ 9, 9, 2, acFont13H_ASCII_0026 } /* code 0026 */
+ ,{ 3, 3, 1, acFont13H_ASCII_0027 } /* code 0027 */
+ ,{ 5, 5, 1, acFont13H_ASCII_0028 } /* code 0028 */
+ ,{ 5, 5, 1, acFont13H_ASCII_0029 } /* code 0029 */
+ ,{ 8, 8, 1, acFont13H_ASCII_002A } /* code 002A */
+ ,{ 8, 8, 1, acFont13H_ASCII_002B } /* code 002B */
+ ,{ 4, 4, 1, acFont13H_ASCII_002C } /* code 002C */
+ ,{ 5, 5, 1, acFont13H_ASCII_002D } /* code 002D */
+ ,{ 4, 4, 1, acFont13H_ASCII_002E } /* code 002E */
+ ,{ 5, 5, 1, acFont13H_ASCII_002F } /* code 002F */
+ ,{ 7, 7, 1, acFont13H_ASCII_0030 } /* code 0030 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0031 } /* code 0031 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0032 } /* code 0032 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0033 } /* code 0033 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0034 } /* code 0034 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0035 } /* code 0035 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0036 } /* code 0036 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0037 } /* code 0037 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0038 } /* code 0038 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0039 } /* code 0039 */
+ ,{ 5, 5, 1, acFont13H_ASCII_003A } /* code 003A */
+ ,{ 5, 5, 1, acFont13H_ASCII_003B } /* code 003B */
+ ,{ 9, 9, 2, acFont13H_ASCII_003C } /* code 003C */
+ ,{ 9, 9, 2, acFont13H_ASCII_003D } /* code 003D */
+ ,{ 9, 9, 2, acFont13H_ASCII_003E } /* code 003E */
+ ,{ 6, 6, 1, acFont13H_ASCII_003F } /* code 003F */
+ ,{ 12, 12, 2, acFont13H_ASCII_0040 } /* code 0040 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0041 } /* code 0041 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0042 } /* code 0042 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0043 } /* code 0043 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0044 } /* code 0044 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0045 } /* code 0045 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0046 } /* code 0046 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0047 } /* code 0047 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0048 } /* code 0048 */
+ ,{ 4, 4, 1, acFont13H_ASCII_0049 } /* code 0049 */
+ ,{ 5, 5, 1, acFont13H_ASCII_004A } /* code 004A */
+ ,{ 7, 7, 1, acFont13H_ASCII_004B } /* code 004B */
+ ,{ 6, 6, 1, acFont13H_ASCII_004C } /* code 004C */
+ ,{ 10, 10, 2, acFont13H_ASCII_004D } /* code 004D */
+ ,{ 8, 8, 1, acFont13H_ASCII_004E } /* code 004E */
+ ,{ 9, 9, 2, acFont13H_ASCII_004F } /* code 004F */
+ ,{ 7, 7, 1, acFont13H_ASCII_0050 } /* code 0050 */
+ ,{ 9, 9, 2, acFont13H_ASCII_0051 } /* code 0051 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0052 } /* code 0052 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0053 } /* code 0053 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0054 } /* code 0054 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0055 } /* code 0055 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0056 } /* code 0056 */
+ ,{ 12, 12, 2, acFont13H_ASCII_0057 } /* code 0057 */
+ ,{ 8, 8, 1, acFont13H_ASCII_0058 } /* code 0058 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0059 } /* code 0059 */
+ ,{ 7, 7, 1, acFont13H_ASCII_005A } /* code 005A */
+ ,{ 5, 5, 1, acFont13H_ASCII_005B } /* code 005B */
+ ,{ 5, 5, 1, acFont13H_ASCII_005C } /* code 005C */
+ ,{ 5, 5, 1, acFont13H_ASCII_005D } /* code 005D */
+ ,{ 9, 9, 2, acFont13H_ASCII_005E } /* code 005E */
+ ,{ 7, 7, 1, acFont13H_ASCII_005F } /* code 005F */
+ ,{ 7, 7, 1, acFont13H_ASCII_0060 } /* code 0060 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0061 } /* code 0061 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0062 } /* code 0062 */
+ ,{ 6, 6, 1, acFont13H_ASCII_0063 } /* code 0063 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0064 } /* code 0064 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0065 } /* code 0065 */
+ ,{ 4, 4, 1, acFont13H_ASCII_0066 } /* code 0066 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0067 } /* code 0067 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0068 } /* code 0068 */
+ ,{ 3, 3, 1, acFont13H_ASCII_0069 } /* code 0069 */
+ ,{ 4, 4, 1, acFont13H_ASCII_006A } /* code 006A */
+ ,{ 6, 6, 1, acFont13H_ASCII_006B } /* code 006B */
+ ,{ 3, 3, 1, acFont13H_ASCII_006C } /* code 006C */
+ ,{ 11, 11, 2, acFont13H_ASCII_006D } /* code 006D */
+ ,{ 7, 7, 1, acFont13H_ASCII_006E } /* code 006E */
+ ,{ 7, 7, 1, acFont13H_ASCII_006F } /* code 006F */
+ ,{ 7, 7, 1, acFont13H_ASCII_0070 } /* code 0070 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0071 } /* code 0071 */
+ ,{ 5, 5, 1, acFont13H_ASCII_0072 } /* code 0072 */
+ ,{ 6, 6, 1, acFont13H_ASCII_0073 } /* code 0073 */
+ ,{ 4, 4, 1, acFont13H_ASCII_0074 } /* code 0074 */
+ ,{ 7, 7, 1, acFont13H_ASCII_0075 } /* code 0075 */
+ ,{ 6, 6, 1, acFont13H_ASCII_0076 } /* code 0076 */
+ ,{ 10, 10, 2, acFont13H_ASCII_0077 } /* code 0077 */
+ ,{ 6, 6, 1, acFont13H_ASCII_0078 } /* code 0078 */
+ ,{ 6, 6, 1, acFont13H_ASCII_0079 } /* code 0079 */
+ ,{ 6, 6, 1, acFont13H_ASCII_007A } /* code 007A */
+ ,{ 6, 6, 1, acFont13H_ASCII_007B } /* code 007B */
+ ,{ 6, 6, 1, acFont13H_ASCII_007C } /* code 007C */
+ ,{ 6, 6, 1, acFont13H_ASCII_007D } /* code 007D */
+ ,{ 9, 9, 2, acFont13H_ASCII_007E } /* code 007E */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13H_ASCII_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font13H_ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font13H_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,13 /* height of font */
+ ,13 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font13H_ASCII_Prop1}
+ , 11, 7, 9
+};
+
diff --git a/User/lib/lcd/gui/Font/F13_1.c b/User/lib/lcd/gui/Font/F13_1.c
new file mode 100644
index 0000000..9d470de
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F13_1.c
@@ -0,0 +1,1581 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F13_1.c
+Purpose : ISO 8859-1 West European Character Set similar to Swiss
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+/* Start of unicode area */
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00A0[13] = { /* code 00A0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00A1[13] = { /* code 00A1 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00A2[13] = { /* code 00A2 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ _XXXX___,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ _XXXX___,
+ __X_____,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00A3[13] = { /* code 00A3 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X______,
+ _X______,
+ _X______,
+ XXXX____,
+ _X______,
+ _X______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00A4[13] = { /* code 00A4 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ _XXX____,
+ _X_X____,
+ _XXX____,
+ X___X___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00A5[13] = { /* code 00A5 */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00A6[13] = { /* code 00A6 */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00A7[13] = { /* code 00A7 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X_______,
+ X_______,
+ _XXX____,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ____X___,
+ ____X___,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00A8[13] = { /* code 00A8 */
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00A9[26] = { /* code 00A9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _X_____X,________,
+ X__XXX__,X_______,
+ X_X_____,X_______,
+ X_X_____,X_______,
+ X_X_____,X_______,
+ X__XXX__,X_______,
+ _X_____X,________,
+ __XXXXX_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00AA[13] = { /* code 00AA */
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ___X____,
+ _XXX____,
+ X__X____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00AB[13] = { /* code 00AB */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_X___,
+ _X_X____,
+ X_X_____,
+ _X_X____,
+ __X_X___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00AC[13] = { /* code 00AC */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ______X_,
+ ______X_,
+ ______X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00AD[13] = { /* code 00AD */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00AE[26] = { /* code 00AE */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _X_____X,________,
+ X__XXX__,X_______,
+ X__X__X_,X_______,
+ X__XXX__,X_______,
+ X__X_X__,X_______,
+ X__X__X_,X_______,
+ _X_____X,________,
+ __XXXXX_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00AF[13] = { /* code 00AF */
+ ________,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00B0[13] = { /* code 00B0 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ X__X____,
+ X__X____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00B1[13] = { /* code 00B1 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00B2[13] = { /* code 00B2 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ___X____,
+ ___X____,
+ __X_____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00B3[13] = { /* code 00B3 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ___X____,
+ __X_____,
+ ___X____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00B4[13] = { /* code 00B4 */
+ ________,
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00B5[13] = { /* code 00B5 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X__XX___,
+ XXX_X___,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00B6[13] = { /* code 00B6 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XXX_X___,
+ XXX_X___,
+ XXX_X___,
+ _XX_X___,
+ __X_X___,
+ __X_X___,
+ __X_X___,
+ __X_X___,
+ __X_X___};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00B7[13] = { /* code 00B7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00B8[13] = { /* code 00B8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00B9[13] = { /* code 00B9 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XX_____,
+ __X_____,
+ __X_____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00BA[13] = { /* code 00BA */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ X__X____,
+ X__X____,
+ X__X____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00BB[13] = { /* code 00BB */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X_X_____,
+ _X_X____,
+ __X_X___,
+ _X_X____,
+ X_X_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00BC[26] = { /* code 00BC */
+ ________,________,
+ ________,________,
+ ________,________,
+ __X____X,________,
+ _XX___X_,________,
+ __X___X_,________,
+ __X__X__,X_______,
+ __X__X_X,X_______,
+ ____X_X_,X_______,
+ ____X_XX,XX______,
+ ___X____,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00BD[26] = { /* code 00BD */
+ ________,________,
+ ________,________,
+ ________,________,
+ __X____X,________,
+ _XX___X_,________,
+ __X___X_,________,
+ __X__X_X,X_______,
+ __X__X__,_X______,
+ ____X___,_X______,
+ ____X___,X_______,
+ ___X___X,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00BE[26] = { /* code 00BE */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX___X,________,
+ ____X_X_,________,
+ __XX__X_,________,
+ ____XX__,X_______,
+ _XXX_X_X,X_______,
+ ____X_X_,X_______,
+ ____X_XX,XX______,
+ ___X____,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00BF[13] = { /* code 00BF */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ ________,
+ __X_____,
+ __X_____,
+ _X______,
+ X_______,
+ X_______,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00C0[13] = { /* code 00C0 */
+ __X_____,
+ ___X____,
+ ________,
+ __XX____,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ XXXXXX__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00C1[13] = { /* code 00C1 */
+ ___X____,
+ __X_____,
+ ________,
+ __XX____,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ XXXXXX__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00C2[13] = { /* code 00C2 */
+ __XX____,
+ _X__X___,
+ ________,
+ __XX____,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ XXXXXX__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00C3[13] = { /* code 00C3 */
+ _XX_X___,
+ _X_XX___,
+ ________,
+ __XX____,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ XXXXXX__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00C4[13] = { /* code 00C4 */
+ ________,
+ _X__X___,
+ ________,
+ __XX____,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ XXXXXX__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00C5[13] = { /* code 00C5 */
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ XXXXXX__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00C6[26] = { /* code 00C6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,X_______,
+ __X_X___,________,
+ _X__X___,________,
+ _X__XXXX,________,
+ _XXXX___,________,
+ X___X___,________,
+ X___X___,________,
+ X___XXXX,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00C7[13] = { /* code 00C7 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _X______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _X______,
+ __XXXX__,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00C8[13] = { /* code 00C8 */
+ __X_____,
+ ___X____,
+ ________,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00C9[13] = { /* code 00C9 */
+ ___X____,
+ __X_____,
+ ________,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00CA[13] = { /* code 00CA */
+ __XX____,
+ _X__X___,
+ ________,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00CB[13] = { /* code 00CB */
+ ________,
+ _X_X____,
+ ________,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00CC[13] = { /* code 00CC */
+ X_______,
+ _X______,
+ ________,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00CD[13] = { /* code 00CD */
+ __X_____,
+ _X______,
+ ________,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00CE[13] = { /* code 00CE */
+ _XX_____,
+ X__X____,
+ ________,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00CF[13] = { /* code 00CF */
+ ________,
+ X_X_____,
+ ________,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00D0[13] = { /* code 00D0 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ _X___X__,
+ _X____X_,
+ XXXX__X_,
+ _X____X_,
+ _X____X_,
+ _X___X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00D1[13] = { /* code 00D1 */
+ _XX_X___,
+ _X_XX___,
+ ________,
+ XX___X__,
+ XX___X__,
+ X_X__X__,
+ X_X__X__,
+ X__X_X__,
+ X__X_X__,
+ X___XX__,
+ X___XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00D2[13] = { /* code 00D2 */
+ __X_____,
+ ___X____,
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00D3[13] = { /* code 00D3 */
+ ____X___,
+ ___X____,
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00D4[13] = { /* code 00D4 */
+ ___XX___,
+ __X__X__,
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00D5[13] = { /* code 00D5 */
+ __XX_X__,
+ __X_XX__,
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00D6[13] = { /* code 00D6 */
+ ________,
+ __X_X___,
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00D7[13] = { /* code 00D7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X___X_,
+ ___X_X__,
+ ____X___,
+ ___X_X__,
+ __X___X_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00D8[13] = { /* code 00D8 */
+ ________,
+ ________,
+ ________,
+ __XXX_X_,
+ _X___X__,
+ X___X_X_,
+ X__X__X_,
+ X__X__X_,
+ X_X___X_,
+ _X___X__,
+ X_XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00D9[13] = { /* code 00D9 */
+ __X_____,
+ ___X____,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00DA[13] = { /* code 00DA */
+ ___X____,
+ __X_____,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00DB[13] = { /* code 00DB */
+ __XX____,
+ _X__X___,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00DC[13] = { /* code 00DC */
+ ________,
+ _X__X___,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00DD[13] = { /* code 00DD */
+ ___X____,
+ __X_____,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00DE[13] = { /* code 00DE */
+ ________,
+ ________,
+ ________,
+ X_______,
+ X_______,
+ XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00DF[13] = { /* code 00DF */
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X_XX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X_XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00E0[13] = { /* code 00E0 */
+ ________,
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00E1[13] = { /* code 00E1 */
+ ________,
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00E2[13] = { /* code 00E2 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00E3[13] = { /* code 00E3 */
+ ________,
+ ________,
+ _XX_X___,
+ _X_XX___,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00E4[13] = { /* code 00E4 */
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00E5[13] = { /* code 00E5 */
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00E6[26] = { /* code 00E6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX_XXX,________,
+ ____X___,X_______,
+ _XXXXXXX,X_______,
+ X___X___,________,
+ X___XX__,X_______,
+ _XXX__XX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00E7[13] = { /* code 00E7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _XXX____,
+ __X_____,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00E8[13] = { /* code 00E8 */
+ ________,
+ ________,
+ _X______,
+ __X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00E9[13] = { /* code 00E9 */
+ ________,
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00EA[13] = { /* code 00EA */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00EB[13] = { /* code 00EB */
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00EC[13] = { /* code 00EC */
+ ________,
+ ________,
+ ________,
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00ED[13] = { /* code 00ED */
+ ________,
+ ________,
+ _X______,
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00EE[13] = { /* code 00EE */
+ ________,
+ ________,
+ X_______,
+ _X______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00EF[13] = { /* code 00EF */
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00F0[13] = { /* code 00F0 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _X_X____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00F1[13] = { /* code 00F1 */
+ ________,
+ ________,
+ _XX_X___,
+ _X_XX___,
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00F2[13] = { /* code 00F2 */
+ ________,
+ ________,
+ _X______,
+ __X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00F3[13] = { /* code 00F3 */
+ ________,
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00F4[13] = { /* code 00F4 */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00F5[13] = { /* code 00F5 */
+ ________,
+ ________,
+ _XX_X___,
+ _X_XX___,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00F6[13] = { /* code 00F6 */
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00F7[13] = { /* code 00F7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ ________,
+ XXXXXXX_,
+ ________,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00F8[13] = { /* code 00F8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ _XXX____,
+ X__XX___,
+ X_X_X___,
+ X_X_X___,
+ XX__X___,
+ _XXX____,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00F9[13] = { /* code 00F9 */
+ ________,
+ ________,
+ _X______,
+ __X_____,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00FA[13] = { /* code 00FA */
+ ________,
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00FB[13] = { /* code 00FB */
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00FC[13] = { /* code 00FC */
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00FD[13] = { /* code 00FD */
+ ________,
+ ________,
+ ___X____,
+ __X_____,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00FE[13] = { /* code 00FE */
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13_1_00FF[13] = { /* code 00FF */
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font13_1_CharInfo[96] = {
+ { 3, 3, 1, acFont13_1_00A0 } /* code 00A0 */
+ ,{ 4, 4, 1, acFont13_1_00A1 } /* code 00A1 */
+ ,{ 6, 6, 1, acFont13_1_00A2 } /* code 00A2 */
+ ,{ 6, 6, 1, acFont13_1_00A3 } /* code 00A3 */
+ ,{ 6, 6, 1, acFont13_1_00A4 } /* code 00A4 */
+ ,{ 6, 6, 1, acFont13_1_00A5 } /* code 00A5 */
+ ,{ 4, 4, 1, acFont13_1_00A6 } /* code 00A6 */
+ ,{ 6, 6, 1, acFont13_1_00A7 } /* code 00A7 */
+ ,{ 6, 6, 1, acFont13_1_00A8 } /* code 00A8 */
+ ,{ 10, 10, 2, acFont13_1_00A9 } /* code 00A9 */
+ ,{ 5, 5, 1, acFont13_1_00AA } /* code 00AA */
+ ,{ 6, 6, 1, acFont13_1_00AB } /* code 00AB */
+ ,{ 8, 8, 1, acFont13_1_00AC } /* code 00AC */
+ ,{ 4, 4, 1, acFont13_1_00AD } /* code 00AD */
+ ,{ 10, 10, 2, acFont13_1_00AE } /* code 00AE */
+ ,{ 6, 6, 1, acFont13_1_00AF } /* code 00AF */
+ ,{ 5, 5, 1, acFont13_1_00B0 } /* code 00B0 */
+ ,{ 8, 8, 1, acFont13_1_00B1 } /* code 00B1 */
+ ,{ 5, 5, 1, acFont13_1_00B2 } /* code 00B2 */
+ ,{ 5, 5, 1, acFont13_1_00B3 } /* code 00B3 */
+ ,{ 6, 6, 1, acFont13_1_00B4 } /* code 00B4 */
+ ,{ 6, 6, 1, acFont13_1_00B5 } /* code 00B5 */
+ ,{ 6, 6, 1, acFont13_1_00B6 } /* code 00B6 */
+ ,{ 3, 3, 1, acFont13_1_00B7 } /* code 00B7 */
+ ,{ 6, 6, 1, acFont13_1_00B8 } /* code 00B8 */
+ ,{ 5, 5, 1, acFont13_1_00B9 } /* code 00B9 */
+ ,{ 5, 5, 1, acFont13_1_00BA } /* code 00BA */
+ ,{ 6, 6, 1, acFont13_1_00BB } /* code 00BB */
+ ,{ 11, 11, 2, acFont13_1_00BC } /* code 00BC */
+ ,{ 11, 11, 2, acFont13_1_00BD } /* code 00BD */
+ ,{ 11, 11, 2, acFont13_1_00BE } /* code 00BE */
+ ,{ 5, 5, 1, acFont13_1_00BF } /* code 00BF */
+ ,{ 7, 7, 1, acFont13_1_00C0 } /* code 00C0 */
+ ,{ 7, 7, 1, acFont13_1_00C1 } /* code 00C1 */
+ ,{ 7, 7, 1, acFont13_1_00C2 } /* code 00C2 */
+ ,{ 7, 7, 1, acFont13_1_00C3 } /* code 00C3 */
+ ,{ 7, 7, 1, acFont13_1_00C4 } /* code 00C4 */
+ ,{ 7, 7, 1, acFont13_1_00C5 } /* code 00C5 */
+ ,{ 10, 10, 2, acFont13_1_00C6 } /* code 00C6 */
+ ,{ 7, 7, 1, acFont13_1_00C7 } /* code 00C7 */
+ ,{ 6, 6, 1, acFont13_1_00C8 } /* code 00C8 */
+ ,{ 6, 6, 1, acFont13_1_00C9 } /* code 00C9 */
+ ,{ 6, 6, 1, acFont13_1_00CA } /* code 00CA */
+ ,{ 6, 6, 1, acFont13_1_00CB } /* code 00CB */
+ ,{ 4, 4, 1, acFont13_1_00CC } /* code 00CC */
+ ,{ 4, 4, 1, acFont13_1_00CD } /* code 00CD */
+ ,{ 4, 4, 1, acFont13_1_00CE } /* code 00CE */
+ ,{ 4, 4, 1, acFont13_1_00CF } /* code 00CF */
+ ,{ 8, 8, 1, acFont13_1_00D0 } /* code 00D0 */
+ ,{ 7, 7, 1, acFont13_1_00D1 } /* code 00D1 */
+ ,{ 8, 8, 1, acFont13_1_00D2 } /* code 00D2 */
+ ,{ 8, 8, 1, acFont13_1_00D3 } /* code 00D3 */
+ ,{ 8, 8, 1, acFont13_1_00D4 } /* code 00D4 */
+ ,{ 8, 8, 1, acFont13_1_00D5 } /* code 00D5 */
+ ,{ 8, 8, 1, acFont13_1_00D6 } /* code 00D6 */
+ ,{ 8, 8, 1, acFont13_1_00D7 } /* code 00D7 */
+ ,{ 8, 8, 1, acFont13_1_00D8 } /* code 00D8 */
+ ,{ 7, 7, 1, acFont13_1_00D9 } /* code 00D9 */
+ ,{ 7, 7, 1, acFont13_1_00DA } /* code 00DA */
+ ,{ 7, 7, 1, acFont13_1_00DB } /* code 00DB */
+ ,{ 7, 7, 1, acFont13_1_00DC } /* code 00DC */
+ ,{ 6, 6, 1, acFont13_1_00DD } /* code 00DD */
+ ,{ 6, 6, 1, acFont13_1_00DE } /* code 00DE */
+ ,{ 6, 6, 1, acFont13_1_00DF } /* code 00DF */
+ ,{ 6, 6, 1, acFont13_1_00E0 } /* code 00E0 */
+ ,{ 6, 6, 1, acFont13_1_00E1 } /* code 00E1 */
+ ,{ 6, 6, 1, acFont13_1_00E2 } /* code 00E2 */
+ ,{ 6, 6, 1, acFont13_1_00E3 } /* code 00E3 */
+ ,{ 6, 6, 1, acFont13_1_00E4 } /* code 00E4 */
+ ,{ 6, 6, 1, acFont13_1_00E5 } /* code 00E5 */
+ ,{ 10, 10, 2, acFont13_1_00E6 } /* code 00E6 */
+ ,{ 5, 5, 1, acFont13_1_00E7 } /* code 00E7 */
+ ,{ 6, 6, 1, acFont13_1_00E8 } /* code 00E8 */
+ ,{ 6, 6, 1, acFont13_1_00E9 } /* code 00E9 */
+ ,{ 6, 6, 1, acFont13_1_00EA } /* code 00EA */
+ ,{ 6, 6, 1, acFont13_1_00EB } /* code 00EB */
+ ,{ 2, 2, 1, acFont13_1_00EC } /* code 00EC */
+ ,{ 2, 2, 1, acFont13_1_00ED } /* code 00ED */
+ ,{ 2, 2, 1, acFont13_1_00EE } /* code 00EE */
+ ,{ 2, 2, 1, acFont13_1_00EF } /* code 00EF */
+ ,{ 6, 6, 1, acFont13_1_00F0 } /* code 00F0 */
+ ,{ 6, 6, 1, acFont13_1_00F1 } /* code 00F1 */
+ ,{ 6, 6, 1, acFont13_1_00F2 } /* code 00F2 */
+ ,{ 6, 6, 1, acFont13_1_00F3 } /* code 00F3 */
+ ,{ 6, 6, 1, acFont13_1_00F4 } /* code 00F4 */
+ ,{ 6, 6, 1, acFont13_1_00F5 } /* code 00F5 */
+ ,{ 6, 6, 1, acFont13_1_00F6 } /* code 00F6 */
+ ,{ 8, 8, 1, acFont13_1_00F7 } /* code 00F7 */
+ ,{ 6, 6, 1, acFont13_1_00F8 } /* code 00F8 */
+ ,{ 6, 6, 1, acFont13_1_00F9 } /* code 00F9 */
+ ,{ 6, 6, 1, acFont13_1_00FA } /* code 00FA */
+ ,{ 6, 6, 1, acFont13_1_00FB } /* code 00FB */
+ ,{ 6, 6, 1, acFont13_1_00FC } /* code 00FC */
+ ,{ 6, 6, 1, acFont13_1_00FD } /* code 00FD */
+ ,{ 6, 6, 1, acFont13_1_00FE } /* code 00FE */
+ ,{ 6, 6, 1, acFont13_1_00FF } /* code 00FF */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13_1_Prop1 = {
+ 160 /* first character */
+ ,255 /* last character */
+ ,&GUI_Font13_1_CharInfo[0] /* address of first character */
+ ,&GUI_Font13ASCII_Prop1 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font13_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,13 /* height of font */
+ ,13 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font13_1_Prop1}
+ , 11, 6, 8
+};
+
diff --git a/User/lib/lcd/gui/Font/F13_ASCII.c b/User/lib/lcd/gui/Font/F13_ASCII.c
new file mode 100644
index 0000000..677a847
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F13_ASCII.c
@@ -0,0 +1,1565 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F13_ASCII.c
+Purpose : ASCII character set
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0020[13] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0021[13] = { /* code 0021 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0022[13] = { /* code 0022 */
+ ________,
+ ________,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0023[13] = { /* code 0023 */
+ ________,
+ ________,
+ ________,
+ ___X_X__,
+ ___X_X__,
+ _XXXXXX_,
+ __X_X___,
+ __X_X___,
+ XXXXXX__,
+ _X_X____,
+ _X_X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0024[13] = { /* code 0024 */
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ _XXXX___,
+ X_X_____,
+ X_X_____,
+ _XXX____,
+ __X_X___,
+ __X_X___,
+ XXXX____,
+ __X_____,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0025[26] = { /* code 0025 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX___X_,________,
+ X__X__X_,________,
+ X__X_X__,________,
+ _XX__X__,________,
+ ____X__X,X_______,
+ ____X_X_,_X______,
+ ___X__X_,_X______,
+ ___X___X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0026[13] = { /* code 0026 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ X__X____,
+ X__X____,
+ _XX__X__,
+ X__X_X__,
+ X___X___,
+ X___XX__,
+ _XXX__X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0027[13] = { /* code 0027 */
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0028[13] = { /* code 0028 */
+ ________,
+ ________,
+ __X_____,
+ _X______,
+ _X______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _X______,
+ _X______,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0029[13] = { /* code 0029 */
+ ________,
+ ________,
+ X_______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_002A[13] = { /* code 002A */
+ ________,
+ ________,
+ __X_____,
+ X_X_X___,
+ _XXX____,
+ X_X_X___,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_002B[13] = { /* code 002B */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_002C[13] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_002D[13] = { /* code 002D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_002E[13] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_002F[13] = { /* code 002F */
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ X_______,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0030[13] = { /* code 0030 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0031[13] = { /* code 0031 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0032[13] = { /* code 0032 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0033[13] = { /* code 0033 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ ____X___,
+ __XX____,
+ ____X___,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0034[13] = { /* code 0034 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __XX____,
+ _X_X____,
+ X__X____,
+ XXXXX___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0035[13] = { /* code 0035 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ ____X___,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0036[13] = { /* code 0036 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _X______,
+ X_______,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0037[13] = { /* code 0037 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ____X___,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0038[13] = { /* code 0038 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0039[13] = { /* code 0039 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ____X___,
+ ___X____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_003A[13] = { /* code 003A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_003B[13] = { /* code 003B */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_003C[13] = { /* code 003C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ______X_,
+ ____XX__,
+ __XX____,
+ _X______,
+ __XX____,
+ ____XX__,
+ ______X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_003D[13] = { /* code 003D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_003E[13] = { /* code 003E */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ __XX____,
+ ____XX__,
+ ______X_,
+ ____XX__,
+ __XX____,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_003F[13] = { /* code 003F */
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ___X____,
+ ___X____,
+ __X_____,
+ _X______,
+ _X______,
+ ________,
+ _X______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0040[26] = { /* code 0040 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _X_____X,________,
+ X__XXX__,X_______,
+ X_X__X__,X_______,
+ X_X__X__,X_______,
+ X_X__X__,X_______,
+ X__XXXXX,________,
+ _X______,________,
+ __XXXX__,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0041[13] = { /* code 0041 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ XXXXXX__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0042[13] = { /* code 0042 */
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0043[13] = { /* code 0043 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _X______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _X______,
+ __XXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0044[13] = { /* code 0044 */
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ X___X___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___X___,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0045[13] = { /* code 0045 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0046[13] = { /* code 0046 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ X_______,
+ X_______,
+ XXXXX___,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0047[13] = { /* code 0047 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _X______,
+ X_______,
+ X_______,
+ X__XXX__,
+ X____X__,
+ _X___X__,
+ __XXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0048[13] = { /* code 0048 */
+ ________,
+ ________,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ XXXXXX__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0049[13] = { /* code 0049 */
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_004A[13] = { /* code 004A */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_004B[13] = { /* code 004B */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X__X____,
+ X_X_____,
+ XX______,
+ XX______,
+ X_X_____,
+ X__X____,
+ X___X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_004C[13] = { /* code 004C */
+ ________,
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_004D[13] = { /* code 004D */
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ X_X_X_X_,
+ X_X_X_X_,
+ X__X__X_,
+ X__X__X_,
+ X_____X_,
+ X_____X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_004E[13] = { /* code 004E */
+ ________,
+ ________,
+ ________,
+ XX___X__,
+ XX___X__,
+ X_X__X__,
+ X_X__X__,
+ X__X_X__,
+ X__X_X__,
+ X___XX__,
+ X___XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_004F[13] = { /* code 004F */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0050[13] = { /* code 0050 */
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0051[13] = { /* code 0051 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ X_____X_,
+ _X___X__,
+ __XXX___,
+ ____X___,
+ _____XX_};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0052[13] = { /* code 0052 */
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X__X____,
+ X___X___,
+ X____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0053[13] = { /* code 0053 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X_______,
+ X_______,
+ _XXX____,
+ ____X___,
+ ____X___,
+ ____X___,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0054[13] = { /* code 0054 */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0055[13] = { /* code 0055 */
+ ________,
+ ________,
+ ________,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0056[13] = { /* code 0056 */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0057[26] = { /* code 0057 */
+ ________,________,
+ ________,________,
+ ________,________,
+ X___X___,X_______,
+ X___X___,X_______,
+ X___X___,X_______,
+ _X_X_X_X,________,
+ _X_X_X_X,________,
+ _X_X_X_X,________,
+ __X___X_,________,
+ __X___X_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0058[13] = { /* code 0058 */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X_X____,
+ X___X___,
+ X___X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0059[13] = { /* code 0059 */
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_005A[13] = { /* code 005A */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ____X___,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ X_______,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_005B[13] = { /* code 005B */
+ ________,
+ ________,
+ XXX_____,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ XXX_____};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_005C[13] = { /* code 005C */
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_005D[13] = { /* code 005D */
+ ________,
+ ________,
+ XXX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ XXX_____};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_005E[13] = { /* code 005E */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __X_X___,
+ _X___X__,
+ X_____X_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_005F[13] = { /* code 005F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0060[13] = { /* code 0060 */
+ ________,
+ ________,
+ _X______,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0061[13] = { /* code 0061 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0062[13] = { /* code 0062 */
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0063[13] = { /* code 0063 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0064[13] = { /* code 0064 */
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0065[13] = { /* code 0065 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0066[13] = { /* code 0066 */
+ ________,
+ ________,
+ _XX_____,
+ X_______,
+ X_______,
+ XXX_____,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0067[13] = { /* code 0067 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ____X___,
+ _XXX____};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0068[13] = { /* code 0068 */
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0069[13] = { /* code 0069 */
+ ________,
+ ________,
+ ________,
+ X_______,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_006A[13] = { /* code 006A */
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ XX______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_006B[13] = { /* code 006B */
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X__X____,
+ X_X_____,
+ XX______,
+ X_X_____,
+ X__X____,
+ X___X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_006C[13] = { /* code 006C */
+ ________,
+ ________,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_006D[13] = { /* code 006D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_XX__,
+ X__X__X_,
+ X__X__X_,
+ X__X__X_,
+ X__X__X_,
+ X__X__X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_006E[13] = { /* code 006E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_006F[13] = { /* code 006F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0070[13] = { /* code 0070 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0071[13] = { /* code 0071 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ____X___,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0072[13] = { /* code 0072 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X_X_____,
+ XX______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0073[13] = { /* code 0073 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X_______,
+ XX______,
+ __XX____,
+ ___X____,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0074[13] = { /* code 0074 */
+ ________,
+ ________,
+ ________,
+ X_______,
+ X_______,
+ XXX_____,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0075[13] = { /* code 0075 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0076[13] = { /* code 0076 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0077[13] = { /* code 0077 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X__X__X_,
+ X__X__X_,
+ X_X_X_X_,
+ X_X_X_X_,
+ _X___X__,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0078[13] = { /* code 0078 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X_X____,
+ X___X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_0079[13] = { /* code 0079 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_007A[13] = { /* code 007A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_007B[13] = { /* code 007B */
+ ________,
+ ________,
+ ___X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ XX______,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ___X____};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_007C[13] = { /* code 007C */
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_007D[13] = { /* code 007D */
+ ________,
+ ________,
+ X_______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ __XX____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont13ASCII_007E[13] = { /* code 007E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX___X_,
+ X__X__X_,
+ X___XX__,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font13ASCII_CharInfo[95] = {
+ { 3, 3, 1, acFont13ASCII_0020 } /* code 0020 */
+ ,{ 4, 4, 1, acFont13ASCII_0021 } /* code 0021 */
+ ,{ 4, 4, 1, acFont13ASCII_0022 } /* code 0022 */
+ ,{ 8, 8, 1, acFont13ASCII_0023 } /* code 0023 */
+ ,{ 6, 6, 1, acFont13ASCII_0024 } /* code 0024 */
+ ,{ 11, 11, 2, acFont13ASCII_0025 } /* code 0025 */
+ ,{ 7, 7, 1, acFont13ASCII_0026 } /* code 0026 */
+ ,{ 2, 2, 1, acFont13ASCII_0027 } /* code 0027 */
+ ,{ 4, 4, 1, acFont13ASCII_0028 } /* code 0028 */
+ ,{ 4, 4, 1, acFont13ASCII_0029 } /* code 0029 */
+ ,{ 6, 6, 1, acFont13ASCII_002A } /* code 002A */
+ ,{ 8, 8, 1, acFont13ASCII_002B } /* code 002B */
+ ,{ 4, 4, 1, acFont13ASCII_002C } /* code 002C */
+ ,{ 4, 4, 1, acFont13ASCII_002D } /* code 002D */
+ ,{ 4, 4, 1, acFont13ASCII_002E } /* code 002E */
+ ,{ 4, 4, 1, acFont13ASCII_002F } /* code 002F */
+ ,{ 6, 6, 1, acFont13ASCII_0030 } /* code 0030 */
+ ,{ 6, 6, 1, acFont13ASCII_0031 } /* code 0031 */
+ ,{ 6, 6, 1, acFont13ASCII_0032 } /* code 0032 */
+ ,{ 6, 6, 1, acFont13ASCII_0033 } /* code 0033 */
+ ,{ 6, 6, 1, acFont13ASCII_0034 } /* code 0034 */
+ ,{ 6, 6, 1, acFont13ASCII_0035 } /* code 0035 */
+ ,{ 6, 6, 1, acFont13ASCII_0036 } /* code 0036 */
+ ,{ 6, 6, 1, acFont13ASCII_0037 } /* code 0037 */
+ ,{ 6, 6, 1, acFont13ASCII_0038 } /* code 0038 */
+ ,{ 6, 6, 1, acFont13ASCII_0039 } /* code 0039 */
+ ,{ 4, 4, 1, acFont13ASCII_003A } /* code 003A */
+ ,{ 4, 4, 1, acFont13ASCII_003B } /* code 003B */
+ ,{ 8, 8, 1, acFont13ASCII_003C } /* code 003C */
+ ,{ 8, 8, 1, acFont13ASCII_003D } /* code 003D */
+ ,{ 8, 8, 1, acFont13ASCII_003E } /* code 003E */
+ ,{ 5, 5, 1, acFont13ASCII_003F } /* code 003F */
+ ,{ 10, 10, 2, acFont13ASCII_0040 } /* code 0040 */
+ ,{ 7, 7, 1, acFont13ASCII_0041 } /* code 0041 */
+ ,{ 6, 6, 1, acFont13ASCII_0042 } /* code 0042 */
+ ,{ 7, 7, 1, acFont13ASCII_0043 } /* code 0043 */
+ ,{ 7, 7, 1, acFont13ASCII_0044 } /* code 0044 */
+ ,{ 6, 6, 1, acFont13ASCII_0045 } /* code 0045 */
+ ,{ 6, 6, 1, acFont13ASCII_0046 } /* code 0046 */
+ ,{ 7, 7, 1, acFont13ASCII_0047 } /* code 0047 */
+ ,{ 7, 7, 1, acFont13ASCII_0048 } /* code 0048 */
+ ,{ 4, 4, 1, acFont13ASCII_0049 } /* code 0049 */
+ ,{ 5, 5, 1, acFont13ASCII_004A } /* code 004A */
+ ,{ 6, 6, 1, acFont13ASCII_004B } /* code 004B */
+ ,{ 5, 5, 1, acFont13ASCII_004C } /* code 004C */
+ ,{ 8, 8, 1, acFont13ASCII_004D } /* code 004D */
+ ,{ 7, 7, 1, acFont13ASCII_004E } /* code 004E */
+ ,{ 8, 8, 1, acFont13ASCII_004F } /* code 004F */
+ ,{ 6, 6, 1, acFont13ASCII_0050 } /* code 0050 */
+ ,{ 8, 8, 1, acFont13ASCII_0051 } /* code 0051 */
+ ,{ 7, 7, 1, acFont13ASCII_0052 } /* code 0052 */
+ ,{ 6, 6, 1, acFont13ASCII_0053 } /* code 0053 */
+ ,{ 6, 6, 1, acFont13ASCII_0054 } /* code 0054 */
+ ,{ 7, 7, 1, acFont13ASCII_0055 } /* code 0055 */
+ ,{ 6, 6, 1, acFont13ASCII_0056 } /* code 0056 */
+ ,{ 10, 10, 2, acFont13ASCII_0057 } /* code 0057 */
+ ,{ 6, 6, 1, acFont13ASCII_0058 } /* code 0058 */
+ ,{ 6, 6, 1, acFont13ASCII_0059 } /* code 0059 */
+ ,{ 6, 6, 1, acFont13ASCII_005A } /* code 005A */
+ ,{ 4, 4, 1, acFont13ASCII_005B } /* code 005B */
+ ,{ 4, 4, 1, acFont13ASCII_005C } /* code 005C */
+ ,{ 4, 4, 1, acFont13ASCII_005D } /* code 005D */
+ ,{ 8, 8, 1, acFont13ASCII_005E } /* code 005E */
+ ,{ 6, 6, 1, acFont13ASCII_005F } /* code 005F */
+ ,{ 6, 6, 1, acFont13ASCII_0060 } /* code 0060 */
+ ,{ 6, 6, 1, acFont13ASCII_0061 } /* code 0061 */
+ ,{ 6, 6, 1, acFont13ASCII_0062 } /* code 0062 */
+ ,{ 5, 5, 1, acFont13ASCII_0063 } /* code 0063 */
+ ,{ 6, 6, 1, acFont13ASCII_0064 } /* code 0064 */
+ ,{ 6, 6, 1, acFont13ASCII_0065 } /* code 0065 */
+ ,{ 4, 4, 1, acFont13ASCII_0066 } /* code 0066 */
+ ,{ 6, 6, 1, acFont13ASCII_0067 } /* code 0067 */
+ ,{ 6, 6, 1, acFont13ASCII_0068 } /* code 0068 */
+ ,{ 2, 2, 1, acFont13ASCII_0069 } /* code 0069 */
+ ,{ 3, 3, 1, acFont13ASCII_006A } /* code 006A */
+ ,{ 5, 5, 1, acFont13ASCII_006B } /* code 006B */
+ ,{ 2, 2, 1, acFont13ASCII_006C } /* code 006C */
+ ,{ 8, 8, 1, acFont13ASCII_006D } /* code 006D */
+ ,{ 6, 6, 1, acFont13ASCII_006E } /* code 006E */
+ ,{ 6, 6, 1, acFont13ASCII_006F } /* code 006F */
+ ,{ 6, 6, 1, acFont13ASCII_0070 } /* code 0070 */
+ ,{ 6, 6, 1, acFont13ASCII_0071 } /* code 0071 */
+ ,{ 4, 4, 1, acFont13ASCII_0072 } /* code 0072 */
+ ,{ 5, 5, 1, acFont13ASCII_0073 } /* code 0073 */
+ ,{ 4, 4, 1, acFont13ASCII_0074 } /* code 0074 */
+ ,{ 6, 6, 1, acFont13ASCII_0075 } /* code 0075 */
+ ,{ 6, 6, 1, acFont13ASCII_0076 } /* code 0076 */
+ ,{ 8, 8, 1, acFont13ASCII_0077 } /* code 0077 */
+ ,{ 6, 6, 1, acFont13ASCII_0078 } /* code 0078 */
+ ,{ 6, 6, 1, acFont13ASCII_0079 } /* code 0079 */
+ ,{ 5, 5, 1, acFont13ASCII_007A } /* code 007A */
+ ,{ 5, 5, 1, acFont13ASCII_007B } /* code 007B */
+ ,{ 4, 4, 1, acFont13ASCII_007C } /* code 007C */
+ ,{ 5, 5, 1, acFont13ASCII_007D } /* code 007D */
+ ,{ 8, 8, 1, acFont13ASCII_007E } /* code 007E */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font13ASCII_Prop1 = {
+ 32 /* first character */
+ ,126 /* last character */
+ ,&GUI_Font13ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font13_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,13 /* height of font */
+ ,13 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font13ASCII_Prop1}
+ , 11, 6, 8
+};
+
+
diff --git a/User/lib/lcd/gui/Font/F16B_1.c b/User/lib/lcd/gui/Font/F16B_1.c
new file mode 100644
index 0000000..08d9a62
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F16B_1.c
@@ -0,0 +1,1873 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F16_1.C
+Purpose : ISO 8859-1 West European Character Set, bold
+Height : 16
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont16B_1_00A0[ 16] = { /* code 00A0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00A1[ 16] = { /* code 00A1 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00A2[ 16] = { /* code 00A2 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ___X____,
+ _XXXX___,
+ XX_XXX__,
+ XX_X____,
+ XX_X____,
+ XX_X____,
+ XXX__X__,
+ _XXXX___,
+ __X_____,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00A3[ 16] = { /* code 00A3 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXXXX__,
+ __XX____,
+ _XXX____,
+ XXXXX_X_,
+ _X__XXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00A4[ 16] = { /* code 00A4 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X____X__,
+ XXXXXXX_,
+ XX__XX__,
+ X____X__,
+ X____X__,
+ XX__XX__,
+ XXXXXXX_,
+ X____X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00A5[ 16] = { /* code 00A5 */
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ _XXXX___,
+ XXXXXX__,
+ __XX____,
+ XXXXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00A6[ 16] = { /* code 00A6 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00A7[ 16] = { /* code 00A7 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ _XX_____,
+ _XXX____,
+ XXXXX___,
+ XX_XXX__,
+ XX__XX__,
+ XXX_XX__,
+ _XXXX___,
+ __XXX___,
+ ___XX___,
+ XX_XX___,
+ _XXX____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00A8[ 16] = { /* code 00A8 */
+ ________,
+ ________,
+ ________,
+ X__X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00A9[ 32] = { /* code 00A9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ _XX____X,X_______,
+ _X__XX__,X_______,
+ X__X__X_,_X______,
+ X__X____,_X______,
+ X__X____,_X______,
+ X__X__X_,_X______,
+ _X__XX__,X_______,
+ _XX____X,X_______,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00AA[ 16] = { /* code 00AA */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X__X____,
+ _XXX____,
+ X__X____,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00AB[ 16] = { /* code 00AB */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X__X__,
+ _XX_XX__,
+ XX_XX___,
+ XX_XX___,
+ _XX_XX__,
+ __X__X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00AC[ 16] = { /* code 00AC */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00AD[ 16] = { /* code 00AD */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00AE[ 32] = { /* code 00AE */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ _XX____X,X_______,
+ _X_XXX__,X_______,
+ X__X__X_,_X______,
+ X__X__X_,_X______,
+ X__XXX__,_X______,
+ X__X_X__,_X______,
+ _X_X__X_,X_______,
+ _XX____X,X_______,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00AF[ 16] = { /* code 00AF */
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00B0[ 16] = { /* code 00B0 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ X__X____,
+ X__X____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00B1[ 16] = { /* code 00B1 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ XXXXXX__,
+ __XX____,
+ __XX____,
+ ________,
+ XXXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00B2[ 16] = { /* code 00B2 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X__X____,
+ __X_____,
+ _X______,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00B3[ 16] = { /* code 00B3 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ X__X____,
+ __X_____,
+ X__X____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00B4[ 16] = { /* code 00B4 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00B5[ 16] = { /* code 00B5 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXXX__,
+ XX______,
+ XX______,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00B6[ 16] = { /* code 00B6 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ XXXX_X__,
+ XXXX_X__,
+ XXXX_X__,
+ _XXX_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00B7[ 16] = { /* code 00B7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00B8[ 16] = { /* code 00B8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ __X_____,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00B9[ 16] = { /* code 00B9 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00BA[ 16] = { /* code 00BA */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00BB[ 16] = { /* code 00BB */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X__X___,
+ _XX_XX__,
+ __XX_XX_,
+ __XX_XX_,
+ _XX_XX__,
+ _X__X___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00BC[ 32] = { /* code 00BC */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X_____X,________,
+ XX____X_,________,
+ _X___X__,________,
+ _X___X__,________,
+ _X__X___,________,
+ ____X___,X_______,
+ ___X___X,X_______,
+ __X___X_,X_______,
+ __X___XX,XX______,
+ _X______,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00BD[ 32] = { /* code 00BD */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X_____X,________,
+ XX____X_,________,
+ _X____X_,________,
+ _X___X__,________,
+ _X__X___,________,
+ ____X__X,XX______,
+ ___X__X_,_X______,
+ ___X____,X_______,
+ __X____X,________,
+ _X____XX,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00BE[ 32] = { /* code 00BE */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,X_______,
+ X__X___X,________,
+ __X____X,________,
+ X__X__X_,________,
+ _XX___X_,________,
+ _____X__,_X______,
+ ____X___,XX______,
+ ____X__X,_X______,
+ ___X___X,XXX_____,
+ ___X____,_X______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00BF[ 16] = { /* code 00BF */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ XX______,
+ XX___XX_,
+ _XXXXX__};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00C0[ 32] = { /* code 00C0 */
+ ___XX___,________,
+ ____XX__,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00C1[ 32] = { /* code 00C1 */
+ _____XX_,________,
+ ____XX__,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00C2[ 32] = { /* code 00C2 */
+ ____X___,________,
+ ___X_X__,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00C3[ 32] = { /* code 00C3 */
+ ___XX_X_,________,
+ ___X_XX_,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00C4[ 32] = { /* code 00C4 */
+ ________,________,
+ ___X__X_,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00C5[ 32] = { /* code 00C5 */
+ ____XX__,________,
+ ___X__X_,________,
+ ___X__X_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00C6[ 32] = { /* code 00C6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XXXX____,
+ ___XX_XX,________,
+ ___XX_XX,________,
+ ___XX_XX,________,
+ __XX__XX,XXXX____,
+ __XX__XX,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ XX____XX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00C7[ 32] = { /* code 00C7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XX___X,X_______,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ __XX___X,X_______,
+ ___XXXXX,________,
+ ____XX__,________,
+ _____X__,________,
+ ___XX___,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00C8[ 16] = { /* code 00C8 */
+ __XX____,
+ ___XX___,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00C9[ 16] = { /* code 00C9 */
+ _____XX_,
+ ____XX__,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00CA[ 16] = { /* code 00CA */
+ ____X___,
+ ___X_X__,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00CB[ 16] = { /* code 00CB */
+ ________,
+ __X__X__,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00CC[ 16] = { /* code 00CC */
+ XX______,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00CD[ 16] = { /* code 00CD */
+ __XX____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00CE[ 16] = { /* code 00CE */
+ __X_____,
+ _X_X____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00CF[ 16] = { /* code 00CF */
+ ________,
+ X__X____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00D0[ 32] = { /* code 00D0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX__,________,
+ _XX__XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ XXXXX_XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX__XX_,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00D1[ 32] = { /* code 00D1 */
+ ___XX_X_,________,
+ ___X_XX_,________,
+ ________,________,
+ _XX___XX,________,
+ _XXX__XX,________,
+ _XXX__XX,________,
+ _XXXX_XX,________,
+ _XX_X_XX,________,
+ _XX_XXXX,________,
+ _XX__XXX,________,
+ _XX__XXX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00D2[ 32] = { /* code 00D2 */
+ ___XX___,________,
+ ____XX__,________,
+ ________,________,
+ ___XXXX_,________,
+ __XX__XX,________,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ __XX__XX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00D3[ 32] = { /* code 00D3 */
+ _____XX_,________,
+ ____XX__,________,
+ ________,________,
+ ___XXXX_,________,
+ __XX__XX,________,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ __XX__XX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00D4[ 32] = { /* code 00D4 */
+ _____X__,________,
+ ____X_X_,________,
+ ________,________,
+ ___XXXX_,________,
+ __XX__XX,________,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ __XX__XX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00D5[ 32] = { /* code 00D5 */
+ ___XX_X_,________,
+ ___X_XX_,________,
+ ________,________,
+ ___XXXX_,________,
+ __XX__XX,________,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ __XX__XX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00D6[ 32] = { /* code 00D6 */
+ ________,________,
+ ___X__X_,________,
+ ________,________,
+ ___XXXX_,________,
+ __XX__XX,________,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ __XX__XX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00D7[ 16] = { /* code 00D7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X___X__,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ _X___X__,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00D8[ 32] = { /* code 00D8 */
+ ________,________,
+ ________,________,
+ ________,X_______,
+ ___XXXX_,XX______,
+ __XX__XX,X_______,
+ _XX___XX,X_______,
+ _XX__XXX,X_______,
+ _XX__X_X,X_______,
+ _XX_X__X,X_______,
+ _XXXX__X,X_______,
+ _XXX___X,X_______,
+ _XXX__XX,________,
+ XX_XXXX_,________,
+ _X______,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00D9[ 32] = { /* code 00D9 */
+ ___XX___,________,
+ ____XX__,________,
+ ________,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00DA[ 32] = { /* code 00DA */
+ ____XX__,________,
+ ___XX___,________,
+ ________,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00DB[ 32] = { /* code 00DB */
+ ____X___,________,
+ ___X_X__,________,
+ ________,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00DC[ 32] = { /* code 00DC */
+ ________,________,
+ ___X__X_,________,
+ ________,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00DD[ 16] = { /* code 00DD */
+ ____XX__,
+ ___XX___,
+ ________,
+ XX____XX,
+ XX____XX,
+ _XX__XX_,
+ __XXXX__,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00DE[ 32] = { /* code 00DE */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXX_,________,
+ _XX_____,________,
+ _XX_____,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00DF[ 16] = { /* code 00DF */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_X___,
+ _XXXX___,
+ _XXXXX__,
+ _XX_XXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00E0[ 16] = { /* code 00E0 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ ___XXXX_,
+ __XX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00E1[ 16] = { /* code 00E1 */
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ ___XXXX_,
+ __XX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00E2[ 16] = { /* code 00E2 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ ___XXXX_,
+ __XX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00E3[ 16] = { /* code 00E3 */
+ ________,
+ ________,
+ ________,
+ __XX_X__,
+ __X_XX__,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ ___XXXX_,
+ __XX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00E4[ 16] = { /* code 00E4 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X__X__,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ ___XXXX_,
+ __XX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00E5[ 16] = { /* code 00E5 */
+ ________,
+ ___XX___,
+ __X__X__,
+ __X__X__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ ___XXXX_,
+ __XX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00E6[ 32] = { /* code 00E6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXX_X,XX______,
+ _X___XX_,_XX_____,
+ ___XXXX_,_XX_____,
+ __XX_XXX,XXX_____,
+ _XX__XX_,________,
+ _XX__XX_,_XX_____,
+ __XXX_XX,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00E7[ 16] = { /* code 00E7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00E8[ 16] = { /* code 00E8 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX_____,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00E9[ 16] = { /* code 00E9 */
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX_____,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00EA[ 16] = { /* code 00EA */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX_____,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00EB[ 16] = { /* code 00EB */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X__X__,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX_____,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00EC[ 16] = { /* code 00EC */
+ ________,
+ ________,
+ ________,
+ XX______,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00ED[ 16] = { /* code 00ED */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00EE[ 16] = { /* code 00EE */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _X_X____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00EF[ 16] = { /* code 00EF */
+ ________,
+ ________,
+ ________,
+ ________,
+ X__X____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00F0[ 16] = { /* code 00F0 */
+ ________,
+ ________,
+ ________,
+ ___X_X__,
+ ____X___,
+ ___X_X__,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00F1[ 16] = { /* code 00F1 */
+ ________,
+ ________,
+ ________,
+ __XX_X__,
+ __X_XX__,
+ ________,
+ _XX_XX__,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00F2[ 16] = { /* code 00F2 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ____XX__,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00F3[ 16] = { /* code 00F3 */
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00F4[ 16] = { /* code 00F4 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00F5[ 16] = { /* code 00F5 */
+ ________,
+ ________,
+ ________,
+ __XX_X__,
+ __X_XX__,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00F6[ 16] = { /* code 00F6 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X__X__,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00F7[ 16] = { /* code 00F7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ XXXXXX__,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00F8[ 16] = { /* code 00F8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____X__,
+ __XXXXX_,
+ _XX_XX__,
+ _XX_XXX_,
+ _XXXXXX_,
+ _XXX_XX_,
+ __XX_XX_,
+ _XXXXX__,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00F9[ 16] = { /* code 00F9 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ___XX___,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XXX_,
+ __XX_XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00FA[ 16] = { /* code 00FA */
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ___XX___,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XXX_,
+ __XX_XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00FB[ 16] = { /* code 00FB */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XXX_,
+ __XX_XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00FC[ 16] = { /* code 00FC */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X__X__,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XXX_,
+ __XX_XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00FD[ 16] = { /* code 00FD */
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ___XX___,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XX____,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00FE[ 16] = { /* code 00FE */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_1_00FF[ 16] = { /* code 00FF */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X__X__,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XX____,
+ XXXX____};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font16B_1_CharInfo[96] = {
+ { 4, 4, 1, acFont16B_1_00A0 } /* code 00A0 */
+ ,{ 4, 4, 1, acFont16B_1_00A1 } /* code 00A1 */
+ ,{ 7, 7, 1, acFont16B_1_00A2 } /* code 00A2 */
+ ,{ 7, 7, 1, acFont16B_1_00A3 } /* code 00A3 */
+ ,{ 7, 7, 1, acFont16B_1_00A4 } /* code 00A4 */
+ ,{ 7, 7, 1, acFont16B_1_00A5 } /* code 00A5 */
+ ,{ 3, 3, 1, acFont16B_1_00A6 } /* code 00A6 */
+ ,{ 7, 7, 1, acFont16B_1_00A7 } /* code 00A7 */
+ ,{ 4, 4, 1, acFont16B_1_00A8 } /* code 00A8 */
+ ,{ 10, 10, 2, acFont16B_1_00A9 } /* code 00A9 */
+ ,{ 5, 5, 1, acFont16B_1_00AA } /* code 00AA */
+ ,{ 7, 7, 1, acFont16B_1_00AB } /* code 00AB */
+ ,{ 8, 8, 1, acFont16B_1_00AC } /* code 00AC */
+ ,{ 4, 4, 1, acFont16B_1_00AD } /* code 00AD */
+ ,{ 10, 10, 2, acFont16B_1_00AE } /* code 00AE */
+ ,{ 7, 7, 1, acFont16B_1_00AF } /* code 00AF */
+ ,{ 5, 5, 1, acFont16B_1_00B0 } /* code 00B0 */
+ ,{ 7, 7, 1, acFont16B_1_00B1 } /* code 00B1 */
+ ,{ 4, 4, 1, acFont16B_1_00B2 } /* code 00B2 */
+ ,{ 4, 4, 1, acFont16B_1_00B3 } /* code 00B3 */
+ ,{ 4, 4, 1, acFont16B_1_00B4 } /* code 00B4 */
+ ,{ 7, 7, 1, acFont16B_1_00B5 } /* code 00B5 */
+ ,{ 7, 7, 1, acFont16B_1_00B6 } /* code 00B6 */
+ ,{ 4, 4, 1, acFont16B_1_00B7 } /* code 00B7 */
+ ,{ 4, 4, 1, acFont16B_1_00B8 } /* code 00B8 */
+ ,{ 4, 4, 1, acFont16B_1_00B9 } /* code 00B9 */
+ ,{ 5, 5, 1, acFont16B_1_00BA } /* code 00BA */
+ ,{ 7, 7, 1, acFont16B_1_00BB } /* code 00BB */
+ ,{ 11, 11, 2, acFont16B_1_00BC } /* code 00BC */
+ ,{ 11, 11, 2, acFont16B_1_00BD } /* code 00BD */
+ ,{ 11, 11, 2, acFont16B_1_00BE } /* code 00BE */
+ ,{ 8, 8, 1, acFont16B_1_00BF } /* code 00BF */
+ ,{ 9, 9, 2, acFont16B_1_00C0 } /* code 00C0 */
+ ,{ 9, 9, 2, acFont16B_1_00C1 } /* code 00C1 */
+ ,{ 9, 9, 2, acFont16B_1_00C2 } /* code 00C2 */
+ ,{ 9, 9, 2, acFont16B_1_00C3 } /* code 00C3 */
+ ,{ 9, 9, 2, acFont16B_1_00C4 } /* code 00C4 */
+ ,{ 9, 9, 2, acFont16B_1_00C5 } /* code 00C5 */
+ ,{ 13, 13, 2, acFont16B_1_00C6 } /* code 00C6 */
+ ,{ 9, 9, 2, acFont16B_1_00C7 } /* code 00C7 */
+ ,{ 8, 8, 1, acFont16B_1_00C8 } /* code 00C8 */
+ ,{ 8, 8, 1, acFont16B_1_00C9 } /* code 00C9 */
+ ,{ 8, 8, 1, acFont16B_1_00CA } /* code 00CA */
+ ,{ 8, 8, 1, acFont16B_1_00CB } /* code 00CB */
+ ,{ 4, 4, 1, acFont16B_1_00CC } /* code 00CC */
+ ,{ 4, 4, 1, acFont16B_1_00CD } /* code 00CD */
+ ,{ 4, 4, 1, acFont16B_1_00CE } /* code 00CE */
+ ,{ 4, 4, 1, acFont16B_1_00CF } /* code 00CF */
+ ,{ 9, 9, 2, acFont16B_1_00D0 } /* code 00D0 */
+ ,{ 9, 9, 2, acFont16B_1_00D1 } /* code 00D1 */
+ ,{ 10, 10, 2, acFont16B_1_00D2 } /* code 00D2 */
+ ,{ 10, 10, 2, acFont16B_1_00D3 } /* code 00D3 */
+ ,{ 10, 10, 2, acFont16B_1_00D4 } /* code 00D4 */
+ ,{ 10, 10, 2, acFont16B_1_00D5 } /* code 00D5 */
+ ,{ 10, 10, 2, acFont16B_1_00D6 } /* code 00D6 */
+ ,{ 8, 8, 1, acFont16B_1_00D7 } /* code 00D7 */
+ ,{ 10, 10, 2, acFont16B_1_00D8 } /* code 00D8 */
+ ,{ 9, 9, 2, acFont16B_1_00D9 } /* code 00D9 */
+ ,{ 9, 9, 2, acFont16B_1_00DA } /* code 00DA */
+ ,{ 9, 9, 2, acFont16B_1_00DB } /* code 00DB */
+ ,{ 9, 9, 2, acFont16B_1_00DC } /* code 00DC */
+ ,{ 8, 8, 1, acFont16B_1_00DD } /* code 00DD */
+ ,{ 9, 9, 2, acFont16B_1_00DE } /* code 00DE */
+ ,{ 8, 8, 1, acFont16B_1_00DF } /* code 00DF */
+ ,{ 8, 8, 1, acFont16B_1_00E0 } /* code 00E0 */
+ ,{ 8, 8, 1, acFont16B_1_00E1 } /* code 00E1 */
+ ,{ 8, 8, 1, acFont16B_1_00E2 } /* code 00E2 */
+ ,{ 8, 8, 1, acFont16B_1_00E3 } /* code 00E3 */
+ ,{ 8, 8, 1, acFont16B_1_00E4 } /* code 00E4 */
+ ,{ 8, 8, 1, acFont16B_1_00E5 } /* code 00E5 */
+ ,{ 12, 12, 2, acFont16B_1_00E6 } /* code 00E6 */
+ ,{ 7, 7, 1, acFont16B_1_00E7 } /* code 00E7 */
+ ,{ 8, 8, 1, acFont16B_1_00E8 } /* code 00E8 */
+ ,{ 8, 8, 1, acFont16B_1_00E9 } /* code 00E9 */
+ ,{ 8, 8, 1, acFont16B_1_00EA } /* code 00EA */
+ ,{ 8, 8, 1, acFont16B_1_00EB } /* code 00EB */
+ ,{ 4, 4, 1, acFont16B_1_00EC } /* code 00EC */
+ ,{ 4, 4, 1, acFont16B_1_00ED } /* code 00ED */
+ ,{ 4, 4, 1, acFont16B_1_00EE } /* code 00EE */
+ ,{ 4, 4, 1, acFont16B_1_00EF } /* code 00EF */
+ ,{ 8, 8, 1, acFont16B_1_00F0 } /* code 00F0 */
+ ,{ 8, 8, 1, acFont16B_1_00F1 } /* code 00F1 */
+ ,{ 8, 8, 1, acFont16B_1_00F2 } /* code 00F2 */
+ ,{ 8, 8, 1, acFont16B_1_00F3 } /* code 00F3 */
+ ,{ 8, 8, 1, acFont16B_1_00F4 } /* code 00F4 */
+ ,{ 8, 8, 1, acFont16B_1_00F5 } /* code 00F5 */
+ ,{ 8, 8, 1, acFont16B_1_00F6 } /* code 00F6 */
+ ,{ 7, 7, 1, acFont16B_1_00F7 } /* code 00F7 */
+ ,{ 8, 8, 1, acFont16B_1_00F8 } /* code 00F8 */
+ ,{ 8, 8, 1, acFont16B_1_00F9 } /* code 00F9 */
+ ,{ 8, 8, 1, acFont16B_1_00FA } /* code 00FA */
+ ,{ 8, 8, 1, acFont16B_1_00FB } /* code 00FB */
+ ,{ 8, 8, 1, acFont16B_1_00FC } /* code 00FC */
+ ,{ 7, 7, 1, acFont16B_1_00FD } /* code 00FD */
+ ,{ 8, 8, 1, acFont16B_1_00FE } /* code 00FE */
+ ,{ 7, 7, 1, acFont16B_1_00FF } /* code 00FF */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16B_1_Prop2 = {
+ 0x00A0 /* first character */
+ ,0x00FF /* last character */
+ ,&GUI_Font16B_1_CharInfo[0] /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16B_1_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font16B_ASCII_CharInfo[0] /* address of first character */
+ ,&GUI_Font16B_1_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font16B_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,16 /* height of font */
+ ,16 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font16B_1_Prop1}
+ ,13 ,7 ,10
+};
diff --git a/User/lib/lcd/gui/Font/F16B_ASCII.c b/User/lib/lcd/gui/Font/F16B_ASCII.c
new file mode 100644
index 0000000..a0ab889
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F16B_ASCII.c
@@ -0,0 +1,1848 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F16B_ASCII.C
+Purpose : ASCII Character Set similar to Swiss, bold
+Height : 16
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0020[ 16] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0021[ 16] = { /* code 0021 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0022[ 16] = { /* code 0022 */
+ ________,
+ ________,
+ ________,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0023[ 16] = { /* code 0023 */
+ ________,
+ ________,
+ ________,
+ __X__X__,
+ __X__X__,
+ __X__X__,
+ XXXXXX__,
+ _X__X___,
+ _X__X___,
+ XXXXXX__,
+ X__X____,
+ X__X____,
+ X__X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0024[ 16] = { /* code 0024 */
+ ________,
+ ________,
+ ___X____,
+ __XXX___,
+ _X_X_X__,
+ _X_X____,
+ _XXX____,
+ _XXXX___,
+ __XXXX__,
+ ___XXX__,
+ ___X_X__,
+ _X_X_X__,
+ __XXX___,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0025[ 32] = { /* code 0025 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX__X_,________,
+ _X_X__X_,________,
+ _X_X__X_,________,
+ _X_X_X__,________,
+ _XXX_X__,________,
+ ____X_XX,X_______,
+ ____X_X_,X_______,
+ ____X_X_,X_______,
+ ___X__X_,X_______,
+ ___X__XX,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0026[ 32] = { /* code 0026 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ ___XXXX_,________,
+ ___XX___,________,
+ __XXXX_X,________,
+ _XX_XX_X,________,
+ _XX__XXX,________,
+ _XX__XXX,________,
+ __XXXX_X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0027[ 16] = { /* code 0027 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0028[ 16] = { /* code 0028 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __XX____,
+ __X_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __X_____,
+ __XX____,
+ ___X____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0029[ 16] = { /* code 0029 */
+ ________,
+ ________,
+ ________,
+ X_______,
+ XX______,
+ _X______,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _X______,
+ XX______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_002A[ 16] = { /* code 002A */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ XX_XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_002B[ 16] = { /* code 002B */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_002C[ 16] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ __X_____,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_002D[ 16] = { /* code 002D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_002E[ 16] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_002F[ 16] = { /* code 002F */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ X_______,
+ X_______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0030[ 16] = { /* code 0030 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0031[ 16] = { /* code 0031 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XXX___,
+ _XXXX___,
+ _X_XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0032[ 16] = { /* code 0032 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ __XXX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ XXXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0033[ 16] = { /* code 0033 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ ____XX__,
+ ____XX__,
+ __XXX___,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0034[ 16] = { /* code 0034 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ __XXX___,
+ __XXX___,
+ _X_XX___,
+ _X_XX___,
+ X__XX___,
+ XXXXXX__,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0035[ 16] = { /* code 0035 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XX_____,
+ XX______,
+ XXXXX___,
+ XX__XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0036[ 16] = { /* code 0036 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X__XX__,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0037[ 16] = { /* code 0037 */
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0038[ 16] = { /* code 0038 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0039[ 16] = { /* code 0039 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ ____XX__,
+ XX__X___,
+ _XXX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_003A[ 16] = { /* code 003A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_003B[ 16] = { /* code 003B */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ __X_____,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_003C[ 16] = { /* code 003C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____X__,
+ ___XXX__,
+ _XXX____,
+ XX______,
+ _XXX____,
+ ___XXX__,
+ _____X__,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_003D[ 16] = { /* code 003D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_003E[ 16] = { /* code 003E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _XXX____,
+ ___XXX__,
+ _____XX_,
+ ___XXX__,
+ _XXX____,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_003F[ 16] = { /* code 003F */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0040[ 32] = { /* code 0040 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XX______,
+ __XX____,__X_____,
+ _XX_____,___X____,
+ _X__XXX_,XX__X___,
+ X__XXXXX,XX__X___,
+ X_XXX__X,XX__X___,
+ X_XX___X,X___X___,
+ X_XX__XX,X__X____,
+ X_XXXXXX,X_XX____,
+ _X_XXX_X,XX______,
+ _X______,____X___,
+ __XX____,__XX____,
+ ____XXXX,XX______};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0041[ 32] = { /* code 0041 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0042[ 32] = { /* code 0042 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0043[ 32] = { /* code 0043 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XX___X,X_______,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ __XX___X,X_______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0044[ 32] = { /* code 0044 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX__,________,
+ _XX__XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX__XX_,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0045[ 16] = { /* code 0045 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0046[ 16] = { /* code 0046 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0047[ 32] = { /* code 0047 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XX___X,X_______,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX__XXX,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ __XX___X,X_______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0048[ 32] = { /* code 0048 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0049[ 16] = { /* code 0049 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_004A[ 16] = { /* code 004A */
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_004B[ 32] = { /* code 004B */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX___XX,________,
+ _XX__XX_,________,
+ _XX_XX__,________,
+ _XX_XX__,________,
+ _XXXXX__,________,
+ _XXX_XX_,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_004C[ 16] = { /* code 004C */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_004D[ 32] = { /* code 004D */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXXX_XX,XX______,
+ _XXXX_XX,XX______,
+ _XX_X_X_,XX______,
+ _XX_X_X_,XX______,
+ _XX_X_X_,XX______,
+ _XX_XXX_,XX______,
+ _XX_XXX_,XX______,
+ _XX__X__,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_004E[ 32] = { /* code 004E */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX___XX,________,
+ _XXX__XX,________,
+ _XXX__XX,________,
+ _XXXX_XX,________,
+ _XX_X_XX,________,
+ _XX_XXXX,________,
+ _XX__XXX,________,
+ _XX__XXX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_004F[ 32] = { /* code 004F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ __XX__XX,________,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ __XX__XX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0050[ 32] = { /* code 0050 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXX_,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0051[ 32] = { /* code 0051 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ __XX__XX,________,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX__X_X,X_______,
+ __XX__XX,________,
+ ___XXXXX,________,
+ ________,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0052[ 32] = { /* code 0052 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXX_,________,
+ _XX__XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX____X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0053[ 32] = { /* code 0053 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _XX___XX,________,
+ _XX_____,________,
+ _XXX____,________,
+ __XXXX__,________,
+ ___XXXX_,________,
+ _____XXX,________,
+ ______XX,________,
+ _XX___XX,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0054[ 16] = { /* code 0054 */
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0055[ 32] = { /* code 0055 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0056[ 32] = { /* code 0056 */
+ ________,________,
+ ________,________,
+ ________,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ __XX_XX_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0057[ 32] = { /* code 0057 */
+ ________,________,
+ ________,________,
+ ________,________,
+ XX___XXX,___XX___,
+ XX___XXX,___XX___,
+ _XX__XXX,__XX____,
+ _XX_XX_X,X_XX____,
+ _XX_XX_X,X_XX____,
+ _XX_XX_X,X_XX____,
+ _XX_XX_X,X_XX____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0058[ 32] = { /* code 0058 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ __XX_XX_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0059[ 16] = { /* code 0059 */
+ ________,
+ ________,
+ ________,
+ XX____XX,
+ XX____XX,
+ _XX__XX_,
+ __XXXX__,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_005A[ 16] = { /* code 005A */
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ _XX_____,
+ XX______,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_005B[ 16] = { /* code 005B */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXX____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_005C[ 16] = { /* code 005C */
+ ________,
+ ________,
+ ________,
+ X_______,
+ X_______,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ ___X____,
+ ___X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_005D[ 16] = { /* code 005D */
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXX_____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_005E[ 16] = { /* code 005E */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ _X__X___,
+ XX__XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_005F[ 16] = { /* code 005F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0060[ 16] = { /* code 0060 */
+ ________,
+ ________,
+ ________,
+ XX______,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0061[ 16] = { /* code 0061 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _X___XX_,
+ ___XXXX_,
+ __XX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0062[ 16] = { /* code 0062 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_XX__,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXX_XX_,
+ _XX_XX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0063[ 16] = { /* code 0063 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0064[ 16] = { /* code 0064 */
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ __XX_XX_,
+ _XX_XXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XXX_,
+ __XX_XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0065[ 16] = { /* code 0065 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX_____,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0066[ 16] = { /* code 0066 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0067[ 16] = { /* code 0067 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX_XX_,
+ _XX_XXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XXX_,
+ __XX_XX_,
+ _____XX_,
+ _X___XX_,
+ __XXXX__};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0068[ 16] = { /* code 0068 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_XX__,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0069[ 16] = { /* code 0069 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_006A[ 16] = { /* code 006A */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_006B[ 16] = { /* code 006B */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ _XX_XX__,
+ _XXXX___,
+ _XXXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_006C[ 16] = { /* code 006C */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_006D[ 32] = { /* code 006D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_XXX_,XX______,
+ _XXX_XXX,_XX_____,
+ _XX__XX_,_XX_____,
+ _XX__XX_,_XX_____,
+ _XX__XX_,_XX_____,
+ _XX__XX_,_XX_____,
+ _XX__XX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_006E[ 16] = { /* code 006E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_XX__,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_006F[ 16] = { /* code 006F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0070[ 16] = { /* code 0070 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_XX__,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXX_XX_,
+ _XX_XX__,
+ _XX_____,
+ _XX_____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0071[ 16] = { /* code 0071 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX_XX_,
+ _XX_XXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XXX_,
+ __XX_XX_,
+ _____XX_,
+ _____XX_,
+ _____XX_};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0072[ 16] = { /* code 0072 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0073[ 16] = { /* code 0073 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XXX_____,
+ _XXXX___,
+ ___XXX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0074[ 16] = { /* code 0074 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XX_____,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0075[ 16] = { /* code 0075 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XXX_,
+ __XX_XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0076[ 16] = { /* code 0076 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0077[ 32] = { /* code 0077 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX___X__,_XX_____,
+ XX__XXX_,_XX_____,
+ _XX_XXX_,XX______,
+ _XX_X_X_,XX______,
+ _XXXX_XX,XX______,
+ __XXX_XX,X_______,
+ __XX___X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0078[ 16] = { /* code 0078 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_0079[ 16] = { /* code 0079 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XX____,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_007A[ 16] = { /* code 007A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_007B[ 16] = { /* code 007B */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XX______,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XXX___};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_007C[ 16] = { /* code 007C */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_007D[ 16] = { /* code 007D */
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXX_____};
+
+GUI_CONST_STORAGE unsigned char acFont16B_ASCII_007E[ 16] = { /* code 007E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX__X_,
+ X__XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font16B_ASCII_CharInfo[95] = {
+ { 4, 4, 1, acFont16B_ASCII_0020 } /* code 0020 */
+ ,{ 4, 4, 1, acFont16B_ASCII_0021 } /* code 0021 */
+ ,{ 6, 6, 1, acFont16B_ASCII_0022 } /* code 0022 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0023 } /* code 0023 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0024 } /* code 0024 */
+ ,{ 10, 10, 2, acFont16B_ASCII_0025 } /* code 0025 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0026 } /* code 0026 */
+ ,{ 3, 3, 1, acFont16B_ASCII_0027 } /* code 0027 */
+ ,{ 4, 4, 1, acFont16B_ASCII_0028 } /* code 0028 */
+ ,{ 4, 4, 1, acFont16B_ASCII_0029 } /* code 0029 */
+ ,{ 5, 5, 1, acFont16B_ASCII_002A } /* code 002A */
+ ,{ 8, 8, 1, acFont16B_ASCII_002B } /* code 002B */
+ ,{ 4, 4, 1, acFont16B_ASCII_002C } /* code 002C */
+ ,{ 4, 4, 1, acFont16B_ASCII_002D } /* code 002D */
+ ,{ 4, 4, 1, acFont16B_ASCII_002E } /* code 002E */
+ ,{ 4, 4, 1, acFont16B_ASCII_002F } /* code 002F */
+ ,{ 7, 7, 1, acFont16B_ASCII_0030 } /* code 0030 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0031 } /* code 0031 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0032 } /* code 0032 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0033 } /* code 0033 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0034 } /* code 0034 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0035 } /* code 0035 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0036 } /* code 0036 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0037 } /* code 0037 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0038 } /* code 0038 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0039 } /* code 0039 */
+ ,{ 4, 4, 1, acFont16B_ASCII_003A } /* code 003A */
+ ,{ 4, 4, 1, acFont16B_ASCII_003B } /* code 003B */
+ ,{ 8, 8, 1, acFont16B_ASCII_003C } /* code 003C */
+ ,{ 8, 8, 1, acFont16B_ASCII_003D } /* code 003D */
+ ,{ 8, 8, 1, acFont16B_ASCII_003E } /* code 003E */
+ ,{ 8, 8, 1, acFont16B_ASCII_003F } /* code 003F */
+ ,{ 13, 13, 2, acFont16B_ASCII_0040 } /* code 0040 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0041 } /* code 0041 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0042 } /* code 0042 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0043 } /* code 0043 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0044 } /* code 0044 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0045 } /* code 0045 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0046 } /* code 0046 */
+ ,{ 10, 10, 2, acFont16B_ASCII_0047 } /* code 0047 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0048 } /* code 0048 */
+ ,{ 4, 4, 1, acFont16B_ASCII_0049 } /* code 0049 */
+ ,{ 7, 7, 1, acFont16B_ASCII_004A } /* code 004A */
+ ,{ 9, 9, 2, acFont16B_ASCII_004B } /* code 004B */
+ ,{ 8, 8, 1, acFont16B_ASCII_004C } /* code 004C */
+ ,{ 11, 11, 2, acFont16B_ASCII_004D } /* code 004D */
+ ,{ 9, 9, 2, acFont16B_ASCII_004E } /* code 004E */
+ ,{ 10, 10, 2, acFont16B_ASCII_004F } /* code 004F */
+ ,{ 9, 9, 2, acFont16B_ASCII_0050 } /* code 0050 */
+ ,{ 10, 10, 2, acFont16B_ASCII_0051 } /* code 0051 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0052 } /* code 0052 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0053 } /* code 0053 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0054 } /* code 0054 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0055 } /* code 0055 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0056 } /* code 0056 */
+ ,{ 13, 13, 2, acFont16B_ASCII_0057 } /* code 0057 */
+ ,{ 9, 9, 2, acFont16B_ASCII_0058 } /* code 0058 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0059 } /* code 0059 */
+ ,{ 7, 7, 1, acFont16B_ASCII_005A } /* code 005A */
+ ,{ 4, 4, 1, acFont16B_ASCII_005B } /* code 005B */
+ ,{ 4, 4, 1, acFont16B_ASCII_005C } /* code 005C */
+ ,{ 4, 4, 1, acFont16B_ASCII_005D } /* code 005D */
+ ,{ 8, 8, 1, acFont16B_ASCII_005E } /* code 005E */
+ ,{ 7, 7, 1, acFont16B_ASCII_005F } /* code 005F */
+ ,{ 4, 4, 1, acFont16B_ASCII_0060 } /* code 0060 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0061 } /* code 0061 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0062 } /* code 0062 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0063 } /* code 0063 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0064 } /* code 0064 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0065 } /* code 0065 */
+ ,{ 4, 4, 1, acFont16B_ASCII_0066 } /* code 0066 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0067 } /* code 0067 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0068 } /* code 0068 */
+ ,{ 4, 4, 1, acFont16B_ASCII_0069 } /* code 0069 */
+ ,{ 4, 4, 1, acFont16B_ASCII_006A } /* code 006A */
+ ,{ 7, 7, 1, acFont16B_ASCII_006B } /* code 006B */
+ ,{ 4, 4, 1, acFont16B_ASCII_006C } /* code 006C */
+ ,{ 12, 12, 2, acFont16B_ASCII_006D } /* code 006D */
+ ,{ 8, 8, 1, acFont16B_ASCII_006E } /* code 006E */
+ ,{ 8, 8, 1, acFont16B_ASCII_006F } /* code 006F */
+ ,{ 8, 8, 1, acFont16B_ASCII_0070 } /* code 0070 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0071 } /* code 0071 */
+ ,{ 5, 5, 1, acFont16B_ASCII_0072 } /* code 0072 */
+ ,{ 6, 6, 1, acFont16B_ASCII_0073 } /* code 0073 */
+ ,{ 4, 4, 1, acFont16B_ASCII_0074 } /* code 0074 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0075 } /* code 0075 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0076 } /* code 0076 */
+ ,{ 11, 11, 2, acFont16B_ASCII_0077 } /* code 0077 */
+ ,{ 8, 8, 1, acFont16B_ASCII_0078 } /* code 0078 */
+ ,{ 7, 7, 1, acFont16B_ASCII_0079 } /* code 0079 */
+ ,{ 7, 7, 1, acFont16B_ASCII_007A } /* code 007A */
+ ,{ 5, 5, 1, acFont16B_ASCII_007B } /* code 007B */
+ ,{ 3, 3, 1, acFont16B_ASCII_007C } /* code 007C */
+ ,{ 5, 5, 1, acFont16B_ASCII_007D } /* code 007D */
+ ,{ 8, 8, 1, acFont16B_ASCII_007E } /* code 007E */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16B_ASCII_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font16B_ASCII_CharInfo[0] /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font16B_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,16 /* height of font */
+ ,16 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font16B_ASCII_Prop1}
+ ,13, 7, 10
+};
+
diff --git a/User/lib/lcd/gui/Font/F16_1.c b/User/lib/lcd/gui/Font/F16_1.c
new file mode 100644
index 0000000..755469a
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F16_1.c
@@ -0,0 +1,2453 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F16_1.C
+Purpose : ISO 8859-1 West European Character Set similar to Swiss
+Height : 16
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+/* The character codes 0x80 - 0x9f are not part of the
+ ISO 8859 extensions. If needed them you can include them
+ by using a modifyed copy of this file.
+*/
+
+#if 0
+
+GUI_CONST_STORAGE unsigned char acFont16_1_128[16] = { /* code 128 */
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ __X_____,
+ _X______,
+ XXXXXXX_,
+ _X______,
+ XXXXXXX_,
+ _X______,
+ _X______,
+ __X_____,
+ ___XXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_129[32] = { /* code 129 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_130[16] = { /* code 130 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_131[16] = { /* code 131 */
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ____X___,
+ ____X___,
+ __XXXX__,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ XXX_____};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_132[16] = { /* code 132 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_133[32] = { /* code 133 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _X___X__,_X______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_134[16] = { /* code 134 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_135[16] = { /* code 135 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_136[16] = { /* code 136 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_137[32] = { /* code 137 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX___X_,________,
+ X__X_X__,________,
+ X__X_X__,________,
+ X__X_X__,________,
+ _XX_X___,________,
+ ____X_XX,___XX___,
+ ___X_X__,X_X__X__,
+ ___X_X__,X_X__X__,
+ ___X_X__,X_X__X__,
+ __X___XX,___XX___,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_138[32] = { /* code 138 */
+ ___X__X_,________,
+ ____XX__,________,
+ ________,________,
+ __XXXXX_,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X______,________,
+ __XXX___,________,
+ _____XX_,________,
+ _______X,________,
+ _X_____X,________,
+ _X_____X,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_139[16] = { /* code 139 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __X_____,
+ _X______,
+ _X______,
+ __X_____,
+ ___X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_140[32] = { /* code 140 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX_X,XXXX____,
+ __X___XX,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,XXXX____,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ __X___XX,________,
+ ___XXX_X,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_141[32] = { /* code 141 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_142[16] = { /* code 142 */
+ __X__X__,
+ ___XX___,
+ ________,
+ _XXXXXX_,
+ _____X__,
+ ____X___,
+ ____X___,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_143[32] = { /* code 143 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_144[32] = { /* code 144 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_145[16] = { /* code 145 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_146[16] = { /* code 146 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_147[16] = { /* code 147 */
+ ________,
+ ________,
+ ________,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_148[16] = { /* code 148 */
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_149[16] = { /* code 149 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_150[16] = { /* code 150 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_151[32] = { /* code 151 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_152[16] = { /* code 152 */
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_153[32] = { /* code 153 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX_X,___X____,
+ ___X___X,X_XX____,
+ ___X___X,X_XX____,
+ ___X___X,X_XX____,
+ ___X___X,_X_X____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_154[16] = { /* code 154 */
+ ________,
+ ________,
+ ________,
+ __X__X__,
+ ___XX___,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X______,
+ __XXX___,
+ _____X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_155[16] = { /* code 155 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X_______,
+ _X______,
+ __X_____,
+ __X_____,
+ _X______,
+ X_______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_156[32] = { /* code 156 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXX_XX,XX______,
+ _X___X__,__X_____,
+ _X___X__,__X_____,
+ _X___XXX,XXX_____,
+ _X___X__,________,
+ _X___X__,__X_____,
+ __XXX_XX,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_157[32] = { /* code 157 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_158[16] = { /* code 158 */
+ ________,
+ ________,
+ ________,
+ __X__X__,
+ ___XX___,
+ ________,
+ _XXXXX__,
+ ____X___,
+ ____X___,
+ ___X____,
+ __X_____,
+ __X_____,
+ _XXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_159[32] = { /* code 159 */
+ ________,________,
+ ___X_X__,________,
+ ________,________,
+ _X_____X,________,
+ __X___X_,________,
+ __X___X_,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+#endif
+
+GUI_CONST_STORAGE unsigned char acFont16_1_160[16] = { /* code 160 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_161[16] = { /* code 161 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_162[16] = { /* code 162 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXX___,
+ _X_X_X__,
+ X__X____,
+ X_X_____,
+ X_X__X__,
+ XXX_X___,
+ _XXX____,
+ _X______,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_163[16] = { /* code 163 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X______,
+ _X______,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ _X______,
+ _XXX____,
+ X___XX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_164[16] = { /* code 164 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X_X__,
+ __X_X___,
+ _X___X__,
+ __X_X___,
+ _X_X_X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_165[16] = { /* code 165 */
+ ________,
+ ________,
+ ________,
+ X_____X_,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ XXXXXXX_,
+ ___X____,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_166[16] = { /* code 166 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_167[16] = { /* code 167 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __X__X__,
+ __X_____,
+ __XX____,
+ _X__XX__,
+ _X___XX_,
+ _XX___X_,
+ __XX_XX_,
+ ____X___,
+ _____X__,
+ _X___X__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_168[16] = { /* code 168 */
+ ________,
+ ________,
+ ________,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_169[32] = { /* code 169 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,________,
+ _X______,X_______,
+ X__XXXX_,_X______,
+ X_X____X,_X______,
+ X_X_____,_X______,
+ X_X_____,_X______,
+ X_X____X,_X______,
+ X__XXXX_,_X______,
+ _X______,X_______,
+ __XXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_170[16] = { /* code 170 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X__X____,
+ _XXX____,
+ X__X____,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_171[16] = { /* code 171 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X_X__,
+ __X_X___,
+ _X_X____,
+ _X_X____,
+ __X_X___,
+ ___X_X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_172[16] = { /* code 172 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ ______X_,
+ ______X_,
+ ______X_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_173[16] = { /* code 173 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_174[32] = { /* code 174 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,________,
+ _X______,X_______,
+ X__XXXX_,_X______,
+ X__X___X,_X______,
+ X__X___X,_X______,
+ X__XXXX_,_X______,
+ X__X__X_,_X______,
+ X__X___X,_X______,
+ _X______,X_______,
+ __XXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_175[16] = { /* code 175 */
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_176[16] = { /* code 176 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _X__X___,
+ _X__X___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_177[16] = { /* code 177 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ ___X____,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_178[16] = { /* code 178 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X__X____,
+ __X_____,
+ _X______,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_179[16] = { /* code 179 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X__X____,
+ __X_____,
+ X__X____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_180[16] = { /* code 180 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_181[16] = { /* code 181 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ _X______,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_182[16] = { /* code 182 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ XXXX_X__,
+ XXXX_X__,
+ XXXX_X__,
+ _XXX_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_183[16] = { /* code 183 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_184[16] = { /* code 184 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ ___X____,
+ _XXX____};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_185[16] = { /* code 185 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_186[16] = { /* code 186 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_187[16] = { /* code 187 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ __X_X___,
+ ___X_X__,
+ ___X_X__,
+ __X_X___,
+ _X_X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_188[32] = { /* code 188 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,X_______,
+ _XX_____,X_______,
+ __X____X,________,
+ __X___X_,________,
+ __X___X_,________,
+ _____X__,_X______,
+ ____X___,XX______,
+ ___X___X,_X______,
+ ___X___X,XXX_____,
+ __X_____,_X______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_189[32] = { /* code 189 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,X_______,
+ _XX____X,________,
+ __X____X,________,
+ __X___X_,________,
+ __X__X__,________,
+ _____X__,XX______,
+ ____X__X,__X_____,
+ ___X____,_X______,
+ ___X____,X_______,
+ __X____X,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_190[32] = { /* code 190 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,X_______,
+ X__X____,X_______,
+ __X____X,________,
+ X__X__X_,________,
+ _XXX__X_,________,
+ _____X__,_X______,
+ ____X___,XX______,
+ ___X___X,_X______,
+ ___X___X,XXX_____,
+ __X_____,_X______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_191[16] = { /* code 191 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ________,
+ ___X____,
+ ___X____,
+ ___X____,
+ __X_____,
+ _X______,
+ _X____X_,
+ _X____X_,
+ __XXXX__};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_192[32] = { /* code 192 */
+ ___X____,________,
+ ____X___,________,
+ ________,________,
+ ____X___,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ __X___X_,________,
+ __X___X_,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ X_______,X_______,
+ X_______,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_193[32] = { /* code 193 */
+ _____X__,________,
+ ____X___,________,
+ ________,________,
+ ____X___,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ __X___X_,________,
+ __X___X_,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ X_______,X_______,
+ X_______,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_194[32] = { /* code 194 */
+ ___XX___,________,
+ __X__X__,________,
+ ________,________,
+ ____X___,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ __X___X_,________,
+ __X___X_,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ X_______,X_______,
+ X_______,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_195[32] = { /* code 195 */
+ ____X_X_,________,
+ ___X_X__,________,
+ ________,________,
+ ____X___,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ __X___X_,________,
+ __X___X_,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ X_______,X_______,
+ X_______,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_196[32] = { /* code 196 */
+ ________,________,
+ ___X_X__,________,
+ ________,________,
+ ____X___,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ __X___X_,________,
+ __X___X_,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ X_______,X_______,
+ X_______,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_197[32] = { /* code 197 */
+ ________,________,
+ ___XXX__,________,
+ ___X_X__,________,
+ ___XXX__,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ __X___X_,________,
+ __X___X_,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ X_______,X_______,
+ X_______,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_198[32] = { /* code 198 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XXXX____,
+ ___X__X_,________,
+ ___X__X_,________,
+ ___X__X_,________,
+ __X___XX,XXXX____,
+ __X___X_,________,
+ _XXXXXX_,________,
+ _X____X_,________,
+ X_____X_,________,
+ X_____XX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_199[32] = { /* code 199 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ __X___X_,________,
+ _X_____X,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X_____X,________,
+ __X___X_,________,
+ ___XXX__,________,
+ ____X___,________,
+ _____X__,________,
+ ___XXX__,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_200[32] = { /* code 200 */
+ ___X____,________,
+ ____X___,________,
+ ________,________,
+ _XXXXXXX,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXXX,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_201[32] = { /* code 201 */
+ _____X__,________,
+ ____X___,________,
+ ________,________,
+ _XXXXXXX,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXXX,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_202[32] = { /* code 202 */
+ ____XX__,________,
+ ___X__X_,________,
+ ________,________,
+ _XXXXXXX,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXXX,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_203[32] = { /* code 203 */
+ ________,________,
+ ___X_X__,________,
+ ________,________,
+ _XXXXXXX,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXXX,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_204[16] = { /* code 204 */
+ X_______,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_205[16] = { /* code 205 */
+ __X_____,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_206[16] = { /* code 206 */
+ _XX_____,
+ X_______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_207[16] = { /* code 207 */
+ ________,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_208[32] = { /* code 208 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX__,________,
+ _X____X_,________,
+ _X_____X,________,
+ _X_____X,________,
+ XXXXX__X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X____X_,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_209[32] = { /* code 209 */
+ ____X_X_,________,
+ ___X_X__,________,
+ ________,________,
+ _X_____X,________,
+ _XX____X,________,
+ _X_X___X,________,
+ _X_X___X,________,
+ _X__X__X,________,
+ _X__X__X,________,
+ _X___X_X,________,
+ _X___X_X,________,
+ _X____XX,________,
+ _X_____X,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_210[32] = { /* code 210 */
+ ____X___,________,
+ _____X__,________,
+ ________,________,
+ ___XXXX_,________,
+ __X____X,________,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ __X____X,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_211[32] = { /* code 211 */
+ _____X__,________,
+ ____X___,________,
+ ________,________,
+ ___XXXX_,________,
+ __X____X,________,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ __X____X,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_212[32] = { /* code 212 */
+ ____XX__,________,
+ ___X__X_,________,
+ ________,________,
+ ___XXXX_,________,
+ __X____X,________,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ __X____X,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_213[32] = { /* code 213 */
+ ____X_X_,________,
+ ___X_X__,________,
+ ________,________,
+ ___XXXX_,________,
+ __X____X,________,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ __X____X,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_214[32] = { /* code 214 */
+ ________,________,
+ ____X_X_,________,
+ ________,________,
+ ___XXXX_,________,
+ __X____X,________,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ __X____X,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_215[16] = { /* code 215 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X___X__,
+ __XXX___,
+ ___X____,
+ __XXX___,
+ _X___X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_216[32] = { /* code 216 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,X_______,
+ __X____X,________,
+ _X____X_,X_______,
+ _X____X_,X_______,
+ _X___X__,X_______,
+ _X__X___,X_______,
+ _X__X___,X_______,
+ _X_X____,X_______,
+ __X____X,________,
+ _X_XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_217[32] = { /* code 217 */
+ ___X____,________,
+ ____X___,________,
+ ________,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ __X___X_,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_218[32] = { /* code 218 */
+ _____X__,________,
+ ____X___,________,
+ ________,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ __X___X_,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_219[32] = { /* code 219 */
+ ____XX__,________,
+ ___X__X_,________,
+ ________,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ __X___X_,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_220[32] = { /* code 220 */
+ ________,________,
+ ___X_X__,________,
+ ________,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ __X___X_,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_221[32] = { /* code 221 */
+ _____X__,________,
+ ____X___,________,
+ ________,________,
+ _X_____X,________,
+ __X___X_,________,
+ __X___X_,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_222[32] = { /* code 222 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXX_,________,
+ _X____XX,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X____XX,________,
+ _XXXXXX_,________,
+ _X______,________,
+ _X______,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_223[32] = { /* code 223 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ __X___X_,________,
+ _X____X_,________,
+ _X___X__,________,
+ _X___X__,________,
+ _X___X__,________,
+ _X____X_,________,
+ _X_____X,________,
+ _X_X___X,________,
+ _X__XXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_224[16] = { /* code 224 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ____X___,
+ ________,
+ __XXX___,
+ _X___X__,
+ _____X__,
+ __XXXX__,
+ _X___X__,
+ _X__XX__,
+ __XX_X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_225[16] = { /* code 225 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X____,
+ ________,
+ __XXX___,
+ _X___X__,
+ _____X__,
+ __XXXX__,
+ _X___X__,
+ _X__XX__,
+ __XX_X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_226[16] = { /* code 226 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __X__X__,
+ ________,
+ __XXX___,
+ _X___X__,
+ _____X__,
+ __XXXX__,
+ _X___X__,
+ _X__XX__,
+ __XX_X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_227[16] = { /* code 227 */
+ ________,
+ ________,
+ ________,
+ ___X_X__,
+ __X_X___,
+ ________,
+ __XXX___,
+ _X___X__,
+ _____X__,
+ __XXXX__,
+ _X___X__,
+ _X__XX__,
+ __XX_X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_228[16] = { /* code 228 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_X___,
+ ________,
+ __XXX___,
+ _X___X__,
+ _____X__,
+ __XXXX__,
+ _X___X__,
+ _X__XX__,
+ __XX_X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_229[16] = { /* code 229 */
+ ________,
+ ________,
+ __XXX___,
+ __X_X___,
+ __XXX___,
+ ________,
+ __XXX___,
+ _X___X__,
+ _____X__,
+ __XXXX__,
+ _X___X__,
+ _X__XX__,
+ __XX_X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_230[32] = { /* code 230 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXX_X,XX______,
+ _X___XX_,__X_____,
+ ___XXX__,__X_____,
+ __X__XXX,XXX_____,
+ _X___X__,________,
+ _X___XX_,__X_____,
+ __XXX__X,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_231[16] = { /* code 231 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X______,
+ _X______,
+ _X______,
+ _X___X__,
+ __XXX___,
+ ___X____,
+ ____X___,
+ __XXX___};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_232[16] = { /* code 232 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ _X______,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_233[16] = { /* code 233 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X____,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ _X______,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_234[16] = { /* code 234 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __X__X__,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ _X______,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_235[16] = { /* code 235 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_X___,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ _X______,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_236[16] = { /* code 236 */
+ ________,
+ ________,
+ ________,
+ X_______,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_237[16] = { /* code 237 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _X______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_238[16] = { /* code 238 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ X_______,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_239[16] = { /* code 239 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X_X_____,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_240[16] = { /* code 240 */
+ ________,
+ ________,
+ ________,
+ __X_X___,
+ __XX____,
+ _X__X___,
+ __XXX___,
+ _X__XX__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _X__X___,
+ __XX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_241[16] = { /* code 241 */
+ ________,
+ ________,
+ ________,
+ ___X_X__,
+ __X_X___,
+ ________,
+ _X_XX___,
+ _XX__X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_242[16] = { /* code 242 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_243[16] = { /* code 243 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X____,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_244[16] = { /* code 244 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __X__X__,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_245[16] = { /* code 245 */
+ ________,
+ ________,
+ ________,
+ ___X_X__,
+ __X_X___,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_246[16] = { /* code 246 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_X___,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_247[16] = { /* code 247 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ________,
+ XXXXXXX_,
+ ________,
+ ___X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_248[16] = { /* code 248 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX_X__,
+ _X__X___,
+ _X__XX__,
+ _X_X_X__,
+ _XX__X__,
+ __X__X__,
+ _X_XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_249[16] = { /* code 249 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ ___X____,
+ ________,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_250[16] = { /* code 250 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X____,
+ ________,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_251[16] = { /* code 251 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __X__X__,
+ ________,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_252[16] = { /* code 252 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_X___,
+ ________,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_253[16] = { /* code 253 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X____,
+ ________,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_254[16] = { /* code 254 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _XXX____,
+ _X__X___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X__X___,
+ _XXX____,
+ _X______,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont16_1_255[16] = { /* code 255 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_X___,
+ ________,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ _XX_____};
+
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_CharInfo_Font16_1[96] = {
+ { 4, 4, 1, acFont16_1_160 } /* code 160 */
+ ,{ 3, 3, 1, acFont16_1_161 } /* code 161 */
+ ,{ 7, 7, 1, acFont16_1_162 } /* code 162 */
+ ,{ 7, 7, 1, acFont16_1_163 } /* code 163 */
+ ,{ 7, 7, 1, acFont16_1_164 } /* code 164 */
+ ,{ 7, 7, 1, acFont16_1_165 } /* code 165 */
+ ,{ 3, 3, 1, acFont16_1_166 } /* code 166 */
+ ,{ 7, 7, 1, acFont16_1_167 } /* code 167 */
+ ,{ 4, 4, 1, acFont16_1_168 } /* code 168 */
+ ,{ 10, 10, 2, acFont16_1_169 } /* code 169 */
+ ,{ 4, 4, 1, acFont16_1_170 } /* code 170 */
+ ,{ 7, 7, 1, acFont16_1_171 } /* code 171 */
+ ,{ 8, 8, 1, acFont16_1_172 } /* code 172 */
+ ,{ 4, 4, 1, acFont16_1_173 } /* code 173 */
+ ,{ 10, 10, 2, acFont16_1_174 } /* code 174 */
+ ,{ 7, 7, 1, acFont16_1_175 } /* code 175 */
+ ,{ 5, 5, 1, acFont16_1_176 } /* code 176 */
+ ,{ 7, 7, 1, acFont16_1_177 } /* code 177 */
+ ,{ 4, 4, 1, acFont16_1_178 } /* code 178 */
+ ,{ 4, 4, 1, acFont16_1_179 } /* code 179 */
+ ,{ 4, 4, 1, acFont16_1_180 } /* code 180 */
+ ,{ 7, 7, 1, acFont16_1_181 } /* code 181 */
+ ,{ 7, 7, 1, acFont16_1_182 } /* code 182 */
+ ,{ 4, 4, 1, acFont16_1_183 } /* code 183 */
+ ,{ 4, 4, 1, acFont16_1_184 } /* code 184 */
+ ,{ 4, 4, 1, acFont16_1_185 } /* code 185 */
+ ,{ 5, 5, 1, acFont16_1_186 } /* code 186 */
+ ,{ 7, 7, 1, acFont16_1_187 } /* code 187 */
+ ,{ 11, 11, 2, acFont16_1_188 } /* code 188 */
+ ,{ 11, 11, 2, acFont16_1_189 } /* code 189 */
+ ,{ 11, 11, 2, acFont16_1_190 } /* code 190 */
+ ,{ 8, 8, 1, acFont16_1_191 } /* code 191 */
+ ,{ 9, 9, 2, acFont16_1_192 } /* code 192 */
+ ,{ 9, 9, 2, acFont16_1_193 } /* code 193 */
+ ,{ 9, 9, 2, acFont16_1_194 } /* code 194 */
+ ,{ 9, 9, 2, acFont16_1_195 } /* code 195 */
+ ,{ 9, 9, 2, acFont16_1_196 } /* code 196 */
+ ,{ 9, 9, 2, acFont16_1_197 } /* code 197 */
+ ,{ 13, 13, 2, acFont16_1_198 } /* code 198 */
+ ,{ 9, 9, 2, acFont16_1_199 } /* code 199 */
+ ,{ 9, 9, 2, acFont16_1_200 } /* code 200 */
+ ,{ 9, 9, 2, acFont16_1_201 } /* code 201 */
+ ,{ 9, 9, 2, acFont16_1_202 } /* code 202 */
+ ,{ 9, 9, 2, acFont16_1_203 } /* code 203 */
+ ,{ 3, 3, 1, acFont16_1_204 } /* code 204 */
+ ,{ 3, 3, 1, acFont16_1_205 } /* code 205 */
+ ,{ 3, 3, 1, acFont16_1_206 } /* code 206 */
+ ,{ 3, 3, 1, acFont16_1_207 } /* code 207 */
+ ,{ 9, 9, 2, acFont16_1_208 } /* code 208 */
+ ,{ 9, 9, 2, acFont16_1_209 } /* code 209 */
+ ,{ 10, 10, 2, acFont16_1_210 } /* code 210 */
+ ,{ 10, 10, 2, acFont16_1_211 } /* code 211 */
+ ,{ 10, 10, 2, acFont16_1_212 } /* code 212 */
+ ,{ 10, 10, 2, acFont16_1_213 } /* code 213 */
+ ,{ 10, 10, 2, acFont16_1_214 } /* code 214 */
+ ,{ 8, 8, 1, acFont16_1_215 } /* code 215 */
+ ,{ 10, 10, 2, acFont16_1_216 } /* code 216 */
+ ,{ 9, 9, 2, acFont16_1_217 } /* code 217 */
+ ,{ 9, 9, 2, acFont16_1_218 } /* code 218 */
+ ,{ 9, 9, 2, acFont16_1_219 } /* code 219 */
+ ,{ 9, 9, 2, acFont16_1_220 } /* code 220 */
+ ,{ 9, 9, 2, acFont16_1_221 } /* code 221 */
+ ,{ 9, 9, 2, acFont16_1_222 } /* code 222 */
+ ,{ 9, 9, 2, acFont16_1_223 } /* code 223 */
+ ,{ 7, 7, 1, acFont16_1_224 } /* code 224 */
+ ,{ 7, 7, 1, acFont16_1_225 } /* code 225 */
+ ,{ 7, 7, 1, acFont16_1_226 } /* code 226 */
+ ,{ 7, 7, 1, acFont16_1_227 } /* code 227 */
+ ,{ 7, 7, 1, acFont16_1_228 } /* code 228 */
+ ,{ 7, 7, 1, acFont16_1_229 } /* code 229 */
+ ,{ 12, 12, 2, acFont16_1_230 } /* code 230 */
+ ,{ 7, 7, 1, acFont16_1_231 } /* code 231 */
+ ,{ 7, 7, 1, acFont16_1_232 } /* code 232 */
+ ,{ 7, 7, 1, acFont16_1_233 } /* code 233 */
+ ,{ 7, 7, 1, acFont16_1_234 } /* code 234 */
+ ,{ 7, 7, 1, acFont16_1_235 } /* code 235 */
+ ,{ 3, 3, 1, acFont16_1_236 } /* code 236 */
+ ,{ 3, 3, 1, acFont16_1_237 } /* code 237 */
+ ,{ 3, 3, 1, acFont16_1_238 } /* code 238 */
+ ,{ 3, 3, 1, acFont16_1_239 } /* code 239 */
+ ,{ 7, 7, 1, acFont16_1_240 } /* code 240 */
+ ,{ 7, 7, 1, acFont16_1_241 } /* code 241 */
+ ,{ 7, 7, 1, acFont16_1_242 } /* code 242 */
+ ,{ 7, 7, 1, acFont16_1_243 } /* code 243 */
+ ,{ 7, 7, 1, acFont16_1_244 } /* code 244 */
+ ,{ 7, 7, 1, acFont16_1_245 } /* code 245 */
+ ,{ 7, 7, 1, acFont16_1_246 } /* code 246 */
+ ,{ 7, 7, 1, acFont16_1_247 } /* code 247 */
+ ,{ 7, 7, 1, acFont16_1_248 } /* code 248 */
+ ,{ 7, 7, 1, acFont16_1_249 } /* code 249 */
+ ,{ 7, 7, 1, acFont16_1_250 } /* code 250 */
+ ,{ 7, 7, 1, acFont16_1_251 } /* code 251 */
+ ,{ 7, 7, 1, acFont16_1_252 } /* code 252 */
+ ,{ 7, 7, 1, acFont16_1_253 } /* code 253 */
+ ,{ 7, 7, 1, acFont16_1_254 } /* code 254 */
+ ,{ 7, 7, 1, acFont16_1_255 } /* code 255 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16_1_FontProp1 = {
+ 160 /* first character */
+ ,255 /* last character */
+ ,&GUI_CharInfo_Font16_1[0] /* address of first character */
+ ,&GUI_Font16ASCIIProp1 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font16_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,16 /* height of font */
+ ,16 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font16_1_FontProp1}
+ , 13, 7, 10
+};
+
diff --git a/User/lib/lcd/gui/Font/F16_1HK.c b/User/lib/lcd/gui/Font/F16_1HK.c
new file mode 100644
index 0000000..6f6fc3a
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F16_1HK.c
@@ -0,0 +1,47 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F16_1HK.C
+Purpose : ASCII, West European, Hiragana & Katakana
+Height : 16
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16_1HK_Prop2 = {
+ 0x30A1 /* first character */
+ ,0x30F6 /* last character */
+ ,&GUI_Font16_HK_CharInfo[83] /* address of first character */
+ ,(const GUI_FONT_PROP GUI_UNI_PTR *)&GUI_Font16_1_FontProp1 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16_1HK_Prop1 = {
+ 0x3041 /* first character */
+ ,0x3093 /* last character */
+ ,&GUI_Font16_HK_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP GUI_UNI_PTR *)&GUI_Font16_1HK_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font16_1HK = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,16 /* height of font */
+ ,16 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{(const GUI_FONT_PROP GUI_UNI_PTR *)&GUI_Font16_1HK_Prop1}
+ , 13, 7, 10
+};
+
diff --git a/User/lib/lcd/gui/Font/F16_ASCII.c b/User/lib/lcd/gui/Font/F16_ASCII.c
new file mode 100644
index 0000000..cb3d460
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F16_ASCII.c
@@ -0,0 +1,1849 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F16_ASCII.C
+Purpose : ASCII Character Set similar to Swiss
+Height : 16
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_32[16] = { /* code 32 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_33[16] = { /* code 33 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_34[16] = { /* code 34 */
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_35[16] = { /* code 35 */
+ ________,
+ ________,
+ ________,
+ ___X__X_,
+ ___X__X_,
+ __X___X_,
+ XXXXXXX_,
+ __X__X__,
+ __X__X__,
+ XXXXXXX_,
+ _X__X___,
+ _X__X___,
+ _X__X___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_36[16] = { /* code 36 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X_X_X__,
+ _X_X____,
+ _X_X____,
+ _XXX____,
+ ___XXX__,
+ ___X_X__,
+ _X_X_X__,
+ _X_X_X__,
+ __XXX___,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_37[32] = { /* code 37 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,X_______,
+ _X__X__X,________,
+ _X__X__X,________,
+ _X__X_X_,________,
+ __XX__X_,________,
+ _____X__,XX______,
+ _____X_X,__X_____,
+ ____X__X,__X_____,
+ ____X__X,__X_____,
+ ___X____,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_38[32] = { /* code 38 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ __X__X__,________,
+ __X__X__,________,
+ __X__X__,________,
+ ___XX___,________,
+ __XX____,________,
+ _X__X__X,________,
+ _X___X_X,________,
+ _X___XX_,________,
+ __XXX__X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_39[16] = { /* code 39 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_40[16] = { /* code 40 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ ___X____};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_41[16] = { /* code 41 */
+ ________,
+ ________,
+ ________,
+ X_______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_42[16] = { /* code 42 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ _X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_43[16] = { /* code 43 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ _XXXXXXX,
+ ____X___,
+ ____X___,
+ ____X___,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_44[16] = { /* code 44 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_45[16] = { /* code 45 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_46[16] = { /* code 46 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_47[16] = { /* code 47 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ X_______,
+ X_______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_48[16] = { /* code 48 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_49[16] = { /* code 49 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __XX____,
+ _X_X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_50[16] = { /* code 50 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ XXXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_51[16] = { /* code 51 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ _____X__,
+ _____X__,
+ __XXX___,
+ _____X__,
+ _____X__,
+ _____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_52[16] = { /* code 52 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___XX___,
+ ___XX___,
+ __X_X___,
+ __X_X___,
+ _X__X___,
+ _X__X___,
+ XXXXXX__,
+ ____X___,
+ ____X___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_53[16] = { /* code 53 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _X______,
+ _X______,
+ X_______,
+ XXXXX___,
+ X____X__,
+ _____X__,
+ _____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_54[16] = { /* code 54 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X_______,
+ X_______,
+ X_XXX___,
+ XX___X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_55[16] = { /* code 55 */
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ ____X___,
+ ____X___,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_56[16] = { /* code 56 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X____X__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_57[16] = { /* code 57 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ X____X__,
+ X___XX__,
+ _XXX_X__,
+ _____X__,
+ _____X__,
+ X___X___,
+ _XXX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_58[16] = { /* code 58 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_59[16] = { /* code 59 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_60[16] = { /* code 60 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______X_,
+ ____XX__,
+ __XX____,
+ _X______,
+ __XX____,
+ ____XX__,
+ ______X_,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_61[16] = { /* code 61 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_62[16] = { /* code 62 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ __XX____,
+ ____XX__,
+ ______X_,
+ ____XX__,
+ __XX____,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_63[16] = { /* code 63 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _____X__,
+ ____X___,
+ ___X____,
+ __X_____,
+ __X_____,
+ ________,
+ __X_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_64[32] = { /* code 64 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XX____,_X______,
+ _X______,__X_____,
+ _X__XXX_,X__X____,
+ X__X___X,X__X____,
+ X_X_____,X__X____,
+ X_X____X,___X____,
+ X_X____X,__X_____,
+ X_X___XX,__X_____,
+ X__XXX_X,XX______,
+ _X______,___X____,
+ __X_____,_XX_____,
+ ___XXXXX,X_______};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_65[32] = { /* code 65 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ __X___X_,________,
+ __X___X_,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ X_______,X_______,
+ X_______,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_66[32] = { /* code 66 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXX_,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _XXXXXX_,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _XXXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_67[32] = { /* code 67 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ __X___X_,________,
+ _X_____X,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X_____X,________,
+ __X___X_,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_68[32] = { /* code 68 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX__,________,
+ _X____X_,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X____X_,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_69[32] = { /* code 69 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXXX,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_70[16] = { /* code 70 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _X______,
+ _X______,
+ _X______,
+ _XXXXX__,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_71[32] = { /* code 71 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ __X____X,________,
+ _X______,X_______,
+ _X______,________,
+ _X______,________,
+ _X___XXX,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ __X____X,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_72[32] = { /* code 72 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _XXXXXXX,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_73[16] = { /* code 73 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_74[16] = { /* code 74 */
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_75[32] = { /* code 75 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X______,X_______,
+ _X_____X,________,
+ _X____X_,________,
+ _X___X__,________,
+ _X__X___,________,
+ _X_XX___,________,
+ _XX__X__,________,
+ _X____X_,________,
+ _X_____X,________,
+ _X______,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_76[16] = { /* code 76 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_77[32] = { /* code 77 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X______,_X______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _X_X___X,_X______,
+ _X_X___X,_X______,
+ _X__X_X_,_X______,
+ _X__X_X_,_X______,
+ _X__X_X_,_X______,
+ _X___X__,_X______,
+ _X___X__,_X______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_78[32] = { /* code 78 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X_____X,________,
+ _XX____X,________,
+ _X_X___X,________,
+ _X_X___X,________,
+ _X__X__X,________,
+ _X__X__X,________,
+ _X___X_X,________,
+ _X___X_X,________,
+ _X____XX,________,
+ _X_____X,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_79[32] = { /* code 79 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ __X____X,________,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ __X____X,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_80[32] = { /* code 80 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXX_,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _XXXXXX_,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_81[32] = { /* code 81 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ __X____X,________,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X______,X_______,
+ _X___XX_,X_______,
+ __X____X,________,
+ ___XXXX_,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_82[32] = { /* code 82 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXX_,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _XXXXXX_,________,
+ _X___X__,________,
+ _X____X_,________,
+ _X____X_,________,
+ _X_____X,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_83[32] = { /* code 83 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X______,________,
+ __XXX___,________,
+ _____XX_,________,
+ _______X,________,
+ _X_____X,________,
+ _X_____X,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_84[16] = { /* code 84 */
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_85[32] = { /* code 85 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ _X_____X,________,
+ __X___X_,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_86[32] = { /* code 86 */
+ ________,________,
+ ________,________,
+ ________,________,
+ X_______,X_______,
+ X_______,X_______,
+ _X_____X,________,
+ _X_____X,________,
+ __X___X_,________,
+ __X___X_,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ____X___,________,
+ ____X___,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_87[32] = { /* code 87 */
+ ________,________,
+ ________,________,
+ ________,________,
+ X_____X_,____X___,
+ X____X_X,____X___,
+ _X___X_X,___X____,
+ _X___X_X,___X____,
+ _X___X_X,___X____,
+ __X_X___,X_X_____,
+ __X_X___,X_X_____,
+ __X_X___,X_X_____,
+ ___X____,_X______,
+ ___X____,_X______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_88[16] = { /* code 88 */
+ ________,
+ ________,
+ ________,
+ X_____X_,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ __X_X___,
+ _X___X__,
+ _X___X__,
+ X_____X_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_89[32] = { /* code 89 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X_____X,________,
+ __X___X_,________,
+ __X___X_,________,
+ ___X_X__,________,
+ ___X_X__,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_90[16] = { /* code 90 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _____X__,
+ ____X___,
+ ____X___,
+ ___X____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_91[16] = { /* code 91 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_92[16] = { /* code 92 */
+ ________,
+ ________,
+ ________,
+ X_______,
+ X_______,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ ___X____,
+ ___X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_93[16] = { /* code 93 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_94[16] = { /* code 94 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ X___X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_95[16] = { /* code 95 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_96[16] = { /* code 96 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_97[16] = { /* code 97 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _____X__,
+ __XXXX__,
+ _X___X__,
+ _X__XX__,
+ __XX_X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_98[16] = { /* code 98 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X_XX___,
+ _XX__X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_99[16] = { /* code 99 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X______,
+ _X______,
+ _X______,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_100[16] = { /* code 100 */
+ ________,
+ ________,
+ ________,
+ _____X__,
+ _____X__,
+ _____X__,
+ __XX_X__,
+ _X__XX__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_101[16] = { /* code 101 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ _X______,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_102[16] = { /* code 102 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _X______,
+ _X______,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_103[16] = { /* code 103 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX_X__,
+ _X__XX__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X__XX__,
+ __XX_X__,
+ _____X__,
+ _X___X__,
+ __XXX___};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_104[16] = { /* code 104 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X_XX___,
+ _XX__X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_105[16] = { /* code 105 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_106[16] = { /* code 106 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ X_______};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_107[16] = { /* code 107 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X___X__,
+ _X__X___,
+ _X_X____,
+ _XXX____,
+ _X__X___,
+ _X__X___,
+ _X___X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_108[16] = { /* code 108 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_109[32] = { /* code 109 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _X_XX__X,X_______,
+ _XX__XX_,_X______,
+ _X___X__,_X______,
+ _X___X__,_X______,
+ _X___X__,_X______,
+ _X___X__,_X______,
+ _X___X__,_X______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_110[16] = { /* code 110 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_XX___,
+ _XX__X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_111[16] = { /* code 111 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_112[16] = { /* code 112 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_XX___,
+ _XX__X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _XX__X__,
+ _X_XX___,
+ _X______,
+ _X______,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_113[16] = { /* code 113 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX_X__,
+ _X__XX__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X__XX__,
+ __XX_X__,
+ _____X__,
+ _____X__,
+ _____X__};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_114[16] = { /* code 114 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_X____,
+ _XX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_115[16] = { /* code 115 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _X___X__,
+ _X______,
+ __XXX___,
+ _____X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_116[16] = { /* code 116 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_117[16] = { /* code 117 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_118[16] = { /* code 118 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ _X_X____,
+ _X_X____,
+ _X_X____,
+ __X_____,
+ __X_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_119[32] = { /* code 119 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ X___X___,X_______,
+ X___X___,X_______,
+ _X_X_X_X,________,
+ _X_X_X_X,________,
+ _X_X_X_X,________,
+ __X___X_,________,
+ __X___X_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_120[16] = { /* code 120 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ ___X____,
+ __X_X___,
+ __X_X___,
+ _X___X__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_121[16] = { /* code 121 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ __X_X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_122[16] = { /* code 122 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ ____X___,
+ ____X___,
+ ___X____,
+ __X_____,
+ __X_____,
+ _XXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_123[16] = { /* code 123 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ X_______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ __X_____};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_124[16] = { /* code 124 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_125[16] = { /* code 125 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ___X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acFont16ASCII_126[16] = { /* code 126 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX__X_,
+ X__XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_CharInfo_Font16ASCII[96] = {
+ { 4, 4, 1, acFont16ASCII_32 } /* code 32 */
+ ,{ 3, 3, 1, acFont16ASCII_33 } /* code 33 */
+ ,{ 5, 5, 1, acFont16ASCII_34 } /* code 34 */
+ ,{ 7, 7, 1, acFont16ASCII_35 } /* code 35 */
+ ,{ 7, 7, 1, acFont16ASCII_36 } /* code 36 */
+ ,{ 12, 12, 2, acFont16ASCII_37 } /* code 37 */
+ ,{ 9, 9, 2, acFont16ASCII_38 } /* code 38 */
+ ,{ 2, 2, 1, acFont16ASCII_39 } /* code 39 */
+ ,{ 4, 4, 1, acFont16ASCII_40 } /* code 40 */
+ ,{ 4, 4, 1, acFont16ASCII_41 } /* code 41 */
+ ,{ 5, 5, 1, acFont16ASCII_42 } /* code 42 */
+ ,{ 8, 8, 1, acFont16ASCII_43 } /* code 43 */
+ ,{ 4, 4, 1, acFont16ASCII_44 } /* code 44 */
+ ,{ 4, 4, 1, acFont16ASCII_45 } /* code 45 */
+ ,{ 4, 4, 1, acFont16ASCII_46 } /* code 46 */
+ ,{ 4, 4, 1, acFont16ASCII_47 } /* code 47 */
+ ,{ 7, 7, 1, acFont16ASCII_48 } /* code 48 */
+ ,{ 7, 7, 1, acFont16ASCII_49 } /* code 49 */
+ ,{ 7, 7, 1, acFont16ASCII_50 } /* code 50 */
+ ,{ 7, 7, 1, acFont16ASCII_51 } /* code 51 */
+ ,{ 7, 7, 1, acFont16ASCII_52 } /* code 52 */
+ ,{ 7, 7, 1, acFont16ASCII_53 } /* code 53 */
+ ,{ 7, 7, 1, acFont16ASCII_54 } /* code 54 */
+ ,{ 7, 7, 1, acFont16ASCII_55 } /* code 55 */
+ ,{ 7, 7, 1, acFont16ASCII_56 } /* code 56 */
+ ,{ 7, 7, 1, acFont16ASCII_57 } /* code 57 */
+ ,{ 4, 4, 1, acFont16ASCII_58 } /* code 58 */
+ ,{ 4, 4, 1, acFont16ASCII_59 } /* code 59 */
+ ,{ 8, 8, 1, acFont16ASCII_60 } /* code 60 */
+ ,{ 8, 8, 1, acFont16ASCII_61 } /* code 61 */
+ ,{ 8, 8, 1, acFont16ASCII_62 } /* code 62 */
+ ,{ 7, 7, 1, acFont16ASCII_63 } /* code 63 */
+ ,{ 13, 13, 2, acFont16ASCII_64 } /* code 64 */
+ ,{ 9, 9, 2, acFont16ASCII_65 } /* code 65 */
+ ,{ 9, 9, 2, acFont16ASCII_66 } /* code 66 */
+ ,{ 9, 9, 2, acFont16ASCII_67 } /* code 67 */
+ ,{ 9, 9, 2, acFont16ASCII_68 } /* code 68 */
+ ,{ 9, 9, 2, acFont16ASCII_69 } /* code 69 */
+ ,{ 8, 8, 1, acFont16ASCII_70 } /* code 70 */
+ ,{ 10, 10, 2, acFont16ASCII_71 } /* code 71 */
+ ,{ 9, 9, 2, acFont16ASCII_72 } /* code 72 */
+ ,{ 3, 3, 1, acFont16ASCII_73 } /* code 73 */
+ ,{ 6, 6, 1, acFont16ASCII_74 } /* code 74 */
+ ,{ 9, 9, 2, acFont16ASCII_75 } /* code 75 */
+ ,{ 7, 7, 1, acFont16ASCII_76 } /* code 76 */
+ ,{ 11, 11, 2, acFont16ASCII_77 } /* code 77 */
+ ,{ 9, 9, 2, acFont16ASCII_78 } /* code 78 */
+ ,{ 10, 10, 2, acFont16ASCII_79 } /* code 79 */
+ ,{ 9, 9, 2, acFont16ASCII_80 } /* code 80 */
+ ,{ 10, 10, 2, acFont16ASCII_81 } /* code 81 */
+ ,{ 9, 9, 2, acFont16ASCII_82 } /* code 82 */
+ ,{ 9, 9, 2, acFont16ASCII_83 } /* code 83 */
+ ,{ 7, 7, 1, acFont16ASCII_84 } /* code 84 */
+ ,{ 9, 9, 2, acFont16ASCII_85 } /* code 85 */
+ ,{ 9, 9, 2, acFont16ASCII_86 } /* code 86 */
+ ,{ 13, 13, 2, acFont16ASCII_87 } /* code 87 */
+ ,{ 7, 7, 1, acFont16ASCII_88 } /* code 88 */
+ ,{ 9, 9, 2, acFont16ASCII_89 } /* code 89 */
+ ,{ 7, 7, 1, acFont16ASCII_90 } /* code 90 */
+ ,{ 4, 4, 1, acFont16ASCII_91 } /* code 91 */
+ ,{ 4, 4, 1, acFont16ASCII_92 } /* code 92 */
+ ,{ 4, 4, 1, acFont16ASCII_93 } /* code 93 */
+ ,{ 5, 5, 1, acFont16ASCII_94 } /* code 94 */
+ ,{ 7, 7, 1, acFont16ASCII_95 } /* code 95 */
+ ,{ 4, 4, 1, acFont16ASCII_96 } /* code 96 */
+ ,{ 7, 7, 1, acFont16ASCII_97 } /* code 97 */
+ ,{ 7, 7, 1, acFont16ASCII_98 } /* code 98 */
+ ,{ 7, 7, 1, acFont16ASCII_99 } /* code 99 */
+ ,{ 7, 7, 1, acFont16ASCII_100 } /* code 100 */
+ ,{ 7, 7, 1, acFont16ASCII_101 } /* code 101 */
+ ,{ 3, 3, 1, acFont16ASCII_102 } /* code 102 */
+ ,{ 7, 7, 1, acFont16ASCII_103 } /* code 103 */
+ ,{ 7, 7, 1, acFont16ASCII_104 } /* code 104 */
+ ,{ 3, 3, 1, acFont16ASCII_105 } /* code 105 */
+ ,{ 3, 3, 1, acFont16ASCII_106 } /* code 106 */
+ ,{ 7, 7, 1, acFont16ASCII_107 } /* code 107 */
+ ,{ 3, 3, 1, acFont16ASCII_108 } /* code 108 */
+ ,{ 11, 11, 2, acFont16ASCII_109 } /* code 109 */
+ ,{ 7, 7, 1, acFont16ASCII_110 } /* code 110 */
+ ,{ 7, 7, 1, acFont16ASCII_111 } /* code 111 */
+ ,{ 7, 7, 1, acFont16ASCII_112 } /* code 112 */
+ ,{ 7, 7, 1, acFont16ASCII_113 } /* code 113 */
+ ,{ 4, 4, 1, acFont16ASCII_114 } /* code 114 */
+ ,{ 7, 7, 1, acFont16ASCII_115 } /* code 115 */
+ ,{ 4, 4, 1, acFont16ASCII_116 } /* code 116 */
+ ,{ 7, 7, 1, acFont16ASCII_117 } /* code 117 */
+ ,{ 5, 5, 1, acFont16ASCII_118 } /* code 118 */
+ ,{ 9, 9, 2, acFont16ASCII_119 } /* code 119 */
+ ,{ 7, 7, 1, acFont16ASCII_120 } /* code 120 */
+ ,{ 7, 7, 1, acFont16ASCII_121 } /* code 121 */
+ ,{ 7, 7, 1, acFont16ASCII_122 } /* code 122 */
+ ,{ 4, 4, 1, acFont16ASCII_123 } /* code 123 */
+ ,{ 3, 3, 1, acFont16ASCII_124 } /* code 124 */
+ ,{ 4, 4, 1, acFont16ASCII_125 } /* code 125 */
+ ,{ 8, 8, 1, acFont16ASCII_126 } /* code 126 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16ASCIIProp1 = {
+ 32 /* first character */
+ ,126 /* last character */
+ ,&GUI_CharInfo_Font16ASCII[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font16_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,16 /* height of font */
+ ,16 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font16ASCIIProp1}
+ , 13, 7, 10
+};
+
diff --git a/User/lib/lcd/gui/Font/F16_HK.c b/User/lib/lcd/gui/Font/F16_HK.c
new file mode 100644
index 0000000..9f0b98f
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F16_HK.c
@@ -0,0 +1,3266 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F16_HK.C
+Purpose : Hiragana & Katakana characters
+Height : 16
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "stdio.h"
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3041[32] = { /* code 3041 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______X_,________,
+ _______X,________,
+ _______X,_XX_____,
+ ____XXXX,X_______,
+ _______X,________,
+ ______XX,XXX_____,
+ _____X_X,___X____,
+ ____X__X,_X__X___,
+ ____X__X,X___X___,
+ _____XXX,____X___,
+ _______X,___X____,
+ ________,_XX_____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3042[32] = { /* code 3042 */
+ ________,________,
+ ______X_,________,
+ _______X,________,
+ _______X,__X_____,
+ ____XXXX,XX______,
+ _______X,________,
+ _______X,XXX_____,
+ _____XXX,___X____,
+ ____X__X,____X___,
+ ___X___X,_X___X__,
+ __X____X,X____X__,
+ __X___XX,_____X__,
+ ___XXX__,X____X__,
+ ________,____X___,
+ ________,_XXX____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3043[32] = { /* code 3043 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X____,________,
+ ____X___,________,
+ ____X___,__X_____,
+ ____X___,___X____,
+ ____X___,____X___,
+ ____X___,____X___,
+ ____X__X,________,
+ _____XX_,________,
+ ______X_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3044[32] = { /* code 3044 */
+ ________,________,
+ ________,________,
+ __X_____,________,
+ ___X____,________,
+ ___X____,________,
+ ___X____,________,
+ ___X____,__X_____,
+ ___X____,___X____,
+ ___X____,____X___,
+ ___X____,____X___,
+ ___X___X,____X___,
+ ____XXX_,________,
+ _____X__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3045[32] = { /* code 3045 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______X_,________,
+ _______X,XX______,
+ ________,________,
+ ________,________,
+ _______X,XX______,
+ _____XX_,__X_____,
+ ________,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3046[32] = { /* code 3046 */
+ ________,________,
+ ______X_,________,
+ _______X,XX______,
+ ________,________,
+ ________,________,
+ _______X,XX______,
+ ____XXX_,__X_____,
+ ________,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ ______XX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3047[32] = { /* code 3047 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,________,
+ ________,XX______,
+ ________,_X______,
+ ________,________,
+ _____X__,XXX_____,
+ ______XX,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______XX,X_______,
+ _____X__,_XXXX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3048[32] = { /* code 3048 */
+ ________,________,
+ _______X,________,
+ ________,XX______,
+ ________,_X______,
+ ________,________,
+ ________,__X_____,
+ ____X_XX,XXX_____,
+ _____X__,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ____X_XX,________,
+ ___X____,X_______,
+ ________,_XXXX___,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3049[32] = { /* code 3049 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____X__,________,
+ ______X_,________,
+ ______XX,X__X____,
+ ___X_XX_,____X___,
+ ____X_X_,________,
+ ______XX,XXX_____,
+ _____XX_,___X____,
+ ____X_X_,___X____,
+ ___X__X_,X_X_____,
+ ____XX__,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_304A[32] = { /* code 304A */
+ ________,________,
+ _____X__,________,
+ ______X_,________,
+ ______X_,____X___,
+ ______X_,XX___X__,
+ __X__XXX,_____X__,
+ ___XX_X_,________,
+ ______X_,________,
+ ______XX,XXXX____,
+ _____XX_,____X___,
+ ____X_X_,_____X__,
+ ___X__X_,_____X__,
+ ___X__X_,_X__X___,
+ ____XX__,_XXX____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_304B[32] = { /* code 304B */
+ ________,________,
+ ______X_,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,XX__X___,
+ ___XXXX_,__X__X__,
+ ______X_,__X___X_,
+ _____X__,__X__XX_,
+ _____X__,__X_____,
+ ____X___,__X_____,
+ ____X___,_X______,
+ ___X___X,XX______,
+ __X_____,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_304C[32] = { /* code 304C */
+ ________,________,
+ ______X_,________,
+ _______X,______X_,
+ _______X,_____X_X,
+ _______X,______X_,
+ _______X,XX__X___,
+ ___XXXX_,__X__X__,
+ ______X_,__X___X_,
+ _____X__,__X__XX_,
+ _____X__,__X_____,
+ ____X___,__X_____,
+ ____X___,_X______,
+ ___X___X,XX______,
+ __X_____,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_304D[32] = { /* code 304D */
+ ________,________,
+ ______X_,________,
+ ______X_,________,
+ _______X,XXX_____,
+ ____XXXX,________,
+ ________,X_______,
+ ________,XXXX____,
+ ____XXXX,_X______,
+ ________,_X______,
+ _____XXX,X_X_____,
+ ____X___,__X_____,
+ ____X___,________,
+ ____X___,________,
+ _____X__,________,
+ ______XX,XXXX____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_304E[32] = { /* code 304E */
+ ________,________,
+ ______X_,________,
+ ______X_,______X_,
+ _______X,XXX_X__X,
+ ____XXXX,_____X__,
+ ________,X_______,
+ ________,XXXX____,
+ ____XXXX,_X______,
+ ________,_X______,
+ _____XXX,X_X_____,
+ ____X___,__X_____,
+ ____X___,________,
+ ____X___,________,
+ _____X__,________,
+ ______XX,XXXX____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_304F[32] = { /* code 304F */
+ ________,________,
+ ________,_X______,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ____X___,________,
+ _____X__,________,
+ ______X_,________,
+ _______X,________,
+ ________,X_______,
+ ________,X_______,
+ ________,_X______,
+ ________,_X______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3050[32] = { /* code 3050 */
+ ________,________,
+ ________,_X______,
+ ________,_X___X__,
+ ________,X__X__X_,
+ _______X,____X___,
+ ______X_,________,
+ _____X__,________,
+ ____X___,________,
+ _____X__,________,
+ ______X_,________,
+ _______X,________,
+ ________,X_______,
+ ________,X_______,
+ ________,_X______,
+ ________,_X______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3051[32] = { /* code 3051 */
+ ________,________,
+ ___X____,_X______,
+ ____X___,__X_____,
+ ____X___,__X_____,
+ ___X____,__XXXX__,
+ ___X__XX,XXX_____,
+ ___X____,__X_____,
+ ___X____,__X_____,
+ ___X____,__X_____,
+ ___X_X__,__X_____,
+ ___X_X__,__X_____,
+ ___XX___,__X_____,
+ ___XX___,_X______,
+ ___X____,_X______,
+ ________,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3052[32] = { /* code 3052 */
+ ________,________,
+ ___X____,_X____X_,
+ ____X___,__X_X__X,
+ ____X___,__X__X__,
+ ___X____,__XXXX__,
+ ___X__XX,XXX_____,
+ ___X____,__X_____,
+ ___X____,__X_____,
+ ___X____,__X_____,
+ ___X_X__,__X_____,
+ ___X_X__,__X_____,
+ ___XX___,__X_____,
+ ___XX___,_X______,
+ ___X____,_X______,
+ ________,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3053[32] = { /* code 3053 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____X__,________,
+ ______XX,XXXX____,
+ ________,_XX_____,
+ ________,X_______,
+ _______X,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X____,________,
+ ____XX__,___XX___,
+ ______XX,XXXX____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3054[32] = { /* code 3054 */
+ ________,________,
+ ________,________,
+ ________,______X_,
+ ____X___,____X__X,
+ _____XXX,XXX__X__,
+ ________,XX______,
+ _______X,________,
+ ______X_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,________,
+ ___XX___,__XX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3055[32] = { /* code 3055 */
+ ________,________,
+ ______X_,________,
+ ______X_,________,
+ _______X,___XX___,
+ ________,XXX_____,
+ ____XXXX,_X______,
+ ________,_X______,
+ ________,__X_____,
+ ______XX,XXXX____,
+ _____X__,___X____,
+ ____X___,________,
+ ____X___,________,
+ _____X__,________,
+ ______XX,XXX_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3056[32] = { /* code 3056 */
+ ________,________,
+ ______X_,______X_,
+ ______X_,____X__X,
+ _______X,___X_X__,
+ ________,XXX_____,
+ ____XXXX,_X______,
+ ________,_X______,
+ ________,__X_____,
+ ______XX,XXXX____,
+ _____X__,___X____,
+ ____X___,________,
+ ____X___,________,
+ _____X__,________,
+ ______XX,XXX_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3057[32] = { /* code 3057 */
+ ________,________,
+ ____X___,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,_____X__,
+ _____X__,____X___,
+ _____X__,__XX____,
+ ______XX,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3058[32] = { /* code 3058 */
+ ________,________,
+ ____X___,________,
+ _____X__,________,
+ _____X__,___X____,
+ _____X__,_X__X___,
+ _____X__,__X_____,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,_____X__,
+ _____X__,____X___,
+ _____X__,__XX____,
+ ______XX,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3059[32] = { /* code 3059 */
+ ________,________,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ __X__XXX,XXXXX___,
+ ___XX___,X_______,
+ ________,X_______,
+ ______XX,X_______,
+ _____X__,X_______,
+ _____X__,X_______,
+ ______XX,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_305A[32] = { /* code 305A */
+ ________,________,
+ ________,X____X__,
+ ________,X__X__X_,
+ ________,X___X___,
+ __X__XXX,XXXX____,
+ ___XX___,X_______,
+ ________,X_______,
+ ______XX,X_______,
+ _____X__,X_______,
+ _____X__,X_______,
+ ______XX,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_305B[32] = { /* code 305B */
+ ________,________,
+ ________,________,
+ ________,_XX_____,
+ ____XX__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____XXX,XXXXXX__,
+ ___XXX__,__X_____,
+ __X__X__,X_X_____,
+ _____X__,_XX_____,
+ _____X__,__X_____,
+ _____X__,________,
+ ______X_,________,
+ _______X,XXXXX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_305C[32] = { /* code 305C */
+ ________,________,
+ ________,______X_,
+ ________,_XX_X__X,
+ ____XX__,__X__X__,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____XXX,XXXXXX__,
+ ___XXX__,__X_____,
+ __X__X__,X_X_____,
+ _____X__,_XX_____,
+ _____X__,__X_____,
+ _____X__,________,
+ ______X_,________,
+ _______X,XXXXX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_305D[32] = { /* code 305D */
+ ________,________,
+ ________,________,
+ ______XX,XXX_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,__XXX___,
+ _____XXX,XX______,
+ ___XX___,X_______,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ ________,XX______,
+ ________,__XX____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_305E[32] = { /* code 305E */
+ ________,________,
+ ________,______X_,
+ ______XX,XXX_X__X,
+ ________,_X___X__,
+ ________,X_______,
+ _______X,________,
+ ______X_,__XXX___,
+ _____XXX,XX______,
+ ___XX___,X_______,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ ________,XX______,
+ ________,__XX____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_305F[32] = { /* code 305F */
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ______X_,________,
+ ______XX,X_______,
+ __XXXX__,__XXXX__,
+ _____X__,XX__X___,
+ _____X__,___X____,
+ ____X___,________,
+ ____X___,________,
+ ___X___X,________,
+ ___X___X,________,
+ __X_____,XX______,
+ ________,__XXXX__,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3060[32] = { /* code 3060 */
+ ________,________,
+ ________,_____X__,
+ _____XX_,___X__X_,
+ ______X_,____X___,
+ ______XX,X_______,
+ __XXXX__,__XXXX__,
+ _____X__,XX__X___,
+ _____X__,___X____,
+ ____X___,________,
+ ____X___,________,
+ ___X___X,________,
+ ___X___X,________,
+ __X_____,XX______,
+ ________,__XXXX__,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3061[32] = { /* code 3061 */
+ ________,________,
+ _____X__,________,
+ ______X_,________,
+ ______X_,XX______,
+ ___X__XX,________,
+ ____X_X_,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,XXXX____,
+ ____X_XX,____X___,
+ ____XX__,_____X__,
+ ____X___,_____X__,
+ ________,____X___,
+ ________,__XX____,
+ ________,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3062[32] = { /* code 3062 */
+ ________,________,
+ _____X__,_____X__,
+ ______X_,___X__X_,
+ ______X_,XX__X___,
+ ___X__XX,________,
+ ____X_X_,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,XXXX____,
+ ____X_XX,____X___,
+ ____XX__,_____X__,
+ ____X___,_____X__,
+ ________,____X___,
+ ________,__XX____,
+ ________,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3063[32] = { /* code 3063 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XXX_____,
+ ___X__XX,___X____,
+ ____XX__,____X___,
+ ________,____X___,
+ ________,___X____,
+ ________,__X_____,
+ ________,_X______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3064[32] = { /* code 3064 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XXXX____,
+ ______XX,____X___,
+ _X__XX__,_____X__,
+ __XX____,_____X__,
+ ________,_____X__,
+ ________,_____X__,
+ ________,____X___,
+ ________,__XX____,
+ ________,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3065[32] = { /* code 3065 */
+ ________,________,
+ ________,______X_,
+ ________,____X__X,
+ ________,_____X__,
+ ________,XXXX____,
+ ______XX,____X___,
+ _X__XX__,_____X__,
+ __XX____,_____X__,
+ ________,_____X__,
+ ________,_____X__,
+ ________,____X___,
+ ________,__XX____,
+ ________,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3066[32] = { /* code 3066 */
+ ________,________,
+ ________,________,
+ ________,___XXX__,
+ _______X,XXX_____,
+ _X__XXX_,_X______,
+ __XX____,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ _______X,________,
+ ________,X_______,
+ ________,_XXXX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3067[32] = { /* code 3067 */
+ ________,________,
+ ________,______X_,
+ ________,__X_X__X,
+ _______X,XX___X__,
+ _X__XXX_,_X______,
+ __XX____,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ _______X,________,
+ ________,X_______,
+ ________,_XXXX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3068[32] = { /* code 3068 */
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,_XXX____,
+ _______X,X_______,
+ ______X_,________,
+ _____X__,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ _____XXX,XXXX____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3069[32] = { /* code 3069 */
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _______X,______X_,
+ _______X,____X__X,
+ _______X,_____X__,
+ _______X,_XXX____,
+ _______X,X_______,
+ ______X_,________,
+ _____X__,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ _____XXX,XXXX____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_306A[32] = { /* code 306A */
+ ________,________,
+ ______X_,________,
+ _______X,________,
+ ______X_,XX______,
+ __XXXXXX,________,
+ _____X__,__XX____,
+ ____X___,___XX___,
+ ____X___,__X_____,
+ ___X____,_X______,
+ ___X____,_X______,
+ ________,_X______,
+ ________,_X______,
+ ______XX,XXXX____,
+ _____X__,_X__X___,
+ ______XX,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_306B[32] = { /* code 306B */
+ ________,________,
+ ________,________,
+ ___X____,________,
+ ___X____,________,
+ ___X___X,XXXXX___,
+ ___X____,__XX____,
+ ___X____,_X______,
+ __X_____,________,
+ __X_____,________,
+ __X___X_,________,
+ __X_X_X_,________,
+ __XX___X,________,
+ __XX____,XXXXXX__,
+ ___X____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_306C[32] = { /* code 306C */
+ ________,________,
+ ________,________,
+ ______X_,________,
+ _______X,________,
+ _______X,XX______,
+ __X__XXX,__XX____,
+ __X_X__X,____X___,
+ ___X___X,_____X__,
+ ___X__X_,______X_,
+ __X_X_X_,______X_,
+ _X___X__,______X_,
+ _X__XX__,_XXX_X__,
+ __XX__X_,X___XX__,
+ ________,_XXX__X_,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_306D[32] = { /* code 306D */
+ ________,________,
+ ________,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ _____XX_,________,
+ __XXXX__,XXXX____,
+ _____X_X,____X___,
+ _____XX_,_____X__,
+ ____XX__,_____X__,
+ ____XX__,_____X__,
+ ___X_X__,_XXX_X__,
+ __XX_X__,X___XX__,
+ ____XX__,_XXXX_X_,
+ _____X__,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_306E[32] = { /* code 306E */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XXX_____,
+ _____XX_,__XX____,
+ ____X___,_X__X___,
+ ___X____,X___X___,
+ __X____X,_____X__,
+ __X___X_,_____X__,
+ __X__X__,_____X__,
+ __X_X___,____X___,
+ __XX____,____X___,
+ ________,___X____,
+ ________,__X_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_306F[32] = { /* code 306F */
+ ________,________,
+ ________,________,
+ ___X____,__XX____,
+ ___X____,___X____,
+ ___X____,___X____,
+ __X___X_,___XXX__,
+ __X____X,XXXX____,
+ __X_____,___X____,
+ __X_____,___X____,
+ __X_____,___X____,
+ __X_____,___X____,
+ __XX___X,XXXXX___,
+ __XX__X_,__X__X__,
+ __X____X,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3070[32] = { /* code 3070 */
+ ________,________,
+ ________,______X_,
+ ___X____,_XX_X__X,
+ ___X____,__X__X__,
+ ___X____,__X_____,
+ __X__X__,__XXX___,
+ __X___XX,XXX_____,
+ __X_____,__X_____,
+ __X_____,__X_____,
+ __X_____,__X_____,
+ __X_____,__X_____,
+ __XX__XX,XXXX____,
+ __XX_X__,_X__X___,
+ __X___XX,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3071[32] = { /* code 3071 */
+ ________,________,
+ ________,_____X__,
+ ___X____,_XX_X_X_,
+ ___X____,__X__X__,
+ ___X____,__X_____,
+ __X__X__,__XXX___,
+ __X___XX,XXX_____,
+ __X_____,__X_____,
+ __X_____,__X_____,
+ __X_____,__X_____,
+ __X_____,__X_____,
+ __XX__XX,XXXX____,
+ __XX_X__,_X__X___,
+ __X___XX,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3072[32] = { /* code 3072 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,___X____,
+ ___XXX__,___X____,
+ _____X__,___X____,
+ ____X___,__X_X___,
+ ____X___,__X__X__,
+ ___X____,__X___X_,
+ ___X____,__X_____,
+ ___X____,_X______,
+ ___X____,_X______,
+ ____X___,X_______,
+ _____XXX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3073[32] = { /* code 3073 */
+ ________,________,
+ ________,______X_,
+ ________,____X__X,
+ _____XX_,___X_X__,
+ ___XXX__,___X____,
+ _____X__,___X____,
+ ____X___,___XX___,
+ ____X___,__X__X__,
+ ___X____,__X___X_,
+ ___X____,__X_____,
+ ___X____,_X______,
+ ___X____,_X______,
+ ____X___,X_______,
+ _____XXX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3074[32] = { /* code 3074 */
+ ________,________,
+ ________,______X_,
+ ________,_____X_X,
+ _____XX_,___X__X_,
+ ___XXX__,___X____,
+ _____X__,___X____,
+ ____X___,___XX___,
+ ____X___,__X__X__,
+ ___X____,__X___X_,
+ ___X____,__X_____,
+ ___X____,_X______,
+ ___X____,_X______,
+ ____X___,X_______,
+ _____XXX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3075[32] = { /* code 3075 */
+ ________,________,
+ ________,________,
+ _______X,________,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,XXXXX___,
+ _____XX_,X____X__,
+ _X__X___,_X____X_,
+ __XX__X_,_X___XX_,
+ __X____X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3076[32] = { /* code 3076 */
+ ________,________,
+ ________,________,
+ _______X,_____X__,
+ ________,X__X__X_,
+ ________,X___X___,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,XXXXX___,
+ _____XX_,X____X__,
+ _X__X___,_X____X_,
+ __XX__X_,_X___XX_,
+ __X____X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3077[32] = { /* code 3077 */
+ ________,________,
+ ________,________,
+ _______X,____X___,
+ ________,X__X_X__,
+ ________,X___X___,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,XXXXX___,
+ _____XX_,X____X__,
+ _X__X___,_X____X_,
+ __XX__X_,_X___XX_,
+ __X____X,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3078[32] = { /* code 3078 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____X__X,________,
+ _X_X____,X_______,
+ __X_____,_X______,
+ ________,__X_____,
+ ________,___XX___,
+ ________,_____XX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3079[32] = { /* code 3079 */
+ ________,________,
+ ________,________,
+ ________,_____X__,
+ ________,___X__X_,
+ ________,____X___,
+ _____XX_,________,
+ ____X__X,________,
+ _X_X____,X_______,
+ __X_____,_X______,
+ ________,__X_____,
+ ________,___XX___,
+ ________,_____XX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_307A[32] = { /* code 307A */
+ ________,________,
+ ________,________,
+ ________,____X___,
+ ________,___X_X__,
+ ________,____X___,
+ _____XX_,________,
+ ____X__X,________,
+ _X_X____,X_______,
+ __X_____,_X______,
+ ________,__X_____,
+ ________,___XX___,
+ ________,_____XX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_307B[32] = { /* code 307B */
+ ________,________,
+ ________,________,
+ __X_____,___XX___,
+ ___X___X,XXX_____,
+ ___X____,__X_____,
+ __X_____,___XXX__,
+ __X____X,XXXX____,
+ __X_____,___X____,
+ __X_X___,___X____,
+ __X_X___,___X____,
+ __XX____,___X____,
+ __XX____,XXXXX___,
+ __XX___X,___X_X__,
+ ___X____,XXX___X_,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_307C[32] = { /* code 307C */
+ ________,______X_,
+ ________,____X__X,
+ __X_____,__XX_X__,
+ ___X__XX,XX______,
+ ___X____,_X______,
+ __X_____,__XXX___,
+ __X___XX,XXX_____,
+ __X_____,__X_____,
+ __X_X___,__X_____,
+ __X_X___,__X_____,
+ __XX____,__X_____,
+ __XX___X,XXXX____,
+ __XX__X_,__X_X___,
+ ___X___X,XX___X__,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_307D[32] = { /* code 307D */
+ ________,_____X__,
+ ________,____X_X_,
+ __X_____,__XX_X__,
+ ___X__XX,XX______,
+ ___X____,_X______,
+ __X_____,__XXX___,
+ __X___XX,XXX_____,
+ __X_____,__X_____,
+ __X_X___,__X_____,
+ __X_X___,__X_____,
+ __XX____,__X_____,
+ __XX___X,XXXX____,
+ __XX__X_,__X_X___,
+ ___X___X,XX___X__,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_307E[32] = { /* code 307E */
+ ________,________,
+ _______X,________,
+ ________,XX______,
+ ________,X_______,
+ ___X____,XXXXX___,
+ ____XXXX,X_______,
+ ________,X__X____,
+ ____X___,XXXXX___,
+ _____XXX,X_______,
+ ________,X_______,
+ ________,X_______,
+ ____XXXX,XXX_____,
+ ___X____,X__XX___,
+ ___X___X,_____X__,
+ ____XXX_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_307F[32] = { /* code 307F */
+ ________,________,
+ ________,________,
+ ____X__X,XX______,
+ _____XX_,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,___XX___,
+ ______X_,____X___,
+ ____XXXX,XX__X___,
+ ___X_X__,__XXX___,
+ __X_X___,___X_XX_,
+ __X_X___,__X___X_,
+ ___X____,__X_____,
+ ________,_X______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3080[32] = { /* code 3080 */
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ _____X_X,________,
+ _X__XXX_,________,
+ __XX_X__,____XX__,
+ _____X__,___X__X_,
+ ___XXX__,___X_XX_,
+ __X__X__,___X____,
+ __X__X__,___X____,
+ ___XX___,____X___,
+ ____X___,____X___,
+ ____X___,____X___,
+ _____XXX,XXXX____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3081[32] = { /* code 3081 */
+ ________,________,
+ ________,________,
+ ________,XX______,
+ ________,_X______,
+ ___X____,_X______,
+ ___X__XX,X_XX____,
+ ____XX__,X___X___,
+ ___XX__X,_____X__,
+ __X_X__X,______X_,
+ _X___XX_,______X_,
+ _X___X__,______X_,
+ _X__X_X_,_____X__,
+ _X_X___X,____X___,
+ __X_____,___X____,
+ ________,__X_____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3082[32] = { /* code 3082 */
+ ________,________,
+ _______X,X_______,
+ ________,X_______,
+ ____X___,X_______,
+ _____X_X,________,
+ ______XX,XX______,
+ _____XX_,________,
+ ____X_X_,________,
+ ____X_X_,___X____,
+ _____XXX,XX__X___,
+ ______X_,____X___,
+ ______X_,____X___,
+ ______X_,____X___,
+ _______X,___X____,
+ ________,XXX_____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3083[32] = { /* code 3083 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,________,
+ _____X__,X_______,
+ ____X___,XXXX____,
+ _____XXX,_X__X___,
+ ___X_X__,____X___,
+ ____X_X_,___X____,
+ _______X,________,
+ _______X,________,
+ ________,X_______,
+ ________,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3084[32] = { /* code 3084 */
+ ________,________,
+ ________,________,
+ ____X___,X_______,
+ ___X____,_X______,
+ ___X____,_XXXX___,
+ ____X_XX,X_X__X__,
+ _X__XX__,____X___,
+ __XX_X__,__XX____,
+ ______X_,________,
+ ______X_,________,
+ _______X,________,
+ _______X,________,
+ ________,X_______,
+ ________,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3085[32] = { /* code 3085 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,________,
+ __X_____,X_______,
+ ___XX___,_XX_____,
+ ___X__XX,XX_X____,
+ ___X_X__,_X__X___,
+ ___XX___,_X__X___,
+ ___XX___,_X_X____,
+ ___X___X,XXX_____,
+ ___X____,X_______,
+ ________,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3086[32] = { /* code 3086 */
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ _X____X_,_X______,
+ __X__X__,XXXX____,
+ __X__X_X,_X__X___,
+ __X__XX_,_X___X__,
+ __X__X__,_X___X__,
+ __X_XX__,_X___X__,
+ __XX__X_,_X___X__,
+ __XX___X,_X__X___,
+ __X_____,XXXX____,
+ __X_____,X_______,
+ ________,X_______,
+ _______X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3087[32] = { /* code 3087 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,________,
+ ________,X_______,
+ ________,X__X____,
+ ________,XXX_____,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ _____XXX,X_______,
+ ____X___,XXX_____,
+ _____XXX,___X____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3088[32] = { /* code 3088 */
+ ________,________,
+ _______X,________,
+ ________,X_______,
+ ________,X_______,
+ ________,X__X____,
+ ________,XXX_____,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ____XXXX,XX______,
+ ___X____,X_XX____,
+ ___X____,X___X___,
+ ____XXXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3089[32] = { /* code 3089 */
+ ________,________,
+ ______X_,________,
+ _______X,________,
+ ________,X_______,
+ _____X_X,X_______,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,XXX_____,
+ ____X_XX,___X____,
+ ____XX__,____X___,
+ ____X___,____X___,
+ ________,____X___,
+ ________,__XX____,
+ ________,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_308A[32] = { /* code 308A */
+ ________,________,
+ ____X___,XX______,
+ _____X_X,__X_____,
+ _____XX_,__X_____,
+ _____XX_,__X_____,
+ _____X__,__X_____,
+ ____XX__,__X_____,
+ ____X___,__X_____,
+ ____X___,__X_____,
+ ____X___,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_308B[32] = { /* code 308B */
+ ________,________,
+ ________,________,
+ ____X__X,XXX_____,
+ _____XX_,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X_X,XXX_____,
+ _____XX_,___X____,
+ ____X___,____X___,
+ ___X____,____X___,
+ ______XX,X__X____,
+ _____X__,_X_X____,
+ _____X__,_XX_____,
+ ______XX,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_308C[32] = { /* code 308C */
+ ________,________,
+ ___X____,________,
+ ____XX__,________,
+ _____X__,________,
+ _____X__,XXX_____,
+ ____XX_X,___X____,
+ __XX_XX_,___X____,
+ _____X__,___X____,
+ ____X___,___X____,
+ ____X___,___X____,
+ ___XX___,__X_____,
+ __X_X___,__X_____,
+ _X__X___,__X_____,
+ ___XX___,___XXX__,
+ ____X___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_308D[32] = { /* code 308D */
+ ________,________,
+ ________,_X______,
+ _____XXX,XX______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____XXX,XXXX____,
+ ____XX__,____X___,
+ ___X____,_____X__,
+ __X_____,_____X__,
+ ________,____X___,
+ ________,___X____,
+ ________,_XX_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_308E[32] = { /* code 308E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ ______XX,________,
+ ____XXX_,XXXX____,
+ ___X__XX,____X___,
+ ______X_,_____X__,
+ _____XX_,_____X__,
+ ____X_X_,____X___,
+ ___X_XX_,___X____,
+ ______X_,__X_____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_308F[32] = { /* code 308F */
+ ________,________,
+ _____X__,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ _____XX_,________,
+ ___XXXX_,XXXXX___,
+ _____X_X,_____X__,
+ _____XX_,______X_,
+ ____XX__,______X_,
+ ___X_X__,______X_,
+ __X__X__,_____X__,
+ ____XX__,___XX___,
+ _____X__,_XX_____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3090[32] = { /* code 3090 */
+ ________,________,
+ ________,________,
+ _____X_X,XX______,
+ ______X_,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,XXXX____,
+ _____XX_,____X___,
+ ____X_X_,_____X__,
+ ___X__X_,_____X__,
+ ___X_X__,_____X__,
+ ___X_X__,_XXX_X__,
+ ___XX___,X___X___,
+ ________,_XXX____,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3091[32] = { /* code 3091 */
+ ________,________,
+ _____X__,_X______,
+ ______XX,XX______,
+ ________,X_______,
+ _______X,________,
+ _______X,XXX_____,
+ ______X_,___X____,
+ _____X__,___X____,
+ ____X__X,___X____,
+ ______X_,XXX_____,
+ _______X,________,
+ _____XX_,________,
+ ____XX__,__XXXX__,
+ __XX__XX,XX___XX_,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3092[32] = { /* code 3092 */
+ ________,________,
+ ______X_,________,
+ _______X,________,
+ _______X,XXX_____,
+ ___XXXX_,________,
+ ______X_,________,
+ _____XXX,____X___,
+ _____X__,X_XXXX__,
+ ____X___,XX______,
+ ___X___X,X_______,
+ ______X_,X_______,
+ _____X__,X_______,
+ _____X__,________,
+ _____X__,________,
+ ______XX,XXXX____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_3093[32] = { /* code 3093 */
+ ________,________,
+ ________,________,
+ ______X_,________,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ______X_,________,
+ _____X__,________,
+ _____XXX,________,
+ ____X___,X_______,
+ ____X___,X_______,
+ ___X____,X_______,
+ __X_____,X____X__,
+ __X_____,_XXXX___,
+ ________,________,
+ ________,________};
+
+/* Start of unicode area */
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30A1[32] = { /* code 30A1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X_XXX,XXXXX___,
+ ____X___,___X____,
+ _______X,X_X_____,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ______X_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30A2[32] = { /* code 30A2 */
+ ________,________,
+ ________,________,
+ ____XXXX,XXXXXXX_,
+ ________,_____X__,
+ _______X,___XX___,
+ ________,X_X_____,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ______X_,________,
+ _____X__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30A3[32] = { /* code 30A3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XX______,
+ ________,_X______,
+ ________,X_______,
+ _______X,X_______,
+ ______X_,X_______,
+ _____X__,X_______,
+ ____X___,X_______,
+ ___X____,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30A4[32] = { /* code 30A4 */
+ ________,________,
+ ________,_X______,
+ ________,__XX____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,X_______,
+ ______X_,X_______,
+ _____X__,X_______,
+ ____X___,X_______,
+ ___X____,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30A5[32] = { /* code 30A5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ ________,X_______,
+ ________,X__X____,
+ ____XXXX,XXXXX___,
+ _____X__,___X____,
+ _____X__,___X____,
+ _____X__,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ ______XX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30A6[32] = { /* code 30A6 */
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ________,X_______,
+ ________,X___X___,
+ ___XXXXX,XXXXXX__,
+ ____X___,____X___,
+ ____X___,____X___,
+ ____X___,____X___,
+ ____X___,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ ______XX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30A7[32] = { /* code 30A7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,_XX_____,
+ _____XXX,X_______,
+ ________,X_______,
+ ________,X_______,
+ ___X____,X_______,
+ ____XXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30A8[32] = { /* code 30A8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X____,_XXX____,
+ ____XXXX,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ __X_____,X_______,
+ ___XXXXX,XXXXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30A9[32] = { /* code 30A9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,________,
+ ________,X_______,
+ ________,XXXX____,
+ ____XXXX,X_______,
+ _______X,X_______,
+ ______X_,X_______,
+ _____X__,X_______,
+ ____X___,X_______,
+ ___X___X,X_______,
+ ________,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30AA[32] = { /* code 30AA */
+ ________,________,
+ ________,________,
+ ________,XX______,
+ ________,_X______,
+ ________,_XXXXX__,
+ ___XXXXX,XX______,
+ ________,XX______,
+ _______X,_X______,
+ ______X_,_X______,
+ _____X__,_X______,
+ ____X___,_X______,
+ ___X____,_X______,
+ ________,XX______,
+ ________,_X______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30AB[32] = { /* code 30AB */
+ ________,________,
+ ________,________,
+ ________,XX______,
+ ________,_X______,
+ ________,X_______,
+ ___X____,XXXXX___,
+ ____XXXX,____X___,
+ _______X,____X___,
+ ______X_,____X___,
+ ______X_,____X___,
+ _____X__,___X____,
+ ____X___,___X____,
+ ___X___X,X_X_____,
+ __X_____,_X______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30AC[32] = { /* code 30AC */
+ ________,________,
+ ________,________,
+ _______X,X_____X_,
+ ________,X___X__X,
+ _______X,_____X__,
+ __X____X,XXXX____,
+ ___XXXX_,___X____,
+ ______X_,___X____,
+ _____X__,___X____,
+ ____X___,___X____,
+ ___X____,__X_____,
+ __X_____,__X_____,
+ _X____XX,_X______,
+ ________,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30AD[32] = { /* code 30AD */
+ ________,________,
+ ______X_,________,
+ ______X_,________,
+ _______X,________,
+ _______X,XXXX____,
+ ___X_XXX,________,
+ ____X__X,________,
+ ________,XXXXXX__,
+ __X__XXX,X_______,
+ ___XX___,X_______,
+ ________,X_______,
+ ________,_X______,
+ ________,_X______,
+ ________,_X______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30AE[32] = { /* code 30AE */
+ ________,________,
+ ______X_,______X_,
+ ______X_,____X__X,
+ _______X,_____X__,
+ _______X,XXXX____,
+ ___X_XXX,________,
+ ____X__X,________,
+ ________,XXXXXX__,
+ __X__XXX,X_______,
+ ___XX___,X_______,
+ ________,X_______,
+ ________,_X______,
+ ________,_X______,
+ ________,_X______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30AF[32] = { /* code 30AF */
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ ________,XXXXX___,
+ _______X,____X___,
+ ______X_,___X____,
+ _____X__,___X____,
+ ____X___,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ___XX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30B0[32] = { /* code 30B0 */
+ ________,________,
+ ________,______X_,
+ ______XX,____X__X,
+ _______X,XXXX_X__,
+ ______X_,___X____,
+ _____X__,__X_____,
+ ____X___,__X_____,
+ ___X____,_X______,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ____X___,________,
+ __XX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30B1[32] = { /* code 30B1 */
+ ________,________,
+ ________,________,
+ ______X_,________,
+ ______XX,________,
+ ______X_,________,
+ _____X_X,XXXXXX__,
+ ____X___,_X______,
+ ___X____,_X______,
+ ________,_X______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30B2[32] = { /* code 30B2 */
+ ________,________,
+ ________,________,
+ ______X_,______X_,
+ ______XX,____X__X,
+ ______X_,_____X__,
+ _____X_X,XXXXX___,
+ ____X___,_X______,
+ ___X____,_X______,
+ ________,_X______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30B3[32] = { /* code 30B3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X_XXX,XXXXX___,
+ ____X___,____X___,
+ ________,____X___,
+ ________,___X____,
+ ________,___X____,
+ ________,___X____,
+ ________,___X____,
+ ____XXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30B4[32] = { /* code 30B4 */
+ ________,________,
+ ________,________,
+ ________,______X_,
+ ________,____X__X,
+ ________,_____X__,
+ ___X_XXX,XXXXX___,
+ ____X___,____X___,
+ ________,____X___,
+ ________,___X____,
+ ________,___X____,
+ ________,___X____,
+ ________,___X____,
+ ____XXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30B5[32] = { /* code 30B5 */
+ ________,________,
+ ________,_X______,
+ ____X___,__X_____,
+ _____X__,__X_____,
+ _____X__,__XXXXX_,
+ _X___XXX,XXX_____,
+ __XXXX__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ ________,_X______,
+ ________,_X______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30B6[32] = { /* code 30B6 */
+ ________,________,
+ ________,_X____X_,
+ ____X___,__X_X__X,
+ _____X__,__X__X__,
+ _____X__,__XXX___,
+ _X___XXX,XXX_____,
+ __XXXX__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ ________,_X______,
+ ________,_X______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30B7[32] = { /* code 30B7 */
+ ________,________,
+ ________,________,
+ ____X___,________,
+ _____XX_,________,
+ ________,______X_,
+ ________,_____X__,
+ ___X____,____X___,
+ ____XX__,___X____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ___XX_X_,________,
+ _____X__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30B8[32] = { /* code 30B8 */
+ ________,________,
+ ________,_____X__,
+ ____X___,___X__X_,
+ _____XX_,____X___,
+ ________,________,
+ ________,_____X__,
+ ___X____,____X___,
+ ____XX__,___X____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ___XX_X_,________,
+ _____X__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30B9[32] = { /* code 30B9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,XXXX____,
+ _____XXX,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,X_______,
+ ______X_,_X______,
+ _____X__,__X_____,
+ ____X___,___XX___,
+ ___X____,____X___,
+ _XX_____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30BA[32] = { /* code 30BA */
+ ________,________,
+ ________,______X_,
+ ________,____X__X,
+ ________,_____X__,
+ ____X___,XXXX____,
+ _____XXX,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,X_______,
+ ______X_,_X______,
+ _____X__,__X_____,
+ ____X___,___XX___,
+ ___X____,____X___,
+ _XX_____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30BB[32] = { /* code 30BB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _______X,________,
+ _______X,___XXX__,
+ _______X,XXX__X__,
+ ______XX,____X___,
+ __XXXX_X,___X____,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ ________,XXXXXX__,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30BC[32] = { /* code 30BC */
+ ________,________,
+ ________,______X_,
+ ________,____X__X,
+ ______XX,_____X__,
+ _______X,________,
+ _______X,___XXX__,
+ _______X,XXX__X__,
+ ______XX,____X___,
+ __XXXX_X,___X____,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ ________,XXXXXX__,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30BD[32] = { /* code 30BD */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,___X____,
+ ____X___,____X___,
+ _____X__,____X___,
+ ______X_,___X____,
+ ______X_,___X____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30BE[32] = { /* code 30BE */
+ ________,________,
+ ________,______X_,
+ ________,____X__X,
+ ________,_____X__,
+ ________,__X_____,
+ ___X____,___X____,
+ ____X___,__X_____,
+ _____X__,__X_____,
+ _____X__,_X______,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ____X___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30BF[32] = { /* code 30BF */
+ ________,________,
+ ________,________,
+ ________,X_______,
+ ________,XXXXX___,
+ _______X,____X___,
+ ______X_,___X____,
+ _____X_X,___X____,
+ ____X___,X_X_____,
+ ________,_X______,
+ ________,_XX_____,
+ ________,X__X____,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ___XX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30C0[32] = { /* code 30C0 */
+ ________,________,
+ ________,______X_,
+ _______X,____X__X,
+ _______X,XXXX_X__,
+ ______X_,___X____,
+ _____X__,__X_____,
+ ____X_X_,__X_____,
+ ___X___X,_X______,
+ ________,X_______,
+ ________,XX______,
+ _______X,__X_____,
+ ______X_,________,
+ _____X__,________,
+ ____X___,________,
+ __XX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30C1[32] = { /* code 30C1 */
+ ________,________,
+ ________,________,
+ ________,_X______,
+ ________,_XX_____,
+ _______X,X_______,
+ _____XX_,X_______,
+ ________,X_______,
+ ________,XXXXXX__,
+ __XXXXXX,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30C2[32] = { /* code 30C2 */
+ ________,________,
+ ________,______X_,
+ ________,_X__X__X,
+ ________,_XX__X__,
+ _______X,X_______,
+ _____XX_,X_______,
+ ________,X_______,
+ ________,XXXXXX__,
+ __XXXXXX,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30C3[32] = { /* code 30C3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,___XX___,
+ _______X,____X___,
+ ____X___,X___X___,
+ _____X__,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30C4[32] = { /* code 30C4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______X_,___XX___,
+ __X____X,____X___,
+ ___X___X,____X___,
+ ___X____,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30C5[32] = { /* code 30C5 */
+ ________,________,
+ ________,______X_,
+ ________,____X__X,
+ _____X__,_XX__X__,
+ _X____X_,__X_____,
+ __X___X_,__X_____,
+ __X_____,_X______,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ____X___,________,
+ ___X____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30C6[32] = { /* code 30C6 */
+ ________,________,
+ ________,________,
+ ____X___,________,
+ _____XXX,XXXX____,
+ ________,________,
+ ________,________,
+ __X_XXXX,XXXXXX__,
+ ___X____,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30C7[32] = { /* code 30C7 */
+ ________,________,
+ ________,______X_,
+ ___X____,____X__X,
+ ____XXXX,XXX__X__,
+ ________,________,
+ ________,________,
+ _X_XXXXX,XXXXX___,
+ __X____X,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ ______X_,________,
+ _____X__,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30C8[32] = { /* code 30C8 */
+ ________,________,
+ _____X__,________,
+ ______XX,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ ______XX,________,
+ ______X_,XX______,
+ ______X_,__X_____,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30C9[32] = { /* code 30C9 */
+ ________,________,
+ _____X__,_____X__,
+ ______XX,___X__X_,
+ ______X_,____X___,
+ ______X_,________,
+ ______X_,________,
+ ______XX,________,
+ ______X_,XX______,
+ ______X_,__X_____,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ ______X_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30CA[32] = { /* code 30CA */
+ ________,________,
+ _______X,________,
+ ________,XX______,
+ ________,X_______,
+ ________,X_______,
+ ________,XXXXXX__,
+ __XXXXXX,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30CB[32] = { /* code 30CB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X____,________,
+ ____XXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _X_XXXXX,XXXXXX__,
+ __X_____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30CC[32] = { /* code 30CC */
+ ________,________,
+ ________,________,
+ ________,___X____,
+ _____XXX,XXXXX___,
+ ________,___X____,
+ ________,__X_____,
+ ________,__X_____,
+ ______X_,_X______,
+ _______X,_X______,
+ ________,X_______,
+ _______X,_X______,
+ ______X_,__X_____,
+ _____X__,________,
+ ____X___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30CD[32] = { /* code 30CD */
+ ________,________,
+ _______X,________,
+ ________,XX______,
+ ________,________,
+ ________,XXX_____,
+ ____XXXX,_X______,
+ ________,X_______,
+ _______X,________,
+ ______XX,XX______,
+ _____X_X,__XX____,
+ ____X__X,____XX__,
+ __XX___X,________,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30CE[32] = { /* code 30CE */
+ ________,________,
+ ________,________,
+ ________,___XX___,
+ ________,____X___,
+ ________,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,_X______,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ___XX___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30CF[32] = { /* code 30CF */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,_X______,
+ _____XX_,__X_____,
+ _____X__,___X____,
+ ____X___,____X___,
+ ___X____,_____X__,
+ __X_____,_____X__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30D0[32] = { /* code 30D0 */
+ ________,________,
+ ________,________,
+ ________,_____X__,
+ ________,___X__X_,
+ ________,____X___,
+ ____X___,_X______,
+ _____XX_,__X_____,
+ _____X__,___X____,
+ ____X___,____X___,
+ ___X____,_____X__,
+ __X_____,_____X__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30D1[32] = { /* code 30D1 */
+ ________,________,
+ ________,________,
+ ________,____X___,
+ ________,___X_X__,
+ ________,____X___,
+ ____X___,_X______,
+ _____XX_,__X_____,
+ _____X__,___X____,
+ ____X___,____X___,
+ ___X____,_____X__,
+ __X_____,_____X__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30D2[32] = { /* code 30D2 */
+ ________,________,
+ ________,________,
+ ___X____,________,
+ ____XX__,________,
+ ____X___,________,
+ ____X___,___X____,
+ ____X___,_XX_____,
+ ____XXXX,X_______,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ _____X__,________,
+ ______XX,XXXXX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30D3[32] = { /* code 30D3 */
+ ________,________,
+ ________,________,
+ ___X____,_____X__,
+ ____XX__,___X__X_,
+ ____X___,____X___,
+ ____X___,__X_____,
+ ____X___,XX______,
+ ____XXXX,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ _____X__,________,
+ ______XX,XXXXX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30D4[32] = { /* code 30D4 */
+ ________,________,
+ ________,________,
+ ___X____,_____X__,
+ ____XX__,____X_X_,
+ ____X___,_____X__,
+ ____X___,__X_____,
+ ____X___,XX______,
+ ____XXXX,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,________,
+ _____X__,________,
+ ______XX,XXXXX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30D5[32] = { /* code 30D5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,____X___,
+ __X_XXXX,XXXXX___,
+ ___X____,____X___,
+ ________,____X___,
+ ________,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30D6[32] = { /* code 30D6 */
+ ________,________,
+ ________,______X_,
+ ________,____X__X,
+ ________,_____X__,
+ __X_XXXX,XXXXX___,
+ ___X____,____X___,
+ ________,____X___,
+ ________,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30D7[32] = { /* code 30D7 */
+ ________,________,
+ ________,_____X__,
+ ________,____X_X_,
+ ________,_____X__,
+ __X_XXXX,XXXXX___,
+ ___X____,____X___,
+ ________,____X___,
+ ________,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30D8[32] = { /* code 30D8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____X___,X_______,
+ _XXX____,_XX_____,
+ ________,___X____,
+ ________,____X___,
+ ________,_____XX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30D9[32] = { /* code 30D9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_____X__,
+ ________,___X__X_,
+ ________,____X___,
+ _____XXX,________,
+ ____X___,X_______,
+ _XXX____,_XX_____,
+ ________,___X____,
+ ________,____X___,
+ ________,_____XX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30DA[32] = { /* code 30DA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,____X___,
+ ________,___X_X__,
+ ________,____X___,
+ _____XXX,________,
+ ____X___,X_______,
+ _XXX____,_XX_____,
+ ________,___X____,
+ ________,____X___,
+ ________,_____XX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30DB[32] = { /* code 30DB */
+ ________,________,
+ ________,________,
+ _______X,________,
+ ________,X_______,
+ ________,X_______,
+ __X_XXXX,XXXXXX__,
+ ___X____,X_______,
+ ________,X_______,
+ ____X___,X__X____,
+ ____X___,X___X___,
+ ___X____,X____X__,
+ __X___X_,X____X__,
+ _______X,X_______,
+ ________,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30DC[32] = { /* code 30DC */
+ ________,________,
+ ________,______X_,
+ _______X,____X__X,
+ ________,X____X__,
+ ________,X_______,
+ __X_XXXX,XXXXXX__,
+ ___X____,X_______,
+ ________,X_______,
+ ____X___,X__X____,
+ ____X___,X___X___,
+ ___X____,X____X__,
+ __X___X_,X____X__,
+ _______X,X_______,
+ ________,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30DD[32] = { /* code 30DD */
+ ________,________,
+ ________,_____X__,
+ _______X,____X_X_,
+ ________,X____X__,
+ ________,X_______,
+ __X_XXXX,XXXXXX__,
+ ___X____,X_______,
+ ________,X_______,
+ ____X___,X__X____,
+ ____X___,X___X___,
+ ___X____,X____X__,
+ __X___X_,X____X__,
+ _______X,X_______,
+ ________,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30DE[32] = { /* code 30DE */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _X__XXXX,XXXXXX__,
+ __XX____,____X___,
+ ________,___X____,
+ ______X_,__X_____,
+ _______X,_X______,
+ ________,X_______,
+ ________,_X______,
+ ________,_X______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30DF[32] = { /* code 30DF */
+ ________,________,
+ ________,________,
+ ______X_,________,
+ _______X,X_______,
+ ________,_XX_____,
+ ________,________,
+ _____X__,________,
+ ______XX,________,
+ ________,XX______,
+ ________,________,
+ ________,________,
+ _____X__,________,
+ ______XX,________,
+ ________,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30E0[32] = { /* code 30E0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,________,
+ ________,XX______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,__X_____,
+ ______X_,___X____,
+ _____X__,____X___,
+ ____X___,_XXXXX__,
+ __XXXXXX,X____X__,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30E1[32] = { /* code 30E1 */
+ ________,________,
+ ________,________,
+ ________,__XX____,
+ ________,___X____,
+ ________,__X_____,
+ ______X_,__X_____,
+ _______X,_X______,
+ ________,XX______,
+ ________,X_X_____,
+ _______X,___X____,
+ ______X_,________,
+ _____X__,________,
+ ____X___,________,
+ ___X____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30E2[32] = { /* code 30E2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XXXX____,
+ ___X_XXX,________,
+ ____X__X,________,
+ _______X,________,
+ _______X,XXXXX___,
+ __X_XXXX,________,
+ ___X___X,________,
+ _______X,________,
+ _______X,________,
+ ________,XXXXXX__,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30E3[32] = { /* code 30E3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______X_,________,
+ _______X,__XXX___,
+ _______X,XX__XX__,
+ ___XXXXX,___X____,
+ ________,X_X_____,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30E4[32] = { /* code 30E4 */
+ ________,________,
+ ________,________,
+ _____X__,________,
+ ______X_,________,
+ ______X_,___XXX__,
+ ______X_,XXX___X_,
+ ______XX,_____X__,
+ __XXXX_X,____X___,
+ _______X,________,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ ________,_X______,
+ ________,_X______,
+ ________,_X______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30E5[32] = { /* code 30E5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ________,_X______,
+ ________,_X______,
+ ________,_X______,
+ __X_XXXX,XXXXX___,
+ ___X____,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30E6[32] = { /* code 30E6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXXX____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,__X_____,
+ __X_XXXX,XXXXXXX_,
+ ___X____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30E7[32] = { /* code 30E7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,________,
+ _____XXX,XXXX____,
+ ________,__X_____,
+ ____X___,__X_____,
+ _____XXX,XXX_____,
+ ________,__X_____,
+ ________,__X_____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30E8[32] = { /* code 30E8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,________,
+ _____XXX,XXXXX___,
+ ________,___X____,
+ ________,___X____,
+ ____X___,___X____,
+ _____XXX,XXXX____,
+ ________,___X____,
+ ________,___X____,
+ ________,___X____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30E9[32] = { /* code 30E9 */
+ ________,________,
+ ____X___,________,
+ _____XXX,XXXX____,
+ ________,________,
+ ___X____,________,
+ ____XXXX,XXXXX___,
+ ________,____X___,
+ ________,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ ____XX__,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30EA[32] = { /* code 30EA */
+ ________,________,
+ ____X___,_X______,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ _____X__,__X_____,
+ ________,_X______,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30EB[32] = { /* code 30EB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,X_______,
+ ____X___,_X______,
+ _____X__,_X______,
+ _____X__,_X______,
+ _____X__,_X______,
+ _____X__,_X____X_,
+ ____X___,_X___X__,
+ ____X___,_X_XX___,
+ ___X____,_XX_____,
+ __X_____,_X______,
+ _X______,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30EC[32] = { /* code 30EC */
+ ________,________,
+ ________,________,
+ ___X____,________,
+ ____XX__,________,
+ ____X___,________,
+ ____X___,________,
+ ____X___,_____X__,
+ ____X___,____X___,
+ ____X___,__XX____,
+ ____X___,_X______,
+ ____X__X,X_______,
+ ____XXX_,________,
+ ____X___,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30ED[32] = { /* code 30ED */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ ____XXXX,XXXXX___,
+ _____X__,____X___,
+ _____X__,____X___,
+ _____X__,____X___,
+ _____X__,___X____,
+ _____X__,___X____,
+ _____XXX,XXXXX___,
+ _____X__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30EE[32] = { /* code 30EE */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,___X____,
+ ____XXXX,XXXXX___,
+ _____X__,___X____,
+ _____X__,___X____,
+ _____X__,___X____,
+ _____X__,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30EF[32] = { /* code 30EF */
+ ________,________,
+ ________,________,
+ ________,____X___,
+ ___XXXXX,XXXXXX__,
+ ____X___,____X___,
+ ____X___,____X___,
+ ____X___,___X____,
+ ____X___,___X____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30F0[32] = { /* code 30F0 */
+ ________,________,
+ ________,XX______,
+ ________,_XX_____,
+ ________,_X______,
+ ___X____,_X______,
+ ____XXXX,XXXXX___,
+ ________,_X______,
+ _____X__,_X______,
+ __X__X__,_X______,
+ ___XXXXX,XXXXXX__,
+ ________,_X______,
+ ________,_X______,
+ ________,_X______,
+ ________,_X______,
+ ________,_X______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30F1[32] = { /* code 30F1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X_XXX,XXXX____,
+ ____X___,__X_____,
+ ______X_,_X______,
+ _______X,X_______,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ __XXXXXX,XXXXXXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30F2[32] = { /* code 30F2 */
+ ________,________,
+ ________,________,
+ ____X___,____X___,
+ _____XXX,XXXXXX__,
+ ________,____X___,
+ ________,____X___,
+ ___X____,___X____,
+ ____XXXX,XXXX____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30F3[32] = { /* code 30F3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X____,________,
+ ____XXX_,_____X__,
+ ________,____X___,
+ ________,___X____,
+ ________,__X_____,
+ ________,_X______,
+ _______X,X_______,
+ __X__XX_,________,
+ ___XX___,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30F4[32] = { /* code 30F4 */
+ ________,________,
+ ________,______X_,
+ _____XX_,____X__X,
+ _______X,_____X__,
+ _______X,___X____,
+ __XXXXXX,XXXXX___,
+ ___X____,___X____,
+ ___X____,___X____,
+ ___X____,___X____,
+ ___X____,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ _____XX_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30F5[32] = { /* code 30F5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,X_______,
+ ________,X_______,
+ ____X_XX,XXXX____,
+ _____X__,X__X____,
+ ________,X__X____,
+ _______X,___X____,
+ _______X,___X____,
+ ______X_,___X____,
+ _____X__,X_X_____,
+ ___XX___,_X______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont16_HK_30F6[32] = { /* code 30F6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ _____X__,________,
+ _____XXX,XXXX____,
+ _____X__,X_______,
+ ____X___,X_______,
+ ___X____,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font16_HK_CharInfo[169] = {
+ { 16, 16, 2, acFont16_HK_3041 } /* code 3041 */
+ ,{ 16, 16, 2, acFont16_HK_3042 } /* code 3042 */
+ ,{ 16, 16, 2, acFont16_HK_3043 } /* code 3043 */
+ ,{ 16, 16, 2, acFont16_HK_3044 } /* code 3044 */
+ ,{ 16, 16, 2, acFont16_HK_3045 } /* code 3045 */
+ ,{ 16, 16, 2, acFont16_HK_3046 } /* code 3046 */
+ ,{ 16, 16, 2, acFont16_HK_3047 } /* code 3047 */
+ ,{ 16, 16, 2, acFont16_HK_3048 } /* code 3048 */
+ ,{ 16, 16, 2, acFont16_HK_3049 } /* code 3049 */
+ ,{ 16, 16, 2, acFont16_HK_304A } /* code 304A */
+ ,{ 16, 16, 2, acFont16_HK_304B } /* code 304B */
+ ,{ 16, 16, 2, acFont16_HK_304C } /* code 304C */
+ ,{ 16, 16, 2, acFont16_HK_304D } /* code 304D */
+ ,{ 16, 16, 2, acFont16_HK_304E } /* code 304E */
+ ,{ 16, 16, 2, acFont16_HK_304F } /* code 304F */
+ ,{ 16, 16, 2, acFont16_HK_3050 } /* code 3050 */
+ ,{ 16, 16, 2, acFont16_HK_3051 } /* code 3051 */
+ ,{ 16, 16, 2, acFont16_HK_3052 } /* code 3052 */
+ ,{ 16, 16, 2, acFont16_HK_3053 } /* code 3053 */
+ ,{ 16, 16, 2, acFont16_HK_3054 } /* code 3054 */
+ ,{ 16, 16, 2, acFont16_HK_3055 } /* code 3055 */
+ ,{ 16, 16, 2, acFont16_HK_3056 } /* code 3056 */
+ ,{ 16, 16, 2, acFont16_HK_3057 } /* code 3057 */
+ ,{ 16, 16, 2, acFont16_HK_3058 } /* code 3058 */
+ ,{ 16, 16, 2, acFont16_HK_3059 } /* code 3059 */
+ ,{ 16, 16, 2, acFont16_HK_305A } /* code 305A */
+ ,{ 16, 16, 2, acFont16_HK_305B } /* code 305B */
+ ,{ 16, 16, 2, acFont16_HK_305C } /* code 305C */
+ ,{ 16, 16, 2, acFont16_HK_305D } /* code 305D */
+ ,{ 16, 16, 2, acFont16_HK_305E } /* code 305E */
+ ,{ 16, 16, 2, acFont16_HK_305F } /* code 305F */
+ ,{ 16, 16, 2, acFont16_HK_3060 } /* code 3060 */
+ ,{ 16, 16, 2, acFont16_HK_3061 } /* code 3061 */
+ ,{ 16, 16, 2, acFont16_HK_3062 } /* code 3062 */
+ ,{ 16, 16, 2, acFont16_HK_3063 } /* code 3063 */
+ ,{ 16, 16, 2, acFont16_HK_3064 } /* code 3064 */
+ ,{ 16, 16, 2, acFont16_HK_3065 } /* code 3065 */
+ ,{ 16, 16, 2, acFont16_HK_3066 } /* code 3066 */
+ ,{ 16, 16, 2, acFont16_HK_3067 } /* code 3067 */
+ ,{ 16, 16, 2, acFont16_HK_3068 } /* code 3068 */
+ ,{ 16, 16, 2, acFont16_HK_3069 } /* code 3069 */
+ ,{ 16, 16, 2, acFont16_HK_306A } /* code 306A */
+ ,{ 16, 16, 2, acFont16_HK_306B } /* code 306B */
+ ,{ 16, 16, 2, acFont16_HK_306C } /* code 306C */
+ ,{ 16, 16, 2, acFont16_HK_306D } /* code 306D */
+ ,{ 16, 16, 2, acFont16_HK_306E } /* code 306E */
+ ,{ 16, 16, 2, acFont16_HK_306F } /* code 306F */
+ ,{ 16, 16, 2, acFont16_HK_3070 } /* code 3070 */
+ ,{ 16, 16, 2, acFont16_HK_3071 } /* code 3071 */
+ ,{ 16, 16, 2, acFont16_HK_3072 } /* code 3072 */
+ ,{ 16, 16, 2, acFont16_HK_3073 } /* code 3073 */
+ ,{ 16, 16, 2, acFont16_HK_3074 } /* code 3074 */
+ ,{ 16, 16, 2, acFont16_HK_3075 } /* code 3075 */
+ ,{ 16, 16, 2, acFont16_HK_3076 } /* code 3076 */
+ ,{ 16, 16, 2, acFont16_HK_3077 } /* code 3077 */
+ ,{ 16, 16, 2, acFont16_HK_3078 } /* code 3078 */
+ ,{ 16, 16, 2, acFont16_HK_3079 } /* code 3079 */
+ ,{ 16, 16, 2, acFont16_HK_307A } /* code 307A */
+ ,{ 16, 16, 2, acFont16_HK_307B } /* code 307B */
+ ,{ 16, 16, 2, acFont16_HK_307C } /* code 307C */
+ ,{ 16, 16, 2, acFont16_HK_307D } /* code 307D */
+ ,{ 16, 16, 2, acFont16_HK_307E } /* code 307E */
+ ,{ 16, 16, 2, acFont16_HK_307F } /* code 307F */
+ ,{ 16, 16, 2, acFont16_HK_3080 } /* code 3080 */
+ ,{ 16, 16, 2, acFont16_HK_3081 } /* code 3081 */
+ ,{ 16, 16, 2, acFont16_HK_3082 } /* code 3082 */
+ ,{ 16, 16, 2, acFont16_HK_3083 } /* code 3083 */
+ ,{ 16, 16, 2, acFont16_HK_3084 } /* code 3084 */
+ ,{ 16, 16, 2, acFont16_HK_3085 } /* code 3085 */
+ ,{ 16, 16, 2, acFont16_HK_3086 } /* code 3086 */
+ ,{ 16, 16, 2, acFont16_HK_3087 } /* code 3087 */
+ ,{ 16, 16, 2, acFont16_HK_3088 } /* code 3088 */
+ ,{ 16, 16, 2, acFont16_HK_3089 } /* code 3089 */
+ ,{ 16, 16, 2, acFont16_HK_308A } /* code 308A */
+ ,{ 16, 16, 2, acFont16_HK_308B } /* code 308B */
+ ,{ 16, 16, 2, acFont16_HK_308C } /* code 308C */
+ ,{ 16, 16, 2, acFont16_HK_308D } /* code 308D */
+ ,{ 16, 16, 2, acFont16_HK_308E } /* code 308E */
+ ,{ 16, 16, 2, acFont16_HK_308F } /* code 308F */
+ ,{ 16, 16, 2, acFont16_HK_3090 } /* code 3090 */
+ ,{ 16, 16, 2, acFont16_HK_3091 } /* code 3091 */
+ ,{ 16, 16, 2, acFont16_HK_3092 } /* code 3092 */
+ ,{ 16, 16, 2, acFont16_HK_3093 } /* code 3093 */
+ ,{ 16, 16, 2, acFont16_HK_30A1 } /* code 30A1 */
+ ,{ 16, 16, 2, acFont16_HK_30A2 } /* code 30A2 */
+ ,{ 16, 16, 2, acFont16_HK_30A3 } /* code 30A3 */
+ ,{ 16, 16, 2, acFont16_HK_30A4 } /* code 30A4 */
+ ,{ 16, 16, 2, acFont16_HK_30A5 } /* code 30A5 */
+ ,{ 16, 16, 2, acFont16_HK_30A6 } /* code 30A6 */
+ ,{ 16, 16, 2, acFont16_HK_30A7 } /* code 30A7 */
+ ,{ 16, 16, 2, acFont16_HK_30A8 } /* code 30A8 */
+ ,{ 16, 16, 2, acFont16_HK_30A9 } /* code 30A9 */
+ ,{ 16, 16, 2, acFont16_HK_30AA } /* code 30AA */
+ ,{ 16, 16, 2, acFont16_HK_30AB } /* code 30AB */
+ ,{ 16, 16, 2, acFont16_HK_30AC } /* code 30AC */
+ ,{ 16, 16, 2, acFont16_HK_30AD } /* code 30AD */
+ ,{ 16, 16, 2, acFont16_HK_30AE } /* code 30AE */
+ ,{ 16, 16, 2, acFont16_HK_30AF } /* code 30AF */
+ ,{ 16, 16, 2, acFont16_HK_30B0 } /* code 30B0 */
+ ,{ 16, 16, 2, acFont16_HK_30B1 } /* code 30B1 */
+ ,{ 16, 16, 2, acFont16_HK_30B2 } /* code 30B2 */
+ ,{ 16, 16, 2, acFont16_HK_30B3 } /* code 30B3 */
+ ,{ 16, 16, 2, acFont16_HK_30B4 } /* code 30B4 */
+ ,{ 16, 16, 2, acFont16_HK_30B5 } /* code 30B5 */
+ ,{ 16, 16, 2, acFont16_HK_30B6 } /* code 30B6 */
+ ,{ 16, 16, 2, acFont16_HK_30B7 } /* code 30B7 */
+ ,{ 16, 16, 2, acFont16_HK_30B8 } /* code 30B8 */
+ ,{ 16, 16, 2, acFont16_HK_30B9 } /* code 30B9 */
+ ,{ 16, 16, 2, acFont16_HK_30BA } /* code 30BA */
+ ,{ 16, 16, 2, acFont16_HK_30BB } /* code 30BB */
+ ,{ 16, 16, 2, acFont16_HK_30BC } /* code 30BC */
+ ,{ 16, 16, 2, acFont16_HK_30BD } /* code 30BD */
+ ,{ 16, 16, 2, acFont16_HK_30BE } /* code 30BE */
+ ,{ 16, 16, 2, acFont16_HK_30BF } /* code 30BF */
+ ,{ 16, 16, 2, acFont16_HK_30C0 } /* code 30C0 */
+ ,{ 16, 16, 2, acFont16_HK_30C1 } /* code 30C1 */
+ ,{ 16, 16, 2, acFont16_HK_30C2 } /* code 30C2 */
+ ,{ 16, 16, 2, acFont16_HK_30C3 } /* code 30C3 */
+ ,{ 16, 16, 2, acFont16_HK_30C4 } /* code 30C4 */
+ ,{ 16, 16, 2, acFont16_HK_30C5 } /* code 30C5 */
+ ,{ 16, 16, 2, acFont16_HK_30C6 } /* code 30C6 */
+ ,{ 16, 16, 2, acFont16_HK_30C7 } /* code 30C7 */
+ ,{ 16, 16, 2, acFont16_HK_30C8 } /* code 30C8 */
+ ,{ 16, 16, 2, acFont16_HK_30C9 } /* code 30C9 */
+ ,{ 16, 16, 2, acFont16_HK_30CA } /* code 30CA */
+ ,{ 16, 16, 2, acFont16_HK_30CB } /* code 30CB */
+ ,{ 16, 16, 2, acFont16_HK_30CC } /* code 30CC */
+ ,{ 16, 16, 2, acFont16_HK_30CD } /* code 30CD */
+ ,{ 16, 16, 2, acFont16_HK_30CE } /* code 30CE */
+ ,{ 16, 16, 2, acFont16_HK_30CF } /* code 30CF */
+ ,{ 16, 16, 2, acFont16_HK_30D0 } /* code 30D0 */
+ ,{ 16, 16, 2, acFont16_HK_30D1 } /* code 30D1 */
+ ,{ 16, 16, 2, acFont16_HK_30D2 } /* code 30D2 */
+ ,{ 16, 16, 2, acFont16_HK_30D3 } /* code 30D3 */
+ ,{ 16, 16, 2, acFont16_HK_30D4 } /* code 30D4 */
+ ,{ 16, 16, 2, acFont16_HK_30D5 } /* code 30D5 */
+ ,{ 16, 16, 2, acFont16_HK_30D6 } /* code 30D6 */
+ ,{ 16, 16, 2, acFont16_HK_30D7 } /* code 30D7 */
+ ,{ 16, 16, 2, acFont16_HK_30D8 } /* code 30D8 */
+ ,{ 16, 16, 2, acFont16_HK_30D9 } /* code 30D9 */
+ ,{ 16, 16, 2, acFont16_HK_30DA } /* code 30DA */
+ ,{ 16, 16, 2, acFont16_HK_30DB } /* code 30DB */
+ ,{ 16, 16, 2, acFont16_HK_30DC } /* code 30DC */
+ ,{ 16, 16, 2, acFont16_HK_30DD } /* code 30DD */
+ ,{ 16, 16, 2, acFont16_HK_30DE } /* code 30DE */
+ ,{ 16, 16, 2, acFont16_HK_30DF } /* code 30DF */
+ ,{ 16, 16, 2, acFont16_HK_30E0 } /* code 30E0 */
+ ,{ 16, 16, 2, acFont16_HK_30E1 } /* code 30E1 */
+ ,{ 16, 16, 2, acFont16_HK_30E2 } /* code 30E2 */
+ ,{ 16, 16, 2, acFont16_HK_30E3 } /* code 30E3 */
+ ,{ 16, 16, 2, acFont16_HK_30E4 } /* code 30E4 */
+ ,{ 16, 16, 2, acFont16_HK_30E5 } /* code 30E5 */
+ ,{ 16, 16, 2, acFont16_HK_30E6 } /* code 30E6 */
+ ,{ 16, 16, 2, acFont16_HK_30E7 } /* code 30E7 */
+ ,{ 16, 16, 2, acFont16_HK_30E8 } /* code 30E8 */
+ ,{ 16, 16, 2, acFont16_HK_30E9 } /* code 30E9 */
+ ,{ 16, 16, 2, acFont16_HK_30EA } /* code 30EA */
+ ,{ 16, 16, 2, acFont16_HK_30EB } /* code 30EB */
+ ,{ 16, 16, 2, acFont16_HK_30EC } /* code 30EC */
+ ,{ 16, 16, 2, acFont16_HK_30ED } /* code 30ED */
+ ,{ 16, 16, 2, acFont16_HK_30EE } /* code 30EE */
+ ,{ 16, 16, 2, acFont16_HK_30EF } /* code 30EF */
+ ,{ 16, 16, 2, acFont16_HK_30F0 } /* code 30F0 */
+ ,{ 16, 16, 2, acFont16_HK_30F1 } /* code 30F1 */
+ ,{ 16, 16, 2, acFont16_HK_30F2 } /* code 30F2 */
+ ,{ 16, 16, 2, acFont16_HK_30F3 } /* code 30F3 */
+ ,{ 16, 16, 2, acFont16_HK_30F4 } /* code 30F4 */
+ ,{ 16, 16, 2, acFont16_HK_30F5 } /* code 30F5 */
+ ,{ 16, 16, 2, acFont16_HK_30F6 } /* code 30F6 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16_HK_Prop2 = {
+ 0x30A1 /* first character */
+ ,0x30F6 /* last character */
+ ,&GUI_Font16_HK_CharInfo[83] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font16_HK_Prop1 = {
+ 0x3041 /* first character */
+ ,0x3093 /* last character */
+ ,&GUI_Font16_HK_CharInfo[0] /* address of first character */
+ ,&GUI_Font16_HK_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font16_HK = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,16 /* height of font */
+ ,16 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font16_HK_Prop1}
+ , 13, 7, 10
+};
+
+
diff --git a/User/lib/lcd/gui/Font/F24B_1.c b/User/lib/lcd/gui/Font/F24B_1.c
new file mode 100644
index 0000000..4f4db48
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F24B_1.c
@@ -0,0 +1,2642 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F24B_1.C
+Purpose : ISO 8859-1, West European Character Set, bold, high
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont24B_1_00A0[ 24] = { /* code 00A0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00A1[ 24] = { /* code 00A1 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ___X____,
+ ___X____,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00A2[ 48] = { /* code 00A2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_X______,
+ ________,_X______,
+ ________,X_______,
+ ________,X_______,
+ ____XXXX,X_______,
+ __XXXXXX,XXX_____,
+ __XXX__X,XXX_____,
+ _XXX___X,_XXX____,
+ _XXX__X_,________,
+ _XXX__X_,________,
+ _XXX__X_,________,
+ _XXXXX__,_XXX____,
+ __XXXX__,XXX_____,
+ __XXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ____X___,________,
+ ____X___,________,
+ ___X____,________,
+ ___X____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00A3[ 48] = { /* code 00A3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XX______,
+ _XXXX__X,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ __XXX___,________,
+ __XXX___,________,
+ _XXX____,________,
+ XXXXXX__,_X______,
+ XXXXXXXX,XXX_____,
+ _X____XX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00A4[ 48] = { /* code 00A4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,X_______,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXX___X,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XXX___X,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ __X_____,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00A5[ 48] = { /* code 00A5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX_____,XXX_____,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __XXX_XX,X_______,
+ __XXX_XX,X_______,
+ __XXX_XX,X_______,
+ ___XXXXX,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ ____XXX_,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00A6[ 24] = { /* code 00A6 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00A7[ 48] = { /* code 00A7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,X_______,
+ __XXX__X,XX______,
+ __XXX__X,XX______,
+ __XXXX__,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXX_XXX,XX______,
+ _XXX___X,XXX_____,
+ _XXX____,XXX_____,
+ _XXXX___,XXX_____,
+ __XXXXX_,XXX_____,
+ ___XXXXX,XX______,
+ _____XXX,X_______,
+ ______XX,XX______,
+ __XXX__X,XX______,
+ __XXX__X,XX______,
+ ___XXXXX,X_______,
+ ____XXXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00A8[ 24] = { /* code 00A8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00A9[ 48] = { /* code 00A9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ _XXX____,___XXX__,
+ _XX__XXX,X___XX__,
+ XX__XX__,XX___XX_,
+ XX__XX__,_____XX_,
+ XX__XX__,_____XX_,
+ XX__XX__,_____XX_,
+ XX__XX__,XX___XX_,
+ _XX__XXX,X___XX__,
+ _XXX____,___XXX__,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00AA[ 24] = { /* code 00AA */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XXXXXXX_,
+ _____XX_,
+ __XXXXX_,
+ XXXX_XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXX_XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00AB[ 48] = { /* code 00AB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,_XX_____,
+ ___XX___,XX______,
+ __XXX__X,XX______,
+ __XX___X,X_______,
+ _XXX__XX,X_______,
+ _XXX__XX,X_______,
+ __XX___X,X_______,
+ __XXX__X,XX______,
+ ___XX___,XX______,
+ ____XX__,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00AC[ 48] = { /* code 00AC */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00AD[ 24] = { /* code 00AD */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00AE[ 48] = { /* code 00AE */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ _XXX____,___XXX__,
+ _XX__XXX,X___XX__,
+ XX___XX_,XX___XX_,
+ XX___XX_,XX___XX_,
+ XX___XXX,X____XX_,
+ XX___XX_,XX___XX_,
+ XX___XX_,XX___XX_,
+ _XX__XX_,XX__XX__,
+ _XXX____,___XXX__,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00AF[ 48] = { /* code 00AF */
+ ________,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00B0[ 24] = { /* code 00B0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXXX_,
+ _XX___XX,
+ _XX___XX,
+ _XX___XX,
+ __XXXXX_,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00B1[ 48] = { /* code 00B1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00B2[ 24] = { /* code 00B2 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XXXXXX__,
+ XX__XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XXXXX__,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00B3[ 24] = { /* code 00B3 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XXXXXX_,
+ _XX__XX_,
+ ___XXX__,
+ _____XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00B4[ 24] = { /* code 00B4 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00B5[ 48] = { /* code 00B5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXXX__X,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXX_XX_,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00B6[ 48] = { /* code 00B6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ XXXXXX__,XX______,
+ XXXXXX__,XX______,
+ XXXXXX__,XX______,
+ XXXXXX__,XX______,
+ _XXXXX__,XX______,
+ __XXXX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00B7[ 24] = { /* code 00B7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00B8[ 24] = { /* code 00B8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ____XX__,
+ ____XX__,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00B9[ 24] = { /* code 00B9 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XXX___,
+ _XXXX___,
+ _X_XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00BA[ 24] = { /* code 00BA */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXXX_,
+ _XX___XX,
+ _XX___XX,
+ _XX___XX,
+ _XX___XX,
+ __XXXXX_,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00BB[ 48] = { /* code 00BB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX___XX,________,
+ __XX___X,X_______,
+ __XXX__X,XX______,
+ ___XX___,XX______,
+ ___XXX__,XXX_____,
+ ___XXX__,XXX_____,
+ ___XX___,XX______,
+ __XXX__X,XX______,
+ __XX___X,X_______,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00BC[ 72] = { /* code 00BC */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ___XX___,____XX__,________,
+ __XXX___,___XXX__,________,
+ _XXXX___,___XX___,________,
+ _X_XX___,__XX____,________,
+ ___XX___,__XX____,________,
+ ___XX___,_XX_____,________,
+ ___XX___,XX______,________,
+ ___XX___,XX_____X,X_______,
+ _______X,X_____XX,X_______,
+ ______XX,X____X_X,X_______,
+ ______XX,____X__X,X_______,
+ _____XX_,___XXXXX,XX______,
+ ____XXX_,___XXXXX,XX______,
+ ____XX__,_______X,X_______,
+ ___XX___,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00BD[ 72] = { /* code 00BD */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ___XX___,____XX__,________,
+ __XXX___,___XX___,________,
+ _XXXX___,__XXX___,________,
+ _X_XX___,__XX____,________,
+ ___XX___,_XX_____,________,
+ ___XX___,_XX_____,________,
+ ___XX___,XX______,________,
+ ___XX__X,XX__XXXX,________,
+ _______X,X__XXXXX,X_______,
+ ______XX,___XX__X,X_______,
+ ______XX,_______X,X_______,
+ _____XX_,______XX,________,
+ ____XXX_,_____XX_,________,
+ ____XX__,____XXXX,X_______,
+ ___XX___,___XXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00BE[ 72] = { /* code 00BE */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXXX___,____XX__,________,
+ XXXXXX__,____XX__,________,
+ XX__XX__,___XX___,________,
+ __XXX___,__XXX___,________,
+ ____XX__,__XX____,________,
+ XX__XX__,_XX_____,________,
+ XXXXXX__,XXX_____,________,
+ _XXXX___,XX_____X,X_______,
+ _______X,X_____XX,X_______,
+ ______XX,X____X_X,X_______,
+ ______XX,____X__X,X_______,
+ _____XX_,___XXXXX,XX______,
+ _____XX_,___XXXXX,XX______,
+ ____XX__,_______X,X_______,
+ ___XX___,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00BF[ 48] = { /* code 00BF */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ____XXXX,________,
+ ___XXXX_,________,
+ __XXXX__,________,
+ _XXXX___,________,
+ _XXX____,________,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00C0[ 48] = { /* code 00C0 */
+ _____XXX,________,
+ ______XX,________,
+ _______X,X_______,
+ ________,________,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ _XXXXXXX,XXXXXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ XXX_____,____XXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00C1[ 48] = { /* code 00C1 */
+ _______X,XX______,
+ _______X,X_______,
+ ______XX,________,
+ ________,________,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ _XXXXXXX,XXXXXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ XXX_____,____XXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00C2[ 48] = { /* code 00C2 */
+ ______XX,X_______,
+ _____XX_,XX______,
+ ____XX__,_XX_____,
+ ________,________,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ _XXXXXXX,XXXXXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ XXX_____,____XXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00C3[ 48] = { /* code 00C3 */
+ _____XXX,__X_____,
+ ____XXXX,XXX_____,
+ ____X__X,XX______,
+ ________,________,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ _XXXXXXX,XXXXXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ XXX_____,____XXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00C4[ 48] = { /* code 00C4 */
+ ________,________,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ ________,________,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ _XXXXXXX,XXXXXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ XXX_____,____XXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00C5[ 48] = { /* code 00C5 */
+ ________,________,
+ _______X,X_______,
+ ______X_,_X______,
+ ______X_,_X______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ _XXXXXXX,XXXXXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ XXX_____,____XXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00C6[ 72] = { /* code 00C6 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,XXXX____,
+ _____XXX,_XXXXXXX,XXXX____,
+ ____XXX_,_XXX____,________,
+ ____XXX_,_XXX____,________,
+ ___XXX__,_XXXXXXX,XXX_____,
+ ___XXX__,_XXXXXXX,XXX_____,
+ __XXXX__,_XXXXXXX,XXX_____,
+ __XXXXXX,XXXX____,________,
+ __XXXXXX,XXXX____,________,
+ _XXXXXXX,XXXX____,________,
+ _XXX____,_XXX____,________,
+ XXX_____,_XXXXXXX,XXXX____,
+ XXX_____,_XXXXXXX,XXXX____,
+ XX______,_XXXXXXX,XXXX____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00C7[ 48] = { /* code 00C7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,__XXXX__,
+ _XXXX___,___XX___,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXX___,___XX___,
+ __XXXX__,__XXXX__,
+ __XXXXXX,XXXXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ _____XXX,X_______,
+ ________,XX______,
+ ________,XX______,
+ ____XXXX,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00C8[ 48] = { /* code 00C8 */
+ _____XXX,________,
+ ______XX,________,
+ _______X,X_______,
+ ________,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00C9[ 48] = { /* code 00C9 */
+ _______X,XX______,
+ _______X,X_______,
+ ______XX,________,
+ ________,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00CA[ 48] = { /* code 00CA */
+ ______XX,X_______,
+ _____XX_,XX______,
+ ____XX__,_XX_____,
+ ________,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00CB[ 48] = { /* code 00CB */
+ ________,________,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ ________,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00CC[ 24] = { /* code 00CC */
+ XXX_____,
+ _XX_____,
+ __XX____,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00CD[ 24] = { /* code 00CD */
+ __XXX___,
+ __XX____,
+ _XX_____,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00CE[ 24] = { /* code 00CE */
+ _XXX____,
+ XX_XX___,
+ X___X___,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00CF[ 24] = { /* code 00CF */
+ ________,
+ X___X___,
+ X___X___,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00D0[ 48] = { /* code 00D0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXXX__,
+ __XXX___,___XXX__,
+ XXXXXXXX,___XXX__,
+ XXXXXXXX,___XXX__,
+ __XXX___,___XXX__,
+ __XXX___,___XXX__,
+ __XXX___,___XXX__,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00D1[ 48] = { /* code 00D1 */
+ _____XXX,__X_____,
+ ____XXXX,XXX_____,
+ ____X__X,XX______,
+ ________,________,
+ _XXX____,__XXX___,
+ _XXXX___,__XXX___,
+ _XXXX___,__XXX___,
+ _XXXXX__,__XXX___,
+ _XXXXXX_,__XXX___,
+ _XXX_XX_,__XXX___,
+ _XXX_XXX,__XXX___,
+ _XXX__XX,__XXX___,
+ _XXX__XX,X_XXX___,
+ _XXX___X,X_XXX___,
+ _XXX___X,XXXXX___,
+ _XXX____,XXXXX___,
+ _XXX____,XXXXX___,
+ _XXX____,_XXXX___,
+ _XXX____,__XXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00D2[ 48] = { /* code 00D2 */
+ ______XX,X_______,
+ _______X,X_______,
+ ________,XX______,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXXX__,
+ __XXXX__,__XXXX__,
+ _XXXX___,___XXXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXXX___,___XXXX_,
+ __XXXX__,__XXXX__,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00D3[ 48] = { /* code 00D3 */
+ _______X,XX______,
+ _______X,X_______,
+ ______XX,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXXX__,
+ __XXXX__,__XXXX__,
+ _XXXX___,___XXXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXXX___,___XXXX_,
+ __XXXX__,__XXXX__,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00D4[ 48] = { /* code 00D4 */
+ _______X,XX______,
+ ______XX,_XX_____,
+ _____XX_,__XX____,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXXX__,
+ __XXXX__,__XXXX__,
+ _XXXX___,___XXXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXXX___,___XXXX_,
+ __XXXX__,__XXXX__,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00D5[ 48] = { /* code 00D5 */
+ ______XX,X__X____,
+ _____XXX,XXXX____,
+ _____X__,XXX_____,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXXX__,
+ __XXXX__,__XXXX__,
+ _XXXX___,___XXXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXXX___,___XXXX_,
+ __XXXX__,__XXXX__,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00D6[ 48] = { /* code 00D6 */
+ ________,________,
+ _____XX_,__XX____,
+ _____XX_,__XX____,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXXX__,
+ __XXXX__,__XXXX__,
+ _XXXX___,___XXXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXXX___,___XXXX_,
+ __XXXX__,__XXXX__,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00D7[ 48] = { /* code 00D7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,_X______,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ ___XXXXX,X_______,
+ ____XXXX,________,
+ ____XXXX,________,
+ ___XXXXX,X_______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ __X_____,_X______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00D8[ 48] = { /* code 00D8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_____X__,
+ _____XXX,XXXX_XXX,
+ ___XXXXX,XXXXXXX_,
+ __XXXXXX,XXXXXX__,
+ __XXXX__,__XXXX__,
+ _XXXX___,_XXXXXX_,
+ _XXX____,XXX_XXX_,
+ _XXX___X,XX__XXX_,
+ _XXX___X,X___XXX_,
+ _XXX__XX,X___XXX_,
+ _XXX_XXX,____XXX_,
+ _XXXXXX_,___XXXX_,
+ __XXXX__,__XXXX__,
+ __XXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXX___,
+ XXX__XXX,XXX_____,
+ __X_____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00D9[ 48] = { /* code 00D9 */
+ _____XXX,________,
+ ______XX,________,
+ _______X,X_______,
+ ________,________,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXX___,_XXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00DA[ 48] = { /* code 00DA */
+ ______XX,X_______,
+ ______XX,________,
+ _____XX_,________,
+ ________,________,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXX___,_XXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00DB[ 48] = { /* code 00DB */
+ ______XX,X_______,
+ _____XX_,XX______,
+ ____XX__,_XX_____,
+ ________,________,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXX___,_XXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00DC[ 48] = { /* code 00DC */
+ ________,________,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ ________,________,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXX___,_XXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00DD[ 48] = { /* code 00DD */
+ ______XX,X_______,
+ ______XX,________,
+ _____XX_,________,
+ ________,________,
+ XXX_____,__XXX___,
+ XXX_____,__XXX___,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ ___XXX_X,XX______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00DE[ 48] = { /* code 00DE */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXX_____,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00DF[ 48] = { /* code 00DF */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX__XX,X_______,
+ _XXX__XX,X_______,
+ _XXX__XX,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XXX_____,
+ _XXX____,XXXX____,
+ _XXX____,_XXX____,
+ _XXX__X_,_XXX____,
+ _XXX_XXX,XXX_____,
+ _XXX__XX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00E0[ 48] = { /* code 00E0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ _____XX_,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XX_____,XXX_____,
+ ______XX,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXXX__,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00E1[ 48] = { /* code 00E1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XX_____,XXX_____,
+ ______XX,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXXX__,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00E2[ 48] = { /* code 00E2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XX_____,XXX_____,
+ ______XX,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXXX__,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00E3[ 48] = { /* code 00E3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,_X______,
+ ___XXXXX,XX______,
+ ___X__XX,X_______,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XX_____,XXX_____,
+ ______XX,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXXX__,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00E4[ 48] = { /* code 00E4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XX_____,XXX_____,
+ ______XX,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXXX__,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00E5[ 48] = { /* code 00E5 */
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____X__X,________,
+ ____X__X,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XX_____,XXX_____,
+ ______XX,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXXX__,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00E6[ 72] = { /* code 00E6 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ___XXXXX,X__XXXX_,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ _XX_____,XXXX__XX,X_______,
+ ________,XXX____X,XX______,
+ ______XX,XXXXXXXX,XX______,
+ __XXXXXX,XXXXXXXX,XX______,
+ _XXXXX__,XXX_____,________,
+ _XXX____,XXX____X,XX______,
+ _XXX___X,XXXX__XX,X_______,
+ _XXXXXXX,XXXXXXXX,X_______,
+ ___XXXXX,___XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00E7[ 48] = { /* code 00E7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ____XXXX,________,
+ _______X,X_______,
+ _______X,X_______,
+ ___XXXXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00E8[ 48] = { /* code 00E8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ _____XX_,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00E9[ 48] = { /* code 00E9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00EA[ 48] = { /* code 00EA */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00EB[ 48] = { /* code 00EB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00EC[ 24] = { /* code 00EC */
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ _XX_____,
+ __XX____,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00ED[ 24] = { /* code 00ED */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XX____,
+ _XX_____,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00EE[ 24] = { /* code 00EE */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ XX_XX___,
+ X___X___,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00EF[ 24] = { /* code 00EF */
+ ________,
+ ________,
+ ________,
+ ________,
+ X___X___,
+ X___X___,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00F0[ 48] = { /* code 00F0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,XX______,
+ _____XXX,________,
+ ____XX_X,X_______,
+ _______X,XX______,
+ ____XXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXX___,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00F1[ 48] = { /* code 00F1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,_X______,
+ ___XXXXX,XX______,
+ ___X__XX,X_______,
+ ________,________,
+ ________,________,
+ _XXX__XX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXXX___,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00F2[ 48] = { /* code 00F2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ______XX,________,
+ _______X,X_______,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00F3[ 48] = { /* code 00F3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,X_______,
+ ______XX,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00F4[ 48] = { /* code 00F4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00F5[ 48] = { /* code 00F5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,_X______,
+ ___XXXXX,XX______,
+ ___X__XX,X_______,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00F6[ 48] = { /* code 00F6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00F7[ 48] = { /* code 00F7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ________,________,
+ XXXXXXXX,XXX_____,
+ XXXXXXXX,XXX_____,
+ XXXXXXXX,XXX_____,
+ ________,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00F8[ 48] = { /* code 00F8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,__X_____,
+ ____XXXX,X_XX____,
+ ___XXXXX,XXX_____,
+ __XXX___,XXX_____,
+ _XXX___X,XXXX____,
+ _XXX__XX,_XXX____,
+ _XXX__X_,_XXX____,
+ _XXX_XX_,_XXX____,
+ _XXXXX__,_XXX____,
+ __XXX___,XXX_____,
+ __XXXXXX,XX______,
+ _XX_XXXX,X_______,
+ __X_____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00F9[ 48] = { /* code 00F9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ _____XX_,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00FA[ 48] = { /* code 00FA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,X_______,
+ ______XX,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00FB[ 48] = { /* code 00FB */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ________,________,
+ ________,________,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00FC[ 48] = { /* code 00FC */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ________,________,
+ ________,________,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00FD[ 48] = { /* code 00FD */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ________,________,
+ ________,________,
+ XXX_____,XXX_____,
+ XXX_____,XXX_____,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,X_______,
+ __XXX_XX,X_______,
+ __XXX_XX,X_______,
+ ___XX_XX,________,
+ ___XXXXX,________,
+ ___XXXXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ _XXXXX__,________,
+ _XXXX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00FE[ 48] = { /* code 00FE */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX_XXX,X_______,
+ _XXXXXXX,XXX_____,
+ _XXXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXX_XXX,X_______,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_1_00FF[ 48] = { /* code 00FF */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ ________,________,
+ ________,________,
+ XXX_____,XXX_____,
+ XXX_____,XXX_____,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,X_______,
+ __XXX_XX,X_______,
+ __XXX_XX,X_______,
+ ___XX_XX,________,
+ ___XXXXX,________,
+ ___XXXXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ _XXXXX__,________,
+ _XXXX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font24B_1_CharInfo[96] = {
+ { 6, 6, 1, acFont24B_1_00A0 } /* code 00A0 */
+ ,{ 7, 7, 1, acFont24B_1_00A1 } /* code 00A1 */
+ ,{ 12, 12, 2, acFont24B_1_00A2 } /* code 00A2 */
+ ,{ 12, 12, 2, acFont24B_1_00A3 } /* code 00A3 */
+ ,{ 12, 12, 2, acFont24B_1_00A4 } /* code 00A4 */
+ ,{ 12, 12, 2, acFont24B_1_00A5 } /* code 00A5 */
+ ,{ 6, 6, 1, acFont24B_1_00A6 } /* code 00A6 */
+ ,{ 12, 12, 2, acFont24B_1_00A7 } /* code 00A7 */
+ ,{ 7, 7, 1, acFont24B_1_00A8 } /* code 00A8 */
+ ,{ 15, 15, 2, acFont24B_1_00A9 } /* code 00A9 */
+ ,{ 8, 8, 1, acFont24B_1_00AA } /* code 00AA */
+ ,{ 12, 12, 2, acFont24B_1_00AB } /* code 00AB */
+ ,{ 12, 12, 2, acFont24B_1_00AC } /* code 00AC */
+ ,{ 7, 7, 1, acFont24B_1_00AD } /* code 00AD */
+ ,{ 15, 15, 2, acFont24B_1_00AE } /* code 00AE */
+ ,{ 12, 12, 2, acFont24B_1_00AF } /* code 00AF */
+ ,{ 8, 8, 1, acFont24B_1_00B0 } /* code 00B0 */
+ ,{ 12, 12, 2, acFont24B_1_00B1 } /* code 00B1 */
+ ,{ 7, 7, 1, acFont24B_1_00B2 } /* code 00B2 */
+ ,{ 7, 7, 1, acFont24B_1_00B3 } /* code 00B3 */
+ ,{ 7, 7, 1, acFont24B_1_00B4 } /* code 00B4 */
+ ,{ 12, 12, 2, acFont24B_1_00B5 } /* code 00B5 */
+ ,{ 12, 12, 2, acFont24B_1_00B6 } /* code 00B6 */
+ ,{ 6, 6, 1, acFont24B_1_00B7 } /* code 00B7 */
+ ,{ 7, 7, 1, acFont24B_1_00B8 } /* code 00B8 */
+ ,{ 7, 7, 1, acFont24B_1_00B9 } /* code 00B9 */
+ ,{ 8, 8, 1, acFont24B_1_00BA } /* code 00BA */
+ ,{ 12, 12, 2, acFont24B_1_00BB } /* code 00BB */
+ ,{ 18, 18, 3, acFont24B_1_00BC } /* code 00BC */
+ ,{ 18, 18, 3, acFont24B_1_00BD } /* code 00BD */
+ ,{ 18, 18, 3, acFont24B_1_00BE } /* code 00BE */
+ ,{ 13, 13, 2, acFont24B_1_00BF } /* code 00BF */
+ ,{ 15, 15, 2, acFont24B_1_00C0 } /* code 00C0 */
+ ,{ 15, 15, 2, acFont24B_1_00C1 } /* code 00C1 */
+ ,{ 15, 15, 2, acFont24B_1_00C2 } /* code 00C2 */
+ ,{ 15, 15, 2, acFont24B_1_00C3 } /* code 00C3 */
+ ,{ 15, 15, 2, acFont24B_1_00C4 } /* code 00C4 */
+ ,{ 15, 15, 2, acFont24B_1_00C5 } /* code 00C5 */
+ ,{ 21, 21, 3, acFont24B_1_00C6 } /* code 00C6 */
+ ,{ 15, 15, 2, acFont24B_1_00C7 } /* code 00C7 */
+ ,{ 14, 14, 2, acFont24B_1_00C8 } /* code 00C8 */
+ ,{ 14, 14, 2, acFont24B_1_00C9 } /* code 00C9 */
+ ,{ 14, 14, 2, acFont24B_1_00CA } /* code 00CA */
+ ,{ 14, 14, 2, acFont24B_1_00CB } /* code 00CB */
+ ,{ 5, 5, 1, acFont24B_1_00CC } /* code 00CC */
+ ,{ 5, 5, 1, acFont24B_1_00CD } /* code 00CD */
+ ,{ 5, 5, 1, acFont24B_1_00CE } /* code 00CE */
+ ,{ 5, 5, 1, acFont24B_1_00CF } /* code 00CF */
+ ,{ 15, 15, 2, acFont24B_1_00D0 } /* code 00D0 */
+ ,{ 14, 14, 2, acFont24B_1_00D1 } /* code 00D1 */
+ ,{ 16, 16, 2, acFont24B_1_00D2 } /* code 00D2 */
+ ,{ 16, 16, 2, acFont24B_1_00D3 } /* code 00D3 */
+ ,{ 16, 16, 2, acFont24B_1_00D4 } /* code 00D4 */
+ ,{ 16, 16, 2, acFont24B_1_00D5 } /* code 00D5 */
+ ,{ 16, 16, 2, acFont24B_1_00D6 } /* code 00D6 */
+ ,{ 12, 12, 2, acFont24B_1_00D7 } /* code 00D7 */
+ ,{ 16, 16, 2, acFont24B_1_00D8 } /* code 00D8 */
+ ,{ 14, 14, 2, acFont24B_1_00D9 } /* code 00D9 */
+ ,{ 14, 14, 2, acFont24B_1_00DA } /* code 00DA */
+ ,{ 14, 14, 2, acFont24B_1_00DB } /* code 00DB */
+ ,{ 14, 14, 2, acFont24B_1_00DC } /* code 00DC */
+ ,{ 13, 13, 2, acFont24B_1_00DD } /* code 00DD */
+ ,{ 14, 14, 2, acFont24B_1_00DE } /* code 00DE */
+ ,{ 13, 13, 2, acFont24B_1_00DF } /* code 00DF */
+ ,{ 12, 12, 2, acFont24B_1_00E0 } /* code 00E0 */
+ ,{ 12, 12, 2, acFont24B_1_00E1 } /* code 00E1 */
+ ,{ 12, 12, 2, acFont24B_1_00E2 } /* code 00E2 */
+ ,{ 12, 12, 2, acFont24B_1_00E3 } /* code 00E3 */
+ ,{ 12, 12, 2, acFont24B_1_00E4 } /* code 00E4 */
+ ,{ 12, 12, 2, acFont24B_1_00E5 } /* code 00E5 */
+ ,{ 19, 19, 3, acFont24B_1_00E6 } /* code 00E6 */
+ ,{ 12, 12, 2, acFont24B_1_00E7 } /* code 00E7 */
+ ,{ 12, 12, 2, acFont24B_1_00E8 } /* code 00E8 */
+ ,{ 12, 12, 2, acFont24B_1_00E9 } /* code 00E9 */
+ ,{ 12, 12, 2, acFont24B_1_00EA } /* code 00EA */
+ ,{ 12, 12, 2, acFont24B_1_00EB } /* code 00EB */
+ ,{ 5, 5, 1, acFont24B_1_00EC } /* code 00EC */
+ ,{ 5, 5, 1, acFont24B_1_00ED } /* code 00ED */
+ ,{ 5, 5, 1, acFont24B_1_00EE } /* code 00EE */
+ ,{ 5, 5, 1, acFont24B_1_00EF } /* code 00EF */
+ ,{ 13, 13, 2, acFont24B_1_00F0 } /* code 00F0 */
+ ,{ 13, 13, 2, acFont24B_1_00F1 } /* code 00F1 */
+ ,{ 13, 13, 2, acFont24B_1_00F2 } /* code 00F2 */
+ ,{ 13, 13, 2, acFont24B_1_00F3 } /* code 00F3 */
+ ,{ 13, 13, 2, acFont24B_1_00F4 } /* code 00F4 */
+ ,{ 13, 13, 2, acFont24B_1_00F5 } /* code 00F5 */
+ ,{ 13, 13, 2, acFont24B_1_00F6 } /* code 00F6 */
+ ,{ 12, 12, 2, acFont24B_1_00F7 } /* code 00F7 */
+ ,{ 13, 13, 2, acFont24B_1_00F8 } /* code 00F8 */
+ ,{ 13, 13, 2, acFont24B_1_00F9 } /* code 00F9 */
+ ,{ 13, 13, 2, acFont24B_1_00FA } /* code 00FA */
+ ,{ 13, 13, 2, acFont24B_1_00FB } /* code 00FB */
+ ,{ 13, 13, 2, acFont24B_1_00FC } /* code 00FC */
+ ,{ 11, 11, 2, acFont24B_1_00FD } /* code 00FD */
+ ,{ 13, 13, 2, acFont24B_1_00FE } /* code 00FE */
+ ,{ 11, 11, 2, acFont24B_1_00FF } /* code 00FF */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font24B_1_Prop2 = {
+ 0x00A0 /* first character */
+ ,0x00FF /* last character */
+ ,&GUI_Font24B_1_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font24B_1_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font24B_ASCII_CharInfo[0] /* address of first character */
+ ,&GUI_Font24B_1_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font24B_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,24 /* height of font */
+ ,24 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font24B_1_Prop1}
+ ,19, 11, 15
+};
+
diff --git a/User/lib/lcd/gui/Font/F24B_ASCII.c b/User/lib/lcd/gui/Font/F24B_ASCII.c
new file mode 100644
index 0000000..6f4bd50
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F24B_ASCII.c
@@ -0,0 +1,2608 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F24B_ASCII.C
+Purpose : ASCII character set, bold, high
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0020[ 24] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0021[ 24] = { /* code 0021 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ___X____,
+ ___X____,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0022[ 48] = { /* code 0022 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX__XX,X_______,
+ _XXX__XX,X_______,
+ _XXX__XX,X_______,
+ _XXX__XX,X_______,
+ _XXX__XX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0023[ 48] = { /* code 0023 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ ___XX___,XX______,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ ___XX___,XX______,
+ __XXX__X,XX______,
+ __XX___X,X_______,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ __XX___X,X_______,
+ _XXX__XX,X_______,
+ _XX___XX,________,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0024[ 48] = { /* code 0024 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XXX_XX_,XXX_____,
+ _XXX_XX_,XXX_____,
+ _XXX_XX_,________,
+ _XXXXXX_,________,
+ __XXXXXX,________,
+ ___XXXXX,XX______,
+ _____XXX,XXX_____,
+ _____XX_,XXX_____,
+ _____XX_,XXX_____,
+ _XXX_XX_,XXX_____,
+ _XXX_XX_,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0025[ 72] = { /* code 0025 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,___XX___,________,
+ _XXXXXX_,__XXX___,________,
+ _XX__XX_,__XX____,________,
+ _XX__XX_,__XX____,________,
+ _XX__XX_,_XX_____,________,
+ _XX__XX_,_XX_____,________,
+ _XXXXXX_,XX______,________,
+ __XXXX__,XX______,________,
+ _______X,X__XXXX_,________,
+ _______X,X_XXXXXX,________,
+ ______XX,X_XX__XX,________,
+ ______XX,__XX__XX,________,
+ ______XX,__XX__XX,________,
+ _____XX_,__XX__XX,________,
+ _____XX_,__XXXXXX,________,
+ ____XX__,___XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0026[ 48] = { /* code 0026 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ ____XXXX,XX______,
+ ___XXX__,XXX_____,
+ ___XXX__,XXX_____,
+ ___XXXX_,XXX_____,
+ ____XXXX,XX______,
+ ____XXXX,X_______,
+ ___XXXXX,X_______,
+ __XXXXXX,X__XXX__,
+ _XXX___X,XXXXXX__,
+ _XXX___X,XXXXX___,
+ _XXX____,XXXX____,
+ _XXXX__X,XXXXXX__,
+ __XXXXXX,XXXXXXX_,
+ ___XXXXX,X___XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0027[ 24] = { /* code 0027 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0028[ 24] = { /* code 0028 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ __XXX___,
+ __XXX___,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __XX____,
+ __XXX___,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0029[ 24] = { /* code 0029 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ __XX____,
+ __XXX___,
+ __XXX___,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XX___,
+ __XXX___,
+ __XXX___,
+ __XX____,
+ __XX____,
+ _XX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_002A[ 24] = { /* code 002A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ XX_XX_XX,
+ XXXXXXXX,
+ ___XXX__,
+ __XXXX__,
+ _XX__XX_,
+ __X__X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_002B[ 48] = { /* code 002B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_002C[ 24] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ___X____,
+ __XX____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_002D[ 24] = { /* code 002D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_002E[ 24] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_002F[ 24] = { /* code 002F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XX______,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0030[ 48] = { /* code 0030 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0031[ 48] = { /* code 0031 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,X_______,
+ ______XX,X_______,
+ _____XXX,X_______,
+ ___XXXXX,X_______,
+ __XXXXXX,X_______,
+ __XXX_XX,X_______,
+ __X___XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0032[ 48] = { /* code 0032 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XXXX__X,XXX_____,
+ _XXX____,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ _______X,XX______,
+ ______XX,XX______,
+ _____XXX,X_______,
+ ____XXXX,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ __XXX___,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0033[ 48] = { /* code 0033 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _______X,XX______,
+ ______XX,XX______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _______X,XX______,
+ ________,XXX_____,
+ ________,XXX_____,
+ _XXX____,XXX_____,
+ _XXXX__X,XX______,
+ __XXXXXX,XX______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0034[ 48] = { /* code 0034 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ ___XX_XX,X_______,
+ __XX__XX,X_______,
+ __XX__XX,X_______,
+ _XX___XX,X_______,
+ XX____XX,X_______,
+ XXXXXXXX,XXX_____,
+ XXXXXXXX,XXX_____,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0035[ 48] = { /* code 0035 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XXX___X,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ _XXX____,XXX_____,
+ _XXXX__X,XX______,
+ __XXXXXX,XX______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0036[ 48] = { /* code 0036 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XX______,
+ __XXX__X,XXX_____,
+ _XXX____,X_______,
+ _XXX____,________,
+ _XXX_XXX,X_______,
+ _XXXXXXX,XX______,
+ _XXXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0037[ 48] = { /* code 0037 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,XXX_____,
+ _______X,XX______,
+ ______XX,X_______,
+ ______XX,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0038[ 48] = { /* code 0038 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XXXX__X,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ ___XXXXX,X_______,
+ ___XXXXX,X_______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXXX__X,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0039[ 48] = { /* code 0039 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ __XXX__X,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,XXX_____,
+ ________,XXX_____,
+ __XX____,XXX_____,
+ _XXXX__X,XX______,
+ __XXXXXX,XX______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_003A[ 24] = { /* code 003A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_003B[ 24] = { /* code 003B */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ____X___,
+ ___XX___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_003C[ 48] = { /* code 003C */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,__X_____,
+ ________,XXX_____,
+ _____XXX,XXX_____,
+ ___XXXXX,X_______,
+ _XXXXX__,________,
+ _XXX____,________,
+ _XXXXXX_,________,
+ ___XXXXX,XX______,
+ _____XXX,XXX_____,
+ ________,XXX_____,
+ ________,__X_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_003D[ 48] = { /* code 003D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_003E[ 48] = { /* code 003E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _X______,________,
+ _XXX____,________,
+ _XXXXXX_,________,
+ ___XXXXX,X_______,
+ ______XX,XXX_____,
+ ________,XXX_____,
+ _____XXX,XXX_____,
+ __XXXXXX,X_______,
+ _XXXXXX_,________,
+ _XXX____,________,
+ _X______,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_003F[ 48] = { /* code 003F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XXX_____,
+ _XXXX___,XXXX____,
+ _XXX____,_XXX____,
+ ________,_XXX____,
+ ________,XXXX____,
+ _______X,XXX_____,
+ ______XX,XX______,
+ _____XXX,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0040[ 72] = { /* code 0040 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,______XX,X_______,
+ ___XXX__,_______X,XX______,
+ ___XX__X,XX_XXXX_,XX______,
+ __XX__XX,XXXXXX__,_XX_____,
+ __XX__XX,XXXXXX__,_XX_____,
+ _XX___XX,X_XXXX__,_XX_____,
+ _XX__XXX,__XXXX__,_XX_____,
+ _XX__XXX,__XXXX__,_XX_____,
+ _XX__XXX,__XXX___,XX______,
+ _XX__XXX,_XXXX___,XX______,
+ _XX__XXX,XXXXX__X,X_______,
+ _XX___XX,XXXXXXXX,________,
+ __XX__XX,X_XXXX__,________,
+ __XXX___,________,_XXX____,
+ ___XXX__,________,XXX_____,
+ ____XXXX,______XX,XX______,
+ _____XXX,XXXXXXXX,X_______,
+ _______X,XXXXXXX_,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0041[ 48] = { /* code 0041 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ _XXXXXXX,XXXXXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ XXX_____,____XXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0042[ 48] = { /* code 0042 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXX___,___XXX__,
+ __XXX___,___XXX__,
+ __XXX___,___XXX__,
+ __XXXXXX,XXXXXX__,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0043[ 48] = { /* code 0043 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,__XXXX__,
+ _XXXX___,___XX___,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXX___,___XX___,
+ __XXXX__,__XXXX__,
+ __XXXXXX,XXXXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0044[ 48] = { /* code 0044 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXXX__,
+ __XXX___,___XXX__,
+ __XXX___,___XXX__,
+ __XXX___,___XXX__,
+ __XXX___,___XXX__,
+ __XXX___,___XXX__,
+ __XXX___,___XXX__,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0045[ 48] = { /* code 0045 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0046[ 48] = { /* code 0046 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0047[ 48] = { /* code 0047 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XXX_____,
+ ____XXXX,XXXXX___,
+ ___XXXXX,XXXXXX__,
+ __XXXX__,___XXXX_,
+ _XXXX___,____XX__,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,XXXXXXX_,
+ _XXX____,XXXXXXX_,
+ _XXX____,XXXXXXX_,
+ __XXX___,____XXX_,
+ __XXXX__,___XXXX_,
+ ___XXXXX,XXXXXXX_,
+ ____XXXX,XXXXXX__,
+ ______XX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0048[ 48] = { /* code 0048 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0049[ 24] = { /* code 0049 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_004A[ 48] = { /* code 004A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXXX___X,XX______,
+ _XXXXXXX,XX______,
+ _XXXXXXX,X_______,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_004B[ 48] = { /* code 004B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXX___,__XXXX__,
+ __XXX___,_XXXX___,
+ __XXX___,XXXX____,
+ __XXX___,XXX_____,
+ __XXX__X,XX______,
+ __XXX_XX,X_______,
+ __XXXXXX,XX______,
+ __XXXXXX,XX______,
+ __XXXXX_,XXX_____,
+ __XXXX__,XXX_____,
+ __XXX___,_XXX____,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ __XXX___,___XXX__,
+ __XXX___,___XXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_004C[ 48] = { /* code 004C */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_004D[ 72] = { /* code 004D */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXXXX__,___XXXXX,________,
+ _XXXXXX_,__XXXXXX,________,
+ _XXXXXX_,__XXXXXX,________,
+ _XXX_XX_,__XX_XXX,________,
+ _XXX_XX_,__XX_XXX,________,
+ _XXX_XX_,__XX_XXX,________,
+ _XXX_XXX,_XXX_XXX,________,
+ _XXX_XXX,_XXX_XXX,________,
+ _XXX__XX,_XX__XXX,________,
+ _XXX__XX,_XX__XXX,________,
+ _XXX__XX,XXX__XXX,________,
+ _XXX__XX,XXX__XXX,________,
+ _XXX__XX,XXX__XXX,________,
+ _XXX___X,XX___XXX,________,
+ _XXX___X,XX___XXX,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_004E[ 48] = { /* code 004E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,__XXX___,
+ _XXXX___,__XXX___,
+ _XXXX___,__XXX___,
+ _XXXXX__,__XXX___,
+ _XXXXXX_,__XXX___,
+ _XXX_XX_,__XXX___,
+ _XXX_XXX,__XXX___,
+ _XXX__XX,__XXX___,
+ _XXX__XX,X_XXX___,
+ _XXX___X,X_XXX___,
+ _XXX___X,XXXXX___,
+ _XXX____,XXXXX___,
+ _XXX____,XXXXX___,
+ _XXX____,_XXXX___,
+ _XXX____,__XXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_004F[ 48] = { /* code 004F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXXX__,
+ __XXXX__,__XXXX__,
+ _XXXX___,___XXXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXXX___,___XXXX_,
+ __XXXX__,__XXXX__,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0050[ 48] = { /* code 0050 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXX___,_XXXX___,
+ __XXX___,__XXX___,
+ __XXX___,_XXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXX_____,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0051[ 48] = { /* code 0051 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXXX__,
+ __XXXX__,__XXXX__,
+ _XXXX___,___XXXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,____XXX_,
+ _XXX____,X___XXX_,
+ _XXXX__X,XX_XXXX_,
+ __XXXX__,XXXXXX__,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXX_,
+ _____XXX,XXX_XXXX,
+ ________,_____XX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0052[ 48] = { /* code 0052 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XX______,
+ __XXX___,XXX_____,
+ __XXX___,XXXX____,
+ __XXX___,_XXX____,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ __XXX___,___XXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0053[ 48] = { /* code 0053 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,_XXXX___,
+ __XXX___,__XXX___,
+ __XXXX__,________,
+ ___XXXXX,X_______,
+ ____XXXX,XXXX____,
+ ______XX,XXXX____,
+ ________,_XXXX___,
+ _XXX____,__XXX___,
+ _XXXX___,_XXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0054[ 48] = { /* code 0054 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0055[ 48] = { /* code 0055 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXX___,_XXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0056[ 48] = { /* code 0056 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX_____,__XXX___,
+ XXX_____,_XXXX___,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ ___XXX_X,XX______,
+ ___XXX_X,XX______,
+ ___XXX_X,XX______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0057[ 72] = { /* code 0057 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ XXX_____,_XXX____,__XXX___,
+ XXX_____,XXXXX___,__XXX___,
+ _XXX____,XXXXX___,_XXX____,
+ _XXX____,XXXXX___,_XXX____,
+ _XXX___X,XX_XXX__,_XXX____,
+ _XXX___X,XX_XXX__,_XXX____,
+ __XXX__X,XX_XXX__,XXX_____,
+ __XXX_XX,X___XXX_,XXX_____,
+ __XXX_XX,X___XXX_,XXX_____,
+ __XXX_XX,X___XXX_,XXX_____,
+ ___XXXXX,_____XXX,XXX_____,
+ ___XXXXX,_____XXX,XX______,
+ ___XXXXX,_____XXX,XX______,
+ ___XXXX_,______XX,XX______,
+ ___XXXX_,______XX,XX______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0058[ 48] = { /* code 0058 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ __XXX___,_XXX____,
+ ___XXX__,XXX_____,
+ ___XXX__,XXX_____,
+ ____XXXX,XX______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ____XXXX,XX______,
+ ___XXX__,XXX_____,
+ ___XXX__,XXX_____,
+ __XXX___,_XXX____,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0059[ 48] = { /* code 0059 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX_____,__XXX___,
+ XXX_____,__XXX___,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ ___XXX_X,XX______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_005A[ 48] = { /* code 005A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ ________,XXXX____,
+ _______X,XXX_____,
+ ______XX,XX______,
+ _____XXX,X_______,
+ ____XXXX,________,
+ ___XXXX_,________,
+ __XXXX__,________,
+ _XXXX___,________,
+ XXXX____,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_005B[ 24] = { /* code 005B */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ __XXXXX_,
+ __XXXXX_,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXXXX_,
+ __XXXXX_,
+ __XXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_005C[ 24] = { /* code 005C */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_005D[ 24] = { /* code 005D */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XXXXX___,
+ XXXXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ XXXXX___,
+ XXXXX___,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_005E[ 48] = { /* code 005E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ___XXXXX,X_______,
+ ___XX__X,X_______,
+ __XXX__X,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_005F[ 48] = { /* code 005F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0060[ 24] = { /* code 0060 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ _XX_____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0061[ 48] = { /* code 0061 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XX_____,XXX_____,
+ ______XX,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXXX__,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0062[ 48] = { /* code 0062 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX_XXX,X_______,
+ _XXXXXXX,XXX_____,
+ _XXXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXX_XXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0063[ 48] = { /* code 0063 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0064[ 48] = { /* code 0064 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_XXX____,
+ ________,_XXX____,
+ ________,_XXX____,
+ ________,_XXX____,
+ ____XXXX,_XXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ ____XXXX,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0065[ 48] = { /* code 0065 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0066[ 24] = { /* code 0066 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ __XXXXX_,
+ __XXX___,
+ __XXX___,
+ XXXXXXX_,
+ XXXXXXX_,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0067[ 48] = { /* code 0067 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,_XXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,_XXX____,
+ ________,_XXX____,
+ _XXX____,XXXX____,
+ _XXXXXXX,XXX_____,
+ ___XXXXX,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0068[ 48] = { /* code 0068 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX__XX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXXX___,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0069[ 24] = { /* code 0069 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_006A[ 24] = { /* code 006A */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ XXXX____,
+ XXX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_006B[ 48] = { /* code 006B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,XXX_____,
+ _XXX___X,XX______,
+ _XXX__XX,X_______,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XXXX_XX,X_______,
+ _XXX___X,X_______,
+ _XXX___X,XX______,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_006C[ 24] = { /* code 006C */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_006D[ 72] = { /* code 006D */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXX_XXX,XX__XXXX,________,
+ _XXXXXXX,XXXXXXXX,X_______,
+ _XXXX___,XXXX___X,XX______,
+ _XXX____,XXX____X,XX______,
+ _XXX____,XXX____X,XX______,
+ _XXX____,XXX____X,XX______,
+ _XXX____,XXX____X,XX______,
+ _XXX____,XXX____X,XX______,
+ _XXX____,XXX____X,XX______,
+ _XXX____,XXX____X,XX______,
+ _XXX____,XXX____X,XX______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_006E[ 48] = { /* code 006E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX__XX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXXX___,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_006F[ 48] = { /* code 006F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0070[ 48] = { /* code 0070 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX_XXX,X_______,
+ _XXXXXXX,XXX_____,
+ _XXXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXX_XXX,X_______,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0071[ 48] = { /* code 0071 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,_XXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ ____XXXX,_XXX____,
+ ________,_XXX____,
+ ________,_XXX____,
+ ________,_XXX____,
+ ________,_XXX____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0072[ 24] = { /* code 0072 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_XXX,
+ _XXXXXXX,
+ _XXXX___,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0073[ 48] = { /* code 0073 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XXX____,XXX_____,
+ _XXX____,________,
+ _XXXXXX_,________,
+ __XXXXXX,XX______,
+ _____XXX,XXX_____,
+ ________,XXX_____,
+ _XXX____,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0074[ 24] = { /* code 0074 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __XX____,
+ _XXX____,
+ XXXXXX__,
+ XXXXXX__,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0075[ 48] = { /* code 0075 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0076[ 48] = { /* code 0076 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ ___XXX_X,XX______,
+ ___XXX_X,XX______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0077[ 48] = { /* code 0077 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX___XX,X___XXX_,
+ XXX___XX,X___XXX_,
+ _XX___XX,X___XX__,
+ _XXX_XXX,XX_XXX__,
+ _XXX_XX_,XX_XXX__,
+ __XX_XX_,XX_XX___,
+ __XX_XX_,XX_XX___,
+ __XXXXX_,XXXXX___,
+ __XXXX__,_XXXX___,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0078[ 48] = { /* code 0078 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,XXX_____,
+ __XXX__X,XX______,
+ __XXX__X,XX______,
+ ___XXXXX,X_______,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ___XXXXX,X_______,
+ __XXX__X,XX______,
+ __XXX__X,XX______,
+ _XXX____,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_0079[ 48] = { /* code 0079 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX_____,XXX_____,
+ XXX_____,XXX_____,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,X_______,
+ __XXX_XX,X_______,
+ __XXX_XX,X_______,
+ ___XX_XX,________,
+ ___XXXXX,________,
+ ___XXXXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ _XXXXX__,________,
+ _XXXX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_007A[ 48] = { /* code 007A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _______X,XX______,
+ ______XX,X_______,
+ _____XXX,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ __XXX___,________,
+ _XXX____,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_007B[ 24] = { /* code 007B */
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ____XXXX,
+ ___XXXXX,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ __XXXX__,
+ _XXXX___,
+ _XXXX___,
+ __XXXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXXXX,
+ ___XXXXX,
+ ____XXXX,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_007C[ 24] = { /* code 007C */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_007D[ 24] = { /* code 007D */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ XXXX____,
+ XXXXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXXX__,
+ ___XXXX_,
+ ___XXXX_,
+ __XXXX__,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ XXXXX___,
+ XXXXX___,
+ XXXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24B_ASCII_007E[ 48] = { /* code 007E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX__,__X_____,
+ XXXXXXXX,XXX_____,
+ XXXXXXXX,XXX_____,
+ X____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font24B_ASCII_CharInfo[95] = {
+ { 6, 6, 1, acFont24B_ASCII_0020 } /* code 0020 */
+ ,{ 7, 7, 1, acFont24B_ASCII_0021 } /* code 0021 */
+ ,{ 10, 10, 2, acFont24B_ASCII_0022 } /* code 0022 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0023 } /* code 0023 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0024 } /* code 0024 */
+ ,{ 17, 17, 3, acFont24B_ASCII_0025 } /* code 0025 */
+ ,{ 15, 15, 2, acFont24B_ASCII_0026 } /* code 0026 */
+ ,{ 5, 5, 1, acFont24B_ASCII_0027 } /* code 0027 */
+ ,{ 7, 7, 1, acFont24B_ASCII_0028 } /* code 0028 */
+ ,{ 7, 7, 1, acFont24B_ASCII_0029 } /* code 0029 */
+ ,{ 8, 8, 1, acFont24B_ASCII_002A } /* code 002A */
+ ,{ 12, 12, 2, acFont24B_ASCII_002B } /* code 002B */
+ ,{ 6, 6, 1, acFont24B_ASCII_002C } /* code 002C */
+ ,{ 7, 7, 1, acFont24B_ASCII_002D } /* code 002D */
+ ,{ 6, 6, 1, acFont24B_ASCII_002E } /* code 002E */
+ ,{ 6, 6, 1, acFont24B_ASCII_002F } /* code 002F */
+ ,{ 12, 12, 2, acFont24B_ASCII_0030 } /* code 0030 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0031 } /* code 0031 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0032 } /* code 0032 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0033 } /* code 0033 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0034 } /* code 0034 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0035 } /* code 0035 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0036 } /* code 0036 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0037 } /* code 0037 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0038 } /* code 0038 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0039 } /* code 0039 */
+ ,{ 7, 7, 1, acFont24B_ASCII_003A } /* code 003A */
+ ,{ 7, 7, 1, acFont24B_ASCII_003B } /* code 003B */
+ ,{ 12, 12, 2, acFont24B_ASCII_003C } /* code 003C */
+ ,{ 12, 12, 2, acFont24B_ASCII_003D } /* code 003D */
+ ,{ 12, 12, 2, acFont24B_ASCII_003E } /* code 003E */
+ ,{ 13, 13, 2, acFont24B_ASCII_003F } /* code 003F */
+ ,{ 20, 20, 3, acFont24B_ASCII_0040 } /* code 0040 */
+ ,{ 15, 15, 2, acFont24B_ASCII_0041 } /* code 0041 */
+ ,{ 15, 15, 2, acFont24B_ASCII_0042 } /* code 0042 */
+ ,{ 15, 15, 2, acFont24B_ASCII_0043 } /* code 0043 */
+ ,{ 15, 15, 2, acFont24B_ASCII_0044 } /* code 0044 */
+ ,{ 14, 14, 2, acFont24B_ASCII_0045 } /* code 0045 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0046 } /* code 0046 */
+ ,{ 16, 16, 2, acFont24B_ASCII_0047 } /* code 0047 */
+ ,{ 14, 14, 2, acFont24B_ASCII_0048 } /* code 0048 */
+ ,{ 5, 5, 1, acFont24B_ASCII_0049 } /* code 0049 */
+ ,{ 12, 12, 2, acFont24B_ASCII_004A } /* code 004A */
+ ,{ 15, 15, 2, acFont24B_ASCII_004B } /* code 004B */
+ ,{ 13, 13, 2, acFont24B_ASCII_004C } /* code 004C */
+ ,{ 17, 17, 3, acFont24B_ASCII_004D } /* code 004D */
+ ,{ 14, 14, 2, acFont24B_ASCII_004E } /* code 004E */
+ ,{ 16, 16, 2, acFont24B_ASCII_004F } /* code 004F */
+ ,{ 14, 14, 2, acFont24B_ASCII_0050 } /* code 0050 */
+ ,{ 16, 16, 2, acFont24B_ASCII_0051 } /* code 0051 */
+ ,{ 15, 15, 2, acFont24B_ASCII_0052 } /* code 0052 */
+ ,{ 14, 14, 2, acFont24B_ASCII_0053 } /* code 0053 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0054 } /* code 0054 */
+ ,{ 14, 14, 2, acFont24B_ASCII_0055 } /* code 0055 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0056 } /* code 0056 */
+ ,{ 21, 21, 3, acFont24B_ASCII_0057 } /* code 0057 */
+ ,{ 14, 14, 2, acFont24B_ASCII_0058 } /* code 0058 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0059 } /* code 0059 */
+ ,{ 12, 12, 2, acFont24B_ASCII_005A } /* code 005A */
+ ,{ 7, 7, 1, acFont24B_ASCII_005B } /* code 005B */
+ ,{ 6, 6, 1, acFont24B_ASCII_005C } /* code 005C */
+ ,{ 7, 7, 1, acFont24B_ASCII_005D } /* code 005D */
+ ,{ 12, 12, 2, acFont24B_ASCII_005E } /* code 005E */
+ ,{ 12, 12, 2, acFont24B_ASCII_005F } /* code 005F */
+ ,{ 7, 7, 1, acFont24B_ASCII_0060 } /* code 0060 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0061 } /* code 0061 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0062 } /* code 0062 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0063 } /* code 0063 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0064 } /* code 0064 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0065 } /* code 0065 */
+ ,{ 7, 7, 1, acFont24B_ASCII_0066 } /* code 0066 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0067 } /* code 0067 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0068 } /* code 0068 */
+ ,{ 5, 5, 1, acFont24B_ASCII_0069 } /* code 0069 */
+ ,{ 5, 5, 1, acFont24B_ASCII_006A } /* code 006A */
+ ,{ 12, 12, 2, acFont24B_ASCII_006B } /* code 006B */
+ ,{ 5, 5, 1, acFont24B_ASCII_006C } /* code 006C */
+ ,{ 19, 19, 3, acFont24B_ASCII_006D } /* code 006D */
+ ,{ 13, 13, 2, acFont24B_ASCII_006E } /* code 006E */
+ ,{ 13, 13, 2, acFont24B_ASCII_006F } /* code 006F */
+ ,{ 13, 13, 2, acFont24B_ASCII_0070 } /* code 0070 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0071 } /* code 0071 */
+ ,{ 8, 8, 1, acFont24B_ASCII_0072 } /* code 0072 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0073 } /* code 0073 */
+ ,{ 7, 7, 1, acFont24B_ASCII_0074 } /* code 0074 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0075 } /* code 0075 */
+ ,{ 13, 13, 2, acFont24B_ASCII_0076 } /* code 0076 */
+ ,{ 15, 15, 2, acFont24B_ASCII_0077 } /* code 0077 */
+ ,{ 12, 12, 2, acFont24B_ASCII_0078 } /* code 0078 */
+ ,{ 11, 11, 2, acFont24B_ASCII_0079 } /* code 0079 */
+ ,{ 11, 11, 2, acFont24B_ASCII_007A } /* code 007A */
+ ,{ 8, 8, 1, acFont24B_ASCII_007B } /* code 007B */
+ ,{ 6, 6, 1, acFont24B_ASCII_007C } /* code 007C */
+ ,{ 8, 8, 1, acFont24B_ASCII_007D } /* code 007D */
+ ,{ 12, 12, 2, acFont24B_ASCII_007E } /* code 007E */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font24B_ASCII_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font24B_ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font24B_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,24 /* height of font */
+ ,24 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font24B_ASCII_Prop1}
+ ,19, 11, 15
+};
+
diff --git a/User/lib/lcd/gui/Font/F24_1.c b/User/lib/lcd/gui/Font/F24_1.c
new file mode 100644
index 0000000..7544783
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F24_1.c
@@ -0,0 +1,2642 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F24_1.C
+Purpose : ISO 8859-1, West European Character Set, bold, high
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont24_1_00A0[ 24] = { /* code 00A0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00A1[ 24] = { /* code 00A1 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00A2[ 48] = { /* code 00A2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,X_______,
+ ________,X_______,
+ ________,X_______,
+ _______X,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX___X,XX______,
+ _XX___X_,_XX_____,
+ _XX___X_,________,
+ _XX___X_,________,
+ _XX__X__,________,
+ _XXX_X__,_XX_____,
+ __XXXX__,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ____X___,________,
+ ___X____,________,
+ ___X____,________,
+ ___X____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00A3[ 48] = { /* code 00A3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXXXX,XX______,
+ __XXX___,XXX_____,
+ __XX____,_XX_____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ___XX___,________,
+ ___XX___,________,
+ __XX____,________,
+ _XXXXXX_,_X______,
+ XXXXXXXX,XXX_____,
+ X_____XX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00A4[ 48] = { /* code 00A4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_XXXX,_X______,
+ __XXXXXX,XX______,
+ ___XX__X,X_______,
+ __XX____,XX______,
+ __XX____,XX______,
+ ___XX__X,X_______,
+ __XXXXXX,XX______,
+ __X_XXXX,_X______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00A5[ 48] = { /* code 00A5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX______,__XX____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ ___XX__X,X_______,
+ ___XX__X,X_______,
+ ____XXXX,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ _____XX_,________,
+ _____XX_,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00A6[ 24] = { /* code 00A6 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00A7[ 48] = { /* code 00A7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,X_______,
+ __XX___X,XX______,
+ __XX____,XX______,
+ __XX____,________,
+ ___XXX__,________,
+ __XXXXX_,________,
+ _XX___XX,X_______,
+ _XX____X,XX______,
+ _XX_____,XXX_____,
+ __XXX___,_XX_____,
+ ___XXX__,_XX_____,
+ _____XXX,X_______,
+ ______XX,X_______,
+ ________,XX______,
+ _XX_____,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,X_______,
+ ___XXXXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00A8[ 24] = { /* code 00A8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00A9[ 48] = { /* code 00A9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XX___,__XX____,
+ __X_____,____X___,
+ _X____XX,XX___X__,
+ _X___X__,__X__X__,
+ X___X___,______X_,
+ X___X___,______X_,
+ X___X___,______X_,
+ X___X___,______X_,
+ X___X___,__X___X_,
+ _X___X__,_X___X__,
+ _X____XX,X____X__,
+ __X_____,____X___,
+ ___XX___,__XX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00AA[ 24] = { /* code 00AA */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ _____XX_,
+ __XXXXX_,
+ XXXX_XX_,
+ XX___XX_,
+ XX__XXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00AB[ 48] = { /* code 00AB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,XX______,
+ ___XX__X,X_______,
+ __XX__XX,________,
+ __XX__XX,________,
+ _XX__XX_,________,
+ __XX__XX,________,
+ __XX__XX,________,
+ ___XX__X,X_______,
+ ____XX__,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00AC[ 48] = { /* code 00AC */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00AD[ 24] = { /* code 00AD */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00AE[ 48] = { /* code 00AE */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XX___,__XX____,
+ __X_____,____X___,
+ _X__XXXX,X____X__,
+ _X__X___,_X___X__,
+ X___X___,_X____X_,
+ X___X___,_X____X_,
+ X___XXXX,X_____X_,
+ X___X__X,______X_,
+ X___X___,X_____X_,
+ _X__X___,_X___X__,
+ _X__X___,__X__X__,
+ __X_____,____X___,
+ ___XX___,__XX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00AF[ 48] = { /* code 00AF */
+ ________,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00B0[ 24] = { /* code 00B0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _X____X_,
+ _X____X_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00B1[ 48] = { /* code 00B1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00B2[ 24] = { /* code 00B2 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ ____XX__,
+ ___XXX__,
+ __XXX___,
+ _XXX____,
+ _XX_____,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00B3[ 24] = { /* code 00B3 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00B4[ 24] = { /* code 00B4 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00B5[ 48] = { /* code 00B5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XXX___X,XX______,
+ _XXXXXXX,XX______,
+ _XX_XXX_,XX______,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00B6[ 48] = { /* code 00B6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ XXXXXX__,XX______,
+ XXXXXX__,XX______,
+ XXXXXX__,XX______,
+ XXXXXX__,XX______,
+ _XXXXX__,XX______,
+ __XXXX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00B7[ 24] = { /* code 00B7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00B8[ 24] = { /* code 00B8 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___XX___,
+ ____XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00B9[ 24] = { /* code 00B9 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XXX___,
+ _XXXX___,
+ _X_XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00BA[ 24] = { /* code 00BA */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ XX____XX,
+ XX____XX,
+ XX____XX,
+ XX____XX,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00BB[ 48] = { /* code 00BB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX__XX,________,
+ ___XX__X,X_______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ _____XX_,_XX_____,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ___XX__X,X_______,
+ __XX__XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00BC[ 72] = { /* code 00BC */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XX__,_____XXX,________,
+ ___XXX__,_____XX_,________,
+ __XXXX__,____XX__,________,
+ __X_XX__,___XX___,________,
+ ____XX__,__XX____,________,
+ ____XX__,__XX____,________,
+ ____XX__,_XX_____,________,
+ ____XX__,XX_____X,X_______,
+ _______X,X_____XX,X_______,
+ _______X,X_____XX,X_______,
+ ______XX,_____X_X,X_______,
+ _____XX_,____XX_X,X_______,
+ ____XX__,____XXXX,XX______,
+ ___XX___,_______X,X_______,
+ ___XX___,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00BD[ 72] = { /* code 00BD */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XX__,______XX,________,
+ ___XXX__,_____XX_,________,
+ __XXXX__,____XX__,________,
+ __X_XX__,___XX___,________,
+ ____XX__,___XX___,________,
+ ____XX__,__XX____,________,
+ ____XX__,_XX_____,________,
+ ____XX__,XX___XXX,X_______,
+ _______X,X___XX__,XX______,
+ _______X,X_______,XX______,
+ ______XX,_______X,XX______,
+ _____XX_,_______X,X_______,
+ ____XX__,______XX,________,
+ ____XX__,_____XX_,________,
+ ___XX___,____XXXX,XX______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00BE[ 72] = { /* code 00BE */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXXX___,______XX,________,
+ XX__XX__,_____XX_,________,
+ ____XX__,____XX__,________,
+ __XX____,____XX__,________,
+ ____XX__,___XX___,________,
+ ____XX__,__XX____,________,
+ XX__XX__,_XX_____,________,
+ _XXXX___,XX_____X,X_______,
+ ________,XX____XX,X_______,
+ _______X,X_____XX,X_______,
+ ______XX,_____XXX,X_______,
+ _____XX_,____XX_X,X_______,
+ _____XX_,____XXXX,XX______,
+ ____XX__,_______X,X_______,
+ ___XX___,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00BF[ 48] = { /* code 00BF */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ _____XXX,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ ___XX___,________,
+ __XX____,________,
+ __XX____,_XX_____,
+ __XXX___,XXX_____,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00C0[ 48] = { /* code 00C0 */
+ _____XX_,________,
+ ______XX,________,
+ _______X,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ XX______,___XX___,
+ XX______,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00C1[ 48] = { /* code 00C1 */
+ ______XX,________,
+ _____XX_,________,
+ _____X__,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ XX______,___XX___,
+ XX______,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00C2[ 48] = { /* code 00C2 */
+ _____XX_,________,
+ ____XXXX,________,
+ ___XX__X,X_______,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ XX______,___XX___,
+ XX______,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00C3[ 48] = { /* code 00C3 */
+ ____XXX_,XX______,
+ ___XXXXX,XX______,
+ ___XX_XX,X_______,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ XX______,___XX___,
+ XX______,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00C4[ 48] = { /* code 00C4 */
+ ________,________,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ XX______,___XX___,
+ XX______,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00C5[ 48] = { /* code 00C5 */
+ _____XXX,________,
+ ____X___,X_______,
+ ____X___,X_______,
+ ____X___,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ XX______,___XX___,
+ XX______,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00C6[ 72] = { /* code 00C6 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXXXX,XXXX____,
+ ______XX,XXXXXXXX,XXXX____,
+ ______XX,__XX____,________,
+ _____XX_,__XX____,________,
+ _____XX_,__XX____,________,
+ ____XX__,__XX____,________,
+ ____XX__,__XXXXXX,XXX_____,
+ ___XX___,__XXXXXX,XXX_____,
+ ___XX___,__XX____,________,
+ __XXXXXX,XXXX____,________,
+ __XXXXXX,XXXX____,________,
+ _XX_____,__XX____,________,
+ _XX_____,__XX____,________,
+ XX______,__XXXXXX,XXXX____,
+ XX______,__XXXXXX,XXXX____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00C7[ 48] = { /* code 00C7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXX____,
+ ___XXX__,__XXX___,
+ __XX____,___XXX__,
+ _XXX____,____XX__,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXX____,____XX__,
+ __XX____,___XX___,
+ __XXXX__,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XXX_____,
+ _______X,________,
+ _______X,X_______,
+ ________,XX______,
+ _____XXX,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00C8[ 48] = { /* code 00C8 */
+ ______XX,________,
+ _______X,X_______,
+ ________,X_______,
+ ________,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00C9[ 48] = { /* code 00C9 */
+ ________,XX______,
+ _______X,X_______,
+ _______X,________,
+ ________,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00CA[ 48] = { /* code 00CA */
+ _______X,X_______,
+ ______XX,XX______,
+ _____XX_,_XX_____,
+ ________,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00CB[ 48] = { /* code 00CB */
+ ________,________,
+ _____XX_,_XX_____,
+ _____XX_,_XX_____,
+ ________,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00CC[ 24] = { /* code 00CC */
+ _XX_____,
+ __XX____,
+ ___X____,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00CD[ 24] = { /* code 00CD */
+ ___XX___,
+ __XX____,
+ __X_____,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00CE[ 24] = { /* code 00CE */
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00CF[ 24] = { /* code 00CF */
+ ________,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00D0[ 48] = { /* code 00D0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XX______,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ __XX____,___XX___,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ XXXXXXXX,____XX__,
+ XXXXXXXX,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00D1[ 48] = { /* code 00D1 */
+ _____XXX,_XX_____,
+ ____XXXX,XXX_____,
+ ____XX_X,XX______,
+ ________,________,
+ _XX_____,___XX___,
+ _XXX____,___XX___,
+ _XXXX___,___XX___,
+ _XXXX___,___XX___,
+ _XX_XX__,___XX___,
+ _XX__XX_,___XX___,
+ _XX__XX_,___XX___,
+ _XX___XX,___XX___,
+ _XX____X,X__XX___,
+ _XX____X,X__XX___,
+ _XX_____,XX_XX___,
+ _XX_____,_XXXX___,
+ _XX_____,_XXXX___,
+ _XX_____,__XXX___,
+ _XX_____,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00D2[ 48] = { /* code 00D2 */
+ ______XX,________,
+ _______X,X_______,
+ ________,X_______,
+ ________,________,
+ _____XXX,XXX_____,
+ ____XXXX,XXXX____,
+ ___XXX__,__XXX___,
+ __XX____,____XX__,
+ _XXX____,____XXX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XXX____,____XXX_,
+ __XX____,____XX__,
+ ___XXX__,__XXX___,
+ ____XXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00D3[ 48] = { /* code 00D3 */
+ ________,XX______,
+ _______X,X_______,
+ _______X,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ____XXXX,XXXX____,
+ ___XXX__,__XXX___,
+ __XX____,____XX__,
+ _XXX____,____XXX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XXX____,____XXX_,
+ __XX____,____XX__,
+ ___XXX__,__XXX___,
+ ____XXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00D4[ 48] = { /* code 00D4 */
+ _______X,X_______,
+ ______XX,XX______,
+ _____XX_,_XX_____,
+ ________,________,
+ _____XXX,XXX_____,
+ ____XXXX,XXXX____,
+ ___XXX__,__XXX___,
+ __XX____,____XX__,
+ _XXX____,____XXX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XXX____,____XXX_,
+ __XX____,____XX__,
+ ___XXX__,__XXX___,
+ ____XXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00D5[ 48] = { /* code 00D5 */
+ ______XX,X_XX____,
+ _____XXX,XXXX____,
+ _____XX_,XXX_____,
+ ________,________,
+ _____XXX,XXX_____,
+ ____XXXX,XXXX____,
+ ___XXX__,__XXX___,
+ __XX____,____XX__,
+ _XXX____,____XXX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XXX____,____XXX_,
+ __XX____,____XX__,
+ ___XXX__,__XXX___,
+ ____XXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00D6[ 48] = { /* code 00D6 */
+ ________,________,
+ _____XX_,_XX_____,
+ _____XX_,_XX_____,
+ ________,________,
+ _____XXX,XXX_____,
+ ____XXXX,XXXX____,
+ ___XXX__,__XXX___,
+ __XX____,____XX__,
+ _XXX____,____XXX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XXX____,____XXX_,
+ __XX____,____XX__,
+ ___XXX__,__XXX___,
+ ____XXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00D7[ 48] = { /* code 00D7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,XX______,
+ _XXX___X,XX______,
+ __XXX_XX,X_______,
+ ___XXXXX,________,
+ ____XXX_,________,
+ ___XXXXX,________,
+ __XXX_XX,X_______,
+ _XXX___X,XX______,
+ _XX_____,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00D8[ 48] = { /* code 00D8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX__XX_,
+ ____XXXX,XXXXXX__,
+ ___XXX__,__XXXX__,
+ __XX____,___XXX__,
+ __XX____,__XXXXX_,
+ _XX_____,_XX__XX_,
+ _XX_____,XX___XX_,
+ _XX____X,X____XX_,
+ _XX___XX,_____XX_,
+ _XX__XX_,_____XX_,
+ _XXX_XX_,____XX__,
+ __XXXX__,____XX__,
+ ___XXX__,__XXX___,
+ __XXXXXX,XXXX____,
+ _XX__XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00D9[ 48] = { /* code 00D9 */
+ _____XX_,________,
+ ______XX,________,
+ _______X,________,
+ ________,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XXX____,__XXX___,
+ __XXX___,_XXX____,
+ ___XXXXX,XXX_____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00DA[ 48] = { /* code 00DA */
+ _______X,X_______,
+ ______XX,________,
+ ______X_,________,
+ ________,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XXX____,__XXX___,
+ __XXX___,_XXX____,
+ ___XXXXX,XXX_____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00DB[ 48] = { /* code 00DB */
+ ______XX,________,
+ _____XXX,X_______,
+ ____XX__,XX______,
+ ________,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XXX____,__XXX___,
+ __XXX___,_XXX____,
+ ___XXXXX,XXX_____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00DC[ 48] = { /* code 00DC */
+ ________,________,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ________,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XXX____,__XXX___,
+ __XXX___,_XXX____,
+ ___XXXXX,XXX_____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00DD[ 48] = { /* code 00DD */
+ _______X,X_______,
+ ______XX,________,
+ ______X_,________,
+ ________,________,
+ XXX_____,___XXX__,
+ _XX_____,___XX___,
+ __XX____,__XX____,
+ __XXX___,_XXX____,
+ ___XXX__,XXX_____,
+ ____XX__,XX______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00DE[ 48] = { /* code 00DE */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXX_____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00DF[ 48] = { /* code 00DF */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXXXX,XX______,
+ __XXX___,XXX_____,
+ __XX____,_XX_____,
+ __XX____,_XX_____,
+ __XX____,XX______,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ __XX____,XXX_____,
+ __XX____,_XXX____,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX_XXX,__XXX___,
+ __XX__XX,XXXX____,
+ __XX___X,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00E0[ 48] = { /* code 00E0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ _____XX_,________,
+ ______X_,________,
+ ________,________,
+ ___XXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XX_____,XX______,
+ ________,XX______,
+ _____XXX,XX______,
+ __XXXXXX,XX______,
+ _XXXX___,XX______,
+ _XX_____,XX______,
+ _XX____X,XX______,
+ _XXXXXXX,XX______,
+ __XXXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00E1[ 48] = { /* code 00E1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____XX_,________,
+ _____X__,________,
+ ________,________,
+ ___XXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XX_____,XX______,
+ ________,XX______,
+ _____XXX,XX______,
+ __XXXXXX,XX______,
+ _XXXX___,XX______,
+ _XX_____,XX______,
+ _XX____X,XX______,
+ _XXXXXXX,XX______,
+ __XXXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00E2[ 48] = { /* code 00E2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ ___XX__X,X_______,
+ ________,________,
+ ___XXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XX_____,XX______,
+ ________,XX______,
+ _____XXX,XX______,
+ __XXXXXX,XX______,
+ _XXXX___,XX______,
+ _XX_____,XX______,
+ _XX____X,XX______,
+ _XXXXXXX,XX______,
+ __XXXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00E3[ 48] = { /* code 00E3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX_X,X_______,
+ __XXXXXX,X_______,
+ __XX_XXX,________,
+ ________,________,
+ ___XXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XX_____,XX______,
+ ________,XX______,
+ _____XXX,XX______,
+ __XXXXXX,XX______,
+ _XXXX___,XX______,
+ _XX_____,XX______,
+ _XX____X,XX______,
+ _XXXXXXX,XX______,
+ __XXXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00E4[ 48] = { /* code 00E4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX__X,X_______,
+ ___XX__X,X_______,
+ ________,________,
+ ___XXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XX_____,XX______,
+ ________,XX______,
+ _____XXX,XX______,
+ __XXXXXX,XX______,
+ _XXXX___,XX______,
+ _XX_____,XX______,
+ _XX____X,XX______,
+ _XXXXXXX,XX______,
+ __XXXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00E5[ 48] = { /* code 00E5 */
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ ___X___X,________,
+ ___X___X,________,
+ ___X___X,________,
+ ____XXX_,________,
+ ________,________,
+ ___XXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XX_____,XX______,
+ ________,XX______,
+ _____XXX,XX______,
+ __XXXXXX,XX______,
+ _XXXX___,XX______,
+ _XX_____,XX______,
+ _XX____X,XX______,
+ _XXXXXXX,XX______,
+ __XXXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00E6[ 72] = { /* code 00E6 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ___XXXXX,X__XXXX_,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ _XX_____,XXX____X,X_______,
+ ______XX,XX______,XX______,
+ __XXXXXX,XXXXXXXX,XX______,
+ __XXXX__,XXXXXXXX,XX______,
+ _XX_____,XX______,________,
+ _XX_____,XX______,XX______,
+ _XX____X,XXX____X,X_______,
+ __XXXXXX,X_XXXXXX,X_______,
+ ___XXXX_,___XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00E7[ 48] = { /* code 00E7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,X_______,
+ __XX___X,XX______,
+ _XX_____,XX______,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,XX______,
+ __XX___X,XX______,
+ __XXXXXX,X_______,
+ ___XXXXX,________,
+ _____X__,________,
+ _____XX_,________,
+ ______XX,________,
+ ___XXXX_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00E8[ 48] = { /* code 00E8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ _____XX_,________,
+ ______X_,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XX_____,________,
+ _XX_____,________,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00E9[ 48] = { /* code 00E9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____XX_,________,
+ _____X__,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XX_____,________,
+ _XX_____,________,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00EA[ 48] = { /* code 00EA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ ___XX__X,X_______,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XX_____,________,
+ _XX_____,________,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00EB[ 48] = { /* code 00EB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX__X,X_______,
+ ___XX__X,X_______,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XX_____,________,
+ _XX_____,________,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00EC[ 24] = { /* code 00EC */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ ___X____,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00ED[ 24] = { /* code 00ED */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ __X_____,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00EE[ 24] = { /* code 00EE */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00EF[ 24] = { /* code 00EF */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00F0[ 48] = { /* code 00F0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,X_______,
+ _____XXX,X_______,
+ ____XXXX,________,
+ ___XX__X,X_______,
+ ___XXXX_,XX______,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00F1[ 48] = { /* code 00F1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX_X,X_______,
+ __XXXXXX,X_______,
+ __XX_XXX,________,
+ ________,________,
+ _XX_XXXX,________,
+ _XXXXXXX,X_______,
+ _XXX___X,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00F2[ 48] = { /* code 00F2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ _____XX_,________,
+ ______X_,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00F3[ 48] = { /* code 00F3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____XX_,________,
+ _____X__,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00F4[ 48] = { /* code 00F4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ ___XX__X,X_______,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00F5[ 48] = { /* code 00F5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,XX______,
+ ___XXXXX,XX______,
+ ___XX_XX,X_______,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00F6[ 48] = { /* code 00F6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX__X,X_______,
+ ___XX__X,X_______,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00F7[ 48] = { /* code 00F7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00F8[ 48] = { /* code 00F8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_XX_____,
+ ___XXXXX,_XX_____,
+ __XXXXXX,XX______,
+ __XX___X,XX______,
+ _XX____X,_XX_____,
+ _XX___XX,_XX_____,
+ _XX__XX_,_XX_____,
+ _XX_XX__,_XX_____,
+ _XX_X___,_XX_____,
+ _XXXX___,XX______,
+ __XXXXXX,XX______,
+ _XX_XXXX,________,
+ _XX_____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00F9[ 48] = { /* code 00F9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ ____XX__,________,
+ _____X__,________,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XX______,
+ ___XXXX_,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00FA[ 48] = { /* code 00FA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____XX_,________,
+ _____X__,________,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XX______,
+ ___XXXX_,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00FB[ 48] = { /* code 00FB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ ___XX__X,X_______,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XX______,
+ ___XXXX_,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00FC[ 48] = { /* code 00FC */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX__XX,________,
+ __XX__XX,________,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XX______,
+ ___XXXX_,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00FD[ 48] = { /* code 00FD */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____XX_,________,
+ _____X__,________,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ __XXX__X,X_______,
+ ___XX__X,X_______,
+ ___XX_XX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ _XXXXX__,________,
+ _XXXX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00FE[ 48] = { /* code 00FE */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_XXXX,________,
+ _XXXXXXX,XX______,
+ _XXX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XXX____,XX______,
+ _XXXXXXX,XX______,
+ _XX_XXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_1_00FF[ 48] = { /* code 00FF */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX__X,X_______,
+ ___XX__X,X_______,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ __XXX__X,X_______,
+ ___XX__X,X_______,
+ ___XX_XX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ _XXXXX__,________,
+ _XXXX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font24_1_CharInfo[96] = {
+ { 6, 6, 1, acFont24_1_00A0 } /* code 00A0 */
+ ,{ 6, 6, 1, acFont24_1_00A1 } /* code 00A1 */
+ ,{ 12, 12, 2, acFont24_1_00A2 } /* code 00A2 */
+ ,{ 12, 12, 2, acFont24_1_00A3 } /* code 00A3 */
+ ,{ 12, 12, 2, acFont24_1_00A4 } /* code 00A4 */
+ ,{ 12, 12, 2, acFont24_1_00A5 } /* code 00A5 */
+ ,{ 6, 6, 1, acFont24_1_00A6 } /* code 00A6 */
+ ,{ 12, 12, 2, acFont24_1_00A7 } /* code 00A7 */
+ ,{ 7, 7, 1, acFont24_1_00A8 } /* code 00A8 */
+ ,{ 15, 15, 2, acFont24_1_00A9 } /* code 00A9 */
+ ,{ 7, 7, 1, acFont24_1_00AA } /* code 00AA */
+ ,{ 12, 12, 2, acFont24_1_00AB } /* code 00AB */
+ ,{ 12, 12, 2, acFont24_1_00AC } /* code 00AC */
+ ,{ 7, 7, 1, acFont24_1_00AD } /* code 00AD */
+ ,{ 15, 15, 2, acFont24_1_00AE } /* code 00AE */
+ ,{ 12, 12, 2, acFont24_1_00AF } /* code 00AF */
+ ,{ 8, 8, 1, acFont24_1_00B0 } /* code 00B0 */
+ ,{ 12, 12, 2, acFont24_1_00B1 } /* code 00B1 */
+ ,{ 7, 7, 1, acFont24_1_00B2 } /* code 00B2 */
+ ,{ 7, 7, 1, acFont24_1_00B3 } /* code 00B3 */
+ ,{ 7, 7, 1, acFont24_1_00B4 } /* code 00B4 */
+ ,{ 11, 11, 2, acFont24_1_00B5 } /* code 00B5 */
+ ,{ 11, 11, 2, acFont24_1_00B6 } /* code 00B6 */
+ ,{ 6, 6, 1, acFont24_1_00B7 } /* code 00B7 */
+ ,{ 7, 7, 1, acFont24_1_00B8 } /* code 00B8 */
+ ,{ 7, 7, 1, acFont24_1_00B9 } /* code 00B9 */
+ ,{ 8, 8, 1, acFont24_1_00BA } /* code 00BA */
+ ,{ 12, 12, 2, acFont24_1_00BB } /* code 00BB */
+ ,{ 18, 18, 3, acFont24_1_00BC } /* code 00BC */
+ ,{ 18, 18, 3, acFont24_1_00BD } /* code 00BD */
+ ,{ 18, 18, 3, acFont24_1_00BE } /* code 00BE */
+ ,{ 13, 13, 2, acFont24_1_00BF } /* code 00BF */
+ ,{ 13, 13, 2, acFont24_1_00C0 } /* code 00C0 */
+ ,{ 13, 13, 2, acFont24_1_00C1 } /* code 00C1 */
+ ,{ 13, 13, 2, acFont24_1_00C2 } /* code 00C2 */
+ ,{ 13, 13, 2, acFont24_1_00C3 } /* code 00C3 */
+ ,{ 13, 13, 2, acFont24_1_00C4 } /* code 00C4 */
+ ,{ 13, 13, 2, acFont24_1_00C5 } /* code 00C5 */
+ ,{ 21, 21, 3, acFont24_1_00C6 } /* code 00C6 */
+ ,{ 15, 15, 2, acFont24_1_00C7 } /* code 00C7 */
+ ,{ 14, 14, 2, acFont24_1_00C8 } /* code 00C8 */
+ ,{ 14, 14, 2, acFont24_1_00C9 } /* code 00C9 */
+ ,{ 14, 14, 2, acFont24_1_00CA } /* code 00CA */
+ ,{ 14, 14, 2, acFont24_1_00CB } /* code 00CB */
+ ,{ 6, 6, 1, acFont24_1_00CC } /* code 00CC */
+ ,{ 6, 6, 1, acFont24_1_00CD } /* code 00CD */
+ ,{ 6, 6, 1, acFont24_1_00CE } /* code 00CE */
+ ,{ 6, 6, 1, acFont24_1_00CF } /* code 00CF */
+ ,{ 15, 15, 2, acFont24_1_00D0 } /* code 00D0 */
+ ,{ 14, 14, 2, acFont24_1_00D1 } /* code 00D1 */
+ ,{ 16, 16, 2, acFont24_1_00D2 } /* code 00D2 */
+ ,{ 16, 16, 2, acFont24_1_00D3 } /* code 00D3 */
+ ,{ 16, 16, 2, acFont24_1_00D4 } /* code 00D4 */
+ ,{ 16, 16, 2, acFont24_1_00D5 } /* code 00D5 */
+ ,{ 16, 16, 2, acFont24_1_00D6 } /* code 00D6 */
+ ,{ 12, 12, 2, acFont24_1_00D7 } /* code 00D7 */
+ ,{ 16, 16, 2, acFont24_1_00D8 } /* code 00D8 */
+ ,{ 14, 14, 2, acFont24_1_00D9 } /* code 00D9 */
+ ,{ 14, 14, 2, acFont24_1_00DA } /* code 00DA */
+ ,{ 14, 14, 2, acFont24_1_00DB } /* code 00DB */
+ ,{ 14, 14, 2, acFont24_1_00DC } /* code 00DC */
+ ,{ 14, 14, 2, acFont24_1_00DD } /* code 00DD */
+ ,{ 14, 14, 2, acFont24_1_00DE } /* code 00DE */
+ ,{ 13, 13, 2, acFont24_1_00DF } /* code 00DF */
+ ,{ 12, 12, 2, acFont24_1_00E0 } /* code 00E0 */
+ ,{ 12, 12, 2, acFont24_1_00E1 } /* code 00E1 */
+ ,{ 12, 12, 2, acFont24_1_00E2 } /* code 00E2 */
+ ,{ 12, 12, 2, acFont24_1_00E3 } /* code 00E3 */
+ ,{ 12, 12, 2, acFont24_1_00E4 } /* code 00E4 */
+ ,{ 12, 12, 2, acFont24_1_00E5 } /* code 00E5 */
+ ,{ 19, 19, 3, acFont24_1_00E6 } /* code 00E6 */
+ ,{ 11, 11, 2, acFont24_1_00E7 } /* code 00E7 */
+ ,{ 12, 12, 2, acFont24_1_00E8 } /* code 00E8 */
+ ,{ 12, 12, 2, acFont24_1_00E9 } /* code 00E9 */
+ ,{ 12, 12, 2, acFont24_1_00EA } /* code 00EA */
+ ,{ 12, 12, 2, acFont24_1_00EB } /* code 00EB */
+ ,{ 6, 6, 1, acFont24_1_00EC } /* code 00EC */
+ ,{ 6, 6, 1, acFont24_1_00ED } /* code 00ED */
+ ,{ 6, 6, 1, acFont24_1_00EE } /* code 00EE */
+ ,{ 6, 6, 1, acFont24_1_00EF } /* code 00EF */
+ ,{ 12, 12, 2, acFont24_1_00F0 } /* code 00F0 */
+ ,{ 11, 11, 2, acFont24_1_00F1 } /* code 00F1 */
+ ,{ 12, 12, 2, acFont24_1_00F2 } /* code 00F2 */
+ ,{ 12, 12, 2, acFont24_1_00F3 } /* code 00F3 */
+ ,{ 12, 12, 2, acFont24_1_00F4 } /* code 00F4 */
+ ,{ 12, 12, 2, acFont24_1_00F5 } /* code 00F5 */
+ ,{ 12, 12, 2, acFont24_1_00F6 } /* code 00F6 */
+ ,{ 12, 12, 2, acFont24_1_00F7 } /* code 00F7 */
+ ,{ 12, 12, 2, acFont24_1_00F8 } /* code 00F8 */
+ ,{ 11, 11, 2, acFont24_1_00F9 } /* code 00F9 */
+ ,{ 11, 11, 2, acFont24_1_00FA } /* code 00FA */
+ ,{ 11, 11, 2, acFont24_1_00FB } /* code 00FB */
+ ,{ 11, 11, 2, acFont24_1_00FC } /* code 00FC */
+ ,{ 11, 11, 2, acFont24_1_00FD } /* code 00FD */
+ ,{ 12, 12, 2, acFont24_1_00FE } /* code 00FE */
+ ,{ 11, 11, 2, acFont24_1_00FF } /* code 00FF */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font24_1_Prop2 = {
+ 0x00A0 /* first character */
+ ,0x00FF /* last character */
+ ,&GUI_Font24_1_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font24_1_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font24_ASCII_CharInfo[0] /* address of first character */
+ ,&GUI_Font24_1_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font24_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,24 /* height of font */
+ ,24 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font24_1_Prop1}
+ ,19, 11, 15
+};
+
diff --git a/User/lib/lcd/gui/Font/F24_ASCII.c b/User/lib/lcd/gui/Font/F24_ASCII.c
new file mode 100644
index 0000000..8edb3d2
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F24_ASCII.c
@@ -0,0 +1,2608 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F24_ASCII.C
+Purpose : ASCII character set, bold, high
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0020[ 24] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0021[ 24] = { /* code 0021 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0022[ 24] = { /* code 0022 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0023[ 48] = { /* code 0023 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ ____XX__,XXX_____,
+ ___XX___,XX______,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ ___XX___,XX______,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ __XX___X,X_______,
+ _XXX__XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0024[ 48] = { /* code 0024 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____X__,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXX_X_X,XX______,
+ _XX__X__,XX______,
+ _XX__X__,________,
+ _XXX_X__,________,
+ __XXXXX_,________,
+ ____XXXX,X_______,
+ _____X_X,XX______,
+ _____X__,XX______,
+ _____X__,XX______,
+ _XX__X__,XX______,
+ _XXX_X_X,XX______,
+ __XXXXXX,X_______,
+ ___XXXXX,________,
+ _____X__,________,
+ _____X__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0025[ 72] = { /* code 0025 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ___XXX__,_____XX_,________,
+ __XX_XX_,____XX__,________,
+ _XX___XX,____XX__,________,
+ _XX___XX,___XX___,________,
+ _XX___XX,___XX___,________,
+ _XX___XX,__XX____,________,
+ __XX_XX_,_XX_____,________,
+ ___XXX__,_XX__XXX,________,
+ ________,XX__XX_X,X_______,
+ ________,XX_XX___,XX______,
+ _______X,X__XX___,XX______,
+ _______X,X__XX___,XX______,
+ ______XX,___XX___,XX______,
+ _____XX_,____XX_X,X_______,
+ _____XX_,_____XXX,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0026[ 48] = { /* code 0026 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ ____XXXX,XX______,
+ ___XX___,_XX_____,
+ ___XX___,_XX_____,
+ ___XX___,XX______,
+ ____XX_X,X_______,
+ ____XXXX,________,
+ ___XXXXX,________,
+ __XX__XX,X__XX___,
+ _XX____X,XX_XX___,
+ _XX_____,XXXX____,
+ _XX_____,_XX_____,
+ _XXX____,XXXX____,
+ __XXXXXX,XX_XX___,
+ ___XXXXX,____X___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0027[ 24] = { /* code 0027 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0028[ 24] = { /* code 0028 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _____X__,
+ ____X___,
+ ___XX___,
+ ___X____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ ___X____,
+ ___XX___,
+ ____X___,
+ _____X__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0029[ 24] = { /* code 0029 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ __X_____,
+ __XX____,
+ ___X____,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ___X____,
+ __XX____,
+ __X_____,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_002A[ 24] = { /* code 002A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ XXXXXXXX,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_002B[ 48] = { /* code 002B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_002C[ 24] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ___X____,
+ ___X____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_002D[ 24] = { /* code 002D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_002E[ 24] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_002F[ 24] = { /* code 002F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XX______,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0030[ 48] = { /* code 0030 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0031[ 48] = { /* code 0031 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ____XXXX,________,
+ ___XXXXX,________,
+ __XX__XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0032[ 48] = { /* code 0032 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XXX____,XXX_____,
+ _XX_____,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,XX______,
+ ________,XX______,
+ _______X,X_______,
+ _____XXX,________,
+ ____XXX_,________,
+ ___XX___,________,
+ __XX____,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0033[ 48] = { /* code 0033 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXX___X,XX______,
+ _XX_____,XX______,
+ ________,XX______,
+ _______X,X_______,
+ _____XXX,________,
+ _____XXX,XX______,
+ ________,XXX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ _XX_____,_XX_____,
+ _XXX____,XX______,
+ __XXXXXX,XX______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0034[ 48] = { /* code 0034 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,X_______,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XXX,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ___XX__X,X_______,
+ __XX___X,X_______,
+ _XX____X,X_______,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0035[ 48] = { /* code 0035 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX_XXX,X_______,
+ _XXXXXXX,XX______,
+ _XX_____,XXX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ _XX_____,_XX_____,
+ _XXX____,XX______,
+ __XXXXXX,XX______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0036[ 48] = { /* code 0036 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXXXX,XX______,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ _XX_____,________,
+ _XX__XXX,X_______,
+ _XXXXXXX,XX______,
+ _XXX____,XXX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ ___XXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0037[ 48] = { /* code 0037 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,XX______,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0038[ 48] = { /* code 0038 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,X_______,
+ __XX____,XX______,
+ __XX____,XX______,
+ __XX____,XX______,
+ __XX____,XX______,
+ ___XXXXX,X_______,
+ ___XXXXX,X_______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XXX____,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0039[ 48] = { /* code 0039 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,X_______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XX_____,
+ ________,_XX_____,
+ _XX_____,XX______,
+ _XXX____,XX______,
+ __XXXXXX,X_______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_003A[ 24] = { /* code 003A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_003B[ 24] = { /* code 003B */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ___X____,
+ ___X____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_003C[ 48] = { /* code 003C */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,__X_____,
+ ________,XXX_____,
+ ______XX,XX______,
+ ____XXXX,________,
+ __XXX___,________,
+ _XX_____,________,
+ __XXX___,________,
+ ____XXXX,________,
+ ______XX,XX______,
+ ________,XXX_____,
+ ________,__X_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_003D[ 48] = { /* code 003D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_003E[ 48] = { /* code 003E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _X______,________,
+ _XXX____,________,
+ __XXXX__,________,
+ ____XXXX,________,
+ _______X,XX______,
+ ________,_XX_____,
+ _______X,XX______,
+ ____XXXX,________,
+ __XXXX__,________,
+ _XXX____,________,
+ _X______,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_003F[ 48] = { /* code 003F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XXX____,XXX_____,
+ _XX_____,_XX_____,
+ ________,_XX_____,
+ ________,XX______,
+ _______X,XX______,
+ ______XX,X_______,
+ _____XXX,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0040[ 72] = { /* code 0040 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,X_______,
+ ____XXXX,______XX,XX______,
+ ___XXX__,________,XXX_____,
+ ___XX___,_XXX__XX,_XX_____,
+ __XX___X,XXXXX_XX,_XXX____,
+ __XX__XX,X___XXX_,__XX____,
+ _XX___XX,_____XX_,__XX____,
+ _XX__XX_,_____XX_,__XX____,
+ _XX__XX_,_____XX_,__XX____,
+ _XX__XX_,_____X__,_XXX____,
+ _XX__XX_,____XX__,_XX_____,
+ _XX__XXX,___XXX__,XX______,
+ __XX__XX,XXXXXXXX,X_______,
+ __XXX__X,XXX_XXXX,__XX____,
+ ___XXX__,________,_XX_____,
+ ____XXXX,_______X,XX______,
+ _____XXX,XXXXXXXX,X_______,
+ _______X,XXXXXXX_,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0041[ 48] = { /* code 0041 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ XX______,___XX___,
+ XX______,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0042[ 48] = { /* code 0042 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XX______,
+ __XXXXXX,XXX_____,
+ __XX____,_XXX____,
+ __XX____,__XX____,
+ __XX____,__XX____,
+ __XX____,_XXX____,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XX____,__XX____,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0043[ 48] = { /* code 0043 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXX____,
+ ___XXX__,__XXX___,
+ __XX____,___XXX__,
+ _XXX____,____XX__,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXX____,____XX__,
+ __XX____,___XX___,
+ __XXXX__,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0044[ 48] = { /* code 0044 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XX______,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ __XX____,___XX___,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0045[ 48] = { /* code 0045 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0046[ 48] = { /* code 0046 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0047[ 48] = { /* code 0047 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXXX____,
+ ____XXXX,XXXXX___,
+ ___XXX__,___XXX__,
+ __XX____,____XXX_,
+ __XX____,_____X__,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,XXXXXXX_,
+ _XX_____,XXXXXXX_,
+ _XX_____,_____XX_,
+ __XX____,_____XX_,
+ __XX____,_____XX_,
+ ___XXX__,___XXXX_,
+ ____XXXX,XXXXXX__,
+ ______XX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0048[ 48] = { /* code 0048 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0049[ 24] = { /* code 0049 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_004A[ 48] = { /* code 004A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XXX__XX,X_______,
+ __XXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_004B[ 48] = { /* code 004B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,__XXX___,
+ __XX____,_XXX____,
+ __XX____,XXX_____,
+ __XX___X,XX______,
+ __XX__XX,X_______,
+ __XX_XXX,________,
+ __XX_XXX,________,
+ __XXXXXX,________,
+ __XXX_XX,X_______,
+ __XX___X,XX______,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ __XX____,_XXX____,
+ __XX____,__XXX___,
+ __XX____,___XXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_004C[ 48] = { /* code 004C */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_004D[ 72] = { /* code 004D */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXX____,_____XXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XX_X___,____X_XX,________,
+ _XX_XX__,___XX_XX,________,
+ _XX_XX__,___XX_XX,________,
+ _XX__X__,___X__XX,________,
+ _XX__XX_,__XX__XX,________,
+ _XX__XX_,__XX__XX,________,
+ _XX___X_,__X___XX,________,
+ _XX___XX,_XX___XX,________,
+ _XX___XX,_XX___XX,________,
+ _XX____X,_X____XX,________,
+ _XX____X,XX____XX,________,
+ _XX____X,XX____XX,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_004E[ 48] = { /* code 004E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,___XX___,
+ _XXX____,___XX___,
+ _XXXX___,___XX___,
+ _XXXX___,___XX___,
+ _XX_XX__,___XX___,
+ _XX__XX_,___XX___,
+ _XX__XX_,___XX___,
+ _XX___XX,___XX___,
+ _XX____X,X__XX___,
+ _XX____X,X__XX___,
+ _XX_____,XX_XX___,
+ _XX_____,_XXXX___,
+ _XX_____,_XXXX___,
+ _XX_____,__XXX___,
+ _XX_____,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_004F[ 48] = { /* code 004F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ____XXXX,XXXX____,
+ ___XXX__,__XXX___,
+ __XX____,____XX__,
+ _XXX____,____XXX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XXX____,____XXX_,
+ __XX____,____XX__,
+ ___XXX__,__XXX___,
+ ____XXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0050[ 48] = { /* code 0050 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXX_____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0051[ 48] = { /* code 0051 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ____XXXX,XXXXX___,
+ ___XXX__,__XXXX__,
+ __XX____,____XX__,
+ _XXX____,____XXX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XX_____,_____XX_,
+ _XXX____,____XX__,
+ __XX____,XXX_XX__,
+ ___XXX__,__XXX___,
+ ____XXXX,XXXXXX__,
+ _____XXX,XXX_XXX_,
+ ________,______X_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0052[ 48] = { /* code 0052 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXX_____,
+ __XX____,XX______,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ __XX____,_XXX____,
+ __XX____,__XXX___,
+ __XX____,___XX___,
+ __XX____,___XXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0053[ 48] = { /* code 0053 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ __XX____,________,
+ __XXX___,________,
+ ___XXXXX,X_______,
+ _____XXX,XXX_____,
+ ________,_XXX____,
+ ________,___XX___,
+ _XX_____,___XX___,
+ _XXX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0054[ 48] = { /* code 0054 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0055[ 48] = { /* code 0055 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XXX____,__XXX___,
+ __XXX___,_XXX____,
+ ___XXXXX,XXX_____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0056[ 48] = { /* code 0056 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX______,___XX___,
+ XXX_____,__XXX___,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XXX____,_XXX____,
+ __XX____,_XX_____,
+ __XX____,_XX_____,
+ __XXX___,XXX_____,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XXX_X,XX______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0057[ 72] = { /* code 0057 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ XX______,_XXX____,___XX___,
+ XX______,_XXX____,___XX___,
+ _XX_____,XX_XX___,__XX____,
+ _XX_____,XX_XX___,__XX____,
+ _XX_____,XX_XX___,__XX____,
+ _XXX____,XX__X___,_XXX____,
+ __XX___X,X___XX__,_XX_____,
+ __XX___X,X___XX__,_XX_____,
+ __XX___X,X___XX__,_XX_____,
+ ___XX_XX,_____XX_,XX______,
+ ___XX_XX,_____XX_,XX______,
+ ___XX_XX,_____XX_,XX______,
+ ___XX_XX,_____XX_,XX______,
+ ____XXX_,______XX,X_______,
+ ____XXX_,______XX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0058[ 48] = { /* code 0058 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,__XXX___,
+ __XXX___,_XXX____,
+ ___XX___,_XX_____,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ _____XXX,X_______,
+ ______XX,________,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ____XX_X,XX______,
+ ___XXX__,XXX_____,
+ ___XX___,_XX_____,
+ __XX____,__XX____,
+ _XXX____,__XXX___,
+ XXX_____,___XXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0059[ 48] = { /* code 0059 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX_____,___XXX__,
+ _XX_____,___XX___,
+ __XX____,__XX____,
+ __XXX___,_XXX____,
+ ___XXX__,XXX_____,
+ ____XX__,XX______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_005A[ 48] = { /* code 005A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ ________,_XX_____,
+ ________,XX______,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ __XX____,________,
+ _XX_____,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_005B[ 24] = { /* code 005B */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ _XXXX___,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXX___,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_005C[ 24] = { /* code 005C */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_005D[ 24] = { /* code 005D */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXX___,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_005E[ 24] = { /* code 005E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XX____XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_005F[ 48] = { /* code 005F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0060[ 24] = { /* code 0060 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ ___X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0061[ 48] = { /* code 0061 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XX_____,XX______,
+ ________,XX______,
+ _____XXX,XX______,
+ __XXXXXX,XX______,
+ _XXXX___,XX______,
+ _XX_____,XX______,
+ _XX____X,XX______,
+ _XXXXXXX,XX______,
+ __XXXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0062[ 48] = { /* code 0062 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_XXXX,________,
+ _XXXXXXX,X_______,
+ _XXX___X,X_______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XXX___X,X_______,
+ _XXXXXXX,X_______,
+ _XX_XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0063[ 48] = { /* code 0063 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,X_______,
+ __XX___X,XX______,
+ _XX_____,XX______,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,XX______,
+ __XX___X,XX______,
+ __XXXXXX,X_______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0064[ 48] = { /* code 0064 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ___XXXX_,XX______,
+ __XXXXXX,XX______,
+ __XX___X,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ __XX___X,XX______,
+ __XXXXXX,XX______,
+ ___XXXX_,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0065[ 48] = { /* code 0065 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XX_____,________,
+ _XX_____,________,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0066[ 24] = { /* code 0066 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXX__,
+ __XX____,
+ __XX____,
+ XXXXXX__,
+ XXXXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0067[ 48] = { /* code 0067 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,XX______,
+ __XXXXXX,XX______,
+ __XX___X,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ __XX___X,XX______,
+ __XXXXXX,XX______,
+ ___XXXX_,XX______,
+ ________,XX______,
+ _XX____X,XX______,
+ _XXXXXXX,X_______,
+ ___XXXXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0068[ 48] = { /* code 0068 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_XXXX,________,
+ _XXXXXXX,X_______,
+ _XXX___X,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0069[ 24] = { /* code 0069 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_006A[ 24] = { /* code 006A */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXX_____,
+ XX______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_006B[ 48] = { /* code 006B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX____X,XX______,
+ _XX___XX,X_______,
+ _XX__XXX,________,
+ _XX_XXX_,________,
+ _XXXXX__,________,
+ _XXXXXX_,________,
+ _XX__XX_,________,
+ _XX___XX,________,
+ _XX___XX,X_______,
+ _XX____X,X_______,
+ _XX____X,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_006C[ 24] = { /* code 006C */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_006D[ 48] = { /* code 006D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_XXXX,__XXXX__,
+ _XXXXXXX,_XXXXXX_,
+ _XXX___X,XX___XX_,
+ _XX____X,X____XX_,
+ _XX____X,X____XX_,
+ _XX____X,X____XX_,
+ _XX____X,X____XX_,
+ _XX____X,X____XX_,
+ _XX____X,X____XX_,
+ _XX____X,X____XX_,
+ _XX____X,X____XX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_006E[ 48] = { /* code 006E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_XXXX,________,
+ _XXXXXXX,X_______,
+ _XXX___X,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_006F[ 48] = { /* code 006F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0070[ 48] = { /* code 0070 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_XXXX,________,
+ _XXXXXXX,X_______,
+ _XXX___X,X_______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XXX___X,X_______,
+ _XXXXXXX,X_______,
+ _XX_XXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0071[ 48] = { /* code 0071 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,XX______,
+ __XXXXXX,XX______,
+ __XX___X,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ __XX___X,XX______,
+ __XXXXXX,XX______,
+ ___XXXX_,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0072[ 24] = { /* code 0072 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_XXX_,
+ _XXXXXX_,
+ _XXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0073[ 48] = { /* code 0073 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XX_____,XX______,
+ _XX_____,________,
+ _XXXXX__,________,
+ __XXXXXX,X_______,
+ ______XX,XX______,
+ ________,XX______,
+ _XX_____,XX______,
+ __XXXXXX,X_______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0074[ 24] = { /* code 0074 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXXX___,
+ XXXXX___,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0075[ 48] = { /* code 0075 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XX______,
+ ___XXXX_,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0076[ 48] = { /* code 0076 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX______,_XX_____,
+ XX______,_XX_____,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ ___XX_XX,________,
+ ___XX_XX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ _____X__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0077[ 48] = { /* code 0077 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX_____X,_____XX_,
+ XX____XX,X____XX_,
+ _X____XX,X____X__,
+ _XX___X_,X___XX__,
+ _XX__XX_,XX__XX__,
+ __XX_XX_,XX_XX___,
+ __XX_XX_,XX_XX___,
+ ___X_X__,_X_X____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ____XX__,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0078[ 48] = { /* code 0078 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX____X,XX______,
+ _XX____X,X_______,
+ __XX__XX,________,
+ __XX__XX,________,
+ ___XXXX_,________,
+ ____XX__,________,
+ ___XXXX_,________,
+ __XX__XX,________,
+ __XX__XX,________,
+ _XX____X,X_______,
+ XXX____X,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_0079[ 48] = { /* code 0079 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ __XXX__X,X_______,
+ ___XX__X,X_______,
+ ___XX_XX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ _XXXXX__,________,
+ _XXXX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_007A[ 48] = { /* code 007A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ ______XX,X_______,
+ _____XXX,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ __XXX___,________,
+ _XXX____,________,
+ XXX_____,________,
+ XXXXXXXX,X_______,
+ XXXXXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_007B[ 24] = { /* code 007B */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXX____,
+ XXX_____,
+ XXX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXXX__,
+ ___XXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_007C[ 24] = { /* code 007C */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_007D[ 24] = { /* code 007D */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XXX__,
+ ____XXX_,
+ ____XXX_,
+ ___XXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXX___,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont24_ASCII_007E[ 48] = { /* code 007E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXX___,________,
+ _XXXXXX_,__X_____,
+ _X___XXX,XXX_____,
+ _______X,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font24_ASCII_CharInfo[95] = {
+ { 6, 6, 1, acFont24_ASCII_0020 } /* code 0020 */
+ ,{ 6, 6, 1, acFont24_ASCII_0021 } /* code 0021 */
+ ,{ 7, 7, 1, acFont24_ASCII_0022 } /* code 0022 */
+ ,{ 12, 12, 2, acFont24_ASCII_0023 } /* code 0023 */
+ ,{ 12, 12, 2, acFont24_ASCII_0024 } /* code 0024 */
+ ,{ 19, 19, 3, acFont24_ASCII_0025 } /* code 0025 */
+ ,{ 14, 14, 2, acFont24_ASCII_0026 } /* code 0026 */
+ ,{ 4, 4, 1, acFont24_ASCII_0027 } /* code 0027 */
+ ,{ 7, 7, 1, acFont24_ASCII_0028 } /* code 0028 */
+ ,{ 7, 7, 1, acFont24_ASCII_0029 } /* code 0029 */
+ ,{ 8, 8, 1, acFont24_ASCII_002A } /* code 002A */
+ ,{ 12, 12, 2, acFont24_ASCII_002B } /* code 002B */
+ ,{ 6, 6, 1, acFont24_ASCII_002C } /* code 002C */
+ ,{ 7, 7, 1, acFont24_ASCII_002D } /* code 002D */
+ ,{ 6, 6, 1, acFont24_ASCII_002E } /* code 002E */
+ ,{ 6, 6, 1, acFont24_ASCII_002F } /* code 002F */
+ ,{ 12, 12, 2, acFont24_ASCII_0030 } /* code 0030 */
+ ,{ 12, 12, 2, acFont24_ASCII_0031 } /* code 0031 */
+ ,{ 12, 12, 2, acFont24_ASCII_0032 } /* code 0032 */
+ ,{ 12, 12, 2, acFont24_ASCII_0033 } /* code 0033 */
+ ,{ 12, 12, 2, acFont24_ASCII_0034 } /* code 0034 */
+ ,{ 12, 12, 2, acFont24_ASCII_0035 } /* code 0035 */
+ ,{ 12, 12, 2, acFont24_ASCII_0036 } /* code 0036 */
+ ,{ 12, 12, 2, acFont24_ASCII_0037 } /* code 0037 */
+ ,{ 12, 12, 2, acFont24_ASCII_0038 } /* code 0038 */
+ ,{ 12, 12, 2, acFont24_ASCII_0039 } /* code 0039 */
+ ,{ 6, 6, 1, acFont24_ASCII_003A } /* code 003A */
+ ,{ 6, 6, 1, acFont24_ASCII_003B } /* code 003B */
+ ,{ 12, 12, 2, acFont24_ASCII_003C } /* code 003C */
+ ,{ 12, 12, 2, acFont24_ASCII_003D } /* code 003D */
+ ,{ 12, 12, 2, acFont24_ASCII_003E } /* code 003E */
+ ,{ 12, 12, 2, acFont24_ASCII_003F } /* code 003F */
+ ,{ 21, 21, 3, acFont24_ASCII_0040 } /* code 0040 */
+ ,{ 13, 13, 2, acFont24_ASCII_0041 } /* code 0041 */
+ ,{ 14, 14, 2, acFont24_ASCII_0042 } /* code 0042 */
+ ,{ 15, 15, 2, acFont24_ASCII_0043 } /* code 0043 */
+ ,{ 15, 15, 2, acFont24_ASCII_0044 } /* code 0044 */
+ ,{ 14, 14, 2, acFont24_ASCII_0045 } /* code 0045 */
+ ,{ 13, 13, 2, acFont24_ASCII_0046 } /* code 0046 */
+ ,{ 16, 16, 2, acFont24_ASCII_0047 } /* code 0047 */
+ ,{ 14, 14, 2, acFont24_ASCII_0048 } /* code 0048 */
+ ,{ 6, 6, 1, acFont24_ASCII_0049 } /* code 0049 */
+ ,{ 11, 11, 2, acFont24_ASCII_004A } /* code 004A */
+ ,{ 14, 14, 2, acFont24_ASCII_004B } /* code 004B */
+ ,{ 12, 12, 2, acFont24_ASCII_004C } /* code 004C */
+ ,{ 17, 17, 3, acFont24_ASCII_004D } /* code 004D */
+ ,{ 14, 14, 2, acFont24_ASCII_004E } /* code 004E */
+ ,{ 16, 16, 2, acFont24_ASCII_004F } /* code 004F */
+ ,{ 14, 14, 2, acFont24_ASCII_0050 } /* code 0050 */
+ ,{ 16, 16, 2, acFont24_ASCII_0051 } /* code 0051 */
+ ,{ 15, 15, 2, acFont24_ASCII_0052 } /* code 0052 */
+ ,{ 14, 14, 2, acFont24_ASCII_0053 } /* code 0053 */
+ ,{ 12, 12, 2, acFont24_ASCII_0054 } /* code 0054 */
+ ,{ 14, 14, 2, acFont24_ASCII_0055 } /* code 0055 */
+ ,{ 13, 13, 2, acFont24_ASCII_0056 } /* code 0056 */
+ ,{ 21, 21, 3, acFont24_ASCII_0057 } /* code 0057 */
+ ,{ 14, 14, 2, acFont24_ASCII_0058 } /* code 0058 */
+ ,{ 14, 14, 2, acFont24_ASCII_0059 } /* code 0059 */
+ ,{ 13, 13, 2, acFont24_ASCII_005A } /* code 005A */
+ ,{ 6, 6, 1, acFont24_ASCII_005B } /* code 005B */
+ ,{ 6, 6, 1, acFont24_ASCII_005C } /* code 005C */
+ ,{ 6, 6, 1, acFont24_ASCII_005D } /* code 005D */
+ ,{ 8, 8, 1, acFont24_ASCII_005E } /* code 005E */
+ ,{ 12, 12, 2, acFont24_ASCII_005F } /* code 005F */
+ ,{ 7, 7, 1, acFont24_ASCII_0060 } /* code 0060 */
+ ,{ 12, 12, 2, acFont24_ASCII_0061 } /* code 0061 */
+ ,{ 11, 11, 2, acFont24_ASCII_0062 } /* code 0062 */
+ ,{ 11, 11, 2, acFont24_ASCII_0063 } /* code 0063 */
+ ,{ 11, 11, 2, acFont24_ASCII_0064 } /* code 0064 */
+ ,{ 12, 12, 2, acFont24_ASCII_0065 } /* code 0065 */
+ ,{ 6, 6, 1, acFont24_ASCII_0066 } /* code 0066 */
+ ,{ 11, 11, 2, acFont24_ASCII_0067 } /* code 0067 */
+ ,{ 11, 11, 2, acFont24_ASCII_0068 } /* code 0068 */
+ ,{ 5, 5, 1, acFont24_ASCII_0069 } /* code 0069 */
+ ,{ 4, 4, 1, acFont24_ASCII_006A } /* code 006A */
+ ,{ 10, 10, 2, acFont24_ASCII_006B } /* code 006B */
+ ,{ 4, 4, 1, acFont24_ASCII_006C } /* code 006C */
+ ,{ 16, 16, 2, acFont24_ASCII_006D } /* code 006D */
+ ,{ 11, 11, 2, acFont24_ASCII_006E } /* code 006E */
+ ,{ 12, 12, 2, acFont24_ASCII_006F } /* code 006F */
+ ,{ 11, 11, 2, acFont24_ASCII_0070 } /* code 0070 */
+ ,{ 11, 11, 2, acFont24_ASCII_0071 } /* code 0071 */
+ ,{ 7, 7, 1, acFont24_ASCII_0072 } /* code 0072 */
+ ,{ 11, 11, 2, acFont24_ASCII_0073 } /* code 0073 */
+ ,{ 6, 6, 1, acFont24_ASCII_0074 } /* code 0074 */
+ ,{ 11, 11, 2, acFont24_ASCII_0075 } /* code 0075 */
+ ,{ 11, 11, 2, acFont24_ASCII_0076 } /* code 0076 */
+ ,{ 15, 15, 2, acFont24_ASCII_0077 } /* code 0077 */
+ ,{ 10, 10, 2, acFont24_ASCII_0078 } /* code 0078 */
+ ,{ 11, 11, 2, acFont24_ASCII_0079 } /* code 0079 */
+ ,{ 9, 9, 2, acFont24_ASCII_007A } /* code 007A */
+ ,{ 7, 7, 1, acFont24_ASCII_007B } /* code 007B */
+ ,{ 6, 6, 1, acFont24_ASCII_007C } /* code 007C */
+ ,{ 7, 7, 1, acFont24_ASCII_007D } /* code 007D */
+ ,{ 12, 12, 2, acFont24_ASCII_007E } /* code 007E */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font24_ASCII_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font24_ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font24_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,24 /* height of font */
+ ,24 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font24_ASCII_Prop1}
+ ,19, 11, 15
+};
+
diff --git a/User/lib/lcd/gui/Font/F32B_1.c b/User/lib/lcd/gui/Font/F32B_1.c
new file mode 100644
index 0000000..1535554
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F32B_1.c
@@ -0,0 +1,3410 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F32B_1.C
+Purpose : ISO 8859-1, West European Character Set, bold, high
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont32B_1_00A0[ 32] = { /* code 00A0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00A1[ 32] = { /* code 00A1 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00A2[ 64] = { /* code 00A2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,___XX___,
+ ________,__XXX___,
+ ________,__XX____,
+ ________,__XX____,
+ ________,_XXX____,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,XXXXX___,
+ _XXXX___,XXXXXX__,
+ _XXXX___,XX______,
+ _XXXX__X,X_______,
+ _XXXX__X,X_______,
+ _XXXX__X,X_______,
+ _XXXX_XX,__XXXX__,
+ _XXXX_XX,__XXXX__,
+ __XXXXXX,_XXXX___,
+ __XXXXXX,XXXXX___,
+ ___XXXXX,XXXX____,
+ ____XXXX,XX______,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00A3[ 64] = { /* code 00A3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ _XXXXX__,XXXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,________,
+ _XXXX___,________,
+ XXXXXXXX,XX______,
+ XXXXXXXX,XX______,
+ XXXXXXXX,XX______,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ XXXXXXXX,____X___,
+ XXXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _X_____X,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00A4[ 64] = { /* code 00A4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,___X____,
+ _XXX_XXX,X_XXX___,
+ XXXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXX___,
+ __XXX___,_XXX____,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ __XXX___,_XXX____,
+ _XXXXXXX,XXXXX___,
+ XXXXXXXX,XXXXXX__,
+ _XXX_XXX,X_XXX___,
+ __X_____,___X____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00A5[ 64] = { /* code 00A5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXX____,__XXXX__,
+ _XXXX___,_XXXX___,
+ _XXXX___,_XXXX___,
+ __XXX___,_XXX____,
+ __XXXX__,XXXX____,
+ ___XXX__,XXX_____,
+ ___XXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00A6[ 32] = { /* code 00A6 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00A7[ 64] = { /* code 00A7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXX__,_XXXX___,
+ __XXXX__,_XXXX___,
+ __XXXXX_,________,
+ ___XXXXX,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XXX_____,
+ _XXXX_XX,XXXX____,
+ _XXX___X,XXXXX___,
+ _XXX____,_XXXXX__,
+ _XXXX___,__XXXX__,
+ _XXXXX__,___XXX__,
+ __XXXXX_,___XXX__,
+ ___XXXXX,__XXXX__,
+ ____XXXX,XXXXX___,
+ _____XXX,XXXX____,
+ ______XX,XXXX____,
+ ________,XXXXX___,
+ ________,_XXXX___,
+ __XXXX__,_XXXX___,
+ __XXXXX_,_XXXX___,
+ ___XXXXX,XXXX____,
+ ____XXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00A8[ 64] = { /* code 00A8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX___XX,X_______,
+ XXX___XX,X_______,
+ XXX___XX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00A9[ 96] = { /* code 00A9 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXX___,________,
+ _____XXX,XXXXXXX_,________,
+ ___XXXX_,_____XXX,X_______,
+ __XXX___,_______X,XX______,
+ __XX____,XXXX____,XX______,
+ _XX___XX,XXXXX___,_XX_____,
+ _XX___XX,___XXX__,_XX_____,
+ XX___XX_,____XX__,__XX____,
+ XX___XX_,________,__XX____,
+ XX___XX_,________,__XX____,
+ XX___XX_,________,__XX____,
+ XX___XX_,________,__XX____,
+ XX___XX_,____XX__,__XX____,
+ _XX___XX,___XXX__,_XX_____,
+ _XX___XX,XXXXX___,_XX_____,
+ __XX____,XXXX____,XX______,
+ __XXX___,_______X,XX______,
+ ___XXXX_,_____XXX,X_______,
+ _____XXX,XXXXXXX_,________,
+ _______X,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00AA[ 64] = { /* code 00AA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,________,
+ _XXXXXXX,X_______,
+ XXX___XX,X_______,
+ ______XX,X_______,
+ __XXXXXX,X_______,
+ XXXXXXXX,X_______,
+ XXX___XX,X_______,
+ XXX__XXX,X_______,
+ XXXXXXXX,X_______,
+ _XXXX_XX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00AB[ 64] = { /* code 00AB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,___XXX__,
+ ____XXX_,__XXX___,
+ ___XXXX_,_XXXX___,
+ ___XXX__,_XXX____,
+ __XXXX__,XXXX____,
+ _XXXX__X,XXX_____,
+ _XXXX__X,XXX_____,
+ __XXXX__,XXXX____,
+ ___XXX__,_XXX____,
+ ___XXXX_,_XXXX___,
+ ____XXX_,__XXX___,
+ _____XXX,___XXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00AC[ 64] = { /* code 00AC */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ ________,___XXXX_,
+ ________,___XXXX_,
+ ________,___XXXX_,
+ ________,___XXXX_,
+ ________,___XXXX_,
+ ________,___XXXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00AD[ 64] = { /* code 00AD */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00AE[ 96] = { /* code 00AE */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXX___,________,
+ _____XXX,XXXXXXX_,________,
+ ___XXXX_,_____XXX,X_______,
+ __XXX___,_______X,XX______,
+ __XX__XX,XXXX____,XX______,
+ _XX___XX,XXXXX___,_XX_____,
+ _XX___XX,___XX___,_XX_____,
+ XX____XX,___XX___,__XX____,
+ XX____XX,___XX___,__XX____,
+ XX____XX,XXXXX___,__XX____,
+ XX____XX,XXXX____,__XX____,
+ XX____XX,__XX____,__XX____,
+ XX____XX,__XXX___,__XX____,
+ _XX___XX,___XX___,_XX_____,
+ _XX___XX,___XXX__,_XX_____,
+ __XX__XX,____XX__,XX______,
+ __XXX___,_______X,XX______,
+ ___XXXX_,_____XXX,X_______,
+ _____XXX,XXXXXXX_,________,
+ _______X,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00AF[ 64] = { /* code 00AF */
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00B0[ 64] = { /* code 00B0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ __XXXXXX,________,
+ _XXX__XX,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XXX__XX,X_______,
+ __XXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00B1[ 64] = { /* code 00B1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ________,________,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00B2[ 64] = { /* code 00B2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXX__,________,
+ XXXXXXXX,________,
+ XXX__XXX,________,
+ _____XXX,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ __XXX___,________,
+ _XXX____,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00B3[ 64] = { /* code 00B3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXX__XX,X_______,
+ ____XXXX,________,
+ ____XXXX,________,
+ ______XX,X_______,
+ ______XX,X_______,
+ _XXX__XX,X_______,
+ __XXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00B4[ 64] = { /* code 00B4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ __XXX___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00B5[ 64] = { /* code 00B5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXX__,___XXXX_,
+ __XXXX__,___XXXX_,
+ __XXXX__,___XXXX_,
+ __XXXX__,___XXXX_,
+ __XXXX__,___XXXX_,
+ __XXXX__,___XXXX_,
+ __XXXX__,___XXXX_,
+ __XXXX__,___XXXX_,
+ __XXXX__,___XXXX_,
+ __XXXX__,___XXXX_,
+ __XXXX__,___XXXX_,
+ __XXXXX_,__XXXXX_,
+ __XXXXXX,XXXXXXX_,
+ __XXXXXX,XXXXXXX_,
+ __XXXX_X,XX_XXXX_,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00B6[ 64] = { /* code 00B6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ XXXXXXXX,__XXX___,
+ XXXXXXXX,__XXX___,
+ XXXXXXXX,__XXX___,
+ XXXXXXXX,__XXX___,
+ XXXXXXXX,__XXX___,
+ _XXXXXXX,__XXX___,
+ _XXXXXXX,__XXX___,
+ ___XXXXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ _____XXX,__XXX___,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00B7[ 32] = { /* code 00B7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00B8[ 64] = { /* code 00B8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00B9[ 64] = { /* code 00B9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ __XXXX__,________,
+ _XXXXX__,________,
+ _X_XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00BA[ 64] = { /* code 00BA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXXX_XX,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXXX_XX,XX______,
+ __XXXXXX,X_______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00BB[ 64] = { /* code 00BB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX___X,XX______,
+ __XXX___,XXX_____,
+ __XXXX__,XXXX____,
+ ___XXX__,_XXX____,
+ ___XXXX_,_XXXX___,
+ ____XXXX,__XXXX__,
+ ____XXXX,__XXXX__,
+ ___XXXX_,_XXXX___,
+ ___XXX__,_XXX____,
+ __XXXX__,XXXX____,
+ __XXX___,XXX_____,
+ _XXX___X,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00BC[ 96] = { /* code 00BC */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XXX_,_______X,XX______,
+ ___XXXX_,_______X,XX______,
+ _XXXXXX_,______XX,X_______,
+ _XX_XXX_,_____XXX,X_______,
+ ____XXX_,_____XXX,________,
+ ____XXX_,____XXX_,________,
+ ____XXX_,____XXX_,________,
+ ____XXX_,___XXX__,________,
+ ____XXX_,___XXX__,________,
+ ____XXX_,__XXX___,________,
+ ________,_XXX____,___XXX__,
+ ________,_XXX____,__XXXX__,
+ ________,XXX_____,_XXXXX__,
+ ________,XXX_____,XX_XXX__,
+ _______X,XX_____X,X__XXX__,
+ _______X,XX____XX,___XXX__,
+ ______XX,X_____XX,XXXXXXX_,
+ _____XXX,______XX,XXXXXXX_,
+ _____XXX,________,___XXX__,
+ ____XXX_,________,___XXX__,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00BD[ 96] = { /* code 00BD */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XXX_,_______X,XX______,
+ ___XXXX_,______XX,X_______,
+ _XXXXXX_,______XX,X_______,
+ _XX_XXX_,_____XXX,________,
+ ____XXX_,_____XXX,________,
+ ____XXX_,____XXX_,________,
+ ____XXX_,___XXX__,________,
+ ____XXX_,___XXX__,________,
+ ____XXX_,__XXX___,________,
+ ____XXX_,__XXX___,________,
+ ________,_XXX____,XXXX____,
+ ________,_XXX__XX,XXXXXX__,
+ ________,XXX___XX,X__XXX__,
+ ________,XXX_____,___XXX__,
+ _______X,XX______,__XXX___,
+ ______XX,XX______,_XXXX___,
+ ______XX,X_______,XXX_____,
+ _____XXX,_______X,XX______,
+ _____XXX,______XX,XXXXXX__,
+ ____XXX_,______XX,XXXXXX__,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00BE[ 96] = { /* code 00BE */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXX_,________,XXX_____,
+ _XXXXXXX,_______X,XX______,
+ XXX__XXX,______XX,X_______,
+ ___XXXX_,______XX,X_______,
+ ___XXXX_,_____XXX,________,
+ _____XXX,_____XXX,________,
+ _____XXX,____XXX_,________,
+ XXX__XXX,___XXX__,________,
+ _XXXXXX_,___XXX__,________,
+ __XXXX__,__XXX___,________,
+ ________,__XXX___,___XXX__,
+ ________,_XXX____,__XXXX__,
+ ________,XXX_____,_XXXXX__,
+ ________,XXX_____,XX_XXX__,
+ _______X,XX_____X,X__XXX__,
+ _______X,XX____XX,___XXX__,
+ ______XX,X_____XX,XXXXXXX_,
+ _____XXX,______XX,XXXXXXX_,
+ _____XXX,________,___XXX__,
+ ____XXX_,________,___XXX__,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00BF[ 96] = { /* code 00BF */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ ______XX,XXX_____,________,
+ _____XXX,XX______,________,
+ ____XXXX,X_______,________,
+ ___XXXXX,________,________,
+ __XXXXX_,________,________,
+ __XXXX__,________,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,___XXXXX,________,
+ ___XXXX_,___XXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ ____XXXX,XXXXXX__,________,
+ ______XX,XXXX____,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00C0[ 96] = { /* code 00C0 */
+ ______XX,XX______,________,
+ _______X,XXX_____,________,
+ ________,XXX_____,________,
+ ________,_XXX____,________,
+ ________,________,________,
+ _______X,XXXX____,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,_____XXX,X_______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ XXXX____,_______X,XXX_____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00C1[ 96] = { /* code 00C1 */
+ ________,_XXXX___,________,
+ ________,XXXX____,________,
+ ________,XXX_____,________,
+ _______X,XX______,________,
+ ________,________,________,
+ _______X,XXXX____,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,_____XXX,X_______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ XXXX____,_______X,XXX_____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00C2[ 96] = { /* code 00C2 */
+ ________,XXX_____,________,
+ _______X,XXXX____,________,
+ ______XX,X_XXX___,________,
+ _____XXX,___XXX__,________,
+ ________,________,________,
+ _______X,XXXX____,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,_____XXX,X_______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ XXXX____,_______X,XXX_____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00C3[ 96] = { /* code 00C3 */
+ ________,________,________,
+ ______XX,X___XX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XX_,__XXX___,________,
+ ________,________,________,
+ _______X,XXXX____,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,_____XXX,X_______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ XXXX____,_______X,XXX_____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00C4[ 96] = { /* code 00C4 */
+ ________,________,________,
+ _____XXX,___XXX__,________,
+ _____XXX,___XXX__,________,
+ _____XXX,___XXX__,________,
+ ________,________,________,
+ _______X,XXXX____,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,_____XXX,X_______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ XXXX____,_______X,XXX_____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00C5[ 96] = { /* code 00C5 */
+ ________,________,________,
+ ________,________,________,
+ ________,_XX_____,________,
+ ________,X__X____,________,
+ ________,X__X____,________,
+ _______X,XXXX____,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,_____XXX,X_______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ XXXX____,_______X,XXX_____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00C6[128] = { /* code 00C6 */
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,XXXXXXXX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXXXXXX,XX______,
+ ______XX,XX_XXXX_,________,________,
+ ______XX,XX_XXXX_,________,________,
+ _____XXX,X__XXXX_,________,________,
+ _____XXX,X__XXXXX,XXXXXXXX,X_______,
+ ____XXXX,___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,___XXXXX,XXXXXXXX,X_______,
+ ___XXXXX,___XXXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXX_,________,________,
+ __XXXXXX,XXXXXXX_,________,________,
+ __XXXXXX,XXXXXXX_,________,________,
+ _XXXXXXX,XXXXXXX_,________,________,
+ _XXXX___,___XXXX_,________,________,
+ _XXXX___,___XXXXX,XXXXXXXX,XX______,
+ XXXX____,___XXXXX,XXXXXXXX,XX______,
+ XXXX____,___XXXXX,XXXXXXXX,XX______,
+ XXXX____,___XXXXX,XXXXXXXX,XX______,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00C7[ 96] = { /* code 00C7 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XX______,
+ __XXXXXX,_____XXX,XX______,
+ __XXXX__,______XX,XXX_____,
+ _XXXXX__,_______X,X_______,
+ _XXXX___,________,________,
+ _XXXX___,________,________,
+ _XXXX___,________,________,
+ _XXXX___,________,________,
+ _XXXX___,________,________,
+ _XXXX___,_______X,X_______,
+ _XXXXX__,______XX,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ __XXXXXX,____XXXX,XX______,
+ ___XXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,XXXXX___,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ _______X,XXXX____,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00C8[ 96] = { /* code 00C8 */
+ ______XX,XX______,________,
+ _______X,XXX_____,________,
+ ________,XXX_____,________,
+ ________,_XXX____,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00C9[ 96] = { /* code 00C9 */
+ ________,_XXXX___,________,
+ ________,XXXX____,________,
+ ________,XXX_____,________,
+ _______X,XX______,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00CA[ 96] = { /* code 00CA */
+ ________,XXX_____,________,
+ _______X,XXXX____,________,
+ ______XX,X_XXX___,________,
+ _____XXX,___XXX__,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00CB[ 96] = { /* code 00CB */
+ ________,________,________,
+ _____XXX,___XXX__,________,
+ _____XXX,___XXX__,________,
+ _____XXX,___XXX__,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00CC[ 32] = { /* code 00CC */
+ _XXXX___,
+ __XXXX__,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00CD[ 32] = { /* code 00CD */
+ ___XXXX_,
+ __XXXX__,
+ __XXX___,
+ _XXX____,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00CE[ 32] = { /* code 00CE */
+ ___XXX__,
+ __XXXXX_,
+ _XXX_XXX,
+ XXX___XX,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00CF[ 32] = { /* code 00CF */
+ ________,
+ XXX___XX,
+ XXX___XX,
+ XXX___XX,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00D0[ 96] = { /* code 00D0 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,_____XXX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ XXXXXXXX,XXX____X,XXX_____,
+ XXXXXXXX,XXX____X,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,______XX,XX______,
+ __XXXX__,_____XXX,XX______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00D1[ 96] = { /* code 00D1 */
+ ________,________,________,
+ _______X,XX___XX_,________,
+ ______XX,XXXXXXX_,________,
+ ______XX,___XXX__,________,
+ ________,________,________,
+ __XXXX__,______XX,XX______,
+ __XXXXX_,______XX,XX______,
+ __XXXXXX,______XX,XX______,
+ __XXXXXX,______XX,XX______,
+ __XXXXXX,X_____XX,XX______,
+ __XXXXXX,X_____XX,XX______,
+ __XXXXXX,XX____XX,XX______,
+ __XXXX_X,XX____XX,XX______,
+ __XXXX_X,XXX___XX,XX______,
+ __XXXX__,XXXX__XX,XX______,
+ __XXXX__,XXXX__XX,XX______,
+ __XXXX__,_XXXX_XX,XX______,
+ __XXXX__,__XXX_XX,XX______,
+ __XXXX__,__XXXXXX,XX______,
+ __XXXX__,___XXXXX,XX______,
+ __XXXX__,___XXXXX,XX______,
+ __XXXX__,____XXXX,XX______,
+ __XXXX__,____XXXX,XX______,
+ __XXXX__,_____XXX,XX______,
+ __XXXX__,_____XXX,XX______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00D2[ 96] = { /* code 00D2 */
+ _______X,XXX_____,________,
+ ________,XXXX____,________,
+ ________,_XXX____,________,
+ ________,__XXX___,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XX______,
+ __XXXXXX,_____XXX,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ _XXXXX__,_______X,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXXX__,_______X,XXXX____,
+ __XXXXX_,______XX,XXX_____,
+ __XXXXXX,_____XXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00D3[ 96] = { /* code 00D3 */
+ ________,__XXXX__,________,
+ ________,_XXXX___,________,
+ ________,_XXX____,________,
+ ________,XXX_____,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XX______,
+ __XXXXXX,_____XXX,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ _XXXXX__,_______X,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXXX__,_______X,XXXX____,
+ __XXXXX_,______XX,XXX_____,
+ __XXXXXX,_____XXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00D4[ 96] = { /* code 00D4 */
+ ________,_XXX____,________,
+ ________,XXXXX___,________,
+ _______X,XX_XXX__,________,
+ ______XX,X___XXX_,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XX______,
+ __XXXXXX,_____XXX,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ _XXXXX__,_______X,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXXX__,_______X,XXXX____,
+ __XXXXX_,______XX,XXX_____,
+ __XXXXXX,_____XXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00D5[ 96] = { /* code 00D5 */
+ ________,________,________,
+ _______X,XX___XX_,________,
+ ______XX,XXXXXXX_,________,
+ ______XX,___XXX__,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XX______,
+ __XXXXXX,_____XXX,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ _XXXXX__,_______X,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXXX__,_______X,XXXX____,
+ __XXXXX_,______XX,XXX_____,
+ __XXXXXX,_____XXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00D6[ 96] = { /* code 00D6 */
+ ________,________,________,
+ ______XX,X___XXX_,________,
+ ______XX,X___XXX_,________,
+ ______XX,X___XXX_,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XX______,
+ __XXXXXX,_____XXX,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ _XXXXX__,_______X,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXXX__,_______X,XXXX____,
+ __XXXXX_,______XX,XXX_____,
+ __XXXXXX,_____XXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00D7[ 64] = { /* code 00D7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X____,___X____,
+ __XXX___,__XXX___,
+ _XXXXX__,_XXXXX__,
+ __XXXXX_,XXXXX___,
+ ___XXXXX,XXXX____,
+ ____XXXX,XXX_____,
+ _____XXX,XX______,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXX_,XXXXX___,
+ _XXXXX__,_XXXXX__,
+ __XXX___,__XXX___,
+ ___X____,___X____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00D8[ 96] = { /* code 00D8 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,__X_____,
+ _______X,XXXXXX__,__XX____,
+ _____XXX,XXXXXXXX,_XXXX___,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ___XXXXX,XXXXXXXX,XXX_____,
+ __XXXXXX,_____XXX,XXX_____,
+ __XXXX__,_____XXX,XXX_____,
+ _XXXXX__,____XXXX,XXX_____,
+ _XXXX___,___XXXX_,XXXX____,
+ _XXXX___,__XXXX__,XXXX____,
+ _XXXX___,_XXXX___,XXXX____,
+ _XXXX___,XXXX____,XXXX____,
+ _XXXX__X,XXX_____,XXXX____,
+ _XXXX_XX,XX______,XXXX____,
+ _XXXXXXX,X______X,XXXX____,
+ __XXXXXX,_______X,XXX_____,
+ __XXXXXX,_____XXX,XXX_____,
+ __XXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,X_______,
+ XXXX_XXX,XXXXXXXX,________,
+ _XX____X,XXXXXX__,________,
+ __X_____,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00D9[ 96] = { /* code 00D9 */
+ _______X,XXX_____,________,
+ ________,XXXX____,________,
+ ________,_XXX____,________,
+ ________,__XXX___,________,
+ ________,________,________,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXXX_,______XX,XX______,
+ __XXXXXX,____XXXX,XX______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,________,
+ ______XX,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00DA[ 96] = { /* code 00DA */
+ ________,__XXXX__,________,
+ ________,_XXXX___,________,
+ ________,_XXX____,________,
+ ________,XXX_____,________,
+ ________,________,________,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXXX_,______XX,XX______,
+ __XXXXXX,____XXXX,XX______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,________,
+ ______XX,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00DB[ 96] = { /* code 00DB */
+ ________,_XXX____,________,
+ ________,XXXXX___,________,
+ _______X,XX_XXX__,________,
+ ______XX,X___XXX_,________,
+ ________,________,________,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXXX_,______XX,XX______,
+ __XXXXXX,____XXXX,XX______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,________,
+ ______XX,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00DC[ 96] = { /* code 00DC */
+ ________,________,________,
+ ______XX,X___XXX_,________,
+ ______XX,X___XXX_,________,
+ ______XX,X___XXX_,________,
+ ________,________,________,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXXX_,______XX,XX______,
+ __XXXXXX,____XXXX,XX______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,________,
+ ______XX,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00DD[ 96] = { /* code 00DD */
+ ________,_XXXX___,________,
+ ________,XXXX____,________,
+ ________,XXX_____,________,
+ _______X,XX______,________,
+ ________,________,________,
+ XXXX____,______XX,XX______,
+ XXXXX___,_____XXX,XX______,
+ _XXXXX__,____XXXX,X_______,
+ __XXXX__,____XXXX,________,
+ __XXXXX_,___XXXXX,________,
+ ___XXXX_,___XXXX_,________,
+ ____XXXX,__XXXX__,________,
+ ____XXXX,XXXXXX__,________,
+ _____XXX,XXXXX___,________,
+ ______XX,XXXX____,________,
+ ______XX,XXXX____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00DE[ 96] = { /* code 00DE */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ___XXXX_,________,________,
+ ___XXXX_,________,________,
+ ___XXXX_,________,________,
+ ___XXXX_,________,________,
+ ___XXXXX,XXXXXX__,________,
+ ___XXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXXXX,________,
+ ___XXXXX,XXXXXXXX,X_______,
+ ___XXXX_,____XXXX,X_______,
+ ___XXXX_,_____XXX,X_______,
+ ___XXXX_,_____XXX,X_______,
+ ___XXXX_,____XXXX,X_______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,________,
+ ___XXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXX__,________,
+ ___XXXX_,________,________,
+ ___XXXX_,________,________,
+ ___XXXX_,________,________,
+ ___XXXX_,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00DF[ 96] = { /* code 00DF */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,XXX_____,________,
+ ___XXXXX,XXXX____,________,
+ ___XXXXX,XXXXX___,________,
+ __XXXXX_,_XXXX___,________,
+ __XXXX__,_XXXX___,________,
+ __XXXX__,_XXXX___,________,
+ __XXXX__,XXXX____,________,
+ __XXXX__,XXX_____,________,
+ __XXXX_X,XXX_____,________,
+ __XXXX_X,XXX_____,________,
+ __XXXX_X,XXXX____,________,
+ __XXXX__,XXXXXX__,________,
+ __XXXX__,_XXXXXX_,________,
+ __XXXX__,__XXXXX_,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX_X,X___XXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXX_X,XXXXXXX_,________,
+ __XXXX__,_XXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00E0[ 64] = { /* code 00E0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ ____XXXX,________,
+ _____XXX,________,
+ ______XX,X_______,
+ ________,________,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ _XXXX___,XXXXX___,
+ _XXX____,_XXXX___,
+ ________,_XXXX___,
+ _______X,XXXXX___,
+ ___XXXXX,XXXXX___,
+ __XXXXX_,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ __XXXXXX,X_XXX___,
+ ___XXXXX,__XXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00E1[ 64] = { /* code 00E1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XXX_____,
+ ______XX,XX______,
+ ______XX,X_______,
+ _____XXX,________,
+ ________,________,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ _XXXX___,XXXXX___,
+ _XXX____,_XXXX___,
+ ________,_XXXX___,
+ _______X,XXXXX___,
+ ___XXXXX,XXXXX___,
+ __XXXXX_,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ __XXXXXX,X_XXX___,
+ ___XXXXX,__XXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00E2[ 64] = { /* code 00E2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,X_______,
+ _____XXX,XX______,
+ ____XXX_,XXX_____,
+ ___XXX__,_XXX____,
+ ________,________,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ _XXXX___,XXXXX___,
+ _XXX____,_XXXX___,
+ ________,_XXXX___,
+ _______X,XXXXX___,
+ ___XXXXX,XXXXX___,
+ __XXXXX_,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ __XXXXXX,X_XXX___,
+ ___XXXXX,__XXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00E3[ 64] = { /* code 00E3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,__XX____,
+ ___XXXXX,XXXX____,
+ ___XX___,XXX_____,
+ ________,________,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ _XXXX___,XXXXX___,
+ _XXX____,_XXXX___,
+ ________,_XXXX___,
+ _______X,XXXXX___,
+ ___XXXXX,XXXXX___,
+ __XXXXX_,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ __XXXXXX,X_XXX___,
+ ___XXXXX,__XXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00E4[ 64] = { /* code 00E4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ________,________,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ _XXXX___,XXXXX___,
+ _XXX____,_XXXX___,
+ ________,_XXXX___,
+ _______X,XXXXX___,
+ ___XXXXX,XXXXX___,
+ __XXXXX_,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ __XXXXXX,X_XXX___,
+ ___XXXXX,__XXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00E5[ 64] = { /* code 00E5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____X__,X_______,
+ _____X__,X_______,
+ ______XX,________,
+ ________,________,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ _XXXX___,XXXXX___,
+ _XXX____,_XXXX___,
+ ________,_XXXX___,
+ _______X,XXXXX___,
+ ___XXXXX,XXXXX___,
+ __XXXXX_,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ __XXXXXX,X_XXX___,
+ ___XXXXX,__XXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00E6[ 96] = { /* code 00E6 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,XXX___XX,XXX_____,
+ ___XXXXX,XXXXXXXX,XXXXX___,
+ __XXXXXX,XXXXXXXX,XXXXX___,
+ __XXX___,_XXXXXX_,__XXXX__,
+ _XXX____,__XXXX__,___XXX__,
+ ________,__XXXX__,___XXXX_,
+ ________,XXXXXXXX,XXXXXXX_,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ __XXXXXX,__XXXXXX,XXXXXXX_,
+ _XXXX___,__XXXX__,________,
+ _XXXX___,__XXXX__,________,
+ _XXXXX__,_XXXXXX_,___XX___,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ __XXXXXX,XXX_XXXX,XXXXXX__,
+ ___XXXXX,X_____XX,XXXX____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00E7[ 64] = { /* code 00E7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,_XXXXX__,
+ _XXXX___,__XX____,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,__XX____,
+ __XXXX__,_XXXXX__,
+ __XXXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ _____XXX,XX______,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00E8[ 64] = { /* code 00E8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ _____XXX,X_______,
+ ______XX,X_______,
+ _______X,XX______,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,_XXXX___,
+ _XXXX___,__XXX___,
+ _XXXX___,__XXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXX___,________,
+ _XXXX___,________,
+ __XXXX__,__XX____,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00E9[ 64] = { /* code 00E9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XXX_____,
+ ______XX,XX______,
+ ______XX,X_______,
+ _____XXX,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,_XXXX___,
+ _XXXX___,__XXX___,
+ _XXXX___,__XXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXX___,________,
+ _XXXX___,________,
+ __XXXX__,__XX____,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00EA[ 64] = { /* code 00EA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,X_______,
+ _____XXX,XX______,
+ ____XXX_,XXX_____,
+ ___XXX__,_XXX____,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,_XXXX___,
+ _XXXX___,__XXX___,
+ _XXXX___,__XXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXX___,________,
+ _XXXX___,________,
+ __XXXX__,__XX____,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00EB[ 64] = { /* code 00EB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,_XXXX___,
+ _XXXX___,__XXX___,
+ _XXXX___,__XXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXX___,________,
+ _XXXX___,________,
+ __XXXX__,__XX____,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00EC[ 32] = { /* code 00EC */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ __XXXX__,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00ED[ 32] = { /* code 00ED */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ __XXXX__,
+ __XXX___,
+ _XXX____,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00EE[ 32] = { /* code 00EE */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXXX_,
+ _XXX_XXX,
+ XXX___XX,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00EF[ 32] = { /* code 00EF */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX___XX,
+ XXX___XX,
+ XXX___XX,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00F0[ 96] = { /* code 00F0 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,X__XX___,________,
+ _______X,XXX_____,________,
+ _______X,XXXX____,________,
+ _____XX_,_XXXX___,________,
+ ________,_XXXX___,________,
+ _____XXX,X_XXXX__,________,
+ ___XXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ _XXXXX__,___XXXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ ___XXXXX,XXXXXX__,________,
+ ____XXXX,XXXXX___,________,
+ ______XX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00F1[ 96] = { /* code 00F1 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,___XX___,________,
+ ____XXXX,XXXXX___,________,
+ ____XX__,_XXX____,________,
+ ________,________,________,
+ __XXXX__,XXXXX___,________,
+ __XXXX_X,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00F2[ 96] = { /* code 00F2 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,X_______,________,
+ ______XX,XX______,________,
+ _______X,XX______,________,
+ ________,XXX_____,________,
+ ________,________,________,
+ ______XX,XXX_____,________,
+ ____XXXX,XXXXX___,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXX__,___XXXX_,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ ___XXXXX,XXXXXX__,________,
+ ____XXXX,XXXXX___,________,
+ ______XX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00F3[ 96] = { /* code 00F3 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,_XXXX___,________,
+ ________,XXXX____,________,
+ ________,XXX_____,________,
+ _______X,XX______,________,
+ ________,________,________,
+ ______XX,XXX_____,________,
+ ____XXXX,XXXXX___,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXX__,___XXXX_,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ ___XXXXX,XXXXXX__,________,
+ ____XXXX,XXXXX___,________,
+ ______XX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00F4[ 96] = { /* code 00F4 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ ______XX,XXX_____,________,
+ _____XXX,_XXX____,________,
+ ____XXX_,__XXX___,________,
+ ________,________,________,
+ ______XX,XXX_____,________,
+ ____XXXX,XXXXX___,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXX__,___XXXX_,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ ___XXXXX,XXXXXX__,________,
+ ____XXXX,XXXXX___,________,
+ ______XX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00F5[ 96] = { /* code 00F5 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,___XX___,________,
+ ____XXXX,XXXXX___,________,
+ ____XX__,_XXX____,________,
+ ________,________,________,
+ ______XX,XXX_____,________,
+ ____XXXX,XXXXX___,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXX__,___XXXX_,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ ___XXXXX,XXXXXX__,________,
+ ____XXXX,XXXXX___,________,
+ ______XX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00F6[ 96] = { /* code 00F6 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XXX_,__XXX___,________,
+ ____XXX_,__XXX___,________,
+ ____XXX_,__XXX___,________,
+ ________,________,________,
+ ______XX,XXX_____,________,
+ ____XXXX,XXXXX___,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXX__,___XXXX_,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ ___XXXXX,XXXXXX__,________,
+ ____XXXX,XXXXX___,________,
+ ______XX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00F7[ 64] = { /* code 00F7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXXXX__,
+ XXXXXXXX,XXXXXX__,
+ XXXXXXXX,XXXXXX__,
+ XXXXXXXX,XXXXXX__,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00F8[ 96] = { /* code 00F8 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,______X_,________,
+ ______XX,XXX___XX,________,
+ ____XXXX,XXXX_XX_,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXX_,__XXXX__,________,
+ __XXXX__,__XXXXX_,________,
+ _XXXX___,_XX_XXXX,________,
+ _XXXX___,XX__XXXX,________,
+ _XXXX___,X___XXXX,________,
+ _XXXX__X,X___XXXX,________,
+ _XXXX_XX,____XXXX,________,
+ _XXXXXX_,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXX___,________,
+ _XX__XXX,XXX_____,________,
+ __X_____,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00F9[ 96] = { /* code 00F9 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,X_______,________,
+ ______XX,XX______,________,
+ _______X,XX______,________,
+ ________,XXX_____,________,
+ ________,________,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ ____XXXX,X__XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00FA[ 96] = { /* code 00FA */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,_XXXX___,________,
+ ________,XXXX____,________,
+ ________,XXX_____,________,
+ _______X,XX______,________,
+ ________,________,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ ____XXXX,X__XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00FB[ 96] = { /* code 00FB */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ ______XX,XXX_____,________,
+ _____XXX,_XXX____,________,
+ ____XXX_,__XXX___,________,
+ ________,________,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ ____XXXX,X__XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00FC[ 96] = { /* code 00FC */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XXX_,__XXX___,________,
+ ____XXX_,__XXX___,________,
+ ____XXX_,__XXX___,________,
+ ________,________,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ ____XXXX,X__XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00FD[ 64] = { /* code 00FD */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XXXX____,
+ _______X,XXX_____,
+ _______X,XX______,
+ ______XX,X_______,
+ ________,________,
+ XXXX____,___XXXX_,
+ XXXX____,___XXXX_,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXX___,
+ __XXXX__,_XXXX___,
+ __XXXX__,_XXXX___,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXXX_,XXXX____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,X_______,
+ ____XXXX,X_______,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00FE[ 96] = { /* code 00FE */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,XXXX____,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXX_,___XXXX_,________,
+ __XXXXX_,___XXXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXXX_,___XXXXX,________,
+ __XXXXXX,___XXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXX_X,XXXXXX__,________,
+ __XXXX__,XXXX____,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_1_00FF[ 64] = { /* code 00FF */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ________,________,
+ XXXX____,___XXXX_,
+ XXXX____,___XXXX_,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXX___,
+ __XXXX__,_XXXX___,
+ __XXXX__,_XXXX___,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXXX_,XXXX____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,X_______,
+ ____XXXX,X_______,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font32B_1_CharInfo[96] = {
+ { 8, 8, 1, acFont32B_1_00A0 } /* code 00A0 */
+ ,{ 8, 8, 1, acFont32B_1_00A1 } /* code 00A1 */
+ ,{ 15, 15, 2, acFont32B_1_00A2 } /* code 00A2 */
+ ,{ 15, 15, 2, acFont32B_1_00A3 } /* code 00A3 */
+ ,{ 15, 15, 2, acFont32B_1_00A4 } /* code 00A4 */
+ ,{ 15, 15, 2, acFont32B_1_00A5 } /* code 00A5 */
+ ,{ 7, 7, 1, acFont32B_1_00A6 } /* code 00A6 */
+ ,{ 15, 15, 2, acFont32B_1_00A7 } /* code 00A7 */
+ ,{ 9, 9, 2, acFont32B_1_00A8 } /* code 00A8 */
+ ,{ 20, 20, 3, acFont32B_1_00A9 } /* code 00A9 */
+ ,{ 10, 10, 2, acFont32B_1_00AA } /* code 00AA */
+ ,{ 15, 15, 2, acFont32B_1_00AB } /* code 00AB */
+ ,{ 16, 16, 2, acFont32B_1_00AC } /* code 00AC */
+ ,{ 9, 9, 2, acFont32B_1_00AD } /* code 00AD */
+ ,{ 20, 20, 3, acFont32B_1_00AE } /* code 00AE */
+ ,{ 15, 15, 2, acFont32B_1_00AF } /* code 00AF */
+ ,{ 11, 11, 2, acFont32B_1_00B0 } /* code 00B0 */
+ ,{ 15, 15, 2, acFont32B_1_00B1 } /* code 00B1 */
+ ,{ 9, 9, 2, acFont32B_1_00B2 } /* code 00B2 */
+ ,{ 9, 9, 2, acFont32B_1_00B3 } /* code 00B3 */
+ ,{ 9, 9, 2, acFont32B_1_00B4 } /* code 00B4 */
+ ,{ 16, 16, 2, acFont32B_1_00B5 } /* code 00B5 */
+ ,{ 15, 15, 2, acFont32B_1_00B6 } /* code 00B6 */
+ ,{ 8, 8, 1, acFont32B_1_00B7 } /* code 00B7 */
+ ,{ 9, 9, 2, acFont32B_1_00B8 } /* code 00B8 */
+ ,{ 9, 9, 2, acFont32B_1_00B9 } /* code 00B9 */
+ ,{ 10, 10, 2, acFont32B_1_00BA } /* code 00BA */
+ ,{ 15, 15, 2, acFont32B_1_00BB } /* code 00BB */
+ ,{ 23, 23, 3, acFont32B_1_00BC } /* code 00BC */
+ ,{ 23, 23, 3, acFont32B_1_00BD } /* code 00BD */
+ ,{ 23, 23, 3, acFont32B_1_00BE } /* code 00BE */
+ ,{ 17, 17, 3, acFont32B_1_00BF } /* code 00BF */
+ ,{ 19, 19, 3, acFont32B_1_00C0 } /* code 00C0 */
+ ,{ 19, 19, 3, acFont32B_1_00C1 } /* code 00C1 */
+ ,{ 19, 19, 3, acFont32B_1_00C2 } /* code 00C2 */
+ ,{ 19, 19, 3, acFont32B_1_00C3 } /* code 00C3 */
+ ,{ 19, 19, 3, acFont32B_1_00C4 } /* code 00C4 */
+ ,{ 19, 19, 3, acFont32B_1_00C5 } /* code 00C5 */
+ ,{ 27, 27, 4, acFont32B_1_00C6 } /* code 00C6 */
+ ,{ 20, 20, 3, acFont32B_1_00C7 } /* code 00C7 */
+ ,{ 18, 18, 3, acFont32B_1_00C8 } /* code 00C8 */
+ ,{ 18, 18, 3, acFont32B_1_00C9 } /* code 00C9 */
+ ,{ 18, 18, 3, acFont32B_1_00CA } /* code 00CA */
+ ,{ 18, 18, 3, acFont32B_1_00CB } /* code 00CB */
+ ,{ 8, 8, 1, acFont32B_1_00CC } /* code 00CC */
+ ,{ 8, 8, 1, acFont32B_1_00CD } /* code 00CD */
+ ,{ 8, 8, 1, acFont32B_1_00CE } /* code 00CE */
+ ,{ 8, 8, 1, acFont32B_1_00CF } /* code 00CF */
+ ,{ 20, 20, 3, acFont32B_1_00D0 } /* code 00D0 */
+ ,{ 20, 20, 3, acFont32B_1_00D1 } /* code 00D1 */
+ ,{ 21, 21, 3, acFont32B_1_00D2 } /* code 00D2 */
+ ,{ 21, 21, 3, acFont32B_1_00D3 } /* code 00D3 */
+ ,{ 21, 21, 3, acFont32B_1_00D4 } /* code 00D4 */
+ ,{ 21, 21, 3, acFont32B_1_00D5 } /* code 00D5 */
+ ,{ 21, 21, 3, acFont32B_1_00D6 } /* code 00D6 */
+ ,{ 16, 16, 2, acFont32B_1_00D7 } /* code 00D7 */
+ ,{ 21, 21, 3, acFont32B_1_00D8 } /* code 00D8 */
+ ,{ 20, 20, 3, acFont32B_1_00D9 } /* code 00D9 */
+ ,{ 20, 20, 3, acFont32B_1_00DA } /* code 00DA */
+ ,{ 20, 20, 3, acFont32B_1_00DB } /* code 00DB */
+ ,{ 20, 20, 3, acFont32B_1_00DC } /* code 00DC */
+ ,{ 18, 18, 3, acFont32B_1_00DD } /* code 00DD */
+ ,{ 18, 18, 3, acFont32B_1_00DE } /* code 00DE */
+ ,{ 17, 17, 3, acFont32B_1_00DF } /* code 00DF */
+ ,{ 15, 15, 2, acFont32B_1_00E0 } /* code 00E0 */
+ ,{ 15, 15, 2, acFont32B_1_00E1 } /* code 00E1 */
+ ,{ 15, 15, 2, acFont32B_1_00E2 } /* code 00E2 */
+ ,{ 15, 15, 2, acFont32B_1_00E3 } /* code 00E3 */
+ ,{ 15, 15, 2, acFont32B_1_00E4 } /* code 00E4 */
+ ,{ 15, 15, 2, acFont32B_1_00E5 } /* code 00E5 */
+ ,{ 24, 24, 3, acFont32B_1_00E6 } /* code 00E6 */
+ ,{ 15, 15, 2, acFont32B_1_00E7 } /* code 00E7 */
+ ,{ 15, 15, 2, acFont32B_1_00E8 } /* code 00E8 */
+ ,{ 15, 15, 2, acFont32B_1_00E9 } /* code 00E9 */
+ ,{ 15, 15, 2, acFont32B_1_00EA } /* code 00EA */
+ ,{ 15, 15, 2, acFont32B_1_00EB } /* code 00EB */
+ ,{ 8, 8, 1, acFont32B_1_00EC } /* code 00EC */
+ ,{ 8, 8, 1, acFont32B_1_00ED } /* code 00ED */
+ ,{ 8, 8, 1, acFont32B_1_00EE } /* code 00EE */
+ ,{ 8, 8, 1, acFont32B_1_00EF } /* code 00EF */
+ ,{ 17, 17, 3, acFont32B_1_00F0 } /* code 00F0 */
+ ,{ 17, 17, 3, acFont32B_1_00F1 } /* code 00F1 */
+ ,{ 17, 17, 3, acFont32B_1_00F2 } /* code 00F2 */
+ ,{ 17, 17, 3, acFont32B_1_00F3 } /* code 00F3 */
+ ,{ 17, 17, 3, acFont32B_1_00F4 } /* code 00F4 */
+ ,{ 17, 17, 3, acFont32B_1_00F5 } /* code 00F5 */
+ ,{ 17, 17, 3, acFont32B_1_00F6 } /* code 00F6 */
+ ,{ 15, 15, 2, acFont32B_1_00F7 } /* code 00F7 */
+ ,{ 17, 17, 3, acFont32B_1_00F8 } /* code 00F8 */
+ ,{ 17, 17, 3, acFont32B_1_00F9 } /* code 00F9 */
+ ,{ 17, 17, 3, acFont32B_1_00FA } /* code 00FA */
+ ,{ 17, 17, 3, acFont32B_1_00FB } /* code 00FB */
+ ,{ 17, 17, 3, acFont32B_1_00FC } /* code 00FC */
+ ,{ 15, 15, 2, acFont32B_1_00FD } /* code 00FD */
+ ,{ 17, 17, 3, acFont32B_1_00FE } /* code 00FE */
+ ,{ 15, 15, 2, acFont32B_1_00FF } /* code 00FF */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font32B_1_Prop2 = {
+ 0x00A0 /* first character */
+ ,0x00FF /* last character */
+ ,&GUI_Font32B_1_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font32B_1_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font32B_ASCII_CharInfo[0] /* address of first character */
+ ,&GUI_Font32B_1_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font32B_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,32 /* height of font */
+ ,32 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font32B_1_Prop1}
+ ,25, 15, 20
+};
+
diff --git a/User/lib/lcd/gui/Font/F32B_ASCII.c b/User/lib/lcd/gui/Font/F32B_ASCII.c
new file mode 100644
index 0000000..3e31ebe
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F32B_ASCII.c
@@ -0,0 +1,3368 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F32B_ASCII.C
+Purpose : ASCII character set, bold, high
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0020[ 32] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0021[ 32] = { /* code 0021 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0022[ 64] = { /* code 0022 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXX__X,XXX_____,
+ _XXXX__X,XXX_____,
+ _XXXX__X,XXX_____,
+ _XXXX__X,XXX_____,
+ _XXXX__X,XXX_____,
+ _XXXX__X,XXX_____,
+ __XX____,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0023[ 64] = { /* code 0023 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,___XXX__,
+ _____XXX,___XXX__,
+ ____XXXX,__XXXX__,
+ ____XXX_,__XXX___,
+ ____XXX_,__XXX___,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ _XXXX__X,XXX_____,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0024[ 64] = { /* code 0024 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ _____XXX,XXX_____,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXXX___,
+ __XXXX_X,X_XXXX__,
+ __XXX__X,X__XXX__,
+ __XXX__X,X_______,
+ __XXX__X,X_______,
+ __XXXXXX,X_______,
+ ___XXXXX,XX______,
+ ____XXXX,XXXX____,
+ _____XXX,XXXXX___,
+ _______X,XXXXXX__,
+ _______X,X_XXXX__,
+ _______X,X__XXX__,
+ __XXX__X,X__XXX__,
+ __XXXX_X,X__XXX__,
+ ___XXX_X,X_XXXX__,
+ ___XXXXX,XXXXX___,
+ ____XXXX,XXXX____,
+ _____XXX,XXX_____,
+ _______X,X_______,
+ _______X,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0025[ 96] = { /* code 0025 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ___XXXXX,_______X,XX______,
+ __XXXXXX,X______X,XX______,
+ _XXX___X,XX____XX,X_______,
+ _XXX___X,XX____XX,X_______,
+ _XXX___X,XX___XXX,X_______,
+ _XXX___X,XX___XXX,________,
+ _XXX___X,XX___XXX,________,
+ _XXX___X,XX__XXX_,________,
+ __XXXXXX,X___XXX_,________,
+ ___XXXXX,___XXX__,________,
+ ________,___XXX__,________,
+ ________,__XXX___,XXXXX___,
+ ________,__XXX__X,XXXXXX__,
+ ________,_XXX__XX,X___XXX_,
+ ________,_XXX__XX,X___XXX_,
+ ________,XXX___XX,X___XXX_,
+ ________,XXX___XX,X___XXX_,
+ _______X,XX____XX,X___XXX_,
+ _______X,XX____XX,X___XXX_,
+ ______XX,X______X,XXXXXX__,
+ ______XX,X_______,XXXXX___,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0026[ 96] = { /* code 0026 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXX_____,________,
+ ____XXXX,XXXXX___,________,
+ ___XXXXX,XXXXXX__,________,
+ ___XXXX_,__XXXX__,________,
+ ___XXXX_,__XXXX__,________,
+ ___XXXX_,__XXXX__,________,
+ ____XXXX,_XXXX___,________,
+ ____XXXX,XXXXX___,________,
+ _____XXX,XXX_____,________,
+ ____XXXX,XXX_____,________,
+ ___XXXXX,XXX_____,________,
+ __XXXXXX,XXXX__XX,X_______,
+ _XXXXX__,XXXXXXXX,X_______,
+ _XXXX___,_XXXXXXX,X_______,
+ _XXXX___,__XXXXXX,________,
+ _XXXX___,__XXXXXX,________,
+ _XXXXX__,_XXXXXXX,XX______,
+ __XXXXXX,XXXXXXXX,XXX_____,
+ ___XXXXX,XXXXX_XX,XX______,
+ _____XXX,XXX_____,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0027[ 32] = { /* code 0027 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ _XXXX___,
+ _XXXX___,
+ _XXXX___,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0028[ 64] = { /* code 0028 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ __XXX___,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ ___XXX__,________,
+ ___XXXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ _____XXX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0029[ 64] = { /* code 0029 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXX__,________,
+ ___XXX__,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ____XXX_,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ __XXXX__,________,
+ __XXX___,________,
+ __XXX___,________,
+ _XXX____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_002A[ 64] = { /* code 002A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ ____XX__,________,
+ XX__XX__,XX______,
+ XXXXXXXX,XX______,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ __XX__XX,________,
+ _XXX__XX,X_______,
+ __X____X,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_002B[ 64] = { /* code 002B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_002C[ 32] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ____XX__,
+ ___XXX__,
+ __XXX___,
+ ___X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_002D[ 64] = { /* code 002D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_002E[ 32] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_002F[ 32] = { /* code 002F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ _____XXX,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0030[ 64] = { /* code 0030 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ ___XXXXX,XXXX____,
+ __XXXX__,_XXXX___,
+ __XXXX__,_XXXX___,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ __XXXX__,_XXXX___,
+ __XXXX__,_XXXX___,
+ ___XXXXX,XXXX____,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0031[ 64] = { /* code 0031 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XXX_____,
+ _______X,XXX_____,
+ ______XX,XXX_____,
+ _____XXX,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXXX_X,XXX_____,
+ __XXX__X,XXX_____,
+ __X____X,XXX_____,
+ _______X,XXX_____,
+ _______X,XXX_____,
+ _______X,XXX_____,
+ _______X,XXX_____,
+ _______X,XXX_____,
+ _______X,XXX_____,
+ _______X,XXX_____,
+ _______X,XXX_____,
+ _______X,XXX_____,
+ _______X,XXX_____,
+ _______X,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0032[ 64] = { /* code 0032 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,_XXXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ ________,__XXXX__,
+ ________,__XXXX__,
+ ________,_XXXX___,
+ ________,XXXXX___,
+ _______X,XXXX____,
+ ______XX,XXX_____,
+ _____XXX,XX______,
+ ____XXXX,X_______,
+ ___XXXXX,________,
+ ___XXXX_,________,
+ __XXXX__,________,
+ __XXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0033[ 64] = { /* code 0033 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ _XXXXX__,XXXXX___,
+ _XXXX___,_XXXX___,
+ ________,_XXXX___,
+ ________,XXXX____,
+ ______XX,XXXX____,
+ ______XX,XX______,
+ ______XX,XXXX____,
+ ________,_XXXX___,
+ ________,__XXXX__,
+ ________,__XXXX__,
+ ________,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ __XXXX__,_XXXX___,
+ __XXXXXX,XXXXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0034[ 64] = { /* code 0034 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XXXX____,
+ ________,XXXX____,
+ _______X,XXXX____,
+ ______XX,XXXX____,
+ ______XX,XXXX____,
+ _____XXX,XXXX____,
+ ____XXX_,XXXX____,
+ ____XXX_,XXXX____,
+ ___XXX__,XXXX____,
+ __XXX___,XXXX____,
+ __XXX___,XXXX____,
+ _XXX____,XXXX____,
+ XXX_____,XXXX____,
+ XXXXXXXX,XXXXXX__,
+ XXXXXXXX,XXXXXX__,
+ XXXXXXXX,XXXXXX__,
+ ________,XXXX____,
+ ________,XXXX____,
+ ________,XXXX____,
+ ________,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0035[ 64] = { /* code 0035 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXX__,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX_XX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXXX___,
+ _XXXX___,_XXXX___,
+ ________,__XXXX__,
+ ________,__XXXX__,
+ ________,__XXXX__,
+ ________,__XXXX__,
+ ________,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXXX__,_XXXX___,
+ __XXXXXX,XXXX____,
+ ___XXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0036[ 64] = { /* code 0036 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XXX_____,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXXX___,
+ __XXXX__,_XXXXX__,
+ __XXXX__,__XXXX__,
+ __XXX___,________,
+ _XXXX___,________,
+ _XXXX_XX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXXX___,
+ _XXXXX__,_XXXX___,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ __XXX___,__XXXX__,
+ __XXXX__,_XXXX___,
+ ___XXXXX,XXXXX___,
+ ____XXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0037[ 64] = { /* code 0037 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ ________,_XXXXX__,
+ ________,XXXXX___,
+ ________,XXXX____,
+ _______X,XXX_____,
+ ______XX,XXX_____,
+ ______XX,XX______,
+ _____XXX,XX______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0038[ 64] = { /* code 0038 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ _XXXXX__,_XXXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ __XXXX__,_XXXX___,
+ ___XXXXX,XXXX____,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXX__,_XXXX___,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXXX__,_XXXXX__,
+ __XXXXXX,XXXXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0039[ 64] = { /* code 0039 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXX__,_XXXX___,
+ _XXXX___,__XXX___,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ __XXXX__,_XXXXX__,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXX__,
+ ____XXXX,X_XXXX__,
+ ________,__XXXX__,
+ ________,__XXX___,
+ _XXXX___,_XXXX___,
+ _XXXXX__,_XXXX___,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_003A[ 64] = { /* code 003A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_003B[ 64] = { /* code 003B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ _____XX_,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ ____X___,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_003C[ 64] = { /* code 003C */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_____X__,
+ ________,___XXX__,
+ ________,XXXXXX__,
+ ______XX,XXXXXX__,
+ ____XXXX,XXXXX___,
+ __XXXXXX,XX______,
+ _XXXXXX_,________,
+ _XXXX___,________,
+ _XXXXXX_,________,
+ __XXXXXX,XX______,
+ ____XXXX,XXXXX___,
+ ______XX,XXXXXX__,
+ ________,XXXXXX__,
+ ________,___XXX__,
+ ________,_____X__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_003D[ 64] = { /* code 003D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_003E[ 64] = { /* code 003E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _X______,________,
+ _XXX____,________,
+ _XXXXXX_,________,
+ _XXXXXXX,X_______,
+ __XXXXXX,XXX_____,
+ _____XXX,XXXXX___,
+ ________,XXXXXX__,
+ ________,__XXXX__,
+ ________,XXXXXX__,
+ _____XXX,XXXXX___,
+ __XXXXXX,XXX_____,
+ _XXXXXXX,X_______,
+ _XXXXXX_,________,
+ _XXX____,________,
+ _X______,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_003F[ 96] = { /* code 003F */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,XXX_____,________,
+ ___XXXXX,XXXXX___,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXX__,__XXXXX_,________,
+ _XXXXX__,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ ________,___XXXX_,________,
+ ________,__XXXXX_,________,
+ ________,_XXXXX__,________,
+ _______X,XXXXX___,________,
+ _______X,XXXX____,________,
+ ______XX,XXX_____,________,
+ ______XX,XX______,________,
+ ______XX,XX______,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XX______,________,
+ ______XX,XX______,________,
+ ______XX,XX______,________,
+ ______XX,XX______,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0040[128] = { /* code 0040 */
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,__XXXXXX,XX______,________,
+ ________,XXXXXXXX,XXXX____,________,
+ ______XX,XXXXXXXX,XXXXXX__,________,
+ _____XXX,XXX_____,_XXXXXX_,________,
+ ____XXXX,________,___XXXX_,________,
+ ___XXXX_,__XXXX_X,XXX_XXXX,________,
+ ___XXX__,_XXXXXXX,XXX__XXX,________,
+ __XXXX__,XXXXXXXX,XXX__XXX,X_______,
+ __XXX__X,XXX__XXX,XX____XX,X_______,
+ __XXX__X,XX____XX,XX____XX,X_______,
+ _XXXX__X,XX____XX,XX____XX,X_______,
+ _XXX__XX,X_____XX,XX____XX,X_______,
+ _XXX__XX,X_____XX,XX____XX,X_______,
+ _XXX__XX,X_____XX,X____XXX,________,
+ _XXX__XX,X____XXX,X____XXX,________,
+ _XXX__XX,X____XXX,X___XXXX,________,
+ _XXX__XX,XX__XXXX,X__XXXX_,________,
+ _XXX___X,XXXXXXXX,XXXXXX__,________,
+ __XXX__X,XXXXXXXX,XXXXX___,________,
+ __XXX___,XXXX__XX,XXX_____,________,
+ __XXXX__,________,______XX,XX______,
+ ___XXXX_,________,_____XXX,X_______,
+ ____XXXX,________,____XXXX,X_______,
+ ____XXXX,XX______,__XXXXXX,________,
+ ______XX,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXX_____,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0041[ 96] = { /* code 0041 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXX____,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ ______XX,XXXXX___,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ _____XXX,X_XXXX__,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ____XXXX,___XXXX_,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXX_,____XXXX,________,
+ ___XXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,_____XXX,X_______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ _XXXX___,______XX,XX______,
+ XXXX____,_______X,XXX_____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0042[ 96] = { /* code 0042 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,XX______,
+ __XXXX__,_____XXX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,_____XXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,XX______,
+ __XXXX__,______XX,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ __XXXXXX,XXXXXXXX,XXX_____,
+ __XXXXXX,XXXXXXXX,XX______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0043[ 96] = { /* code 0043 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XX______,
+ __XXXXXX,_____XXX,XX______,
+ __XXXX__,______XX,XXX_____,
+ _XXXXX__,_______X,X_______,
+ _XXXX___,________,________,
+ _XXXX___,________,________,
+ _XXXX___,________,________,
+ _XXXX___,________,________,
+ _XXXX___,________,________,
+ _XXXX___,_______X,X_______,
+ _XXXXX__,______XX,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ __XXXXXX,____XXXX,XX______,
+ ___XXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0044[ 96] = { /* code 0044 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,_____XXX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ __XXXX__,______XX,XX______,
+ __XXXX__,_____XXX,XX______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0045[ 96] = { /* code 0045 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0046[ 96] = { /* code 0046 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0047[ 96] = { /* code 0047 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XX______,
+ __XXXXXX,_____XXX,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ _XXXXX__,_______X,X_______,
+ _XXXX___,________,________,
+ _XXXX___,________,________,
+ _XXXX___,___XXXXX,XXX_____,
+ _XXXX___,___XXXXX,XXX_____,
+ _XXXX___,___XXXXX,XXX_____,
+ _XXXX___,___XXXXX,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ __XXXXX_,_______X,XXX_____,
+ __XXXXXX,_____XXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XXX_____,
+ ____XXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0048[ 96] = { /* code 0048 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXXXX,XXXXXXXX,XX______,
+ __XXXXXX,XXXXXXXX,XX______,
+ __XXXXXX,XXXXXXXX,XX______,
+ __XXXXXX,XXXXXXXX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0049[ 32] = { /* code 0049 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_004A[ 64] = { /* code 004A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ ________,_XXXX___,
+ XXXX____,_XXXX___,
+ XXXX____,_XXXX___,
+ XXXXX___,XXXXX___,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_004B[ 96] = { /* code 004B */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,______XX,XXX_____,
+ __XXXX__,_____XXX,XX______,
+ __XXXX__,____XXXX,X_______,
+ __XXXX__,___XXXXX,________,
+ __XXXX__,__XXXXX_,________,
+ __XXXX__,_XXXXX__,________,
+ __XXXX__,XXXXX___,________,
+ __XXXX_X,XXXX____,________,
+ __XXXXXX,XXXX____,________,
+ __XXXXXX,XXXXX___,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,__XXXX__,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,X_______,
+ __XXXX__,_____XXX,X_______,
+ __XXXX__,_____XXX,XX______,
+ __XXXX__,______XX,XXX_____,
+ __XXXX__,_______X,XXX_____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_004C[ 96] = { /* code 004C */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_004D[ 96] = { /* code 004D */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXXXXX_,______XX,XXXX____,
+ _XXXXXXX,_____XXX,XXXX____,
+ _XXXXXXX,_____XXX,XXXX____,
+ _XXXXXXX,_____XXX,XXXX____,
+ _XXXX_XX,_____XX_,XXXX____,
+ _XXXX_XX,X___XXX_,XXXX____,
+ _XXXX_XX,X___XXX_,XXXX____,
+ _XXXX_XX,X___XXX_,XXXX____,
+ _XXXX_XX,X___XXX_,XXXX____,
+ _XXXX__X,XX_XXX__,XXXX____,
+ _XXXX__X,XX_XXX__,XXXX____,
+ _XXXX__X,XX_XXX__,XXXX____,
+ _XXXX__X,XX_XXX__,XXXX____,
+ _XXXX___,XX_XX___,XXXX____,
+ _XXXX___,XXXXX___,XXXX____,
+ _XXXX___,XXXXX___,XXXX____,
+ _XXXX___,XXXXX___,XXXX____,
+ _XXXX___,XXXXX___,XXXX____,
+ _XXXX___,_XXX____,XXXX____,
+ _XXXX___,_XXX____,XXXX____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_004E[ 96] = { /* code 004E */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,______XX,XX______,
+ __XXXXX_,______XX,XX______,
+ __XXXXXX,______XX,XX______,
+ __XXXXXX,______XX,XX______,
+ __XXXXXX,X_____XX,XX______,
+ __XXXXXX,X_____XX,XX______,
+ __XXXXXX,XX____XX,XX______,
+ __XXXX_X,XX____XX,XX______,
+ __XXXX_X,XXX___XX,XX______,
+ __XXXX__,XXXX__XX,XX______,
+ __XXXX__,XXXX__XX,XX______,
+ __XXXX__,_XXXX_XX,XX______,
+ __XXXX__,__XXX_XX,XX______,
+ __XXXX__,__XXXXXX,XX______,
+ __XXXX__,___XXXXX,XX______,
+ __XXXX__,___XXXXX,XX______,
+ __XXXX__,____XXXX,XX______,
+ __XXXX__,____XXXX,XX______,
+ __XXXX__,_____XXX,XX______,
+ __XXXX__,_____XXX,XX______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_004F[ 96] = { /* code 004F */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XX______,
+ __XXXXXX,_____XXX,XXX_____,
+ __XXXX__,______XX,XXX_____,
+ _XXXXX__,_______X,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXXX__,_______X,XXXX____,
+ __XXXXX_,______XX,XXX_____,
+ __XXXXXX,_____XXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0050[ 96] = { /* code 0050 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXX__,____XXXX,X_______,
+ __XXXX__,_____XXX,X_______,
+ __XXXX__,_____XXX,X_______,
+ __XXXX__,____XXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXX___,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0051[ 96] = { /* code 0051 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XX______,
+ __XXXXXX,_____XXX,XXX_____,
+ __XXXXX_,______XX,XXX_____,
+ _XXXXX__,_______X,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXX___,________,XXXX____,
+ _XXXXX__,___XX__X,XXXX____,
+ __XXXXX_,__XXXXXX,XXX_____,
+ __XXXXXX,____XXXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XXXX____,
+ _______X,XXXXXX__,XXXXX___,
+ ________,________,_XXX____,
+ ________,________,__XX____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0052[ 96] = { /* code 0052 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,XX______,
+ __XXXX__,_____XXX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,_____XXX,XX______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXX___,________,
+ __XXXX__,__XXXXX_,________,
+ __XXXX__,___XXXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,X_______,
+ __XXXX__,_____XXX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XXX_____,
+ __XXXX__,_______X,XXXX____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0053[ 96] = { /* code 0053 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXX____,________,
+ ____XXXX,XXXXXX__,________,
+ ___XXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXX_,___XXXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXXX_,________,________,
+ __XXXXXX,XX______,________,
+ ___XXXXX,XXXXX___,________,
+ ____XXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,________,
+ ________,_XXXXXXX,X_______,
+ ________,____XXXX,X_______,
+ _XXXX___,_____XXX,X_______,
+ _XXXXX__,_____XXX,X_______,
+ __XXXXX_,____XXXX,X_______,
+ __XXXXXX,XXXXXXXX,________,
+ ___XXXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXX_,________,
+ ______XX,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0054[ 96] = { /* code 0054 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXXXXXX,XXXXXXXX,X_______,
+ _XXXXXXX,XXXXXXXX,X_______,
+ _XXXXXXX,XXXXXXXX,X_______,
+ _XXXXXXX,XXXXXXXX,X_______,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0055[ 96] = { /* code 0055 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXX__,______XX,XX______,
+ __XXXXX_,______XX,XX______,
+ __XXXXXX,____XXXX,XX______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,________,
+ ______XX,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0056[ 96] = { /* code 0056 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ XXXX____,_____XXX,X_______,
+ XXXXX___,____XXXX,X_______,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ ___XXX__,___XXX__,________,
+ ___XXXX_,__XXXX__,________,
+ ___XXXX_,__XXXX__,________,
+ ___XXXX_,__XXXX__,________,
+ ____XXX_,__XXX___,________,
+ ____XXXX,_XXXX___,________,
+ ____XXXX,_XXXX___,________,
+ _____XXX,_XXX____,________,
+ _____XXX,_XXX____,________,
+ _____XXX,XXXX____,________,
+ ______XX,XXX_____,________,
+ ______XX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0057[128] = { /* code 0057 */
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ XXXX____,__XXXXX_,_____XXX,X_______,
+ XXXX____,__XXXXX_,_____XXX,X_______,
+ _XXX____,__XXXXX_,_____XXX,________,
+ _XXXX___,_XXXXXXX,____XXXX,________,
+ _XXXX___,_XXX_XXX,____XXXX,________,
+ _XXXX___,_XXX_XXX,____XXXX,________,
+ _XXXX___,_XXX_XXX,____XXXX,________,
+ __XXX___,XXXX_XXX,X___XXX_,________,
+ __XXX___,XXX___XX,X___XXX_,________,
+ __XXXX__,XXX___XX,X__XXXX_,________,
+ __XXXX__,XXX___XX,X__XXXX_,________,
+ __XXXX__,XXX___XX,X__XXXX_,________,
+ ___XXX_X,XX_____X,XX_XXX__,________,
+ ___XXX_X,XX_____X,XX_XXX__,________,
+ ___XXX_X,XX_____X,XX_XXX__,________,
+ ___XXX_X,XX_____X,XX_XXX__,________,
+ ___XXXXX,X_______,XXXXXX__,________,
+ ____XXXX,X_______,XXXXX___,________,
+ ____XXXX,X_______,XXXXX___,________,
+ ____XXXX,X_______,XXXXX___,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0058[ 96] = { /* code 0058 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,____XXXX,________,
+ __XXXXX_,___XXXXX,________,
+ ___XXXX_,___XXXX_,________,
+ ____XXXX,__XXXX__,________,
+ ____XXXX,__XXXX__,________,
+ _____XXX,XXXXX___,________,
+ _____XXX,XXXXX___,________,
+ ______XX,XXXX____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ ______XX,XXXX____,________,
+ _____XXX,XXXX____,________,
+ _____XXX,XXXXX___,________,
+ ____XXXX,__XXXX__,________,
+ ____XXXX,__XXXX__,________,
+ ___XXXX_,___XXXX_,________,
+ ___XXXX_,___XXXX_,________,
+ __XXXX__,____XXXX,________,
+ _XXXXX__,____XXXX,X_______,
+ _XXXX___,_____XXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0059[ 96] = { /* code 0059 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ XXXX____,______XX,XX______,
+ XXXXX___,_____XXX,XX______,
+ _XXXXX__,____XXXX,X_______,
+ __XXXX__,____XXXX,________,
+ __XXXXX_,___XXXXX,________,
+ ___XXXX_,___XXXX_,________,
+ ____XXXX,__XXXX__,________,
+ ____XXXX,XXXXXX__,________,
+ _____XXX,XXXXX___,________,
+ ______XX,XXXX____,________,
+ ______XX,XXXX____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_005A[ 96] = { /* code 005A */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXXXXXX,XXXXXXXX,________,
+ _XXXXXXX,XXXXXXXX,________,
+ _XXXXXXX,XXXXXXXX,________,
+ _XXXXXXX,XXXXXXXX,________,
+ ________,___XXXX_,________,
+ ________,__XXXX__,________,
+ ________,_XXXX___,________,
+ ________,XXXX____,________,
+ _______X,XXX_____,________,
+ ______XX,XX______,________,
+ _____XXX,XX______,________,
+ _____XXX,X_______,________,
+ ____XXXX,________,________,
+ ___XXXX_,________,________,
+ __XXXX__,________,________,
+ _XXXX___,________,________,
+ XXXXXXXX,XXXXXXXX,________,
+ XXXXXXXX,XXXXXXXX,________,
+ XXXXXXXX,XXXXXXXX,________,
+ XXXXXXXX,XXXXXXXX,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_005B[ 64] = { /* code 005B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,X_______,
+ __XXXXXX,X_______,
+ __XXXXXX,X_______,
+ __XXXXXX,X_______,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXXXX,X_______,
+ __XXXXXX,X_______,
+ __XXXXXX,X_______,
+ __XXXXXX,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_005C[ 32] = { /* code 005C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ _____XXX,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_005D[ 64] = { /* code 005D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXX_,________,
+ XXXXXXX_,________,
+ XXXXXXX_,________,
+ XXXXXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ XXXXXXX_,________,
+ XXXXXXX_,________,
+ XXXXXXX_,________,
+ XXXXXXX_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_005E[ 64] = { /* code 005E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ____XXXX,XX______,
+ ____XXXX,XX______,
+ ____XXXX,XX______,
+ ___XXX__,XXX_____,
+ ___XXX__,XXX_____,
+ __XXXX__,XXXX____,
+ __XXX___,_XXX____,
+ _XXXX___,_XXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_005F[ 64] = { /* code 005F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0060[ 64] = { /* code 0060 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXX____,________,
+ _XXXX___,________,
+ __XXX___,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0061[ 64] = { /* code 0061 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ _XXXX___,XXXXX___,
+ _XXX____,_XXXX___,
+ ________,_XXXX___,
+ _______X,XXXXX___,
+ ___XXXXX,XXXXX___,
+ __XXXXX_,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,_XXXX___,
+ _XXXX___,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ __XXXXXX,X_XXX___,
+ ___XXXXX,__XXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0062[ 96] = { /* code 0062 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,XXXX____,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXX_,___XXXX_,________,
+ __XXXXX_,___XXXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXXX_,___XXXXX,________,
+ __XXXXXX,___XXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXX__,XXXX____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0063[ 64] = { /* code 0063 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,_XXXXX__,
+ _XXXX___,__XX____,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,________,
+ _XXXX___,__XX____,
+ __XXXX__,_XXXXX__,
+ __XXXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0064[ 96] = { /* code 0064 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,___XXXX_,________,
+ ________,___XXXX_,________,
+ ________,___XXXX_,________,
+ ________,___XXXX_,________,
+ ________,___XXXX_,________,
+ _____XXX,X__XXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXX__,__XXXXX_,________,
+ _XXXXX__,__XXXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXXX__,__XXXXX_,________,
+ __XXXX__,__XXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ _____XXX,X__XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0065[ 64] = { /* code 0065 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXXX___,
+ __XXXX__,_XXXX___,
+ _XXXX___,__XXX___,
+ _XXXX___,__XXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXX___,________,
+ _XXXX___,________,
+ __XXXX__,__XX____,
+ __XXXXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0066[ 64] = { /* code 0066 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXXXX,X_______,
+ __XXXXXX,X_______,
+ __XXXX__,________,
+ __XXXX__,________,
+ XXXXXXXX,X_______,
+ XXXXXXXX,X_______,
+ XXXXXXXX,X_______,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0067[ 96] = { /* code 0067 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,X__XXXX_,________,
+ ___XXXXX,XX_XXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXX__,__XXXXX_,________,
+ _XXXXX__,__XXXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXXX__,__XXXXX_,________,
+ __XXXX__,_XXXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ ___XXXXX,XX_XXXX_,________,
+ ____XXXX,X__XXXX_,________,
+ ________,___XXXX_,________,
+ _XX_____,__XXXXX_,________,
+ _XXXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXX___,________,
+ ____XXXX,XXXX____,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0068[ 96] = { /* code 0068 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,XXXXX___,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0069[ 32] = { /* code 0069 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_006A[ 32] = { /* code 006A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ XXXXXX__,
+ XXXXX___,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_006B[ 64] = { /* code 006B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,__XXXX__,
+ __XXXX__,_XXXX___,
+ __XXXX__,_XXX____,
+ __XXXX__,XXXX____,
+ __XXXX_X,XXX_____,
+ __XXXX_X,XX______,
+ __XXXXXX,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXXXX_,XXXX____,
+ __XXXX__,XXXX____,
+ __XXXX__,_XXXX___,
+ __XXXX__,_XXXX___,
+ __XXXX__,__XXXX__,
+ __XXXX__,__XXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_006C[ 32] = { /* code 006C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_006D[128] = { /* code 006D */
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ __XXXX__,XXXXX___,_XXXXX__,________,
+ __XXXXXX,XXXXXX_X,XXXXXXX_,________,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,________,
+ __XXXXX_,__XXXXXX,___XXXXX,________,
+ __XXXX__,___XXXXX,____XXXX,________,
+ __XXXX__,___XXXX_,____XXXX,________,
+ __XXXX__,___XXXX_,____XXXX,________,
+ __XXXX__,___XXXX_,____XXXX,________,
+ __XXXX__,___XXXX_,____XXXX,________,
+ __XXXX__,___XXXX_,____XXXX,________,
+ __XXXX__,___XXXX_,____XXXX,________,
+ __XXXX__,___XXXX_,____XXXX,________,
+ __XXXX__,___XXXX_,____XXXX,________,
+ __XXXX__,___XXXX_,____XXXX,________,
+ __XXXX__,___XXXX_,____XXXX,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_006E[ 96] = { /* code 006E */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,XXXXX___,________,
+ __XXXX_X,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_006F[ 96] = { /* code 006F */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXX_____,________,
+ ____XXXX,XXXXX___,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXX__,___XXXX_,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ _XXXX___,____XXXX,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ ___XXXXX,XXXXXX__,________,
+ ____XXXX,XXXXX___,________,
+ ______XX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0070[ 96] = { /* code 0070 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,XXXXX___,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXX_,___XXXX_,________,
+ __XXXXX_,___XXXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXX__,____XXXX,________,
+ __XXXXX_,___XXXXX,________,
+ __XXXXXX,___XXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXX_X,XXXXXX__,________,
+ __XXXX__,XXXX____,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ __XXXX__,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0071[ 96] = { /* code 0071 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,X__XXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXX__,__XXXXX_,________,
+ _XXXXX__,__XXXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXX___,___XXXX_,________,
+ _XXXXX__,__XXXXX_,________,
+ __XXXX__,_XXXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ _____XXX,X__XXXX_,________,
+ ________,___XXXX_,________,
+ ________,___XXXX_,________,
+ ________,___XXXX_,________,
+ ________,___XXXX_,________,
+ ________,___XXXX_,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0072[ 64] = { /* code 0072 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXX_X,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXXXX_,________,
+ __XXXXX_,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0073[ 64] = { /* code 0073 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XXX_____,
+ __XXXXXX,XXXXX___,
+ _XXXXXXX,XXXXXX__,
+ _XXXX___,__XX____,
+ _XXXX___,________,
+ _XXXXXX_,________,
+ __XXXXXX,XX______,
+ ___XXXXX,XXXX____,
+ _____XXX,XXXXX___,
+ ________,XXXXXX__,
+ ________,__XXXX__,
+ ___XX___,__XXXX__,
+ _XXXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ ____XXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0074[ 64] = { /* code 0074 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____X__,________,
+ ___XXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ XXXXXXXX,X_______,
+ XXXXXXXX,X_______,
+ XXXXXXXX,X_______,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXXXX,X_______,
+ ___XXXXX,X_______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0075[ 96] = { /* code 0075 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXX__,___XXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXXX_,________,
+ ____XXXX,X__XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0076[ 64] = { /* code 0076 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ __XXX___,__XXX___,
+ __XXXX__,_XXXX___,
+ __XXXX__,_XXXX___,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXXX_,_XXX____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ____XXXX,XXX_____,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0077[ 96] = { /* code 0077 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ XXXX____,_XXX____,_XXXX___,
+ _XXX____,_XXX____,_XXX____,
+ _XXX____,_XXX____,_XXX____,
+ _XXXX___,XXXXX___,XXXX____,
+ __XXX___,XX_XX___,XXX_____,
+ __XXX___,XX_XX___,XXX_____,
+ __XXX___,XX_XX___,XXX_____,
+ ___XXX_X,XX_XXX_X,XX______,
+ ___XXX_X,X___XX_X,XX______,
+ ___XXX_X,X___XX_X,XX______,
+ ____XX_X,X___XX_X,X_______,
+ ____XXXX,X___XXXX,X_______,
+ ____XXXX,_____XXX,X_______,
+ _____XXX,_____XXX,________,
+ _____XXX,_____XXX,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0078[ 64] = { /* code 0078 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ __XXXX__,_XXXX___,
+ ___XXXX_,XXXX____,
+ ___XXXX_,XXX_____,
+ ____XXXX,XXX_____,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ ____XXXX,XXX_____,
+ ___XXXX_,XXXX____,
+ ___XXXX_,XXXX____,
+ __XXXX__,_XXXX___,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_0079[ 64] = { /* code 0079 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXX____,___XXXX_,
+ XXXX____,___XXXX_,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXX___,
+ __XXXX__,_XXXX___,
+ __XXXX__,_XXXX___,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXXX_,XXXX____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ _____XXX,X_______,
+ ____XXXX,X_______,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_007A[ 64] = { /* code 007A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ________,_XXXX___,
+ ________,XXXX____,
+ _______X,XXX_____,
+ ______XX,XX______,
+ _____XXX,X_______,
+ ____XXXX,________,
+ ___XXXX_,________,
+ __XXXX__,________,
+ _XXXX___,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_007B[ 64] = { /* code 007B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XX______,
+ _____XXX,XX______,
+ ____XXXX,XX______,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ _XXXXX__,________,
+ _XXXX___,________,
+ _XXXXX__,________,
+ ___XXXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXXX,XX______,
+ _____XXX,XX______,
+ ______XX,XX______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_007C[ 32] = { /* code 007C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_007D[ 64] = { /* code 007D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXX___,________,
+ _XXXXX__,________,
+ _XXXXXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXXX,________,
+ _____XXX,XX______,
+ ______XX,XX______,
+ _____XXX,XX______,
+ ____XXXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ _XXXXXX_,________,
+ _XXXXX__,________,
+ _XXXX___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32B_ASCII_007E[ 64] = { /* code 007E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ _XXXXXXX,XX___XX_,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _XX____X,XXXXXXX_,
+ ________,_XXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font32B_ASCII_CharInfo[95] = {
+ { 8, 8, 1, acFont32B_ASCII_0020 } /* code 0020 */
+ ,{ 8, 8, 1, acFont32B_ASCII_0021 } /* code 0021 */
+ ,{ 13, 13, 2, acFont32B_ASCII_0022 } /* code 0022 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0023 } /* code 0023 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0024 } /* code 0024 */
+ ,{ 24, 24, 3, acFont32B_ASCII_0025 } /* code 0025 */
+ ,{ 20, 20, 3, acFont32B_ASCII_0026 } /* code 0026 */
+ ,{ 6, 6, 1, acFont32B_ASCII_0027 } /* code 0027 */
+ ,{ 9, 9, 2, acFont32B_ASCII_0028 } /* code 0028 */
+ ,{ 9, 9, 2, acFont32B_ASCII_0029 } /* code 0029 */
+ ,{ 11, 11, 2, acFont32B_ASCII_002A } /* code 002A */
+ ,{ 16, 16, 2, acFont32B_ASCII_002B } /* code 002B */
+ ,{ 8, 8, 1, acFont32B_ASCII_002C } /* code 002C */
+ ,{ 9, 9, 2, acFont32B_ASCII_002D } /* code 002D */
+ ,{ 8, 8, 1, acFont32B_ASCII_002E } /* code 002E */
+ ,{ 8, 8, 1, acFont32B_ASCII_002F } /* code 002F */
+ ,{ 15, 15, 2, acFont32B_ASCII_0030 } /* code 0030 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0031 } /* code 0031 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0032 } /* code 0032 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0033 } /* code 0033 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0034 } /* code 0034 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0035 } /* code 0035 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0036 } /* code 0036 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0037 } /* code 0037 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0038 } /* code 0038 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0039 } /* code 0039 */
+ ,{ 10, 10, 2, acFont32B_ASCII_003A } /* code 003A */
+ ,{ 10, 10, 2, acFont32B_ASCII_003B } /* code 003B */
+ ,{ 16, 16, 2, acFont32B_ASCII_003C } /* code 003C */
+ ,{ 16, 16, 2, acFont32B_ASCII_003D } /* code 003D */
+ ,{ 16, 16, 2, acFont32B_ASCII_003E } /* code 003E */
+ ,{ 17, 17, 3, acFont32B_ASCII_003F } /* code 003F */
+ ,{ 26, 26, 4, acFont32B_ASCII_0040 } /* code 0040 */
+ ,{ 19, 19, 3, acFont32B_ASCII_0041 } /* code 0041 */
+ ,{ 20, 20, 3, acFont32B_ASCII_0042 } /* code 0042 */
+ ,{ 20, 20, 3, acFont32B_ASCII_0043 } /* code 0043 */
+ ,{ 20, 20, 3, acFont32B_ASCII_0044 } /* code 0044 */
+ ,{ 18, 18, 3, acFont32B_ASCII_0045 } /* code 0045 */
+ ,{ 17, 17, 3, acFont32B_ASCII_0046 } /* code 0046 */
+ ,{ 21, 21, 3, acFont32B_ASCII_0047 } /* code 0047 */
+ ,{ 20, 20, 3, acFont32B_ASCII_0048 } /* code 0048 */
+ ,{ 8, 8, 1, acFont32B_ASCII_0049 } /* code 0049 */
+ ,{ 15, 15, 2, acFont32B_ASCII_004A } /* code 004A */
+ ,{ 20, 20, 3, acFont32B_ASCII_004B } /* code 004B */
+ ,{ 17, 17, 3, acFont32B_ASCII_004C } /* code 004C */
+ ,{ 21, 21, 3, acFont32B_ASCII_004D } /* code 004D */
+ ,{ 20, 20, 3, acFont32B_ASCII_004E } /* code 004E */
+ ,{ 21, 21, 3, acFont32B_ASCII_004F } /* code 004F */
+ ,{ 18, 18, 3, acFont32B_ASCII_0050 } /* code 0050 */
+ ,{ 21, 21, 3, acFont32B_ASCII_0051 } /* code 0051 */
+ ,{ 20, 20, 3, acFont32B_ASCII_0052 } /* code 0052 */
+ ,{ 18, 18, 3, acFont32B_ASCII_0053 } /* code 0053 */
+ ,{ 18, 18, 3, acFont32B_ASCII_0054 } /* code 0054 */
+ ,{ 20, 20, 3, acFont32B_ASCII_0055 } /* code 0055 */
+ ,{ 18, 18, 3, acFont32B_ASCII_0056 } /* code 0056 */
+ ,{ 25, 25, 4, acFont32B_ASCII_0057 } /* code 0057 */
+ ,{ 18, 18, 3, acFont32B_ASCII_0058 } /* code 0058 */
+ ,{ 18, 18, 3, acFont32B_ASCII_0059 } /* code 0059 */
+ ,{ 17, 17, 3, acFont32B_ASCII_005A } /* code 005A */
+ ,{ 9, 9, 2, acFont32B_ASCII_005B } /* code 005B */
+ ,{ 8, 8, 1, acFont32B_ASCII_005C } /* code 005C */
+ ,{ 9, 9, 2, acFont32B_ASCII_005D } /* code 005D */
+ ,{ 16, 16, 2, acFont32B_ASCII_005E } /* code 005E */
+ ,{ 15, 15, 2, acFont32B_ASCII_005F } /* code 005F */
+ ,{ 9, 9, 2, acFont32B_ASCII_0060 } /* code 0060 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0061 } /* code 0061 */
+ ,{ 17, 17, 3, acFont32B_ASCII_0062 } /* code 0062 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0063 } /* code 0063 */
+ ,{ 17, 17, 3, acFont32B_ASCII_0064 } /* code 0064 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0065 } /* code 0065 */
+ ,{ 9, 9, 2, acFont32B_ASCII_0066 } /* code 0066 */
+ ,{ 17, 17, 3, acFont32B_ASCII_0067 } /* code 0067 */
+ ,{ 17, 17, 3, acFont32B_ASCII_0068 } /* code 0068 */
+ ,{ 8, 8, 1, acFont32B_ASCII_0069 } /* code 0069 */
+ ,{ 8, 8, 1, acFont32B_ASCII_006A } /* code 006A */
+ ,{ 15, 15, 2, acFont32B_ASCII_006B } /* code 006B */
+ ,{ 8, 8, 1, acFont32B_ASCII_006C } /* code 006C */
+ ,{ 26, 26, 4, acFont32B_ASCII_006D } /* code 006D */
+ ,{ 17, 17, 3, acFont32B_ASCII_006E } /* code 006E */
+ ,{ 17, 17, 3, acFont32B_ASCII_006F } /* code 006F */
+ ,{ 17, 17, 3, acFont32B_ASCII_0070 } /* code 0070 */
+ ,{ 17, 17, 3, acFont32B_ASCII_0071 } /* code 0071 */
+ ,{ 11, 11, 2, acFont32B_ASCII_0072 } /* code 0072 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0073 } /* code 0073 */
+ ,{ 9, 9, 2, acFont32B_ASCII_0074 } /* code 0074 */
+ ,{ 17, 17, 3, acFont32B_ASCII_0075 } /* code 0075 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0076 } /* code 0076 */
+ ,{ 21, 21, 3, acFont32B_ASCII_0077 } /* code 0077 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0078 } /* code 0078 */
+ ,{ 15, 15, 2, acFont32B_ASCII_0079 } /* code 0079 */
+ ,{ 14, 14, 2, acFont32B_ASCII_007A } /* code 007A */
+ ,{ 11, 11, 2, acFont32B_ASCII_007B } /* code 007B */
+ ,{ 7, 7, 1, acFont32B_ASCII_007C } /* code 007C */
+ ,{ 11, 11, 2, acFont32B_ASCII_007D } /* code 007D */
+ ,{ 16, 16, 2, acFont32B_ASCII_007E } /* code 007E */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font32B_ASCII_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,GUI_Font32B_ASCII_CharInfo /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font32B_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,32 /* height of font */
+ ,32 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font32B_ASCII_Prop1}
+ ,25, 15, 20
+};
+
diff --git a/User/lib/lcd/gui/Font/F32_1.c b/User/lib/lcd/gui/Font/F32_1.c
new file mode 100644
index 0000000..736d0b6
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F32_1.c
@@ -0,0 +1,3410 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F32_1.C
+Purpose : ISO 8859-1, West European Character Set, bold, high
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont32_1_00A0[ 32] = { /* code 00A0 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00A1[ 32] = { /* code 00A1 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00A2[ 64] = { /* code 00A2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,__X_____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,XXXX____,
+ __XX____,X_XXX___,
+ _XXX____,X__X____,
+ _XX____X,________,
+ _XX____X,________,
+ _XX____X,________,
+ _XX___X_,________,
+ _XX___X_,___XX___,
+ _XXX__X_,___XX___,
+ __XXXX__,__XX____,
+ __XXXX__,_XXX____,
+ ___XXXXX,XXX_____,
+ ____XXXX,X_______,
+ ____X___,________,
+ ____X___,________,
+ ___X____,________,
+ ___X____,________,
+ ___X____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00A3[ 64] = { /* code 00A3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ____XXXX,XXX_____,
+ ___XXX__,_XXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ XXXXXXXX,X_______,
+ XXXXXXXX,X_______,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ __XX____,________,
+ __X_____,________,
+ _XXXXXXX,____X___,
+ XXXXXXXX,XXXXXX__,
+ _XX_____,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00A4[ 64] = { /* code 00A4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,____X___,
+ _XXX_XXX,XX_XXX__,
+ __XXXXXX,XXXXX___,
+ ___XXX__,_XXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXX__,_XXX____,
+ __XXXXXX,XXXXX___,
+ _XXX_XXX,XX_XXX__,
+ __X_____,____X___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00A5[ 64] = { /* code 00A5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX______,____XX__,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ __XX____,__XX____,
+ __XX____,__XX____,
+ ___XX___,_XX_____,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ _____XXX,X_______,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ______XX,________,
+ ______XX,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00A6[ 32] = { /* code 00A6 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00A7[ 64] = { /* code 00A7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,__XX____,
+ __XX____,__XXX___,
+ __XX____,___XX___,
+ __XXX___,________,
+ ___XXX__,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ _XX____X,XXX_____,
+ _XX_____,XXXXX___,
+ _XX_____,__XXXX__,
+ _XX_____,___XXX__,
+ __XXX___,____XX__,
+ __XXXXX_,____XX__,
+ ____XXXX,X__XX___,
+ ______XX,XXXX____,
+ _______X,XXXX____,
+ ________,_XXX____,
+ ________,__XXX___,
+ __XX____,___XX___,
+ __XXX___,___XX___,
+ ___XXX__,__XXX___,
+ ____XXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00A8[ 64] = { /* code 00A8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00A9[ 96] = { /* code 00A9 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXX___,________,
+ _____XXX,XXXXXXX_,________,
+ ___XXXX_,_____XXX,X_______,
+ __XXX___,_______X,XX______,
+ __XX____,XXXXX___,XX______,
+ _XX____X,XXXXXX__,_XX_____,
+ _XX___XX,X___XXX_,_XX_____,
+ XX___XXX,________,__XX____,
+ XX___XX_,________,__XX____,
+ XX___XX_,________,__XX____,
+ XX___XX_,________,__XX____,
+ XX___XX_,________,__XX____,
+ XX___XXX,_____XX_,__XX____,
+ _XX___XX,____XX__,_XX_____,
+ _XX____X,XXXXXX__,_XX_____,
+ __XX____,XXXX____,XX______,
+ __XXX___,_______X,XX______,
+ ___XXXX_,_____XXX,X_______,
+ _____XXX,XXXXXXX_,________,
+ _______X,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00AA[ 64] = { /* code 00AA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ __XXXXXX,________,
+ _XX___XX,________,
+ ______XX,________,
+ ___XXXXX,________,
+ _XXXX_XX,________,
+ _XX___XX,________,
+ _XX__XXX,________,
+ _XXXXXXX,________,
+ __XXX_XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00AB[ 64] = { /* code 00AB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,___XX___,
+ _____XX_,__XX____,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ ___XX___,XX______,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ ___XX___,XX______,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ _____XX_,__XX____,
+ ______XX,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00AC[ 64] = { /* code 00AC */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ ________,____XX__,
+ ________,____XX__,
+ ________,____XX__,
+ ________,____XX__,
+ ________,____XX__,
+ ________,____XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00AD[ 64] = { /* code 00AD */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00AE[ 96] = { /* code 00AE */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXX___,________,
+ _____XXX,XXXXXXX_,________,
+ ___XXXX_,_____XXX,X_______,
+ __XXX___,_______X,XX______,
+ __XX__XX,XXXXX___,XX______,
+ _XX___XX,XXXXX___,_XX_____,
+ _XX___XX,____XX__,_XX_____,
+ XX____XX,____XX__,__XX____,
+ XX____XX,____XX__,__XX____,
+ XX____XX,XXXXXX__,__XX____,
+ XX____XX,XXXXX___,__XX____,
+ XX____XX,__XX____,__XX____,
+ XX____XX,___XX___,__XX____,
+ _XX___XX,____XX__,_XX_____,
+ _XX___XX,____XX__,_XX_____,
+ __XX__XX,_____XX_,XX______,
+ __XXX___,_______X,XX______,
+ ___XXXX_,_____XXX,X_______,
+ _____XXX,XXXXXXX_,________,
+ _______X,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00AF[ 64] = { /* code 00AF */
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00B0[ 64] = { /* code 00B0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ ___X___X,________,
+ __X_____,X_______,
+ __X_____,X_______,
+ __X_____,X_______,
+ ___X___X,________,
+ ____XXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00B1[ 64] = { /* code 00B1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00B2[ 64] = { /* code 00B2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _XXXXXXX,________,
+ XX____XX,________,
+ ______XX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ __XX____,________,
+ _XXXXXXX,________,
+ XXXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00B3[ 64] = { /* code 00B3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _XXXXXXX,________,
+ XX____XX,________,
+ ______XX,________,
+ ____XX__,________,
+ ______XX,________,
+ ______XX,________,
+ XX___XXX,________,
+ _XXXXXX_,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00B4[ 64] = { /* code 00B4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____XXX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00B5[ 64] = { /* code 00B5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XXX___,___XXX__,
+ __XXXX__,__XXXX__,
+ __XXXXXX,XXXXXX__,
+ __XX_XXX,XX__XX__,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00B6[ 64] = { /* code 00B6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XXXXXXX_,
+ __XXXXXX,XXXXXXX_,
+ _XXXXXXX,___XX___,
+ XXXXXXXX,___XX___,
+ XXXXXXXX,___XX___,
+ XXXXXXXX,___XX___,
+ XXXXXXXX,___XX___,
+ XXXXXXXX,___XX___,
+ _XXXXXXX,___XX___,
+ __XXXXXX,___XX___,
+ ___XXXXX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00B7[ 32] = { /* code 00B7 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00B8[ 64] = { /* code 00B8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ __XXX___,________,
+ ____XX__,________,
+ ____XX__,________,
+ XXXXXX__,________,
+ XXXXX___,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00B9[ 64] = { /* code 00B9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ___XXXX_,________,
+ __XXXXX_,________,
+ __X__XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00BA[ 64] = { /* code 00BA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ __XXXXXX,________,
+ _XXX__XX,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XXX__XX,X_______,
+ __XXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00BB[ 64] = { /* code 00BB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX___X,X_______,
+ ___XX___,XX______,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ _____XX_,__XX____,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ _____XX_,__XX____,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ ___XX___,XX______,
+ __XX___X,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00BC[ 96] = { /* code 00BC */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XX_,________,__XX____,
+ ___XXXX_,________,_XX_____,
+ __XXXXX_,________,XX______,
+ __X__XX_,_______X,XX______,
+ _____XX_,_______X,X_______,
+ _____XX_,______XX,________,
+ _____XX_,_____XXX,________,
+ _____XX_,____XXX_,________,
+ _____XX_,____XX__,________,
+ _____XX_,___XX___,________,
+ ________,__XXX___,___XX___,
+ ________,__XX____,__XXX___,
+ ________,_XX_____,_XXXX___,
+ ________,XX______,_XXXX___,
+ _______X,XX______,XX_XX___,
+ _______X,X______X,X__XX___,
+ ______XX,______XX,___XX___,
+ _____XX_,______XX,XXXXXX__,
+ ____XXX_,________,___XX___,
+ ____XX__,________,___XX___,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00BD[ 96] = { /* code 00BD */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XX_,________,__XX____,
+ ___XXXX_,________,_XX_____,
+ __XXXXX_,________,XX______,
+ __X__XX_,_______X,XX______,
+ _____XX_,_______X,X_______,
+ _____XX_,______XX,________,
+ _____XX_,_____XX_,________,
+ _____XX_,____XXX_,________,
+ _____XX_,____XX__,________,
+ _____XX_,___XX___,________,
+ ________,__XX____,XXXXX___,
+ ________,_XXX___X,XXXXXX__,
+ ________,_XX___XX,____XX__,
+ ________,XX______,____XX__,
+ _______X,X_______,___XX___,
+ ______XX,X_______,__XX____,
+ ______XX,________,_XX_____,
+ _____XX_,_______X,X_______,
+ ____XX__,_______X,XXXXXX__,
+ ___XXX__,______XX,XXXXXX__,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00BE[ 96] = { /* code 00BE */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXX_,________,__XX____,
+ _XXXXXXX,________,_XX_____,
+ XX____XX,________,XXX_____,
+ ______XX,________,XX______,
+ ____XX__,_______X,X_______,
+ ______XX,______XX,________,
+ ______XX,_____XXX,________,
+ XX___XXX,_____XX_,________,
+ _XXXXXX_,____XX__,________,
+ __XXXX__,___XX___,________,
+ ________,__XXX___,___XX___,
+ ________,__XX____,__XXX___,
+ ________,_XX_____,_XXXX___,
+ ________,XX______,XXXXX___,
+ _______X,XX______,XX_XX___,
+ _______X,X______X,X__XX___,
+ ______XX,______XX,___XX___,
+ _____XXX,______XX,XXXXXX__,
+ _____XX_,________,___XX___,
+ ____XX__,________,___XX___,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00BF[ 96] = { /* code 00BF */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,X_______,________,
+ _______X,X_______,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,X_______,________,
+ _______X,X_______,________,
+ _______X,X_______,________,
+ ______XX,X_______,________,
+ _____XXX,________,________,
+ _____XX_,________,________,
+ ____XX__,________,________,
+ ___XX___,________,________,
+ __XXX___,________,________,
+ __XX____,________,________,
+ __XX____,_____XX_,________,
+ __XX____,_____XX_,________,
+ __XXX___,____XX__,________,
+ ___XXX__,___XXX__,________,
+ ____XXXX,XXXXX___,________,
+ ______XX,XXX_____,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00C0[ 96] = { /* code 00C0 */
+ ______XX,X_______,________,
+ _______X,XX______,________,
+ ________,XX______,________,
+ ________,_XX_____,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ ______XX,_XX_____,________,
+ ______XX,_XX_____,________,
+ _____XXX,_XXX____,________,
+ _____XX_,__XX____,________,
+ _____XX_,__XX____,________,
+ ____XXX_,__XXX___,________,
+ ____XX__,___XX___,________,
+ ____XX__,___XX___,________,
+ ___XX___,____XX__,________,
+ ___XX___,____XX__,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XX_,________,
+ _XXX____,_____XXX,________,
+ _XX_____,______XX,________,
+ _XX_____,______XX,________,
+ XX______,_______X,X_______,
+ XX______,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00C1[ 96] = { /* code 00C1 */
+ ________,_XXX____,________,
+ ________,XXX_____,________,
+ ________,XX______,________,
+ _______X,X_______,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ ______XX,_XX_____,________,
+ ______XX,_XX_____,________,
+ _____XXX,_XXX____,________,
+ _____XX_,__XX____,________,
+ _____XX_,__XX____,________,
+ ____XXX_,__XXX___,________,
+ ____XX__,___XX___,________,
+ ____XX__,___XX___,________,
+ ___XX___,____XX__,________,
+ ___XX___,____XX__,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XX_,________,
+ _XXX____,_____XXX,________,
+ _XX_____,______XX,________,
+ _XX_____,______XX,________,
+ XX______,_______X,X_______,
+ XX______,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00C2[ 96] = { /* code 00C2 */
+ _______X,X_______,________,
+ ______XX,XX______,________,
+ _____XX_,_XX_____,________,
+ _____XX_,_XX_____,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ ______XX,_XX_____,________,
+ ______XX,_XX_____,________,
+ _____XXX,_XXX____,________,
+ _____XX_,__XX____,________,
+ _____XX_,__XX____,________,
+ ____XXX_,__XXX___,________,
+ ____XX__,___XX___,________,
+ ____XX__,___XX___,________,
+ ___XX___,____XX__,________,
+ ___XX___,____XX__,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XX_,________,
+ _XXX____,_____XXX,________,
+ _XX_____,______XX,________,
+ _XX_____,______XX,________,
+ XX______,_______X,X_______,
+ XX______,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00C3[ 96] = { /* code 00C3 */
+ ________,________,________,
+ ______XX,X__XX___,________,
+ _____XXX,XXXXX___,________,
+ _____XX_,_XXX____,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ ______XX,_XX_____,________,
+ ______XX,_XX_____,________,
+ _____XXX,_XXX____,________,
+ _____XX_,__XX____,________,
+ _____XX_,__XX____,________,
+ ____XXX_,__XXX___,________,
+ ____XX__,___XX___,________,
+ ____XX__,___XX___,________,
+ ___XX___,____XX__,________,
+ ___XX___,____XX__,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XX_,________,
+ _XXX____,_____XXX,________,
+ _XX_____,______XX,________,
+ _XX_____,______XX,________,
+ XX______,_______X,X_______,
+ XX______,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00C4[ 96] = { /* code 00C4 */
+ ________,________,________,
+ ________,________,________,
+ ______XX,__XX____,________,
+ ______XX,__XX____,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ ______XX,_XX_____,________,
+ ______XX,_XX_____,________,
+ _____XXX,_XXX____,________,
+ _____XX_,__XX____,________,
+ _____XX_,__XX____,________,
+ ____XXX_,__XXX___,________,
+ ____XX__,___XX___,________,
+ ____XX__,___XX___,________,
+ ___XX___,____XX__,________,
+ ___XX___,____XX__,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XX_,________,
+ _XXX____,_____XXX,________,
+ _XX_____,______XX,________,
+ _XX_____,______XX,________,
+ XX______,_______X,X_______,
+ XX______,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00C5[ 96] = { /* code 00C5 */
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ ______X_,__X_____,________,
+ ______X_,__X_____,________,
+ ______X_,__X_____,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ ______XX,_XX_____,________,
+ ______XX,_XX_____,________,
+ _____XXX,_XXX____,________,
+ _____XX_,__XX____,________,
+ _____XX_,__XX____,________,
+ ____XXX_,__XXX___,________,
+ ____XX__,___XX___,________,
+ ____XX__,___XX___,________,
+ ___XX___,____XX__,________,
+ ___XX___,____XX__,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XX_,________,
+ _XXX____,_____XXX,________,
+ _XX_____,______XX,________,
+ _XX_____,______XX,________,
+ XX______,_______X,X_______,
+ XX______,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00C6[128] = { /* code 00C6 */
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,_XXXXXXX,XXXXXXXX,XX______,
+ ________,_XXXXXXX,XXXXXXXX,XX______,
+ ________,XX___XX_,________,________,
+ ________,XX___XX_,________,________,
+ _______X,X____XX_,________,________,
+ _______X,X____XX_,________,________,
+ ______XX,_____XX_,________,________,
+ ______XX,_____XX_,________,________,
+ _____XX_,_____XX_,________,________,
+ _____XX_,_____XXX,XXXXXXXX,X_______,
+ ____XX__,_____XXX,XXXXXXXX,X_______,
+ ____XX__,_____XX_,________,________,
+ ___XXXXX,XXXXXXX_,________,________,
+ ___XXXXX,XXXXXXX_,________,________,
+ __XX____,_____XX_,________,________,
+ __XX____,_____XX_,________,________,
+ _XX_____,_____XX_,________,________,
+ _XX_____,_____XX_,________,________,
+ XX______,_____XXX,XXXXXXXX,XX______,
+ XX______,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00C7[ 96] = { /* code 00C7 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,______XX,X_______,
+ ___XXX__,_______X,XX______,
+ __XXX___,________,XXX_____,
+ __XX____,________,_XX_____,
+ _XXX____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ __XX____,________,_XX_____,
+ __XX____,________,XXX_____,
+ __XXX___,________,XX______,
+ ___XXX__,_______X,XX______,
+ ____XXX_,_____XXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,_XX_____,________,
+ ________,XXX_____,________,
+ ________,__XX____,________,
+ ________,__XX____,________,
+ ______XX,XXXX____,________,
+ ______XX,XXX_____,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00C8[ 96] = { /* code 00C8 */
+ _______X,XX______,________,
+ ________,XXX_____,________,
+ ________,_XX_____,________,
+ ________,__XX____,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00C9[ 96] = { /* code 00C9 */
+ ________,__XXX___,________,
+ ________,_XXX____,________,
+ ________,_XX_____,________,
+ ________,XX______,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00CA[ 96] = { /* code 00CA */
+ ________,_XX_____,________,
+ ________,XXXX____,________,
+ _______X,X__XX___,________,
+ _______X,X__XX___,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00CB[ 96] = { /* code 00CB */
+ ________,________,________,
+ ________,________,________,
+ _______X,X__XX___,________,
+ _______X,X__XX___,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00CC[ 32] = { /* code 00CC */
+ _XXX____,
+ __XXX___,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00CD[ 32] = { /* code 00CD */
+ ____XXX_,
+ ___XXX__,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00CE[ 32] = { /* code 00CE */
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00CF[ 32] = { /* code 00CF */
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00D0[ 96] = { /* code 00D0 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XXX,X_______,
+ __XX____,_______X,X_______,
+ __XX____,________,XX______,
+ __XX____,________,XX______,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ XXXXXXXX,XX______,_XX_____,
+ XXXXXXXX,XX______,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,XX______,
+ __XX____,________,XX______,
+ __XX____,_______X,X_______,
+ __XX____,_____XXX,X_______,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00D1[ 96] = { /* code 00D1 */
+ ________,________,________,
+ _______X,XX__XX__,________,
+ ______XX,XXXXXX__,________,
+ ______XX,__XXX___,________,
+ ________,________,________,
+ ________,________,________,
+ __XXX___,_______X,X_______,
+ __XXX___,_______X,X_______,
+ __XXXX__,_______X,X_______,
+ __XXXX__,_______X,X_______,
+ __XX_XX_,_______X,X_______,
+ __XX__XX,_______X,X_______,
+ __XX__XX,_______X,X_______,
+ __XX___X,X______X,X_______,
+ __XX____,XX_____X,X_______,
+ __XX____,XX_____X,X_______,
+ __XX____,_XX____X,X_______,
+ __XX____,_XX____X,X_______,
+ __XX____,__XX___X,X_______,
+ __XX____,___XX__X,X_______,
+ __XX____,___XX__X,X_______,
+ __XX____,____XX_X,X_______,
+ __XX____,_____XXX,X_______,
+ __XX____,_____XXX,X_______,
+ __XX____,______XX,X_______,
+ __XX____,______XX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00D2[ 96] = { /* code 00D2 */
+ ________,XXX_____,________,
+ ________,_XXX____,________,
+ ________,__XX____,________,
+ ________,___XX___,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,_____XXX,X_______,
+ ___XXX__,_______X,XX______,
+ __XXX___,________,XXX_____,
+ __XX____,________,_XX_____,
+ _XXX____,________,_XXX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XXX____,________,_XXX____,
+ __XX____,________,_XX_____,
+ __XXX___,________,XXX_____,
+ ___XXX__,_______X,XX______,
+ ____XXXX,_____XXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00D3[ 96] = { /* code 00D3 */
+ ________,___XXX__,________,
+ ________,__XXX___,________,
+ ________,__XX____,________,
+ ________,_XX_____,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,_____XXX,X_______,
+ ___XXX__,_______X,XX______,
+ __XXX___,________,XXX_____,
+ __XX____,________,_XX_____,
+ _XXX____,________,_XXX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XXX____,________,_XXX____,
+ __XX____,________,_XX_____,
+ __XXX___,________,XXX_____,
+ ___XXX__,_______X,XX______,
+ ____XXXX,_____XXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00D4[ 96] = { /* code 00D4 */
+ ________,__XX____,________,
+ ________,_XXXX___,________,
+ ________,XX__XX__,________,
+ ________,XX__XX__,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,_____XXX,X_______,
+ ___XXX__,_______X,XX______,
+ __XXX___,________,XXX_____,
+ __XX____,________,_XX_____,
+ _XXX____,________,_XXX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XXX____,________,_XXX____,
+ __XX____,________,_XX_____,
+ __XXX___,________,XXX_____,
+ ___XXX__,_______X,XX______,
+ ____XXXX,_____XXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00D5[ 96] = { /* code 00D5 */
+ ________,________,________,
+ _______X,XX__XX__,________,
+ ______XX,XXXXXX__,________,
+ ______XX,__XXX___,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,_____XXX,X_______,
+ ___XXX__,_______X,XX______,
+ __XXX___,________,XXX_____,
+ __XX____,________,_XX_____,
+ _XXX____,________,_XXX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XXX____,________,_XXX____,
+ __XX____,________,_XX_____,
+ __XXX___,________,XXX_____,
+ ___XXX__,_______X,XX______,
+ ____XXXX,_____XXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00D6[ 96] = { /* code 00D6 */
+ ________,________,________,
+ ________,________,________,
+ ________,XX__XX__,________,
+ ________,XX__XX__,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,_____XXX,X_______,
+ ___XXX__,_______X,XX______,
+ __XXX___,________,XXX_____,
+ __XX____,________,_XX_____,
+ _XXX____,________,_XXX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XXX____,________,_XXX____,
+ __XX____,________,_XX_____,
+ __XXX___,________,XXX_____,
+ ___XXX__,_______X,XX______,
+ ____XXXX,_____XXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00D7[ 64] = { /* code 00D7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,____XX__,
+ ___XXX__,___XXX__,
+ ____XXX_,__XXX___,
+ _____XXX,_XXX____,
+ ______XX,XXX_____,
+ _______X,XX______,
+ ______XX,XXX_____,
+ _____XXX,_XXX____,
+ ____XXX_,__XXX___,
+ ___XXX__,___XXX__,
+ ___XX___,____XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00D8[ 96] = { /* code 00D8 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,__XX____,
+ _____XXX,XXXXXXX_,_XXX____,
+ ____XXXX,_____XXX,XXX_____,
+ ___XXX__,_______X,XX______,
+ __XXX___,_______X,XX______,
+ __XX____,______XX,_XX_____,
+ __XX____,_____XX_,_XX_____,
+ _XX_____,____XXX_,__XX____,
+ _XX_____,___XXX__,__XX____,
+ _XX_____,__XXX___,__XX____,
+ _XX_____,_XXX____,__XX____,
+ _XX_____,XXX_____,__XX____,
+ _XX_____,XX______,__XX____,
+ _XXX___X,X_______,_XXX____,
+ __XX__XX,________,_XX_____,
+ __XXXXX_,________,XXX_____,
+ ___XXX__,_______X,XX______,
+ ___XXXXX,_____XXX,X_______,
+ __XXXXXX,XXXXXXXX,________,
+ _XXX___X,XXXXXX__,________,
+ __X_____,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00D9[ 96] = { /* code 00D9 */
+ ______XX,X_______,________,
+ _______X,XX______,________,
+ ________,XX______,________,
+ ________,_XX_____,________,
+ ________,________,________,
+ ________,________,________,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XXX___,______XX,X_______,
+ ___XX___,______XX,________,
+ ___XXXX_,____XXXX,________,
+ ____XXXX,XXXXXXX_,________,
+ ______XX,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00DA[ 96] = { /* code 00DA */
+ ________,__XXX___,________,
+ ________,_XXX____,________,
+ ________,_XX_____,________,
+ ________,XX______,________,
+ ________,________,________,
+ ________,________,________,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XXX___,______XX,X_______,
+ ___XX___,______XX,________,
+ ___XXXX_,____XXXX,________,
+ ____XXXX,XXXXXXX_,________,
+ ______XX,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00DB[ 96] = { /* code 00DB */
+ ________,_XX_____,________,
+ ________,XXXX____,________,
+ _______X,X__XX___,________,
+ _______X,X__XX___,________,
+ ________,________,________,
+ ________,________,________,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XXX___,______XX,X_______,
+ ___XX___,______XX,________,
+ ___XXXX_,____XXXX,________,
+ ____XXXX,XXXXXXX_,________,
+ ______XX,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00DC[ 96] = { /* code 00DC */
+ ________,________,________,
+ ________,________,________,
+ _______X,X__XX___,________,
+ _______X,X__XX___,________,
+ ________,________,________,
+ ________,________,________,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XXX___,______XX,X_______,
+ ___XX___,______XX,________,
+ ___XXXX_,____XXXX,________,
+ ____XXXX,XXXXXXX_,________,
+ ______XX,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00DD[ 96] = { /* code 00DD */
+ ________,_XXX____,________,
+ ________,XXX_____,________,
+ ________,XX______,________,
+ _______X,X_______,________,
+ ________,________,________,
+ ________,________,________,
+ _XX_____,______XX,X_______,
+ __XX____,_____XXX,________,
+ ___XX___,_____XX_,________,
+ ___XX___,____XXX_,________,
+ ____XX__,____XX__,________,
+ ____XXX_,___XXX__,________,
+ _____XXX,__XXX___,________,
+ ______XX,__XX____,________,
+ ______XX,__XX____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00DE[ 96] = { /* code 00DE */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXX___,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XXX,________,
+ __XX____,______XX,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,______XX,________,
+ __XX____,_____XXX,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXX___,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00DF[ 96] = { /* code 00DF */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,XXX_____,________,
+ ____XXXX,XXXX____,________,
+ ___XXX__,__XXX___,________,
+ __XXX___,___XX___,________,
+ __XX____,___XX___,________,
+ __XX____,___XX___,________,
+ __XX____,__XX____,________,
+ __XX____,__XX____,________,
+ __XX____,_XX_____,________,
+ __XX____,_XX_____,________,
+ __XX____,_XXX____,________,
+ __XX____,__XXX___,________,
+ __XX____,___XXXX_,________,
+ __XX____,_____XX_,________,
+ __XX____,______XX,________,
+ __XX____,______XX,________,
+ __XX___X,X_____XX,________,
+ __XX__XX,XX___XXX,________,
+ __XX___X,XXXXXXX_,________,
+ __XX____,_XXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00E0[ 64] = { /* code 00E0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ______XX,X_______,
+ _______X,X_______,
+ ________,XX______,
+ ________,________,
+ ____XXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ ________,___XX___,
+ ________,XXXXX___,
+ ____XXXX,XXXXX___,
+ __XXXXXX,X__XX___,
+ __XX____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,__XXX___,
+ _XXX____,XXXXX___,
+ __XXXXXX,XX_XX___,
+ ___XXXXX,X___XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00E1[ 64] = { /* code 00E1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XXX_____,
+ _______X,XX______,
+ _______X,X_______,
+ ______XX,________,
+ ________,________,
+ ____XXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ ________,___XX___,
+ ________,XXXXX___,
+ ____XXXX,XXXXX___,
+ __XXXXXX,X__XX___,
+ __XX____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,__XXX___,
+ _XXX____,XXXXX___,
+ __XXXXXX,XX_XX___,
+ ___XXXXX,X___XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00E2[ 64] = { /* code 00E2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____XXX,X_______,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ________,________,
+ ____XXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ ________,___XX___,
+ ________,XXXXX___,
+ ____XXXX,XXXXX___,
+ __XXXXXX,X__XX___,
+ __XX____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,__XXX___,
+ _XXX____,XXXXX___,
+ __XXXXXX,XX_XX___,
+ ___XXXXX,X___XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00E3[ 64] = { /* code 00E3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,_XX_____,
+ ___XXXXX,XXX_____,
+ ___XX__X,XX______,
+ ________,________,
+ ____XXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ ________,___XX___,
+ ________,XXXXX___,
+ ____XXXX,XXXXX___,
+ __XXXXXX,X__XX___,
+ __XX____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,__XXX___,
+ _XXX____,XXXXX___,
+ __XXXXXX,XX_XX___,
+ ___XXXXX,X___XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00E4[ 64] = { /* code 00E4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,_XX_____,
+ _____XX_,_XX_____,
+ ________,________,
+ ____XXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ ________,___XX___,
+ ________,XXXXX___,
+ ____XXXX,XXXXX___,
+ __XXXXXX,X__XX___,
+ __XX____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,__XXX___,
+ _XXX____,XXXXX___,
+ __XXXXXX,XX_XX___,
+ ___XXXXX,X___XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00E5[ 64] = { /* code 00E5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,X_______,
+ _____X__,_X______,
+ _____X__,_X______,
+ _____X__,_X______,
+ ______XX,X_______,
+ ________,________,
+ ____XXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ ________,___XX___,
+ ________,XXXXX___,
+ ____XXXX,XXXXX___,
+ __XXXXXX,X__XX___,
+ __XX____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,__XXX___,
+ _XXX____,XXXXX___,
+ __XXXXXX,XX_XX___,
+ ___XXXXX,X___XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00E6[ 96] = { /* code 00E6 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XXXX,XX____XX,XXX_____,
+ __XXXXXX,XXXXXXXX,XXXXX___,
+ __XX____,__XXXXX_,___XXX__,
+ _XX_____,___XXX__,____XX__,
+ ________,___XX___,_____XX_,
+ ________,_XXXX___,_____XX_,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ __XXXXXX,X__XXXXX,XXXXXXX_,
+ __XX____,___XX___,________,
+ _XX_____,___XX___,________,
+ _XX_____,___XX___,_____XX_,
+ _XX_____,__XXXX__,____XX__,
+ _XXX____,_XX_XXX_,___XXX__,
+ __XXXXXX,XX___XXX,XXXXX___,
+ ___XXXXX,______XX,XXX_____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00E7[ 64] = { /* code 00E7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XXX____,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ __XX____,__XX____,
+ __XXX___,_XXX____,
+ ___XXXXX,XXX_____,
+ _____XXX,XX______,
+ ______XX,________,
+ _____XXX,________,
+ _______X,X_______,
+ _______X,X_______,
+ ___XXXXX,X_______,
+ ___XXXXX,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00E8[ 64] = { /* code 00E8 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ______XX,X_______,
+ _______X,X_______,
+ ________,XX______,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XX_____,________,
+ _XX_____,________,
+ _XXX____,________,
+ __XX____,____XX__,
+ __XXXX__,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00E9[ 64] = { /* code 00E9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XXX_____,
+ _______X,XX______,
+ _______X,X_______,
+ ______XX,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XX_____,________,
+ _XX_____,________,
+ _XXX____,________,
+ __XX____,____XX__,
+ __XXXX__,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00EA[ 64] = { /* code 00EA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ ______XX,XX______,
+ _____XX_,_XX_____,
+ _____XX_,_XX_____,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XX_____,________,
+ _XX_____,________,
+ _XXX____,________,
+ __XX____,____XX__,
+ __XXXX__,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00EB[ 64] = { /* code 00EB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,_XX_____,
+ _____XX_,_XX_____,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XX_____,________,
+ _XX_____,________,
+ _XXX____,________,
+ __XX____,____XX__,
+ __XXXX__,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00EC[ 32] = { /* code 00EC */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ _XXX____,
+ __XX____,
+ ___XX___,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00ED[ 32] = { /* code 00ED */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXX___,
+ __XX____,
+ _XX_____,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00EE[ 32] = { /* code 00EE */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00EF[ 32] = { /* code 00EF */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00F0[ 64] = { /* code 00F0 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,___X____,
+ ______XX,XXXX____,
+ ______XX,XX______,
+ ____XXX_,XXX_____,
+ ____X___,_XXX____,
+ _____XXX,X_XX____,
+ ___XXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XXX____,___XXX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXX____,___XXX__,
+ __XX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00F1[ 64] = { /* code 00F1 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,__XX____,
+ ____XXXX,XXXX____,
+ ____XX__,XXX_____,
+ ________,________,
+ __XX__XX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXX__,__XXX___,
+ __XXX___,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00F2[ 64] = { /* code 00F2 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ______XX,X_______,
+ _______X,X_______,
+ ________,XX______,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XXX____,___XXX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXX____,___XXX__,
+ __XX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00F3[ 64] = { /* code 00F3 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XXX_____,
+ _______X,XX______,
+ _______X,X_______,
+ ______XX,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XXX____,___XXX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXX____,___XXX__,
+ __XX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00F4[ 64] = { /* code 00F4 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ ______XX,XX______,
+ _____XX_,_XX_____,
+ _____XX_,_XX_____,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XXX____,___XXX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXX____,___XXX__,
+ __XX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00F5[ 64] = { /* code 00F5 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,__XX____,
+ ____XXXX,XXXX____,
+ ____XX__,XXX_____,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XXX____,___XXX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXX____,___XXX__,
+ __XX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00F6[ 64] = { /* code 00F6 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,_XX_____,
+ _____XX_,_XX_____,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XXX____,___XXX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXX____,___XXX__,
+ __XX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00F7[ 64] = { /* code 00F7 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00F8[ 96] = { /* code 00F8 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,_____X__,________,
+ _____XXX,XXXXXXX_,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXX___,__XXXX__,________,
+ __XX____,___XXX__,________,
+ _XXX____,__XXXXX_,________,
+ _XX_____,_XXX_XX_,________,
+ _XX_____,XXX__XX_,________,
+ _XX____X,XX___XX_,________,
+ _XX___XX,X____XX_,________,
+ _XX__XXX,_____XX_,________,
+ _XX_XXX_,____XXX_,________,
+ _XXXXX__,____XX__,________,
+ __XXX___,__XXXX__,________,
+ __XXXXXX,XXXXX___,________,
+ _XX_XXXX,XXX_____,________,
+ __X_____,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00F9[ 64] = { /* code 00F9 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ _____XXX,________,
+ ______XX,________,
+ _______X,X_______,
+ ________,________,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXX___,_XXXX___,
+ ___XXXXX,XX_XX___,
+ ____XXXX,X__XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00FA[ 64] = { /* code 00FA */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XXX_____,
+ _______X,XX______,
+ _______X,X_______,
+ ______XX,________,
+ ________,________,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXX___,_XXXX___,
+ ___XXXXX,XX_XX___,
+ ____XXXX,X__XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00FB[ 64] = { /* code 00FB */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ ______XX,XX______,
+ _____XX_,_XX_____,
+ _____XX_,_XX_____,
+ ________,________,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXX___,_XXXX___,
+ ___XXXXX,XX_XX___,
+ ____XXXX,X__XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00FC[ 64] = { /* code 00FC */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ________,________,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXX___,_XXXX___,
+ ___XXXXX,XX_XX___,
+ ____XXXX,X__XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00FD[ 64] = { /* code 00FD */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XX______,
+ ______XX,X_______,
+ ______XX,________,
+ _____XX_,________,
+ ________,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ __XX____,__XX____,
+ __XX____,__XX____,
+ __XXX___,__XX____,
+ ___XX___,_XX_____,
+ ___XX___,_XX_____,
+ ____XX__,_XX_____,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ _____XX_,XX______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ______XX,X_______,
+ ______XX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ __XXXX__,________,
+ __XXX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00FE[ 64] = { /* code 00FE */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX__XX,XX______,
+ __XXXXXX,XXXX____,
+ __XXXX__,__XXX___,
+ __XXX___,___XX___,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,___XXX__,
+ __XXX___,___XX___,
+ __XXXX__,__XXX___,
+ __XXXXXX,XXXX____,
+ __XX__XX,XX______,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_1_00FF[ 64] = { /* code 00FF */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ________,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ __XX____,__XX____,
+ __XX____,__XX____,
+ __XXX___,__XX____,
+ ___XX___,_XX_____,
+ ___XX___,_XX_____,
+ ____XX__,_XX_____,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ _____XX_,XX______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ______XX,X_______,
+ ______XX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ __XXXX__,________,
+ __XXX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font32_1_CharInfo[96] = {
+ { 8, 8, 1, acFont32_1_00A0 } /* code 00A0 */
+ ,{ 8, 8, 1, acFont32_1_00A1 } /* code 00A1 */
+ ,{ 15, 15, 2, acFont32_1_00A2 } /* code 00A2 */
+ ,{ 15, 15, 2, acFont32_1_00A3 } /* code 00A3 */
+ ,{ 15, 15, 2, acFont32_1_00A4 } /* code 00A4 */
+ ,{ 15, 15, 2, acFont32_1_00A5 } /* code 00A5 */
+ ,{ 6, 6, 1, acFont32_1_00A6 } /* code 00A6 */
+ ,{ 15, 15, 2, acFont32_1_00A7 } /* code 00A7 */
+ ,{ 9, 9, 2, acFont32_1_00A8 } /* code 00A8 */
+ ,{ 20, 20, 3, acFont32_1_00A9 } /* code 00A9 */
+ ,{ 10, 10, 2, acFont32_1_00AA } /* code 00AA */
+ ,{ 15, 15, 2, acFont32_1_00AB } /* code 00AB */
+ ,{ 16, 16, 2, acFont32_1_00AC } /* code 00AC */
+ ,{ 9, 9, 2, acFont32_1_00AD } /* code 00AD */
+ ,{ 20, 20, 3, acFont32_1_00AE } /* code 00AE */
+ ,{ 15, 15, 2, acFont32_1_00AF } /* code 00AF */
+ ,{ 11, 11, 2, acFont32_1_00B0 } /* code 00B0 */
+ ,{ 15, 15, 2, acFont32_1_00B1 } /* code 00B1 */
+ ,{ 9, 9, 2, acFont32_1_00B2 } /* code 00B2 */
+ ,{ 9, 9, 2, acFont32_1_00B3 } /* code 00B3 */
+ ,{ 9, 9, 2, acFont32_1_00B4 } /* code 00B4 */
+ ,{ 16, 16, 2, acFont32_1_00B5 } /* code 00B5 */
+ ,{ 15, 15, 2, acFont32_1_00B6 } /* code 00B6 */
+ ,{ 8, 8, 1, acFont32_1_00B7 } /* code 00B7 */
+ ,{ 9, 9, 2, acFont32_1_00B8 } /* code 00B8 */
+ ,{ 9, 9, 2, acFont32_1_00B9 } /* code 00B9 */
+ ,{ 10, 10, 2, acFont32_1_00BA } /* code 00BA */
+ ,{ 15, 15, 2, acFont32_1_00BB } /* code 00BB */
+ ,{ 23, 23, 3, acFont32_1_00BC } /* code 00BC */
+ ,{ 23, 23, 3, acFont32_1_00BD } /* code 00BD */
+ ,{ 23, 23, 3, acFont32_1_00BE } /* code 00BE */
+ ,{ 17, 17, 3, acFont32_1_00BF } /* code 00BF */
+ ,{ 18, 18, 3, acFont32_1_00C0 } /* code 00C0 */
+ ,{ 18, 18, 3, acFont32_1_00C1 } /* code 00C1 */
+ ,{ 18, 18, 3, acFont32_1_00C2 } /* code 00C2 */
+ ,{ 18, 18, 3, acFont32_1_00C3 } /* code 00C3 */
+ ,{ 18, 18, 3, acFont32_1_00C4 } /* code 00C4 */
+ ,{ 18, 18, 3, acFont32_1_00C5 } /* code 00C5 */
+ ,{ 27, 27, 4, acFont32_1_00C6 } /* code 00C6 */
+ ,{ 20, 20, 3, acFont32_1_00C7 } /* code 00C7 */
+ ,{ 18, 18, 3, acFont32_1_00C8 } /* code 00C8 */
+ ,{ 18, 18, 3, acFont32_1_00C9 } /* code 00C9 */
+ ,{ 18, 18, 3, acFont32_1_00CA } /* code 00CA */
+ ,{ 18, 18, 3, acFont32_1_00CB } /* code 00CB */
+ ,{ 8, 8, 1, acFont32_1_00CC } /* code 00CC */
+ ,{ 8, 8, 1, acFont32_1_00CD } /* code 00CD */
+ ,{ 8, 8, 1, acFont32_1_00CE } /* code 00CE */
+ ,{ 8, 8, 1, acFont32_1_00CF } /* code 00CF */
+ ,{ 20, 20, 3, acFont32_1_00D0 } /* code 00D0 */
+ ,{ 19, 19, 3, acFont32_1_00D1 } /* code 00D1 */
+ ,{ 21, 21, 3, acFont32_1_00D2 } /* code 00D2 */
+ ,{ 21, 21, 3, acFont32_1_00D3 } /* code 00D3 */
+ ,{ 21, 21, 3, acFont32_1_00D4 } /* code 00D4 */
+ ,{ 21, 21, 3, acFont32_1_00D5 } /* code 00D5 */
+ ,{ 21, 21, 3, acFont32_1_00D6 } /* code 00D6 */
+ ,{ 16, 16, 2, acFont32_1_00D7 } /* code 00D7 */
+ ,{ 21, 21, 3, acFont32_1_00D8 } /* code 00D8 */
+ ,{ 19, 19, 3, acFont32_1_00D9 } /* code 00D9 */
+ ,{ 19, 19, 3, acFont32_1_00DA } /* code 00DA */
+ ,{ 19, 19, 3, acFont32_1_00DB } /* code 00DB */
+ ,{ 19, 19, 3, acFont32_1_00DC } /* code 00DC */
+ ,{ 18, 18, 3, acFont32_1_00DD } /* code 00DD */
+ ,{ 18, 18, 3, acFont32_1_00DE } /* code 00DE */
+ ,{ 17, 17, 3, acFont32_1_00DF } /* code 00DF */
+ ,{ 15, 15, 2, acFont32_1_00E0 } /* code 00E0 */
+ ,{ 15, 15, 2, acFont32_1_00E1 } /* code 00E1 */
+ ,{ 15, 15, 2, acFont32_1_00E2 } /* code 00E2 */
+ ,{ 15, 15, 2, acFont32_1_00E3 } /* code 00E3 */
+ ,{ 15, 15, 2, acFont32_1_00E4 } /* code 00E4 */
+ ,{ 15, 15, 2, acFont32_1_00E5 } /* code 00E5 */
+ ,{ 24, 24, 3, acFont32_1_00E6 } /* code 00E6 */
+ ,{ 14, 14, 2, acFont32_1_00E7 } /* code 00E7 */
+ ,{ 15, 15, 2, acFont32_1_00E8 } /* code 00E8 */
+ ,{ 15, 15, 2, acFont32_1_00E9 } /* code 00E9 */
+ ,{ 15, 15, 2, acFont32_1_00EA } /* code 00EA */
+ ,{ 15, 15, 2, acFont32_1_00EB } /* code 00EB */
+ ,{ 6, 6, 1, acFont32_1_00EC } /* code 00EC */
+ ,{ 6, 6, 1, acFont32_1_00ED } /* code 00ED */
+ ,{ 6, 6, 1, acFont32_1_00EE } /* code 00EE */
+ ,{ 6, 6, 1, acFont32_1_00EF } /* code 00EF */
+ ,{ 15, 15, 2, acFont32_1_00F0 } /* code 00F0 */
+ ,{ 15, 15, 2, acFont32_1_00F1 } /* code 00F1 */
+ ,{ 15, 15, 2, acFont32_1_00F2 } /* code 00F2 */
+ ,{ 15, 15, 2, acFont32_1_00F3 } /* code 00F3 */
+ ,{ 15, 15, 2, acFont32_1_00F4 } /* code 00F4 */
+ ,{ 15, 15, 2, acFont32_1_00F5 } /* code 00F5 */
+ ,{ 15, 15, 2, acFont32_1_00F6 } /* code 00F6 */
+ ,{ 15, 15, 2, acFont32_1_00F7 } /* code 00F7 */
+ ,{ 17, 17, 3, acFont32_1_00F8 } /* code 00F8 */
+ ,{ 15, 15, 2, acFont32_1_00F9 } /* code 00F9 */
+ ,{ 15, 15, 2, acFont32_1_00FA } /* code 00FA */
+ ,{ 15, 15, 2, acFont32_1_00FB } /* code 00FB */
+ ,{ 15, 15, 2, acFont32_1_00FC } /* code 00FC */
+ ,{ 14, 14, 2, acFont32_1_00FD } /* code 00FD */
+ ,{ 15, 15, 2, acFont32_1_00FE } /* code 00FE */
+ ,{ 14, 14, 2, acFont32_1_00FF } /* code 00FF */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font32_1_Prop2 = {
+ 0x00A0 /* first character */
+ ,0x00FF /* last character */
+ ,&GUI_Font32_1_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font32_1_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font32_ASCII_CharInfo[0] /* address of first character */
+ ,&GUI_Font32_1_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font32_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,32 /* height of font */
+ ,32 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font32_1_Prop1}
+ ,26, 15, 20
+};
+
diff --git a/User/lib/lcd/gui/Font/F32_ASCII.c b/User/lib/lcd/gui/Font/F32_ASCII.c
new file mode 100644
index 0000000..8a2851e
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F32_ASCII.c
@@ -0,0 +1,3368 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F32_ASCII.C
+Purpose : ASCII character set, bold, high
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* Start of unicode area */
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0020[ 32] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0021[ 32] = { /* code 0021 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0022[ 64] = { /* code 0022 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0023[ 64] = { /* code 0023 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,___XX___,
+ _____XX_,___XX___,
+ ____XXX_,__XX____,
+ ____XX__,__XX____,
+ ____XX__,__XX____,
+ ____XX__,__XX____,
+ XXXXXXXX,XXXXXX__,
+ XXXXXXXX,XXXXXX__,
+ ___XX___,_XX_____,
+ ___XX___,_XX_____,
+ ___XX___,_XX_____,
+ ___XX___,_XX_____,
+ ___XX___,_XX_____,
+ XXXXXXXX,XXXXXX__,
+ XXXXXXXX,XXXXXX__,
+ __XX____,XX______,
+ __XX____,XX______,
+ _XXX___X,XX______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0024[ 64] = { /* code 0024 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,________,
+ ____XXXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX__X,__XXX___,
+ _XXX___X,___XXX__,
+ _XX____X,____XX__,
+ _XX____X,________,
+ _XX____X,________,
+ __XX___X,________,
+ __XXXXXX,________,
+ ____XXXX,XXX_____,
+ ______XX,XXXX____,
+ _______X,__XXX___,
+ _______X,___XXX__,
+ _______X,____XX__,
+ _XX____X,____XX__,
+ _XX____X,____XX__,
+ __XX___X,___XXX__,
+ __XXX__X,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ _______X,________,
+ _______X,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0025[ 96] = { /* code 0025 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XXXX,________,XX______,
+ ___XXXXX,X______X,XX______,
+ __XXX__X,XX_____X,X_______,
+ __XX____,XX____XX,X_______,
+ __XX____,XX____XX,________,
+ __XX____,XX___XXX,________,
+ __XX____,XX___XX_,________,
+ __XXX__X,XX__XX__,________,
+ ___XXXXX,X___XX__,________,
+ ____XXXX,___XX___,________,
+ ________,___XX___,XXXX____,
+ ________,__XX___X,XXXXX___,
+ ________,__XX__XX,X__XXX__,
+ ________,_XX___XX,____XX__,
+ ________,_XX___XX,____XX__,
+ ________,XX____XX,____XX__,
+ ________,XX____XX,____XX__,
+ _______X,X_____XX,X__XXX__,
+ _______X,X______X,XXXXX___,
+ ______XX,________,XXXX____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0026[ 96] = { /* code 0026 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXX_____,________,
+ ____XXXX,XXXX____,________,
+ ____XX__,__XXX___,________,
+ ___XX___,___XX___,________,
+ ___XX___,___XX___,________,
+ ___XX___,___XX___,________,
+ ____XX__,__XX____,________,
+ ____XXX_,_XXX____,________,
+ _____XXX,XXX_____,________,
+ _____XXX,X_______,________,
+ ___XXXXX,X_______,________,
+ __XXX___,XX____X_,________,
+ _XXX____,_XX__XXX,________,
+ _XX_____,_XXX_XX_,________,
+ _XX_____,__XXXXX_,________,
+ _XX_____,___XXX__,________,
+ _XXX____,___XXXX_,________,
+ __XXX___,_XXXXXXX,________,
+ ___XXXXX,XXXX__XX,X_______,
+ ____XXXX,XX____XX,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0027[ 32] = { /* code 0027 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0028[ 64] = { /* code 0028 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ____XX__,________,
+ ____XX__,________,
+ _____XX_,________,
+ _____XX_,________,
+ ______XX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0029[ 64] = { /* code 0029 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ __XX____,________,
+ __XX____,________,
+ ___XX___,________,
+ ___XX___,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ __XX____,________,
+ __XX____,________,
+ _XX_____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_002A[ 64] = { /* code 002A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ __X__XX_,_X______,
+ _XXXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ____XXXX,________,
+ ___XX__X,X_______,
+ ___XX___,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_002B[ 64] = { /* code 002B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_002C[ 32] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ___X____,
+ ___X____,
+ __XX____,
+ __X_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_002D[ 64] = { /* code 002D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_002E[ 32] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_002F[ 32] = { /* code 002F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ______XX,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ___XXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXX_____,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0030[ 64] = { /* code 0030 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0031[ 64] = { /* code 0031 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XX______,
+ ________,XX______,
+ _______X,XX______,
+ ______XX,XX______,
+ ____XXXX,XX______,
+ ___XXXX_,XX______,
+ ___XX___,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0032[ 64] = { /* code 0032 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XXX____,
+ _XX_____,__XXX___,
+ _XX_____,___XX___,
+ ________,___XX___,
+ ________,___XX___,
+ ________,___XX___,
+ ________,__XX____,
+ ________,__XX____,
+ ________,_XX_____,
+ ________,XX______,
+ _______X,X_______,
+ ______XX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ __XX____,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0033[ 64] = { /* code 0033 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XXX____,
+ _XXX____,___XX___,
+ _XX_____,___XX___,
+ ________,___XX___,
+ ________,___XX___,
+ ________,_XXX____,
+ ______XX,XXX_____,
+ ______XX,XXXX____,
+ ________,__XXX___,
+ ________,___XXX__,
+ ________,____XX__,
+ ________,____XX__,
+ ________,____XX__,
+ _XX_____,____XX__,
+ _XXX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0034[ 64] = { /* code 0034 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,__XX____,
+ ________,_XXX____,
+ ________,XXXX____,
+ ________,XXXX____,
+ _______X,X_XX____,
+ ______XX,__XX____,
+ _____XXX,__XX____,
+ _____XX_,__XX____,
+ ____XX__,__XX____,
+ ___XXX__,__XX____,
+ ___XX___,__XX____,
+ __XX____,__XX____,
+ _XXX____,__XX____,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ ________,__XX____,
+ ________,__XX____,
+ ________,__XX____,
+ ________,__XX____,
+ ________,__XX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0035[ 64] = { /* code 0035 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,
+ __XXX___,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __X__XXX,XX______,
+ _XXXXXXX,XXXX____,
+ _XXXX___,__XXX___,
+ _XX_____,___XX___,
+ ________,____XX__,
+ ________,____XX__,
+ ________,____XX__,
+ ________,____XX__,
+ ________,____XX__,
+ _XX_____,____XX__,
+ _XXX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0036[ 64] = { /* code 0036 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XXX_____,
+ ____XXXX,XXXX____,
+ ___XXX__,__XXX___,
+ __XXX___,___XXX__,
+ __XX____,____XX__,
+ __XX____,________,
+ _XX_____,________,
+ _XX__XXX,XX______,
+ _XX_XXXX,XXXX____,
+ _XXXX___,__XXX___,
+ _XXX____,___XX___,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ __XX____,____XX__,
+ __XX____,___XX___,
+ ___XX___,__XXX___,
+ ____XXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0037[ 64] = { /* code 0037 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ________,___X____,
+ ________,__XX____,
+ ________,_XX_____,
+ ________,_X______,
+ ________,XX______,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0038[ 64] = { /* code 0038 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ ___XX___,__XX____,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ ___XX___,__XX____,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ __XX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0039[ 64] = { /* code 0039 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,__XX____,
+ __XX____,___XX___,
+ _XX_____,____X___,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ __XX____,___XXX__,
+ __XXX___,__XXXX__,
+ ___XXXXX,XXX_XX__,
+ _____XXX,X___XX__,
+ ________,____XX__,
+ ________,___XX___,
+ _XX_____,___XX___,
+ _XXX____,___XX___,
+ __XXX___,_XXX____,
+ ___XXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_003A[ 32] = { /* code 003A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_003B[ 32] = { /* code 003B */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ____X___,
+ ____X___,
+ ___XX___,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_003C[ 64] = { /* code 003C */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_____X__,
+ ________,___XXX__,
+ ________,_XXXX___,
+ _______X,XXX_____,
+ _____XXX,________,
+ ___XXX__,________,
+ __XX____,________,
+ ___XXX__,________,
+ _____XXX,________,
+ _______X,XXX_____,
+ ________,_XXXX___,
+ ________,___XXX__,
+ ________,_____X__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_003D[ 64] = { /* code 003D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_003E[ 64] = { /* code 003E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,________,
+ __XXX___,________,
+ ___XXXX_,________,
+ _____XXX,X_______,
+ ________,XXX_____,
+ ________,__XXX___,
+ ________,____XX__,
+ ________,__XXX___,
+ ________,XXX_____,
+ _____XXX,X_______,
+ ___XXXX_,________,
+ __XXX___,________,
+ __X_____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_003F[ 64] = { /* code 003F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XXX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ ________,____XX__,
+ ________,___XXX__,
+ ________,___XX___,
+ ________,__XX____,
+ ________,_XX_____,
+ ________,XX______,
+ _______X,XX______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ _______X,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0040[128] = { /* code 0040 */
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,__XXXXXX,XX______,________,
+ ________,XXXXXXXX,XXXX____,________,
+ ______XX,XX______,_XXXX___,________,
+ _____XXX,________,___XXX__,________,
+ ____XXX_,________,____XXX_,________,
+ ___XXX__,__XXXX__,_XX__XXX,________,
+ ___XX___,XXXXXXXX,_XX___XX,________,
+ __XX___X,XX____XX,XXX___XX,X_______,
+ __XX___X,X______X,XX_____X,X_______,
+ __XX__XX,________,XX_____X,X_______,
+ _XX___XX,________,XX_____X,X_______,
+ _XX__XX_,________,XX_____X,X_______,
+ _XX__XX_,________,XX_____X,X_______,
+ _XX__XX_,________,XX____XX,X_______,
+ _XX__XX_,_______X,X_____XX,________,
+ _XX__XX_,_______X,X____XXX,________,
+ _XX___XX,______XX,X____XX_,________,
+ _XXX__XX,X___XXXX,X__XXX__,________,
+ __XX___X,XXXXXX_X,XXXXX___,________,
+ __XXX___,XXXXX___,XXXX____,________,
+ ___XX___,________,________,XX______,
+ ___XXX__,________,_______X,X_______,
+ ____XXXX,________,_____XXX,________,
+ _____XXX,XX______,___XXXX_,________,
+ _______X,XXXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXX_____,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0041[ 96] = { /* code 0041 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ ______XX,_XX_____,________,
+ ______XX,_XX_____,________,
+ _____XXX,_XXX____,________,
+ _____XX_,__XX____,________,
+ _____XX_,__XX____,________,
+ ____XXX_,__XXX___,________,
+ ____XX__,___XX___,________,
+ ____XX__,___XX___,________,
+ ___XX___,____XX__,________,
+ ___XX___,____XX__,________,
+ ___XXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XX_,________,
+ _XXX____,_____XXX,________,
+ _XX_____,______XX,________,
+ _XX_____,______XX,________,
+ XX______,_______X,X_______,
+ XX______,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0042[ 96] = { /* code 0042 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXX___,________,
+ __XXXXXX,XXXXXX__,________,
+ __XX____,____XXX_,________,
+ __XX____,_____XXX,________,
+ __XX____,______XX,________,
+ __XX____,______XX,________,
+ __XX____,______XX,________,
+ __XX____,_____XXX,________,
+ __XX____,____XXX_,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XXX,________,
+ __XX____,______XX,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,______XX,X_______,
+ __XX____,_____XXX,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0043[ 96] = { /* code 0043 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,______XX,X_______,
+ ___XXX__,_______X,XX______,
+ __XXX___,________,XXX_____,
+ __XX____,________,_XX_____,
+ _XXX____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ __XX____,________,_XX_____,
+ __XX____,________,XXX_____,
+ __XXX___,________,XX______,
+ ___XXX__,_______X,XX______,
+ ____XXX_,_____XXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0044[ 96] = { /* code 0044 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,_____XXX,X_______,
+ __XX____,_______X,X_______,
+ __XX____,________,XX______,
+ __XX____,________,XX______,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,XX______,
+ __XX____,________,XX______,
+ __XX____,_______X,X_______,
+ __XX____,_____XXX,X_______,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0045[ 96] = { /* code 0045 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0046[ 96] = { /* code 0046 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXX__,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0047[ 96] = { /* code 0047 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,______XX,X_______,
+ ___XXX__,_______X,XX______,
+ __XXX___,________,XX______,
+ __XX____,________,_XX_____,
+ __XX____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ _XX_____,________,________,
+ _XX_____,___XXXXX,XXX_____,
+ _XX_____,___XXXXX,XXX_____,
+ _XX_____,________,_XX_____,
+ _XXX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ __XXX___,________,_XX_____,
+ ___XXX__,________,XXX_____,
+ ____XXXX,______XX,XX______,
+ _____XXX,XXXXXXXX,X_______,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0048[ 96] = { /* code 0048 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0049[ 32] = { /* code 0049 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_004A[ 64] = { /* code 004A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ __XXXXXX,XX______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_004B[ 96] = { /* code 004B */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XX____,______XX,X_______,
+ __XX____,_____XXX,________,
+ __XX____,____XXX_,________,
+ __XX____,___XXX__,________,
+ __XX____,__XXX___,________,
+ __XX____,_XXX____,________,
+ __XX____,XXX_____,________,
+ __XX___X,XX______,________,
+ __XX__XX,XX______,________,
+ __XX_XXX,XX______,________,
+ __XXXXX_,XXX_____,________,
+ __XXXX__,_XXX____,________,
+ __XXX___,_XXX____,________,
+ __XX____,__XXX___,________,
+ __XX____,___XXX__,________,
+ __XX____,____XXX_,________,
+ __XX____,_____XX_,________,
+ __XX____,_____XXX,________,
+ __XX____,______XX,X_______,
+ __XX____,_______X,XX______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_004C[ 64] = { /* code 004C */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,XXXXXX__,
+ __XXXXXX,XXXXXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_004D[ 96] = { /* code 004D */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ___XXX__,________,_XXX____,
+ ___XXXX_,________,XXXX____,
+ ___XXXX_,________,XXXX____,
+ ___XXXX_,________,XXXX____,
+ ___XX_XX,_______X,X_XX____,
+ ___XX_XX,_______X,X_XX____,
+ ___XX_XX,_______X,X_XX____,
+ ___XX__X,X_____XX,__XX____,
+ ___XX__X,X_____XX,__XX____,
+ ___XX__X,X_____XX,__XX____,
+ ___XX___,XX___XX_,__XX____,
+ ___XX___,XX___XX_,__XX____,
+ ___XX___,XX___XX_,__XX____,
+ ___XX___,XXX_XXX_,__XX____,
+ ___XX___,_XX_XX__,__XX____,
+ ___XX___,_XX_XX__,__XX____,
+ ___XX___,_XX_XX__,__XX____,
+ ___XX___,__XXX___,__XX____,
+ ___XX___,__XXX___,__XX____,
+ ___XX___,__XXX___,__XX____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_004E[ 96] = { /* code 004E */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXX___,_______X,X_______,
+ __XXX___,_______X,X_______,
+ __XXXX__,_______X,X_______,
+ __XXXX__,_______X,X_______,
+ __XX_XX_,_______X,X_______,
+ __XX__XX,_______X,X_______,
+ __XX__XX,_______X,X_______,
+ __XX___X,X______X,X_______,
+ __XX____,XX_____X,X_______,
+ __XX____,XX_____X,X_______,
+ __XX____,_XX____X,X_______,
+ __XX____,_XX____X,X_______,
+ __XX____,__XX___X,X_______,
+ __XX____,___XX__X,X_______,
+ __XX____,___XX__X,X_______,
+ __XX____,____XX_X,X_______,
+ __XX____,_____XXX,X_______,
+ __XX____,_____XXX,X_______,
+ __XX____,______XX,X_______,
+ __XX____,______XX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_004F[ 96] = { /* code 004F */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,_____XXX,X_______,
+ ___XXX__,_______X,XX______,
+ __XXX___,________,XXX_____,
+ __XX____,________,_XX_____,
+ _XXX____,________,_XXX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XXX____,________,_XXX____,
+ __XX____,________,_XX_____,
+ __XXX___,________,XXX_____,
+ ___XXX__,_______X,XX______,
+ ____XXXX,_____XXX,X_______,
+ _____XXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0050[ 96] = { /* code 0050 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXX___,________,
+ __XXXXXX,XXXXXX__,________,
+ __XX____,____XXX_,________,
+ __XX____,_____XXX,________,
+ __XX____,______XX,________,
+ __XX____,______XX,________,
+ __XX____,______XX,________,
+ __XX____,______XX,________,
+ __XX____,_____XXX,________,
+ __XX____,____XXX_,________,
+ __XXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXX____,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0051[ 96] = { /* code 0051 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXXX__,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,_____XXX,X_______,
+ ___XXX__,_______X,XX______,
+ __XXX___,________,XXX_____,
+ __XX____,________,_XX_____,
+ __XX____,________,_XX_____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ _XX_____,________,__XX____,
+ __XX____,________,_XXX____,
+ __XX____,________,_XX_____,
+ __XXX___,___XXX__,XXX_____,
+ ___XXX__,___XXXXX,XX______,
+ ____XXXX,_____XXX,XX______,
+ _____XXX,XXXXXXXX,XXX_____,
+ _______X,XXXXXX__,_XXX____,
+ ________,________,__XX____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0052[ 96] = { /* code 0052 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXXX,________,
+ __XX____,______XX,X_______,
+ __XX____,_______X,XX______,
+ __XX____,________,XX______,
+ __XX____,________,XX______,
+ __XX____,________,XX______,
+ __XX____,_______X,XX______,
+ __XX____,______XX,X_______,
+ __XXXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXX__,________,
+ __XX____,__XXX___,________,
+ __XX____,___XX___,________,
+ __XX____,____XX__,________,
+ __XX____,____XXX_,________,
+ __XX____,_____XXX,________,
+ __XX____,______XX,________,
+ __XX____,_______X,X_______,
+ __XX____,_______X,XX______,
+ __XX____,________,XX______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0053[ 96] = { /* code 0053 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXXX___,________,
+ ____XXXX,XXXXXXX_,________,
+ ___XXX__,____XXXX,________,
+ __XXX___,______XX,________,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XXX___,________,________,
+ ___XXX__,________,________,
+ ___XXXXX,XXX_____,________,
+ ____XXXX,XXXXXX__,________,
+ ________,XXXXXXXX,________,
+ ________,____XXXX,________,
+ ________,______XX,X_______,
+ _XX_____,_______X,X_______,
+ _XX_____,_______X,X_______,
+ _XXX____,_______X,X_______,
+ __XXX___,______XX,________,
+ ___XXX__,_____XXX,________,
+ ____XXXX,XXXXXXX_,________,
+ ______XX,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0054[ 64] = { /* code 0054 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXXX_,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0055[ 96] = { /* code 0055 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XX____,_______X,X_______,
+ __XXX___,______XX,X_______,
+ ___XX___,______XX,________,
+ ___XXXX_,____XXXX,________,
+ ____XXXX,XXXXXXX_,________,
+ ______XX,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0056[ 96] = { /* code 0056 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ XX______,_______X,X_______,
+ XXX_____,______XX,X_______,
+ _XX_____,______XX,________,
+ _XX_____,______XX,________,
+ _XXX____,_____XXX,________,
+ __XX____,_____XX_,________,
+ __XX____,_____XX_,________,
+ ___XX___,____XX__,________,
+ ___XX___,____XX__,________,
+ ___XXX__,___XXX__,________,
+ ____XX__,___XX___,________,
+ ____XX__,___XX___,________,
+ ____XXX_,__XXX___,________,
+ _____XX_,__XX____,________,
+ _____XX_,_XXX____,________,
+ ______XX,_XX_____,________,
+ ______XX,_XX_____,________,
+ ______XX,XXX_____,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0057[128] = { /* code 0057 */
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ XX______,____XXX_,________,_XX_____,
+ XX______,____XXX_,________,_XX_____,
+ _XX_____,___XX_XX,________,XX______,
+ _XX_____,___XX_XX,________,XX______,
+ _XX_____,___XX_XX,________,XX______,
+ _XX_____,__XX___X,X_______,XX______,
+ __XX____,__XX___X,X______X,X_______,
+ __XX____,__XX___X,X______X,X_______,
+ __XX____,_XX_____,XX_____X,X_______,
+ __XXX___,_XX_____,XX____XX,X_______,
+ ___XX___,_XX_____,XX____XX,________,
+ ___XX___,XXX_____,_XX___XX,________,
+ ___XX___,XX______,_XX___XX,________,
+ ___XXX__,XX______,_XX__XX_,________,
+ ____XX_X,XX______,_XXX_XX_,________,
+ ____XX_X,X_______,__XX_XX_,________,
+ ____XX_X,X_______,__XX_XX_,________,
+ _____XXX,X_______,__XXXX__,________,
+ _____XXX,________,___XXX__,________,
+ _____XXX,________,___XXX__,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0058[ 96] = { /* code 0058 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXX____,_____XXX,________,
+ __XXX___,____XXX_,________,
+ ___XX___,____XX__,________,
+ ___XXX__,___XXX__,________,
+ ____XXX_,__XXX___,________,
+ _____XXX,_XXX____,________,
+ _____XXX,_XXX____,________,
+ ______XX,_XX_____,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ ______XX,_XX_____,________,
+ _____XXX,_XXX____,________,
+ ____XXX_,__XXX___,________,
+ ____XXX_,__XXX___,________,
+ ___XXX__,___XXX__,________,
+ __XXX___,____XXX_,________,
+ __XXX___,_____XX_,________,
+ _XXX____,_____XXX,________,
+ XXX_____,______XX,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0059[ 96] = { /* code 0059 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XX_____,______XX,X_______,
+ __XX____,_____XXX,________,
+ ___XX___,_____XX_,________,
+ ___XX___,____XXX_,________,
+ ____XX__,____XX__,________,
+ ____XXX_,___XXX__,________,
+ _____XXX,__XXX___,________,
+ ______XX,__XX____,________,
+ ______XX,__XX____,________,
+ _______X,XXX_____,________,
+ _______X,XXX_____,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,XX______,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_005A[ 96] = { /* code 005A */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXXXXXX,XXXXXXXX,________,
+ _XXXXXXX,XXXXXXXX,________,
+ ________,_____XX_,________,
+ ________,____XX__,________,
+ ________,___XX___,________,
+ ________,__XXX___,________,
+ ________,_XXX____,________,
+ ________,_XX_____,________,
+ ________,XX______,________,
+ _______X,XX______,________,
+ ______XX,X_______,________,
+ ______XX,________,________,
+ _____XX_,________,________,
+ ____XX__,________,________,
+ ___XXX__,________,________,
+ __XXX___,________,________,
+ __XX____,________,________,
+ _XX_____,________,________,
+ XXXXXXXX,XXXXXXXX,________,
+ XXXXXXXX,XXXXXXXX,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_005B[ 32] = { /* code 005B */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ __XXXXX_,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXXXX_,
+ __XXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_005C[ 32] = { /* code 005C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _____XXX,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_005D[ 32] = { /* code 005D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XXXXX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ _XXXXX__,
+ _XXXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_005E[ 64] = { /* code 005E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ___XX__X,X_______,
+ ___XX__X,X_______,
+ ___XX__X,X_______,
+ __XX____,XX______,
+ __XX____,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_005F[ 64] = { /* code 005F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0060[ 64] = { /* code 0060 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,________,
+ __XXX___,________,
+ ___XX___,________,
+ ____XX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0061[ 64] = { /* code 0061 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ ________,___XX___,
+ ________,XXXXX___,
+ ____XXXX,XXXXX___,
+ __XXXXXX,X__XX___,
+ __XX____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,__XXX___,
+ _XXX____,XXXXX___,
+ __XXXXXX,XX_XX___,
+ ___XXXXX,X___XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0062[ 64] = { /* code 0062 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX__XX,XX______,
+ __XX_XXX,XXXX____,
+ __XXXX__,__XXX___,
+ __XXX___,___XX___,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,___XXX__,
+ __XXX___,___XX___,
+ __XXXX__,__XXX___,
+ __XXXXXX,XXXX____,
+ __XX__XX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0063[ 64] = { /* code 0063 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XXX____,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ __XX____,__XX____,
+ __XXX___,_XXX____,
+ ___XXXXX,XXX_____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0064[ 64] = { /* code 0064 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,___XX___,
+ ________,___XX___,
+ ________,___XX___,
+ ________,___XX___,
+ ________,___XX___,
+ _____XXX,X__XX___,
+ ___XXXXX,XX_XX___,
+ __XXX___,_XXXX___,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XXX____,___XX___,
+ __XX____,__XXX___,
+ __XXX___,_XXXX___,
+ ___XXXXX,XXXXX___,
+ _____XXX,X__XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0065[ 64] = { /* code 0065 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,
+ _XX_____,________,
+ _XX_____,________,
+ _XXX____,________,
+ __XX____,____XX__,
+ __XXXX__,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0066[ 32] = { /* code 0066 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ __XXXXX_,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXXXXXX_,
+ XXXXXXX_,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0067[ 64] = { /* code 0067 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X__XX___,
+ ___XXXXX,XX_XX___,
+ __XXX___,_XXXX___,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ __XX____,__XXX___,
+ __XXX___,_XXXX___,
+ ___XXXXX,XX_XX___,
+ _____XXX,X__XX___,
+ _XX_____,___XX___,
+ _XX_____,__XXX___,
+ _XXX____,_XXX____,
+ __XXXXXX,XXX_____,
+ ____XXXX,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0068[ 64] = { /* code 0068 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX__XX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXX__,__XXX___,
+ __XXX___,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0069[ 32] = { /* code 0069 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_006A[ 32] = { /* code 006A */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXX_____,
+ XXX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_006B[ 64] = { /* code 006B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,___XXX__,
+ __XX____,__XXX___,
+ __XX____,_XXX____,
+ __XX____,XXX_____,
+ __XX___X,XX______,
+ __XX_XXX,X_______,
+ __XXXXXX,X_______,
+ __XXXXXX,X_______,
+ __XXX__X,XX______,
+ __XX____,XXX_____,
+ __XX____,XXX_____,
+ __XX____,_XXX____,
+ __XX____,__XX____,
+ __XX____,__XXX___,
+ __XX____,___XXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_006C[ 32] = { /* code 006C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_006D[ 96] = { /* code 006D */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XX__XX,XX____XX,XX______,
+ __XX_XXX,XXX_XXXX,XXX_____,
+ __XXXX__,_XXXXX__,_XXX____,
+ __XXX___,__XXX___,__XX____,
+ __XX____,__XX____,__XX____,
+ __XX____,__XX____,__XX____,
+ __XX____,__XX____,__XX____,
+ __XX____,__XX____,__XX____,
+ __XX____,__XX____,__XX____,
+ __XX____,__XX____,__XX____,
+ __XX____,__XX____,__XX____,
+ __XX____,__XX____,__XX____,
+ __XX____,__XX____,__XX____,
+ __XX____,__XX____,__XX____,
+ __XX____,__XX____,__XX____,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_006E[ 64] = { /* code 006E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX__XX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXX__,__XXX___,
+ __XXX___,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_006F[ 64] = { /* code 006F */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ __XXX___,__XXX___,
+ __XX____,___XX___,
+ _XXX____,___XXX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XX_____,____XX__,
+ _XXX____,___XXX__,
+ __XX____,___XX___,
+ __XXX___,__XXX___,
+ ___XXXXX,XXXX____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0070[ 64] = { /* code 0070 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX__XX,XX______,
+ __XX_XXX,XXXX____,
+ __XXXX__,__XXX___,
+ __XXX___,___XX___,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XX____,____XX__,
+ __XXX___,___XX___,
+ __XXXX__,__XXX___,
+ __XX_XXX,XXXX____,
+ __XX__XX,XX______,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0071[ 64] = { /* code 0071 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X__XX___,
+ ___XXXXX,XX_XX___,
+ __XXX___,_XXXX___,
+ __XX____,__XXX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ _XXX____,___XX___,
+ __XX____,__XXX___,
+ __XXX___,_XXXX___,
+ ___XXXXX,XX_XX___,
+ _____XXX,X__XX___,
+ ________,___XX___,
+ ________,___XX___,
+ ________,___XX___,
+ ________,___XX___,
+ ________,___XX___,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0072[ 64] = { /* code 0072 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX_XXX,X_______,
+ __XXXXXX,X_______,
+ __XXX___,________,
+ __XXX___,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0073[ 64] = { /* code 0073 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XXX_____,
+ _XXX____,_XXX____,
+ _XX_____,__XX____,
+ _XX_____,________,
+ _XXXX___,________,
+ __XXXXXX,X_______,
+ ___XXXXX,XXXX____,
+ ______XX,XXXX____,
+ ________,__XXX___,
+ _XX_____,___XX___,
+ _XXX____,___XX___,
+ __XXX___,__XX____,
+ ___XXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0074[ 32] = { /* code 0074 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXXXXXX_,
+ XXXXXXX_,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXXXX_,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0075[ 64] = { /* code 0075 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,___XX___,
+ __XX____,__XXX___,
+ __XXX___,_XXXX___,
+ ___XXXXX,XX_XX___,
+ ____XXXX,X__XX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0076[ 64] = { /* code 0076 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX______,___XX___,
+ XX______,___XX___,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XXX____,_XXX____,
+ __XX____,_XX_____,
+ __XXX___,_XX_____,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XXX_X,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ ______X_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0077[ 96] = { /* code 0077 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ XX______,_X______,_XX_____,
+ XX______,XXX_____,_XX_____,
+ XX______,XXX_____,_XX_____,
+ _XX_____,X_X_____,XX______,
+ _XX____X,X_XX____,XX______,
+ _XX____X,X_XX___X,XX______,
+ __XX___X,X_XX___X,X_______,
+ __XX___X,___X___X,X_______,
+ __XX__XX,___XX_XX,X_______,
+ ___XX_XX,___XX_XX,________,
+ ___XX_XX,___XX_XX,________,
+ ____X_X_,____X_X_,________,
+ ____XXX_,____XXX_,________,
+ ____XXX_,____XXX_,________,
+ _____X__,_____X__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0078[ 64] = { /* code 0078 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX_____,__XX____,
+ _XX_____,_XX_____,
+ __XX____,XXX_____,
+ __XXX___,XX______,
+ ___XX__X,X_______,
+ ____XXXX,X_______,
+ ____XXXX,________,
+ _____XX_,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ___XX__X,X_______,
+ __XXX__X,XX______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ XXX_____,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_0079[ 64] = { /* code 0079 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,___XX___,
+ _XX_____,___XX___,
+ __XX____,__XX____,
+ __XX____,__XX____,
+ __XXX___,__XX____,
+ ___XX___,_XX_____,
+ ___XX___,_XX_____,
+ ____XX__,_XX_____,
+ ____XX__,XX______,
+ ____XX__,XX______,
+ _____XX_,XX______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ______XX,X_______,
+ ______XX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ __XXXX__,________,
+ __XXX___,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_007A[ 64] = { /* code 007A */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ ________,_XXX____,
+ ________,XXX_____,
+ _______X,XX______,
+ ______XX,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ __XXX___,________,
+ _XXX____,________,
+ XXX_____,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_007B[ 64] = { /* code 007B */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,X_______,
+ _____XXX,X_______,
+ ____XXX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ _XXX____,________,
+ _XXX____,________,
+ ___XX___,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ _____XXX,X_______,
+ ______XX,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_007C[ 32] = { /* code 007C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_007D[ 64] = { /* code 007D */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX_____,________,
+ XXXX____,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ____XX__,________,
+ _____XXX,________,
+ _____XXX,________,
+ ____XX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ XXXX____,________,
+ XXX_____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFont32_ASCII_007E[ 64] = { /* code 007E */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ _XXXXXXX,XX___XX_,
+ _XX____X,XXXXXXX_,
+ _X______,_XXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font32_ASCII_CharInfo[95] = {
+ { 8, 8, 1, acFont32_ASCII_0020 } /* code 0020 */
+ ,{ 8, 8, 1, acFont32_ASCII_0021 } /* code 0021 */
+ ,{ 10, 10, 2, acFont32_ASCII_0022 } /* code 0022 */
+ ,{ 15, 15, 2, acFont32_ASCII_0023 } /* code 0023 */
+ ,{ 15, 15, 2, acFont32_ASCII_0024 } /* code 0024 */
+ ,{ 24, 24, 3, acFont32_ASCII_0025 } /* code 0025 */
+ ,{ 18, 18, 3, acFont32_ASCII_0026 } /* code 0026 */
+ ,{ 5, 5, 1, acFont32_ASCII_0027 } /* code 0027 */
+ ,{ 9, 9, 2, acFont32_ASCII_0028 } /* code 0028 */
+ ,{ 9, 9, 2, acFont32_ASCII_0029 } /* code 0029 */
+ ,{ 11, 11, 2, acFont32_ASCII_002A } /* code 002A */
+ ,{ 16, 16, 2, acFont32_ASCII_002B } /* code 002B */
+ ,{ 8, 8, 1, acFont32_ASCII_002C } /* code 002C */
+ ,{ 9, 9, 2, acFont32_ASCII_002D } /* code 002D */
+ ,{ 8, 8, 1, acFont32_ASCII_002E } /* code 002E */
+ ,{ 8, 8, 1, acFont32_ASCII_002F } /* code 002F */
+ ,{ 15, 15, 2, acFont32_ASCII_0030 } /* code 0030 */
+ ,{ 15, 15, 2, acFont32_ASCII_0031 } /* code 0031 */
+ ,{ 15, 15, 2, acFont32_ASCII_0032 } /* code 0032 */
+ ,{ 15, 15, 2, acFont32_ASCII_0033 } /* code 0033 */
+ ,{ 15, 15, 2, acFont32_ASCII_0034 } /* code 0034 */
+ ,{ 15, 15, 2, acFont32_ASCII_0035 } /* code 0035 */
+ ,{ 15, 15, 2, acFont32_ASCII_0036 } /* code 0036 */
+ ,{ 15, 15, 2, acFont32_ASCII_0037 } /* code 0037 */
+ ,{ 15, 15, 2, acFont32_ASCII_0038 } /* code 0038 */
+ ,{ 15, 15, 2, acFont32_ASCII_0039 } /* code 0039 */
+ ,{ 8, 8, 1, acFont32_ASCII_003A } /* code 003A */
+ ,{ 8, 8, 1, acFont32_ASCII_003B } /* code 003B */
+ ,{ 16, 16, 2, acFont32_ASCII_003C } /* code 003C */
+ ,{ 16, 16, 2, acFont32_ASCII_003D } /* code 003D */
+ ,{ 16, 16, 2, acFont32_ASCII_003E } /* code 003E */
+ ,{ 15, 15, 2, acFont32_ASCII_003F } /* code 003F */
+ ,{ 27, 27, 4, acFont32_ASCII_0040 } /* code 0040 */
+ ,{ 18, 18, 3, acFont32_ASCII_0041 } /* code 0041 */
+ ,{ 18, 18, 3, acFont32_ASCII_0042 } /* code 0042 */
+ ,{ 20, 20, 3, acFont32_ASCII_0043 } /* code 0043 */
+ ,{ 20, 20, 3, acFont32_ASCII_0044 } /* code 0044 */
+ ,{ 18, 18, 3, acFont32_ASCII_0045 } /* code 0045 */
+ ,{ 17, 17, 3, acFont32_ASCII_0046 } /* code 0046 */
+ ,{ 21, 21, 3, acFont32_ASCII_0047 } /* code 0047 */
+ ,{ 19, 19, 3, acFont32_ASCII_0048 } /* code 0048 */
+ ,{ 8, 8, 1, acFont32_ASCII_0049 } /* code 0049 */
+ ,{ 13, 13, 2, acFont32_ASCII_004A } /* code 004A */
+ ,{ 18, 18, 3, acFont32_ASCII_004B } /* code 004B */
+ ,{ 15, 15, 2, acFont32_ASCII_004C } /* code 004C */
+ ,{ 23, 23, 3, acFont32_ASCII_004D } /* code 004D */
+ ,{ 19, 19, 3, acFont32_ASCII_004E } /* code 004E */
+ ,{ 21, 21, 3, acFont32_ASCII_004F } /* code 004F */
+ ,{ 17, 17, 3, acFont32_ASCII_0050 } /* code 0050 */
+ ,{ 21, 21, 3, acFont32_ASCII_0051 } /* code 0051 */
+ ,{ 20, 20, 3, acFont32_ASCII_0052 } /* code 0052 */
+ ,{ 18, 18, 3, acFont32_ASCII_0053 } /* code 0053 */
+ ,{ 16, 16, 2, acFont32_ASCII_0054 } /* code 0054 */
+ ,{ 19, 19, 3, acFont32_ASCII_0055 } /* code 0055 */
+ ,{ 17, 17, 3, acFont32_ASCII_0056 } /* code 0056 */
+ ,{ 28, 28, 4, acFont32_ASCII_0057 } /* code 0057 */
+ ,{ 17, 17, 3, acFont32_ASCII_0058 } /* code 0058 */
+ ,{ 18, 18, 3, acFont32_ASCII_0059 } /* code 0059 */
+ ,{ 17, 17, 3, acFont32_ASCII_005A } /* code 005A */
+ ,{ 8, 8, 1, acFont32_ASCII_005B } /* code 005B */
+ ,{ 8, 8, 1, acFont32_ASCII_005C } /* code 005C */
+ ,{ 8, 8, 1, acFont32_ASCII_005D } /* code 005D */
+ ,{ 12, 12, 2, acFont32_ASCII_005E } /* code 005E */
+ ,{ 15, 15, 2, acFont32_ASCII_005F } /* code 005F */
+ ,{ 9, 9, 2, acFont32_ASCII_0060 } /* code 0060 */
+ ,{ 15, 15, 2, acFont32_ASCII_0061 } /* code 0061 */
+ ,{ 15, 15, 2, acFont32_ASCII_0062 } /* code 0062 */
+ ,{ 14, 14, 2, acFont32_ASCII_0063 } /* code 0063 */
+ ,{ 15, 15, 2, acFont32_ASCII_0064 } /* code 0064 */
+ ,{ 15, 15, 2, acFont32_ASCII_0065 } /* code 0065 */
+ ,{ 7, 7, 1, acFont32_ASCII_0066 } /* code 0066 */
+ ,{ 15, 15, 2, acFont32_ASCII_0067 } /* code 0067 */
+ ,{ 15, 15, 2, acFont32_ASCII_0068 } /* code 0068 */
+ ,{ 6, 6, 1, acFont32_ASCII_0069 } /* code 0069 */
+ ,{ 6, 6, 1, acFont32_ASCII_006A } /* code 006A */
+ ,{ 14, 14, 2, acFont32_ASCII_006B } /* code 006B */
+ ,{ 6, 6, 1, acFont32_ASCII_006C } /* code 006C */
+ ,{ 22, 22, 3, acFont32_ASCII_006D } /* code 006D */
+ ,{ 15, 15, 2, acFont32_ASCII_006E } /* code 006E */
+ ,{ 15, 15, 2, acFont32_ASCII_006F } /* code 006F */
+ ,{ 15, 15, 2, acFont32_ASCII_0070 } /* code 0070 */
+ ,{ 15, 15, 2, acFont32_ASCII_0071 } /* code 0071 */
+ ,{ 9, 9, 2, acFont32_ASCII_0072 } /* code 0072 */
+ ,{ 14, 14, 2, acFont32_ASCII_0073 } /* code 0073 */
+ ,{ 8, 8, 1, acFont32_ASCII_0074 } /* code 0074 */
+ ,{ 15, 15, 2, acFont32_ASCII_0075 } /* code 0075 */
+ ,{ 13, 13, 2, acFont32_ASCII_0076 } /* code 0076 */
+ ,{ 19, 19, 3, acFont32_ASCII_0077 } /* code 0077 */
+ ,{ 12, 12, 2, acFont32_ASCII_0078 } /* code 0078 */
+ ,{ 14, 14, 2, acFont32_ASCII_0079 } /* code 0079 */
+ ,{ 13, 13, 2, acFont32_ASCII_007A } /* code 007A */
+ ,{ 9, 9, 2, acFont32_ASCII_007B } /* code 007B */
+ ,{ 6, 6, 1, acFont32_ASCII_007C } /* code 007C */
+ ,{ 9, 9, 2, acFont32_ASCII_007D } /* code 007D */
+ ,{ 16, 16, 2, acFont32_ASCII_007E } /* code 007E */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font32_ASCII_Prop1 = {
+ 0x0020 /* first character */
+ ,0x007E /* last character */
+ ,&GUI_Font32_ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font32_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,32 /* height of font */
+ ,32 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font32_ASCII_Prop1}
+ ,26, 15, 20
+};
+
diff --git a/User/lib/lcd/gui/Font/F4x6.c b/User/lib/lcd/gui/Font/F4x6.c
new file mode 100644
index 0000000..0c87e9c
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F4x6.c
@@ -0,0 +1,815 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F4x6.C
+Purpose : Implementation of 4x6 pixel font
+Height : 6
+---------------------------END-OF-HEADER------------------------------
+*/
+
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFont4x6[95][6] = {
+
+ {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ ,{
+ _X______,
+ _X______,
+ _X______,
+ ________,
+ _X______,
+ ________}
+
+ ,{
+ X_X_____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ ,{
+ X_X_____,
+ XXX_____,
+ X_X_____,
+ XXX_____,
+ X_X_____,
+ ________}
+
+ ,{
+ _XX_____,
+ XX______,
+ _X______,
+ _XX_____,
+ XX______,
+ ________}
+
+ ,{
+ X_______,
+ __X_____,
+ _X______,
+ X_______,
+ __X_____,
+ ________}
+
+ ,{
+ _X______,
+ X_X_____,
+ _X______,
+ X_XX____,
+ _X_X____,
+ ________}
+
+ ,{
+ _X______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ ,{
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ ________}
+
+ ,{
+ _X______,
+ __X_____,
+ __X_____,
+ __X_____,
+ _X______,
+ ________}
+
+ ,{
+ X_X_____,
+ _X______,
+ XXX_____,
+ _X______,
+ X_X_____,
+ ________}
+
+ ,{
+ ________,
+ _X______,
+ XXX_____,
+ _X______,
+ ________,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ ________,
+ _X______,
+ X_______,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ _X______,
+ ________}
+
+ ,{
+ ________,
+ __X_____,
+ _X______,
+ X_______,
+ ________,
+ ________}
+
+ ,{
+ _X______,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ _X______,
+ ________}
+
+ ,{
+ _X______,
+ XX______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________}
+
+ ,{
+ _X______,
+ X_X_____,
+ __X_____,
+ _X______,
+ XXX_____,
+ ________}
+
+ ,{
+ XX______,
+ __X_____,
+ _X______,
+ __X_____,
+ XX______,
+ ________}
+
+ ,{
+ __X_____,
+ _XX_____,
+ X_X_____,
+ XXX_____,
+ __X_____,
+ ________}
+
+ ,{
+ XXX_____,
+ X_______,
+ XX______,
+ __X_____,
+ XX______,
+ ________}
+
+ ,{
+ _XX_____,
+ X_______,
+ XXX_____,
+ X_X_____,
+ XXX_____,
+ ________}
+
+ ,{
+ XXX_____,
+ __X_____,
+ _X______,
+ X_______,
+ X_______,
+ ________}
+
+ ,{
+ _X______,
+ X_X_____,
+ _X______,
+ X_X_____,
+ _X______,
+ ________}
+
+ ,{
+ XXX_____,
+ X_X_____,
+ XXX_____,
+ __X_____,
+ XX______,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ _X______,
+ ________,
+ _X______,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ _X______,
+ ________,
+ _X______,
+ X_______}
+
+ ,{
+ __X_____,
+ _X______,
+ X_______,
+ _X______,
+ __X_____,
+ ________}
+
+ ,{
+ ________,
+ XXX_____,
+ ________,
+ XXX_____,
+ ________,
+ ________}
+
+ ,{
+ X_______,
+ _X______,
+ __X_____,
+ _X______,
+ X_______,
+ ________}
+
+ ,{
+ XX______,
+ __X_____,
+ _X______,
+ ________,
+ _X______,
+ ________}
+
+ ,{
+ _X______,
+ X_X_____,
+ __X_____,
+ XXX_____,
+ XXX_____,
+ ________}
+
+ ,{
+ _X______,
+ X_X_____,
+ XXX_____,
+ X_X_____,
+ X_X_____,
+ ________}
+
+ ,{
+ XX______,
+ X_X_____,
+ XX______,
+ X_X_____,
+ XX______,
+ ________}
+
+ ,{
+ _X______,
+ X_X_____,
+ X_______,
+ X_X_____,
+ _X______,
+ ________}
+
+ ,{
+ XX______,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ XX______,
+ ________}
+
+ ,{
+ XXX_____,
+ X_______,
+ XX______,
+ X_______,
+ XXX_____,
+ ________}
+
+ ,{
+ XXX_____,
+ X_______,
+ XX______,
+ X_______,
+ X_______,
+ ________}
+
+ ,{
+ _XX_____,
+ X_______,
+ XXX_____,
+ X_X_____,
+ _XX_____,
+ ________}
+
+ ,{
+ X_X_____,
+ X_X_____,
+ XXX_____,
+ X_X_____,
+ X_X_____,
+ ________}
+
+ ,{
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________}
+
+ ,{
+ XXX_____,
+ __X_____,
+ __X_____,
+ X_X_____,
+ _X______,
+ ________}
+
+ ,{
+ X_X_____,
+ XX______,
+ X_______,
+ XX______,
+ X_X_____,
+ ________}
+
+ ,{
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ XXX_____,
+ ________}
+
+ ,{
+ X_X_____,
+ XXX_____,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ ________}
+
+ ,{
+ X_X_____,
+ XXX_____,
+ XXX_____,
+ XXX_____,
+ X_X_____,
+ ________}
+
+ ,{
+ XXX_____,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ XXX_____,
+ ________}
+
+ ,{
+ XXX_____,
+ X_X_____,
+ XXX_____,
+ X_______,
+ X_______,
+ ________}
+
+ ,{
+ XXX_____,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ XXX_____,
+ __X_____}
+
+ ,{
+ XX______,
+ X_X_____,
+ XX______,
+ X_X_____,
+ X_X_____,
+ ________}
+
+ ,{
+ _XX_____,
+ X_______,
+ _X______,
+ __X_____,
+ XX______,
+ ________}
+
+ ,{
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________}
+
+ ,{
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ XXX_____,
+ ________}
+
+ ,{
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ _X______,
+ ________}
+
+ ,{
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ XXX_____,
+ X_X_____,
+ ________}
+
+ ,{
+ X_X_____,
+ X_X_____,
+ _X______,
+ X_X_____,
+ X_X_____,
+ ________}
+
+ ,{
+ X_X_____,
+ X_X_____,
+ X_X_____,
+ _X______,
+ _X______,
+ ________}
+
+ ,{
+ XXX_____,
+ __X_____,
+ _X______,
+ X_______,
+ XXX_____,
+ ________}
+
+ ,{
+ XXX_____,
+ X_______,
+ X_______,
+ X_______,
+ XXX_____,
+ ________}
+
+
+ ,{
+ X_______,
+ X_______,
+ _X______,
+ __X_____,
+ __X_____,
+ ________}
+
+
+ ,{
+ XXX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ XXX_____,
+ ________}
+
+
+ ,{
+ _X______,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____}
+
+
+ ,{
+ X_______,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ ,{
+ ________,
+ ________,
+ _XX_____,
+ X_X_____,
+ _XX_____,
+ ________}
+
+ ,{
+ X_______,
+ X_______,
+ XX______,
+ X_X_____,
+ XX______,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ _XX_____,
+ X_______,
+ _XX_____,
+ ________}
+
+ ,{
+ __X_____,
+ __X_____,
+ _XX_____,
+ X_X_____,
+ _XX_____,
+ ________}
+
+ ,{
+ _X______,
+ X_X_____,
+ XXX_____,
+ X_______,
+ _XX_____,
+ ________}
+
+ ,{
+ _XX_____,
+ X_______,
+ XX______,
+ X_______,
+ X_______,
+ ________}
+
+ ,{
+ ________,
+ _XX_____,
+ X_X_____,
+ _XX_____,
+ __X_____,
+ XX______}
+
+ ,{
+ X_______,
+ X_______,
+ XX______,
+ X_X_____,
+ X_X_____,
+ ________}
+
+ ,{
+ _X______,
+ ________,
+ XX______,
+ _X______,
+ XXX_____,
+ ________}
+
+ ,{
+ __X_____,
+ ________,
+ __X_____,
+ __X_____,
+ X_X_____,
+ _X______}
+
+ ,{
+ X_______,
+ X_______,
+ X_X_____,
+ XX______,
+ X_X_____,
+ ________}
+
+ ,{
+ XX______,
+ _X______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________}
+
+ ,{
+ ________,
+ X_X_____,
+ XXX_____,
+ X_X_____,
+ X_X_____,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ XXX_____,
+ X_X_____,
+ X_X_____,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ XXX_____,
+ X_X_____,
+ XXX_____,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ XX______,
+ X_X_____,
+ XX______,
+ X_______}
+
+ ,{
+ ________,
+ ________,
+ XXX_____,
+ X_X_____,
+ XXX_____,
+ __X_____}
+
+ ,{
+ ________,
+ ________,
+ X_X_____,
+ XX______,
+ X_______,
+ ________}
+
+ ,{
+ _XX_____,
+ X_______,
+ _X______,
+ __X_____,
+ XX______,
+ ________}
+
+ ,{
+ _X______,
+ XXX_____,
+ _X______,
+ _X______,
+ __X_____,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ X_X_____,
+ X_X_____,
+ XXX_____,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ X_X_____,
+ X_X_____,
+ _X______,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ X_X_____,
+ XXX_____,
+ X_X_____,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ X_X_____,
+ _X______,
+ X_X_____,
+ ________}
+
+ ,{
+ ________,
+ ________,
+ X_X_____,
+ XXX_____,
+ __X_____,
+ XX______}
+
+ ,{
+ ________,
+ XXX_____,
+ _X______,
+ X_______,
+ XXX_____,
+ ________}
+
+ ,{
+ X_______,
+ _X______,
+ _XX_____,
+ _X______,
+ X_______,
+ ________}
+
+ ,{
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ ________}
+
+ ,{
+ __X_____,
+ _X______,
+ XX______,
+ _X______,
+ __X_____,
+ ________}
+
+ ,{
+ _X_X____,
+ X_X_____,
+ ________,
+ ________,
+ ________,
+ ________}
+
+};
+
+
+
+GUI_CONST_STORAGE GUI_FONT_MONO FontMono4x6 = {
+ acFont4x6[0],
+ (const U8 *)0,
+ (const GUI_FONT_TRANSINFO *)0, /* ASCII only, no translation table */
+ 32, 126, 4, 4, 1
+};
+
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font4x6 = {
+ GUI_FONTTYPE_MONO,
+ 6, 6, 1, 1
+ ,{&FontMono4x6}
+ , 5, 3, 5
+};
+ GUI_FONT GUI_Font4x6_2 = {
+ GUI_FONTTYPE_MONO,
+ 6, 6*2, 2, 2
+ ,{&FontMono4x6}
+ , 5, 3, 5
+};
diff --git a/User/lib/lcd/gui/Font/F6x8.c b/User/lib/lcd/gui/Font/F6x8.c
new file mode 100644
index 0000000..5d05c5f
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F6x8.c
@@ -0,0 +1,2212 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F6x8.C
+Purpose : Contains standard font
+Height : 8
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+#ifndef GUI_NOFCHARS
+#define GUI_NOFCHARS (163)
+#endif
+
+/* *********************************
+ * *
+ * Special character codes *
+ * *
+ *********************************
+ */
+
+/* No 95 to 125 for European character set */
+
+#define CODE_SACCAGUE 95 /* small accent ague */
+#define CODE_SACCGRAV 96
+#define CODE_SACCCIRC 97
+#define CODE_SUMLAUT 98
+#define CODE_STILDE 99
+#define CODE_I_NOPOINT 100
+
+#define CODE_SHARPS 101
+#define CODE_A_RING 102
+#define CODE_SA_RING 103
+#define CODE_AE 104
+#define CODE_ETH 105
+#define CODE_THORN 106
+#define CODE_SMALLAE 107
+#define CODE_SMALLETH 108
+#define CODE_SMALLTHORN 109
+#define CODE_OSLASH 110
+#define CODE_SOSLASH 111
+#define CODE_LITTLE_A 112
+#define CODE_LITTLE_E 113
+#define CODE_LITTLE_I 114
+#define CODE_LITTLE_O 115
+#define CODE_LITTLE_U 116
+#define CODE_LITTLE_N 117
+
+#define CODE_INVEXCLAM 118
+#define CODE_INVQUEST 119
+
+#define CODE_CACCAGUE 120 /* capital accent ague */
+#define CODE_CACCGRAV 121
+#define CODE_CACCCIRC 122
+#define CODE_CUMLAUT 123
+#define CODE_CTILDE 124
+#define CODE_CEDILLA 125
+
+/* No 126 to 156 for complete ISO 8859_1 western latin character set */
+#define CODE_NB_SPACE 126
+#define CODE_CENT 127
+#define CODE_POUND 128
+#define CODE_CURRENCY 129
+#define CODE_YEN 130
+#define CODE_BROKEN_BAR 131
+#define CODE_SECTION 132
+#define CODE_DIERESIS 133
+#define CODE_COPYRIGHT 134
+#define CODE_FEMININE 135
+#define CODE_LEFT_QUOTE 136
+#define CODE_NOT 137
+#define CODE_HYPHEN 138
+#define CODE_TRADEMARK 139
+#define CODE_MACRON 140
+#define CODE_DEGREE 141
+#define CODE_PLUS_MINUS 142
+#define CODE_SUPER_TWO 143
+#define CODE_SUPER_THREE 144
+#define CODE_ACUTE 145
+#define CODE_MICRO 146
+#define CODE_PARAGRAPH 147
+#define CODE_MIDDLE_DOT 148
+#define CODE_SUPER_ONE 149
+#define CODE_MASCULINE 150
+#define CODE_RIGHT_QUOTE 151
+#define CODE_ONE_FOURTH 152
+#define CODE_ONE_HALF 153
+#define CODE_THREE_FOURTH 154
+#define CODE_MULTIPLY 155
+#define CODE_DIVISION 156
+/* The following are extensions to ISO 8859-1 in the area which is not
+ defined by the standard.
+*/
+#define CODE_ARROW_LEFT 157
+#define CODE_ARROW_RIGHT 158
+#define CODE_ARROW_UP 159
+#define CODE_ARROW_DOWN 160
+#define CODE_ENTER 161
+#define CODE_CHECKMARK 162
+
+GUI_CONST_STORAGE unsigned char GUI_acFont6x8[GUI_NOFCHARS][8] = {
+ {________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ /* ! */
+ ,
+ {__X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________,
+ __X_____,
+ ________}
+
+ /* " */
+ ,
+ {_X__X___,
+ _X__X___,
+ _X__X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ /* # */
+ ,
+ {_X_X____,
+ _X_X____,
+ XXXXX___,
+ _X_X____,
+ XXXXX___,
+ _X_X____,
+ _X_X____,
+ ________}
+
+ /* $ */
+ ,
+ {__X_____,
+ _XXXX___,
+ X_X_____,
+ _XXX____,
+ __X_X___,
+ XXXX____,
+ __X_____}
+
+ /* % */
+ ,
+ {XX______,
+ XX__X___,
+ ___X____,
+ __X_____,
+ _X______,
+ X__XX___,
+ ___XX___,
+ ________}
+
+ /* & */
+ ,
+ {_XX_____,
+ X__X____,
+ X_X_____,
+ _X______,
+ X_X_X___,
+ X__X____,
+ _XX_X___,
+ ________}
+
+ /* ' */
+ ,
+ {_XX_____,
+ __X_____,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ /* ( */
+ ,
+ {___X____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ __X_____,
+ ___X____,
+ ________}
+
+ /* ) */
+ ,
+ {_X______,
+ __X_____,
+ ___X____,
+ ___X____,
+ ___X____,
+ __X_____,
+ _X______,
+ ________}
+
+ /* * */
+ ,
+ {________,
+ _X_X____,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ _X_X____,
+ ________,
+ ________}
+
+ ,
+ {________,
+ __X_____,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ ________,
+ ________}
+
+ ,
+ {________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ __X_____,
+ _X______}
+
+ ,
+ {________,
+ ________,
+ ________,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ ,
+ {________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________}
+
+ ,
+ {________,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ ________,
+ ________}
+
+ /* 0 */
+ ,
+ {_XXX____,
+ X___X___,
+ X__XX___,
+ X_X_X___,
+ XX__X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* 1 */
+ ,
+ {__X_____,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XXX____,
+ ________}
+
+ /* 2 */
+ ,
+ {_XXX____,
+ X___X___,
+ ____X___,
+ __XX____,
+ _X______,
+ X_______,
+ XXXXX___,
+ ________}
+
+ /* 3 */
+ ,
+ {_XXX____,
+ X___X___,
+ ____X___,
+ __XX____,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* 4 */
+ ,
+ {___X____,
+ __XX____,
+ _X_X____,
+ X__X____,
+ XXXXX___,
+ ___X____,
+ ___X____,
+ ________}
+
+ /* 5 */
+ ,
+ {XXXXX___,
+ X_______,
+ XXXX____,
+ ____X___,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* 6 */
+ ,
+ {__XX____,
+ _X______,
+ X_______,
+ XXXX____,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* 7 */
+ ,
+ {XXXXX___,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ _X______,
+ _X______,
+ ________}
+
+ /* 8 */
+ ,
+ {_XXX____,
+ X___X___,
+ X___X___,
+ _XXX____,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* 9 */
+ ,
+ {_XXX____,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ____X___,
+ ___X____,
+ _XX_____,
+ ________}
+
+ /* ':' 3a */
+ ,
+ {________,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________}
+
+ /* ';' 3b */
+ ,
+ {________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ __X_____,
+ _X______}
+
+ /* '<' 3c */
+ ,
+ {___X____,
+ __X_____,
+ _X______,
+ X_______,
+ _X______,
+ __X_____,
+ ___X____,
+ ________}
+
+ /* '=' 3d */
+ ,
+ {________,
+ ________,
+ XXXXX___,
+ ________,
+ XXXXX___,
+ ________,
+ ________,
+ ________}
+
+ /* '>' */
+ ,
+ {X_______,
+ _X______,
+ __X_____,
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ ________}
+
+ /* '?' */
+ ,
+ {_XXX____,
+ X___X___,
+ ____X___,
+ ___X____,
+ __X_____,
+ ________,
+ __X_____,
+ ________}
+
+ /* @ */
+ ,
+ {_XXX____,
+ X___X___,
+ ____X___,
+ _XX_X___,
+ X_X_X___,
+ X_X_X___,
+ _XXX____,
+ ________}
+
+ /* A */
+ ,
+ {_XXX____,
+ X___X___,
+ X___X___,
+ XXXXX___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+ /* B */
+ ,
+ {XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ ________}
+
+ /* C */
+ ,
+ {_XXX____,
+ X___X___,
+ X_______,
+ X_______,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* D */
+ ,
+ {XXX_____,
+ X__X____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X__X____,
+ XXX_____,
+ ________}
+
+ /* E */
+ ,
+ {XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________}
+
+ /* 1 */
+ ,
+ {XXXXX___,
+ X_______,
+ X_______,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ ________}
+
+ /* 1 */
+ ,
+ {_XXX____,
+ X___X___,
+ X_______,
+ X_______,
+ X__XX___,
+ X___X___,
+ _XXXX___,
+ ________}
+
+ /* 1 */
+ ,
+ {X___X___,
+ X___X___,
+ X___X___,
+ XXXXX___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+ /* I */
+ ,
+ {_XXX____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XXX____,
+ ________}
+
+ /* J */
+ ,
+ {__XXX___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ X__X____,
+ _XX_____,
+ ________}
+
+ /* K */
+ ,
+ {X___X___,
+ X__X____,
+ X_X_____,
+ XX______,
+ X_X_____,
+ X__X____,
+ X___X___,
+ ________}
+
+ /* L */
+ ,
+ {X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ X_______,
+ XXXXX___,
+ ________}
+
+ /* M */
+ ,
+ {X___X___,
+ XX_XX___,
+ X_X_X___,
+ X_X_X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+ /* N */
+ ,
+ {X___X___,
+ X___X___,
+ XX__X___,
+ X_X_X___,
+ X__XX___,
+ X___X___,
+ X___X___,
+ ________}
+
+ /* O */
+ ,
+ {_XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* P */
+ ,
+ {XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_______,
+ X_______,
+ X_______,
+ ________}
+
+ /* Q */
+ ,
+ {_XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ X_X_X___,
+ X__X____,
+ _XX_X___,
+ ________}
+
+ /* R */
+ ,
+ {XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_X_____,
+ X__X____,
+ X___X___,
+ ________}
+
+ /* S */
+ ,
+ {_XXX____,
+ X___X___,
+ X_______,
+ _XXX____,
+ ____X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* T */
+ ,
+ {XXXXX___,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________}
+
+ /* U */
+ ,
+ {X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* V */
+ ,
+ {X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _X_X____,
+ __X_____,
+ ________}
+
+ /* W */
+ ,
+ {X___X___,
+ X___X___,
+ X___X___,
+ X_X_X___,
+ X_X_X___,
+ X_X_X___,
+ _X_X____,
+ ________}
+
+ /* X */
+ ,
+ {X___X___,
+ X___X___,
+ _X_X____,
+ __X_____,
+ _X_X____,
+ X___X___,
+ X___X___,
+ ________}
+
+ /* Y */
+ ,
+ {X___X___,
+ X___X___,
+ X___X___,
+ _X_X____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________}
+
+ /* Z */
+ ,
+ {XXXXX___,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ X_______,
+ XXXXX___,
+ ________}
+
+ /* 5b */
+ ,
+ {_XXX____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _XXX____,
+ ________}
+
+ /* 5c */
+ ,
+ {________,
+ X_______,
+ _X______,
+ __X_____,
+ ___X____,
+ ____X___,
+ ________,
+ ________}
+
+ /* 5d */
+ ,
+ {_XXX____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ _XXX____,
+ ________}
+
+ /* 5e */
+ ,
+ {__X_____,
+ _X_X____,
+ X___X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ /* 5f */
+ ,
+ {________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___}
+
+ /* 60 */
+ ,
+ {_X______,
+ __X_____,
+ ___X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ /* a */
+ ,
+ {________,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXXX___,
+ ________}
+
+ /* b */
+ ,
+ {X_______,
+ X_______,
+ X_XX____,
+ XX__X___,
+ X___X___,
+ X___X___,
+ XXXX____,
+ ________}
+
+ /* c */
+ ,
+ {________,
+ ________,
+ _XXX____,
+ X_______,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* d */
+ ,
+ {____X___,
+ ____X___,
+ _XX_X___,
+ X__XX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ________}
+
+ /* e */
+ ,
+ {________,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X_______,
+ _XXX____,
+ ________}
+
+ /* f */
+ ,
+ {__XX____,
+ _X__X___,
+ _X______,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ ________}
+
+ /* g */
+ ,
+ {________,
+ ________,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ____X___,
+ _XXX____}
+
+ /* h */
+ ,
+ {X_______,
+ X_______,
+ X_XX____,
+ XX__X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+ /* i */
+ ,
+ {__X_____,
+ ________,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XXX____,
+ ________}
+
+ /* j */
+ ,
+ {___X____,
+ ________,
+ __XX____,
+ ___X____,
+ ___X____,
+ ___X____,
+ X__X____,
+ _XX_____}
+
+ /* k */
+ ,
+ {X_______,
+ X_______,
+ X__X____,
+ X_X_____,
+ XX______,
+ X_X_____,
+ X__X____,
+ ________}
+
+ /* l */
+ ,
+ {_XX_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XXX____,
+ ________}
+
+ /* m */
+ ,
+ {________,
+ ________,
+ XX_X____,
+ X_X_X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+ /* n */
+ ,
+ {________,
+ ________,
+ X_XX____,
+ XX__X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ ________}
+
+ /* o */
+ ,
+ {________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+ /* p */
+ ,
+ {________,
+ ________,
+ XXXX____,
+ X___X___,
+ X___X___,
+ XXXX____,
+ X_______,
+ X_______}
+
+ /* q */
+ ,
+ {________,
+ ________,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ____X___,
+ ____X___}
+
+ /* r */
+ ,
+ {________,
+ ________,
+ X_XX____,
+ XX__X___,
+ X_______,
+ X_______,
+ X_______,
+ ________}
+
+ /* s */
+ ,
+ {________,
+ ________,
+ _XXXX___,
+ X_______,
+ _XXX____,
+ ____X___,
+ XXXX____,
+ ________}
+
+ /* t */
+ ,
+ {_X______,
+ _X______,
+ XXX_____,
+ _X______,
+ _X______,
+ _X__X___,
+ __XX____,
+ ________}
+
+ /* u */
+ ,
+ {________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X__XX___,
+ _XX_X___,
+ ________}
+
+ /* v */
+ ,
+ {________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ _X_X____,
+ __X_____,
+ ________}
+
+ /* w */
+ ,
+ {________,
+ ________,
+ X___X___,
+ X___X___,
+ X_X_X___,
+ X_X_X___,
+ _X_X____,
+ ________}
+
+ /* X */
+ ,
+ {________,
+ ________,
+ X___X___,
+ _X_X____,
+ __X_____,
+ _X_X____,
+ X___X___,
+ ________}
+
+ /* y */
+ ,
+ {________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXXX___,
+ ____X___,
+ _XXX____}
+
+ /* z */
+ ,
+ {________,
+ ________,
+ XXXXX___,
+ ___X____,
+ __X_____,
+ _X______,
+ XXXXX___,
+ ________}
+
+ /* 0x7b */
+ ,
+ {___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ __X_____,
+ __X_____,
+ ___X____,
+ ________}
+
+ /* 0x7c */
+ ,
+ {__X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________}
+
+ /* 0x7d */
+ ,
+ {_X______,
+ __X_____,
+ __X_____,
+ ___X____,
+ __X_____,
+ __X_____,
+ _X______,
+ ________}
+
+ /* 0x7e */
+ ,
+ {_XX_X___,
+ X__X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* additional characters for European character set */
+
+#if (GUI_NOFCHARS > 95)
+ /* small accent ague, 95*/
+ ,
+ {___XX___,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 96)
+
+ /* small accent grave, 96 */
+ ,
+ {XX______,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 97)
+
+ /* small accent circonflex, 97 */
+ ,
+ {_XXX____,
+ X___X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 98)
+
+ /* small umlaut, 98 */
+ ,
+ {_X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 99)
+
+ /* small tilde, 99 */
+ ,
+ {_XX_X___,
+ X__X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 100)
+
+ /* i without dot, 100 */
+ ,
+ {________,
+ ________,
+ ________,
+ _XX_____,
+ __X_____,
+ __X_____,
+ _XXX____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 101)
+
+ /* sharps eg , 101 */
+ ,
+ {________,
+ _XX_____,
+ X__X____,
+ XXXX____,
+ X___X___,
+ X___X___,
+ X_XX____,
+ X_______}
+
+#endif
+#if (GUI_NOFCHARS > 102)
+
+ /* capital A with ring, 102 */
+ ,
+ {__X_____,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X___X___,
+ X___X___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 103)
+
+ /* small a with ring, 103 */
+ ,
+ {__X_____,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXXX___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 104)
+
+ /* capital A diphtong, ligature, 104 */
+ ,
+ {__XXX___,
+ _XX_____,
+ X_X_____,
+ X_XXX___,
+ XXX_____,
+ X_X_____,
+ X_XXX___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 105)
+
+ /* Icelandic eth, 105 */
+ ,
+ {_XXX____,
+ _X__X___,
+ _X__X___,
+ XXX_X___,
+ _X__X___,
+ _X__X___,
+ _XXX____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 106)
+
+ /* Icelandic Thorn, 106 */
+ ,
+ {XXX_____,
+ _X______,
+ _XXX____,
+ _X__X___,
+ _X__X___,
+ _XXX____,
+ _X______,
+ XXX_____}
+
+#endif
+#if (GUI_NOFCHARS > 107)
+
+ /* small a diphtong, ligature, 107 */
+ ,
+ {________,
+ ________,
+ XX_X____,
+ __X_X___,
+ _XXXX___,
+ X_X_____,
+ _X_XX___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 108)
+
+ /* small Icelanic Eth, 108 */
+ ,
+ {X_X_____,
+ _X______,
+ X_X_____,
+ ___X____,
+ _XXXX___,
+ X___X___,
+ _XXX____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 109)
+
+ /* small Icelandic Thorn, 109 */
+ ,
+ {_XX_____,
+ __X_____,
+ __XX____,
+ __X_X___,
+ __XX____,
+ __X_____,
+ _XXX____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 110)
+
+ /* Capital O with slash, 110 */
+ ,
+ {_XXX____,
+ X___X___,
+ X__XX___,
+ X_X_X___,
+ XX__X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 111)
+
+ /* small o with slash, 111 */
+ ,
+ {________,
+ ________,
+ _XXX____,
+ X__XX___,
+ X_X_X___,
+ XX__X___,
+ _XXX____,
+ ________}
+
+/* Capital letters */
+
+#endif
+#if (GUI_NOFCHARS > 112)
+
+ /* Little capital A, 112 */
+ ,
+ {________,
+ ________,
+ _XXX____,
+ X___X___,
+ XXXXX___,
+ X___X___,
+ X___X___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 113)
+
+ /* Little capital E, 113 */
+ ,
+ {________,
+ ________,
+ XXXXX___,
+ X_______,
+ XXX_____,
+ X_______,
+ XXXXX___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 114)
+
+ /* Little capital I, 114 */
+ ,
+ {________,
+ ________,
+ _XXX____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XXX____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 115)
+
+ /* Little capital O, 115 */
+ ,
+ {________,
+ ________,
+ _XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 116)
+
+ /* Little capital U, 116 */
+ ,
+ {________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 117)
+
+ /* Little capital N, 117 */
+ ,
+ {________,
+ ________,
+ X___X___,
+ XX__X___,
+ X_X_X___,
+ X__XX___,
+ X___X___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 118)
+
+ /* inverted exclamation, 118 */
+ ,
+ {__X_____,
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 119)
+
+ /* inverted question mark, 119 */
+ ,
+ {__X_____,
+ ________,
+ __X_____,
+ _X______,
+ X_______,
+ X___X___,
+ _XXX____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 120)
+
+ /* capital accent ague, 120 */
+ ,
+ {___XX___,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 121)
+
+ /* capital accent grave, 121 */
+ ,
+ {XX______,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 122)
+
+ /* capital accent circonflex, 122 */
+ ,
+ {__X_____,
+ _X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 123)
+
+ /* capital umlaut, 123 */
+ ,
+ {_X_X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 124)
+
+ /* capital tilde, 124 */
+ ,
+ {_XX_X___,
+ X__X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 125)
+
+ /* cedilla, 125 */
+ ,
+ {________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____}
+
+#endif
+
+/* additional characters for complete ISO 8859-1 character set */
+
+#if (GUI_NOFCHARS > 126)
+ /* Non breaking space, ISO-Code: 160, internal code: 126 */
+ ,
+ {________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 127)
+ /* cent sign, ISO-Code: 162, internal code: 127 */
+ ,
+ {________,
+ __X_____,
+ _XXX____,
+ X_X_____,
+ X_X_____,
+ X_X_X___,
+ _XXX____,
+ __X_____}
+
+#endif
+#if (GUI_NOFCHARS > 128)
+ /* pound sterling, ISO-Code: 163, internal code: 128 */
+ ,
+ {__XX____,
+ _X______,
+ _X______,
+ XXX_____,
+ _X______,
+ _X__X___,
+ X_XX____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 129)
+ /* general currency sign, ISO-Code: 164, internal code: 129 */
+ ,
+ {________,
+ ________,
+ X___X___,
+ _XXX____,
+ _X_X____,
+ _XXX____,
+ X___X___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 130)
+ /* yen sign, ISO-Code: 165, internal code: 130 */
+ ,
+ {X___X___,
+ _X_X____,
+ XXXXX___,
+ __X_____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 131)
+ /* broken vertical bar, ISO-Code: 166, internal code: 131 */
+ ,
+ {__X_____,
+ __X_____,
+ __X_____,
+ ________,
+ __X_____,
+ __X_____,
+ __X_____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 132)
+ /* section sign, ISO-Code: 167, internal code: 132 */
+ ,
+ {__XX____,
+ _X__X___,
+ __X_____,
+ _X_X____,
+ __X_____,
+ X__X____,
+ _XX_____,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 133)
+ /* umlaut (dieresis), ISO-Code: 168, internal code: 133 */
+ ,
+ {X___X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 134)
+ /* copyright, ISO-Code: 169, internal code: 134 */
+ ,
+ {XXXXX___,
+ X___X___,
+ X_X_X___,
+ X_XXX___,
+ X_X_X___,
+ X___X___,
+ XXXXX___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 135)
+ /* feminine ordinal, ISO-Code: 170, internal code: 135 */
+ ,
+ {_XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 136)
+ /* left angle quote, ISO-Code: 171, internal code: 136 */
+ ,
+ {________,
+ __X_X___,
+ _X_X____,
+ X_X_____,
+ _X_X____,
+ __X_X___,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 137)
+ /* not sign, ISO-Code: 172, internal code: 137 */
+ ,
+ {________,
+ ________,
+ ________,
+ XXXXX___,
+ ____X___,
+ ____X___,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 138)
+ /* soft hyphen, ISO-Code: 173, internal code: 138 */
+ ,
+ {________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 139)
+ /* rgistered trademark, ISO-Code: 174, internal code: 139 */
+ ,
+ {XXXXX___,
+ X___X___,
+ X_X_X___,
+ X___X___,
+ X__XX___,
+ X_X_X___,
+ XXXXX___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 140)
+ /* macron accent, ISO-Code: 175, internal code: 140 */
+ ,
+ {XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 141)
+ /* degree sign, ISO-Code: 176, internal code: 141 */
+ ,
+ {__X_____,
+ _X_X____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 142)
+ /* plus or minus, ISO-Code: 177, internal code: 142 */
+ ,
+ {________,
+ __X_____,
+ _XXX____,
+ __X_____,
+ ________,
+ _XXX____,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 143)
+ /* superscript two, ISO-Code: 178, internal code: 143 */
+ ,
+ {_XX_____,
+ X__X____,
+ __X_____,
+ _X______,
+ XXXX____,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 144)
+ /* superscript three, ISO-Code: 179, internal code: 144 */
+ ,
+ {XXX_____,
+ ___X____,
+ _XX_____,
+ ___X____,
+ XXX_____,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 145)
+ /* acute accent, ISO-Code: 180, internal code: 145 */
+ ,
+ {___XX___,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 146)
+ /* micro sign, ISO-Code: 181, internal code: 146 */
+ ,
+ {________,
+ ________,
+ X___X___,
+ X___X___,
+ X___X___,
+ XX__X___,
+ X_XX____,
+ X_______}
+
+#endif
+#if (GUI_NOFCHARS > 147)
+ /* paragraph sign, ISO-Code: 182, internal code: 147 */
+ ,
+ {_XXXX___,
+ X__XX___,
+ X__XX___,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 148)
+ /* middle dot, ISO-Code: 183, internal code: 148 */
+ ,
+ {________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 149)
+ /* superscript one, ISO-Code: 185, internal code: 149 */
+ ,
+ {_X______,
+ XX______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 150)
+ /* masculine ordinal, ISO-Code: 186, internal code: 150 */
+ ,
+ {_XXX____,
+ X___X___,
+ X___X___,
+ X___X___,
+ _XXX____,
+ ________,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 151)
+ /* right angle quote, ISO-Code: 187, internal code: 151 */
+ ,
+ {________,
+ X_X_____,
+ _X_X____,
+ __X_X___,
+ _X_X____,
+ X_X_____,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 152)
+ /* fraction one-fourth, ISO-Code: 188, internal code: 152 */
+ ,
+ {X___X___,
+ X__X____,
+ X_X_____,
+ _X_X____,
+ X_XX____,
+ _X_X____,
+ _XXXX___,
+ ___X____}
+
+#endif
+#if (GUI_NOFCHARS > 153)
+ /* fraction one-half, ISO-Code: 189, internal code: 153 */
+ ,
+ {X___X___,
+ X__X____,
+ X_X_____,
+ _X______,
+ X_XXX___,
+ ____X___,
+ ___X____,
+ __XXX___}
+
+#endif
+#if (GUI_NOFCHARS > 154)
+ /* fraction three-fourth, ISO-Code: 190, internal code: 154 */
+ ,
+ {XX______,
+ _X______,
+ XX______,
+ _X__X___,
+ XX_XX___,
+ __X_X___,
+ __XXX___,
+ ____X___}
+
+#endif
+#if (GUI_NOFCHARS > 155)
+ /* multiply sign, ISO-Code: 215, internal code: 155 */
+ ,
+ {________,
+ X___X___,
+ _X_X____,
+ __X_____,
+ _X_X____,
+ X___X___,
+ ________,
+ ________}
+
+#endif
+#if (GUI_NOFCHARS > 156)
+ /* division sign, ISO-Code: 247, internal code: 156 */
+ ,
+ {________,
+ __X_____,
+ ________,
+ XXXXX___,
+ ________,
+ __X_____,
+ ________,
+ ________}
+
+#endif
+
+#if (GUI_NOFCHARS > 157)
+ /* left arrow, ISO-Code: ---, internal code: 157 */
+ ,
+ {___X____,
+ __XX____,
+ _XXX____,
+ XXXXXX__,
+ _XXX____,
+ __XX____,
+ ___X____,
+ ________}
+#endif
+
+#if (GUI_NOFCHARS > 158)
+ /* right arrow, ISO-Code: ---, internal code: 158 */
+ ,
+ {__X_____,
+ __XX____,
+ __XXX___,
+ XXXXXX__,
+ __XXX___,
+ __XX____,
+ __X_____,
+ ________}
+#endif
+
+#if (GUI_NOFCHARS > 159)
+ /* up arrow, ISO-Code: ---, internal code: 159 */
+ ,
+ {________,
+ __X_____,
+ _XXX____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ ________,
+ ________}
+#endif
+
+#if (GUI_NOFCHARS > 160)
+ /* down arrow, ISO-Code: ---, internal code: 160 */
+ ,
+ {________,
+ __X_____,
+ __X_____,
+ XXXXX___,
+ _XXX____,
+ __X_____,
+ ________,
+ ________}
+#endif
+
+#if (GUI_NOFCHARS > 161)
+ /* ENTER character, ISO-Code: ---, internal code: 161 */
+ ,
+ {________,
+ ____X___,
+ __X_X___,
+ _XX_X___,
+ XXXXX___,
+ _XX_____,
+ __X_____,
+ ________}
+#endif
+
+#if (GUI_NOFCHARS > 162)
+ /* ENTER character, ISO-Code: ---, internal code: 162 */
+ ,
+ {________,
+ _____X__,
+ _____X__,
+ ____X___,
+ ____X___,
+ X__X____,
+ _X_X____,
+ __X_____}
+#endif
+
+};
+
+GUI_CONST_STORAGE GUI_FONT_TRANSLIST GUI_F6x8_TL8859_1[112] = {
+ /*
+ The folowing are extensions to ISO 8859-1.
+ Since ISO 8859-1 does not define any characters for the codes
+ 128 - 159, this area can be used by an application.
+ The most commonly used symbols in embedded applications are
+ therefor inserted here.
+ */
+ {CODE_ARROW_LEFT, -1}, /* 144, arrow left */
+ {CODE_ARROW_RIGHT, -1}, /* 145, arrow right */
+ {CODE_ARROW_UP, -1}, /* 146, arrow up */
+ {CODE_ARROW_DOWN, -1}, /* 147, arrow down */
+ {CODE_ENTER, -1}, /* 148, enter symbol */
+ {CODE_CHECKMARK, -1}, /* 149, checkmark symbol */
+ {-1, -1}, /* 150, unused symbol */
+ {-1, -1}, /* 151, unused symbol */
+ {-1, -1}, /* 152, unused symbol */
+ {-1, -1}, /* 153, unused symbol */
+ {-1, -1}, /* 154, unused symbol */
+ {-1, -1}, /* 155, unused symbol */
+ {-1, -1}, /* 156, unused symbol */
+ {-1, -1}, /* 157, unused symbol */
+ {-1, -1}, /* 158, unused symbol */
+ {-1, -1}, /* 159, unused symbol */
+ /* starting at character code 160 are the characters defined
+ by ISO 8859-1
+ */
+ {CODE_NB_SPACE, -1}, /* 160, non-breaking space */
+ {CODE_INVEXCLAM, -1}, /* 161, inverted exclamation sign */
+ {CODE_CENT, -1}, /* 162, cent sign */
+ {CODE_POUND, -1}, /* 163, pound sterling */
+ {CODE_CURRENCY, -1}, /* 164, general currency sign */
+ {CODE_YEN, -1}, /* 165, yen sign */
+ {CODE_BROKEN_BAR, -1}, /* 166, broken vertical bar */
+ {CODE_SECTION, -1}, /* 167, section sign */
+ {CODE_DIERESIS, -1}, /* 168, umlaut */
+ {CODE_COPYRIGHT, -1}, /* 169, copyright */
+ {CODE_FEMININE, -1}, /* 170, */
+ {CODE_LEFT_QUOTE, -1}, /* 171, */
+ {CODE_NOT, -1}, /* 172, */
+ {CODE_HYPHEN, -1}, /* 173, */
+ {CODE_TRADEMARK, -1}, /* 174, */
+ {CODE_MACRON, -1}, /* 175, */
+ {CODE_DEGREE, -1}, /* 176, */
+ {CODE_PLUS_MINUS, -1}, /* 177, */
+ {CODE_SUPER_TWO, -1}, /* 178, */
+ {CODE_SUPER_THREE, -1}, /* 179, */
+ {CODE_ACUTE, -1}, /* 180, */
+ {CODE_MICRO, -1}, /* 181, */
+ {CODE_PARAGRAPH, -1}, /* 182, */
+ {CODE_MIDDLE_DOT, -1}, /* 183, */
+ {CODE_CEDILLA, -1}, /* 184, */
+ {CODE_SUPER_ONE, -1}, /* 185, */
+ {CODE_MASCULINE, -1}, /* 186, */
+ {CODE_RIGHT_QUOTE, -1}, /* 187, */
+ {CODE_ONE_FOURTH, -1}, /* 188, */
+ {CODE_ONE_HALF, -1}, /* 189, */
+ {CODE_THREE_FOURTH, -1}, /* 190, */
+ {CODE_INVQUEST, -1}, /* 191, */
+ {CODE_LITTLE_A, CODE_CACCGRAV}, /* 192, */
+ {CODE_LITTLE_A, CODE_CACCAGUE}, /* 193, */
+ {CODE_LITTLE_A, CODE_CACCCIRC}, /* 194, */
+ {CODE_LITTLE_A, CODE_CTILDE}, /* 195, */
+ {CODE_LITTLE_A, CODE_CUMLAUT}, /* 196, */
+ {CODE_A_RING, -1}, /* 197, */
+ {CODE_AE, -1}, /* 198, */
+ {'C' - 32, CODE_CEDILLA}, /* 199, */
+ {CODE_LITTLE_E, CODE_CACCGRAV}, /* 200, */
+ {CODE_LITTLE_E, CODE_CACCAGUE}, /* 201, */
+ {CODE_LITTLE_E, CODE_CACCCIRC}, /* 202, */
+ {CODE_LITTLE_E, CODE_CUMLAUT}, /* 203, */
+ {CODE_LITTLE_I, CODE_CACCGRAV}, /* 204, */
+ {CODE_LITTLE_I, CODE_CACCAGUE}, /* 205, */
+ {CODE_LITTLE_I, CODE_CACCCIRC}, /* 206, */
+ {CODE_LITTLE_I, CODE_CUMLAUT}, /* 207, */
+ {CODE_ETH, -1}, /* 208, */
+ {CODE_LITTLE_N, CODE_CTILDE}, /* 209, */
+ {CODE_LITTLE_O, CODE_CACCGRAV}, /* 210, */
+ {CODE_LITTLE_O, CODE_CACCAGUE}, /* 211, */
+ {CODE_LITTLE_O, CODE_CACCCIRC}, /* 212, */
+ {CODE_LITTLE_O, CODE_CTILDE}, /* 213, */
+ {CODE_LITTLE_O, CODE_CUMLAUT}, /* 214, */
+ {CODE_MULTIPLY, -1}, /* 215, */
+ {CODE_OSLASH, -1}, /* 216, */
+ {CODE_LITTLE_U, CODE_CACCGRAV}, /* 217, */
+ {CODE_LITTLE_U, CODE_CACCAGUE}, /* 218, */
+ {CODE_LITTLE_U, CODE_CACCCIRC}, /* 219, */
+ {CODE_LITTLE_U, CODE_CUMLAUT}, /* 220, */
+ {'Y' - 32, CODE_CACCAGUE}, /* 221, */
+ {CODE_THORN, -1}, /* 222, */
+ {CODE_SHARPS, -1}, /* 223, */
+ {'a' - 32, CODE_SACCGRAV}, /* 224, */
+ {'a' - 32, CODE_SACCAGUE}, /* 225, */
+ {'a' - 32, CODE_SACCCIRC}, /* 226, */
+ {'a' - 32, CODE_STILDE}, /* 227, */
+ {'a' - 32, CODE_SUMLAUT}, /* 228, */
+ {CODE_SA_RING, -1}, /* 229, */
+ {CODE_SMALLAE, -1}, /* 230, */
+ {'c' - 32, CODE_CEDILLA}, /* 231, */
+ {'e' - 32, CODE_SACCGRAV}, /* 232, */
+ {'e' - 32, CODE_SACCAGUE}, /* 233, */
+ {'e' - 32, CODE_SACCCIRC}, /* 234, */
+ {'e' - 32, CODE_SUMLAUT}, /* 235, */
+ {CODE_I_NOPOINT, CODE_SACCGRAV}, /* 236, */
+ {CODE_I_NOPOINT, CODE_SACCAGUE}, /* 237, */
+ {CODE_I_NOPOINT, CODE_SACCCIRC}, /* 238, */
+ {CODE_I_NOPOINT, CODE_SUMLAUT}, /* 239, */
+ {CODE_SMALLETH, -1}, /* 240, small eth, Icelandic */
+ {'n' - 32, CODE_STILDE}, /* 241, small n, tilde */
+ {'o' - 32, CODE_SACCGRAV}, /* 242, small o, grave accent */
+ {'o' - 32, CODE_SACCAGUE}, /* 243, small o, acute accent */
+ {'o' - 32, CODE_SACCCIRC}, /* 244, small o, circumflex */
+ {'o' - 32, CODE_STILDE}, /* 245, small o, tilde */
+ {'o' - 32, CODE_SUMLAUT}, /* 246, small o, umlaut */
+ {CODE_DIVISION, -1}, /* 247, division sign */
+ {CODE_SOSLASH, -1}, /* 248, small o slash */
+ {'u' - 32, CODE_SACCAGUE}, /* 249, */
+ {'u' - 32, CODE_SACCGRAV}, /* 250, */
+ {'u' - 32, CODE_SACCCIRC}, /* 251, */
+ {'u' - 32, CODE_SUMLAUT}, /* 252, small u, umlaut */
+ {'y' - 32, CODE_SACCAGUE}, /* 253, small y, acute accent */
+ {CODE_SMALLTHORN, -1}, /* 254, small thorn, Icelandic */
+ {'y' - 32, CODE_SUMLAUT}, /* 255, */
+};
+
+GUI_CONST_STORAGE GUI_FONT_TRANSINFO GUI_F6x8_TI8859_1 = {
+ 144, /* First character for translation */
+ 255, /* Last character for translation */
+ &GUI_F6x8_TL8859_1[0]};
+
+GUI_CONST_STORAGE GUI_FONT_MONO GUI_F6x8_Mono = {
+ GUI_acFont6x8[0],
+ GUI_acFont6x8[0],
+ &GUI_F6x8_TI8859_1,
+ 32, 126, 6, 6, 1};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font6x8 = {GUI_FONTTYPE_MONO, 8, 8, 1, 1, {&GUI_F6x8_Mono}, 7, 5, 7};
+GUI_CONST_STORAGE GUI_FONT GUI_Font6x9 = {GUI_FONTTYPE_MONO, 8, 9, 1, 1, {&GUI_F6x8_Mono}, 7, 5, 7};
diff --git a/User/lib/lcd/gui/Font/F8x10_ASCII.c b/User/lib/lcd/gui/Font/F8x10_ASCII.c
new file mode 100644
index 0000000..85e21df
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F8x10_ASCII.c
@@ -0,0 +1,1290 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F8x10_ASCII.C
+Purpose : Monospaced Font similar to Terminal
+Height : 10
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0020[10] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0021[10] = { /* code 0021 */
+ __XX____,
+ _XXXX___,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0022[10] = { /* code 0022 */
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __X__X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0023[10] = { /* code 0023 */
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ _XX_XX__,
+ _XX_XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0024[10] = { /* code 0024 */
+ __XX____,
+ _XXXXX__,
+ XX______,
+ XX______,
+ _XXXX___,
+ ____XX__,
+ ____XX__,
+ XXXXX___,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0025[10] = { /* code 0025 */
+ ________,
+ ________,
+ XX___X__,
+ XX__XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX__XX__,
+ X___XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0026[10] = { /* code 0026 */
+ _XXX____,
+ XX_XX___,
+ XX_XX___,
+ _XXX____,
+ XXXXX_X_,
+ XX_XXXX_,
+ XX__XX__,
+ XX_XXX__,
+ _XXX_XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0027[10] = { /* code 0027 */
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0028[10] = { /* code 0028 */
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0029[10] = { /* code 0029 */
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_002A[10] = { /* code 002A */
+ ________,
+ ________,
+ _XX__XX_,
+ __XXXX__,
+ XXXXXXXX,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_002B[10] = { /* code 002B */
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_002C[10] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_002D[10] = { /* code 002D */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_002E[10] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_002F[10] = { /* code 002F */
+ ________,
+ ______X_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ X_______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0030[10] = { /* code 0030 */
+ _XXXXX__,
+ XX___XX_,
+ XX__XXX_,
+ XX_XXXX_,
+ XX_X_XX_,
+ XXXX_XX_,
+ XXX__XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0031[10] = { /* code 0031 */
+ ___X____,
+ __XX____,
+ XXXX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXXXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0032[10] = { /* code 0032 */
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX__XX__,
+ XXXXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0033[10] = { /* code 0033 */
+ _XXXX___,
+ XX__XX__,
+ ____XX__,
+ ____XX__,
+ __XXX___,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0034[10] = { /* code 0034 */
+ ____XX__,
+ ___XXX__,
+ __XXXX__,
+ _XX_XX__,
+ XX__XX__,
+ XXXXXXX_,
+ ____XX__,
+ ____XX__,
+ ___XXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0035[10] = { /* code 0035 */
+ XXXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0036[10] = { /* code 0036 */
+ __XXX___,
+ _XX_____,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0037[10] = { /* code 0037 */
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0038[10] = { /* code 0038 */
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XXX_XX__,
+ _XXXX___,
+ XX_XXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0039[10] = { /* code 0039 */
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ _XXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_003A[10] = { /* code 003A */
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_003B[10] = { /* code 003B */
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ___XX___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_003C[10] = { /* code 003C */
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_003D[10] = { /* code 003D */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_003E[10] = { /* code 003E */
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_003F[10] = { /* code 003F */
+ _XXXX___,
+ XX__XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0040[10] = { /* code 0040 */
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX_XXXX_,
+ XX_XXXX_,
+ XX_XXXX_,
+ XX______,
+ XX______,
+ _XXXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0041[10] = { /* code 0041 */
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0042[10] = { /* code 0042 */
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XXXXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0043[10] = { /* code 0043 */
+ __XXXX__,
+ _XX__XX_,
+ XX___XX_,
+ XX______,
+ XX______,
+ XX______,
+ XX___XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0044[10] = { /* code 0044 */
+ XXXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ XXXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0045[10] = { /* code 0045 */
+ XXXXXXX_,
+ _XX___X_,
+ _XX_____,
+ _XX__X__,
+ _XXXXX__,
+ _XX__X__,
+ _XX_____,
+ _XX___X_,
+ XXXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0046[10] = { /* code 0046 */
+ XXXXXXX_,
+ _XX__XX_,
+ _XX___X_,
+ _XX__X__,
+ _XXXXX__,
+ _XX__X__,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0047[10] = { /* code 0047 */
+ __XXXX__,
+ _XX__XX_,
+ XX___XX_,
+ XX______,
+ XX______,
+ XX__XXX_,
+ XX___XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0048[10] = { /* code 0048 */
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0049[10] = { /* code 0049 */
+ _XXXX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_004A[10] = { /* code 004A */
+ ___XXXX_,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_004B[10] = { /* code 004B */
+ XXX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XXXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX__XX_,
+ XXX__XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_004C[10] = { /* code 004C */
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX___X_,
+ _XX__XX_,
+ _XX__XX_,
+ XXXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_004D[10] = { /* code 004D */
+ XX___XX_,
+ XXX_XXX_,
+ XXXXXXX_,
+ XXXXXXX_,
+ XX_X_XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_004E[10] = { /* code 004E */
+ XX___XX_,
+ XX___XX_,
+ XXX__XX_,
+ XXXX_XX_,
+ XXXXXXX_,
+ XX_XXXX_,
+ XX__XXX_,
+ XX___XX_,
+ XX___XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_004F[10] = { /* code 004F */
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0050[10] = { /* code 0050 */
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0051[10] = { /* code 0051 */
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ XX_XXXX_,
+ _XXXXX__,
+ ____XX__,
+ ___XXXX_};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0052[10] = { /* code 0052 */
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ XXX__XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0053[10] = { /* code 0053 */
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX______,
+ _XXX____,
+ ___XX___,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0054[10] = { /* code 0054 */
+ XXXXXX__,
+ X_XX_X__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0055[10] = { /* code 0055 */
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0056[10] = { /* code 0056 */
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0057[10] = { /* code 0057 */
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0058[10] = { /* code 0058 */
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0059[10] = { /* code 0059 */
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_005A[10] = { /* code 005A */
+ XXXXXXX_,
+ XX__XXX_,
+ X__XX___,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ _XX___X_,
+ XX___XX_,
+ XXXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_005B[10] = { /* code 005B */
+ __XXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_005C[10] = { /* code 005C */
+ ________,
+ X_______,
+ XX______,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ______X_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_005D[10] = { /* code 005D */
+ __XXXX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ __XXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_005E[10] = { /* code 005E */
+ ___X____,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_005F[10] = { /* code 005F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0060[10] = { /* code 0060 */
+ __XX____,
+ __XX____,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0061[10] = { /* code 0061 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0062[10] = { /* code 0062 */
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XX_XXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0063[10] = { /* code 0063 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX______,
+ XX______,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0064[10] = { /* code 0064 */
+ ___XXX__,
+ ____XX__,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0065[10] = { /* code 0065 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XXXXXX__,
+ XX______,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0066[10] = { /* code 0066 */
+ __XXX___,
+ _XX_XX__,
+ _XX_____,
+ _XX_____,
+ XXXXX___,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0067[10] = { /* code 0067 */
+ ________,
+ ________,
+ _XXX_XX_,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0068[10] = { /* code 0068 */
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XX_XX__,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XXX__XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0069[10] = { /* code 0069 */
+ ___XX___,
+ ___XX___,
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_006A[10] = { /* code 006A */
+ ____XX__,
+ ________,
+ __XXXX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_006B[10] = { /* code 006B */
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ _XX_XX__,
+ _XXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ XXX__XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_006C[10] = { /* code 006C */
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_006D[10] = { /* code 006D */
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX___XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_006E[10] = { /* code 006E */
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_006F[10] = { /* code 006F */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0070[10] = { /* code 0070 */
+ ________,
+ ________,
+ XX_XXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0071[10] = { /* code 0071 */
+ ________,
+ ________,
+ _XXX_XX_,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ ___XXXX_};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0072[10] = { /* code 0072 */
+ ________,
+ ________,
+ ________,
+ XXX_XX__,
+ _XX_XXX_,
+ _XXX_XX_,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0073[10] = { /* code 0073 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ _XX_____,
+ ___XX___,
+ XX__XX__,
+ _XXXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0074[10] = { /* code 0074 */
+ ________,
+ __X_____,
+ _XX_____,
+ XXXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_XX__,
+ __XXX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0075[10] = { /* code 0075 */
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0076[10] = { /* code 0076 */
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0077[10] = { /* code 0077 */
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ _XX_XX__,
+ _XX_XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0078[10] = { /* code 0078 */
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_0079[10] = { /* code 0079 */
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ____XX__,
+ ___XX___,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_007A[10] = { /* code 007A */
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ X___XX__,
+ ___XX___,
+ _XX_____,
+ XX___X__,
+ XXXXXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_007B[10] = { /* code 007B */
+ ___XXX__,
+ __XX____,
+ __XX____,
+ _XX_____,
+ XX______,
+ _XX_____,
+ __XX____,
+ __XX____,
+ ___XXX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_007C[10] = { /* code 007C */
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_007D[10] = { /* code 007D */
+ XXX_____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ XXX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_007E[10] = { /* code 007E */
+ _XXX__XX,
+ XX_XX_X_,
+ XX__XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x10ASCII_007F[10] = { /* code 007F */
+ ________,
+ ________,
+ ___X____,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font8x10ASCII_CharInfo[96] = {
+ { 8, 8, 1, acFont8x10ASCII_0020 } /* code 0020 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0021 } /* code 0021 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0022 } /* code 0022 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0023 } /* code 0023 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0024 } /* code 0024 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0025 } /* code 0025 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0026 } /* code 0026 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0027 } /* code 0027 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0028 } /* code 0028 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0029 } /* code 0029 */
+ ,{ 8, 8, 1, acFont8x10ASCII_002A } /* code 002A */
+ ,{ 8, 8, 1, acFont8x10ASCII_002B } /* code 002B */
+ ,{ 8, 8, 1, acFont8x10ASCII_002C } /* code 002C */
+ ,{ 8, 8, 1, acFont8x10ASCII_002D } /* code 002D */
+ ,{ 8, 8, 1, acFont8x10ASCII_002E } /* code 002E */
+ ,{ 8, 8, 1, acFont8x10ASCII_002F } /* code 002F */
+ ,{ 8, 8, 1, acFont8x10ASCII_0030 } /* code 0030 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0031 } /* code 0031 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0032 } /* code 0032 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0033 } /* code 0033 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0034 } /* code 0034 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0035 } /* code 0035 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0036 } /* code 0036 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0037 } /* code 0037 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0038 } /* code 0038 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0039 } /* code 0039 */
+ ,{ 8, 8, 1, acFont8x10ASCII_003A } /* code 003A */
+ ,{ 8, 8, 1, acFont8x10ASCII_003B } /* code 003B */
+ ,{ 8, 8, 1, acFont8x10ASCII_003C } /* code 003C */
+ ,{ 8, 8, 1, acFont8x10ASCII_003D } /* code 003D */
+ ,{ 8, 8, 1, acFont8x10ASCII_003E } /* code 003E */
+ ,{ 8, 8, 1, acFont8x10ASCII_003F } /* code 003F */
+ ,{ 8, 8, 1, acFont8x10ASCII_0040 } /* code 0040 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0041 } /* code 0041 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0042 } /* code 0042 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0043 } /* code 0043 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0044 } /* code 0044 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0045 } /* code 0045 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0046 } /* code 0046 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0047 } /* code 0047 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0048 } /* code 0048 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0049 } /* code 0049 */
+ ,{ 8, 8, 1, acFont8x10ASCII_004A } /* code 004A */
+ ,{ 8, 8, 1, acFont8x10ASCII_004B } /* code 004B */
+ ,{ 8, 8, 1, acFont8x10ASCII_004C } /* code 004C */
+ ,{ 8, 8, 1, acFont8x10ASCII_004D } /* code 004D */
+ ,{ 8, 8, 1, acFont8x10ASCII_004E } /* code 004E */
+ ,{ 8, 8, 1, acFont8x10ASCII_004F } /* code 004F */
+ ,{ 8, 8, 1, acFont8x10ASCII_0050 } /* code 0050 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0051 } /* code 0051 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0052 } /* code 0052 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0053 } /* code 0053 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0054 } /* code 0054 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0055 } /* code 0055 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0056 } /* code 0056 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0057 } /* code 0057 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0058 } /* code 0058 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0059 } /* code 0059 */
+ ,{ 8, 8, 1, acFont8x10ASCII_005A } /* code 005A */
+ ,{ 8, 8, 1, acFont8x10ASCII_005B } /* code 005B */
+ ,{ 8, 8, 1, acFont8x10ASCII_005C } /* code 005C */
+ ,{ 8, 8, 1, acFont8x10ASCII_005D } /* code 005D */
+ ,{ 8, 8, 1, acFont8x10ASCII_005E } /* code 005E */
+ ,{ 8, 8, 1, acFont8x10ASCII_005F } /* code 005F */
+ ,{ 8, 8, 1, acFont8x10ASCII_0060 } /* code 0060 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0061 } /* code 0061 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0062 } /* code 0062 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0063 } /* code 0063 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0064 } /* code 0064 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0065 } /* code 0065 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0066 } /* code 0066 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0067 } /* code 0067 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0068 } /* code 0068 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0069 } /* code 0069 */
+ ,{ 8, 8, 1, acFont8x10ASCII_006A } /* code 006A */
+ ,{ 8, 8, 1, acFont8x10ASCII_006B } /* code 006B */
+ ,{ 8, 8, 1, acFont8x10ASCII_006C } /* code 006C */
+ ,{ 8, 8, 1, acFont8x10ASCII_006D } /* code 006D */
+ ,{ 8, 8, 1, acFont8x10ASCII_006E } /* code 006E */
+ ,{ 8, 8, 1, acFont8x10ASCII_006F } /* code 006F */
+ ,{ 8, 8, 1, acFont8x10ASCII_0070 } /* code 0070 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0071 } /* code 0071 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0072 } /* code 0072 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0073 } /* code 0073 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0074 } /* code 0074 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0075 } /* code 0075 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0076 } /* code 0076 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0077 } /* code 0077 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0078 } /* code 0078 */
+ ,{ 8, 8, 1, acFont8x10ASCII_0079 } /* code 0079 */
+ ,{ 8, 8, 1, acFont8x10ASCII_007A } /* code 007A */
+ ,{ 8, 8, 1, acFont8x10ASCII_007B } /* code 007B */
+ ,{ 8, 8, 1, acFont8x10ASCII_007C } /* code 007C */
+ ,{ 8, 8, 1, acFont8x10ASCII_007D } /* code 007D */
+ ,{ 8, 8, 1, acFont8x10ASCII_007E } /* code 007E */
+ ,{ 8, 8, 1, acFont8x10ASCII_007F } /* code 007F */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font8x10ASCII_Prop1 = {
+ 32 /* first character */
+ ,127 /* last character */
+ ,&GUI_Font8x10ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x10_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,10 /* height of font */
+ ,10 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font8x10ASCII_Prop1}
+ ,9, 6, 9
+};
+
diff --git a/User/lib/lcd/gui/Font/F8x12_ASCII.c b/User/lib/lcd/gui/Font/F8x12_ASCII.c
new file mode 100644
index 0000000..15b265f
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F8x12_ASCII.c
@@ -0,0 +1,1482 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F8x12_ASCII.C
+Purpose : Monospaced Font similar to Terminal
+Height : 12
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0020[12] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0021[12] = { /* code 0021 */
+ ________,
+ __XX____,
+ _XXXX___,
+ _XXXX___,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0022[12] = { /* code 0022 */
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __X__X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0023[12] = { /* code 0023 */
+ ________,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0024[12] = { /* code 0024 */
+ __XX____,
+ __XX____,
+ _XXXXX__,
+ XX______,
+ XX______,
+ _XXXX___,
+ ____XX__,
+ ____XX__,
+ XXXXX___,
+ __XX____,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0025[12] = { /* code 0025 */
+ ________,
+ ________,
+ ________,
+ XX___X__,
+ XX__XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX__XX__,
+ X___XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0026[12] = { /* code 0026 */
+ ________,
+ _XXX____,
+ XX_XX___,
+ XX_XX___,
+ _XXX____,
+ XXXXX_X_,
+ XX_XXXX_,
+ XX__XX__,
+ XX_XXX__,
+ _XXX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0027[12] = { /* code 0027 */
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0028[12] = { /* code 0028 */
+ ________,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0029[12] = { /* code 0029 */
+ ________,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_002A[12] = { /* code 002A */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ __XXXX__,
+ XXXXXXXX,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_002B[12] = { /* code 002B */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_002C[12] = { /* code 002C */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ _XX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_002D[12] = { /* code 002D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_002E[12] = { /* code 002E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_002F[12] = { /* code 002F */
+ ________,
+ ________,
+ ______X_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0030[12] = { /* code 0030 */
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX__XXX_,
+ XX_XXXX_,
+ XX_X_XX_,
+ XXXX_XX_,
+ XXX__XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0031[12] = { /* code 0031 */
+ ________,
+ ___X____,
+ __XX____,
+ XXXX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0032[12] = { /* code 0032 */
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX__XX__,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0033[12] = { /* code 0033 */
+ ________,
+ _XXXX___,
+ XX__XX__,
+ ____XX__,
+ ____XX__,
+ __XXX___,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0034[12] = { /* code 0034 */
+ ________,
+ ____XX__,
+ ___XXX__,
+ __XXXX__,
+ _XX_XX__,
+ XX__XX__,
+ XXXXXXX_,
+ ____XX__,
+ ____XX__,
+ ___XXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0035[12] = { /* code 0035 */
+ ________,
+ XXXXXX__,
+ XX______,
+ XX______,
+ XX______,
+ XXXXX___,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0036[12] = { /* code 0036 */
+ ________,
+ __XXX___,
+ _XX_____,
+ XX______,
+ XX______,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0037[12] = { /* code 0037 */
+ ________,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0038[12] = { /* code 0038 */
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XXX_XX__,
+ _XXXX___,
+ XX_XXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0039[12] = { /* code 0039 */
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_003A[12] = { /* code 003A */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_003B[12] = { /* code 003B */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ___XX___,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_003C[12] = { /* code 003C */
+ ________,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_003D[12] = { /* code 003D */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_003E[12] = { /* code 003E */
+ ________,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_003F[12] = { /* code 003F */
+ ________,
+ _XXXX___,
+ XX__XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0040[12] = { /* code 0040 */
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX_XXXX_,
+ XX_XXXX_,
+ XX_XXXX_,
+ XX______,
+ XX______,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0041[12] = { /* code 0041 */
+ ________,
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0042[12] = { /* code 0042 */
+ ________,
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0043[12] = { /* code 0043 */
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ XX___XX_,
+ XX______,
+ XX______,
+ XX______,
+ XX___XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0044[12] = { /* code 0044 */
+ ________,
+ XXXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ XXXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0045[12] = { /* code 0045 */
+ ________,
+ XXXXXXX_,
+ _XX___X_,
+ _XX_____,
+ _XX__X__,
+ _XXXXX__,
+ _XX__X__,
+ _XX_____,
+ _XX___X_,
+ XXXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0046[12] = { /* code 0046 */
+ ________,
+ XXXXXXX_,
+ _XX__XX_,
+ _XX___X_,
+ _XX__X__,
+ _XXXXX__,
+ _XX__X__,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0047[12] = { /* code 0047 */
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ XX___XX_,
+ XX______,
+ XX______,
+ XX__XXX_,
+ XX___XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0048[12] = { /* code 0048 */
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0049[12] = { /* code 0049 */
+ ________,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_004A[12] = { /* code 004A */
+ ________,
+ ___XXXX_,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_004B[12] = { /* code 004B */
+ ________,
+ XXX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XXXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX__XX_,
+ XXX__XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_004C[12] = { /* code 004C */
+ ________,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX___X_,
+ _XX__XX_,
+ _XX__XX_,
+ XXXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_004D[12] = { /* code 004D */
+ ________,
+ XX___XX_,
+ XXX_XXX_,
+ XXXXXXX_,
+ XXXXXXX_,
+ XX_X_XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_004E[12] = { /* code 004E */
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XXX__XX_,
+ XXXX_XX_,
+ XXXXXXX_,
+ XX_XXXX_,
+ XX__XXX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_004F[12] = { /* code 004F */
+ ________,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0050[12] = { /* code 0050 */
+ ________,
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0051[12] = { /* code 0051 */
+ ________,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ XX_XXXX_,
+ _XXXXX__,
+ ____XX__,
+ ___XXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0052[12] = { /* code 0052 */
+ ________,
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ XXX__XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0053[12] = { /* code 0053 */
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX______,
+ _XXX____,
+ ___XX___,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0054[12] = { /* code 0054 */
+ ________,
+ XXXXXX__,
+ X_XX_X__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0055[12] = { /* code 0055 */
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0056[12] = { /* code 0056 */
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0057[12] = { /* code 0057 */
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0058[12] = { /* code 0058 */
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0059[12] = { /* code 0059 */
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_005A[12] = { /* code 005A */
+ ________,
+ XXXXXXX_,
+ XX__XXX_,
+ X__XX___,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ _XX___X_,
+ XX___XX_,
+ XXXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_005B[12] = { /* code 005B */
+ ________,
+ __XXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_005C[12] = { /* code 005C */
+ ________,
+ ________,
+ X_______,
+ XX______,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ______X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_005D[12] = { /* code 005D */
+ ________,
+ __XXXX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ __XXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_005E[12] = { /* code 005E */
+ ___X____,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_005F[12] = { /* code 005F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0060[12] = { /* code 0060 */
+ __XX____,
+ __XX____,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0061[12] = { /* code 0061 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0062[12] = { /* code 0062 */
+ ________,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XX_XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0063[12] = { /* code 0063 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX______,
+ XX______,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0064[12] = { /* code 0064 */
+ ________,
+ ___XXX__,
+ ____XX__,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0065[12] = { /* code 0065 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XXXXXX__,
+ XX______,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0066[12] = { /* code 0066 */
+ ________,
+ __XXX___,
+ _XX_XX__,
+ _XX_____,
+ _XX_____,
+ XXXXX___,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0067[12] = { /* code 0067 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_XX_,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0068[12] = { /* code 0068 */
+ ________,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XX_XX__,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XXX__XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0069[12] = { /* code 0069 */
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_006A[12] = { /* code 006A */
+ ________,
+ ____XX__,
+ ____XX__,
+ ________,
+ __XXXX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_006B[12] = { /* code 006B */
+ ________,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ _XX_XX__,
+ _XXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ XXX__XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_006C[12] = { /* code 006C */
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_006D[12] = { /* code 006D */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_006E[12] = { /* code 006E */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_006F[12] = { /* code 006F */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0070[12] = { /* code 0070 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_XXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0071[12] = { /* code 0071 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_XX_,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ ___XXXX_};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0072[12] = { /* code 0072 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_XX__,
+ _XX_XXX_,
+ _XXX_XX_,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0073[12] = { /* code 0073 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ XX__XX__,
+ _XX_____,
+ ___XX___,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0074[12] = { /* code 0074 */
+ ________,
+ ________,
+ __X_____,
+ _XX_____,
+ XXXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_XX__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0075[12] = { /* code 0075 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0076[12] = { /* code 0076 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ __XX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0077[12] = { /* code 0077 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0078[12] = { /* code 0078 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_0079[12] = { /* code 0079 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ____XX__,
+ ___XX___,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_007A[12] = { /* code 007A */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ X___XX__,
+ ___XX___,
+ _XX_____,
+ XX___X__,
+ XXXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_007B[12] = { /* code 007B */
+ ________,
+ ___XXX__,
+ __XX____,
+ __XX____,
+ _XX_____,
+ XX______,
+ _XX_____,
+ __XX____,
+ __XX____,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_007C[12] = { /* code 007C */
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_007D[12] = { /* code 007D */
+ ________,
+ XXX_____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ XXX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_007E[12] = { /* code 007E */
+ ________,
+ _XXX__XX,
+ XX_XX_X_,
+ XX__XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFont8x12ASCII_007F[12] = { /* code 007F */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_Font8x12ASCII_CharInfo[96] = {
+ { 8, 8, 1, acFont8x12ASCII_0020 } /* code 0020 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0021 } /* code 0021 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0022 } /* code 0022 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0023 } /* code 0023 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0024 } /* code 0024 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0025 } /* code 0025 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0026 } /* code 0026 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0027 } /* code 0027 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0028 } /* code 0028 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0029 } /* code 0029 */
+ ,{ 8, 8, 1, acFont8x12ASCII_002A } /* code 002A */
+ ,{ 8, 8, 1, acFont8x12ASCII_002B } /* code 002B */
+ ,{ 8, 8, 1, acFont8x12ASCII_002C } /* code 002C */
+ ,{ 8, 8, 1, acFont8x12ASCII_002D } /* code 002D */
+ ,{ 8, 8, 1, acFont8x12ASCII_002E } /* code 002E */
+ ,{ 8, 8, 1, acFont8x12ASCII_002F } /* code 002F */
+ ,{ 8, 8, 1, acFont8x12ASCII_0030 } /* code 0030 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0031 } /* code 0031 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0032 } /* code 0032 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0033 } /* code 0033 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0034 } /* code 0034 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0035 } /* code 0035 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0036 } /* code 0036 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0037 } /* code 0037 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0038 } /* code 0038 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0039 } /* code 0039 */
+ ,{ 8, 8, 1, acFont8x12ASCII_003A } /* code 003A */
+ ,{ 8, 8, 1, acFont8x12ASCII_003B } /* code 003B */
+ ,{ 8, 8, 1, acFont8x12ASCII_003C } /* code 003C */
+ ,{ 8, 8, 1, acFont8x12ASCII_003D } /* code 003D */
+ ,{ 8, 8, 1, acFont8x12ASCII_003E } /* code 003E */
+ ,{ 8, 8, 1, acFont8x12ASCII_003F } /* code 003F */
+ ,{ 8, 8, 1, acFont8x12ASCII_0040 } /* code 0040 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0041 } /* code 0041 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0042 } /* code 0042 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0043 } /* code 0043 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0044 } /* code 0044 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0045 } /* code 0045 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0046 } /* code 0046 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0047 } /* code 0047 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0048 } /* code 0048 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0049 } /* code 0049 */
+ ,{ 8, 8, 1, acFont8x12ASCII_004A } /* code 004A */
+ ,{ 8, 8, 1, acFont8x12ASCII_004B } /* code 004B */
+ ,{ 8, 8, 1, acFont8x12ASCII_004C } /* code 004C */
+ ,{ 8, 8, 1, acFont8x12ASCII_004D } /* code 004D */
+ ,{ 8, 8, 1, acFont8x12ASCII_004E } /* code 004E */
+ ,{ 8, 8, 1, acFont8x12ASCII_004F } /* code 004F */
+ ,{ 8, 8, 1, acFont8x12ASCII_0050 } /* code 0050 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0051 } /* code 0051 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0052 } /* code 0052 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0053 } /* code 0053 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0054 } /* code 0054 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0055 } /* code 0055 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0056 } /* code 0056 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0057 } /* code 0057 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0058 } /* code 0058 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0059 } /* code 0059 */
+ ,{ 8, 8, 1, acFont8x12ASCII_005A } /* code 005A */
+ ,{ 8, 8, 1, acFont8x12ASCII_005B } /* code 005B */
+ ,{ 8, 8, 1, acFont8x12ASCII_005C } /* code 005C */
+ ,{ 8, 8, 1, acFont8x12ASCII_005D } /* code 005D */
+ ,{ 8, 8, 1, acFont8x12ASCII_005E } /* code 005E */
+ ,{ 8, 8, 1, acFont8x12ASCII_005F } /* code 005F */
+ ,{ 8, 8, 1, acFont8x12ASCII_0060 } /* code 0060 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0061 } /* code 0061 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0062 } /* code 0062 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0063 } /* code 0063 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0064 } /* code 0064 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0065 } /* code 0065 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0066 } /* code 0066 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0067 } /* code 0067 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0068 } /* code 0068 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0069 } /* code 0069 */
+ ,{ 8, 8, 1, acFont8x12ASCII_006A } /* code 006A */
+ ,{ 8, 8, 1, acFont8x12ASCII_006B } /* code 006B */
+ ,{ 8, 8, 1, acFont8x12ASCII_006C } /* code 006C */
+ ,{ 8, 8, 1, acFont8x12ASCII_006D } /* code 006D */
+ ,{ 8, 8, 1, acFont8x12ASCII_006E } /* code 006E */
+ ,{ 8, 8, 1, acFont8x12ASCII_006F } /* code 006F */
+ ,{ 8, 8, 1, acFont8x12ASCII_0070 } /* code 0070 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0071 } /* code 0071 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0072 } /* code 0072 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0073 } /* code 0073 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0074 } /* code 0074 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0075 } /* code 0075 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0076 } /* code 0076 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0077 } /* code 0077 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0078 } /* code 0078 */
+ ,{ 8, 8, 1, acFont8x12ASCII_0079 } /* code 0079 */
+ ,{ 8, 8, 1, acFont8x12ASCII_007A } /* code 007A */
+ ,{ 8, 8, 1, acFont8x12ASCII_007B } /* code 007B */
+ ,{ 8, 8, 1, acFont8x12ASCII_007C } /* code 007C */
+ ,{ 8, 8, 1, acFont8x12ASCII_007D } /* code 007D */
+ ,{ 8, 8, 1, acFont8x12ASCII_007E } /* code 007E */
+ ,{ 8, 8, 1, acFont8x12ASCII_007F } /* code 007F */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_Font8x12ASCII_Prop1 = {
+ 32 /* first character */
+ ,127 /* last character */
+ ,&GUI_Font8x12ASCII_CharInfo[0] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x12_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,12 /* height of font */
+ ,12 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_Font8x12ASCII_Prop1}
+ ,10, 6, 9
+};
+
diff --git a/User/lib/lcd/gui/Font/F8x13_1.c b/User/lib/lcd/gui/Font/F8x13_1.c
new file mode 100644
index 0000000..133ae1d
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F8x13_1.c
@@ -0,0 +1,1587 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F8x13.C
+Purpose : Monospaced Font similar to courier
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_160[13] = { /* code 160 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_161[13] = { /* code 161 */
+ ________,
+ ________,
+ ____X___,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_162[13] = { /* code 162 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___XXX__,
+ __X___X_,
+ __X_____,
+ __X___X_,
+ ___XXX__,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_163[13] = { /* code 163 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __X__X__,
+ __X_____,
+ ___X____,
+ __XXXX__,
+ ___X____,
+ ___X____,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_164[13] = { /* code 164 */
+ ________,
+ ________,
+ _X_____X,
+ __XXXXX_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __XXXXX_,
+ _X_____X,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_165[13] = { /* code 165 */
+ ________,
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ _XXXXXXX,
+ ___X_X__,
+ _XXXXXXX,
+ ____X___,
+ ____X___,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_166[13] = { /* code 166 */
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_167[13] = { /* code 167 */
+ ________,
+ ________,
+ ___XXXX_,
+ __X___X_,
+ _X_X____,
+ _X__X___,
+ __X__X__,
+ ___X__X_,
+ ____X_X_,
+ _X___X__,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_168[13] = { /* code 168 */
+ ________,
+ ________,
+ __X___X_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_169[13] = { /* code 169 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ _X__XX_X,
+ _X_X___X,
+ _X_X___X,
+ _X__XX_X,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_170[13] = { /* code 170 */
+ ________,
+ ________,
+ ___XX___,
+ _____X__,
+ ___XXX__,
+ __X__X__,
+ ___XXX__,
+ ________,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_171[13] = { /* code 171 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X___X,
+ __X___X_,
+ _X___X__,
+ __X___X_,
+ ___X___X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_172[13] = { /* code 172 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ ______X_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_173[13] = { /* code 173 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_174[13] = { /* code 174 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ _X_XX__X,
+ _X_X_X_X,
+ _X_XX__X,
+ _X_X_X_X,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_175[13] = { /* code 175 */
+ ________,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_176[13] = { /* code 176 */
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ ____X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_177[13] = { /* code 177 */
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ _XXXXXXX,
+ ____X___,
+ ____X___,
+ ____X___,
+ ________,
+ _XXXXXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_178[13] = { /* code 178 */
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ _____X__,
+ ____X___,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_179[13] = { /* code 179 */
+ ________,
+ ________,
+ ___XX___,
+ _____X__,
+ ____X___,
+ _____X__,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_180[13] = { /* code 180 */
+ ________,
+ ________,
+ _____X__,
+ ____X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_181[13] = { /* code 181 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __XXXX__,
+ __X_____,
+ _X______};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_182[13] = { /* code 182 */
+ ________,
+ ________,
+ __XXXXXX,
+ _XXXX_X_,
+ _XXXX_X_,
+ _XXXX_X_,
+ __XXX_X_,
+ ____X_X_,
+ ____X_X_,
+ ____X_X_,
+ ___XX_XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_183[13] = { /* code 183 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_184[13] = { /* code 184 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ _____X__,
+ ___XX___};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_185[13] = { /* code 185 */
+ ________,
+ ________,
+ ___XX___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_186[13] = { /* code 186 */
+ ________,
+ ________,
+ ___XX___,
+ __X__X__,
+ __X__X__,
+ __X__X__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_187[13] = { /* code 187 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _X___X__,
+ __X___X_,
+ ___X___X,
+ __X___X_,
+ _X___X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_188[13] = { /* code 188 */
+ ________,
+ ________,
+ _XX_____,
+ __X____X,
+ __X___X_,
+ __X__X__,
+ _XXXX__X,
+ ___X__XX,
+ __X__X_X,
+ _X__XXXX,
+ _______X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_189[13] = { /* code 189 */
+ ________,
+ ________,
+ _XX_____,
+ __X____X,
+ __X___X_,
+ __X__X__,
+ _XXXX_X_,
+ ___X_X_X,
+ __X____X,
+ _X____X_,
+ _____XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_190[13] = { /* code 190 */
+ ________,
+ ________,
+ _XX_____,
+ ___X___X,
+ __X___X_,
+ ___X_X__,
+ _XX_X__X,
+ ___X__XX,
+ __X__X_X,
+ _X__XXXX,
+ _______X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_191[13] = { /* code 191 */
+ ________,
+ ________,
+ ____X___,
+ ________,
+ ____X___,
+ ____X___,
+ ___X____,
+ __X_____,
+ __X_____,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_192[13] = { /* code 192 */
+ ___X____,
+ ____X___,
+ ___XX___,
+ ____X___,
+ ____X___,
+ ___X_X__,
+ ___X_X__,
+ __X___X_,
+ __XXXXX_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_193[13] = { /* code 193 */
+ _____X__,
+ ____X___,
+ ___XX___,
+ ____X___,
+ ____X___,
+ ___X_X__,
+ ___X_X__,
+ __X___X_,
+ __XXXXX_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_194[13] = { /* code 194 */
+ ____X___,
+ ___X_X__,
+ ___XX___,
+ ____X___,
+ ____X___,
+ ___X_X__,
+ ___X_X__,
+ __X___X_,
+ __XXXXX_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_195[13] = { /* code 195 */
+ __XXX__X,
+ _X__XXX_,
+ ___XX___,
+ ____X___,
+ ____X___,
+ ___X_X__,
+ ___X_X__,
+ __X___X_,
+ __XXXXX_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_196[13] = { /* code 196 */
+ __X___X_,
+ ________,
+ ___XX___,
+ ____X___,
+ ____X___,
+ ___X_X__,
+ ___X_X__,
+ __X___X_,
+ __XXXXX_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_197[13] = { /* code 197 */
+ ____X___,
+ ___X_X__,
+ ____X___,
+ ____X___,
+ ____X___,
+ ___X_X__,
+ ___X_X__,
+ __X___X_,
+ __XXXXX_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_198[13] = { /* code 198 */
+ ________,
+ ________,
+ __XXXXXX,
+ ___XX__X,
+ ___XX___,
+ __X_X_X_,
+ __X_XXX_,
+ __X_X_X_,
+ _XXXX___,
+ _X__X__X,
+ _X__XXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_199[13] = { /* code 199 */
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ __X____X,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ __X____X,
+ ___XXXX_,
+ _____X__,
+ ____XX__};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_200[13] = { /* code 200 */
+ ___X____,
+ ____X___,
+ _XXXXXXX,
+ __X____X,
+ __X_____,
+ __X__X__,
+ __XXXX__,
+ __X__X__,
+ __X_____,
+ __X____X,
+ _XXXXXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_201[13] = { /* code 201 */
+ _____X__,
+ ____X___,
+ _XXXXXXX,
+ __X____X,
+ __X_____,
+ __X__X__,
+ __XXXX__,
+ __X__X__,
+ __X_____,
+ __X____X,
+ _XXXXXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_202[13] = { /* code 202 */
+ ____X___,
+ ___X_X__,
+ _XXXXXXX,
+ __X____X,
+ __X_____,
+ __X__X__,
+ __XXXX__,
+ __X__X__,
+ __X_____,
+ __X____X,
+ _XXXXXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_203[13] = { /* code 203 */
+ __X___X_,
+ ________,
+ _XXXXXXX,
+ __X____X,
+ __X_____,
+ __X__X__,
+ __XXXX__,
+ __X__X__,
+ __X_____,
+ __X____X,
+ _XXXXXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_204[13] = { /* code 204 */
+ ___X____,
+ ____X___,
+ __XXXXX_,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_205[13] = { /* code 205 */
+ _____X__,
+ ____X___,
+ __XXXXX_,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_206[13] = { /* code 206 */
+ ____X___,
+ ___X_X__,
+ __XXXXX_,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_207[13] = { /* code 207 */
+ __X___X_,
+ ________,
+ __XXXXX_,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_208[13] = { /* code 208 */
+ ________,
+ ________,
+ _XXXXX__,
+ __X___X_,
+ __X____X,
+ __X____X,
+ _XXXX__X,
+ __X____X,
+ __X____X,
+ __X___X_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_209[13] = { /* code 209 */
+ __XXX__X,
+ _X__XXX_,
+ _XX__XXX,
+ __X___X_,
+ __XX__X_,
+ __XX__X_,
+ __X_X_X_,
+ __X__XX_,
+ __X__XX_,
+ __X___X_,
+ _XXX__X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_210[13] = { /* code 210 */
+ ___X____,
+ ____X___,
+ ___XXX__,
+ __X___X_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_211[13] = { /* code 211 */
+ _____X__,
+ ____X___,
+ ___XXX__,
+ __X___X_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_212[13] = { /* code 212 */
+ ____X___,
+ ___X_X__,
+ ___XXX__,
+ __X___X_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_213[13] = { /* code 213 */
+ __XXX__X,
+ _X__XXX_,
+ ___XXX__,
+ __X___X_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_214[13] = { /* code 214 */
+ __X___X_,
+ ________,
+ ___XXX__,
+ __X___X_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_215[13] = { /* code 215 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X_____X,
+ __X___X_,
+ ___X_X__,
+ ____X___,
+ ___X_X__,
+ __X___X_,
+ _X_____X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_216[13] = { /* code 216 */
+ ________,
+ ________,
+ ___XXX_X,
+ __X___X_,
+ _X___X_X,
+ _X___X_X,
+ _X__X__X,
+ _X_X___X,
+ _X_X___X,
+ __X___X_,
+ _X_XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_217[13] = { /* code 217 */
+ ___X____,
+ ____X___,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_218[13] = { /* code 218 */
+ _____X__,
+ ____X___,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_219[13] = { /* code 219 */
+ ____X___,
+ ___X_X__,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_220[13] = { /* code 220 */
+ __X___X_,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_221[13] = { /* code 221 */
+ _____X__,
+ ____X___,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ ___X_X__,
+ ___X_X__,
+ ____X___,
+ ____X___,
+ ____X___,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_222[13] = { /* code 222 */
+ ________,
+ ________,
+ _XX_____,
+ __X_____,
+ __XXXXX_,
+ __X____X,
+ __X____X,
+ __X____X,
+ __XXXXX_,
+ __X_____,
+ _XXX____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_223[13] = { /* code 223 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X_XXX_,
+ __X____X,
+ __X____X,
+ __X____X,
+ _XX_XXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_224[13] = { /* code 224 */
+ ________,
+ ________,
+ ___X____,
+ ____X___,
+ ________,
+ __XXXX__,
+ ______X_,
+ __XXXXX_,
+ _X____X_,
+ _X____X_,
+ __XXXX_X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_225[13] = { /* code 225 */
+ ________,
+ ________,
+ _____X__,
+ ____X___,
+ ________,
+ __XXXX__,
+ ______X_,
+ __XXXXX_,
+ _X____X_,
+ _X____X_,
+ __XXXX_X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_226[13] = { /* code 226 */
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ ________,
+ __XXXX__,
+ ______X_,
+ __XXXXX_,
+ _X____X_,
+ _X____X_,
+ __XXXX_X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_227[13] = { /* code 227 */
+ ________,
+ ________,
+ __XXX__X,
+ _X__XXX_,
+ ________,
+ __XXXX__,
+ ______X_,
+ __XXXXX_,
+ _X____X_,
+ _X____X_,
+ __XXXX_X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_228[13] = { /* code 228 */
+ ________,
+ ________,
+ __X___X_,
+ ________,
+ ________,
+ __XXXX__,
+ ______X_,
+ __XXXXX_,
+ _X____X_,
+ _X____X_,
+ __XXXX_X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_229[13] = { /* code 229 */
+ ________,
+ ____X___,
+ ___X_X__,
+ ____X___,
+ ________,
+ __XXXX__,
+ ______X_,
+ __XXXXX_,
+ _X____X_,
+ _X____X_,
+ __XXXX_X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_230[13] = { /* code 230 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX_XX_,
+ ____X__X,
+ __XXXXXX,
+ _X__X___,
+ _X__X__X,
+ __XX_XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_231[13] = { /* code 231 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _X______,
+ _X______,
+ _X_____X,
+ __XXXXX_,
+ _____X__,
+ ____XX__};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_232[13] = { /* code 232 */
+ ________,
+ ________,
+ ___X____,
+ ____X___,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _XXXXXXX,
+ _X______,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_233[13] = { /* code 233 */
+ ________,
+ ________,
+ _____X__,
+ ____X___,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _XXXXXXX,
+ _X______,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_234[13] = { /* code 234 */
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _XXXXXXX,
+ _X______,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_235[13] = { /* code 235 */
+ ________,
+ ________,
+ __X___X_,
+ ________,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _XXXXXXX,
+ _X______,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_236[13] = { /* code 236 */
+ ________,
+ ________,
+ ___X____,
+ ____X___,
+ ________,
+ __XXX___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_237[13] = { /* code 237 */
+ ________,
+ ________,
+ ____X___,
+ ___X____,
+ ________,
+ __XXX___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_238[13] = { /* code 238 */
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ ________,
+ __XXX___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_239[13] = { /* code 239 */
+ ________,
+ ________,
+ __X__X__,
+ ________,
+ ________,
+ __XXX___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_240[13] = { /* code 240 */
+ ________,
+ ________,
+ __XX_XX_,
+ ____X___,
+ __XX_X__,
+ ______X_,
+ __XXXXX_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_241[13] = { /* code 241 */
+ ________,
+ ________,
+ __XXX__X,
+ _X__XXX_,
+ ________,
+ _XX_XX__,
+ __XX__X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_242[13] = { /* code 242 */
+ ________,
+ ________,
+ ___X____,
+ ____X___,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_243[13] = { /* code 243 */
+ ________,
+ ________,
+ _____X__,
+ ____X___,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_244[13] = { /* code 244 */
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_245[13] = { /* code 245 */
+ ________,
+ ________,
+ __XXX__X,
+ _X__XXX_,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_246[13] = { /* code 246 */
+ ________,
+ ________,
+ __X___X_,
+ ________,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_247[13] = { /* code 247 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ________,
+ ________,
+ _XXXXXXX,
+ ________,
+ ________,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_248[13] = { /* code 248 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXXX,
+ _X____XX,
+ _X__XX_X,
+ _X_XX__X,
+ _XX____X,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_249[13] = { /* code 249 */
+ ________,
+ ________,
+ ___X____,
+ ____X___,
+ ________,
+ _XX__XX_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X__XX_,
+ ___XX_XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_250[13] = { /* code 250 */
+ ________,
+ ________,
+ _____X__,
+ ____X___,
+ ________,
+ _XX__XX_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X__XX_,
+ ___XX_XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_251[13] = { /* code 251 */
+ ________,
+ ________,
+ ____X___,
+ ___X_X__,
+ ________,
+ _XX__XX_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X__XX_,
+ ___XX_XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_252[13] = { /* code 252 */
+ ________,
+ ________,
+ __X___X_,
+ ________,
+ ________,
+ _XX__XX_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X__XX_,
+ ___XX_XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_253[13] = { /* code 253 */
+ ________,
+ ________,
+ _____X__,
+ ____X___,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ ___X_X__,
+ ___X_X__,
+ ____X___,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_254[13] = { /* code 254 */
+ ________,
+ ________,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __XXXXX_,
+ __X____X,
+ __X____X,
+ __X____X,
+ __X____X,
+ __XXXXX_,
+ __X_____,
+ _XXX____};
+
+GUI_CONST_STORAGE unsigned char acF8x13_1_255[13] = { /* code 255 */
+ ________,
+ ________,
+ __X___X_,
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ ___X_X__,
+ ___X_X__,
+ ____X___,
+ ____X___,
+ __XX____};
+
+
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_CharInfoF8x13_1[96] = {
+ { 8, 8, 1, acF8x13_1_160 } /* code 160 */
+ ,{ 8, 8, 1, acF8x13_1_161 } /* code 161 */
+ ,{ 8, 8, 1, acF8x13_1_162 } /* code 162 */
+ ,{ 8, 8, 1, acF8x13_1_163 } /* code 163 */
+ ,{ 8, 8, 1, acF8x13_1_164 } /* code 164 */
+ ,{ 8, 8, 1, acF8x13_1_165 } /* code 165 */
+ ,{ 8, 8, 1, acF8x13_1_166 } /* code 166 */
+ ,{ 8, 8, 1, acF8x13_1_167 } /* code 167 */
+ ,{ 8, 8, 1, acF8x13_1_168 } /* code 168 */
+ ,{ 8, 8, 1, acF8x13_1_169 } /* code 169 */
+ ,{ 8, 8, 1, acF8x13_1_170 } /* code 170 */
+ ,{ 8, 8, 1, acF8x13_1_171 } /* code 171 */
+ ,{ 8, 8, 1, acF8x13_1_172 } /* code 172 */
+ ,{ 8, 8, 1, acF8x13_1_173 } /* code 173 */
+ ,{ 8, 8, 1, acF8x13_1_174 } /* code 174 */
+ ,{ 8, 8, 1, acF8x13_1_175 } /* code 175 */
+ ,{ 8, 8, 1, acF8x13_1_176 } /* code 176 */
+ ,{ 8, 8, 1, acF8x13_1_177 } /* code 177 */
+ ,{ 8, 8, 1, acF8x13_1_178 } /* code 178 */
+ ,{ 8, 8, 1, acF8x13_1_179 } /* code 179 */
+ ,{ 8, 8, 1, acF8x13_1_180 } /* code 180 */
+ ,{ 8, 8, 1, acF8x13_1_181 } /* code 181 */
+ ,{ 8, 8, 1, acF8x13_1_182 } /* code 182 */
+ ,{ 8, 8, 1, acF8x13_1_183 } /* code 183 */
+ ,{ 8, 8, 1, acF8x13_1_184 } /* code 184 */
+ ,{ 8, 8, 1, acF8x13_1_185 } /* code 185 */
+ ,{ 8, 8, 1, acF8x13_1_186 } /* code 186 */
+ ,{ 8, 8, 1, acF8x13_1_187 } /* code 187 */
+ ,{ 8, 8, 1, acF8x13_1_188 } /* code 188 */
+ ,{ 8, 8, 1, acF8x13_1_189 } /* code 189 */
+ ,{ 8, 8, 1, acF8x13_1_190 } /* code 190 */
+ ,{ 8, 8, 1, acF8x13_1_191 } /* code 191 */
+ ,{ 8, 8, 1, acF8x13_1_192 } /* code 192 */
+ ,{ 8, 8, 1, acF8x13_1_193 } /* code 193 */
+ ,{ 8, 8, 1, acF8x13_1_194 } /* code 194 */
+ ,{ 8, 8, 1, acF8x13_1_195 } /* code 195 */
+ ,{ 8, 8, 1, acF8x13_1_196 } /* code 196 */
+ ,{ 8, 8, 1, acF8x13_1_197 } /* code 197 */
+ ,{ 8, 8, 1, acF8x13_1_198 } /* code 198 */
+ ,{ 8, 8, 1, acF8x13_1_199 } /* code 199 */
+ ,{ 8, 8, 1, acF8x13_1_200 } /* code 200 */
+ ,{ 8, 8, 1, acF8x13_1_201 } /* code 201 */
+ ,{ 8, 8, 1, acF8x13_1_202 } /* code 202 */
+ ,{ 8, 8, 1, acF8x13_1_203 } /* code 203 */
+ ,{ 8, 8, 1, acF8x13_1_204 } /* code 204 */
+ ,{ 8, 8, 1, acF8x13_1_205 } /* code 205 */
+ ,{ 8, 8, 1, acF8x13_1_206 } /* code 206 */
+ ,{ 8, 8, 1, acF8x13_1_207 } /* code 207 */
+ ,{ 8, 8, 1, acF8x13_1_208 } /* code 208 */
+ ,{ 8, 8, 1, acF8x13_1_209 } /* code 209 */
+ ,{ 8, 8, 1, acF8x13_1_210 } /* code 210 */
+ ,{ 8, 8, 1, acF8x13_1_211 } /* code 211 */
+ ,{ 8, 8, 1, acF8x13_1_212 } /* code 212 */
+ ,{ 8, 8, 1, acF8x13_1_213 } /* code 213 */
+ ,{ 8, 8, 1, acF8x13_1_214 } /* code 214 */
+ ,{ 8, 8, 1, acF8x13_1_215 } /* code 215 */
+ ,{ 8, 8, 1, acF8x13_1_216 } /* code 216 */
+ ,{ 8, 8, 1, acF8x13_1_217 } /* code 217 */
+ ,{ 8, 8, 1, acF8x13_1_218 } /* code 218 */
+ ,{ 8, 8, 1, acF8x13_1_219 } /* code 219 */
+ ,{ 8, 8, 1, acF8x13_1_220 } /* code 220 */
+ ,{ 8, 8, 1, acF8x13_1_221 } /* code 221 */
+ ,{ 8, 8, 1, acF8x13_1_222 } /* code 222 */
+ ,{ 8, 8, 1, acF8x13_1_223 } /* code 223 */
+ ,{ 8, 8, 1, acF8x13_1_224 } /* code 224 */
+ ,{ 8, 8, 1, acF8x13_1_225 } /* code 225 */
+ ,{ 8, 8, 1, acF8x13_1_226 } /* code 226 */
+ ,{ 8, 8, 1, acF8x13_1_227 } /* code 227 */
+ ,{ 8, 8, 1, acF8x13_1_228 } /* code 228 */
+ ,{ 8, 8, 1, acF8x13_1_229 } /* code 229 */
+ ,{ 8, 8, 1, acF8x13_1_230 } /* code 230 */
+ ,{ 8, 8, 1, acF8x13_1_231 } /* code 231 */
+ ,{ 8, 8, 1, acF8x13_1_232 } /* code 232 */
+ ,{ 8, 8, 1, acF8x13_1_233 } /* code 233 */
+ ,{ 8, 8, 1, acF8x13_1_234 } /* code 234 */
+ ,{ 8, 8, 1, acF8x13_1_235 } /* code 235 */
+ ,{ 8, 8, 1, acF8x13_1_236 } /* code 236 */
+ ,{ 8, 8, 1, acF8x13_1_237 } /* code 237 */
+ ,{ 8, 8, 1, acF8x13_1_238 } /* code 238 */
+ ,{ 8, 8, 1, acF8x13_1_239 } /* code 239 */
+ ,{ 8, 8, 1, acF8x13_1_240 } /* code 240 */
+ ,{ 8, 8, 1, acF8x13_1_241 } /* code 241 */
+ ,{ 8, 8, 1, acF8x13_1_242 } /* code 242 */
+ ,{ 8, 8, 1, acF8x13_1_243 } /* code 243 */
+ ,{ 8, 8, 1, acF8x13_1_244 } /* code 244 */
+ ,{ 8, 8, 1, acF8x13_1_245 } /* code 245 */
+ ,{ 8, 8, 1, acF8x13_1_246 } /* code 246 */
+ ,{ 8, 8, 1, acF8x13_1_247 } /* code 247 */
+ ,{ 8, 8, 1, acF8x13_1_248 } /* code 248 */
+ ,{ 8, 8, 1, acF8x13_1_249 } /* code 249 */
+ ,{ 8, 8, 1, acF8x13_1_250 } /* code 250 */
+ ,{ 8, 8, 1, acF8x13_1_251 } /* code 251 */
+ ,{ 8, 8, 1, acF8x13_1_252 } /* code 252 */
+ ,{ 8, 8, 1, acF8x13_1_253 } /* code 253 */
+ ,{ 8, 8, 1, acF8x13_1_254 } /* code 254 */
+ ,{ 8, 8, 1, acF8x13_1_255 } /* code 255 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontPropF8x13_1_2 = {
+ 160 /* first character */
+ ,255 /* last character */
+ ,&GUI_CharInfoF8x13_1[0] /* address of first character */
+ ,(const GUI_FONT_PROP *)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontPropF8x13_1_1 = {
+ 32 /* first character */
+ ,127 /* last character */
+ ,&GUI_CharInfoF8x13_ASCII[0] /* address of first character */
+ ,&GUI_FontPropF8x13_1_2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x13_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,13 /* height of font */
+ ,13 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontPropF8x13_1_1}
+ , 11, 6, 9
+};
+
diff --git a/User/lib/lcd/gui/Font/F8x13_ASCII.c b/User/lib/lcd/gui/Font/F8x13_ASCII.c
new file mode 100644
index 0000000..7901f71
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F8x13_ASCII.c
@@ -0,0 +1,1579 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F8x13.C
+Purpose : Monospaced Font similar to courier
+Height : 13
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_32[13] = { /* code 32 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_33[13] = { /* code 33 */
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ________,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_34[13] = { /* code 34 */
+ ________,
+ ________,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_35[13] = { /* code 35 */
+ ________,
+ ________,
+ ____X_X_,
+ ____X_X_,
+ __XXXXXX,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ _XXXXXX_,
+ __X_X___,
+ __X_X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_36[13] = { /* code 36 */
+ ________,
+ ________,
+ ____X___,
+ ___XXX__,
+ __X___X_,
+ __X_____,
+ ___XXX__,
+ ______X_,
+ __X___X_,
+ ___XXX__,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_37[13] = { /* code 37 */
+ ________,
+ ________,
+ __X_____,
+ _X_X___X,
+ __X___X_,
+ _____X__,
+ ____X___,
+ ___X____,
+ __X___X_,
+ _X___X_X,
+ ______X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_38[13] = { /* code 38 */
+ ________,
+ ________,
+ ___XX___,
+ __X_____,
+ __X_____,
+ ___X____,
+ __XX____,
+ _X__X__X,
+ _X__X_X_,
+ _X___X__,
+ __XXX_XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_39[13] = { /* code 39 */
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_40[13] = { /* code 40 */
+ ________,
+ ________,
+ _____X__,
+ ____X___,
+ ____X___,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ____X___,
+ ____X___,
+ _____X__};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_41[13] = { /* code 41 */
+ ________,
+ ________,
+ ___X____,
+ ____X___,
+ ____X___,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ ____X___,
+ ____X___,
+ ___X____};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_42[13] = { /* code 42 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX_XX_,
+ ___XXX__,
+ _XXXXXXX,
+ ___XXX__,
+ __XX_XX_,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_43[13] = { /* code 43 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ _XXXXXXX,
+ ____X___,
+ ____X___,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_44[13] = { /* code 44 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_45[13] = { /* code 45 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_46[13] = { /* code 46 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_47[13] = { /* code 47 */
+ ________,
+ ________,
+ ________,
+ _______X,
+ ______X_,
+ _____X__,
+ ____X___,
+ ___X____,
+ __X_____,
+ _X______,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_48[13] = { /* code 48 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_49[13] = { /* code 49 */
+ ________,
+ ________,
+ ____X___,
+ __XXX___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_50[13] = { /* code 50 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ ______X_,
+ ______X_,
+ _____X__,
+ ____X___,
+ ___X____,
+ __X_____,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_51[13] = { /* code 51 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ ______X_,
+ ______X_,
+ ____XX__,
+ ______X_,
+ ______X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_52[13] = { /* code 52 */
+ ________,
+ ________,
+ _____X__,
+ ____XX__,
+ ____XX__,
+ ___X_X__,
+ ___X_X__,
+ __X__X__,
+ __XXXXX_,
+ _____X__,
+ ____XXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_53[13] = { /* code 53 */
+ ________,
+ ________,
+ __XXXXX_,
+ __X_____,
+ __X_____,
+ __X_____,
+ __XXXX__,
+ ______X_,
+ ______X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_54[13] = { /* code 54 */
+ ________,
+ ________,
+ ____XX__,
+ ___X____,
+ __X_____,
+ __X_____,
+ __XXXX__,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_55[13] = { /* code 55 */
+ ________,
+ ________,
+ __XXXXX_,
+ __X___X_,
+ ______X_,
+ _____X__,
+ _____X__,
+ ____X___,
+ ____X___,
+ ___X____,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_56[13] = { /* code 56 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___XXX__,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_57[13] = { /* code 57 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___XXXX_,
+ ______X_,
+ ______X_,
+ _____X__,
+ ___XX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_58[13] = { /* code 58 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_59[13] = { /* code 59 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___X____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_60[13] = { /* code 60 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _____X__,
+ ____X___,
+ ___X____,
+ __X_____,
+ ___X____,
+ ____X___,
+ _____X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_61[13] = { /* code 61 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ ________,
+ __XXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_62[13] = { /* code 62 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ____X___,
+ _____X__,
+ ______X_,
+ _____X__,
+ ____X___,
+ ___X____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_63[13] = { /* code 63 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ ______X_,
+ ______X_,
+ _____X__,
+ ____X___,
+ ____X___,
+ ________,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_64[13] = { /* code 64 */
+ ________,
+ ________,
+ ___XXXX_,
+ __X____X,
+ _X__XX_X,
+ _X_X_X_X,
+ _X_X_X_X,
+ _X_X_X_X,
+ _X__XXX_,
+ __X_____,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_65[13] = { /* code 65 */
+ ________,
+ ________,
+ ___XX___,
+ ____X___,
+ ____X___,
+ ___X_X__,
+ ___X_X__,
+ __X___X_,
+ __XXXXX_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_66[13] = { /* code 66 */
+ ________,
+ ________,
+ _XXXXXX_,
+ __X____X,
+ __X____X,
+ __X____X,
+ __XXXXX_,
+ __X____X,
+ __X____X,
+ __X____X,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_67[13] = { /* code 67 */
+ ________,
+ ________,
+ ___XXXX_,
+ __X____X,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ __X____X,
+ ___XXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_68[13] = { /* code 68 */
+ ________,
+ ________,
+ _XXXXX__,
+ __X___X_,
+ __X____X,
+ __X____X,
+ __X____X,
+ __X____X,
+ __X____X,
+ __X___X_,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_69[13] = { /* code 69 */
+ ________,
+ ________,
+ _XXXXXXX,
+ __X____X,
+ __X_____,
+ __X__X__,
+ __XXXX__,
+ __X__X__,
+ __X_____,
+ __X____X,
+ _XXXXXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_70[13] = { /* code 70 */
+ ________,
+ ________,
+ _XXXXXXX,
+ __X____X,
+ __X_____,
+ __X__X__,
+ __XXXX__,
+ __X__X__,
+ __X_____,
+ __X_____,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_71[13] = { /* code 71 */
+ ________,
+ ________,
+ ___XXXX_,
+ __X____X,
+ _X______,
+ _X______,
+ _X______,
+ _X___XXX,
+ _X_____X,
+ __X____X,
+ ___XXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_72[13] = { /* code 72 */
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __XXXXX_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_73[13] = { /* code 73 */
+ ________,
+ ________,
+ __XXXXX_,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_74[13] = { /* code 74 */
+ ________,
+ ________,
+ ___XXXX_,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_75[13] = { /* code 75 */
+ ________,
+ ________,
+ _XXX__XX,
+ __X___X_,
+ __X__X__,
+ __X__X__,
+ __X_X___,
+ __XXX___,
+ __X__X__,
+ __X___X_,
+ _XXX__XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_76[13] = { /* code 76 */
+ ________,
+ ________,
+ _XXXXX__,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X___X,
+ _XXXXXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_77[13] = { /* code 77 */
+ ________,
+ ________,
+ _XX___XX,
+ __X___X_,
+ __XX_XX_,
+ __XX_XX_,
+ __X_X_X_,
+ __X_X_X_,
+ __X___X_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_78[13] = { /* code 78 */
+ ________,
+ ________,
+ _XX__XXX,
+ __X___X_,
+ __XX__X_,
+ __XX__X_,
+ __X_X_X_,
+ __X__XX_,
+ __X__XX_,
+ __X___X_,
+ _XXX__X_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_79[13] = { /* code 79 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_80[13] = { /* code 80 */
+ ________,
+ ________,
+ _XXXXXX_,
+ __X____X,
+ __X____X,
+ __X____X,
+ __XXXXX_,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XXXX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_81[13] = { /* code 81 */
+ ________,
+ ________,
+ ___XXX__,
+ __X___X_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __X___X_,
+ ___XXX__,
+ ___XX_XX,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_82[13] = { /* code 82 */
+ ________,
+ ________,
+ _XXXXXX_,
+ __X____X,
+ __X____X,
+ __X____X,
+ __XXXXX_,
+ __X__X__,
+ __X__X__,
+ __X___X_,
+ _XXX__XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_83[13] = { /* code 83 */
+ ________,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _X______,
+ _X______,
+ __XXXXX_,
+ _______X,
+ _______X,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_84[13] = { /* code 84 */
+ ________,
+ ________,
+ _XXXXXXX,
+ _X__X__X,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_85[13] = { /* code 85 */
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_86[13] = { /* code 86 */
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ____X___,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_87[13] = { /* code 87 */
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X_X_X_,
+ __X_X_X_,
+ __X_X_X_,
+ ___X_X__,
+ ___X_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_88[13] = { /* code 88 */
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ ___X_X__,
+ ___X_X__,
+ ____X___,
+ ___X_X__,
+ ___X_X__,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_89[13] = { /* code 89 */
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ ___X_X__,
+ ___X_X__,
+ ____X___,
+ ____X___,
+ ____X___,
+ ___XXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_90[13] = { /* code 90 */
+ ________,
+ ________,
+ _XXXXXXX,
+ _X____X_,
+ _____X__,
+ _____X__,
+ ____X___,
+ ___X____,
+ ___X____,
+ __X____X,
+ _XXXXXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_91[13] = { /* code 91 */
+ ________,
+ ________,
+ ___XXX__,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___XXX__};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_92[13] = { /* code 92 */
+ ________,
+ ________,
+ ________,
+ _X______,
+ __X_____,
+ ___X____,
+ ____X___,
+ _____X__,
+ ______X_,
+ _______X,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_93[13] = { /* code 93 */
+ ________,
+ ________,
+ ___XXX__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ ___XXX__};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_94[13] = { /* code 94 */
+ ________,
+ ____X___,
+ ___X_X__,
+ __X___X_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_95[13] = { /* code 95 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_96[13] = { /* code 96 */
+ ________,
+ ________,
+ ___X____,
+ ____X___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_97[13] = { /* code 97 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ______X_,
+ __XXXXX_,
+ _X____X_,
+ _X____X_,
+ __XXXX_X,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_98[13] = { /* code 98 */
+ ________,
+ ________,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __XXXXX_,
+ __X____X,
+ __X____X,
+ __X____X,
+ __X____X,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_99[13] = { /* code 99 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _X______,
+ _X______,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_100[13] = { /* code 100 */
+ ________,
+ ________,
+ _____XX_,
+ ______X_,
+ ______X_,
+ __XXXXX_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ __XXXXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_101[13] = { /* code 101 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _XXXXXXX,
+ _X______,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_102[13] = { /* code 102 */
+ ________,
+ ________,
+ ____XX__,
+ ___X____,
+ ___X____,
+ __XXXX__,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ __XXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_103[13] = { /* code 103 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXXX,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ __XXXXX_,
+ ______X_,
+ ______X_,
+ __XXXX__};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_104[13] = { /* code 104 */
+ ________,
+ ________,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X_XX__,
+ __XX__X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_105[13] = { /* code 105 */
+ ________,
+ ________,
+ ____X___,
+ ________,
+ ________,
+ __XXX___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_106[13] = { /* code 106 */
+ ________,
+ ________,
+ _____X__,
+ ________,
+ ________,
+ __XXXX__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ _____X__,
+ __XXX___};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_107[13] = { /* code 107 */
+ ________,
+ ________,
+ _XX_____,
+ __X_____,
+ __X_____,
+ __X__XX_,
+ __X__X__,
+ __X_X___,
+ __XXX___,
+ __X__X__,
+ _XX___XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_108[13] = { /* code 108 */
+ ________,
+ ________,
+ ___XX___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_109[13] = { /* code 109 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_X__,
+ __X_X_X_,
+ __X_X_X_,
+ __X_X_X_,
+ __X_X_X_,
+ _XX_X_XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_110[13] = { /* code 110 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_XX__,
+ __XX__X_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_111[13] = { /* code 111 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_112[13] = { /* code 112 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ __X____X,
+ __X____X,
+ __X____X,
+ __X____X,
+ __XXXXX_,
+ __X_____,
+ _XXX____};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_113[13] = { /* code 113 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXXX,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ __XXXXX_,
+ ______X_,
+ _____XXX};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_114[13] = { /* code 114 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_XX_,
+ ___XX__X,
+ ___X____,
+ ___X____,
+ ___X____,
+ _XXXXX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_115[13] = { /* code 115 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _X_____X,
+ __XXX___,
+ _____XX_,
+ _X_____X,
+ __XXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_116[13] = { /* code 116 */
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ __XXXX__,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X__X_,
+ ____XX__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_117[13] = { /* code 117 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ __X___X_,
+ __X___X_,
+ __X___X_,
+ __X__XX_,
+ ___XX_XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_118[13] = { /* code 118 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ ___X_X__,
+ ___X_X__,
+ ____X___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_119[13] = { /* code 119 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X_X_X_,
+ __X_X_X_,
+ ___X_X__,
+ ___X_X__,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_120[13] = { /* code 120 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ ___XXX__,
+ ___XXX__,
+ __X___X_,
+ _XXX_XXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_121[13] = { /* code 121 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_XXX,
+ __X___X_,
+ __X___X_,
+ ___X_X__,
+ ___X_X__,
+ ____X___,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_122[13] = { /* code 122 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _X___X__,
+ ____X___,
+ ___X____,
+ __X___X_,
+ _XXXXXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_123[13] = { /* code 123 */
+ ________,
+ ________,
+ _____XX_,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XX____,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ _____XX_};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_124[13] = { /* code 124 */
+ ________,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_125[13] = { /* code 125 */
+ ________,
+ ________,
+ __XX____,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ _____XX_,
+ ____X___,
+ ____X___,
+ ____X___,
+ ____X___,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_126[13] = { /* code 126 */
+ ________,
+ ________,
+ ________,
+ __XX___X,
+ _X__X__X,
+ _X___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x13_ASCII_127[13] = { /* code 127 */
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ________};
+
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_CharInfoF8x13_ASCII[96] = {
+ { 8, 8, 1, acF8x13_ASCII_32 } /* code 32 */
+ ,{ 8, 8, 1, acF8x13_ASCII_33 } /* code 33 */
+ ,{ 8, 8, 1, acF8x13_ASCII_34 } /* code 34 */
+ ,{ 8, 8, 1, acF8x13_ASCII_35 } /* code 35 */
+ ,{ 8, 8, 1, acF8x13_ASCII_36 } /* code 36 */
+ ,{ 8, 8, 1, acF8x13_ASCII_37 } /* code 37 */
+ ,{ 8, 8, 1, acF8x13_ASCII_38 } /* code 38 */
+ ,{ 8, 8, 1, acF8x13_ASCII_39 } /* code 39 */
+ ,{ 8, 8, 1, acF8x13_ASCII_40 } /* code 40 */
+ ,{ 8, 8, 1, acF8x13_ASCII_41 } /* code 41 */
+ ,{ 8, 8, 1, acF8x13_ASCII_42 } /* code 42 */
+ ,{ 8, 8, 1, acF8x13_ASCII_43 } /* code 43 */
+ ,{ 8, 8, 1, acF8x13_ASCII_44 } /* code 44 */
+ ,{ 8, 8, 1, acF8x13_ASCII_45 } /* code 45 */
+ ,{ 8, 8, 1, acF8x13_ASCII_46 } /* code 46 */
+ ,{ 8, 8, 1, acF8x13_ASCII_47 } /* code 47 */
+ ,{ 8, 8, 1, acF8x13_ASCII_48 } /* code 48 */
+ ,{ 8, 8, 1, acF8x13_ASCII_49 } /* code 49 */
+ ,{ 8, 8, 1, acF8x13_ASCII_50 } /* code 50 */
+ ,{ 8, 8, 1, acF8x13_ASCII_51 } /* code 51 */
+ ,{ 8, 8, 1, acF8x13_ASCII_52 } /* code 52 */
+ ,{ 8, 8, 1, acF8x13_ASCII_53 } /* code 53 */
+ ,{ 8, 8, 1, acF8x13_ASCII_54 } /* code 54 */
+ ,{ 8, 8, 1, acF8x13_ASCII_55 } /* code 55 */
+ ,{ 8, 8, 1, acF8x13_ASCII_56 } /* code 56 */
+ ,{ 8, 8, 1, acF8x13_ASCII_57 } /* code 57 */
+ ,{ 8, 8, 1, acF8x13_ASCII_58 } /* code 58 */
+ ,{ 8, 8, 1, acF8x13_ASCII_59 } /* code 59 */
+ ,{ 8, 8, 1, acF8x13_ASCII_60 } /* code 60 */
+ ,{ 8, 8, 1, acF8x13_ASCII_61 } /* code 61 */
+ ,{ 8, 8, 1, acF8x13_ASCII_62 } /* code 62 */
+ ,{ 8, 8, 1, acF8x13_ASCII_63 } /* code 63 */
+ ,{ 8, 8, 1, acF8x13_ASCII_64 } /* code 64 */
+ ,{ 8, 8, 1, acF8x13_ASCII_65 } /* code 65 */
+ ,{ 8, 8, 1, acF8x13_ASCII_66 } /* code 66 */
+ ,{ 8, 8, 1, acF8x13_ASCII_67 } /* code 67 */
+ ,{ 8, 8, 1, acF8x13_ASCII_68 } /* code 68 */
+ ,{ 8, 8, 1, acF8x13_ASCII_69 } /* code 69 */
+ ,{ 8, 8, 1, acF8x13_ASCII_70 } /* code 70 */
+ ,{ 8, 8, 1, acF8x13_ASCII_71 } /* code 71 */
+ ,{ 8, 8, 1, acF8x13_ASCII_72 } /* code 72 */
+ ,{ 8, 8, 1, acF8x13_ASCII_73 } /* code 73 */
+ ,{ 8, 8, 1, acF8x13_ASCII_74 } /* code 74 */
+ ,{ 8, 8, 1, acF8x13_ASCII_75 } /* code 75 */
+ ,{ 8, 8, 1, acF8x13_ASCII_76 } /* code 76 */
+ ,{ 8, 8, 1, acF8x13_ASCII_77 } /* code 77 */
+ ,{ 8, 8, 1, acF8x13_ASCII_78 } /* code 78 */
+ ,{ 8, 8, 1, acF8x13_ASCII_79 } /* code 79 */
+ ,{ 8, 8, 1, acF8x13_ASCII_80 } /* code 80 */
+ ,{ 8, 8, 1, acF8x13_ASCII_81 } /* code 81 */
+ ,{ 8, 8, 1, acF8x13_ASCII_82 } /* code 82 */
+ ,{ 8, 8, 1, acF8x13_ASCII_83 } /* code 83 */
+ ,{ 8, 8, 1, acF8x13_ASCII_84 } /* code 84 */
+ ,{ 8, 8, 1, acF8x13_ASCII_85 } /* code 85 */
+ ,{ 8, 8, 1, acF8x13_ASCII_86 } /* code 86 */
+ ,{ 8, 8, 1, acF8x13_ASCII_87 } /* code 87 */
+ ,{ 8, 8, 1, acF8x13_ASCII_88 } /* code 88 */
+ ,{ 8, 8, 1, acF8x13_ASCII_89 } /* code 89 */
+ ,{ 8, 8, 1, acF8x13_ASCII_90 } /* code 90 */
+ ,{ 8, 8, 1, acF8x13_ASCII_91 } /* code 91 */
+ ,{ 8, 8, 1, acF8x13_ASCII_92 } /* code 92 */
+ ,{ 8, 8, 1, acF8x13_ASCII_93 } /* code 93 */
+ ,{ 8, 8, 1, acF8x13_ASCII_94 } /* code 94 */
+ ,{ 8, 8, 1, acF8x13_ASCII_95 } /* code 95 */
+ ,{ 8, 8, 1, acF8x13_ASCII_96 } /* code 96 */
+ ,{ 8, 8, 1, acF8x13_ASCII_97 } /* code 97 */
+ ,{ 8, 8, 1, acF8x13_ASCII_98 } /* code 98 */
+ ,{ 8, 8, 1, acF8x13_ASCII_99 } /* code 99 */
+ ,{ 8, 8, 1, acF8x13_ASCII_100 } /* code 100 */
+ ,{ 8, 8, 1, acF8x13_ASCII_101 } /* code 101 */
+ ,{ 8, 8, 1, acF8x13_ASCII_102 } /* code 102 */
+ ,{ 8, 8, 1, acF8x13_ASCII_103 } /* code 103 */
+ ,{ 8, 8, 1, acF8x13_ASCII_104 } /* code 104 */
+ ,{ 8, 8, 1, acF8x13_ASCII_105 } /* code 105 */
+ ,{ 8, 8, 1, acF8x13_ASCII_106 } /* code 106 */
+ ,{ 8, 8, 1, acF8x13_ASCII_107 } /* code 107 */
+ ,{ 8, 8, 1, acF8x13_ASCII_108 } /* code 108 */
+ ,{ 8, 8, 1, acF8x13_ASCII_109 } /* code 109 */
+ ,{ 8, 8, 1, acF8x13_ASCII_110 } /* code 110 */
+ ,{ 8, 8, 1, acF8x13_ASCII_111 } /* code 111 */
+ ,{ 8, 8, 1, acF8x13_ASCII_112 } /* code 112 */
+ ,{ 8, 8, 1, acF8x13_ASCII_113 } /* code 113 */
+ ,{ 8, 8, 1, acF8x13_ASCII_114 } /* code 114 */
+ ,{ 8, 8, 1, acF8x13_ASCII_115 } /* code 115 */
+ ,{ 8, 8, 1, acF8x13_ASCII_116 } /* code 116 */
+ ,{ 8, 8, 1, acF8x13_ASCII_117 } /* code 117 */
+ ,{ 8, 8, 1, acF8x13_ASCII_118 } /* code 118 */
+ ,{ 8, 8, 1, acF8x13_ASCII_119 } /* code 119 */
+ ,{ 8, 8, 1, acF8x13_ASCII_120 } /* code 120 */
+ ,{ 8, 8, 1, acF8x13_ASCII_121 } /* code 121 */
+ ,{ 8, 8, 1, acF8x13_ASCII_122 } /* code 122 */
+ ,{ 8, 8, 1, acF8x13_ASCII_123 } /* code 123 */
+ ,{ 8, 8, 1, acF8x13_ASCII_124 } /* code 124 */
+ ,{ 8, 8, 1, acF8x13_ASCII_125 } /* code 125 */
+ ,{ 8, 8, 1, acF8x13_ASCII_126 } /* code 126 */
+ ,{ 8, 8, 1, acF8x13_ASCII_127 } /* code 127 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontPropF8x13_ASCII_1 = {
+ 32 /* first character */
+ ,127 /* last character */
+ ,GUI_CharInfoF8x13_ASCII /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x13_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,13 /* height of font */
+ ,13 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontPropF8x13_ASCII_1}
+ , 11, 6, 9
+};
+
diff --git a/User/lib/lcd/gui/Font/F8x15B_1.c b/User/lib/lcd/gui/Font/F8x15B_1.c
new file mode 100644
index 0000000..eef129b
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F8x15B_1.c
@@ -0,0 +1,1777 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F8x15B.C
+Purpose : Monospaced Bold Font similar to the fixed system font
+Height : 15
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_160[15] = { /* code 160 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_161[15] = { /* code 161 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ___XX___};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_162[15] = { /* code 162 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_163[15] = { /* code 163 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ XXXXXX__,
+ _XX_____,
+ _XX_____,
+ XX______,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_164[15] = { /* code 164 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_165[15] = { /* code 165 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ _XXXXXX_,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_166[15] = { /* code 166 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_167[15] = { /* code 167 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ __XXX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XXX__,
+ _____XX_,
+ _XX__XX_,
+ __XXXX__};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_168[15] = { /* code 168 */
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_169[15] = { /* code 169 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ XX____XX,
+ X__XX__X,
+ X_X__X_X,
+ X_X____X,
+ X_X__X_X,
+ X__XX__X,
+ XX____XX,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_170[15] = { /* code 170 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _____XX_,
+ __XXXXX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_171[15] = { /* code 171 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX__XX,
+ _XX__XX_,
+ XX__XX__,
+ _XX__XX_,
+ __XX__XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_172[15] = { /* code 172 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _____XX_,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_173[15] = { /* code 173 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_174[15] = { /* code 174 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ XX____XX,
+ X_XXX__X,
+ X_X__X_X,
+ X_X__X_X,
+ X_XXX__X,
+ X_X__X_X,
+ XX____XX,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_175[15] = { /* code 175 */
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_176[15] = { /* code 176 */
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_177[15] = { /* code 177 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_178[15] = { /* code 178 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_179[15] = { /* code 179 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ____XX__,
+ ___XX___,
+ ____XX__,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_180[15] = { /* code 180 */
+ ________,
+ ___XXX__,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_181[15] = { /* code 181 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXX_XX,
+ _XX_____,
+ _XX_____,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_182[15] = { /* code 182 */
+ ________,
+ ________,
+ ________,
+ ___XXXXX,
+ __XXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ __XXXXX_,
+ ___XXXX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _____XX_};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_183[15] = { /* code 183 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_184[15] = { /* code 184 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ____XX__,
+ __XXX___};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_185[15] = { /* code 185 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_186[15] = { /* code 186 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_187[15] = { /* code 187 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ _XX__XX_,
+ __XX__XX,
+ _XX__XX_,
+ XX__XX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_188[15] = { /* code 188 */
+ ________,
+ ________,
+ _XX_____,
+ XXX_____,
+ _XX___XX,
+ _XX__XX_,
+ _XX_XX__,
+ ___XX___,
+ __XX_XXX,
+ _XX_XXXX,
+ XX_XX_XX,
+ ___XXXXX,
+ ______XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_189[15] = { /* code 189 */
+ ________,
+ ________,
+ _XX_____,
+ XXX_____,
+ _XX___XX,
+ _XX__XX_,
+ _XX_XX__,
+ ___XX___,
+ __XXXXX_,
+ _XX___XX,
+ XX___XX_,
+ ____XX__,
+ ____XXXX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_190[15] = { /* code 190 */
+ ________,
+ ________,
+ XXX_____,
+ __XX____,
+ _XX___XX,
+ __XX_XX_,
+ XXX_XX__,
+ ___XX___,
+ __XX_XXX,
+ _XX_XXXX,
+ XX_XX_XX,
+ ___XXXXX,
+ ______XX,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_191[15] = { /* code 191 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_192[15] = { /* code 192 */
+ __XX____,
+ ___XX___,
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_193[15] = { /* code 193 */
+ ____XX__,
+ ___XX___,
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_194[15] = { /* code 194 */
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_195[15] = { /* code 195 */
+ __XXX_XX,
+ _XX_XXX_,
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_196[15] = { /* code 196 */
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_197[15] = { /* code 197 */
+ __XXXX__,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_198[15] = { /* code 198 */
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ ___XXX__,
+ __XXXX__,
+ _XX_XX__,
+ _XX_XXXX,
+ _XXXXX__,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XXXX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_199[15] = { /* code 199 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ____XX__,
+ __XXX___};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_200[15] = { /* code 200 */
+ __XX____,
+ ___XX___,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_201[15] = { /* code 201 */
+ ____XX__,
+ ___XX___,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_202[15] = { /* code 202 */
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_203[15] = { /* code 203 */
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_204[15] = { /* code 204 */
+ __XX____,
+ ___XX___,
+ ________,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_205[15] = { /* code 205 */
+ ____XX__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_206[15] = { /* code 206 */
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_207[15] = { /* code 207 */
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_208[15] = { /* code 208 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ XXXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_209[15] = { /* code 209 */
+ __XXX_XX,
+ _XX_XXX_,
+ ________,
+ _XX___XX,
+ _XX___XX,
+ _XXX__XX,
+ _XXXX_XX,
+ _XX_XXXX,
+ _XX__XXX,
+ _XX___XX,
+ _XX___XX,
+ _XX___XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_210[15] = { /* code 210 */
+ __XX____,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_211[15] = { /* code 211 */
+ ____XX__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_212[15] = { /* code 212 */
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_213[15] = { /* code 213 */
+ __XXX_XX,
+ _XX_XXX_,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_214[15] = { /* code 214 */
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_215[15] = { /* code 215 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _X____X_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _X____X_,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_216[15] = { /* code 216 */
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _XX__XX_,
+ _XX_XXX_,
+ _XX_XXX_,
+ _XXXXXX_,
+ _XXX_XX_,
+ _XXX_XX_,
+ _XX__XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_217[15] = { /* code 217 */
+ __XX____,
+ ___XX___,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_218[15] = { /* code 218 */
+ ____XX__,
+ ___XX___,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_219[15] = { /* code 219 */
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_220[15] = { /* code 220 */
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_221[15] = { /* code 221 */
+ ____XX__,
+ ___XX___,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_222[15] = { /* code 222 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_223[15] = { /* code 223 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_224[15] = { /* code 224 */
+ ________,
+ _XXX____,
+ __XX____,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _____XX_,
+ _____XX_,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_225[15] = { /* code 225 */
+ ________,
+ ____XXX_,
+ ____XX__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _____XX_,
+ _____XX_,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_226[15] = { /* code 226 */
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ _____XX_,
+ _____XX_,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_227[15] = { /* code 227 */
+ ________,
+ _XXX___X,
+ XX_XX_XX,
+ X___XXX_,
+ ________,
+ __XXXX__,
+ _____XX_,
+ _____XX_,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_228[15] = { /* code 228 */
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ _____XX_,
+ _____XX_,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_229[15] = { /* code 229 */
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ __XXXX__,
+ _____XX_,
+ _____XX_,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_230[15] = { /* code 230 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_XXX_,
+ ___XX_XX,
+ ___XX_XX,
+ _XXXXXXX,
+ XX_XX___,
+ XX_XX___,
+ _XXX_XXX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_231[15] = { /* code 231 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ____XX__,
+ __XXX___};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_232[15] = { /* code 232 */
+ ________,
+ _XXX____,
+ __XX____,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_233[15] = { /* code 233 */
+ ________,
+ ____XXX_,
+ ____XX__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_234[15] = { /* code 234 */
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_235[15] = { /* code 235 */
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_236[15] = { /* code 236 */
+ ________,
+ _XXX____,
+ __XX____,
+ ___XX___,
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_237[15] = { /* code 237 */
+ ________,
+ ____XXX_,
+ ____XX__,
+ ___XX___,
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_238[15] = { /* code 238 */
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_239[15] = { /* code 239 */
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_240[15] = { /* code 240 */
+ ________,
+ ________,
+ ________,
+ __XX_XX_,
+ ___XX___,
+ _XX_XX__,
+ ___XXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_241[15] = { /* code 241 */
+ ________,
+ _XXX___X,
+ XX_XX_XX,
+ X___XXX_,
+ ________,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_242[15] = { /* code 242 */
+ ________,
+ _XXX____,
+ __XX____,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_243[15] = { /* code 243 */
+ ________,
+ ____XXX_,
+ ____XX__,
+ ___XX___,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_244[15] = { /* code 244 */
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_245[15] = { /* code 245 */
+ ________,
+ _XXX___X,
+ XX_XX_XX,
+ X___XXX_,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_246[15] = { /* code 246 */
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_247[15] = { /* code 247 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ _XXXXXX_,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_248[15] = { /* code 248 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _XX__XX_,
+ _XX_XXX_,
+ _XXXXXX_,
+ _XXX_XX_,
+ _XX__XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_249[15] = { /* code 249 */
+ ________,
+ _XXX____,
+ __XX____,
+ ___XX___,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_250[15] = { /* code 250 */
+ ________,
+ ____XXX_,
+ ____XX__,
+ ___XX___,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_251[15] = { /* code 251 */
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_252[15] = { /* code 252 */
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_253[15] = { /* code 253 */
+ ________,
+ ____XXX_,
+ ____XX__,
+ ___XX___,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ____XX__,
+ ___XX___,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_254[15] = { /* code 254 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_1_255[15] = { /* code 255 */
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ____XX__,
+ ___XX___,
+ XXXX____};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_CharInfoF8x15B_1[96] = {
+ { 8, 8, 1, acF8x15B_1_160 } /* code 160 */
+ ,{ 8, 8, 1, acF8x15B_1_161 } /* code 161 */
+ ,{ 8, 8, 1, acF8x15B_1_162 } /* code 162 */
+ ,{ 8, 8, 1, acF8x15B_1_163 } /* code 163 */
+ ,{ 8, 8, 1, acF8x15B_1_164 } /* code 164 */
+ ,{ 8, 8, 1, acF8x15B_1_165 } /* code 165 */
+ ,{ 8, 8, 1, acF8x15B_1_166 } /* code 166 */
+ ,{ 8, 8, 1, acF8x15B_1_167 } /* code 167 */
+ ,{ 8, 8, 1, acF8x15B_1_168 } /* code 168 */
+ ,{ 8, 8, 1, acF8x15B_1_169 } /* code 169 */
+ ,{ 8, 8, 1, acF8x15B_1_170 } /* code 170 */
+ ,{ 8, 8, 1, acF8x15B_1_171 } /* code 171 */
+ ,{ 8, 8, 1, acF8x15B_1_172 } /* code 172 */
+ ,{ 8, 8, 1, acF8x15B_1_173 } /* code 173 */
+ ,{ 8, 8, 1, acF8x15B_1_174 } /* code 174 */
+ ,{ 8, 8, 1, acF8x15B_1_175 } /* code 175 */
+ ,{ 8, 8, 1, acF8x15B_1_176 } /* code 176 */
+ ,{ 8, 8, 1, acF8x15B_1_177 } /* code 177 */
+ ,{ 8, 8, 1, acF8x15B_1_178 } /* code 178 */
+ ,{ 8, 8, 1, acF8x15B_1_179 } /* code 179 */
+ ,{ 8, 8, 1, acF8x15B_1_180 } /* code 180 */
+ ,{ 8, 8, 1, acF8x15B_1_181 } /* code 181 */
+ ,{ 8, 8, 1, acF8x15B_1_182 } /* code 182 */
+ ,{ 8, 8, 1, acF8x15B_1_183 } /* code 183 */
+ ,{ 8, 8, 1, acF8x15B_1_184 } /* code 184 */
+ ,{ 8, 8, 1, acF8x15B_1_185 } /* code 185 */
+ ,{ 8, 8, 1, acF8x15B_1_186 } /* code 186 */
+ ,{ 8, 8, 1, acF8x15B_1_187 } /* code 187 */
+ ,{ 8, 8, 1, acF8x15B_1_188 } /* code 188 */
+ ,{ 8, 8, 1, acF8x15B_1_189 } /* code 189 */
+ ,{ 8, 8, 1, acF8x15B_1_190 } /* code 190 */
+ ,{ 8, 8, 1, acF8x15B_1_191 } /* code 191 */
+ ,{ 8, 8, 1, acF8x15B_1_192 } /* code 192 */
+ ,{ 8, 8, 1, acF8x15B_1_193 } /* code 193 */
+ ,{ 8, 8, 1, acF8x15B_1_194 } /* code 194 */
+ ,{ 8, 8, 1, acF8x15B_1_195 } /* code 195 */
+ ,{ 8, 8, 1, acF8x15B_1_196 } /* code 196 */
+ ,{ 8, 8, 1, acF8x15B_1_197 } /* code 197 */
+ ,{ 8, 8, 1, acF8x15B_1_198 } /* code 198 */
+ ,{ 8, 8, 1, acF8x15B_1_199 } /* code 199 */
+ ,{ 8, 8, 1, acF8x15B_1_200 } /* code 200 */
+ ,{ 8, 8, 1, acF8x15B_1_201 } /* code 201 */
+ ,{ 8, 8, 1, acF8x15B_1_202 } /* code 202 */
+ ,{ 8, 8, 1, acF8x15B_1_203 } /* code 203 */
+ ,{ 8, 8, 1, acF8x15B_1_204 } /* code 204 */
+ ,{ 8, 8, 1, acF8x15B_1_205 } /* code 205 */
+ ,{ 8, 8, 1, acF8x15B_1_206 } /* code 206 */
+ ,{ 8, 8, 1, acF8x15B_1_207 } /* code 207 */
+ ,{ 8, 8, 1, acF8x15B_1_208 } /* code 208 */
+ ,{ 8, 8, 1, acF8x15B_1_209 } /* code 209 */
+ ,{ 8, 8, 1, acF8x15B_1_210 } /* code 210 */
+ ,{ 8, 8, 1, acF8x15B_1_211 } /* code 211 */
+ ,{ 8, 8, 1, acF8x15B_1_212 } /* code 212 */
+ ,{ 8, 8, 1, acF8x15B_1_213 } /* code 213 */
+ ,{ 8, 8, 1, acF8x15B_1_214 } /* code 214 */
+ ,{ 8, 8, 1, acF8x15B_1_215 } /* code 215 */
+ ,{ 8, 8, 1, acF8x15B_1_216 } /* code 216 */
+ ,{ 8, 8, 1, acF8x15B_1_217 } /* code 217 */
+ ,{ 8, 8, 1, acF8x15B_1_218 } /* code 218 */
+ ,{ 8, 8, 1, acF8x15B_1_219 } /* code 219 */
+ ,{ 8, 8, 1, acF8x15B_1_220 } /* code 220 */
+ ,{ 8, 8, 1, acF8x15B_1_221 } /* code 221 */
+ ,{ 8, 8, 1, acF8x15B_1_222 } /* code 222 */
+ ,{ 8, 8, 1, acF8x15B_1_223 } /* code 223 */
+ ,{ 8, 8, 1, acF8x15B_1_224 } /* code 224 */
+ ,{ 8, 8, 1, acF8x15B_1_225 } /* code 225 */
+ ,{ 8, 8, 1, acF8x15B_1_226 } /* code 226 */
+ ,{ 8, 8, 1, acF8x15B_1_227 } /* code 227 */
+ ,{ 8, 8, 1, acF8x15B_1_228 } /* code 228 */
+ ,{ 8, 8, 1, acF8x15B_1_229 } /* code 229 */
+ ,{ 8, 8, 1, acF8x15B_1_230 } /* code 230 */
+ ,{ 8, 8, 1, acF8x15B_1_231 } /* code 231 */
+ ,{ 8, 8, 1, acF8x15B_1_232 } /* code 232 */
+ ,{ 8, 8, 1, acF8x15B_1_233 } /* code 233 */
+ ,{ 8, 8, 1, acF8x15B_1_234 } /* code 234 */
+ ,{ 8, 8, 1, acF8x15B_1_235 } /* code 235 */
+ ,{ 8, 8, 1, acF8x15B_1_236 } /* code 236 */
+ ,{ 8, 8, 1, acF8x15B_1_237 } /* code 237 */
+ ,{ 8, 8, 1, acF8x15B_1_238 } /* code 238 */
+ ,{ 8, 8, 1, acF8x15B_1_239 } /* code 239 */
+ ,{ 8, 8, 1, acF8x15B_1_240 } /* code 240 */
+ ,{ 8, 8, 1, acF8x15B_1_241 } /* code 241 */
+ ,{ 8, 8, 1, acF8x15B_1_242 } /* code 242 */
+ ,{ 8, 8, 1, acF8x15B_1_243 } /* code 243 */
+ ,{ 8, 8, 1, acF8x15B_1_244 } /* code 244 */
+ ,{ 8, 8, 1, acF8x15B_1_245 } /* code 245 */
+ ,{ 8, 8, 1, acF8x15B_1_246 } /* code 246 */
+ ,{ 8, 8, 1, acF8x15B_1_247 } /* code 247 */
+ ,{ 8, 8, 1, acF8x15B_1_248 } /* code 248 */
+ ,{ 8, 8, 1, acF8x15B_1_249 } /* code 249 */
+ ,{ 8, 8, 1, acF8x15B_1_250 } /* code 250 */
+ ,{ 8, 8, 1, acF8x15B_1_251 } /* code 251 */
+ ,{ 8, 8, 1, acF8x15B_1_252 } /* code 252 */
+ ,{ 8, 8, 1, acF8x15B_1_253 } /* code 253 */
+ ,{ 8, 8, 1, acF8x15B_1_254 } /* code 254 */
+ ,{ 8, 8, 1, acF8x15B_1_255 } /* code 255 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontPropF8x15B_1_2 = {
+ 160 /* first character */
+ ,255 /* last character */
+ ,GUI_CharInfoF8x15B_1 /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontPropF8x15B_1_1 = {
+ 32 /* first character */
+ ,127 /* last character */
+ ,GUI_CharInfoF8x15B_ASCII /* address of first character */
+ ,&GUI_FontPropF8x15B_1_2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x15B_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,15 /* height of font */
+ ,15 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontPropF8x15B_1_1}
+ , 12, 7, 9
+};
+
diff --git a/User/lib/lcd/gui/Font/F8x15B_ASCII.c b/User/lib/lcd/gui/Font/F8x15B_ASCII.c
new file mode 100644
index 0000000..135ca92
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F8x15B_ASCII.c
@@ -0,0 +1,1770 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F8x15B.C
+Purpose : Monospaced Bold Font similar to the fixed system font
+Height : 15
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_32[15] = { /* code 32 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_33[15] = { /* code 33 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_34[15] = { /* code 34 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_35[15] = { /* code 35 */
+ ________,
+ ________,
+ ________,
+ __XX_XX_,
+ __XX_XX_,
+ _XXXXXXX,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ _XXXXXXX,
+ __XX_XX_,
+ __XX_XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_36[15] = { /* code 36 */
+ ________,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_37[15] = { /* code 37 */
+ ________,
+ ________,
+ _XXX____,
+ XX_XX___,
+ XX_XX_X_,
+ _XXX_XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_XXX_,
+ _X_XX_XX,
+ ___XX_XX,
+ ____XXX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_38[15] = { /* code 38 */
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ _XX_____,
+ _XX_XXXX,
+ _XX__XX_,
+ _XX__XX_,
+ __XXX_XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_39[15] = { /* code 39 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_40[15] = { /* code 40 */
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_41[15] = { /* code 41 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_42[15] = { /* code 42 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX_XX_,
+ ___XXX__,
+ _XXXXXXX,
+ ___XXX__,
+ __XX_XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_43[15] = { /* code 43 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_44[15] = { /* code 44 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ____XX__,
+ ___XX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_45[15] = { /* code 45 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_46[15] = { /* code 46 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_47[15] = { /* code 47 */
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_48[15] = { /* code 48 */
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ __XX__XX,
+ __XX_XXX,
+ __XX_XXX,
+ __XX__XX,
+ __XXX_XX,
+ __XXX_XX,
+ __XX__XX,
+ ___XXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_49[15] = { /* code 49 */
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ___XXX__,
+ _XXXXX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_50[15] = { /* code 50 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_51[15] = { /* code 51 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _____XX_,
+ ___XXX__,
+ _____XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_52[15] = { /* code 52 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ _XX__XX_,
+ _XXXXXXX,
+ _____XX_,
+ _____XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_53[15] = { /* code 53 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_54[15] = { /* code 54 */
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XX___,
+ __XX____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_55[15] = { /* code 55 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _____XX_,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_56[15] = { /* code 56 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXX_XX_,
+ __XXXX__,
+ _XX_XXX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_57[15] = { /* code 57 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ____XX__,
+ ___XX___,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_58[15] = { /* code 58 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_59[15] = { /* code 59 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ____XX__,
+ ___XX___,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_60[15] = { /* code 60 */
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_61[15] = { /* code 61 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_62[15] = { /* code 62 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_63[15] = { /* code 63 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_64[15] = { /* code 64 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ XX____XX,
+ XX____XX,
+ XX__XXXX,
+ XX_XX_XX,
+ XX_XX_XX,
+ XX__XXXX,
+ XX______,
+ _XXXXXXX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_65[15] = { /* code 65 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_66[15] = { /* code 66 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_67[15] = { /* code 67 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_68[15] = { /* code 68 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_69[15] = { /* code 69 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_70[15] = { /* code 70 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_71[15] = { /* code 71 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX_XXX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_72[15] = { /* code 72 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_73[15] = { /* code 73 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_74[15] = { /* code 74 */
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_75[15] = { /* code 75 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XXXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_76[15] = { /* code 76 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_77[15] = { /* code 77 */
+ ________,
+ ________,
+ ________,
+ _XX___XX,
+ _XX___XX,
+ _XXX_XXX,
+ _XX_X_XX,
+ _XX_X_XX,
+ _XX_X_XX,
+ _XX___XX,
+ _XX___XX,
+ _XX___XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_78[15] = { /* code 78 */
+ ________,
+ ________,
+ ________,
+ _XX___XX,
+ _XX___XX,
+ _XXX__XX,
+ _XXXX_XX,
+ _XX_XXXX,
+ _XX__XXX,
+ _XX___XX,
+ _XX___XX,
+ _XX___XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_79[15] = { /* code 79 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_80[15] = { /* code 80 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_81[15] = { /* code 81 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ____XX__,
+ _____XX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_82[15] = { /* code 82 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_83[15] = { /* code 83 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_84[15] = { /* code 84 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_85[15] = { /* code 85 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_86[15] = { /* code 86 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_87[15] = { /* code 87 */
+ ________,
+ ________,
+ ________,
+ _XX___XX,
+ _XX___XX,
+ _XX___XX,
+ _XX_X_XX,
+ _XX_X_XX,
+ _XX_X_XX,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_88[15] = { /* code 88 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ __XX_X__,
+ ___XX___,
+ ___XX___,
+ __X_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_89[15] = { /* code 89 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_90[15] = { /* code 90 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_91[15] = { /* code 91 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXXX__};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_92[15] = { /* code 92 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ ____XX__,
+ _____XX_,
+ _____XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_93[15] = { /* code 93 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ __XXXX__};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_94[15] = { /* code 94 */
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_95[15] = { /* code 95 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_96[15] = { /* code 96 */
+ ________,
+ __XXX___,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_97[15] = { /* code 97 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _____XX_,
+ _____XX_,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_98[15] = { /* code 98 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_99[15] = { /* code 99 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_100[15] = { /* code 100 */
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ _____XX_,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_101[15] = { /* code 101 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_102[15] = { /* code 102 */
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXXXXX_,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_103[15] = { /* code 103 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ _____XX_,
+ _____XX_,
+ _XXXXX__};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_104[15] = { /* code 104 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_105[15] = { /* code 105 */
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_106[15] = { /* code 106 */
+ ________,
+ ________,
+ ____XX__,
+ ____XX__,
+ ________,
+ __XXXX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_107[15] = { /* code 107 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ _XXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_108[15] = { /* code 108 */
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_109[15] = { /* code 109 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XX_X_XX,
+ _XX_X_XX,
+ _XX_X_XX,
+ _XX_X_XX,
+ _XX_X_XX,
+ _XX___XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_110[15] = { /* code 110 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_111[15] = { /* code 111 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_112[15] = { /* code 112 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_113[15] = { /* code 113 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ _____XX_,
+ _____XX_,
+ _____XX_};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_114[15] = { /* code 114 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX_XXX_,
+ _XXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_115[15] = { /* code 115 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _XX_____,
+ _XX_____,
+ __XXXX__,
+ _____XX_,
+ _____XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_116[15] = { /* code 116 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ _XXXXXX_,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_117[15] = { /* code 117 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_118[15] = { /* code 118 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_119[15] = { /* code 119 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX___XX,
+ _XX_X_XX,
+ _XX_X_XX,
+ _XX_X_XX,
+ _XX_X_XX,
+ __XX_XX_,
+ __XX_XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_120[15] = { /* code 120 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_121[15] = { /* code 121 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ____XX__,
+ ___XX___,
+ XXXX____};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_122[15] = { /* code 122 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_123[15] = { /* code 123 */
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_124[15] = { /* code 124 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_125[15] = { /* code 125 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_126[15] = { /* code 126 */
+ ________,
+ ________,
+ ________,
+ _XXX___X,
+ XX_XX_XX,
+ X___XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acF8x15B_ASCII_127[15] = { /* code 127 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_CharInfoF8x15B_ASCII[96] = {
+ { 8, 8, 1, acF8x15B_ASCII_32 } /* code 32 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_33 } /* code 33 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_34 } /* code 34 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_35 } /* code 35 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_36 } /* code 36 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_37 } /* code 37 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_38 } /* code 38 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_39 } /* code 39 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_40 } /* code 40 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_41 } /* code 41 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_42 } /* code 42 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_43 } /* code 43 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_44 } /* code 44 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_45 } /* code 45 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_46 } /* code 46 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_47 } /* code 47 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_48 } /* code 48 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_49 } /* code 49 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_50 } /* code 50 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_51 } /* code 51 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_52 } /* code 52 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_53 } /* code 53 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_54 } /* code 54 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_55 } /* code 55 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_56 } /* code 56 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_57 } /* code 57 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_58 } /* code 58 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_59 } /* code 59 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_60 } /* code 60 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_61 } /* code 61 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_62 } /* code 62 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_63 } /* code 63 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_64 } /* code 64 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_65 } /* code 65 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_66 } /* code 66 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_67 } /* code 67 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_68 } /* code 68 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_69 } /* code 69 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_70 } /* code 70 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_71 } /* code 71 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_72 } /* code 72 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_73 } /* code 73 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_74 } /* code 74 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_75 } /* code 75 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_76 } /* code 76 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_77 } /* code 77 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_78 } /* code 78 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_79 } /* code 79 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_80 } /* code 80 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_81 } /* code 81 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_82 } /* code 82 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_83 } /* code 83 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_84 } /* code 84 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_85 } /* code 85 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_86 } /* code 86 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_87 } /* code 87 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_88 } /* code 88 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_89 } /* code 89 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_90 } /* code 90 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_91 } /* code 91 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_92 } /* code 92 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_93 } /* code 93 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_94 } /* code 94 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_95 } /* code 95 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_96 } /* code 96 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_97 } /* code 97 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_98 } /* code 98 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_99 } /* code 99 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_100 } /* code 100 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_101 } /* code 101 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_102 } /* code 102 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_103 } /* code 103 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_104 } /* code 104 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_105 } /* code 105 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_106 } /* code 106 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_107 } /* code 107 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_108 } /* code 108 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_109 } /* code 109 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_110 } /* code 110 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_111 } /* code 111 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_112 } /* code 112 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_113 } /* code 113 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_114 } /* code 114 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_115 } /* code 115 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_116 } /* code 116 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_117 } /* code 117 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_118 } /* code 118 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_119 } /* code 119 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_120 } /* code 120 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_121 } /* code 121 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_122 } /* code 122 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_123 } /* code 123 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_124 } /* code 124 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_125 } /* code 125 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_126 } /* code 126 */
+ ,{ 8, 8, 1, acF8x15B_ASCII_127 } /* code 127 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontPropF8x15B_ASCII_1 = {
+ 32 /* first character */
+ ,127 /* last character */
+ ,GUI_CharInfoF8x15B_ASCII /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x15B_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,15 /* height of font */
+ ,15 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontPropF8x15B_ASCII_1}
+ , 12, 7, 9
+};
+
diff --git a/User/lib/lcd/gui/Font/F8x16.c b/User/lib/lcd/gui/Font/F8x16.c
new file mode 100644
index 0000000..43d413c
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F8x16.c
@@ -0,0 +1,3321 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F8x16.C
+Purpose : Implementation of 8x16 pixel font
+Height : 16
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* *********************************
+ * *
+ * Special character codes *
+ * *
+ *********************************
+*/
+
+/* No 95 to 125 for European character set */
+
+#define CODE_SACCAGUE 95 /* small accent ague */
+#define CODE_SACCGRAV 96
+#define CODE_SACCCIRC 97
+#define CODE_SUMLAUT 98
+#define CODE_STILDE 99
+#define CODE_I_NOPOINT 100
+
+#define CODE_SHARPS 101
+#define CODE_A_RING 102
+#define CODE_SA_RING 103
+#define CODE_AE 104
+#define CODE_ETH 105
+#define CODE_THORN 106
+#define CODE_SMALLAE 107
+#define CODE_SMALLETH 108
+#define CODE_SMALLTHORN 109
+#define CODE_OSLASH 110
+#define CODE_SOSLASH 111
+#define CODE_LITTLE_A 112
+#define CODE_LITTLE_E 113
+#define CODE_LITTLE_I 114
+#define CODE_LITTLE_O 115
+#define CODE_LITTLE_U 116
+#define CODE_LITTLE_N 117
+
+#define CODE_INVEXCLAM 118
+#define CODE_INVQUEST 119
+
+#define CODE_CACCAGUE 120 /* capital accent ague */
+#define CODE_CACCGRAV 121
+#define CODE_CACCCIRC 122
+#define CODE_CUMLAUT 123
+#define CODE_CTILDE 124
+#define CODE_CEDILLA 125
+
+/* No 126 to 156 for complete ISO 8859_1 western latin character set */
+#define CODE_NB_SPACE 126
+#define CODE_CENT 127
+#define CODE_POUND 128
+#define CODE_CURRENCY 129
+#define CODE_YEN 130
+#define CODE_BROKEN_BAR 131
+#define CODE_SECTION 132
+#define CODE_DIERESIS 133
+#define CODE_COPYRIGHT 134
+#define CODE_FEMININE 135
+#define CODE_LEFT_QUOTE 136
+#define CODE_NOT 137
+#define CODE_HYPHEN 138
+#define CODE_TRADEMARK 139
+#define CODE_MACRON 140
+#define CODE_DEGREE 141
+#define CODE_PLUS_MINUS 142
+#define CODE_SUPER_TWO 143
+#define CODE_SUPER_THREE 144
+#define CODE_ACUTE 145
+#define CODE_MICRO 146
+#define CODE_PARAGRAPH 147
+#define CODE_MIDDLE_DOT 148
+#define CODE_SUPER_ONE 149
+#define CODE_MASCULINE 150
+#define CODE_RIGHT_QUOTE 151
+#define CODE_ONE_FOURTH 152
+#define CODE_ONE_HALF 153
+#define CODE_THREE_FOURTH 154
+#define CODE_MULTIPLY 155
+#define CODE_DIVISION 156
+/* The following are extensions to ISO 8859-1 in the area which is not
+ defined by the standard.
+*/
+#define CODE_ARROW_LEFT 157
+#define CODE_ARROW_RIGHT 158
+#define CODE_ARROW_UP 159
+#define CODE_ARROW_DOWN 160
+#define CODE_ENTER 161
+#define CODE_CHECKMARK 162
+
+
+
+
+GUI_CONST_STORAGE U8 acFont8x16[][16] = {
+
+
+ {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char ' ' */
+
+ ,{
+ ________,
+ ________,
+ ___XX___,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char '!' */
+
+ ,{
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __X__X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '"' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ _XX_XX__,
+ _XX_XX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char '#' */
+
+ ,{
+ ___XX___,
+ ___XX___,
+ _XXXXX__,
+ XX___XX_,
+ XX____X_,
+ XX______,
+ _XXXXX__,
+ _____XX_,
+ _____XX_,
+ X____XX_,
+ XX___XX_,
+ _XXXXX__,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________} /* char '$' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ XX____X_,
+ XX___XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX___XX_,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char '%' */
+
+ ,{
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ _XXX_XX_,
+ XX_XXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char '&' */
+
+ ,{
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char ''' */
+
+ ,{
+ ________,
+ ________,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char '(' */
+
+ ,{
+ ________,
+ ________,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________} /* char ')' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ __XXXX__,
+ XXXXXXXX,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '*' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '+' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ________} /* char ',' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '-' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char '.' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ______X_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________} /* char '/' */
+
+ ,{
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char '0' */
+
+ ,{
+ ________,
+ ________,
+ ___XX___,
+ __XXX___,
+ _XXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char '1' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ XX___XX_,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char '2' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ _____XX_,
+ _____XX_,
+ __XXXX__,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char '3' */
+
+ ,{
+ ________,
+ ________,
+ ____XX__,
+ ___XXX__,
+ __XXXX__,
+ _XX_XX__,
+ XX__XX__,
+ XXXXXXX_,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char '4' */
+
+ ,{
+ ________,
+ ________,
+ XXXXXXX_,
+ XX______,
+ XX______,
+ XX______,
+ XXXXXX__,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char '5' */
+
+ ,{
+ ________,
+ ________,
+ __XXX___,
+ _XX_____,
+ XX______,
+ XX______,
+ XXXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char '6' */
+
+ ,{
+ ________,
+ ________,
+ XXXXXXX_,
+ XX___XX_,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________} /* char '7' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char '8' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char '9' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char ':' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________} /* char ';' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char '<' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '=' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________} /* char '>' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char '?' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX_XXXX_,
+ XX_XXXX_,
+ XX_XXXX_,
+ XX_XXX__,
+ XX______,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char '@' */
+
+ ,{
+ ________,
+ ________,
+ ___X____,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'A' */
+
+ ,{
+ ________,
+ ________,
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'B' */
+
+ ,{
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ XX____X_,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX____X_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'C' */
+
+ ,{
+ ________,
+ ________,
+ XXXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'D' */
+
+ ,{
+ ________,
+ ________,
+ XXXXXXX_,
+ _XX__XX_,
+ _XX___X_,
+ _XX_X___,
+ _XXXX___,
+ _XX_X___,
+ _XX_____,
+ _XX___X_,
+ _XX__XX_,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'E' */
+
+ ,{
+ ________,
+ ________,
+ XXXXXXX_,
+ _XX__XX_,
+ _XX___X_,
+ _XX_X___,
+ _XXXX___,
+ _XX_X___,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'F' */
+
+ ,{
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ XX____X_,
+ XX______,
+ XX______,
+ XX_XXXX_,
+ XX___XX_,
+ XX___XX_,
+ _XX__XX_,
+ __XXX_X_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'G' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'H' */
+
+ ,{
+ ________,
+ ________,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'I' */
+
+ ,{
+ ________,
+ ________,
+ ___XXXX_,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'J' */
+
+ ,{
+ ________,
+ ________,
+ XXX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ _XXXX___,
+ _XXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ XXX__XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'K' */
+
+ ,{
+ ________,
+ ________,
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX___X_,
+ _XX__XX_,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'L' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XXX_XXX_,
+ XXXXXXX_,
+ XXXXXXX_,
+ XX_X_XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'M' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XXX__XX_,
+ XXXX_XX_,
+ XXXXXXX_,
+ XX_XXXX_,
+ XX__XXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'N' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'O' */
+
+ ,{
+ ________,
+ ________,
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'P' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX_X_XX_,
+ XX_XXXX_,
+ _XXXXX__,
+ ____XX__,
+ ____XXX_,
+ ________,
+ ________} /* char 'Q' */
+
+ ,{
+ ________,
+ ________,
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XXX__XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'R' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ _XX_____,
+ __XXX___,
+ ____XX__,
+ _____XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'S' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXXX_,
+ _XXXXXX_,
+ _X_XX_X_,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'T' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'U' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ ___X____,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'V' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XXXXXXX_,
+ XXX_XXX_,
+ _XX_XX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'W' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ _XXXXX__,
+ __XXX___,
+ __XXX___,
+ _XXXXX__,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'X' */
+
+ ,{
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'Y' */
+
+ ,{
+ ________,
+ ________,
+ XXXXXXX_,
+ XX___XX_,
+ X____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX____X_,
+ XX___XX_,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'Z' */
+
+ ,{
+ ________,
+ ________,
+ __XXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char '[' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ X_______,
+ XX______,
+ XXX_____,
+ _XXX____,
+ __XXX___,
+ ___XXX__,
+ ____XXX_,
+ _____XX_,
+ ______X_,
+ ________,
+ ________,
+ ________,
+ ________} /* char '\' */
+
+ ,{
+ ________,
+ ________,
+ __XXXX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char ']' */
+
+ ,{
+ ___X____,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '^' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ ________,
+ ________} /* char '_' */
+
+ ,{
+ ________,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '`' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'a' */
+
+ ,{
+ ________,
+ ________,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'b' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX______,
+ XX______,
+ XX______,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'c' */
+
+ ,{
+ ________,
+ ________,
+ ___XXX__,
+ ____XX__,
+ ____XX__,
+ __XXXX__,
+ _XX_XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'd' */
+
+ ,{________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XXXXXXX_,
+ XX______,
+ XX______,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'e' */
+
+ ,{
+ ________,
+ ________,
+ ___XXX__,
+ __XX_XX_,
+ __XX__X_,
+ __XX____,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'f' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_XX_,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ ________} /* char 'g' */
+
+ ,{
+ ________,
+ ________,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XX_XX__,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XXX__XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'h' */
+
+ ,{
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'i' */
+
+ ,{
+ ________,
+ ________,
+ _____XX_,
+ _____XX_,
+ ________,
+ ____XXX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________} /* char 'j' */
+
+ ,{
+ ________,
+ ________,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XX__XX_,
+ _XX_XX__,
+ _XXXX___,
+ _XXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ XXX__XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'k' */
+
+ ,{
+ ________,
+ ________,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'l' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_XX__,
+ XXXXXXX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'm' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_XXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'n' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'o' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_XXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________} /* char 'p' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX_XX_,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ ____XX__,
+ ___XXXX_,
+ ________} /* char 'q' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_XXX__,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'r' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ _XX_____,
+ __XXX___,
+ ____XX__,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 's' */
+
+ ,{
+ ________,
+ ________,
+ ___X____,
+ __XX____,
+ __XX____,
+ XXXXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX_XX_,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 't' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'u' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'v' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XXXXXXX_,
+ _XX_XX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'w' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'x' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ _____XX_,
+ ____XX__,
+ XXXXX___,
+ ________} /* char 'y' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ XX__XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX___XX_,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char 'z' */
+
+ ,{
+ ________,
+ ________,
+ ____XXX_,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXX____,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char '{' */
+
+ ,{
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char '|' */
+
+ ,{
+ ________,
+ ________,
+ _XXX____,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ____XXX_,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________} /* char '}' */
+
+ ,{
+ ________,
+ _XXX_XX_,
+ XX_XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '~' */
+
+
+/* additional characters for European character set */
+
+/* small accent ague, 95 */
+ ,{
+ ________,
+ ________,
+ ___XXX__,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* small accent grave, 96 */
+ ,{
+ ________,
+ ________,
+ _XXX____,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* small accent circonflex, 97 */
+ ,{
+ ________,
+ ___X____,
+ __XXX___,
+ _XX_XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* small umlaut, 98 */
+ ,{
+ ________,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* small tilde, 99 */
+ ,{
+ ________,
+ _XXX_XX_,
+ XX_XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* i without dot, 100 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* sharps eg , 101 */
+ ,{
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ _XXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ _XX_____,
+ XX______,
+ ________,
+ ________}
+
+/* capital A with ring, 102 */
+ ,{
+ ___X____,
+ __X_X___,
+ ___X____,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* small a with ring, 103 */
+ ,{
+ ________,
+ __XX____,
+ _X__X___,
+ __XX____,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* capital A diphtong, ligature, 104 */
+
+ ,{
+ ________,
+ ________,
+ ___XXXX_,
+ _XXXX_X_,
+ XX_XX___,
+ XX_XX___,
+ XX_XX___,
+ XXXXXXX_,
+ XX_XX___,
+ XX_XX___,
+ XX_XX_X_,
+ XX_XXXX_,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* Icelandic eth, 105 */
+ ,{
+ ________,
+ ________,
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XXXX_XX_,
+ XXXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* Icelandic Thorn, 106 */
+ ,{
+ ________,
+ ________,
+ XXXX____,
+ _XX_____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* small a diphtong, ligature, 107 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ __XX__X_,
+ __XXXXX_,
+ _XXX____,
+ X_XX____,
+ X_XX__X_,
+ _XX_XX__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* small Icelanic Eth, 108 */
+ ,{
+ ________,
+ ________,
+ XX_X____,
+ _XX_____,
+ X_XX____,
+ ___XX___,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* small Icelandic Thorn, 109 */
+ ,{
+ ________,
+ ________,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XXXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XXXX___,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* capital O with slash, 110 */
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX__XXX_,
+ XX__XXX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XXX__XX_,
+ XXX__XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* small o with slash, 111 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX_X_,
+ _X___X__,
+ XX__XXX_,
+ XX_X_XX_,
+ XXX__XX_,
+ _X___X__,
+ X_XXX___,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* Little capital A, 112 */
+ ,{
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* Little capital E, 113 */
+ ,{
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ _XX__XX_,
+ _XX___X_,
+ _XX_X___,
+ _XXXX___,
+ _XX_X___,
+ _XX___X_,
+ _XX__XX_,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* Little capital I, 114 */
+ ,{
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* Little capital O, 115 */
+ ,{
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* Little capital U, 116 */
+ ,{
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* Little capital N, 117 */
+ ,{
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XXX__XX_,
+ XXXX_XX_,
+ XXXXXXX_,
+ XX_XXXX_,
+ XX__XXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* inverted exclamation mark, 118 */
+ ,{
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ __XXXX__,
+ __XXXX__,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________} /* char inv '!' */
+
+/* inverted question mark, 119 */
+ ,{
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________} /* char '?' */
+
+/* capital accent ague, 120 */
+ ,{
+ ___XXX__,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* capital accent grave, 121 */
+ ,{
+ _XXX____,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* capital accent circonflex, 122 */
+ ,{
+ __XXX___,
+ _XX_XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* capital umlaut, 123 */
+ ,{
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* capital tilde, 124 */
+ ,{
+ _XXX_XX_,
+ XX_XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* cedilla, 125 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ ________}
+
+
+
+/* additional characters for complete ISO 8859-1 character set */
+
+/* Non breaking space, ISO-Code: 160, internal code: 126 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* cent sign, ISO-Code: 162, internal code: 127 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ _XXXXX__,
+ XX_X____,
+ XX_X____,
+ XX_X____,
+ XX_X____,
+ XX_X_XX_,
+ _XXXXX__,
+ ___X____,
+ ___X____,
+ ________,
+ ________} /* char 'c' */
+
+
+/* pound sterling, ISO-Code: 163, internal code: 128 */
+ ,{
+ ________,
+ ________,
+ ___XXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX__X_,
+ _X_XXX__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* general currency sign, ISO-Code: 164, internal code: 129 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ _X____X_,
+ __XXXX__,
+ __X__X__,
+ __X__X__,
+ __XXXX__,
+ _X____X_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* yen sign, ISO-Code: 165, internal code: 130 */
+ ,{
+ ________,
+ ________,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* broken vertical bar, ISO-Code: 166, internal code: 131 */
+ ,{
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* section sign, ISO-Code: 167, internal code: 132 */
+ ,{
+ ________,
+ ________,
+ __XXXX__,
+ _XX__X__,
+ _XX_____,
+ __XXX___,
+ _X___X__,
+ _X___X__,
+ __XXX___,
+ ____XX__,
+ _X__XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* umlaut (dieresis), ISO-Code: 168, internal code: 133 */
+ ,{
+ ________,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* copyright, ISO-Code: 169, internal code: 134 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _X____X_,
+ _X_XX_X_,
+ _X_XXXX_,
+ _X_XX_X_,
+ _X____X_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* feminine ordinal, ISO-Code: 170, internal code: 135 */
+ ,{
+ ________,
+ ________,
+ _XXX____,
+ ____X___,
+ _XXXX___,
+ X___X___,
+ X___X___,
+ _XXX_X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* left angle quote, ISO-Code: 172, internal code: 136 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX_XX_,
+ _XX_XX__,
+ XX_XX___,
+ _XX_XX__,
+ __XX_XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* not sign, ISO-Code: 173, internal code: 137 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ _____X__,
+ _____X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* soft hyphen, ISO-Code: 173, internal code: 138 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* rgistered trademark, ISO-Code: 174, internal code: 139 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _X___X__,
+ _X_X_X__,
+ _X___X__,
+ _X__XX__,
+ _X_X_X__,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* macron accent, ISO-Code: 175, internal code: 140 */
+ ,{
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* degree sign, ISO-Code: 176, internal code: 141 */
+ ,{
+ ________,
+ _XXX____,
+ XX_XX___,
+ X___X___,
+ XX_XX___,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* plus or minus, ISO-Code: 177, internal code: 142 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___X____,
+ _XXXXX__,
+ ___X____,
+ ___X____,
+ ________,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* superscript two, ISO-Code: 178, internal code: 143 */
+ ,{
+ _XXXX___,
+ X___XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* superscript three, ISO-Code: 179, internal code: 144 */
+ ,{
+ _XXXX___,
+ X___XX__,
+ ____XX__,
+ _XXXX___,
+ ____XX__,
+ X___XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* acute accent, ISO-Code: 180, internal code: 145 */
+ ,{
+ ________,
+ ____XXX_,
+ ___XX___,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* micro sign, ISO-Code: 181, internal code: 146 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ XX______,
+ ________}
+
+/* paragraph sign, ISO-Code: 182, internal code: 147 */
+ ,{
+ ________,
+ ________,
+ _XXXXXX_,
+ XX_X_X__,
+ XX_X_X__,
+ XX_X_X__,
+ _XXX_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ ___X_X__,
+ __XXXXX_,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* middle dot, ISO-Code: 183, internal code: 148 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* superscript one, ISO-Code: 185, internal code: 149 */
+ ,{
+ _XX_____,
+ XXX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* masculine ordinal, ISO-Code: 186, internal code: 150 */
+ ,{
+ ________,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* right angle quote, ISO-Code: 187, internal code: 151 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_XX___,
+ _XX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ XX_XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* fraction one-fourth, ISO-Code: 188, internal code: 152 */
+ ,{
+ ________,
+ ________,
+ _X______,
+ XX______,
+ _X___X__,
+ _X__X___,
+ ___X____,
+ __X__X__,
+ _X__XX__,
+ X__X_X__,
+ ___XXXX_,
+ _____X__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* fraction one-half, ISO-Code: 189, internal code: 153 */
+ ,{
+ ________,
+ ________,
+ _X______,
+ XX______,
+ _X___X__,
+ _X__X___,
+ ___X____,
+ __X_XX__,
+ _X_X__X_,
+ X____X__,
+ ____X___,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* fraction three-fourth, ISO-Code: 190, internal code: 154 */
+ ,{
+ ________,
+ ________,
+ XX______,
+ __X_____,
+ _X___X__,
+ __X_X___,
+ XX_X____,
+ __X__X__,
+ _X__XX__,
+ X__X_X__,
+ ___XXXX_,
+ _____X__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* multiply sign, ISO-Code: 215, internal code: 155 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+/* division sign, ISO-Code: 247, internal code: 156 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ _XXXXXX_,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ /* left arrow, ISO-Code: ---, internal code: 157 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____X___,
+ ___XX___,
+ __XXX___,
+ _XXXXXXX,
+ XXXXXXXX,
+ _XXXXXXX,
+ __XXX___,
+ ___XX___,
+ ____X___,
+ ________,
+ ________}
+
+ /* right arrow, ISO-Code: ---, internal code: 158 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ ___XX___,
+ ___XXX__,
+ XXXXXXX_,
+ XXXXXXXX,
+ XXXXXXX_,
+ ___XXX__,
+ ___XX___,
+ ___X____,
+ ________,
+ ________}
+
+ /* up arrow, ISO-Code: ---, internal code: 159 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____,
+ __XXX___,
+ _XXXXX__,
+ XXXXXXX_,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________}
+
+ /* down arrow, ISO-Code: ---, internal code: 160 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ XXXXXXX_,
+ _XXXXX__,
+ __XXX___,
+ ___X____,
+ ________,
+ ________}
+
+ /* down arrow, ISO-Code: ---, internal code: 161 */
+ ,{
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ ___X_XX_,
+ __XX_XX_,
+ _XXXXXX_,
+ XXXXXXX_,
+ _XXXXX__,
+ __XX____,
+ ___X____,
+ ________,
+ ________}
+
+ /* down arrow, ISO-Code: ---, internal code: 162 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ______XX,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ XX__XX__,
+ _XXXX___,
+ __XXX___,
+ ________,
+ ________}
+
+};
+
+
+
+/*
+ *********************************
+ * *
+ * Font selection *
+ * *
+ *********************************
+*/
+
+GUI_CONST_STORAGE GUI_FONT_TRANSLIST TransList8x16[] = {
+/*
+ The folowing are extensions to ISO 8859-1.
+ Since ISO 8859-1 does not define any characters for the codes
+ 128 - 159, this area can be used by an application.
+ The most commonly used symbols in embedded applications are
+ therefor inserted here.
+*/
+ {CODE_ARROW_LEFT,-1}, /* 144, arrow left */
+ {CODE_ARROW_RIGHT,-1}, /* 145, arrow right */
+ {CODE_ARROW_UP,-1}, /* 146, arrow up */
+ {CODE_ARROW_DOWN,-1}, /* 147, arrow down */
+ {CODE_ENTER,-1}, /* 148, enter symbol */
+ {CODE_CHECKMARK,-1}, /* 149, checkmark symbol */
+ {-1,-1}, /* 150, unused symbol */
+ {-1,-1}, /* 151, unused symbol */
+ {-1,-1}, /* 152, unused symbol */
+ {-1,-1}, /* 153, unused symbol */
+ {-1,-1}, /* 154, unused symbol */
+ {-1,-1}, /* 155, unused symbol */
+ {-1,-1}, /* 156, unused symbol */
+ {-1,-1}, /* 157, unused symbol */
+ {-1,-1}, /* 158, unused symbol */
+ {-1,-1}, /* 159, unused symbol */
+/* starting at character code 160 are the characters defined
+ by ISO 8859-1
+*/
+ {CODE_NB_SPACE,-1}, /* 160, non-breaking space */
+ {CODE_INVEXCLAM,-1}, /* 161, inverted exclamation sign */
+ {CODE_CENT,-1}, /* 162, cent sign */
+ {CODE_POUND,-1}, /* 163, pound sterling */
+ {CODE_CURRENCY,-1}, /* 164, general currency sign */
+ {CODE_YEN,-1}, /* 165, yen sign */
+ {CODE_BROKEN_BAR,-1}, /* 166, broken vertical bar */
+ {CODE_SECTION,-1}, /* 167, section sign */
+ {CODE_DIERESIS,-1}, /* 168, umlaut */
+ {CODE_COPYRIGHT,-1}, /* 169, copyright */
+ {CODE_FEMININE,-1}, /* 170, */
+ {CODE_LEFT_QUOTE,-1}, /* 171, */
+ {CODE_NOT,-1}, /* 172, */
+ {CODE_HYPHEN,-1}, /* 173, */
+ {CODE_TRADEMARK,-1}, /* 174, */
+ {CODE_MACRON,-1}, /* 175, */
+ {CODE_DEGREE,-1}, /* 176, */
+ {CODE_PLUS_MINUS,-1}, /* 177, */
+ {CODE_SUPER_TWO,-1}, /* 178, */
+ {CODE_SUPER_THREE,-1}, /* 179, */
+ {CODE_ACUTE,-1}, /* 180, */
+ {CODE_MICRO,-1}, /* 181, */
+ {CODE_PARAGRAPH,-1}, /* 182, */
+ {CODE_MIDDLE_DOT,-1}, /* 183, */
+ {CODE_CEDILLA,-1}, /* 184, */
+ {CODE_SUPER_ONE,-1}, /* 185, */
+ {CODE_MASCULINE,-1}, /* 186, */
+ {CODE_RIGHT_QUOTE,-1}, /* 187, */
+ {CODE_ONE_FOURTH,-1}, /* 188, */
+ {CODE_ONE_HALF,-1}, /* 189, */
+ {CODE_THREE_FOURTH,-1}, /* 190, */
+ {CODE_INVQUEST,-1}, /* 191, */
+ {CODE_LITTLE_A,CODE_CACCGRAV}, /* 192, */
+ {CODE_LITTLE_A,CODE_CACCAGUE}, /* 193, */
+ {CODE_LITTLE_A,CODE_CACCCIRC}, /* 194, */
+ {CODE_LITTLE_A,CODE_CTILDE}, /* 195, */
+ {CODE_LITTLE_A,CODE_CUMLAUT}, /* 196, */
+ {CODE_A_RING,-1}, /* 197, */
+ {CODE_AE,-1}, /* 198, */
+ {'C'-32,CODE_CEDILLA}, /* 199, */
+ {CODE_LITTLE_E,CODE_CACCGRAV}, /* 200, */
+ {CODE_LITTLE_E,CODE_CACCAGUE}, /* 201, */
+ {CODE_LITTLE_E,CODE_CACCCIRC}, /* 202, */
+ {CODE_LITTLE_E,CODE_CUMLAUT}, /* 203, */
+ {CODE_LITTLE_I,CODE_CACCGRAV}, /* 204, */
+ {CODE_LITTLE_I,CODE_CACCAGUE}, /* 205, */
+ {CODE_LITTLE_I,CODE_CACCCIRC}, /* 206, */
+ {CODE_LITTLE_I,CODE_CUMLAUT}, /* 207, */
+ {CODE_ETH,-1}, /* 208, */
+ {CODE_LITTLE_N,CODE_CTILDE}, /* 209, */
+ {CODE_LITTLE_O,CODE_CACCGRAV}, /* 210, */
+ {CODE_LITTLE_O,CODE_CACCAGUE}, /* 211, */
+ {CODE_LITTLE_O,CODE_CACCCIRC}, /* 212, */
+ {CODE_LITTLE_O,CODE_CTILDE}, /* 213, */
+ {CODE_LITTLE_O,CODE_CUMLAUT}, /* 214, */
+ {CODE_MULTIPLY,-1}, /* 215, */
+ {CODE_OSLASH,-1}, /* 216, */
+ {CODE_LITTLE_U,CODE_CACCGRAV}, /* 217, */
+ {CODE_LITTLE_U,CODE_CACCAGUE}, /* 218, */
+ {CODE_LITTLE_U,CODE_CACCCIRC}, /* 219, */
+ {CODE_LITTLE_U,CODE_CUMLAUT}, /* 220, */
+ {'Y'-32,CODE_CACCAGUE}, /* 221, */
+ {CODE_THORN,-1}, /* 222, */
+ {CODE_SHARPS,-1}, /* 223, */
+ {'a'-32,CODE_SACCGRAV}, /* 224, */
+ {'a'-32,CODE_SACCAGUE}, /* 225, */
+ {'a'-32,CODE_SACCCIRC}, /* 226, */
+ {'a'-32,CODE_STILDE}, /* 227, */
+ {'a'-32,CODE_SUMLAUT}, /* 228, */
+ {CODE_SA_RING,-1}, /* 229, */
+ {CODE_SMALLAE,-1}, /* 230, */
+ {'c'-32,CODE_CEDILLA}, /* 231, */
+ {'e'-32,CODE_SACCGRAV}, /* 232, */
+ {'e'-32,CODE_SACCAGUE}, /* 233, */
+ {'e'-32,CODE_SACCCIRC}, /* 234, */
+ {'e'-32,CODE_SUMLAUT}, /* 235, */
+ {CODE_I_NOPOINT,CODE_SACCGRAV}, /* 236, */
+ {CODE_I_NOPOINT,CODE_SACCAGUE}, /* 237, */
+ {CODE_I_NOPOINT,CODE_SACCCIRC}, /* 238, */
+ {CODE_I_NOPOINT,CODE_SUMLAUT}, /* 239, */
+ {CODE_SMALLETH,-1}, /* 240, small eth, Icelandic */
+ {'n'-32,CODE_STILDE}, /* 241, small n, tilde */
+ {'o'-32,CODE_SACCGRAV}, /* 242, small o, grave accent */
+ {'o'-32,CODE_SACCAGUE}, /* 243, small o, acute accent */
+ {'o'-32,CODE_SACCCIRC}, /* 244, small o, circumflex */
+ {'o'-32,CODE_STILDE}, /* 245, small o, tilde */
+ {'o'-32,CODE_SUMLAUT}, /* 246, small o, umlaut */
+ {CODE_DIVISION,-1}, /* 247, division sign */
+ {CODE_SOSLASH,-1}, /* 248, small o slash */
+ {'u'-32,CODE_SACCAGUE}, /* 249, */
+ {'u'-32,CODE_SACCGRAV}, /* 250, */
+ {'u'-32,CODE_SACCCIRC}, /* 251, */
+ {'u'-32,CODE_SUMLAUT}, /* 252, small u, umlaut */
+ {'y'-32,CODE_SACCAGUE}, /* 253, small y, acute accent */
+ {CODE_SMALLTHORN,-1}, /* 254, small thorn, Icelandic */
+ {'y'-32,CODE_SUMLAUT}, /* 255, */
+};
+
+
+GUI_CONST_STORAGE GUI_FONT_TRANSINFO TransInfo8x16 = {
+ 144 /* FirstChar */
+ ,255 /* LastChar */
+ ,TransList8x16 /* const GUI_FONT_TRANSLIST* pList */
+};
+
+GUI_CONST_STORAGE GUI_FONT_MONO FontMono8x16 = {
+ acFont8x16[0],
+ acFont8x16[0],
+ &TransInfo8x16,
+ 32, /* FirstChar */
+ 127, /* LastChar */
+ 8, /* XSize */
+ 8, /* XDist */
+ 1 /* BytesPerLine */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x16 = { GUI_FONTTYPE_MONO, 16, 16, 1, 1 , {&FontMono8x16}, 12, 7, 10};
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x17 = { GUI_FONTTYPE_MONO, 16, 17, 1, 1 , {&FontMono8x16}, 12, 7, 10};
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x18 = { GUI_FONTTYPE_MONO, 16, 18, 1, 1 , {&FontMono8x16}, 12, 7, 10};
+
+
+/* *********************************
+ * *
+ * Magnified fonts *
+ * *
+ *********************************
+
+ The following are the definitions for magnified fonts. If magnified fonts
+ are not used, they can be erased.
+*/
+
+static GUI_CONST_STORAGE GUI_FONT_MONO FontMono8x16x2 = {
+ acFont8x16[0],
+ acFont8x16[0],
+ &TransInfo8x16,
+ 32, /* FirstChar */
+ 127, /* LastChar */
+ 8, /* XSize */
+ 2*8, /* XDist */
+ 1 /* BytesPerLine */
+};
+
+static GUI_CONST_STORAGE GUI_FONT_MONO FontMono8x16x3 = {
+ acFont8x16[0],
+ acFont8x16[0],
+ &TransInfo8x16,
+ 32, /* FirstChar */
+ 127, /* LastChar */
+ 8, /* XSize */
+ 3*8, /* XDist */
+ 1 /* BytesPerLine */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x16x1x2 = { GUI_FONTTYPE_MONO, 16, 2*16, 1, 2 , {&FontMono8x16}, 12, 7, 10 };
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x16x2x2 = { GUI_FONTTYPE_MONO, 16, 2*16, 2, 2 , {&FontMono8x16x2}, 12, 7, 10 };
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x16x3x3 = { GUI_FONTTYPE_MONO, 16, 3*16, 3, 3 , {&FontMono8x16x3}, 12, 7, 10 };
+
+
diff --git a/User/lib/lcd/gui/Font/F8x8.c b/User/lib/lcd/gui/Font/F8x8.c
new file mode 100644
index 0000000..0f61d95
--- /dev/null
+++ b/User/lib/lcd/gui/Font/F8x8.c
@@ -0,0 +1,2057 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F8x8.C
+Purpose : Implementation of 8x8 pixel font
+Height : 8
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+/* *********************************
+ * *
+ * Special character codes *
+ * *
+ *********************************
+*/
+
+/* No 95 to 125 for European character set */
+
+#define CODE_SACCAGUE 95 /* small accent ague */
+#define CODE_SACCGRAV 96
+#define CODE_SACCCIRC 97
+#define CODE_SUMLAUT 98
+#define CODE_STILDE 99
+#define CODE_I_NOPOINT 100
+
+#define CODE_SHARPS 101
+#define CODE_A_RING 102
+#define CODE_SA_RING 103
+#define CODE_AE 104
+#define CODE_ETH 105
+#define CODE_THORN 106
+#define CODE_SMALLAE 107
+#define CODE_SMALLETH 108
+#define CODE_SMALLTHORN 109
+#define CODE_OSLASH 110
+#define CODE_SOSLASH 111
+#define CODE_LITTLE_A 112
+#define CODE_LITTLE_E 113
+#define CODE_LITTLE_I 114
+#define CODE_LITTLE_O 115
+#define CODE_LITTLE_U 116
+#define CODE_LITTLE_N 117
+
+#define CODE_INVEXCLAM 118
+#define CODE_INVQUEST 119
+
+#define CODE_CACCAGUE 120 /* capital accent ague */
+#define CODE_CACCGRAV 121
+#define CODE_CACCCIRC 122
+#define CODE_CUMLAUT 123
+#define CODE_CTILDE 124
+#define CODE_CEDILLA 125
+
+/* No 126 to 156 for complete ISO 8859_1 western latin character set */
+#define CODE_NB_SPACE 126
+#define CODE_CENT 127
+#define CODE_POUND 128
+#define CODE_CURRENCY 129
+#define CODE_YEN 130
+#define CODE_BROKEN_BAR 131
+#define CODE_SECTION 132
+#define CODE_DIERESIS 133
+#define CODE_COPYRIGHT 134
+#define CODE_FEMININE 135
+#define CODE_LEFT_QUOTE 136
+#define CODE_NOT 137
+#define CODE_HYPHEN 138
+#define CODE_TRADEMARK 139
+#define CODE_MACRON 140
+#define CODE_DEGREE 141
+#define CODE_PLUS_MINUS 142
+#define CODE_SUPER_TWO 143
+#define CODE_SUPER_THREE 144
+#define CODE_ACUTE 145
+#define CODE_MICRO 146
+#define CODE_PARAGRAPH 147
+#define CODE_MIDDLE_DOT 148
+#define CODE_SUPER_ONE 149
+#define CODE_MASCULINE 150
+#define CODE_RIGHT_QUOTE 151
+#define CODE_ONE_FOURTH 152
+#define CODE_ONE_HALF 153
+#define CODE_THREE_FOURTH 154
+#define CODE_MULTIPLY 155
+#define CODE_DIVISION 156
+/* The following are extensions to ISO 8859-1 in the area which is not
+ defined by the standard.
+*/
+#define CODE_ARROW_LEFT 157
+#define CODE_ARROW_RIGHT 158
+#define CODE_ARROW_UP 159
+#define CODE_ARROW_DOWN 160
+#define CODE_ENTER 161
+#define CODE_CHECKMARK 162
+
+
+
+
+
+/*
+ ****************************************************************
+ * *
+ * 8 * 8 font *
+ * *
+ ****************************************************************
+*/
+
+
+GUI_CONST_STORAGE unsigned char GUI_F8x8_acFont[][8] = {
+
+ {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char ' ' */
+
+ ,{
+ ___XX___,
+ __XXXX__,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________} /* char '!' */
+
+ ,{
+ _XX__XX_,
+ _XX__XX_,
+ __X__X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '"' */
+
+ ,{
+ _XX_XX__,
+ _XX_XX__,
+ XXXXXXX_,
+ _XX_XX__,
+ XXXXXXX_,
+ _XX_XX__,
+ _XX_XX__,
+ ________} /* char '#' */
+
+ ,{
+ ___XX___,
+ __XXXXX_,
+ _XX_____,
+ __XXXX__,
+ _____XX_,
+ _XXXXX__,
+ ___XX___,
+ ________} /* char '$' */
+
+ ,{
+ ________,
+ XX___XX_,
+ XX__XX__,
+ ___XX___,
+ __XX____,
+ _XX__XX_,
+ XX___XX_,
+ ________} /* char '%' */
+
+ ,{
+ __XXX___,
+ _XX_XX__,
+ __XXX___,
+ _XXX_XX_,
+ XX_XXX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________} /* char '&' */
+
+ ,{
+ ___XX___,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char ''' */
+
+ ,{
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ________} /* char '(' */
+
+ ,{
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ ________} /* char ')' */
+
+ ,{
+ ________,
+ _XX__XX_,
+ __XXXX__,
+ XXXXXXXX,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ________} /* char '*' */
+
+ ,{
+ ________,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________} /* char '+' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ __XX____} /* char ',' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char '-' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________} /* char '.' */
+
+ ,{
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ XX______,
+ X_______,
+ ________} /* char '/' */
+
+ ,{
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ ________} /* char '0' */
+
+ ,{
+ ___XX___,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ ________} /* char '1' */
+
+ ,{
+ _XXXXX__,
+ XX___XX_,
+ _____XX_,
+ ___XXX__,
+ __XX____,
+ _XX__XX_,
+ XXXXXXX_,
+ ________} /* char '2' */
+
+ ,{
+ _XXXXX__,
+ XX___XX_,
+ _____XX_,
+ __XXXX__,
+ _____XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________} /* char '3' */
+
+ ,{
+ ___XXX__,
+ __XXXX__,
+ _XX_XX__,
+ XX__XX__,
+ XXXXXXX_,
+ ____XX__,
+ ___XXXX_,
+ ________} /* char '4' */
+
+ ,{
+ XXXXXXX_,
+ XX______,
+ XX______,
+ XXXXXX__,
+ _____XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________} /* char '5' */
+
+ ,{
+ __XXX___,
+ _XX_____,
+ XX______,
+ XXXXXX__,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________} /* char '6' */
+
+ ,{
+ XXXXXXX_,
+ XX___XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________} /* char '7' */
+
+ ,{
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________} /* char '8' */
+
+ ,{
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ _____XX_,
+ ____XX__,
+ _XXXX___,
+ ________} /* char '9' */
+
+ ,{
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________} /* char ':' */
+
+ ,{
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ __XX____} /* char ';' */
+
+ ,{
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ________} /* char '<' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________} /* char '=' */
+
+ ,{
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ ________} /* char '>' */
+
+ ,{
+ _XXXXX__,
+ XX___XX_,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________} /* char '?' */
+
+ ,{
+ _XXXXX__,
+ XX___XX_,
+ XX_XXXX_,
+ XX_XXXX_,
+ XX_XXXX_,
+ XX______,
+ _XXXX___,
+ ________} /* char '@' */
+
+ ,{
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________} /* char 'A' */
+
+ ,{
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ XXXXXX__,
+ ________} /* char 'B' */
+
+ ,{
+ __XXXX__,
+ _XX__XX_,
+ XX______,
+ XX______,
+ XX______,
+ _XX__XX_,
+ __XXXX__,
+ ________} /* char 'C' */
+
+ ,{
+ XXXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ XXXXX___,
+ ________} /* char 'D' */
+
+ ,{
+ XXXXXXX_,
+ _XX___X_,
+ _XX_X___,
+ _XXXX___,
+ _XX_X___,
+ _XX___X_,
+ XXXXXXX_,
+ ________} /* char 'E' */
+
+ ,{
+ XXXXXXX_,
+ _XX___X_,
+ _XX_X___,
+ _XXXX___,
+ _XX_X___,
+ _XX_____,
+ XXXX____,
+ ________} /* char 'F' */
+
+ ,{
+ __XXXX__,
+ _XX__XX_,
+ XX______,
+ XX______,
+ XX__XXX_,
+ _XX__XX_,
+ __XXX_X_,
+ ________} /* char 'G' */
+
+ ,{
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________} /* char 'H' */
+
+ ,{
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________} /* char 'I' */
+
+ ,{
+ ___XXXX_,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXXX___,
+ ________} /* char 'J' */
+
+ ,{
+ XXX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ _XXXX___,
+ _XX_XX__,
+ _XX__XX_,
+ XXX__XX_,
+ ________} /* char 'K' */
+
+ ,{
+ XXXX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX___X_,
+ _XX__XX_,
+ XXXXXXX_,
+ ________} /* char 'L' */
+
+ ,{
+ XX___XX_,
+ XXX_XXX_,
+ XXXXXXX_,
+ XXXXXXX_,
+ XX_X_XX_,
+ XX___XX_,
+ XX___XX_,
+ ________} /* char 'M' */
+
+ ,{
+ XX___XX_,
+ XXX__XX_,
+ XXXX_XX_,
+ XX_XXXX_,
+ XX__XXX_,
+ XX___XX_,
+ XX___XX_,
+ ________} /* char 'N' */
+
+ ,{
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________} /* char 'O' */
+
+ ,{
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________} /* char 'P' */
+
+ ,{
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ _XXXXX__,
+ ____XXX_} /* char 'Q' */
+
+ ,{
+ XXXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_XX__,
+ _XX__XX_,
+ XXX__XX_,
+ ________} /* char 'R' */
+
+ ,{
+ __XXXX__,
+ _XX__XX_,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _XX__XX_,
+ __XXXX__,
+ ________} /* char 'S' */
+
+ ,{
+ _XXXXXX_,
+ _XXXXXX_,
+ _X_XX_X_,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________} /* char 'T' */
+
+ ,{
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________} /* char 'U' */
+
+ ,{
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ ________} /* char 'V' */
+
+ ,{
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XXXXXXX_,
+ _XX_XX__,
+ ________} /* char 'W' */
+
+ ,{
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ XX___XX_,
+ ________} /* char 'X' */
+
+ ,{
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________} /* char 'Y' */
+
+ ,{
+ XXXXXXX_,
+ XX___XX_,
+ X___XX__,
+ ___XX___,
+ __XX__X_,
+ _XX__XX_,
+ XXXXXXX_,
+ ________} /* char 'Z' */
+
+ ,{
+ __XXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXXX__,
+ ________} /* char '[' */
+
+ ,{
+ XX______,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ _____XX_,
+ ______X_,
+ ________} /* char '\' */
+
+ ,{
+ __XXXX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ __XXXX__,
+ ________} /* char ']' */
+
+ ,{
+ ___X____,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________} /* char '^' */
+
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX} /* char '_' */
+
+ ,{
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '`' */
+
+ ,{
+ ________,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________} /* char 'a' */
+
+ ,{
+ XXX_____,
+ _XX_____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XX_XXX__,
+ ________} /* char 'b' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX______,
+ XX___XX_,
+ _XXXXX__,
+ ________} /* char 'c' */
+
+ ,{
+ ___XXX__,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________} /* char 'd' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XXXXXXX_,
+ XX______,
+ _XXXXX__,
+ ________} /* char 'e' */
+
+ ,{
+ __XXXX__,
+ _XX__XX_,
+ _XX_____,
+ XXXXX___,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________} /* char 'f' */
+
+ ,{
+ ________,
+ ________,
+ _XXX_XX_,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ XXXXX___} /* char 'g' */
+
+ ,{
+ XXX_____,
+ _XX_____,
+ _XX_XX__,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ XXX__XX_,
+ ________} /* char 'h' */
+
+ ,{
+ ___XX___,
+ ________,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________} /* char 'i' */
+
+ ,{
+ _____XX_,
+ ________,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__} /* char 'j' */
+
+ ,{
+ XXX_____,
+ _XX_____,
+ _XX__XX_,
+ _XX_XX__,
+ _XXXX___,
+ _XX_XX__,
+ XXX__XX_,
+ ________} /* char 'k' */
+
+ ,{
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________} /* char 'l' */
+
+ ,{
+ ________,
+ ________,
+ XXX_XX__,
+ XXXXXXX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ ________} /* char 'm' */
+
+ ,{
+ ________,
+ ________,
+ XX_XXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________} /* char 'n' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________} /* char 'o' */
+
+ ,{
+ ________,
+ ________,
+ XX_XXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ XXXX____} /* char 'p' */
+
+ ,{
+ ________,
+ ________,
+ _XXX_XX_,
+ XX__XX__,
+ XX__XX__,
+ _XXXXX__,
+ ____XX__,
+ ___XXXX_} /* char 'q' */
+
+ ,{
+ ________,
+ ________,
+ XX_XXX__,
+ _XXX_XX_,
+ _XX_____,
+ _XX_____,
+ XXXX____,
+ ________} /* char 'r' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXXX_,
+ XX______,
+ _XXXXX__,
+ _____XX_,
+ XXXXXX__,
+ ________} /* char 's' */
+
+ ,{
+ __XX____,
+ __XX____,
+ XXXXXX__,
+ __XX____,
+ __XX____,
+ __XX_XX_,
+ ___XXX__,
+ ________} /* char 't' */
+
+ ,{
+ ________,
+ ________,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________} /* char 'u' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ ________} /* char 'v' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XX_X_XX_,
+ XX_X_XX_,
+ XXXXXXX_,
+ _XX_XX__,
+ ________} /* char 'w' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ _XX_XX__,
+ __XXX___,
+ _XX_XX__,
+ XX___XX_,
+ ________} /* char 'x' */
+
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ _____XX_,
+ XXXXXX__} /* char 'y' */
+
+ ,{
+ ________,
+ ________,
+ _XXXXXX_,
+ _X__XX__,
+ ___XX___,
+ __XX__X_,
+ _XXXXXX_,
+ ________} /* char 'z' */
+
+ ,{
+ ____XXX_,
+ ___XX___,
+ ___XX___,
+ _XXX____,
+ ___XX___,
+ ___XX___,
+ ____XXX_,
+ ________} /* char '{' */
+
+ ,{
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________} /* char '|' */
+
+ ,{
+ _XXX____,
+ ___XX___,
+ ___XX___,
+ ____XXX_,
+ ___XX___,
+ ___XX___,
+ _XXX____,
+ ________} /* char '}' */
+
+ ,{
+ _XXX_XX_,
+ XX_XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________} /* char '~' */
+
+
+
+/* additional characters for European character set */
+
+/* small accent ague, 95 */
+ ,{
+ ____XX__,
+ ___X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+ /* small accent grave, 96 */
+ ,{
+ _XX_____,
+ ___X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+/* small accent circonflex, 97 */
+ ,{
+ _XXXXX__,
+ X_____X_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* small umlaut, 98 */
+ ,{
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* small tilde, 99 */
+ ,{
+ _XXX__X_,
+ X___XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* i without dot, 100 */
+ ,{
+ ________,
+ ________,
+ __XXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________}
+
+
+ /* sharps eg , 101 */
+ ,{
+ __XXX___,
+ _XX_XX__,
+ _XX_XX__,
+ _XXXX___,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ XX______}
+
+
+ /* capital A with ring, 102 */
+ ,{
+ ___XX___,
+ ________,
+ __XXXX__,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________}
+
+
+ /* small a with ring, 103 */
+ ,{
+ __XX____,
+ ________,
+ _XXXX___,
+ ____XX__,
+ _XXXXX__,
+ XX__XX__,
+ _XXX_XX_,
+ ________}
+
+
+
+ /* capital A diphtong, ligature, 104 */
+ ,{
+ ___XXXX_,
+ _XXXX___,
+ X__XX___,
+ X__XXXX_,
+ XXXXX___,
+ X__XX___,
+ X__XXXX_,
+ ________}
+
+
+ /* Icelandic eth, 105 */
+ ,{
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ XXXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ ________}
+
+
+ /* Icelandic Thorn, 106 */
+ ,{
+ XXXX____,
+ _XX_____,
+ _XXXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ _XX_____,
+ XXXX____}
+
+
+ /* small a diphtong, ligature, 107 */
+ ,{
+ ________,
+ ________,
+ XX__XX__,
+ __XX__X_,
+ _XXXXXX_,
+ X_XX____,
+ XXX_XX__,
+ ________}
+
+
+ /* small Icelanic Eth, 108 */
+ ,{
+ _XX_X___,
+ __XX____,
+ _X_XX___,
+ ____XX__,
+ _XXXXXX_,
+ XX___XX_,
+ _XXXXX__,
+ ________}
+
+
+ /* small Icelandic Thorn, 109 */
+ ,{
+ _XXX____,
+ __XX____,
+ __XXXX__,
+ __XX_XX_,
+ __XXXX__,
+ __XX____,
+ _XXXX___,
+ ________}
+
+
+ /* capital O with slash, 110 */
+ ,{
+ __XXX_X_,
+ _XX_XX__,
+ XX__XXX_,
+ XX_X_XX_,
+ XXX__XX_,
+ _XX_XX__,
+ X_XXX___,
+ ________}
+
+
+ /* small o with slash, 111 */
+ ,{
+ ________,
+ ______X_,
+ _XXXXX__,
+ XX__XXX_,
+ XX_X_XX_,
+ XXX__XX_,
+ _XXXXX__,
+ X_______}
+
+
+ /* Little capital A, 112 */
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XXXXXXX_,
+ XX___XX_,
+ XX___XX_,
+ ________}
+
+
+ /* Little capital E, 113 */
+ ,{
+ ________,
+ ________,
+ XXXXXXX_,
+ _XX_____,
+ _XXXXX__,
+ _XX_____,
+ XXXXXXX_,
+ ________}
+
+
+ /* Little capital I, 114 */
+ ,{
+ ________,
+ ________,
+ __XXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ ________}
+
+
+ /* Little capital O, 115 */
+ ,{
+ ________,
+ ________,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________}
+
+
+ /* Little capital U, 116 */
+ ,{
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ ________}
+
+
+ /* Little capital N, 117 */
+ ,{
+ ________,
+ ________,
+ XXX__XX_,
+ XXXX_XX_,
+ XX_XXXX_,
+ XX__XXX_,
+ XX___XX_,
+ ________}
+
+
+ /* inverted exclamation, 118 */
+
+ ,{
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XX___,
+ __XXXX__,
+ __XXXX__,
+ ___XX___,
+ ________}
+
+
+ /* inverted question mark, 119 */
+ ,{
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ _XX_____,
+ XX___XX_,
+ _XXXXX__,
+ ________}
+
+
+ /* capital accent ague, 120 */
+
+ ,{
+ ____XX__,
+ ___X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* capital accent grave, 121 */
+ ,{
+ _XX_____,
+ ___X____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* capital accent circonflex, 122 */
+ ,{
+ __XXX___,
+ _X___X__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* capital umlaut, 123 */
+ ,{
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* capital tilde, 124 */
+ ,{
+ _XXX__X_,
+ X___XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* cedilla, 125 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___X____}
+
+
+
+/* additional characters for complete ISO 8859-1 character set */
+
+/* Non breaking space, ISO-Code: 160, internal code: 126 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* cent sign, ISO-Code: 162, internal code: 127 */
+ ,{
+ ________,
+ ___X____,
+ _XXXXX__,
+ XX_X____,
+ XX_X____,
+ XX_X_XX_,
+ _XXXXX__,
+ ___X____} /* char 'c' */
+
+
+ /* pound sterling, ISO-Code: 163, internal code: 128 */
+ ,{
+ ___XXX__,
+ __XX____,
+ __XX____,
+ _XXXX___,
+ __XX____,
+ __XX__X_,
+ _X_XXX__,
+ ________}
+
+
+ /* general currency sign, ISO-Code: 164, internal code: 129 */
+ ,{
+ ________,
+ ________,
+ _X___X__,
+ __XXX___,
+ __X_X___,
+ __XXX___,
+ _X___X__,
+ ________}
+
+
+ /* yen sign, ISO-Code: 165, internal code: 130 */
+ ,{
+ _X___X__,
+ __X_X___,
+ _XXXXX__,
+ ___X____,
+ _XXXXX__,
+ ___X____,
+ ___X____,
+ ________}
+
+
+
+ /* broken vertical bar, ISO-Code: 166, internal code: 131 */
+ ,{
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________}
+
+
+ /* section sign, ISO-Code: 167, internal code: 132 */
+ ,{
+ __XXX___,
+ _X______,
+ __XX____,
+ _X__X___,
+ __XX____,
+ ____X___,
+ _XXX____,
+ ________}
+
+
+ /* umlaut (dieresis), ISO-Code: 168, internal code: 133 */
+ ,{
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* copyright, ISO-Code: 169, internal code: 134 */
+ ,{
+ _XXXXXX_,
+ _X____X_,
+ _X_XX_X_,
+ _X_XXXX_,
+ _X_XX_X_,
+ _X____X_,
+ _XXXXXX_,
+ ________}
+
+
+ /* feminine ordinal, ISO-Code: 170, internal code: 135 */
+ ,{
+ __XXX___,
+ _____X__,
+ __XXXX__,
+ _X___X__,
+ __XXX___,
+ ________,
+ ________,
+ ________}
+
+
+ /* left angle quote, ISO-Code: 172, internal code: 136 */
+ ,{
+ ________,
+ __XX_XX_,
+ _XX_XX__,
+ XX_XX___,
+ _XX_XX__,
+ __XX_XX_,
+ ________,
+ ________}
+
+
+ /* not sign, ISO-Code: 173, internal code: 137 */
+ ,{
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _____X__,
+ _____X__,
+ ________,
+ ________}
+
+
+ /* soft hyphen, ISO-Code: 173, internal code: 138 */
+ ,{
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* rgistered trademark, ISO-Code: 174, internal code: 139 */
+ ,{
+ _XXXXX__,
+ _X___X__,
+ _X_X_X__,
+ _X___X__,
+ _X__XX__,
+ _X_X_X__,
+ _XXXXX__,
+ ________}
+
+
+ /* macron accent, ISO-Code: 175, internal code: 140 */
+ ,{
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* degree sign, ISO-Code: 176, internal code: 141 */
+ ,{
+ __XX____,
+ _X__X___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* plus or minus, ISO-Code: 177, internal code: 142 */
+ ,{
+ ___X____,
+ ___X____,
+ _XXXXX__,
+ ___X____,
+ ___X____,
+ ________,
+ _XXXXX__,
+ ________}
+
+
+ /* superscript two, ISO-Code: 178, internal code: 143 */
+ ,{
+ _XX_____,
+ X__X____,
+ __X_____,
+ _X______,
+ XXXX____,
+ ________,
+ ________,
+ ________}
+
+
+ /* superscript three, ISO-Code: 179, internal code: 144 */
+ ,{
+ XXX_____,
+ ___X____,
+ _XX_____,
+ ___X____,
+ XXX_____,
+ ________,
+ ________,
+ ________}
+
+
+ /* acute accent, ISO-Code: 180, internal code: 145 */
+ ,{
+ ____XXX_,
+ ___XX___,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________}
+
+
+ /* micro sign, ISO-Code: 181, internal code: 146 */
+ ,{
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXXXX__,
+ XX______}
+
+
+ /* paragraph sign, ISO-Code: 182, internal code: 147 */
+ ,{
+ _XXXXXX_,
+ XX_X_X__,
+ XX_X_X__,
+ _XXX_X__,
+ ___X_X__,
+ ___X_X__,
+ __XXXXX_,
+ ________}
+
+
+ /* middle dot, ISO-Code: 183, internal code: 148 */
+ ,{
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________}
+
+
+ /* superscript one, ISO-Code: 185, internal code: 149 */
+ ,{
+ _X______,
+ XX______,
+ _X______,
+ _X______,
+ XXX_____,
+ ________,
+ ________,
+ ________}
+
+
+ /* masculine ordinal, ISO-Code: 186, internal code: 150 */
+ ,{
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________}
+
+
+ /* right angle quote, ISO-Code: 187, internal code: 151 */
+ ,{
+ ________,
+ XX_XX___,
+ _XX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ XX_XX___,
+ ________,
+ ________}
+
+
+ /* fraction one-fourth, ISO-Code: 188, internal code: 152 */
+ ,{
+ X____X__,
+ X___X___,
+ X__X____,
+ X_X__X__,
+ _X__XX__,
+ X__X_X__,
+ ___XXXX_,
+ _____X__}
+
+
+ /* fraction one-half, ISO-Code: 189, internal code: 153 */
+ ,{
+ X____X__,
+ X___X___,
+ X__X____,
+ X_X_XX__,
+ _X_X__X_,
+ X____X__,
+ ____X___,
+ ___XXXX_}
+
+
+ /* fraction three-fourth, ISO-Code: 190, internal code: 154 */
+ ,{
+ XX______,
+ __X_____,
+ _X______,
+ __X__X__,
+ XX__XX__,
+ ___X_X__,
+ ___XXXX_,
+ _____X__}
+
+
+ /* multiply sign, ISO-Code: 215, internal code: 155 */
+ ,{
+ ________,
+ _XX__XX_,
+ __XXXX__,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ________}
+
+
+ /* division sign, ISO-Code: 247, internal code: 156 */
+ ,{
+ ________,
+ ___XX___,
+ ________,
+ _XXXXXX_,
+ ________,
+ ___XX___,
+ ________,
+ ________}
+
+
+ /* left arrow, ISO-Code: ---, internal code: 157 */
+ ,{
+ ___X____,
+ __XX____,
+ _XXX____,
+ XXXXXX__,
+ _XXX____,
+ __XX____,
+ ___X____,
+ ________}
+
+ /* right arrow, ISO-Code: ---, internal code: 158 */
+ ,{
+ __X_____,
+ __XX____,
+ __XXX___,
+ XXXXXX__,
+ __XXX___,
+ __XX____,
+ __X_____,
+ ________}
+
+ /* up arrow, ISO-Code: ---, internal code: 159 */
+ ,{
+ ________,
+ __X_____,
+ _XXX____,
+ XXXXX___,
+ __X_____,
+ __X_____,
+ ________,
+ ________}
+
+ /* down arrow, ISO-Code: ---, internal code: 160 */
+ ,{
+ ________,
+ __X_____,
+ __X_____,
+ XXXXX___,
+ _XXX____,
+ __X_____,
+ ________,
+ ________}
+
+ /* ENTER character, ISO-Code: ---, internal code: 162 */
+ ,{
+ ________,
+ ____X___,
+ __X_X___,
+ _XX_X___,
+ XXXXX___,
+ _XX_____,
+ __X_____,
+ ________}
+
+ /* ENTER character, ISO-Code: ---, internal code: 162 */
+ ,{
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ X___XX__,
+ XX_XX___,
+ _XXXX___,
+ __XX____}
+
+
+};
+
+
+GUI_CONST_STORAGE GUI_FONT_TRANSLIST GUI_F8x8_TransList[] = {
+/*
+ The folowing are extensions to ISO 8859-1.
+ Since ISO 8859-1 does not define any characters for the codes
+ 128 - 159, this area can be used by an application.
+ The most commonly used symbols in embedded applications are
+ therefor inserted here.
+*/
+ {CODE_ARROW_LEFT,-1}, /* 144, arrow left */
+ {CODE_ARROW_RIGHT,-1}, /* 145, arrow right */
+ {CODE_ARROW_UP,-1}, /* 146, arrow up */
+ {CODE_ARROW_DOWN,-1}, /* 147, arrow down */
+ {CODE_ENTER,-1}, /* 148, enter symbol */
+ {CODE_CHECKMARK,-1}, /* 149, checkmark symbol */
+ {-1,-1}, /* 150, unused symbol */
+ {-1,-1}, /* 151, unused symbol */
+ {-1,-1}, /* 152, unused symbol */
+ {-1,-1}, /* 153, unused symbol */
+ {-1,-1}, /* 154, unused symbol */
+ {-1,-1}, /* 155, unused symbol */
+ {-1,-1}, /* 156, unused symbol */
+ {-1,-1}, /* 157, unused symbol */
+ {-1,-1}, /* 158, unused symbol */
+ {-1,-1}, /* 159, unused symbol */
+/* starting at character code 160 are the characters defined
+ by ISO 8859-1
+*/
+ {CODE_NB_SPACE,-1}, /* 160, non-breaking space */
+ {CODE_INVEXCLAM,-1}, /* 161, inverted exclamation sign */
+ {CODE_CENT,-1}, /* 162, cent sign */
+ {CODE_POUND,-1}, /* 163, pound sterling */
+ {CODE_CURRENCY,-1}, /* 164, general currency sign */
+ {CODE_YEN,-1}, /* 165, yen sign */
+ {CODE_BROKEN_BAR,-1}, /* 166, broken vertical bar */
+ {CODE_SECTION,-1}, /* 167, section sign */
+ {CODE_DIERESIS,-1}, /* 168, umlaut */
+ {CODE_COPYRIGHT,-1}, /* 169, copyright */
+ {CODE_FEMININE,-1}, /* 170, */
+ {CODE_LEFT_QUOTE,-1}, /* 171, */
+ {CODE_NOT,-1}, /* 172, */
+ {CODE_HYPHEN,-1}, /* 173, */
+ {CODE_TRADEMARK,-1}, /* 174, */
+ {CODE_MACRON,-1}, /* 175, */
+ {CODE_DEGREE,-1}, /* 176, */
+ {CODE_PLUS_MINUS,-1}, /* 177, */
+ {CODE_SUPER_TWO,-1}, /* 178, */
+ {CODE_SUPER_THREE,-1}, /* 179, */
+ {CODE_ACUTE,-1}, /* 180, */
+ {CODE_MICRO,-1}, /* 181, */
+ {CODE_PARAGRAPH,-1}, /* 182, */
+ {CODE_MIDDLE_DOT,-1}, /* 183, */
+ {CODE_CEDILLA,-1}, /* 184, */
+ {CODE_SUPER_ONE,-1}, /* 185, */
+ {CODE_MASCULINE,-1}, /* 186, */
+ {CODE_RIGHT_QUOTE,-1}, /* 187, */
+ {CODE_ONE_FOURTH,-1}, /* 188, */
+ {CODE_ONE_HALF,-1}, /* 189, */
+ {CODE_THREE_FOURTH,-1}, /* 190, */
+ {CODE_INVQUEST,-1}, /* 191, */
+ {CODE_LITTLE_A,CODE_CACCGRAV}, /* 192, */
+ {CODE_LITTLE_A,CODE_CACCAGUE}, /* 193, */
+ {CODE_LITTLE_A,CODE_CACCCIRC}, /* 194, */
+ {CODE_LITTLE_A,CODE_CTILDE}, /* 195, */
+ {CODE_LITTLE_A,CODE_CUMLAUT}, /* 196, */
+ {CODE_A_RING,-1}, /* 197, */
+ {CODE_AE,-1}, /* 198, */
+ {'C'-32,CODE_CEDILLA}, /* 199, */
+ {CODE_LITTLE_E,CODE_CACCGRAV}, /* 200, */
+ {CODE_LITTLE_E,CODE_CACCAGUE}, /* 201, */
+ {CODE_LITTLE_E,CODE_CACCCIRC}, /* 202, */
+ {CODE_LITTLE_E,CODE_CUMLAUT}, /* 203, */
+ {CODE_LITTLE_I,CODE_CACCGRAV}, /* 204, */
+ {CODE_LITTLE_I,CODE_CACCAGUE}, /* 205, */
+ {CODE_LITTLE_I,CODE_CACCCIRC}, /* 206, */
+ {CODE_LITTLE_I,CODE_CUMLAUT}, /* 207, */
+ {CODE_ETH,-1}, /* 208, */
+ {CODE_LITTLE_N,CODE_CTILDE}, /* 209, */
+ {CODE_LITTLE_O,CODE_CACCGRAV}, /* 210, */
+ {CODE_LITTLE_O,CODE_CACCAGUE}, /* 211, */
+ {CODE_LITTLE_O,CODE_CACCCIRC}, /* 212, */
+ {CODE_LITTLE_O,CODE_CTILDE}, /* 213, */
+ {CODE_LITTLE_O,CODE_CUMLAUT}, /* 214, */
+ {CODE_MULTIPLY,-1}, /* 215, */
+ {CODE_OSLASH,-1}, /* 216, */
+ {CODE_LITTLE_U,CODE_CACCGRAV}, /* 217, */
+ {CODE_LITTLE_U,CODE_CACCAGUE}, /* 218, */
+ {CODE_LITTLE_U,CODE_CACCCIRC}, /* 219, */
+ {CODE_LITTLE_U,CODE_CUMLAUT}, /* 220, */
+ {'Y'-32,CODE_CACCAGUE}, /* 221, */
+ {CODE_THORN,-1}, /* 222, */
+ {CODE_SHARPS,-1}, /* 223, */
+ {'a'-32,CODE_SACCGRAV}, /* 224, */
+ {'a'-32,CODE_SACCAGUE}, /* 225, */
+ {'a'-32,CODE_SACCCIRC}, /* 226, */
+ {'a'-32,CODE_STILDE}, /* 227, */
+ {'a'-32,CODE_SUMLAUT}, /* 228, */
+ {CODE_SA_RING,-1}, /* 229, */
+ {CODE_SMALLAE,-1}, /* 230, */
+ {'c'-32,CODE_CEDILLA}, /* 231, */
+ {'e'-32,CODE_SACCGRAV}, /* 232, */
+ {'e'-32,CODE_SACCAGUE}, /* 233, */
+ {'e'-32,CODE_SACCCIRC}, /* 234, */
+ {'e'-32,CODE_SUMLAUT}, /* 235, */
+ {CODE_I_NOPOINT,CODE_SACCGRAV}, /* 236, */
+ {CODE_I_NOPOINT,CODE_SACCAGUE}, /* 237, */
+ {CODE_I_NOPOINT,CODE_SACCCIRC}, /* 238, */
+ {CODE_I_NOPOINT,CODE_SUMLAUT}, /* 239, */
+ {CODE_SMALLETH,-1}, /* 240, small eth, Icelandic */
+ {'n'-32,CODE_STILDE}, /* 241, small n, tilde */
+ {'o'-32,CODE_SACCGRAV}, /* 242, small o, grave accent */
+ {'o'-32,CODE_SACCAGUE}, /* 243, small o, acute accent */
+ {'o'-32,CODE_SACCCIRC}, /* 244, small o, circumflex */
+ {'o'-32,CODE_STILDE}, /* 245, small o, tilde */
+ {'o'-32,CODE_SUMLAUT}, /* 246, small o, umlaut */
+ {CODE_DIVISION,-1}, /* 247, division sign */
+ {CODE_SOSLASH,-1}, /* 248, small o slash */
+ {'u'-32,CODE_SACCAGUE}, /* 249, */
+ {'u'-32,CODE_SACCGRAV}, /* 250, */
+ {'u'-32,CODE_SACCCIRC}, /* 251, */
+ {'u'-32,CODE_SUMLAUT}, /* 252, small u, umlaut */
+ {'y'-32,CODE_SACCAGUE}, /* 253, small y, acute accent */
+ {CODE_SMALLTHORN,-1}, /* 254, small thorn, Icelandic */
+ {'y'-32,CODE_SUMLAUT}, /* 255, */
+};
+
+GUI_CONST_STORAGE GUI_FONT_TRANSINFO GUI_F8x8_TransInfo = {
+ 144 /* FirstChar */
+ ,255 /* LastChar */
+ ,GUI_F8x8_TransList /* const GUI_FONT_TRANSLIST* pList */
+};
+
+GUI_CONST_STORAGE GUI_FONT_MONO GUI_F8x8_Mono = {
+ GUI_F8x8_acFont[0],
+ GUI_F8x8_acFont[0],
+ &GUI_F8x8_TransInfo,
+ 32, /* FirstChar */
+ 127, /* LastChar */
+ 8, /* XSize */
+ 8, /* XDist */
+ 1 /* BytesPerLine */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x8 = {
+ GUI_FONTTYPE_MONO
+ ,8
+ ,8
+ ,1
+ ,1
+ ,{&GUI_F8x8_Mono}
+ , 7, 5, 7
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_Font8x9 = {
+ GUI_FONTTYPE_MONO
+ ,8
+ ,9
+ ,1
+ ,1
+ ,{&GUI_F8x8_Mono}
+ , 7, 5, 7 };
diff --git a/User/lib/lcd/gui/Font/FComic18B_1.c b/User/lib/lcd/gui/Font/FComic18B_1.c
new file mode 100644
index 0000000..9176b8d
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FComic18B_1.c
@@ -0,0 +1,2068 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FComic18.C
+Purpose : Font, similar to Comic
+Height : 18
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_160[18] = { /* code 160 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_161[18] = { /* code 161 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_162[36] = { /* code 162 */
+ ________,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XXXX_,X_______,
+ __XXXXXX,X_______,
+ _XX_XX_X,X_______,
+ XX__XX__,________,
+ XX__XX__,________,
+ XX__XX__,________,
+ XX__XX__,X_______,
+ XXX_XX_X,X_______,
+ _XXXXXXX,________,
+ ___XXXX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_163[36] = { /* code 163 */
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ ___XX___,_XX_____,
+ __XXX___,________,
+ __XX____,________,
+ __XX____,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ ___X____,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,___X____,
+ __XXXXX_,__XX____,
+ __XXXXXX,XXXX____,
+ _______X,XXX_____,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_164[36] = { /* code 164 */
+ ________,________,
+ ________,________,
+ ________,________,
+ XX______,________,
+ XXX_____,XX______,
+ _XXXXXXX,XX______,
+ _XXXXXXX,X_______,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXX_,________,
+ XXXXXXXX,________,
+ XX_____X,X_______,
+ _______X,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_165[36] = { /* code 165 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ __XX__XX,________,
+ _XXX__XX,X_______,
+ _XXX__XX,X_______,
+ ___XXXX_,________,
+ ____XX__,________,
+ __XXXXXX,________,
+ __XXXXXX,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_166[18] = { /* code 166 */
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_167[36] = { /* code 167 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ _XX_____,________,
+ XXXXXX__,________,
+ XX___XXX,________,
+ _XXX__XX,________,
+ ___XXXX_,________,
+ X_____XX,________,
+ XX____XX,________,
+ _XXXXXXX,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_168[36] = { /* code 168 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_169[36] = { /* code 169 */
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XX_____,
+ __XX__XX,__XX____,
+ _XX__XXX,__XX____,
+ _XX_XX__,__XX____,
+ _XX_XX__,X_XX____,
+ _XX_XXXX,X_XX____,
+ _XX__XXX,_XX_____,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_170[18] = { /* code 170 */
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XXXXX__,
+ _XX_XX__,
+ _XX_XX__,
+ _XXX_XX_,
+ _XXX_XX_,
+ __X__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_171[36] = { /* code 171 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX__X,X_______,
+ __XX__XX,________,
+ _XX__XX_,________,
+ XX__XX__,________,
+ _XX__XX_,________,
+ __XX__XX,________,
+ ___XX__X,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_172[36] = { /* code 172 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_173[18] = { /* code 173 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_174[36] = { /* code 174 */
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXXXX,XX______,
+ __XXX___,_XX_____,
+ __XXXXXX,_XXX____,
+ _XX_X__X,__XX____,
+ _XX_X__X,__XX____,
+ _XX_XXX_,__XX____,
+ _XX_XXX_,__XX____,
+ _XX_XX_X,_XX_____,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_175[36] = { /* code 175 */
+ ________,________,
+ XXXXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_176[18] = { /* code 176 */
+ ________,
+ _XXXX___,
+ XXXXXX__,
+ XX__XX__,
+ XX__XX__,
+ XXXXXX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_177[18] = { /* code 177 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ XXXXXXXX,
+ XXXXXXXX,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_178[36] = { /* code 178 */
+ ________,________,
+ ____XX__,________,
+ ___XXXX_,________,
+ _____XX_,________,
+ _____X__,________,
+ ____X___,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_179[36] = { /* code 179 */
+ ________,________,
+ __XXXX__,________,
+ __XXXXX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ _____XX_,________,
+ __XXXXX_,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_180[18] = { /* code 180 */
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ _XX_____,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_181[18] = { /* code 181 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX___XX,
+ _XX___XX,
+ XX____X_,
+ XX___XX_,
+ XX___XX_,
+ XX___X__,
+ XXXXXX__,
+ XXXXXX__,
+ X_______,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_182[36] = { /* code 182 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XX______,
+ ___XXXXX,XX______,
+ __XX_XX_,XX______,
+ _XX__XX_,XX______,
+ _XX__XX_,XX______,
+ _XX__XX_,XX______,
+ _XX_XXX_,XX______,
+ _XXXXXXX,X_______,
+ __XXXX_X,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ___XX_XX,________,
+ ___XX_XX,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_183[18] = { /* code 183 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_184[36] = { /* code 184 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ ____XX__,________,
+ ____XX__,________,
+ __XXXX__,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_185[36] = { /* code 185 */
+ ________,________,
+ _____XX_,________,
+ ____XXX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_186[18] = { /* code 186 */
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ __XXXXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_187[36] = { /* code 187 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ X__XX___,________,
+ XX__XX__,________,
+ _XX__XX_,________,
+ __XX__XX,________,
+ _XX__XX_,________,
+ XX__XX__,________,
+ X__XX___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_188[36] = { /* code 188 */
+ ____XX__,________,
+ ___XXX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ ________,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XXX__,________,
+ __X_XX__,________,
+ _XXXXXX_,________,
+ ____XX__,________,
+ ____XX__,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_189[36] = { /* code 189 */
+ ____XX__,________,
+ ___XXX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ ________,________,
+ ____XXX_,________,
+ ___XXXXX,________,
+ ___X__XX,________,
+ ______X_,________,
+ ____XX__,________,
+ ___XXXXX,________,
+ ___XXXXX,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_190[36] = { /* code 190 */
+ __XXXX__,________,
+ __XXXXX_,________,
+ _____XX_,________,
+ ___XXXX_,________,
+ _____XX_,________,
+ __XXXXX_,________,
+ __XXXX__,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ ________,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XXX__,________,
+ __X_XX__,________,
+ _XXXXXX_,________,
+ ____XX__,________,
+ ____XX__,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_191[36] = { /* code 191 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ _____X__,________,
+ ___XXX__,________,
+ __XX____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXX__XX,________,
+ __XXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_192[36] = { /* code 192 */
+ ______XX,________,
+ _______X,________,
+ ________,________,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XX_,XX______,
+ _____XX_,XX______,
+ ____XX__,XX______,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_193[36] = { /* code 193 */
+ ______XX,________,
+ ______X_,________,
+ ________,________,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XX_,XX______,
+ _____XX_,XX______,
+ ____XX__,XX______,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_194[36] = { /* code 194 */
+ ______XX,XX______,
+ _____XX_,_XX_____,
+ ________,________,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XX_,XX______,
+ _____XX_,XX______,
+ ____XX__,XX______,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_195[36] = { /* code 195 */
+ ____XXXX,XXX_____,
+ ____X__X,XX______,
+ ________,________,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XX_,XX______,
+ _____XX_,XX______,
+ ____XX__,XX______,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_196[36] = { /* code 196 */
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ________,________,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XX_,XX______,
+ _____XX_,XX______,
+ ____XX__,XX______,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_197[36] = { /* code 197 */
+ ______X_,__X_____,
+ ______X_,__X_____,
+ _______X,XX______,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XX_,XX______,
+ _____XX_,XX______,
+ ____XX__,XX______,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_198[54] = { /* code 198 */
+ ________,________,________,
+ ________,________,________,
+ ________,__XXXXXX,XX______,
+ ________,_XXXXXXX,XX______,
+ ________,XXXX____,________,
+ _______X,X_XX____,________,
+ ______XX,__XX____,________,
+ ______XX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,X_______,
+ ____XX__,__XX____,________,
+ ___XX___,__XX____,________,
+ ___XX___,__XX____,________,
+ __XX____,__XX____,________,
+ _XX_____,__XX____,________,
+ _XX_____,__XXXXXX,X_______,
+ ________,___XXXXX,X_______,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_199[36] = { /* code 199 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXXXX,X_______,
+ __XXX__X,X_______,
+ __XX____,________,
+ _XX_____,________,
+ _XX_____,________,
+ XX______,________,
+ XX______,________,
+ XX______,________,
+ XXX____X,X_______,
+ _XXXXXXX,X_______,
+ __XXXXX_,________,
+ ____XX__,________,
+ _____X__,________,
+ __XXX___,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_200[36] = { /* code 200 */
+ _____XX_,________,
+ ______X_,________,
+ ________,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ __XXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_201[36] = { /* code 201 */
+ ____X___,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ __XXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_202[36] = { /* code 202 */
+ ___XXXX_,________,
+ __XX__XX,________,
+ ________,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ __XXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_203[36] = { /* code 203 */
+ __XX__XX,________,
+ __XX__XX,________,
+ ________,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ __XXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_204[36] = { /* code 204 */
+ ___XX___,________,
+ ____X___,________,
+ ________,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_205[36] = { /* code 205 */
+ ___XX___,________,
+ ___X____,________,
+ ________,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_206[36] = { /* code 206 */
+ _XX__XX_,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_207[36] = { /* code 207 */
+ _XX__XX_,________,
+ _XX__XX_,________,
+ ________,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_208[36] = { /* code 208 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ __XXXXX_,________,
+ __XX_XXX,X_______,
+ __XX___X,XX______,
+ __XX____,_XX_____,
+ XXXXXXX_,_XXX____,
+ XXXXXXX_,__XX____,
+ __XX____,__XX____,
+ __XX____,__XX____,
+ __XX____,_XXX____,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_209[36] = { /* code 209 */
+ ___XXXXX,XX______,
+ ___X__XX,X_______,
+ ________,________,
+ _XX_____,__X_____,
+ _XX_____,__XX____,
+ _XXX____,__XX____,
+ _XXXX___,__XX____,
+ _XX_XX__,__XX____,
+ _XX__XX_,__XX____,
+ _XX___X_,__XX____,
+ _XX___XX,__XX____,
+ _XX____X,X_XX____,
+ _XX_____,XXXX____,
+ _XX_____,_XXX____,
+ _XX_____,__XX____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_210[36] = { /* code 210 */
+ _______X,X_______,
+ ________,X_______,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XXX____,
+ __XX____,__XX____,
+ _XXX____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,_XXX____,
+ _XX_____,_XX_____,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_211[36] = { /* code 211 */
+ ______XX,________,
+ ______X_,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XXX____,
+ __XX____,__XX____,
+ _XXX____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,_XXX____,
+ _XX_____,_XX_____,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_212[36] = { /* code 212 */
+ ____XX__,XX______,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XXX____,
+ __XX____,__XX____,
+ _XXX____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,_XXX____,
+ _XX_____,_XX_____,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_213[36] = { /* code 213 */
+ ____XXXX,XXX_____,
+ ____X__X,XX______,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XXX____,
+ __XX____,__XX____,
+ _XXX____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,_XXX____,
+ _XX_____,_XX_____,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_214[36] = { /* code 214 */
+ ____XX__,XX______,
+ ____XX__,XX______,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XXX____,
+ __XX____,__XX____,
+ _XXX____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,_XXX____,
+ _XX_____,_XX_____,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_215[18] = { /* code 215 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ __XXXXX_,
+ ___XX___,
+ ___XXX__,
+ __XX_XX_,
+ __X___X_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_216[36] = { /* code 216 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX__X___,
+ ____XXXX,XXXX____,
+ ___XX___,_XX_____,
+ __XX____,XXXX____,
+ __XX___X,X_XX____,
+ _XX____X,__XX____,
+ _XX___X_,__XX____,
+ _XX__X__,_XXX____,
+ _XX_X___,_XX_____,
+ _XXXX___,XXX_____,
+ __XXXXXX,XX______,
+ _XXXXXXX,X_______,
+ _X______,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_217[36] = { /* code 217 */
+ _____XX_,________,
+ ______X_,________,
+ ________,________,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XXX____,XX______,
+ __XX___X,XX______,
+ __XXXXXX,X_______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_218[36] = { /* code 218 */
+ _____XX_,________,
+ _____X__,________,
+ ________,________,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XXX____,XX______,
+ __XX___X,XX______,
+ __XXXXXX,X_______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_219[36] = { /* code 219 */
+ ___XX__X,X_______,
+ ________,________,
+ ________,________,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XXX____,XX______,
+ __XX___X,XX______,
+ __XXXXXX,X_______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_220[36] = { /* code 220 */
+ ___XX__X,X_______,
+ ___XX__X,X_______,
+ ________,________,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XXX____,XX______,
+ __XX___X,XX______,
+ __XXXXXX,X_______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_221[36] = { /* code 221 */
+ ____XX__,________,
+ ____X___,________,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ __XX___X,XX______,
+ __XX___X,X_______,
+ ___XX_XX,X_______,
+ ___XX_XX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ _____XX_,________,
+ ____XXX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_222[18] = { /* code 222 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XXXXXX_,
+ _XXXXXXX,
+ _XX___XX,
+ _XX____X,
+ _XX____X,
+ _XX___XX,
+ _XXXXXXX,
+ _XXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_223[18] = { /* code 223 */
+ ________,
+ ________,
+ ___XXX__,
+ __XXXXX_,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XXX_,
+ _XX_XX__,
+ _XX_XXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XXX_XX_,
+ _XXXXXX_,
+ _XX_XX__,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_224[18] = { /* code 224 */
+ ________,
+ ________,
+ __X_____,
+ __XX____,
+ ___XX___,
+ ____X___,
+ ________,
+ __XXXXX_,
+ _XXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXX_XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_225[18] = { /* code 225 */
+ ________,
+ ________,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ ___X____,
+ ________,
+ __XXXXX_,
+ _XXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXX_XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_226[18] = { /* code 226 */
+ ________,
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ ________,
+ __XXXXX_,
+ _XXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXX_XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_227[18] = { /* code 227 */
+ ________,
+ ________,
+ ________,
+ __XXX__X,
+ _XXXXXXX,
+ _X__XXX_,
+ ________,
+ __XXXXX_,
+ _XXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXX_XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_228[18] = { /* code 228 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ __XXXXX_,
+ _XXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXX_XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_229[18] = { /* code 229 */
+ ________,
+ ___XXX__,
+ __X___X_,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________,
+ __XXXXX_,
+ _XXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXX_XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_230[36] = { /* code 230 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,_XXX____,
+ __XXXXXX,XXXXX___,
+ _XXX___X,X_XXX___,
+ _XX____X,XXXX____,
+ _XX____X,XX______,
+ _XXX___X,X____X__,
+ __XXXXXX,XXXXXX__,
+ ___XXXX_,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_231[18] = { /* code 231 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XXXXXX_,
+ _XX___X_,
+ XX______,
+ XX______,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXXX__,
+ ___XX___,
+ ____X___,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_232[18] = { /* code 232 */
+ ________,
+ ________,
+ __X_____,
+ __XX____,
+ ___XX___,
+ ____X___,
+ ________,
+ __XXXX__,
+ _XXXXXX_,
+ XXX__XX_,
+ XX__XX__,
+ XX_XX___,
+ XXX___X_,
+ XXXXXXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_233[18] = { /* code 233 */
+ ________,
+ ________,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ ___X____,
+ ________,
+ __XXXX__,
+ _XXXXXX_,
+ XXX__XX_,
+ XX__XX__,
+ XX_XX___,
+ XXX___X_,
+ XXXXXXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_234[18] = { /* code 234 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XXXX__,
+ _XX__XX_,
+ ________,
+ __XXXX__,
+ _XXXXXX_,
+ XXX__XX_,
+ XX__XX__,
+ XX_XX___,
+ XXX___X_,
+ XXXXXXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_235[18] = { /* code 235 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ __XXXX__,
+ _XXXXXX_,
+ XXX__XX_,
+ XX__XX__,
+ XX_XX___,
+ XXX___X_,
+ XXXXXXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_236[18] = { /* code 236 */
+ ________,
+ ________,
+ X_______,
+ XX______,
+ _XX_____,
+ __X_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_237[18] = { /* code 237 */
+ ________,
+ ________,
+ __XX____,
+ _XX_____,
+ XX______,
+ X_______,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_238[18] = { /* code 238 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ XXXX____,
+ X__XX___,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_239[18] = { /* code 239 */
+ ________,
+ ________,
+ ________,
+ ________,
+ X__XX___,
+ X__XX___,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_240[18] = { /* code 240 */
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ __XXXXX_,
+ __XXX___,
+ _XXXXX__,
+ _XX_XX__,
+ ____XXX_,
+ __XXXXX_,
+ _XX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_241[18] = { /* code 241 */
+ ________,
+ ________,
+ ________,
+ __XXX__X,
+ _XXXXXXX,
+ _X__XXX_,
+ ________,
+ XX_XXX__,
+ XXXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_242[18] = { /* code 242 */
+ ________,
+ ________,
+ ___X____,
+ ___XX___,
+ ____XX__,
+ _____X__,
+ ________,
+ __XXX___,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_243[18] = { /* code 243 */
+ ________,
+ ________,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ ___X____,
+ ________,
+ __XXX___,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_244[18] = { /* code 244 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ ________,
+ __XXX___,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_245[18] = { /* code 245 */
+ ________,
+ ________,
+ ________,
+ _XXX__X_,
+ XXXXXXX_,
+ X__XXX__,
+ ________,
+ __XXX___,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_246[18] = { /* code 246 */
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ __XXX___,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_247[36] = { /* code 247 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,________,
+ ____X___,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ ________,________,
+ ____X___,________,
+ ____X___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_248[18] = { /* code 248 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX_X_,
+ _XXXXXX_,
+ XXX__XX_,
+ XX_XXXX_,
+ XXX__XX_,
+ XX__XXX_,
+ XXXXXX__,
+ X_XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_249[18] = { /* code 249 */
+ ________,
+ ________,
+ __X_____,
+ __XX____,
+ ___XX___,
+ ____X___,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_250[18] = { /* code 250 */
+ ________,
+ ________,
+ _____XX_,
+ ____XX__,
+ ___XX___,
+ ___X____,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_251[18] = { /* code 251 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _XXXX___,
+ XX__XX__,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_252[18] = { /* code 252 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_253[36] = { /* code 253 */
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ ___X____,________,
+ ________,________,
+ XX____XX,________,
+ XXX___XX,________,
+ _XX___XX,________,
+ _XXX_XX_,________,
+ __XX_XX_,________,
+ __XXXX__,________,
+ ___XXX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ __XX____,________,
+ __XX____,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_254[36] = { /* code 254 */
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_XXX_,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXX_,________,
+ _XXXXX__,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_1_255[36] = { /* code 255 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX__XX__,________,
+ XX__XX__,________,
+ ________,________,
+ XX____XX,________,
+ XXX___XX,________,
+ _XX___XX,________,
+ _XXX_XX_,________,
+ __XX_XX_,________,
+ __XXXX__,________,
+ ___XXX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ __XX____,________,
+ __XX____,________};
+
+
+
+GUI_CONST_STORAGE GUI_CHARINFO CharInfoComic18B_1_160_255[193] = {
+ { 5, 5, 1, acFontComic18B_1_160 } /* code 160 */
+ ,{ 4, 4, 1, acFontComic18B_1_161 } /* code 161 */
+ ,{ 10, 10, 2, acFontComic18B_1_162 } /* code 162 */
+ ,{ 13, 13, 2, acFontComic18B_1_163 } /* code 163 */
+ ,{ 10, 10, 2, acFontComic18B_1_164 } /* code 164 */
+ ,{ 10, 10, 2, acFontComic18B_1_165 } /* code 165 */
+ ,{ 6, 6, 1, acFontComic18B_1_166 } /* code 166 */
+ ,{ 10, 10, 2, acFontComic18B_1_167 } /* code 167 */
+ ,{ 9, 9, 2, acFontComic18B_1_168 } /* code 168 */
+ ,{ 13, 13, 2, acFontComic18B_1_169 } /* code 169 */
+ ,{ 8, 8, 1, acFontComic18B_1_170 } /* code 170 */
+ ,{ 9, 9, 2, acFontComic18B_1_171 } /* code 171 */
+ ,{ 9, 9, 2, acFontComic18B_1_172 } /* code 172 */
+ ,{ 7, 7, 1, acFontComic18B_1_173 } /* code 173 */
+ ,{ 13, 13, 2, acFontComic18B_1_174 } /* code 174 */
+ ,{ 10, 10, 2, acFontComic18B_1_175 } /* code 175 */
+ ,{ 7, 7, 1, acFontComic18B_1_176 } /* code 176 */
+ ,{ 8, 8, 1, acFontComic18B_1_177 } /* code 177 */
+ ,{ 10, 10, 2, acFontComic18B_1_178 } /* code 178 */
+ ,{ 10, 10, 2, acFontComic18B_1_179 } /* code 179 */
+ ,{ 8, 8, 1, acFontComic18B_1_180 } /* code 180 */
+ ,{ 8, 8, 1, acFontComic18B_1_181 } /* code 181 */
+ ,{ 11, 11, 2, acFontComic18B_1_182 } /* code 182 */
+ ,{ 4, 4, 1, acFontComic18B_1_183 } /* code 183 */
+ ,{ 9, 9, 2, acFontComic18B_1_184 } /* code 184 */
+ ,{ 10, 10, 2, acFontComic18B_1_185 } /* code 185 */
+ ,{ 8, 8, 1, acFontComic18B_1_186 } /* code 186 */
+ ,{ 9, 9, 2, acFontComic18B_1_187 } /* code 187 */
+ ,{ 10, 10, 2, acFontComic18B_1_188 } /* code 188 */
+ ,{ 10, 10, 2, acFontComic18B_1_189 } /* code 189 */
+ ,{ 10, 10, 2, acFontComic18B_1_190 } /* code 190 */
+ ,{ 9, 9, 2, acFontComic18B_1_191 } /* code 191 */
+ ,{ 12, 12, 2, acFontComic18B_1_192 } /* code 192 */
+ ,{ 12, 12, 2, acFontComic18B_1_193 } /* code 193 */
+ ,{ 12, 12, 2, acFontComic18B_1_194 } /* code 194 */
+ ,{ 12, 12, 2, acFontComic18B_1_195 } /* code 195 */
+ ,{ 12, 12, 2, acFontComic18B_1_196 } /* code 196 */
+ ,{ 12, 12, 2, acFontComic18B_1_197 } /* code 197 */
+ ,{ 19, 19, 3, acFontComic18B_1_198 } /* code 198 */
+ ,{ 10, 10, 2, acFontComic18B_1_199 } /* code 199 */
+ ,{ 10, 10, 2, acFontComic18B_1_200 } /* code 200 */
+ ,{ 10, 10, 2, acFontComic18B_1_201 } /* code 201 */
+ ,{ 10, 10, 2, acFontComic18B_1_202 } /* code 202 */
+ ,{ 10, 10, 2, acFontComic18B_1_203 } /* code 203 */
+ ,{ 9, 9, 2, acFontComic18B_1_204 } /* code 204 */
+ ,{ 9, 9, 2, acFontComic18B_1_205 } /* code 205 */
+ ,{ 9, 9, 2, acFontComic18B_1_206 } /* code 206 */
+ ,{ 9, 9, 2, acFontComic18B_1_207 } /* code 207 */
+ ,{ 12, 12, 2, acFontComic18B_1_208 } /* code 208 */
+ ,{ 13, 13, 2, acFontComic18B_1_209 } /* code 209 */
+ ,{ 13, 13, 2, acFontComic18B_1_210 } /* code 210 */
+ ,{ 13, 13, 2, acFontComic18B_1_211 } /* code 211 */
+ ,{ 13, 13, 2, acFontComic18B_1_212 } /* code 212 */
+ ,{ 13, 13, 2, acFontComic18B_1_213 } /* code 213 */
+ ,{ 13, 13, 2, acFontComic18B_1_214 } /* code 214 */
+ ,{ 8, 8, 1, acFontComic18B_1_215 } /* code 215 */
+ ,{ 13, 13, 2, acFontComic18B_1_216 } /* code 216 */
+ ,{ 12, 12, 2, acFontComic18B_1_217 } /* code 217 */
+ ,{ 12, 12, 2, acFontComic18B_1_218 } /* code 218 */
+ ,{ 12, 12, 2, acFontComic18B_1_219 } /* code 219 */
+ ,{ 12, 12, 2, acFontComic18B_1_220 } /* code 220 */
+ ,{ 11, 11, 2, acFontComic18B_1_221 } /* code 221 */
+ ,{ 8, 8, 1, acFontComic18B_1_222 } /* code 222 */
+ ,{ 8, 8, 1, acFontComic18B_1_223 } /* code 223 */
+ ,{ 8, 8, 1, acFontComic18B_1_224 } /* code 224 */
+ ,{ 8, 8, 1, acFontComic18B_1_225 } /* code 225 */
+ ,{ 8, 8, 1, acFontComic18B_1_226 } /* code 226 */
+ ,{ 8, 8, 1, acFontComic18B_1_227 } /* code 227 */
+ ,{ 8, 8, 1, acFontComic18B_1_228 } /* code 228 */
+ ,{ 8, 8, 1, acFontComic18B_1_229 } /* code 229 */
+ ,{ 15, 15, 2, acFontComic18B_1_230 } /* code 230 */
+ ,{ 8, 8, 1, acFontComic18B_1_231 } /* code 231 */
+ ,{ 8, 8, 1, acFontComic18B_1_232 } /* code 232 */
+ ,{ 8, 8, 1, acFontComic18B_1_233 } /* code 233 */
+ ,{ 8, 8, 1, acFontComic18B_1_234 } /* code 234 */
+ ,{ 8, 8, 1, acFontComic18B_1_235 } /* code 235 */
+ ,{ 5, 5, 1, acFontComic18B_1_236 } /* code 236 */
+ ,{ 5, 5, 1, acFontComic18B_1_237 } /* code 237 */
+ ,{ 5, 5, 1, acFontComic18B_1_238 } /* code 238 */
+ ,{ 5, 5, 1, acFontComic18B_1_239 } /* code 239 */
+ ,{ 8, 8, 1, acFontComic18B_1_240 } /* code 240 */
+ ,{ 8, 8, 1, acFontComic18B_1_241 } /* code 241 */
+ ,{ 8, 8, 1, acFontComic18B_1_242 } /* code 242 */
+ ,{ 8, 8, 1, acFontComic18B_1_243 } /* code 243 */
+ ,{ 8, 8, 1, acFontComic18B_1_244 } /* code 244 */
+ ,{ 8, 8, 1, acFontComic18B_1_245 } /* code 245 */
+ ,{ 8, 8, 1, acFontComic18B_1_246 } /* code 246 */
+ ,{ 9, 9, 2, acFontComic18B_1_247 } /* code 247 */
+ ,{ 8, 8, 1, acFontComic18B_1_248 } /* code 248 */
+ ,{ 8, 8, 1, acFontComic18B_1_249 } /* code 249 */
+ ,{ 8, 8, 1, acFontComic18B_1_250 } /* code 250 */
+ ,{ 8, 8, 1, acFontComic18B_1_251 } /* code 251 */
+ ,{ 8, 8, 1, acFontComic18B_1_252 } /* code 252 */
+ ,{ 9, 9, 2, acFontComic18B_1_253 } /* code 253 */
+ ,{ 9, 9, 2, acFontComic18B_1_254 } /* code 254 */
+ ,{ 9, 9, 2, acFontComic18B_1_255 } /* code 255 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP FontComic18BProp_1_160 = {
+ 160 /* first character */
+ ,255 /* last character */
+ ,CharInfoComic18B_1_160_255 /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP FontComic18BProp_1_32 = {
+ 32 /* first character */
+ ,127 /* last character */
+ ,CharInfo18B_ASCII /* address of first character */
+ ,&FontComic18BProp_1_160 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontComic18B_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,18 /* height of font */
+ ,18 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&FontComic18BProp_1_32}
+ ,15, 8, 12
+};
+
diff --git a/User/lib/lcd/gui/Font/FComic18B_ASCII.c b/User/lib/lcd/gui/Font/FComic18B_ASCII.c
new file mode 100644
index 0000000..aee10f2
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FComic18B_ASCII.c
@@ -0,0 +1,2079 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FComic18B_ASCII.C
+Purpose : Font, similar to Comic, ASCII only
+Height : 18
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_32[18] = { /* code 32 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_33[18] = { /* code 33 */
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_34[18] = { /* code 34 */
+ ________,
+ ________,
+ ________,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_35[36] = { /* code 35 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ___XX___,XX______,
+ ___XX__X,XX______,
+ __XX___X,X_______,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ __XX__XX,X_______,
+ _XX___XX,________,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_36[36] = { /* code 36 */
+ ________,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XXXXX,________,
+ _XXXXXXX,X_______,
+ XXX_XX__,________,
+ XX__XX__,________,
+ XX__XX__,________,
+ XXXXXXXX,________,
+ __XXXXXX,X_______,
+ ____XX_X,XX______,
+ ____XX__,XX______,
+ XX__XX_X,XX______,
+ XXXXXXXX,X_______,
+ _XXXXXXX,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_37[36] = { /* code 37 */
+ ________,________,
+ ________,________,
+ ________,X_______,
+ _XXX___X,X_______,
+ XXXXX__X,________,
+ XX_XX_XX,________,
+ XXXXX_X_,________,
+ _XXX_XX_,________,
+ _____X__,________,
+ ____XX__,________,
+ ____X___,XXX_____,
+ ___XX__X,XXXX____,
+ ___X___X,X_XX____,
+ __XX___X,XXXX____,
+ __X_____,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_38[36] = { /* code 38 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ ___XXXXX,________,
+ ___XX_XX,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ __XXXX__,_X______,
+ _XX__XX_,_X______,
+ XX____XX,XX______,
+ XX_____X,XX______,
+ XXX____X,X_______,
+ _XXXXXXX,XX______,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_39[18] = { /* code 39 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_40[18] = { /* code 40 */
+ ________,
+ ________,
+ ____XX__,
+ ___XXX__,
+ ___XX___,
+ __XX____,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ ____XX__};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_41[18] = { /* code 41 */
+ ________,
+ ________,
+ XX______,
+ XXX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ __XX____,
+ _XX_____,
+ XX______};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_42[36] = { /* code 42 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,________,
+ _XXXXXXX,________,
+ __XXXXXX,________,
+ ___XXX__,________,
+ __XX_XX_,________,
+ __X__XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_43[18] = { /* code 43 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ XXXXXXXX,
+ XXXXXXXX,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_44[18] = { /* code 44 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XX_____,
+ _X______,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_45[18] = { /* code 45 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_46[18] = { /* code 46 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_47[36] = { /* code 47 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ __XX____,________,
+ __XX____,________,
+ _XX_____,________,
+ _XX_____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_48[36] = { /* code 48 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ XX_____X,X_______,
+ _XX___XX,________,
+ _XXXXXXX,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_49[18] = { /* code 49 */
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XXX___,
+ _XXXX___,
+ _X_XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_50[36] = { /* code 50 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ __XXXXXX,X_______,
+ _XXX___X,X_______,
+ _XX____X,X_______,
+ _______X,X_______,
+ _____XXX,________,
+ ____XXX_,________,
+ __XXX___,________,
+ _XXX____,________,
+ _XX_____,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_51[36] = { /* code 51 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ ______XX,________,
+ _____XXX,________,
+ __XXXX__,________,
+ ___XXXXX,________,
+ ______XX,________,
+ ______XX,________,
+ _X____XX,________,
+ _XXXXXX_,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_52[36] = { /* code 52 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____XXX,________,
+ ____XXXX,________,
+ ____X_XX,________,
+ ___X__XX,________,
+ __XX__XX,________,
+ _XX___XX,________,
+ XXXXXXXX,XX______,
+ XXXXXXXX,XX______,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_53[36] = { /* code 53 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XX_____,________,
+ _XXXXXX_,________,
+ _XXXXXXX,________,
+ _XX___XX,X_______,
+ _XX____X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _XX___XX,X_______,
+ _XXXXXXX,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_54[36] = { /* code 54 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ __XXX___,________,
+ __XX____,________,
+ _XXXXXXX,________,
+ _XXXXXXX,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XXX__XX,X_______,
+ __XXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_55[36] = { /* code 55 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _______X,X_______,
+ ______XX,________,
+ ______X_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___X____,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_56[36] = { /* code 56 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ _XXXXXXX,________,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XXXXXXX,________,
+ __XXXXXX,________,
+ _XXX__XX,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XXXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_57[36] = { /* code 57 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ __XXXXXX,________,
+ _XXX__XX,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XXX__XX,X_______,
+ __XXXXXX,X_______,
+ ___XXXXX,X_______,
+ ______XX,________,
+ _____XXX,________,
+ ____XXX_,________,
+ __XXXX__,________,
+ __XX____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_58[18] = { /* code 58 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_59[18] = { /* code 59 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_60[18] = { /* code 60 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ___XXX__,
+ __XXX___,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_61[18] = { /* code 61 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_62[18] = { /* code 62 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ __XX____,
+ ___XX___,
+ ____XX__,
+ __XXX___,
+ _XXX____,
+ _X______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_63[36] = { /* code 63 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXX__,________,
+ _XXXXXX_,________,
+ _XX__XXX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ _____XX_,________,
+ ___XXX__,________,
+ ___X____,________,
+ ________,________,
+ __XX____,________,
+ __XX____,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_64[36] = { /* code 64 */
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXXX____,
+ ___XX___,__XXX___,
+ __XX____,___XX___,
+ __XX__XX,____XX__,
+ _XX__XX_,____XX__,
+ _XX_XX__,X___XX__,
+ _XX_XX_X,X___XX__,
+ _XX_XXXX,XXXXX___,
+ _XX__XX_,_XXX____,
+ _XXX____,________,
+ __XX____,________,
+ ___XX___,_XX_____,
+ ___XXXXX,XXX_____,
+ _____XXX,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_65[36] = { /* code 65 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XX_,XX______,
+ _____XX_,XX______,
+ ____XX__,XX______,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_66[36] = { /* code 66 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX__,________,
+ _XXXXXX_,________,
+ _XX__XXX,________,
+ _XX___XX,________,
+ _XX__XXX,________,
+ _XXXXXX_,________,
+ _XXXXXXX,________,
+ _XX___XX,X_______,
+ _XX____X,X_______,
+ _XX___XX,X_______,
+ _XXXXXXX,________,
+ _XXXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_67[36] = { /* code 67 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,________,
+ __XX__XX,________,
+ _XX_____,________,
+ _XX_____,________,
+ XX______,________,
+ XX______,________,
+ XX______,________,
+ XX_____X,________,
+ XXX__XXX,________,
+ _XXXXXX_,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_68[36] = { /* code 68 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XXXXX__,________,
+ _XXXXXXX,________,
+ _XX___XX,X_______,
+ _XX_____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX____X,XX______,
+ _XXXXXXX,X_______,
+ __XXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_69[36] = { /* code 69 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ __XXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_70[36] = { /* code 70 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_71[36] = { /* code 71 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ ___XXXXX,X_______,
+ __XXX__X,X_______,
+ _XXX____,________,
+ _XX_____,________,
+ XX_XXXXX,XX______,
+ XX_XXXXX,XX______,
+ XX______,XX______,
+ XX_____X,X_______,
+ XX____XX,X_______,
+ _XXXXXXX,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_72[36] = { /* code 72 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX__XXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXX___,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_73[36] = { /* code 73 */
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_74[36] = { /* code 74 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XX______,
+ __XXXXXX,XX______,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ XX___XX_,________,
+ XX___XX_,________,
+ XXX__XX_,________,
+ _XXXXXX_,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_75[36] = { /* code 75 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,X_______,
+ _XX____X,X_______,
+ _XX___XX,________,
+ _XX__XX_,________,
+ _XX_XX__,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXX___,________,
+ _XX_XX__,________,
+ _XX__XX_,________,
+ _XX___XX,X_______,
+ _XX____X,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_76[36] = { /* code 76 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_77[36] = { /* code 77 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,__X_____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___X_X__,_X_X____,
+ __XX_XX_,XX_XX___,
+ __XX_XX_,XX_XX___,
+ __XX_XX_,XX_XX___,
+ __X__XX_,XX_XX___,
+ _XX__XXX,X__XX___,
+ _XX___XX,X___XX__,
+ _XX___XX,X___XX__,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_78[36] = { /* code 78 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,__X_____,
+ _XX_____,__XX____,
+ _XXX____,__XX____,
+ _XXXX___,__XX____,
+ _XX_XX__,__XX____,
+ _XX__XX_,__XX____,
+ _XX___X_,__XX____,
+ _XX___XX,__XX____,
+ _XX____X,X_XX____,
+ _XX_____,XXXX____,
+ _XX_____,_XXX____,
+ _XX_____,__XX____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_79[36] = { /* code 79 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX___,_XXX____,
+ __XX____,__XX____,
+ _XXX____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,__XX____,
+ _XX_____,_XXX____,
+ _XX_____,_XX_____,
+ __XX____,XXX_____,
+ __XXXXXX,XX______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_80[18] = { /* code 80 */
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ _XXXXXX_,
+ _XX__XXX,
+ _XX___XX,
+ _XX__XXX,
+ _XXXXXX_,
+ _XXXXX__,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_81[36] = { /* code 81 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XX______,
+ __XXXXXX,XXX_____,
+ _XXXX___,_XXX____,
+ _XX_____,__XX____,
+ XX______,___XX___,
+ XX______,___XX___,
+ XX______,___XX___,
+ XX____X_,___XX___,
+ _XX___XX,___XX___,
+ _XXX___X,X_XX____,
+ __XXXXXX,XXXX____,
+ ____XXXX,_XX_____,
+ ________,__XX____,
+ ________,___XX___,
+ ________,____X___};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_82[36] = { /* code 82 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXX___,________,
+ _XXXXXX_,________,
+ _XX__XXX,________,
+ _XX___XX,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX___XX,________,
+ _XXXXXX_,________,
+ _XXXXXX_,________,
+ _XX__XXX,________,
+ _XX____X,XX______,
+ _XX_____,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_83[36] = { /* code 83 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,X_______,
+ __XXX___,________,
+ __XX____,________,
+ __XXXXXX,________,
+ ___XXXXX,X_______,
+ _______X,XX______,
+ ________,XX______,
+ _XX_____,XX______,
+ _XX____X,XX______,
+ __XXXXXX,X_______,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_84[36] = { /* code 84 */
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XX______,
+ XXXXXXXX,XX______,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_85[36] = { /* code 85 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ _XXX____,XX______,
+ __XX___X,XX______,
+ __XXXXXX,X_______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_86[36] = { /* code 86 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ _XX____X,X_______,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ __XX__XX,________,
+ ___XX_XX,________,
+ ___XX_XX,________,
+ ___XX_XX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_87[54] = { /* code 87 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XX_____,XX____XX,________,
+ _XX____X,XX____XX,________,
+ _XX____X,XX____XX,________,
+ _XX____X,_X____XX,________,
+ __XX__XX,_XX__XX_,________,
+ __XX__XX,_XX__XX_,________,
+ __XX__XX,_XX__XX_,________,
+ __XX_XX_,_XX_XX__,________,
+ ___X_XX_,_XX_XX__,________,
+ ___XXX__,_XX_XX__,________,
+ ___XXX__,_XXXX___,________,
+ ___XXX__,__XXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_88[36] = { /* code 88 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ __XX____,XX______,
+ ___XX__X,X_______,
+ ____XXXX,________,
+ _____XX_,________,
+ _____XXX,________,
+ ____XXXX,X_______,
+ ___XX__X,X_______,
+ __XX____,XX______,
+ _XX_____,_XX_____,
+ _XX_____,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_89[36] = { /* code 89 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,XX______,
+ _XX_____,XX______,
+ __XX___X,XX______,
+ __XX___X,X_______,
+ ___XX_XX,X_______,
+ ___XX_XX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ _____XX_,________,
+ ____XXX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_90[36] = { /* code 90 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _______X,XX______,
+ ______XX,X_______,
+ _____XXX,________,
+ ____XXX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ __XX____,________,
+ _XX_____,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_91[18] = { /* code 91 */
+ ________,
+ ________,
+ __XXXX__,
+ __XXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXXX__,
+ __XXXX__};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_92[18] = { /* code 92 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ ___X____,
+ ___XX___,
+ ___XX___,
+ ____X___,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ _____XX_,
+ _____XX_,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_93[18] = { /* code 93 */
+ ________,
+ ________,
+ XXXXX___,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ XXXXX___,
+ XXXXX___};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_94[18] = { /* code 94 */
+ ________,
+ ________,
+ ___XX___,
+ __XXXX__,
+ __XX_XX_,
+ _XX___X_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_95[36] = { /* code 95 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XX______};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_96[36] = { /* code 96 */
+ ________,________,
+ ________,________,
+ _X______,________,
+ _XX_____,________,
+ __XX____,________,
+ ___X____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_97[18] = { /* code 97 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _XXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXX_XX,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_98[36] = { /* code 98 */
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_XXX_,________,
+ _XXXXXXX,________,
+ _XXX__XX,X_______,
+ _XX____X,X_______,
+ _XX____X,X_______,
+ _XX___XX,X_______,
+ _XXXXXXX,________,
+ _XXXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_99[18] = { /* code 99 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XXXXXX_,
+ _XX___X_,
+ XX______,
+ XX______,
+ XX____X_,
+ _XXXXXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_100[36] = { /* code 100 */
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ __XXXXXX,________,
+ _XXXXXXX,________,
+ XXX___XX,________,
+ XX____XX,________,
+ XX____XX,________,
+ XXX___XX,________,
+ _XXXXXXX,________,
+ __XXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_101[18] = { /* code 101 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XXXXXX_,
+ XXX__XX_,
+ XX__XX__,
+ XX_XX___,
+ XXX___X_,
+ XXXXXXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_102[18] = { /* code 102 */
+ ________,
+ ________,
+ _____XXX,
+ ____XXXX,
+ ___XXX__,
+ ___XX___,
+ ___XX___,
+ _XXXXXX_,
+ _XXXXXX_,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_103[18] = { /* code 103 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ _XXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX__XXX_,
+ XXXXXXX_,
+ _XXX_XX_,
+ _____XX_,
+ ____XX__,
+ XXXXXX__,
+ _XXXX___};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_104[18] = { /* code 104 */
+ ________,
+ ________,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX______,
+ XX_XXX__,
+ XXXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_105[18] = { /* code 105 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_106[18] = { /* code 106 */
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_107[36] = { /* code 107 */
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX___X_,________,
+ _XX__XX_,________,
+ _XX_XX__,________,
+ _XXXXX__,________,
+ _XXXXX__,________,
+ _XX__XX_,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_108[18] = { /* code 108 */
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_109[36] = { /* code 109 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX_XXX_X,X_______,
+ XXXXXXXX,XX______,
+ XXX_XXX_,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_110[18] = { /* code 110 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_XXX__,
+ XXXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_111[18] = { /* code 111 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _XXXXX__,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_112[36] = { /* code 112 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XX_XXX_,________,
+ _XXXXXXX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XX___XX,________,
+ _XXXXXX_,________,
+ _XXXXX__,________,
+ _XX_____,________,
+ _XX_____,________,
+ _XX_____,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_113[18] = { /* code 113 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ _XXXXXX_,
+ XXX__XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ _XXXXXX_,
+ __XXXXX_,
+ _____XX_,
+ _____XX_,
+ _____XX_};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_114[18] = { /* code 114 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_XXX_,
+ _XXX_XX_,
+ _XX__XX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_115[18] = { /* code 115 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ _XXXXX__,
+ XXX_____,
+ XXXXX___,
+ _XXXXX__,
+ ____XX__,
+ XXXXXX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_116[18] = { /* code 116 */
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXXXXX__,
+ XXXXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_117[18] = { /* code 117 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XX___XX_,
+ XXXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_118[18] = { /* code 118 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ XX___XX_,
+ _XX_XX__,
+ _XX_XX__,
+ _XX_XX__,
+ __XXX___,
+ __XXX___,
+ ___X____,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_119[36] = { /* code 119 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX__XX__,XX______,
+ XX_XXXX_,XX______,
+ XX_XX_X_,XX______,
+ XX_XX_X_,XX______,
+ _XXX__XX,X_______,
+ _XXX__XX,X_______,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_120[36] = { /* code 120 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX____XX,________,
+ XXX__XXX,________,
+ _XXXXXX_,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ _XXXXXX_,________,
+ XXX__XXX,________,
+ XX____XX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_121[36] = { /* code 121 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX____XX,________,
+ XXX___XX,________,
+ _XX___XX,________,
+ _XXX_XX_,________,
+ __XX_XX_,________,
+ __XXXX__,________,
+ ___XXX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ __XX____,________,
+ __XX____,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_122[36] = { /* code 122 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ __XX____,________,
+ _XXXXXXX,________,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_123[18] = { /* code 123 */
+ ________,
+ ________,
+ ___XXX__,
+ __XXXX__,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XXX____,
+ _XX_____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ ___XXX__,
+ ___XXX__};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_124[18] = { /* code 124 */
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_125[18] = { /* code 125 */
+ ________,
+ ________,
+ XXX_____,
+ XXXX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XXX___,
+ ___XXX__,
+ __XXX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ __XX____,
+ XXX_____,
+ XXX_____};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_126[36] = { /* code 126 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ __XXXX__,X_______,
+ _XX_XX__,X_______,
+ _XX__XXX,X_______,
+ _X___XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_127[18] = { /* code 127 */
+ ________,
+ ________,
+ _XXXXXX_,
+ _XXXXXX_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _XXXXXX_,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic18B_ASCII_128[36] = { /* code 128 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXXXX,XX______,
+ __XXX___,________,
+ XXXXXXXX,________,
+ XXXXXXXX,________,
+ _XX_____,________,
+ XXXXXXX_,________,
+ XXXXXXX_,________,
+ _XX_____,________,
+ _XXX___X,X_______,
+ __XXXXXX,X_______,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO CharInfo18B_ASCII[97] = {
+ { 5, 5, 1, acFontComic18B_ASCII_32 } /* code 32 */
+ ,{ 4, 4, 1, acFontComic18B_ASCII_33 } /* code 33 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_34 } /* code 34 */
+ ,{ 13, 13, 2, acFontComic18B_ASCII_35 } /* code 35 */
+ ,{ 11, 11, 2, acFontComic18B_ASCII_36 } /* code 36 */
+ ,{ 13, 13, 2, acFontComic18B_ASCII_37 } /* code 37 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_38 } /* code 38 */
+ ,{ 6, 6, 1, acFontComic18B_ASCII_39 } /* code 39 */
+ ,{ 6, 6, 1, acFontComic18B_ASCII_40 } /* code 40 */
+ ,{ 6, 6, 1, acFontComic18B_ASCII_41 } /* code 41 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_42 } /* code 42 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_43 } /* code 43 */
+ ,{ 4, 4, 1, acFontComic18B_ASCII_44 } /* code 44 */
+ ,{ 7, 7, 1, acFontComic18B_ASCII_45 } /* code 45 */
+ ,{ 4, 4, 1, acFontComic18B_ASCII_46 } /* code 46 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_47 } /* code 47 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_48 } /* code 48 */
+ ,{ 7, 7, 1, acFontComic18B_ASCII_49 } /* code 49 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_50 } /* code 50 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_51 } /* code 51 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_52 } /* code 52 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_53 } /* code 53 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_54 } /* code 54 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_55 } /* code 55 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_56 } /* code 56 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_57 } /* code 57 */
+ ,{ 5, 5, 1, acFontComic18B_ASCII_58 } /* code 58 */
+ ,{ 5, 5, 1, acFontComic18B_ASCII_59 } /* code 59 */
+ ,{ 6, 6, 1, acFontComic18B_ASCII_60 } /* code 60 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_61 } /* code 61 */
+ ,{ 7, 7, 1, acFontComic18B_ASCII_62 } /* code 62 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_63 } /* code 63 */
+ ,{ 15, 15, 2, acFontComic18B_ASCII_64 } /* code 64 */
+ ,{ 12, 12, 2, acFontComic18B_ASCII_65 } /* code 65 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_66 } /* code 66 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_67 } /* code 67 */
+ ,{ 12, 12, 2, acFontComic18B_ASCII_68 } /* code 68 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_69 } /* code 69 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_70 } /* code 70 */
+ ,{ 11, 11, 2, acFontComic18B_ASCII_71 } /* code 71 */
+ ,{ 12, 12, 2, acFontComic18B_ASCII_72 } /* code 72 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_73 } /* code 73 */
+ ,{ 11, 11, 2, acFontComic18B_ASCII_74 } /* code 74 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_75 } /* code 75 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_76 } /* code 76 */
+ ,{ 15, 15, 2, acFontComic18B_ASCII_77 } /* code 77 */
+ ,{ 13, 13, 2, acFontComic18B_ASCII_78 } /* code 78 */
+ ,{ 13, 13, 2, acFontComic18B_ASCII_79 } /* code 79 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_80 } /* code 80 */
+ ,{ 14, 14, 2, acFontComic18B_ASCII_81 } /* code 81 */
+ ,{ 11, 11, 2, acFontComic18B_ASCII_82 } /* code 82 */
+ ,{ 11, 11, 2, acFontComic18B_ASCII_83 } /* code 83 */
+ ,{ 11, 11, 2, acFontComic18B_ASCII_84 } /* code 84 */
+ ,{ 12, 12, 2, acFontComic18B_ASCII_85 } /* code 85 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_86 } /* code 86 */
+ ,{ 17, 17, 3, acFontComic18B_ASCII_87 } /* code 87 */
+ ,{ 12, 12, 2, acFontComic18B_ASCII_88 } /* code 88 */
+ ,{ 11, 11, 2, acFontComic18B_ASCII_89 } /* code 89 */
+ ,{ 12, 12, 2, acFontComic18B_ASCII_90 } /* code 90 */
+ ,{ 6, 6, 1, acFontComic18B_ASCII_91 } /* code 91 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_92 } /* code 92 */
+ ,{ 6, 6, 1, acFontComic18B_ASCII_93 } /* code 93 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_94 } /* code 94 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_95 } /* code 95 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_96 } /* code 96 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_97 } /* code 97 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_98 } /* code 98 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_99 } /* code 99 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_100 } /* code 100 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_101 } /* code 101 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_102 } /* code 102 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_103 } /* code 103 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_104 } /* code 104 */
+ ,{ 5, 5, 1, acFontComic18B_ASCII_105 } /* code 105 */
+ ,{ 6, 6, 1, acFontComic18B_ASCII_106 } /* code 106 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_107 } /* code 107 */
+ ,{ 5, 5, 1, acFontComic18B_ASCII_108 } /* code 108 */
+ ,{ 11, 11, 2, acFontComic18B_ASCII_109 } /* code 109 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_110 } /* code 110 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_111 } /* code 111 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_112 } /* code 112 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_113 } /* code 113 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_114 } /* code 114 */
+ ,{ 7, 7, 1, acFontComic18B_ASCII_115 } /* code 115 */
+ ,{ 7, 7, 1, acFontComic18B_ASCII_116 } /* code 116 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_117 } /* code 117 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_118 } /* code 118 */
+ ,{ 11, 11, 2, acFontComic18B_ASCII_119 } /* code 119 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_120 } /* code 120 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_121 } /* code 121 */
+ ,{ 9, 9, 2, acFontComic18B_ASCII_122 } /* code 122 */
+ ,{ 6, 6, 1, acFontComic18B_ASCII_123 } /* code 123 */
+ ,{ 7, 7, 1, acFontComic18B_ASCII_124 } /* code 124 */
+ ,{ 6, 6, 1, acFontComic18B_ASCII_125 } /* code 125 */
+ ,{ 10, 10, 2, acFontComic18B_ASCII_126 } /* code 126 */
+ ,{ 8, 8, 1, acFontComic18B_ASCII_127 } /* code 127 */
+ ,{ 11, 11, 2, acFontComic18B_ASCII_128 } /* code 128 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontComic18BProp_ASCII_1 = {
+ 32 /* first character */
+ ,128 /* last character */
+ ,CharInfo18B_ASCII /* address of first character */
+ ,(const GUI_FONT_PROP *)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontComic18B_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,18 /* height of font */
+ ,18 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontComic18BProp_ASCII_1}
+ ,15, 8, 12
+};
+
diff --git a/User/lib/lcd/gui/Font/FComic24B_1.c b/User/lib/lcd/gui/Font/FComic24B_1.c
new file mode 100644
index 0000000..3c84684
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FComic24B_1.c
@@ -0,0 +1,2643 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : F24B.C
+Purpose : Similar to Comic
+Height : 24
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_160[48] = { /* code 160 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_161[24] = { /* code 161 */
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XXX____,
+ __XX____,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_162[48] = { /* code 162 */
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ _____XXX,XXXX____,
+ ___XXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXX_XX,__X_____,
+ _XXXX_XX,________,
+ _XXX__XX,________,
+ _XXX__XX,__XX____,
+ _XXX__XX,__XX____,
+ _XXXX_XX,_XXX____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ _____XXX,X_______,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_163[72] = { /* code 163 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXX____,________,
+ _____XXX,XXXXXX__,________,
+ ____XXXX,XXXXXXX_,________,
+ ___XXXX_,____XXX_,________,
+ ___XXX__,_____XX_,________,
+ ___XXX__,________,________,
+ XXXXXXXX,XXXXX___,________,
+ XXXXXXXX,XXXXX___,________,
+ XXXXXXXX,XXXXX___,________,
+ ___XXX__,________,________,
+ ____XXX_,________,________,
+ ____XXX_,______XX,________,
+ ____XXX_,______XX,________,
+ ____XXXX,X____XXX,________,
+ ___XXXXX,XXXXXXXX,________,
+ __XXXXXX,XXXXXXX_,________,
+ __XX____,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_164[48] = { /* code 164 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,________,
+ _XXXX___,___XX___,
+ _XXXXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ XXXX_XXX,XXXX____,
+ XXXX____,_XXXX___,
+ XXX_____,__XXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_165[48] = { /* code 165 */
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX_____,_XXX____,
+ XXXX____,_XXX____,
+ _XXX____,XXXX____,
+ __XXX___,XXX_____,
+ __XXX__X,XXX_____,
+ _XXXXX_X,XXXX____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ _____XXX,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_166[48] = { /* code 166 */
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_167[48] = { /* code 167 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXX___X,XXX_____,
+ _XXXX___,_XX_____,
+ __XXXXXX,________,
+ _XXXXXXX,XX______,
+ _XXX___X,XXX_____,
+ _XXX____,XXX_____,
+ _XXXXX__,XXX_____,
+ __XXXXXX,XXX_____,
+ XX___XXX,XXX_____,
+ XXX_____,XXX_____,
+ XXX_____,XXX_____,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_168[48] = { /* code 168 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX_X,XX______,
+ __XXXX_X,XXX_____,
+ __XXX__X,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_169[72] = { /* code 169 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXX____,________,
+ ____XXXX,XXXXX___,________,
+ ___XXX__,___XXX__,________,
+ __XXX_XX,XX__XXX_,________,
+ _XXX_XXX,XX___XX_,________,
+ _XX_XXX_,_____XX_,________,
+ _XX_XX__,_____XX_,________,
+ _XX_XX__,_XX__XX_,________,
+ _XX_XXXX,XXX_XX__,________,
+ _XXX__XX,XX_XXX__,________,
+ __XXX___,__XXX___,________,
+ ___XXXXX,XXXX____,________,
+ _____XXX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_170[48] = { /* code 170 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX__XX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_171[48] = { /* code 171 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,___XX___,
+ ___XXXX_,_XXXX___,
+ __XXXX__,XXXX____,
+ _XXXX__X,XXX_____,
+ XXXX__XX,XX______,
+ _XXXX__X,XXX_____,
+ __XXXX__,XXXX____,
+ ___XXXX_,_XXXX___,
+ ____XXX_,__XXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_172[48] = { /* code 172 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XX______,
+ __XXXXXX,XXX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_173[48] = { /* code 173 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XX______,
+ __XXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_174[72] = { /* code 174 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXX____,________,
+ ____XXXX,XXXXXX__,________,
+ ___XXX__,____XXX_,________,
+ __XXX_XX,XXX__XX_,________,
+ __XX_XXX,XXXX__XX,________,
+ _XX__XXX,__XX__XX,________,
+ _XX_XXX_,_XXX__XX,________,
+ _XX_XXXX,XXX___XX,________,
+ _XX_XXXX,XX____XX,________,
+ _XX_XXX_,XXX__XX_,________,
+ __XXXX__,_XX_XXX_,________,
+ __XXX___,___XXX__,________,
+ ___XXXXX,XXXXX___,________,
+ _____XXX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_175[48] = { /* code 175 */
+ XXXXXXXX,XXXXX___,
+ XXXXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_176[48] = { /* code 176 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,X_______,
+ __XX____,XX______,
+ __XX____,XX______,
+ __XX___X,XX______,
+ ___XXXXX,X_______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_177[48] = { /* code 177 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_178[48] = { /* code 178 */
+ ________,________,
+ _____XXX,X_______,
+ ___XXXXX,XX______,
+ ___XXX__,XX______,
+ ___XX__X,XX______,
+ _____XXX,XX______,
+ ____XXXX,X_______,
+ ___XXXX_,________,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_179[48] = { /* code 179 */
+ ________,________,
+ _____XXX,X_______,
+ _____XXX,XX______,
+ ________,XX______,
+ ______XX,XX______,
+ ______XX,XX______,
+ _______X,XX______,
+ ________,XX______,
+ ____XXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_180[48] = { /* code 180 */
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ __XXX___,________,
+ __XX____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_181[48] = { /* code 181 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,__XXX___,
+ ____XXX_,__XXX___,
+ ____XXX_,__XXX___,
+ ___XXX__,__XX____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XXX____,
+ ___XXX__,_XX_____,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ _XXXX___,________,
+ _XXX____,________,
+ _XXX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_182[48] = { /* code 182 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XXX_XX__,
+ ____XXXX,XXXXXXX_,
+ ___XXXXX,XXXXXXX_,
+ __XXXXXX,XXX_XXX_,
+ _XXXXX__,XXX_XXX_,
+ XXXX____,XXX_XXX_,
+ XXX_____,XXX_XXX_,
+ XXX_____,XXX_XXX_,
+ XXXX____,XXX_XXX_,
+ _XXXXXXX,XXXXXX__,
+ __XXXXXX,XXXXXX__,
+ ____XXXX,XX_XXX__,
+ _______X,XX_XXX__,
+ _______X,XX_XXX__,
+ ______XX,XX_XXX__,
+ ______XX,XXXXX___,
+ ______XX,X_XXX___,
+ ______XX,X_XXX___,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_183[48] = { /* code 183 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_184[48] = { /* code 184 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ ____XXXX,X_______,
+ _______X,X_______,
+ ___XXXXX,X_______,
+ ____XXXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_185[48] = { /* code 185 */
+ ________,________,
+ _____XX_,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ ___XXXX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ___XXXXX,X_______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_186[48] = { /* code 186 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXXX__,_XXX____,
+ __XXX___,_XXX____,
+ __XXXX__,XXXX____,
+ ___XXXXX,XXXX____,
+ ___XXXXX,XXX_____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_187[48] = { /* code 187 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XX____XX,________,
+ XXXX__XX,XX______,
+ _XXXX__X,XXX_____,
+ __XXXX__,XXXX____,
+ ___XXXX_,_XXXX___,
+ __XXXX__,XXXX____,
+ _XXXX__X,XXX_____,
+ XXXX__XX,XX______,
+ XXX___XX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_188[48] = { /* code 188 */
+ ________,________,
+ ______XX,________,
+ _____XXX,________,
+ ____XXXX,________,
+ _____XXX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ____XXXX,XX______,
+ ____XXXX,XX______,
+ ________,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ________,________,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XXX,X_______,
+ ____XX_X,X_______,
+ ___XX__X,X_______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ _______X,X_______,
+ _______X,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_189[48] = { /* code 189 */
+ ________,________,
+ ______XX,________,
+ _____XXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ____XXXX,XX______,
+ ____XXXX,XX______,
+ ________,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ ________,________,
+ _____XXX,X_______,
+ ___XXXXX,XX______,
+ ___XXX_X,XX______,
+ ___XX_XX,XX______,
+ _____XXX,XX______,
+ ____XXXX,X_______,
+ ___XXXX_,________,
+ ___XXXXX,XX______,
+ ___XXXXX,XX______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_190[48] = { /* code 190 */
+ ________,________,
+ ____XXXX,________,
+ ____XXXX,X_______,
+ _______X,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ______XX,X_______,
+ _______X,X_______,
+ ___XXXXX,X_______,
+ ___XXXXX,________,
+ ________,________,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXXX____,
+ ________,________,
+ ______XX,________,
+ _____XXX,________,
+ ____XXXX,________,
+ ___XX_XX,________,
+ __XX__XX,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ ______XX,________,
+ ______XX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_191[48] = { /* code 191 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ ________,________,
+ ________,________,
+ ______XX,X_______,
+ _____XXX,X_______,
+ ____XXXX,________,
+ ___XXXX_,________,
+ __XXXX__,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_192[48] = { /* code 192 */
+ ________,_XXX____,
+ ________,__XX____,
+ ________,________,
+ ________,_XX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ _______X,XXX_____,
+ ______XX,XXXX____,
+ ______XX,XXXX____,
+ _____XXX,_XXX____,
+ _____XXX,_XXX____,
+ ____XXX_,_XXX____,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ _XXXX___,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,____XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_193[48] = { /* code 193 */
+ ________,_XXX____,
+ ________,_XX_____,
+ ________,________,
+ ________,_XX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ _______X,XXX_____,
+ ______XX,XXXX____,
+ ______XX,XXXX____,
+ _____XXX,_XXX____,
+ _____XXX,_XXX____,
+ ____XXX_,_XXX____,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ _XXXX___,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,____XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_194[48] = { /* code 194 */
+ _____XXX,X__XXX__,
+ _____XXX,____XX__,
+ ________,________,
+ ________,_XX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ _______X,XXX_____,
+ ______XX,XXXX____,
+ ______XX,XXXX____,
+ _____XXX,_XXX____,
+ _____XXX,_XXX____,
+ ____XXX_,_XXX____,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ _XXXX___,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,____XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_195[48] = { /* code 195 */
+ _____XXX,_XXXXX__,
+ _____XX_,__XXXX__,
+ ________,________,
+ ________,_XX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ _______X,XXX_____,
+ ______XX,XXXX____,
+ ______XX,XXXX____,
+ _____XXX,_XXX____,
+ _____XXX,_XXX____,
+ ____XXX_,_XXX____,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ _XXXX___,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,____XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_196[48] = { /* code 196 */
+ ______XX,XX_XXXX_,
+ ______XX,X__XXXX_,
+ ________,________,
+ ________,_XX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ _______X,XXX_____,
+ ______XX,XXXX____,
+ ______XX,XXXX____,
+ _____XXX,_XXX____,
+ _____XXX,_XXX____,
+ ____XXX_,_XXX____,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ _XXXX___,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,____XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_197[48] = { /* code 197 */
+ ______XX,XXXXX___,
+ ______XX,___XX___,
+ ______XX,___XX___,
+ ______XX,XXXXX___,
+ _______X,XXXX____,
+ ________,XXX_____,
+ _______X,XXX_____,
+ ______XX,XXXX____,
+ ______XX,XXXX____,
+ _____XXX,_XXX____,
+ _____XXX,_XXX____,
+ ____XXX_,_XXX____,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ _XXXX___,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,____XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_198[72] = { /* code 198 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,___XXXXX,XXXXX___,
+ ________,__XXXXXX,XXXXXX__,
+ ________,_XXXXXXX,XXXXX___,
+ ________,XXXXXX__,________,
+ _______X,XXXXXX__,________,
+ ______XX,XX_XXX__,________,
+ _____XXX,X__XXX__,________,
+ _____XXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXX___,
+ __XXXX__,___XXX__,________,
+ __XXX___,___XXX__,________,
+ _XXXX___,___XXX__,________,
+ _XXX____,___XXX__,________,
+ XXXX____,___XXXXX,XXXXX___,
+ XXX_____,____XXXX,XXXXXX__,
+ ________,_____XXX,XXXXX___,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_199[48] = { /* code 199 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XXXXX___,
+ ______XX,XXXXX___,
+ _____XXX,XXXXX___,
+ ____XXXX,__XXX___,
+ ___XXXX_,___XX___,
+ __XXXX__,________,
+ __XXX___,________,
+ __XXX___,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,__XX____,
+ _XXXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ ____XXXX,________,
+ _____XXX,________,
+ _XXXXXXX,________,
+ _XXXXX__,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_200[48] = { /* code 200 */
+ _______X,X_______,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_201[48] = { /* code 201 */
+ ______XX,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_202[48] = { /* code 202 */
+ __XXX___,_XX_____,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_203[48] = { /* code 203 */
+ ___XXX__,XXXX____,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_204[48] = { /* code 204 */
+ _____XXX,________,
+ ______XX,________,
+ ________,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_205[48] = { /* code 205 */
+ ____XXX_,________,
+ ____XX__,________,
+ ________,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_206[48] = { /* code 206 */
+ _XXXX__X,XX______,
+ _XXX____,XX______,
+ ________,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_207[48] = { /* code 207 */
+ __XXXX_X,XXX_____,
+ __XXX__X,XXX_____,
+ ________,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_208[48] = { /* code 208 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ __XXXXX_,________,
+ __XXXXXX,XX______,
+ __XXX_XX,XXX_____,
+ __XXX___,XXXX____,
+ __XXX___,__XXX___,
+ __XXX___,___XXX__,
+ XXXXXXXX,____XXX_,
+ XXXXXXXX,X___XXX_,
+ XXXXXXXX,X___XXX_,
+ __XXX___,____XXX_,
+ __XXX___,____XXX_,
+ __XXX___,___XXX__,
+ __XXX___,__XXXX__,
+ __XXXXXX,XXXXX___,
+ __XXXXXX,XXXX____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_209[72] = { /* code 209 */
+ ___XXX_X,XXXX____,________,
+ ___XX___,XXXX____,________,
+ ________,________,________,
+ _XXX____,_____XX_,________,
+ _XXX____,_____XXX,________,
+ _XXXX___,_____XXX,________,
+ _XXXXX__,_____XXX,________,
+ _XXXXX__,_____XXX,________,
+ _XXXXXX_,_____XXX,________,
+ _XXX_XXX,_____XXX,________,
+ _XXX_XXX,X____XXX,________,
+ _XXX__XX,X____XXX,________,
+ _XXX___X,XX___XXX,________,
+ _XXX____,XXX__XXX,________,
+ _XXX____,_XXX_XXX,________,
+ _XXX____,__XXXXXX,________,
+ _XXX____,__XXXXXX,________,
+ _XXX____,___XXXXX,________,
+ _XXX____,____XXXX,________,
+ __X_____,______X_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_210[72] = { /* code 210 */
+ ________,__XXX___,________,
+ ________,___XX___,________,
+ ________,________,________,
+ _______X,XXXXX___,________,
+ ______XX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,_____XXX,________,
+ ___XXXX_,______XX,X_______,
+ ___XXX__,______XX,X_______,
+ ___XXX__,______XX,X_______,
+ __XXX___,______XX,X_______,
+ __XXX___,______XX,X_______,
+ __XXX___,______XX,X_______,
+ __XXX___,_____XXX,________,
+ __XXX___,_____XXX,________,
+ __XXXX__,____XXXX,________,
+ ___XXXX_,___XXXX_,________,
+ ____XXXX,XXXXXX__,________,
+ _____XXX,XXXXX___,________,
+ ______XX,XXXX____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_211[72] = { /* code 211 */
+ ________,_XXX____,________,
+ ________,_XX_____,________,
+ ________,________,________,
+ ______XX,XXXX____,________,
+ _____XXX,XXXXXX__,________,
+ ____XXXX,XXXXXXX_,________,
+ ___XXXX_,____XXX_,________,
+ __XXXX__,_____XXX,________,
+ __XXX___,_____XXX,________,
+ __XXX___,_____XXX,________,
+ _XXX____,_____XXX,________,
+ _XXX____,_____XXX,________,
+ _XXX____,_____XXX,________,
+ _XXX____,____XXX_,________,
+ _XXX____,____XXX_,________,
+ _XXXX___,___XXXX_,________,
+ __XXXX__,__XXXX__,________,
+ ___XXXXX,XXXXX___,________,
+ ____XXXX,XXXX____,________,
+ _____XXX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_212[72] = { /* code 212 */
+ ______XX,XX__XXX_,________,
+ ______XX,X____XX_,________,
+ ________,________,________,
+ _______X,XXXXX___,________,
+ ______XX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,_____XXX,________,
+ ___XXXX_,______XX,X_______,
+ ___XXX__,______XX,X_______,
+ ___XXX__,______XX,X_______,
+ __XXX___,______XX,X_______,
+ __XXX___,______XX,X_______,
+ __XXX___,______XX,X_______,
+ __XXX___,_____XXX,________,
+ __XXX___,_____XXX,________,
+ __XXXX__,____XXXX,________,
+ ___XXXX_,___XXXX_,________,
+ ____XXXX,XXXXXX__,________,
+ _____XXX,XXXXX___,________,
+ ______XX,XXXX____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_213[72] = { /* code 213 */
+ _____XXX,_XXXXX__,________,
+ _____XX_,__XXXX__,________,
+ ________,________,________,
+ _______X,XXXXX___,________,
+ ______XX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,_____XXX,________,
+ ___XXXX_,______XX,X_______,
+ ___XXX__,______XX,X_______,
+ ___XXX__,______XX,X_______,
+ __XXX___,______XX,X_______,
+ __XXX___,______XX,X_______,
+ __XXX___,______XX,X_______,
+ __XXX___,_____XXX,________,
+ __XXX___,_____XXX,________,
+ __XXXX__,____XXXX,________,
+ ___XXXX_,___XXXX_,________,
+ ____XXXX,XXXXXX__,________,
+ _____XXX,XXXXX___,________,
+ ______XX,XXXX____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_214[72] = { /* code 214 */
+ ______XX,XX_XXXX_,________,
+ ______XX,X__XXXX_,________,
+ ________,________,________,
+ ______XX,XXXX____,________,
+ _____XXX,XXXXXX__,________,
+ ____XXXX,XXXXXXX_,________,
+ ___XXXX_,____XXX_,________,
+ __XXXX__,_____XXX,________,
+ __XXX___,_____XXX,________,
+ __XXX___,_____XXX,________,
+ _XXX____,_____XXX,________,
+ _XXX____,_____XXX,________,
+ _XXX____,_____XXX,________,
+ _XXX____,____XXX_,________,
+ _XXX____,____XXX_,________,
+ _XXXX___,___XXXX_,________,
+ __XXXX__,__XXXX__,________,
+ ___XXXXX,XXXXX___,________,
+ ____XXXX,XXXX____,________,
+ _____XXX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_215[48] = { /* code 215 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXX___,XXX_____,
+ __XXXX_X,XXX_____,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ ___XXXXX,XX______,
+ ___XXX_X,XXX_____,
+ ___XXX__,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_216[72] = { /* code 216 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXX___X,X_______,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,________,
+ __XXXXX_,___XXXX_,________,
+ __XXX___,__XXXXXX,________,
+ _XXX____,_XXXXXXX,________,
+ _XXX____,XXXX_XXX,________,
+ XXX____X,XXX__XXX,________,
+ XXX___XX,XX___XXX,________,
+ XXX__XXX,X____XXX,________,
+ XXX_XXXX,____XXXX,________,
+ XXXXXXX_,____XXX_,________,
+ XXXXXX__,___XXXX_,________,
+ _XXXXX__,__XXXX__,________,
+ _XXXXXXX,XXXXX___,________,
+ XXX_XXXX,XXXX____,________,
+ XX___XXX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_217[48] = { /* code 217 */
+ _______X,XX______,
+ ________,XX______,
+ ________,________,
+ __X_____,____X___,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXX___,__XXX___,
+ __XXX___,_XXX____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_218[48] = { /* code 218 */
+ ______XX,X_______,
+ ______XX,________,
+ ________,________,
+ __X_____,____X___,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXX___,__XXX___,
+ __XXX___,_XXX____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_219[48] = { /* code 219 */
+ ___XXXX_,_XXX____,
+ ___XXX__,__XX____,
+ ________,________,
+ __X_____,____X___,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXX___,__XXX___,
+ __XXX___,_XXX____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_220[48] = { /* code 220 */
+ ____XXXX,_XXXX___,
+ ____XXX_,_XXXX___,
+ ________,________,
+ __X_____,____X___,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXX___,__XXX___,
+ __XXX___,_XXX____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_221[48] = { /* code 221 */
+ ______XX,________,
+ ________,________,
+ ________,________,
+ XXX_____,__XXX___,
+ XXX_____,__XXX___,
+ XXXX____,_XXXX___,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXX___,XXX_____,
+ ___XXX_X,XXX_____,
+ ___XXX_X,XX______,
+ ____XXXX,XX______,
+ ____XXXX,X_______,
+ _____XXX,X_______,
+ _____XXX,________,
+ ____XXXX,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_222[48] = { /* code 222 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXX___X,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ _XXXXXXX,XX______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_223[48] = { /* code 223 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,X_______,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX__XX,XX______,
+ _XXX__XX,X_______,
+ _XXX_XXX,________,
+ _XXX_XXX,X_______,
+ _XXX__XX,X_______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX_XXX,XX______,
+ _XXX_XXX,X_______,
+ _XXX_XXX,X_______,
+ _XX_____,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_224[48] = { /* code 224 */
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ ___XXX__,________,
+ ____XXX_,________,
+ _____XXX,________,
+ ______XX,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,XX______,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_225[48] = { /* code 225 */
+ ________,________,
+ ________,________,
+ ________,XX______,
+ _______X,XX______,
+ ______XX,X_______,
+ _____XXX,________,
+ _____XX_,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,XX______,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_226[48] = { /* code 226 */
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ __XXXXXX,X_______,
+ _XXXX__X,XX______,
+ _XXX____,XX______,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,XX______,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_227[48] = { /* code 227 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,_XX_____,
+ __XXXXX_,XXX_____,
+ _XXX_XXX,XX______,
+ _XX___XX,XX______,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,XX______,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_228[48] = { /* code 228 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX_X,XX______,
+ __XXXX_X,XXX_____,
+ __XXX__X,XXX_____,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,XX______,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_229[48] = { /* code 229 */
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,X_______,
+ __XX___X,X_______,
+ __XX___X,X_______,
+ __XXXXXX,X_______,
+ ___XXXXX,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,XX______,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_230[72] = { /* code 230 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XXXX,X_XXXXX_,________,
+ __XXXXXX,XXXXXXXX,X_______,
+ _XXXXXXX,XXXXXXXX,X_______,
+ _XXX___X,XXX___XX,X_______,
+ XXXX___X,XX_XXXXX,________,
+ XXX____X,XXXXXXX_,________,
+ XXX____X,XXXXX___,________,
+ XXX____X,XXX_____,XX______,
+ XXXX___X,XXX____X,XX______,
+ _XXXXXXX,XXXXXXXX,XX______,
+ __XXXXXX,XXXXXXXX,X_______,
+ ___XXXX_,XX_XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_231[48] = { /* code 231 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXXX___,XX______,
+ XXXX____,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXXX___X,XX______,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ ___XXXXX,X_______,
+ _____XXX,________,
+ ______XX,________,
+ __XXXXXX,________,
+ __XXXXXX,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_232[48] = { /* code 232 */
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ ___XXX__,________,
+ ____XXX_,________,
+ _____XXX,________,
+ ______XX,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXX____,XXX_____,
+ XXXX__XX,XXX_____,
+ XXX_XXXX,XX______,
+ XXXXXXXX,________,
+ XXXXXX__,________,
+ XXXX____,XXX_____,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_233[48] = { /* code 233 */
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XXX,________,
+ ____XXX_,________,
+ ____XX__,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXX____,XXX_____,
+ XXXX__XX,XXX_____,
+ XXX_XXXX,XX______,
+ XXXXXXXX,________,
+ XXXXXX__,________,
+ XXXX____,XXX_____,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_234[48] = { /* code 234 */
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ __XXXXXX,X_______,
+ _XXXX__X,XX______,
+ _XXX____,XX______,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXX____,XXX_____,
+ XXXX__XX,XXX_____,
+ XXX_XXXX,XX______,
+ XXXXXXXX,________,
+ XXXXXX__,________,
+ XXXX____,XXX_____,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_235[48] = { /* code 235 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX_X,XX______,
+ __XXXX_X,XXX_____,
+ __XXX__X,XXX_____,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXX____,XXX_____,
+ XXXX__XX,XXX_____,
+ XXX_XXXX,XX______,
+ XXXXXXXX,________,
+ XXXXXX__,________,
+ XXXX____,XXX_____,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_236[24] = { /* code 236 */
+ ________,
+ ________,
+ XX______,
+ XXX_____,
+ _XXX____,
+ __XXX___,
+ ___XX___,
+ ________,
+ __X_____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_237[24] = { /* code 237 */
+ ________,
+ ________,
+ ____XX__,
+ ___XXX__,
+ __XXX___,
+ _XXX____,
+ _XX_____,
+ ________,
+ __X_____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_238[24] = { /* code 238 */
+ ________,
+ ________,
+ __XX____,
+ _XXXX___,
+ XXXXXX__,
+ XX__XX__,
+ X____X__,
+ ________,
+ __X_____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_239[24] = { /* code 239 */
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_XX__,
+ XXX_XX__,
+ XX__XX__,
+ ________,
+ __X_____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_240[48] = { /* code 240 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ ___XXXXX,X_______,
+ ____XXXX,X_______,
+ ___XXXXX,________,
+ __XXXXX_,________,
+ __XXX_XX,________,
+ _____XXX,X_______,
+ ____XXXX,X_______,
+ ___XXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX__XX,XX______,
+ __XXXXXX,X_______,
+ __XXXXXX,X_______,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_241[48] = { /* code 241 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,_XX_____,
+ __XXXXX_,XXX_____,
+ _XXX_XXX,XX______,
+ _XX___XX,XX______,
+ ________,________,
+ _XXX_XXX,X_______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XXXXX_X,XX______,
+ _XXXX__X,XX______,
+ _XXXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __X_____,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_242[48] = { /* code 242 */
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ ____XXX_,________,
+ _____XXX,________,
+ ______XX,X_______,
+ _______X,X_______,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XXX__XX,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXXX__XX,XX______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_243[48] = { /* code 243 */
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ ______XX,X_______,
+ _____XXX,________,
+ ____XXX_,________,
+ ____XX__,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XXX__XX,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXXX__XX,XX______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_244[48] = { /* code 244 */
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ __XXXXXX,X_______,
+ _XXXX__X,XX______,
+ _XXX____,XX______,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XXX__XX,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXXX__XX,XX______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_245[48] = { /* code 245 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,_XX_____,
+ __XXXXX_,XXX_____,
+ _XXX_XXX,XX______,
+ _XX___XX,XX______,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XXX__XX,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXXX__XX,XX______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_246[48] = { /* code 246 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX_X,XX______,
+ __XXXX_X,XXX_____,
+ __XXX__X,XXX_____,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XXX__XX,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXXX__XX,XX______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_247[48] = { /* code 247 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_248[48] = { /* code 248 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,XX______,
+ __XXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXX__XX,XX______,
+ XXX__XXX,XX______,
+ XXX_XXXX,XX______,
+ XXXXXX_X,XX______,
+ XXXXX__X,XX______,
+ XXXX__XX,XX______,
+ _XXXXXXX,X_______,
+ XXXXXXXX,________,
+ XX_XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_249[48] = { /* code 249 */
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ ____XXX_,________,
+ _____XXX,________,
+ ______XX,X_______,
+ _______X,X_______,
+ ________,________,
+ ___X____,_X______,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ ____XXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_250[48] = { /* code 250 */
+ ________,________,
+ ________,________,
+ ________,XX______,
+ _______X,XX______,
+ ______XX,X_______,
+ _____XXX,________,
+ _____XX_,________,
+ ________,________,
+ ___X____,_X______,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ ____XXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_251[48] = { /* code 251 */
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ __XXXXXX,X_______,
+ _XXXX__X,XX______,
+ _XXX____,XX______,
+ ________,________,
+ ___X____,_X______,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ ____XXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_252[48] = { /* code 252 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,XXX_____,
+ ___XXXX_,XXX_____,
+ ___XXX__,XXX_____,
+ ________,________,
+ ___X____,_X______,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ ____XXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_253[48] = { /* code 253 */
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____XXX,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ ___XX___,________,
+ ________,________,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXX___,XXX_____,
+ __XXXX_X,XXX_____,
+ ___XXX_X,XX______,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,X_______,
+ _____XXX,________,
+ ____XXXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_254[48] = { /* code 254 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX_XXX,X_______,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXXX___,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXXXXXX,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_255[48] = { /* code 255 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX_X,XX______,
+ __XXXX_X,XXX_____,
+ __XXX__X,XXX_____,
+ ________,________,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXX___,XXX_____,
+ __XXXX_X,XXX_____,
+ ___XXX_X,XX______,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,X_______,
+ _____XXX,________,
+ ____XXXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ ________,________};
+
+
+
+GUI_CONST_STORAGE GUI_CHARINFO CharInfo24B_160_255[] = {
+ { 10, 10, 2, acFontComic24B_160 } /* code 160 */
+ ,{ 5, 5, 1, acFontComic24B_161 } /* code 161 */
+ ,{ 13, 13, 2, acFontComic24B_162 } /* code 162 */
+ ,{ 17, 17, 3, acFontComic24B_163 } /* code 163 */
+ ,{ 13, 13, 2, acFontComic24B_164 } /* code 164 */
+ ,{ 13, 13, 2, acFontComic24B_165 } /* code 165 */
+ ,{ 9, 9, 2, acFontComic24B_166 } /* code 166 */
+ ,{ 13, 13, 2, acFontComic24B_167 } /* code 167 */
+ ,{ 12, 12, 2, acFontComic24B_168 } /* code 168 */
+ ,{ 17, 17, 3, acFontComic24B_169 } /* code 169 */
+ ,{ 13, 13, 2, acFontComic24B_170 } /* code 170 */
+ ,{ 13, 13, 2, acFontComic24B_171 } /* code 171 */
+ ,{ 13, 13, 2, acFontComic24B_172 } /* code 172 */
+ ,{ 13, 13, 2, acFontComic24B_173 } /* code 173 */
+ ,{ 17, 17, 3, acFontComic24B_174 } /* code 174 */
+ ,{ 13, 13, 2, acFontComic24B_175 } /* code 175 */
+ ,{ 13, 13, 2, acFontComic24B_176 } /* code 176 */
+ ,{ 13, 13, 2, acFontComic24B_177 } /* code 177 */
+ ,{ 13, 13, 2, acFontComic24B_178 } /* code 178 */
+ ,{ 13, 13, 2, acFontComic24B_179 } /* code 179 */
+ ,{ 12, 12, 2, acFontComic24B_180 } /* code 180 */
+ ,{ 13, 13, 2, acFontComic24B_181 } /* code 181 */
+ ,{ 16, 16, 2, acFontComic24B_182 } /* code 182 */
+ ,{ 13, 13, 2, acFontComic24B_183 } /* code 183 */
+ ,{ 12, 12, 2, acFontComic24B_184 } /* code 184 */
+ ,{ 13, 13, 2, acFontComic24B_185 } /* code 185 */
+ ,{ 13, 13, 2, acFontComic24B_186 } /* code 186 */
+ ,{ 13, 13, 2, acFontComic24B_187 } /* code 187 */
+ ,{ 13, 13, 2, acFontComic24B_188 } /* code 188 */
+ ,{ 13, 13, 2, acFontComic24B_189 } /* code 189 */
+ ,{ 13, 13, 2, acFontComic24B_190 } /* code 190 */
+ ,{ 12, 12, 2, acFontComic24B_191 } /* code 191 */
+ ,{ 15, 15, 2, acFontComic24B_192 } /* code 192 */
+ ,{ 15, 15, 2, acFontComic24B_193 } /* code 193 */
+ ,{ 15, 15, 2, acFontComic24B_194 } /* code 194 */
+ ,{ 15, 15, 2, acFontComic24B_195 } /* code 195 */
+ ,{ 15, 15, 2, acFontComic24B_196 } /* code 196 */
+ ,{ 15, 15, 2, acFontComic24B_197 } /* code 197 */
+ ,{ 23, 23, 3, acFontComic24B_198 } /* code 198 */
+ ,{ 13, 13, 2, acFontComic24B_199 } /* code 199 */
+ ,{ 13, 13, 2, acFontComic24B_200 } /* code 200 */
+ ,{ 13, 13, 2, acFontComic24B_201 } /* code 201 */
+ ,{ 13, 13, 2, acFontComic24B_202 } /* code 202 */
+ ,{ 13, 13, 2, acFontComic24B_203 } /* code 203 */
+ ,{ 11, 11, 2, acFontComic24B_204 } /* code 204 */
+ ,{ 11, 11, 2, acFontComic24B_205 } /* code 205 */
+ ,{ 11, 11, 2, acFontComic24B_206 } /* code 206 */
+ ,{ 11, 11, 2, acFontComic24B_207 } /* code 207 */
+ ,{ 15, 15, 2, acFontComic24B_208 } /* code 208 */
+ ,{ 17, 17, 3, acFontComic24B_209 } /* code 209 */
+ ,{ 17, 17, 3, acFontComic24B_210 } /* code 210 */
+ ,{ 17, 17, 3, acFontComic24B_211 } /* code 211 */
+ ,{ 17, 17, 3, acFontComic24B_212 } /* code 212 */
+ ,{ 17, 17, 3, acFontComic24B_213 } /* code 213 */
+ ,{ 17, 17, 3, acFontComic24B_214 } /* code 214 */
+ ,{ 13, 13, 2, acFontComic24B_215 } /* code 215 */
+ ,{ 17, 17, 3, acFontComic24B_216 } /* code 216 */
+ ,{ 15, 15, 2, acFontComic24B_217 } /* code 217 */
+ ,{ 15, 15, 2, acFontComic24B_218 } /* code 218 */
+ ,{ 15, 15, 2, acFontComic24B_219 } /* code 219 */
+ ,{ 15, 15, 2, acFontComic24B_220 } /* code 220 */
+ ,{ 13, 13, 2, acFontComic24B_221 } /* code 221 */
+ ,{ 11, 11, 2, acFontComic24B_222 } /* code 222 */
+ ,{ 11, 11, 2, acFontComic24B_223 } /* code 223 */
+ ,{ 12, 12, 2, acFontComic24B_224 } /* code 224 */
+ ,{ 12, 12, 2, acFontComic24B_225 } /* code 225 */
+ ,{ 12, 12, 2, acFontComic24B_226 } /* code 226 */
+ ,{ 12, 12, 2, acFontComic24B_227 } /* code 227 */
+ ,{ 12, 12, 2, acFontComic24B_228 } /* code 228 */
+ ,{ 12, 12, 2, acFontComic24B_229 } /* code 229 */
+ ,{ 19, 19, 3, acFontComic24B_230 } /* code 230 */
+ ,{ 11, 11, 2, acFontComic24B_231 } /* code 231 */
+ ,{ 12, 12, 2, acFontComic24B_232 } /* code 232 */
+ ,{ 12, 12, 2, acFontComic24B_233 } /* code 233 */
+ ,{ 12, 12, 2, acFontComic24B_234 } /* code 234 */
+ ,{ 12, 12, 2, acFontComic24B_235 } /* code 235 */
+ ,{ 6, 6, 1, acFontComic24B_236 } /* code 236 */
+ ,{ 6, 6, 1, acFontComic24B_237 } /* code 237 */
+ ,{ 6, 6, 1, acFontComic24B_238 } /* code 238 */
+ ,{ 6, 6, 1, acFontComic24B_239 } /* code 239 */
+ ,{ 11, 11, 2, acFontComic24B_240 } /* code 240 */
+ ,{ 11, 11, 2, acFontComic24B_241 } /* code 241 */
+ ,{ 11, 11, 2, acFontComic24B_242 } /* code 242 */
+ ,{ 11, 11, 2, acFontComic24B_243 } /* code 243 */
+ ,{ 11, 11, 2, acFontComic24B_244 } /* code 244 */
+ ,{ 11, 11, 2, acFontComic24B_245 } /* code 245 */
+ ,{ 11, 11, 2, acFontComic24B_246 } /* code 246 */
+ ,{ 13, 13, 2, acFontComic24B_247 } /* code 247 */
+ ,{ 11, 11, 2, acFontComic24B_248 } /* code 248 */
+ ,{ 11, 11, 2, acFontComic24B_249 } /* code 249 */
+ ,{ 11, 11, 2, acFontComic24B_250 } /* code 250 */
+ ,{ 11, 11, 2, acFontComic24B_251 } /* code 251 */
+ ,{ 11, 11, 2, acFontComic24B_252 } /* code 252 */
+ ,{ 12, 12, 2, acFontComic24B_253 } /* code 253 */
+ ,{ 11, 11, 2, acFontComic24B_254 } /* code 254 */
+ ,{ 12, 12, 2, acFontComic24B_255 } /* code 255 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP FontComic24BProp_1_160_255 = {
+ 160 /* first character */
+ ,255 /* last character */
+ ,CharInfo24B_160_255 /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP FontComic24BProp_1_ASCII = {
+ 32 /* first character */
+ ,127 /* last character */
+ ,CharInfo24B_ASCII /* address of first character */
+ ,&FontComic24BProp_1_160_255 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontComic24B_1 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,24 /* height of font */
+ ,24 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&FontComic24BProp_1_ASCII}
+ ,20, 12, 17
+};
+
diff --git a/User/lib/lcd/gui/Font/FComic24B_ASCII.c b/User/lib/lcd/gui/Font/FComic24B_ASCII.c
new file mode 100644
index 0000000..1f5626a
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FComic24B_ASCII.c
@@ -0,0 +1,2638 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FComic24B_ASCII.C
+Purpose : Similar to Comic
+Height : 24
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_32[48] = { /* code 32 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_33[24] = { /* code 33 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ _XX_____,
+ _XXX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_34[48] = { /* code 34 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ _XX__XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_35[72] = { /* code 35 */
+ ________,________,________,
+ ________,________,________,
+ ______XX,X___XXX_,________,
+ ______XX,X___XXX_,________,
+ ______XX,X__XXXX_,________,
+ _XXXXXXX,XXXXXXXX,X_______,
+ _XXXXXXX,XXXXXXXX,X_______,
+ _XXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,__XXXX__,________,
+ ____XXX_,__XXX___,________,
+ ____XXX_,__XXX___,________,
+ ___XXX__,__XXX___,________,
+ XXXXXXXX,XXXXXXXX,________,
+ XXXXXXXX,XXXXXXXX,________,
+ XXXXXXXX,XXXXXXXX,________,
+ __XXX___,_XXX____,________,
+ _XXXX___,XXX_____,________,
+ _XXX____,XXX_____,________,
+ _XXX____,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_36[48] = { /* code 36 */
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ _____XXX,XXX_____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX_XX,X_______,
+ _XXX__XX,X_______,
+ _XXX__XX,X_______,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XXXXX___,
+ ____XXXX,XXXXX___,
+ ______XX,X_XXXX__,
+ ______XX,X__XXX__,
+ ______XX,X__XXX__,
+ ______XX,X__XXX__,
+ _XXX__XX,X_XXXX__,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXX____,
+ __XXXXXX,XX______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_37[72] = { /* code 37 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXX__,___XX___,________,
+ _XXXXXX_,__XXX___,________,
+ XXXXXXXX,_XXX____,________,
+ XXX__XXX,_XXX____,________,
+ XXX__XXX,XXX_____,________,
+ XXXXXXXX,XXX_____,________,
+ _XXXXXXX,XX______,________,
+ __XXXX_X,XX______,________,
+ ______XX,X__XXXX_,________,
+ ______XX,X_XXXXXX,________,
+ _____XXX,_XXXXXXX,X_______,
+ _____XXX,_XXX__XX,X_______,
+ ____XXX_,_XXX__XX,X_______,
+ ____XX__,_XXXXXXX,X_______,
+ ___XXX__,__XXXXXX,________,
+ ___XX___,___XXXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_38[48] = { /* code 38 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XX______,
+ _____XXX,XXX_____,
+ ____XXXX,XXX_____,
+ ____XXX_,XXX_____,
+ ____XXX_,XXX_____,
+ ____XXXX,XX______,
+ _____XXX,X_______,
+ ___XXXXX,X_XXX___,
+ __XXXXXX,X_XXX___,
+ _XXXX_XX,XXXXX___,
+ XXXX___X,XXXXX___,
+ XXX_____,XXXXX___,
+ XXX_____,XXXX____,
+ XXXX___X,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXXX__,
+ ___XXXXX,___XXX__,
+ ________,___XXX__,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_39[48] = { /* code 39 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ___XX___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_40[24] = { /* code 40 */
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ____XXXX,
+ ___XXXX_,
+ ___XXX__,
+ __XXX___,
+ __XXX___,
+ __XXX___,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __XXX___,
+ __XXX___,
+ __XXXX__,
+ ___XXXX_,
+ ____XXXX,
+ _____XXX,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_41[24] = { /* code 41 */
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ XXXX____,
+ _XXXX___,
+ __XXX___,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXXX__,
+ _XXXX___,
+ XXXX____,
+ XXX_____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_42[48] = { /* code 42 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ XXX_XXXX,XXX_____,
+ XXXXXXXX,XXX_____,
+ __XXXXXX,X_______,
+ __XXXXXX,X_______,
+ _XXXX_XX,XX______,
+ _XXX___X,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_43[48] = { /* code 43 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_44[48] = { /* code 44 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ ___XXX__,________,
+ ___XX___,________,
+ __XXX___,________,
+ __XX____,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_45[48] = { /* code 45 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XX______,
+ __XXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_46[48] = { /* code 46 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_47[48] = { /* code 47 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ ______XX,X_______,
+ ______XX,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ __XXX___,________,
+ _XXX____,________,
+ _XXX____,________,
+ XXX_____,________,
+ XXX_____,________,
+ XX______,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_48[48] = { /* code 48 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ ___XXXXX,XX______,
+ __XXXXXX,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_49[48] = { /* code 49 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____XXXX,________,
+ ___XXXXX,________,
+ __XXXXXX,________,
+ __XXXXXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_50[48] = { /* code 50 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXX__,_XXX____,
+ __XX____,_XXX____,
+ ________,_XXX____,
+ ________,XXX_____,
+ ______XX,XXX_____,
+ _____XXX,XX______,
+ ____XXXX,________,
+ ___XXXX_,________,
+ __XXXX__,________,
+ __XXX___,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_51[48] = { /* code 51 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ __XXX___,_XXX____,
+ ________,_XXX____,
+ ________,XXXX____,
+ ____XXXX,XXX_____,
+ ____XXXX,XX______,
+ ____XXXX,XXX_____,
+ _______X,XXXX____,
+ ________,_XXX____,
+ ________,_XXX____,
+ __XX____,_XXX____,
+ __XXX___,XXXX____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_52[48] = { /* code 52 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XX______,
+ _______X,XX______,
+ ______XX,XX______,
+ _____XXX,XX______,
+ ____XXXX,XX______,
+ ____XX_X,XX______,
+ ___XX__X,XX______,
+ __XX___X,XX______,
+ _XX____X,XX______,
+ XXXXXXXX,XXX_____,
+ XXXXXXXX,XXXX____,
+ XXXXXXXX,XXX_____,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ ________,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_53[48] = { /* code 53 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XX______,
+ __XX____,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXX___,XXXX____,
+ _XXX____,_XXX____,
+ ________,_XXX____,
+ ________,_XXX____,
+ ________,_XXX____,
+ _XX_____,XXXX____,
+ _XXX___X,XXX_____,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_54[48] = { /* code 54 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ _____XXX,X_______,
+ ____XXXX,________,
+ ___XXXX_,________,
+ __XXXX__,________,
+ __XXX___,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXX___,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_55[48] = { /* code 55 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXXX___,
+ _XXXXXXX,XXXX____,
+ ________,XXXX____,
+ _______X,XXX_____,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,X_______,
+ _____XXX,X_______,
+ _____XXX,________,
+ ____XXXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_56[48] = { /* code 56 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ ___XXXXX,XX______,
+ __XXXXXX,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ __XXXXXX,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_57[48] = { /* code 57 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXXXX,XX______,
+ __XXXXXX,XXX_____,
+ _XXXX___,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ __XXXXXX,XXX_____,
+ ____XXXX,XXX_____,
+ _______X,XX______,
+ _____XXX,XX______,
+ __XXXXXX,X_______,
+ __XXXXX_,________,
+ __XXX___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_58[48] = { /* code 58 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_59[48] = { /* code 59 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,________,
+ ___XXX__,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XX____,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_60[48] = { /* code 60 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,X_______,
+ ______XX,X_______,
+ ____XXXX,________,
+ ___XXXX_,________,
+ __XXXX__,________,
+ __XXXXX_,________,
+ ____XXXX,________,
+ _____XXX,X_______,
+ ______XX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_61[48] = { /* code 61 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_62[48] = { /* code 62 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ ___XXXX_,________,
+ ____XXXX,________,
+ _____XXX,X_______,
+ ______XX,XXX_____,
+ _______X,XXX_____,
+ ______XX,XX______,
+ ____XXXX,X_______,
+ ___XXXX_,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_63[48] = { /* code 63 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XXX___X,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ______XX,XX______,
+ _____XXX,X_______,
+ ____XXXX,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ ________,________,
+ ___XX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_64[72] = { /* code 64 */
+ ________,________,________,
+ ________,________,________,
+ _______X,XXXXX___,________,
+ _____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,
+ ___XXXX_,_____XXX,XX______,
+ __XXXX__,XXXX___X,XX______,
+ __XXX__X,XXX_____,XXX_____,
+ _XXX__XX,X_______,XXX_____,
+ _XXX_XXX,___XX___,XXX_____,
+ _XXX_XXX,__XXX___,XXX_____,
+ _XXX_XXX,XXXXXXXX,XXX_____,
+ _XXX__XX,XXXXXXXX,XX______,
+ _XXX___X,XX__XXXX,X_______,
+ __XXX___,________,________,
+ __XXXX__,________,________,
+ ___XXXX_,_____XX_,________,
+ ____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXX_,________,
+ _______X,XXXXX___,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_65[48] = { /* code 65 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_XX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ _______X,XXX_____,
+ ______XX,XXXX____,
+ ______XX,XXXX____,
+ _____XXX,_XXX____,
+ _____XXX,_XXX____,
+ ____XXX_,_XXX____,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ _XXXX___,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,____XX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_66[48] = { /* code 66 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XXX___X,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXX____,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX___X,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_67[48] = { /* code 67 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XXXXX___,
+ ______XX,XXXXX___,
+ _____XXX,XXXXX___,
+ ____XXXX,__XXX___,
+ ___XXXX_,___XX___,
+ ___XXX__,________,
+ __XXX___,________,
+ __XXX___,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,__XX____,
+ _XXXX___,XXXX____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_68[48] = { /* code 68 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ _XXXXX__,________,
+ _XXXXXXX,X_______,
+ _XXX_XXX,XX______,
+ _XXX___X,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,__XXX___,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,__XXX___,
+ _XXX____,_XXXX___,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_69[48] = { /* code 69 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XXXX____,
+ ___XXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_70[48] = { /* code 70 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ __X_____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_71[48] = { /* code 71 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXXX____,
+ __XXXX__,_XXX____,
+ __XXXX__,________,
+ _XXXX___,________,
+ _XXX____,________,
+ _XXX__XX,XXXXXX__,
+ XXX_XXXX,XXXXXX__,
+ XXX_XXXX,XXXXX___,
+ XXX_____,__XXX___,
+ XXX_____,_XXX____,
+ XXX_____,_XXX____,
+ XXXX___X,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_72[48] = { /* code 72 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ___X____,_____X__,
+ __XXX___,____XXX_,
+ __XXX___,____XXX_,
+ __XXX___,____XXX_,
+ __XXX___,____XXX_,
+ __XXX___,____XXX_,
+ __XXX___,____XXX_,
+ __XXX___,XXXXXXX_,
+ __XXXXXX,XXXXXXX_,
+ __XXXXXX,XXXXXXX_,
+ __XXXXXX,____XXX_,
+ __XXX___,____XXX_,
+ __XXX___,____XXX_,
+ __XXX___,____XXX_,
+ __XXX___,____XXX_,
+ __XXX___,____XXX_,
+ ___X____,_____X__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_73[48] = { /* code 73 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_74[48] = { /* code 74 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXXX___,
+ ____XXXX,XXXX____,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _X____XX,XX______,
+ XXX___XX,XX______,
+ XXX___XX,X_______,
+ XXXX__XX,X_______,
+ _XXXXXXX,X_______,
+ __XXXXXX,X_______,
+ ____XXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_75[48] = { /* code 75 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,_XX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XX______,
+ _XXX__XX,XX______,
+ _XXX__XX,X_______,
+ _XXX_XXX,________,
+ _XXXXXX_,________,
+ _XXXXX__,________,
+ _XXXX___,________,
+ _XXXXX__,________,
+ _XXXXXX_,________,
+ _XXXXXXX,________,
+ _XXX_XXX,X_______,
+ _XXX__XX,XXX_____,
+ _XXX____,XXXX____,
+ _XXX____,_XXX____,
+ __X_____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_76[48] = { /* code 76 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,XXX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_77[72] = { /* code 77 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XX__,____X___,________,
+ ___XXX__,___XXX__,________,
+ ___XXXX_,___XXX__,________,
+ ___XXXX_,___XXX__,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXXX_,__XXXXX_,________,
+ __XXXXXX,__XXXXX_,________,
+ __XX_XXX,_XXXXXX_,________,
+ _XXX_XXX,_XXX_XX_,________,
+ _XXX_XXX,XXXX_XXX,________,
+ _XXX__XX,XXX__XXX,________,
+ XXXX__XX,XXX__XXX,________,
+ XXX___XX,XXX___XX,________,
+ XXX____X,XXX___XX,X_______,
+ XXX____X,XX____XX,X_______,
+ XXX____X,XX_____X,X_______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_78[72] = { /* code 78 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXX____,_____XX_,________,
+ _XXX____,_____XXX,________,
+ _XXXX___,_____XXX,________,
+ _XXXXX__,_____XXX,________,
+ _XXXXX__,_____XXX,________,
+ _XXXXXX_,_____XXX,________,
+ _XXX_XXX,_____XXX,________,
+ _XXX_XXX,X____XXX,________,
+ _XXX__XX,X____XXX,________,
+ _XXX___X,XX___XXX,________,
+ _XXX____,XXX__XXX,________,
+ _XXX____,_XXX_XXX,________,
+ _XXX____,__XXXXXX,________,
+ _XXX____,__XXXXXX,________,
+ _XXX____,___XXXXX,________,
+ _XXX____,____XXXX,________,
+ __X_____,______X_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_79[72] = { /* code 79 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXX____,________,
+ _____XXX,XXXXXX__,________,
+ ____XXXX,XXXXXXX_,________,
+ ___XXXX_,____XXX_,________,
+ __XXXX__,_____XXX,________,
+ __XXX___,_____XXX,________,
+ __XXX___,_____XXX,________,
+ _XXX____,_____XXX,________,
+ _XXX____,_____XXX,________,
+ _XXX____,_____XXX,________,
+ _XXX____,____XXX_,________,
+ _XXX____,____XXX_,________,
+ _XXXX___,___XXXX_,________,
+ __XXXX__,__XXXX__,________,
+ ___XXXXX,XXXXX___,________,
+ ____XXXX,XXXX____,________,
+ _____XXX,XXX_____,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_80[48] = { /* code 80 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXX_,________,
+ XXXXXXXX,________,
+ XXXXXXXX,X_______,
+ XXX___XX,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX___XX,XX______,
+ XXXXXXXX,X_______,
+ XXXXXXXX,________,
+ XXXXXXX_,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXX_____,________,
+ _X______,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_81[72] = { /* code 81 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXX____,________,
+ ____XXXX,XXXXXX__,________,
+ ___XXXXX,XXXXXXX_,________,
+ __XXXXX_,___XXXXX,________,
+ _XXXX___,_____XXX,________,
+ _XXX____,_____XXX,X_______,
+ XXX_____,______XX,X_______,
+ XXX_____,______XX,X_______,
+ XXX_____,______XX,X_______,
+ XXX_____,______XX,X_______,
+ XXX____X,XX____XX,X_______,
+ XXXX___X,XX___XXX,X_______,
+ _XXXX__X,XXX_XXXX,________,
+ __XXXX__,XXXXXXX_,________,
+ __XXXXXX,XXXXXX__,________,
+ ____XXXX,XXXXXXX_,________,
+ _____XXX,XXX_XXXX,________,
+ ________,_____XXX,X_______,
+ ________,______XX,XX______,
+ ________,_______X,XX______,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_82[48] = { /* code 82 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXX_,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XXX__XX,XXX_____,
+ _XXX____,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX___X,XXXX____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XX______,
+ _XXXXXXX,X_______,
+ _XXX_XXX,XXX_____,
+ _XXX____,XXXX____,
+ _XXX____,_XXXX___,
+ _XXX____,__XXX___,
+ __X_____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_83[48] = { /* code 83 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XXX_____,
+ ____XXXX,XXXXX___,
+ ___XXXXX,XXXXX___,
+ ___XXX__,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXXXX___,
+ ____XXXX,XXXXX___,
+ ________,__XXXX__,
+ ________,___XXX__,
+ ________,___XXX__,
+ _XXX____,__XXXX__,
+ _XXXX___,_XXXXX__,
+ _XXXXXXX,XXXXX___,
+ __XXXXXX,XXXX____,
+ ___XXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_84[48] = { /* code 84 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXXX__,
+ XXXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXXX__,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ______X_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_85[48] = { /* code 85 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,____X___,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XXX__,
+ _XXX____,___XX___,
+ _XXX____,__XXX___,
+ _XXX____,__XXX___,
+ _XXXX___,__XXX___,
+ __XXX___,_XXX____,
+ __XXXXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_86[48] = { /* code 86 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,__XXX___,
+ _XXX____,_XXXX___,
+ _XXX____,_XXXX___,
+ _XXX____,_XXX____,
+ __XXX___,XXXX____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX__X,XX______,
+ ___XX__X,XX______,
+ ___XXX_X,XX______,
+ ___XXXXX,X_______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ ____XXXX,________,
+ ____XXXX,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_87[72] = { /* code 87 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _XXX____,__XX____,__XXX___,
+ _XXX____,_XXX____,__XXX___,
+ _XXXX___,_XXX____,_XXXX___,
+ __XXX___,_XXX____,_XXX____,
+ __XXX___,XXXXX___,_XXX____,
+ __XXX___,XXXXX___,XXXX____,
+ ___XXX__,XXXXX___,XXX_____,
+ ___XXX_X,XXXXX___,XXX_____,
+ ___XXX_X,XX_XX__X,XX______,
+ ____XX_X,XX_XX__X,XX______,
+ ____XX_X,X__XXX_X,X_______,
+ ____XXXX,X__XXXXX,X_______,
+ ____XXXX,X__XXXXX,X_______,
+ _____XXX,___XXXXX,________,
+ _____XXX,____XXXX,________,
+ _____XXX,____XXX_,________,
+ _____XXX,____XXX_,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_88[48] = { /* code 88 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,___XXX__,
+ _XXXX___,__XXXX__,
+ _XXXX___,__XXXX__,
+ __XXXX__,_XXXX___,
+ ___XXXX_,XXXX____,
+ ____XXX_,XXX_____,
+ ____XXXX,XXX_____,
+ _____XXX,XX______,
+ ______XX,X_______,
+ _____XXX,XX______,
+ ____XXXX,XXX_____,
+ ___XXXX_,XXX_____,
+ __XXXX__,XXXX____,
+ _XXXX___,_XXXX___,
+ XXXXX___,__XXXX__,
+ XXXX____,__XXXX__,
+ XXX_____,___XXX__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_89[48] = { /* code 89 */
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX_____,__XXX___,
+ XXX_____,__XXX___,
+ XXXX____,_XXXX___,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXX___,XXX_____,
+ ___XXX_X,XXX_____,
+ ___XXX_X,XX______,
+ ____XXXX,XX______,
+ ____XXXX,X_______,
+ _____XXX,X_______,
+ _____XXX,________,
+ ____XXXX,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_90[48] = { /* code 90 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXXX___,
+ XXXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXX___,
+ _______X,XXXX____,
+ ______XX,XXX_____,
+ ______XX,XX______,
+ _____XXX,X_______,
+ _____XXX,________,
+ ____XXXX,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ __XXXX__,________,
+ __XXX___,________,
+ _XXX____,________,
+ _XXXXXXX,XXXXX___,
+ XXXXXXXX,XXXXXX__,
+ _XXXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_91[24] = { /* code 91 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_92[48] = { /* code 92 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ __XXX___,________,
+ __XXXX__,________,
+ ___XXX__,________,
+ ____XX__,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ _____XXX,________,
+ _____XXX,________,
+ ______XX,________,
+ ______XX,X_______,
+ ______XX,X_______,
+ _______X,XX______,
+ _______X,XX______,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_93[24] = { /* code 93 */
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ _XXXXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_94[48] = { /* code 94 */
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ ____XXXX,________,
+ __XXXXXX,X_______,
+ _XXXX__X,XX______,
+ _XXX____,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_95[48] = { /* code 95 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXXX___,
+ XXXXXXXX,XXXXX___,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_96[48] = { /* code 96 */
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ _XXX____,________,
+ __XXX___,________,
+ ___XXX__,________,
+ ____XX__,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_97[48] = { /* code 97 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ ___XXXXX,XX______,
+ __XXXXXX,XX______,
+ __XXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ___XXXX_,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_98[48] = { /* code 98 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX_XXX,________,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXXX__X,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XXX_____,
+ _XXXXXXX,XX______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_99[48] = { /* code 99 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ __XXXXXX,XX______,
+ _XXXX___,XX______,
+ XXXX____,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXXX___X,XX______,
+ _XXXXXXX,XX______,
+ _XXXXXXX,X_______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_100[48] = { /* code 100 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_X______,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ____XXXX,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ _XXXX___,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXXX__X,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXXXXX,XXX_____,
+ ____XXXX,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_101[48] = { /* code 101 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXXXXX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXX____,XXX_____,
+ XXXX__XX,XXX_____,
+ XXX_XXXX,XX______,
+ XXXXXXXX,________,
+ XXXXXX__,________,
+ XXXX____,XXX_____,
+ _XXXXXXX,XXX_____,
+ __XXXXXX,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_102[48] = { /* code 102 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ ____XXXX,XX______,
+ ____XXXX,X_______,
+ ___XXXX_,________,
+ ___XXX__,________,
+ _XXXXXXX,X_______,
+ XXXXXXXX,XX______,
+ _XXXXXXX,X_______,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ____X___,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_103[48] = { /* code 103 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,________,
+ __XXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXX___X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,X_______,
+ XXX___XX,X_______,
+ XXX___XX,X_______,
+ XXXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ __XXX_XX,X_______,
+ ______XX,X_______,
+ _____XXX,X_______,
+ XXXXXXXX,________,
+ _XXXXXX_,________,
+ ___XXX__,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_104[48] = { /* code 104 */
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX_XXX,XX______,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXX__,XXX_____,
+ _XXXX___,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ __X_____,_X______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_105[24] = { /* code 105 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ ________,
+ ________,
+ __X_____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_106[24] = { /* code 106 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ____X___,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ X___XXX_,
+ XX__XXX_,
+ XXX_XXX_,
+ XXXXXXX_,
+ __XXXX__};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_107[48] = { /* code 107 */
+ ________,________,
+ ________,________,
+ ________,________,
+ _X______,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXX____X,XX______,
+ XXX___XX,XX______,
+ XXX__XXX,X_______,
+ XXX_XXXX,________,
+ XXXXXXX_,________,
+ XXXXXXX_,________,
+ XXXXXXXX,________,
+ XXX__XXX,X_______,
+ XXX___XX,X_______,
+ XXX___XX,XX______,
+ XXX____X,XX______,
+ _X______,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_108[24] = { /* code 108 */
+ ________,
+ ________,
+ ________,
+ __X_____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __X_____,
+ ________,
+ ________,
+ ________,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_109[48] = { /* code 109 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX__XXX,__XXXX__,
+ XXXXXXXX,XXXXXXX_,
+ XXXXXXXX,XXXXXXX_,
+ XXXXX_XX,XX__XXX_,
+ XXXX__XX,X___XXX_,
+ XXX___XX,X___XXX_,
+ XXX___XX,X___XXX_,
+ XXX___XX,X___XXX_,
+ XXX___XX,X___XXX_,
+ XXX___XX,X___XXX_,
+ XXX___XX,X___XXX_,
+ _X_____X,_____X__,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_110[48] = { /* code 110 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX_XXX,X_______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,XX______,
+ _XXXXX_X,XX______,
+ _XXXX__X,XX______,
+ _XXXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __X_____,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_111[48] = { /* code 111 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XXX__XX,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXXX__XX,XX______,
+ _XXXXXXX,X_______,
+ _XXXXXXX,________,
+ ___XXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_112[48] = { /* code 112 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XX_XXXX,________,
+ XXXXXXXX,X_______,
+ XXXXXXXX,X_______,
+ XXXX___X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX___XX,XX______,
+ XXXXXXXX,X_______,
+ XXXXXXXX,X_______,
+ XXXXXXX_,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXX_____,________,
+ XXX_____,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_113[48] = { /* code 113 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XX______,
+ __XXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXXX__X,XX______,
+ XXXX___X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXX____X,XX______,
+ XXXX___X,XX______,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ ___XXXXX,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_114[48] = { /* code 114 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX_XXX,X_______,
+ _XXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ _XXXXX_X,XX______,
+ _XXX___X,XX______,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ __X_____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_115[48] = { /* code 115 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,X_______,
+ _XXXXXXX,X_______,
+ XXXXXXXX,X_______,
+ XXX____X,X_______,
+ XXXX____,________,
+ _XXXXX__,________,
+ ___XXXXX,________,
+ _____XXX,X_______,
+ XXX___XX,X_______,
+ XXXXXXXX,X_______,
+ XXXXXXXX,________,
+ __XXXXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_116[48] = { /* code 116 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____X___,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ _XXXXXXX,________,
+ XXXXXXXX,X_______,
+ _XXXXXXX,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ____X___,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_117[48] = { /* code 117 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,X_______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _XXXXXXX,XX______,
+ __XXXXXX,XX______,
+ ___XXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_118[48] = { /* code 118 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXX_____,XX______,
+ XXX_____,XX______,
+ XXXX___X,XX______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ __XXX_XX,X_______,
+ __XXX_XX,X_______,
+ ___XXXXX,________,
+ ___XXXXX,________,
+ ___XXXXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_119[48] = { /* code 119 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX__XX,X__XXX__,
+ _XXX__XX,X__XXX__,
+ _XXX__XX,X__XXX__,
+ _XXX_XXX,X__XXX__,
+ _XXX_XXX,X_XXX___,
+ __XX_XXX,XXXXX___,
+ __XXXXXX,XXXXX___,
+ __XXXXX_,XXXXX___,
+ __XXXX__,XXXX____,
+ __XXXX__,XXXX____,
+ ___XX___,XXXX____,
+ ___XX___,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_120[48] = { /* code 120 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,_XXX____,
+ __XXXX__,_XXX____,
+ __XXXX__,XXXX____,
+ ___XXXXX,XXX_____,
+ ____XXXX,XX______,
+ _____XXX,X_______,
+ ____XXXX,X_______,
+ ___XXXXX,XX______,
+ __XXXX_X,XXX_____,
+ _XXXXX__,XXX_____,
+ _XXXX___,XXXX____,
+ _XXX____,_XXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_121[48] = { /* code 121 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXX___,XXXX____,
+ __XXX___,XXX_____,
+ __XXXX_X,XXX_____,
+ ___XXX_X,XX______,
+ ___XXXXX,XX______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,X_______,
+ _____XXX,________,
+ ____XXXX,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_122[48] = { /* code 122 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XX______,
+ XXXXXXXX,XX______,
+ _XXXXXXX,XX______,
+ ______XX,X_______,
+ _____XXX,________,
+ ____XXX_,________,
+ ___XXXX_,________,
+ ___XXX__,________,
+ __XXX___,________,
+ _XXXXXXX,X_______,
+ XXXXXXXX,XX______,
+ XXXXXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_123[24] = { /* code 123 */
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXXX_,
+ _XXXXXX_,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ XXX_____,
+ XX______,
+ XXX_____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ _XXX____,
+ __XXXXX_,
+ __XXXXX_,
+ ___XXXX_,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_124[48] = { /* code 124 */
+ ________,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_125[24] = { /* code 125 */
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ XXXXX___,
+ XXXXXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ____XXXX,
+ _____XXX,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ XXXXX___,
+ XXXXX___,
+ XXXX____,
+ ________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_126[48] = { /* code 126 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXX__,__XX____,
+ _XXXXXX_,_XXX____,
+ _XXX_XXX,_XXX____,
+ XXX___XX,XXX_____,
+ XX_____X,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+GUI_CONST_STORAGE unsigned char acFontComic24B_127[48] = { /* code 127 */
+ ________,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ _XXXXXXX,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XX_____,X_______,
+ _XXXXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+
+
+
+GUI_CONST_STORAGE GUI_CHARINFO CharInfo24B_ASCII[96] = {
+ { 9, 9, 2, acFontComic24B_32 } /* code 32 */
+ ,{ 5, 5, 1, acFontComic24B_33 } /* code 33 */
+ ,{ 9, 9, 2, acFontComic24B_34 } /* code 34 */
+ ,{ 18, 18, 3, acFontComic24B_35 } /* code 35 */
+ ,{ 15, 15, 2, acFontComic24B_36 } /* code 36 */
+ ,{ 17, 17, 3, acFontComic24B_37 } /* code 37 */
+ ,{ 14, 14, 2, acFontComic24B_38 } /* code 38 */
+ ,{ 9, 9, 2, acFontComic24B_39 } /* code 39 */
+ ,{ 8, 8, 1, acFontComic24B_40 } /* code 40 */
+ ,{ 8, 8, 1, acFontComic24B_41 } /* code 41 */
+ ,{ 11, 11, 2, acFontComic24B_42 } /* code 42 */
+ ,{ 13, 13, 2, acFontComic24B_43 } /* code 43 */
+ ,{ 9, 9, 2, acFontComic24B_44 } /* code 44 */
+ ,{ 13, 13, 2, acFontComic24B_45 } /* code 45 */
+ ,{ 9, 9, 2, acFontComic24B_46 } /* code 46 */
+ ,{ 11, 11, 2, acFontComic24B_47 } /* code 47 */
+ ,{ 13, 13, 2, acFontComic24B_48 } /* code 48 */
+ ,{ 13, 13, 2, acFontComic24B_49 } /* code 49 */
+ ,{ 13, 13, 2, acFontComic24B_50 } /* code 50 */
+ ,{ 13, 13, 2, acFontComic24B_51 } /* code 51 */
+ ,{ 13, 13, 2, acFontComic24B_52 } /* code 52 */
+ ,{ 13, 13, 2, acFontComic24B_53 } /* code 53 */
+ ,{ 13, 13, 2, acFontComic24B_54 } /* code 54 */
+ ,{ 13, 13, 2, acFontComic24B_55 } /* code 55 */
+ ,{ 13, 13, 2, acFontComic24B_56 } /* code 56 */
+ ,{ 13, 13, 2, acFontComic24B_57 } /* code 57 */
+ ,{ 9, 9, 2, acFontComic24B_58 } /* code 58 */
+ ,{ 9, 9, 2, acFontComic24B_59 } /* code 59 */
+ ,{ 13, 13, 2, acFontComic24B_60 } /* code 60 */
+ ,{ 13, 13, 2, acFontComic24B_61 } /* code 61 */
+ ,{ 13, 13, 2, acFontComic24B_62 } /* code 62 */
+ ,{ 12, 12, 2, acFontComic24B_63 } /* code 63 */
+ ,{ 20, 20, 3, acFontComic24B_64 } /* code 64 */
+ ,{ 15, 15, 2, acFontComic24B_65 } /* code 65 */
+ ,{ 13, 13, 2, acFontComic24B_66 } /* code 66 */
+ ,{ 14, 14, 2, acFontComic24B_67 } /* code 67 */
+ ,{ 15, 15, 2, acFontComic24B_68 } /* code 68 */
+ ,{ 13, 13, 2, acFontComic24B_69 } /* code 69 */
+ ,{ 13, 13, 2, acFontComic24B_70 } /* code 70 */
+ ,{ 14, 14, 2, acFontComic24B_71 } /* code 71 */
+ ,{ 16, 16, 2, acFontComic24B_72 } /* code 72 */
+ ,{ 11, 11, 2, acFontComic24B_73 } /* code 73 */
+ ,{ 14, 14, 2, acFontComic24B_74 } /* code 74 */
+ ,{ 13, 13, 2, acFontComic24B_75 } /* code 75 */
+ ,{ 12, 12, 2, acFontComic24B_76 } /* code 76 */
+ ,{ 19, 19, 3, acFontComic24B_77 } /* code 77 */
+ ,{ 17, 17, 3, acFontComic24B_78 } /* code 78 */
+ ,{ 17, 17, 3, acFontComic24B_79 } /* code 79 */
+ ,{ 11, 11, 2, acFontComic24B_80 } /* code 80 */
+ ,{ 18, 18, 3, acFontComic24B_81 } /* code 81 */
+ ,{ 13, 13, 2, acFontComic24B_82 } /* code 82 */
+ ,{ 15, 15, 2, acFontComic24B_83 } /* code 83 */
+ ,{ 15, 15, 2, acFontComic24B_84 } /* code 84 */
+ ,{ 15, 15, 2, acFontComic24B_85 } /* code 85 */
+ ,{ 14, 14, 2, acFontComic24B_86 } /* code 86 */
+ ,{ 22, 22, 3, acFontComic24B_87 } /* code 87 */
+ ,{ 15, 15, 2, acFontComic24B_88 } /* code 88 */
+ ,{ 13, 13, 2, acFontComic24B_89 } /* code 89 */
+ ,{ 15, 15, 2, acFontComic24B_90 } /* code 90 */
+ ,{ 8, 8, 1, acFontComic24B_91 } /* code 91 */
+ ,{ 12, 12, 2, acFontComic24B_92 } /* code 92 */
+ ,{ 8, 8, 1, acFontComic24B_93 } /* code 93 */
+ ,{ 13, 13, 2, acFontComic24B_94 } /* code 94 */
+ ,{ 13, 13, 2, acFontComic24B_95 } /* code 95 */
+ ,{ 12, 12, 2, acFontComic24B_96 } /* code 96 */
+ ,{ 12, 12, 2, acFontComic24B_97 } /* code 97 */
+ ,{ 12, 12, 2, acFontComic24B_98 } /* code 98 */
+ ,{ 11, 11, 2, acFontComic24B_99 } /* code 99 */
+ ,{ 12, 12, 2, acFontComic24B_100 } /* code 100 */
+ ,{ 12, 12, 2, acFontComic24B_101 } /* code 101 */
+ ,{ 11, 11, 2, acFontComic24B_102 } /* code 102 */
+ ,{ 11, 11, 2, acFontComic24B_103 } /* code 103 */
+ ,{ 12, 12, 2, acFontComic24B_104 } /* code 104 */
+ ,{ 6, 6, 1, acFontComic24B_105 } /* code 105 */
+ ,{ 8, 8, 1, acFontComic24B_106 } /* code 106 */
+ ,{ 11, 11, 2, acFontComic24B_107 } /* code 107 */
+ ,{ 6, 6, 1, acFontComic24B_108 } /* code 108 */
+ ,{ 16, 16, 2, acFontComic24B_109 } /* code 109 */
+ ,{ 11, 11, 2, acFontComic24B_110 } /* code 110 */
+ ,{ 11, 11, 2, acFontComic24B_111 } /* code 111 */
+ ,{ 11, 11, 2, acFontComic24B_112 } /* code 112 */
+ ,{ 11, 11, 2, acFontComic24B_113 } /* code 113 */
+ ,{ 10, 10, 2, acFontComic24B_114 } /* code 114 */
+ ,{ 10, 10, 2, acFontComic24B_115 } /* code 115 */
+ ,{ 10, 10, 2, acFontComic24B_116 } /* code 116 */
+ ,{ 11, 11, 2, acFontComic24B_117 } /* code 117 */
+ ,{ 10, 10, 2, acFontComic24B_118 } /* code 118 */
+ ,{ 14, 14, 2, acFontComic24B_119 } /* code 119 */
+ ,{ 12, 12, 2, acFontComic24B_120 } /* code 120 */
+ ,{ 12, 12, 2, acFontComic24B_121 } /* code 121 */
+ ,{ 11, 11, 2, acFontComic24B_122 } /* code 122 */
+ ,{ 8, 8, 1, acFontComic24B_123 } /* code 123 */
+ ,{ 9, 9, 2, acFontComic24B_124 } /* code 124 */
+ ,{ 8, 8, 1, acFontComic24B_125 } /* code 125 */
+ ,{ 13, 13, 2, acFontComic24B_126 } /* code 126 */
+ ,{ 11, 11, 2, acFontComic24B_127 } /* code 127 */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP FontComic24BProp_ASCII = {
+ 32 /* first character */
+ ,127 /* last character */
+ ,CharInfo24B_ASCII /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontComic24B_ASCII = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,24 /* height of font */
+ ,24 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&FontComic24BProp_ASCII}
+ ,20, 12, 17
+};
+
diff --git a/User/lib/lcd/gui/Font/FD24x32.c b/User/lib/lcd/gui/Font/FD24x32.c
new file mode 100644
index 0000000..0f39056
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FD24x32.c
@@ -0,0 +1,590 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FD24x32.C
+Purpose : Implementation of the non-proportional 24 by 32 digit
+Height : 32
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE U8 acFont24x32[15][96] = {
+ {________, _XXXXXXX, ________,
+ _______X, XXXXXXXX, XX______,
+ ______XX, XXXXXXXX, XXX_____,
+ _____XXX, XXXXXXXX, XXXX____,
+ ____XXXX, XXX___XX, XXXXX___,
+ ____XXXX, X_______, XXXXX___,
+ ___XXXXX, ________, _XXXXX__,
+ ___XXXXX, ________, _XXXXX__,
+ ___XXXXX, ________, _XXXXX__,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ ___XXXXX, ________, _XXXXX__,
+ ___XXXXX, ________, _XXXXX__,
+ ___XXXXX, ________, _XXXXX__,
+ ____XXXX, X_______, XXXXX___,
+ ____XXXX, XXX___XX, XXXXX___,
+ _____XXX, XXXXXXXX, XXXX____,
+ ______XX, XXXXXXXX, XXX_____,
+ _______X, XXXXXXXX, XX______,
+ ________, _XXXXXXX, ________}
+
+ ,
+ {________, ______XX, XX______,
+ ________, ______XX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, ____XXXX, XX______,
+ ________, __XXXXXX, XX______,
+ ______XX, XXXXXXXX, XX______,
+ ______XX, XXXXXXXX, XX______,
+ ______XX, XXXXXXXX, XX______,
+ ______XX, XXXXXXXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______,
+ ________, _____XXX, XX______}
+
+ ,
+ {________, _XXXXXXX, X_______,
+ _______X, XXXXXXXX, XXX_____,
+ ______XX, XXXXXXXX, XXXX____,
+ _____XXX, XXXXXXXX, XXXXX___,
+ ____XXXX, XXX____X, XXXXXX__,
+ ___XXXXX, X_______, XXXXXX__,
+ ___XXXXX, ________, _XXXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, __XXXXX_,
+ ________, ________, __XXXXX_,
+ ________, ________, __XXXXX_,
+ ________, ________, __XXXXX_,
+ ________, ________, _XXXXXX_,
+ ________, ________, XXXXXX__,
+ ________, _______X, XXXXXX__,
+ ________, _____XXX, XXXXX___,
+ ________, ____XXXX, XXX_____,
+ ________, __XXXXXX, XX______,
+ ________, _XXXXXXX, X_______,
+ _______X, XXXXXXX_, ________,
+ ______XX, XXXXXX__, ________,
+ _____XXX, XXXX____, ________,
+ ____XXXX, XXX_____, ________,
+ ____XXXX, XX______, ________,
+ ___XXXXX, X_______, ________,
+ ___XXXXX, ________, ________,
+ __XXXXXX, XXXXXXXX, XXXXXXX_,
+ __XXXXXX, XXXXXXXX, XXXXXXX_,
+ __XXXXXX, XXXXXXXX, XXXXXXX_,
+ __XXXXXX, XXXXXXXX, XXXXXXX_,
+ __XXXXXX, XXXXXXXX, XXXXXXX_}
+
+ ,
+ {________, _XXXXXX_, ________,
+ ______XX, XXXXXXXX, XX______,
+ _____XXX, XXXXXXXX, XXX_____,
+ ____XXXX, XXXXXXXX, XXXX____,
+ ___XXXXX, X______X, XXXXX___,
+ ___XXXXX, ________, XXXXX___,
+ __XXXXX_, ________, XXXXXX__,
+ __XXXXX_, ________, _XXXXX__,
+ __XXXXX_, ________, _XXXXX__,
+ __XXXXX_, ________, _XXXXX__,
+ ________, ________, XXXXX___,
+ ________, ________, XXXXX___,
+ ________, _______X, XXXX____,
+ ________, __XXXXXX, XXX_____,
+ ________, __XXXXXX, XX______,
+ ________, __XXXXXX, XXX_____,
+ ________, __XXXXXX, XXXXX___,
+ ________, _______X, XXXXXX__,
+ ________, ________, _XXXXX__,
+ ________, ________, _XXXXXX_,
+ ________, ________, __XXXXX_,
+ ________, ________, __XXXXX_,
+ _XXXXX__, ________, __XXXXX_,
+ _XXXXX__, ________, __XXXXX_,
+ _XXXXX__, ________, _XXXXXX_,
+ __XXXXX_, ________, _XXXXX__,
+ __XXXXXX, ________, XXXXXX__,
+ ___XXXXX, X______X, XXXXX___,
+ ____XXXX, XXXXXXXX, XXXX____,
+ _____XXX, XXXXXXXX, XXX_____,
+ ______XX, XXXXXXXX, XX______,
+ ________, _XXXXXX_, ________}
+
+ ,
+ {________, _______X, XXXX____,
+ ________, ______XX, XXXX____,
+ ________, _____XXX, XXXX____,
+ ________, _____XXX, XXXX____,
+ ________, ____XXXX, XXXX____,
+ ________, ___XXXXX, XXXX____,
+ ________, ___XXXX_, XXXX____,
+ ________, __XXXXX_, XXXX____,
+ ________, _XXXXX__, XXXX____,
+ ________, _XXXX___, XXXX____,
+ ________, XXXXX___, XXXX____,
+ _______X, XXXX____, XXXX____,
+ _______X, XXX_____, XXXX____,
+ ______XX, XXX_____, XXXX____,
+ _____XXX, XX______, XXXX____,
+ _____XXX, X_______, XXXX____,
+ ____XXXX, X_______, XXXX____,
+ ___XXXXX, ________, XXXX____,
+ ___XXXX_, ________, XXXX____,
+ __XXXXX_, ________, XXXX____,
+ __XXXXXX, XXXXXXXX, XXXXXXXX,
+ __XXXXXX, XXXXXXXX, XXXXXXXX,
+ __XXXXXX, XXXXXXXX, XXXXXXXX,
+ __XXXXXX, XXXXXXXX, XXXXXXXX,
+ ________, ________, XXXX____,
+ ________, ________, XXXX____,
+ ________, ________, XXXX____,
+ ________, ________, XXXX____,
+ ________, ________, XXXX____,
+ ________, ________, XXXX____,
+ ________, ________, XXXX____,
+ ________, ________, XXXX____}
+
+ ,
+ {_____XXX, XXXXXXXX, XXXXXX__,
+ _____XXX, XXXXXXXX, XXXXXX__,
+ _____XXX, XXXXXXXX, XXXXXX__,
+ _____XXX, XXXXXXXX, XXXXXX__,
+ ____XXXX, X_______, ________,
+ ____XXXX, X_______, ________,
+ ____XXXX, X_______, ________,
+ ____XXXX, X_______, ________,
+ ____XXXX, ________, ________,
+ ____XXXX, ________, ________,
+ ____XXXX, ___XXXXX, ________,
+ ____XXXX, _XXXXXXX, XXX_____,
+ ____XXXX, XXXXXXXX, XXXX____,
+ ___XXXXX, XXXXXXXX, XXXXX___,
+ ___XXXXX, XXX____X, XXXXXX__,
+ ___XXXXX, X_______, _XXXXXX_,
+ ___XXXXX, ________, __XXXXX_,
+ ________, ________, __XXXXXX,
+ ________, ________, ___XXXXX,
+ ________, ________, ___XXXXX,
+ ________, ________, ___XXXXX,
+ ________, ________, ___XXXXX,
+ ________, ________, ___XXXXX,
+ __XXXXX_, ________, __XXXXXX,
+ __XXXXX_, ________, __XXXXX_,
+ ___XXXXX, ________, _XXXXXX_,
+ ___XXXXX, X_______, XXXXXX__,
+ ____XXXX, XX____XX, XXXXXX__,
+ _____XXX, XXXXXXXX, XXXXX___,
+ ______XX, XXXXXXXX, XXXX____,
+ _______X, XXXXXXXX, XX______,
+ ________, __XXXXX_, ________}
+
+ ,
+ {________, __XXXXXX, XX______,
+ ________, XXXXXXXX, XXXX____,
+ _______X, XXXXXXXX, XXXXX___,
+ ______XX, XXXXXXXX, XXXXXX__,
+ _____XXX, XXX_____, _XXXXX__,
+ ____XXXX, XX______, __XXXXX_,
+ ____XXXX, X_______, ___XXXX_,
+ ___XXXXX, ________, ___XXXX_,
+ ___XXXXX, ________, ________,
+ ___XXXXX, ________, ________,
+ __XXXXX_, ________, ________,
+ __XXXXX_, ___XXXXX, ________,
+ __XXXXX_, _XXXXXXX, XXX_____,
+ __XXXXX_, XXXXXXXX, XXXX____,
+ __XXXXXX, XXXXXXXX, XXXXX___,
+ __XXXXXX, XX______, XXXXXX__,
+ __XXXXXX, X_______, _XXXXXX_,
+ __XXXXXX, ________, __XXXXX_,
+ __XXXXXX, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ ___XXXX_, ________, ___XXXXX,
+ ___XXXXX, ________, ___XXXXX,
+ ___XXXXX, ________, ___XXXXX,
+ ____XXXX, X_______, __XXXXX_,
+ ____XXXX, X_______, _XXXXXX_,
+ _____XXX, XXX_____, XXXXXX__,
+ ______XX, XXXXXXXX, XXXXX___,
+ _______X, XXXXXXXX, XXXX____,
+ ________, XXXXXXXX, XXX_____,
+ ________, ___XXXXX, ________}
+
+ ,
+ {__XXXXXX, XXXXXXXX, XXXXXXXX,
+ __XXXXXX, XXXXXXXX, XXXXXXXX,
+ __XXXXXX, XXXXXXXX, XXXXXXXX,
+ __XXXXXX, XXXXXXXX, XXXXXXXX,
+ __XXXXXX, XXXXXXXX, XXXXXXXX,
+ ________, ________, ___XXXXX,
+ ________, ________, __XXXXX_,
+ ________, ________, _XXXXX__,
+ ________, ________, XXXXX___,
+ ________, _______X, XXXX____,
+ ________, ______XX, XXX_____,
+ ________, _____XXX, XXX_____,
+ ________, _____XXX, XX______,
+ ________, ____XXXX, XX______,
+ ________, ___XXXXX, X_______,
+ ________, ___XXXXX, X_______,
+ ________, __XXXXXX, ________,
+ ________, __XXXXXX, ________,
+ ________, _XXXXXX_, ________,
+ ________, _XXXXXX_, ________,
+ ________, _XXXXXX_, ________,
+ ________, XXXXXX__, ________,
+ ________, XXXXXX__, ________,
+ ________, XXXXXX__, ________,
+ _______X, XXXXX___, ________,
+ _______X, XXXXX___, ________,
+ _______X, XXXXX___, ________,
+ _______X, XXXXX___, ________,
+ ______XX, XXXX____, ________,
+ ______XX, XXXX____, ________,
+ ______XX, XXXX____, ________,
+ ______XX, XXXX____, ________}
+
+ ,
+ {________, _XXXXXXX, X_______,
+ _______X, XXXXXXXX, XXX_____,
+ _____XXX, XXXXXXXX, XXXXX___,
+ ____XXXX, XXXXXXXX, XXXXXX__,
+ ____XXXX, XX______, XXXXXX__,
+ ___XXXXX, X_______, _XXXXXX_,
+ ___XXXXX, ________, __XXXXX_,
+ ___XXXXX, ________, __XXXXX_,
+ ___XXXXX, ________, __XXXXX_,
+ ___XXXXX, ________, __XXXXX_,
+ ___XXXXX, X_______, _XXXXXX_,
+ ____XXXX, X_______, _XXXXX__,
+ ____XXXX, XXX____X, XXXXXX__,
+ _____XXX, XXXXXXXX, XXXXX___,
+ _______X, XXXXXXXX, XXX_____,
+ ______XX, XXXXXXXX, XXXX____,
+ ____XXXX, XXXXXXXX, XXXXXX__,
+ ___XXXXX, XXX____X, XXXXXXX_,
+ ___XXXXX, ________, __XXXXX_,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXXX, ________, __XXXXXX,
+ ___XXXXX, ________, __XXXXX_,
+ ___XXXXX, XX______, XXXXXXX_,
+ ____XXXX, XXXXXXXX, XXXXXX__,
+ _____XXX, XXXXXXXX, XXXXX___,
+ ______XX, XXXXXXXX, XXXX____,
+ ________, XXXXXXXX, XX______}
+
+ ,
+ {________, _XXXXXXX, X_______,
+ _______X, XXXXXXXX, XXX_____,
+ ______XX, XXXXXXXX, XXXX____,
+ _____XXX, XXXXXXXX, XXXXX___,
+ ____XXXX, XX______, XXXXXX__,
+ ___XXXXX, X_______, _XXXXX__,
+ ___XXXXX, ________, __XXXXX_,
+ ___XXXX_, ________, __XXXXX_,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ __XXXXX_, ________, ___XXXXX,
+ ___XXXX_, ________, __XXXXXX,
+ ___XXXXX, ________, __XXXXXX,
+ ___XXXXX, X_______, _XXXXXXX,
+ ____XXXX, XX_____X, XXXXXXXX,
+ _____XXX, XXXXXXXX, XXXXXXXX,
+ ______XX, XXXXXXXX, XX_XXXXX,
+ ________, XXXXXXXX, ___XXXXX,
+ ________, __XXXX__, ___XXXXX,
+ ________, ________, __XXXXXX,
+ ________, ________, __XXXXX_,
+ ________, ________, __XXXXX_,
+ __XXXXX_, ________, _XXXXXX_,
+ __XXXXX_, ________, _XXXXX__,
+ ___XXXXX, ________, XXXXX___,
+ ___XXXXX, X______X, XXXXX___,
+ ____XXXX, XXXXXXXX, XXXX____,
+ _____XXX, XXXXXXXX, XXX_____,
+ ______XX, XXXXXXXX, XX______,
+ ________, XXXXXXXX, ________}
+
+ ,
+ {________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ___XXX__, ________,
+ ________, __XXXXX_, ________,
+ ________, __XXXXX_, ________,
+ ________, __XXXXX_, ________,
+ ________, ___XXX__, ________}
+
+ ,
+ {________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ __XXXXXX, XXXXXXXX, XXXXXX__,
+ __XXXXXX, XXXXXXXX, XXXXXX__,
+ __XXXXXX, XXXXXXXX, XXXXXX__,
+ __XXXXXX, XXXXXXXX, XXXXXX__,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, __XXXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________}
+
+ ,
+ {________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ __XXXXXX, XXXXXXXX, XXXXXX__,
+ __XXXXXX, XXXXXXXX, XXXXXX__,
+ __XXXXXX, XXXXXXXX, XXXXXX__,
+ __XXXXXX, XXXXXXXX, XXXXXX__,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________}
+
+ ,
+ {________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ___XXX__, ________,
+ ________, __XXXXX_, ________,
+ ________, __XXXXX_, ________,
+ ________, __XXXXX_, ________,
+ ________, ___XXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ___XXX__, ________,
+ ________, __XXXXX_, ________,
+ ________, __XXXXX_, ________,
+ ________, __XXXXX_, ________,
+ ________, ___XXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________},
+ {________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________}};
+
+/*
+ **************************************
+ * *
+ * Digit translation table *
+ * *
+ **************************************
+
+ This table is needed for translation of the big-digit font,
+ which is defined for the following characters only : 0123456789+-.:
+ Needs to be included only if if the digit-font is listed
+ in the font table.
+
+*/
+
+GUI_CONST_STORAGE GUI_FONT_TRANSLIST TLDigits24x32[] = {
+ {14, -1}, /* char 32 : ' ' */
+ {-1, -1}, /* char 33 : n/a */
+ {-1, -1}, /* char 34 : n/a */
+ {-1, -1}, /* char 35 : n/a */
+ {-1, -1}, /* char 36 : n/a */
+ {-1, -1}, /* char 37 : n/a */
+ {-1, -1}, /* char 38 : n/a */
+ {-1, -1}, /* char 39 : n/a */
+ {-1, -1}, /* char 40 : n/a */
+ {-1, -1}, /* char 41 : n/a */
+ {-1, -1}, /* char 42 : n/a */
+ {11, -1}, /* char 43 : '+' */
+ {-1, -1}, /* char 44 : n/a */
+ {12, -1}, /* char 45 : '-' */
+ {10, -1}, /* char 46 : '.' */
+ {-1, -1}, /* char 47 : n/a */
+ {0, -1}, /* char 48 : '0' */
+ {1, -1}, /* char 49 : '1' */
+ {2, -1}, /* char 50 : '2' */
+ {3, -1}, /* char 51 : '3' */
+ {4, -1}, /* char 52 : '4' */
+ {5, -1}, /* char 53 : '5' */
+ {6, -1}, /* char 54 : '6' */
+ {7, -1}, /* char 55 : '7' */
+ {8, -1}, /* char 56 : '8' */
+ {9, -1}, /* char 57 : '9' */
+ {13, -1}, /* char 58 : ':' */
+};
+
+GUI_CONST_STORAGE GUI_FONT_TRANSINFO TransInfo24x32 = {
+ 32, /* First character for translation, plus sign */
+ 58, /* Last character for translation, digit 9 */
+ TLDigits24x32};
+
+GUI_CONST_STORAGE GUI_FONT_MONO FontMono24x32 = {
+ acFont24x32[0],
+ acFont24x32[0],
+ &TransInfo24x32,
+ 0, 0, /* All character are in translation table */
+ 24, 24, /* width, spacing */
+ 3 /* Bytes per line */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontD24x32 = {
+ GUI_FONTTYPE_MONO, 32, 32, 1, 2, {&FontMono24x32}, 32, 0, 32};
diff --git a/User/lib/lcd/gui/Font/FD32.c b/User/lib/lcd/gui/Font/FD32.c
new file mode 100644
index 0000000..049c22a
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FD32.c
@@ -0,0 +1,612 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FD32.C
+Purpose : Implementation of the the proportional 32 pixel digit
+Height : 32
+---------------------------END-OF-HEADER------------------------------
+*/
+
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE U8 acFont32[12][96] = {
+{
+ ________,_XXXXXXX,________,
+ _______X,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXX_____,
+ _____XXX,XXXXXXXX,XXXX____,
+ ____XXXX,XXX___XX,XXXXX___,
+ ____XXXX,X_______,XXXXX___,
+ ___XXXXX,________,_XXXXX__,
+ ___XXXXX,________,_XXXXX__,
+ ___XXXXX,________,_XXXXX__,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ ___XXXXX,________,_XXXXX__,
+ ___XXXXX,________,_XXXXX__,
+ ___XXXXX,________,_XXXXX__,
+ ____XXXX,X_______,XXXXX___,
+ ____XXXX,XXX___XX,XXXXX___,
+ _____XXX,XXXXXXXX,XXXX____,
+ ______XX,XXXXXXXX,XXX_____,
+ _______X,XXXXXXXX,XX______,
+ ________,_XXXXXXX,________}
+
+
+ ,{
+ ________,______XX,XX______,
+ ________,______XX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,____XXXX,XX______,
+ ________,__XXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,XX______}
+
+
+
+ ,{
+ ________,_XXXXXXX,X_______,
+ _______X,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXX____X,XXXXXX__,
+ ___XXXXX,X_______,XXXXXX__,
+ ___XXXXX,________,_XXXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ __XXXXX_,________,__XXXXX_,
+ ________,________,__XXXXX_,
+ ________,________,__XXXXX_,
+ ________,________,__XXXXX_,
+ ________,________,_XXXXXX_,
+ ________,________,XXXXXX__,
+ ________,_______X,XXXXXX__,
+ ________,_____XXX,XXXXX___,
+ ________,____XXXX,XXX_____,
+ ________,__XXXXXX,XX______,
+ ________,_XXXXXXX,X_______,
+ _______X,XXXXXXX_,________,
+ ______XX,XXXXXX__,________,
+ _____XXX,XXXX____,________,
+ ____XXXX,XXX_____,________,
+ ____XXXX,XX______,________,
+ ___XXXXX,X_______,________,
+ ___XXXXX,________,________,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ __XXXXXX,XXXXXXXX,XXXXXXX_}
+
+
+ ,{
+ ________,_XXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XXX_____,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ___XXXXX,X______X,XXXXX___,
+ ___XXXXX,________,XXXXX___,
+ __XXXXX_,________,XXXXXX__,
+ __XXXXX_,________,_XXXXX__,
+ __XXXXX_,________,_XXXXX__,
+ __XXXXX_,________,_XXXXX__,
+ ________,________,XXXXX___,
+ ________,________,XXXXX___,
+ ________,_______X,XXXX____,
+ ________,__XXXXXX,XXX_____,
+ ________,__XXXXXX,XX______,
+ ________,__XXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXX___,
+ ________,_______X,XXXXXX__,
+ ________,________,_XXXXX__,
+ ________,________,_XXXXXX_,
+ ________,________,__XXXXX_,
+ ________,________,__XXXXX_,
+ _XXXXX__,________,__XXXXX_,
+ _XXXXX__,________,__XXXXX_,
+ _XXXXX__,________,_XXXXXX_,
+ __XXXXX_,________,_XXXXX__,
+ __XXXXXX,________,XXXXXX__,
+ ___XXXXX,X______X,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,XX______,
+ ________,_XXXXXX_,________}
+
+
+ ,{
+ ________,_______X,XXXX____,
+ ________,______XX,XXXX____,
+ ________,_____XXX,XXXX____,
+ ________,_____XXX,XXXX____,
+ ________,____XXXX,XXXX____,
+ ________,___XXXXX,XXXX____,
+ ________,___XXXX_,XXXX____,
+ ________,__XXXXX_,XXXX____,
+ ________,_XXXXX__,XXXX____,
+ ________,_XXXX___,XXXX____,
+ ________,XXXXX___,XXXX____,
+ _______X,XXXX____,XXXX____,
+ _______X,XXX_____,XXXX____,
+ ______XX,XXX_____,XXXX____,
+ _____XXX,XX______,XXXX____,
+ _____XXX,X_______,XXXX____,
+ ____XXXX,X_______,XXXX____,
+ ___XXXXX,________,XXXX____,
+ ___XXXX_,________,XXXX____,
+ __XXXXX_,________,XXXX____,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,
+ ________,________,XXXX____,
+ ________,________,XXXX____,
+ ________,________,XXXX____,
+ ________,________,XXXX____,
+ ________,________,XXXX____,
+ ________,________,XXXX____,
+ ________,________,XXXX____,
+ ________,________,XXXX____}
+
+
+ ,{
+ _____XXX,XXXXXXXX,XXXXXX__,
+ _____XXX,XXXXXXXX,XXXXXX__,
+ _____XXX,XXXXXXXX,XXXXXX__,
+ _____XXX,XXXXXXXX,XXXXXX__,
+ ____XXXX,X_______,________,
+ ____XXXX,X_______,________,
+ ____XXXX,X_______,________,
+ ____XXXX,X_______,________,
+ ____XXXX,________,________,
+ ____XXXX,________,________,
+ ____XXXX,___XXXXX,________,
+ ____XXXX,_XXXXXXX,XXX_____,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ___XXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXX____X,XXXXXX__,
+ ___XXXXX,X_______,_XXXXXX_,
+ ___XXXXX,________,__XXXXX_,
+ ________,________,__XXXXXX,
+ ________,________,___XXXXX,
+ ________,________,___XXXXX,
+ ________,________,___XXXXX,
+ ________,________,___XXXXX,
+ ________,________,___XXXXX,
+ __XXXXX_,________,__XXXXXX,
+ __XXXXX_,________,__XXXXX_,
+ ___XXXXX,________,_XXXXXX_,
+ ___XXXXX,X_______,XXXXXX__,
+ ____XXXX,XX____XX,XXXXXX__,
+ _____XXX,XXXXXXXX,XXXXX___,
+ ______XX,XXXXXXXX,XXXX____,
+ _______X,XXXXXXXX,XX______,
+ ________,__XXXXX_,________}
+
+
+ ,{
+ ________,__XXXXXX,XX______,
+ ________,XXXXXXXX,XXXX____,
+ _______X,XXXXXXXX,XXXXX___,
+ ______XX,XXXXXXXX,XXXXXX__,
+ _____XXX,XXX_____,_XXXXX__,
+ ____XXXX,XX______,__XXXXX_,
+ ____XXXX,X_______,___XXXX_,
+ ___XXXXX,________,___XXXX_,
+ ___XXXXX,________,________,
+ ___XXXXX,________,________,
+ __XXXXX_,________,________,
+ __XXXXX_,___XXXXX,________,
+ __XXXXX_,_XXXXXXX,XXX_____,
+ __XXXXX_,XXXXXXXX,XXXX____,
+ __XXXXXX,XXXXXXXX,XXXXX___,
+ __XXXXXX,XX______,XXXXXX__,
+ __XXXXXX,X_______,_XXXXXX_,
+ __XXXXXX,________,__XXXXX_,
+ __XXXXXX,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ ___XXXX_,________,___XXXXX,
+ ___XXXXX,________,___XXXXX,
+ ___XXXXX,________,___XXXXX,
+ ____XXXX,X_______,__XXXXX_,
+ ____XXXX,X_______,_XXXXXX_,
+ _____XXX,XXX_____,XXXXXX__,
+ ______XX,XXXXXXXX,XXXXX___,
+ _______X,XXXXXXXX,XXXX____,
+ ________,XXXXXXXX,XXX_____,
+ ________,___XXXXX,________}
+
+
+
+ ,{
+ __XXXXXX,XXXXXXXX,XXXXXXXX,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,
+ ________,________,___XXXXX,
+ ________,________,__XXXXX_,
+ ________,________,_XXXXX__,
+ ________,________,XXXXX___,
+ ________,_______X,XXXX____,
+ ________,______XX,XXX_____,
+ ________,_____XXX,XXX_____,
+ ________,_____XXX,XX______,
+ ________,____XXXX,XX______,
+ ________,___XXXXX,X_______,
+ ________,___XXXXX,X_______,
+ ________,__XXXXXX,________,
+ ________,__XXXXXX,________,
+ ________,_XXXXXX_,________,
+ ________,_XXXXXX_,________,
+ ________,_XXXXXX_,________,
+ ________,XXXXXX__,________,
+ ________,XXXXXX__,________,
+ ________,XXXXXX__,________,
+ _______X,XXXXX___,________,
+ _______X,XXXXX___,________,
+ _______X,XXXXX___,________,
+ _______X,XXXXX___,________,
+ ______XX,XXXX____,________,
+ ______XX,XXXX____,________,
+ ______XX,XXXX____,________,
+ ______XX,XXXX____,________}
+
+
+ ,{
+ ________,_XXXXXXX,X_______,
+ _______X,XXXXXXXX,XXX_____,
+ _____XXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXX__,
+ ____XXXX,XX______,XXXXXX__,
+ ___XXXXX,X_______,_XXXXXX_,
+ ___XXXXX,________,__XXXXX_,
+ ___XXXXX,________,__XXXXX_,
+ ___XXXXX,________,__XXXXX_,
+ ___XXXXX,________,__XXXXX_,
+ ___XXXXX,X_______,_XXXXXX_,
+ ____XXXX,X_______,_XXXXX__,
+ ____XXXX,XXX____X,XXXXXX__,
+ _____XXX,XXXXXXXX,XXXXX___,
+ _______X,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,XXXX____,
+ ____XXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXX____X,XXXXXXX_,
+ ___XXXXX,________,__XXXXX_,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ __XXXXXX,________,__XXXXXX,
+ ___XXXXX,________,__XXXXX_,
+ ___XXXXX,XX______,XXXXXXX_,
+ ____XXXX,XXXXXXXX,XXXXXX__,
+ _____XXX,XXXXXXXX,XXXXX___,
+ ______XX,XXXXXXXX,XXXX____,
+ ________,XXXXXXXX,XX______}
+
+
+
+ ,{
+ ________,_XXXXXXX,X_______,
+ _______X,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XX______,XXXXXX__,
+ ___XXXXX,X_______,_XXXXX__,
+ ___XXXXX,________,__XXXXX_,
+ ___XXXX_,________,__XXXXX_,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ __XXXXX_,________,___XXXXX,
+ ___XXXX_,________,__XXXXXX,
+ ___XXXXX,________,__XXXXXX,
+ ___XXXXX,X_______,_XXXXXXX,
+ ____XXXX,XX_____X,XXXXXXXX,
+ _____XXX,XXXXXXXX,XXXXXXXX,
+ ______XX,XXXXXXXX,XX_XXXXX,
+ ________,XXXXXXXX,___XXXXX,
+ ________,__XXXX__,___XXXXX,
+ ________,________,__XXXXXX,
+ ________,________,__XXXXX_,
+ ________,________,__XXXXX_,
+ __XXXXX_,________,_XXXXXX_,
+ __XXXXX_,________,_XXXXX__,
+ ___XXXXX,________,XXXXX___,
+ ___XXXXX,X______X,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,________}
+
+
+ ,{
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,__XXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________}
+ ,{
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________}
+};
+
+
+GUI_CONST_STORAGE U8 acFont32_DP[2*32] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,________};
+
+GUI_CONST_STORAGE U8 acFont32_Colon[2*32] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+
+GUI_CONST_STORAGE U8 acFont32_Space[3*32] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+
+GUI_CONST_STORAGE GUI_CHARINFO CharInfo32[] = {
+ { 24,24,3, acFont32[0]} /* '0' */
+ ,{ 24,24,3, acFont32[1]} /* '1' */
+ ,{ 24,24,3, acFont32[2]} /* '2' */
+ ,{ 24,24,3, acFont32[3]} /* '3' */
+ ,{ 24,24,3, acFont32[4]} /* '4' */
+ ,{ 24,24,3, acFont32[5]} /* '5' */
+ ,{ 24,24,3, acFont32[6]} /* '6' */
+ ,{ 24,24,3, acFont32[7]} /* '7' */
+ ,{ 24,24,3, acFont32[8]} /* '8' */
+ ,{ 24,24,3, acFont32[9]} /* '9' */
+ ,{ 16,16,2, acFont32_Colon} /* ':' */
+ ,{ 24,24,3, acFont32[11]} /* '-' */
+ ,{ 12,12,2, acFont32_DP} /* '.' */
+ ,{ 24,24,3, acFont32[10]} /* '+' */
+ ,{ 24,24,3, acFont32_Space} /* ' ' */
+};
+
+
+/* Digits (48-57), 58: ':' */
+GUI_CONST_STORAGE GUI_FONT_PROP FontProp32_3 = {
+ 48 /* first character */
+ ,58 /* last character */
+ ,&CharInfo32[0] /* address of first character */
+ ,(const GUI_FONT_PROP *)0 /* pointer to next GUI_FONTRANGE */
+};
+
+/* 45: '-', 46: '.' */
+GUI_CONST_STORAGE GUI_FONT_PROP FontProp32_2 = {
+ 45 /* first character */
+ ,46 /* last character */
+ ,&CharInfo32[11] /* address of first character */
+ ,&FontProp32_3 /* pointer to next GUI_FONTRANGE */
+};
+
+/* Plus sign */
+GUI_CONST_STORAGE GUI_FONT_PROP FontProp32_1 = {
+ 43 /* first character */
+ ,43 /* last character */
+ ,&CharInfo32[13] /* address of first character */
+ ,&FontProp32_2 /* pointer to next GUI_FONTRANGE */
+};
+
+/* Space */
+GUI_CONST_STORAGE GUI_FONT_PROP FontProp32 = {
+ 32 /* first character */
+ ,32 /* last character */
+ ,&CharInfo32[14] /* address of first character */
+ ,&FontProp32_1 /* pointer to next GUI_FONTRANGE */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontD32 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,32 /* height of font */
+ ,32 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&FontProp32}
+ ,32, 0, 32
+};
+
+
diff --git a/User/lib/lcd/gui/Font/FD36x48.c b/User/lib/lcd/gui/Font/FD36x48.c
new file mode 100644
index 0000000..474df7f
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FD36x48.c
@@ -0,0 +1,832 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FD48.C
+Purpose : Implementation of the non-proportional 37 by 48 pixel digit font
+Height : 48
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFontD36x48[15][240] = {
+{
+ ________,_______X,XXXXXX__,________,________,
+ ________,____XXXX,XXXXXXXX,X_______,________,
+ ________,__XXXXXX,XXXXXXXX,XXX_____,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,_____XXX,XXXXXX__,________,
+ ______XX,XXXXXX__,_______X,XXXXXXX_,________,
+ ______XX,XXXXX___,________,XXXXXXX_,________,
+ _____XXX,XXXXX___,________,XXXXXXXX,________,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XX______,________,___XXXXX,X_______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ____XXXX,XX______,________,___XXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ _____XXX,XXXXX___,________,XXXXXXXX,________,
+ ______XX,XXXXX___,________,XXXXXXX_,________,
+ ______XX,XXXXXX__,_______X,XXXXXXX_,________,
+ _______X,XXXXXXXX,_____XXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXX_____,________,
+ ________,____XXXX,XXXXXXXX,X_______,________,
+ ________,_______X,XXXXXX__,________,________},
+
+{
+ ________,________,_XXXXXX_,________,________,
+ ________,________,_XXXXXX_,________,________,
+ ________,________,XXXXXXX_,________,________,
+ ________,________,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,______XX,XXXXXXX_,________,________,
+ ________,_____XXX,XXXXXXX_,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,
+ ________,_XXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________},
+
+{
+ ________,________,XXXXXXXX,________,________,
+ ________,____XXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXX____,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,______XX,XXXXXXXX,________,
+ ______XX,XXXXXX__,________,XXXXXXXX,X_______,
+ ______XX,XXXXX___,________,_XXXXXXX,X_______,
+ _____XXX,XXXXX___,________,__XXXXXX,X_______,
+ _____XXX,XXXX____,________,__XXXXXX,XX______,
+ _____XXX,XXXX____,________,___XXXXX,XX______,
+ _____XXX,XXXX____,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,_XXXXXXX,X_______,
+ ________,________,________,XXXXXXXX,________,
+ ________,________,________,XXXXXXXX,________,
+ ________,________,_______X,XXXXXXX_,________,
+ ________,________,_____XXX,XXXXXXX_,________,
+ ________,________,____XXXX,XXXXXX__,________,
+ ________,________,__XXXXXX,XXXXX___,________,
+ ________,________,_XXXXXXX,XXXX____,________,
+ ________,________,XXXXXXXX,XXX_____,________,
+ ________,______XX,XXXXXXXX,X_______,________,
+ ________,_____XXX,XXXXXXXX,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,
+ ________,__XXXXXX,XXXXX___,________,________,
+ ________,_XXXXXXX,XXXX____,________,________,
+ ________,XXXXXXXX,XX______,________,________,
+ ________,XXXXXXXX,X_______,________,________,
+ _______X,XXXXXXX_,________,________,________,
+ ______XX,XXXXXX__,________,________,________,
+ ______XX,XXXXX___,________,________,________,
+ _____XXX,XXXX____,________,________,________,
+ _____XXX,XXXX____,________,________,________,
+ ____XXXX,XXX_____,________,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______},
+
+{
+ ________,______XX,XXXXXX__,________,________,
+ ________,___XXXXX,XXXXXXXX,X_______,________,
+ ________,_XXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXX_,_____XXX,XXXXXXX_,________,
+ _____XXX,XXXXX___,_______X,XXXXXXX_,________,
+ _____XXX,XXXX____,________,XXXXXXX_,________,
+ ____XXXX,XXXX____,________,XXXXXXXX,________,
+ ____XXXX,XXX_____,________,_XXXXXXX,________,
+ ____XXXX,XXX_____,________,_XXXXXXX,________,
+ ___XXXXX,XX______,________,_XXXXXXX,________,
+ ___XXXXX,XX______,________,_XXXXXXX,________,
+ ___XXXXX,XX______,________,_XXXXXXX,________,
+ ________,________,________,XXXXXXX_,________,
+ ________,________,________,XXXXXXX_,________,
+ ________,________,_______X,XXXXXXX_,________,
+ ________,________,______XX,XXXXXX__,________,
+ ________,________,___XXXXX,XXXXX___,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,
+ ________,_______X,XXXXXXXX,XXX_____,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,
+ ________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,_______X,XXXXXXXX,XXXXXXX_,________,
+ ________,________,_____XXX,XXXXXXXX,________,
+ ________,________,________,XXXXXXXX,________,
+ ________,________,________,_XXXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,__XXXXXX,XX______,
+ ___XXXXX,XXX_____,________,_XXXXXXX,X_______,
+ ___XXXXX,XXX_____,________,_XXXXXXX,X_______,
+ ____XXXX,XXXX____,_______X,XXXXXXXX,________,
+ ____XXXX,XXXXXXX_,______XX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,______XX,XXXXXX__,________,________},
+
+{
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,____XXXX,XXXX____,________,
+ ________,________,___XXXXX,XXXX____,________,
+ ________,________,___XXXXX,XXXX____,________,
+ ________,________,__XXXXXX,XXXX____,________,
+ ________,________,_XXXXXXX,XXXX____,________,
+ ________,________,_XXXXXXX,XXXX____,________,
+ ________,________,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,
+ ________,______XX,XXXX_XXX,XXXX____,________,
+ ________,_____XXX,XXX__XXX,XXXX____,________,
+ ________,____XXXX,XXX__XXX,XXXX____,________,
+ ________,____XXXX,XX___XXX,XXXX____,________,
+ ________,___XXXXX,X____XXX,XXXX____,________,
+ ________,__XXXXXX,X____XXX,XXXX____,________,
+ ________,__XXXXXX,_____XXX,XXXX____,________,
+ ________,_XXXXXX_,_____XXX,XXXX____,________,
+ ________,XXXXXXX_,_____XXX,XXXX____,________,
+ ________,XXXXXX__,_____XXX,XXXX____,________,
+ _______X,XXXXX___,_____XXX,XXXX____,________,
+ ______XX,XXXXX___,_____XXX,XXXX____,________,
+ ______XX,XXXX____,_____XXX,XXXX____,________,
+ _____XXX,XXX_____,_____XXX,XXXX____,________,
+ ____XXXX,XXX_____,_____XXX,XXXX____,________,
+ ___XXXXX,XX______,_____XXX,XXXX____,________,
+ ___XXXXX,XX______,_____XXX,XXXX____,________,
+ __XXXXXX,X_______,_____XXX,XXXX____,________,
+ _XXXXXXX,________,_____XXX,XXXX____,________,
+ _XXXXXXX,________,_____XXX,XXXX____,________,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________},
+
+{
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,________,________,
+ _______X,XXXXXX__,________,________,________,
+ _______X,XXXXX___,________,________,________,
+ _______X,XXXXX___,________,________,________,
+ ______XX,XXXXX___,________,________,________,
+ ______XX,XXXXX___,________,________,________,
+ ______XX,XXXXX___,________,________,________,
+ ______XX,XXXX____,________,________,________,
+ ______XX,XXXX____,________,________,________,
+ ______XX,XXXX____,_XXXXXXX,________,________,
+ _____XXX,XXXX__XX,XXXXXXXX,XXX_____,________,
+ _____XXX,XXXX_XXX,XXXXXXXX,XXXX____,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ____XXXX,XXXXXXX_,_____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXX___,_______X,XXXXXXXX,________,
+ ____XXXX,XXXX____,________,_XXXXXXX,X_______,
+ ____XXXX,XXX_____,________,_XXXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XXX_____,________,__XXXXXX,X_______,
+ ___XXXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,_XXXXXXX,X_______,
+ ____XXXX,XXXX____,________,_XXXXXXX,________,
+ _____XXX,XXXXX___,________,XXXXXXXX,________,
+ _____XXX,XXXXXXX_,______XX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XX______,________,
+ ________,______XX,XXXXXXX_,________,________},
+
+{
+ ________,________,XXXXXXX_,________,________,
+ ________,_____XXX,XXXXXXXX,XX______,________,
+ ________,___XXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,______XX,XXXXXXX_,________,
+ ______XX,XXXXXX__,________,XXXXXXXX,________,
+ _____XXX,XXXXX___,________,_XXXXXXX,________,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ ____XXXX,XXXX____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,________,________,
+ ___XXXXX,XXX_____,________,________,________,
+ ___XXXXX,XX______,________,________,________,
+ ___XXXXX,XX______,________,________,________,
+ ___XXXXX,XX______,________,________,________,
+ ___XXXXX,XX______,XXXXXXX_,________,________,
+ __XXXXXX,XX____XX,XXXXXXXX,XX______,________,
+ __XXXXXX,XX__XXXX,XXXXXXXX,XXXX____,________,
+ __XXXXXX,X__XXXXX,XXXXXXXX,XXXXX___,________,
+ __XXXXXX,X_XXXXXX,XXXXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXX_,______XX,XXXXXXXX,________,
+ __XXXXXX,XXXXXX__,________,XXXXXXXX,________,
+ __XXXXXX,XXXX____,________,_XXXXXXX,X_______,
+ __XXXXXX,XXXX____,________,_XXXXXXX,X_______,
+ __XXXXXX,XXX_____,________,__XXXXXX,X_______,
+ __XXXXXX,XXX_____,________,__XXXXXX,XX______,
+ __XXXXXX,XX______,________,___XXXXX,XX______,
+ __XXXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXXX____,________,_XXXXXXX,X_______,
+ _____XXX,XXXXX___,________,_XXXXXXX,X_______,
+ _____XXX,XXXXXX__,_______X,XXXXXXXX,________,
+ ______XX,XXXXXXXX,______XX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXXXXXXX,XXXX____,________,
+ ________,____XXXX,XXXXXXXX,XX______,________,
+ ________,______XX,XXXXXXX_,________,________},
+
+{
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,_XXXXXXX,________,
+ ________,________,________,XXXXXXX_,________,
+ ________,________,________,XXXXXX__,________,
+ ________,________,_______X,XXXXXX__,________,
+ ________,________,______XX,XXXXX___,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXX_____,________,
+ ________,________,____XXXX,XXX_____,________,
+ ________,________,___XXXXX,XX______,________,
+ ________,________,___XXXXX,XX______,________,
+ ________,________,__XXXXXX,X_______,________,
+ ________,________,__XXXXXX,________,________,
+ ________,________,_XXXXXXX,________,________,
+ ________,________,XXXXXXX_,________,________,
+ ________,________,XXXXXXX_,________,________,
+ ________,________,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,______XX,XXXXX___,________,________,
+ ________,______XX,XXXXX___,________,________,
+ ________,_____XXX,XXXXX___,________,________,
+ ________,_____XXX,XXXX____,________,________,
+ ________,_____XXX,XXXX____,________,________,
+ ________,____XXXX,XXXX____,________,________,
+ ________,____XXXX,XXX_____,________,________,
+ ________,____XXXX,XXX_____,________,________,
+ ________,___XXXXX,XXX_____,________,________,
+ ________,___XXXXX,XXX_____,________,________,
+ ________,___XXXXX,XX______,________,________,
+ ________,___XXXXX,XX______,________,________,
+ ________,__XXXXXX,XX______,________,________,
+ ________,__XXXXXX,XX______,________,________,
+ ________,__XXXXXX,XX______,________,________,
+ ________,__XXXXXX,XX______,________,________,
+ ________,__XXXXXX,X_______,________,________,
+ ________,_XXXXXXX,X_______,________,________,
+ ________,_XXXXXXX,X_______,________,________,
+ ________,_XXXXXXX,X_______,________,________,
+ ________,_XXXXXXX,X_______,________,________,
+ ________,_XXXXXXX,X_______,________,________},
+
+{
+ ________,______XX,XXXXXXX_,________,________,
+ ________,___XXXXX,XXXXXXXX,XX______,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXX_,______XX,XXXXXXXX,________,
+ _____XXX,XXXXXX__,_______X,XXXXXXXX,________,
+ _____XXX,XXXXX___,________,XXXXXXXX,________,
+ ____XXXX,XXXX____,________,_XXXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ _____XXX,XXXXX___,________,XXXXXXXX,________,
+ ______XX,XXXXXX__,_______X,XXXXXXX_,________,
+ _______X,XXXXXXX_,______XX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXXXXXXX,XXX_____,________,
+ ________,_XXXXXXX,XXXXXXXX,XXX_____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ____XXXX,XXXXXX__,______XX,XXXXXXXX,________,
+ ____XXXX,XXXX____,_______X,XXXXXXXX,X_______,
+ ___XXXXX,XXX_____,________,_XXXXXXX,X_______,
+ ___XXXXX,XX______,________,__XXXXXX,X_______,
+ __XXXXXX,XX______,________,__XXXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,__XXXXXX,X_______,
+ ___XXXXX,XXX_____,________,_XXXXXXX,X_______,
+ ___XXXXX,XXX_____,________,_XXXXXXX,X_______,
+ ____XXXX,XXXXX___,_______X,XXXXXXXX,________,
+ ____XXXX,XXXXXXX_,______XX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,______XX,XXXXXX__,________,________},
+
+{
+ ________,______XX,XXXXXX__,________,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,________,
+ ________,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ____XXXX,XXXXXX__,____XXXX,XXXXXX__,________,
+ ____XXXX,XXXX____,______XX,XXXXXXX_,________,
+ ___XXXXX,XXX_____,________,XXXXXXX_,________,
+ ___XXXXX,XXX_____,________,XXXXXXXX,________,
+ ___XXXXX,XX______,________,_XXXXXXX,________,
+ __XXXXXX,XX______,________,_XXXXXXX,________,
+ __XXXXXX,X_______,________,__XXXXXX,X_______,
+ __XXXXXX,X_______,________,__XXXXXX,X_______,
+ __XXXXXX,X_______,________,__XXXXXX,X_______,
+ __XXXXXX,X_______,________,__XXXXXX,X_______,
+ __XXXXXX,X_______,________,__XXXXXX,X_______,
+ __XXXXXX,X_______,________,__XXXXXX,XX______,
+ __XXXXXX,X_______,________,__XXXXXX,XX______,
+ __XXXXXX,XX______,________,_XXXXXXX,XX______,
+ ___XXXXX,XX______,________,_XXXXXXX,XX______,
+ ___XXXXX,XXX_____,________,XXXXXXXX,XX______,
+ ___XXXXX,XXX_____,________,XXXXXXXX,XX______,
+ ____XXXX,XXXX____,______XX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXX__,____XXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXXXXXX,XX_XXXXX,XX______,
+ _______X,XXXXXXXX,XXXXXXXX,X__XXXXX,XX______,
+ ________,XXXXXXXX,XXXXXXXX,__XXXXXX,XX______,
+ ________,__XXXXXX,XXXXXX__,__XXXXXX,XX______,
+ ________,_____XXX,XXXX____,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,_XXXXXXX,X_______,
+ ________,________,________,_XXXXXXX,________,
+ ___XXXXX,XX______,________,_XXXXXXX,________,
+ ___XXXXX,XX______,________,XXXXXXX_,________,
+ ___XXXXX,XXX_____,________,XXXXXXX_,________,
+ ____XXXX,XXX_____,_______X,XXXXXXX_,________,
+ ____XXXX,XXXX____,______XX,XXXXXX__,________,
+ _____XXX,XXXXXX__,____XXXX,XXXXX___,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,__XXXXXX,XXXXXXX_,________,________,
+ ________,_____XXX,XXXX____,________,________},
+
+{
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________},
+
+{
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________},
+
+{
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________},
+
+{
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,________,________,________,________},
+
+{
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,________,________,
+ ________,________,________,________,________}
+};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_FontD36x48_CharInfo[15] = {
+ { 36, 36, 5, acFontD36x48[12] } /* code 0020 ' ' */
+ ,{ 36, 36, 5, acFontD36x48[10] } /* code 002B '+' */
+ ,{ 36, 36, 5, acFontD36x48[11] } /* code 002D '-' */
+ ,{ 36, 36, 5, acFontD36x48[13] } /* code 002E '.' */
+ ,{ 36, 36, 5, acFontD36x48[0] } /* code 0030 '0' */
+ ,{ 36, 36, 5, acFontD36x48[1] } /* code 0031 '1' */
+ ,{ 36, 36, 5, acFontD36x48[2] } /* code 0032 '2' */
+ ,{ 36, 36, 5, acFontD36x48[3] } /* code 0033 '3' */
+ ,{ 36, 36, 5, acFontD36x48[4] } /* code 0034 '4' */
+ ,{ 36, 36, 5, acFontD36x48[5] } /* code 0035 '5' */
+ ,{ 36, 36, 5, acFontD36x48[6] } /* code 0036 '6' */
+ ,{ 36, 36, 5, acFontD36x48[7] } /* code 0037 '7' */
+ ,{ 36, 36, 5, acFontD36x48[8] } /* code 0038 '8' */
+ ,{ 36, 36, 5, acFontD36x48[9] } /* code 0039 '9' */
+ ,{ 36, 36, 5, acFontD36x48[14] } /* code 003A ':' */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD36x48_Prop4 = {
+ 0x0030 /* first character */
+ ,0x003A /* last character */
+ ,&GUI_FontD36x48_CharInfo[ 4] /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD36x48_Prop3 = {
+ 0x002D /* first character */
+ ,0x002E /* last character */
+ ,&GUI_FontD36x48_CharInfo[ 2] /* address of first character */
+ ,&GUI_FontD36x48_Prop4 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD36x48_Prop2 = {
+ 0x002B /* first character */
+ ,0x002B /* last character */
+ ,&GUI_FontD36x48_CharInfo[ 1] /* address of first character */
+ ,&GUI_FontD36x48_Prop3 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD36x48_Prop1 = {
+ 0x0020 /* first character */
+ ,0x0020 /* last character */
+ ,&GUI_FontD36x48_CharInfo[ 0] /* address of first character */
+ ,&GUI_FontD36x48_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontD36x48 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,48 /* height of font */
+ ,48 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontD36x48_Prop1}
+ ,48 /* Baseline */
+ ,0 /* LHeight */
+ ,48 /* CHeight */
+};
+
diff --git a/User/lib/lcd/gui/Font/FD48.c b/User/lib/lcd/gui/Font/FD48.c
new file mode 100644
index 0000000..9a234fe
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FD48.c
@@ -0,0 +1,832 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FD48.C
+Purpose : Implementation of the proportional 48 pixel digit
+Height : 48
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFontD48[12][240] = {
+{
+ ________,_______X,XXXXXX__,________,________,
+ ________,____XXXX,XXXXXXXX,X_______,________,
+ ________,__XXXXXX,XXXXXXXX,XXX_____,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,_____XXX,XXXXXX__,________,
+ ______XX,XXXXXX__,_______X,XXXXXXX_,________,
+ ______XX,XXXXX___,________,XXXXXXX_,________,
+ _____XXX,XXXXX___,________,XXXXXXXX,________,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XX______,________,___XXXXX,X_______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ____XXXX,XX______,________,___XXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ _____XXX,XXXXX___,________,XXXXXXXX,________,
+ ______XX,XXXXX___,________,XXXXXXX_,________,
+ ______XX,XXXXXX__,_______X,XXXXXXX_,________,
+ _______X,XXXXXXXX,_____XXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXX_____,________,
+ ________,____XXXX,XXXXXXXX,X_______,________,
+ ________,_______X,XXXXXX__,________,________},
+
+{
+ ________,________,_XXXXXX_,________,________,
+ ________,________,_XXXXXX_,________,________,
+ ________,________,XXXXXXX_,________,________,
+ ________,________,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,______XX,XXXXXXX_,________,________,
+ ________,_____XXX,XXXXXXX_,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,
+ ________,_XXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXX_,________,________},
+
+{
+ ________,________,XXXXXXXX,________,________,
+ ________,____XXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXX____,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,______XX,XXXXXXXX,________,
+ ______XX,XXXXXX__,________,XXXXXXXX,X_______,
+ ______XX,XXXXX___,________,_XXXXXXX,X_______,
+ _____XXX,XXXXX___,________,__XXXXXX,X_______,
+ _____XXX,XXXX____,________,__XXXXXX,XX______,
+ _____XXX,XXXX____,________,___XXXXX,XX______,
+ _____XXX,XXXX____,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,_XXXXXXX,X_______,
+ ________,________,________,XXXXXXXX,________,
+ ________,________,________,XXXXXXXX,________,
+ ________,________,_______X,XXXXXXX_,________,
+ ________,________,_____XXX,XXXXXXX_,________,
+ ________,________,____XXXX,XXXXXX__,________,
+ ________,________,__XXXXXX,XXXXX___,________,
+ ________,________,_XXXXXXX,XXXX____,________,
+ ________,________,XXXXXXXX,XXX_____,________,
+ ________,______XX,XXXXXXXX,X_______,________,
+ ________,_____XXX,XXXXXXXX,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,
+ ________,__XXXXXX,XXXXX___,________,________,
+ ________,_XXXXXXX,XXXX____,________,________,
+ ________,XXXXXXXX,XX______,________,________,
+ ________,XXXXXXXX,X_______,________,________,
+ _______X,XXXXXXX_,________,________,________,
+ ______XX,XXXXXX__,________,________,________,
+ ______XX,XXXXX___,________,________,________,
+ _____XXX,XXXX____,________,________,________,
+ _____XXX,XXXX____,________,________,________,
+ ____XXXX,XXX_____,________,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______},
+
+{
+ ________,______XX,XXXXXX__,________,________,
+ ________,___XXXXX,XXXXXXXX,X_______,________,
+ ________,_XXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXX_,_____XXX,XXXXXXX_,________,
+ _____XXX,XXXXX___,_______X,XXXXXXX_,________,
+ _____XXX,XXXX____,________,XXXXXXX_,________,
+ ____XXXX,XXXX____,________,XXXXXXXX,________,
+ ____XXXX,XXX_____,________,_XXXXXXX,________,
+ ____XXXX,XXX_____,________,_XXXXXXX,________,
+ ___XXXXX,XX______,________,_XXXXXXX,________,
+ ___XXXXX,XX______,________,_XXXXXXX,________,
+ ___XXXXX,XX______,________,_XXXXXXX,________,
+ ________,________,________,XXXXXXX_,________,
+ ________,________,________,XXXXXXX_,________,
+ ________,________,_______X,XXXXXXX_,________,
+ ________,________,______XX,XXXXXX__,________,
+ ________,________,___XXXXX,XXXXX___,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,
+ ________,_______X,XXXXXXXX,XXX_____,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,
+ ________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,_______X,XXXXXXXX,XXXXXXX_,________,
+ ________,________,_____XXX,XXXXXXXX,________,
+ ________,________,________,XXXXXXXX,________,
+ ________,________,________,_XXXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,__XXXXXX,XX______,
+ ___XXXXX,XXX_____,________,_XXXXXXX,X_______,
+ ___XXXXX,XXX_____,________,_XXXXXXX,X_______,
+ ____XXXX,XXXX____,_______X,XXXXXXXX,________,
+ ____XXXX,XXXXXXX_,______XX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,______XX,XXXXXX__,________,________},
+
+{
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,____XXXX,XXXX____,________,
+ ________,________,___XXXXX,XXXX____,________,
+ ________,________,___XXXXX,XXXX____,________,
+ ________,________,__XXXXXX,XXXX____,________,
+ ________,________,_XXXXXXX,XXXX____,________,
+ ________,________,_XXXXXXX,XXXX____,________,
+ ________,________,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,
+ ________,______XX,XXXX_XXX,XXXX____,________,
+ ________,_____XXX,XXX__XXX,XXXX____,________,
+ ________,____XXXX,XXX__XXX,XXXX____,________,
+ ________,____XXXX,XX___XXX,XXXX____,________,
+ ________,___XXXXX,X____XXX,XXXX____,________,
+ ________,__XXXXXX,X____XXX,XXXX____,________,
+ ________,__XXXXXX,_____XXX,XXXX____,________,
+ ________,_XXXXXX_,_____XXX,XXXX____,________,
+ ________,XXXXXXX_,_____XXX,XXXX____,________,
+ ________,XXXXXX__,_____XXX,XXXX____,________,
+ _______X,XXXXX___,_____XXX,XXXX____,________,
+ ______XX,XXXXX___,_____XXX,XXXX____,________,
+ ______XX,XXXX____,_____XXX,XXXX____,________,
+ _____XXX,XXX_____,_____XXX,XXXX____,________,
+ ____XXXX,XXX_____,_____XXX,XXXX____,________,
+ ___XXXXX,XX______,_____XXX,XXXX____,________,
+ ___XXXXX,XX______,_____XXX,XXXX____,________,
+ __XXXXXX,X_______,_____XXX,XXXX____,________,
+ _XXXXXXX,________,_____XXX,XXXX____,________,
+ _XXXXXXX,________,_____XXX,XXXX____,________,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXXX____,________},
+
+{
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ _______X,XXXXXX__,________,________,________,
+ _______X,XXXXXX__,________,________,________,
+ _______X,XXXXX___,________,________,________,
+ _______X,XXXXX___,________,________,________,
+ ______XX,XXXXX___,________,________,________,
+ ______XX,XXXXX___,________,________,________,
+ ______XX,XXXXX___,________,________,________,
+ ______XX,XXXX____,________,________,________,
+ ______XX,XXXX____,________,________,________,
+ ______XX,XXXX____,_XXXXXXX,________,________,
+ _____XXX,XXXX__XX,XXXXXXXX,XXX_____,________,
+ _____XXX,XXXX_XXX,XXXXXXXX,XXXX____,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ____XXXX,XXXXXXX_,_____XXX,XXXXXXXX,________,
+ ____XXXX,XXXXX___,_______X,XXXXXXXX,________,
+ ____XXXX,XXXX____,________,_XXXXXXX,X_______,
+ ____XXXX,XXX_____,________,_XXXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ________,________,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XXX_____,________,__XXXXXX,X_______,
+ ___XXXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,_XXXXXXX,X_______,
+ ____XXXX,XXXX____,________,_XXXXXXX,________,
+ _____XXX,XXXXX___,________,XXXXXXXX,________,
+ _____XXX,XXXXXXX_,______XX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XX______,________,
+ ________,______XX,XXXXXXX_,________,________},
+
+{
+ ________,________,XXXXXXX_,________,________,
+ ________,_____XXX,XXXXXXXX,XX______,________,
+ ________,___XXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,______XX,XXXXXXX_,________,
+ ______XX,XXXXXX__,________,XXXXXXXX,________,
+ _____XXX,XXXXX___,________,_XXXXXXX,________,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ ____XXXX,XXXX____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,________,________,
+ ___XXXXX,XXX_____,________,________,________,
+ ___XXXXX,XX______,________,________,________,
+ ___XXXXX,XX______,________,________,________,
+ ___XXXXX,XX______,________,________,________,
+ ___XXXXX,XX______,XXXXXXX_,________,________,
+ __XXXXXX,XX____XX,XXXXXXXX,XX______,________,
+ __XXXXXX,XX__XXXX,XXXXXXXX,XXXX____,________,
+ __XXXXXX,X__XXXXX,XXXXXXXX,XXXXX___,________,
+ __XXXXXX,X_XXXXXX,XXXXXXXX,XXXXXX__,________,
+ __XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ __XXXXXX,XXXXXXX_,______XX,XXXXXXXX,________,
+ __XXXXXX,XXXXXX__,________,XXXXXXXX,________,
+ __XXXXXX,XXXX____,________,_XXXXXXX,X_______,
+ __XXXXXX,XXXX____,________,_XXXXXXX,X_______,
+ __XXXXXX,XXX_____,________,__XXXXXX,X_______,
+ __XXXXXX,XXX_____,________,__XXXXXX,XX______,
+ __XXXXXX,XX______,________,___XXXXX,XX______,
+ __XXXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,___XXXXX,XX______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXXX____,________,_XXXXXXX,X_______,
+ _____XXX,XXXXX___,________,_XXXXXXX,X_______,
+ _____XXX,XXXXXX__,_______X,XXXXXXXX,________,
+ ______XX,XXXXXXXX,______XX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXXXXXXX,XXXX____,________,
+ ________,____XXXX,XXXXXXXX,XX______,________,
+ ________,______XX,XXXXXXX_,________,________},
+
+{
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,_XXXXXXX,________,
+ ________,________,________,XXXXXXX_,________,
+ ________,________,________,XXXXXX__,________,
+ ________,________,_______X,XXXXXX__,________,
+ ________,________,______XX,XXXXX___,________,
+ ________,________,_____XXX,XXXX____,________,
+ ________,________,_____XXX,XXX_____,________,
+ ________,________,____XXXX,XXX_____,________,
+ ________,________,___XXXXX,XX______,________,
+ ________,________,___XXXXX,XX______,________,
+ ________,________,__XXXXXX,X_______,________,
+ ________,________,__XXXXXX,________,________,
+ ________,________,_XXXXXXX,________,________,
+ ________,________,XXXXXXX_,________,________,
+ ________,________,XXXXXXX_,________,________,
+ ________,________,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,______XX,XXXXX___,________,________,
+ ________,______XX,XXXXX___,________,________,
+ ________,_____XXX,XXXXX___,________,________,
+ ________,_____XXX,XXXX____,________,________,
+ ________,_____XXX,XXXX____,________,________,
+ ________,____XXXX,XXXX____,________,________,
+ ________,____XXXX,XXX_____,________,________,
+ ________,____XXXX,XXX_____,________,________,
+ ________,___XXXXX,XXX_____,________,________,
+ ________,___XXXXX,XXX_____,________,________,
+ ________,___XXXXX,XX______,________,________,
+ ________,___XXXXX,XX______,________,________,
+ ________,__XXXXXX,XX______,________,________,
+ ________,__XXXXXX,XX______,________,________,
+ ________,__XXXXXX,XX______,________,________,
+ ________,__XXXXXX,XX______,________,________,
+ ________,__XXXXXX,X_______,________,________,
+ ________,_XXXXXXX,X_______,________,________,
+ ________,_XXXXXXX,X_______,________,________,
+ ________,_XXXXXXX,X_______,________,________,
+ ________,_XXXXXXX,X_______,________,________,
+ ________,_XXXXXXX,X_______,________,________},
+
+{
+ ________,______XX,XXXXXXX_,________,________,
+ ________,___XXXXX,XXXXXXXX,XX______,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXX_,______XX,XXXXXXXX,________,
+ _____XXX,XXXXXX__,_______X,XXXXXXXX,________,
+ _____XXX,XXXXX___,________,XXXXXXXX,________,
+ ____XXXX,XXXX____,________,_XXXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ ____XXXX,XXX_____,________,__XXXXXX,X_______,
+ _____XXX,XXXX____,________,_XXXXXXX,________,
+ _____XXX,XXXXX___,________,XXXXXXXX,________,
+ ______XX,XXXXXX__,_______X,XXXXXXX_,________,
+ _______X,XXXXXXX_,______XX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXXXXXXX,XXX_____,________,
+ ________,_XXXXXXX,XXXXXXXX,XXX_____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ____XXXX,XXXXXX__,______XX,XXXXXXXX,________,
+ ____XXXX,XXXX____,_______X,XXXXXXXX,X_______,
+ ___XXXXX,XXX_____,________,_XXXXXXX,X_______,
+ ___XXXXX,XX______,________,__XXXXXX,X_______,
+ __XXXXXX,XX______,________,__XXXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ __XXXXXX,X_______,________,___XXXXX,XX______,
+ ___XXXXX,XX______,________,__XXXXXX,X_______,
+ ___XXXXX,XXX_____,________,_XXXXXXX,X_______,
+ ___XXXXX,XXX_____,________,_XXXXXXX,X_______,
+ ____XXXX,XXXXX___,_______X,XXXXXXXX,________,
+ ____XXXX,XXXXXXX_,______XX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,______XX,XXXXXX__,________,________},
+
+{
+ ________,______XX,XXXXXX__,________,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,________,
+ ________,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ____XXXX,XXXXXX__,____XXXX,XXXXXX__,________,
+ ____XXXX,XXXX____,______XX,XXXXXXX_,________,
+ ___XXXXX,XXX_____,________,XXXXXXX_,________,
+ ___XXXXX,XXX_____,________,XXXXXXXX,________,
+ ___XXXXX,XX______,________,_XXXXXXX,________,
+ __XXXXXX,XX______,________,_XXXXXXX,________,
+ __XXXXXX,X_______,________,__XXXXXX,X_______,
+ __XXXXXX,X_______,________,__XXXXXX,X_______,
+ __XXXXXX,X_______,________,__XXXXXX,X_______,
+ __XXXXXX,X_______,________,__XXXXXX,X_______,
+ __XXXXXX,X_______,________,__XXXXXX,X_______,
+ __XXXXXX,X_______,________,__XXXXXX,XX______,
+ __XXXXXX,X_______,________,__XXXXXX,XX______,
+ __XXXXXX,XX______,________,_XXXXXXX,XX______,
+ ___XXXXX,XX______,________,_XXXXXXX,XX______,
+ ___XXXXX,XXX_____,________,XXXXXXXX,XX______,
+ ___XXXXX,XXX_____,________,XXXXXXXX,XX______,
+ ____XXXX,XXXX____,______XX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXX__,____XXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXXXXXX,XX_XXXXX,XX______,
+ _______X,XXXXXXXX,XXXXXXXX,X__XXXXX,XX______,
+ ________,XXXXXXXX,XXXXXXXX,__XXXXXX,XX______,
+ ________,__XXXXXX,XXXXXX__,__XXXXXX,XX______,
+ ________,_____XXX,XXXX____,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,__XXXXXX,X_______,
+ ________,________,________,_XXXXXXX,X_______,
+ ________,________,________,_XXXXXXX,________,
+ ___XXXXX,XX______,________,_XXXXXXX,________,
+ ___XXXXX,XX______,________,XXXXXXX_,________,
+ ___XXXXX,XXX_____,________,XXXXXXX_,________,
+ ____XXXX,XXX_____,_______X,XXXXXXX_,________,
+ ____XXXX,XXXX____,______XX,XXXXXX__,________,
+ _____XXX,XXXXXX__,____XXXX,XXXXX___,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,__XXXXXX,XXXXXXX_,________,________,
+ ________,_____XXX,XXXX____,________,________},
+
+{
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,_______X,XXXXXX__,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________},
+
+{
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________,
+ ________,________,________,________,________}
+};
+
+GUI_CONST_STORAGE unsigned char acFontD48_0020[144] = { /* code 0020 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontD48_002E[144] = { /* code 002E */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontD48_003A[144] = { /* code 003A */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_FontD48_CharInfo[15] = {
+ { 18, 18, 3, acFontD48_0020 } /* code 0020 ' ' */
+ ,{ 37, 37, 5, acFontD48[10] } /* code 002B '+' */
+ ,{ 37, 37, 5, acFontD48[11] } /* code 002D '-' */
+ ,{ 18, 18, 3, acFontD48_002E } /* code 002E '.' */
+ ,{ 37, 37, 5, acFontD48[0] } /* code 0030 '0' */
+ ,{ 37, 37, 5, acFontD48[1] } /* code 0031 '1' */
+ ,{ 37, 37, 5, acFontD48[2] } /* code 0032 '2' */
+ ,{ 37, 37, 5, acFontD48[3] } /* code 0033 '3' */
+ ,{ 37, 37, 5, acFontD48[4] } /* code 0034 '4' */
+ ,{ 37, 37, 5, acFontD48[5] } /* code 0035 '5' */
+ ,{ 37, 37, 5, acFontD48[6] } /* code 0036 '6' */
+ ,{ 37, 37, 5, acFontD48[7] } /* code 0037 '7' */
+ ,{ 37, 37, 5, acFontD48[8] } /* code 0038 '8' */
+ ,{ 37, 37, 5, acFontD48[9] } /* code 0039 '9' */
+ ,{ 18, 18, 3, acFontD48_003A } /* code 003A ':' */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD48_Prop4 = {
+ 0x0030 /* first character */
+ ,0x003A /* last character */
+ ,&GUI_FontD48_CharInfo[ 4] /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD48_Prop3 = {
+ 0x002D /* first character */
+ ,0x002E /* last character */
+ ,&GUI_FontD48_CharInfo[ 2] /* address of first character */
+ ,&GUI_FontD48_Prop4 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD48_Prop2 = {
+ 0x002B /* first character */
+ ,0x002B /* last character */
+ ,&GUI_FontD48_CharInfo[ 1] /* address of first character */
+ ,&GUI_FontD48_Prop3 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD48_Prop1 = {
+ 0x0020 /* first character */
+ ,0x0020 /* last character */
+ ,&GUI_FontD48_CharInfo[ 0] /* address of first character */
+ ,&GUI_FontD48_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontD48 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,48 /* height of font */
+ ,48 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontD48_Prop1}
+ ,48 /* Baseline */
+ ,0 /* LHeight */
+ ,48 /* CHeight */
+};
+
diff --git a/User/lib/lcd/gui/Font/FD48x64.c b/User/lib/lcd/gui/Font/FD48x64.c
new file mode 100644
index 0000000..223739a
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FD48x64.c
@@ -0,0 +1,1072 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FD64.C
+Purpose : Implementation of the non-proportional 48 by 64 pixel digit font
+Height : 64
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFontD48x64[15][384] = {
+{
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,_XXXXXXX,XXXXX___,____XXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXX____,_____XXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XX______,_______X,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,X_______,________,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,X_______,________,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXX___,________,________,____XXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXX___,________,________,____XXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,X_______,________,XXXXXXXX,XXX_____,
+ _______X,XXXXXXXX,X_______,________,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XX______,_______X,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXX____,_____XXX,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,________,_XXXXXXX,XXXXXXXX,________,________,
+ ________,________,____XXXX,XXXXX___,________,________},
+
+{
+ ________,________,_______X,XXXXXXX_,________,________,
+ ________,________,_______X,XXXXXXX_,________,________,
+ ________,________,_______X,XXXXXXX_,________,________,
+ ________,________,______XX,XXXXXXX_,________,________,
+ ________,________,______XX,XXXXXXX_,________,________,
+ ________,________,_____XXX,XXXXXXX_,________,________,
+ ________,________,_____XXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,___XXXXX,XXXXXXX_,________,________,
+ ________,________,_XXXXXXX,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXX_,________,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________},
+
+{
+ ________,________,_____XXX,XXXXXX__,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,_XXXXXXX,XXXXXX__,_____XXX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXX____,_______X,XXXXXXXX,XXX_____,
+ ________,XXXXXXXX,XXX_____,________,XXXXXXXX,XXX_____,
+ _______X,XXXXXXXX,XX______,________,_XXXXXXX,XXXX____,
+ _______X,XXXXXXXX,X_______,________,__XXXXXX,XXXX____,
+ _______X,XXXXXXXX,X_______,________,__XXXXXX,XXXX____,
+ ______XX,XXXXXXXX,________,________,__XXXXXX,XXXX____,
+ ______XX,XXXXXXXX,________,________,___XXXXX,XXXXX___,
+ ______XX,XXXXXXXX,________,________,___XXXXX,XXXXX___,
+ ______XX,XXXXXXXX,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ ________,________,________,________,__XXXXXX,XXXX____,
+ ________,________,________,________,_XXXXXXX,XXXX____,
+ ________,________,________,________,_XXXXXXX,XXX_____,
+ ________,________,________,________,XXXXXXXX,XXX_____,
+ ________,________,________,_______X,XXXXXXXX,XX______,
+ ________,________,________,______XX,XXXXXXXX,XX______,
+ ________,________,________,_____XXX,XXXXXXXX,X_______,
+ ________,________,________,____XXXX,XXXXXXXX,________,
+ ________,________,________,___XXXXX,XXXXXXX_,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,________,_______X,XXXXXXXX,XXXXX___,________,
+ ________,________,_____XXX,XXXXXXXX,XXX_____,________,
+ ________,________,____XXXX,XXXXXXXX,XX______,________,
+ ________,________,___XXXXX,XXXXXXXX,X_______,________,
+ ________,________,_XXXXXXX,XXXXXXXX,________,________,
+ ________,________,XXXXXXXX,XXXXXX__,________,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,________,
+ ________,______XX,XXXXXXXX,XXXX____,________,________,
+ ________,____XXXX,XXXXXXXX,XX______,________,________,
+ ________,___XXXXX,XXXXXXXX,X_______,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,________,
+ ________,__XXXXXX,XXXXXX__,________,________,________,
+ ________,_XXXXXXX,XXXXX___,________,________,________,
+ ________,XXXXXXXX,XXXX____,________,________,________,
+ ________,XXXXXXXX,XXX_____,________,________,________,
+ _______X,XXXXXXXX,XX______,________,________,________,
+ _______X,XXXXXXXX,X_______,________,________,________,
+ ______XX,XXXXXXXX,________,________,________,________,
+ ______XX,XXXXXXXX,________,________,________,________,
+ _____XXX,XXXXXXXX,________,________,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___},
+
+{
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XXX_____,______XX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XX______,_______X,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,X_______,________,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,_XXXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXX_____,
+ ________,________,________,________,_XXXXXXX,XXX_____,
+ ________,________,________,________,_XXXXXXX,XXX_____,
+ ________,________,________,________,XXXXXXXX,XX______,
+ ________,________,________,________,XXXXXXXX,XX______,
+ ________,________,________,______XX,XXXXXXXX,X_______,
+ ________,________,________,_____XXX,XXXXXXXX,X_______,
+ ________,________,________,__XXXXXX,XXXXXXX_,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXX__,________,
+ ________,________,____XXXX,XXXXXXXX,XXXX____,________,
+ ________,________,____XXXX,XXXXXXXX,XXXX____,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,________,________,____XXXX,XXXXXXXX,XXX_____,
+ ________,________,________,_______X,XXXXXXXX,XXXX____,
+ ________,________,________,________,_XXXXXXX,XXXX____,
+ ________,________,________,________,__XXXXXX,XXXXX___,
+ ________,________,________,________,__XXXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXXX___,
+ _____XXX,XXXXXXXX,________,________,_XXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,X_______,________,XXXXXXXX,XXXX____,
+ ______XX,XXXXXXXX,XX______,_______X,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XXX_____,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,________,___XXXXX,XXXXX___,________,________},
+
+{
+ ________,________,________,______XX,XXXXXX__,________,
+ ________,________,________,______XX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,____XXXX,XXXXXX__,________,
+ ________,________,________,___XXXXX,XXXXXX__,________,
+ ________,________,________,___XXXXX,XXXXXX__,________,
+ ________,________,________,__XXXXXX,XXXXXX__,________,
+ ________,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,________,______XX,XXXXXXXX,XXXXXX__,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXX__,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXX__,________,
+ ________,________,____XXXX,XXXX_XXX,XXXXXX__,________,
+ ________,________,___XXXXX,XXXX_XXX,XXXXXX__,________,
+ ________,________,___XXXXX,XXX__XXX,XXXXXX__,________,
+ ________,________,__XXXXXX,XX___XXX,XXXXXX__,________,
+ ________,________,_XXXXXXX,XX___XXX,XXXXXX__,________,
+ ________,________,XXXXXXXX,X____XXX,XXXXXX__,________,
+ ________,________,XXXXXXXX,_____XXX,XXXXXX__,________,
+ ________,_______X,XXXXXXX_,_____XXX,XXXXXX__,________,
+ ________,______XX,XXXXXXX_,_____XXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXX__,_____XXX,XXXXXX__,________,
+ ________,_____XXX,XXXXX___,_____XXX,XXXXXX__,________,
+ ________,____XXXX,XXXXX___,_____XXX,XXXXXX__,________,
+ ________,___XXXXX,XXXX____,_____XXX,XXXXXX__,________,
+ ________,__XXXXXX,XXX_____,_____XXX,XXXXXX__,________,
+ ________,__XXXXXX,XXX_____,_____XXX,XXXXXX__,________,
+ ________,_XXXXXXX,XX______,_____XXX,XXXXXX__,________,
+ ________,XXXXXXXX,X_______,_____XXX,XXXXXX__,________,
+ ________,XXXXXXXX,________,_____XXX,XXXXXX__,________,
+ _______X,XXXXXXXX,________,_____XXX,XXXXXX__,________,
+ ______XX,XXXXXXX_,________,_____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,_____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,_____XXX,XXXXXX__,________,
+ ____XXXX,XXXXX___,________,_____XXX,XXXXXX__,________,
+ ___XXXXX,XXXX____,________,_____XXX,XXXXXX__,________,
+ ___XXXXX,XXXX____,________,_____XXX,XXXXXX__,________,
+ ___XXXXX,XXX_____,________,_____XXX,XXXXXX__,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________},
+
+{
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,_XXXXXXX,XX______,________,________,________,
+ ________,_XXXXXXX,XX______,________,________,________,
+ ________,_XXXXXXX,XX______,________,________,________,
+ ________,_XXXXXXX,XX______,________,________,________,
+ ________,XXXXXXXX,XX______,________,________,________,
+ ________,XXXXXXXX,X_______,________,________,________,
+ ________,XXXXXXXX,X_______,________,________,________,
+ ________,XXXXXXXX,X_______,________,________,________,
+ ________,XXXXXXXX,X_______,________,________,________,
+ _______X,XXXXXXXX,X_______,________,________,________,
+ _______X,XXXXXXXX,________,________,________,________,
+ _______X,XXXXXXXX,________,________,________,________,
+ _______X,XXXXXXXX,_______X,XXXXXXX_,________,________,
+ _______X,XXXXXXXX,____XXXX,XXXXXXXX,XX______,________,
+ ______XX,XXXXXXX_,__XXXXXX,XXXXXXXX,XXXX____,________,
+ ______XX,XXXXXXX_,_XXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XXXX____,____XXXX,XXXXXXXX,XXX_____,
+ _____XXX,XXXXXXXX,XX______,______XX,XXXXXXXX,XXX_____,
+ _____XXX,XXXXXXXX,________,________,XXXXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,_XXXXXXX,XXXX____,
+ ____XXXX,XXXXXXX_,________,________,__XXXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,________,________,_XXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,X_______,________,XXXXXXXX,XXX_____,
+ _____XXX,XXXXXXXX,XX______,_______X,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,________,____XXXX,XXXXX___,________,________},
+
+{
+ ________,________,______XX,XXXXXXX_,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,__XXXXXX,XXXXXX__,_____XXX,XXXXXXXX,XX______,
+ ________,_XXXXXXX,XXXXX___,_______X,XXXXXXXX,XXX_____,
+ ________,XXXXXXXX,XXX_____,________,XXXXXXXX,XXX_____,
+ ________,XXXXXXXX,XX______,________,_XXXXXXX,XXXX____,
+ _______X,XXXXXXXX,X_______,________,__XXXXXX,XXXX____,
+ _______X,XXXXXXXX,X_______,________,__XXXXXX,XXXX____,
+ ______XX,XXXXXXXX,________,________,___XXXXX,XXXXX___,
+ ______XX,XXXXXXXX,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,________,___XX___,
+ _____XXX,XXXXXXX_,________,________,________,________,
+ _____XXX,XXXXXXX_,________,________,________,________,
+ _____XXX,XXXXXX__,________,________,________,________,
+ ____XXXX,XXXXXX__,________,________,________,________,
+ ____XXXX,XXXXXX__,________,________,________,________,
+ ____XXXX,XXXXXX__,________,________,________,________,
+ ____XXXX,XXXXXX__,_______X,XXXXXXX_,________,________,
+ ____XXXX,XXXXXX__,____XXXX,XXXXXXXX,XX______,________,
+ ___XXXXX,XXXXX___,__XXXXXX,XXXXXXXX,XXXX____,________,
+ ___XXXXX,XXXXX___,_XXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ___XXXXX,XXXXX__X,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXX__X,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ___XXXXX,XXXXX_XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXX__,_____XXX,XXXXXXXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XXX_____,_______X,XXXXXXXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XX______,________,XXXXXXXX,XXXX____,
+ ___XXXXX,XXXXXXXX,X_______,________,_XXXXXXX,XXXX____,
+ ___XXXXX,XXXXXXXX,________,________,__XXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,________,________,__XXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ _____XXX,XXXXXXX_,________,________,____XXXX,XXXXXX__,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ ______XX,XXXXXXXX,________,________,__XXXXXX,XXXXX___,
+ ______XX,XXXXXXXX,________,________,__XXXXXX,XXXXX___,
+ ______XX,XXXXXXXX,X_______,________,_XXXXXXX,XXXX____,
+ _______X,XXXXXXXX,XX______,________,XXXXXXXX,XXXX____,
+ _______X,XXXXXXXX,XXX_____,_______X,XXXXXXXX,XXX_____,
+ ________,XXXXXXXX,XXXXXX__,_____XXX,XXXXXXXX,XX______,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XX______,________,
+ ________,________,_____XXX,XXXXXX__,________,________},
+
+{
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,__XXXXXX,XXXX____,
+ ________,________,________,________,__XXXXXX,XXXX____,
+ ________,________,________,________,_XXXXXXX,XXX_____,
+ ________,________,________,________,_XXXXXXX,XX______,
+ ________,________,________,________,XXXXXXXX,X_______,
+ ________,________,________,_______X,XXXXXXXX,________,
+ ________,________,________,______XX,XXXXXXXX,________,
+ ________,________,________,_____XXX,XXXXXXX_,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,____XXXX,XXXXX___,________,
+ ________,________,________,___XXXXX,XXXXX___,________,
+ ________,________,________,__XXXXXX,XXXX____,________,
+ ________,________,________,__XXXXXX,XXX_____,________,
+ ________,________,________,_XXXXXXX,XXX_____,________,
+ ________,________,________,XXXXXXXX,XX______,________,
+ ________,________,________,XXXXXXXX,X_______,________,
+ ________,________,_______X,XXXXXXXX,X_______,________,
+ ________,________,_______X,XXXXXXXX,________,________,
+ ________,________,______XX,XXXXXXXX,________,________,
+ ________,________,_____XXX,XXXXXXX_,________,________,
+ ________,________,_____XXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXX__,________,________,
+ ________,________,____XXXX,XXXXXX__,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,__XXXXXX,XXXX____,________,________,
+ ________,________,__XXXXXX,XXXX____,________,________,
+ ________,________,__XXXXXX,XXXX____,________,________,
+ ________,________,_XXXXXXX,XXX_____,________,________,
+ ________,________,_XXXXXXX,XXX_____,________,________,
+ ________,________,XXXXXXXX,XX______,________,________,
+ ________,________,XXXXXXXX,XX______,________,________,
+ ________,________,XXXXXXXX,XX______,________,________,
+ ________,_______X,XXXXXXXX,XX______,________,________,
+ ________,_______X,XXXXXXXX,X_______,________,________,
+ ________,_______X,XXXXXXXX,X_______,________,________,
+ ________,______XX,XXXXXXXX,X_______,________,________,
+ ________,______XX,XXXXXXXX,________,________,________,
+ ________,______XX,XXXXXXXX,________,________,________,
+ ________,_____XXX,XXXXXXXX,________,________,________,
+ ________,_____XXX,XXXXXXXX,________,________,________,
+ ________,_____XXX,XXXXXXXX,________,________,________,
+ ________,_____XXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXX__,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________},
+
+{
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXX_____,______XX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XX______,_______X,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,X_______,________,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ _______X,XXXXXXX_,________,________,__XXXXXX,XX______,
+ _______X,XXXXXXXX,________,________,_XXXXXXX,XX______,
+ _______X,XXXXXXXX,________,________,_XXXXXXX,XX______,
+ ________,XXXXXXXX,X_______,________,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XX______,_______X,XXXXXXXX,X_______,
+ ________,_XXXXXXX,XXX_____,______XX,XXXXXXXX,________,
+ ________,__XXXXXX,XXXXX___,____XXXX,XXXXXXX_,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XXX_____,
+ _____XXX,XXXXXXXX,XX______,_______X,XXXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,X_______,________,XXXXXXXX,XXXX____,
+ ____XXXX,XXXXXXXX,________,________,_XXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXX_,________,________,__XXXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXXX__,________,________,___XXXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXXX_,________,________,__XXXXXX,XXXXX___,
+ _____XXX,XXXXXXXX,________,________,_XXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,X_______,________,XXXXXXXX,XXXX____,
+ ______XX,XXXXXXXX,XX______,_______X,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XXX_____,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,________,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,________,____XXXX,XXXXX___,________,________},
+
+{
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,___XXXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XX______,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,X_______,_______X,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,________,________,XXXXXXXX,XXX_____,
+ ____XXXX,XXXXXXX_,________,________,_XXXXXXX,XXX_____,
+ ____XXXX,XXXXXXX_,________,________,_XXXXXXX,XXX_____,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ___XXXXX,XXXXX___,________,________,__XXXXXX,XXXX____,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXXX__,
+ ___XXXXX,XXXXXX__,________,________,__XXXXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXXXX__,
+ ____XXXX,XXXXXXX_,________,________,_XXXXXXX,XXXXXX__,
+ ____XXXX,XXXXXXX_,________,________,_XXXXXXX,XXXXXX__,
+ _____XXX,XXXXXXXX,________,________,XXXXXXXX,XXXXXX__,
+ _____XXX,XXXXXXXX,X_______,_______X,XXXXXXXX,XXXXXX__,
+ ______XX,XXXXXXXX,XX______,_____XXX,XXXXXXXX,XXXXXX__,
+ ______XX,XXXXXXXX,XXXX____,___XXXXX,XXXXXXXX,XXXXXX__,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_XXXX,XXXXXX__,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XX__XXXX,XXXXXX__,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XX__XXXX,XXXXXX__,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,____XXXX,XXXXXX__,
+ ________,_____XXX,XXXXXXXX,XXXXXXX_,____XXXX,XXXXX___,
+ ________,_______X,XXXXXXXX,XXXXX___,___XXXXX,XXXXX___,
+ ________,________,__XXXXXX,XX______,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXX____,
+ ________,________,________,________,__XXXXXX,XXXX____,
+ ________,________,________,________,__XXXXXX,XXXX____,
+ ____XX__,________,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,_XXXXXXX,XXX_____,
+ ____XXXX,XXXXXX__,________,________,_XXXXXXX,XXX_____,
+ _____XXX,XXXXXXX_,________,________,XXXXXXXX,XX______,
+ _____XXX,XXXXXXX_,________,________,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,________,_______X,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,X_______,______XX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XX______,_____XXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,_______X,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,__XXXXXX,XXX_____,________,________},
+
+{
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________},
+
+{
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________},
+
+{
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________},
+
+{
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,________,________,________,________},
+
+{
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,________,________,________,________}
+};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_FontD48x64_CharInfo[15] = {
+ { 48, 48, 6, acFontD48x64[12] } /* code 0020 ' ' */
+ ,{ 48, 48, 6, acFontD48x64[10] } /* code 002B '+' */
+ ,{ 48, 48, 6, acFontD48x64[11] } /* code 002D '-' */
+ ,{ 48, 48, 6, acFontD48x64[13] } /* code 002E '.' */
+ ,{ 48, 48, 6, acFontD48x64[0] } /* code 0030 '0' */
+ ,{ 48, 48, 6, acFontD48x64[1] } /* code 0031 '1' */
+ ,{ 48, 48, 6, acFontD48x64[2] } /* code 0032 '2' */
+ ,{ 48, 48, 6, acFontD48x64[3] } /* code 0033 '3' */
+ ,{ 48, 48, 6, acFontD48x64[4] } /* code 0034 '4' */
+ ,{ 48, 48, 6, acFontD48x64[5] } /* code 0035 '5' */
+ ,{ 48, 48, 6, acFontD48x64[6] } /* code 0036 '6' */
+ ,{ 48, 48, 6, acFontD48x64[7] } /* code 0037 '7' */
+ ,{ 48, 48, 6, acFontD48x64[8] } /* code 0038 '8' */
+ ,{ 48, 48, 6, acFontD48x64[9] } /* code 0039 '9' */
+ ,{ 48, 48, 6, acFontD48x64[14] } /* code 003A ':' */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD48x64_Prop4 = {
+ 0x0030 /* first character */
+ ,0x003A /* last character */
+ ,&GUI_FontD48x64_CharInfo[ 4] /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD48x64_Prop3 = {
+ 0x002D /* first character */
+ ,0x002E /* last character */
+ ,&GUI_FontD48x64_CharInfo[ 2] /* address of first character */
+ ,&GUI_FontD48x64_Prop4 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD48x64_Prop2 = {
+ 0x002B /* first character */
+ ,0x002B /* last character */
+ ,&GUI_FontD48x64_CharInfo[ 1] /* address of first character */
+ ,&GUI_FontD48x64_Prop3 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD48x64_Prop1 = {
+ 0x0020 /* first character */
+ ,0x0020 /* last character */
+ ,&GUI_FontD48x64_CharInfo[ 0] /* address of first character */
+ ,&GUI_FontD48x64_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontD48x64 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,64 /* height of font */
+ ,64 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontD48x64_Prop1}
+ ,64 /* Baseline */
+ ,0 /* LHeight */
+ ,64 /* CHeight */
+};
+
diff --git a/User/lib/lcd/gui/Font/FD60x80.c b/User/lib/lcd/gui/Font/FD60x80.c
new file mode 100644
index 0000000..61ef002
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FD60x80.c
@@ -0,0 +1,1313 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FD80.C
+Purpose : Implementation of the non-proportional 61 by 80 pixel digit font
+Height : 80
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFontD60x80[15][640] = {
+{
+ ________,________,________,__XXXXXX,XXX_____,________,________,________,
+ ________,________,______XX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,___XXXXX,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,___XXXXX,XXXXXXXX,XXX_____,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,____XXXX,XXXXXXXX,XXX_____,________,
+ ________,__XXXXXX,XXXXXXXX,________,_____XXX,XXXXXXXX,XXX_____,________,
+ ________,_XXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXX____,________,
+ ________,_XXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXX____,________,
+ ________,_XXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,________,_____XXX,XXXXXXXX,XXX_____,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,____XXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXX_____,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,___XXXXX,XXXXXXXX,XXXXXXXX,XX______,________,________,
+ ________,________,______XX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,__XXXXXX,XXX_____,________,________,________},
+
+{
+ ________,________,________,_____XXX,XXXXXXX_,________,________,________,
+ ________,________,________,_____XXX,XXXXXXX_,________,________,________,
+ ________,________,________,_____XXX,XXXXXXX_,________,________,________,
+ ________,________,________,____XXXX,XXXXXXX_,________,________,________,
+ ________,________,________,____XXXX,XXXXXXX_,________,________,________,
+ ________,________,________,___XXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,___XXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,__XXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,_______X,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,______XX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________},
+
+{
+ ________,________,________,___XXXXX,XXXXX___,________,________,________,
+ ________,________,_______X,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XXX_____,___XXXXX,XXXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,______XX,XXXXXXXX,XXXXXX__,________,
+ ________,_XXXXXXX,XXXXXXXX,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,_XXXXXXX,XXXXXX__,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXX__,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXX___,________,________,__XXXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,__XXXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,__XXXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,__XXXXXX,XXXXXXX_,________,
+ ________,________,________,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,________,________,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,________,________,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,________,________,________,______XX,XXXXXXXX,XXXXX___,________,
+ ________,________,________,________,_____XXX,XXXXXXXX,XXXX____,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,XXXX____,________,
+ ________,________,________,________,___XXXXX,XXXXXXXX,XXX_____,________,
+ ________,________,________,________,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,________,________,________,_XXXXXXX,XXXXXXXX,X_______,________,
+ ________,________,________,_______X,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,______XX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,________,____XXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,________,________,___XXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXX____,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,_______X,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXX___,________,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXX____,________,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XX______,________,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,X_______,________,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXX_,________,________,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXX__,________,________,________,________,
+ ________,____XXXX,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,___XXXXX,XXXXXXXX,XXX_____,________,________,________,________,
+ ________,__XXXXXX,XXXXXXXX,XX______,________,________,________,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,________,________,________,________,
+ ________,_XXXXXXX,XXXXXXXX,________,________,________,________,________,
+ ________,XXXXXXXX,XXXXXXX_,________,________,________,________,________,
+ ________,XXXXXXXX,XXXXXX__,________,________,________,________,________,
+ _______X,XXXXXXXX,XXXXX___,________,________,________,________,________,
+ _______X,XXXXXXXX,XXXX____,________,________,________,________,________,
+ ______XX,XXXXXXXX,XXXX____,________,________,________,________,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,________,________,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,________,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______},
+
+{
+ ________,________,________,__XXXXXX,XXXX____,________,________,________,
+ ________,________,______XX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,___XXXXX,XXXXXXXX,XXXXXXXX,XX______,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,__XXXXXX,XXXXXXXX,XXX_____,__XXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_XXXXXXX,XXXXXXXX,X_______,_____XXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXX__,________,
+ _____XXX,XXXXXXXX,XX______,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,________,________,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,________,________,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,________,________,________,________,XXXXXXXX,XXXXX___,________,
+ ________,________,________,________,_______X,XXXXXXXX,XXXXX___,________,
+ ________,________,________,________,______XX,XXXXXXXX,XXXX____,________,
+ ________,________,________,________,_____XXX,XXXXXXXX,XXX_____,________,
+ ________,________,________,________,___XXXXX,XXXXXXXX,XXX_____,________,
+ ________,________,________,________,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,________,________,________,__XXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,________,________,________,______XX,XXXXXXXX,XXXXXX__,________,
+ ________,________,________,________,________,XXXXXXXX,XXXXXXX_,________,
+ ________,________,________,________,________,_XXXXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,__XXXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,___XXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,________,________,_____XXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXXXX___,________,________,_XXXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XX______,___XXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,________,XXXXXXXX,XXXX____,________,________,________},
+
+{
+ ________,________,________,________,_____XXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,___XXXXX,XXXXXXXX,________,________,
+ ________,________,________,________,__XXXXXX,XXXXXXXX,________,________,
+ ________,________,________,________,__XXXXXX,XXXXXXXX,________,________,
+ ________,________,________,________,_XXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,________,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_______X,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_______X,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,______XX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,____XXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,___XXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,___XXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,XXXXXXXX,XXX_XXXX,XXXXXXXX,________,________,
+ ________,________,________,XXXXXXXX,XX__XXXX,XXXXXXXX,________,________,
+ ________,________,_______X,XXXXXXXX,XX__XXXX,XXXXXXXX,________,________,
+ ________,________,______XX,XXXXXXXX,X___XXXX,XXXXXXXX,________,________,
+ ________,________,______XX,XXXXXXXX,____XXXX,XXXXXXXX,________,________,
+ ________,________,_____XXX,XXXXXXX_,____XXXX,XXXXXXXX,________,________,
+ ________,________,____XXXX,XXXXXXX_,____XXXX,XXXXXXXX,________,________,
+ ________,________,___XXXXX,XXXXXX__,____XXXX,XXXXXXXX,________,________,
+ ________,________,___XXXXX,XXXXX___,____XXXX,XXXXXXXX,________,________,
+ ________,________,__XXXXXX,XXXXX___,____XXXX,XXXXXXXX,________,________,
+ ________,________,_XXXXXXX,XXXX____,____XXXX,XXXXXXXX,________,________,
+ ________,________,_XXXXXXX,XXX_____,____XXXX,XXXXXXXX,________,________,
+ ________,________,XXXXXXXX,XXX_____,____XXXX,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,XX______,____XXXX,XXXXXXXX,________,________,
+ ________,______XX,XXXXXXXX,X_______,____XXXX,XXXXXXXX,________,________,
+ ________,______XX,XXXXXXXX,X_______,____XXXX,XXXXXXXX,________,________,
+ ________,_____XXX,XXXXXXXX,________,____XXXX,XXXXXXXX,________,________,
+ ________,____XXXX,XXXXXXX_,________,____XXXX,XXXXXXXX,________,________,
+ ________,____XXXX,XXXXXXX_,________,____XXXX,XXXXXXXX,________,________,
+ ________,___XXXXX,XXXXXX__,________,____XXXX,XXXXXXXX,________,________,
+ ________,__XXXXXX,XXXXX___,________,____XXXX,XXXXXXXX,________,________,
+ ________,_XXXXXXX,XXXXX___,________,____XXXX,XXXXXXXX,________,________,
+ ________,_XXXXXXX,XXXX____,________,____XXXX,XXXXXXXX,________,________,
+ ________,XXXXXXXX,XXX_____,________,____XXXX,XXXXXXXX,________,________,
+ _______X,XXXXXXXX,XXX_____,________,____XXXX,XXXXXXXX,________,________,
+ _______X,XXXXXXXX,XX______,________,____XXXX,XXXXXXXX,________,________,
+ ______XX,XXXXXXXX,X_______,________,____XXXX,XXXXXXXX,________,________,
+ _____XXX,XXXXXXXX,X_______,________,____XXXX,XXXXXXXX,________,________,
+ _____XXX,XXXXXXXX,________,________,____XXXX,XXXXXXXX,________,________,
+ ____XXXX,XXXXXXX_,________,________,____XXXX,XXXXXXXX,________,________,
+ ___XXXXX,XXXXXX__,________,________,____XXXX,XXXXXXXX,________,________,
+ ___XXXXX,XXXXXX__,________,________,____XXXX,XXXXXXXX,________,________,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXXXX,________,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________},
+
+{
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,____XXXX,XXXXXXXX,________,________,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,________,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,________,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,________,________,
+ ________,__XXXXXX,XXXXXX__,________,________,________,________,________,
+ ________,__XXXXXX,XXXXXX__,________,________,________,________,________,
+ ________,__XXXXXX,XXXXX___,________,________,________,________,________,
+ ________,__XXXXXX,XXXXX___,________,________,________,________,________,
+ ________,__XXXXXX,XXXXX___,________,________,________,________,________,
+ ________,_XXXXXXX,XXXXX___,________,________,________,________,________,
+ ________,_XXXXXXX,XXXXX___,________,________,________,________,________,
+ ________,_XXXXXXX,XXXX____,______XX,XXXXXX__,________,________,________,
+ ________,_XXXXXXX,XXXX____,__XXXXXX,XXXXXXXX,XX______,________,________,
+ ________,_XXXXXXX,XXXX____,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,XXXXXXXX,XXXX__XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,XXXXXXXX,XXXX_XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,XXXXXXXX,XXX_XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXXXXXX,XX______,___XXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXX_,________,_____XXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,___XXXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,________,________,_____XXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,_____XXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXX____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXX___,________,________,_XXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,________,______XX,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXXXX,XXX_____,___XXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________},
+
+{
+ ________,________,________,____XXXX,XXXXX___,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,____XXXX,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XX______,______XX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,X_______,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXX_,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXXX__,________,________,__XXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXX___,________,________,__XXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXX___,________,________,___XXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,________,________,____XXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXX_____,________,________,________,________,________,
+ _______X,XXXXXXXX,XXX_____,________,________,________,________,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,________,________,________,
+ ______XX,XXXXXXXX,XX______,________,________,________,________,________,
+ ______XX,XXXXXXXX,XX______,________,________,________,________,________,
+ _____XXX,XXXXXXXX,XX______,________,________,________,________,________,
+ _____XXX,XXXXXXXX,XX______,________,________,________,________,________,
+ _____XXX,XXXXXXXX,XX______,______XX,XXXXXX__,________,________,________,
+ _____XXX,XXXXXXXX,X_______,__XXXXXX,XXXXXXXX,XX______,________,________,
+ _____XXX,XXXXXXXX,X_______,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ _____XXX,XXXXXXXX,X_____XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ _____XXX,XXXXXXXX,X____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ____XXXX,XXXXXXXX,X___XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ____XXXX,XXXXXXXX,X__XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ____XXXX,XXXXXXXX,X_XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXX____,___XXXXX,XXXXXXXX,XXXXXX__,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,X_______,______XX,XXXXXXXX,XXXXXX__,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,________,_______X,XXXXXXXX,XXXXXXX_,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,_XXXXXXX,XXXXXXX_,________,
+ ____XXXX,XXXXXXXX,XXXXXX__,________,________,__XXXXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,XXXXX___,________,________,__XXXXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXX___,________,________,__XXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXX__,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXXXX_,________,________,XXXXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXXXXX,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,______XX,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,XXXX____,___XXXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,________,
+ ________,________,______XX,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,________,__XXXXXX,XXXXX___,________,________,________},
+
+{
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,________,
+ ________,________,________,________,________,___XXXXX,XXXXXXX_,________,
+ ________,________,________,________,________,___XXXXX,XXXXXX__,________,
+ ________,________,________,________,________,__XXXXXX,XXXXXX__,________,
+ ________,________,________,________,________,_XXXXXXX,XXXXX___,________,
+ ________,________,________,________,________,XXXXXXXX,XXXX____,________,
+ ________,________,________,________,_______X,XXXXXXXX,XXX_____,________,
+ ________,________,________,________,______XX,XXXXXXXX,XX______,________,
+ ________,________,________,________,______XX,XXXXXXXX,XX______,________,
+ ________,________,________,________,_____XXX,XXXXXXXX,X_______,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,___XXXXX,XXXXXXX_,________,________,
+ ________,________,________,________,___XXXXX,XXXXXXX_,________,________,
+ ________,________,________,________,__XXXXXX,XXXXXX__,________,________,
+ ________,________,________,________,_XXXXXXX,XXXXX___,________,________,
+ ________,________,________,________,_XXXXXXX,XXXXX___,________,________,
+ ________,________,________,________,XXXXXXXX,XXXX____,________,________,
+ ________,________,________,_______X,XXXXXXXX,XXX_____,________,________,
+ ________,________,________,_______X,XXXXXXXX,XXX_____,________,________,
+ ________,________,________,______XX,XXXXXXXX,XX______,________,________,
+ ________,________,________,______XX,XXXXXXXX,XX______,________,________,
+ ________,________,________,_____XXX,XXXXXXXX,X_______,________,________,
+ ________,________,________,____XXXX,XXXXXXXX,X_______,________,________,
+ ________,________,________,____XXXX,XXXXXXXX,________,________,________,
+ ________,________,________,___XXXXX,XXXXXXXX,________,________,________,
+ ________,________,________,___XXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,__XXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,__XXXXXX,XXXXXX__,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXX__,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXX___,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXX___,________,________,________,
+ ________,________,________,XXXXXXXX,XXXX____,________,________,________,
+ ________,________,_______X,XXXXXXXX,XXXX____,________,________,________,
+ ________,________,_______X,XXXXXXXX,XXX_____,________,________,________,
+ ________,________,______XX,XXXXXXXX,XXX_____,________,________,________,
+ ________,________,______XX,XXXXXXXX,XXX_____,________,________,________,
+ ________,________,______XX,XXXXXXXX,XX______,________,________,________,
+ ________,________,_____XXX,XXXXXXXX,XX______,________,________,________,
+ ________,________,_____XXX,XXXXXXXX,X_______,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,X_______,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,X_______,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,X_______,________,________,________,
+ ________,________,___XXXXX,XXXXXXXX,________,________,________,________,
+ ________,________,___XXXXX,XXXXXXXX,________,________,________,________,
+ ________,________,___XXXXX,XXXXXXXX,________,________,________,________,
+ ________,________,__XXXXXX,XXXXXXX_,________,________,________,________,
+ ________,________,__XXXXXX,XXXXXXX_,________,________,________,________,
+ ________,________,__XXXXXX,XXXXXXX_,________,________,________,________,
+ ________,________,_XXXXXXX,XXXXXXX_,________,________,________,________,
+ ________,________,_XXXXXXX,XXXXXX__,________,________,________,________,
+ ________,________,_XXXXXXX,XXXXXX__,________,________,________,________,
+ ________,________,_XXXXXXX,XXXXXX__,________,________,________,________,
+ ________,________,XXXXXXXX,XXXXXX__,________,________,________,________,
+ ________,________,XXXXXXXX,XXXXXX__,________,________,________,________,
+ ________,________,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,________,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,________,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,______XX,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,______XX,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,______XX,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,______XX,XXXXXXXX,XXXX____,________,________,________,________},
+
+{
+ ________,________,________,_XXXXXXX,XXXXX___,________,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXX_____,___XXXXX,XXXXXXXX,XXXX____,________,
+ ________,_XXXXXXX,XXXXXXXX,X_______,_____XXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXX_,________,_______X,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXX__,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXX___,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXX___,________,________,_XXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXX____,________,________,__XXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXX____,________,________,__XXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXX____,________,________,__XXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXX____,________,________,__XXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXXXX___,________,________,_XXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXX__,________,________,XXXXXXXX,XXXX____,________,
+ ________,___XXXXX,XXXXXXX_,________,_______X,XXXXXXXX,XXX_____,________,
+ ________,____XXXX,XXXXXXXX,X_______,_____XXX,XXXXXXXX,XX______,________,
+ ________,_____XXX,XXXXXXXX,XXX_____,___XXXXX,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XX______,___XXXXX,XXXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XX______,___XXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________},
+
+{
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,_XXXXXXX,XXXXXXXX,XX______,__XXXXXX,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXXXXX,________,_____XXX,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXXX__,________,______XX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXXX___,________,_______X,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXX____,________,________,XXXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,X_______,________,________,___XXXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XXXXX___,________,_______X,XXXXXXXX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXXXXXX,________,_____XXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXXXXXX,XX______,__XXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX_XXX,XXXXXXXX,XX______,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX__XXX,XXXXXXXX,XX______,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX___XXX,XXXXXXXX,X_______,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X____XXX,XXXXXXXX,X_______,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,_____XXX,XXXXXXXX,X_______,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXX__,_____XXX,XXXXXXXX,X_______,
+ ________,________,____XXXX,XXXXXXXX,XXXX____,_____XXX,XXXXXXXX,X_______,
+ ________,________,________,XXXXXXXX,X_______,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,________,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,________,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,________,
+ ________,________,________,________,________,___XXXXX,XXXXXXX_,________,
+ ________,________,________,________,________,___XXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,X_______,________,________,___XXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XX______,________,________,_XXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,_XXXXXXX,XXXXX___,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,XXXXXXXX,XXXXX___,________,
+ ______XX,XXXXXXXX,XXXX____,________,_______X,XXXXXXXX,XXXX____,________,
+ _______X,XXXXXXXX,XXXXX___,________,______XX,XXXXXXXX,XXXX____,________,
+ _______X,XXXXXXXX,XXXXXX__,________,_____XXX,XXXXXXXX,XXX_____,________,
+ ________,XXXXXXXX,XXXXXXX_,________,____XXXX,XXXXXXXX,XX______,________,
+ ________,XXXXXXXX,XXXXXXXX,XX______,_XXXXXXX,XXXXXXXX,XX______,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXX__,________,________,________,
+ ________,________,________,XXXXXXXX,XX______,________,________,________},
+
+{
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________},
+
+{
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________},
+
+{
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________},
+
+{
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,________,________,________,________,________},
+
+{
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,________,________,________,________,________}
+};
+
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_FontD60x80_CharInfo[15] = {
+ { 60, 60, 8, acFontD60x80[12] } /* code 0020 ' ' */
+ ,{ 60, 60, 8, acFontD60x80[10] } /* code 002B '+' */
+ ,{ 60, 60, 8, acFontD60x80[11] } /* code 002D '-' */
+ ,{ 60, 60, 8, acFontD60x80[13] } /* code 002E '.' */
+ ,{ 60, 60, 8, acFontD60x80[0] } /* code 0030 '0' */
+ ,{ 60, 60, 8, acFontD60x80[1] } /* code 0031 '1' */
+ ,{ 60, 60, 8, acFontD60x80[2] } /* code 0032 '2' */
+ ,{ 60, 60, 8, acFontD60x80[3] } /* code 0033 '3' */
+ ,{ 60, 60, 8, acFontD60x80[4] } /* code 0034 '4' */
+ ,{ 60, 60, 8, acFontD60x80[5] } /* code 0035 '5' */
+ ,{ 60, 60, 8, acFontD60x80[6] } /* code 0036 '6' */
+ ,{ 60, 60, 8, acFontD60x80[7] } /* code 0037 '7' */
+ ,{ 60, 60, 8, acFontD60x80[8] } /* code 0038 '8' */
+ ,{ 60, 60, 8, acFontD60x80[9] } /* code 0039 '9' */
+ ,{ 60, 60, 8, acFontD60x80[14] } /* code 003A ':' */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD60x80_Prop4 = {
+ 0x0030 /* first character */
+ ,0x003A /* last character */
+ ,&GUI_FontD60x80_CharInfo[ 4] /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD60x80_Prop3 = {
+ 0x002D /* first character */
+ ,0x002E /* last character */
+ ,&GUI_FontD60x80_CharInfo[ 2] /* address of first character */
+ ,&GUI_FontD60x80_Prop4 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD60x80_Prop2 = {
+ 0x002B /* first character */
+ ,0x002B /* last character */
+ ,&GUI_FontD60x80_CharInfo[ 1] /* address of first character */
+ ,&GUI_FontD60x80_Prop3 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD60x80_Prop1 = {
+ 0x0020 /* first character */
+ ,0x0020 /* last character */
+ ,&GUI_FontD60x80_CharInfo[ 0] /* address of first character */
+ ,&GUI_FontD60x80_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontD60x80 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,80 /* height of font */
+ ,80 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontD60x80_Prop1}
+ ,80 /* Baseline */
+ ,0 /* LHeight */
+ ,80 /* CHeight */
+};
+
diff --git a/User/lib/lcd/gui/Font/FD64.c b/User/lib/lcd/gui/Font/FD64.c
new file mode 100644
index 0000000..93587c1
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FD64.c
@@ -0,0 +1,1073 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FD64.C
+Purpose : Implementation of the proportional 64 pixel digit
+Height : 64
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFontD64[12][384] = {
+{
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,_XXXXXXX,XXXXX___,____XXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXX____,_____XXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XX______,_______X,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,X_______,________,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,X_______,________,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXX___,________,________,____XXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXX___,________,________,____XXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,X_______,________,XXXXXXXX,XXX_____,
+ _______X,XXXXXXXX,X_______,________,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XX______,_______X,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXX____,_____XXX,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,________,_XXXXXXX,XXXXXXXX,________,________,
+ ________,________,____XXXX,XXXXX___,________,________},
+
+{
+ ________,________,_______X,XXXXXXX_,________,________,
+ ________,________,_______X,XXXXXXX_,________,________,
+ ________,________,_______X,XXXXXXX_,________,________,
+ ________,________,______XX,XXXXXXX_,________,________,
+ ________,________,______XX,XXXXXXX_,________,________,
+ ________,________,_____XXX,XXXXXXX_,________,________,
+ ________,________,_____XXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,___XXXXX,XXXXXXX_,________,________,
+ ________,________,_XXXXXXX,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXX_,________,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXXX_,________,________},
+
+{
+ ________,________,_____XXX,XXXXXX__,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,_XXXXXXX,XXXXXX__,_____XXX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXX____,_______X,XXXXXXXX,XXX_____,
+ ________,XXXXXXXX,XXX_____,________,XXXXXXXX,XXX_____,
+ _______X,XXXXXXXX,XX______,________,_XXXXXXX,XXXX____,
+ _______X,XXXXXXXX,X_______,________,__XXXXXX,XXXX____,
+ _______X,XXXXXXXX,X_______,________,__XXXXXX,XXXX____,
+ ______XX,XXXXXXXX,________,________,__XXXXXX,XXXX____,
+ ______XX,XXXXXXXX,________,________,___XXXXX,XXXXX___,
+ ______XX,XXXXXXXX,________,________,___XXXXX,XXXXX___,
+ ______XX,XXXXXXXX,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ ________,________,________,________,__XXXXXX,XXXX____,
+ ________,________,________,________,_XXXXXXX,XXXX____,
+ ________,________,________,________,_XXXXXXX,XXX_____,
+ ________,________,________,________,XXXXXXXX,XXX_____,
+ ________,________,________,_______X,XXXXXXXX,XX______,
+ ________,________,________,______XX,XXXXXXXX,XX______,
+ ________,________,________,_____XXX,XXXXXXXX,X_______,
+ ________,________,________,____XXXX,XXXXXXXX,________,
+ ________,________,________,___XXXXX,XXXXXXX_,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,________,_______X,XXXXXXXX,XXXXX___,________,
+ ________,________,_____XXX,XXXXXXXX,XXX_____,________,
+ ________,________,____XXXX,XXXXXXXX,XX______,________,
+ ________,________,___XXXXX,XXXXXXXX,X_______,________,
+ ________,________,_XXXXXXX,XXXXXXXX,________,________,
+ ________,________,XXXXXXXX,XXXXXX__,________,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,________,
+ ________,______XX,XXXXXXXX,XXXX____,________,________,
+ ________,____XXXX,XXXXXXXX,XX______,________,________,
+ ________,___XXXXX,XXXXXXXX,X_______,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,________,
+ ________,__XXXXXX,XXXXXX__,________,________,________,
+ ________,_XXXXXXX,XXXXX___,________,________,________,
+ ________,XXXXXXXX,XXXX____,________,________,________,
+ ________,XXXXXXXX,XXX_____,________,________,________,
+ _______X,XXXXXXXX,XX______,________,________,________,
+ _______X,XXXXXXXX,X_______,________,________,________,
+ ______XX,XXXXXXXX,________,________,________,________,
+ ______XX,XXXXXXXX,________,________,________,________,
+ _____XXX,XXXXXXXX,________,________,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___},
+
+{
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XXX_____,______XX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XX______,_______X,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,X_______,________,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,_XXXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXX_____,
+ ________,________,________,________,_XXXXXXX,XXX_____,
+ ________,________,________,________,_XXXXXXX,XXX_____,
+ ________,________,________,________,XXXXXXXX,XX______,
+ ________,________,________,________,XXXXXXXX,XX______,
+ ________,________,________,______XX,XXXXXXXX,X_______,
+ ________,________,________,_____XXX,XXXXXXXX,X_______,
+ ________,________,________,__XXXXXX,XXXXXXX_,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXX__,________,
+ ________,________,____XXXX,XXXXXXXX,XXXX____,________,
+ ________,________,____XXXX,XXXXXXXX,XXXX____,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,________,________,____XXXX,XXXXXXXX,XXX_____,
+ ________,________,________,_______X,XXXXXXXX,XXXX____,
+ ________,________,________,________,_XXXXXXX,XXXX____,
+ ________,________,________,________,__XXXXXX,XXXXX___,
+ ________,________,________,________,__XXXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,__XXXXXX,XXXXX___,
+ _____XXX,XXXXXXXX,________,________,_XXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,X_______,________,XXXXXXXX,XXXX____,
+ ______XX,XXXXXXXX,XX______,_______X,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XXX_____,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,________,___XXXXX,XXXXX___,________,________},
+
+{
+ ________,________,________,______XX,XXXXXX__,________,
+ ________,________,________,______XX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,____XXXX,XXXXXX__,________,
+ ________,________,________,___XXXXX,XXXXXX__,________,
+ ________,________,________,___XXXXX,XXXXXX__,________,
+ ________,________,________,__XXXXXX,XXXXXX__,________,
+ ________,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,________,______XX,XXXXXXXX,XXXXXX__,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXX__,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXX__,________,
+ ________,________,____XXXX,XXXX_XXX,XXXXXX__,________,
+ ________,________,___XXXXX,XXXX_XXX,XXXXXX__,________,
+ ________,________,___XXXXX,XXX__XXX,XXXXXX__,________,
+ ________,________,__XXXXXX,XX___XXX,XXXXXX__,________,
+ ________,________,_XXXXXXX,XX___XXX,XXXXXX__,________,
+ ________,________,XXXXXXXX,X____XXX,XXXXXX__,________,
+ ________,________,XXXXXXXX,_____XXX,XXXXXX__,________,
+ ________,_______X,XXXXXXX_,_____XXX,XXXXXX__,________,
+ ________,______XX,XXXXXXX_,_____XXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXX__,_____XXX,XXXXXX__,________,
+ ________,_____XXX,XXXXX___,_____XXX,XXXXXX__,________,
+ ________,____XXXX,XXXXX___,_____XXX,XXXXXX__,________,
+ ________,___XXXXX,XXXX____,_____XXX,XXXXXX__,________,
+ ________,__XXXXXX,XXX_____,_____XXX,XXXXXX__,________,
+ ________,__XXXXXX,XXX_____,_____XXX,XXXXXX__,________,
+ ________,_XXXXXXX,XX______,_____XXX,XXXXXX__,________,
+ ________,XXXXXXXX,X_______,_____XXX,XXXXXX__,________,
+ ________,XXXXXXXX,________,_____XXX,XXXXXX__,________,
+ _______X,XXXXXXXX,________,_____XXX,XXXXXX__,________,
+ ______XX,XXXXXXX_,________,_____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,_____XXX,XXXXXX__,________,
+ _____XXX,XXXXXX__,________,_____XXX,XXXXXX__,________,
+ ____XXXX,XXXXX___,________,_____XXX,XXXXXX__,________,
+ ___XXXXX,XXXX____,________,_____XXX,XXXXXX__,________,
+ ___XXXXX,XXXX____,________,_____XXX,XXXXXX__,________,
+ ___XXXXX,XXX_____,________,_____XXX,XXXXXX__,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,_____XXX,XXXXXX__,________},
+
+{
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,
+ ________,_XXXXXXX,XX______,________,________,________,
+ ________,_XXXXXXX,XX______,________,________,________,
+ ________,_XXXXXXX,XX______,________,________,________,
+ ________,_XXXXXXX,XX______,________,________,________,
+ ________,XXXXXXXX,XX______,________,________,________,
+ ________,XXXXXXXX,X_______,________,________,________,
+ ________,XXXXXXXX,X_______,________,________,________,
+ ________,XXXXXXXX,X_______,________,________,________,
+ ________,XXXXXXXX,X_______,________,________,________,
+ _______X,XXXXXXXX,X_______,________,________,________,
+ _______X,XXXXXXXX,________,________,________,________,
+ _______X,XXXXXXXX,________,________,________,________,
+ _______X,XXXXXXXX,_______X,XXXXXXX_,________,________,
+ _______X,XXXXXXXX,____XXXX,XXXXXXXX,XX______,________,
+ ______XX,XXXXXXX_,__XXXXXX,XXXXXXXX,XXXX____,________,
+ ______XX,XXXXXXX_,_XXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XXXX____,____XXXX,XXXXXXXX,XXX_____,
+ _____XXX,XXXXXXXX,XX______,______XX,XXXXXXXX,XXX_____,
+ _____XXX,XXXXXXXX,________,________,XXXXXXXX,XXXX____,
+ _____XXX,XXXXXXX_,________,________,_XXXXXXX,XXXX____,
+ ____XXXX,XXXXXXX_,________,________,__XXXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ________,________,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXXX_,________,________,__XXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,________,________,_XXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,X_______,________,XXXXXXXX,XXX_____,
+ _____XXX,XXXXXXXX,XX______,_______X,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,________,____XXXX,XXXXX___,________,________},
+
+{
+ ________,________,______XX,XXXXXXX_,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,__XXXXXX,XXXXXX__,_____XXX,XXXXXXXX,XX______,
+ ________,_XXXXXXX,XXXXX___,_______X,XXXXXXXX,XXX_____,
+ ________,XXXXXXXX,XXX_____,________,XXXXXXXX,XXX_____,
+ ________,XXXXXXXX,XX______,________,_XXXXXXX,XXXX____,
+ _______X,XXXXXXXX,X_______,________,__XXXXXX,XXXX____,
+ _______X,XXXXXXXX,X_______,________,__XXXXXX,XXXX____,
+ ______XX,XXXXXXXX,________,________,___XXXXX,XXXXX___,
+ ______XX,XXXXXXXX,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,________,___XX___,
+ _____XXX,XXXXXXX_,________,________,________,________,
+ _____XXX,XXXXXXX_,________,________,________,________,
+ _____XXX,XXXXXX__,________,________,________,________,
+ ____XXXX,XXXXXX__,________,________,________,________,
+ ____XXXX,XXXXXX__,________,________,________,________,
+ ____XXXX,XXXXXX__,________,________,________,________,
+ ____XXXX,XXXXXX__,_______X,XXXXXXX_,________,________,
+ ____XXXX,XXXXXX__,____XXXX,XXXXXXXX,XX______,________,
+ ___XXXXX,XXXXX___,__XXXXXX,XXXXXXXX,XXXX____,________,
+ ___XXXXX,XXXXX___,_XXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ___XXXXX,XXXXX__X,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ___XXXXX,XXXXX__X,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ___XXXXX,XXXXX_XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXX__,_____XXX,XXXXXXXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XXX_____,_______X,XXXXXXXX,XXX_____,
+ ___XXXXX,XXXXXXXX,XX______,________,XXXXXXXX,XXXX____,
+ ___XXXXX,XXXXXXXX,X_______,________,_XXXXXXX,XXXX____,
+ ___XXXXX,XXXXXXXX,________,________,__XXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,________,________,__XXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,____XXXX,XXXXXX__,
+ _____XXX,XXXXXXX_,________,________,____XXXX,XXXXXX__,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ _____XXX,XXXXXXX_,________,________,___XXXXX,XXXXX___,
+ ______XX,XXXXXXXX,________,________,__XXXXXX,XXXXX___,
+ ______XX,XXXXXXXX,________,________,__XXXXXX,XXXXX___,
+ ______XX,XXXXXXXX,X_______,________,_XXXXXXX,XXXX____,
+ _______X,XXXXXXXX,XX______,________,XXXXXXXX,XXXX____,
+ _______X,XXXXXXXX,XXX_____,_______X,XXXXXXXX,XXX_____,
+ ________,XXXXXXXX,XXXXXX__,_____XXX,XXXXXXXX,XX______,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XX______,________,
+ ________,________,_____XXX,XXXXXX__,________,________},
+
+{
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,__XXXXXX,XXXX____,
+ ________,________,________,________,__XXXXXX,XXXX____,
+ ________,________,________,________,_XXXXXXX,XXX_____,
+ ________,________,________,________,_XXXXXXX,XX______,
+ ________,________,________,________,XXXXXXXX,X_______,
+ ________,________,________,_______X,XXXXXXXX,________,
+ ________,________,________,______XX,XXXXXXXX,________,
+ ________,________,________,_____XXX,XXXXXXX_,________,
+ ________,________,________,_____XXX,XXXXXX__,________,
+ ________,________,________,____XXXX,XXXXX___,________,
+ ________,________,________,___XXXXX,XXXXX___,________,
+ ________,________,________,__XXXXXX,XXXX____,________,
+ ________,________,________,__XXXXXX,XXX_____,________,
+ ________,________,________,_XXXXXXX,XXX_____,________,
+ ________,________,________,XXXXXXXX,XX______,________,
+ ________,________,________,XXXXXXXX,X_______,________,
+ ________,________,_______X,XXXXXXXX,X_______,________,
+ ________,________,_______X,XXXXXXXX,________,________,
+ ________,________,______XX,XXXXXXXX,________,________,
+ ________,________,_____XXX,XXXXXXX_,________,________,
+ ________,________,_____XXX,XXXXXXX_,________,________,
+ ________,________,____XXXX,XXXXXX__,________,________,
+ ________,________,____XXXX,XXXXXX__,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,__XXXXXX,XXXX____,________,________,
+ ________,________,__XXXXXX,XXXX____,________,________,
+ ________,________,__XXXXXX,XXXX____,________,________,
+ ________,________,_XXXXXXX,XXX_____,________,________,
+ ________,________,_XXXXXXX,XXX_____,________,________,
+ ________,________,XXXXXXXX,XX______,________,________,
+ ________,________,XXXXXXXX,XX______,________,________,
+ ________,________,XXXXXXXX,XX______,________,________,
+ ________,_______X,XXXXXXXX,XX______,________,________,
+ ________,_______X,XXXXXXXX,X_______,________,________,
+ ________,_______X,XXXXXXXX,X_______,________,________,
+ ________,______XX,XXXXXXXX,X_______,________,________,
+ ________,______XX,XXXXXXXX,________,________,________,
+ ________,______XX,XXXXXXXX,________,________,________,
+ ________,_____XXX,XXXXXXXX,________,________,________,
+ ________,_____XXX,XXXXXXXX,________,________,________,
+ ________,_____XXX,XXXXXXXX,________,________,________,
+ ________,_____XXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,
+ ________,____XXXX,XXXXXX__,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________},
+
+{
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXX_____,______XX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XX______,_______X,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,X_______,________,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,________,________,_XXXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ ______XX,XXXXXXX_,________,________,__XXXXXX,XXX_____,
+ _______X,XXXXXXX_,________,________,__XXXXXX,XX______,
+ _______X,XXXXXXXX,________,________,_XXXXXXX,XX______,
+ _______X,XXXXXXXX,________,________,_XXXXXXX,XX______,
+ ________,XXXXXXXX,X_______,________,XXXXXXXX,X_______,
+ ________,XXXXXXXX,XX______,_______X,XXXXXXXX,X_______,
+ ________,_XXXXXXX,XXX_____,______XX,XXXXXXXX,________,
+ ________,__XXXXXX,XXXXX___,____XXXX,XXXXXXX_,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XXX_____,
+ _____XXX,XXXXXXXX,XX______,_______X,XXXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,X_______,________,XXXXXXXX,XXXX____,
+ ____XXXX,XXXXXXXX,________,________,_XXXXXXX,XXXXX___,
+ ____XXXX,XXXXXXX_,________,________,__XXXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXX__,
+ ___XXXXX,XXXXXX__,________,________,___XXXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXX__,________,________,___XXXXX,XXXXX___,
+ ____XXXX,XXXXXXX_,________,________,__XXXXXX,XXXXX___,
+ _____XXX,XXXXXXXX,________,________,_XXXXXXX,XXXX____,
+ _____XXX,XXXXXXXX,X_______,________,XXXXXXXX,XXXX____,
+ ______XX,XXXXXXXX,XX______,_______X,XXXXXXXX,XXX_____,
+ ______XX,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XXX_____,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,________,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,________,____XXXX,XXXXX___,________,________},
+
+{
+ ________,________,___XXXXX,XXXXX___,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,___XXXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XX______,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,X_______,_______X,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,________,________,XXXXXXXX,XXX_____,
+ ____XXXX,XXXXXXX_,________,________,_XXXXXXX,XXX_____,
+ ____XXXX,XXXXXXX_,________,________,_XXXXXXX,XXX_____,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXX____,
+ ___XXXXX,XXXXX___,________,________,__XXXXXX,XXXX____,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,________,___XXXXX,XXXXXX__,
+ ___XXXXX,XXXXXX__,________,________,__XXXXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXXXX__,
+ ____XXXX,XXXXXX__,________,________,__XXXXXX,XXXXXX__,
+ ____XXXX,XXXXXXX_,________,________,_XXXXXXX,XXXXXX__,
+ ____XXXX,XXXXXXX_,________,________,_XXXXXXX,XXXXXX__,
+ _____XXX,XXXXXXXX,________,________,XXXXXXXX,XXXXXX__,
+ _____XXX,XXXXXXXX,X_______,_______X,XXXXXXXX,XXXXXX__,
+ ______XX,XXXXXXXX,XX______,_____XXX,XXXXXXXX,XXXXXX__,
+ ______XX,XXXXXXXX,XXXX____,___XXXXX,XXXXXXXX,XXXXXX__,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_XXXX,XXXXXX__,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XX__XXXX,XXXXXX__,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XX__XXXX,XXXXXX__,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,____XXXX,XXXXXX__,
+ ________,_____XXX,XXXXXXXX,XXXXXXX_,____XXXX,XXXXX___,
+ ________,_______X,XXXXXXXX,XXXXX___,___XXXXX,XXXXX___,
+ ________,________,__XXXXXX,XX______,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXXX___,
+ ________,________,________,________,___XXXXX,XXXX____,
+ ________,________,________,________,__XXXXXX,XXXX____,
+ ________,________,________,________,__XXXXXX,XXXX____,
+ ____XX__,________,________,________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXXX__,________,________,_XXXXXXX,XXX_____,
+ ____XXXX,XXXXXX__,________,________,_XXXXXXX,XXX_____,
+ _____XXX,XXXXXXX_,________,________,XXXXXXXX,XX______,
+ _____XXX,XXXXXXX_,________,________,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,________,_______X,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,X_______,______XX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XX______,_____XXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,_______X,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,__XXXXXX,XXX_____,________,________},
+
+{
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,____XXXX,XXXXX___,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________},
+
+{
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________,
+ ________,________,________,________,________,________}
+};
+
+
+GUI_CONST_STORAGE unsigned char acFontD64_0020[192] = { /* code 0020 */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontD64_002E[192] = { /* code 002E */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontD64_003A[192] = { /* code 003A */
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,
+ ________,________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_FontD64_CharInfo[15] = {
+ { 24, 24, 3, acFontD64_0020 } /* code 0020 ' ' */
+ ,{ 48, 48, 6, acFontD64[10] } /* code 002B '+' */
+ ,{ 48, 48, 6, acFontD64[11] } /* code 002D '-' */
+ ,{ 24, 24, 3, acFontD64_002E } /* code 002E '.' */
+ ,{ 48, 48, 6, acFontD64[0] } /* code 0030 '0' */
+ ,{ 48, 48, 6, acFontD64[1] } /* code 0031 '1' */
+ ,{ 48, 48, 6, acFontD64[2] } /* code 0032 '2' */
+ ,{ 48, 48, 6, acFontD64[3] } /* code 0033 '3' */
+ ,{ 48, 48, 6, acFontD64[4] } /* code 0034 '4' */
+ ,{ 48, 48, 6, acFontD64[5] } /* code 0035 '5' */
+ ,{ 48, 48, 6, acFontD64[6] } /* code 0036 '6' */
+ ,{ 48, 48, 6, acFontD64[7] } /* code 0037 '7' */
+ ,{ 48, 48, 6, acFontD64[8] } /* code 0038 '8' */
+ ,{ 48, 48, 6, acFontD64[9] } /* code 0039 '9' */
+ ,{ 24, 24, 3, acFontD64_003A } /* code 003A ':' */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD64_Prop4 = {
+ 0x0030 /* first character */
+ ,0x003A /* last character */
+ ,&GUI_FontD64_CharInfo[ 4] /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD64_Prop3 = {
+ 0x002D /* first character */
+ ,0x002E /* last character */
+ ,&GUI_FontD64_CharInfo[ 2] /* address of first character */
+ ,&GUI_FontD64_Prop4 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD64_Prop2 = {
+ 0x002B /* first character */
+ ,0x002B /* last character */
+ ,&GUI_FontD64_CharInfo[ 1] /* address of first character */
+ ,&GUI_FontD64_Prop3 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD64_Prop1 = {
+ 0x0020 /* first character */
+ ,0x0020 /* last character */
+ ,&GUI_FontD64_CharInfo[ 0] /* address of first character */
+ ,&GUI_FontD64_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontD64 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,64 /* height of font */
+ ,64 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontD64_Prop1}
+ ,64 /* Baseline */
+ ,0 /* LHeight */
+ ,64 /* CHeight */
+};
+
diff --git a/User/lib/lcd/gui/Font/FD80.c b/User/lib/lcd/gui/Font/FD80.c
new file mode 100644
index 0000000..b5a631d
--- /dev/null
+++ b/User/lib/lcd/gui/Font/FD80.c
@@ -0,0 +1,1313 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : FD80.C
+Purpose : Implementation of the proportional 80 pixel digit
+Height : 80
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI_FontIntern.h"
+
+GUI_CONST_STORAGE unsigned char acFontD80[12][640] = {
+{
+ ________,________,________,__XXXXXX,XXX_____,________,________,________,
+ ________,________,______XX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,___XXXXX,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,___XXXXX,XXXXXXXX,XXX_____,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,____XXXX,XXXXXXXX,XXX_____,________,
+ ________,__XXXXXX,XXXXXXXX,________,_____XXX,XXXXXXXX,XXX_____,________,
+ ________,_XXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXX____,________,
+ ________,_XXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXX____,________,
+ ________,_XXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,________,_____XXX,XXXXXXXX,XXX_____,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,____XXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXX_____,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,___XXXXX,XXXXXXXX,XXXXXXXX,XX______,________,________,
+ ________,________,______XX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,__XXXXXX,XXX_____,________,________,________},
+
+{
+ ________,________,________,_____XXX,XXXXXXX_,________,________,________,
+ ________,________,________,_____XXX,XXXXXXX_,________,________,________,
+ ________,________,________,_____XXX,XXXXXXX_,________,________,________,
+ ________,________,________,____XXXX,XXXXXXX_,________,________,________,
+ ________,________,________,____XXXX,XXXXXXX_,________,________,________,
+ ________,________,________,___XXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,___XXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,__XXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,_______X,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,______XX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXX_,________,________,________},
+
+{
+ ________,________,________,___XXXXX,XXXXX___,________,________,________,
+ ________,________,_______X,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XXX_____,___XXXXX,XXXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,______XX,XXXXXXXX,XXXXXX__,________,
+ ________,_XXXXXXX,XXXXXXXX,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,_XXXXXXX,XXXXXX__,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXX__,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXX___,________,________,__XXXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,__XXXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,__XXXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,__XXXXXX,XXXXXXX_,________,
+ ________,________,________,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,________,________,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,________,________,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,________,________,________,______XX,XXXXXXXX,XXXXX___,________,
+ ________,________,________,________,_____XXX,XXXXXXXX,XXXX____,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,XXXX____,________,
+ ________,________,________,________,___XXXXX,XXXXXXXX,XXX_____,________,
+ ________,________,________,________,__XXXXXX,XXXXXXXX,XX______,________,
+ ________,________,________,________,_XXXXXXX,XXXXXXXX,X_______,________,
+ ________,________,________,_______X,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,______XX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,________,____XXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,________,________,___XXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXX____,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,_______X,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXX_,________,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXX___,________,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXX____,________,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XX______,________,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,X_______,________,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXX_,________,________,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXX__,________,________,________,________,
+ ________,____XXXX,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,___XXXXX,XXXXXXXX,XXX_____,________,________,________,________,
+ ________,__XXXXXX,XXXXXXXX,XX______,________,________,________,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,________,________,________,________,
+ ________,_XXXXXXX,XXXXXXXX,________,________,________,________,________,
+ ________,XXXXXXXX,XXXXXXX_,________,________,________,________,________,
+ ________,XXXXXXXX,XXXXXX__,________,________,________,________,________,
+ _______X,XXXXXXXX,XXXXX___,________,________,________,________,________,
+ _______X,XXXXXXXX,XXXX____,________,________,________,________,________,
+ ______XX,XXXXXXXX,XXXX____,________,________,________,________,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,________,________,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,________,________,________,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______},
+
+{
+ ________,________,________,__XXXXXX,XXXX____,________,________,________,
+ ________,________,______XX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,___XXXXX,XXXXXXXX,XXXXXXXX,XX______,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,__XXXXXX,XXXXXXXX,XXX_____,__XXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_XXXXXXX,XXXXXXXX,X_______,_____XXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXX__,________,
+ _____XXX,XXXXXXXX,XX______,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,________,________,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,________,________,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,________,________,________,________,XXXXXXXX,XXXXX___,________,
+ ________,________,________,________,_______X,XXXXXXXX,XXXXX___,________,
+ ________,________,________,________,______XX,XXXXXXXX,XXXX____,________,
+ ________,________,________,________,_____XXX,XXXXXXXX,XXX_____,________,
+ ________,________,________,________,___XXXXX,XXXXXXXX,XXX_____,________,
+ ________,________,________,________,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,________,________,________,__XXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,________,________,________,______XX,XXXXXXXX,XXXXXX__,________,
+ ________,________,________,________,________,XXXXXXXX,XXXXXXX_,________,
+ ________,________,________,________,________,_XXXXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,__XXXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,___XXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,________,________,_____XXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXXXX___,________,________,_XXXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XX______,___XXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,________,XXXXXXXX,XXXX____,________,________,________},
+
+{
+ ________,________,________,________,_____XXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,___XXXXX,XXXXXXXX,________,________,
+ ________,________,________,________,__XXXXXX,XXXXXXXX,________,________,
+ ________,________,________,________,__XXXXXX,XXXXXXXX,________,________,
+ ________,________,________,________,_XXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,________,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_______X,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_______X,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,______XX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,____XXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,___XXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,___XXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,________,XXXXXXXX,XXX_XXXX,XXXXXXXX,________,________,
+ ________,________,________,XXXXXXXX,XX__XXXX,XXXXXXXX,________,________,
+ ________,________,_______X,XXXXXXXX,XX__XXXX,XXXXXXXX,________,________,
+ ________,________,______XX,XXXXXXXX,X___XXXX,XXXXXXXX,________,________,
+ ________,________,______XX,XXXXXXXX,____XXXX,XXXXXXXX,________,________,
+ ________,________,_____XXX,XXXXXXX_,____XXXX,XXXXXXXX,________,________,
+ ________,________,____XXXX,XXXXXXX_,____XXXX,XXXXXXXX,________,________,
+ ________,________,___XXXXX,XXXXXX__,____XXXX,XXXXXXXX,________,________,
+ ________,________,___XXXXX,XXXXX___,____XXXX,XXXXXXXX,________,________,
+ ________,________,__XXXXXX,XXXXX___,____XXXX,XXXXXXXX,________,________,
+ ________,________,_XXXXXXX,XXXX____,____XXXX,XXXXXXXX,________,________,
+ ________,________,_XXXXXXX,XXX_____,____XXXX,XXXXXXXX,________,________,
+ ________,________,XXXXXXXX,XXX_____,____XXXX,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,XX______,____XXXX,XXXXXXXX,________,________,
+ ________,______XX,XXXXXXXX,X_______,____XXXX,XXXXXXXX,________,________,
+ ________,______XX,XXXXXXXX,X_______,____XXXX,XXXXXXXX,________,________,
+ ________,_____XXX,XXXXXXXX,________,____XXXX,XXXXXXXX,________,________,
+ ________,____XXXX,XXXXXXX_,________,____XXXX,XXXXXXXX,________,________,
+ ________,____XXXX,XXXXXXX_,________,____XXXX,XXXXXXXX,________,________,
+ ________,___XXXXX,XXXXXX__,________,____XXXX,XXXXXXXX,________,________,
+ ________,__XXXXXX,XXXXX___,________,____XXXX,XXXXXXXX,________,________,
+ ________,_XXXXXXX,XXXXX___,________,____XXXX,XXXXXXXX,________,________,
+ ________,_XXXXXXX,XXXX____,________,____XXXX,XXXXXXXX,________,________,
+ ________,XXXXXXXX,XXX_____,________,____XXXX,XXXXXXXX,________,________,
+ _______X,XXXXXXXX,XXX_____,________,____XXXX,XXXXXXXX,________,________,
+ _______X,XXXXXXXX,XX______,________,____XXXX,XXXXXXXX,________,________,
+ ______XX,XXXXXXXX,X_______,________,____XXXX,XXXXXXXX,________,________,
+ _____XXX,XXXXXXXX,X_______,________,____XXXX,XXXXXXXX,________,________,
+ _____XXX,XXXXXXXX,________,________,____XXXX,XXXXXXXX,________,________,
+ ____XXXX,XXXXXXX_,________,________,____XXXX,XXXXXXXX,________,________,
+ ___XXXXX,XXXXXX__,________,________,____XXXX,XXXXXXXX,________,________,
+ ___XXXXX,XXXXXX__,________,________,____XXXX,XXXXXXXX,________,________,
+ ___XXXXX,XXXXX___,________,________,____XXXX,XXXXXXXX,________,________,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________},
+
+{
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,____XXXX,XXXXXXXX,________,________,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,________,________,
+ ________,____XXXX,XXXXXXX_,________,________,________,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,________,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,________,________,________,
+ ________,___XXXXX,XXXXXXX_,________,________,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,________,________,
+ ________,___XXXXX,XXXXXX__,________,________,________,________,________,
+ ________,__XXXXXX,XXXXXX__,________,________,________,________,________,
+ ________,__XXXXXX,XXXXXX__,________,________,________,________,________,
+ ________,__XXXXXX,XXXXX___,________,________,________,________,________,
+ ________,__XXXXXX,XXXXX___,________,________,________,________,________,
+ ________,__XXXXXX,XXXXX___,________,________,________,________,________,
+ ________,_XXXXXXX,XXXXX___,________,________,________,________,________,
+ ________,_XXXXXXX,XXXXX___,________,________,________,________,________,
+ ________,_XXXXXXX,XXXX____,______XX,XXXXXX__,________,________,________,
+ ________,_XXXXXXX,XXXX____,__XXXXXX,XXXXXXXX,XX______,________,________,
+ ________,_XXXXXXX,XXXX____,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,XXXXXXXX,XXXX__XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,XXXXXXXX,XXXX_XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,XXXXXXXX,XXX_XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXXXXXX,XX______,___XXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXX_,________,_____XXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXXX,________,
+ ________,________,________,________,________,___XXXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ________,________,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,X_______,________,________,_____XXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,_____XXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,____XXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXX____,________,________,__XXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXX___,________,________,_XXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,________,______XX,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXXXX,XXX_____,___XXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________},
+
+{
+ ________,________,________,____XXXX,XXXXX___,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,____XXXX,XXXXXXXX,XXXXX___,____XXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XX______,______XX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,X_______,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXX_,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXXX__,________,________,__XXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXX___,________,________,__XXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXX___,________,________,___XXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXXX____,________,________,____XXXX,XXXXXXXX,________,
+ _______X,XXXXXXXX,XXX_____,________,________,________,________,________,
+ _______X,XXXXXXXX,XXX_____,________,________,________,________,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,________,________,________,
+ ______XX,XXXXXXXX,XX______,________,________,________,________,________,
+ ______XX,XXXXXXXX,XX______,________,________,________,________,________,
+ _____XXX,XXXXXXXX,XX______,________,________,________,________,________,
+ _____XXX,XXXXXXXX,XX______,________,________,________,________,________,
+ _____XXX,XXXXXXXX,XX______,______XX,XXXXXX__,________,________,________,
+ _____XXX,XXXXXXXX,X_______,__XXXXXX,XXXXXXXX,XX______,________,________,
+ _____XXX,XXXXXXXX,X_______,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ _____XXX,XXXXXXXX,X_____XX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ _____XXX,XXXXXXXX,X____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ____XXXX,XXXXXXXX,X___XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ____XXXX,XXXXXXXX,X__XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ____XXXX,XXXXXXXX,X_XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXX____,___XXXXX,XXXXXXXX,XXXXXX__,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,X_______,______XX,XXXXXXXX,XXXXXX__,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,________,_______X,XXXXXXXX,XXXXXXX_,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,________,________,_XXXXXXX,XXXXXXX_,________,
+ ____XXXX,XXXXXXXX,XXXXXX__,________,________,__XXXXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,XXXXX___,________,________,__XXXXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XX______,________,________,_____XXX,XXXXXXXX,X_______,
+ ______XX,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXX_____,________,________,____XXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,X_______,
+ _______X,XXXXXXXX,XXXX____,________,________,___XXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXX___,________,________,__XXXXXX,XXXXXXXX,________,
+ ________,XXXXXXXX,XXXXXX__,________,________,_XXXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXXXX_,________,________,XXXXXXXX,XXXXXXX_,________,
+ ________,_XXXXXXX,XXXXXXXX,________,_______X,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,X_______,______XX,XXXXXXXX,XXXXXX__,________,
+ ________,__XXXXXX,XXXXXXXX,XXXX____,___XXXXX,XXXXXXXX,XXXXX___,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,________,
+ ________,________,______XX,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,________,__XXXXXX,XXXXX___,________,________,________},
+
+{
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,________,
+ ________,________,________,________,________,___XXXXX,XXXXXXX_,________,
+ ________,________,________,________,________,___XXXXX,XXXXXX__,________,
+ ________,________,________,________,________,__XXXXXX,XXXXXX__,________,
+ ________,________,________,________,________,_XXXXXXX,XXXXX___,________,
+ ________,________,________,________,________,XXXXXXXX,XXXX____,________,
+ ________,________,________,________,_______X,XXXXXXXX,XXX_____,________,
+ ________,________,________,________,______XX,XXXXXXXX,XX______,________,
+ ________,________,________,________,______XX,XXXXXXXX,XX______,________,
+ ________,________,________,________,_____XXX,XXXXXXXX,X_______,________,
+ ________,________,________,________,____XXXX,XXXXXXXX,________,________,
+ ________,________,________,________,___XXXXX,XXXXXXX_,________,________,
+ ________,________,________,________,___XXXXX,XXXXXXX_,________,________,
+ ________,________,________,________,__XXXXXX,XXXXXX__,________,________,
+ ________,________,________,________,_XXXXXXX,XXXXX___,________,________,
+ ________,________,________,________,_XXXXXXX,XXXXX___,________,________,
+ ________,________,________,________,XXXXXXXX,XXXX____,________,________,
+ ________,________,________,_______X,XXXXXXXX,XXX_____,________,________,
+ ________,________,________,_______X,XXXXXXXX,XXX_____,________,________,
+ ________,________,________,______XX,XXXXXXXX,XX______,________,________,
+ ________,________,________,______XX,XXXXXXXX,XX______,________,________,
+ ________,________,________,_____XXX,XXXXXXXX,X_______,________,________,
+ ________,________,________,____XXXX,XXXXXXXX,X_______,________,________,
+ ________,________,________,____XXXX,XXXXXXXX,________,________,________,
+ ________,________,________,___XXXXX,XXXXXXXX,________,________,________,
+ ________,________,________,___XXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,__XXXXXX,XXXXXXX_,________,________,________,
+ ________,________,________,__XXXXXX,XXXXXX__,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXXX__,________,________,________,
+ ________,________,________,_XXXXXXX,XXXXX___,________,________,________,
+ ________,________,________,XXXXXXXX,XXXXX___,________,________,________,
+ ________,________,________,XXXXXXXX,XXXX____,________,________,________,
+ ________,________,_______X,XXXXXXXX,XXXX____,________,________,________,
+ ________,________,_______X,XXXXXXXX,XXX_____,________,________,________,
+ ________,________,______XX,XXXXXXXX,XXX_____,________,________,________,
+ ________,________,______XX,XXXXXXXX,XXX_____,________,________,________,
+ ________,________,______XX,XXXXXXXX,XX______,________,________,________,
+ ________,________,_____XXX,XXXXXXXX,XX______,________,________,________,
+ ________,________,_____XXX,XXXXXXXX,X_______,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,X_______,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,X_______,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,X_______,________,________,________,
+ ________,________,___XXXXX,XXXXXXXX,________,________,________,________,
+ ________,________,___XXXXX,XXXXXXXX,________,________,________,________,
+ ________,________,___XXXXX,XXXXXXXX,________,________,________,________,
+ ________,________,__XXXXXX,XXXXXXX_,________,________,________,________,
+ ________,________,__XXXXXX,XXXXXXX_,________,________,________,________,
+ ________,________,__XXXXXX,XXXXXXX_,________,________,________,________,
+ ________,________,_XXXXXXX,XXXXXXX_,________,________,________,________,
+ ________,________,_XXXXXXX,XXXXXX__,________,________,________,________,
+ ________,________,_XXXXXXX,XXXXXX__,________,________,________,________,
+ ________,________,_XXXXXXX,XXXXXX__,________,________,________,________,
+ ________,________,XXXXXXXX,XXXXXX__,________,________,________,________,
+ ________,________,XXXXXXXX,XXXXXX__,________,________,________,________,
+ ________,________,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,________,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,________,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXXX___,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,_______X,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,______XX,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,______XX,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,______XX,XXXXXXXX,XXXX____,________,________,________,________,
+ ________,______XX,XXXXXXXX,XXXX____,________,________,________,________},
+
+{
+ ________,________,________,_XXXXXXX,XXXXX___,________,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,X_______,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXX_____,___XXXXX,XXXXXXXX,XXXX____,________,
+ ________,_XXXXXXX,XXXXXXXX,X_______,_____XXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXX_,________,_______X,XXXXXXXX,XXXXX___,________,
+ ________,XXXXXXXX,XXXXXX__,________,________,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXX___,________,________,_XXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXX___,________,________,_XXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXX____,________,________,__XXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXX____,________,________,__XXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXX____,________,________,__XXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXX____,________,________,__XXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXX___,________,
+ ________,__XXXXXX,XXXXX___,________,________,_XXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXX__,________,________,XXXXXXXX,XXXX____,________,
+ ________,___XXXXX,XXXXXXX_,________,_______X,XXXXXXXX,XXX_____,________,
+ ________,____XXXX,XXXXXXXX,X_______,_____XXX,XXXXXXXX,XX______,________,
+ ________,_____XXX,XXXXXXXX,XXX_____,___XXXXX,XXXXXXXX,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XX______,___XXXXX,XXXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,___XXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ___XXXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ___XXXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,XX______,
+ ____XXXX,XXXXXXXX,________,________,________,_____XXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXX_____,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,________,
+ ______XX,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXXX_,________,
+ ______XX,XXXXXXXX,XXXXXX__,________,_______X,XXXXXXXX,XXXXXXX_,________,
+ _______X,XXXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXXXX__,________,
+ _______X,XXXXXXXX,XXXXXXXX,XX______,___XXXXX,XXXXXXXX,XXXXXX__,________,
+ ________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________},
+
+{
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,_____XXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,_______X,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX_____,________,
+ ________,_XXXXXXX,XXXXXXXX,XX______,__XXXXXX,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXXXXX,________,_____XXX,XXXXXXXX,XXXX____,________,
+ ________,XXXXXXXX,XXXXXX__,________,______XX,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXXX___,________,_______X,XXXXXXXX,XXXXX___,________,
+ _______X,XXXXXXXX,XXXX____,________,________,XXXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,________,
+ _____XXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,________,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,X_______,________,________,____XXXX,XXXXXXXX,X_______,
+ _____XXX,XXXXXXXX,X_______,________,________,___XXXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XX______,________,________,___XXXXX,XXXXXXXX,XX______,
+ _____XXX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXX_____,________,________,__XXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXX____,________,________,_XXXXXXX,XXXXXXXX,XX______,
+ ______XX,XXXXXXXX,XXXXX___,________,________,XXXXXXXX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XXXXX___,________,_______X,XXXXXXXX,XXXXXXXX,XX______,
+ _______X,XXXXXXXX,XXXXXXX_,________,______XX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXXXXXX,________,_____XXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,XXXXXXXX,XXXXXXXX,XX______,__XXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX_XXX,XXXXXXXX,XX______,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXX__XXX,XXXXXXXX,XX______,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX___XXX,XXXXXXXX,X_______,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X____XXX,XXXXXXXX,X_______,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,_____XXX,XXXXXXXX,X_______,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXX__,_____XXX,XXXXXXXX,X_______,
+ ________,________,____XXXX,XXXXXXXX,XXXX____,_____XXX,XXXXXXXX,X_______,
+ ________,________,________,XXXXXXXX,X_______,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,________,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,________,
+ ________,________,________,________,________,____XXXX,XXXXXXXX,________,
+ ________,________,________,________,________,___XXXXX,XXXXXXX_,________,
+ ________,________,________,________,________,___XXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,X_______,________,________,___XXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXXX_,________,
+ _____XXX,XXXXXXXX,XX______,________,________,__XXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XX______,________,________,_XXXXXXX,XXXXXX__,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,_XXXXXXX,XXXXX___,________,
+ ______XX,XXXXXXXX,XXX_____,________,________,XXXXXXXX,XXXXX___,________,
+ ______XX,XXXXXXXX,XXXX____,________,_______X,XXXXXXXX,XXXX____,________,
+ _______X,XXXXXXXX,XXXXX___,________,______XX,XXXXXXXX,XXXX____,________,
+ _______X,XXXXXXXX,XXXXXX__,________,_____XXX,XXXXXXXX,XXX_____,________,
+ ________,XXXXXXXX,XXXXXXX_,________,____XXXX,XXXXXXXX,XX______,________,
+ ________,XXXXXXXX,XXXXXXXX,XX______,_XXXXXXX,XXXXXXXX,XX______,________,
+ ________,_XXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,________,
+ ________,__XXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,________,________,
+ ________,___XXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXX_,________,________,
+ ________,____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXX__,________,________,
+ ________,_____XXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXX___,________,________,
+ ________,______XX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXX____,________,________,
+ ________,________,XXXXXXXX,XXXXXXXX,XXXXXXXX,XX______,________,________,
+ ________,________,__XXXXXX,XXXXXXXX,XXXXXXXX,________,________,________,
+ ________,________,____XXXX,XXXXXXXX,XXXXXX__,________,________,________,
+ ________,________,________,XXXXXXXX,XX______,________,________,________},
+
+{
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,_XXXXXXX,XXXX____,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________},
+
+{
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ____XXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,XXXXXXXX,X_______,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________,
+ ________,________,________,________,________,________,________,________}
+};
+
+GUI_CONST_STORAGE unsigned char acFontD80_0020[320] = { /* code 0020 */
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________};
+
+GUI_CONST_STORAGE unsigned char acFontD80_002E[320] = { /* code 002E */
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,________,________,________};
+
+
+GUI_CONST_STORAGE unsigned char acFontD80_003A[320] = { /* code 003A */
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,________,________,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,XXXXXXXX,XXXXXXX_,________,
+ ________,________,________,________};
+
+GUI_CONST_STORAGE GUI_CHARINFO GUI_FontD80_CharInfo[15] = {
+ { 31, 31, 4, acFontD80_0020 } /* code 0020 ' ' */
+ ,{ 61, 61, 8, acFontD80[10] } /* code 002B '+' */
+ ,{ 61, 61, 8, acFontD80[11] } /* code 002D '-' */
+ ,{ 31, 31, 4, acFontD80_002E } /* code 002E '.' */
+ ,{ 61, 61, 8, acFontD80[0] } /* code 0030 '0' */
+ ,{ 61, 61, 8, acFontD80[1] } /* code 0031 '1' */
+ ,{ 61, 61, 8, acFontD80[2] } /* code 0032 '2' */
+ ,{ 61, 61, 8, acFontD80[3] } /* code 0033 '3' */
+ ,{ 61, 61, 8, acFontD80[4] } /* code 0034 '4' */
+ ,{ 61, 61, 8, acFontD80[5] } /* code 0035 '5' */
+ ,{ 61, 61, 8, acFontD80[6] } /* code 0036 '6' */
+ ,{ 61, 61, 8, acFontD80[7] } /* code 0037 '7' */
+ ,{ 61, 61, 8, acFontD80[8] } /* code 0038 '8' */
+ ,{ 61, 61, 8, acFontD80[9] } /* code 0039 '9' */
+ ,{ 31, 31, 4, acFontD80_003A } /* code 003A ':' */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD80_Prop4 = {
+ 0x0030 /* first character */
+ ,0x003A /* last character */
+ ,&GUI_FontD80_CharInfo[ 4] /* address of first character */
+ ,(GUI_CONST_STORAGE GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD80_Prop3 = {
+ 0x002D /* first character */
+ ,0x002E /* last character */
+ ,&GUI_FontD80_CharInfo[ 2] /* address of first character */
+ ,&GUI_FontD80_Prop4 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD80_Prop2 = {
+ 0x002B /* first character */
+ ,0x002B /* last character */
+ ,&GUI_FontD80_CharInfo[ 1] /* address of first character */
+ ,&GUI_FontD80_Prop3 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT_PROP GUI_FontD80_Prop1 = {
+ 0x0020 /* first character */
+ ,0x0020 /* last character */
+ ,&GUI_FontD80_CharInfo[ 0] /* address of first character */
+ ,&GUI_FontD80_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontD80 = {
+ GUI_FONTTYPE_PROP /* type of font */
+ ,80 /* height of font */
+ ,80 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&GUI_FontD80_Prop1}
+ ,80 /* Baseline */
+ ,0 /* LHeight */
+ ,80 /* CHeight */
+};
+
diff --git a/User/lib/lcd/gui/Font/HZ16x16.c b/User/lib/lcd/gui/Font/HZ16x16.c
new file mode 100644
index 0000000..4345cde
--- /dev/null
+++ b/User/lib/lcd/gui/Font/HZ16x16.c
@@ -0,0 +1,10891 @@
+/*
+**********************************************************************
+* UcGUI Font
+* Chinese GB2312 library
+* (c) Copyright 19xx-20xx, company name
+*
+*
+* 注:本字体文件由 ucGUI字体生成器v9.0 生成,作者:馋嘴猫(qq:602426967)
+* 字体:宋体,字形:粗体,大小:11,宽:16,高:16,水平偏移:0,垂直偏移:0
+*
+**********************************************************************
+*/
+
+#include "GUI.H"
+
+/* char: code:0x0020 */
+static GUI_CONST_STORAGE unsigned char ac0020[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: ! code:0x0021 */
+static GUI_CONST_STORAGE unsigned char ac0021[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ________, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: " code:0x0022 */
+static GUI_CONST_STORAGE unsigned char ac0022[32] = {
+ ________, ________,
+ ___XXXX_, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ _XXXX___, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: # code:0x0023 */
+static GUI_CONST_STORAGE unsigned char ac0023[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XX_XX, ________,
+ ___XX_XX, ________,
+ _XXXXXXX, ________,
+ __XX_XX_, ________,
+ __XX_XX_, ________,
+ __XX_XX_, ________,
+ _XXXXXXX, ________,
+ __XX_XX_, ________,
+ __XX_XX_, ________,
+ __XX_XX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: $ code:0x0024 */
+static GUI_CONST_STORAGE unsigned char ac0024[32] = {
+ ________, ________,
+ ________, ________,
+ ____XX__, ________,
+ __XXXXX_, ________,
+ _XX_XXXX, ________,
+ _XX_XXXX, ________,
+ __XXXX__, ________,
+ ___XXX__, ________,
+ ____XXX_, ________,
+ ____XXXX, ________,
+ _XX_XXXX, ________,
+ _XX_XXXX, ________,
+ __XXXXX_, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ________, ________};
+
+/* char: % code:0x0025 */
+static GUI_CONST_STORAGE unsigned char ac0025[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ _XX__XX_, ________,
+ XXXX_XX_, ________,
+ XXXXXX__, ________,
+ XXXXXX__, ________,
+ XXXXXXX_, ________,
+ _XXXXXXX, ________,
+ __XXXXXX, ________,
+ __XXXXXX, ________,
+ _XX_XXXX, ________,
+ _XX__XX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: & code:0x0026 */
+static GUI_CONST_STORAGE unsigned char ac0026[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXX___, ________,
+ _XX_XX__, ________,
+ _XX_XX__, ________,
+ _XXXX___, ________,
+ _XXX_XXX, ________,
+ XXXX_XX_, ________,
+ XXXX_XX_, ________,
+ XX_XXXX_, ________,
+ XX__XX_X, X_______,
+ _XXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: ' code:0x0027 */
+static GUI_CONST_STORAGE unsigned char ac0027[32] = {
+ ________, ________,
+ _XXX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ _XX_____, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: ( code:0x0028 */
+static GUI_CONST_STORAGE unsigned char ac0028[32] = {
+ ________, ________,
+ ______XX, ________,
+ _____XX_, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ _____XX_, ________,
+ ______XX, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: ) code:0x0029 */
+static GUI_CONST_STORAGE unsigned char ac0029[32] = {
+ ________, ________,
+ XX______, ________,
+ _XX_____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ __XX____, ________,
+ __XX____, ________,
+ _XX_____, ________,
+ XX______, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: * code:0x002A */
+static GUI_CONST_STORAGE unsigned char ac002A[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ XXXXXXXX, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ XXXXXXXX, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: + code:0x002B */
+static GUI_CONST_STORAGE unsigned char ac002B[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ _XXXXXXX, X_______,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: , code:0x002C */
+static GUI_CONST_STORAGE unsigned char ac002C[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ _XXX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ _XX_____, ________,
+ ________, ________};
+
+/* char: - code:0x002D */
+static GUI_CONST_STORAGE unsigned char ac002D[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: . code:0x002E */
+static GUI_CONST_STORAGE unsigned char ac002E[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ _XXX____, ________,
+ _XXX____, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: / code:0x002F */
+static GUI_CONST_STORAGE unsigned char ac002F[32] = {
+ ________, ________,
+ ______XX, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ __XX____, ________,
+ __XX____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: 0 code:0x0030 */
+static GUI_CONST_STORAGE unsigned char ac0030[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XXX__, ________,
+ __XX_XX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ __XX_XX_, ________,
+ ___XXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: 1 code:0x0031 */
+static GUI_CONST_STORAGE unsigned char ac0031[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XX___, ________,
+ _XXXX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ _XXXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: 2 code:0x0032 */
+static GUI_CONST_STORAGE unsigned char ac0032[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ ______XX, ________,
+ _____XX_, ________,
+ ____XX__, ________,
+ ___XX___, ________,
+ __XX____, ________,
+ _XX___XX, ________,
+ _XXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: 3 code:0x0033 */
+static GUI_CONST_STORAGE unsigned char ac0033[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _____XX_, ________,
+ ___XXX__, ________,
+ _____XX_, ________,
+ ______XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ __XXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: 4 code:0x0034 */
+static GUI_CONST_STORAGE unsigned char ac0034[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ _____XX_, ________,
+ ____XXX_, ________,
+ ____XXX_, ________,
+ ___XXXX_, ________,
+ __XX_XX_, ________,
+ _XX__XX_, ________,
+ _XXXXXXX, X_______,
+ _____XX_, ________,
+ _____XX_, ________,
+ ___XXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: 5 code:0x0035 */
+static GUI_CONST_STORAGE unsigned char ac0035[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ _XXXXXXX, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XXXXXX_, ________,
+ _XX___XX, ________,
+ ______XX, ________,
+ ______XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ __XXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: 6 code:0x0036 */
+static GUI_CONST_STORAGE unsigned char ac0036[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XXX__, ________,
+ __XX_XX_, ________,
+ _XX_____, ________,
+ _XXXXXX_, ________,
+ _XXX__XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ __XX__XX, ________,
+ ___XXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: 7 code:0x0037 */
+static GUI_CONST_STORAGE unsigned char ac0037[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ _XXXXXXX, ________,
+ _XX___XX, ________,
+ _____XX_, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: 8 code:0x0038 */
+static GUI_CONST_STORAGE unsigned char ac0038[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ __XXXXX_, ________,
+ __XX_XX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ __XXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: 9 code:0x0039 */
+static GUI_CONST_STORAGE unsigned char ac0039[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXX__, ________,
+ _XX__XX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX__XXX, ________,
+ __XXXXXX, ________,
+ ______XX, ________,
+ ______XX, ________,
+ __XX_XX_, ________,
+ ___XXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: : code:0x003A */
+static GUI_CONST_STORAGE unsigned char ac003A[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XXX__, ________,
+ ___XXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XXX__, ________,
+ ___XXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: ; code:0x003B */
+static GUI_CONST_STORAGE unsigned char ac003B[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XX___, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ________, ________};
+
+/* char: < code:0x003C */
+static GUI_CONST_STORAGE unsigned char ac003C[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ _____XX_, ________,
+ ____XX__, ________,
+ ___XX___, ________,
+ __XX____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ __XX____, ________,
+ ___XX___, ________,
+ ____XX__, ________,
+ _____XX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: = code:0x003D */
+static GUI_CONST_STORAGE unsigned char ac003D[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: > code:0x003E */
+static GUI_CONST_STORAGE unsigned char ac003E[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XX____, ________,
+ ___XX___, ________,
+ ____XX__, ________,
+ _____XX_, ________,
+ ______XX, ________,
+ ______XX, ________,
+ _____XX_, ________,
+ ____XX__, ________,
+ ___XX___, ________,
+ __XX____, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: ? code:0x003F */
+static GUI_CONST_STORAGE unsigned char ac003F[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _____XX_, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ________, ________,
+ ___XXX__, ________,
+ ___XXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: @ code:0x0040 */
+static GUI_CONST_STORAGE unsigned char ac0040[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXX__, ________,
+ _XX__XX_, ________,
+ XX_XXXXX, ________,
+ XXXXXXXX, ________,
+ XXXXXXXX, ________,
+ XXXXXXXX, ________,
+ XXXXXXXX, ________,
+ XX_XXXX_, ________,
+ _XX___XX, ________,
+ __XXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: A code:0x0041 */
+static GUI_CONST_STORAGE unsigned char ac0041[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ _XXXXXX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: B code:0x0042 */
+static GUI_CONST_STORAGE unsigned char ac0042[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX__XX_, ________,
+ _XXXXX__, ________,
+ _XX__XX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ XXXXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: C code:0x0043 */
+static GUI_CONST_STORAGE unsigned char ac0043[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXXX, ________,
+ _XX___XX, ________,
+ XX____XX, ________,
+ XX______, ________,
+ XX______, ________,
+ XX______, ________,
+ XX______, ________,
+ XX____XX, ________,
+ _XX__XX_, ________,
+ __XXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: D code:0x0044 */
+static GUI_CONST_STORAGE unsigned char ac0044[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXX__, ________,
+ _XX__XX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX__XX_, ________,
+ XXXXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: E code:0x0045 */
+static GUI_CONST_STORAGE unsigned char ac0045[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXX_, ________,
+ _XX___XX, ________,
+ _XX_XX__, ________,
+ _XX_XX__, ________,
+ _XXXXX__, ________,
+ _XX_XX__, ________,
+ _XX_XX__, ________,
+ _XX_____, ________,
+ _XX___XX, ________,
+ XXXXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: F code:0x0046 */
+static GUI_CONST_STORAGE unsigned char ac0046[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXX_, ________,
+ _XX___XX, ________,
+ _XX_XX__, ________,
+ _XX_XX__, ________,
+ _XXXXX__, ________,
+ _XX_XX__, ________,
+ _XX_XX__, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ XXXX____, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: G code:0x0047 */
+static GUI_CONST_STORAGE unsigned char ac0047[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXX_, ________,
+ _XX__XX_, ________,
+ XX___XX_, ________,
+ XX______, ________,
+ XX______, ________,
+ XX______, ________,
+ XX__XXXX, ________,
+ XX___XX_, ________,
+ _XX__XX_, ________,
+ __XXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: H code:0x0048 */
+static GUI_CONST_STORAGE unsigned char ac0048[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XXXXXX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: I code:0x0049 */
+static GUI_CONST_STORAGE unsigned char ac0049[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ _XXXXXX_, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ _XXXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: J code:0x004A */
+static GUI_CONST_STORAGE unsigned char ac004A[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXXX, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ XX__XX__, ________,
+ XXXXX___, ________,
+ ________, ________};
+
+/* char: K code:0x004B */
+static GUI_CONST_STORAGE unsigned char ac004B[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XX__XX_, ________,
+ _XX_XX__, ________,
+ _XXXX___, ________,
+ _XXXX___, ________,
+ _XXXX___, ________,
+ _XX_XX__, ________,
+ _XX_XX__, ________,
+ _XX__XX_, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: L code:0x004C */
+static GUI_CONST_STORAGE unsigned char ac004C[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXX____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX___XX, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: M code:0x004D */
+static GUI_CONST_STORAGE unsigned char ac004D[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: N code:0x004E */
+static GUI_CONST_STORAGE unsigned char ac004E[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XXX_XX_, ________,
+ _XXX_XX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XX_XXX_, ________,
+ _XX_XXX_, ________,
+ _XX_XXX_, ________,
+ XXXX_XX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: O code:0x004F */
+static GUI_CONST_STORAGE unsigned char ac004F[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXX__, ________,
+ _XX__XX_, ________,
+ XX____XX, ________,
+ XX____XX, ________,
+ XX____XX, ________,
+ XX____XX, ________,
+ XX____XX, ________,
+ XX____XX, ________,
+ _XX__XX_, ________,
+ __XXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: P code:0x0050 */
+static GUI_CONST_STORAGE unsigned char ac0050[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XXXXXX_, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ XXXX____, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: Q code:0x0051 */
+static GUI_CONST_STORAGE unsigned char ac0051[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXX__, ________,
+ _XX__XX_, ________,
+ XX____XX, ________,
+ XX____XX, ________,
+ XX____XX, ________,
+ XX____XX, ________,
+ XX____XX, ________,
+ XXXXX_XX, ________,
+ _XX_XXX_, ________,
+ __XXXX__, ________,
+ _____XXX, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: R code:0x0052 */
+static GUI_CONST_STORAGE unsigned char ac0052[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXX__, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XXXXX__, ________,
+ _XXXX___, ________,
+ _XX_XX__, ________,
+ _XX_XX__, ________,
+ _XX__XX_, ________,
+ XXXX_XXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: S code:0x0053 */
+static GUI_CONST_STORAGE unsigned char ac0053[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXXX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX_____, ________,
+ __XXX___, ________,
+ ____XXX_, ________,
+ ______XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XXXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: T code:0x0054 */
+static GUI_CONST_STORAGE unsigned char ac0054[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ XX_XX_XX, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ __XXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: U code:0x0055 */
+static GUI_CONST_STORAGE unsigned char ac0055[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ __XXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: V code:0x0056 */
+static GUI_CONST_STORAGE unsigned char ac0056[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: W code:0x0057 */
+static GUI_CONST_STORAGE unsigned char ac0057[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: X code:0x0058 */
+static GUI_CONST_STORAGE unsigned char ac0058[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XX__XX_, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ _XX__XX_, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: Y code:0x0059 */
+static GUI_CONST_STORAGE unsigned char ac0059[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ __XXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: Z code:0x005A */
+static GUI_CONST_STORAGE unsigned char ac005A[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXXX, ________,
+ _XX__XX_, ________,
+ _____XX_, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ __XX____, ________,
+ __XX__XX, ________,
+ _XXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: [ code:0x005B */
+static GUI_CONST_STORAGE unsigned char ac005B[32] = {
+ ________, ________,
+ ___XXXX_, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XXXX_, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: \ code:0x005C */
+static GUI_CONST_STORAGE unsigned char ac005C[32] = {
+ ________, ________,
+ ________, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ ______XX, ________,
+ ________, ________};
+
+/* char: ] code:0x005D */
+static GUI_CONST_STORAGE unsigned char ac005D[32] = {
+ ________, ________,
+ _XXXXX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ _XXXXX__, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: ^ code:0x005E */
+static GUI_CONST_STORAGE unsigned char ac005E[32] = {
+ ________, ________,
+ ___XXX__, ________,
+ __XX_XX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: _ code:0x005F */
+static GUI_CONST_STORAGE unsigned char ac005F[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ ________, ________};
+
+/* char: ` code:0x0060 */
+static GUI_CONST_STORAGE unsigned char ac0060[32] = {
+ _XXX____, ________,
+ ___XX___, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: a code:0x0061 */
+static GUI_CONST_STORAGE unsigned char ac0061[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXX__, ________,
+ _XX__XX_, ________,
+ ____XXX_, ________,
+ __XXXXX_, ________,
+ _XX__XX_, ________,
+ _XX_XXX_, ________,
+ __XXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: b code:0x0062 */
+static GUI_CONST_STORAGE unsigned char ac0062[32] = {
+ ________, ________,
+ ________, ________,
+ XXX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XXXXXX_, ________,
+ _XXX__XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XXXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: c code:0x0063 */
+static GUI_CONST_STORAGE unsigned char ac0063[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XXXX_, ________,
+ __XX__XX, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ __XX__XX, ________,
+ ___XXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: d code:0x0064 */
+static GUI_CONST_STORAGE unsigned char ac0064[32] = {
+ ________, ________,
+ ________, ________,
+ _____XXX, ________,
+ ______XX, ________,
+ ______XX, ________,
+ ______XX, ________,
+ __XXXXXX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX__XXX, ________,
+ __XXXXXX, X_______,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: e code:0x0065 */
+static GUI_CONST_STORAGE unsigned char ac0065[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XXXXXXX, ________,
+ _XX_____, ________,
+ _XX___XX, ________,
+ __XXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: f code:0x0066 */
+static GUI_CONST_STORAGE unsigned char ac0066[32] = {
+ ________, ________,
+ ________, ________,
+ ____XXX_, ________,
+ ___XX_XX, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ _XXXXXX_, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ _XXXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: g code:0x0067 */
+static GUI_CONST_STORAGE unsigned char ac0067[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXXX, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ __XXXX__, ________,
+ _XX_____, ________,
+ __XXXXX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ __XXXXX_, ________,
+ ________, ________};
+
+/* char: h code:0x0068 */
+static GUI_CONST_STORAGE unsigned char ac0068[32] = {
+ ________, ________,
+ ________, ________,
+ XXX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XXXXXX_, ________,
+ _XXX__XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ XXXX_XXX, X_______,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: i code:0x0069 */
+static GUI_CONST_STORAGE unsigned char ac0069[32] = {
+ ________, ________,
+ ________, ________,
+ __XXX___, ________,
+ __XXX___, ________,
+ ________, ________,
+ ________, ________,
+ _XXXX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ _XXXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: j code:0x006A */
+static GUI_CONST_STORAGE unsigned char ac006A[32] = {
+ ________, ________,
+ ________, ________,
+ ____XXX_, ________,
+ ____XXX_, ________,
+ ________, ________,
+ ________, ________,
+ ___XXXX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _XX__XX_, ________,
+ _XXXXX__, ________,
+ ________, ________};
+
+/* char: k code:0x006B */
+static GUI_CONST_STORAGE unsigned char ac006B[32] = {
+ ________, ________,
+ ________, ________,
+ XXX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_____, ________,
+ _XX_XXXX, ________,
+ _XX_XX__, ________,
+ _XXXX___, ________,
+ _XXXXX__, ________,
+ _XX_XX__, ________,
+ _XX__XX_, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: l code:0x006C */
+static GUI_CONST_STORAGE unsigned char ac006C[32] = {
+ ________, ________,
+ ________, ________,
+ _XXXX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ _XXXXXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: m code:0x006D */
+static GUI_CONST_STORAGE unsigned char ac006D[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXX__, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ XXXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: n code:0x006E */
+static GUI_CONST_STORAGE unsigned char ac006E[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXX_, ________,
+ _XXX__XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ XXXX_XXX, X_______,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: o code:0x006F */
+static GUI_CONST_STORAGE unsigned char ac006F[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XXX__, ________,
+ __XX_XX_, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ __XX_XX_, ________,
+ ___XXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: p code:0x0070 */
+static GUI_CONST_STORAGE unsigned char ac0070[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXX_, ________,
+ _XXX__XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XXX__XX, ________,
+ _XXXXXX_, ________,
+ _XX_____, ________,
+ XXXX____, ________,
+ ________, ________};
+
+/* char: q code:0x0071 */
+static GUI_CONST_STORAGE unsigned char ac0071[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXXX, ________,
+ _XX__XXX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX__XXX, ________,
+ __XXXXXX, ________,
+ ______XX, ________,
+ _____XXX, X_______,
+ ________, ________};
+
+/* char: r code:0x0072 */
+static GUI_CONST_STORAGE unsigned char ac0072[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ __XXX_XX, ________,
+ __XX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ XXXXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: s code:0x0073 */
+static GUI_CONST_STORAGE unsigned char ac0073[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ __XXXXX_, ________,
+ _XX__XX_, ________,
+ _XX_____, ________,
+ __XXXX__, ________,
+ _____XX_, ________,
+ _XX__XX_, ________,
+ _XXXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: t code:0x0074 */
+static GUI_CONST_STORAGE unsigned char ac0074[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ _XXXXXX_, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ___XX_XX, ________,
+ ____XXX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: u code:0x0075 */
+static GUI_CONST_STORAGE unsigned char ac0075[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXX__XXX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX___XX, ________,
+ _XX__XXX, ________,
+ __XXXXXX, X_______,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: v code:0x0076 */
+static GUI_CONST_STORAGE unsigned char ac0076[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XX__XX_, ________,
+ _XX__XX_, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: w code:0x0077 */
+static GUI_CONST_STORAGE unsigned char ac0077[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXXXXXX, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ _XXXXXX_, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ __XXXX__, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: x code:0x0078 */
+static GUI_CONST_STORAGE unsigned char ac0078[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ _XXXXXXX, ________,
+ __XX_XX_, ________,
+ ___XXX__, ________,
+ ___XXX__, ________,
+ ___XXX__, ________,
+ __XX_XX_, ________,
+ _XXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: y code:0x0079 */
+static GUI_CONST_STORAGE unsigned char ac0079[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ XXXX_XXX, X_______,
+ _XX___XX, ________,
+ __XX_XX_, ________,
+ __XX_XX_, ________,
+ ___XXX__, ________,
+ ___XXX__, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ _XXX____, ________,
+ ________, ________};
+
+/* char: z code:0x007A */
+static GUI_CONST_STORAGE unsigned char ac007A[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ _XXXXXXX, ________,
+ _XX__XX_, ________,
+ ____XX__, ________,
+ ___XX___, ________,
+ ___XX___, ________,
+ __XX__XX, ________,
+ _XXXXXXX, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: { code:0x007B */
+static GUI_CONST_STORAGE unsigned char ac007B[32] = {
+ ________, ________,
+ _____XXX, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ ____XX__, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XX_, ________,
+ _____XXX, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: | code:0x007C */
+static GUI_CONST_STORAGE unsigned char ac007C[32] = {
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ____XX__, ________,
+ ________, ________};
+
+/* char: } code:0x007D */
+static GUI_CONST_STORAGE unsigned char ac007D[32] = {
+ ________, ________,
+ _XXX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ ___XX___, ________,
+ __XX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ __XX____, ________,
+ _XXX____, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: ~ code:0x007E */
+static GUI_CONST_STORAGE unsigned char ac007E[32] = {
+ __XX____, ________,
+ _XXXXXXX, ________,
+ _____XX_, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: code:0x007F */
+static GUI_CONST_STORAGE unsigned char ac007F[32] = {
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________,
+ ________, ________};
+
+/* char: × code:0xA1C1 */
+static GUI_CONST_STORAGE unsigned char acA1C1[32] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ __XX____,
+ _____XX_,
+ _XX_____,
+ ______XX,
+ XX______,
+ _______X,
+ X_______,
+ ______XX,
+ XX______,
+ _____XX_,
+ _XX_____,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: √ code:0xA1CC */
+static GUI_CONST_STORAGE unsigned char acA1CC[32] = {
+ ________,
+ _____XX_,
+ ________,
+ _____XX_,
+ ________,
+ ____XX__,
+ ________,
+ ____XX__,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ __XX____,
+ ________,
+ _XX_____,
+ ________,
+ _XX_____,
+ ___XX___,
+ XX______,
+ __XXXX_X,
+ X_______,
+ _XX__XXX,
+ X_______,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: ℃ code:0xA1E6 */
+static GUI_CONST_STORAGE unsigned char acA1E6[32] = {
+ __XXX___,
+ ________,
+ _XX_XX__,
+ ________,
+ _XX_XXXX,
+ XXXXXXX_,
+ __XXXXX_,
+ ____XXX_,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ ________,
+ ____XX__,
+ ________,
+ ____XX__,
+ ________,
+ ____XX__,
+ ________,
+ ____XX__,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ ______XX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: → code:0xA1FA */
+static GUI_CONST_STORAGE unsigned char acA1FA[32] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ _XXXX___,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ _XXXX___,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: ← code:0xA1FB */
+static GUI_CONST_STORAGE unsigned char acA1FB[32] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ___XXXX_,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ ___XXXX_,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: ↑ code:0xA1FC */
+static GUI_CONST_STORAGE unsigned char acA1FC[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ______XX,
+ XX______,
+ ______XX,
+ XX______,
+ _____XXX,
+ XXX_____,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: ↓ code:0xA1FD */
+static GUI_CONST_STORAGE unsigned char acA1FD[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _____XXX,
+ XXX_____,
+ ______XX,
+ XX______,
+ ______XX,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 安 code:0xB0B2 */
+static GUI_CONST_STORAGE unsigned char acB0B2[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _XX_____,
+ _____XX_,
+ _XX___XX,
+ _____XX_,
+ ______XX,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ___XXXXX,
+ _XX_____,
+ _______X,
+ XX______,
+ ______XX,
+ _XXX____,
+ ____XXX_,
+ ___XX___,
+ _XXXX___,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 按 code:0xB0B4 */
+static GUI_CONST_STORAGE unsigned char acB0B4[32] = {
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ __XX____,
+ ___XX_XX,
+ XXXXXXX_,
+ _XXXXXXX,
+ _____XX_,
+ ___XX_XX,
+ _XX__XX_,
+ ___XX___,
+ _XX_____,
+ ___XX_XX,
+ XXXXXXX_,
+ ___XXX__,
+ XX__XX__,
+ _XXXX___,
+ XX__XX__,
+ ___XX__X,
+ XX_XX___,
+ ___XX___,
+ _XXX____,
+ ___XX___,
+ _XXXX___,
+ ___XX___,
+ XX__XX__,
+ _XXXX_XX,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 版 code:0xB0E6 */
+static GUI_CONST_STORAGE unsigned char acB0E6[32] = {
+ _____XX_,
+ ________,
+ __XX_XX_,
+ ____XXX_,
+ __XX_XX_,
+ XXXXX___,
+ __XX_XX_,
+ XX______,
+ __XXXXXX,
+ XX______,
+ __XX____,
+ XXXXXX__,
+ __XX____,
+ XXXXXX__,
+ __XXXXX_,
+ XXXXXX__,
+ __XX_XX_,
+ XXXXXX__,
+ __XX_XX_,
+ XXXXXX__,
+ __XX_XX_,
+ XX_XX___,
+ __XX_XX_,
+ XX_XX___,
+ __XX_XXX,
+ X_XXXX__,
+ _XX__XXX,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 保 code:0xB1A3 */
+static GUI_CONST_STORAGE unsigned char acB1A3[32] = {
+ ____XX__,
+ ________,
+ ____XXXX,
+ XXXXXX__,
+ ____XXXX,
+ ____XX__,
+ ___XX_XX,
+ ____XX__,
+ ___XX_XX,
+ XXXXXX__,
+ __XXX___,
+ _XX_____,
+ _XXXX___,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ XXXX____,
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ XXXXX___,
+ ___XX_XX,
+ _XX_XX__,
+ ___XXXX_,
+ _XX__XX_,
+ ___XX___,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 饱 code:0xB1A5 */
+static GUI_CONST_STORAGE unsigned char acB1A5[32] = {
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ___XXXXX,
+ XXXXXX__,
+ __XX_XXX,
+ X___XX__,
+ __XXXXXX,
+ ____XX__,
+ _XX__XXX,
+ XXXXXX__,
+ ___XX__X,
+ X_XXXX__,
+ ___XX__X,
+ X_XXXX__,
+ ___XX__X,
+ XXXXXX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ X_XXX___,
+ ___XXXXX,
+ X____XX_,
+ ___XXX_X,
+ X____XX_,
+ ___XX___,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 报 code:0xB1A8 */
+static GUI_CONST_STORAGE unsigned char acB1A8[32] = {
+ ___XX___,
+ ________,
+ ___XX__X,
+ XXXXXX__,
+ ___XX__X,
+ X___XX__,
+ _XXXXXXX,
+ X___XX__,
+ ___XX__X,
+ X_XXXX__,
+ ___XX__X,
+ X_______,
+ ___XXXXX,
+ XXXXXX__,
+ ___XXX_X,
+ XXX_XX__,
+ _XXXX__X,
+ XXX_XX__,
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ X_XX____,
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ XX__XX__,
+ _XXXX__X,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 备 code:0xB1B8 */
+static GUI_CONST_STORAGE unsigned char acB1B8[32] = {
+ _____XX_,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ___XXX__,
+ __XX____,
+ __XX_XX_,
+ _XX_____,
+ ______XX,
+ XX______,
+ ____XXX_,
+ _XXX____,
+ _XXXX___,
+ ___XXXX_,
+ ___XXXXX,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 本 code:0xB1BE */
+static GUI_CONST_STORAGE unsigned char acB1BE[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ XX______,
+ _____XXX,
+ XXX_____,
+ _____XXX,
+ XXX_____,
+ ____XX_X,
+ X_XX____,
+ ___XX__X,
+ X__XX___,
+ __XX___X,
+ X___XX__,
+ _XX_XXXX,
+ XXXX_XX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 闭 code:0xB1D5 */
+static GUI_CONST_STORAGE unsigned char acB1D5[32] = {
+ __XX____,
+ ________,
+ ___XXXXX,
+ XXXXXXX_,
+ ________,
+ _____XX_,
+ __XX____,
+ _XX__XX_,
+ __XX____,
+ _XX__XX_,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX____,
+ XXX__XX_,
+ __XX___X,
+ XXX__XX_,
+ __XX__XX,
+ _XX__XX_,
+ __XX_XX_,
+ _XX__XX_,
+ __XXXX__,
+ _XX__XX_,
+ __XX___X,
+ XXX__XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 编 code:0xB1E0 */
+static GUI_CONST_STORAGE unsigned char acB1E0[32] = {
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ __XX____,
+ __XX_XXX,
+ XXXXXXX_,
+ __XX_XXX,
+ X____XX_,
+ _XXXXX_X,
+ X____XX_,
+ ____XX_X,
+ XXXXXXX_,
+ ___XX__X,
+ X_______,
+ __XX___X,
+ XXXXXXX_,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ XXXXXXX_,
+ _______X,
+ XXXXXXX_,
+ ____XXXX,
+ XXXXXXX_,
+ _XXXX__X,
+ XXXXXXX_,
+ _______X,
+ X___XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 变 code:0xB1E4 */
+static GUI_CONST_STORAGE unsigned char acB1E4[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ _XX_____,
+ ___XXXX_,
+ _XXXX___,
+ ___XXXX_,
+ _XX_XX__,
+ __XX_XX_,
+ _XX__XX_,
+ _XX_____,
+ _____XX_,
+ ___XXXXX,
+ XXXXX___,
+ ____XX__,
+ __XX____,
+ _____XX_,
+ _XX_____,
+ ______XX,
+ XX______,
+ ____XXX_,
+ _XXX____,
+ _XXXX___,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 表 code:0xB1ED */
+static GUI_CONST_STORAGE unsigned char acB1ED[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ ___XXXXX,
+ XXXXX___,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ XX______,
+ _____XX_,
+ XX__XX__,
+ ____XXX_,
+ _XXXX___,
+ ___XXXX_,
+ __XX____,
+ _XXX_XXX,
+ X__XX___,
+ _____XXX,
+ ____XXX_,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 不 code:0xB2BB */
+static GUI_CONST_STORAGE unsigned char acB2BB[32] = {
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ X_______,
+ ______XX,
+ X_______,
+ _____XXX,
+ X_XX____,
+ ____XX_X,
+ X__XX___,
+ ___XX__X,
+ X___XX__,
+ __XX___X,
+ X____XX_,
+ _XX____X,
+ X____XX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 擦 code:0xB2C1 */
+static GUI_CONST_STORAGE unsigned char acB2C1[32] = {
+ ___XX___,
+ _XX_____,
+ ___XX_XX,
+ XXXXXXX_,
+ ___XX_XX,
+ _____XX_,
+ _XXXXX_X,
+ X__XX___,
+ ___XX__X,
+ XXXXXXX_,
+ ___XX_XX,
+ _XXXXXX_,
+ ___XX__X,
+ XXXXXXX_,
+ ___XXXXX,
+ XX__XX__,
+ _XXXX__X,
+ XXXXXXX_,
+ ___XX_XX,
+ ________,
+ ___XX_XX,
+ XXXXXXX_,
+ ___XX__X,
+ X_XXXX__,
+ ___XX__X,
+ X_XX_XX_,
+ _XXXX_XX,
+ _XXX_XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 操 code:0xB2D9 */
+static GUI_CONST_STORAGE unsigned char acB2D9[32] = {
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ XXXXX___,
+ _XXXXX__,
+ ________,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ XXXXXX__,
+ ___XXX__,
+ ________,
+ _XXXX___,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ XXXX____,
+ ___XX__X,
+ XXXXX___,
+ ___XXXXX,
+ _XX_XXX_,
+ _XXXX___,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 测 code:0xB2E2 */
+static GUI_CONST_STORAGE unsigned char acB2E2[32] = {
+ ________,
+ _____XX_,
+ __XX_XXX,
+ XXX__XX_,
+ ___XXXX_,
+ _XX__XX_,
+ _____XXX,
+ XXXXXXX_,
+ _XX__XXX,
+ XXXXXXX_,
+ __XX_XXX,
+ XXXXXXX_,
+ _____XXX,
+ XXXXXXX_,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XXXXX,
+ XXXXXXX_,
+ __XX___X,
+ X__XXXX_,
+ __XX__XX,
+ XX___XX_,
+ _XX___XX,
+ _XX__XX_,
+ _XX__XX_,
+ _XX__XX_,
+ ____XX__,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 差 code:0xB2EE */
+static GUI_CONST_STORAGE unsigned char acB2EE[32] = {
+ ____XX__,
+ __XX____,
+ _____XX_,
+ _XX_____,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ ___XXXXX,
+ XXXXX___,
+ ______XX,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ ________,
+ ____XX__,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ __XX____,
+ XX______,
+ _XX_____,
+ XX______,
+ ________,
+ XX______,
+ ___XXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 长 code:0xB3A4 */
+static GUI_CONST_STORAGE unsigned char acB3A4[32] = {
+ ____XX__,
+ ___XX___,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ XX______,
+ ____XX_X,
+ X_______,
+ ____XX__,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ ____XX_X,
+ X_______,
+ ____XX__,
+ XX______,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ __XX____,
+ ____XXXX,
+ ___XX___,
+ ____XXX_,
+ ____XXX_,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 程 code:0xB3CC */
+static GUI_CONST_STORAGE unsigned char acB3CC[32] = {
+ ________,
+ ________,
+ ____XXXX,
+ XXXXXX__,
+ _XXXX__X,
+ X___XX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ XXXXXX__,
+ _XXXXXX_,
+ ________,
+ ___XX___,
+ ________,
+ ___XXX_X,
+ XXXXXX__,
+ __XXXXX_,
+ _XX_____,
+ __XXX___,
+ _XX_____,
+ _XXXX__X,
+ XXXXXX__,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX_XX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 出 code:0xB3F6 */
+static GUI_CONST_STORAGE unsigned char acB3F6[32] = {
+ _______X,
+ X_______,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XX____X,
+ X____XX_,
+ _XX____X,
+ X____XX_,
+ _XX____X,
+ X____XX_,
+ _XX____X,
+ X____XX_,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 储 code:0xB4A2 */
+static GUI_CONST_STORAGE unsigned char acB4A2[32] = {
+ ____XX__,
+ __XX____,
+ ____XXX_,
+ __XX_XX_,
+ ____XXXX,
+ _XXXXXX_,
+ ___XX_XX,
+ __XXXX__,
+ ___XX___,
+ XXXXXXX_,
+ __XXXXXX,
+ __XX____,
+ _XXXX_XX,
+ _XXXXX__,
+ ___XX_XX,
+ XXX_XX__,
+ ___XX_XX,
+ XXX_XX__,
+ ___XX_XX,
+ _XXXXX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ XXX_XX__,
+ ___XX_XX,
+ _XXXXX__,
+ ___XX___,
+ _XX_XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 传 code:0xB4AB */
+static GUI_CONST_STORAGE unsigned char acB4AB[32] = {
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ____XXXX,
+ XXXXXX__,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ XX______,
+ __XXXXXX,
+ XXXXXXX_,
+ _XXXX___,
+ XX______,
+ ___XX__X,
+ X_______,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ XXXX____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 磁 code:0xB4C5 */
+static GUI_CONST_STORAGE unsigned char acB4C5[32] = {
+ _______X,
+ X___XX__,
+ ________,
+ XX_XX___,
+ _XXXXXXX,
+ XXXXXXX_,
+ ___XX___,
+ ________,
+ ___XX__X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XXXXXX,
+ ___XX___,
+ _XXXXXXX,
+ XX_XXXX_,
+ __XXXXXX,
+ XXXXXXX_,
+ __XXXX_X,
+ X___XX__,
+ __XXXX_X,
+ X___XX__,
+ __XXXXXX,
+ XX_XXXX_,
+ __XXXXXX,
+ XXXXXXX_,
+ ________,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 次 code:0xB4CE */
+static GUI_CONST_STORAGE unsigned char acB4CE[32] = {
+ _______X,
+ X_______,
+ __XX___X,
+ X_______,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ XXXXXXX_,
+ ______XX,
+ _____XX_,
+ ______XX,
+ ____XX__,
+ _____XX_,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ __XX____,
+ XXXX____,
+ __XX____,
+ XXXX____,
+ _XX____X,
+ X__XX___,
+ _XX___XX,
+ ____XX__,
+ _____XX_,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 存 code:0xB4E6 */
+static GUI_CONST_STORAGE unsigned char acB4E6[32] = {
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ ________,
+ ____XX__,
+ ________,
+ ____XX_X,
+ XXXXXX__,
+ ___XXX__,
+ ___XX___,
+ __XXXX__,
+ __XX____,
+ _XX_XX__,
+ __XX____,
+ ____XXXX,
+ XXXXXXX_,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 大 code:0xB4F3 */
+static GUI_CONST_STORAGE unsigned char acB4F3[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ ______XX,
+ XX______,
+ ______XX,
+ XX______,
+ ______XX,
+ XX______,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 待 code:0xB4FD */
+static GUI_CONST_STORAGE unsigned char acB4FD[32] = {
+ ____XX__,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ __XX__XX,
+ XXXXXX__,
+ _XX_XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ __XXX___,
+ ___XX___,
+ _XXXX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ ___XX___,
+ ___XX_XX,
+ ___XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 单 code:0xB5A5 */
+static GUI_CONST_STORAGE unsigned char acB5A5[32] = {
+ ____XX__,
+ __XX____,
+ _____XX_,
+ _XX_____,
+ ___XXXXX,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXX___,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 弹 code:0xB5AF */
+static GUI_CONST_STORAGE unsigned char acB5AF[32] = {
+ _______X,
+ X__XX___,
+ _XXXXX__,
+ XXXX____,
+ ____XXXX,
+ XXXXXX__,
+ ____XXXX,
+ _XX_XX__,
+ _XXXXXXX,
+ _XX_XX__,
+ _XX___XX,
+ XXXXXX__,
+ _XX___XX,
+ _XX_XX__,
+ _XX___XX,
+ _XX_XX__,
+ _XXXXXXX,
+ XXXXXX__,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ____XXXX,
+ XXXXXXX_,
+ ____XX__,
+ _XX_____,
+ __XXX___,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 的 code:0xB5C4 */
+static GUI_CONST_STORAGE unsigned char acB5C4[32] = {
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ___XX___,
+ _XXXXXX_,
+ __XXXXXX,
+ XX___XX_,
+ __XX__XX,
+ X____XX_,
+ __XX__XX,
+ _____XX_,
+ __XX__XX,
+ _XX__XX_,
+ __XXXXXX,
+ __XX_XX_,
+ __XX__XX,
+ __XX_XX_,
+ __XX__XX,
+ _____XX_,
+ __XX__XX,
+ _____XX_,
+ __XX__XX,
+ _____XX_,
+ __XXXXXX,
+ _____XX_,
+ __XX__XX,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 低 code:0xB5CD */
+static GUI_CONST_STORAGE unsigned char acB5CD[32] = {
+ ____XX__,
+ ________,
+ ____XX__,
+ __XXXX__,
+ ____XXXX,
+ XXXX____,
+ ___XX_XX,
+ __XX____,
+ ___XX_XX,
+ __XX____,
+ __XXX_XX,
+ __XX____,
+ _XXXX_XX,
+ XXXXXXX_,
+ ___XX_XX,
+ __XX____,
+ ___XX_XX,
+ __XX____,
+ ___XX_XX,
+ __XX____,
+ ___XX_XX,
+ XX_XX___,
+ ___XX_XX,
+ X__XXXX_,
+ ___XX_XX,
+ _XX_XXX_,
+ ___XX___,
+ __XX_XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 地 code:0xB5D8 */
+static GUI_CONST_STORAGE unsigned char acB5D8[32] = {
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ _XXXXX__,
+ _XXXXXXX,
+ XXXXXX__,
+ ___XXXXX,
+ XXX_XX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ _XXXXX__,
+ ___XXXXX,
+ _XX_____,
+ _XXX__XX,
+ _____XX_,
+ ______XX,
+ _____XX_,
+ _______X,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 点 code:0xB5E3 */
+static GUI_CONST_STORAGE unsigned char acB5E3[32] = {
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ______XX,
+ XXXXXX__,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ __XX_XX_,
+ XX__XX__,
+ __XX__XX,
+ _XX__XX_,
+ _XX___XX,
+ _XX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 电 code:0xB5E7 */
+static GUI_CONST_STORAGE unsigned char acB5E7[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX___X,
+ X_______,
+ _______X,
+ X____XX_,
+ _______X,
+ X____XX_,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 定 code:0xB6A8 */
+static GUI_CONST_STORAGE unsigned char acB6A8[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _XX_____,
+ _____XX_,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ X_______,
+ __XXXX_X,
+ X_______,
+ _XX__XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 动 code:0xB6AF */
+static GUI_CONST_STORAGE unsigned char acB6AF[32] = {
+ ________,
+ _XX_____,
+ __XXXXX_,
+ _XX_____,
+ ________,
+ _XX_____,
+ _______X,
+ XXXXXXX_,
+ ________,
+ _XX__XX_,
+ _XXXXXXX,
+ _XX__XX_,
+ ___XX___,
+ _XX__XX_,
+ ___XX___,
+ _XX__XX_,
+ __XX_XX_,
+ _XX__XX_,
+ __XX__XX,
+ _XX__XX_,
+ _XXXXXXX,
+ XX___XX_,
+ ______XX,
+ XX___XX_,
+ _______X,
+ X____XX_,
+ ______XX,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 度 code:0xB6C8 */
+static GUI_CONST_STORAGE unsigned char acB6C8[32] = {
+ _______X,
+ X_______,
+ ________,
+ XX______,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX_XX,
+ ___XX___,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX_XX,
+ ___XX___,
+ ___XX_XX,
+ XXXXX___,
+ ___XX___,
+ ________,
+ ___XXXXX,
+ XXXXXX__,
+ ___XX_XX,
+ ___XX___,
+ ___XX__X,
+ X_XX____,
+ __XX____,
+ XXX_____,
+ __XX__XX,
+ X_XXX___,
+ _XX_XXX_,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 短 code:0xB6CC */
+static GUI_CONST_STORAGE unsigned char acB6CC[32] = {
+ __XX____,
+ ________,
+ __XX___X,
+ XXXXXX__,
+ __XXXXX_,
+ ________,
+ _XXXX___,
+ ________,
+ ___XX__X,
+ XXXXXX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ X___XX__,
+ _XXXXXXX,
+ X___XX__,
+ ___XX__X,
+ XXXXXX__,
+ ___XX___,
+ ________,
+ __XXXX_X,
+ X___XX__,
+ __XX_XX_,
+ XX_XX___,
+ __XX_XX_,
+ ________,
+ _XX___XX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 断 code:0xB6CF */
+static GUI_CONST_STORAGE unsigned char acB6CF[32] = {
+ ____XX__,
+ ___XXX__,
+ _XX_XX__,
+ XXXX____,
+ _XXXXXXX,
+ XX______,
+ _XXXXXX_,
+ XX______,
+ _XX_XX__,
+ XX______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _XX_XX__,
+ XX_XX___,
+ _XXXXXX_,
+ XX_XX___,
+ _XXXXXXX,
+ XX_XX___,
+ _XX_XXXX,
+ XX_XX___,
+ _XX_XX__,
+ XX_XX___,
+ _XX_XX__,
+ XX_XX___,
+ _XX____X,
+ X__XX___,
+ _XXXXXXX,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 法 code:0xB7A8 */
+static GUI_CONST_STORAGE unsigned char acB7A8[32] = {
+ ________,
+ _XX_____,
+ __XX____,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ______XX,
+ XXXXXX__,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ _XX_____,
+ ________,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ XX______,
+ __XX____,
+ XX______,
+ __XX___X,
+ X__XX___,
+ _XX___XX,
+ ____XX__,
+ _XX__XXX,
+ XXXXXXX_,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 反 code:0xB7B4 */
+static GUI_CONST_STORAGE unsigned char acB7B4[32] = {
+ ________,
+ _XXXXX__,
+ ___XXXXX,
+ XX______,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ___XXXX_,
+ ___XX___,
+ ___XXXX_,
+ ___XX___,
+ ___XX_XX,
+ __XX____,
+ ___XX_XX,
+ __XX____,
+ ___XX__X,
+ XXX_____,
+ __XX____,
+ XX______,
+ __XX___X,
+ XXX_____,
+ _XX__XXX,
+ __XXX___,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 返 code:0xB7B5 */
+static GUI_CONST_STORAGE unsigned char acB7B5[32] = {
+ ________,
+ __XXXX__,
+ __XX__XX,
+ XXX_____,
+ ___XX_XX,
+ ________,
+ ___XX_XX,
+ ________,
+ ______XX,
+ XXXXXX__,
+ ______XX,
+ ____XX__,
+ _XXXX_XX,
+ XX_XX___,
+ ___XX_XX,
+ _XXXX___,
+ ___XX_XX,
+ __XX____,
+ ___XX_XX,
+ _XXXX___,
+ ___XXXX_,
+ XX__XX__,
+ ___XX__X,
+ X___XX__,
+ __XXXX__,
+ ________,
+ _XX__XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 方 code:0xB7BD */
+static GUI_CONST_STORAGE unsigned char acB7BD[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ ________,
+ _____XX_,
+ ________,
+ _____XX_,
+ ________,
+ _____XXX,
+ XXXXX___,
+ _____XX_,
+ ___XX___,
+ _____XX_,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ _XX_____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 非 code:0xB7C7 */
+static GUI_CONST_STORAGE unsigned char acB7C7[32] = {
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ _XXXXXX_,
+ _XXXXXX_,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ __XXXXX_,
+ _XXXXX__,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ _XXXXXX_,
+ _XXXXXX_,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 分 code:0xB7D6 */
+static GUI_CONST_STORAGE unsigned char acB7D6[32] = {
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ ____XX__,
+ _XXXXXXX,
+ XXXX_XX_,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 服 code:0xB7FE */
+static GUI_CONST_STORAGE unsigned char acB7FE[32] = {
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ __XX_XXX,
+ X___XX__,
+ __XX_XXX,
+ X___XX__,
+ __XX_XXX,
+ X_XXXX__,
+ __XXXXXX,
+ X_______,
+ __XX_XXX,
+ XXXXXX__,
+ __XX_XXX,
+ XXX_XX__,
+ __XXXXXX,
+ XXX_XX__,
+ __XX_XXX,
+ XXXXX___,
+ __XX_XXX,
+ X_XX____,
+ __XX_XXX,
+ XXXXX___,
+ __XX_XXX,
+ XX__XX__,
+ _XX_XXXX,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 感 code:0xB8D0 */
+static GUI_CONST_STORAGE unsigned char acB8D0[32] = {
+ ________,
+ _XX_XX__,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX____,
+ _XX_____,
+ __XXXXXX,
+ XXX_XX__,
+ __XX____,
+ _XX_XX__,
+ __XXXXXX,
+ XXXXX___,
+ __XXXX_X,
+ X_XX____,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX____,
+ XX__XXX_,
+ _XX____X,
+ X____XX_,
+ ______XX,
+ ________,
+ __XXXX_X,
+ X___XX__,
+ __XXXX__,
+ __XX_XX_,
+ _XX__XXX,
+ XXXX_XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 高 code:0xB8DF */
+static GUI_CONST_STORAGE unsigned char acB8DF[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ____XX__,
+ __XX____,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ __XX____,
+ ____XX__,
+ __XX_XXX,
+ XXX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XX_XXX,
+ XXX_XX__,
+ __XX____,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 割 code:0xB8EE */
+static GUI_CONST_STORAGE unsigned char acB8EE[32] = {
+ ____XX__,
+ _____XX_,
+ _____XX_,
+ _____XX_,
+ _XXXXXXX,
+ XXX__XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ __XXXXXX,
+ XX_XXXX_,
+ _____XX_,
+ ___XXXX_,
+ __XXXXXX,
+ XX_XXXX_,
+ _____XX_,
+ ___XXXX_,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ ___XXXX_,
+ __XXXXXX,
+ XX___XX_,
+ __XX____,
+ XX___XX_,
+ __XXXXXX,
+ XX___XX_,
+ __XX____,
+ XX_XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 个 code:0xB8F6 */
+static GUI_CONST_STORAGE unsigned char acB8F6[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ______XX,
+ XX______,
+ _____XX_,
+ _XX_____,
+ ____XX__,
+ __XX____,
+ ___XX__X,
+ X__XX___,
+ _XXX___X,
+ X___XXX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 工 code:0xB9A4 */
+static GUI_CONST_STORAGE unsigned char acB9A4[32] = {
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 公 code:0xB9AB */
+static GUI_CONST_STORAGE unsigned char acB9AB[32] = {
+ ________,
+ XX______,
+ _____XX_,
+ XX______,
+ _____XX_,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ __XX__XX,
+ ____XX__,
+ _XX___XX,
+ _____XX_,
+ _____XX_,
+ ________,
+ _____XX_,
+ XX______,
+ ____XX__,
+ _XX_____,
+ ___XX___,
+ __XX____,
+ __XXXXXX,
+ XXXXX___,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 故 code:0xB9CA */
+static GUI_CONST_STORAGE unsigned char acB9CA[32] = {
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ _XXXXXXX,
+ _XXXXXX_,
+ ____XX__,
+ XX__XX__,
+ ____XX_X,
+ XXX_XX__,
+ ____XX__,
+ _XX_XX__,
+ __XXXXXX,
+ _XX_XX__,
+ __XX__XX,
+ _XXXX___,
+ __XX__XX,
+ _XXXX___,
+ __XX__XX,
+ __XX____,
+ __XXXXXX,
+ _XXXX___,
+ __XX____,
+ XX__XX__,
+ _______X,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 固 code:0xB9CC */
+static GUI_CONST_STORAGE unsigned char acB9CC[32] = {
+ __XXXXXX,
+ XXXXXXX_,
+ __XX___X,
+ X____XX_,
+ __XX___X,
+ X____XX_,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX___X,
+ X____XX_,
+ __XX___X,
+ X____XX_,
+ __XXXXXX,
+ XXXX_XX_,
+ __XXXX__,
+ __XX_XX_,
+ __XXXX__,
+ __XX_XX_,
+ __XXXXXX,
+ XXXX_XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX____,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 关 code:0xB9D8 */
+static GUI_CONST_STORAGE unsigned char acB9D8[32] = {
+ ____XX__,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ _XX_____,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ XX______,
+ ______XX,
+ XX______,
+ _____XX_,
+ _XX_____,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 过 code:0xB9FD */
+static GUI_CONST_STORAGE unsigned char acB9FD[32] = {
+ ________,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXXXX_,
+ ________,
+ ___XX___,
+ ______XX,
+ ___XX___,
+ _XXXX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXX___,
+ __XXXX__,
+ ________,
+ _XX__XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 耗 code:0xBAC4 */
+static GUI_CONST_STORAGE unsigned char acBAC4[32] = {
+ ____XX__,
+ ___XXX__,
+ ____XX__,
+ XXXX____,
+ ____XX__,
+ _XX_____,
+ _XXXXXXX,
+ _XX_____,
+ ____XX__,
+ _XXXXX__,
+ __XXXXXX,
+ XXXX____,
+ ____XX__,
+ _XX_____,
+ _XXXXXXX,
+ _XX_____,
+ ___XXX__,
+ _XXXXXX_,
+ ___XXXXX,
+ XXXX____,
+ __XXXXXX,
+ _XX_____,
+ __XXXX__,
+ _XX__XX_,
+ _XX_XX__,
+ _XX__XX_,
+ ____XX__,
+ __XXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 号 code:0xBAC5 */
+static GUI_CONST_STORAGE unsigned char acBAC5[32] = {
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ ________,
+ ____XX__,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 和 code:0xBACD */
+static GUI_CONST_STORAGE unsigned char acBACD[32] = {
+ _____XXX,
+ ________,
+ __XXXX__,
+ ________,
+ ____XX__,
+ XXXXXXX_,
+ ____XX__,
+ XX___XX_,
+ _XXXXXXX,
+ XX___XX_,
+ ____XX__,
+ XX___XX_,
+ ___XXX__,
+ XX___XX_,
+ ___XXXX_,
+ XX___XX_,
+ __XXXXXX,
+ XX___XX_,
+ __XXXX__,
+ XX___XX_,
+ _XX_XX__,
+ XXXXXXX_,
+ ____XX__,
+ XX___XX_,
+ ____XX__,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 恒 code:0xBAE3 */
+static GUI_CONST_STORAGE unsigned char acBAE3[32] = {
+ ___XX___,
+ ________,
+ ___XX_XX,
+ XXXXXXX_,
+ ___XX___,
+ ________,
+ ___XXX__,
+ ________,
+ _XXXXXXX,
+ XXXXXX__,
+ _XXXX__X,
+ X___XX__,
+ _XXXX__X,
+ X___XX__,
+ ___XX__X,
+ XXXXXX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ XXXXXX__,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XX_XX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 护 code:0xBBA4 */
+static GUI_CONST_STORAGE unsigned char acBBA4[32] = {
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ __XX____,
+ ___XX__X,
+ XXXXXXX_,
+ _XXXXXXX,
+ X____XX_,
+ ___XX__X,
+ X____XX_,
+ ___XX__X,
+ X____XX_,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XXX_X,
+ X____XX_,
+ _XXXX__X,
+ X_______,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ X_______,
+ ___XX_XX,
+ ________,
+ ___XX_XX,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 欢 code:0xBBB6 */
+static GUI_CONST_STORAGE unsigned char acBBB6[32] = {
+ ________,
+ _XX_____,
+ ________,
+ _XX_____,
+ __XXXXXX,
+ _XX_____,
+ ______XX,
+ XXXXXXX_,
+ ______XX,
+ XX___XX_,
+ __XX_XXX,
+ X_XXXX__,
+ ___XXXX_,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XXX_,
+ __XX____,
+ ___XXXX_,
+ __XX____,
+ ___XX_XX,
+ _XXXX___,
+ __XX__XX,
+ _XXXX___,
+ _XX_____,
+ XX__XX__,
+ _______X,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 换 code:0xBBBB */
+static GUI_CONST_STORAGE unsigned char acBBBB[32] = {
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ XXXXX___,
+ _XXXXXXX,
+ ___XX___,
+ ___XXXX_,
+ __XX____,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XXXXX,
+ _XX_XX__,
+ _XXXX_XX,
+ _XX_XX__,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ XXXX____,
+ ___XX__X,
+ X__XX___,
+ ___XX_XX,
+ ____XX__,
+ _XXXXXX_,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 簧 code:0xBBC9 */
+static GUI_CONST_STORAGE unsigned char acBBC9[32] = {
+ ___XX___,
+ _XX_____,
+ __XXXXXX,
+ XXXXXXX_,
+ _XX__XX_,
+ XX_XX___,
+ _____XX_,
+ _XX_____,
+ ___XXXXX,
+ XXXXX___,
+ _____XX_,
+ _XX_____,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ ___XXXXX,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXX___,
+ ____XX__,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 回 code:0xBBD8 */
+static GUI_CONST_STORAGE unsigned char acBBD8[32] = {
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XX_XXX,
+ XXXX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XXX,
+ XXXX_XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX____,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 基 code:0xBBF9 */
+static GUI_CONST_STORAGE unsigned char acBBF9[32] = {
+ ____XX__,
+ __XX____,
+ __XXXXXX,
+ XXXXXX__,
+ ____XX__,
+ __XX____,
+ ____XXXX,
+ XXXX____,
+ ____XX__,
+ __XX____,
+ ____XXXX,
+ XXXX____,
+ ____XX__,
+ __XX____,
+ _XXXXXXX,
+ XXXXXXX_,
+ ___XX___,
+ ___XX___,
+ __XX___X,
+ X___XX__,
+ _XX_XXXX,
+ XXXX_XX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 机 code:0xBBFA */
+static GUI_CONST_STORAGE unsigned char acBBFA[32] = {
+ ___XX___,
+ ________,
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ _XXXXXXX,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ __XXXX_X,
+ X__XX___,
+ __XXXXXX,
+ X__XX___,
+ _XXXX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX_XX,
+ ___XXXX_,
+ ___XX_XX,
+ ___XXXX_,
+ ___XXXX_,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 积 code:0xBBFD */
+static GUI_CONST_STORAGE unsigned char acBBFD[32] = {
+ ________,
+ ________,
+ ____XXXX,
+ XXXXXX__,
+ _XXXX__X,
+ X___XX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ X___XX__,
+ _XXXXXXX,
+ X___XX__,
+ ___XX__X,
+ X___XX__,
+ ___XXX_X,
+ XXXXXX__,
+ __XXXXX_,
+ ________,
+ __XXX___,
+ ________,
+ _XXXX___,
+ XX_XX___,
+ ___XX___,
+ XX__XX__,
+ ___XX__X,
+ X____XX_,
+ ___XX_XX,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 辑 code:0xBCAD */
+static GUI_CONST_STORAGE unsigned char acBCAD[32] = {
+ ___XX___,
+ ________,
+ ___XX__X,
+ XXXXXX__,
+ _XXXXXXX,
+ X___XX__,
+ __XX___X,
+ XXXXXX__,
+ __XX____,
+ ________,
+ _XXXX_XX,
+ XXXXXXX_,
+ _XXXXXXX,
+ X___XX__,
+ ___XX__X,
+ XXXXXX__,
+ ___XX__X,
+ X___XX__,
+ ___XXXXX,
+ XXXXXX__,
+ _XXXX__X,
+ X___XX__,
+ ___XX__X,
+ X_XXXXX_,
+ ___XX_XX,
+ XXX_XX__,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 技 code:0xBCBC */
+static GUI_CONST_STORAGE unsigned char acBCBC[32] = {
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ _XXXXXXX,
+ XXXXXX__,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX_XX,
+ XXXXX___,
+ ___XXX_X,
+ X__XX___,
+ _XXXX__X,
+ X__XX___,
+ ___XX___,
+ XXXX____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ XXXX____,
+ ___XX__X,
+ X__XX___,
+ _XXXXXXX,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 计 code:0xBCC6 */
+static GUI_CONST_STORAGE unsigned char acBCC6[32] = {
+ __XX____,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ________,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XXXXXXX,
+ XXXXXXX_,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XXXX_,
+ _XX_____,
+ ___XXX__,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 记 code:0xBCC7 */
+static GUI_CONST_STORAGE unsigned char acBCC7[32] = {
+ __XX____,
+ ________,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX___,
+ ____XX__,
+ ________,
+ ____XX__,
+ ________,
+ ____XX__,
+ _XXXX___,
+ ____XX__,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ ________,
+ ___XX_XX,
+ ________,
+ ___XX_XX,
+ ________,
+ ___XXXXX,
+ ________,
+ ___XXXXX,
+ _____XX_,
+ ___XX_XX,
+ _____XX_,
+ _______X,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 间 code:0xBCE4 */
+static GUI_CONST_STORAGE unsigned char acBCE4[32] = {
+ ___XX___,
+ ________,
+ ____XXXX,
+ XXXXXXX_,
+ ____XX__,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XX_XXX,
+ XXXX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XXX,
+ XXXX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XXX,
+ XXXX_XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 件 code:0xBCFE */
+static GUI_CONST_STORAGE unsigned char acBCFE[32] = {
+ ____XX__,
+ _XX_____,
+ ____XXXX,
+ _XX_____,
+ ___XX_XX,
+ _XX_____,
+ ___XX_XX,
+ XXXXXX__,
+ __XXXXX_,
+ _XX_____,
+ _XXXX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 江 code:0xBDAD */
+static GUI_CONST_STORAGE unsigned char acBDAD[32] = {
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ___XX_XX,
+ XXXXXX__,
+ ____XX__,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ __XX____,
+ _XX_____,
+ ________,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ __XX____,
+ _XX_____,
+ __XX_XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 角 code:0xBDC7 */
+static GUI_CONST_STORAGE unsigned char acBDC7[32] = {
+ _____XX_,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ___XX___,
+ _XX_____,
+ __XX____,
+ XX______,
+ _XXXXXXX,
+ XXXXXX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ X___XX__,
+ ___XXXXX,
+ XXXXXX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ X___XX__,
+ ___XXXXX,
+ XXXXXX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ _XX_____,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 进 code:0xBDF8 */
+static GUI_CONST_STORAGE unsigned char acBDF8[32] = {
+ _______X,
+ X__XX___,
+ __XX___X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXXXX_,
+ _______X,
+ X__XX___,
+ _______X,
+ X__XX___,
+ _XXXX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX_XX,
+ ___XX___,
+ __XXXX__,
+ ________,
+ _XX__XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 尽 code:0xBEA1 */
+static GUI_CONST_STORAGE unsigned char acBEA1[32] = {
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXX__,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ ____XX__,
+ ___XXXXX,
+ XXXXXX__,
+ ___XX___,
+ XX______,
+ ___XX___,
+ _XX_____,
+ __XX____,
+ __XX____,
+ __XX_XXX,
+ ___XX___,
+ _XX____X,
+ XX__XXX_,
+ ________,
+ ________,
+ ____XXXX,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 警 code:0xBEAF */
+static GUI_CONST_STORAGE unsigned char acBEAF[32] = {
+ ___XX_XX,
+ __XX____,
+ __XXXXXX,
+ XXXXXXX_,
+ ___XX_XX,
+ XX__XX__,
+ __XXXXXX,
+ XXX_XX__,
+ _XXXXXXX,
+ X_XXX___,
+ ___XXXXX,
+ XXX_XXX_,
+ ______XX,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 据 code:0xBEDD */
+static GUI_CONST_STORAGE unsigned char acBEDD[32] = {
+ ___XX___,
+ ________,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ ____XX__,
+ _XXXXXXX,
+ ____XX__,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ __XX____,
+ ___XX_XX,
+ __XX____,
+ ___XXXXX,
+ XXXXXXX_,
+ _XXXX_XX,
+ __XX____,
+ ___XX_XX,
+ __XX____,
+ ___XX_XX,
+ XXXXXX__,
+ ___XXXX_,
+ XX__XX__,
+ ___XXXX_,
+ XX__XX__,
+ _XXXXX__,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 巨 code:0xBEDE */
+static GUI_CONST_STORAGE unsigned char acBEDE[32] = {
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ __XX____,
+ ________,
+ __XX____,
+ ________,
+ __XX____,
+ ________,
+ __XXXXXX,
+ XXXXX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XXXXXX,
+ XXXXX___,
+ __XX____,
+ ________,
+ __XX____,
+ ________,
+ __XX____,
+ ________,
+ __XXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 开 code:0xBFAA */
+static GUI_CONST_STORAGE unsigned char acBFAA[32] = {
+ __XXXXXX,
+ XXXXXX__,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ _XXXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ __XX____,
+ __XX____,
+ _XX_____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 可 code:0xBFC9 */
+static GUI_CONST_STORAGE unsigned char acBFC9[32] = {
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XXXXX,
+ XX_XX___,
+ ___XX___,
+ XX_XX___,
+ ___XX___,
+ XX_XX___,
+ ___XX___,
+ XX_XX___,
+ ___XX___,
+ XX_XX___,
+ ___XXXXX,
+ XX_XX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 空 code:0xBFD5 */
+static GUI_CONST_STORAGE unsigned char acBFD5[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _XX__XX_,
+ _XX__XX_,
+ _XX_XX__,
+ __XX_XX_,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 控 code:0xBFD8 */
+static GUI_CONST_STORAGE unsigned char acBFD8[32] = {
+ ___XX___,
+ XX______,
+ ___XX___,
+ _XX_____,
+ ___XX_XX,
+ XXXXXXX_,
+ _XXXXXXX,
+ _____XX_,
+ ___XX___,
+ XX_XX___,
+ ___XX__X,
+ X___XX__,
+ ___XX_XX,
+ _____XX_,
+ ___XXX__,
+ ________,
+ _XXXX__X,
+ XXXXXX__,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ _XXXX_XX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 块 code:0xBFE9 */
+static GUI_CONST_STORAGE unsigned char acBFE9[32] = {
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX___,
+ XX__XX__,
+ _XXXXXX_,
+ XX__XX__,
+ ___XX___,
+ XX__XX__,
+ ___XX___,
+ XX__XX__,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ XXXX____,
+ ___XXXX_,
+ XXXX____,
+ _XXXX__X,
+ X__XX___,
+ _______X,
+ X__XX___,
+ ______XX,
+ ____XX__,
+ _____XX_,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 蓝 code:0xC0B6 */
+static GUI_CONST_STORAGE unsigned char acC0B6[32] = {
+ ____XX__,
+ __XX____,
+ _XXXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ __XX____,
+ ________,
+ ________,
+ _____XX_,
+ XX______,
+ __XX_XX_,
+ XXXXXX__,
+ __XX_XXX,
+ X_XX____,
+ __XX_XXX,
+ ___XX___,
+ _____XX_,
+ ____XX__,
+ ___XXXXX,
+ XXXXX___,
+ ___XX_XX,
+ XX_XX___,
+ ___XX_XX,
+ XX_XX___,
+ ___XX_XX,
+ XX_XX___,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 累 code:0xC0DB */
+static GUI_CONST_STORAGE unsigned char acC0DB[32] = {
+ __XXXXXX,
+ XXXXXX__,
+ __XX___X,
+ X___XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX___X,
+ X___XX__,
+ __XXXXXX,
+ XXXXXX__,
+ _____XX_,
+ ________,
+ ____XX__,
+ _XX_____,
+ ___XXXXX,
+ XX______,
+ ______XX,
+ ___XX___,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X___XX__,
+ ___XX__X,
+ X_XX____,
+ __XX___X,
+ X__XX___,
+ _XX__XXX,
+ X___XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 类 code:0xC0E0 */
+static GUI_CONST_STORAGE unsigned char acC0E0[32] = {
+ _______X,
+ X_______,
+ ___XX__X,
+ X__XX___,
+ ____XX_X,
+ X_XX____,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ XXX_____,
+ ____XX_X,
+ X_XX____,
+ ___XX__X,
+ X__XX___,
+ _XXX____,
+ ____XX__,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ XX______,
+ _____XX_,
+ _XX_____,
+ ___XXX__,
+ __XXX___,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 离 code:0xC0EB */
+static GUI_CONST_STORAGE unsigned char acC0EB[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ___XXXX_,
+ _XXXX___,
+ ___XX_XX,
+ XX_XX___,
+ ___XXXX_,
+ _XXXX___,
+ ___XXXXX,
+ XXXXX___,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 力 code:0xC1A6 */
+static GUI_CONST_STORAGE unsigned char acC1A6[32] = {
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ _XXXXXXX,
+ XXXXXX__,
+ ______XX,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ _XX_____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 量 code:0xC1BF */
+static GUI_CONST_STORAGE unsigned char acC1BF[32] = {
+ ___XXXXX,
+ XXXXX___,
+ ___XX_XX,
+ ___XX___,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXX___,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 列 code:0xC1D0 */
+static GUI_CONST_STORAGE unsigned char acC1D0[32] = {
+ ________,
+ _____XX_,
+ __XXXXXX,
+ X____XX_,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ __XX_XX_,
+ ____XXXX,
+ X_XX_XX_,
+ ___XX__X,
+ X_XX_XX_,
+ ___XX__X,
+ X_XX_XX_,
+ __XXXX_X,
+ X_XX_XX_,
+ _XX__XXX,
+ __XX_XX_,
+ ______XX,
+ __XX_XX_,
+ _____XX_,
+ _____XX_,
+ ____XX__,
+ _____XX_,
+ ___XX___,
+ _____XX_,
+ __XX____,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 流 code:0xC1F7 */
+static GUI_CONST_STORAGE unsigned char acC1F7[32] = {
+ ________,
+ _XX_____,
+ __XX____,
+ __XX____,
+ ___XX_XX,
+ XXXXXXX_,
+ ____XX__,
+ _XX_____,
+ ________,
+ XX_XX___,
+ _XX____X,
+ X___XX__,
+ __XX__XX,
+ XXXXXXX_,
+ ____XX__,
+ _____XX_,
+ ____XX_X,
+ XXXXX___,
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ XXXXX___,
+ __XX___X,
+ XXXXX___,
+ __XX__XX,
+ _XXXXXX_,
+ _____XX_,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 路 code:0xC2B7 */
+static GUI_CONST_STORAGE unsigned char acC2B7[32] = {
+ ________,
+ _XX_____,
+ __XXXXX_,
+ _XX_____,
+ __XX_XX_,
+ _XXXXX__,
+ __XX_XX_,
+ XX__XX__,
+ __XX_XXX,
+ XXXXX___,
+ __XXXXX_,
+ __XX____,
+ ____XX__,
+ _XXXX___,
+ __XXXX_X,
+ XX__XXX_,
+ __XXXXXX,
+ ________,
+ __XXXX__,
+ XXXXXX__,
+ __XXXX__,
+ XX__XX__,
+ __XXXXXX,
+ XX__XX__,
+ _XXXX___,
+ XXXXXX__,
+ ________,
+ XX__XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 录 code:0xC2BC */
+static GUI_CONST_STORAGE unsigned char acC2BC[32] = {
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXX___,
+ ________,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ___XX___,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ ___XX__X,
+ X__XX___,
+ ____XX_X,
+ XXXX____,
+ _____XXX,
+ XXX_____,
+ ____XX_X,
+ X_XX____,
+ ___XX__X,
+ X__XX___,
+ _XXX___X,
+ X___XXX_,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 率 code:0xC2CA */
+static GUI_CONST_STORAGE unsigned char acC2CA[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _XX___XX,
+ _XX__XX_,
+ __XX_XXX,
+ XX__XX__,
+ ___XX__X,
+ X__XX___,
+ __XX__XX,
+ _XX_XX__,
+ _XX__XXX,
+ XXXX_XX_,
+ _______X,
+ X_XX____,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 满 code:0xC2FA */
+static GUI_CONST_STORAGE unsigned char acC2FA[32] = {
+ _______X,
+ X__XX___,
+ __XX_XXX,
+ XXXXXXX_,
+ ___XX__X,
+ X__XX___,
+ ________,
+ ________,
+ _XX__XXX,
+ XXXXXXX_,
+ __XX___X,
+ X__XX___,
+ _______X,
+ X__XX___,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XXXXX,
+ X__XXXX_,
+ __XX_XXX,
+ X__XXXX_,
+ __XX_XXX,
+ XXXXXXX_,
+ _XX__XX_,
+ _____XX_,
+ _XX__XX_,
+ _____XX_,
+ _____XX_,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 面 code:0xC3E6 */
+static GUI_CONST_STORAGE unsigned char acC3E6[32] = {
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ ______XX,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XX_XXX,
+ XXX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XX_XXX,
+ XXX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX____,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 模 code:0xC4A3 */
+static GUI_CONST_STORAGE unsigned char acC4A3[32] = {
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX_XX,
+ XXXXXXX_,
+ _XXXXX_X,
+ X__XX___,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ ____XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XXXXXX,
+ ____XX__,
+ _XXXX_XX,
+ XXXXXX__,
+ ___XX___,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ XXXX____,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 摩 code:0xC4A6 */
+static GUI_CONST_STORAGE unsigned char acC4A6[32] = {
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX_XX_,
+ __XX____,
+ __XXXXXX,
+ XXXXXX__,
+ __XX_XX_,
+ _XXXX___,
+ __XXXXXX,
+ XXXXXXX_,
+ __XXXXX_,
+ __XX____,
+ __XX_XXX,
+ XXXXX___,
+ __XX____,
+ XX______,
+ __XX_XXX,
+ XXXXX___,
+ __XX____,
+ XX______,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX____,
+ XX______,
+ _XX___XX,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 内 code:0xC4DA */
+static GUI_CONST_STORAGE unsigned char acC4DA[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX___X,
+ X____XX_,
+ __XX___X,
+ X____XX_,
+ __XX__XX,
+ XX___XX_,
+ __XX_XX_,
+ _XX__XX_,
+ __XXXX__,
+ __XX_XX_,
+ __XXX___,
+ ___XXXX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 能 code:0xC4DC */
+static GUI_CONST_STORAGE unsigned char acC4DC[32] = {
+ ____XX__,
+ _XX_____,
+ ___XX___,
+ _XX_XXX_,
+ __XX__XX,
+ _XXXX___,
+ _XXXXXXX,
+ XXX__XX_,
+ _______X,
+ XXX__XX_,
+ ________,
+ __XXXXX_,
+ __XXXXXX,
+ ________,
+ __XX__XX,
+ _XX__XX_,
+ __XXXXXX,
+ _XX_XX__,
+ __XX__XX,
+ _XXXX___,
+ __XXXXXX,
+ _XX_____,
+ __XX__XX,
+ _XX__XX_,
+ __XX__XX,
+ _XX__XX_,
+ __XX_XXX,
+ __XXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 拟 code:0xC4E2 */
+static GUI_CONST_STORAGE unsigned char acC4E2[32] = {
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ XX_XX___,
+ ___XX_XX,
+ _XXXX___,
+ _XXXXXXX,
+ _XXXX___,
+ ___XX_XX,
+ _XXXX___,
+ ___XX_XX,
+ ___XX___,
+ ___XX_XX,
+ ___XX___,
+ ___XXXXX,
+ ___XX___,
+ _XXXX_XX,
+ ___XX___,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ X_XXXX__,
+ ___XX_XX,
+ _XX__XX_,
+ ___XX___,
+ XX___XX_,
+ _XXXX__X,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 配 code:0xC5E4 */
+static GUI_CONST_STORAGE unsigned char acC5E4[32] = {
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXX__,
+ ___XXXX_,
+ ____XX__,
+ ___XXXX_,
+ ____XX__,
+ _XXXXXXX,
+ X___XX__,
+ _XXXXXXX,
+ X___XX__,
+ _XXXXXXX,
+ XXXXXX__,
+ _XXX__XX,
+ XXX_____,
+ _XX____X,
+ XXX_____,
+ _XXXXXXX,
+ XXX_____,
+ _XX____X,
+ XXX_____,
+ _XX____X,
+ XXX__XX_,
+ _XXXXXXX,
+ XXX__XX_,
+ _XX____X,
+ X_XXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 偏 code:0xC6AB */
+static GUI_CONST_STORAGE unsigned char acC6AB[32] = {
+ ____XX__,
+ XX______,
+ ____XX__,
+ _XX_____,
+ ____XXXX,
+ XXXXXX__,
+ ___XX_XX,
+ ____XX__,
+ ___XX_XX,
+ ____XX__,
+ __XXX_XX,
+ XXXXXX__,
+ _XXXX_XX,
+ ________,
+ ___XX_XX,
+ XXXXXX__,
+ ___XXXXX,
+ XXXXXX__,
+ ___XXXXX,
+ XXXXXX__,
+ ___XXXXX,
+ XXXXXX__,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 频 code:0xC6B5 */
+static GUI_CONST_STORAGE unsigned char acC6B5[32] = {
+ ____XX__,
+ ________,
+ ____XX_X,
+ XXXXXXX_,
+ __XXXXXX,
+ __XX____,
+ __XXXX__,
+ _XX_____,
+ __XXXX__,
+ XXXXXX__,
+ _XXXXXXX,
+ XX__XX__,
+ ________,
+ XXXXXX__,
+ ____XX__,
+ XXXXXX__,
+ __XXXXXX,
+ XXXXXX__,
+ _XX_XXXX,
+ XXXXXX__,
+ _____XX_,
+ XXXXXX__,
+ ____XX__,
+ _XXXX___,
+ ___XX___,
+ XX__XX__,
+ _XXX___X,
+ X___XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 启 code:0xC6F4 */
+static GUI_CONST_STORAGE unsigned char acC6F4[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ ___XXXXX,
+ XXXXXX__,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ ____XX__,
+ ___XXXXX,
+ XXXXXX__,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XXXXX,
+ XXXXXX__,
+ ___XXXX_,
+ ____XX__,
+ __XX_XX_,
+ ____XX__,
+ __XX_XX_,
+ ____XX__,
+ _XX__XXX,
+ XXXXXX__,
+ _____XX_,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 器 code:0xC6F7 */
+static GUI_CONST_STORAGE unsigned char acC6F7[32] = {
+ __XXXXXX,
+ XXXXXX__,
+ __XX__XX,
+ XX__XX__,
+ __XX__XX,
+ XX__XX__,
+ __XXXXXX,
+ XXXXXX__,
+ ________,
+ __XX____,
+ _______X,
+ X__XX___,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ _XX_____,
+ ___XXX__,
+ __XXX___,
+ _XXX____,
+ ____XXX_,
+ __XXXXXX,
+ XXXXXX__,
+ __XX__XX,
+ XX__XX__,
+ __XX__XX,
+ XX__XX__,
+ __XXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 气 code:0xC6F8 */
+static GUI_CONST_STORAGE unsigned char acC6F8[32] = {
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XXXXX,
+ XXXXXXX_,
+ __XX____,
+ ________,
+ _XX_XXXX,
+ XXXXX___,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XXXX_,
+ ________,
+ ____XXX_,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 切 code:0xC7D0 */
+static GUI_CONST_STORAGE unsigned char acC7D0[32] = {
+ ___XX___,
+ ________,
+ ___XX__X,
+ XXXXXXX_,
+ ___XX___,
+ _XX__XX_,
+ ___XX___,
+ _XX__XX_,
+ ___XXXXX,
+ _XX__XX_,
+ _XXXX___,
+ _XX__XX_,
+ ___XX___,
+ _XX__XX_,
+ ___XX___,
+ _XX__XX_,
+ ___XX_XX,
+ _XX__XX_,
+ ___XXXX_,
+ XX___XX_,
+ ___XXX__,
+ XX___XX_,
+ ___XX__X,
+ X____XX_,
+ ______XX,
+ _____XX_,
+ _____XX_,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 驱 code:0xC7FD */
+static GUI_CONST_STORAGE unsigned char acC7FD[32] = {
+ ________,
+ ________,
+ _XXXXXX_,
+ XXXXXXX_,
+ _____XX_,
+ XX______,
+ __XX_XX_,
+ XX______,
+ __XX_XX_,
+ XXX_XX__,
+ __XX_XX_,
+ XXXXXX__,
+ __XX_XX_,
+ XXXXXX__,
+ __XXXXXX,
+ XX_XX___,
+ ______XX,
+ XX_XX___,
+ ______XX,
+ XXXXXX__,
+ ___XXXXX,
+ XXXXXX__,
+ _XXX__XX,
+ XXX_XX__,
+ ______XX,
+ XX______,
+ ____XXX_,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 取 code:0xC8A1 */
+static GUI_CONST_STORAGE unsigned char acC8A1[32] = {
+ ________,
+ ________,
+ _XXXXXXX,
+ ________,
+ __XX_XXX,
+ XXXXXX__,
+ __XX_XX_,
+ XX__XX__,
+ __XXXXX_,
+ XX__XX__,
+ __XX_XX_,
+ XX__XX__,
+ __XX_XX_,
+ XX__XX__,
+ __XXXXX_,
+ _XXXX___,
+ __XX_XX_,
+ _XXXX___,
+ __XX_XXX,
+ X_XX____,
+ _XXXXXX_,
+ __XX____,
+ _____XX_,
+ _XXXX___,
+ _____XX_,
+ XX__XX__,
+ _____XXX,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 确 code:0xC8B7 */
+static GUI_CONST_STORAGE unsigned char acC8B7[32] = {
+ ________,
+ XX______,
+ ________,
+ XXXXXX__,
+ _XXXXXXX,
+ X___XX__,
+ ___XX_XX,
+ ___XX___,
+ ___XX__X,
+ XXXXXXX_,
+ __XX___X,
+ X_XX_XX_,
+ __XXXXXX,
+ X_XX_XX_,
+ _XXX_XXX,
+ XXXXXXX_,
+ __XX_XXX,
+ X_XX_XX_,
+ __XX_XXX,
+ X_XX_XX_,
+ __XX_XXX,
+ XXXXXXX_,
+ __XXXXXX,
+ X_XX_XX_,
+ __XX___X,
+ X_XX_XX_,
+ ______XX,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 认 code:0xC8CF */
+static GUI_CONST_STORAGE unsigned char acC8CF[32] = {
+ __XX____,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XXXX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ XXXX____,
+ ___XX___,
+ XXXX____,
+ ___XXXX_,
+ XXXX____,
+ ___XXX_X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ______XX,
+ ____XX__,
+ _____XX_,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 入 code:0xC8EB */
+static GUI_CONST_STORAGE unsigned char acC8EB[32] = {
+ _____XX_,
+ ________,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ______XX,
+ XX______,
+ ______XX,
+ XX______,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ ____XX__,
+ _XX_____,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 软 code:0xC8ED */
+static GUI_CONST_STORAGE unsigned char acC8ED[32] = {
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ _XXXXXXX,
+ _XX_____,
+ ___XX___,
+ _XXXXXX_,
+ __XXXX__,
+ XX___XX_,
+ __XXXX__,
+ XX__XX__,
+ _XXXXXXX,
+ X_XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XXXX,
+ __XX____,
+ _XXXXX__,
+ _XXXX___,
+ ____XX__,
+ _XXXX___,
+ ____XX__,
+ XX__XX__,
+ ____XX_X,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 上 code:0xC9CF */
+static GUI_CONST_STORAGE unsigned char acC9CF[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 设 code:0xC9E8 */
+static GUI_CONST_STORAGE unsigned char acC9E8[32] = {
+ __XX____,
+ ________,
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ _______X,
+ X__XX___,
+ _______X,
+ X__XX___,
+ _XXXX_XX,
+ ____XXX_,
+ ___XXXX_,
+ ________,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ X__XX___,
+ ___XXXX_,
+ XXXX____,
+ ___XXX__,
+ _XX_____,
+ ___XX__X,
+ XXXXX___,
+ _____XXX,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 石 code:0xCAAF */
+static GUI_CONST_STORAGE unsigned char acCAAF[32] = {
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ _____XX_,
+ ________,
+ ____XX__,
+ ________,
+ ___XXXXX,
+ XXXXXX__,
+ __XXXX__,
+ ____XX__,
+ _XX_XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XX__,
+ ____XXXX,
+ XXXXXX__,
+ ____XX__,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 时 code:0xCAB1 */
+static GUI_CONST_STORAGE unsigned char acCAB1[32] = {
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ _XXXXX__,
+ ___XX___,
+ _XX_XXXX,
+ XXXXXXX_,
+ _XX_XX__,
+ ___XX___,
+ _XX_XX__,
+ ___XX___,
+ _XXXXX_X,
+ X__XX___,
+ _XX_XX__,
+ XX_XX___,
+ _XX_XX__,
+ XX_XX___,
+ _XX_XX__,
+ ___XX___,
+ _XXXXX__,
+ ___XX___,
+ _XX_XX__,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 实 code:0xCAB5 */
+static GUI_CONST_STORAGE unsigned char acCAB5[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _XX_____,
+ _____XX_,
+ _____XX_,
+ _XX_____,
+ ______XX,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ________,
+ XX______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ XXX_____,
+ ______XX,
+ __XX____,
+ ____XXX_,
+ ___XX___,
+ __XXX___,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 使 code:0xCAB9 */
+static GUI_CONST_STORAGE unsigned char acCAB9[32] = {
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ _XX_____,
+ __XXXXXX,
+ XXXXXXX_,
+ _XXXXXX_,
+ _XX__XX_,
+ ___XXXX_,
+ _XX__XX_,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX_XX,
+ _XX_____,
+ ___XX__X,
+ XXX_____,
+ ___XX___,
+ XX______,
+ ___XX__X,
+ XXX_____,
+ ___XX_XX,
+ __XXX___,
+ ___XXXX_,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 式 code:0xCABD */
+static GUI_CONST_STORAGE unsigned char acCABD[32] = {
+ ________,
+ _XXXX___,
+ ________,
+ _XX_XX__,
+ ________,
+ _XX_____,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ _XX_____,
+ ________,
+ _XX_____,
+ __XXXXXX,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX_XX_,
+ ____XXXX,
+ X__XXXX_,
+ _XXXXX__,
+ ____XXX_,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 示 code:0xCABE */
+static GUI_CONST_STORAGE unsigned char acCABE[32] = {
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ ____XX_X,
+ X_XX____,
+ ____XX_X,
+ X__XX___,
+ ___XX__X,
+ X___XX__,
+ __XX___X,
+ X____XX_,
+ _XX____X,
+ X____XX_,
+ _______X,
+ X_______,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 试 code:0xCAD4 */
+static GUI_CONST_STORAGE unsigned char acCAD4[32] = {
+ __XX____,
+ __XXXX__,
+ ___XX___,
+ __XX_XX_,
+ ___XX___,
+ __XX____,
+ _____XXX,
+ XXXXXXX_,
+ ________,
+ __XX____,
+ _XXXX___,
+ __XX____,
+ ___XX_XX,
+ XXXX____,
+ ___XX__X,
+ X_XX____,
+ ___XX__X,
+ X_XX____,
+ ___XX__X,
+ X__XX___,
+ ___XXXXX,
+ X__XXXX_,
+ ___XXX_X,
+ XXXXXXX_,
+ ___XXXXX,
+ X___XXX_,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 手 code:0xCAD6 */
+static GUI_CONST_STORAGE unsigned char acCAD6[32] = {
+ ________,
+ _XXXXX__,
+ __XXXXXX,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 首 code:0xCAD7 */
+static GUI_CONST_STORAGE unsigned char acCAD7[32] = {
+ ___XX___,
+ ___XX___,
+ ____XX__,
+ __XX____,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ ________,
+ _____XX_,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 输 code:0xCAE4 */
+static GUI_CONST_STORAGE unsigned char acCAE4[32] = {
+ __XX____,
+ _XX_____,
+ __XX____,
+ XXXX____,
+ _XXXXX_X,
+ X__XX___,
+ __XX__XX,
+ ____XX__,
+ _XX__XXX,
+ XXXXXXX_,
+ _XXXX___,
+ ________,
+ _XXXXXXX,
+ XXX__XX_,
+ ___XX_XX,
+ _XXXXXX_,
+ ___XX_XX,
+ XXXXXXX_,
+ ___XXXXX,
+ _XXXXXX_,
+ _XXXX_XX,
+ XXXXXXX_,
+ ___XX_XX,
+ _XXXXXX_,
+ ___XX_XX,
+ _XX__XX_,
+ ___XX_XX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 术 code:0xCAF5 */
+static GUI_CONST_STORAGE unsigned char acCAF5[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_XX____,
+ _______X,
+ X__XX___,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ XX______,
+ _____XXX,
+ XXX_____,
+ _____XXX,
+ XXX_____,
+ ____XX_X,
+ X_XX____,
+ ___XX__X,
+ X__XX___,
+ __XX___X,
+ X___XX__,
+ _XX____X,
+ X____XX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 数 code:0xCAFD */
+static GUI_CONST_STORAGE unsigned char acCAFD[32] = {
+ ____XX__,
+ __XX____,
+ _XX_XX_X,
+ X_XX____,
+ __XXXXXX,
+ __XX____,
+ _XXXXXXX,
+ X_XXXXX_,
+ ___XXXX_,
+ _XX_XX__,
+ __XXXXXX,
+ _XX_XX__,
+ _XX_XX_X,
+ XXXXXX__,
+ ___XX___,
+ __XXXX__,
+ _XXXXXXX,
+ __XXXX__,
+ ___XX_XX,
+ __XXXX__,
+ __XXX_XX,
+ ___XX___,
+ ____XXX_,
+ ___XX___,
+ ___XXXXX,
+ __XXXX__,
+ _XXX___X,
+ XXX__XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 双 code:0xCBAB */
+static GUI_CONST_STORAGE unsigned char acCBAB[32] = {
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXX__,
+ ______XX,
+ XX__XX__,
+ ______XX,
+ XX__XX__,
+ __XX__XX,
+ XX__XX__,
+ ___XXXX_,
+ XX__XX__,
+ ___XXXX_,
+ _XXXX___,
+ ____XX__,
+ _XXXX___,
+ ____XX__,
+ __XX____,
+ ___XXXX_,
+ __XX____,
+ ___XXXX_,
+ _XXXX___,
+ __XX_XX_,
+ XX_XX___,
+ __XX___X,
+ X___XX__,
+ _XX___XX,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 司 code:0xCBBE */
+static GUI_CONST_STORAGE unsigned char acCBBE[32] = {
+ __XXXXXX,
+ XXXXXX__,
+ ________,
+ ____XX__,
+ ________,
+ ____XX__,
+ _XXXXXXX,
+ XXXXXX__,
+ ________,
+ ____XX__,
+ ________,
+ ____XX__,
+ __XXXXXX,
+ XXX_XX__,
+ __XX____,
+ _XX_XX__,
+ __XX____,
+ _XX_XX__,
+ __XX____,
+ _XX_XX__,
+ __XXXXXX,
+ XXX_XX__,
+ __XX____,
+ ____XX__,
+ ________,
+ ____XX__,
+ ________,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 苏 code:0xCBD5 */
+static GUI_CONST_STORAGE unsigned char acCBD5[32] = {
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ _XXXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ __XX____,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ __XXXXXX,
+ XXXX____,
+ ______XX,
+ __XX____,
+ __XX__XX,
+ __XXXX__,
+ __XX_XX_,
+ __XX_XX_,
+ _XX__XX_,
+ __XX_XX_,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ __XX____,
+ __XX____,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 速 code:0xCBD9 */
+static GUI_CONST_STORAGE unsigned char acCBD9[32] = {
+ ________,
+ _XX_____,
+ __XX____,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ _XX_____,
+ ______XX,
+ XXXXXX__,
+ ______XX,
+ _XX_XX__,
+ _XXXX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX___,
+ XXXX____,
+ ___XX__X,
+ XXXXX___,
+ ___XX_XX,
+ _XX_XX__,
+ ___XXXX_,
+ _XX__XX_,
+ __XXXX__,
+ _XX_____,
+ _XX__XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 算 code:0xCBE3 */
+static GUI_CONST_STORAGE unsigned char acCBE3[32] = {
+ ___XX___,
+ _XX_____,
+ __XXXXXX,
+ XXXXXXX_,
+ _XX__XX_,
+ XX_XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ _____XX_,
+ _XX_____,
+ _XXXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 态 code:0xCCAC */
+static GUI_CONST_STORAGE unsigned char acCCAC[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ ______XX,
+ XX______,
+ _____XX_,
+ _XX_____,
+ ___XXXXX,
+ __XXX___,
+ _XXX___X,
+ X___XXX_,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ____XX__,
+ XX__XX__,
+ __XXXX__,
+ XX___XX_,
+ __XXXX__,
+ __XX_XX_,
+ _XX__XXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 条 code:0xCCF5 */
+static GUI_CONST_STORAGE unsigned char acCCF5[32] = {
+ ____XX__,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ___XXX__,
+ __XX____,
+ __XX_XX_,
+ _XX_____,
+ ______XX,
+ XX______,
+ ____XXX_,
+ _XXX____,
+ _XXXX__X,
+ X__XXXX_,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ ____XX_X,
+ X_XX____,
+ ___XX__X,
+ X__XX___,
+ __XX___X,
+ X___XX__,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 通 code:0xCDA8 */
+static GUI_CONST_STORAGE unsigned char acCDA8[32] = {
+ __XX__XX,
+ XXXXXX__,
+ ___XX___,
+ XX_XX___,
+ ___XX___,
+ _XXX____,
+ ______XX,
+ XXXXXX__,
+ ______XX,
+ _XX_XX__,
+ _XXXX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ _XXXXX__,
+ __XXXX__,
+ ________,
+ _XX__XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 投 code:0xCDB6 */
+static GUI_CONST_STORAGE unsigned char acCDB6[32] = {
+ ___XX___,
+ ________,
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ _XXXXXXX,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX_XX,
+ ____XXX_,
+ ___XXXX_,
+ ________,
+ ___XXXXX,
+ XXXXXX__,
+ _XXXX__X,
+ X___XX__,
+ ___XX__X,
+ X__XX___,
+ ___XX___,
+ XXXX____,
+ ___XX___,
+ _XX_____,
+ ___XX__X,
+ XXXXX___,
+ _XXXXXXX,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 图 code:0xCDBC */
+static GUI_CONST_STORAGE unsigned char acCDBC[32] = {
+ __XXXXXX,
+ XXXXXXX_,
+ __XX____,
+ _____XX_,
+ __XX__XX,
+ _____XX_,
+ __XX__XX,
+ XXXX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XXXXXX,
+ _XX__XX_,
+ __XX___X,
+ XX___XX_,
+ __XX_XXX,
+ _XXX_XX_,
+ __XXXX_X,
+ XX_XXXX_,
+ __XX____,
+ _XX__XX_,
+ __XX_XXX,
+ _____XX_,
+ __XX___X,
+ XX___XX_,
+ __XX____,
+ _XX__XX_,
+ __XXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 外 code:0xCDE2 */
+static GUI_CONST_STORAGE unsigned char acCDE2[32] = {
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XXXXX,
+ _XX_____,
+ __XX__XX,
+ _XXX____,
+ __XX__XX,
+ _XXXX___,
+ _XXXX_XX,
+ _XX_XX__,
+ ____XXX_,
+ _XX__XX_,
+ _____XX_,
+ _XX__XX_,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ __XX____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 为 code:0xCEAA */
+static GUI_CONST_STORAGE unsigned char acCEAA[32] = {
+ ______XX,
+ ________,
+ ___XX_XX,
+ ________,
+ ____XXXX,
+ ________,
+ ______XX,
+ ________,
+ _XXXXXXX,
+ XXXXXX__,
+ ______XX,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ _____XX_,
+ XX__XX__,
+ _____XX_,
+ _XX_XX__,
+ ____XX__,
+ _XX_XX__,
+ ____XX__,
+ ____XX__,
+ ___XX___,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ _XX_____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 未 code:0xCEB4 */
+static GUI_CONST_STORAGE unsigned char acCEB4[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ XX______,
+ _____XXX,
+ XXX_____,
+ ____XX_X,
+ X_XX____,
+ ___XX__X,
+ X__XX___,
+ _XXX___X,
+ X___XXX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 位 code:0xCEBB */
+static GUI_CONST_STORAGE unsigned char acCEBB[32] = {
+ ____XX__,
+ XX______,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX___,
+ ________,
+ __XXX___,
+ ___XX___,
+ _XXXX_XX,
+ ___XX___,
+ ___XX_XX,
+ ___XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X_XX____,
+ ___XX__X,
+ X_XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 温 code:0xCEC2 */
+static GUI_CONST_STORAGE unsigned char acCEC2[32] = {
+ ______XX,
+ XXXXX___,
+ __XX__XX,
+ ___XX___,
+ ___XX_XX,
+ ___XX___,
+ ______XX,
+ XXXXX___,
+ _XX___XX,
+ ___XX___,
+ __XX__XX,
+ ___XX___,
+ ______XX,
+ XXXXX___,
+ ___XX___,
+ ________,
+ ___XXXXX,
+ XXXXXX__,
+ __XX_XXX,
+ X_XXXX__,
+ __XX_XXX,
+ X_XXXX__,
+ _XX__XXX,
+ X_XXXX__,
+ _XX__XXX,
+ X_XXXX__,
+ ____XXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 文 code:0xCEC4 */
+static GUI_CONST_STORAGE unsigned char acCEC4[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ ______XX,
+ XX______,
+ _______X,
+ X_______,
+ ______XX,
+ XX______,
+ _____XX_,
+ _XX_____,
+ ___XXX__,
+ __XXX___,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 务 code:0xCEF1 */
+static GUI_CONST_STORAGE unsigned char acCEF1[32] = {
+ _____XX_,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ___XXX__,
+ __XX____,
+ __XX_XX_,
+ _XX_____,
+ ______XX,
+ XX______,
+ ____XXX_,
+ _XXX____,
+ _XXXX___,
+ ___XXXX_,
+ ______XX,
+ ________,
+ __XXXXXX,
+ XXXXX___,
+ ______XX,
+ ___XX___,
+ _____XX_,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 下 code:0xCFC2 */
+static GUI_CONST_STORAGE unsigned char acCFC2[32] = {
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ______XX,
+ _XX_____,
+ ______XX,
+ __XX____,
+ ______XX,
+ ___XX___,
+ ______XX,
+ ___XX___,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 显 code:0xCFD4 */
+static GUI_CONST_STORAGE unsigned char acCFD4[32] = {
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ _____XX_,
+ _XX_____,
+ __XX_XX_,
+ _XX_XX__,
+ ___XXXX_,
+ _XX_XX__,
+ ___XXXX_,
+ _XXXX___,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 限 code:0xCFDE */
+static GUI_CONST_STORAGE unsigned char acCFDE[32] = {
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ __XX_XXX,
+ X___XX__,
+ __XX_XXX,
+ X___XX__,
+ __XXXX_X,
+ XXXXXX__,
+ __XXXX_X,
+ X___XX__,
+ __XX_XXX,
+ X___XX__,
+ __XX_XXX,
+ XXXXXX__,
+ __XX_XXX,
+ X_XX_XX_,
+ __XX_XXX,
+ X_XXXX__,
+ __XXXX_X,
+ X__XX___,
+ __XX___X,
+ XXXXX___,
+ __XX___X,
+ XX__XX__,
+ __XX___X,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 线 code:0xCFDF */
+static GUI_CONST_STORAGE unsigned char acCFDF[32] = {
+ ___XX___,
+ _XXXX___,
+ ___XX___,
+ _XX_XX__,
+ __XX_XX_,
+ _XX_____,
+ __XX_XX_,
+ _XXXXX__,
+ _XXXXX_X,
+ XXX_____,
+ ____XX__,
+ _XX_____,
+ ___XX___,
+ _XXXXXX_,
+ __XX___X,
+ XXXX____,
+ _XXXXXX_,
+ _XX_XX__,
+ ________,
+ _XXXX___,
+ ________,
+ __XX_XX_,
+ ____XXX_,
+ _XXXXXX_,
+ _XXXX__X,
+ XX__XXX_,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 相 code:0xCFE0 */
+static GUI_CONST_STORAGE unsigned char acCFE0[32] = {
+ ____XX__,
+ ________,
+ ____XX__,
+ XXXXXXX_,
+ ____XX__,
+ XX___XX_,
+ _XXXXXXX,
+ XX___XX_,
+ ____XX__,
+ XX___XX_,
+ ___XXX__,
+ XXXXXXX_,
+ ___XXXX_,
+ XX___XX_,
+ __XXXXXX,
+ XX___XX_,
+ __XXXX__,
+ XXXXXXX_,
+ _XX_XX__,
+ XX___XX_,
+ ____XX__,
+ XX___XX_,
+ ____XX__,
+ XX___XX_,
+ ____XX__,
+ XXXXXXX_,
+ ____XX__,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 项 code:0xCFEE */
+static GUI_CONST_STORAGE unsigned char acCFEE[32] = {
+ ________,
+ ________,
+ ______XX,
+ XXXXXXX_,
+ _XXXXX__,
+ _XX_____,
+ ___XX___,
+ XX______,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ ____XX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XXXXX,
+ XX__XX__,
+ _XXX____,
+ XXXX____,
+ _______X,
+ X__XX___,
+ ______XX,
+ ____XX__,
+ _____XX_,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 向 code:0xCFF2 */
+static GUI_CONST_STORAGE unsigned char acCFF2[32] = {
+ ______XX,
+ ________,
+ _____XX_,
+ ________,
+ __XXXXXX,
+ XXXXXXX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XX_XXX,
+ XXXX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XX_,
+ __XX_XXX,
+ XXXX_XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ __XX____,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 消 code:0xCFFB */
+static GUI_CONST_STORAGE unsigned char acCFFB[32] = {
+ ________,
+ _XX_____,
+ __XX__XX,
+ _XX_XX__,
+ ___XX__X,
+ XXXXX___,
+ ____XX__,
+ _XX_____,
+ ______XX,
+ XXXXXX__,
+ _XX___XX,
+ ____XX__,
+ __XX__XX,
+ ____XX__,
+ ____XXXX,
+ XXXXXX__,
+ ____XXXX,
+ ____XX__,
+ ___XX_XX,
+ ____XX__,
+ ___XX_XX,
+ XXXXXX__,
+ __XX__XX,
+ ____XX__,
+ __XX__XX,
+ ____XX__,
+ ______XX,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 小 code:0xD0A1 */
+static GUI_CONST_STORAGE unsigned char acD0A1[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ____XX_X,
+ X_XX____,
+ ____XX_X,
+ X__XX___,
+ ___XX__X,
+ X___XX__,
+ __XX___X,
+ X____XX_,
+ _XX____X,
+ X____XX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 校 code:0xD0A3 */
+static GUI_CONST_STORAGE unsigned char acD0A3[32] = {
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ __XX____,
+ ____XX_X,
+ XXXXXXX_,
+ _XXXXXXX,
+ ________,
+ ____XX__,
+ _XXXX___,
+ ___XXX__,
+ XX__XX__,
+ ___XXXXX,
+ X____XX_,
+ __XXXXXX,
+ XX__XX__,
+ __XXXX__,
+ XX__XX__,
+ _XX_XX__,
+ _XXXX___,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ _XXXX___,
+ ____XX__,
+ XX__XX__,
+ ____XX_X,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 写 code:0xD0B4 */
+static GUI_CONST_STORAGE unsigned char acD0B4[32] = {
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _XX_____,
+ _____XX_,
+ ____XX__,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ____XX__,
+ ________,
+ ___XX___,
+ ________,
+ ___XXXXX,
+ XXXXXX__,
+ ________,
+ ____XX__,
+ ________,
+ ____XX__,
+ _XXXXXXX,
+ XXXXXX__,
+ ________,
+ ____XX__,
+ ________,
+ ____XX__,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 信 code:0xD0C5 */
+static GUI_CONST_STORAGE unsigned char acD0C5[32] = {
+ ____XX__,
+ XX______,
+ ____XX__,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ ________,
+ __XXX_XX,
+ XXXXXX__,
+ _XXXX___,
+ ________,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX___,
+ ________,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ ____XX__,
+ ___XX_XX,
+ ____XX__,
+ ___XX_XX,
+ ____XX__,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX_XX,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 型 code:0xD0CD */
+static GUI_CONST_STORAGE unsigned char acD0CD[32] = {
+ ________,
+ ____XX__,
+ __XXXXXX,
+ XXX_XX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ _XX_XX__,
+ _XXXXXXX,
+ XXX_XX__,
+ ___XX_XX,
+ _XX_XX__,
+ ___XX_XX,
+ ____XX__,
+ __XX__XX,
+ ____XX__,
+ _XX____X,
+ X_XXXX__,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 行 code:0xD0D0 */
+static GUI_CONST_STORAGE unsigned char acD0D0[32] = {
+ ____XX__,
+ ________,
+ ___XX__X,
+ XXXXXX__,
+ __XX____,
+ ________,
+ _XX_XX__,
+ ________,
+ ____XX__,
+ ________,
+ ___XX_XX,
+ XXXXXXX_,
+ __XXX___,
+ __XX____,
+ _XXXX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 序 code:0xD0F2 */
+static GUI_CONST_STORAGE unsigned char acD0F2[32] = {
+ _______X,
+ X_______,
+ ________,
+ XX______,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ ________,
+ ___XXXXX,
+ XXXXXX__,
+ ___XX___,
+ ___XX___,
+ ___XX__X,
+ X_XX____,
+ ___XX___,
+ XXX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ _XX__XX_,
+ ___XX___,
+ _XX_XX__,
+ __XX____,
+ _XX_____,
+ __XX____,
+ _XX_____,
+ _XX____X,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 选 code:0xD1A1 */
+static GUI_CONST_STORAGE unsigned char acD1A1[32] = {
+ ________,
+ _XX_____,
+ __XX__XX,
+ _XX_____,
+ ___XX_XX,
+ _XX_____,
+ ___XX_XX,
+ XXXXXX__,
+ _____XX_,
+ _XX_____,
+ ________,
+ _XX_____,
+ _XXXXXXX,
+ XXXXXXX_,
+ ___XX___,
+ XXXX____,
+ ___XX___,
+ XXXX____,
+ ___XX__X,
+ X_XX____,
+ ___XX_XX,
+ __XX_XX_,
+ ___XXXX_,
+ ___XXXX_,
+ __XXXX__,
+ ________,
+ _XX__XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 讯 code:0xD1B6 */
+static GUI_CONST_STORAGE unsigned char acD1B6[32] = {
+ __XX____,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ _______X,
+ X__XX___,
+ _______X,
+ X__XX___,
+ _XXXX__X,
+ X__XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XXXX_,
+ ___XXXXX,
+ X__XXXX_,
+ ___XXX_X,
+ X__XXXX_,
+ ___XX__X,
+ X___XXX_,
+ _______X,
+ X____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 压 code:0xD1B9 */
+static GUI_CONST_STORAGE unsigned char acD1B9[32] = {
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ ________,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ___XXXXX,
+ XXXXXX__,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX_XX___,
+ ___XX___,
+ XX__XX__,
+ __XX____,
+ XX__XX__,
+ __XX____,
+ XX______,
+ _XX_XXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 牙 code:0xD1C0 */
+static GUI_CONST_STORAGE unsigned char acD1C0[32] = {
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ ________,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XXXXX,
+ XXXXXXX_,
+ ________,
+ XXXX____,
+ _______X,
+ X_XX____,
+ ______XX,
+ __XX____,
+ _____XX_,
+ __XX____,
+ ___XXX__,
+ __XX____,
+ _XXX____,
+ __XX____,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 言 code:0xD1D4 */
+static GUI_CONST_STORAGE unsigned char acD1D4[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 要 code:0xD2AA */
+static GUI_CONST_STORAGE unsigned char acD2AA[32] = {
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ __XXXXXX,
+ XXXXXX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XXXXXX,
+ XXXXXX__,
+ ______XX,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ __XX____,
+ ____XXX_,
+ _XX_____,
+ ______XX,
+ XX______,
+ ____XXX_,
+ _XXXX___,
+ _XXXX___,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 页 code:0xD2B3 */
+static GUI_CONST_STORAGE unsigned char acD2B3[32] = {
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ ______XX,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ __XX____,
+ ____XX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XX__XX,
+ ____XX__,
+ _____XX_,
+ XXXX____,
+ ___XXX__,
+ ___XXX__,
+ _XXX____,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 一 code:0xD2BB */
+static GUI_CONST_STORAGE unsigned char acD2BB[32] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 仪 code:0xD2C7 */
+static GUI_CONST_STORAGE unsigned char acD2C7[32] = {
+ ____XX__,
+ XX______,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_XX__,
+ ___XX_XX,
+ ____XX__,
+ ___XX_XX,
+ ____XX__,
+ __XXX__X,
+ X__XX___,
+ _XXXX__X,
+ X__XX___,
+ ___XX___,
+ XXXX____,
+ ___XX___,
+ XXXX____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ XXXX____,
+ ___XX__X,
+ X__XX___,
+ ___XX_XX,
+ ____XX__,
+ ___XXXX_,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 已 code:0xD2D1 */
+static GUI_CONST_STORAGE unsigned char acD2D1[32] = {
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ ________,
+ ____XX__,
+ ________,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX____,
+ ________,
+ __XX____,
+ ________,
+ __XX____,
+ ________,
+ __XX____,
+ ________,
+ __XX____,
+ _____XX_,
+ __XX____,
+ _____XX_,
+ ___XXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 英 code:0xD3A2 */
+static GUI_CONST_STORAGE unsigned char acD3A2[32] = {
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ _XX_____,
+ _______X,
+ X_______,
+ ___XXXXX,
+ XXXXX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ _XXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ XX______,
+ _____XX_,
+ _XX_____,
+ ___XXX__,
+ __XXX___,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 迎 code:0xD3AD */
+static GUI_CONST_STORAGE unsigned char acD3AD[32] = {
+ ________,
+ ________,
+ __XX___X,
+ X_______,
+ ___XXXXX,
+ _XXXXXX_,
+ ___XXXX_,
+ _XX__XX_,
+ _____XX_,
+ _XX__XX_,
+ _____XX_,
+ _XX__XX_,
+ _XXXXXX_,
+ _XX__XX_,
+ ___XXXX_,
+ _XX__XX_,
+ ___XXXXX,
+ XXX__XX_,
+ ___XXXXX,
+ _XXXXXX_,
+ ___XXXX_,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ __XXXX__,
+ _XX_____,
+ _XX__XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 硬 code:0xD3B2 */
+static GUI_CONST_STORAGE unsigned char acD3B2[32] = {
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ ___XX___,
+ __XX____,
+ ___XX__X,
+ XXXXXXX_,
+ __XX___X,
+ X_XX_XX_,
+ __XXXXXX,
+ X_XX_XX_,
+ _XXX_XXX,
+ XXXXXXX_,
+ __XX_XXX,
+ X_XX_XX_,
+ __XX_XXX,
+ X_XX_XX_,
+ __XX_XXX,
+ XXXXXXX_,
+ __XXXXX_,
+ XXXX____,
+ __XX_XX_,
+ _XX_____,
+ ________,
+ XXXXX___,
+ ______XX,
+ X___XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 用 code:0xD3C3 */
+static GUI_CONST_STORAGE unsigned char acD3C3[32] = {
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ XX___XX_,
+ ___XX___,
+ XX___XX_,
+ ___XX___,
+ XX___XX_,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ XX___XX_,
+ ___XX___,
+ XX___XX_,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ XX___XX_,
+ ___XX___,
+ XX___XX_,
+ __XX____,
+ XX___XX_,
+ __XX____,
+ XX___XX_,
+ _XX_____,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 有 code:0xD3D0 */
+static GUI_CONST_STORAGE unsigned char acD3D0[32] = {
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ___XXX__,
+ ___XX___,
+ __XXXX__,
+ ___XX___,
+ _XX_XXXX,
+ XXXXX___,
+ ____XX__,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ ____XXXX,
+ XXXXX___,
+ ____XX__,
+ ___XX___,
+ ____XX__,
+ ___XX___,
+ ____XX__,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 语 code:0xD3EF */
+static GUI_CONST_STORAGE unsigned char acD3EF[32] = {
+ __XX_XXX,
+ XXXXXXX_,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ______XX,
+ XXXXXX__,
+ _______X,
+ X___XX__,
+ _XXXX__X,
+ X___XX__,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XX_XX,
+ XXXXXX__,
+ ___XXXXX,
+ ____XX__,
+ ___XXXXX,
+ ____XX__,
+ ___XX_XX,
+ XXXXXX__,
+ ______XX,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 域 code:0xD3F2 */
+static GUI_CONST_STORAGE unsigned char acD3F2[32] = {
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XXXX__,
+ ___XX___,
+ __XX_XX_,
+ ___XX_XX,
+ XXXXXXX_,
+ _XXXXX__,
+ __XX____,
+ ___XX_XX,
+ XXXX_XX_,
+ ___XX_XX,
+ XXXX_XX_,
+ ___XX_XX,
+ XXXX_XX_,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX___,
+ __XXXX__,
+ ___XXX__,
+ XX_XXXX_,
+ _XXX__XX,
+ X_XXXXX_,
+ ________,
+ _XX_XXX_,
+ ________,
+ XX___XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 源 code:0xD4B4 */
+static GUI_CONST_STORAGE unsigned char acD4B4[32] = {
+ ________,
+ ________,
+ __XX__XX,
+ XXXXXXX_,
+ ___XX_XX,
+ __XX____,
+ ____XXXX,
+ _XX_____,
+ ______XX,
+ XXXXXX__,
+ _XX___XX,
+ XX__XX__,
+ __XX__XX,
+ XXXXXX__,
+ ____XXXX,
+ XX__XX__,
+ ____XXXX,
+ XXXXXX__,
+ ___XX_XX,
+ __XX____,
+ ___XX_XX,
+ XXXXXX__,
+ __XX_XX_,
+ XXXX_XX_,
+ __XX_XXX,
+ X_XX_XX_,
+ ____XX__,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 在 code:0xD4DA */
+static GUI_CONST_STORAGE unsigned char acD4DA[32] = {
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ ________,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ___XXX__,
+ _XX_____,
+ __XXXXXX,
+ XXXXXX__,
+ _XX_XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ____XXXX,
+ XXXXXXX_,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 择 code:0xD4F1 */
+static GUI_CONST_STORAGE unsigned char acD4F1[32] = {
+ ___XX___,
+ ________,
+ ___XX_XX,
+ XXXXXX__,
+ ___XX__X,
+ X__XX___,
+ _XXXXXX_,
+ XXXX____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ XXXXX___,
+ ___XX_XX,
+ X___XXX_,
+ ___XXX__,
+ _XX_____,
+ _XXXX__X,
+ XXXXX___,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XX___,
+ _XX_____,
+ _XXXX___,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 障 code:0xD5CF */
+static GUI_CONST_STORAGE unsigned char acD5CF[32] = {
+ ________,
+ _XX_____,
+ _XXXXXXX,
+ XXXXXX__,
+ _XX_XX_X,
+ X__XX___,
+ _XX_XXXX,
+ XXXXXXX_,
+ _XXXX___,
+ ________,
+ _XXXX_XX,
+ XXXXXX__,
+ _XX_XXXX,
+ ____XX__,
+ _XX_XXXX,
+ XXXXXX__,
+ _XX_XXXX,
+ ____XX__,
+ _XX_XXXX,
+ XXXXXX__,
+ _XXXX___,
+ _XX_____,
+ _XX__XXX,
+ XXXXXXX_,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 诊 code:0xD5EF */
+static GUI_CONST_STORAGE unsigned char acD5EF[32] = {
+ __XX____,
+ _XX_____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ XXXX____,
+ _______X,
+ X__XX___,
+ _____XXX,
+ _XX_XXX_,
+ _XXXX___,
+ XX______,
+ ___XX__X,
+ X_______,
+ ___XX_XX,
+ __XX____,
+ ___XX___,
+ _XX_____,
+ ___XX___,
+ XX__XX__,
+ ___XX_XX,
+ X__XX___,
+ ___XXX__,
+ __XX____,
+ ___XX___,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 整 code:0xD5FB */
+static GUI_CONST_STORAGE unsigned char acD5FB[32] = {
+ ____XX__,
+ _XX_____,
+ _XXXXXXX,
+ XXX_____,
+ ____XX__,
+ _XXXXXX_,
+ __XXXXXX,
+ XX__XX__,
+ __XXXXXX,
+ XXXXX___,
+ __XXXXXX,
+ __XX____,
+ ___XXXX_,
+ _XXXX___,
+ __XXXXXX,
+ XX__XXX_,
+ _XX_XX__,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ ____XX_X,
+ XXXXX___,
+ ____XX_X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 正 code:0xD5FD */
+static GUI_CONST_STORAGE unsigned char acD5FD[32] = {
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 知 code:0xD6AA */
+static GUI_CONST_STORAGE unsigned char acD6AA[32] = {
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ _XXXXXX_,
+ __XXXXXX,
+ _XX__XX_,
+ __XXXX__,
+ _XX__XX_,
+ _XX_XX__,
+ _XX__XX_,
+ ____XX__,
+ _XX__XX_,
+ _XXXXXXX,
+ XXX__XX_,
+ ____XX__,
+ _XX__XX_,
+ ____XX__,
+ _XX__XX_,
+ ___XXXX_,
+ _XX__XX_,
+ ___XX_XX,
+ _XXXXXX_,
+ __XX__XX,
+ _XX__XX_,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 直 code:0xD6B1 */
+static GUI_CONST_STORAGE unsigned char acD6B1[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 执 code:0xD6B4 */
+static GUI_CONST_STORAGE unsigned char acD6B4[32] = {
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ _XXXXXXX,
+ XXXXX___,
+ ___XX___,
+ XX_XX___,
+ ___XX___,
+ XX_XX___,
+ ___XX_XX,
+ XX_XX___,
+ ___XXX_X,
+ XX_XX___,
+ _XXXX___,
+ XX_XX___,
+ ___XX___,
+ XX_XX___,
+ ___XX__X,
+ XXXXX___,
+ ___XX__X,
+ XXXXXXX_,
+ ___XX_XX,
+ ____XXX_,
+ _XXXXXX_,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 址 code:0xD6B7 */
+static GUI_CONST_STORAGE unsigned char acD6B7[32] = {
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ ___XX___,
+ __XX____,
+ _XXXXXXX,
+ X_XX____,
+ ___XX__X,
+ X_XXXXX_,
+ ___XX__X,
+ X_XX____,
+ ___XX__X,
+ X_XX____,
+ ___XX__X,
+ X_XX____,
+ ___XX__X,
+ X_XX____,
+ ___XXXXX,
+ X_XX____,
+ _XXXX__X,
+ X_XX____,
+ _______X,
+ X_XX____,
+ _____XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 指 code:0xD6B8 */
+static GUI_CONST_STORAGE unsigned char acD6B8[32] = {
+ ___XX__X,
+ X_______,
+ ___XX__X,
+ X__XXX__,
+ ___XX__X,
+ XXXX____,
+ _XXXXXXX,
+ X____XX_,
+ ___XX__X,
+ X____XX_,
+ ___XX___,
+ XXXXXXX_,
+ ___XXXX_,
+ ________,
+ ___XXX_X,
+ XXXXXX__,
+ _XXXX__X,
+ X___XX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ XXXXXX__,
+ ___XX__X,
+ X___XX__,
+ ___XX__X,
+ X___XX__,
+ _XXXX__X,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 置 code:0xD6C3 */
+static GUI_CONST_STORAGE unsigned char acD6C3[32] = {
+ __XXXXXX,
+ XXXXXX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XX_XX_,
+ _XX_XX__,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ ___XX__X,
+ X__XX___,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 制 code:0xD6C6 */
+static GUI_CONST_STORAGE unsigned char acD6C6[32] = {
+ _____XX_,
+ ____XX__,
+ __XX_XX_,
+ ____XX__,
+ __XXXXXX,
+ XXXXXX__,
+ _XX__XX_,
+ __XXXX__,
+ _____XX_,
+ __XXXX__,
+ _XXXXXXX,
+ XXXXXX__,
+ _____XX_,
+ __XXXX__,
+ _____XX_,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX_XX_,
+ XXXXXX__,
+ __XX_XX_,
+ XX__XX__,
+ __XX_XX_,
+ XX__XX__,
+ __XX_XXX,
+ XX__XX__,
+ _____XX_,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 智 code:0xD6C7 */
+static GUI_CONST_STORAGE unsigned char acD6C7[32] = {
+ __XX____,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ _XX_XX__,
+ XX__XX__,
+ ____XX__,
+ XX__XX__,
+ _XXXXXXX,
+ XX__XX__,
+ ___XXXX_,
+ XX__XX__,
+ __XX__XX,
+ XXXXXX__,
+ _XX_____,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ___XXXXX,
+ XXXXX___,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 中 code:0xD6D0 */
+static GUI_CONST_STORAGE unsigned char acD6D0[32] = {
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XX___X,
+ X___XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX___X,
+ X___XX__,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 主 code:0xD6F7 */
+static GUI_CONST_STORAGE unsigned char acD6F7[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ___XXXXX,
+ XXXXX___,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 装 code:0xD7B0 */
+static GUI_CONST_STORAGE unsigned char acD7B0[32] = {
+ ____XX__,
+ _XX_____,
+ _XX_XX__,
+ _XX_____,
+ __XXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ _XX_____,
+ ___XXX__,
+ _XX_____,
+ _XXXXX_X,
+ XXXXXX__,
+ ____XXXX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ X__XX___,
+ ____XXX_,
+ XXXX____,
+ ___XXXX_,
+ _XX_____,
+ _XXX_XXX,
+ X_XXX___,
+ _____XXX,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 状 code:0xD7B4 */
+static GUI_CONST_STORAGE unsigned char acD7B4[32] = {
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XXXX___,
+ _XX_XX__,
+ _XX_XX__,
+ __XXXX__,
+ _XX_____,
+ __XXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ _XX_____,
+ ____XX__,
+ _XX_____,
+ ___XXX__,
+ XXXX____,
+ __XXXX__,
+ XXXX____,
+ _XX_XX__,
+ XXXX____,
+ ____XX_X,
+ X__XX___,
+ ____XX_X,
+ X__XX___,
+ ____XXXX,
+ ____XX__,
+ ____XXX_,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 准 code:0xD7BC */
+static GUI_CONST_STORAGE unsigned char acD7BC[32] = {
+ _______X,
+ X_XX____,
+ __XX___X,
+ X__XX___,
+ ___XX_XX,
+ ________,
+ ___XX_XX,
+ XXXXXXX_,
+ _____XXX,
+ __XX____,
+ ____XXXX,
+ __XX____,
+ ______XX,
+ XXXXXX__,
+ ___XX_XX,
+ __XX____,
+ ___XX_XX,
+ __XX____,
+ __XX__XX,
+ XXXXXX__,
+ __XX__XX,
+ __XX____,
+ _XX___XX,
+ __XX____,
+ _XX___XX,
+ XXXXXXX_,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 自 code:0xD7D4 */
+static GUI_CONST_STORAGE unsigned char acD7D4[32] = {
+ ______XX,
+ ________,
+ _____XX_,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XX____,
+ ____XX__,
+ __XXXXXX,
+ XXXXXX__,
+ __XX____,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 字 code:0xD7D6 */
+static GUI_CONST_STORAGE unsigned char acD7D6[32] = {
+ ______XX,
+ ________,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _XX_____,
+ _____XX_,
+ _XX_____,
+ _____XX_,
+ ___XXXXX,
+ XXXX____,
+ ________,
+ _XX_____,
+ ________,
+ XX______,
+ _______X,
+ X_______,
+ _XXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 作 code:0xD7F7 */
+static GUI_CONST_STORAGE unsigned char acD7F7[32] = {
+ ____XX_X,
+ X_______,
+ ____XX_X,
+ X_______,
+ ____XX_X,
+ XXXXXXX_,
+ ___XX_XX,
+ XX______,
+ ___XX_XX,
+ XX______,
+ __XXXXX_,
+ XX______,
+ _XXXX___,
+ XXXXXX__,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XXXXXXX_,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ___XX___,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+static GUI_CONST_STORAGE GUI_CHARINFO Cinfo[306] = {
+ {6, 6, 2, (unsigned char *)&ac0020}, /*0: */
+ {5, 5, 2, (unsigned char *)&ac0021}, /*1: !*/
+ {7, 7, 2, (unsigned char *)&ac0022}, /*2: "*/
+ {8, 8, 2, (unsigned char *)&ac0023}, /*3: #*/
+ {8, 8, 2, (unsigned char *)&ac0024}, /*4: $*/
+ {8, 8, 2, (unsigned char *)&ac0025}, /*5: %*/
+ {9, 9, 2, (unsigned char *)&ac0026}, /*6: &*/
+ {4, 4, 2, (unsigned char *)&ac0027}, /*7: '*/
+ {8, 8, 2, (unsigned char *)&ac0028}, /*8: (*/
+ {5, 5, 2, (unsigned char *)&ac0029}, /*9: )*/
+ {8, 8, 2, (unsigned char *)&ac002A}, /*10: **/
+ {9, 9, 2, (unsigned char *)&ac002B}, /*11: +*/
+ {4, 4, 2, (unsigned char *)&ac002C}, /*12: ,*/
+ {8, 8, 2, (unsigned char *)&ac002D}, /*13: -*/
+ {4, 4, 2, (unsigned char *)&ac002E}, /*14: .*/
+ {8, 8, 2, (unsigned char *)&ac002F}, /*15: /*/
+ {8, 8, 2, (unsigned char *)&ac0030}, /*16: 0*/
+ {7, 7, 2, (unsigned char *)&ac0031}, /*17: 1*/
+ {8, 8, 2, (unsigned char *)&ac0032}, /*18: 2*/
+ {8, 8, 2, (unsigned char *)&ac0033}, /*19: 3*/
+ {9, 9, 2, (unsigned char *)&ac0034}, /*20: 4*/
+ {8, 8, 2, (unsigned char *)&ac0035}, /*21: 5*/
+ {8, 8, 2, (unsigned char *)&ac0036}, /*22: 6*/
+ {8, 8, 2, (unsigned char *)&ac0037}, /*23: 7*/
+ {8, 8, 2, (unsigned char *)&ac0038}, /*24: 8*/
+ {8, 8, 2, (unsigned char *)&ac0039}, /*25: 9*/
+ {6, 6, 2, (unsigned char *)&ac003A}, /*26: :*/
+ {5, 5, 2, (unsigned char *)&ac003B}, /*27: ;*/
+ {7, 7, 2, (unsigned char *)&ac003C}, /*28: <*/
+ {8, 8, 2, (unsigned char *)&ac003D}, /*29: =*/
+ {8, 8, 2, (unsigned char *)&ac003E}, /*30: >*/
+ {8, 8, 2, (unsigned char *)&ac003F}, /*31: ?*/
+ {8, 8, 2, (unsigned char *)&ac0040}, /*32: @*/
+ {8, 8, 2, (unsigned char *)&ac0041}, /*33: A*/
+ {8, 8, 2, (unsigned char *)&ac0042}, /*34: B*/
+ {8, 8, 2, (unsigned char *)&ac0043}, /*35: C*/
+ {8, 8, 2, (unsigned char *)&ac0044}, /*36: D*/
+ {8, 8, 2, (unsigned char *)&ac0045}, /*37: E*/
+ {8, 8, 2, (unsigned char *)&ac0046}, /*38: F*/
+ {8, 8, 2, (unsigned char *)&ac0047}, /*39: G*/
+ {8, 8, 2, (unsigned char *)&ac0048}, /*40: H*/
+ {7, 7, 2, (unsigned char *)&ac0049}, /*41: I*/
+ {8, 8, 2, (unsigned char *)&ac004A}, /*42: J*/
+ {8, 8, 2, (unsigned char *)&ac004B}, /*43: K*/
+ {8, 8, 2, (unsigned char *)&ac004C}, /*44: L*/
+ {8, 8, 2, (unsigned char *)&ac004D}, /*45: M*/
+ {8, 8, 2, (unsigned char *)&ac004E}, /*46: N*/
+ {8, 8, 2, (unsigned char *)&ac004F}, /*47: O*/
+ {8, 8, 2, (unsigned char *)&ac0050}, /*48: P*/
+ {8, 8, 2, (unsigned char *)&ac0051}, /*49: Q*/
+ {8, 8, 2, (unsigned char *)&ac0052}, /*50: R*/
+ {8, 8, 2, (unsigned char *)&ac0053}, /*51: S*/
+ {8, 8, 2, (unsigned char *)&ac0054}, /*52: T*/
+ {8, 8, 2, (unsigned char *)&ac0055}, /*53: U*/
+ {8, 8, 2, (unsigned char *)&ac0056}, /*54: V*/
+ {8, 8, 2, (unsigned char *)&ac0057}, /*55: W*/
+ {8, 8, 2, (unsigned char *)&ac0058}, /*56: X*/
+ {8, 8, 2, (unsigned char *)&ac0059}, /*57: Y*/
+ {8, 8, 2, (unsigned char *)&ac005A}, /*58: Z*/
+ {7, 7, 2, (unsigned char *)&ac005B}, /*59: [*/
+ {8, 8, 2, (unsigned char *)&ac005C}, /*60: \*/
+ {6, 6, 2, (unsigned char *)&ac005D}, /*61: ]*/
+ {7, 7, 2, (unsigned char *)&ac005E}, /*62: ^*/
+ {8, 8, 2, (unsigned char *)&ac005F}, /*63: _*/
+ {5, 5, 2, (unsigned char *)&ac0060}, /*64: `*/
+ {8, 8, 2, (unsigned char *)&ac0061}, /*65: a*/
+ {8, 8, 2, (unsigned char *)&ac0062}, /*66: b*/
+ {8, 8, 2, (unsigned char *)&ac0063}, /*67: c*/
+ {9, 9, 2, (unsigned char *)&ac0064}, /*68: d*/
+ {8, 8, 2, (unsigned char *)&ac0065}, /*69: e*/
+ {8, 8, 2, (unsigned char *)&ac0066}, /*70: f*/
+ {8, 8, 2, (unsigned char *)&ac0067}, /*71: g*/
+ {9, 9, 2, (unsigned char *)&ac0068}, /*72: h*/
+ {7, 7, 2, (unsigned char *)&ac0069}, /*73: i*/
+ {7, 7, 2, (unsigned char *)&ac006A}, /*74: j*/
+ {8, 8, 2, (unsigned char *)&ac006B}, /*75: k*/
+ {7, 7, 2, (unsigned char *)&ac006C}, /*76: l*/
+ {8, 8, 2, (unsigned char *)&ac006D}, /*77: m*/
+ {9, 9, 2, (unsigned char *)&ac006E}, /*78: n*/
+ {8, 8, 2, (unsigned char *)&ac006F}, /*79: o*/
+ {8, 8, 2, (unsigned char *)&ac0070}, /*80: p*/
+ {9, 9, 2, (unsigned char *)&ac0071}, /*81: q*/
+ {8, 8, 2, (unsigned char *)&ac0072}, /*82: r*/
+ {7, 7, 2, (unsigned char *)&ac0073}, /*83: s*/
+ {8, 8, 2, (unsigned char *)&ac0074}, /*84: t*/
+ {9, 9, 2, (unsigned char *)&ac0075}, /*85: u*/
+ {8, 8, 2, (unsigned char *)&ac0076}, /*86: v*/
+ {8, 8, 2, (unsigned char *)&ac0077}, /*87: w*/
+ {8, 8, 2, (unsigned char *)&ac0078}, /*88: x*/
+ {9, 9, 2, (unsigned char *)&ac0079}, /*89: y*/
+ {8, 8, 2, (unsigned char *)&ac007A}, /*90: z*/
+ {8, 8, 2, (unsigned char *)&ac007B}, /*91: {*/
+ {6, 6, 2, (unsigned char *)&ac007C}, /*92: |*/
+ {5, 5, 2, (unsigned char *)&ac007D}, /*93: }*/
+ {8, 8, 2, (unsigned char *)&ac007E}, /*94: ~*/
+ {6, 6, 2, (unsigned char *)&ac007F}, /*95: */
+ {13, 13, 2, (unsigned char *)&acA1C1}, /*96: ×*/
+ {15, 15, 2, (unsigned char *)&acA1CC}, /*97: √*/
+ {15, 15, 2, (unsigned char *)&acA1E6}, /*98: ℃*/
+ {15, 15, 2, (unsigned char *)&acA1FA}, /*99: →*/
+ {15, 15, 2, (unsigned char *)&acA1FB}, /*100: ←*/
+ {11, 11, 2, (unsigned char *)&acA1FC}, /*101: ↑*/
+ {11, 11, 2, (unsigned char *)&acA1FD}, /*102: ↓*/
+ {15, 15, 2, (unsigned char *)&acB0B2}, /*103: 安*/
+ {15, 15, 2, (unsigned char *)&acB0B4}, /*104: 按*/
+ {15, 15, 2, (unsigned char *)&acB0E6}, /*105: 版*/
+ {15, 15, 2, (unsigned char *)&acB1A3}, /*106: 保*/
+ {15, 15, 2, (unsigned char *)&acB1A5}, /*107: 饱*/
+ {15, 15, 2, (unsigned char *)&acB1A8}, /*108: 报*/
+ {15, 15, 2, (unsigned char *)&acB1B8}, /*109: 备*/
+ {15, 15, 2, (unsigned char *)&acB1BE}, /*110: 本*/
+ {15, 15, 2, (unsigned char *)&acB1D5}, /*111: 闭*/
+ {15, 15, 2, (unsigned char *)&acB1E0}, /*112: 编*/
+ {15, 15, 2, (unsigned char *)&acB1E4}, /*113: 变*/
+ {15, 15, 2, (unsigned char *)&acB1ED}, /*114: 表*/
+ {15, 15, 2, (unsigned char *)&acB2BB}, /*115: 不*/
+ {15, 15, 2, (unsigned char *)&acB2C1}, /*116: 擦*/
+ {15, 15, 2, (unsigned char *)&acB2D9}, /*117: 操*/
+ {15, 15, 2, (unsigned char *)&acB2E2}, /*118: 测*/
+ {15, 15, 2, (unsigned char *)&acB2EE}, /*119: 差*/
+ {15, 15, 2, (unsigned char *)&acB3A4}, /*120: 长*/
+ {15, 15, 2, (unsigned char *)&acB3CC}, /*121: 程*/
+ {15, 15, 2, (unsigned char *)&acB3F6}, /*122: 出*/
+ {15, 15, 2, (unsigned char *)&acB4A2}, /*123: 储*/
+ {15, 15, 2, (unsigned char *)&acB4AB}, /*124: 传*/
+ {15, 15, 2, (unsigned char *)&acB4C5}, /*125: 磁*/
+ {15, 15, 2, (unsigned char *)&acB4CE}, /*126: 次*/
+ {15, 15, 2, (unsigned char *)&acB4E6}, /*127: 存*/
+ {15, 15, 2, (unsigned char *)&acB4F3}, /*128: 大*/
+ {15, 15, 2, (unsigned char *)&acB4FD}, /*129: 待*/
+ {15, 15, 2, (unsigned char *)&acB5A5}, /*130: 单*/
+ {15, 15, 2, (unsigned char *)&acB5AF}, /*131: 弹*/
+ {15, 15, 2, (unsigned char *)&acB5C4}, /*132: 的*/
+ {15, 15, 2, (unsigned char *)&acB5CD}, /*133: 低*/
+ {15, 15, 2, (unsigned char *)&acB5D8}, /*134: 地*/
+ {15, 15, 2, (unsigned char *)&acB5E3}, /*135: 点*/
+ {15, 15, 2, (unsigned char *)&acB5E7}, /*136: 电*/
+ {15, 15, 2, (unsigned char *)&acB6A8}, /*137: 定*/
+ {15, 15, 2, (unsigned char *)&acB6AF}, /*138: 动*/
+ {15, 15, 2, (unsigned char *)&acB6C8}, /*139: 度*/
+ {15, 15, 2, (unsigned char *)&acB6CC}, /*140: 短*/
+ {15, 15, 2, (unsigned char *)&acB6CF}, /*141: 断*/
+ {15, 15, 2, (unsigned char *)&acB7A8}, /*142: 法*/
+ {15, 15, 2, (unsigned char *)&acB7B4}, /*143: 反*/
+ {15, 15, 2, (unsigned char *)&acB7B5}, /*144: 返*/
+ {15, 15, 2, (unsigned char *)&acB7BD}, /*145: 方*/
+ {15, 15, 2, (unsigned char *)&acB7C7}, /*146: 非*/
+ {15, 15, 2, (unsigned char *)&acB7D6}, /*147: 分*/
+ {15, 15, 2, (unsigned char *)&acB7FE}, /*148: 服*/
+ {15, 15, 2, (unsigned char *)&acB8D0}, /*149: 感*/
+ {15, 15, 2, (unsigned char *)&acB8DF}, /*150: 高*/
+ {15, 15, 2, (unsigned char *)&acB8EE}, /*151: 割*/
+ {15, 15, 2, (unsigned char *)&acB8F6}, /*152: 个*/
+ {15, 15, 2, (unsigned char *)&acB9A4}, /*153: 工*/
+ {15, 15, 2, (unsigned char *)&acB9AB}, /*154: 公*/
+ {15, 15, 2, (unsigned char *)&acB9CA}, /*155: 故*/
+ {15, 15, 2, (unsigned char *)&acB9CC}, /*156: 固*/
+ {15, 15, 2, (unsigned char *)&acB9D8}, /*157: 关*/
+ {15, 15, 2, (unsigned char *)&acB9FD}, /*158: 过*/
+ {15, 15, 2, (unsigned char *)&acBAC4}, /*159: 耗*/
+ {15, 15, 2, (unsigned char *)&acBAC5}, /*160: 号*/
+ {15, 15, 2, (unsigned char *)&acBACD}, /*161: 和*/
+ {15, 15, 2, (unsigned char *)&acBAE3}, /*162: 恒*/
+ {15, 15, 2, (unsigned char *)&acBBA4}, /*163: 护*/
+ {15, 15, 2, (unsigned char *)&acBBB6}, /*164: 欢*/
+ {15, 15, 2, (unsigned char *)&acBBBB}, /*165: 换*/
+ {15, 15, 2, (unsigned char *)&acBBC9}, /*166: 簧*/
+ {15, 15, 2, (unsigned char *)&acBBD8}, /*167: 回*/
+ {15, 15, 2, (unsigned char *)&acBBF9}, /*168: 基*/
+ {15, 15, 2, (unsigned char *)&acBBFA}, /*169: 机*/
+ {15, 15, 2, (unsigned char *)&acBBFD}, /*170: 积*/
+ {15, 15, 2, (unsigned char *)&acBCAD}, /*171: 辑*/
+ {15, 15, 2, (unsigned char *)&acBCBC}, /*172: 技*/
+ {15, 15, 2, (unsigned char *)&acBCC6}, /*173: 计*/
+ {15, 15, 2, (unsigned char *)&acBCC7}, /*174: 记*/
+ {15, 15, 2, (unsigned char *)&acBCE4}, /*175: 间*/
+ {15, 15, 2, (unsigned char *)&acBCFE}, /*176: 件*/
+ {15, 15, 2, (unsigned char *)&acBDAD}, /*177: 江*/
+ {14, 14, 2, (unsigned char *)&acBDC7}, /*178: 角*/
+ {15, 15, 2, (unsigned char *)&acBDF8}, /*179: 进*/
+ {15, 15, 2, (unsigned char *)&acBEA1}, /*180: 尽*/
+ {15, 15, 2, (unsigned char *)&acBEAF}, /*181: 警*/
+ {15, 15, 2, (unsigned char *)&acBEDD}, /*182: 据*/
+ {15, 15, 2, (unsigned char *)&acBEDE}, /*183: 巨*/
+ {15, 15, 2, (unsigned char *)&acBFAA}, /*184: 开*/
+ {15, 15, 2, (unsigned char *)&acBFC9}, /*185: 可*/
+ {15, 15, 2, (unsigned char *)&acBFD5}, /*186: 空*/
+ {15, 15, 2, (unsigned char *)&acBFD8}, /*187: 控*/
+ {15, 15, 2, (unsigned char *)&acBFE9}, /*188: 块*/
+ {15, 15, 2, (unsigned char *)&acC0B6}, /*189: 蓝*/
+ {14, 14, 2, (unsigned char *)&acC0DB}, /*190: 累*/
+ {15, 15, 2, (unsigned char *)&acC0E0}, /*191: 类*/
+ {15, 15, 2, (unsigned char *)&acC0EB}, /*192: 离*/
+ {14, 14, 2, (unsigned char *)&acC1A6}, /*193: 力*/
+ {15, 15, 2, (unsigned char *)&acC1BF}, /*194: 量*/
+ {15, 15, 2, (unsigned char *)&acC1D0}, /*195: 列*/
+ {15, 15, 2, (unsigned char *)&acC1F7}, /*196: 流*/
+ {15, 15, 2, (unsigned char *)&acC2B7}, /*197: 路*/
+ {15, 15, 2, (unsigned char *)&acC2BC}, /*198: 录*/
+ {15, 15, 2, (unsigned char *)&acC2CA}, /*199: 率*/
+ {15, 15, 2, (unsigned char *)&acC2FA}, /*200: 满*/
+ {15, 15, 2, (unsigned char *)&acC3E6}, /*201: 面*/
+ {15, 15, 2, (unsigned char *)&acC4A3}, /*202: 模*/
+ {15, 15, 2, (unsigned char *)&acC4A6}, /*203: 摩*/
+ {15, 15, 2, (unsigned char *)&acC4DA}, /*204: 内*/
+ {15, 15, 2, (unsigned char *)&acC4DC}, /*205: 能*/
+ {15, 15, 2, (unsigned char *)&acC4E2}, /*206: 拟*/
+ {15, 15, 2, (unsigned char *)&acC5E4}, /*207: 配*/
+ {14, 14, 2, (unsigned char *)&acC6AB}, /*208: 偏*/
+ {15, 15, 2, (unsigned char *)&acC6B5}, /*209: 频*/
+ {14, 14, 2, (unsigned char *)&acC6F4}, /*210: 启*/
+ {15, 15, 2, (unsigned char *)&acC6F7}, /*211: 器*/
+ {15, 15, 2, (unsigned char *)&acC6F8}, /*212: 气*/
+ {15, 15, 2, (unsigned char *)&acC7D0}, /*213: 切*/
+ {15, 15, 2, (unsigned char *)&acC7FD}, /*214: 驱*/
+ {15, 15, 2, (unsigned char *)&acC8A1}, /*215: 取*/
+ {15, 15, 2, (unsigned char *)&acC8B7}, /*216: 确*/
+ {15, 15, 2, (unsigned char *)&acC8CF}, /*217: 认*/
+ {15, 15, 2, (unsigned char *)&acC8EB}, /*218: 入*/
+ {15, 15, 2, (unsigned char *)&acC8ED}, /*219: 软*/
+ {15, 15, 2, (unsigned char *)&acC9CF}, /*220: 上*/
+ {15, 15, 2, (unsigned char *)&acC9E8}, /*221: 设*/
+ {15, 15, 2, (unsigned char *)&acCAAF}, /*222: 石*/
+ {15, 15, 2, (unsigned char *)&acCAB1}, /*223: 时*/
+ {15, 15, 2, (unsigned char *)&acCAB5}, /*224: 实*/
+ {15, 15, 2, (unsigned char *)&acCAB9}, /*225: 使*/
+ {15, 15, 2, (unsigned char *)&acCABD}, /*226: 式*/
+ {15, 15, 2, (unsigned char *)&acCABE}, /*227: 示*/
+ {15, 15, 2, (unsigned char *)&acCAD4}, /*228: 试*/
+ {15, 15, 2, (unsigned char *)&acCAD6}, /*229: 手*/
+ {15, 15, 2, (unsigned char *)&acCAD7}, /*230: 首*/
+ {15, 15, 2, (unsigned char *)&acCAE4}, /*231: 输*/
+ {15, 15, 2, (unsigned char *)&acCAF5}, /*232: 术*/
+ {15, 15, 2, (unsigned char *)&acCAFD}, /*233: 数*/
+ {15, 15, 2, (unsigned char *)&acCBAB}, /*234: 双*/
+ {14, 14, 2, (unsigned char *)&acCBBE}, /*235: 司*/
+ {15, 15, 2, (unsigned char *)&acCBD5}, /*236: 苏*/
+ {15, 15, 2, (unsigned char *)&acCBD9}, /*237: 速*/
+ {15, 15, 2, (unsigned char *)&acCBE3}, /*238: 算*/
+ {15, 15, 2, (unsigned char *)&acCCAC}, /*239: 态*/
+ {15, 15, 2, (unsigned char *)&acCCF5}, /*240: 条*/
+ {15, 15, 2, (unsigned char *)&acCDA8}, /*241: 通*/
+ {15, 15, 2, (unsigned char *)&acCDB6}, /*242: 投*/
+ {15, 15, 2, (unsigned char *)&acCDBC}, /*243: 图*/
+ {15, 15, 2, (unsigned char *)&acCDE2}, /*244: 外*/
+ {14, 14, 2, (unsigned char *)&acCEAA}, /*245: 为*/
+ {15, 15, 2, (unsigned char *)&acCEB4}, /*246: 未*/
+ {15, 15, 2, (unsigned char *)&acCEBB}, /*247: 位*/
+ {15, 15, 2, (unsigned char *)&acCEC2}, /*248: 温*/
+ {15, 15, 2, (unsigned char *)&acCEC4}, /*249: 文*/
+ {15, 15, 2, (unsigned char *)&acCEF1}, /*250: 务*/
+ {15, 15, 2, (unsigned char *)&acCFC2}, /*251: 下*/
+ {15, 15, 2, (unsigned char *)&acCFD4}, /*252: 显*/
+ {15, 15, 2, (unsigned char *)&acCFDE}, /*253: 限*/
+ {15, 15, 2, (unsigned char *)&acCFDF}, /*254: 线*/
+ {15, 15, 2, (unsigned char *)&acCFE0}, /*255: 相*/
+ {15, 15, 2, (unsigned char *)&acCFEE}, /*256: 项*/
+ {15, 15, 2, (unsigned char *)&acCFF2}, /*257: 向*/
+ {14, 14, 2, (unsigned char *)&acCFFB}, /*258: 消*/
+ {15, 15, 2, (unsigned char *)&acD0A1}, /*259: 小*/
+ {15, 15, 2, (unsigned char *)&acD0A3}, /*260: 校*/
+ {15, 15, 2, (unsigned char *)&acD0B4}, /*261: 写*/
+ {15, 15, 2, (unsigned char *)&acD0C5}, /*262: 信*/
+ {15, 15, 2, (unsigned char *)&acD0CD}, /*263: 型*/
+ {15, 15, 2, (unsigned char *)&acD0D0}, /*264: 行*/
+ {15, 15, 2, (unsigned char *)&acD0F2}, /*265: 序*/
+ {15, 15, 2, (unsigned char *)&acD1A1}, /*266: 选*/
+ {15, 15, 2, (unsigned char *)&acD1B6}, /*267: 讯*/
+ {15, 15, 2, (unsigned char *)&acD1B9}, /*268: 压*/
+ {15, 15, 2, (unsigned char *)&acD1C0}, /*269: 牙*/
+ {15, 15, 2, (unsigned char *)&acD1D4}, /*270: 言*/
+ {15, 15, 2, (unsigned char *)&acD2AA}, /*271: 要*/
+ {15, 15, 2, (unsigned char *)&acD2B3}, /*272: 页*/
+ {15, 15, 2, (unsigned char *)&acD2BB}, /*273: 一*/
+ {15, 15, 2, (unsigned char *)&acD2C7}, /*274: 仪*/
+ {15, 15, 2, (unsigned char *)&acD2D1}, /*275: 已*/
+ {15, 15, 2, (unsigned char *)&acD3A2}, /*276: 英*/
+ {15, 15, 2, (unsigned char *)&acD3AD}, /*277: 迎*/
+ {15, 15, 2, (unsigned char *)&acD3B2}, /*278: 硬*/
+ {15, 15, 2, (unsigned char *)&acD3C3}, /*279: 用*/
+ {15, 15, 2, (unsigned char *)&acD3D0}, /*280: 有*/
+ {15, 15, 2, (unsigned char *)&acD3EF}, /*281: 语*/
+ {15, 15, 2, (unsigned char *)&acD3F2}, /*282: 域*/
+ {15, 15, 2, (unsigned char *)&acD4B4}, /*283: 源*/
+ {15, 15, 2, (unsigned char *)&acD4DA}, /*284: 在*/
+ {15, 15, 2, (unsigned char *)&acD4F1}, /*285: 择*/
+ {15, 15, 2, (unsigned char *)&acD5CF}, /*286: 障*/
+ {15, 15, 2, (unsigned char *)&acD5EF}, /*287: 诊*/
+ {15, 15, 2, (unsigned char *)&acD5FB}, /*288: 整*/
+ {15, 15, 2, (unsigned char *)&acD5FD}, /*289: 正*/
+ {15, 15, 2, (unsigned char *)&acD6AA}, /*290: 知*/
+ {15, 15, 2, (unsigned char *)&acD6B1}, /*291: 直*/
+ {15, 15, 2, (unsigned char *)&acD6B4}, /*292: 执*/
+ {15, 15, 2, (unsigned char *)&acD6B7}, /*293: 址*/
+ {15, 15, 2, (unsigned char *)&acD6B8}, /*294: 指*/
+ {15, 15, 2, (unsigned char *)&acD6C3}, /*295: 置*/
+ {14, 14, 2, (unsigned char *)&acD6C6}, /*296: 制*/
+ {14, 14, 2, (unsigned char *)&acD6C7}, /*297: 智*/
+ {14, 14, 2, (unsigned char *)&acD6D0}, /*298: 中*/
+ {15, 15, 2, (unsigned char *)&acD6F7}, /*299: 主*/
+ {15, 15, 2, (unsigned char *)&acD7B0}, /*300: 装*/
+ {15, 15, 2, (unsigned char *)&acD7B4}, /*301: 状*/
+ {15, 15, 2, (unsigned char *)&acD7BC}, /*302: 准*/
+ {14, 14, 2, (unsigned char *)&acD7D4}, /*303: 自*/
+ {15, 15, 2, (unsigned char *)&acD7D6}, /*304: 字*/
+ {15, 15, 2, (unsigned char *)&acD7F7}, /*305: 作*/
+};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop196 = {
+ 0xD7F7, /*start :作*/
+ 0xD7F7, /*end :作, len=1*/
+ &Cinfo[305],
+ (void *)0};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop195 = {
+ 0xD7D6, /*start :字*/
+ 0xD7D6, /*end :字, len=1*/
+ &Cinfo[304],
+ &Prop196};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop194 = {
+ 0xD7D4, /*start :自*/
+ 0xD7D4, /*end :自, len=1*/
+ &Cinfo[303],
+ &Prop195};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop193 = {
+ 0xD7BC, /*start :准*/
+ 0xD7BC, /*end :准, len=1*/
+ &Cinfo[302],
+ &Prop194};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop192 = {
+ 0xD7B4, /*start :状*/
+ 0xD7B4, /*end :状, len=1*/
+ &Cinfo[301],
+ &Prop193};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop191 = {
+ 0xD7B0, /*start :装*/
+ 0xD7B0, /*end :装, len=1*/
+ &Cinfo[300],
+ &Prop192};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop190 = {
+ 0xD6F7, /*start :主*/
+ 0xD6F7, /*end :主, len=1*/
+ &Cinfo[299],
+ &Prop191};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop189 = {
+ 0xD6D0, /*start :中*/
+ 0xD6D0, /*end :中, len=1*/
+ &Cinfo[298],
+ &Prop190};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop188 = {
+ 0xD6C6, /*start :制*/
+ 0xD6C7, /*end :智, len=2*/
+ &Cinfo[296],
+ &Prop189};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop187 = {
+ 0xD6C3, /*start :置*/
+ 0xD6C3, /*end :置, len=1*/
+ &Cinfo[295],
+ &Prop188};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop186 = {
+ 0xD6B7, /*start :址*/
+ 0xD6B8, /*end :指, len=2*/
+ &Cinfo[293],
+ &Prop187};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop185 = {
+ 0xD6B4, /*start :执*/
+ 0xD6B4, /*end :执, len=1*/
+ &Cinfo[292],
+ &Prop186};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop184 = {
+ 0xD6B1, /*start :直*/
+ 0xD6B1, /*end :直, len=1*/
+ &Cinfo[291],
+ &Prop185};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop183 = {
+ 0xD6AA, /*start :知*/
+ 0xD6AA, /*end :知, len=1*/
+ &Cinfo[290],
+ &Prop184};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop182 = {
+ 0xD5FD, /*start :正*/
+ 0xD5FD, /*end :正, len=1*/
+ &Cinfo[289],
+ &Prop183};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop181 = {
+ 0xD5FB, /*start :整*/
+ 0xD5FB, /*end :整, len=1*/
+ &Cinfo[288],
+ &Prop182};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop180 = {
+ 0xD5EF, /*start :诊*/
+ 0xD5EF, /*end :诊, len=1*/
+ &Cinfo[287],
+ &Prop181};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop179 = {
+ 0xD5CF, /*start :障*/
+ 0xD5CF, /*end :障, len=1*/
+ &Cinfo[286],
+ &Prop180};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop178 = {
+ 0xD4F1, /*start :择*/
+ 0xD4F1, /*end :择, len=1*/
+ &Cinfo[285],
+ &Prop179};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop177 = {
+ 0xD4DA, /*start :在*/
+ 0xD4DA, /*end :在, len=1*/
+ &Cinfo[284],
+ &Prop178};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop176 = {
+ 0xD4B4, /*start :源*/
+ 0xD4B4, /*end :源, len=1*/
+ &Cinfo[283],
+ &Prop177};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop175 = {
+ 0xD3F2, /*start :域*/
+ 0xD3F2, /*end :域, len=1*/
+ &Cinfo[282],
+ &Prop176};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop174 = {
+ 0xD3EF, /*start :语*/
+ 0xD3EF, /*end :语, len=1*/
+ &Cinfo[281],
+ &Prop175};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop173 = {
+ 0xD3D0, /*start :有*/
+ 0xD3D0, /*end :有, len=1*/
+ &Cinfo[280],
+ &Prop174};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop172 = {
+ 0xD3C3, /*start :用*/
+ 0xD3C3, /*end :用, len=1*/
+ &Cinfo[279],
+ &Prop173};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop171 = {
+ 0xD3B2, /*start :硬*/
+ 0xD3B2, /*end :硬, len=1*/
+ &Cinfo[278],
+ &Prop172};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop170 = {
+ 0xD3AD, /*start :迎*/
+ 0xD3AD, /*end :迎, len=1*/
+ &Cinfo[277],
+ &Prop171};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop169 = {
+ 0xD3A2, /*start :英*/
+ 0xD3A2, /*end :英, len=1*/
+ &Cinfo[276],
+ &Prop170};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop168 = {
+ 0xD2D1, /*start :已*/
+ 0xD2D1, /*end :已, len=1*/
+ &Cinfo[275],
+ &Prop169};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop167 = {
+ 0xD2C7, /*start :仪*/
+ 0xD2C7, /*end :仪, len=1*/
+ &Cinfo[274],
+ &Prop168};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop166 = {
+ 0xD2BB, /*start :一*/
+ 0xD2BB, /*end :一, len=1*/
+ &Cinfo[273],
+ &Prop167};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop165 = {
+ 0xD2B3, /*start :页*/
+ 0xD2B3, /*end :页, len=1*/
+ &Cinfo[272],
+ &Prop166};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop164 = {
+ 0xD2AA, /*start :要*/
+ 0xD2AA, /*end :要, len=1*/
+ &Cinfo[271],
+ &Prop165};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop163 = {
+ 0xD1D4, /*start :言*/
+ 0xD1D4, /*end :言, len=1*/
+ &Cinfo[270],
+ &Prop164};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop162 = {
+ 0xD1C0, /*start :牙*/
+ 0xD1C0, /*end :牙, len=1*/
+ &Cinfo[269],
+ &Prop163};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop161 = {
+ 0xD1B9, /*start :压*/
+ 0xD1B9, /*end :压, len=1*/
+ &Cinfo[268],
+ &Prop162};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop160 = {
+ 0xD1B6, /*start :讯*/
+ 0xD1B6, /*end :讯, len=1*/
+ &Cinfo[267],
+ &Prop161};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop159 = {
+ 0xD1A1, /*start :选*/
+ 0xD1A1, /*end :选, len=1*/
+ &Cinfo[266],
+ &Prop160};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop158 = {
+ 0xD0F2, /*start :序*/
+ 0xD0F2, /*end :序, len=1*/
+ &Cinfo[265],
+ &Prop159};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop157 = {
+ 0xD0D0, /*start :行*/
+ 0xD0D0, /*end :行, len=1*/
+ &Cinfo[264],
+ &Prop158};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop156 = {
+ 0xD0CD, /*start :型*/
+ 0xD0CD, /*end :型, len=1*/
+ &Cinfo[263],
+ &Prop157};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop155 = {
+ 0xD0C5, /*start :信*/
+ 0xD0C5, /*end :信, len=1*/
+ &Cinfo[262],
+ &Prop156};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop154 = {
+ 0xD0B4, /*start :写*/
+ 0xD0B4, /*end :写, len=1*/
+ &Cinfo[261],
+ &Prop155};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop153 = {
+ 0xD0A3, /*start :校*/
+ 0xD0A3, /*end :校, len=1*/
+ &Cinfo[260],
+ &Prop154};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop152 = {
+ 0xD0A1, /*start :小*/
+ 0xD0A1, /*end :小, len=1*/
+ &Cinfo[259],
+ &Prop153};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop151 = {
+ 0xCFFB, /*start :消*/
+ 0xCFFB, /*end :消, len=1*/
+ &Cinfo[258],
+ &Prop152};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop150 = {
+ 0xCFF2, /*start :向*/
+ 0xCFF2, /*end :向, len=1*/
+ &Cinfo[257],
+ &Prop151};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop149 = {
+ 0xCFEE, /*start :项*/
+ 0xCFEE, /*end :项, len=1*/
+ &Cinfo[256],
+ &Prop150};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop148 = {
+ 0xCFDE, /*start :限*/
+ 0xCFE0, /*end :相, len=3*/
+ &Cinfo[253],
+ &Prop149};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop147 = {
+ 0xCFD4, /*start :显*/
+ 0xCFD4, /*end :显, len=1*/
+ &Cinfo[252],
+ &Prop148};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop146 = {
+ 0xCFC2, /*start :下*/
+ 0xCFC2, /*end :下, len=1*/
+ &Cinfo[251],
+ &Prop147};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop145 = {
+ 0xCEF1, /*start :务*/
+ 0xCEF1, /*end :务, len=1*/
+ &Cinfo[250],
+ &Prop146};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop144 = {
+ 0xCEC4, /*start :文*/
+ 0xCEC4, /*end :文, len=1*/
+ &Cinfo[249],
+ &Prop145};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop143 = {
+ 0xCEC2, /*start :温*/
+ 0xCEC2, /*end :温, len=1*/
+ &Cinfo[248],
+ &Prop144};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop142 = {
+ 0xCEBB, /*start :位*/
+ 0xCEBB, /*end :位, len=1*/
+ &Cinfo[247],
+ &Prop143};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop141 = {
+ 0xCEB4, /*start :未*/
+ 0xCEB4, /*end :未, len=1*/
+ &Cinfo[246],
+ &Prop142};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop140 = {
+ 0xCEAA, /*start :为*/
+ 0xCEAA, /*end :为, len=1*/
+ &Cinfo[245],
+ &Prop141};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop139 = {
+ 0xCDE2, /*start :外*/
+ 0xCDE2, /*end :外, len=1*/
+ &Cinfo[244],
+ &Prop140};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop138 = {
+ 0xCDBC, /*start :图*/
+ 0xCDBC, /*end :图, len=1*/
+ &Cinfo[243],
+ &Prop139};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop137 = {
+ 0xCDB6, /*start :投*/
+ 0xCDB6, /*end :投, len=1*/
+ &Cinfo[242],
+ &Prop138};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop136 = {
+ 0xCDA8, /*start :通*/
+ 0xCDA8, /*end :通, len=1*/
+ &Cinfo[241],
+ &Prop137};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop135 = {
+ 0xCCF5, /*start :条*/
+ 0xCCF5, /*end :条, len=1*/
+ &Cinfo[240],
+ &Prop136};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop134 = {
+ 0xCCAC, /*start :态*/
+ 0xCCAC, /*end :态, len=1*/
+ &Cinfo[239],
+ &Prop135};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop133 = {
+ 0xCBE3, /*start :算*/
+ 0xCBE3, /*end :算, len=1*/
+ &Cinfo[238],
+ &Prop134};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop132 = {
+ 0xCBD9, /*start :速*/
+ 0xCBD9, /*end :速, len=1*/
+ &Cinfo[237],
+ &Prop133};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop131 = {
+ 0xCBD5, /*start :苏*/
+ 0xCBD5, /*end :苏, len=1*/
+ &Cinfo[236],
+ &Prop132};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop130 = {
+ 0xCBBE, /*start :司*/
+ 0xCBBE, /*end :司, len=1*/
+ &Cinfo[235],
+ &Prop131};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop129 = {
+ 0xCBAB, /*start :双*/
+ 0xCBAB, /*end :双, len=1*/
+ &Cinfo[234],
+ &Prop130};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop128 = {
+ 0xCAFD, /*start :数*/
+ 0xCAFD, /*end :数, len=1*/
+ &Cinfo[233],
+ &Prop129};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop127 = {
+ 0xCAF5, /*start :术*/
+ 0xCAF5, /*end :术, len=1*/
+ &Cinfo[232],
+ &Prop128};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop126 = {
+ 0xCAE4, /*start :输*/
+ 0xCAE4, /*end :输, len=1*/
+ &Cinfo[231],
+ &Prop127};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop125 = {
+ 0xCAD6, /*start :手*/
+ 0xCAD7, /*end :首, len=2*/
+ &Cinfo[229],
+ &Prop126};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop124 = {
+ 0xCAD4, /*start :试*/
+ 0xCAD4, /*end :试, len=1*/
+ &Cinfo[228],
+ &Prop125};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop123 = {
+ 0xCABD, /*start :式*/
+ 0xCABE, /*end :示, len=2*/
+ &Cinfo[226],
+ &Prop124};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop122 = {
+ 0xCAB9, /*start :使*/
+ 0xCAB9, /*end :使, len=1*/
+ &Cinfo[225],
+ &Prop123};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop121 = {
+ 0xCAB5, /*start :实*/
+ 0xCAB5, /*end :实, len=1*/
+ &Cinfo[224],
+ &Prop122};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop120 = {
+ 0xCAB1, /*start :时*/
+ 0xCAB1, /*end :时, len=1*/
+ &Cinfo[223],
+ &Prop121};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop119 = {
+ 0xCAAF, /*start :石*/
+ 0xCAAF, /*end :石, len=1*/
+ &Cinfo[222],
+ &Prop120};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop118 = {
+ 0xC9E8, /*start :设*/
+ 0xC9E8, /*end :设, len=1*/
+ &Cinfo[221],
+ &Prop119};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop117 = {
+ 0xC9CF, /*start :上*/
+ 0xC9CF, /*end :上, len=1*/
+ &Cinfo[220],
+ &Prop118};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop116 = {
+ 0xC8ED, /*start :软*/
+ 0xC8ED, /*end :软, len=1*/
+ &Cinfo[219],
+ &Prop117};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop115 = {
+ 0xC8EB, /*start :入*/
+ 0xC8EB, /*end :入, len=1*/
+ &Cinfo[218],
+ &Prop116};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop114 = {
+ 0xC8CF, /*start :认*/
+ 0xC8CF, /*end :认, len=1*/
+ &Cinfo[217],
+ &Prop115};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop113 = {
+ 0xC8B7, /*start :确*/
+ 0xC8B7, /*end :确, len=1*/
+ &Cinfo[216],
+ &Prop114};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop112 = {
+ 0xC8A1, /*start :取*/
+ 0xC8A1, /*end :取, len=1*/
+ &Cinfo[215],
+ &Prop113};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop111 = {
+ 0xC7FD, /*start :驱*/
+ 0xC7FD, /*end :驱, len=1*/
+ &Cinfo[214],
+ &Prop112};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop110 = {
+ 0xC7D0, /*start :切*/
+ 0xC7D0, /*end :切, len=1*/
+ &Cinfo[213],
+ &Prop111};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop109 = {
+ 0xC6F7, /*start :器*/
+ 0xC6F8, /*end :气, len=2*/
+ &Cinfo[211],
+ &Prop110};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop108 = {
+ 0xC6F4, /*start :启*/
+ 0xC6F4, /*end :启, len=1*/
+ &Cinfo[210],
+ &Prop109};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop107 = {
+ 0xC6B5, /*start :频*/
+ 0xC6B5, /*end :频, len=1*/
+ &Cinfo[209],
+ &Prop108};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop106 = {
+ 0xC6AB, /*start :偏*/
+ 0xC6AB, /*end :偏, len=1*/
+ &Cinfo[208],
+ &Prop107};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop105 = {
+ 0xC5E4, /*start :配*/
+ 0xC5E4, /*end :配, len=1*/
+ &Cinfo[207],
+ &Prop106};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop104 = {
+ 0xC4E2, /*start :拟*/
+ 0xC4E2, /*end :拟, len=1*/
+ &Cinfo[206],
+ &Prop105};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop103 = {
+ 0xC4DC, /*start :能*/
+ 0xC4DC, /*end :能, len=1*/
+ &Cinfo[205],
+ &Prop104};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop102 = {
+ 0xC4DA, /*start :内*/
+ 0xC4DA, /*end :内, len=1*/
+ &Cinfo[204],
+ &Prop103};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop101 = {
+ 0xC4A6, /*start :摩*/
+ 0xC4A6, /*end :摩, len=1*/
+ &Cinfo[203],
+ &Prop102};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop100 = {
+ 0xC4A3, /*start :模*/
+ 0xC4A3, /*end :模, len=1*/
+ &Cinfo[202],
+ &Prop101};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop99 = {
+ 0xC3E6, /*start :面*/
+ 0xC3E6, /*end :面, len=1*/
+ &Cinfo[201],
+ &Prop100};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop98 = {
+ 0xC2FA, /*start :满*/
+ 0xC2FA, /*end :满, len=1*/
+ &Cinfo[200],
+ &Prop99};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop97 = {
+ 0xC2CA, /*start :率*/
+ 0xC2CA, /*end :率, len=1*/
+ &Cinfo[199],
+ &Prop98};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop96 = {
+ 0xC2BC, /*start :录*/
+ 0xC2BC, /*end :录, len=1*/
+ &Cinfo[198],
+ &Prop97};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop95 = {
+ 0xC2B7, /*start :路*/
+ 0xC2B7, /*end :路, len=1*/
+ &Cinfo[197],
+ &Prop96};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop94 = {
+ 0xC1F7, /*start :流*/
+ 0xC1F7, /*end :流, len=1*/
+ &Cinfo[196],
+ &Prop95};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop93 = {
+ 0xC1D0, /*start :列*/
+ 0xC1D0, /*end :列, len=1*/
+ &Cinfo[195],
+ &Prop94};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop92 = {
+ 0xC1BF, /*start :量*/
+ 0xC1BF, /*end :量, len=1*/
+ &Cinfo[194],
+ &Prop93};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop91 = {
+ 0xC1A6, /*start :力*/
+ 0xC1A6, /*end :力, len=1*/
+ &Cinfo[193],
+ &Prop92};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop90 = {
+ 0xC0EB, /*start :离*/
+ 0xC0EB, /*end :离, len=1*/
+ &Cinfo[192],
+ &Prop91};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop89 = {
+ 0xC0E0, /*start :类*/
+ 0xC0E0, /*end :类, len=1*/
+ &Cinfo[191],
+ &Prop90};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop88 = {
+ 0xC0DB, /*start :累*/
+ 0xC0DB, /*end :累, len=1*/
+ &Cinfo[190],
+ &Prop89};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop87 = {
+ 0xC0B6, /*start :蓝*/
+ 0xC0B6, /*end :蓝, len=1*/
+ &Cinfo[189],
+ &Prop88};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop86 = {
+ 0xBFE9, /*start :块*/
+ 0xBFE9, /*end :块, len=1*/
+ &Cinfo[188],
+ &Prop87};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop85 = {
+ 0xBFD8, /*start :控*/
+ 0xBFD8, /*end :控, len=1*/
+ &Cinfo[187],
+ &Prop86};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop84 = {
+ 0xBFD5, /*start :空*/
+ 0xBFD5, /*end :空, len=1*/
+ &Cinfo[186],
+ &Prop85};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop83 = {
+ 0xBFC9, /*start :可*/
+ 0xBFC9, /*end :可, len=1*/
+ &Cinfo[185],
+ &Prop84};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop82 = {
+ 0xBFAA, /*start :开*/
+ 0xBFAA, /*end :开, len=1*/
+ &Cinfo[184],
+ &Prop83};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop81 = {
+ 0xBEDD, /*start :据*/
+ 0xBEDE, /*end :巨, len=2*/
+ &Cinfo[182],
+ &Prop82};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop80 = {
+ 0xBEAF, /*start :警*/
+ 0xBEAF, /*end :警, len=1*/
+ &Cinfo[181],
+ &Prop81};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop79 = {
+ 0xBEA1, /*start :尽*/
+ 0xBEA1, /*end :尽, len=1*/
+ &Cinfo[180],
+ &Prop80};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop78 = {
+ 0xBDF8, /*start :进*/
+ 0xBDF8, /*end :进, len=1*/
+ &Cinfo[179],
+ &Prop79};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop77 = {
+ 0xBDC7, /*start :角*/
+ 0xBDC7, /*end :角, len=1*/
+ &Cinfo[178],
+ &Prop78};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop76 = {
+ 0xBDAD, /*start :江*/
+ 0xBDAD, /*end :江, len=1*/
+ &Cinfo[177],
+ &Prop77};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop75 = {
+ 0xBCFE, /*start :件*/
+ 0xBCFE, /*end :件, len=1*/
+ &Cinfo[176],
+ &Prop76};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop74 = {
+ 0xBCE4, /*start :间*/
+ 0xBCE4, /*end :间, len=1*/
+ &Cinfo[175],
+ &Prop75};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop73 = {
+ 0xBCC6, /*start :计*/
+ 0xBCC7, /*end :记, len=2*/
+ &Cinfo[173],
+ &Prop74};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop72 = {
+ 0xBCBC, /*start :技*/
+ 0xBCBC, /*end :技, len=1*/
+ &Cinfo[172],
+ &Prop73};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop71 = {
+ 0xBCAD, /*start :辑*/
+ 0xBCAD, /*end :辑, len=1*/
+ &Cinfo[171],
+ &Prop72};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop70 = {
+ 0xBBFD, /*start :积*/
+ 0xBBFD, /*end :积, len=1*/
+ &Cinfo[170],
+ &Prop71};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop69 = {
+ 0xBBF9, /*start :基*/
+ 0xBBFA, /*end :机, len=2*/
+ &Cinfo[168],
+ &Prop70};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop68 = {
+ 0xBBD8, /*start :回*/
+ 0xBBD8, /*end :回, len=1*/
+ &Cinfo[167],
+ &Prop69};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop67 = {
+ 0xBBC9, /*start :簧*/
+ 0xBBC9, /*end :簧, len=1*/
+ &Cinfo[166],
+ &Prop68};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop66 = {
+ 0xBBBB, /*start :换*/
+ 0xBBBB, /*end :换, len=1*/
+ &Cinfo[165],
+ &Prop67};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop65 = {
+ 0xBBB6, /*start :欢*/
+ 0xBBB6, /*end :欢, len=1*/
+ &Cinfo[164],
+ &Prop66};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop64 = {
+ 0xBBA4, /*start :护*/
+ 0xBBA4, /*end :护, len=1*/
+ &Cinfo[163],
+ &Prop65};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop63 = {
+ 0xBAE3, /*start :恒*/
+ 0xBAE3, /*end :恒, len=1*/
+ &Cinfo[162],
+ &Prop64};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop62 = {
+ 0xBACD, /*start :和*/
+ 0xBACD, /*end :和, len=1*/
+ &Cinfo[161],
+ &Prop63};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop61 = {
+ 0xBAC4, /*start :耗*/
+ 0xBAC5, /*end :号, len=2*/
+ &Cinfo[159],
+ &Prop62};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop60 = {
+ 0xB9FD, /*start :过*/
+ 0xB9FD, /*end :过, len=1*/
+ &Cinfo[158],
+ &Prop61};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop59 = {
+ 0xB9D8, /*start :关*/
+ 0xB9D8, /*end :关, len=1*/
+ &Cinfo[157],
+ &Prop60};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop58 = {
+ 0xB9CC, /*start :固*/
+ 0xB9CC, /*end :固, len=1*/
+ &Cinfo[156],
+ &Prop59};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop57 = {
+ 0xB9CA, /*start :故*/
+ 0xB9CA, /*end :故, len=1*/
+ &Cinfo[155],
+ &Prop58};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop56 = {
+ 0xB9AB, /*start :公*/
+ 0xB9AB, /*end :公, len=1*/
+ &Cinfo[154],
+ &Prop57};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop55 = {
+ 0xB9A4, /*start :工*/
+ 0xB9A4, /*end :工, len=1*/
+ &Cinfo[153],
+ &Prop56};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop54 = {
+ 0xB8F6, /*start :个*/
+ 0xB8F6, /*end :个, len=1*/
+ &Cinfo[152],
+ &Prop55};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop53 = {
+ 0xB8EE, /*start :割*/
+ 0xB8EE, /*end :割, len=1*/
+ &Cinfo[151],
+ &Prop54};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop52 = {
+ 0xB8DF, /*start :高*/
+ 0xB8DF, /*end :高, len=1*/
+ &Cinfo[150],
+ &Prop53};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop51 = {
+ 0xB8D0, /*start :感*/
+ 0xB8D0, /*end :感, len=1*/
+ &Cinfo[149],
+ &Prop52};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop50 = {
+ 0xB7FE, /*start :服*/
+ 0xB7FE, /*end :服, len=1*/
+ &Cinfo[148],
+ &Prop51};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop49 = {
+ 0xB7D6, /*start :分*/
+ 0xB7D6, /*end :分, len=1*/
+ &Cinfo[147],
+ &Prop50};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop48 = {
+ 0xB7C7, /*start :非*/
+ 0xB7C7, /*end :非, len=1*/
+ &Cinfo[146],
+ &Prop49};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop47 = {
+ 0xB7BD, /*start :方*/
+ 0xB7BD, /*end :方, len=1*/
+ &Cinfo[145],
+ &Prop48};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop46 = {
+ 0xB7B4, /*start :反*/
+ 0xB7B5, /*end :返, len=2*/
+ &Cinfo[143],
+ &Prop47};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop45 = {
+ 0xB7A8, /*start :法*/
+ 0xB7A8, /*end :法, len=1*/
+ &Cinfo[142],
+ &Prop46};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop44 = {
+ 0xB6CF, /*start :断*/
+ 0xB6CF, /*end :断, len=1*/
+ &Cinfo[141],
+ &Prop45};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop43 = {
+ 0xB6CC, /*start :短*/
+ 0xB6CC, /*end :短, len=1*/
+ &Cinfo[140],
+ &Prop44};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop42 = {
+ 0xB6C8, /*start :度*/
+ 0xB6C8, /*end :度, len=1*/
+ &Cinfo[139],
+ &Prop43};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop41 = {
+ 0xB6AF, /*start :动*/
+ 0xB6AF, /*end :动, len=1*/
+ &Cinfo[138],
+ &Prop42};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop40 = {
+ 0xB6A8, /*start :定*/
+ 0xB6A8, /*end :定, len=1*/
+ &Cinfo[137],
+ &Prop41};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop39 = {
+ 0xB5E7, /*start :电*/
+ 0xB5E7, /*end :电, len=1*/
+ &Cinfo[136],
+ &Prop40};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop38 = {
+ 0xB5E3, /*start :点*/
+ 0xB5E3, /*end :点, len=1*/
+ &Cinfo[135],
+ &Prop39};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop37 = {
+ 0xB5D8, /*start :地*/
+ 0xB5D8, /*end :地, len=1*/
+ &Cinfo[134],
+ &Prop38};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop36 = {
+ 0xB5CD, /*start :低*/
+ 0xB5CD, /*end :低, len=1*/
+ &Cinfo[133],
+ &Prop37};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop35 = {
+ 0xB5C4, /*start :的*/
+ 0xB5C4, /*end :的, len=1*/
+ &Cinfo[132],
+ &Prop36};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop34 = {
+ 0xB5AF, /*start :弹*/
+ 0xB5AF, /*end :弹, len=1*/
+ &Cinfo[131],
+ &Prop35};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop33 = {
+ 0xB5A5, /*start :单*/
+ 0xB5A5, /*end :单, len=1*/
+ &Cinfo[130],
+ &Prop34};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop32 = {
+ 0xB4FD, /*start :待*/
+ 0xB4FD, /*end :待, len=1*/
+ &Cinfo[129],
+ &Prop33};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop31 = {
+ 0xB4F3, /*start :大*/
+ 0xB4F3, /*end :大, len=1*/
+ &Cinfo[128],
+ &Prop32};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop30 = {
+ 0xB4E6, /*start :存*/
+ 0xB4E6, /*end :存, len=1*/
+ &Cinfo[127],
+ &Prop31};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop29 = {
+ 0xB4CE, /*start :次*/
+ 0xB4CE, /*end :次, len=1*/
+ &Cinfo[126],
+ &Prop30};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop28 = {
+ 0xB4C5, /*start :磁*/
+ 0xB4C5, /*end :磁, len=1*/
+ &Cinfo[125],
+ &Prop29};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop27 = {
+ 0xB4AB, /*start :传*/
+ 0xB4AB, /*end :传, len=1*/
+ &Cinfo[124],
+ &Prop28};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop26 = {
+ 0xB4A2, /*start :储*/
+ 0xB4A2, /*end :储, len=1*/
+ &Cinfo[123],
+ &Prop27};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop25 = {
+ 0xB3F6, /*start :出*/
+ 0xB3F6, /*end :出, len=1*/
+ &Cinfo[122],
+ &Prop26};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop24 = {
+ 0xB3CC, /*start :程*/
+ 0xB3CC, /*end :程, len=1*/
+ &Cinfo[121],
+ &Prop25};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop23 = {
+ 0xB3A4, /*start :长*/
+ 0xB3A4, /*end :长, len=1*/
+ &Cinfo[120],
+ &Prop24};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop22 = {
+ 0xB2EE, /*start :差*/
+ 0xB2EE, /*end :差, len=1*/
+ &Cinfo[119],
+ &Prop23};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop21 = {
+ 0xB2E2, /*start :测*/
+ 0xB2E2, /*end :测, len=1*/
+ &Cinfo[118],
+ &Prop22};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop20 = {
+ 0xB2D9, /*start :操*/
+ 0xB2D9, /*end :操, len=1*/
+ &Cinfo[117],
+ &Prop21};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop19 = {
+ 0xB2C1, /*start :擦*/
+ 0xB2C1, /*end :擦, len=1*/
+ &Cinfo[116],
+ &Prop20};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop18 = {
+ 0xB2BB, /*start :不*/
+ 0xB2BB, /*end :不, len=1*/
+ &Cinfo[115],
+ &Prop19};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop17 = {
+ 0xB1ED, /*start :表*/
+ 0xB1ED, /*end :表, len=1*/
+ &Cinfo[114],
+ &Prop18};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop16 = {
+ 0xB1E4, /*start :变*/
+ 0xB1E4, /*end :变, len=1*/
+ &Cinfo[113],
+ &Prop17};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop15 = {
+ 0xB1E0, /*start :编*/
+ 0xB1E0, /*end :编, len=1*/
+ &Cinfo[112],
+ &Prop16};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop14 = {
+ 0xB1D5, /*start :闭*/
+ 0xB1D5, /*end :闭, len=1*/
+ &Cinfo[111],
+ &Prop15};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop13 = {
+ 0xB1BE, /*start :本*/
+ 0xB1BE, /*end :本, len=1*/
+ &Cinfo[110],
+ &Prop14};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop12 = {
+ 0xB1B8, /*start :备*/
+ 0xB1B8, /*end :备, len=1*/
+ &Cinfo[109],
+ &Prop13};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop11 = {
+ 0xB1A8, /*start :报*/
+ 0xB1A8, /*end :报, len=1*/
+ &Cinfo[108],
+ &Prop12};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop10 = {
+ 0xB1A5, /*start :饱*/
+ 0xB1A5, /*end :饱, len=1*/
+ &Cinfo[107],
+ &Prop11};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop9 = {
+ 0xB1A3, /*start :保*/
+ 0xB1A3, /*end :保, len=1*/
+ &Cinfo[106],
+ &Prop10};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop8 = {
+ 0xB0E6, /*start :版*/
+ 0xB0E6, /*end :版, len=1*/
+ &Cinfo[105],
+ &Prop9};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop7 = {
+ 0xB0B4, /*start :按*/
+ 0xB0B4, /*end :按, len=1*/
+ &Cinfo[104],
+ &Prop8};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop6 = {
+ 0xB0B2, /*start :安*/
+ 0xB0B2, /*end :安, len=1*/
+ &Cinfo[103],
+ &Prop7};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop5 = {
+ 0xA1FA, /*start :→*/
+ 0xA1FD, /*end :↓, len=4*/
+ &Cinfo[99],
+ &Prop6};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop4 = {
+ 0xA1E6, /*start :℃*/
+ 0xA1E6, /*end :℃, len=1*/
+ &Cinfo[98],
+ &Prop5};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop3 = {
+ 0xA1CC, /*start :√*/
+ 0xA1CC, /*end :√, len=1*/
+ &Cinfo[97],
+ &Prop4};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop2 = {
+ 0xA1C1, /*start :×*/
+ 0xA1C1, /*end :×, len=1*/
+ &Cinfo[96],
+ &Prop3};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop1 = {
+ 0x0020, /*start : */
+ 0x007F, /*end :, len=96*/
+ &Cinfo[0],
+ &Prop2};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontHZ16x16 = {
+ GUI_FONTTYPE_PROP_SJIS,
+ 16, /* height of font */
+ 16, /* space of font y */
+ 1,
+ 1,
+ &Prop1};
diff --git a/User/lib/lcd/gui/Font/HZ18x18.c b/User/lib/lcd/gui/Font/HZ18x18.c
new file mode 100644
index 0000000..9a0f429
--- /dev/null
+++ b/User/lib/lcd/gui/Font/HZ18x18.c
@@ -0,0 +1,346 @@
+/*
+**********************************************************************
+* UcGUI Font
+* Chinese GB2312 library
+* (c) Copyright 19xx-20xx, company name
+*
+*
+* 注:本字体文件由 ucGUI字体生成器v9.0 生成,作者:馋嘴猫(qq:602426967)
+*
+**********************************************************************
+*/
+
+#include "GUI.H"
+
+/* char: code:0x0031 */
+static GUI_CONST_STORAGE unsigned char ac0031[54] = {
+ _____XX_, _____X__, ________,
+ _____XX_, ___XXXXX, ________,
+ _XXX_XX_, __XX___X, X_______,
+ __XX____, _XX_____, X_______,
+ ___X____, XX______, XX______,
+ XXX_____, X_______, X_______,
+ XXX_____, _______X, X_______,
+ ________, ______XX, ________,
+ ____XX__, _____XX_, ________,
+ ___XX___, ____XX__, ________,
+ __XX____, ________, ________,
+ _XX_____, _______X, XX______,
+ XX______, _X_____X, XX______,
+ XX______, XX____X_, ________,
+ XX_____X, X_____XX, ________,
+ _XX___XX, ___XX_XX, X_______,
+ __XXXXX_, ___XX___, ________,
+ ___XXX__, ___XX___, ________};
+
+/* char: code:0x0032 */
+static GUI_CONST_STORAGE unsigned char ac0032[54] = {
+ ________, ____XXX_, ________,
+ ________, ___XXXXX, ________,
+ ________, __XX___X, X_______,
+ ________, _XX_____, XX______,
+ _______X, XX______, XX______,
+ _______X, X_______, XX______,
+ ______XX, ______XX, X_______,
+ ______XX, _XX__XXX, ________,
+ ____X_XX, _XXXXXX_, ________,
+ ___XXXXX, X_XX_X__, ________,
+ __XXX__X, X_XX____, ________,
+ _XXX____, __XX____, ________,
+ XX______, _XX_____, ________,
+ XX______, XXX_____, ________,
+ XX_____X, X_______, ________,
+ _XX___XX, ________, ________,
+ __XXXXX_, ________, ________,
+ ___XXX__, ________, ________};
+
+/* char: code:0x0033 */
+static GUI_CONST_STORAGE unsigned char ac0033[54] = {
+ ________, ___XXXX_, ________,
+ ________, __XXXXXX, X_______,
+ ________, _XXX__XX, XX______,
+ ________, _XXX____, XX______,
+ ________, _XX_____, XX______,
+ ________, _XX_____, XX______,
+ ________, _XX_____, XX______,
+ ________, ________, ________,
+ XXXXXXXX, XXXXX___, ________,
+ XXXXXXXX, XXXXX___, ________,
+ XXXXXXXX, XXXXX___, ________,
+ XXXXXXXX, XXXXX___, ________,
+ XXXXXXXX, XXXXX___, ________,
+ XXXXXXXX, XXXXX___, ________,
+ XXXXXXXX, XXXXX___, ________,
+ XXXXXXXX, XXXXX___, ________,
+ _XXXXXXX, XXXX____, ________,
+ ________, ________, ________};
+
+/* char: code:0x0034 */
+static GUI_CONST_STORAGE unsigned char ac0034[54] = {
+ _______X, XXX_____, ________,
+ ______XX, XXXX____, ________,
+ _____XXX, __XXX___, ________,
+ _____XX_, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ ________, ________, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ ___XXXXX, XXXXXXX_, ________,
+ ________, ________, ________};
+
+/* char: code:0x0035 */
+static GUI_CONST_STORAGE unsigned char ac0035[54] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ _____XXX, XXXXX___, ________,
+ ____XX__, ____XX__, ________,
+ ___XX___, ____XXX_, ________,
+ __XX____, ___XX_XX, ________,
+ __X_____, __XXX__X, ________,
+ __X_____, _XXX___X, ________,
+ __X_____, XXX____X, ________,
+ __X____X, XX_____X, ________,
+ __X___XX, X______X, ________,
+ __X__XXX, _______X, ________,
+ ___XXXX_, ______XX, ________,
+ ___XX___, _____XX_, ________,
+ ____XX__, ____XX__, ________,
+ ______XX, XXXXX___, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: code:0x0036 */
+static GUI_CONST_STORAGE unsigned char ac0036[54] = {
+ ________, XX______, ________,
+ ________, XXX_____, ________,
+ ________, XXXX____, ________,
+ ________, XXXXX___, ________,
+ ____XX__, XX_XXX__, ________,
+ _____XX_, XX_XXX__, ________,
+ _____XXX, XXXXX___, ________,
+ ______XX, XXXX____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ _______X, XXXX____, ________,
+ _____XXX, XX_XX___, ________,
+ _____XX_, XX__XX__, ________,
+ ____XX__, XX_XXX__, ________,
+ ________, XXXXX___, ________,
+ ________, XXXX____, ________,
+ ________, XXX_____, ________,
+ ________, XX______, ________};
+
+/* char: code:0x0037 */
+static GUI_CONST_STORAGE unsigned char ac0037[54] = {
+ ________, _______X, ________,
+ ________, ______XX, ________,
+ ________, ____XXXX, ________,
+ ________, __XXXXXX, ________,
+ ________, _XXXXXXX, ________,
+ _______X, XXXXXXXX, ________,
+ ______XX, XXXXXXXX, ________,
+ ____XXXX, XXXXXXXX, ________,
+ ___XXXXX, XXXXXXXX, ________,
+ ___XXXXX, XXXXXXXX, ________,
+ _____XXX, XXXXXXXX, ________,
+ ______XX, XXXXXXXX, ________,
+ _______X, XXXXXXXX, ________,
+ ________, _XXXXXXX, ________,
+ ________, ___XXXXX, ________,
+ ________, ____XXXX, ________,
+ ________, ______XX, ________,
+ ________, _______X, ________};
+
+/* char: code:0x0061 */
+static GUI_CONST_STORAGE unsigned char ac0061[54] = {
+ ________, ________, ________,
+ _______X, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXXX____, ________,
+ ______XX, _XXX____, ________,
+ _____XXX, __XX____, ________,
+ _____XXX, __XXX___, ________,
+ ____XXX_, __XXX___, ________,
+ ____XXX_, ___XXX__, ________,
+ ____XX__, ___XXX__, ________,
+ ___XXX__, ____XX__, ________,
+ ___XXXXX, XXXXXXX_, ________,
+ __XXXXXX, XXXXXXX_, ________,
+ __XXX___, _____XX_, ________,
+ __XXX___, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, ______XX, X_______,
+ ________, ________, ________};
+
+/* char: code:0x0066 */
+static GUI_CONST_STORAGE unsigned char ac0066[54] = {
+ ________, ________, ________,
+ __XXXXXX, XXXXXXXX, X_______,
+ __XXXXXX, XXXXXXXX, X_______,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ ________, ________, ________};
+
+/* char: code:0x006D */
+static GUI_CONST_STORAGE unsigned char ac006D[54] = {
+ ________, ________, ________,
+ _XXXX___, ______XX, X_______,
+ _XXXX___, _____XXX, X_______,
+ _XXXXX__, _____XXX, X_______,
+ _XX_XX__, ____XXXX, X_______,
+ _XXXXX__, ____XX_X, X_______,
+ _XXXXXX_, ____XX_X, X_______,
+ _XXX_XX_, ___XX__X, X_______,
+ _XXX_XX_, ___XX__X, X_______,
+ _XXX__XX, ___XX__X, X_______,
+ _XXX__XX, __XX___X, X_______,
+ _XXX__XX, __XX___X, X_______,
+ _XXX___X, X_XX___X, X_______,
+ _XXX___X, XXX____X, X_______,
+ _XXX___X, XXX____X, X_______,
+ _XXX____, XXX____X, X_______,
+ _XXX____, XX_____X, X_______,
+ ________, ________, ________};
+
+/* char: code:0x0073 */
+static GUI_CONST_STORAGE unsigned char ac0073[54] = {
+ ________, ________, ________,
+ _____XXX, XXXXX___, ________,
+ ___XXXXX, XXXXXXX_, ________,
+ __XXXX__, ___XXXXX, ________,
+ __XXXX__, ____XXXX, ________,
+ __XXXX__, ________, ________,
+ __XXXX__, ________, ________,
+ ___XXXXX, X_______, ________,
+ ____XXXX, XXXXX___, ________,
+ _______X, XXXXXXX_, ________,
+ ________, ___XXXXX, ________,
+ ________, _____XXX, X_______,
+ ____X___, _____XXX, X_______,
+ _XXXX___, _____XXX, X_______,
+ __XXXX__, ____XXXX, ________,
+ ___XXXXX, XXXXXXX_, ________,
+ _____XXX, XXXXX___, ________,
+ ________, ________, ________};
+
+/* char: code:0x0074 */
+static GUI_CONST_STORAGE unsigned char ac0074[54] = {
+ ________, ________, ________,
+ _XXXXXXX, XXXXXXXX, X_______,
+ _XXXXXXX, XXXXXXXX, X_______,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ ________, ________, ________};
+
+/* char: code:0x0077 */
+static GUI_CONST_STORAGE unsigned char ac0077[54] = {
+ ________, ________, ________,
+ _XX_____, XX_____X, X_______,
+ _XX_____, XX_____X, X_______,
+ _XX____X, XX_____X, X_______,
+ _XX____X, XXX___XX, X_______,
+ _XX____X, XXX___XX, ________,
+ __XX___X, _XX___XX, ________,
+ __XX__XX, __X___XX, ________,
+ __XX__XX, __X___XX, ________,
+ __XX__XX, __XX__XX, ________,
+ __XX__XX, __XX_XX_, ________,
+ ___XX_X_, __XX_XX_, ________,
+ ___XXXX_, ___X_XX_, ________,
+ ___XXXX_, ___X_XX_, ________,
+ ___XXXX_, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ____XX__, ___XXX__, ________,
+ ________, ________, ________};
+
+static GUI_CONST_STORAGE GUI_CHARINFO Cinfo[13] = {
+ {18, 18, 3, (unsigned char *)&ac0031}, /*0: */
+ {18, 18, 3, (unsigned char *)&ac0032}, /*1: */
+ {18, 18, 3, (unsigned char *)&ac0033}, /*2: */
+ {16, 16, 3, (unsigned char *)&ac0034}, /*3: */
+ {16, 16, 3, (unsigned char *)&ac0035}, /*4: */
+ {14, 14, 3, (unsigned char *)&ac0036}, /*5: */
+ {16, 16, 3, (unsigned char *)&ac0037}, /*6: */
+ {17, 17, 3, (unsigned char *)&ac0061}, /*7: */
+ {17, 17, 3, (unsigned char *)&ac0066}, /*8: */
+ {17, 17, 3, (unsigned char *)&ac006D}, /*9: */
+ {17, 17, 3, (unsigned char *)&ac0073}, /*10: */
+ {17, 17, 3, (unsigned char *)&ac0074}, /*11: */
+ {17, 17, 3, (unsigned char *)&ac0077}, /*12: */
+};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop6 = {
+ 0x0077, /*start :*/
+ 0x0077, /*end :, len=1*/
+ &Cinfo[12],
+ (void *)0};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop5 = {
+ 0x0073, /*start :*/
+ 0x0074, /*end :, len=2*/
+ &Cinfo[10],
+ &Prop6};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop4 = {
+ 0x006D, /*start :*/
+ 0x006D, /*end :, len=1*/
+ &Cinfo[9],
+ &Prop5};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop3 = {
+ 0x0066, /*start :*/
+ 0x0066, /*end :, len=1*/
+ &Cinfo[8],
+ &Prop4};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop2 = {
+ 0x0061, /*start :*/
+ 0x0061, /*end :, len=1*/
+ &Cinfo[7],
+ &Prop3};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop1 = {
+ 0x0031, /*start :*/
+ 0x0037, /*end :, len=7*/
+ &Cinfo[0],
+ &Prop2};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontHZ18x18 = {
+ GUI_FONTTYPE_PROP_SJIS,
+ 18, /* height of font */
+ 18, /* space of font y */
+ 1,
+ 1,
+ &Prop1};
diff --git a/User/lib/lcd/gui/Font/HZ20x20.c b/User/lib/lcd/gui/Font/HZ20x20.c
new file mode 100644
index 0000000..12ed338
--- /dev/null
+++ b/User/lib/lcd/gui/Font/HZ20x20.c
@@ -0,0 +1,198 @@
+/*
+**********************************************************************
+* UcGUI Font
+* Chinese GB2312 library
+* (c) Copyright 19xx-20xx, company name
+*
+*
+* 注:本字体文件由 ucGUI字体生成器v9.0 生成,作者:馋嘴猫(qq:602426967)
+*
+**********************************************************************
+*/
+
+#include "GUI.H"
+
+/* char: code:0x0030 */
+static GUI_CONST_STORAGE unsigned char ac0030[60] = {
+ ________, ________, ________,
+ _______X, XXXXX___, ________,
+ _____XXX, ____XXX_, ________,
+ ____XX__, ______XX, ________,
+ ___XX___, _______X, X_______,
+ __XX__X_, _____X__, XX______,
+ __X__XXX, ____XXX_, _X______,
+ _XX___XX, X__XXX__, _XX_____,
+ _X_____X, XXXXX___, _XX_____,
+ _X______, XXXX____, __X_____,
+ _X______, XXXX____, __X_____,
+ _X_____X, XXXXX___, _XX_____,
+ _XX___XX, X__XXX__, _XX_____,
+ __X__XXX, ____XXX_, _X______,
+ __XX__X_, _____X__, XX______,
+ ___XX___, _______X, X_______,
+ ____XX__, ______XX, ________,
+ _____XXX, X__XXXX_, ________,
+ _______X, XXXXX___, ________,
+ ________, ________, ________};
+
+/* char: code:0x0031 */
+static GUI_CONST_STORAGE unsigned char ac0031[60] = {
+ _______X, XXXXX___, ________,
+ _____XXX, XXXXXXX_, ________,
+ ___XXX__, ______XX, X_______,
+ __XXX___, _______X, XX______,
+ __XX____, ________, XX______,
+ _XX____X, XXXXX___, _XX_____,
+ _X_____X, X__XX___, __X_____,
+ XX____XX, ____XX__, __XX____,
+ XX______, ____XX__, __XX____,
+ XX______, ___XX___, __XX____,
+ XX______, __XX____, __XX____,
+ XX______, _XX_____, __XX____,
+ XX______, _XX_____, __XX____,
+ _X______, ________, _XX_____,
+ _XX_____, _XX_____, _XX_____,
+ __XX____, _XX_____, XX______,
+ __XXX___, _X_____X, X_______,
+ ___XXX__, ______XX, ________,
+ _____XXX, XXXXXXX_, ________,
+ _______X, XXXXX___, ________};
+
+/* char: code:0x0032 */
+static GUI_CONST_STORAGE unsigned char ac0032[60] = {
+ _____XXX, XX______, ________,
+ ____XXXX, XXX_____, ________,
+ _____XX_, __XX____, ________,
+ ______XX, ___XX___, ________,
+ _X_____X, ____XX__, ________,
+ XXX____X, X___XX__, ________,
+ XXXX___X, X____X__, ________,
+ XX_XXXXX, _____X__, ________,
+ XX___X__, ____XX__, ________,
+ XX______, ____XX__, ________,
+ _XX_____, _____XX_, ________,
+ __XX____, ______XX, ________,
+ ___XXX__, XX_____X, X_______,
+ ____XXXX, XXX_____, XX______,
+ ________, __XX____, _XX_____,
+ ________, ___XX___, __XX____,
+ ________, ____XX__, __XX____,
+ ________, _____XX_, __XX____,
+ ________, ______XX, XXX_____,
+ ________, _______X, XX______};
+
+/* char: code:0x0033 */
+static GUI_CONST_STORAGE unsigned char ac0033[60] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, XX______,
+ ________, _______X, XXX_____,
+ ________, ______XX, XX______,
+ ________, _____XXX, X_______,
+ __XX____, ____XXXX, ________,
+ __XXX___, ___XXXX_, ________,
+ ___XXX__, __XXXX__, ________,
+ ____XXX_, _XXXX___, ________,
+ _____XXX, XXXX____, ________,
+ ______XX, XXX_____, ________,
+ _______X, XX______, ________,
+ ________, X_______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: code:0x0034 */
+static GUI_CONST_STORAGE unsigned char ac0034[60] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, _______X, ________,
+ ___X____, _X____X_, X_______,
+ __X_X___, X_X__X__, ________,
+ ___X____, _X____X_, X_______,
+ ________, _______X, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: code:0x0035 */
+static GUI_CONST_STORAGE unsigned char ac0035[60] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ___X____, ________, ________,
+ __X_XX__, _X_____X, ________,
+ _____X__, X_X___X_, X_______,
+ __X_XX__, _X_____X, ________,
+ ___X____, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: code:0x0036 */
+static GUI_CONST_STORAGE unsigned char ac0036[60] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, _X______, ________,
+ ___X____, X_X____X, ________,
+ __X_X__X, ___X__X_, X_______,
+ ___X____, X_X____X, ________,
+ ________, _X______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+static GUI_CONST_STORAGE GUI_CHARINFO Cinfo[7] = {
+ {19, 19, 3, (unsigned char *)&ac0030}, /*0: */
+ {20, 20, 3, (unsigned char *)&ac0031}, /*1: */
+ {20, 20, 3, (unsigned char *)&ac0032}, /*2: */
+ {19, 19, 3, (unsigned char *)&ac0033}, /*3: */
+ {17, 17, 3, (unsigned char *)&ac0034}, /*4: */
+ {17, 17, 3, (unsigned char *)&ac0035}, /*5: */
+ {17, 17, 3, (unsigned char *)&ac0036}, /*6: */
+};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop1 = {
+ 0x0030, /*start :*/
+ 0x0036, /*end :, len=7*/
+ &Cinfo[0],
+ (void *)0};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontHZ20x20 = {
+ GUI_FONTTYPE_PROP_SJIS,
+ 20, /* height of font */
+ 20, /* space of font y */
+ 1,
+ 1,
+ &Prop1};
diff --git a/User/lib/lcd/gui/Font/HZ24x24.c b/User/lib/lcd/gui/Font/HZ24x24.c
new file mode 100644
index 0000000..4325b28
--- /dev/null
+++ b/User/lib/lcd/gui/Font/HZ24x24.c
@@ -0,0 +1,7955 @@
+/*
+**********************************************************************
+* UcGUI Font
+* Chinese GB2312 library
+* (c) Copyright 19xx-20xx, company name
+*
+*
+* 注:本字体文件由 ucGUI字体生成器v9.0 生成,作者:馋嘴猫(qq:602426967)
+* 字体:宋体,字形:粗体,大小:18,宽:24,高:24,水平偏移:0,垂直偏移:0
+*
+**********************************************************************
+*/
+
+#include "GUI.H"
+
+
+/* char: code:0x0020 */
+static GUI_CONST_STORAGE unsigned char ac0020[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: ! code:0x0021 */
+static GUI_CONST_STORAGE unsigned char ac0021[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: " code:0x0022 */
+static GUI_CONST_STORAGE unsigned char ac0022[48] = {
+ ________,________,
+ ________,________,
+ _____XXX,_XXX____,
+ _____XXX,_XXX____,
+ ____XXX_,XXX_____,
+ ___XXX_X,XX______,
+ ___XX__X,X_______,
+ __XX__XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: # code:0x0023 */
+static GUI_CONST_STORAGE unsigned char ac0023[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ ____XX__,_XX_____,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ ___XX___,_XX_____,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ _XXXXXXX,XXXX____,
+ _XXXXXXX,XXXX____,
+ __XX____,XX______,
+ __XX____,XX______,
+ __XX____,XX______,
+ __XX____,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: $ code:0x0024 */
+static GUI_CONST_STORAGE unsigned char ac0024[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ____XXXX,XX______,
+ ___XXXXX,XXX_____,
+ __XXX_XX,XXX_____,
+ __XXX_XX,XXX_____,
+ __XXX_XX,________,
+ ___XXXXX,________,
+ ____XXXX,________,
+ _____XXX,X_______,
+ ______XX,XX______,
+ ______XX,XX______,
+ ______XX,XXX_____,
+ __XXX_XX,XXX_____,
+ __XXXXXX,XXX_____,
+ __XXX_XX,XXX_____,
+ ___XX_XX,XX______,
+ ____XXXX,X_______,
+ ______XX,________,
+ ______XX,________,
+ ________,________
+};
+
+/* char: % code:0x0025 */
+static GUI_CONST_STORAGE unsigned char ac0025[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXX___,XX______,
+ _XXXX___,XX______,
+ XX__XX_X,X_______,
+ XX__XX_X,X_______,
+ XX__XX_X,X_______,
+ XX__XXXX,________,
+ XX__XXXX,________,
+ _XXXXXX_,________,
+ _XXXXXXX,XXX_____,
+ _____XXX,XXX_____,
+ ____XXXX,__XX____,
+ ____XXXX,__XX____,
+ ___XX_XX,__XX____,
+ ___XX_XX,__XX____,
+ ___XX_XX,__XX____,
+ __XX___X,XXX_____,
+ __XX___X,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: & code:0x0026 */
+static GUI_CONST_STORAGE unsigned char ac0026[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXX_,________,
+ __XXXXXX,________,
+ __XXXXXX,________,
+ __XXXXXX,________,
+ __XXXXXX,________,
+ __XXXXXX,________,
+ __XXXXX_,________,
+ ___XXX_X,XXXX____,
+ __XXXX__,XX______,
+ _XXXXX__,XX______,
+ XXX_XXX_,XX______,
+ XXX_XXX_,XX______,
+ XXX__XXX,XX______,
+ XXX__XXX,X_______,
+ XXX___XX,X__XX___,
+ _XXX__XX,XX_XX___,
+ __XXXXX_,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: ' code:0x0027 */
+static GUI_CONST_STORAGE unsigned char ac0027[48] = {
+ ________,________,
+ ________,________,
+ __XXX___,________,
+ __XXXX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ __XX____,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: ( code:0x0028 */
+static GUI_CONST_STORAGE unsigned char ac0028[48] = {
+ ________,________,
+ ________,________,
+ ________,__XX____,
+ ________,_XX_____,
+ ________,XX______,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ______XX,________,
+ ______XX,________,
+ _______X,X_______,
+ _______X,X_______,
+ ________,XX______,
+ ________,_XX_____,
+ ________,__XX____,
+ ________,________
+};
+
+/* char: ) code:0x0029 */
+static GUI_CONST_STORAGE unsigned char ac0029[48] = {
+ ________,________,
+ ________,________,
+ _XX_____,________,
+ __XX____,________,
+ ___XX___,________,
+ ____XX__,________,
+ ____XX__,________,
+ _____XX_,________,
+ _____XX_,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ __XX____,________,
+ _XX_____,________,
+ ________,________
+};
+
+/* char: * code:0x002A */
+static GUI_CONST_STORAGE unsigned char ac002A[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,X_______,
+ ______XX,________,
+ _XXX__XX,__XXX___,
+ _XXXX_XX,XXXXX___,
+ ____XXXX,XX______,
+ ____XXXX,XX______,
+ _XXXXXXX,XXXXX___,
+ _XXX__XX,__XXX___,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: + code:0x002B */
+static GUI_CONST_STORAGE unsigned char ac002B[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ _XXXXXXX,XXXXX___,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: , code:0x002C */
+static GUI_CONST_STORAGE unsigned char ac002C[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXX___,________,
+ __XXXX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ __XX____,________
+};
+
+/* char: - code:0x002D */
+static GUI_CONST_STORAGE unsigned char ac002D[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: . code:0x002E */
+static GUI_CONST_STORAGE unsigned char ac002E[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ __XXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: / code:0x002F */
+static GUI_CONST_STORAGE unsigned char ac002F[48] = {
+ ________,________,
+ ________,________,
+ ________,__XX____,
+ ________,_XXX____,
+ ________,_XX_____,
+ ________,XXX_____,
+ ________,XX______,
+ ________,XX______,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,________,
+ ______XX,________,
+ _____XXX,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ___XX___,________,
+ ___XX___,________,
+ __XXX___,________,
+ __XX____,________,
+ _XXX____,________,
+ _XX_____,________,
+ ________,________
+};
+
+/* char: 0 code:0x0030 */
+static GUI_CONST_STORAGE unsigned char ac0030[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXX_X,XX______,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ ___XXX_X,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: 1 code:0x0031 */
+static GUI_CONST_STORAGE unsigned char ac0031[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ __XXXXXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ __XXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: 2 code:0x0032 */
+static GUI_CONST_STORAGE unsigned char ac0032[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,X_______,
+ __XX___X,XX______,
+ _XX_____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ ________,XXX_____,
+ ________,XX______,
+ _______X,XX______,
+ ______XX,X_______,
+ _____XXX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ___XX___,_XX_____,
+ __XX____,_XX_____,
+ _XXX____,_XX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: 3 code:0x0033 */
+static GUI_CONST_STORAGE unsigned char ac0033[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,________,
+ _XXX__XX,X_______,
+ _XXX___X,XX______,
+ _XXX___X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ ______XX,X_______,
+ ____XXXX,________,
+ _______X,XX______,
+ ________,XX______,
+ ________,XXX_____,
+ ________,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX___X,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: 4 code:0x0034 */
+static GUI_CONST_STORAGE unsigned char ac0034[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _______X,XX______,
+ _______X,XX______,
+ ______XX,XX______,
+ _____XXX,XX______,
+ _____XXX,XX______,
+ ____XX_X,XX______,
+ ___XX__X,XX______,
+ ___XX__X,XX______,
+ __XX___X,XX______,
+ _XX____X,XX______,
+ _XXXXXXX,XXXXX___,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _____XXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: 5 code:0x0035 */
+static GUI_CONST_STORAGE unsigned char ac0035[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XX____,________,
+ __XXXXXX,X_______,
+ __XXX__X,XX______,
+ __XX____,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XX____X,XX______,
+ __XX___X,XX______,
+ ___XXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: 6 code:0x0036 */
+static GUI_CONST_STORAGE unsigned char ac0036[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXX__,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,________,
+ __XX____,________,
+ _XXX____,________,
+ _XXX_XXX,XX______,
+ _XXXXX__,XXX_____,
+ _XXXX___,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XX____,_XXX____,
+ __XXX___,_XX_____,
+ ___XXX__,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: 7 code:0x0037 */
+static GUI_CONST_STORAGE unsigned char ac0037[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XXXX____,
+ __XXX___,_XXX____,
+ __XX____,_XX_____,
+ __XX____,XX______,
+ ________,XX______,
+ ________,XX______,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: 8 code:0x0038 */
+static GUI_CONST_STORAGE unsigned char ac0038[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XX______,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,_XX_____,
+ __XXXX__,XXX_____,
+ ____XXXX,X_______,
+ ___XX_XX,XX______,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: 9 code:0x0039 */
+static GUI_CONST_STORAGE unsigned char ac0039[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXX___,XX______,
+ __XXX___,XXX_____,
+ _XXX____,_XX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,XXXX____,
+ __XXX__X,XXXX____,
+ ___XXXXX,_XXX____,
+ ________,_XXX____,
+ ________,XXX_____,
+ ________,XXX_____,
+ __XXX___,XX______,
+ __XXX__X,XX______,
+ ___XXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: : code:0x003A */
+static GUI_CONST_STORAGE unsigned char ac003A[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: ; code:0x003B */
+static GUI_CONST_STORAGE unsigned char ac003B[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________
+};
+
+/* char: < code:0x003C */
+static GUI_CONST_STORAGE unsigned char ac003C[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,__XX____,
+ ________,_XX_____,
+ ________,XX______,
+ _______X,X_______,
+ ______XX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ __XX____,________,
+ ___XX___,________,
+ ____XX__,________,
+ _____XX_,________,
+ ______XX,________,
+ _______X,X_______,
+ ________,XX______,
+ ________,_XX_____,
+ ________,__XX____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: = code:0x003D */
+static GUI_CONST_STORAGE unsigned char ac003D[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: > code:0x003E */
+static GUI_CONST_STORAGE unsigned char ac003E[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ ___XX___,________,
+ ____XX__,________,
+ _____XX_,________,
+ ______XX,________,
+ _______X,X_______,
+ ________,XX______,
+ ________,_XX_____,
+ ________,__XX____,
+ ________,_XX_____,
+ ________,XX______,
+ _______X,X_______,
+ ______XX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ___XX___,________,
+ __XX____,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: ? code:0x003F */
+static GUI_CONST_STORAGE unsigned char ac003F[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXX__,_XXX____,
+ __XX____,__XXX___,
+ __XX____,__XXX___,
+ __XXX___,__XXX___,
+ __XXX___,__XXX___,
+ ________,XXXX____,
+ _______X,XX______,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ _____XXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: @ code:0x0040 */
+static GUI_CONST_STORAGE unsigned char ac0040[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,X_______,
+ ___XXX__,XXX_____,
+ __XXX___,_XX_____,
+ __XXX_XX,XXXX____,
+ __XX_XXX,XXXX____,
+ _XXX_XXX,XXXX____,
+ _XXX_XXX,XXXX____,
+ _XXXXXXX,X_XX____,
+ _XXXXXXX,X_XX____,
+ _XXXXXXX,X_XX____,
+ _XXXXXXX,X_XX____,
+ _XXXXXXX,XXX_____,
+ __XX_XXX,XX______,
+ __XXX___,__XX____,
+ __XXX___,_XX_____,
+ ___XXX__,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: A code:0x0041 */
+static GUI_CONST_STORAGE unsigned char ac0041[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ____XXXX,________,
+ ____XXXX,X_______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ___XX__X,X_______,
+ ___XX__X,XX______,
+ ___XX___,XX______,
+ ___XXXXX,XX______,
+ __XX____,XXX_____,
+ __XX____,XXX_____,
+ __XX____,_XX_____,
+ _XX_____,_XX_____,
+ _XX_____,_XXX____,
+ XXXXX___,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: B code:0x0042 */
+static GUI_CONST_STORAGE unsigned char ac0042[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,X_______,
+ __XXX__X,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX__X,XX______,
+ __XXXXXX,X_______,
+ __XXX___,XXX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,XXX_____,
+ _XXXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: C code:0x0043 */
+static GUI_CONST_STORAGE unsigned char ac0043[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ ___XXX__,XXX_____,
+ __XXX___,_XXX____,
+ __XXX___,__XX____,
+ __XX____,__XX____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,__XX____,
+ __XXX___,__XX____,
+ __XXX___,_XX_____,
+ ___XXX__,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: D code:0x0044 */
+static GUI_CONST_STORAGE unsigned char ac0044[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,________,
+ __XXX__X,XX______,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX__X,XX______,
+ XXXXXXXX,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: E code:0x0045 */
+static GUI_CONST_STORAGE unsigned char ac0045[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,__XX____,
+ _XXX____,__XX____,
+ _XXX____,________,
+ _XXX___X,X_______,
+ _XXX___X,X_______,
+ _XXXXXXX,X_______,
+ _XXX___X,X_______,
+ _XXX___X,X_______,
+ _XXX___X,X_______,
+ _XXX____,________,
+ _XXX____,__XX____,
+ _XXX____,__XX____,
+ _XXX____,_XX_____,
+ XXXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: F code:0x0046 */
+static GUI_CONST_STORAGE unsigned char ac0046[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,__XX____,
+ _XXX____,__XX____,
+ _XXX____,________,
+ _XXX___X,X_______,
+ _XXX___X,X_______,
+ _XXXXXXX,X_______,
+ _XXX___X,X_______,
+ _XXX___X,X_______,
+ _XXX___X,X_______,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ XXXXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: G code:0x0047 */
+static GUI_CONST_STORAGE unsigned char ac0047[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXX__,XX______,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XX____,_XX_____,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX__XX,XXXXX___,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ ___XXX__,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: H code:0x0048 */
+static GUI_CONST_STORAGE unsigned char ac0048[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXX___,XXXXX___,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXXXXX,XXXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ XXXXX___,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: I code:0x0049 */
+static GUI_CONST_STORAGE unsigned char ac0049[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXX_____,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ __XXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: J code:0x004A */
+static GUI_CONST_STORAGE unsigned char ac004A[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XXXX____,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ ______XX,X_______,
+ _XXX__XX,X_______,
+ _XXX_XXX,________,
+ __XXXXX_,________
+};
+
+/* char: K code:0x004B */
+static GUI_CONST_STORAGE unsigned char ac004B[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXX_XX,XXX_____,
+ _XXX___X,XX______,
+ _XXX__XX,X_______,
+ _XXX__XX,________,
+ _XXX_XX_,________,
+ _XXXXX__,________,
+ _XXXXXX_,________,
+ _XXXXXX_,________,
+ _XXXXXXX,________,
+ _XXX__XX,________,
+ _XXX__XX,X_______,
+ _XXX___X,X_______,
+ _XXX___X,XX______,
+ _XXX____,XX______,
+ _XXX____,XXX_____,
+ XXXXX__X,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: L code:0x004C */
+static GUI_CONST_STORAGE unsigned char ac004C[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXX__,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,__XX____,
+ _XXX____,__XX____,
+ _XXX____,_XX_____,
+ XXXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: M code:0x004D */
+static GUI_CONST_STORAGE unsigned char ac004D[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXX____,XXXX____,
+ _XXX___X,XXX_____,
+ _XXX___X,XXX_____,
+ _XXXX__X,XXX_____,
+ _XXXX__X,XXX_____,
+ _XXXX_XX,XXX_____,
+ _XXXX_XX,XXX_____,
+ _XXXX_XX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXXX,XXX_____,
+ _XXXXXX_,XXX_____,
+ _XX_XXX_,XXX_____,
+ _XX_XXX_,XXX_____,
+ _XX_XXX_,XXX_____,
+ _XX_XX__,XXX_____,
+ XXXX___X,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: N code:0x004E */
+static GUI_CONST_STORAGE unsigned char ac004E[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXX__X,XXXXX___,
+ __XXX___,_XX_____,
+ __XXXX__,_XX_____,
+ __XXXX__,_XX_____,
+ __XXXXX_,_XX_____,
+ __XXXXX_,_XX_____,
+ __XX_XXX,_XX_____,
+ __XX_XXX,_XX_____,
+ __XX__XX,_XX_____,
+ __XX__XX,XXX_____,
+ __XX___X,XXX_____,
+ __XX___X,XXX_____,
+ __XX___X,XXX_____,
+ __XX____,XXX_____,
+ __XX____,XXX_____,
+ XXXXXX__,_XX_____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: O code:0x004F */
+static GUI_CONST_STORAGE unsigned char ac004F[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXX_X,XX______,
+ __XXX___,XXX_____,
+ __XXX___,_XX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,_XX_____,
+ __XXX___,XXX_____,
+ ___XXX_X,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: P code:0x0050 */
+static GUI_CONST_STORAGE unsigned char ac0050[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,X_______,
+ _XXX____,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX___X,XXX_____,
+ _XXXXXXX,X_______,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ XXXXXX__,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: Q code:0x0051 */
+static GUI_CONST_STORAGE unsigned char ac0051[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXX_X,XX______,
+ __XXX___,XXX_____,
+ __XXX___,_XX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXXXXXX,_XXX____,
+ __XXX_XX,_XX_____,
+ __XXX_XX,XXX_____,
+ ___XXX_X,XX______,
+ ____XXXX,X_______,
+ _______X,XXXX____,
+ ________,XXX_____,
+ ________,________
+};
+
+/* char: R code:0x0052 */
+static GUI_CONST_STORAGE unsigned char ac0052[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XX______,
+ _XXX____,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,XXX_____,
+ _XXXXXXX,X_______,
+ _XXX__XX,________,
+ _XXX__XX,X_______,
+ _XXX___X,X_______,
+ _XXX___X,XX______,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,_XXX____,
+ XXXXX___,_XXXX___,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: S code:0x0053 */
+static GUI_CONST_STORAGE unsigned char ac0053[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,_XX_____,
+ _XXX____,_XX_____,
+ _XXX____,________,
+ _XXXX___,________,
+ __XXXXX_,________,
+ ___XXXXX,X_______,
+ _____XXX,XXX_____,
+ _______X,XXX_____,
+ ________,XXXX____,
+ _XX_____,_XXX____,
+ _XX_____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ ____XXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: T code:0x0054 */
+static GUI_CONST_STORAGE unsigned char ac0054[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XXXX____,
+ _XX__XXX,__XX____,
+ XX___XXX,___XX___,
+ XX___XXX,___XX___,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ___XXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: U code:0x0055 */
+static GUI_CONST_STORAGE unsigned char ac0055[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX__,XXXX____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ ___XXX__,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: V code:0x0056 */
+static GUI_CONST_STORAGE unsigned char ac0056[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXX___,XXXX____,
+ _XXX____,_XX_____,
+ __XX____,XX______,
+ __XX____,XX______,
+ __XXX___,XX______,
+ __XXX___,XX______,
+ ___XX__X,X_______,
+ ___XX__X,X_______,
+ ___XXX_X,X_______,
+ ___XXX_X,X_______,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXXX,________,
+ ____XXX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: W code:0x0057 */
+static GUI_CONST_STORAGE unsigned char ac0057[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXXX___,
+ _XX__XXX,__XX____,
+ _XX___XX,__XX____,
+ _XXX__XX,__XX____,
+ _XXX__XX,__XX____,
+ __XX_XXX,_XX_____,
+ __XX_XXX,_XX_____,
+ __XX_XXX,XXX_____,
+ __XX_XXX,XXX_____,
+ __XXXX_X,XXX_____,
+ __XXXX_X,XX______,
+ ___XXX_X,XX______,
+ ___XXX_X,XX______,
+ ___XX__X,XX______,
+ ___XX__X,X_______,
+ ___XX__X,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: X code:0x0058 */
+static GUI_CONST_STORAGE unsigned char ac0058[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX_X,XXXX____,
+ __XXX___,XX______,
+ ___XX___,XX______,
+ ___XXX__,XX______,
+ ____XX_X,X_______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ _____XX_,________,
+ _____XXX,________,
+ _____XXX,________,
+ ____XXXX,X_______,
+ ____XX_X,X_______,
+ ___XX__X,XX______,
+ ___XX___,XX______,
+ __XX____,XXX_____,
+ _XXXX__X,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: Y code:0x0059 */
+static GUI_CONST_STORAGE unsigned char ac0059[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXX___,XXXXX___,
+ _XXX____,__XX____,
+ __XX____,_XX_____,
+ __XXX___,_XX_____,
+ ___XX___,XX______,
+ ___XXX__,XX______,
+ ___XXXXX,X_______,
+ ____XXXX,X_______,
+ ____XXXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ ___XXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: Z code:0x005A */
+static GUI_CONST_STORAGE unsigned char ac005A[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXXX____,
+ __XXX___,_XX_____,
+ _XXX____,XXX_____,
+ _XX_____,XX______,
+ _______X,XX______,
+ _______X,X_______,
+ ______XX,________,
+ ______XX,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XX__,________,
+ ___XXX__,________,
+ ___XX___,__XX____,
+ __XXX___,__XX____,
+ __XX____,_XX_____,
+ _XXXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: [ code:0x005B */
+static GUI_CONST_STORAGE unsigned char ac005B[48] = {
+ ________,________,
+ ________,________,
+ _____XXX,XXX_____,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XX_,________,
+ _____XXX,XXX_____,
+ ________,________
+};
+
+/* char: \ code:0x005C */
+static GUI_CONST_STORAGE unsigned char ac005C[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XX____,________,
+ __XX____,________,
+ ___XX___,________,
+ ___XX___,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ _____XX_,________,
+ _____XX_,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ ________,XX______,
+ ________,XX______,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,_XX_____,
+ ________,__XX____
+};
+
+/* char: ] code:0x005D */
+static GUI_CONST_STORAGE unsigned char ac005D[48] = {
+ ________,________,
+ ________,________,
+ __XXXXXX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ __XXXXXX,________,
+ ________,________
+};
+
+/* char: ^ code:0x005E */
+static GUI_CONST_STORAGE unsigned char ac005E[48] = {
+ ________,________,
+ _____XXX,________,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: _ code:0x005F */
+static GUI_CONST_STORAGE unsigned char ac005F[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXXX___
+};
+
+/* char: ` code:0x0060 */
+static GUI_CONST_STORAGE unsigned char ac0060[48] = {
+ ________,________,
+ ________,________,
+ ___XXX__,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: a code:0x0061 */
+static GUI_CONST_STORAGE unsigned char ac0061[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XX______,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ ________,XXX_____,
+ _____XXX,XXX_____,
+ __XXXX__,XXX_____,
+ _XXXX___,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXXX__X,XXXXX___,
+ __XXXXXX,_XXXX___,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: b code:0x0062 */
+static GUI_CONST_STORAGE unsigned char ac0062[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ _XXXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX_XX,XX______,
+ __XXXXX_,XXX_____,
+ __XXXX__,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XX_____,
+ __XXXX__,XXX_____,
+ __XX_XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: c code:0x0063 */
+static GUI_CONST_STORAGE unsigned char ac0063[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ __XXX__X,XX______,
+ __XXX__X,XX______,
+ _XXX___X,XX______,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,________,
+ _XXX____,_XX_____,
+ __XXX___,_XX_____,
+ __XXX___,XX______,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: d code:0x0064 */
+static GUI_CONST_STORAGE unsigned char ac0064[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,_XX_____,
+ ______XX,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ___XXXXX,XXX_____,
+ __XXX__X,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ __XX____,XXX_____,
+ __XXX__X,XXXX____,
+ ___XXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: e code:0x0065 */
+static GUI_CONST_STORAGE unsigned char ac0065[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,XX______,
+ ___XXX__,XXX_____,
+ ___XX___,_XX_____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXXXXX,XXXX____,
+ __XXX___,________,
+ __XXX___,________,
+ ___XXX__,__XX____,
+ ___XXX__,_XX_____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: f code:0x0066 */
+static GUI_CONST_STORAGE unsigned char ac0066[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XXX_____,
+ _____XXX,_XXX____,
+ ____XXX_,_XXX____,
+ ____XXX_,________,
+ ____XXX_,________,
+ _XXXXXXX,XX______,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ __XXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: g code:0x0067 */
+static GUI_CONST_STORAGE unsigned char ac0067[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XXXX____,
+ ___XXXXX,XXXX____,
+ __XXX__X,XX______,
+ __XXX__X,XX______,
+ __XXX__X,XX______,
+ ___XXX_X,XX______,
+ ___XXXXX,X_______,
+ __XXX___,________,
+ __XXXXXX,X_______,
+ __XXX_XX,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXXX__X,XXX_____,
+ ___XXXXX,X_______
+};
+
+/* char: h code:0x0068 */
+static GUI_CONST_STORAGE unsigned char ac0068[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ _XXXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXXXXX,XX______,
+ __XXXX__,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ _XXXXX_X,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: i code:0x0069 */
+static GUI_CONST_STORAGE unsigned char ac0069[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XXX,________,
+ _____XXX,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ __XXXXXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ __XXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: j code:0x006A */
+static GUI_CONST_STORAGE unsigned char ac006A[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,XX______,
+ ______XX,XX______,
+ ________,________,
+ ________,________,
+ ________,XX______,
+ ____XXXX,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ _______X,XX______,
+ __XXX_XX,X_______,
+ __XXXXXX,________
+};
+
+/* char: k code:0x006B */
+static GUI_CONST_STORAGE unsigned char ac006B[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,________,
+ _XXXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX___,________,
+ __XXX__X,XXX_____,
+ __XXX__X,X_______,
+ __XXX__X,X_______,
+ __XXX_XX,________,
+ __XXXXXX,________,
+ __XXXXXX,________,
+ __XXX__X,X_______,
+ __XXX__X,XX______,
+ __XXX___,XX______,
+ __XXX___,XXX_____,
+ _XXXXX_X,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: l code:0x006C */
+static GUI_CONST_STORAGE unsigned char ac006C[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______XX,________,
+ __XXXXXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ __XXXXXX,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: m code:0x006D */
+static GUI_CONST_STORAGE unsigned char ac006D[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXX_,XXXX____,
+ _XXXXXXX,XXXX____,
+ _XXX_XXX,_XXX____,
+ _XXX_XXX,_XXX____,
+ _XXX_XXX,_XXX____,
+ _XXX_XXX,_XXX____,
+ _XXX_XXX,_XXX____,
+ _XXX_XXX,_XXX____,
+ _XXX_XXX,_XXX____,
+ _XXX_XXX,_XXX____,
+ XXXXXXXX,XXXXX___,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: n code:0x006E */
+static GUI_CONST_STORAGE unsigned char ac006E[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XX______,
+ __XXXX__,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ _XXXXX_X,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: o code:0x006F */
+static GUI_CONST_STORAGE unsigned char ac006F[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,X_______,
+ ___XXX_X,XX______,
+ __XXX___,XXX_____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ _XXX____,_XXX____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ ____XXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: p code:0x0070 */
+static GUI_CONST_STORAGE unsigned char ac0070[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXXXX,XX______,
+ __XXXX__,XXX_____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,_XXX____,
+ __XXX___,XXX_____,
+ __XXXX__,XXX_____,
+ __XXXXXX,XX______,
+ __XXX___,________,
+ __XXX___,________,
+ _XXXXXX_,________
+};
+
+/* char: q code:0x0071 */
+static GUI_CONST_STORAGE unsigned char ac0071[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XXXXX,_XX_____,
+ __XXX__X,XXX_____,
+ __XXX___,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ _XXX____,XXX_____,
+ __XX____,XXX_____,
+ __XXX__X,XXX_____,
+ ___XXXXX,XXX_____,
+ ________,XXX_____,
+ ________,XXX_____,
+ ______XX,XXXX____
+};
+
+/* char: r code:0x0072 */
+static GUI_CONST_STORAGE unsigned char ac0072[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXX_X,XXX_____,
+ ___XXXXX,_XXX____,
+ ___XXXX_,_XXX____,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ ___XXX__,________,
+ XXXXXXXX,X_______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: s code:0x0073 */
+static GUI_CONST_STORAGE unsigned char ac0073[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ____XXXX,XXX_____,
+ __XXXX__,XXX_____,
+ __XXX___,_XX_____,
+ __XXX___,_XX_____,
+ ___XXXX_,________,
+ ____XXXX,X_______,
+ ______XX,XXX_____,
+ __XX____,XXX_____,
+ __XX____,XXX_____,
+ __XXX__X,XXX_____,
+ __XXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: t code:0x0074 */
+static GUI_CONST_STORAGE unsigned char ac0074[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _____XX_,________,
+ _____XX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ _XXXXXXX,XX______,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,________,
+ ____XXX_,_XX_____,
+ ____XXX_,_XX_____,
+ _____XXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: u code:0x0075 */
+static GUI_CONST_STORAGE unsigned char ac0075[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ___XX___,_XX_____,
+ _XXXX__X,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXX___,XXX_____,
+ __XXXX_X,XXXX____,
+ ___XXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: v code:0x0076 */
+static GUI_CONST_STORAGE unsigned char ac0076[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX__,XXXX____,
+ __XXX___,_XX_____,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XXX__,XX______,
+ ____XX_X,X_______,
+ ____XXXX,X_______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ _____XX_,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: w code:0x0077 */
+static GUI_CONST_STORAGE unsigned char ac0077[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ XXXXXXXX,XXXXX___,
+ _XX__XXX,__XX____,
+ _XXX__XX,__XX____,
+ __XX_XXX,_XX_____,
+ __XX_XXX,_XX_____,
+ __XXXXXX,XXX_____,
+ __XXXX_X,XX______,
+ ___XXX_X,XX______,
+ ___XXX_X,XX______,
+ ___XXX_X,XX______,
+ ___XX___,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: x code:0x0078 */
+static GUI_CONST_STORAGE unsigned char ac0078[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XXXX____,
+ ___XXX__,XX______,
+ ____XX__,XX______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,X_______,
+ ____XX_X,X_______,
+ ___XX___,XX______,
+ ___XX___,XXX_____,
+ _XXXXX_X,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: y code:0x0079 */
+static GUI_CONST_STORAGE unsigned char ac0079[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ _XXXXX_X,XXXX____,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ___XX___,XX______,
+ ____XX_X,X_______,
+ ____XX_X,X_______,
+ ____XXXX,X_______,
+ _____XXX,________,
+ _____XXX,________,
+ _____XXX,________,
+ _____XX_,________,
+ _____XX_,________,
+ __XX_XX_,________,
+ __XXXX__,________
+};
+
+/* char: z code:0x007A */
+static GUI_CONST_STORAGE unsigned char ac007A[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __XXXXXX,XX______,
+ __XX___X,XX______,
+ __XX__XX,X_______,
+ __XX__XX,________,
+ _____XXX,________,
+ _____XX_,________,
+ ____XXX_,________,
+ ___XXX__,_XX_____,
+ ___XX___,_XX_____,
+ __XXX___,XXX_____,
+ __XXXXXX,XX______,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: { code:0x007B */
+static GUI_CONST_STORAGE unsigned char ac007B[48] = {
+ ________,________,
+ ________,________,
+ ________,XXX_____,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ ______XX,________,
+ _____XX_,________,
+ ______XX,________,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ _______X,X_______,
+ ________,XXX_____,
+ ________,________
+};
+
+/* char: | code:0x007C */
+static GUI_CONST_STORAGE unsigned char ac007C[48] = {
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________,
+ ______XX,________
+};
+
+/* char: } code:0x007D */
+static GUI_CONST_STORAGE unsigned char ac007D[48] = {
+ ________,________,
+ ________,________,
+ __XXX___,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ _____XX_,________,
+ ______XX,________,
+ _____XX_,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ ____XX__,________,
+ __XXX___,________,
+ ________,________
+};
+
+/* char: ~ code:0x007E */
+static GUI_CONST_STORAGE unsigned char ac007E[48] = {
+ ________,________,
+ __XXXX__,________,
+ _XX__XX_,__XX____,
+ _XX___XX,X_XX____,
+ _______X,XXX_____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: code:0x007F */
+static GUI_CONST_STORAGE unsigned char ac007F[48] = {
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________
+};
+
+/* char: 。 code:0xA1A3 */
+static GUI_CONST_STORAGE unsigned char acA1A3[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XXXX,________,________,
+ ___XX__X,X_______,________,
+ ___XX__X,X_______,________,
+ ___XX__X,X_______,________,
+ ____XXXX,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: , code:0xA3AC */
+static GUI_CONST_STORAGE unsigned char acA3AC[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ____XXX_,________,________,
+ ___XXXX_,________,________,
+ ___XXXX_,________,________,
+ ____XXX_,________,________,
+ ____XX__,________,________,
+ ____XX__,________,________,
+ ___XX___,________,________,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 败 code:0xB0DC */
+static GUI_CONST_STORAGE unsigned char acB0DC[72] = {
+ ________,________,________,
+ ________,______XX,________,
+ ________,______XX,X_______,
+ __XXXXXX,XXXX__XX,________,
+ __XXX___,_XX__XXX,________,
+ __XXX___,_XX__XX_,________,
+ __XXX_XX,_XX__XXX,XXXXXXX_,
+ __XXX_XX,_XX__XX_,__XXX___,
+ __XXX_XX,_XX_XXX_,__XXX___,
+ __XXX_XX,_XX_XXX_,__XX____,
+ __XXX_XX,_XXXX_XX,__XX____,
+ __XXX_XX,_XXX__XX,__XX____,
+ __XXX_XX,_XX___XX,_XXX____,
+ __XXXXXX,_XX___XX,_XX_____,
+ __XXXXX_,_XX____X,XXX_____,
+ __XXXXXX,XXX____X,XXX_____,
+ __XX_XX_,XX______,XX______,
+ ____XXX_,_XX____X,XXX_____,
+ ____XX__,_XXX__XX,XXX_____,
+ ___XX___,__XX_XXX,__XXX___,
+ __XX____,____XX__,__XXXX__,
+ _XX_____,__XXX___,___XXXXX,
+ ________,_XX_____,________,
+ ________,________,________,
+};
+
+/* char: 版 code:0xB0E6 */
+static GUI_CONST_STORAGE unsigned char acB0E6[72] = {
+ ________,________,________,
+ ______XX,________,________,
+ ______XX,X_______,___XXX__,
+ ___XX_XX,X______X,XXXXXX__,
+ ___XX_XX,X__XXXXX,________,
+ ___XX_XX,X__XX___,________,
+ ___XX_XX,X__XX___,________,
+ ___XX_XX,X__XX___,________,
+ ___XXXXX,XXXXXXXX,XXXXXX__,
+ ___XX___,___XXXX_,___XXX__,
+ ___XX___,___XX_XX,___XX___,
+ ___XX___,___XX_XX,___XX___,
+ ___XXXXX,XX_XX_XX,__XXX___,
+ ___XX__X,XX_XX_XX,__XX____,
+ ___XX__X,XX_XX__X,X_XX____,
+ ___XX__X,XX_XX__X,XXX_____,
+ ___XX__X,XX_XX___,XXX_____,
+ __XXX__X,XXXX____,XXX_____,
+ __XX___X,XXXX___X,XXXX____,
+ __XX___X,XXXX__XX,__XXX___,
+ __XX___X,XXX__XX_,___XXXX_,
+ _XX_____,_XXXXX__,____XXX_,
+ _XX_____,XXXX____,________,
+ ________,________,________,
+};
+
+/* char: 包 code:0xB0FC */
+static GUI_CONST_STORAGE unsigned char acB0FC[72] = {
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ _______X,XX______,________,
+ ______XX,X_______,________,
+ ______XX,XXXXXXXX,XXXXX___,
+ _____XXX,________,__XX____,
+ _____XX_,________,__XX____,
+ ____XX__,________,__XX____,
+ ___XXXXX,XXXXXXXX,__XX____,
+ ___XXXXX,_____XX_,__XX____,
+ __XX__XX,_____XX_,__XX____,
+ _XX___XX,_____XX_,__XX____,
+ ______XX,_____XX_,__XX____,
+ ______XX,XXXXXXX_,__XX____,
+ ______XX,_____XX_,__XX____,
+ ______XX,______XX,XXXX____,
+ ______XX,________,XXX__XX_,
+ ______XX,________,_____XX_,
+ ______XX,________,_____XX_,
+ ______XX,________,_____XX_,
+ ______XX,XXX_____,_XXXXXX_,
+ ________,XXXXXXXX,XXXXX___,
+ ________,________,________,
+};
+
+/* char: 保 code:0xB1A3 */
+static GUI_CONST_STORAGE unsigned char acB1A3[72] = {
+ ________,________,________,
+ _______X,X_______,________,
+ ______XX,X_______,________,
+ ______XX,__XXXXXX,XXXXXX__,
+ ______XX,__XX____,___XX___,
+ _____XXX,__XX____,___XX___,
+ _____XX_,__XX____,___XX___,
+ ____XXX_,__XX____,___XX___,
+ ____XXX_,__XXXXXX,XXXXX___,
+ ___XXXX_,__XX__XX,___XX___,
+ ___XXXX_,______XX,________,
+ __XX_XX_,______XX,_____XX_,
+ _XX__XXX,XXXXXXXX,XXXXXXXX,
+ _____XX_,_____XXX,XX______,
+ _____XX_,____XXXX,XX______,
+ _____XX_,____XXXX,_XX_____,
+ _____XX_,___XXXXX,__XX____,
+ _____XX_,___XX_XX,__XX____,
+ _____XX_,__XX__XX,___XX___,
+ _____XX_,_XX___XX,____XXX_,
+ _____XX_,XX____XX,X___XXX_,
+ _____XXX,X_____XX,X_______,
+ _____XX_,______XX,________,
+ ________,________,________,
+};
+
+/* char: 备 code:0xB1B8 */
+static GUI_CONST_STORAGE unsigned char acB1B8[72] = {
+ ________,________,________,
+ ________,_XX_____,________,
+ ________,XXX_____,________,
+ ________,XXXXXXXX,XXX_____,
+ _______X,XX______,XX______,
+ _______X,XXX____X,XX______,
+ ______XX,_XX___XX,X_______,
+ _____XXX,__XX_XXX,________,
+ ____XXX_,__XXXXX_,________,
+ ___XX___,___XXX__,________,
+ ________,__XXXXX_,________,
+ ________,_XX___XX,X_______,
+ _______X,XX_____X,XXXX____,
+ _____XXX,XXXXXXXX,XXXXXXXX,
+ __XXXXXX,____XX__,_XX_XX__,
+ ______XX,____XX__,_XX_____,
+ ______XX,____XX__,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,____XX__,_XX_____,
+ ______XX,____XX__,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ________,________,________,
+};
+
+/* char: 本 code:0xB1BE */
+static GUI_CONST_STORAGE unsigned char acB1BE[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,__XXXXX_,________,
+ ________,__XXXXX_,________,
+ ________,_XXXXXXX,________,
+ ________,_XXXXXXX,________,
+ ________,XXXXXX_X,X_______,
+ ________,XX_XXX_X,XX______,
+ _______X,XX_XXX__,XX______,
+ ______XX,X__XXX__,_XX_____,
+ ______XX,___XXX__,_XXX____,
+ _____XX_,___XXX__,XXXXXX__,
+ ____XXXX,XXXXXXXX,XXXXXXXX,
+ __XXX___,___XXX__,____XX__,
+ _XX_____,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+};
+
+/* char: 编 code:0xB1E0 */
+static GUI_CONST_STORAGE unsigned char acB1E0[72] = {
+ ________,________,________,
+ ________,______XX,________,
+ _____XXX,_______X,X_______,
+ _____XX_,_______X,X_______,
+ ____XX__,__XXXXXX,XXXXXX__,
+ ____XX__,__XX____,___XXX__,
+ ___XX__X,XXXX____,___XXX__,
+ ___XX__X,X_XX____,___XXX__,
+ __XX_XXX,X_XXXXXX,XXXXXX__,
+ __XXXXXX,__XX____,___XX___,
+ _____XX_,__XX____,________,
+ ____XX__,__XXXXXX,XXXXXXX_,
+ ___XX___,_XXXX_XX,_XX_XXX_,
+ __XXX_XX,XXXXX_XX,_XX_XXX_,
+ __XXXXX_,_XXXX_XX,_XX_XXX_,
+ ________,_XXXXXXX,XXXXXXX_,
+ _______X,XXXXX_XX,_XX_XXX_,
+ ____XXXX,XXXXX_XX,_XX_XXX_,
+ _XXXXX__,XX_XX_XX,_XX_XXX_,
+ __XX___X,XX_XX_XX,_XX_XXX_,
+ _______X,X__XX___,____XXX_,
+ ______XX,___XX___,___XXX__,
+ _____XX_,________,____XX__,
+ ________,________,________,
+};
+
+/* char: 不 code:0xB2BB */
+static GUI_CONST_STORAGE unsigned char acB2BB[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,____XXX_,________,
+ ________,___XXX__,________,
+ ________,___XX___,________,
+ ________,__XXX___,________,
+ ________,__XXXX__,________,
+ ________,_XXXXX__,________,
+ ________,XXXXXX_X,XX______,
+ ________,XX_XXX__,_XX_____,
+ _______X,X__XXX__,__XXX___,
+ ______XX,___XXX__,___XXX__,
+ _____XX_,___XXX__,____XXX_,
+ ____XX__,___XXX__,____XXX_,
+ __XXX___,___XXX__,_____XX_,
+ _XX_____,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XX___,________,
+ ________,________,________,
+};
+
+/* char: 菜 code:0xB2CB */
+static GUI_CONST_STORAGE unsigned char acB2CB[72] = {
+ ________,________,________,
+ ________,XX____XX,________,
+ ________,XXX___XX,________,
+ ________,XXX___XX,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,XXX___XX,________,
+ ________,XXX___XX,__XX____,
+ ________,____XXXX,XXXXX___,
+ ___XXXXX,XXXXX___,________,
+ ________,__XX____,________,
+ _____XX_,___XXX__,_XXX____,
+ ______XX,____XX__,XXX_____,
+ ______XX,X__XX___,XX______,
+ ________,___XXX_X,X___XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,_XXXXXX_,________,
+ ________,_XXXXXXX,________,
+ ________,XX_XXX_X,X_______,
+ _______X,X__XXX__,XX______,
+ _____XXX,___XXX__,_XXX____,
+ ____XXX_,___XXX__,__XXXXXX,
+ __XXX___,___XXX__,____XX__,
+ _XX_____,___XX___,________,
+ ________,________,________,
+};
+
+/* char: 参 code:0xB2CE */
+static GUI_CONST_STORAGE unsigned char acB2CE[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,__XXX___,________,
+ ________,XXX___XX,X_______,
+ _______X,X_______,XXX_____,
+ _____XXX,____XXXX,XXXX____,
+ _____XXX,XXXXX___,__XXX___,
+ ________,_XXX____,___XX___,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,XXX___XX,________,
+ _______X,XX__XX_X,X_______,
+ ______XX,X__XXX__,XX______,
+ _____XXX,__XXX___,_XXX____,
+ ____XX__,_XXX__XX,__XXXXXX,
+ __XXX___,XX___XXX,X___XX__,
+ _XX___XX,X___XXX_,________,
+ ____XXX_,___XXX__,________,
+ ________,_XXX____,_XXX____,
+ _______X,XX_____X,XXX_____,
+ _____XXX,_____XXX,X_______,
+ ________,___XXXX_,________,
+ ________,XXXX____,________,
+ ___XXXXX,X_______,________,
+ ________,________,________,
+};
+
+/* char: 测 code:0xB2E2 */
+static GUI_CONST_STORAGE unsigned char acB2E2[72] = {
+ ________,________,________,
+ ________,________,________,
+ ___XX___,________,____XX__,
+ ____XX_X,XXXXXXXX,____XX__,
+ ____XXXX,XX___XXX,____XX__,
+ _______X,XX___XXX,____XX__,
+ _______X,XXXXXXXX,_XXXXX__,
+ _XX____X,XXXXXXXX,_XX_XX__,
+ __XXX_XX,XXXXXXXX,_XX_XX__,
+ ___XX_XX,XXXXXXXX,_XX_XX__,
+ ___XX_XX,XXXXXXXX,_XX_XX__,
+ _____XXX,XXXXXXXX,_XX_XX__,
+ _____XXX,XXXXXXXX,_XX_XX__,
+ _____XXX,XXXXXXXX,_XX_XX__,
+ ____XX_X,XXXX_XXX,_XX_XX__,
+ ____XX_X,XXXX_XXX,_XX_XX__,
+ __XXXX_X,XXXX_XX_,_XX_XX__,
+ ___XXX_X,XXXX____,____XX__,
+ ___XXX__,_XXXXX__,____XX__,
+ ___XXX__,XXX__XX_,____XX__,
+ ___XXX__,XX___XXX,____XX__,
+ ___XXXXX,X_____XX,__XXXX__,
+ _____XX_,________,___XXX__,
+ ________,________,________,
+};
+
+/* char: 查 code:0xB2E9 */
+static GUI_CONST_STORAGE unsigned char acB2E9[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ ________,___XXX__,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,__XXXXX_,________,
+ ________,_XXXXXXX,________,
+ ________,XXXXXX_X,X_______,
+ _______X,XX_XXX__,XX______,
+ ______XX,X__XXX__,_XXX____,
+ _____XX_,___XX___,__XXXXXX,
+ ___XXXXX,XXXXXXXX,XXXXXX__,
+ _XXX__XX,X_______,_XX_____,
+ ______XX,X_______,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,X_______,_XX_____,
+ ______XX,X_______,_XX_____,
+ ______XX,X_______,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,X_______,_XX_____,
+ ______XX,________,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 常 code:0xB3A3 */
+static GUI_CONST_STORAGE unsigned char acB3A3[72] = {
+ ________,________,________,
+ ________,___XXX__,________,
+ ______XX,X__XXX__,XXX_____,
+ _______X,XX_XXX__,XX______,
+ ________,XX_XXX_X,X_______,
+ ___XXXXX,XXXXXXXX,XXXXXXX_,
+ ___XX___,________,____XXX_,
+ __XXX___,________,____XX__,
+ __XX___X,XXXXXXXX,XX_XX___,
+ _______X,X_______,XX______,
+ _______X,X_______,XX______,
+ _______X,XXXXXXXX,XX______,
+ _______X,X__XXX__,XX______,
+ ________,___XXX__,________,
+ _____XXX,XXXXXXXX,XXXXX___,
+ _____XX_,___XXX__,__XX____,
+ _____XX_,___XXX__,__XX____,
+ _____XX_,___XXX__,__XX____,
+ _____XX_,___XXX__,__XX____,
+ _____XX_,___XXX__,XXXX____,
+ _____XX_,___XXX__,_XXX____,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,________,________,
+};
+
+/* char: 厂 code:0xB3A7 */
+static GUI_CONST_STORAGE unsigned char acB3A7[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,____XX__,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XX__,________,________,
+ ____XX__,________,________,
+ ____XX__,________,________,
+ ____XX__,________,________,
+ ___XX___,________,________,
+ ___XX___,________,________,
+ __XX____,________,________,
+ __XX____,________,________,
+ _XX_____,________,________,
+ ________,________,________,
+};
+
+/* char: 超 code:0xB3AC */
+static GUI_CONST_STORAGE unsigned char acB3AC[72] = {
+ ________,________,________,
+ ______XX,________,________,
+ ______XX,X_______,________,
+ ______XX,____XXXX,XXXXXXX_,
+ ______XX,_______X,X___XXX_,
+ __XXXXXX,XXXX___X,X___XX__,
+ ______XX,______XX,X___XX__,
+ ______XX,______XX,X___XX__,
+ ______XX,______XX,____XX__,
+ _XXXXXXX,XXXXXXX_,_XXXXX__,
+ ______XX,X___XX__,___XX___,
+ ______XX,X__XXX__,____XX__,
+ ___XXXXX,X____XXX,XXXXXXX_,
+ ___XX_XX,X_XX_XX_,____XX__,
+ ___XX_XX,XXXXXXX_,____XX__,
+ ___XX_XX,X____XX_,____XX__,
+ ___XX_XX,X____XX_,____XX__,
+ ___XXXXX,X____XXX,XXXXXX__,
+ __XXXXXX,X____XX_,____XX__,
+ __XX_XXX,X____XX_,________,
+ __XX___X,XX______,________,
+ _XX_____,XXXXXXXX,XXXXXXXX,
+ _XX_____,_____XXX,XXXXXXX_,
+ ________,________,________,
+};
+
+/* char: 成 code:0xB3C9 */
+static GUI_CONST_STORAGE unsigned char acB3C9[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,____XXX_,XX______,
+ ________,____XXX_,_XX_____,
+ ________,____XXX_,__XX____,
+ ________,_____XX_,__XXXX__,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ ____XX__,_____XX_,________,
+ ____XX__,_____XX_,________,
+ ____XX__,_____XX_,___XX___,
+ ____XX__,_____XXX,___XXX__,
+ ____XXXX,XXXX_XXX,__XXX___,
+ ____XX__,__XX__XX,__XX____,
+ ____XX__,__XX__XX,_XXX____,
+ ____XX__,__XX__XX,XXXX____,
+ ____XX__,_XXX__XX,XXX_____,
+ ____XX__,_XXX___X,XX____XX,
+ ___XX___,_XXX___X,XX____XX,
+ ___XX_XX,XXX___XX,XXX__XX_,
+ ___XX___,XXX__XXX,_XXXXXX_,
+ __XX____,____XX__,__XXXXX_,
+ __XX____,__XXX___,___XXXX_,
+ _XX_____,________,________,
+ ________,________,________,
+};
+
+/* char: 程 code:0xB3CC */
+static GUI_CONST_STORAGE unsigned char acB3CC[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,XX______,________,
+ _____XXX,XXXXXXXX,XXXXXX__,
+ __XXXXXX,____XX__,____XX__,
+ ______XX,____XX__,____XX__,
+ ______XX,____XX__,____XX__,
+ ______XX,____XX__,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXX__,
+ _____XXX,___XXX__,____XX__,
+ _____XXX,___XX___,____XX__,
+ _____XXX,X_XXXXXX,XXXXXXX_,
+ ____XXXX,XXX_____,XX______,
+ ____XXXX,_XX_____,XX______,
+ ___XXXXX,________,XX______,
+ ___XX_XX,________,XX__XX__,
+ __XX__XX,___XXXXX,XXXXXXX_,
+ __XX__XX,________,XX______,
+ _XX___XX,________,XX______,
+ _____XXX,________,XX______,
+ _____XXX,________,XX___XX_,
+ _____XXX,_XXXXXXX,XXXXXXXX,
+ _____XXX,________,________,
+ ________,________,________,
+};
+
+/* char: 出 code:0xB3F6 */
+static GUI_CONST_STORAGE unsigned char acB3F6[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ____XXX_,___XXX__,__XXX___,
+ ____XXX_,___XXX__,__XX____,
+ ____XXX_,___XXX__,__XX____,
+ ____XXX_,___XXX__,__XX____,
+ ____XXX_,___XXX__,__XX____,
+ ____XXX_,___XXX__,__XX____,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ________,___XXX__,__XXX___,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ____XXX_,___XXX__,___XXX__,
+ ____XX__,___XXX__,___XX___,
+ ____XX__,___XXX__,___XX___,
+ ____XX__,___XXX__,___XX___,
+ ____XX__,___XXX__,___XX___,
+ ____XX__,___XXX__,___XX___,
+ ___XXXXX,XXXXXXXX,XXXXX___,
+ ________,________,___XX___,
+ ________,________,________,
+};
+
+/* char: 存 code:0xB4E6 */
+static GUI_CONST_STORAGE unsigned char acB4E6[72] = {
+ ________,________,________,
+ ________,__XX____,________,
+ ________,__XXX___,________,
+ ________,__XX____,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,_XXX____,________,
+ ________,_XX_____,________,
+ ________,XXXXXXXX,XXXXX___,
+ _______X,XX______,__XXX___,
+ ______XX,X_______,_XX_____,
+ ______XX,________,XX______,
+ _____XXX,_______X,XX______,
+ _____XXX,_______X,X_______,
+ ____XXXX,_______X,X_______,
+ ___XX_XX,XXXXXXXX,XXXXXXX_,
+ __XX__XX,_______X,X_______,
+ _XX___XX,_______X,X_______,
+ ______XX,_______X,X_______,
+ ______XX,_______X,X_______,
+ ______XX,_______X,X_______,
+ ______XX,_______X,X_______,
+ ______XX,____XXXX,X_______,
+ ______XX,______XX,________,
+ ________,________,________,
+};
+
+/* char: 错 code:0xB4ED */
+static GUI_CONST_STORAGE unsigned char acB4ED[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,_____XX_,_XX_____,
+ ____XXXX,_____XX_,_XXX____,
+ ____XXX_,_____XX_,_XXX____,
+ ____XX__,_____XX_,_XXX____,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ ___XXX__,_____XX_,_XXX____,
+ ___XX___,_____XX_,_XXX____,
+ __XXXXXX,XX___XX_,_XXX_XX_,
+ __XX_XX_,_XXXXXXX,XXXXXXXX,
+ _XX__XX_,________,________,
+ _____XX_,________,________,
+ _____XX_,___XXXXX,XXXXXX__,
+ _XXXXXXX,XXXXXX__,___XX___,
+ _____XX_,___XXX__,___XX___,
+ _____XX_,___XXXXX,XXXXX___,
+ _____XX_,___XXX__,___XX___,
+ _____XX_,___XXX__,___XX___,
+ _____XXX,X__XXX__,___XX___,
+ _____XXX,___XXXXX,XXXXX___,
+ _____XX_,___XXX__,___XX___,
+ ________,___XX___,________,
+ ________,________,________,
+};
+
+/* char: 单 code:0xB5A5 */
+static GUI_CONST_STORAGE unsigned char acB5A5[72] = {
+ ________,________,________,
+ _______X,X______X,X_______,
+ ________,XX_____X,XX______,
+ ________,XXX___XX,X_______,
+ ________,_XX___XX,________,
+ _____XXX,XXXXXXXX,XXXX____,
+ _____XX_,___XX___,__XX____,
+ _____XX_,___XX___,__XX____,
+ _____XX_,___XX___,__XX____,
+ _____XXX,XXXXXXXX,XXXX____,
+ _____XX_,___XX___,__XX____,
+ _____XX_,___XX___,__XX____,
+ _____XX_,___XX___,__XX____,
+ _____XXX,XXXXXXXX,XXXX____,
+ _____XX_,___XX___,__XX____,
+ ____XX__,___XX___,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,________,________,
+};
+
+/* char: 但 code:0xB5AB */
+static GUI_CONST_STORAGE unsigned char acB5AB[72] = {
+ ________,________,________,
+ ________,________,________,
+ ______XX,________,________,
+ ______XX,X_______,________,
+ _____XXX,__XXXXXX,XXXXXX__,
+ _____XXX,__XX____,___XX___,
+ _____XX_,__XX____,___XX___,
+ ____XXX_,__XX____,___XX___,
+ ____XXX_,__XX____,___XX___,
+ ___XXXX_,__XX____,___XX___,
+ ___XXXX_,__XXXXXX,XXXXX___,
+ __XXXXX_,__XX____,___XX___,
+ _XX_XXX_,__XX____,___XX___,
+ ____XXX_,__XX____,___XX___,
+ ____XXX_,__XX____,___XX___,
+ ____XXX_,__XXXXXX,XXXXX___,
+ ____XXX_,__XX____,___XX___,
+ ____XXX_,_XXX____,___XX___,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ ____XX__,________,________,
+ ________,________,________,
+};
+
+/* char: 当 code:0xB5B1 */
+static GUI_CONST_STORAGE unsigned char acB5B1[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ ____XX__,___XXX__,_XXX____,
+ _____XXX,___XXX__,_XXX____,
+ ______XX,X__XXX__,XXX_____,
+ ______XX,X__XXX__,XX______,
+ _______X,X__XXX_X,X_______,
+ ________,___XXXXX,________,
+ ___XXXXX,XXXXXXXX,XXXXXXX_,
+ ________,________,___XXX__,
+ ________,________,___XXX__,
+ ________,________,___XXX__,
+ ________,________,___XXX__,
+ ____XXXX,XXXXXXXX,XXXXXX__,
+ ________,________,___XXX__,
+ ________,________,___XXX__,
+ ________,________,___XXX__,
+ ________,________,___XXX__,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ ________,________,___XXX__,
+ ________,________,___XXX__,
+ ________,________,________,
+};
+
+/* char: 的 code:0xB5C4 */
+static GUI_CONST_STORAGE unsigned char acB5C4[72] = {
+ ________,________,________,
+ ______XX,_______X,X_______,
+ ______XX,X______X,XX______,
+ ______XX,______XX,X_______,
+ ______XX,______XX,X_______,
+ _____XX_,______XX,________,
+ ___XXXXX,XXXX_XXX,XXXXXXX_,
+ ___XX___,_XX__XX_,____XX__,
+ ___XX___,_XX_XX__,____XX__,
+ ___XX___,_XX_XX__,____XX__,
+ ___XX___,_XXXX___,____XX__,
+ ___XX___,_XX__XX_,____XX__,
+ ___XXXXX,XXX___XX,X___XX__,
+ ___XX___,_XX____X,X___XX__,
+ ___XX___,_XX____X,X___XX__,
+ ___XX___,_XX_____,____XX__,
+ ___XX___,_XX_____,____XX__,
+ ___XX___,_XX_____,____XX__,
+ ___XX___,_XX_____,____XX__,
+ ___XXXXX,XXX_____,___XXX__,
+ ___XX___,_XX____X,X__XXX__,
+ ___XX___,_XX_____,XXXXX___,
+ ________,________,__XX____,
+ ________,________,________,
+};
+
+/* char: 电 code:0xB5E7 */
+static GUI_CONST_STORAGE unsigned char acB5E7[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ____XX__,___XX___,__XX____,
+ ____XX__,___XX___,__XX____,
+ ____XX__,___XX___,__XX____,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ____XX__,___XX___,__XX____,
+ ____XX__,___XX___,__XX____,
+ ____XX__,___XX___,__XX____,
+ ____XX__,___XX___,__XX____,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ____XX__,___XX___,__XX____,
+ ____XX__,___XX___,________,
+ ________,___XX___,_____XX_,
+ ________,___XX___,_____XX_,
+ ________,___XX___,_____XX_,
+ ________,___XX___,____XXX_,
+ ________,___XXXXX,XXXXXXX_,
+ ________,________,________,
+};
+
+/* char: 定 code:0xB6A8 */
+static GUI_CONST_STORAGE unsigned char acB6A8[72] = {
+ ________,________,________,
+ ________,__XX____,________,
+ ________,___XXX__,________,
+ ________,____XX__,________,
+ ____XX__,____XX__,____XX__,
+ ____XXXX,XXXXXXXX,XXXXXX__,
+ ____XX__,________,___XXX__,
+ ___XXX__,________,___XX___,
+ __XXX___,________,__XX____,
+ ___XXXXX,XXXXXXXX,XXXXX___,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ______XX,___XXX__,________,
+ ______XX,X__XXX__,________,
+ ______XX,___XXXXX,XXXX____,
+ _____XXX,___XXX__,________,
+ _____XXX,___XXX__,________,
+ _____XXX,X__XXX__,________,
+ _____XX_,XX_XXX__,________,
+ ____XX__,_XXXXX__,________,
+ ___XX___,__XXXXXX,_____XX_,
+ ___XX___,____XXXX,XXXXXX__,
+ __XX____,________,________,
+ ________,________,________,
+};
+
+/* char: 动 code:0xB6AF */
+static GUI_CONST_STORAGE unsigned char acB6AF[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,_______X,X_______,
+ ________,_______X,X_______,
+ ________,_XX____X,X_______,
+ __XXXXXX,XXXX___X,X_______,
+ ________,_______X,X_______,
+ ________,____XXXX,XXXXXXX_,
+ ________,_______X,X___XXX_,
+ _XXXXXXX,XXXXX__X,X___XXX_,
+ ______XX,_______X,X___XXX_,
+ _____XXX,_______X,X___XXX_,
+ _____XX_,_______X,X___XX__,
+ ____XXX_,XX_____X,X___XX__,
+ ____XX__,_XX___XX,X___XX__,
+ ___XX___,_XXX__XX,____XX__,
+ ___XX___,__XX__XX,____XX__,
+ __XXXXXX,XXXXXXX_,____XX__,
+ __XXX___,___XXXX_,____XX__,
+ ________,____XX__,____XX__,
+ ________,___XX__X,XX_XXX__,
+ ________,_XXX____,_XXXX___,
+ ________,XX______,__XX____,
+ ________,________,________,
+};
+
+/* char: 度 code:0xB6C8 */
+static GUI_CONST_STORAGE unsigned char acB6C8[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,____XXX_,________,
+ ________,____XXX_,____XX__,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ ____XX__,_XX_____,XX______,
+ ____XX__,__XX____,XXX_____,
+ ____XX__,__XX____,XX__XX__,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ ____XX__,__XX____,XX______,
+ ____XX__,__XX____,XX______,
+ ____XX__,__XXXXXX,XX______,
+ ____XX__,__XX____,XX______,
+ ____XX__,________,________,
+ ___XXX_X,XXXXXXXX,XXXX____,
+ ___XXX__,__XX____,_XX_____,
+ ___XX___,__XX____,XX______,
+ ___XX___,___XX__X,X_______,
+ ___XX___,____XXXX,________,
+ __XX____,____XXXX,________,
+ __XX____,__XXX__X,XXX_____,
+ _XX_____,XXX_____,_XXXXXXX,
+ _____XXX,X_______,____XX__,
+ ________,________,________,
+};
+
+/* char: 断 code:0xB6CF */
+static GUI_CONST_STORAGE unsigned char acB6CF[72] = {
+ ________,________,________,
+ ________,________,________,
+ ___XX___,XX______,____XX__,
+ ___XX___,XX______,__XXXXX_,
+ ___XX___,XX____XX,XXX_____,
+ ___XXXX_,XX_XXXXX,________,
+ ___XX_XX,XX_XX_XX,________,
+ ___XX_XX,XXXX__XX,________,
+ ___XX___,XXX___XX,________,
+ ___XXXXX,XXXXXXXX,XXXXXXX_,
+ ___XX__X,XX___XXX,___XX___,
+ ___XX__X,XXX___XX,___XX___,
+ ___XX__X,XXXX__XX,___XX___,
+ ___XX_XX,XX_XX_XX,___XX___,
+ ___XX_XX,XX_XXXXX,___XX___,
+ ___XXXX_,XX__XXXX,___XX___,
+ ___XXXX_,XX____XX,___XX___,
+ ___XXX__,XX___XXX,___XX___,
+ ___XX___,XXXX_XX_,___XX___,
+ __XXXXXX,XXXXXXX_,___XX___,
+ ________,____XX__,___XX___,
+ ________,___XX___,___XX___,
+ ________,__XX____,________,
+ ________,________,________,
+};
+
+/* char: 对 code:0xB6D4 */
+static GUI_CONST_STORAGE unsigned char acB6D4[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,__XX____,
+ ________,________,__XX____,
+ __XXXXXX,XXXX____,__XX____,
+ ________,_XX_____,__XX____,
+ ________,_XX_____,__XX____,
+ ________,XXXXXXXX,XXXXXXX_,
+ ___XX___,XX______,__XX____,
+ ____XX__,XX______,__XX____,
+ _____XXX,XX__XX__,__XX____,
+ ______XX,X___XXX_,__XX____,
+ ______XX,X____XXX,__XX____,
+ ______XX,X____XXX,__XX____,
+ _____XXX,XX___XX_,__XX____,
+ _____XX_,XXX_____,__XX____,
+ ____XX__,XXX_____,__XX____,
+ ___XX___,_XX_____,__XX____,
+ ___XX___,_XX_____,__XX____,
+ _XXX____,_XX__XXX,__XX____,
+ ________,_______X,XXXX____,
+ ________,________,_XX_____,
+ ________,________,________,
+};
+
+/* char: 发 code:0xB7A2 */
+static GUI_CONST_STORAGE unsigned char acB7A2[72] = {
+ ________,________,________,
+ ________,__XX__XX,________,
+ ________,__XX___X,XX______,
+ _____XXX,_XXX____,XXX_____,
+ ____XXX_,_XXX____,_XXX____,
+ ____XX__,_XX_____,_XXX____,
+ ___XXX__,_XX_____,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ___XX___,_XX_____,________,
+ ________,XXX_____,________,
+ ________,XXX_____,________,
+ ________,XXXXXXXX,XXXX____,
+ ________,XXXX____,_XXX____,
+ _______X,XXXX____,_XX_____,
+ _______X,X__XX___,XXX_____,
+ ______XX,X___XX_X,XX______,
+ ______XX,____XX_X,X_______,
+ _____XXX,_____XXX,________,
+ _____XX_,_____XXX,X_______,
+ ____XX__,___XXX_X,XXX_____,
+ ___XX___,__XXX___,XXXXX___,
+ __XX____,XXX_____,__XXXXXX,
+ _XX__XXX,X_______,____XX__,
+ ________,________,________,
+};
+
+/* char: 阀 code:0xB7A7 */
+static GUI_CONST_STORAGE unsigned char acB7A7[72] = {
+ ________,________,________,
+ _____XX_,________,________,
+ _____XXX,________,________,
+ ______XX,X_XXXXXX,XXXXXXX_,
+ ______XX,X_______,____XX__,
+ ___XXX__,____XX__,____XX__,
+ ___XXX__,_XXXXXXX,XX__XX__,
+ ___XXX__,XXX_XX__,XXX_XX__,
+ ___XXX__,XX__XX__,_XX_XX__,
+ ___XXX__,XX__XX__,_XX_XX__,
+ ___XXX_X,X__XXXXX,XX__XX__,
+ ___XXX_X,XXXX_XX_,XX__XX__,
+ ___XXXXX,XX___XX_,XXX_XX__,
+ ___XXXXX,XX___XXX,XX__XX__,
+ ___XXX_X,XX___XXX,X___XX__,
+ ___XXX_X,XX___XXX,__XXXX__,
+ ___XXX_X,XX__XXXX,X_XXXX__,
+ ___XXX_X,XXXXX__X,XXXXXX__,
+ ___XXX_X,XXX_____,XXXXXX__,
+ ___XXX_X,XX______,__XXXX__,
+ ___XXX__,________,____XX__,
+ ___XXX__,________,_XXXXX__,
+ ___XX___,________,___XX___,
+ ________,________,________,
+};
+
+/* char: 返 code:0xB7B5 */
+static GUI_CONST_STORAGE unsigned char acB7B5[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,__XX____,
+ ____XX__,______XX,XXXXX___,
+ _____XX_,__XXXXX_,________,
+ _____XXX,__XX____,________,
+ _____XX_,__XX____,________,
+ ________,__XX____,________,
+ ________,__XXXXXX,XXXXX___,
+ ________,__XX____,__XXX___,
+ _XXXXXXX,__XX____,__XX____,
+ _____XX_,__XXXX__,_XXX____,
+ _____XX_,_XXX_XX_,_XX_____,
+ _____XX_,_XXX__XX,XXX_____,
+ _____XX_,_XX_____,XXX_____,
+ _____XX_,_XX____X,XXXX____,
+ _____XX_,XX____XX,__XXX___,
+ _____XX_,XX___XX_,___XXX__,
+ _____XXX,X__XXX__,____XX__,
+ ____XXXX,_XXX____,________,
+ ___XX__X,X_______,________,
+ _XXX____,XXXXXXXX,XXXXXXXX,
+ __XX____,___XXXXX,XXXXXX__,
+ ________,________,________,
+};
+
+/* char: 复 code:0xB8B4 */
+static GUI_CONST_STORAGE unsigned char acB8B4[72] = {
+ ________,________,________,
+ _______X,X_______,________,
+ _______X,XX______,________,
+ ______XX,XXXXXXXX,XXXXXX__,
+ ______XX,________,________,
+ _____XX_,________,________,
+ ____XX_X,XXXXXXXX,XXXX____,
+ ___XX__X,X_______,_XX_____,
+ __XX___X,X_______,_XX_____,
+ _______X,XXXXXXXX,XXX_____,
+ _______X,X_______,_XX_____,
+ _______X,X_______,_XX_____,
+ _______X,XXXXXXXX,XXXX____,
+ ________,XXX_____,_XX_____,
+ ________,XXXXXXXX,XXX_____,
+ _______X,XXX_____,XXX_____,
+ ______XX,X_XX___X,XX______,
+ _____XX_,__XXX_XX,X_______,
+ ____XX__,___XXXXX,________,
+ ___XX___,___XXXX_,________,
+ ________,_XXX__XX,XX______,
+ ______XX,XX______,XXXXXXXX,
+ __XXXXX_,________,___XXX__,
+ ________,________,________,
+};
+
+/* char: 改 code:0xB8C4 */
+static GUI_CONST_STORAGE unsigned char acB8C4[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,______XX,X_______,
+ ________,______XX,X_______,
+ ________,______XX,________,
+ __XXXXXX,XXXX__XX,________,
+ ________,_XX__XX_,________,
+ ________,_XX__XXX,XXXXXXX_,
+ ________,_XX_XXX_,___XX___,
+ ________,_XX_XXX_,___XX___,
+ ___XXXXX,XXXXXXX_,__XXX___,
+ ___XX___,_XXXXXX_,__XX____,
+ ___XX___,__XX__XX,__XX____,
+ ___XX___,______XX,__XX____,
+ ___XX___,______XX,__XX____,
+ ___XX___,_______X,XXX_____,
+ ___XX___,_______X,XXX_____,
+ ___XX___,_XXX____,XX______,
+ ___XX__X,XX_____X,XXX_____,
+ ___XXXXX,______XX,__XX____,
+ __XXXX__,____XXX_,__XXXX__,
+ ___XX___,__XXX___,____XXXX,
+ ________,_XX_____,________,
+ ________,________,________,
+};
+
+/* char: 格 code:0xB8F1 */
+static GUI_CONST_STORAGE unsigned char acB8F1[72] = {
+ ________,________,________,
+ _____XX_,_____XX_,________,
+ _____XX_,____XXX_,________,
+ _____XX_,____XX__,________,
+ _____XX_,____XXXX,XXXXX___,
+ _____XX_,XX_XXX__,__XX____,
+ _XXXXXXX,XXXXXXX_,_XXX____,
+ _____XX_,__XX_XX_,XXX_____,
+ ____XXX_,_XX___XX,XX______,
+ ____XXXX,______XX,X_______,
+ ____XXXX,X_____XX,X_______,
+ ____XXXX,XX___XX_,XXX_____,
+ ___XXXX_,XX__XX__,_XXXX___,
+ ___XXXX_,__XXX___,___XXXX_,
+ __XX_XX_,XXXXXXXX,XXXXX___,
+ __XX_XXX,X__XX___,__XX____,
+ _XX__XX_,___XX___,__XX____,
+ _____XX_,___XX___,__XX____,
+ _____XX_,___XX___,__XX____,
+ _____XX_,___XX___,__XX____,
+ _____XX_,___XXXXX,XXXX____,
+ _____XX_,___XX___,__XX____,
+ _____XX_,___XX___,__XX____,
+ ________,________,________,
+};
+
+/* char: 功 code:0xB9A6 */
+static GUI_CONST_STORAGE unsigned char acB9A6[72] = {
+ ________,________,________,
+ ________,_______X,X_______,
+ ________,_______X,XX______,
+ ________,_______X,X_______,
+ ________,__XX___X,X_______,
+ __XXXXXX,XXXXX__X,X_______,
+ ______XX,_______X,X_______,
+ ______XX,___XXXXX,XXXXXXX_,
+ ______XX,_______X,X___XXX_,
+ ______XX,_______X,X___XXX_,
+ ______XX,_______X,X___XXX_,
+ ______XX,_______X,X___XX__,
+ ______XX,______XX,X___XX__,
+ ______XX,______XX,____XX__,
+ ______XX,______XX,____XX__,
+ ______XX,_XXX__XX,____XX__,
+ ______XX,XX___XX_,____XX__,
+ __XXXXX_,____XXX_,____XX__,
+ __XXX___,____XX__,____XX__,
+ ________,___XX___,____XX__,
+ ________,__XX___X,XX_XXX__,
+ ________,XXX_____,_XXXX___,
+ _______X,X_______,__XX____,
+ ________,________,________,
+};
+
+/* char: 公 code:0xB9AB */
+static GUI_CONST_STORAGE unsigned char acB9AB[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,_____XXX,________,
+ ________,_XX__XX_,________,
+ ________,XXX___XX,________,
+ ________,XXX___XX,________,
+ _______X,XX_____X,X_______,
+ _______X,X______X,X_______,
+ ______XX,X_______,XX______,
+ ______XX,________,XXX_____,
+ _____XX_,___XX___,_XXX____,
+ ____XX__,___XXX__,__XXX___,
+ ___XX___,__XXX___,___XXXX_,
+ __XX____,__XX____,____XX__,
+ ________,_XXX____,________,
+ ________,_XX_____,________,
+ ________,XX____XX,________,
+ _______X,X______X,XX______,
+ ______XX,X_______,XXX_____,
+ _____XXX,________,_XX_____,
+ ____XXXX,XXXXXXXX,XXXX____,
+ _____XXX,________,__XX____,
+ ________,________,__XX____,
+ ________,________,________,
+};
+
+/* char: 故 code:0xB9CA */
+static GUI_CONST_STORAGE unsigned char acB9CA[72] = {
+ ________,________,________,
+ ________,_______X,X_______,
+ _______X,XX_____X,XX______,
+ _______X,X______X,X_______,
+ _______X,X_____XX,X_______,
+ _______X,X_____XX,X_______,
+ _______X,X_____XX,________,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ _______X,X____XXX,___XX___,
+ _______X,X____XXX,___XX___,
+ _______X,X___XXXX,___XX___,
+ _______X,X___XXXX,___XX___,
+ ___XXXXX,XXXX___X,X_XXX___,
+ ___XXX__,_XXX___X,X_XX____,
+ ___XXX__,_XXX___X,X_XX____,
+ ___XXX__,_XXX___X,X_XX____,
+ ___XXX__,_XXX____,XXX_____,
+ ___XXX__,_XXX____,XXX_____,
+ ___XXX__,_XXX___X,XXX_____,
+ ___XXXXX,XXXX__XX,X_XX____,
+ ___XXX__,_XXX_XXX,__XXXX__,
+ ___XXX__,___XXX__,____XXXX,
+ ________,__XX____,________,
+ ________,________,________,
+};
+
+/* char: 规 code:0xB9E6 */
+static GUI_CONST_STORAGE unsigned char acB9E6[72] = {
+ ________,________,________,
+ _____XXX,________,________,
+ _____XXX,________,________,
+ ______XX,____XXXX,XXXXXXX_,
+ ______XX,____XX__,____XX__,
+ ______XX,____XX__,____XX__,
+ __XXXXXX,XXX_XX_X,XX__XX__,
+ ______XX,____XX_X,XX__XX__,
+ ______XX,____XX_X,XX__XX__,
+ ______XX,____XX_X,XX__XX__,
+ ______XX,____XX_X,XX__XX__,
+ _XXXXXXX,XXXXXX_X,XX__XX__,
+ ______XX,____XX_X,XXX_XX__,
+ _____XXX,____XX_X,XXX_XX__,
+ _____XXX,____XX_X,XXX_____,
+ _____XXX,XX_____X,XXX_____,
+ _____XX_,XXX___XX,XXX_____,
+ _____XX_,_XX___XX,_XX__XX_,
+ ____XX__,_XX__XXX,_XX__XX_,
+ ____XX__,_____XX_,_XX__XX_,
+ ___XX___,___XXX__,_XX__XXX,
+ __XX____,__XX____,_XXXXXX_,
+ _XX_____,XXX_____,________,
+ ________,________,________,
+};
+
+/* char: 号 code:0xBAC5 */
+static GUI_CONST_STORAGE unsigned char acBAC5[72] = {
+ ________,________,________,
+ ________,________,________,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,XXX_____,________,
+ ________,XX______,________,
+ _______X,XX______,________,
+ _______X,XXXXXXXX,XXXX____,
+ _______X,X_______,_XXX____,
+ ________,________,_XX_____,
+ ________,________,_XX_____,
+ ________,________,_XX_____,
+ ________,________,XXX_____,
+ ________,___XXX__,XX______,
+ ________,_____XXX,XX______,
+ ________,_____XXX,________,
+ ________,________,________,
+};
+
+/* char: 后 code:0xBAF3 */
+static GUI_CONST_STORAGE unsigned char acBAF3[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,___XX___,
+ ________,______XX,XXXXXX__,
+ _____XXX,XXXXXXX_,________,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ _____XX_,________,____XX__,
+ _____XXX,XXXXXXXX,XXXXXXX_,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ _____XX_,XXXXXXXX,XXXXX___,
+ _____XX_,_XX_____,__XXX___,
+ _____XX_,_XX_____,__XXX___,
+ ____XXX_,_XX_____,__XXX___,
+ ____XX__,_XX_____,__XXX___,
+ ____XX__,_XX_____,__XXX___,
+ ___XX___,XXXXXXXX,XXXXX___,
+ ___XX___,XXX_____,__XXX___,
+ __XX____,XXX_____,__XX____,
+ _XX_____,________,________,
+ ________,________,________,
+};
+
+/* char: 护 code:0xBBA4 */
+static GUI_CONST_STORAGE unsigned char acBBA4[72] = {
+ ________,________,________,
+ ________,________,________,
+ _____XX_,______XX,________,
+ _____XXX,_______X,X_______,
+ _____XXX,_______X,XX______,
+ _____XXX,________,XX______,
+ _____XXX,___XXXXX,XXXXXXX_,
+ _XXXXXXX,XXXXX___,____XX__,
+ _____XXX,__XXX___,____XX__,
+ _____XXX,___XX___,____XX__,
+ _____XXX,___XX___,____XX__,
+ _____XXX,XXXXXXXX,XXXXXXX_,
+ _____XXX,X__XX___,____XXX_,
+ __XXXXXX,___XX___,________,
+ __XX_XXX,___XX___,________,
+ _____XXX,___XX___,________,
+ _____XXX,__XXX___,________,
+ _____XXX,__XX____,________,
+ _____XXX,__XX____,________,
+ _____XXX,_XX_____,________,
+ __XX_XXX,XX______,________,
+ ___XXXX_,XX______,________,
+ ____XXXX,X_______,________,
+ ________,________,________,
+};
+
+/* char: 欢 code:0xBBB6 */
+static GUI_CONST_STORAGE unsigned char acBBB6[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,______XX,________,
+ ________,______XX,________,
+ ________,_____XXX,________,
+ _XXXXXXX,XXX__XX_,________,
+ ________,XXX__XX_,________,
+ ________,XX___XXX,XXXXXXX_,
+ __XX____,XX__XX_X,X___XXX_,
+ ___XX__X,XX__XX_X,XX__XX__,
+ ____XX_X,X__XX__X,XX_XX___,
+ _____XXX,X__XX__X,XX______,
+ _____XXX,X_XX___X,XX______,
+ ______XX,______XX,XX______,
+ _____XXX,X_____XX,_XX_____,
+ _____XXX,XX____XX,_XX_____,
+ ____XXX_,XXX__XXX,_XX_____,
+ ____XX__,XXX__XX_,_XXX____,
+ ___XX___,_XX_XXX_,__XX____,
+ __XX____,_XXXXX__,__XXX___,
+ __XX____,__XXX___,___XXX__,
+ _XX_____,_XX_____,____XXXX,
+ _______X,XX______,________,
+ ________,________,________,
+};
+
+/* char: 恢 code:0xBBD6 */
+static GUI_CONST_STORAGE unsigned char acBBD6[72] = {
+ ________,________,________,
+ _____XX_,____XX__,________,
+ _____XX_,____XXX_,________,
+ _____XX_,____XXX_,________,
+ _____XX_,____XXX_,________,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ _____XXX,____XX__,________,
+ _____XXX,X___XX_X,XX______,
+ __XX_XXX,XX_XXX_X,XX______,
+ __XX_XX_,___XX__X,XX______,
+ _XXX_XX_,___XXXXX,XX__XX__,
+ _____XX_,__XXXXXX,XX__XXX_,
+ _____XX_,__XX_XXX,XX_XX___,
+ _____XX_,__XXXX_X,XXXX____,
+ _____XX_,_XXXXX_X,XXX_____,
+ _____XX_,_XX___XX,XXX_____,
+ _____XX_,XX____XX,_XX_____,
+ _____XXX,X____XXX,__XX____,
+ _____XXX,X____XX_,__XXX___,
+ _____XXX,____XX__,___XXX__,
+ _____XX_,___XX___,___XXXX_,
+ _____XX_,_XXX____,____XXX_,
+ ____XX__,XX______,________,
+ ________,________,________,
+};
+
+/* char: 回 code:0xBBD8 */
+static GUI_CONST_STORAGE unsigned char acBBD8[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,____XX__,
+ ___XXXXX,XXXXXXXX,XXXXXX__,
+ ___XXX__,________,___XXX__,
+ ___XXX__,________,___XXX__,
+ ___XXX__,________,___XXX__,
+ ___XXX__,________,___XXX__,
+ ___XXX__,XXXXXXXX,XX_XXX__,
+ ___XXX__,XX_____X,X__XXX__,
+ ___XXX__,XX_____X,X__XXX__,
+ ___XXX__,XX_____X,X__XXX__,
+ ___XXX__,XX_____X,X__XXX__,
+ ___XXX__,XX_____X,X__XXX__,
+ ___XXX__,XXXXXXXX,X__XXX__,
+ ___XXX__,XX_____X,X__XXX__,
+ ___XXX__,XX______,___XXX__,
+ ___XXX__,________,___XXX__,
+ ___XXX__,________,___XXX__,
+ ___XXX__,________,___XXX__,
+ ___XXXXX,XXXXXXXX,XXXXXX__,
+ ___XXX__,________,___XXX__,
+ ___XXX__,________,________,
+ ________,________,________,
+};
+
+/* char: 或 code:0xBBF2 */
+static GUI_CONST_STORAGE unsigned char acBBF2[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,_____XX_,_XX_____,
+ ________,_____XXX,__XXX___,
+ ________,_____XXX,__XXX___,
+ ________,_____XXX,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,_____XXX,________,
+ ________,_____XXX,________,
+ ____XXXX,XXXX__XX,___XX___,
+ ____XX__,__XX__XX,___XXX__,
+ ____XX__,__XX__XX,__XXX___,
+ ____XX__,__XX__XX,__XXX___,
+ ____XX__,__XX__XX,X_XX____,
+ ____XXXX,XXXX__XX,XXXX____,
+ ____XX__,__XX___X,XXX_____,
+ ___XX___,_______X,XXX_____,
+ ________,___XXX_X,XX______,
+ _______X,XXXX__XX,XXX__XX_,
+ _XXXXXXX,_____XX_,_XXX_XX_,
+ __XXX___,____XX__,__XXXXX_,
+ ________,__XXX___,___XXXX_,
+ ________,_XX_____,_____XXX,
+ ________,________,________,
+};
+
+/* char: 辑 code:0xBCAD */
+static GUI_CONST_STORAGE unsigned char acBCAD[72] = {
+ ________,________,________,
+ _____XX_,________,________,
+ _____XXX,___XXXXX,XXXXX___,
+ _____XX_,___XX___,__XX____,
+ ____XXX_,___XX___,__XX____,
+ _XXXXXXX,XXXXX___,__XX____,
+ ____XX__,___XXXXX,XXXX____,
+ ___XXX__,___XX___,__XX____,
+ ___XX_XX,X__XX___,________,
+ ___XX_XX,_XXXXXXX,XXXXXXX_,
+ __XXX_XX,XX_XXX__,__XX____,
+ _XXXXXXX,XXXXXXXX,XXXX____,
+ __XX__XX,___XXX__,__XX____,
+ ______XX,___XXX__,__XX____,
+ ______XX,___XXXXX,XXXX____,
+ ______XX,XXXXXX__,__XX____,
+ ____XXXX,___XXX__,__XX____,
+ _XXXX_XX,___XXX__,__XX_XX_,
+ ______XX,_XXXXXXX,XXXXXXX_,
+ ______XX,________,__XX____,
+ ______XX,________,__XX____,
+ ______XX,________,__XX____,
+ ______XX,________,__XX____,
+ ________,________,________,
+};
+
+/* char: 技 code:0xBCBC */
+static GUI_CONST_STORAGE unsigned char acBCBC[72] = {
+ ________,________,________,
+ _____XX_,_______X,X_______,
+ _____XXX,_______X,XX______,
+ _____XXX,_______X,X_______,
+ _____XXX,_______X,X_______,
+ _____XXX,_______X,X_______,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ _____XXX,_______X,X_______,
+ _____XXX,_______X,X_______,
+ _____XXX,_______X,X_______,
+ _____XXX,_XX____X,X_______,
+ _____XXX,XXXXXXXX,XXXXXX__,
+ ____XXXX,____XX__,___XX___,
+ _XXXXXXX,____XX__,__XXX___,
+ __XX_XXX,_____XX_,__XX____,
+ _____XXX,_____XX_,_XXX____,
+ _____XXX,______XX,_XX_____,
+ _____XXX,______XX,XXX_____,
+ _____XXX,_______X,XX______,
+ _____XXX,______XX,XXX_____,
+ __XX_XXX,____XXX_,_XXXX___,
+ ___XXXXX,__XXX___,__XXXXXX,
+ _____XX_,XXX_____,____XX__,
+ ________,________,________,
+};
+
+/* char: 计 code:0xBCC6 */
+static GUI_CONST_STORAGE unsigned char acBCC6[72] = {
+ ________,________,________,
+ ________,________,________,
+ ____XX__,______XX,________,
+ _____XXX,______XX,X_______,
+ ______XX,______XX,X_______,
+ ______XX,______XX,X_______,
+ ________,______XX,X_______,
+ ________,______XX,X_______,
+ ________,______XX,X_______,
+ _XXXXXXX,______XX,X____XX_,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ _____XX_,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _____XX_,_XX___XX,X_______,
+ _____XX_,XX____XX,X_______,
+ _____XXX,X_____XX,X_______,
+ _____XXX,X_____XX,X_______,
+ _____XXX,______XX,X_______,
+ ________,______XX,X_______,
+ ________,______XX,X_______,
+ ________,________,________,
+};
+
+/* char: 加 code:0xBCD3 */
+static GUI_CONST_STORAGE unsigned char acBCD3[72] = {
+ ________,________,________,
+ ______XX,________,________,
+ ______XX,________,________,
+ ______XX,________,________,
+ ______XX,________,________,
+ ______XX,________,________,
+ _XXXXXXX,XXXXX_XX,XXXXXXX_,
+ ______XX,__XXX_XX,____XX__,
+ ______XX,__XXX_XX,____XX__,
+ ______XX,__XXX_XX,____XX__,
+ ______XX,__XXX_XX,____XX__,
+ _____XXX,__XX__XX,____XX__,
+ _____XXX,__XX__XX,____XX__,
+ _____XX_,__XX__XX,____XX__,
+ _____XX_,__XX__XX,____XX__,
+ _____XX_,__XX__XX,____XX__,
+ ____XXX_,__XX__XX,____XX__,
+ ____XX__,__XX__XX,____XX__,
+ ____XX__,__XX__XX,____XX__,
+ ___XXXXX,_XXX__XX,XXXXXX__,
+ ___XX__X,XXX___XX,____XXX_,
+ __XX____,XX____XX,____XXX_,
+ _XX_____,______XX,________,
+ ________,________,________,
+};
+
+/* char: 检 code:0xBCEC */
+static GUI_CONST_STORAGE unsigned char acBCEC[72] = {
+ ________,________,________,
+ _____XX_,______XX,________,
+ _____XX_,______XX,________,
+ _____XX_,_____XXX,X_______,
+ _____XX_,_____XXX,X_______,
+ _____XX_,____XXX_,XX______,
+ _XXXXXXX,XXX_XX__,_XX_____,
+ _____XX_,___XX___,__XXX___,
+ ____XXX_,__XX____,___XXXX_,
+ ____XXXX,_XX_____,____XX__,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ____XXXX,XX______,________,
+ ___XXXX_,XX___XX_,__XXX___,
+ ___XXXX_,______XX,__XXX___,
+ __XX_XX_,__XX__XX,__XXX___,
+ __XX_XX_,__XX__XX,X_XX____,
+ _XX__XX_,___XX_XX,X_XX____,
+ _____XX_,___XX__X,XXXX____,
+ _____XX_,___XX___,_XX_____,
+ _____XX_,___XX___,_XX_____,
+ _____XX_,________,XX______,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ _____XX_,________,________,
+ ________,________,________,
+};
+
+/* char: 键 code:0xBCFC */
+static GUI_CONST_STORAGE unsigned char acBCFC[72] = {
+ ________,________,________,
+ ____XX__,________,XX______,
+ ____XXX_,________,XXX_____,
+ ____XX__,________,XX______,
+ ___XXX__,XXXXXXXX,XXXXXX__,
+ ___XXXXX,X__XX___,XX__XX__,
+ ___XX___,__XXXXXX,XXXXXXX_,
+ __XX____,__XX____,XX__XX__,
+ __XXXXXX,X_XX____,XX__XX__,
+ _XX_XX__,_XX___XX,XXXXXX__,
+ ____XX__,XXXXXX__,XX______,
+ ____XX__,_XX_XX__,XX______,
+ ____XX__,____XXXX,XXXXXX__,
+ _XXXXXXX,XX__XX__,XX______,
+ ____XX__,_XXXXX__,XX______,
+ ____XX__,_XXXX___,XX______,
+ ____XX__,_XXXXXXX,XXXXXXX_,
+ ____XX__,__XXX___,XX______,
+ ____XX_X,X_XX____,XX______,
+ ____XXXX,_XXXXX__,XXX_____,
+ ____XXX_,XXX_XXXX,XX___XXX,
+ _______X,X______X,XXXXXXX_,
+ ______XX,________,________,
+ ________,________,________,
+};
+
+/* char: 件 code:0xBCFE */
+static GUI_CONST_STORAGE unsigned char acBCFE[72] = {
+ ________,________,________,
+ _______X,X______X,X_______,
+ ______XX,XX_____X,X_______,
+ ______XX,X______X,X_______,
+ ______XX,__XXX__X,X_______,
+ _____XXX,__XXX__X,X_______,
+ _____XX_,__XX___X,X_______,
+ ____XXX_,__XXXXXX,XXXXXX__,
+ ____XXX_,__XX___X,X_______,
+ ___XXXX_,_XX____X,X_______,
+ ___XXXX_,_XX____X,X_______,
+ __XX_XX_,XX_____X,X_______,
+ _XX__XX_,XX_____X,X_______,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ ________,________,________,
+};
+
+/* char: 江 code:0xBDAD */
+static GUI_CONST_STORAGE unsigned char acBDAD[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ___XX___,________,________,
+ ____XX__,________,____XX__,
+ ____XXX_,XXXXXXXX,XXXXXX__,
+ _____XXX,X_____XX,________,
+ _______X,X_____XX,________,
+ _XX____X,X_____XX,________,
+ __XXX_XX,______XX,________,
+ ___XX_XX,______XX,________,
+ ___XX_XX,______XX,________,
+ _____XX_,______XX,________,
+ _____XX_,______XX,________,
+ _____XX_,______XX,________,
+ ____XX__,______XX,________,
+ __XXXX__,______XX,________,
+ ___XXX__,______XX,________,
+ ___XXX__,______XX,________,
+ ___XXX__,______XX,_____XX_,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,
+ ___XXX__,________,________,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 阶 code:0xBDD7 */
+static GUI_CONST_STORAGE unsigned char acBDD7[72] = {
+ ________,________,________,
+ ________,______XX,________,
+ ________,_____XXX,________,
+ __XXXXXX,XX___XXX,X_______,
+ __XX___X,X___XXXX,X_______,
+ __XX__XX,X___XX__,XX______,
+ __XX__XX,___XXX__,_XX_____,
+ __XX__XX,___XX___,_XXX____,
+ __XX_XX_,__XX____,__XXXX__,
+ __XX_XX_,XXXXX___,____XXXX,
+ __XX_XX_,___XXX__,_XX_____,
+ __XX__XX,___XXX__,_XX_____,
+ __XX___X,X__XXX__,_XX_____,
+ __XX___X,X__XXX__,_XX_____,
+ __XX___X,XX_XXX__,_XX_____,
+ __XX___X,X__XXX__,_XX_____,
+ __XXXXXX,X__XXX__,_XX_____,
+ __XX_XXX,___XX___,_XX_____,
+ __XX____,___XX___,_XX_____,
+ __XX____,__XXX___,_XX_____,
+ __XX____,__XX____,_XX_____,
+ __XX____,XXX_____,_XX_____,
+ __XX___X,X_______,________,
+ ________,________,________,
+};
+
+/* char: 巨 code:0xBEDE */
+static GUI_CONST_STORAGE unsigned char acBEDE[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,___XX___,
+ ____XXXX,XXXXXXXX,XXXXXX__,
+ ____XX__,________,________,
+ ____XX__,________,________,
+ ____XX__,________,________,
+ ____XX__,________,________,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ____XX__,________,__XX____,
+ ____XX__,________,__XX____,
+ ____XX__,________,__XX____,
+ ____XX__,________,__XX____,
+ ____XX__,________,__XX____,
+ ____XX__,________,__XX____,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ____XX__,________,__XX____,
+ ____XX__,________,________,
+ ____XX__,________,________,
+ ____XX__,________,________,
+ ____XX__,________,____XX__,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ ____XX__,________,________,
+ ________,________,________,
+};
+
+/* char: 控 code:0xBFD8 */
+static GUI_CONST_STORAGE unsigned char acBFD8[72] = {
+ ________,________,________,
+ _____XX_,________,________,
+ _____XXX,______XX,________,
+ _____XX_,_______X,XX______,
+ _____XX_,_______X,X_______,
+ _____XX_,__XXXXXX,XXXXXXX_,
+ _XXXXXXX,XXXX____,____XXX_,
+ _____XX_,_XXX_XX_,____XX__,
+ _____XX_,_____XXX,XXX_____,
+ _____XX_,____XXX_,__XXX___,
+ _____XX_,XX_XXX__,___XXX__,
+ _____XXX,X_XX____,____XX__,
+ ____XXXX,_XX_____,____XX__,
+ _XXXXXX_,__XXXXXX,XXXXX___,
+ _XXX_XX_,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ __XXXXX_,________,________,
+ ____XX__,________,________,
+ ________,________,________,
+};
+
+/* char: 括 code:0xC0A8 */
+static GUI_CONST_STORAGE unsigned char acC0A8[72] = {
+ ________,________,________,
+ _____XX_,________,________,
+ _____XXX,________,________,
+ _____XXX,________,_XXXXX__,
+ _____XXX,___XXXXX,XX______,
+ _____XXX,_______X,X_______,
+ _XXXXXXX,XXX____X,X_______,
+ _____XXX,_______X,X_______,
+ _____XXX,_______X,X____XX_,
+ _____XXX,_XXXXXXX,XXXXXXXX,
+ _____XXX,_______X,X_______,
+ _____XXX,XXX____X,X_______,
+ _____XXX,X______X,X_______,
+ __XXXXXX,___XXXXX,XXXXXX__,
+ _XXX_XXX,___XX___,___XXX__,
+ _____XXX,___XX___,___XXX__,
+ _____XXX,___XX___,___XXX__,
+ _____XXX,___XX___,___XXX__,
+ _____XXX,___XX___,___XXX__,
+ _____XXX,___XXXXX,XXXXXX__,
+ __XX_XXX,___XX___,___XXX__,
+ ___XXXXX,___XX___,___XXX__,
+ _____XX_,________,________,
+ ________,________,________,
+};
+
+/* char: 流 code:0xC1F7 */
+static GUI_CONST_STORAGE unsigned char acC1F7[72] = {
+ ________,________,________,
+ ________,____XX__,________,
+ ___XX___,_____XXX,________,
+ ____XXX_,______XX,____XX__,
+ _____XXX,XXXXXXXX,XXXXXXX_,
+ _____XXX,_____XXX,________,
+ ________,XX__XXX_,________,
+ _______X,X___XX__,_XX_____,
+ _XXX___X,X__XX___,__XX____,
+ __XXX__X,X_XX___X,XXXXX___,
+ ___XX_XX,_XXXXXXX,___XX___,
+ ___XX_XX,________,___XX___,
+ ______XX,_XXX_XXX,_XXX____,
+ _____XX_,_XXX_XX_,_XX_____,
+ _____XX_,_XXX_XX_,_XX_____,
+ ____XX__,_XXX_XX_,_XX_____,
+ _XXXXX__,_XXX_XX_,_XX_____,
+ ___XXX__,_XX__XX_,_XX_____,
+ ___XXX__,_XX__XX_,_XX__XX_,
+ ___XXX__,XXX__XX_,_XX__XX_,
+ ___XXX__,XX___XX_,_XX__XXX,
+ ___XXX_X,X____XX_,_XXXXXX_,
+ _____XXX,_____XX_,________,
+ ________,________,________,
+};
+
+/* char: 码 code:0xC2EB */
+static GUI_CONST_STORAGE unsigned char acC2EB[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,___XX___,
+ _XXXXXXX,XXXXXXXX,XXXXXX__,
+ _____XX_,________,___XX___,
+ ____XXX_,____XXX_,___XX___,
+ ____XX__,____XXX_,___XX___,
+ ____XX__,____XX__,__XXX___,
+ ____XX__,____XX__,__XXX___,
+ ___XXXXX,XX__XX__,__XX____,
+ ___XXX_X,XX__XX__,__XX____,
+ __XXXX_X,XX__XX__,__XX____,
+ __XXXX_X,XX_XXXXX,XXXXXXX_,
+ _XXXXX_X,XX__XX__,_____XX_,
+ ___XXX_X,XX______,_____XX_,
+ ___XXX_X,XX______,_____XX_,
+ ___XXX_X,XXXXXXXX,XXXXXXX_,
+ ___XXXXX,XX______,____XXX_,
+ ___XXX_X,XX______,____XX__,
+ ___XXX_X,X_______,____XX__,
+ ___XXX__,________,XX__XX__,
+ ________,________,_XXXXX__,
+ ________,________,__XXX___,
+ ________,________,________,
+};
+
+/* char: 满 code:0xC2FA */
+static GUI_CONST_STORAGE unsigned char acC2FA[72] = {
+ ________,________,________,
+ ________,____XX__,XX______,
+ ___XX___,____XX__,XX______,
+ ____XXX_,____XX__,XX______,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ _____XX_,____XX__,XX______,
+ ________,____XX__,XX______,
+ _XX___XX,________,________,
+ __XXX_XX,XXXXXXXX,XXXXXXX_,
+ ___XX_XX,____XX__,XX______,
+ ___XXXX_,____XX__,XX______,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ _____XX_,XX__XX__,XX__XX__,
+ _____XX_,XX__XX__,XX__XX__,
+ ____XX__,XX__XXX_,XX__XX__,
+ ____XX__,XX__XXXX,XXX_XX__,
+ __XXXX__,XX_XX_XX,X_XXXX__,
+ ___XXX__,XX_XX__X,X_XXXX__,
+ ___XXX__,XXXX__XX,____XX__,
+ ___XXX__,XXX__XX_,____XX__,
+ ___XXX__,XX______,____XX__,
+ ___XXX__,XX______,__XXXX__,
+ ________,XX______,___XX___,
+ ________,________,________,
+};
+
+/* char: 门 code:0xC3C5 */
+static GUI_CONST_STORAGE unsigned char acC3C5[72] = {
+ ________,________,________,
+ ________,________,________,
+ ______XX,________,________,
+ ______XX,X_______,________,
+ _______X,XX_XXXXX,XXXXXX__,
+ _______X,XX______,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,________,___XXX__,
+ ____XX__,_______X,XX_XXX__,
+ ____XX__,________,_XXXX___,
+ ____XX__,________,__XX____,
+ ________,________,________,
+};
+
+/* char: 密 code:0xC3DC */
+static GUI_CONST_STORAGE unsigned char acC3DC[72] = {
+ ________,________,________,
+ ________,__XX____,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ___XXXXX,XXXXXXXX,XXXXXXX_,
+ ___XX___,_XX_____,____XX__,
+ __XXX___,__XXX___,XX_XX___,
+ __XX____,XX_XX__X,XX______,
+ ________,XX_XX_XX,X_______,
+ _____XX_,XX__XXX_,__XXX___,
+ ____XX__,XX_XXX__,XX_XXX__,
+ ___XXX__,XXXX____,XX__XX__,
+ _______X,XXX_____,XX__XX__,
+ ____XXXX,XXXXXXXX,XX______,
+ _XXXX___,________,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ _____XXX,___XX___,__XXX___,
+ _____XX_,___XX___,__XX____,
+ _____XX_,___XX___,__XX____,
+ _____XX_,___XX___,__XX____,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ________,________,__XX____,
+ ________,________,________,
+};
+
+/* char: 面 code:0xC3E6 */
+static GUI_CONST_STORAGE unsigned char acC3E6[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,_____XX_,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,
+ ________,__XXX___,________,
+ ________,__XX____,________,
+ ________,__XX____,________,
+ ___XXXXX,XXXXXXXX,XXXXXX__,
+ ___XXX__,_XX___XX,___XXX__,
+ ___XXX__,_XX___XX,___XXX__,
+ ___XXX__,_XX___XX,___XXX__,
+ ___XXX__,_XXXXXXX,___XXX__,
+ ___XXX__,_XX___XX,___XXX__,
+ ___XXX__,_XX___XX,___XXX__,
+ ___XXX__,_XX___XX,___XXX__,
+ ___XXX__,_XX___XX,___XXX__,
+ ___XXX__,_XXXXXXX,___XXX__,
+ ___XXX__,_XX___XX,___XXX__,
+ ___XXX__,_XX___XX,___XXX__,
+ ___XXX__,_XX___XX,___XXX__,
+ ___XXXXX,XXXXXXXX,XXXXXX__,
+ ___XXX__,________,___XXX__,
+ ___XX___,________,___XX___,
+ ________,________,________,
+};
+
+/* char: 秒 code:0xC3EB */
+static GUI_CONST_STORAGE unsigned char acC3EB[72] = {
+ ________,________,________,
+ ________,________,XX______,
+ ________,XXX_____,XX______,
+ ____XXXX,XX______,XX______,
+ __XXX_XX,________,XX______,
+ ______XX,________,XX______,
+ ______XX,____XXX_,XX_XX___,
+ ______XX,____XXX_,XX__XX__,
+ _XXXXXXX,XXX_XX__,XX__XXX_,
+ _____XXX,____XX__,XX___XX_,
+ _____XXX,___XXX__,XX___XX_,
+ _____XXX,XX_XX___,XX______,
+ ____XXXX,XXXXX___,XX__XX__,
+ ____XXXX,XXXX____,XX_XXXX_,
+ ___XX_XX,________,XX_XXX__,
+ __XX__XX,________,XXXXX___,
+ __XX__XX,________,_XXX____,
+ _XX___XX,________,XXX_____,
+ ______XX,_______X,XX______,
+ ______XX,______XX,X_______,
+ ______XX,____XXX_,________,
+ ______XX,_XXXX___,________,
+ ________,XX______,________,
+ ________,________,________,
+};
+
+/* char: 默 code:0xC4AC */
+static GUI_CONST_STORAGE unsigned char acC4AC[72] = {
+ ________,________,________,
+ ________,_______X,X_______,
+ ________,_______X,XX______,
+ __XXXXXX,XXXX___X,X_XX____,
+ __XX__XX,_XXX___X,X__XXX__,
+ __XX__XX,XXXX___X,X__XXX__,
+ __XXXXXX,XXXX___X,X___XX__,
+ __XXXXXX,_XXX___X,X____XX_,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ __XX__XX,_XXX___X,XX______,
+ ______XX,_______X,XXX_____,
+ ______XX,_______X,XXX_____,
+ __XXXXXX,XXXX___X,XXX_____,
+ ______XX,_______X,XXX_____,
+ ______XX,_______X,XXX_____,
+ ______XX,XXXX__XX,XXX_____,
+ ___XXXXX,X_____XX,__XX____,
+ __XXX___,__XX__XX,__XX____,
+ _______X,X__XXXXX,__XXX___,
+ _____XX_,XX_XXXX_,___XX___,
+ __XX_XXX,XX__XX__,___XXX__,
+ __XX_XXX,___XX___,____XXX_,
+ __XX____,__XX____,____XX__,
+ ________,_XX_____,________,
+};
+
+/* char: 目 code:0xC4BF */
+static GUI_CONST_STORAGE unsigned char acC4BF[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,_XX_____,
+ ______XX,XXXXXXXX,XXXX____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XXX____,
+ ________,________,_XX_____,
+ ________,________,________,
+};
+
+/* char: 能 code:0xC4DC */
+static GUI_CONST_STORAGE unsigned char acC4DC[72] = {
+ ________,________,________,
+ ______XX,________,________,
+ ______XX,X_____XX,X_______,
+ _____XXX,______XX,___XX___,
+ _____XX_,_XX___XX,__XXXX__,
+ ____XX__,__XX__XX,_XXX____,
+ __XXX___,XXXXX_XX,XX______,
+ __XXXXXX,X__XX_XX,________,
+ ________,___XX_XX,_____XX_,
+ ___XXXXX,XXXX__XX,_____XX_,
+ ___XXX__,_XXX__XX,XXXXXXX_,
+ ___XXX__,_XXX____,________,
+ ___XXXXX,XXXX_XX_,________,
+ ___XXX__,_XXX__XX,___XX___,
+ ___XXX__,_XXX__XX,__XXXX__,
+ ___XXX__,_XXX__XX,_XXX____,
+ ___XXXXX,XXXX__XX,XX______,
+ ___XXX__,_XXX__XX,_____XX_,
+ ___XXX__,_XXX__XX,_____XX_,
+ ___XXX__,_XXX__XX,_____XX_,
+ ___XXX__,_XXX__XX,_____XXX,
+ ___XXX_X,XXXX__XX,XXXXXXX_,
+ ___XX___,_XX_____,________,
+ ________,________,________,
+};
+
+/* char: 配 code:0xC5E4 */
+static GUI_CONST_STORAGE unsigned char acC5E4[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,___XX___,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ _____XX_,XX______,____XX__,
+ _____XX_,XX______,____XX__,
+ __XXXXXX,XXXXX___,____XX__,
+ __XXXXX_,XXXXX___,____XX__,
+ __XXXXX_,XXXXX___,____XX__,
+ __XXXXX_,XXXXX___,____XX__,
+ __XXXXX_,XXXXX_XX,XXXXXX__,
+ __XXXXX_,XXXXX_XX,____XX__,
+ __XXXX__,XXXXX_XX,________,
+ __XXX___,XXXXX_XX,________,
+ __XXX___,__XXX_XX,________,
+ __XXXXXX,XXXXX_XX,________,
+ __XXX___,__XXX_XX,_____XX_,
+ __XXX___,__XXX_XX,_____XX_,
+ __XXX___,__XXX_XX,_____XX_,
+ __XXX___,__XXX_XX,_____XX_,
+ __XXXXXX,XXXXX_XX,_____XXX,
+ __XXX___,__XXX_XX,XXXXXXX_,
+ __XXX___,__XX____,________,
+ ________,________,________,
+};
+
+/* char: 坡 code:0xC6C2 */
+static GUI_CONST_STORAGE unsigned char acC6C2[72] = {
+ ________,________,________,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,__XXXXXX,XXXXXXX_,
+ _____XX_,__XXX__X,X___XXX_,
+ _____XX_,__XXX__X,X__XX___,
+ _XXXXXXX,XXXXX__X,X_______,
+ _____XX_,__XXX__X,X_______,
+ _____XX_,__XXX__X,X_______,
+ _____XX_,__XXXXXX,XXXXX___,
+ _____XX_,__XX_XX_,__XXX___,
+ _____XX_,__XX_XX_,__XX____,
+ _____XX_,__XX__XX,__XX____,
+ _____XXX,XXXX__XX,_XXX____,
+ ____XXXX,__XX___X,XXX_____,
+ _XXXX___,_XX____X,XX______,
+ __XX____,_XX____X,XX______,
+ ________,XX____XX,_XXX____,
+ ________,XX__XXX_,__XXXX__,
+ _______X,X_XXX___,___XXXXX,
+ ______XX,_XX_____,________,
+ ________,________,________,
+};
+
+/* char: 启 code:0xC6F4 */
+static GUI_CONST_STORAGE unsigned char acC6F4[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,____XX__,________,
+ ________,____XXX_,________,
+ _____XXX,XXXXXXXX,XXXXX___,
+ _____XX_,________,__XXX___,
+ _____XX_,________,__XXX___,
+ _____XX_,________,__XXX___,
+ _____XX_,________,__XXX___,
+ _____XXX,XXXXXXXX,XXXXX___,
+ _____XX_,________,__XXX___,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ _____XX_,XXXXXXXX,XXXXX___,
+ _____XX_,XX______,__XXX___,
+ _____XX_,XX______,__XXX___,
+ ____XXX_,XX______,__XXX___,
+ ____XX__,XX______,__XXX___,
+ ____XX__,XX______,__XXX___,
+ ___XXX__,XX______,__XXX___,
+ ___XX___,XXXXXXXX,XXXXX___,
+ __XX____,XX______,__XXX___,
+ _XX_____,XX______,__XX____,
+ ________,________,________,
+};
+
+/* char: 器 code:0xC6F7 */
+static GUI_CONST_STORAGE unsigned char acC6F7[72] = {
+ ________,________,________,
+ ________,________,________,
+ ____XXXX,XXX__XXX,XXXXX___,
+ ____XXX_,_XXX_XXX,__XXX___,
+ ____XXX_,_XXX_XXX,__XXX___,
+ ____XXX_,_XXX_XXX,__XXX___,
+ ____XXX_,_XXX_XXX,__XXX___,
+ ____XXXX,XXXX_XXX,XXXXX___,
+ ____XXX_,_XXXXXXX,XXXXX___,
+ ____XX__,__XXX___,XXX_XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,_XX___XX,________,
+ ________,XX_____X,X_______,
+ _______X,X_______,XX______,
+ _____XXX,________,_XXXX___,
+ ____XXXX,XXXX_XXX,XXXXXXX_,
+ __XXXXX_,_XXX_XX_,__XXX___,
+ _____XX_,_XXX_XX_,__XXX___,
+ _____XX_,_XXX_XX_,__XXX___,
+ _____XX_,_XXX_XX_,__XXX___,
+ _____XXX,XXXX_XXX,XXXXX___,
+ _____XX_,_XXX_XX_,__XXX___,
+ ____XX__,_XX__XX_,__XX____,
+ ________,________,________,
+};
+
+/* char: 前 code:0xC7B0 */
+static GUI_CONST_STORAGE unsigned char acC7B0[72] = {
+ ________,________,________,
+ _______X,X_______,________,
+ ________,XX_____X,XX______,
+ ________,XXX____X,X_______,
+ ________,_XX___XX,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,________,________,
+ ________,________,__XX____,
+ ____XXXX,XXXX__XX,__XXX___,
+ ____XX__,__XX__XX,X_XXX___,
+ ____XX__,__XX__XX,__XXX___,
+ ____XX__,__XX__XX,__XXX___,
+ ____XXXX,XXXX__XX,__XXX___,
+ ____XX__,__XX__XX,__XXX___,
+ ____XX__,__XX__XX,__XXX___,
+ ____XX__,__XX__XX,__XXX___,
+ ____XXXX,XXXX__XX,__XXX___,
+ ____XX__,__XX__XX,__XXX___,
+ ____XX__,__XX__XX,X_XXX___,
+ ____XX__,__XX____,__XXX___,
+ ____XX__,__XX___X,X_XXX___,
+ ____XX_X,XXXX____,XXXX____,
+ ____XX__,_XX_____,_XX_____,
+ ________,________,________,
+};
+
+/* char: 请 code:0xC7EB */
+static GUI_CONST_STORAGE unsigned char acC7EB[72] = {
+ ________,________,________,
+ ________,______XX,________,
+ ____XX__,______XX,X_______,
+ ____XXX_,______XX,X___XX__,
+ ____XXX_,XXXXXXXX,XXXXXXX_,
+ _____XX_,______XX,X__XX___,
+ ________,__XXXXXX,XXXXXX__,
+ ________,______XX,X_______,
+ ________,______XX,X____XX_,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,__XXXXXX,XXXXX___,
+ ____XXX_,__XXX___,___XX___,
+ ____XXX_,__XXXXXX,XXXXX___,
+ ____XXX_,__XXX___,___XX___,
+ ____XXX_,XXXXX___,___XX___,
+ ____XXXX,X_XXXXXX,XXXXX___,
+ ____XXXX,__XXX___,___XX___,
+ ____XXXX,__XXX___,___XX___,
+ ____XXX_,__XXX___,___XX___,
+ ________,__XXX___,XXXXX___,
+ ________,__XX____,__XX____,
+ ________,________,________,
+};
+
+/* char: 求 code:0xC7F3 */
+static GUI_CONST_STORAGE unsigned char acC7F3[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XXX_X,XX______,
+ ________,___XX___,XXX_____,
+ ________,___XX___,_XXX____,
+ ________,___XX___,_XX_XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ____XXX_,___XXX__,___XX___,
+ _____XXX,___XXXX_,__XXXX__,
+ ______XX,X__XXXX_,_XXX____,
+ _______X,X__XX_XX,XX______,
+ ________,___XX_XX,X_______,
+ ________,_XXXX_XX,X_______,
+ ________,XX_XX__X,XX______,
+ ______XX,X__XX___,XXX_____,
+ ____XXX_,___XX___,XXXX____,
+ _XXXXX__,___XX___,_XXXXX__,
+ __XX____,___XX___,__XXXXXX,
+ _______X,XX_XX___,____XX__,
+ ________,_XXXX___,________,
+ ________,__XX____,________,
+ ________,________,________,
+};
+
+/* char: 驱 code:0xC7FD */
+static GUI_CONST_STORAGE unsigned char acC7FD[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ __XXXXXX,XX______,_____XX_,
+ ________,XXX_XXXX,XXXXXXX_,
+ ________,XX__XX__,________,
+ ____XX__,XX__XX__,________,
+ ____XX__,XX__XX__,____XX__,
+ ___XXX__,XX__XXXX,____XXX_,
+ ___XXX__,XX__XX_X,X__XXX__,
+ ___XX___,XX__XX__,XX_XX___,
+ ___XX__X,XX__XX__,_XXXX___,
+ ___XX__X,XX__XX__,_XXX____,
+ ___XXXXX,XXXXXX__,_XXX____,
+ ___XX___,__XXXX__,_XXXX___,
+ ________,_XXXXX__,XX_XXX__,
+ ________,XXX_XX__,XX__XX__,
+ _____XXX,XXX_XX_X,X___XX__,
+ _XXXXX__,_XX_XXXX,________,
+ ________,_XX_XX__,________,
+ ________,XXX_XX__,_____XX_,
+ ______XX,XX__XXXX,XXXXXXXX,
+ _______X,X___XX__,________,
+ ________,________,________,
+};
+
+/* char: 取 code:0xC8A1 */
+static GUI_CONST_STORAGE unsigned char acC8A1[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,___XX___,________,
+ _XXXXXXX,XXXXX___,________,
+ ____XX__,_XX_____,________,
+ ____XX__,_XXXXXXX,XXXXXX__,
+ ____XX__,_XX__XX_,___XX___,
+ ____XXXX,XXX__XX_,___XX___,
+ ____XX__,_XX__XX_,___XX___,
+ ____XX__,_XX___XX,__XXX___,
+ ____XX__,_XX___XX,__XX____,
+ ____XX__,_XX___XX,__XX____,
+ ____XXXX,XXX___XX,_XXX____,
+ ____XX__,_XX____X,XXX_____,
+ ____XX__,_XX____X,XXX_____,
+ ____XX__,_XXXXX_X,XX______,
+ ____XX_X,XXXX____,XX______,
+ _XXXXXXX,_XX____X,XXX_____,
+ __XXX___,_XX___XX,_XXX____,
+ ________,_XX__XXX,__XXXX__,
+ ________,_XX_XXX_,___XXXXX,
+ ________,_XXXX___,____XX__,
+ ________,_XXX____,________,
+ ________,________,________,
+};
+
+/* char: 认 code:0xC8CF */
+static GUI_CONST_STORAGE unsigned char acC8CF[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,______XX,________,
+ _____XX_,______XX,X_______,
+ _____XXX,______XX,________,
+ ______XX,______XX,________,
+ ______XX,______XX,________,
+ ______XX,______XX,X_______,
+ ________,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _XXXXXXX,______XX,X_______,
+ _____XX_,_____XXX,X_______,
+ _____XX_,_____XXX,X_______,
+ _____XX_,_____XX_,XX______,
+ _____XX_,_____XX_,XX______,
+ _____XX_,__XXXXX_,XX______,
+ _____XX_,_XX_XX__,_XX_____,
+ _____XX_,XX_XXX__,_XXX____,
+ _____XXX,X__XX___,__XX____,
+ _____XXX,__XX____,__XXX___,
+ _____XXX,_XX_____,___XXXX_,
+ _____XXX,XX______,____XXX_,
+ ______XX,________,________,
+ ________,________,________,
+};
+
+/* char: 入 code:0xC8EB */
+static GUI_CONST_STORAGE unsigned char acC8EB[72] = {
+ ________,________,________,
+ ________,________,________,
+ _______X,XX______,________,
+ ________,_XXX____,________,
+ ________,__XXX___,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,__XXXXX_,________,
+ ________,__XX_XX_,________,
+ ________,__XX_XX_,________,
+ ________,_XXX__XX,________,
+ ________,_XX___XX,________,
+ ________,XX____XX,X_______,
+ _______X,XX_____X,XX______,
+ _______X,X_______,XX______,
+ ______XX,________,XXX_____,
+ _____XXX,________,_XXX____,
+ ____XXX_,________,__XXXX__,
+ ___XX___,________,___XXXXX,
+ __XX____,________,____XX__,
+ _XX_____,________,________,
+ ________,________,________,
+};
+
+/* char: 设 code:0xC9E8 */
+static GUI_CONST_STORAGE unsigned char acC9E8[72] = {
+ ________,________,________,
+ ________,________,________,
+ ____XX__,___XXXXX,XXX_____,
+ _____XX_,___XXX__,_XXX____,
+ _____XXX,___XXX__,_XX_____,
+ _____XXX,___XXX__,_XX_____,
+ ________,___XX___,_XX_____,
+ ________,___XX___,_XX_____,
+ ________,__XX____,_XX_____,
+ _XXXXXXX,_XXX____,_XXXXXXX,
+ _____XX_,XX______,__XX____,
+ _____XXX,X_XXXXXX,XXXXX___,
+ _____XX_,___XX___,__XX____,
+ _____XX_,____XX__,_XXX____,
+ _____XX_,____XX__,_XXX____,
+ _____XX_,_____XX_,_XX_____,
+ _____XX_,_XX__XX_,XX______,
+ _____XX_,XX____XX,XX______,
+ _____XXX,X_____XX,X_______,
+ _____XXX,_____XXX,XXX_____,
+ _____XXX,___XXX__,_XXXX___,
+ ________,_XXX____,___XXXX_,
+ _______X,XX______,________,
+ ________,________,________,
+};
+
+/* char: 生 code:0xC9FA */
+static GUI_CONST_STORAGE unsigned char acC9FA[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ ______XX,___XXX__,________,
+ _____XXX,___XXX__,________,
+ _____XXX,___XXX__,________,
+ _____XX_,___XXX__,___XX___,
+ ____XXXX,XXXXXXXX,XXXXXX__,
+ ____XX__,___XXX__,________,
+ ____XX__,___XXX__,________,
+ ___XX___,___XXX__,________,
+ ___XX___,___XXX__,________,
+ __XX____,___XXX__,________,
+ _XX_____,___XXX__,__XX____,
+ _____XXX,XXXXXXXX,XXXXX___,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,____XXX_,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 失 code:0xCAA7 */
+static GUI_CONST_STORAGE unsigned char acCAA7[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ ______XX,___XXX__,________,
+ ______XX,___XXX__,________,
+ _____XXX,___XXX__,__XX____,
+ _____XXX,XXXXXXXX,XXXXX___,
+ _____XX_,___XXX__,________,
+ ____XX__,___XXX__,________,
+ ____XX__,___XX___,________,
+ ___XX___,___XX___,________,
+ ________,___XX___,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,___XXXX_,________,
+ ________,__XXXXX_,________,
+ ________,__XX__XX,________,
+ ________,_XXX__XX,________,
+ ________,_XX____X,X_______,
+ ________,XX______,XX______,
+ _______X,X_______,_XXX____,
+ ______XX,________,__XXX___,
+ ____XXX_,________,___XXXXX,
+ __XXX___,________,____XX__,
+ ________,________,________,
+};
+
+/* char: 石 code:0xCAAF */
+static GUI_CONST_STORAGE unsigned char acCAAF[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,__XXX___,________,
+ ________,__XX____,________,
+ ________,_XXX____,________,
+ ________,_XX_____,________,
+ ________,XX______,________,
+ _______X,XX______,__XX____,
+ _______X,XXXXXXXX,XXXXX___,
+ ______XX,XX______,__XX____,
+ _____XXX,XX______,__XX____,
+ ____XXX_,XX______,__XX____,
+ ___XX___,XX______,__XX____,
+ __XX____,XX______,__XX____,
+ _XX_____,XX______,__XX____,
+ ________,XX______,__XX____,
+ ________,XXXXXXXX,XXXX____,
+ ________,XX______,__XX____,
+ ________,XX______,__XX____,
+ _______X,X_______,________,
+ ________,________,________,
+};
+
+/* char: 使 code:0xCAB9 */
+static GUI_CONST_STORAGE unsigned char acCAB9[72] = {
+ ________,________,________,
+ _______X,X_____XX,________,
+ ______XX,X_____XX,X_______,
+ ______XX,X_____XX,X_______,
+ ______XX,______XX,X_______,
+ _____XXX,XXXXXXXX,XXXXXXX_,
+ _____XX_,______XX,X_______,
+ ____XXX_,______XX,X_______,
+ ____XXXX,__XXXXXX,XXXXXX__,
+ ___XXXX_,__XX__XX,X__XXX__,
+ ___XXXX_,__XX__XX,X__XXX__,
+ __XX_XX_,__XX__XX,X__XXX__,
+ _XX__XX_,__XXXXXX,XXXXXX__,
+ _____XX_,_XXX__XX,X__XXX__,
+ _____XX_,__XX__XX,________,
+ _____XX_,___XX_XX,________,
+ _____XX_,____XXXX,________,
+ _____XX_,_____XXX,________,
+ _____XX_,_____XXX,________,
+ _____XX_,____XXXX,XX______,
+ _____XX_,___XXX__,XXXX____,
+ _____XX_,_XXX____,_XXXXXXX,
+ _____XXX,XX______,____XX__,
+ ________,________,________,
+};
+
+/* char: 试 code:0xCAD4 */
+static GUI_CONST_STORAGE unsigned char acCAD4[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,_______X,X_______,
+ ___XX___,_______X,XXXXX___,
+ ____XX__,________,XX_XXX__,
+ ____XXX_,________,XX__XX__,
+ _____XX_,________,XX___XX_,
+ _____XX_,XXXXXXXX,XXXXXXXX,
+ ________,________,XX______,
+ ________,________,XX______,
+ _XXXXXXX,______XX,XX______,
+ _____XX_,XXXXXXXX,XX______,
+ _____XX_,____XX__,XX______,
+ _____XX_,____XX__,XXX_____,
+ _____XX_,____XX__,_XX_____,
+ _____XX_,____XX__,_XX_____,
+ _____XX_,_XX_XX__,_XXX____,
+ _____XX_,XX__XX_X,X_XX__XX,
+ _____XXX,X___XXXX,__XXX_XX,
+ _____XXX,_XXXX___,___XX_XX,
+ ____XXXX,_XX_____,___XXXX_,
+ _____XX_,________,____XXXX,
+ ________,________,______XX,
+ ________,________,________,
+};
+
+/* char: 首 code:0xCAD7 */
+static GUI_CONST_STORAGE unsigned char acCAD7[72] = {
+ ________,________,________,
+ _______X,X______X,X_______,
+ ________,XX_____X,XX______,
+ ________,XXX____X,X_______,
+ ________,_XX___XX,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,__XXX___,________,
+ ________,__XX____,________,
+ ________,__XX____,________,
+ ______XX,XXXXXXXX,XXXX____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ________,________,________,
+};
+
+/* char: 输 code:0xCAE4 */
+static GUI_CONST_STORAGE unsigned char acCAE4[72] = {
+ ________,________,________,
+ ________,______XX,________,
+ ____XXX_,______XX,X_______,
+ ____XXX_,_____XXX,X_______,
+ ____XX__,_____XX_,XX______,
+ _XXXXXXX,XXX_XXX_,_XX_____,
+ ___XXX__,____XX__,__XX____,
+ ___XX___,___XX___,_XXXXX__,
+ ___XXXXX,_XXXXXXX,XXXXXXX_,
+ __XXX_XX,XX______,________,
+ __XX__XX,__XXXXXX,____XX__,
+ _XXXXXXX,XXXX__XX,_XX_XX__,
+ ______XX,__XX__XX,_XX_XX__,
+ ______XX,__XXXXXX,_XX_XX__,
+ ______XX,__XX__XX,_XX_XX__,
+ ______XX,XXXX__XX,_XX_XX__,
+ ___XXXXX,__XXXXXX,_XX_XX__,
+ _XXX__XX,__XX__XX,_XX_XX__,
+ ______XX,__XX__XX,_XX_XX__,
+ ______XX,__XX__XX,____XX__,
+ _____XXX,__XX__XX,____XX__,
+ _____XXX,__XXXXXX,__XXXX__,
+ _____XXX,__XX_XX_,___XX___,
+ ________,________,________,
+};
+
+/* char: 术 code:0xCAF5 */
+static GUI_CONST_STORAGE unsigned char acCAF5[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XXX_X,X_______,
+ ________,___XXX__,XXX_____,
+ ________,___XXX__,_XXX____,
+ ________,___XXX__,__XX____,
+ ________,___XXX__,__XXXX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,__XXXXX_,________,
+ ________,__XXXXX_,________,
+ ________,_XXXXXXX,________,
+ ________,_XXXXXXX,________,
+ ________,XXXXXX_X,X_______,
+ _______X,XX_XXX_X,X_______,
+ _______X,X__XXX__,XX______,
+ ______XX,___XXX__,XXX_____,
+ _____XX_,___XXX__,_XXXX___,
+ ____XX__,___XXX__,__XXXX__,
+ ___XX___,___XXX__,___XXXX_,
+ __XX____,___XXX__,____XX__,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XX___,________,
+ ________,________,________,
+};
+
+/* char: 数 code:0xCAFD */
+static GUI_CONST_STORAGE unsigned char acCAFD[72] = {
+ ________,________,________,
+ _______X,X______X,X_______,
+ ___XX__X,X__XX__X,XX______,
+ ____XX_X,X__XX__X,X_______,
+ ____XXXX,X_XX__XX,X_______,
+ ____XX_X,XXX___XX,________,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ______XX,X____XXX,___XX___,
+ _____XXX,XXX__XXX,___XX___,
+ _____XXX,X_XX_XXX,___XX___,
+ ____XX_X,X_XXXXXX,__XXX___,
+ __XXX__X,X___XXXX,__XXX___,
+ _XX____X,X______X,X_XXX___,
+ ______XX,X______X,X_XX____,
+ _XXXXXXX,XXXXX__X,X_XX____,
+ _____XXX,__XX___X,XXXX____,
+ _____XX_,__XX____,XXX_____,
+ ____XXXX,_XX_____,XXX_____,
+ _______X,XXXX___X,XXXX____,
+ _______X,XXXXX_XX,X_XXX___,
+ _____XXX,___XXXXX,___XXXX_,
+ ___XXX__,___XXX__,____XXX_,
+ _XXX____,__XX____,________,
+ ________,________,________,
+};
+
+/* char: 司 code:0xCBBE */
+static GUI_CONST_STORAGE unsigned char acCBBE[72] = {
+ ________,________,________,
+ ________,________,________,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ________,________,___XX___,
+ ________,________,___XX___,
+ ________,________,___XX___,
+ ________,________,___XX___,
+ __XXXXXX,XXXXXXXX,X__XX___,
+ ________,________,___XX___,
+ ________,________,___XX___,
+ _____XXX,XXXXXXX_,___XX___,
+ _____XX_,____XXX_,___XX___,
+ _____XX_,____XXX_,___XX___,
+ _____XX_,____XXX_,___XX___,
+ _____XX_,____XXX_,___XX___,
+ _____XX_,____XXX_,___XX___,
+ _____XXX,XXXXXXX_,___XX___,
+ _____XX_,____XXX_,___XX___,
+ _____XX_,____XX__,___XX___,
+ ________,________,___XX___,
+ ________,_______X,X_XXX___,
+ ________,________,XXXXX___,
+ ________,________,__XX____,
+ ________,________,________,
+};
+
+/* char: 苏 code:0xCBD5 */
+static GUI_CONST_STORAGE unsigned char acCBD5[72] = {
+ ________,________,________,
+ ________,XX____XX,________,
+ ________,XX____XX,X_______,
+ ________,XX____XX,X___XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,XX____XX,X_______,
+ ________,XX____XX,X_______,
+ ________,XXXXX_XX,X_______,
+ ________,__XXX___,________,
+ ________,__XXX___,________,
+ ___XXXXX,XXXXXXXX,XXXX____,
+ ________,__XX____,XXX_____,
+ ________,__XX____,XXX_____,
+ ________,__XX____,XXX_____,
+ ____XX__,_XXX____,XX_XXX__,
+ ____XX__,_XX_____,XX__XXX_,
+ ___XXX__,_XX_____,XX__XXX_,
+ __XXX___,XX______,XX___XX_,
+ _______X,XX______,XX______,
+ _______X,X______X,XX______,
+ _____XXX,___XXXXX,XX______,
+ ____XX__,_____XXX,X_______,
+ ___XX___,________,________,
+ ________,________,________,
+};
+
+/* char: 特 code:0xCCD8 */
+static GUI_CONST_STORAGE unsigned char acCCD8[72] = {
+ ________,________,________,
+ ________,______XX,X_______,
+ ______XX,______XX,X_______,
+ ______XX,______XX,X__XX___,
+ __XXX_XX,__XXXXXX,XXXXXX__,
+ __XXX_XX,______XX,X_______,
+ __XX__XX,______XX,X_______,
+ __XXXXXX,XXX___XX,X_______,
+ __XX__XX,______XX,X____XX_,
+ _XX___XX,_XXXXXXX,XXXXXXXX,
+ _XX___XX,________,_XX_____,
+ ______XX,_XX_____,_XXX____,
+ ______XX,XX______,_XX__XX_,
+ _____XXX,_XXXXXXX,XXXXXXXX,
+ ___XXXXX,________,_XX_____,
+ _XXXX_XX,___XX___,_XX_____,
+ __XX__XX,___XXX__,_XX_____,
+ ______XX,____XXX_,_XX_____,
+ ______XX,____XX__,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,_____XXX,_XX_____,
+ ______XX,_______X,XXX_____,
+ ______XX,________,XX______,
+ ________,________,________,
+};
+
+/* char: 条 code:0xCCF5 */
+static GUI_CONST_STORAGE unsigned char acCCF5[72] = {
+ ________,________,________,
+ ________,XX______,________,
+ ________,XXX_____,________,
+ _______X,XXXXXXXX,XXX_____,
+ _______X,XX______,XXX_____,
+ ______XX,_XX____X,XX______,
+ _____XX_,_XX___XX,X_______,
+ ____XX__,__XX_XXX,________,
+ ___XX___,___XXXX_,________,
+ __XX____,___XXXX_,________,
+ ________,_XXX_XXX,X_______,
+ ______XX,XX__XX_X,XXXXXXXX,
+ __XXXXX_,____XX__,_XXXXX__,
+ ________,____XX__,__XX____,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ________,____XX__,________,
+ _______X,XX__XX_X,X_______,
+ _______X,XX__XX__,XX______,
+ ______XX,X___XX__,_XXX____,
+ _____XXX,____XX__,__XXX___,
+ ____XX__,XX_XXX__,___XXX__,
+ ___XX___,_XXXXX__,___XXX__,
+ ________,___XX___,________,
+ ________,________,________,
+};
+
+/* char: 维 code:0xCEAC */
+static GUI_CONST_STORAGE unsigned char acCEAC[72] = {
+ ________,________,________,
+ ________,____XX__,________,
+ _____XXX,____XXX_,XX______,
+ _____XX_,____XX__,XXX_____,
+ ____XXX_,___XXX__,_XX_____,
+ ____XX__,___XX___,_XX_____,
+ ____XX__,XXXXXXXX,XXXXXXX_,
+ ___XX__X,XXXXX___,XX______,
+ ___XX__X,X_XXX___,XX______,
+ __XX_XXX,XXXXX___,XX__XX__,
+ __XXXXXX,_XXXXXXX,XXXXXXX_,
+ __XX_XXX,XX_XX___,XX______,
+ _____XX_,___XX___,XX______,
+ ____XX__,___XX___,XX______,
+ ___XX__X,XX_XX___,XX__XX__,
+ __XXXXXX,___XXXXX,XXXXXXX_,
+ __XXX___,___XX___,XX______,
+ ________,_XXXX___,XX______,
+ ______XX,XX_XX___,XX______,
+ ___XXXX_,___XX___,XX___XX_,
+ __XXX___,___XXXXX,XXXXXXXX,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,________,________,
+};
+
+/* char: 未 code:0xCEB4 */
+static GUI_CONST_STORAGE unsigned char acCEB4[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,__XXXXX_,________,
+ ________,_XXXXXX_,________,
+ ________,_XXXXXXX,________,
+ ________,XXXXXX_X,X_______,
+ _______X,XX_XXX_X,XX______,
+ ______XX,X__XXX__,XXX_____,
+ _____XXX,___XXX__,_XXX____,
+ ____XX__,___XXX__,__XXXX__,
+ ___XX___,___XXX__,___XXXX_,
+ _XXX____,___XXX__,____XX__,
+ ________,___XXX__,________,
+ ________,___XX___,________,
+ ________,________,________,
+};
+
+/* char: 位 code:0xCEBB */
+static GUI_CONST_STORAGE unsigned char acCEBB[72] = {
+ ________,________,________,
+ ______XX,____XX__,________,
+ ______XX,X____XX_,________,
+ ______XX,_____XXX,________,
+ _____XXX,______XX,________,
+ _____XX_,______XX,____XX__,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ ____XXX_,________,________,
+ ____XXXX,________,__XX____,
+ ___XXXX_,________,__XXX___,
+ ___XXXX_,__XX____,_XXX____,
+ __XX_XX_,___XX___,_XXX____,
+ __XX_XX_,___XX___,_XX_____,
+ _XX__XX_,___XXX__,_XX_____,
+ _____XX_,___XXX__,_XX_____,
+ _____XX_,___XXX__,XX______,
+ _____XX_,____XX__,XX______,
+ _____XX_,________,XX______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X____XX_,
+ _____XXX,XXXXXXXX,XXXXXXXX,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ ________,________,________,
+};
+
+/* char: 温 code:0xCEC2 */
+static GUI_CONST_STORAGE unsigned char acCEC2[72] = {
+ ________,________,________,
+ ________,________,________,
+ ___XX___,________,__XX____,
+ ____XXX_,_XXXXXXX,XXXX____,
+ _____XX_,_XX_____,__XX____,
+ ________,_XX_____,__XX____,
+ _______X,XXXXXXXX,XXXX____,
+ _XX____X,XXX_____,__XX____,
+ __XXX_XX,_XX_____,__XX____,
+ ___XX_XX,_XX_____,__XX____,
+ ___XX_XX,_XXXXXXX,XXXX____,
+ _____XX_,_XX_____,__XX____,
+ _____XX_,________,________,
+ _____XX_,XXXXXXXX,XXXXXX__,
+ _____XX_,XX__XX_X,X__XX___,
+ ____XX__,XX__XX_X,X__XX___,
+ _XXXXX__,XX__XX_X,X__XX___,
+ ___XXX__,XX__XX_X,X__XX___,
+ ___XXX__,XX__XX_X,X__XX___,
+ ___XXX__,XX__XX_X,X__XX___,
+ ___XXX__,XX__XX_X,X__XXXX_,
+ ___XXXXX,XXXXXXXX,XXXXXXXX,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 误 code:0xCEF3 */
+static GUI_CONST_STORAGE unsigned char acCEF3[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,__XXXXXX,XXXXX___,
+ ____XXX_,__XXX___,___XX___,
+ _____XX_,__XXX___,___XX___,
+ _____XXX,__XXX___,___XX___,
+ ________,__XXX___,___XX___,
+ ________,__XXXXXX,XXXXX___,
+ ________,__XXX___,________,
+ _XXXXXXX,________,________,
+ _____XX_,_XXXXXXX,XXXXXX__,
+ _____XX_,______XX,________,
+ _____XX_,______XX,________,
+ _____XX_,______XX,________,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ _____XX_,_XX___XX,X_______,
+ _____XX_,XX___XXX,XX______,
+ _____XXX,X____XX_,XX______,
+ _____XXX,____XXX_,_XX_____,
+ _____XXX,___XXX__,__XX____,
+ _____XX_,__XXX___,__XXXX__,
+ ________,_XXX____,___XXXXX,
+ _______X,XX______,________,
+ ________,________,________,
+};
+
+/* char: 息 code:0xCFA2 */
+static GUI_CONST_STORAGE unsigned char acCFA2[72] = {
+ ________,________,________,
+ ________,__XXX___,________,
+ ________,__XX____,________,
+ ______XX,XXXXXXXX,XXXX____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXXX____,
+ ______XX,__XX____,_XX_____,
+ ________,___XX___,________,
+ _______X,X__XXX__,________,
+ ____XX_X,XX__XXX_,___XX___,
+ ____XX_X,XX__XXX_,____XX__,
+ ____XX_X,XX______,_XX_XXX_,
+ ___XXX_X,XX______,_XX__XX_,
+ __XXXX__,XX______,XXX__XX_,
+ ________,XXXXXXXX,XXX_____,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 限 code:0xCFDE */
+static GUI_CONST_STORAGE unsigned char acCFDE[72] = {
+ ________,________,________,
+ ________,________,________,
+ ___XXXXX,XX______,___XX___,
+ ___XX__X,X__XXXXX,XXXXX___,
+ ___XX__X,X__XX___,__XXX___,
+ ___XX__X,X__XX___,__XXX___,
+ ___XX_XX,___XX___,__XXX___,
+ ___XX_XX,___XXXXX,XXXXX___,
+ ___XX_XX,___XX___,__XXX___,
+ ___XX_XX,___XX___,__XXX___,
+ ___XX__X,X__XX___,__XXX___,
+ ___XX__X,X__XXXXX,XXXXX___,
+ ___XX___,XX_XX_XX,__XX____,
+ ___XX___,XX_XX_XX,___XXX__,
+ ___XX___,XX_XX_XX,___XXX__,
+ ___XXX_X,XX_XX__X,XXXX____,
+ ___XXXXX,XX_XX__X,XX______,
+ ___XX_XX,___XX___,XX______,
+ ___XX___,___XX__X,XXX_____,
+ ___XX___,___XXXXX,_XXX____,
+ ___XX___,___XXX__,__XXXX__,
+ ___XX___,___XX___,___XXXX_,
+ ___XX___,___XX___,________,
+ ________,________,________,
+};
+
+/* char: 项 code:0xCFEE */
+static GUI_CONST_STORAGE unsigned char acCFEE[72] = {
+ ________,________,________,
+ ________,________,____XX__,
+ ________,_XXXXXXX,XXXXXXX_,
+ ________,XX_____X,X_______,
+ _XXXXXXX,XXX____X,X_______,
+ _____XX_,______XX,________,
+ _____XX_,___XXXXX,XXXXXX__,
+ _____XX_,___XX___,____XX__,
+ _____XX_,___XX___,____XX__,
+ _____XX_,___XX__X,XX__XX__,
+ _____XX_,___XX__X,XX__XX__,
+ _____XX_,___XX__X,XX__XX__,
+ _____XX_,___XX__X,XX__XX__,
+ _____XX_,___XX__X,XX__XX__,
+ _____XX_,XXXXX__X,X___XX__,
+ _____XXX,X__XX__X,X___XX__,
+ __XXXX__,___XX__X,XX__XX__,
+ __XX____,______XX,XXX_____,
+ ________,______XX,__XXX___,
+ ________,_____XXX,___XXX__,
+ ________,____XXX_,____XXX_,
+ ________,__XXX___,_____XX_,
+ ________,XXX_____,_____XX_,
+ ________,________,________,
+};
+
+/* char: 消 code:0xCFFB */
+static GUI_CONST_STORAGE unsigned char acCFFB[72] = {
+ ________,________,________,
+ ________,_______X,X_______,
+ ____XX__,_XX____X,X_______,
+ ____XXX_,__XX___X,X__XXXX_,
+ _____XXX,___XX__X,X__XX___,
+ _____XXX,___XXX_X,X_XX____,
+ ________,XX_XXX_X,XXX_____,
+ _XX_____,XX_____X,XXX_____,
+ __XXX___,XXXXXXXX,XXXXXX__,
+ ___XXX_X,X_XX____,___XX___,
+ ___XXX_X,X_XX____,___XX___,
+ _______X,X_XXXXXX,XXXXX___,
+ ______XX,__XX____,___XX___,
+ ______XX,__XX____,___XX___,
+ ______XX,__XX____,___XX___,
+ _____XX_,__XXXXXX,XXXXX___,
+ __XXXXX_,__XX____,___XX___,
+ ____XXX_,__XX____,___XX___,
+ ____XXX_,__XX____,___XX___,
+ ____XXX_,__XX____,___XX___,
+ ____XXX_,__XX____,___XX___,
+ ____XXX_,__XX____,XXXXX___,
+ _____XX_,__XX____,__XX____,
+ ________,________,________,
+};
+
+/* char: 校 code:0xD0A3 */
+static GUI_CONST_STORAGE unsigned char acD0A3[72] = {
+ ________,________,________,
+ _____XX_,_____XX_,________,
+ _____XXX,______XX,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ _XXXXXXX,XXX_____,________,
+ _____XX_,_____XX_,_XX_____,
+ _____XX_,____XXX_,__XXX___,
+ ____XXXX,X__XXX__,___XXX__,
+ ____XXXX,XX_XX___,____XXX_,
+ ____XXX_,XXXXX___,__XXXXX_,
+ ___XXXX_,_XX_XX__,_XXXX___,
+ ___XXXX_,____XX__,_XXX____,
+ ___XXXX_,____XX__,XXX_____,
+ __XX_XX_,_____XX_,XXX_____,
+ _XX__XX_,_____XXX,XX______,
+ _____XX_,______XX,X_______,
+ _____XX_,______XX,X_______,
+ _____XX_,_____XXX,XXX_____,
+ _____XX_,___XXX__,_XXXX___,
+ _____XX_,_XXX____,__XXXXXX,
+ _____XXX,XX______,____XX__,
+ ________,________,________,
+};
+
+/* char: 斜 code:0xD0B1 */
+static GUI_CONST_STORAGE unsigned char acD0B1[72] = {
+ ________,________,________,
+ _______X,X_______,__XX____,
+ _______X,XX______,__XXX___,
+ ______XX,XX______,__XXX___,
+ ______XX,_XXX__XX,__XXX___,
+ _____XX_,__XXX__X,XXXXX___,
+ ____XXX_,___XXX_X,XXXXX___,
+ ____XX__,__XXXX__,__XXX___,
+ ___XXXXX,XXXXX___,__XXX___,
+ __XX___X,X____XX_,__XXX___,
+ _XX____X,X_____XX,X_XXX___,
+ _______X,X__XX__X,X_XXX___,
+ __XXXXXX,XXXXXX_X,X_XXX___,
+ _______X,X_______,__XXXXX_,
+ ____XX_X,X_______,__XXXXX_,
+ ____XXXX,X_XXXXXX,XXXXX___,
+ ____XX_X,X_XXX___,__XXX___,
+ ___XXX_X,X__XXX__,__XXX___,
+ ___XX__X,X__XXX__,__XXX___,
+ __XX___X,X___XX__,__XXX___,
+ __XX___X,X_______,__XXX___,
+ _XX__XXX,X_______,__XXX___,
+ ______XX,________,__XX____,
+ ________,________,________,
+};
+
+/* char: 信 code:0xD0C5 */
+static GUI_CONST_STORAGE unsigned char acD0C5[72] = {
+ ________,________,________,
+ ________,_____XX_,________,
+ ______XX,X_____XX,________,
+ ______XX,______XX,X_______,
+ ______XX,______XX,X___XX__,
+ _____XX_,XXXXXXXX,XXXXXXX_,
+ _____XX_,________,________,
+ ____XX__,________,___XX___,
+ ____XXX_,_XXXXXXX,XXXXXX__,
+ ___XXXX_,________,________,
+ ___XXXX_,________,___XX___,
+ __XX_XX_,_XXXXXXX,XXXXXX__,
+ _XX__XX_,________,________,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ _____XX_,__XXXXXX,XXXXXX__,
+ _____XX_,__XX____,___XX___,
+ _____XX_,__XX____,___XX___,
+ _____XX_,__XX____,___XX___,
+ _____XX_,__XX____,___XX___,
+ _____XX_,__XXXXXX,XXXXX___,
+ _____XX_,__XX____,___XX___,
+ _____XX_,__XX____,___XX___,
+ ________,________,________,
+};
+
+/* char: 行 code:0xD0D0 */
+static GUI_CONST_STORAGE unsigned char acD0D0[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ______XX,X_______,________,
+ ______XX,___XXXXX,XXXXXX__,
+ _____XX_,________,________,
+ ____XX__,XX______,________,
+ ___XX__X,XX______,________,
+ __XX__XX,X_______,_____XX_,
+ ______XX,_XXXXXXX,XXXXXXX_,
+ _____XXX,________,XX______,
+ ____XXXX,________,XX______,
+ ____XXXX,________,XX______,
+ ___XX_XX,________,XX______,
+ __XX__XX,________,XX______,
+ ______XX,________,XX______,
+ ______XX,________,XX______,
+ ______XX,________,XX______,
+ ______XX,________,XX______,
+ ______XX,________,XX______,
+ ______XX,___XXXXX,XX______,
+ ______XX,______XX,XX______,
+ ________,_______X,X_______,
+ ________,________,________,
+};
+
+/* char: 性 code:0xD0D4 */
+static GUI_CONST_STORAGE unsigned char acD0D4[72] = {
+ ________,________,________,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,XX______,
+ _____XX_,___XX__X,X_______,
+ _____XX_,___XXX_X,X_______,
+ _____XX_,__XXX__X,X_______,
+ _____XXX,__XXX__X,X___XX__,
+ _____XXX,XXXXXXXX,XXXXXXX_,
+ ___XXXXX,XXXX___X,X_______,
+ __XX_XX_,_XX____X,X_______,
+ __XX_XX_,_XX____X,X_______,
+ _XXX_XX_,XX_____X,X_______,
+ _____XX_,XX_____X,X_______,
+ _____XX_,__XXXXXX,XXXXXX__,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X_______,
+ _____XX_,_______X,X____XX_,
+ _____XX_,XXXXXXXX,XXXXXXXX,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ ________,________,________,
+};
+
+/* char: 修 code:0xD0DE */
+static GUI_CONST_STORAGE unsigned char acD0DE[72] = {
+ ________,________,________,
+ ______XX,______XX,________,
+ ______XX,_____XXX,________,
+ _____XXX,_____XX_,________,
+ _____XX_,____XXXX,XXXXXX__,
+ _____XX_,____XXX_,___XXX__,
+ ____XX_X,XX_XX_XX,__XXX___,
+ ____XXXX,XXXX___X,XXXX____,
+ ___XXXXX,XX______,XXX_____,
+ ___XXXXX,XX_____X,XXX_____,
+ __XXXXXX,XX___XXX,__XXXX__,
+ __XXXXXX,XX_XXX__,_XX_XXX_,
+ _XX_XXXX,XXXX___X,XXX_____,
+ ____XXXX,XX____XX,X_______,
+ ____XXXX,XX___XX_,__XXX___,
+ ____XXXX,XX_XXX__,_XXX____,
+ ____XXXX,XX______,XXX__XX_,
+ ____XXXX,XX____XX,X___XXX_,
+ ____XXXX,XX__XXX_,___XXX__,
+ ____XXX_,__XXX___,_XXX____,
+ ____XXX_,_______X,XX______,
+ ____XXX_,___XXXXX,________,
+ ____XX__,XXXX____,________,
+ ________,________,________,
+};
+
+/* char: 需 code:0xD0E8 */
+static GUI_CONST_STORAGE unsigned char acD0E8[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,__XX____,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ________,____XX__,________,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ ___XX___,____XX__,____XX__,
+ __XXX_XX,XXX_XXXX,XXXXX___,
+ ________,____XX__,________,
+ _____XXX,XXX_XXXX,XXX_____,
+ ________,____XX__,________,
+ ________,________,________,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ ________,__XX____,________,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ____XXX_,_XXX__XX,___XX___,
+ ____XXX_,_XXX__XX,___XX___,
+ ____XXX_,_XXX__XX,___XX___,
+ ____XXX_,_XXX__XX,___XX___,
+ ____XXX_,_XXX__XX,___XX___,
+ ____XXX_,_XXX__XX,___XX___,
+ ____XXX_,_XX_____,_XXXX___,
+ ____XX__,________,__XX____,
+ ________,________,________,
+};
+
+/* char: 选 code:0xD1A1 */
+static GUI_CONST_STORAGE unsigned char acD1A1[72] = {
+ ________,________,________,
+ ________,______XX,________,
+ ___XX___,______XX,________,
+ ____XX__,__XX__XX,________,
+ _____XX_,__XXX_XX,________,
+ _____XX_,__XX__XX,________,
+ ________,__XXXXXX,XXXXX___,
+ ________,_XX___XX,________,
+ ________,_XX___XX,________,
+ _XXXXXXX,XX____XX,____XX__,
+ _____XXX,XXXXXXXX,XXXXXX__,
+ _____XX_,____XX_X,XX______,
+ _____XX_,____XX_X,XX______,
+ _____XX_,____XX_X,XX______,
+ _____XX_,___XXX_X,XX______,
+ _____XX_,___XX__X,XX______,
+ _____XX_,__XXX__X,XX__XX__,
+ _____XX_,__XX___X,XX__XX__,
+ ____XXX_,XXX____X,XX__XXX_,
+ __XXX_XX,X_______,XXXXXXX_,
+ _XXX___X,XX______,________,
+ ________,_XXXXXXX,XXXXXXX_,
+ ________,___XXXXX,XXXXXX__,
+ ________,________,________,
+};
+
+/* char: 要 code:0xD2AA */
+static GUI_CONST_STORAGE unsigned char acD2AA[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,_XX___XX,________,
+ ________,_XX___XX,________,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ____XXX_,_XX___XX,__XXX___,
+ ____XXX_,_XX___XX,__XXX___,
+ ____XXX_,_XX___XX,__XXX___,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ____XXX_,_XX_____,__XX____,
+ ________,_XXX____,________,
+ ________,_XX_____,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,XX_____X,XX______,
+ _______X,X_____XX,X_______,
+ ______XX,X_____XX,________,
+ ________,XXXXXXXX,________,
+ ________,____XXXX,XX______,
+ ________,__XXX___,XXXXX___,
+ ______XX,XXX_____,__XXXX__,
+ __XXXXX_,________,____XX__,
+ ________,________,________,
+};
+
+/* char: 页 code:0xD2B3 */
+static GUI_CONST_STORAGE unsigned char acD2B3[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,___XX___,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ ________,__XXX___,________,
+ ________,__XXX___,________,
+ ________,__XX____,_XX_____,
+ _____XXX,XXXXXXXX,XXXX____,
+ _____XXX,________,_XX_____,
+ _____XXX,___XX___,_XX_____,
+ _____XXX,___XXX__,_XX_____,
+ _____XXX,___XX___,_XX_____,
+ _____XXX,___XX___,_XX_____,
+ _____XXX,___XX___,_XX_____,
+ _____XXX,___XX___,_XX_____,
+ _____XXX,___XX___,_XX_____,
+ _____XXX,__XXX___,_XX_____,
+ _____XX_,__XXXXXX,________,
+ ________,_XXX___X,XX______,
+ ________,XXX_____,XXXX____,
+ _______X,XX______,__XXXX__,
+ _____XXX,________,___XXX__,
+ __XXXX__,________,________,
+ ________,________,________,
+};
+
+/* char: 一 code:0xD2BB */
+static GUI_CONST_STORAGE unsigned char acD2BB[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 已 code:0xD2D1 */
+static GUI_CONST_STORAGE unsigned char acD2D1[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,__XX____,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ________,________,_XXX____,
+ ________,________,_XXX____,
+ ________,________,_XXX____,
+ ________,________,_XXX____,
+ ____XX__,________,_XXX____,
+ ____XXX_,________,_XXX____,
+ ____XXXX,XXXXXXXX,XXXX____,
+ ____XXX_,________,_XXX____,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,________,
+ ____XXX_,________,____XX__,
+ ____XXX_,________,____XX__,
+ ____XXX_,________,____XX__,
+ ____XXX_,________,____XX__,
+ ____XXX_,________,____XXX_,
+ _____XXX,XXXXXXXX,XXXXXXX_,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 迎 code:0xD3AD */
+static GUI_CONST_STORAGE unsigned char acD3AD[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,______XX,________,
+ ____XX__,____XXXX,X_______,
+ ____XXX_,_XXXX___,________,
+ _____XX_,_XX____X,XXXXXXX_,
+ ________,_XX____X,X___XX__,
+ ________,_XX____X,X___XX__,
+ ________,_XX____X,X___XX__,
+ _XXXXXXX,_XX____X,X___XX__,
+ _____XX_,_XX____X,X___XX__,
+ _____XX_,_XX____X,X___XX__,
+ _____XX_,_XX____X,X___XX__,
+ _____XX_,_XX__XXX,X___XX__,
+ _____XX_,_XXXXX_X,X___XX__,
+ _____XX_,_XXX___X,XXXXXX__,
+ _____XX_,_XX____X,X__XXX__,
+ _____XX_,_______X,X_______,
+ ___XXXXX,_______X,X_______,
+ _XXX___X,XX_____X,X_______,
+ __XX____,XXXXXXX_,__XXXXXX,
+ ________,___XXXXX,XXXXXX__,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 用 code:0xD3C3 */
+static GUI_CONST_STORAGE unsigned char acD3C3[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,___XX___,
+ ____XXXX,XXXXXXXX,XXXXXX__,
+ ____XXX_,____XX__,___XX___,
+ ____XXX_,____XX__,___XX___,
+ ____XXX_,____XX__,___XX___,
+ ____XXX_,____XX__,___XX___,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ____XXX_,____XX__,___XX___,
+ ____XX__,____XX__,___XX___,
+ ____XX__,____XX__,___XX___,
+ ____XX__,____XX__,___XX___,
+ ____XX__,____XX__,___XX___,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ____XX__,____XX__,___XX___,
+ ____XX__,____XX__,___XX___,
+ ___XXX__,____XX__,___XX___,
+ ___XX___,____XX__,___XX___,
+ ___XX___,___XXX__,___XX___,
+ __XX____,___XXX__,XX_XX___,
+ __XX____,___XXX__,_XXXX___,
+ _XX_____,___XX___,__XX____,
+ ________,________,________,
+};
+
+/* char: 有 code:0xD3D0 */
+static GUI_CONST_STORAGE unsigned char acD3D0[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,__XXX___,________,
+ ________,__XXX___,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,_XXX____,________,
+ ________,XXX_____,________,
+ ________,XX______,________,
+ _______X,XXXXXXXX,XXXX____,
+ _______X,X_______,_XX_____,
+ ______XX,X_______,_XX_____,
+ _____XXX,X_______,_XX_____,
+ ____XX_X,XXXXXXXX,XXX_____,
+ ___XX__X,X_______,_XX_____,
+ __XX___X,X_______,_XX_____,
+ _______X,X_______,_XX_____,
+ _______X,XXXXXXXX,XXX_____,
+ _______X,X_______,_XX_____,
+ _______X,X_______,_XX_____,
+ _______X,X_______,_XX_____,
+ _______X,X_______,_XX_____,
+ _______X,X______X,XXX_____,
+ _______X,X_______,XX______,
+ ________,________,________,
+};
+
+/* char: 跃 code:0xD4BE */
+static GUI_CONST_STORAGE unsigned char acD4BE[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,___XX___,
+ __XXXXXX,XXX_____,_XXXXX__,
+ __XX____,XX__XXXX,XX______,
+ __XX____,XX_____X,X_______,
+ __XX____,XX_____X,X_______,
+ __XX____,XX_____X,X_______,
+ __XX____,XX_____X,X_______,
+ __XXXXXX,XX_____X,X____XX_,
+ __XX_XXX,XXXXXXXX,XXXXXXXX,
+ _____XXX,______XX,XX______,
+ __XXXXXX,______XX,XX______,
+ __XX_XXX,XXX___XX,XX______,
+ __XX_XXX,______XX,_XX_____,
+ __XX_XXX,_____XXX,_XX_____,
+ __XX_XXX,_____XX_,_XX_____,
+ __XX_XXX,____XXX_,__XX____,
+ __XX_XXX,XXX_XX__,__XXX___,
+ __XXXXX_,___XX___,___XX___,
+ _XXXX___,__XX____,___XXXX_,
+ ________,XXX_____,____XXXX,
+ _______X,X_______,________,
+ ________,________,________,
+};
+
+/* char: 载 code:0xD4D8 */
+static GUI_CONST_STORAGE unsigned char acD4D8[72] = {
+ ________,________,________,
+ _______X,X_____XX,________,
+ _______X,X_____XX,________,
+ _______X,X_____XX,_XXX____,
+ ___XXXXX,XXXXX_XX,__XXX___,
+ _______X,X_____XX,___XX___,
+ _______X,X_____XX,________,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ______XX,X_____XX,________,
+ ______XX,___XX_XX,___XX___,
+ _XXXXXXX,XXXXX_XX,___XXX__,
+ _____XX_,______XX,X__XX___,
+ ____XXXX,XX_____X,X_XXX___,
+ ____XX_X,XX_XX__X,X_XX____,
+ ___XXXXX,XXXXXX_X,XXXX____,
+ _______X,XX_____X,XXX_____,
+ _______X,XX______,XX______,
+ _______X,XXXXX__X,XXX_____,
+ __XXXXXX,XX____XX,XXX__XX_,
+ __XXX__X,XX___XXX,_XXX_XX_,
+ _______X,XX__XXX_,__XXXXX_,
+ _______X,XX_XX___,____XXX_,
+ _______X,X_XX____,_____XXX,
+ ________,________,________,
+};
+
+/* char: 择 code:0xD4F1 */
+static GUI_CONST_STORAGE unsigned char acD4F1[72] = {
+ ________,________,________,
+ ______XX,________,___XX___,
+ ______XX,__XXXXXX,XXXXXX__,
+ ______XX,____XX__,__XXX___,
+ ______XX,____XX__,__XX____,
+ ______XX,_____XX_,_XX_____,
+ _XXXXXXX,XXXX__XX,XXX_____,
+ ______XX,______XX,XX______,
+ ______XX,______XX,XXX_____,
+ ______XX,__XXXXX_,_XXXXXXX,
+ ______XX,XXXXX__X,X__XXX__,
+ ______XX,XXX____X,X_______,
+ ____XXXX,_______X,X_______,
+ _XXXX_XX,__XXXXXX,XXXXXX__,
+ __XX__XX,_______X,X_______,
+ ______XX,_______X,X_______,
+ ______XX,_______X,X_______,
+ ______XX,XXXXXXXX,XXXXXXX_,
+ ______XX,_______X,X_______,
+ ______XX,_______X,X_______,
+ __XXXXXX,_______X,X_______,
+ ____XXXX,_______X,X_______,
+ _____XX_,_______X,X_______,
+ ________,________,________,
+};
+
+/* char: 障 code:0xD5CF */
+static GUI_CONST_STORAGE unsigned char acD5CF[72] = {
+ ________,________,________,
+ ________,_____XX_,________,
+ ________,______XX,________,
+ __XXXXXX,X_____XX,X__XX___,
+ __XX__XX,XXXXXXXX,XXXXXX__,
+ __XX__XX,___XX___,_XX_____,
+ __XX__XX,____XX__,_XX_____,
+ __XX_XX_,____XXX_,XX______,
+ __XX_XX_,XXXXXXXX,XXXXXXX_,
+ __XX_XX_,________,________,
+ __XX_XX_,__XXXXXX,XXXXXX__,
+ __XX__XX,__XX____,___XX___,
+ __XX___X,X_XXXXXX,XXXXX___,
+ __XX___X,X_XX____,___XX___,
+ __XX___X,X_XX____,___XX___,
+ __XX___X,X_XXXXXX,XXXXX___,
+ __XXXXXX,X_XX__XX,X__XX___,
+ __XX_XXX,______XX,X____XX_,
+ __XX___X,XXXXXXXX,XXXXXXXX,
+ __XX____,______XX,X_______,
+ __XX____,______XX,X_______,
+ __XX____,______XX,X_______,
+ __XX____,______XX,X_______,
+ ________,________,________,
+};
+
+/* char: 诊 code:0xD5EF */
+static GUI_CONST_STORAGE unsigned char acD5EF[72] = {
+ ________,________,________,
+ ________,______XX,________,
+ ____XX__,_____XXX,________,
+ _____XX_,_____XXX,X_______,
+ _____XXX,____XXXX,X_______,
+ _____XXX,____XX__,XX______,
+ ________,___XXX__,XXX_____,
+ ________,___XX___,_XXX____,
+ ________,__XX____,__XXX___,
+ _XXXXXX_,_XX___XX,X__XXXXX,
+ ____XXX_,XX___XXX,____XX__,
+ ____XXX_,____XXX_,________,
+ ____XXX_,___XXX__,_XX_____,
+ ____XXX_,__XX____,XXXX____,
+ ____XXX_,_______X,XX______,
+ ____XXX_,______XX,X_______,
+ ____XXX_,XX___XX_,____XX__,
+ ____XXXX,X__XXX__,__XXXX__,
+ ____XXXX,_XXX____,_XXXX___,
+ ____XXXX,________,XXX_____,
+ _____XX_,______XX,X_______,
+ ________,___XXXX_,________,
+ ________,_XXX____,________,
+ ________,________,________,
+};
+
+/* char: 整 code:0xD5FB */
+static GUI_CONST_STORAGE unsigned char acD5FB[72] = {
+ ________,________,________,
+ _______X,X______X,X_______,
+ _______X,X______X,X_______,
+ __XXXXXX,XXXXXXXX,X_______,
+ _______X,X_____XX,XXXXXXX_,
+ _______X,X_____XX,___XX___,
+ ___XXXXX,XXXXXXXX,__XXX___,
+ ___XXX_X,X_XXXXXX,X_XXX___,
+ ___XXX_X,X_XXXX_X,X_XX____,
+ ___XXXXX,XXXXX___,XXXX____,
+ ___XXXXX,XXXX____,XXX_____,
+ _____XXX,XXXX___X,XXXX____,
+ ____XX_X,X_XX__XX,__XXXX__,
+ ___XX__X,X_XXXXX_,__XXXXX_,
+ __XXXXXX,XXXXXXXX,XXXXX___,
+ ________,___XXX__,________,
+ ________,___XXX__,_XX_____,
+ _______X,X__XXXXX,XXXX____,
+ _______X,X__XXX__,________,
+ _______X,X__XXX__,________,
+ _______X,X__XXX__,____XX__,
+ __XXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 正 code:0xD5FD */
+static GUI_CONST_STORAGE unsigned char acD5FD[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,____XX__,
+ ___XXXXX,XXXXXXXX,XXXXXXX_,
+ ________,____XX__,________,
+ ________,____XX__,________,
+ ________,____XX__,________,
+ ________,____XX__,________,
+ ______XX,____XX__,________,
+ ______XX,X___XX__,________,
+ ______XX,____XX__,___XX___,
+ ______XX,____XXXX,XXXXXX__,
+ ______XX,____XX__,________,
+ ______XX,____XX__,________,
+ ______XX,____XX__,________,
+ ______XX,____XX__,________,
+ ______XX,____XX__,________,
+ ______XX,____XX__,________,
+ ______XX,____XX__,________,
+ ______XX,____XX__,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,________,________,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 知 code:0xD6AA */
+static GUI_CONST_STORAGE unsigned char acD6AA[72] = {
+ ________,________,________,
+ ________,________,________,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ ____XXX_,________,________,
+ ____XXXX,XXXXX_XX,XXXXXXX_,
+ ____XX_X,X_____XX,____XX__,
+ ___XX__X,X_____XX,____XX__,
+ ___XX__X,X_____XX,____XX__,
+ __XX___X,X_____XX,____XX__,
+ _______X,X__XX_XX,____XX__,
+ _XXXXXXX,XXXXXXXX,____XX__,
+ _______X,X_____XX,____XX__,
+ _______X,X_____XX,____XX__,
+ _______X,XX____XX,____XX__,
+ ______XX,XXX___XX,____XX__,
+ ______XX,__XXX_XX,____XX__,
+ _____XXX,__XXX_XX,XXXXXX__,
+ _____XX_,___XXXXX,____XX__,
+ ____XX__,______XX,____XX__,
+ ___XX___,______XX,____XX__,
+ __XX____,________,________,
+ ________,________,________,
+};
+
+/* char: 至 code:0xD6C1 */
+static GUI_CONST_STORAGE unsigned char acD6C1[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,___XX___,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ ________,__XXX___,________,
+ ________,_XXX____,________,
+ ________,_XX__XXX,________,
+ ________,XX_____X,X_______,
+ _______X,X_______,XXX_____,
+ ______XX,________,_XXXX___,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ____XXXX,X__XXX__,___XX___,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,__XX____,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 置 code:0xD6C3 */
+static GUI_CONST_STORAGE unsigned char acD6C3[72] = {
+ ________,________,________,
+ ________,________,________,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ____XX__,_XX___XX,___XX___,
+ ____XX__,_XX___XX,___XX___,
+ ____XX__,_XX___XX,___XX___,
+ ____XXXX,XXXXXXXX,XXXXX___,
+ ____XX__,___XX___,___XX___,
+ ________,___XX___,___XX___,
+ ___XXXXX,XXXXXXXX,XXXXXX__,
+ ________,___XX___,_XX_____,
+ ______XX,XXXXXXXX,XXXX____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX__XX_,
+ _XXXXXXX,XXXXXXXX,XXXXXXXX,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 制 code:0xD6C6 */
+static GUI_CONST_STORAGE unsigned char acD6C6[72] = {
+ ________,________,________,
+ _______X,X_______,____XX__,
+ _______X,XX______,____XX__,
+ _______X,X_______,____XX__,
+ ____XX_X,X_______,____XX__,
+ ___XXX_X,X__XX___,XXX_XX__,
+ ___XXXXX,XXXXXX__,XX__XX__,
+ ___XX__X,X_______,XX__XX__,
+ __XX___X,X_______,XX__XX__,
+ _XXXXXXX,XXXXXXX_,XX__XX__,
+ _______X,X_______,XX__XX__,
+ _______X,X_______,XX__XX__,
+ ___XXXXX,XXXXXX__,XX__XX__,
+ ___XX__X,X___XX__,XX__XX__,
+ ___XX__X,X___XX__,XX__XX__,
+ ___XX__X,X___XX__,XX__XX__,
+ ___XX__X,X___XX__,XX__XX__,
+ ___XX__X,X___XX__,____XX__,
+ ___XX__X,XXXXXX__,____XX__,
+ ___XX__X,X__XX___,____XX__,
+ _______X,X_______,____XX__,
+ _______X,X_______,_XXXXX__,
+ _______X,X_______,___XX___,
+ ________,________,________,
+};
+
+/* char: 智 code:0xD6C7 */
+static GUI_CONST_STORAGE unsigned char acD6C7[72] = {
+ ________,________,________,
+ _____XX_,________,________,
+ _____XX_,________,________,
+ ____XXXX,XXXXX_XX,XXXXXX__,
+ ____XX__,XX____XX,____XX__,
+ ___XX___,XX____XX,____XX__,
+ ___XX__X,XX____XX,____XX__,
+ __XXXXXX,XXXXXXXX,____XX__,
+ _______X,X_____XX,____XX__,
+ _______X,XXX___XX,____XX__,
+ ______XX,X_XXX_XX,XXXXXX__,
+ _____XXX,___XXXXX,____XX__,
+ ____XXX_,___XX_XX,________,
+ ___XX__X,XXXXXXXX,XXXX____,
+ __XX___X,X_______,_XX_____,
+ _______X,X_______,_XX_____,
+ _______X,XXXXXXXX,XXX_____,
+ _______X,X_______,_XX_____,
+ _______X,X_______,_XX_____,
+ _______X,X_______,_XX_____,
+ _______X,XXXXXXXX,XXXX____,
+ _______X,X_______,_XXX____,
+ ________,________,_XX_____,
+ ________,________,________,
+};
+
+/* char: 中 code:0xD6D0 */
+static GUI_CONST_STORAGE unsigned char acD6D0[72] = {
+ ________,________,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ___XXXXX,XXXXXXXX,XXXXXX__,
+ ___XXX__,___XX___,___XXX__,
+ ___XXX__,___XX___,___XXX__,
+ ___XXX__,___XX___,___XXX__,
+ ___XXX__,___XX___,___XXX__,
+ ___XXX__,___XX___,___XXX__,
+ ___XXX__,___XX___,___XXX__,
+ ___XXXXX,XXXXXXXX,XXXXXX__,
+ ___XXX__,___XX___,___XXX__,
+ ___XX___,___XX___,___XX___,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XX___,________,
+ ________,________,________,
+};
+
+/* char: 重 code:0xD6D8 */
+static GUI_CONST_STORAGE unsigned char acD6D8[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,XXX_____,
+ ________,__XXXXXX,XXXX____,
+ ____XXXX,XXXXX___,________,
+ ________,___XX___,________,
+ __XXXXXX,XXXXXXXX,XXXXXX__,
+ ________,___XX___,________,
+ ________,___XX___,________,
+ _____XXX,XXXXXXXX,XXXX____,
+ _____XXX,___XX___,_XX_____,
+ _____XXX,___XX___,_XX_____,
+ _____XXX,XXXXXXXX,XXX_____,
+ _____XXX,___XX___,_XX_____,
+ _____XXX,___XX___,_XX_____,
+ _____XXX,XXXXXXXX,XXX_____,
+ _____XXX,___XX___,_XX_____,
+ ________,___XX___,__XX____,
+ ___XXXXX,XXXXXXXX,XXXXX___,
+ ________,___XX___,________,
+ ________,___XX___,____XXX_,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 主 code:0xD6F7 */
+static GUI_CONST_STORAGE unsigned char acD6F7[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,_XX_____,________,
+ ________,__XXX___,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,____XX__,___XX___,
+ ___XXXXX,XXXXXXXX,XXXXXX__,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,__XX____,
+ _____XXX,XXXXXXXX,XXXXX___,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,____XX__,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,________,________,
+ ________,________,________,
+};
+
+/* char: 准 code:0xD7BC */
+static GUI_CONST_STORAGE unsigned char acD7BC[72] = {
+ ________,________,________,
+ ________,___XX__X,X_______,
+ ________,___XXX_X,XX______,
+ __XXX___,__XXX___,XX______,
+ ___XXX__,__XX____,XX__XX__,
+ ___XXX_X,X_XXXXXX,XXXXXXX_,
+ ____XX_X,XXXX___X,XX______,
+ ______XX,_XXX___X,XX______,
+ ______XX,XXXX___X,XX______,
+ _____XX_,XXXX___X,XX______,
+ _____XXX,X_XXXXXX,XXXXXX__,
+ _____XXX,__XX___X,XX______,
+ ____XX__,__XX___X,XX______,
+ ___XXX__,__XX___X,XX______,
+ __XXXX__,__XX___X,XX__XX__,
+ ___XXX__,__XXXXXX,XXXXXXX_,
+ ___XX___,__XX___X,XX______,
+ ___XX___,__XX___X,XX______,
+ ___XX___,__XX___X,XX______,
+ ___XX___,__XX___X,XX______,
+ ___XX___,__XXXXXX,XXXXXXX_,
+ ________,__XX____,________,
+ ________,__XX____,________,
+ ________,________,________,
+};
+
+/* char: 自 code:0xD7D4 */
+static GUI_CONST_STORAGE unsigned char acD7D4[72] = {
+ ________,________,________,
+ ________,__XXX___,________,
+ ________,__XXX___,________,
+ ________,__XX____,________,
+ ________,__XX____,________,
+ _____XXX,XXXXXXXX,XXXXX___,
+ _____XX_,________,__XX____,
+ _____XX_,________,__XX____,
+ _____XX_,________,__XX____,
+ _____XX_,________,__XX____,
+ _____XXX,XXXXXXXX,XXXX____,
+ _____XX_,________,__XX____,
+ _____XX_,________,__XX____,
+ _____XX_,________,__XX____,
+ _____XX_,________,__XX____,
+ _____XXX,XXXXXXXX,XXXX____,
+ _____XX_,________,__XX____,
+ _____XX_,________,__XX____,
+ _____XX_,________,__XX____,
+ _____XX_,________,__XX____,
+ _____XXX,XXXXXXXX,XXXX____,
+ _____XX_,________,__XX____,
+ _____XX_,________,__XX____,
+ ________,________,________,
+};
+
+/* char: 字 code:0xD7D6 */
+static GUI_CONST_STORAGE unsigned char acD7D6[72] = {
+ ________,________,________,
+ ________,__XX____,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ____XX__,____XX__,____XX__,
+ ____XXXX,XXXXXXXX,XXXXXXX_,
+ ____XX__,________,___XXX__,
+ ___XXX__,________,___XX___,
+ __XXXXXX,XXXXXXXX,XXXX____,
+ ________,_______X,XXX_____,
+ ________,______XX,X_______,
+ ________,_____XX_,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ _XXXXXXX,XXXXXXXX,XXXXXXX_,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ________,XXXXXX__,________,
+ ________,__XXX___,________,
+ ________,________,________,
+};
+
+/* char: 足 code:0xD7E3 */
+static GUI_CONST_STORAGE unsigned char acD7E3[72] = {
+ ________,________,________,
+ ________,________,________,
+ ________,________,_XX_____,
+ ______XX,XXXXXXXX,XXXX____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,________,_XX_____,
+ ______XX,XXXXXXXX,XXX_____,
+ ______XX,___XXX__,_XX_____,
+ ________,___XXX__,________,
+ ________,___XXX__,________,
+ ______XX,___XXX__,________,
+ _____XXX,___XXXXX,XXXXX___,
+ _____XXX,___XXX__,________,
+ _____XX_,___XXX__,________,
+ ____XXXX,___XXX__,________,
+ ____XXXX,XX_XXX__,________,
+ ____XX__,XXXXXX__,________,
+ ___XX___,_XXXXX__,________,
+ __XX____,___XXXXX,XXXXXXXX,
+ _XX_____,______XX,XXXXXX__,
+ ________,________,________,
+};
+
+static GUI_CONST_STORAGE GUI_CHARINFO Cinfo[235] = {
+ { 10, 10, 2, (unsigned char *)&ac0020 }, /*0: */
+ { 8, 8, 2, (unsigned char *)&ac0021 }, /*1: !*/
+ { 12, 12, 2, (unsigned char *)&ac0022 }, /*2: "*/
+ { 12, 12, 2, (unsigned char *)&ac0023 }, /*3: #*/
+ { 11, 11, 2, (unsigned char *)&ac0024 }, /*4: $*/
+ { 12, 12, 2, (unsigned char *)&ac0025 }, /*5: %*/
+ { 13, 13, 2, (unsigned char *)&ac0026 }, /*6: &*/
+ { 6, 6, 2, (unsigned char *)&ac0027 }, /*7: '*/
+ { 12, 12, 2, (unsigned char *)&ac0028 }, /*8: (*/
+ { 8, 8, 2, (unsigned char *)&ac0029 }, /*9: )*/
+ { 13, 13, 2, (unsigned char *)&ac002A }, /*10: **/
+ { 13, 13, 2, (unsigned char *)&ac002B }, /*11: +*/
+ { 6, 6, 2, (unsigned char *)&ac002C }, /*12: ,*/
+ { 12, 12, 2, (unsigned char *)&ac002D }, /*13: -*/
+ { 6, 6, 2, (unsigned char *)&ac002E }, /*14: .*/
+ { 12, 12, 2, (unsigned char *)&ac002F }, /*15: /*/
+ { 12, 12, 2, (unsigned char *)&ac0030 }, /*16: 0*/
+ { 11, 11, 2, (unsigned char *)&ac0031 }, /*17: 1*/
+ { 11, 11, 2, (unsigned char *)&ac0032 }, /*18: 2*/
+ { 11, 11, 2, (unsigned char *)&ac0033 }, /*19: 3*/
+ { 13, 13, 2, (unsigned char *)&ac0034 }, /*20: 4*/
+ { 11, 11, 2, (unsigned char *)&ac0035 }, /*21: 5*/
+ { 12, 12, 2, (unsigned char *)&ac0036 }, /*22: 6*/
+ { 12, 12, 2, (unsigned char *)&ac0037 }, /*23: 7*/
+ { 12, 12, 2, (unsigned char *)&ac0038 }, /*24: 8*/
+ { 12, 12, 2, (unsigned char *)&ac0039 }, /*25: 9*/
+ { 9, 9, 2, (unsigned char *)&ac003A }, /*26: :*/
+ { 8, 8, 2, (unsigned char *)&ac003B }, /*27: ;*/
+ { 12, 12, 2, (unsigned char *)&ac003C }, /*28: <*/
+ { 12, 12, 2, (unsigned char *)&ac003D }, /*29: =*/
+ { 12, 12, 2, (unsigned char *)&ac003E }, /*30: >*/
+ { 13, 13, 2, (unsigned char *)&ac003F }, /*31: ?*/
+ { 12, 12, 2, (unsigned char *)&ac0040 }, /*32: @*/
+ { 13, 13, 2, (unsigned char *)&ac0041 }, /*33: A*/
+ { 12, 12, 2, (unsigned char *)&ac0042 }, /*34: B*/
+ { 12, 12, 2, (unsigned char *)&ac0043 }, /*35: C*/
+ { 12, 12, 2, (unsigned char *)&ac0044 }, /*36: D*/
+ { 12, 12, 2, (unsigned char *)&ac0045 }, /*37: E*/
+ { 12, 12, 2, (unsigned char *)&ac0046 }, /*38: F*/
+ { 13, 13, 2, (unsigned char *)&ac0047 }, /*39: G*/
+ { 13, 13, 2, (unsigned char *)&ac0048 }, /*40: H*/
+ { 11, 11, 2, (unsigned char *)&ac0049 }, /*41: I*/
+ { 12, 12, 2, (unsigned char *)&ac004A }, /*42: J*/
+ { 12, 12, 2, (unsigned char *)&ac004B }, /*43: K*/
+ { 12, 12, 2, (unsigned char *)&ac004C }, /*44: L*/
+ { 12, 12, 2, (unsigned char *)&ac004D }, /*45: M*/
+ { 13, 13, 2, (unsigned char *)&ac004E }, /*46: N*/
+ { 12, 12, 2, (unsigned char *)&ac004F }, /*47: O*/
+ { 12, 12, 2, (unsigned char *)&ac0050 }, /*48: P*/
+ { 12, 12, 2, (unsigned char *)&ac0051 }, /*49: Q*/
+ { 13, 13, 2, (unsigned char *)&ac0052 }, /*50: R*/
+ { 12, 12, 2, (unsigned char *)&ac0053 }, /*51: S*/
+ { 13, 13, 2, (unsigned char *)&ac0054 }, /*52: T*/
+ { 12, 12, 2, (unsigned char *)&ac0055 }, /*53: U*/
+ { 12, 12, 2, (unsigned char *)&ac0056 }, /*54: V*/
+ { 13, 13, 2, (unsigned char *)&ac0057 }, /*55: W*/
+ { 12, 12, 2, (unsigned char *)&ac0058 }, /*56: X*/
+ { 13, 13, 2, (unsigned char *)&ac0059 }, /*57: Y*/
+ { 12, 12, 2, (unsigned char *)&ac005A }, /*58: Z*/
+ { 11, 11, 2, (unsigned char *)&ac005B }, /*59: [*/
+ { 12, 12, 2, (unsigned char *)&ac005C }, /*60: \*/
+ { 8, 8, 2, (unsigned char *)&ac005D }, /*61: ]*/
+ { 10, 10, 2, (unsigned char *)&ac005E }, /*62: ^*/
+ { 13, 13, 2, (unsigned char *)&ac005F }, /*63: _*/
+ { 8, 8, 2, (unsigned char *)&ac0060 }, /*64: `*/
+ { 13, 13, 2, (unsigned char *)&ac0061 }, /*65: a*/
+ { 12, 12, 2, (unsigned char *)&ac0062 }, /*66: b*/
+ { 11, 11, 2, (unsigned char *)&ac0063 }, /*67: c*/
+ { 12, 12, 2, (unsigned char *)&ac0064 }, /*68: d*/
+ { 12, 12, 2, (unsigned char *)&ac0065 }, /*69: e*/
+ { 12, 12, 2, (unsigned char *)&ac0066 }, /*70: f*/
+ { 12, 12, 2, (unsigned char *)&ac0067 }, /*71: g*/
+ { 12, 12, 2, (unsigned char *)&ac0068 }, /*72: h*/
+ { 11, 11, 2, (unsigned char *)&ac0069 }, /*73: i*/
+ { 10, 10, 2, (unsigned char *)&ac006A }, /*74: j*/
+ { 12, 12, 2, (unsigned char *)&ac006B }, /*75: k*/
+ { 11, 11, 2, (unsigned char *)&ac006C }, /*76: l*/
+ { 13, 13, 2, (unsigned char *)&ac006D }, /*77: m*/
+ { 12, 12, 2, (unsigned char *)&ac006E }, /*78: n*/
+ { 12, 12, 2, (unsigned char *)&ac006F }, /*79: o*/
+ { 12, 12, 2, (unsigned char *)&ac0070 }, /*80: p*/
+ { 12, 12, 2, (unsigned char *)&ac0071 }, /*81: q*/
+ { 12, 12, 2, (unsigned char *)&ac0072 }, /*82: r*/
+ { 11, 11, 2, (unsigned char *)&ac0073 }, /*83: s*/
+ { 11, 11, 2, (unsigned char *)&ac0074 }, /*84: t*/
+ { 12, 12, 2, (unsigned char *)&ac0075 }, /*85: u*/
+ { 12, 12, 2, (unsigned char *)&ac0076 }, /*86: v*/
+ { 13, 13, 2, (unsigned char *)&ac0077 }, /*87: w*/
+ { 12, 12, 2, (unsigned char *)&ac0078 }, /*88: x*/
+ { 12, 12, 2, (unsigned char *)&ac0079 }, /*89: y*/
+ { 11, 11, 2, (unsigned char *)&ac007A }, /*90: z*/
+ { 11, 11, 2, (unsigned char *)&ac007B }, /*91: {*/
+ { 8, 8, 2, (unsigned char *)&ac007C }, /*92: |*/
+ { 8, 8, 2, (unsigned char *)&ac007D }, /*93: }*/
+ { 12, 12, 2, (unsigned char *)&ac007E }, /*94: ~*/
+ { 10, 10, 2, (unsigned char *)&ac007F }, /*95: */
+ { 9, 9, 3, (unsigned char *)&acA1A3 }, /*96: 。*/
+ { 7, 7, 3, (unsigned char *)&acA3AC }, /*97: ,*/
+ { 24, 24, 3, (unsigned char *)&acB0DC }, /*98: 败*/
+ { 23, 23, 3, (unsigned char *)&acB0E6 }, /*99: 版*/
+ { 23, 23, 3, (unsigned char *)&acB0FC }, /*100: 包*/
+ { 24, 24, 3, (unsigned char *)&acB1A3 }, /*101: 保*/
+ { 24, 24, 3, (unsigned char *)&acB1B8 }, /*102: 备*/
+ { 24, 24, 3, (unsigned char *)&acB1BE }, /*103: 本*/
+ { 23, 23, 3, (unsigned char *)&acB1E0 }, /*104: 编*/
+ { 23, 23, 3, (unsigned char *)&acB2BB }, /*105: 不*/
+ { 24, 24, 3, (unsigned char *)&acB2CB }, /*106: 菜*/
+ { 24, 24, 3, (unsigned char *)&acB2CE }, /*107: 参*/
+ { 22, 22, 3, (unsigned char *)&acB2E2 }, /*108: 测*/
+ { 24, 24, 3, (unsigned char *)&acB2E9 }, /*109: 查*/
+ { 23, 23, 3, (unsigned char *)&acB3A3 }, /*110: 常*/
+ { 23, 23, 3, (unsigned char *)&acB3A7 }, /*111: 厂*/
+ { 24, 24, 3, (unsigned char *)&acB3AC }, /*112: 超*/
+ { 24, 24, 3, (unsigned char *)&acB3C9 }, /*113: 成*/
+ { 24, 24, 3, (unsigned char *)&acB3CC }, /*114: 程*/
+ { 22, 22, 3, (unsigned char *)&acB3F6 }, /*115: 出*/
+ { 23, 23, 3, (unsigned char *)&acB4E6 }, /*116: 存*/
+ { 24, 24, 3, (unsigned char *)&acB4ED }, /*117: 错*/
+ { 23, 23, 3, (unsigned char *)&acB5A5 }, /*118: 单*/
+ { 23, 23, 3, (unsigned char *)&acB5AB }, /*119: 但*/
+ { 23, 23, 3, (unsigned char *)&acB5B1 }, /*120: 当*/
+ { 23, 23, 3, (unsigned char *)&acB5C4 }, /*121: 的*/
+ { 23, 23, 3, (unsigned char *)&acB5E7 }, /*122: 电*/
+ { 23, 23, 3, (unsigned char *)&acB6A8 }, /*123: 定*/
+ { 23, 23, 3, (unsigned char *)&acB6AF }, /*124: 动*/
+ { 24, 24, 3, (unsigned char *)&acB6C8 }, /*125: 度*/
+ { 23, 23, 3, (unsigned char *)&acB6CF }, /*126: 断*/
+ { 23, 23, 3, (unsigned char *)&acB6D4 }, /*127: 对*/
+ { 24, 24, 3, (unsigned char *)&acB7A2 }, /*128: 发*/
+ { 23, 23, 3, (unsigned char *)&acB7A7 }, /*129: 阀*/
+ { 24, 24, 3, (unsigned char *)&acB7B5 }, /*130: 返*/
+ { 24, 24, 3, (unsigned char *)&acB8B4 }, /*131: 复*/
+ { 24, 24, 3, (unsigned char *)&acB8C4 }, /*132: 改*/
+ { 23, 23, 3, (unsigned char *)&acB8F1 }, /*133: 格*/
+ { 23, 23, 3, (unsigned char *)&acB9A6 }, /*134: 功*/
+ { 23, 23, 3, (unsigned char *)&acB9AB }, /*135: 公*/
+ { 24, 24, 3, (unsigned char *)&acB9CA }, /*136: 故*/
+ { 24, 24, 3, (unsigned char *)&acB9E6 }, /*137: 规*/
+ { 23, 23, 3, (unsigned char *)&acBAC5 }, /*138: 号*/
+ { 23, 23, 3, (unsigned char *)&acBAF3 }, /*139: 后*/
+ { 23, 23, 3, (unsigned char *)&acBBA4 }, /*140: 护*/
+ { 24, 24, 3, (unsigned char *)&acBBB6 }, /*141: 欢*/
+ { 23, 23, 3, (unsigned char *)&acBBD6 }, /*142: 恢*/
+ { 22, 22, 3, (unsigned char *)&acBBD8 }, /*143: 回*/
+ { 24, 24, 3, (unsigned char *)&acBBF2 }, /*144: 或*/
+ { 23, 23, 3, (unsigned char *)&acBCAD }, /*145: 辑*/
+ { 24, 24, 3, (unsigned char *)&acBCBC }, /*146: 技*/
+ { 23, 23, 3, (unsigned char *)&acBCC6 }, /*147: 计*/
+ { 23, 23, 3, (unsigned char *)&acBCD3 }, /*148: 加*/
+ { 23, 23, 3, (unsigned char *)&acBCEC }, /*149: 检*/
+ { 24, 24, 3, (unsigned char *)&acBCFC }, /*150: 键*/
+ { 23, 23, 3, (unsigned char *)&acBCFE }, /*151: 件*/
+ { 24, 24, 3, (unsigned char *)&acBDAD }, /*152: 江*/
+ { 24, 24, 3, (unsigned char *)&acBDD7 }, /*153: 阶*/
+ { 23, 23, 3, (unsigned char *)&acBEDE }, /*154: 巨*/
+ { 23, 23, 3, (unsigned char *)&acBFD8 }, /*155: 控*/
+ { 24, 24, 3, (unsigned char *)&acC0A8 }, /*156: 括*/
+ { 24, 24, 3, (unsigned char *)&acC1F7 }, /*157: 流*/
+ { 23, 23, 3, (unsigned char *)&acC2EB }, /*158: 码*/
+ { 23, 23, 3, (unsigned char *)&acC2FA }, /*159: 满*/
+ { 22, 22, 3, (unsigned char *)&acC3C5 }, /*160: 门*/
+ { 23, 23, 3, (unsigned char *)&acC3DC }, /*161: 密*/
+ { 24, 24, 3, (unsigned char *)&acC3E6 }, /*162: 面*/
+ { 23, 23, 3, (unsigned char *)&acC3EB }, /*163: 秒*/
+ { 23, 23, 3, (unsigned char *)&acC4AC }, /*164: 默*/
+ { 20, 20, 3, (unsigned char *)&acC4BF }, /*165: 目*/
+ { 24, 24, 3, (unsigned char *)&acC4DC }, /*166: 能*/
+ { 24, 24, 3, (unsigned char *)&acC5E4 }, /*167: 配*/
+ { 24, 24, 3, (unsigned char *)&acC6C2 }, /*168: 坡*/
+ { 21, 21, 3, (unsigned char *)&acC6F4 }, /*169: 启*/
+ { 23, 23, 3, (unsigned char *)&acC6F7 }, /*170: 器*/
+ { 23, 23, 3, (unsigned char *)&acC7B0 }, /*171: 前*/
+ { 23, 23, 3, (unsigned char *)&acC7EB }, /*172: 请*/
+ { 24, 24, 3, (unsigned char *)&acC7F3 }, /*173: 求*/
+ { 24, 24, 3, (unsigned char *)&acC7FD }, /*174: 驱*/
+ { 24, 24, 3, (unsigned char *)&acC8A1 }, /*175: 取*/
+ { 23, 23, 3, (unsigned char *)&acC8CF }, /*176: 认*/
+ { 24, 24, 3, (unsigned char *)&acC8EB }, /*177: 入*/
+ { 24, 24, 3, (unsigned char *)&acC9E8 }, /*178: 设*/
+ { 23, 23, 3, (unsigned char *)&acC9FA }, /*179: 生*/
+ { 24, 24, 3, (unsigned char *)&acCAA7 }, /*180: 失*/
+ { 23, 23, 3, (unsigned char *)&acCAAF }, /*181: 石*/
+ { 24, 24, 3, (unsigned char *)&acCAB9 }, /*182: 使*/
+ { 24, 24, 3, (unsigned char *)&acCAD4 }, /*183: 试*/
+ { 23, 23, 3, (unsigned char *)&acCAD7 }, /*184: 首*/
+ { 23, 23, 3, (unsigned char *)&acCAE4 }, /*185: 输*/
+ { 23, 23, 3, (unsigned char *)&acCAF5 }, /*186: 术*/
+ { 23, 23, 3, (unsigned char *)&acCAFD }, /*187: 数*/
+ { 21, 21, 3, (unsigned char *)&acCBBE }, /*188: 司*/
+ { 23, 23, 3, (unsigned char *)&acCBD5 }, /*189: 苏*/
+ { 24, 24, 3, (unsigned char *)&acCCD8 }, /*190: 特*/
+ { 24, 24, 3, (unsigned char *)&acCCF5 }, /*191: 条*/
+ { 24, 24, 3, (unsigned char *)&acCEAC }, /*192: 维*/
+ { 23, 23, 3, (unsigned char *)&acCEB4 }, /*193: 未*/
+ { 24, 24, 3, (unsigned char *)&acCEBB }, /*194: 位*/
+ { 24, 24, 3, (unsigned char *)&acCEC2 }, /*195: 温*/
+ { 24, 24, 3, (unsigned char *)&acCEF3 }, /*196: 误*/
+ { 23, 23, 3, (unsigned char *)&acCFA2 }, /*197: 息*/
+ { 23, 23, 3, (unsigned char *)&acCFDE }, /*198: 限*/
+ { 23, 23, 3, (unsigned char *)&acCFEE }, /*199: 项*/
+ { 23, 23, 3, (unsigned char *)&acCFFB }, /*200: 消*/
+ { 24, 24, 3, (unsigned char *)&acD0A3 }, /*201: 校*/
+ { 23, 23, 3, (unsigned char *)&acD0B1 }, /*202: 斜*/
+ { 23, 23, 3, (unsigned char *)&acD0C5 }, /*203: 信*/
+ { 23, 23, 3, (unsigned char *)&acD0D0 }, /*204: 行*/
+ { 24, 24, 3, (unsigned char *)&acD0D4 }, /*205: 性*/
+ { 23, 23, 3, (unsigned char *)&acD0DE }, /*206: 修*/
+ { 23, 23, 3, (unsigned char *)&acD0E8 }, /*207: 需*/
+ { 23, 23, 3, (unsigned char *)&acD1A1 }, /*208: 选*/
+ { 23, 23, 3, (unsigned char *)&acD2AA }, /*209: 要*/
+ { 22, 22, 3, (unsigned char *)&acD2B3 }, /*210: 页*/
+ { 23, 23, 3, (unsigned char *)&acD2BB }, /*211: 一*/
+ { 23, 23, 3, (unsigned char *)&acD2D1 }, /*212: 已*/
+ { 24, 24, 3, (unsigned char *)&acD3AD }, /*213: 迎*/
+ { 22, 22, 3, (unsigned char *)&acD3C3 }, /*214: 用*/
+ { 23, 23, 3, (unsigned char *)&acD3D0 }, /*215: 有*/
+ { 24, 24, 3, (unsigned char *)&acD4BE }, /*216: 跃*/
+ { 24, 24, 3, (unsigned char *)&acD4D8 }, /*217: 载*/
+ { 24, 24, 3, (unsigned char *)&acD4F1 }, /*218: 择*/
+ { 24, 24, 3, (unsigned char *)&acD5CF }, /*219: 障*/
+ { 24, 24, 3, (unsigned char *)&acD5EF }, /*220: 诊*/
+ { 23, 23, 3, (unsigned char *)&acD5FB }, /*221: 整*/
+ { 23, 23, 3, (unsigned char *)&acD5FD }, /*222: 正*/
+ { 23, 23, 3, (unsigned char *)&acD6AA }, /*223: 知*/
+ { 23, 23, 3, (unsigned char *)&acD6C1 }, /*224: 至*/
+ { 24, 24, 3, (unsigned char *)&acD6C3 }, /*225: 置*/
+ { 22, 22, 3, (unsigned char *)&acD6C6 }, /*226: 制*/
+ { 22, 22, 3, (unsigned char *)&acD6C7 }, /*227: 智*/
+ { 22, 22, 3, (unsigned char *)&acD6D0 }, /*228: 中*/
+ { 23, 23, 3, (unsigned char *)&acD6D8 }, /*229: 重*/
+ { 23, 23, 3, (unsigned char *)&acD6F7 }, /*230: 主*/
+ { 23, 23, 3, (unsigned char *)&acD7BC }, /*231: 准*/
+ { 21, 21, 3, (unsigned char *)&acD7D4 }, /*232: 自*/
+ { 23, 23, 3, (unsigned char *)&acD7D6 }, /*233: 字*/
+ { 24, 24, 3, (unsigned char *)&acD7E3 }, /*234: 足*/
+};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop139 = {
+ 0xD7E3, /*start :足*/
+ 0xD7E3, /*end :足, len=1*/
+ &Cinfo[ 234 ],
+ (void*)0
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop138 = {
+ 0xD7D6, /*start :字*/
+ 0xD7D6, /*end :字, len=1*/
+ &Cinfo[ 233 ],
+ &Prop139
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop137 = {
+ 0xD7D4, /*start :自*/
+ 0xD7D4, /*end :自, len=1*/
+ &Cinfo[ 232 ],
+ &Prop138
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop136 = {
+ 0xD7BC, /*start :准*/
+ 0xD7BC, /*end :准, len=1*/
+ &Cinfo[ 231 ],
+ &Prop137
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop135 = {
+ 0xD6F7, /*start :主*/
+ 0xD6F7, /*end :主, len=1*/
+ &Cinfo[ 230 ],
+ &Prop136
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop134 = {
+ 0xD6D8, /*start :重*/
+ 0xD6D8, /*end :重, len=1*/
+ &Cinfo[ 229 ],
+ &Prop135
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop133 = {
+ 0xD6D0, /*start :中*/
+ 0xD6D0, /*end :中, len=1*/
+ &Cinfo[ 228 ],
+ &Prop134
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop132 = {
+ 0xD6C6, /*start :制*/
+ 0xD6C7, /*end :智, len=2*/
+ &Cinfo[ 226 ],
+ &Prop133
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop131 = {
+ 0xD6C3, /*start :置*/
+ 0xD6C3, /*end :置, len=1*/
+ &Cinfo[ 225 ],
+ &Prop132
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop130 = {
+ 0xD6C1, /*start :至*/
+ 0xD6C1, /*end :至, len=1*/
+ &Cinfo[ 224 ],
+ &Prop131
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop129 = {
+ 0xD6AA, /*start :知*/
+ 0xD6AA, /*end :知, len=1*/
+ &Cinfo[ 223 ],
+ &Prop130
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop128 = {
+ 0xD5FD, /*start :正*/
+ 0xD5FD, /*end :正, len=1*/
+ &Cinfo[ 222 ],
+ &Prop129
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop127 = {
+ 0xD5FB, /*start :整*/
+ 0xD5FB, /*end :整, len=1*/
+ &Cinfo[ 221 ],
+ &Prop128
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop126 = {
+ 0xD5EF, /*start :诊*/
+ 0xD5EF, /*end :诊, len=1*/
+ &Cinfo[ 220 ],
+ &Prop127
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop125 = {
+ 0xD5CF, /*start :障*/
+ 0xD5CF, /*end :障, len=1*/
+ &Cinfo[ 219 ],
+ &Prop126
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop124 = {
+ 0xD4F1, /*start :择*/
+ 0xD4F1, /*end :择, len=1*/
+ &Cinfo[ 218 ],
+ &Prop125
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop123 = {
+ 0xD4D8, /*start :载*/
+ 0xD4D8, /*end :载, len=1*/
+ &Cinfo[ 217 ],
+ &Prop124
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop122 = {
+ 0xD4BE, /*start :跃*/
+ 0xD4BE, /*end :跃, len=1*/
+ &Cinfo[ 216 ],
+ &Prop123
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop121 = {
+ 0xD3D0, /*start :有*/
+ 0xD3D0, /*end :有, len=1*/
+ &Cinfo[ 215 ],
+ &Prop122
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop120 = {
+ 0xD3C3, /*start :用*/
+ 0xD3C3, /*end :用, len=1*/
+ &Cinfo[ 214 ],
+ &Prop121
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop119 = {
+ 0xD3AD, /*start :迎*/
+ 0xD3AD, /*end :迎, len=1*/
+ &Cinfo[ 213 ],
+ &Prop120
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop118 = {
+ 0xD2D1, /*start :已*/
+ 0xD2D1, /*end :已, len=1*/
+ &Cinfo[ 212 ],
+ &Prop119
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop117 = {
+ 0xD2BB, /*start :一*/
+ 0xD2BB, /*end :一, len=1*/
+ &Cinfo[ 211 ],
+ &Prop118
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop116 = {
+ 0xD2B3, /*start :页*/
+ 0xD2B3, /*end :页, len=1*/
+ &Cinfo[ 210 ],
+ &Prop117
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop115 = {
+ 0xD2AA, /*start :要*/
+ 0xD2AA, /*end :要, len=1*/
+ &Cinfo[ 209 ],
+ &Prop116
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop114 = {
+ 0xD1A1, /*start :选*/
+ 0xD1A1, /*end :选, len=1*/
+ &Cinfo[ 208 ],
+ &Prop115
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop113 = {
+ 0xD0E8, /*start :需*/
+ 0xD0E8, /*end :需, len=1*/
+ &Cinfo[ 207 ],
+ &Prop114
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop112 = {
+ 0xD0DE, /*start :修*/
+ 0xD0DE, /*end :修, len=1*/
+ &Cinfo[ 206 ],
+ &Prop113
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop111 = {
+ 0xD0D4, /*start :性*/
+ 0xD0D4, /*end :性, len=1*/
+ &Cinfo[ 205 ],
+ &Prop112
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop110 = {
+ 0xD0D0, /*start :行*/
+ 0xD0D0, /*end :行, len=1*/
+ &Cinfo[ 204 ],
+ &Prop111
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop109 = {
+ 0xD0C5, /*start :信*/
+ 0xD0C5, /*end :信, len=1*/
+ &Cinfo[ 203 ],
+ &Prop110
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop108 = {
+ 0xD0B1, /*start :斜*/
+ 0xD0B1, /*end :斜, len=1*/
+ &Cinfo[ 202 ],
+ &Prop109
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop107 = {
+ 0xD0A3, /*start :校*/
+ 0xD0A3, /*end :校, len=1*/
+ &Cinfo[ 201 ],
+ &Prop108
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop106 = {
+ 0xCFFB, /*start :消*/
+ 0xCFFB, /*end :消, len=1*/
+ &Cinfo[ 200 ],
+ &Prop107
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop105 = {
+ 0xCFEE, /*start :项*/
+ 0xCFEE, /*end :项, len=1*/
+ &Cinfo[ 199 ],
+ &Prop106
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop104 = {
+ 0xCFDE, /*start :限*/
+ 0xCFDE, /*end :限, len=1*/
+ &Cinfo[ 198 ],
+ &Prop105
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop103 = {
+ 0xCFA2, /*start :息*/
+ 0xCFA2, /*end :息, len=1*/
+ &Cinfo[ 197 ],
+ &Prop104
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop102 = {
+ 0xCEF3, /*start :误*/
+ 0xCEF3, /*end :误, len=1*/
+ &Cinfo[ 196 ],
+ &Prop103
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop101 = {
+ 0xCEC2, /*start :温*/
+ 0xCEC2, /*end :温, len=1*/
+ &Cinfo[ 195 ],
+ &Prop102
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop100 = {
+ 0xCEBB, /*start :位*/
+ 0xCEBB, /*end :位, len=1*/
+ &Cinfo[ 194 ],
+ &Prop101
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop99 = {
+ 0xCEB4, /*start :未*/
+ 0xCEB4, /*end :未, len=1*/
+ &Cinfo[ 193 ],
+ &Prop100
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop98 = {
+ 0xCEAC, /*start :维*/
+ 0xCEAC, /*end :维, len=1*/
+ &Cinfo[ 192 ],
+ &Prop99
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop97 = {
+ 0xCCF5, /*start :条*/
+ 0xCCF5, /*end :条, len=1*/
+ &Cinfo[ 191 ],
+ &Prop98
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop96 = {
+ 0xCCD8, /*start :特*/
+ 0xCCD8, /*end :特, len=1*/
+ &Cinfo[ 190 ],
+ &Prop97
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop95 = {
+ 0xCBD5, /*start :苏*/
+ 0xCBD5, /*end :苏, len=1*/
+ &Cinfo[ 189 ],
+ &Prop96
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop94 = {
+ 0xCBBE, /*start :司*/
+ 0xCBBE, /*end :司, len=1*/
+ &Cinfo[ 188 ],
+ &Prop95
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop93 = {
+ 0xCAFD, /*start :数*/
+ 0xCAFD, /*end :数, len=1*/
+ &Cinfo[ 187 ],
+ &Prop94
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop92 = {
+ 0xCAF5, /*start :术*/
+ 0xCAF5, /*end :术, len=1*/
+ &Cinfo[ 186 ],
+ &Prop93
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop91 = {
+ 0xCAE4, /*start :输*/
+ 0xCAE4, /*end :输, len=1*/
+ &Cinfo[ 185 ],
+ &Prop92
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop90 = {
+ 0xCAD7, /*start :首*/
+ 0xCAD7, /*end :首, len=1*/
+ &Cinfo[ 184 ],
+ &Prop91
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop89 = {
+ 0xCAD4, /*start :试*/
+ 0xCAD4, /*end :试, len=1*/
+ &Cinfo[ 183 ],
+ &Prop90
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop88 = {
+ 0xCAB9, /*start :使*/
+ 0xCAB9, /*end :使, len=1*/
+ &Cinfo[ 182 ],
+ &Prop89
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop87 = {
+ 0xCAAF, /*start :石*/
+ 0xCAAF, /*end :石, len=1*/
+ &Cinfo[ 181 ],
+ &Prop88
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop86 = {
+ 0xCAA7, /*start :失*/
+ 0xCAA7, /*end :失, len=1*/
+ &Cinfo[ 180 ],
+ &Prop87
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop85 = {
+ 0xC9FA, /*start :生*/
+ 0xC9FA, /*end :生, len=1*/
+ &Cinfo[ 179 ],
+ &Prop86
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop84 = {
+ 0xC9E8, /*start :设*/
+ 0xC9E8, /*end :设, len=1*/
+ &Cinfo[ 178 ],
+ &Prop85
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop83 = {
+ 0xC8EB, /*start :入*/
+ 0xC8EB, /*end :入, len=1*/
+ &Cinfo[ 177 ],
+ &Prop84
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop82 = {
+ 0xC8CF, /*start :认*/
+ 0xC8CF, /*end :认, len=1*/
+ &Cinfo[ 176 ],
+ &Prop83
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop81 = {
+ 0xC8A1, /*start :取*/
+ 0xC8A1, /*end :取, len=1*/
+ &Cinfo[ 175 ],
+ &Prop82
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop80 = {
+ 0xC7FD, /*start :驱*/
+ 0xC7FD, /*end :驱, len=1*/
+ &Cinfo[ 174 ],
+ &Prop81
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop79 = {
+ 0xC7F3, /*start :求*/
+ 0xC7F3, /*end :求, len=1*/
+ &Cinfo[ 173 ],
+ &Prop80
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop78 = {
+ 0xC7EB, /*start :请*/
+ 0xC7EB, /*end :请, len=1*/
+ &Cinfo[ 172 ],
+ &Prop79
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop77 = {
+ 0xC7B0, /*start :前*/
+ 0xC7B0, /*end :前, len=1*/
+ &Cinfo[ 171 ],
+ &Prop78
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop76 = {
+ 0xC6F7, /*start :器*/
+ 0xC6F7, /*end :器, len=1*/
+ &Cinfo[ 170 ],
+ &Prop77
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop75 = {
+ 0xC6F4, /*start :启*/
+ 0xC6F4, /*end :启, len=1*/
+ &Cinfo[ 169 ],
+ &Prop76
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop74 = {
+ 0xC6C2, /*start :坡*/
+ 0xC6C2, /*end :坡, len=1*/
+ &Cinfo[ 168 ],
+ &Prop75
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop73 = {
+ 0xC5E4, /*start :配*/
+ 0xC5E4, /*end :配, len=1*/
+ &Cinfo[ 167 ],
+ &Prop74
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop72 = {
+ 0xC4DC, /*start :能*/
+ 0xC4DC, /*end :能, len=1*/
+ &Cinfo[ 166 ],
+ &Prop73
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop71 = {
+ 0xC4BF, /*start :目*/
+ 0xC4BF, /*end :目, len=1*/
+ &Cinfo[ 165 ],
+ &Prop72
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop70 = {
+ 0xC4AC, /*start :默*/
+ 0xC4AC, /*end :默, len=1*/
+ &Cinfo[ 164 ],
+ &Prop71
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop69 = {
+ 0xC3EB, /*start :秒*/
+ 0xC3EB, /*end :秒, len=1*/
+ &Cinfo[ 163 ],
+ &Prop70
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop68 = {
+ 0xC3E6, /*start :面*/
+ 0xC3E6, /*end :面, len=1*/
+ &Cinfo[ 162 ],
+ &Prop69
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop67 = {
+ 0xC3DC, /*start :密*/
+ 0xC3DC, /*end :密, len=1*/
+ &Cinfo[ 161 ],
+ &Prop68
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop66 = {
+ 0xC3C5, /*start :门*/
+ 0xC3C5, /*end :门, len=1*/
+ &Cinfo[ 160 ],
+ &Prop67
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop65 = {
+ 0xC2FA, /*start :满*/
+ 0xC2FA, /*end :满, len=1*/
+ &Cinfo[ 159 ],
+ &Prop66
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop64 = {
+ 0xC2EB, /*start :码*/
+ 0xC2EB, /*end :码, len=1*/
+ &Cinfo[ 158 ],
+ &Prop65
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop63 = {
+ 0xC1F7, /*start :流*/
+ 0xC1F7, /*end :流, len=1*/
+ &Cinfo[ 157 ],
+ &Prop64
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop62 = {
+ 0xC0A8, /*start :括*/
+ 0xC0A8, /*end :括, len=1*/
+ &Cinfo[ 156 ],
+ &Prop63
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop61 = {
+ 0xBFD8, /*start :控*/
+ 0xBFD8, /*end :控, len=1*/
+ &Cinfo[ 155 ],
+ &Prop62
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop60 = {
+ 0xBEDE, /*start :巨*/
+ 0xBEDE, /*end :巨, len=1*/
+ &Cinfo[ 154 ],
+ &Prop61
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop59 = {
+ 0xBDD7, /*start :阶*/
+ 0xBDD7, /*end :阶, len=1*/
+ &Cinfo[ 153 ],
+ &Prop60
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop58 = {
+ 0xBDAD, /*start :江*/
+ 0xBDAD, /*end :江, len=1*/
+ &Cinfo[ 152 ],
+ &Prop59
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop57 = {
+ 0xBCFE, /*start :件*/
+ 0xBCFE, /*end :件, len=1*/
+ &Cinfo[ 151 ],
+ &Prop58
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop56 = {
+ 0xBCFC, /*start :键*/
+ 0xBCFC, /*end :键, len=1*/
+ &Cinfo[ 150 ],
+ &Prop57
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop55 = {
+ 0xBCEC, /*start :检*/
+ 0xBCEC, /*end :检, len=1*/
+ &Cinfo[ 149 ],
+ &Prop56
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop54 = {
+ 0xBCD3, /*start :加*/
+ 0xBCD3, /*end :加, len=1*/
+ &Cinfo[ 148 ],
+ &Prop55
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop53 = {
+ 0xBCC6, /*start :计*/
+ 0xBCC6, /*end :计, len=1*/
+ &Cinfo[ 147 ],
+ &Prop54
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop52 = {
+ 0xBCBC, /*start :技*/
+ 0xBCBC, /*end :技, len=1*/
+ &Cinfo[ 146 ],
+ &Prop53
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop51 = {
+ 0xBCAD, /*start :辑*/
+ 0xBCAD, /*end :辑, len=1*/
+ &Cinfo[ 145 ],
+ &Prop52
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop50 = {
+ 0xBBF2, /*start :或*/
+ 0xBBF2, /*end :或, len=1*/
+ &Cinfo[ 144 ],
+ &Prop51
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop49 = {
+ 0xBBD8, /*start :回*/
+ 0xBBD8, /*end :回, len=1*/
+ &Cinfo[ 143 ],
+ &Prop50
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop48 = {
+ 0xBBD6, /*start :恢*/
+ 0xBBD6, /*end :恢, len=1*/
+ &Cinfo[ 142 ],
+ &Prop49
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop47 = {
+ 0xBBB6, /*start :欢*/
+ 0xBBB6, /*end :欢, len=1*/
+ &Cinfo[ 141 ],
+ &Prop48
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop46 = {
+ 0xBBA4, /*start :护*/
+ 0xBBA4, /*end :护, len=1*/
+ &Cinfo[ 140 ],
+ &Prop47
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop45 = {
+ 0xBAF3, /*start :后*/
+ 0xBAF3, /*end :后, len=1*/
+ &Cinfo[ 139 ],
+ &Prop46
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop44 = {
+ 0xBAC5, /*start :号*/
+ 0xBAC5, /*end :号, len=1*/
+ &Cinfo[ 138 ],
+ &Prop45
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop43 = {
+ 0xB9E6, /*start :规*/
+ 0xB9E6, /*end :规, len=1*/
+ &Cinfo[ 137 ],
+ &Prop44
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop42 = {
+ 0xB9CA, /*start :故*/
+ 0xB9CA, /*end :故, len=1*/
+ &Cinfo[ 136 ],
+ &Prop43
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop41 = {
+ 0xB9AB, /*start :公*/
+ 0xB9AB, /*end :公, len=1*/
+ &Cinfo[ 135 ],
+ &Prop42
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop40 = {
+ 0xB9A6, /*start :功*/
+ 0xB9A6, /*end :功, len=1*/
+ &Cinfo[ 134 ],
+ &Prop41
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop39 = {
+ 0xB8F1, /*start :格*/
+ 0xB8F1, /*end :格, len=1*/
+ &Cinfo[ 133 ],
+ &Prop40
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop38 = {
+ 0xB8C4, /*start :改*/
+ 0xB8C4, /*end :改, len=1*/
+ &Cinfo[ 132 ],
+ &Prop39
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop37 = {
+ 0xB8B4, /*start :复*/
+ 0xB8B4, /*end :复, len=1*/
+ &Cinfo[ 131 ],
+ &Prop38
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop36 = {
+ 0xB7B5, /*start :返*/
+ 0xB7B5, /*end :返, len=1*/
+ &Cinfo[ 130 ],
+ &Prop37
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop35 = {
+ 0xB7A7, /*start :阀*/
+ 0xB7A7, /*end :阀, len=1*/
+ &Cinfo[ 129 ],
+ &Prop36
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop34 = {
+ 0xB7A2, /*start :发*/
+ 0xB7A2, /*end :发, len=1*/
+ &Cinfo[ 128 ],
+ &Prop35
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop33 = {
+ 0xB6D4, /*start :对*/
+ 0xB6D4, /*end :对, len=1*/
+ &Cinfo[ 127 ],
+ &Prop34
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop32 = {
+ 0xB6CF, /*start :断*/
+ 0xB6CF, /*end :断, len=1*/
+ &Cinfo[ 126 ],
+ &Prop33
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop31 = {
+ 0xB6C8, /*start :度*/
+ 0xB6C8, /*end :度, len=1*/
+ &Cinfo[ 125 ],
+ &Prop32
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop30 = {
+ 0xB6AF, /*start :动*/
+ 0xB6AF, /*end :动, len=1*/
+ &Cinfo[ 124 ],
+ &Prop31
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop29 = {
+ 0xB6A8, /*start :定*/
+ 0xB6A8, /*end :定, len=1*/
+ &Cinfo[ 123 ],
+ &Prop30
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop28 = {
+ 0xB5E7, /*start :电*/
+ 0xB5E7, /*end :电, len=1*/
+ &Cinfo[ 122 ],
+ &Prop29
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop27 = {
+ 0xB5C4, /*start :的*/
+ 0xB5C4, /*end :的, len=1*/
+ &Cinfo[ 121 ],
+ &Prop28
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop26 = {
+ 0xB5B1, /*start :当*/
+ 0xB5B1, /*end :当, len=1*/
+ &Cinfo[ 120 ],
+ &Prop27
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop25 = {
+ 0xB5AB, /*start :但*/
+ 0xB5AB, /*end :但, len=1*/
+ &Cinfo[ 119 ],
+ &Prop26
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop24 = {
+ 0xB5A5, /*start :单*/
+ 0xB5A5, /*end :单, len=1*/
+ &Cinfo[ 118 ],
+ &Prop25
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop23 = {
+ 0xB4ED, /*start :错*/
+ 0xB4ED, /*end :错, len=1*/
+ &Cinfo[ 117 ],
+ &Prop24
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop22 = {
+ 0xB4E6, /*start :存*/
+ 0xB4E6, /*end :存, len=1*/
+ &Cinfo[ 116 ],
+ &Prop23
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop21 = {
+ 0xB3F6, /*start :出*/
+ 0xB3F6, /*end :出, len=1*/
+ &Cinfo[ 115 ],
+ &Prop22
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop20 = {
+ 0xB3CC, /*start :程*/
+ 0xB3CC, /*end :程, len=1*/
+ &Cinfo[ 114 ],
+ &Prop21
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop19 = {
+ 0xB3C9, /*start :成*/
+ 0xB3C9, /*end :成, len=1*/
+ &Cinfo[ 113 ],
+ &Prop20
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop18 = {
+ 0xB3AC, /*start :超*/
+ 0xB3AC, /*end :超, len=1*/
+ &Cinfo[ 112 ],
+ &Prop19
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop17 = {
+ 0xB3A7, /*start :厂*/
+ 0xB3A7, /*end :厂, len=1*/
+ &Cinfo[ 111 ],
+ &Prop18
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop16 = {
+ 0xB3A3, /*start :常*/
+ 0xB3A3, /*end :常, len=1*/
+ &Cinfo[ 110 ],
+ &Prop17
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop15 = {
+ 0xB2E9, /*start :查*/
+ 0xB2E9, /*end :查, len=1*/
+ &Cinfo[ 109 ],
+ &Prop16
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop14 = {
+ 0xB2E2, /*start :测*/
+ 0xB2E2, /*end :测, len=1*/
+ &Cinfo[ 108 ],
+ &Prop15
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop13 = {
+ 0xB2CE, /*start :参*/
+ 0xB2CE, /*end :参, len=1*/
+ &Cinfo[ 107 ],
+ &Prop14
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop12 = {
+ 0xB2CB, /*start :菜*/
+ 0xB2CB, /*end :菜, len=1*/
+ &Cinfo[ 106 ],
+ &Prop13
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop11 = {
+ 0xB2BB, /*start :不*/
+ 0xB2BB, /*end :不, len=1*/
+ &Cinfo[ 105 ],
+ &Prop12
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop10 = {
+ 0xB1E0, /*start :编*/
+ 0xB1E0, /*end :编, len=1*/
+ &Cinfo[ 104 ],
+ &Prop11
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop9 = {
+ 0xB1BE, /*start :本*/
+ 0xB1BE, /*end :本, len=1*/
+ &Cinfo[ 103 ],
+ &Prop10
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop8 = {
+ 0xB1B8, /*start :备*/
+ 0xB1B8, /*end :备, len=1*/
+ &Cinfo[ 102 ],
+ &Prop9
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop7 = {
+ 0xB1A3, /*start :保*/
+ 0xB1A3, /*end :保, len=1*/
+ &Cinfo[ 101 ],
+ &Prop8
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop6 = {
+ 0xB0FC, /*start :包*/
+ 0xB0FC, /*end :包, len=1*/
+ &Cinfo[ 100 ],
+ &Prop7
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop5 = {
+ 0xB0E6, /*start :版*/
+ 0xB0E6, /*end :版, len=1*/
+ &Cinfo[ 99 ],
+ &Prop6
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop4 = {
+ 0xB0DC, /*start :败*/
+ 0xB0DC, /*end :败, len=1*/
+ &Cinfo[ 98 ],
+ &Prop5
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop3 = {
+ 0xA3AC, /*start :,*/
+ 0xA3AC, /*end :,, len=1*/
+ &Cinfo[ 97 ],
+ &Prop4
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop2 = {
+ 0xA1A3, /*start :。*/
+ 0xA1A3, /*end :。, len=1*/
+ &Cinfo[ 96 ],
+ &Prop3
+};
+
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop1 = {
+ 0x0020, /*start : */
+ 0x007F, /*end :, len=96*/
+ &Cinfo[ 0 ],
+ &Prop2
+};
+
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontHZ24x24 = {
+ GUI_FONTTYPE_PROP_SJIS,
+ 24, /* height of font */
+ 24, /* space of font y */
+ 1,
+ 1,
+ &Prop1
+};
+
diff --git a/User/lib/lcd/gui/Font/HZ32x32.c b/User/lib/lcd/gui/Font/HZ32x32.c
new file mode 100644
index 0000000..7583fda
--- /dev/null
+++ b/User/lib/lcd/gui/Font/HZ32x32.c
@@ -0,0 +1,32028 @@
+/*
+**********************************************************************
+* UcGUI Font
+* Chinese GB2312 library
+* (c) Copyright 19xx-20xx, company name
+*
+*
+* 注:本字体文件由 ucGUI字体生成器v9.0 生成,作者:馋嘴猫(qq:602426967)
+* 字体:宋体,字形:粗体,大小:24,宽:32,高:32,水平偏移:0,垂直偏移:0
+*
+**********************************************************************
+*/
+
+#include "GUI.H"
+
+/* char:
+ code:0x000A */
+static GUI_CONST_STORAGE unsigned char ac000A[32] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char:
+ code:0x000D */
+static GUI_CONST_STORAGE unsigned char ac000D[32] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: code:0x0020 */
+static GUI_CONST_STORAGE unsigned char ac0020[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: ! code:0x0021 */
+static GUI_CONST_STORAGE unsigned char ac0021[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _______X, XX______, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ _______X, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: " code:0x0022 */
+static GUI_CONST_STORAGE unsigned char ac0022[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, X__XXX__, ________,
+ _____XXX, X_XXXX__, ________,
+ _____XXX, X_XXXX__, ________,
+ ____XXXX, _XXXX___, ________,
+ ____XXX_, _XXX____, ________,
+ ___XXX__, XXX_____, ________,
+ __XXX__X, XX______, ________,
+ __XX___X, X_______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: # code:0x0023 */
+static GUI_CONST_STORAGE unsigned char ac0023[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _____XX_, ____XX__, ________,
+ _____XX_, ____XX__, ________,
+ _____XX_, ____XX__, ________,
+ _____XX_, ____XX__, ________,
+ _____XX_, ____XX__, ________,
+ _XXXXXXX, XXXXXXXX, ________,
+ _XXXXXXX, XXXXXXXX, ________,
+ _XXXXXXX, XXXXXXXX, ________,
+ ____XX__, ___XX___, ________,
+ ____XX__, ___XX___, ________,
+ ____XX__, ___XX___, ________,
+ ____XX__, ___XX___, ________,
+ ____XX__, ___XX___, ________,
+ ____XX__, ___XX___, ________,
+ _XXXXXXX, XXXXXXXX, ________,
+ _XXXXXXX, XXXXXXXX, ________,
+ _XXXXXXX, XXXXXXXX, ________,
+ ___XXX__, __XXX___, ________,
+ ___XX___, __XX____, ________,
+ ___XX___, __XX____, ________,
+ ___XX___, __XX____, ________,
+ ___XX___, __XX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: $ code:0x0024 */
+static GUI_CONST_STORAGE unsigned char ac0024[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ ______XX, XXX_____, ________,
+ ____XXXX, X_XXX___, ________,
+ ____XX_X, X__XXX__, ________,
+ ___XXX_X, X__XXX__, ________,
+ ___XXX_X, X_XXXX__, ________,
+ ___XXX_X, X_XXXX__, ________,
+ ___XXXXX, X_______, ________,
+ ____XXXX, X_______, ________,
+ ____XXXX, X_______, ________,
+ _____XXX, X_______, ________,
+ ______XX, XXX_____, ________,
+ _______X, XXXX____, ________,
+ _______X, XXXXX___, ________,
+ _______X, X_XXX___, ________,
+ _______X, X_XXXX__, ________,
+ _______X, X__XXX__, ________,
+ __XXXX_X, X__XXX__, ________,
+ __XXXX_X, X__XXX__, ________,
+ __XXX__X, X__XXX__, ________,
+ __XXX__X, X_XXX___, ________,
+ ___XXX_X, XXXX____, ________,
+ _____XXX, XXX_____, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ ________, ________, ________};
+
+/* char: % code:0x0025 */
+static GUI_CONST_STORAGE unsigned char ac0025[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ __XXXX__, ___XX___, ________,
+ _XXXXXX_, ___XX___, ________,
+ _XX__XX_, __XX____, ________,
+ XXX__XXX, __XX____, ________,
+ XXX__XXX, _XX_____, ________,
+ XXX__XXX, _XX_____, ________,
+ XXX__XXX, _XX_____, ________,
+ XXX__XXX, XX______, ________,
+ XXX__XXX, XX______, ________,
+ _XX__XX_, XX______, ________,
+ _XXXXXXX, X_XXXX__, ________,
+ __XXXX_X, XXXXXXX_, ________,
+ ______XX, _XX__XX_, ________,
+ ______XX, XXX__XXX, ________,
+ ______XX, XXX__XXX, ________,
+ _____XX_, XXX__XXX, ________,
+ _____XX_, XXX__XXX, ________,
+ ____XX__, XXX__XXX, ________,
+ ____XX__, XXX__XXX, ________,
+ ____XX__, _XX__XX_, ________,
+ ___XX___, _XXXXXX_, ________,
+ ___XX___, __XXXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: & code:0x0026 */
+static GUI_CONST_STORAGE unsigned char ac0026[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ____XXXX, X_______, ________,
+ ___XXX_X, X_______, ________,
+ __XXX__X, XX______, ________,
+ __XXX__X, XX______, ________,
+ __XXX__X, XX______, ________,
+ __XXX__X, XX______, ________,
+ __XXX__X, X_______, ________,
+ __XXX_XX, X_______, ________,
+ __XXXXXX, ________, ________,
+ ___XXXX_, ________, ________,
+ __XXXX__, _XXXXXX_, ________,
+ __XXXXX_, ___XX___, ________,
+ _XX_XXX_, ___XX___, ________,
+ XXX_XXXX, ___XX___, ________,
+ XXX__XXX, __XX____, ________,
+ XXX__XXX, X_XX____, ________,
+ XXX___XX, X_XX____, ________,
+ XXX____X, XXX_____, ________,
+ XXX____X, XXX___XX, ________,
+ _XXX____, XXXX_XXX, ________,
+ __XXX__X, XXXXXXX_, ________,
+ ___XXXXX, __XXXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: ' code:0x0027 */
+static GUI_CONST_STORAGE unsigned char ac0027[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXXX_, ________, ________,
+ __XXXXX_, ________, ________,
+ ____XXX_, ________, ________,
+ ____XXX_, ________, ________,
+ ____XX__, ________, ________,
+ __XXX___, ________, ________,
+ _XXX____, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: ( code:0x0028 */
+static GUI_CONST_STORAGE unsigned char ac0028[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ______XX, ________,
+ ________, _____XX_, ________,
+ ________, ____XX__, ________,
+ ________, ___XXX__, ________,
+ ________, __XXX___, ________,
+ ________, __XX____, ________,
+ ________, _XXX____, ________,
+ ________, _XX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, _XX_____, ________,
+ ________, _XXX____, ________,
+ ________, __XX____, ________,
+ ________, __XXX___, ________,
+ ________, ___XXX__, ________,
+ ________, ____XX__, ________,
+ ________, _____XX_, ________,
+ ________, ______XX, ________,
+ ________, ________, ________};
+
+/* char: ) code:0x0029 */
+static GUI_CONST_STORAGE unsigned char ac0029[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ _XX_____, ________, ________,
+ __XX____, ________, ________,
+ ___XX___, ________, ________,
+ ___XXX__, ________, ________,
+ ____XXX_, ________, ________,
+ _____XX_, ________, ________,
+ _____XXX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ _____XXX, ________, ________,
+ _____XX_, ________, ________,
+ ____XXX_, ________, ________,
+ ___XXX__, ________, ________,
+ ___XX___, ________, ________,
+ __XX____, ________, ________,
+ _XX_____, ________, ________,
+ ________, ________, ________};
+
+/* char: * code:0x002A */
+static GUI_CONST_STORAGE unsigned char ac002A[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ __XXX___, XXX__XXX, ________,
+ __XXXX__, XX__XXXX, ________,
+ ___XXXX_, XX_XXXX_, ________,
+ _____XXX, XXXXX___, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _____XXX, XXXXX___, ________,
+ ___XXXX_, XX_XXXX_, ________,
+ __XXXX__, XX__XXXX, ________,
+ __XXX__X, XX___XXX, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: + code:0x002B */
+static GUI_CONST_STORAGE unsigned char ac002B[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ __XXXXXX, XXXXXXXX, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: , code:0x002C */
+static GUI_CONST_STORAGE unsigned char ac002C[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ __XXXX__, ________, ________,
+ __XXXXX_, ________, ________,
+ __XXXXX_, ________, ________,
+ ____XXX_, ________, ________,
+ ____XXX_, ________, ________,
+ ____XX__, ________, ________,
+ __XXX___, ________, ________,
+ _XXX____, ________, ________};
+
+/* char: - code:0x002D */
+static GUI_CONST_STORAGE unsigned char ac002D[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, XXXXXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: . code:0x002E */
+static GUI_CONST_STORAGE unsigned char ac002E[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ___XXX__, ________, ________,
+ __XXXXX_, ________, ________,
+ __XXXXX_, ________, ________,
+ ___XXX__, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: / code:0x002F */
+static GUI_CONST_STORAGE unsigned char ac002F[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ______XX, ________,
+ ________, _____XXX, ________,
+ ________, _____XX_, ________,
+ ________, ____XXX_, ________,
+ ________, ____XX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XX___, ________,
+ ________, __XXX___, ________,
+ ________, __XX____, ________,
+ ________, _XXX____, ________,
+ ________, _XX_____, ________,
+ ________, XXX_____, ________,
+ ________, XX______, ________,
+ _______X, XX______, ________,
+ _______X, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, ________, ________,
+ _____XXX, ________, ________,
+ _____XX_, ________, ________,
+ ____XXX_, ________, ________,
+ ____XX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XX___, ________, ________,
+ __XXX___, ________, ________,
+ __XX____, ________, ________,
+ _XXX____, ________, ________,
+ _XX_____, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: 0 code:0x0030 */
+static GUI_CONST_STORAGE unsigned char ac0030[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXX_____, ________,
+ _____XXX, __XX____, ________,
+ ____XXX_, __XXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ____XX__, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ ___XXX__, ____XX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ____XXX_, __XXX___, ________,
+ _____XXX, __XX____, ________,
+ ______XX, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: 1 code:0x0031 */
+static GUI_CONST_STORAGE unsigned char ac0031[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, XX______, ________,
+ _______X, XX______, ________,
+ ___XXXXX, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ ______XX, XXX_____, ________,
+ ___XXXXX, XXXXXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: 2 code:0x0032 */
+static GUI_CONST_STORAGE unsigned char ac0032[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _____XXX, XXXX____, ________,
+ ____XX__, __XXXX__, ________,
+ ___XX___, ___XXX__, ________,
+ __XX____, ____XXX_, ________,
+ __XX____, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ ________, ____XXX_, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, __XXX___, ________,
+ ________, _XXX____, ________,
+ ________, XXX_____, ________,
+ _______X, XX______, ________,
+ ______XX, X_______, ________,
+ ______XX, ________, ________,
+ _____XX_, _____XX_, ________,
+ ____XX__, _____XX_, ________,
+ ___XX___, _____XX_, ________,
+ __XX____, ____XXX_, ________,
+ __XXXXXX, XXXXXX__, ________,
+ __XXXXXX, XXXXXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: 3 code:0x0033 */
+static GUI_CONST_STORAGE unsigned char ac0033[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _____XXX, XXX_____, ________,
+ ___XXX__, _XXX____, ________,
+ __XXX___, __XXX___, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, __XXX___, ________,
+ ________, _XXX____, ________,
+ ______XX, XXX_____, ________,
+ ________, _XXXX___, ________,
+ ________, ___XXX__, ________,
+ ________, ____XX__, ________,
+ ________, ____XXX_, ________,
+ ________, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ___XXX__, ________,
+ ___XXX__, __XXX___, ________,
+ _____XXX, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: 4 code:0x0034 */
+static GUI_CONST_STORAGE unsigned char ac0034[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, XXXX____, ________,
+ ________, XXXX____, ________,
+ _______X, XXXX____, ________,
+ _______X, XXXX____, ________,
+ ______XX, _XXX____, ________,
+ _____XX_, _XXX____, ________,
+ _____XX_, _XXX____, ________,
+ ____XX__, _XXX____, ________,
+ ____XX__, _XXX____, ________,
+ ___XX___, _XXX____, ________,
+ __XXX___, _XXX____, ________,
+ __XX____, _XXX____, ________,
+ _XX_____, _XXX____, ________,
+ _XXXXXXX, XXXXXXX_, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ______XX, XXXXXXX_, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: 5 code:0x0035 */
+static GUI_CONST_STORAGE unsigned char ac0035[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ____XXXX, XXXXXXX_, ________,
+ ____XXXX, XXXXXXX_, ________,
+ ___XX___, ________, ________,
+ ___XX___, ________, ________,
+ ___XX___, ________, ________,
+ ___XX___, ________, ________,
+ ___XX___, ________, ________,
+ ___XX___, ________, ________,
+ ___XX_XX, XXXX____, ________,
+ ___XXXX_, __XXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XX___, ____XX__, ________,
+ ________, ____XXX_, ________,
+ ________, ____XXX_, ________,
+ ________, ____XXX_, ________,
+ ________, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XX____, ___XXX__, ________,
+ __XX____, ___XXX__, ________,
+ ___XXX__, __XXX___, ________,
+ _____XXX, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: 6 code:0x0036 */
+static GUI_CONST_STORAGE unsigned char ac0036[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _______X, XXXX____, ________,
+ _____XXX, ___XXX__, ________,
+ ____XXX_, ___XXX__, ________,
+ ____XX__, ___XXX__, ________,
+ ___XXX__, ________, ________,
+ ___XX___, ________, ________,
+ ___XX___, ________, ________,
+ __XXX___, ________, ________,
+ __XXX_XX, XXXX____, ________,
+ __XXXXXX, __XXX___, ________,
+ __XXXX__, ___XXX__, ________,
+ __XXXX__, ____XX__, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XX__, ________,
+ ____XXX_, ___XXX__, ________,
+ ____XXXX, __XXX___, ________,
+ ______XX, XXXX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: 7 code:0x0037 */
+static GUI_CONST_STORAGE unsigned char ac0037[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ___XXXXX, XXXXXXX_, ________,
+ ___XXXXX, XXXXXXX_, ________,
+ ___XX___, ____XX__, ________,
+ __XXX___, ___XX___, ________,
+ __XX____, ___XX___, ________,
+ __XX____, __XX____, ________,
+ ________, __XX____, ________,
+ ________, _XX_____, ________,
+ ________, _XX_____, ________,
+ ________, _XX_____, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: 8 code:0x0038 */
+static GUI_CONST_STORAGE unsigned char ac0038[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _____XXX, XXXX____, ________,
+ ____XXX_, __XXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXXX__, ____XXX_, ________,
+ __XXXX__, ____XX__, ________,
+ ___XXXXX, ___XXX__, ________,
+ ____XXXX, X_XX____, ________,
+ _____XXX, XXX_____, ________,
+ ___XXX__, XXXXX___, ________,
+ __XXX___, _XXXXX__, ________,
+ __XXX___, __XXXX__, ________,
+ _XXX____, ___XXXX_, ________,
+ _XXX____, ____XXX_, ________,
+ _XXX____, ____XXX_, ________,
+ _XXX____, ____XXX_, ________,
+ _XXX____, ____XXX_, ________,
+ __XXX___, ___XXX__, ________,
+ ___XXX__, __XXX___, ________,
+ _____XXX, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: 9 code:0x0039 */
+static GUI_CONST_STORAGE unsigned char ac0039[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _____XXX, XXX_____, ________,
+ ___XXX__, __XX____, ________,
+ __XXX___, ___XX___, ________,
+ __XXX___, ___XXX__, ________,
+ _XXX____, ____XX__, ________,
+ _XXX____, ____XXX_, ________,
+ _XXX____, ____XXX_, ________,
+ _XXX____, ____XXX_, ________,
+ _XXX____, ____XXX_, ________,
+ _XXX____, ____XXX_, ________,
+ _XXXX___, ___XXXX_, ________,
+ __XXX___, __XXXXX_, ________,
+ ___XXX__, _XXXXXX_, ________,
+ ____XXXX, XX__XXX_, ________,
+ ________, ____XXX_, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XX___, ________,
+ __XXX___, __XXX___, ________,
+ __XXX___, _XXX____, ________,
+ __XXX___, XXX_____, ________,
+ ____XXXX, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: : code:0x003A */
+static GUI_CONST_STORAGE unsigned char ac003A[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _______X, XX______, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ _______X, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _______X, XX______, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ _______X, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: ; code:0x003B */
+static GUI_CONST_STORAGE unsigned char ac003B[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XX______, ________,
+ ______XX, XX______, ________,
+ ______XX, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XX______, ________,
+ ______XX, XX______, ________,
+ ______XX, XX______, ________,
+ _______X, XX______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ________, ________, ________};
+
+/* char: < code:0x003C */
+static GUI_CONST_STORAGE unsigned char ac003C[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, _____XX_, ________,
+ ________, ____XX__, ________,
+ ________, ___XX___, ________,
+ ________, __XX____, ________,
+ ________, _XX_____, ________,
+ ________, XX______, ________,
+ _______X, X_______, ________,
+ ______XX, ________, ________,
+ _____XX_, ________, ________,
+ ____XX__, ________, ________,
+ ___XX___, ________, ________,
+ ___XX___, ________, ________,
+ ____XX__, ________, ________,
+ _____XX_, ________, ________,
+ ______XX, ________, ________,
+ _______X, X_______, ________,
+ ________, XX______, ________,
+ ________, _XX_____, ________,
+ ________, __XX____, ________,
+ ________, ___XX___, ________,
+ ________, ____XX__, ________,
+ ________, _____XX_, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: = code:0x003D */
+static GUI_CONST_STORAGE unsigned char ac003D[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, XXXXXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, XXXXXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: > code:0x003E */
+static GUI_CONST_STORAGE unsigned char ac003E[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ __XX____, ________, ________,
+ ___XX___, ________, ________,
+ ____XX__, ________, ________,
+ _____XX_, ________, ________,
+ ______XX, ________, ________,
+ _______X, X_______, ________,
+ ________, XX______, ________,
+ ________, _XX_____, ________,
+ ________, __XX____, ________,
+ ________, ___XX___, ________,
+ ________, ____XX__, ________,
+ ________, ____XX__, ________,
+ ________, ___XX___, ________,
+ ________, __XX____, ________,
+ ________, _XX_____, ________,
+ ________, XX______, ________,
+ _______X, X_______, ________,
+ ______XX, ________, ________,
+ _____XX_, ________, ________,
+ ____XX__, ________, ________,
+ ___XX___, ________, ________,
+ __XX____, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: ? code:0x003F */
+static GUI_CONST_STORAGE unsigned char ac003F[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXXX____, ________,
+ ____XXX_, ___XXX__, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XX___, _____XXX, ________,
+ __XXX___, _____XXX, ________,
+ __XXXX__, _____XXX, ________,
+ __XXXX__, _____XXX, ________,
+ __XXXX__, _____XXX, ________,
+ ________, ____XXX_, ________,
+ ________, ___XXX__, ________,
+ ________, _XXXX___, ________,
+ ________, XXX_____, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _______X, XX______, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ _______X, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: @ code:0x0040 */
+static GUI_CONST_STORAGE unsigned char ac0040[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXXX____, ________,
+ _____XXX, ___XX___, ________,
+ ____XXX_, ____XX__, ________,
+ ___XXX__, _____XX_, ________,
+ __XXX___, XXXXXXX_, ________,
+ __XXX__X, XXXXX_XX, ________,
+ __XX___X, X_XXX_XX, ________,
+ _XXX__XX, X_XXX_XX, ________,
+ _XXX__XX, X_XX__XX, ________,
+ _XXX_XXX, __XX__XX, ________,
+ _XXX_XXX, __XX__XX, ________,
+ _XXX_XXX, __XX__XX, ________,
+ _XXX_XXX, _XXX__XX, ________,
+ _XXX_XXX, _XXX_XX_, ________,
+ _XXX_XXX, _XXX_XX_, ________,
+ __XX_XXX, XXXXXX__, ________,
+ __XXX_XX, X_XXX___, ________,
+ __XXX___, ______XX, ________,
+ ___XX___, _____XX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ____XXX_, ___XXX__, ________,
+ ______XX, XXXX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: A code:0x0041 */
+static GUI_CONST_STORAGE unsigned char ac0041[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XX______, ________,
+ ______XX, XX______, ________,
+ ______XX, XX______, ________,
+ ______XX, XX______, ________,
+ _____XX_, XXX_____, ________,
+ _____XX_, XXX_____, ________,
+ _____XX_, XXX_____, ________,
+ _____XX_, XXX_____, ________,
+ ____XXX_, _XX_____, ________,
+ ____XX__, _XXX____, ________,
+ ____XX__, _XXX____, ________,
+ ____XX__, _XXX____, ________,
+ ___XXX__, __XX____, ________,
+ ___XXXXX, XXXXX___, ________,
+ ___XX___, __XXX___, ________,
+ ___XX___, __XXX___, ________,
+ ___XX___, __XXX___, ________,
+ __XX____, ___XXX__, ________,
+ __XX____, ___XXX__, ________,
+ __XX____, ___XXX__, ________,
+ _XXX____, ___XXXX_, ________,
+ XXXXXX__, __XXXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: B code:0x0042 */
+static GUI_CONST_STORAGE unsigned char ac0042[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, XXXX____, ________,
+ ___XXX__, __XXXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXXXX, XXXX____, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, _____XX_, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ___XXX__, ________,
+ _XXXXXXX, XXXXX___, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: C code:0x0043 */
+static GUI_CONST_STORAGE unsigned char ac0043[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXXX____, ________,
+ _____XXX, ___XXXX_, ________,
+ ____XX__, ____XXX_, ________,
+ ___XXX__, _____XXX, ________,
+ __XXX___, ______XX, ________,
+ __XXX___, ______XX, ________,
+ __XXX___, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ __XXX___, ______XX, ________,
+ __XXX___, ______XX, ________,
+ ___XX___, _____XX_, ________,
+ ___XXX__, ____XX__, ________,
+ ____XXX_, ___XX___, ________,
+ ______XX, XXXX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: D code:0x0044 */
+static GUI_CONST_STORAGE unsigned char ac0044[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, XXX_____, ________,
+ ___XXX__, _XXXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ____XX__, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, _XXX____, ________,
+ _XXXXXXX, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: E code:0x0045 */
+static GUI_CONST_STORAGE unsigned char ac0045[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, XXXXXXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, _____XX_, ________,
+ ___XXX__, ______XX, ________,
+ ___XXX__, ______XX, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ___XX___, ________,
+ ___XXX__, ___XX___, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXXXX, XXXXX___, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, ___XX___, ________,
+ ___XXX__, ___XX___, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ______XX, ________,
+ ___XXX__, ______XX, ________,
+ ___XXX__, _____XX_, ________,
+ ___XXX__, ____XXX_, ________,
+ _XXXXXXX, XXXXXXX_, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: F code:0x0046 */
+static GUI_CONST_STORAGE unsigned char ac0046[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, XXXXXXX_, ________,
+ ___XXX__, ___XXXX_, ________,
+ ___XXX__, _____XX_, ________,
+ ___XXX__, ______XX, ________,
+ ___XXX__, ______XX, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ___XX___, ________,
+ ___XXX__, ___XX___, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXXXX, XXXXX___, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, ___XX___, ________,
+ ___XXX__, ___XX___, ________,
+ ___XXX__, ___XX___, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ _XXXXXXX, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: G code:0x0047 */
+static GUI_CONST_STORAGE unsigned char ac0047[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXX_____, ________,
+ ____XXX_, __XXX___, ________,
+ ____XX__, ___XX___, ________,
+ ___XXX__, ___XXX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, ________, ________,
+ _XXX____, _XXXXXXX, ________,
+ _XXX____, ___XXX__, ________,
+ _XXX____, ___XXX__, ________,
+ __XX____, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ ___XX___, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ____XXX_, __XX____, ________,
+ _____XXX, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: H code:0x0048 */
+static GUI_CONST_STORAGE unsigned char ac0048[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ XXXXXXX_, __XXXXXX, X_______,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXXXXX, XXXXXXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ XXXXXXX_, __XXXXXX, X_______,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: I code:0x0049 */
+static GUI_CONST_STORAGE unsigned char ac0049[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ___XXXXX, XXXXXX__, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ ___XXXXX, XXXXXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: J code:0x004A */
+static GUI_CONST_STORAGE unsigned char ac004A[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _____XXX, XXXXXXXX, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ _XXXX___, _XXX____, ________,
+ _XXXX___, XXX_____, ________,
+ _XXXX__X, XX______, ________,
+ __XXXXXX, X_______, ________};
+
+/* char: K code:0x004B */
+static GUI_CONST_STORAGE unsigned char ac004B[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, _XXXXXX_, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, __XX____, ________,
+ ___XXX__, _XXX____, ________,
+ ___XXX__, _XX_____, ________,
+ ___XXX__, XX______, ________,
+ ___XXX__, XX______, ________,
+ ___XXX_X, X_______, ________,
+ ___XXX_X, X_______, ________,
+ ___XXXXX, X_______, ________,
+ ___XXXXX, XX______, ________,
+ ___XXXXX, XX______, ________,
+ ___XXX__, XXX_____, ________,
+ ___XXX__, XXX_____, ________,
+ ___XXX__, _XXX____, ________,
+ ___XXX__, _XXX____, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ _XXXXXXX, __XXXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: L code:0x004C */
+static GUI_CONST_STORAGE unsigned char ac004C[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ______XX, ________,
+ ___XXX__, ______XX, ________,
+ ___XXX__, _____XX_, ________,
+ ___XXX__, ____XXX_, ________,
+ _XXXXXXX, XXXXXXX_, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: M code:0x004D */
+static GUI_CONST_STORAGE unsigned char ac004D[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ XXXXX___, ____XXXX, X_______,
+ __XXXX__, ___XXXX_, ________,
+ __XXXX__, ___XXXX_, ________,
+ __XXXX__, ___XXXX_, ________,
+ __XXXX__, ___XXXX_, ________,
+ __XXXX__, __XXXXX_, ________,
+ __XXXXX_, __XXXXX_, ________,
+ __XXXXX_, __XXXXX_, ________,
+ __XXXXX_, __XXXXX_, ________,
+ __XXXXX_, _XX_XXX_, ________,
+ __XXXXX_, _XX_XXX_, ________,
+ __XX_XXX, _XX_XXX_, ________,
+ __XX_XXX, _XX_XXX_, ________,
+ __XX_XXX, _XX_XXX_, ________,
+ __XX_XXX, XX__XXX_, ________,
+ __XX__XX, XX__XXX_, ________,
+ __XX__XX, XX__XXX_, ________,
+ __XX__XX, XX__XXX_, ________,
+ __XX__XX, X___XXX_, ________,
+ __XX__XX, X___XXX_, ________,
+ __XX___X, X___XXX_, ________,
+ XXXXX__X, X_XXXXXX, X_______,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: N code:0x004E */
+static GUI_CONST_STORAGE unsigned char ac004E[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ XXXXX___, ___XXXXX, X_______,
+ __XXXX__, _____XX_, ________,
+ __XXXX__, _____XX_, ________,
+ __XXXXX_, _____XX_, ________,
+ __XXXXX_, _____XX_, ________,
+ __XX_XXX, _____XX_, ________,
+ __XX_XXX, _____XX_, ________,
+ __XX__XX, X____XX_, ________,
+ __XX__XX, X____XX_, ________,
+ __XX___X, XX___XX_, ________,
+ __XX___X, XX___XX_, ________,
+ __XX____, XXX__XX_, ________,
+ __XX____, XXX__XX_, ________,
+ __XX____, _XXX_XX_, ________,
+ __XX____, _XXX_XX_, ________,
+ __XX____, __XXXXX_, ________,
+ __XX____, __XXXXX_, ________,
+ __XX____, ___XXXX_, ________,
+ __XX____, ___XXXX_, ________,
+ __XX____, ____XXX_, ________,
+ __XX____, ____XXX_, ________,
+ XXXXXX__, _____XX_, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: O code:0x004F */
+static GUI_CONST_STORAGE unsigned char ac004F[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXX_____, ________,
+ ____XXX_, __XXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XX___, ____XX__, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ _XXX____, _____XX_, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ __XX____, _____XXX, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ ___XX___, ____XX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ____XXX_, __XXX___, ________,
+ ______XX, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: P code:0x0050 */
+static GUI_CONST_STORAGE unsigned char ac0050[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, XXXXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, _____XXX, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXXXX, XXXX____, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ _XXXXXXX, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: Q code:0x0051 */
+static GUI_CONST_STORAGE unsigned char ac0051[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXX_____, ________,
+ ____XXX_, __XXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XX___, ____XX__, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ _XXX____, _____XXX, ________,
+ __XX_XXX, XX___XX_, ________,
+ __XXXX__, XXX_XXX_, ________,
+ __XXXX__, _XXXXXX_, ________,
+ ___XXX__, _XXXXX__, ________,
+ ____XXX_, _XXXX___, ________,
+ ______XX, XXXX____, ________,
+ ________, __XXX_XX, ________,
+ ________, __XXXXX_, ________,
+ ________, ___XXXX_, ________,
+ ________, ________, ________};
+
+/* char: R code:0x0052 */
+static GUI_CONST_STORAGE unsigned char ac0052[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, XXXX____, ________,
+ ___XXX__, __XXXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXXXX, XXXX____, ________,
+ ___XXX__, XXX_____, ________,
+ ___XXX__, XXX_____, ________,
+ ___XXX__, _XXX____, ________,
+ ___XXX__, _XXX____, ________,
+ ___XXX__, _XXX____, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ _XXXXXXX, ___XXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: S code:0x0053 */
+static GUI_CONST_STORAGE unsigned char ac0053[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ____XXXX, XXX_XX__, ________,
+ ___XXX__, _XXXXX__, ________,
+ __XXX___, ___XXX__, ________,
+ _XXX____, ___XXX__, ________,
+ _XXX____, ____XX__, ________,
+ _XXX____, ____XX__, ________,
+ _XXX____, ________, ________,
+ _XXXX___, ________, ________,
+ __XXXXX_, ________, ________,
+ ___XXXXX, X_______, ________,
+ _____XXX, XXX_____, ________,
+ _______X, XXXXX___, ________,
+ ________, _XXXXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXXX_, ________,
+ _XX_____, ____XXX_, ________,
+ _XX_____, ____XXX_, ________,
+ _XXX____, ____XXX_, ________,
+ __XX____, ____XXX_, ________,
+ __XXX___, ___XXX__, ________,
+ __XXXX__, __XXX___, ________,
+ __XX_XXX, XXXX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: T code:0x0054 */
+static GUI_CONST_STORAGE unsigned char ac0054[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ __XXXXXX, XXXXXXX_, ________,
+ __XXX__X, XX___XX_, ________,
+ __XX___X, XX___XXX, ________,
+ _XX____X, XX____XX, ________,
+ _XX____X, XX____XX, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _____XXX, XXXX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: U code:0x0055 */
+static GUI_CONST_STORAGE unsigned char ac0055[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ XXXXXXX_, __XXXXXX, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ __XXX___, ____XX__, ________,
+ ___XXX__, ___XX___, ________,
+ ___XXXX_, __XX____, ________,
+ _____XXX, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: V code:0x0056 */
+static GUI_CONST_STORAGE unsigned char ac0056[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXX_, ___XXXXX, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XX__, ________,
+ ___XXX__, ____XX__, ________,
+ ___XXX__, ____XX__, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXX_, __XX____, ________,
+ _____XXX, __XX____, ________,
+ _____XXX, __XX____, ________,
+ _____XXX, __XX____, ________,
+ _____XXX, _XX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: W code:0x0057 */
+static GUI_CONST_STORAGE unsigned char ac0057[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ XXXXX_XX, XXX_XXXX, X_______,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XX_, ________,
+ __XX___X, XX___XX_, ________,
+ __XX____, XX___XX_, ________,
+ __XXX___, XXX__XX_, ________,
+ __XXX__X, XXX__XX_, ________,
+ __XXX__X, XXX__XX_, ________,
+ __XXX__X, XXX_XX__, ________,
+ __XXX__X, XXX_XX__, ________,
+ ___XX__X, XXX_XX__, ________,
+ ___XX_XX, _XX_XX__, ________,
+ ___XXXXX, _XXXXX__, ________,
+ ___XXXXX, _XXXXX__, ________,
+ ___XXXXX, _XXXX___, ________,
+ ___XXXX_, _XXXX___, ________,
+ ____XXX_, _XXXX___, ________,
+ ____XXX_, _XXXX___, ________,
+ ____XXX_, __XXX___, ________,
+ ____XXX_, __XX____, ________,
+ ____XX__, __XX____, ________,
+ ____XX__, __XX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: X code:0x0058 */
+static GUI_CONST_STORAGE unsigned char ac0058[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXX_, __XXXXXX, ________,
+ ___XXX__, ____XX__, ________,
+ ___XXX__, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXX_, __XX____, ________,
+ _____XXX, __XX____, ________,
+ _____XXX, _XX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, _XXX____, ________,
+ _____XX_, _XXX____, ________,
+ _____XX_, _XXXX___, ________,
+ ____XX__, __XXX___, ________,
+ ____XX__, __XXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XX___, ___XXXX_, ________,
+ _XXXXXX_, __XXXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: Y code:0x0059 */
+static GUI_CONST_STORAGE unsigned char ac0059[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXXX, __XXXXXX, ________,
+ __XXXX__, ____XX__, ________,
+ ___XXX__, ____XX__, ________,
+ ___XXX__, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXX_, __XX____, ________,
+ _____XXX, __XX____, ________,
+ _____XXX, __XX____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _____XXX, XXXX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: Z code:0x005A */
+static GUI_CONST_STORAGE unsigned char ac005A[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ___XXXXX, XXXXXXXX, ________,
+ ___XXXX_, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ __XXX___, ___XXX__, ________,
+ __XX____, ___XXX__, ________,
+ ________, __XXX___, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ _____XXX, ________, ________,
+ _____XXX, ________, ________,
+ ____XXX_, ________, ________,
+ ___XXX__, ______XX, ________,
+ ___XXX__, _____XXX, ________,
+ __XXX___, _____XX_, ________,
+ __XXX___, ___XXXX_, ________,
+ _XXXXXXX, XXXXXXX_, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: [ code:0x005B */
+static GUI_CONST_STORAGE unsigned char ac005B[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXXXXXX_, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, XXXXXXX_, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: \ code:0x005C */
+static GUI_CONST_STORAGE unsigned char ac005C[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ____XX__, ________, ________,
+ ____XXX_, ________, ________,
+ _____XX_, ________, ________,
+ _____XXX, ________, ________,
+ _____XXX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, X_______, ________,
+ _______X, X_______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ ________, XX______, ________,
+ ________, XXX_____, ________,
+ ________, _XX_____, ________,
+ ________, _XXX____, ________,
+ ________, _XXX____, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ____XXX_, ________,
+ ________, ____XXX_, ________,
+ ________, ____XXX_, ________,
+ ________, _____XXX, ________,
+ ________, ________, ________};
+
+/* char: ] code:0x005D */
+static GUI_CONST_STORAGE unsigned char ac005D[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ __XXXXXX, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ ________, XXX_____, ________,
+ __XXXXXX, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: ^ code:0x005E */
+static GUI_CONST_STORAGE unsigned char ac005E[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXXX____, ________,
+ _____XXX, __XX____, ________,
+ ____XX__, ___XX___, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: _ code:0x005F */
+static GUI_CONST_STORAGE unsigned char ac005F[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ XXXXXXXX, XXXXXXXX, X_______};
+
+/* char: ` code:0x0060 */
+static GUI_CONST_STORAGE unsigned char ac0060[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ___XXXXX, ________, ________,
+ ______XX, X_______, ________,
+ ________, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: a code:0x0061 */
+static GUI_CONST_STORAGE unsigned char ac0061[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _____XXX, XXXX____, ________,
+ ___XXX__, __XXX___, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ ________, __XXXX__, ________,
+ _____XXX, XXXXXX__, ________,
+ ___XXXX_, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ _XXX____, ___XXX__, ________,
+ _XXX____, ___XXX__, ________,
+ _XXX____, ___XXX__, ________,
+ _XXX____, ___XXX_X, X_______,
+ __XXX___, _XXXXX_X, X_______,
+ ___XXXXX, XX__XXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: b code:0x0062 */
+static GUI_CONST_STORAGE unsigned char ac0062[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ____XX__, ________, ________,
+ _XXXXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX_X, XXXX____, ________,
+ ___XXXXX, __XXXX__, ________,
+ ___XXXX_, ___XXX__, ________,
+ ___XXXX_, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XX__, ________,
+ ___XXXX_, ___XXX__, ________,
+ ___XXXX_, __XXX___, ________,
+ ___XX_XX, XXXX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: c code:0x0063 */
+static GUI_CONST_STORAGE unsigned char ac0063[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXXX____, ________,
+ ____XXXX, ___XX___, ________,
+ ____XXX_, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ________, ________,
+ __XXX___, ________, ________,
+ __XXX___, ________, ________,
+ __XXX___, ________, ________,
+ __XXX___, ________, ________,
+ __XXX___, _____XX_, ________,
+ ___XXX__, _____XX_, ________,
+ ___XXX__, ____XX__, ________,
+ ____XXX_, ___XX___, ________,
+ ______XX, XXXX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: d code:0x0064 */
+static GUI_CONST_STORAGE unsigned char ac0064[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ____XX__, ________,
+ ________, _XXXXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ _____XXX, XXXXXX__, ________,
+ ____XXX_, __XXXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ ___XX___, ___XXX__, ________,
+ ___XXX__, __XXXX__, ________,
+ ____XXX_, _XXXXXXX, ________,
+ _____XXX, XX_XX___, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: e code:0x0065 */
+static GUI_CONST_STORAGE unsigned char ac0065[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXX_____, ________,
+ ____XXX_, __XXX___, ________,
+ ____XX__, ___XXX__, ________,
+ ___XXX__, ____XX__, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXXXXX, XXXXXXX_, ________,
+ __XXX___, ________, ________,
+ __XXX___, ________, ________,
+ __XXX___, ________, ________,
+ ___XXX__, _____XX_, ________,
+ ___XXX__, ____XX__, ________,
+ ____XXXX, ___XXX__, ________,
+ ______XX, XXXX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: f code:0x0066 */
+static GUI_CONST_STORAGE unsigned char ac0066[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, _XXXXXX_, ________,
+ _______X, XX___XXX, ________,
+ _______X, X____XXX, ________,
+ ______XX, X____XXX, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ __XXXXXX, XXXXXX__, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ___XXXXX, XXXXX___, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: g code:0x0067 */
+static GUI_CONST_STORAGE unsigned char ac0067[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXXXXXXX, ________,
+ ____XXX_, __XXXXXX, ________,
+ ____XX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ____XX__, ___XXX__, ________,
+ ____XXX_, __XXX___, ________,
+ ____XXXX, XXXX____, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXXXX, XXX_____, ________,
+ ____XXXX, XXXXXX__, ________,
+ ___XXX__, ___XXXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ ___XXX__, ___XXX__, ________,
+ _____XXX, XXXX____, ________};
+
+/* char: h code:0x0068 */
+static GUI_CONST_STORAGE unsigned char ac0068[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ____XX__, ________, ________,
+ _XXXXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX_X, XXXX____, ________,
+ ___XXXXX, __XXX___, ________,
+ ___XXXX_, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ _XXXXXXX, _XXXXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: i code:0x0069 */
+static GUI_CONST_STORAGE unsigned char ac0069[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _______X, XX______, ________,
+ ______XX, XXX_____, ________,
+ _______X, XX______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, XX______, ________,
+ ___XXXXX, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ ___XXXXX, XXXXXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: j code:0x006A */
+static GUI_CONST_STORAGE unsigned char ac006A[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, __XXXX__, ________,
+ ________, _XXXXX__, ________,
+ ________, __XXX___, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ___XX___, ________,
+ ______XX, XXXXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ________, __XXX___, ________,
+ ___XXX__, _XXX____, ________,
+ ___XXX__, _XX_____, ________,
+ ____XXXX, XX______, ________};
+
+/* char: k code:0x006B */
+static GUI_CONST_STORAGE unsigned char ac006B[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ____XX__, ________, ________,
+ _XXXXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, _XXXXXX_, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, __XX____, ________,
+ ___XXX__, _XX_____, ________,
+ ___XXX__, XX______, ________,
+ ___XXX_X, XX______, ________,
+ ___XXXXX, XX______, ________,
+ ___XXXXX, XXX_____, ________,
+ ___XXXX_, XXX_____, ________,
+ ___XXX__, _XXX____, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, __XXX___, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXXX_, ________,
+ _XXXXXXX, __XXXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: l code:0x006C */
+static GUI_CONST_STORAGE unsigned char ac006C[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, XX______, ________,
+ ___XXXXX, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ ___XXXXX, XXXXXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: m code:0x006D */
+static GUI_CONST_STORAGE unsigned char ac006D[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ __XX____, ________, ________,
+ XXXXXXXX, X_XXXXX_, ________,
+ _XXXX__X, XXX__XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ _XXX___X, XX___XXX, ________,
+ XXXXX_XX, XXX_XXXX, X_______,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: n code:0x006E */
+static GUI_CONST_STORAGE unsigned char ac006E[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ____XX_X, XXXX____, ________,
+ _XXXXXXX, __XXX___, ________,
+ ___XXXX_, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ _XXXXXXX, _XXXXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: o code:0x006F */
+static GUI_CONST_STORAGE unsigned char ac006F[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXX_____, ________,
+ ____XXX_, __XXX___, ________,
+ ____XX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ __XXX___, ____XXX_, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ____XXX_, __XXX___, ________,
+ ______XX, XXX_____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: p code:0x0070 */
+static GUI_CONST_STORAGE unsigned char ac0070[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ____XX_X, XXXX____, ________,
+ _XXXXXXX, __XXX___, ________,
+ ___XXXX_, ___XXX__, ________,
+ ___XXX__, ____XX__, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXXX_, ___XXX__, ________,
+ ___XXXXX, __XXX___, ________,
+ ___XXX_X, XXXX____, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ ___XXX__, ________, ________,
+ _XXXXXXX, ________, ________};
+
+/* char: q code:0x0071 */
+static GUI_CONST_STORAGE unsigned char ac0071[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXX_XX__, ________,
+ ____XXX_, _XXXXX__, ________,
+ ___XXX__, __XXXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ __XXX___, ___XXX__, ________,
+ ___XX___, ___XXX__, ________,
+ ___XXX__, __XXXX__, ________,
+ ____XXX_, _XXXXX__, ________,
+ _____XXX, XX_XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, ___XXX__, ________,
+ ________, _XXXXXXX, ________};
+
+/* char: r code:0x0072 */
+static GUI_CONST_STORAGE unsigned char ac0072[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _____XXX, ___XXXX_, ________,
+ _XXXXXXX, _XXX_XXX, ________,
+ _____XXX, XX___XXX, ________,
+ _____XXX, XX______, ________,
+ _____XXX, X_______, ________,
+ _____XXX, ________, ________,
+ _____XXX, ________, ________,
+ _____XXX, ________, ________,
+ _____XXX, ________, ________,
+ _____XXX, ________, ________,
+ _____XXX, ________, ________,
+ _____XXX, ________, ________,
+ _____XXX, ________, ________,
+ _____XXX, ________, ________,
+ _XXXXXXX, XXXX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: s code:0x0073 */
+static GUI_CONST_STORAGE unsigned char ac0073[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ______XX, XXXX_XX_, ________,
+ _____XXX, ___XXXX_, ________,
+ ____XXX_, ____XXX_, ________,
+ ____XXX_, _____XX_, ________,
+ ____XXX_, _____XX_, ________,
+ ____XXXX, ________, ________,
+ _____XXX, XXX_____, ________,
+ _______X, XXXXX___, ________,
+ ________, _XXXXX__, ________,
+ ________, ___XXXX_, ________,
+ ___XX___, ____XXX_, ________,
+ ___XX___, ____XXX_, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXXX_, ___XXX__, ________,
+ ___XX_XX, XXXXX___, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: t code:0x0074 */
+static GUI_CONST_STORAGE unsigned char ac0074[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ ______XX, X_______, ________,
+ _____XXX, X_______, ________,
+ __XXXXXX, XXXXXX__, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X_______, ________,
+ ______XX, X____XX_, ________,
+ ______XX, X____XX_, ________,
+ _______X, XX__XX__, ________,
+ ________, XXXXX___, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: u code:0x0075 */
+static GUI_CONST_STORAGE unsigned char ac0075[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ____XX__, ____XX__, ________,
+ _XXXXX__, _XXXXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, __XXXX__, ________,
+ ____XXX_, _XXXXXXX, ________,
+ _____XXX, XX_XX___, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: v code:0x0076 */
+static GUI_CONST_STORAGE unsigned char ac0076[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXX_, __XXXXXX, ________,
+ ___XXX__, ____XXX_, ________,
+ ___XXX__, ____XX__, ________,
+ ___XXX__, ___XXX__, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ _____XX_, __XX____, ________,
+ _____XXX, __XX____, ________,
+ _____XXX, __XX____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, X_______, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: w code:0x0077 */
+static GUI_CONST_STORAGE unsigned char ac0077[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ XXXXXXXX, XXX_XXXX, X_______,
+ _XXX___X, XX___XXX, ________,
+ __XX___X, XX___XX_, ________,
+ __XXX__X, XX___XX_, ________,
+ __XXX__X, XX___XX_, ________,
+ __XXX__X, XXX_XX__, ________,
+ ___XX__X, XXX_XX__, ________,
+ ___XXXXX, XXX_XX__, ________,
+ ___XXXXX, _XX_XX__, ________,
+ ___XXXXX, _XXXX___, ________,
+ ____XXXX, _XXXX___, ________,
+ ____XXX_, _XXXX___, ________,
+ ____XXX_, __XXX___, ________,
+ ____XXX_, __XX____, ________,
+ _____XX_, __XX____, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: x code:0x0078 */
+static GUI_CONST_STORAGE unsigned char ac0078[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ __XXXXXX, _XXXXXX_, ________,
+ ____XXX_, ___XX___, ________,
+ ____XXXX, ___XX___, ________,
+ _____XXX, __XX____, ________,
+ ______XX, XXX_____, ________,
+ ______XX, XXX_____, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, XXX_____, ________,
+ ______XX, _XXX____, ________,
+ _____XX_, _XXX____, ________,
+ _____XX_, __XXX___, ________,
+ ____XX__, ___XXX__, ________,
+ ___XXX__, ___XXX__, ________,
+ _XXXXXX_, _XXXXXXX, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: y code:0x0079 */
+static GUI_CONST_STORAGE unsigned char ac0079[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ _XXXXXX_, __XXXXXX, ________,
+ ___XXX__, ___XXX__, ________,
+ ___XXX__, ___XX___, ________,
+ ____XX__, ___XX___, ________,
+ ____XXX_, ___XX___, ________,
+ _____XX_, __XX____, ________,
+ _____XXX, __XX____, ________,
+ _____XXX, __XX____, ________,
+ ______XX, _XX_____, ________,
+ ______XX, XXX_____, ________,
+ _______X, XXX_____, ________,
+ _______X, XX______, ________,
+ _______X, XX______, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ _______X, X_______, ________,
+ ______XX, ________, ________,
+ __XXXXXX, ________, ________,
+ __XXXXX_, ________, ________};
+
+/* char: z code:0x007A */
+static GUI_CONST_STORAGE unsigned char ac007A[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ __XXXXXX, XXXXXX__, ________,
+ __XXX___, __XXXX__, ________,
+ __XXX___, __XXX___, ________,
+ __XX____, _XXX____, ________,
+ __XX____, XXXX____, ________,
+ ________, XXX_____, ________,
+ _______X, XX______, ________,
+ ______XX, XX______, ________,
+ ______XX, X_______, ________,
+ _____XXX, ________, ________,
+ ____XXXX, _____XX_, ________,
+ ____XXX_, _____XX_, ________,
+ ___XXX__, ____XXX_, ________,
+ __XXX___, ___XXX__, ________,
+ __XXXXXX, XXXXXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: { code:0x007B */
+static GUI_CONST_STORAGE unsigned char ac007B[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ____XXX_, ________,
+ ________, ___XX___, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, XXX_____, ________,
+ _______X, XX______, ________,
+ ________, _XX_____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, __XX____, ________,
+ ________, ___XX___, ________,
+ ________, ____XXX_, ________,
+ ________, ________, ________};
+
+/* char: | code:0x007C */
+static GUI_CONST_STORAGE unsigned char ac007C[96] = {
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________,
+ ________, XX______, ________};
+
+/* char: } code:0x007D */
+static GUI_CONST_STORAGE unsigned char ac007D[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ___XXX__, ________, ________,
+ _____XX_, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ _______X, XX______, ________,
+ ________, XXX_____, ________,
+ _______X, X_______, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ ______XX, ________, ________,
+ _____XX_, ________, ________,
+ ___XXX__, ________, ________,
+ ________, ________, ________};
+
+/* char: ~ code:0x007E */
+static GUI_CONST_STORAGE unsigned char ac007E[96] = {
+ ________, ________, ________,
+ ___XXXXX, ________, ________,
+ __XX__XX, X_______, ________,
+ _XX____X, XX____XX, ________,
+ _XX_____, XX____XX, ________,
+ ________, XXXX_XX_, ________,
+ ________, __XXXX__, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: code:0x007F */
+static GUI_CONST_STORAGE unsigned char ac007F[96] = {
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________,
+ ________, ________, ________};
+
+/* char: √ code:0xA1CC */
+static GUI_CONST_STORAGE unsigned char acA1CC[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ __XXXXX_,
+ ___XXX__,
+ ________,
+ ________,
+ _XXXXXXX,
+ ___XX___,
+ ________,
+ ________,
+ _____XXX,
+ X_XXX___,
+ ________,
+ ________,
+ ______XX,
+ X_XXX___,
+ ________,
+ ________,
+ _______X,
+ XXXX____,
+ ________,
+ ________,
+ _______X,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: ℃ code:0xA1E6 */
+static GUI_CONST_STORAGE unsigned char acA1E6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ XX______,
+ XXXXXXX_,
+ ________,
+ ____XX__,
+ XX____XX,
+ XXX___XX,
+ X_______,
+ ____XX__,
+ XX___XXX,
+ ________,
+ XXXX____,
+ ____XX__,
+ XX__XXX_,
+ ________,
+ _XXX____,
+ _____XXX,
+ X__XXX__,
+ ________,
+ __XX____,
+ ________,
+ ___XXX__,
+ ________,
+ __XX____,
+ ________,
+ __XXX___,
+ ________,
+ __XX____,
+ ________,
+ __XXX___,
+ ________,
+ __XX____,
+ ________,
+ __XXX___,
+ ________,
+ __XX____,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ ________,
+ __XX____,
+ ________,
+ ____XXX_,
+ ________,
+ _XX_____,
+ ________,
+ _____XXX,
+ X______X,
+ XX______,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: ○ code:0xA1F0 */
+static GUI_CONST_STORAGE unsigned char acA1F0[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ________,
+ ________,
+ __XXXX__,
+ ___XXXX_,
+ ________,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ ________,
+ ________,
+ _XX_____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XX_,
+ ________,
+ ________,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ __XX____,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XX____,
+ _____XX_,
+ ________,
+ ________,
+ __XX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ ______XX,
+ ________,
+ ________,
+ _XX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ __XXXX__,
+ ___XXXX_,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: ● code:0xA1F1 */
+static GUI_CONST_STORAGE unsigned char acA1F1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ __XXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: ↑ code:0xA1FC */
+static GUI_CONST_STORAGE unsigned char acA1FC[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XX_X,
+ XX_XX___,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: ↓ code:0xA1FD */
+static GUI_CONST_STORAGE unsigned char acA1FD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ____XX_X,
+ XX_XX___,
+ ________,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 版 code:0xB0E6 */
+static GUI_CONST_STORAGE unsigned char acB0E6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ __XX____,
+ ____XX__,
+ _XX_____,
+ ________,
+ XXXXX___,
+ ____XXX_,
+ _XX_____,
+ _____XXX,
+ XXXXX___,
+ ____XX__,
+ _XX____X,
+ XXXXXXX_,
+ ________,
+ ____XX__,
+ _XX____X,
+ XX______,
+ ________,
+ ____XX__,
+ _XX____X,
+ XX______,
+ ________,
+ ____XX__,
+ _XX____X,
+ XX______,
+ ________,
+ ____XX__,
+ _XX_XX_X,
+ XX______,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XX______,
+ __XX____,
+ ____XX__,
+ _______X,
+ XXXXXXXX,
+ XXXXX___,
+ ____XX__,
+ _______X,
+ XXXX____,
+ __XXX___,
+ ____XX__,
+ _______X,
+ XXXX____,
+ _XXX____,
+ ____XX__,
+ _______X,
+ XXXX____,
+ _XXX____,
+ ____XX__,
+ __XX___X,
+ XX_XX___,
+ _XXX____,
+ ____XXXX,
+ XXXXX__X,
+ X__XX___,
+ _XX_____,
+ ____XX__,
+ __XXX__X,
+ X__XX___,
+ XXX_____,
+ ____XX__,
+ __XXX__X,
+ X___XX__,
+ XX______,
+ ____XX__,
+ __XXX_XX,
+ X___XX_X,
+ XX______,
+ ____XX__,
+ __XXX_XX,
+ X___XXXX,
+ XX______,
+ ___XXX__,
+ __XXX_XX,
+ X____XXX,
+ X_______,
+ ___XXX__,
+ __XXX_XX,
+ _____XXX,
+ ________,
+ ___XXX__,
+ __XXX_XX,
+ ____XXXX,
+ X_______,
+ ___XX___,
+ __XXXXXX,
+ ___XXX_X,
+ XXX_____,
+ ___XX___,
+ __XXXXX_,
+ __XXX___,
+ XXXX____,
+ __XXX___,
+ __XXXXX_,
+ _XXX____,
+ _XXXXX__,
+ __XX____,
+ ____XX__,
+ XXX_____,
+ __XXXXXX,
+ __XX____,
+ ___XX_XX,
+ X_______,
+ ___XXX__,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 报 code:0xB1A8 */
+static GUI_CONST_STORAGE unsigned char acB1A8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX____X,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ XX_____X,
+ XX______,
+ XXX_____,
+ _______X,
+ XX_____X,
+ XX______,
+ XXX_____,
+ _______X,
+ XX_____X,
+ XX______,
+ XXX_____,
+ _______X,
+ XX_____X,
+ XX______,
+ XXX_____,
+ _______X,
+ XX_XXX_X,
+ XX______,
+ XXX_____,
+ _XXXXXXX,
+ XXXXXXXX,
+ XX______,
+ XXX_____,
+ _______X,
+ XX_____X,
+ XX__XXXX,
+ XX______,
+ _______X,
+ XX_____X,
+ XX____XX,
+ XX______,
+ _______X,
+ XX_____X,
+ XX______,
+ ________,
+ _______X,
+ XX_____X,
+ XX______,
+ __XX____,
+ _______X,
+ XX__XXXX,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ XXXXX__X,
+ XXXX____,
+ _XXX____,
+ ______XX,
+ XXX____X,
+ XXXX____,
+ _XX_____,
+ ____XXXX,
+ XX_____X,
+ XX_XX___,
+ XXX_____,
+ __XXXXXX,
+ XX_____X,
+ XX_XX___,
+ XXX_____,
+ __XXX__X,
+ XX_____X,
+ XX__XX_X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX__XX_X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX___XXX,
+ X_______,
+ _______X,
+ XX_____X,
+ XX___XXX,
+ ________,
+ _______X,
+ XX_____X,
+ XX___XXX,
+ X_______,
+ _______X,
+ XX_____X,
+ XX__XXXX,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_XXX__,
+ XXXX____,
+ _______X,
+ XX_____X,
+ XXXXX___,
+ _XXXXX__,
+ _______X,
+ XX_____X,
+ XXX_____,
+ __XXXXX_,
+ ___XXXXX,
+ XX_____X,
+ XX______,
+ ________,
+ _____XXX,
+ X______X,
+ XX______,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 备 code:0xB1B8 */
+static GUI_CONST_STORAGE unsigned char acB1B8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ______XX,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ __XXX___,
+ _____XXX,
+ ________,
+ ________,
+ _XXXX___,
+ ____XXX_,
+ ________,
+ ________,
+ _XXXXX__,
+ ___XXXX_,
+ ________,
+ ________,
+ XXX_XXX_,
+ ___XXX__,
+ ________,
+ _______X,
+ XX___XXX,
+ __XXX___,
+ ________,
+ ______XX,
+ X_____XX,
+ _XXX____,
+ ________,
+ _____XXX,
+ ______XX,
+ XXX_____,
+ ________,
+ ____XX__,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ _XXX____,
+ ________,
+ ________,
+ ____XXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ___XX___,
+ ____XXXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ XXXX____,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XXXX,
+ XXX_____,
+ XX_____X,
+ XXXXXX__,
+ __XXX___,
+ XXX_____,
+ XX_____X,
+ XX______,
+ ________,
+ XXX_____,
+ XX_____X,
+ XX______,
+ ________,
+ XXX_____,
+ XX_____X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ XX_____X,
+ XX______,
+ ________,
+ XXX_____,
+ XX_____X,
+ XX______,
+ ________,
+ XXX_____,
+ XX_____X,
+ XX______,
+ ________,
+ XXX_____,
+ XX_____X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 本 code:0xB1BE */
+static GUI_CONST_STORAGE unsigned char acB1BE[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XX_XX___,
+ ________,
+ ________,
+ ____XXXX,
+ XX_XX___,
+ ________,
+ ________,
+ ___XXX_X,
+ XX__XX__,
+ ________,
+ ________,
+ ___XXX_X,
+ XX__XXX_,
+ ________,
+ ________,
+ __XXX__X,
+ XX___XX_,
+ ________,
+ ________,
+ _XXX___X,
+ XX___XXX,
+ ________,
+ ________,
+ XXX____X,
+ XX____XX,
+ X_______,
+ ________,
+ XXX____X,
+ XX_____X,
+ XXX_____,
+ _______X,
+ XX_____X,
+ XX______,
+ XXXX____,
+ ______XX,
+ _______X,
+ XX___XXX,
+ _XXXXX__,
+ _____XX_,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_XXXXXX,
+ ____XX__,
+ _______X,
+ XX______,
+ ___XX___,
+ __XXX___,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 闭 code:0xB1D5 */
+static GUI_CONST_STORAGE unsigned char acB1D5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ ___XX___,
+ ________,
+ _XXX_XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ____XXX_,
+ _XXX____,
+ _XX_____,
+ __XXX___,
+ ____XXXX,
+ ________,
+ _XXX____,
+ __XXX___,
+ ____XXX_,
+ ________,
+ _XXXX___,
+ __XXX___,
+ ____XXX_,
+ ________,
+ _XXX____,
+ __XXX___,
+ ____XXX_,
+ ________,
+ _XXX____,
+ __XXX___,
+ ____XXX_,
+ ________,
+ _XXX___X,
+ X_XXX___,
+ ____XXX_,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXX_,
+ ________,
+ XXXX____,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XXXX____,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XXXX____,
+ __XXX___,
+ ____XXX_,
+ ______XX,
+ XXXX____,
+ __XXX___,
+ ____XXX_,
+ _____XXX,
+ _XXX____,
+ __XXX___,
+ ____XXX_,
+ _____XX_,
+ _XXX____,
+ __XXX___,
+ ____XXX_,
+ ____XX__,
+ _XXX____,
+ __XXX___,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ __XXX___,
+ ____XXX_,
+ __XX____,
+ _XXX____,
+ __XXX___,
+ ____XXX_,
+ _XX_____,
+ _XXX____,
+ __XXX___,
+ ____XXXX,
+ XX______,
+ _XXX____,
+ __XXX___,
+ ____XXX_,
+ _____XX_,
+ _XXX____,
+ __XXX___,
+ ____XXX_,
+ ______XX,
+ XXXX____,
+ __XXX___,
+ ____XXX_,
+ ________,
+ XXX_____,
+ __XXX___,
+ ____XXX_,
+ ________,
+ XX______,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ______XX,
+ XXXXX___,
+ ____XXX_,
+ ________,
+ ________,
+ XXXXX___,
+ ____XX__,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 编 code:0xB1E0 */
+static GUI_CONST_STORAGE unsigned char acB1E0[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ __XX____,
+ ______XX,
+ _____XXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ _____XXX,
+ ________,
+ __XXX___,
+ _____XX_,
+ _____XXX,
+ ________,
+ __XXX___,
+ ____XX__,
+ __XXXXXX,
+ ________,
+ __XXX___,
+ ____XX__,
+ _XXX_XXX,
+ ________,
+ __XXX___,
+ ___XX___,
+ _XX__XXX,
+ XXXXXXXX,
+ XXXXX___,
+ __XXXXXX,
+ XXX__XXX,
+ ________,
+ __XX____,
+ __XXXX_X,
+ XX___XXX,
+ ________,
+ ________,
+ _______X,
+ X____XXX,
+ ________,
+ ____XX__,
+ ______XX,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ _____XXX,
+ X__XX__X,
+ X__XXX__,
+ ____XXX_,
+ _____XXX,
+ X__XX__X,
+ X__XXX__,
+ ___XXX__,
+ _XXXXXXX,
+ X__XX__X,
+ X__XXX__,
+ __XXXXXX,
+ XX__XXXX,
+ X__XX__X,
+ X__XXX__,
+ ___XXX__,
+ ____XXXX,
+ X__XX__X,
+ X__XXX__,
+ ________,
+ ____XX_X,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ___XXX_X,
+ X__XX__X,
+ X__XXX__,
+ _______X,
+ XXXXXX_X,
+ X__XX__X,
+ X__XXX__,
+ ___XXXXX,
+ X__XX__X,
+ X__XX__X,
+ X__XXX__,
+ __XXXX__,
+ __XXX__X,
+ X__XX__X,
+ X__XXX__,
+ __XX____,
+ __XX___X,
+ X__XX__X,
+ X__XXX__,
+ ________,
+ _XXX___X,
+ X__XX___,
+ ___XXX__,
+ ________,
+ _XX____X,
+ X______X,
+ XXXXXX__,
+ ________,
+ XX_____X,
+ X_______,
+ __XXX___,
+ _______X,
+ X_____XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 标 code:0xB1EA */
+static GUI_CONST_STORAGE unsigned char acB1EA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ __XX____,
+ _______X,
+ X_____XX,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X__XX___,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ___XXX__,
+ ______XX,
+ X___XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ XX______,
+ ____XXX_,
+ ________,
+ _____XXX,
+ XXXX____,
+ ____XXX_,
+ ________,
+ _____XXX,
+ X_XXX___,
+ ____XXX_,
+ ________,
+ _____XXX,
+ X_XXX__X,
+ XXX_XXX_,
+ XX______,
+ ____XXXX,
+ X__XX__X,
+ XX__XXX_,
+ XXX_____,
+ ____XX_X,
+ X______X,
+ XX__XXX_,
+ _XXX____,
+ ___XXX_X,
+ X_____XX,
+ X___XXX_,
+ __XXX___,
+ ___XX__X,
+ X_____XX,
+ ____XXX_,
+ __XXX___,
+ __XX___X,
+ X____XXX,
+ ____XXX_,
+ ___XXX__,
+ __XX___X,
+ X____XX_,
+ ____XXX_,
+ ___XXX__,
+ _______X,
+ X___XX__,
+ ____XXX_,
+ ___XXXX_,
+ _______X,
+ X__XXX__,
+ ____XXX_,
+ ____XX__,
+ _______X,
+ X__XX___,
+ ____XXX_,
+ ____XX__,
+ _______X,
+ X_XX___X,
+ X___XXX_,
+ ________,
+ _______X,
+ X_______,
+ XXXXXXX_,
+ ________,
+ _______X,
+ X_______,
+ __XXXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 擦 code:0xB2C1 */
+static GUI_CONST_STORAGE unsigned char acB2C1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ __XX____,
+ ________,
+ ______XX,
+ XX______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X____XX_,
+ ____XX__,
+ ____XX__,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X___XXXX,
+ X_______,
+ ___XXX__,
+ ______XX,
+ X__XXXXX,
+ X_______,
+ ___XX___,
+ ______XX,
+ XXXXXXXX,
+ X__XXXX_,
+ __XX____,
+ _XXXXXXX,
+ XXXX__XX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X____XXX,
+ __XXXXX_,
+ __XXX___,
+ ______XX,
+ X____XXX,
+ X_XXX_XX,
+ _XX_____,
+ ______XX,
+ X___XXXX,
+ XXXX__XX,
+ XX______,
+ ______XX,
+ X___XX_X,
+ XXXX___X,
+ X_______,
+ ______XX,
+ X_XXXXX_,
+ XXX____X,
+ XX______,
+ ______XX,
+ XXXX__XX,
+ XX____XX,
+ XXX_____,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ X_____XX,
+ X_______,
+ __XXXXXX,
+ ___XXXXX,
+ X____XXX,
+ ________,
+ _XXXXX__,
+ _XXXXXXX,
+ X___XXXX,
+ XXXXXXXX,
+ XXXX____,
+ __XXX_XX,
+ X_XXX___,
+ ____XX__,
+ ________,
+ ______XX,
+ X_______,
+ XX__XX__,
+ ________,
+ ______XX,
+ X______X,
+ XXX_XX__,
+ XX______,
+ ______XX,
+ X_____XX,
+ X___XX__,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ ____XX__,
+ __XXX___,
+ ______XX,
+ X___XXX_,
+ ____XX__,
+ __XXXX__,
+ ______XX,
+ X__XXX__,
+ ____XX__,
+ ___XXX__,
+ __XXXXXX,
+ X_XX____,
+ XXXXXX__,
+ ___XXX__,
+ ____XXXX,
+ ________,
+ __XXXX__,
+ ________,
+ _____XX_,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 菜 code:0xB2CB */
+static GUI_CONST_STORAGE unsigned char acB2CB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXX__,
+ ________,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ________,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ________,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ________,
+ ________,
+ ___XXX__,
+ __XX__XX,
+ XX______,
+ ________,
+ ________,
+ __XXXXXX,
+ XXX_____,
+ ________,
+ __XXXXXX,
+ XXXXX___,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ _______X,
+ XX______,
+ ______XX,
+ _______X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX______,
+ XXX___XX,
+ X_______,
+ ________,
+ XXX_____,
+ XXX___XX,
+ ________,
+ ________,
+ XXX____X,
+ X____XX_,
+ ________,
+ ________,
+ _______X,
+ XXX_XX__,
+ ________,
+ ________,
+ _______X,
+ XX_XX___,
+ __XXXX__,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ________,
+ ___XXX_X,
+ XX_XXX__,
+ ________,
+ ________,
+ __XXX__X,
+ XX__XXX_,
+ ________,
+ ________,
+ _XXX___X,
+ XX___XXX,
+ ________,
+ _______X,
+ XX_____X,
+ XX____XX,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ XXXXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ _XXXXX__,
+ __XXX___,
+ _______X,
+ XX______,
+ ___XX___,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 参 code:0xB2CE */
+static GUI_CONST_STORAGE unsigned char acB2CE[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ____XXXX,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XX___,
+ ________,
+ ________,
+ __XXX___,
+ ____XXXX,
+ ________,
+ ________,
+ XXX_____,
+ ______XX,
+ XX______,
+ ______XX,
+ X_______,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ XXXXXXXX,
+ X_______,
+ XXX_____,
+ ________,
+ _____XXX,
+ ________,
+ _XX_____,
+ ________,
+ ____XXX_,
+ ________,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ___XXX__,
+ __XX____,
+ ________,
+ ________,
+ __XXX___,
+ ___XX___,
+ ________,
+ ________,
+ _XXX____,
+ XX__XXX_,
+ ________,
+ ________,
+ XXX____X,
+ XXX__XXX,
+ ________,
+ _______X,
+ XX____XX,
+ X_____XX,
+ XX______,
+ ______XX,
+ X___XXXX,
+ ________,
+ XXXXXX__,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ _XXXXXX_,
+ ___XX___,
+ _XXXX___,
+ _XXXXX__,
+ ___XX___,
+ __XX____,
+ XXX_____,
+ XXXX____,
+ ________,
+ ______XX,
+ X______X,
+ XX_____X,
+ X_______,
+ ________,
+ _____XXX,
+ X_____XX,
+ XX______,
+ ________,
+ ___XXXX_,
+ _____XXX,
+ X_______,
+ ________,
+ _XXX____,
+ ___XXXXX,
+ ________,
+ ______XX,
+ XX______,
+ _XXXXX__,
+ ________,
+ ________,
+ _______X,
+ XXXX____,
+ ________,
+ ________,
+ _____XXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ___XXXXX,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 差 code:0xB2EE */
+static GUI_CONST_STORAGE unsigned char acB2EE[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ _____XX_,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ X_______,
+ ________,
+ __XXX___,
+ ____XXXX,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ __XXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ XXX_____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ___XX___,
+ ________,
+ ____XXX_,
+ ________,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ XXX_____,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ XX______,
+ _XXX____,
+ ________,
+ _______X,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ ________,
+ _XXX____,
+ ________,
+ _____XX_,
+ ________,
+ _XXX____,
+ ________,
+ ___XXX__,
+ ________,
+ _XXX____,
+ ________,
+ __XX____,
+ ________,
+ _XXX____,
+ ___XXX__,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 常 code:0xB3A3 */
+static GUI_CONST_STORAGE unsigned char acB3A3[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_____XX,
+ ________,
+ ________,
+ XX_____X,
+ XX____XX,
+ X_______,
+ ________,
+ _XXX___X,
+ XX___XXX,
+ X_______,
+ ________,
+ _XXXX__X,
+ XX___XX_,
+ ________,
+ ________,
+ __XXX__X,
+ XX__XX__,
+ ________,
+ ________,
+ __XX___X,
+ XX_XX___,
+ ___XXX__,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ ________,
+ ________,
+ ___XXX__,
+ ____XX__,
+ ________,
+ ________,
+ __XXX___,
+ ___XXX__,
+ _XX_____,
+ _____XX_,
+ __XX____,
+ __XXX___,
+ _XXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ _XXX___X,
+ XX___XXX,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ______XX,
+ _______X,
+ XX______,
+ XX______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX__XXX_,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX____XX,
+ XX______,
+ ______XX,
+ X______X,
+ XX_____X,
+ XX______,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 厂 code:0xB3A7 */
+static GUI_CONST_STORAGE unsigned char acB3A7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ______XX,
+ ________,
+ ________,
+ __XXXX__,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 程 code:0xB3CC */
+static GUI_CONST_STORAGE unsigned char acB3CC[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ _XXXXX_X,
+ X_______,
+ ___XX___,
+ ______XX,
+ XXXX___X,
+ XXXXXXXX,
+ XXXXXX__,
+ __XXXXXX,
+ XX_____X,
+ XX______,
+ __XXX___,
+ _______X,
+ XX_____X,
+ XX______,
+ __XXX___,
+ _______X,
+ XX_____X,
+ XX______,
+ __XXX___,
+ _______X,
+ XX_____X,
+ XX______,
+ __XXX___,
+ _______X,
+ XX_____X,
+ XX______,
+ __XXX___,
+ _______X,
+ XX__XX_X,
+ XX______,
+ __XXX___,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ XX_____X,
+ XX______,
+ __XXX___,
+ _______X,
+ XX_____X,
+ XX______,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ___XXX__,
+ ______XX,
+ XXXX__XX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ XXXXXX__,
+ _____XX_,
+ ________,
+ _____XXX,
+ XX_XXX__,
+ _____XX_,
+ ________,
+ _____XXX,
+ XX__XX__,
+ _____XX_,
+ ________,
+ _____XXX,
+ XX__XX__,
+ _____XX_,
+ ________,
+ ____XXXX,
+ XX______,
+ _____XX_,
+ ________,
+ ____XX_X,
+ XX______,
+ _____XX_,
+ ___XX___,
+ ___XX__X,
+ XX_____X,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XX__X,
+ XX______,
+ _____XX_,
+ ________,
+ __XX___X,
+ XX______,
+ _____XX_,
+ ________,
+ _XX____X,
+ XX______,
+ _____XX_,
+ ________,
+ _______X,
+ XX______,
+ _____XX_,
+ ________,
+ _______X,
+ XX______,
+ _____XX_,
+ ____XX__,
+ _______X,
+ XX__XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 出 code:0xB3F6 */
+static GUI_CONST_STORAGE unsigned char acB3F6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ XXXX____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ _______X,
+ XX______,
+ XXX_____,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ _____XX_,
+ _______X,
+ XX______,
+ _XX_____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXXX___,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XX_,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 除 code:0xB3FD */
+static GUI_CONST_STORAGE unsigned char acB3FD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ __XX____,
+ __XXXX__,
+ ________,
+ ___XXXXX,
+ XXXXX___,
+ __XXXX__,
+ ________,
+ ___XXX__,
+ _XXXX___,
+ __XXXXX_,
+ ________,
+ ___XXX__,
+ _XXX____,
+ _XXX_XX_,
+ ________,
+ ___XXX__,
+ _XX_____,
+ XXX___XX,
+ ________,
+ ___XXX__,
+ XXX_____,
+ XXX___XX,
+ X_______,
+ ___XXX__,
+ XX_____X,
+ XX_____X,
+ XX______,
+ ___XXX__,
+ XX____XX,
+ X_______,
+ XXXX____,
+ ___XXX_X,
+ X_____XX,
+ ________,
+ _XXXXX__,
+ ___XXX_X,
+ X____XX_,
+ _______X,
+ X_XXXXX_,
+ ___XXX__,
+ XX_XXXXX,
+ XXXXXXXX,
+ XX_XXX__,
+ ___XXX__,
+ XXXX____,
+ ___XXX__,
+ ________,
+ ___XXX__,
+ _XX_____,
+ ___XXX__,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ___XXX__,
+ ________,
+ ___XXX__,
+ __XX____,
+ ___XXX__,
+ __XXX___,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XXX__,
+ __XXX___,
+ ___XXX__,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ___XXX__,
+ ________,
+ ___XXXXX,
+ XXXX___X,
+ X__XXXXX,
+ ________,
+ ___XXX_X,
+ XXX___XX,
+ XX_XXX_X,
+ XX______,
+ ___XXX__,
+ XX____XX,
+ X__XXX__,
+ XXX_____,
+ ___XXX__,
+ _____XXX,
+ ___XXX__,
+ _XXXX___,
+ ___XXX__,
+ ____XXX_,
+ ___XXX__,
+ __XXX___,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ _XX____X,
+ XXXXXX__,
+ ________,
+ ___XXX__,
+ ________,
+ _XXXXX__,
+ ________,
+ ___XX___,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 触 code:0xB4A5 */
+static GUI_CONST_STORAGE unsigned char acB4A5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ______XX,
+ X_______,
+ _______X,
+ XX______,
+ ______XX,
+ X_______,
+ ______XX,
+ X___XX__,
+ ______XX,
+ X_______,
+ ______XX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ______XX,
+ ___XXX__,
+ ______XX,
+ X_______,
+ _____XXX,
+ ___XX___,
+ ______XX,
+ X_______,
+ ____XXX_,
+ __XX____,
+ ______XX,
+ X_______,
+ ____XX__,
+ __XX_XX_,
+ _XXXXXXX,
+ XXXXXX__,
+ ___XXXXX,
+ XXXXXXXX,
+ _XXX__XX,
+ X__XXX__,
+ __XXXXX_,
+ _XX__XXX,
+ _XXX__XX,
+ X__XXX__,
+ _XX_XXX_,
+ _XX__XXX,
+ _XXX__XX,
+ X__XXX__,
+ ____XXX_,
+ _XX__XXX,
+ _XXX__XX,
+ X__XXX__,
+ ____XXXX,
+ XXXXXXXX,
+ _XXX__XX,
+ X__XXX__,
+ ____XXX_,
+ _XX__XXX,
+ _XXX__XX,
+ X__XXX__,
+ ____XXX_,
+ _XX__XXX,
+ _XXX__XX,
+ X__XXX__,
+ ____XXX_,
+ _XX__XXX,
+ _XXX__XX,
+ X__XXX__,
+ ____XXX_,
+ _XX__XXX,
+ _XXXXXXX,
+ XXXXXX__,
+ ____XXXX,
+ XXXXXXXX,
+ _XXX__XX,
+ X__XXX__,
+ ____XXX_,
+ _XX__XXX,
+ ______XX,
+ X_______,
+ ____XXX_,
+ _XX__XXX,
+ ______XX,
+ X_______,
+ ____XX__,
+ _XX__XXX,
+ ______XX,
+ X_XX____,
+ ____XX__,
+ _XX__XXX,
+ ______XX,
+ X__XX___,
+ ____XX__,
+ _XX__XXX,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ _XX__XXX,
+ ______XX,
+ XXXXXXX_,
+ ___XX___,
+ _XX__XXX,
+ XXXXXXXX,
+ X___XXX_,
+ __XX____,
+ _XXX_XXX,
+ XXXX____,
+ _____XX_,
+ __XX____,
+ ___XXXX_,
+ XX______,
+ ________,
+ _XX_____,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 处 code:0xB4A6 */
+static GUI_CONST_STORAGE unsigned char acB4A6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ____XX__,
+ ________,
+ ________,
+ XXXX____,
+ ____XXXX,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX_____X,
+ X___XXX_,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XX__XXX_,
+ ________,
+ _______X,
+ X_____XX,
+ XX__XXXX,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXXX,
+ XX______,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ XXXX____,
+ ______XX,
+ X_____XX,
+ ____XXX_,
+ _XXXXX__,
+ _____XXX,
+ X____XXX,
+ ____XXX_,
+ ___XXX__,
+ _____XXX,
+ X____XXX,
+ ____XXX_,
+ ___XXXX_,
+ ____XXX_,
+ XX___XXX,
+ ____XXX_,
+ ____XX__,
+ ____XX__,
+ XX__XXX_,
+ ____XXX_,
+ ________,
+ ___XXX__,
+ XX__XXX_,
+ ____XXX_,
+ ________,
+ ___XX___,
+ _XX_XXX_,
+ ____XXX_,
+ ________,
+ __XX____,
+ _XXXXX__,
+ ____XXX_,
+ ________,
+ ________,
+ __XXXX__,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXXX__,
+ ____XXX_,
+ ________,
+ ________,
+ _XXXXXX_,
+ ____XX__,
+ ________,
+ ________,
+ XXX__XXX,
+ X_______,
+ ________,
+ _______X,
+ X_____XX,
+ XXXXX___,
+ ________,
+ _____XXX,
+ ________,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ ________,
+ ____XXXX,
+ XXXXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 传 code:0xB4AB */
+static GUI_CONST_STORAGE unsigned char acB4AB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ___XX___,
+ ________,
+ ________,
+ _XXXX___,
+ ___XXXX_,
+ ________,
+ ________,
+ _XXX____,
+ ___XXX__,
+ ________,
+ ________,
+ XXXX____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ __XXX___,
+ ________,
+ ________,
+ XXX_____,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ __XX____,
+ _______X,
+ XX__XXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ XX______,
+ __XX____,
+ ________,
+ ______XX,
+ XXX_____,
+ __XX____,
+ ________,
+ _____XXX,
+ XX______,
+ _XXX____,
+ ________,
+ _____XXX,
+ XX______,
+ _XXX____,
+ ___XXX__,
+ ____XX_X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ___XXX_X,
+ XX______,
+ _XX_____,
+ ________,
+ ___XX__X,
+ XX______,
+ XXX_____,
+ ________,
+ __XX___X,
+ XX______,
+ XXX_____,
+ ________,
+ _XX____X,
+ XX______,
+ XXX_____,
+ _XXX____,
+ _______X,
+ XX_____X,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ XX______,
+ XX______,
+ XXXX____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ ______XX,
+ X_______,
+ _______X,
+ XX_____X,
+ XX____XX,
+ ________,
+ _______X,
+ XX______,
+ _XXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ___XXXX_,
+ ________,
+ _______X,
+ XX______,
+ ____XXXX,
+ X_______,
+ _______X,
+ XX______,
+ ______XX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 磁 code:0xB4C5 */
+static GUI_CONST_STORAGE unsigned char acB4C5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ XX______,
+ XXX_____,
+ ________,
+ ___XX___,
+ XXX_____,
+ XXX_____,
+ __XXXXXX,
+ XXXXXX__,
+ _XXX___X,
+ XX______,
+ ______XX,
+ X_______,
+ _XXX___X,
+ X_______,
+ ______XX,
+ X_______,
+ _XX____X,
+ X___XX__,
+ ______XX,
+ X___XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ _______X,
+ X_______,
+ XX______,
+ _____XXX,
+ _______X,
+ XXX_____,
+ XXX_____,
+ _____XXX,
+ _______X,
+ XX_____X,
+ XX______,
+ _____XXX,
+ _______X,
+ XX_____X,
+ XX______,
+ _____XX_,
+ __XX__XX,
+ X_XXX__X,
+ X__XX___,
+ ____XXXX,
+ XXXXX_XX,
+ X_XXX_XX,
+ X__XXX__,
+ ____XXX_,
+ _XXX__XX,
+ __XXX_XX,
+ ___XX___,
+ ____XXX_,
+ _XXX_XXX,
+ _XXX__XX,
+ __XXX___,
+ ___XXXX_,
+ _XXX_XX_,
+ _XXX_XX_,
+ __XXX___,
+ ___XXXX_,
+ _XXXXX__,
+ _XX__XX_,
+ XXXX____,
+ __XXXXX_,
+ _XXXXXXX,
+ XXX__XXX,
+ XXXX____,
+ __XXXXX_,
+ _XXXXX__,
+ XX___XX_,
+ _XX_____,
+ _XX_XXX_,
+ _XXX____,
+ XX______,
+ XXX_____,
+ ____XXX_,
+ _XXX___X,
+ X_______,
+ XX______,
+ ____XXX_,
+ _XXX___X,
+ XXX_____,
+ XXXX____,
+ ____XXX_,
+ _XXX__XX,
+ __XX___X,
+ X__XX___,
+ ____XXXX,
+ XXXX__XX,
+ __XXX__X,
+ X___XX__,
+ ____XXX_,
+ _XXX_XX_,
+ __XXX_XX,
+ ____XXX_,
+ ____XXX_,
+ _XX_XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XXX_,
+ ____XXXX,
+ ___XXXXX,
+ XX__XXX_,
+ ____XX__,
+ ________,
+ ___XX_XX,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 次 code:0xB4CE */
+static GUI_CONST_STORAGE unsigned char acB4CE[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ________,
+ ____XXX_,
+ ________,
+ XXXX____,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X__XX__X,
+ XX______,
+ ________,
+ ______XX,
+ X_XX___X,
+ XX______,
+ ___XX___,
+ _______X,
+ X_XX___X,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ __XX__XX,
+ X_______,
+ __XXXX__,
+ ________,
+ _XX___XX,
+ __XXX___,
+ __XX____,
+ ________,
+ _XX__XXX,
+ __XXXX__,
+ _XXX____,
+ ________,
+ XX___XX_,
+ __XXXX__,
+ _XX_____,
+ ________,
+ XX__XX__,
+ __XXXX__,
+ ________,
+ _______X,
+ XX_XXX__,
+ __XXXX__,
+ ________,
+ _______X,
+ X__XX___,
+ __XXXX__,
+ ________,
+ _______X,
+ X_XX____,
+ __XXXXX_,
+ ________,
+ ______XX,
+ ________,
+ __XX_XX_,
+ ________,
+ _____XXX,
+ ________,
+ _XXX_XX_,
+ ________,
+ ___XXXXX,
+ ________,
+ _XXX_XXX,
+ ________,
+ _____XXX,
+ ________,
+ _XX___XX,
+ ________,
+ _____XXX,
+ ________,
+ XXX___XX,
+ X_______,
+ _____XXX,
+ ________,
+ XX_____X,
+ X_______,
+ _____XXX,
+ _______X,
+ XX_____X,
+ XX______,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ ____XXXX,
+ _____XXX,
+ ________,
+ XXXX____,
+ ____XXXX,
+ ____XXX_,
+ ________,
+ _XXXX___,
+ _____XXX,
+ ___XXX__,
+ ________,
+ __XXXXX_,
+ ________,
+ _XXX____,
+ ________,
+ ___XXX__,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 错 code:0xB4ED */
+static GUI_CONST_STORAGE unsigned char acB4ED[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ _XX____X,
+ X_______,
+ ______XX,
+ X_______,
+ _XXX___X,
+ XX______,
+ ______XX,
+ XX______,
+ _XXX___X,
+ XX______,
+ ______XX,
+ X_______,
+ _XXX___X,
+ XX______,
+ _____XXX,
+ ________,
+ _XXX___X,
+ XX_XX___,
+ _____XXX,
+ __XX__XX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XXX,
+ XXXXX___,
+ _XXX___X,
+ XX______,
+ _____XX_,
+ ________,
+ _XXX___X,
+ XX______,
+ ____XXX_,
+ ________,
+ _XXX___X,
+ XX______,
+ ____XX__,
+ ________,
+ _XXX___X,
+ XX______,
+ ___XXX__,
+ __XX____,
+ _XXX___X,
+ XX______,
+ ___XXXXX,
+ XXXXX___,
+ _XXX___X,
+ XX__XX__,
+ __XX__XX,
+ X___XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ __XX__XX,
+ X_______,
+ ________,
+ ________,
+ _XX___XX,
+ X______X,
+ X_______,
+ __XX____,
+ ______XX,
+ X______X,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X__XX__X,
+ XX______,
+ _XXX____,
+ __XXXXXX,
+ XXXXXX_X,
+ XX______,
+ _XXX____,
+ ______XX,
+ X______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ X______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ X______X,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ X______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ X__XX__X,
+ XX______,
+ _XXX____,
+ ______XX,
+ XXXX___X,
+ XX______,
+ _XXX____,
+ ______XX,
+ XXX____X,
+ XX______,
+ _XXX____,
+ ______XX,
+ XX_____X,
+ XXXXXXXX,
+ XXXX____,
+ _______X,
+ X______X,
+ XX______,
+ _XXX____,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 大 code:0xB4F3 */
+static GUI_CONST_STORAGE unsigned char acB4F3[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XX___,
+ ________,
+ _______X,
+ XX______,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ X_XX____,
+ ________,
+ ________,
+ _____XXX,
+ __XX____,
+ ________,
+ ________,
+ _____XXX,
+ __XXX___,
+ ________,
+ ________,
+ _____XXX,
+ ___XX___,
+ ________,
+ ________,
+ ____XXX_,
+ ____XX__,
+ ________,
+ ________,
+ ____XXX_,
+ ____XXX_,
+ ________,
+ ________,
+ ___XXX__,
+ _____XXX,
+ ________,
+ ________,
+ __XXX___,
+ ______XX,
+ X_______,
+ ________,
+ _XXX____,
+ ______XX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XXXX____,
+ _______X,
+ XX______,
+ ________,
+ XXXXXX__,
+ _____XXX,
+ ________,
+ ________,
+ __XXXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 待 code:0xB4FD */
+static GUI_CONST_STORAGE unsigned char acB4FD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ __XXX___,
+ ________,
+ ________,
+ XXXX____,
+ __XXXX__,
+ ________,
+ _______X,
+ XXX_____,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ ______XX,
+ X_______,
+ __XXX___,
+ _XX_____,
+ ______XX,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ ________,
+ __XXX___,
+ ________,
+ ____XXX_,
+ _XXX____,
+ __XXX___,
+ ________,
+ ____XX__,
+ XXXX____,
+ __XXX___,
+ ________,
+ ___XX___,
+ XXX_____,
+ __XXX___,
+ ________,
+ __XX___X,
+ XX______,
+ __XXX___,
+ ___XXX__,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ______XX,
+ ________,
+ ______XX,
+ X_______,
+ _______X,
+ XX______,
+ _____XXX,
+ X_______,
+ _______X,
+ XX______,
+ ____XX_X,
+ X_______,
+ _______X,
+ XX_XXX__,
+ ___XX__X,
+ X__XXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ __XX___X,
+ X_______,
+ _______X,
+ XX______,
+ _______X,
+ X_____XX,
+ _______X,
+ XX______,
+ _______X,
+ X______X,
+ XX_____X,
+ XX______,
+ _______X,
+ X_______,
+ XXX____X,
+ XX______,
+ _______X,
+ X_______,
+ XXX____X,
+ XX______,
+ _______X,
+ X_______,
+ _XX____X,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ __XXXXXX,
+ XX______,
+ _______X,
+ X_______,
+ _____XXX,
+ X_______,
+ ______XX,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 单 code:0xB5A5 */
+static GUI_CONST_STORAGE unsigned char acB5A5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ____XXXX,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ ___XXXX_,
+ ___XXX__,
+ ________,
+ ________,
+ ____XXX_,
+ ___XX___,
+ ________,
+ ______XX,
+ ____XX__,
+ __XX____,
+ XX______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ XX______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ XX______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ XX______,
+ ______XX,
+ X______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 弹 code:0xB5AF */
+static GUI_CONST_STORAGE unsigned char acB5AF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ _______X,
+ XX_____X,
+ XXX_____,
+ ________,
+ _XX_____,
+ XXX____X,
+ XX______,
+ ___XXXXX,
+ XXXX____,
+ _XXX__XX,
+ X_______,
+ ________,
+ _XXX____,
+ _XXX__XX,
+ ________,
+ ________,
+ _XXX____,
+ _XX__XX_,
+ __XX____,
+ ________,
+ _XXX_XXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _XXX_XXX,
+ ___XXX__,
+ __XX____,
+ ________,
+ _XXX_XXX,
+ ___XXX__,
+ __XX____,
+ ________,
+ _XXX_XXX,
+ ___XXX__,
+ __XX____,
+ ___XXXXX,
+ XXXX_XXX,
+ ___XXX__,
+ __XX____,
+ ___XXX__,
+ _XXX_XXX,
+ XXXXXXXX,
+ XXXX____,
+ ___XXX__,
+ _____XXX,
+ ___XXX__,
+ __XX____,
+ ___XXX__,
+ _____XXX,
+ ___XXX__,
+ __XX____,
+ ___XXX__,
+ _XX__XXX,
+ ___XXX__,
+ __XX____,
+ __XXXXXX,
+ XXXX_XXX,
+ XXXXXXXX,
+ XXXX____,
+ ___XX___,
+ XXX__XXX,
+ ___XXX__,
+ __XX____,
+ ________,
+ XXX__XX_,
+ ___XXX__,
+ __XX____,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ________,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ __XXXXXX,
+ XX______,
+ ___XXX__,
+ ________,
+ ____XXXX,
+ X_______,
+ ___XXX__,
+ ________,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 等 code:0xB5C8 */
+static GUI_CONST_STORAGE unsigned char acB5C8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ _______X,
+ XXX_____,
+ ____XXXX,
+ ________,
+ _______X,
+ XXX_____,
+ ___XXXX_,
+ ________,
+ ______XX,
+ XX____XX,
+ X__XXX__,
+ ____XX__,
+ ______XX,
+ XXXXXXXX,
+ XX_XXXXX,
+ XXXXXXX_,
+ _____XXX,
+ _XX_____,
+ __XXX_XX,
+ ________,
+ _____XX_,
+ __XX____,
+ __XX___X,
+ XX______,
+ ____XXX_,
+ __XXX___,
+ _XX____X,
+ XX______,
+ ___XXX__,
+ __XXX___,
+ XX_____X,
+ XX______,
+ __XX____,
+ ___XX___,
+ XXX_____,
+ XX______,
+ _XX_____,
+ ________,
+ XX______,
+ _XX_____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ____XX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ ___XXX__,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ __XX____,
+ _____XXX,
+ ________,
+ ________,
+ __XXX___,
+ _____XXX,
+ ________,
+ ________,
+ ___XXX__,
+ _____XXX,
+ ________,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ________,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ________,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ ________,
+ ________,
+ ________,
+ ___XXXXX,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 地 code:0xB5D8 */
+static GUI_CONST_STORAGE unsigned char acB5D8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_____XX,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_____XX,
+ X__XXX__,
+ ________,
+ ______XX,
+ X_____XX,
+ X__XXX__,
+ ________,
+ ______XX,
+ X_____XX,
+ X__XXX__,
+ __XX____,
+ ______XX,
+ X_____XX,
+ X__XXX__,
+ XXXXX___,
+ ______XX,
+ X_____XX,
+ X__XXXXX,
+ XXXX____,
+ ______XX,
+ X_XX__XX,
+ X__XXX__,
+ _XXX____,
+ __XXXXXX,
+ XXXXX_XX,
+ XXXXXX__,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ X__XXX__,
+ _XXX____,
+ ______XX,
+ X__XXXXX,
+ X__XXX__,
+ _XXX____,
+ ______XX,
+ X_XX__XX,
+ X__XXX__,
+ _XXX____,
+ ______XX,
+ X_____XX,
+ X__XXX__,
+ _XXX____,
+ ______XX,
+ X_____XX,
+ X__XXX__,
+ _XXX____,
+ ______XX,
+ X_____XX,
+ X__XXX__,
+ _XXX____,
+ ______XX,
+ X_____XX,
+ X__XXX__,
+ _XXX____,
+ ______XX,
+ X_____XX,
+ X__XXX_X,
+ XXXX____,
+ ______XX,
+ X_____XX,
+ X__XXX__,
+ XXX_XX__,
+ ______XX,
+ X__XXXXX,
+ X__XXX__,
+ ____XX__,
+ ______XX,
+ XXXX__XX,
+ X__XXX__,
+ ____XX__,
+ _____XXX,
+ XX____XX,
+ X_______,
+ ____XX__,
+ __XXXXXX,
+ ______XX,
+ X_______,
+ ____XX__,
+ __XXXX__,
+ ______XX,
+ X_______,
+ ____XXX_,
+ __XX____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 电 code:0xB5E7 */
+static GUI_CONST_STORAGE unsigned char acB5E7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ _____XX_,
+ ______XX,
+ X_______,
+ XX______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ XXX_____,
+ _____XXX,
+ ______XX,
+ X_______,
+ ____XX__,
+ ________,
+ ______XX,
+ X_______,
+ ____XX__,
+ ________,
+ ______XX,
+ X_______,
+ ____XX__,
+ ________,
+ ______XX,
+ X_______,
+ ____XX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 调 code:0xB5F7 */
+static GUI_CONST_STORAGE unsigned char acB5F7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ _____XX_,
+ ________,
+ ________,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ XX___XXX,
+ ____XX__,
+ ___XXX__,
+ _______X,
+ XX___XXX,
+ ____XXX_,
+ ___XX___,
+ _______X,
+ XX___XXX,
+ ____XX__,
+ ___XX___,
+ ________,
+ _____XXX,
+ ____XX_X,
+ X__XX___,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XX_XX___,
+ ________,
+ _____XXX,
+ ____XX__,
+ ___XX___,
+ _______X,
+ X____XXX,
+ ____XX__,
+ ___XX___,
+ __XXXXXX,
+ XX___XXX,
+ ____XX__,
+ ___XX___,
+ ______XX,
+ X____XXX,
+ ____XX__,
+ XX_XX___,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X____XXX,
+ ________,
+ ___XX___,
+ ______XX,
+ X____XXX,
+ _XX____X,
+ X__XX___,
+ ______XX,
+ X____XXX,
+ _XXXXXXX,
+ XX_XX___,
+ ______XX,
+ X____XXX,
+ _XXX__XX,
+ X__XX___,
+ ______XX,
+ X____XXX,
+ _XXX__XX,
+ X__XX___,
+ ______XX,
+ X____XXX,
+ _XXX__XX,
+ X__XX___,
+ ______XX,
+ X__XXXX_,
+ _XXX__XX,
+ X__XX___,
+ ______XX,
+ X_XX_XX_,
+ _XXX__XX,
+ X__XX___,
+ ______XX,
+ XXXX_XX_,
+ _XXXXXXX,
+ X__XX___,
+ ______XX,
+ XXX_XXX_,
+ _XXX__XX,
+ X__XX___,
+ ______XX,
+ XX__XX__,
+ _XXX__XX,
+ ___XX___,
+ ______XX,
+ X___XX__,
+ ________,
+ ___XX___,
+ _______X,
+ X__XX___,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ______XX,
+ XXXXX___,
+ ________,
+ __XX____,
+ ________,
+ _XXXX___,
+ ________,
+ _XX_____,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 定 code:0xB6A8 */
+static GUI_CONST_STORAGE unsigned char acB6A8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ___XX___,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XX_,
+ ________,
+ ________,
+ __XXXX__,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ ___XXXX_,
+ ________,
+ ________,
+ _XX_____,
+ ____XX__,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ XXX____X,
+ XX______,
+ ________,
+ ________,
+ XXX____X,
+ XX______,
+ ________,
+ ________,
+ XXX____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ XX_____X,
+ XX______,
+ ________,
+ _______X,
+ XXX____X,
+ XX______,
+ ________,
+ _______X,
+ XXX____X,
+ XX______,
+ ________,
+ ______XX,
+ X_XX___X,
+ XX______,
+ ________,
+ ______XX,
+ X__XX__X,
+ XX______,
+ ________,
+ _____XXX,
+ ____XXXX,
+ XX______,
+ ________,
+ _____XX_,
+ _____XXX,
+ XX______,
+ ________,
+ ____XX__,
+ _______X,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XX___,
+ ________,
+ __XXXXXX,
+ XXXXX___,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 动 code:0xB6AF */
+static GUI_CONST_STORAGE unsigned char acB6AF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ____XXX_,
+ ____XXX_,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ______XX,
+ ____XXX_,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ X___XXX_,
+ ___XXX__,
+ ________,
+ XX______,
+ ____XXX_,
+ ___XXX__,
+ _______X,
+ XXXX____,
+ ____XXX_,
+ ___XXX__,
+ _______X,
+ XX______,
+ ____XXX_,
+ ___XXX__,
+ ______XX,
+ X_______,
+ ____XX__,
+ ___XXX__,
+ ______XX,
+ X_______,
+ ____XX__,
+ ___XXX__,
+ _____XXX,
+ ___XX___,
+ ___XXX__,
+ ___XXX__,
+ _____XX_,
+ ____XX__,
+ ___XXX__,
+ ___XXX__,
+ ____XXX_,
+ ____XXX_,
+ ___XX___,
+ ___XXX__,
+ ____XX__,
+ _____XXX,
+ ___XX___,
+ ___XXX__,
+ ___XX___,
+ _XXXXXXX,
+ X_XXX___,
+ ___XX___,
+ __XXXXXX,
+ XX____XX,
+ X_XX____,
+ ___XX___,
+ __XXXX__,
+ ______XX,
+ _XXX____,
+ ___XX___,
+ ________,
+ ________,
+ XXX_____,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ X___XXX_,
+ __XXX___,
+ ________,
+ _____XXX,
+ ______XX,
+ XXXX____,
+ ________,
+ ____XX__,
+ _______X,
+ XXXX____,
+ ________,
+ ___XX___,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 度 code:0xB6C8 */
+static GUI_CONST_STORAGE unsigned char acB6C8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ___XX___,
+ _____XX_,
+ ________,
+ _XX_____,
+ __XXXX__,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ _____XX_,
+ _____XX_,
+ ________,
+ _____XXX,
+ _____XXX,
+ X____XXX,
+ X_______,
+ _____XXX,
+ _____XXX,
+ _____XXX,
+ ________,
+ _____XXX,
+ _____XXX,
+ _____XXX,
+ __XXX___,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XXX,
+ _____XXX,
+ _____XXX,
+ ________,
+ _____XXX,
+ _____XXX,
+ _____XXX,
+ ________,
+ _____XXX,
+ _____XXX,
+ _____XXX,
+ ________,
+ _____XXX,
+ _____XXX,
+ _____XXX,
+ ________,
+ _____XXX,
+ _____XXX,
+ XXXXXXXX,
+ ________,
+ _____XXX,
+ _____XXX,
+ _____XXX,
+ ________,
+ _____XX_,
+ ________,
+ _______X,
+ X_______,
+ _____XX_,
+ __XXXXXX,
+ XXXXXXXX,
+ XX______,
+ ____XXX_,
+ _____XX_,
+ ______XX,
+ XX______,
+ ____XXX_,
+ ______XX,
+ _____XXX,
+ X_______,
+ ____XXX_,
+ ______XX,
+ X____XXX,
+ ________,
+ ____XX__,
+ _______X,
+ X___XXX_,
+ ________,
+ ____XX__,
+ ________,
+ XXXXXX__,
+ ________,
+ ___XXX__,
+ ________,
+ _XXXX___,
+ ________,
+ ___XX___,
+ ________,
+ XXXXXX__,
+ ________,
+ ___XX___,
+ ______XX,
+ XX_XXXXX,
+ ________,
+ __XX____,
+ ____XXXX,
+ _____XXX,
+ XXXXXX__,
+ __XX____,
+ _XXXX___,
+ ________,
+ XXXXXX__,
+ _XX__XXX,
+ XX______,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 断 code:0xB6CF */
+static GUI_CONST_STORAGE unsigned char acB6CF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ __XXX___,
+ ___XXXX_,
+ ___XX___,
+ _______X,
+ XXXXXX__,
+ ___XXX__,
+ ___XX__X,
+ X__XXXXX,
+ ________,
+ ___XXXXX,
+ ___XX__X,
+ XX_XX___,
+ ________,
+ ___XXX_X,
+ XX_XX_XX,
+ X__XX___,
+ ________,
+ ___XXX__,
+ XX_XX_XX,
+ ___XX___,
+ ________,
+ ___XXX__,
+ XXXXX_XX,
+ ___XX___,
+ ________,
+ ___XXX__,
+ XX_XXXX_,
+ ___XX___,
+ ________,
+ ___XXX__,
+ ___XX__X,
+ XX_XX___,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XX__,
+ ___XXX__,
+ __XXX___,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XXX__,
+ _XXXXX__,
+ ___XX___,
+ _XXX____,
+ ___XXX__,
+ _XXXXXX_,
+ ___XX___,
+ _XXX____,
+ ___XXX__,
+ _XXXX_XX,
+ ___XX___,
+ _XXX____,
+ ___XXX__,
+ XXXXX_XX,
+ XX_XX___,
+ _XXX____,
+ ___XXX__,
+ XX_XX__X,
+ XX_XX___,
+ _XXX____,
+ ___XXX__,
+ XX_XX__X,
+ XX_XX___,
+ _XXX____,
+ ___XXX_X,
+ X__XX___,
+ XXXXX___,
+ _XXX____,
+ ___XXXXX,
+ ___XX___,
+ __XXX___,
+ _XXX____,
+ ___XXXXX,
+ ___XX___,
+ __XXX___,
+ _XXX____,
+ ___XXX__,
+ ___XX___,
+ __XXX___,
+ _XXX____,
+ ___XXX__,
+ ___XX___,
+ __XX____,
+ _XXX____,
+ ___XXX__,
+ _____XXX,
+ _XXX____,
+ _XXX____,
+ __XXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _XXX____,
+ ____XX__,
+ ________,
+ XX______,
+ _XXX____,
+ ________,
+ _______X,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ ________,
+ _XXX____,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 发 code:0xB7A2 */
+static GUI_CONST_STORAGE unsigned char acB7A2[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ____XX__,
+ ________,
+ ______XX,
+ X____XXX,
+ _____XXX,
+ ________,
+ ______XX,
+ X____XX_,
+ ______XX,
+ X_______,
+ ______XX,
+ X___XXX_,
+ ______XX,
+ XX______,
+ _____XXX,
+ ____XXX_,
+ _______X,
+ XX______,
+ _____XXX,
+ ____XXX_,
+ ________,
+ XX______,
+ ____XXX_,
+ ____XXX_,
+ ________,
+ ___XXX__,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ XX______,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ __XXXXX_,
+ _______X,
+ XX______,
+ ________,
+ __XXX_XX,
+ ______XX,
+ XX______,
+ ________,
+ _XXX__XX,
+ ______XX,
+ X_______,
+ ________,
+ _XXX___X,
+ X____XXX,
+ ________,
+ ________,
+ _XX____X,
+ XX___XXX,
+ ________,
+ ________,
+ XXX_____,
+ XXX_XXX_,
+ ________,
+ ________,
+ XX______,
+ _XXXXX__,
+ ________,
+ _______X,
+ XX______,
+ _XXXX___,
+ ________,
+ ______XX,
+ X_______,
+ _XXXXX__,
+ ________,
+ ______XX,
+ ________,
+ XXXXXXX_,
+ ________,
+ _____XX_,
+ _______X,
+ XX__XXXX,
+ X_______,
+ ____XX__,
+ _____XXX,
+ X_____XX,
+ XXX_____,
+ ___XX___,
+ ____XXX_,
+ _______X,
+ XXXXXXX_,
+ __XX____,
+ _XXXX___,
+ ________,
+ _XXXXX__,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 阀 code:0xB7A7 */
+static GUI_CONST_STORAGE unsigned char acB7A7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ___XX___,
+ _______X,
+ XXX__XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ XXX_____,
+ ________,
+ ___XXX__,
+ ____XX__,
+ XXX_____,
+ ________,
+ ___XX___,
+ ____XXX_,
+ _XX_XX__,
+ XXXXX___,
+ ___XX___,
+ ____XXX_,
+ ____XXX_,
+ XXX_XXX_,
+ ___XX___,
+ ____XXX_,
+ ___XXX__,
+ XXX__XXX,
+ ___XX___,
+ ____XXX_,
+ ___XXX__,
+ XXX___XX,
+ ___XX___,
+ ____XXX_,
+ ___XX___,
+ XXX___XX,
+ ___XX___,
+ ____XXX_,
+ __XXX___,
+ XXX____X,
+ XX_XX___,
+ ____XXX_,
+ __XX____,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXX_,
+ _XXXXXXX,
+ XXXX____,
+ ___XX___,
+ ____XXX_,
+ _XXXX___,
+ _XX_____,
+ ___XX___,
+ ____XXX_,
+ XXXXX___,
+ _XX__XXX,
+ ___XX___,
+ ____XXXX,
+ X_XXX___,
+ _XXX_XXX,
+ ___XX___,
+ ____XXXX,
+ X_XXX___,
+ _XXXXXX_,
+ ___XX___,
+ ____XXX_,
+ __XXX___,
+ _XXXXX__,
+ ___XX___,
+ ____XXX_,
+ __XXX___,
+ __XXX___,
+ XX_XX___,
+ ____XXX_,
+ __XXX___,
+ _XXXX___,
+ XX_XX___,
+ ____XXX_,
+ __XXX___,
+ XX_XXX__,
+ XX_XX___,
+ ____XXX_,
+ __XXX_XX,
+ X___XXX_,
+ XX_XX___,
+ ____XXX_,
+ __XXXXX_,
+ _____XXX,
+ XX_XX___,
+ ____XXX_,
+ __XXX___,
+ ______XX,
+ XX_XX___,
+ ____XXX_,
+ __XX____,
+ ________,
+ ___XX___,
+ ____XXX_,
+ ________,
+ ________,
+ ___XX___,
+ ____XXX_,
+ ________,
+ ______XX,
+ XXXXX___,
+ ____XXX_,
+ ________,
+ ________,
+ XXXXX___,
+ ____XX__,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 反 code:0xB7B4 */
+static GUI_CONST_STORAGE unsigned char acB7B4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXX____,
+ _______X,
+ XXXXXXXX,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _______X,
+ XX__XX__,
+ ________,
+ XXXX____,
+ _______X,
+ XX__XX__,
+ _______X,
+ XXX_____,
+ _______X,
+ X____XX_,
+ _______X,
+ XX______,
+ _______X,
+ X____XX_,
+ _______X,
+ XX______,
+ _______X,
+ X_____XX,
+ ______XX,
+ X_______,
+ _______X,
+ X_____XX,
+ X____XXX,
+ ________,
+ ______XX,
+ X______X,
+ X____XXX,
+ ________,
+ ______XX,
+ X______X,
+ XX__XXX_,
+ ________,
+ ______XX,
+ X_______,
+ XXXXXX__,
+ ________,
+ ______XX,
+ X_______,
+ _XXXXX__,
+ ________,
+ _____XXX,
+ ________,
+ __XXX___,
+ ________,
+ _____XXX,
+ ________,
+ XXXXXX__,
+ ________,
+ _____XX_,
+ _______X,
+ XXX_XXXX,
+ ________,
+ ____XXX_,
+ _____XXX,
+ X____XXX,
+ XX______,
+ ____XX__,
+ ___XXXX_,
+ ______XX,
+ XXXX____,
+ ___XX___,
+ _XXXX___,
+ ________,
+ XXXXXXXX,
+ __XX___X,
+ XX______,
+ ________,
+ __XXXX__,
+ _XX__XXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 范 code:0xB7B6 */
+static GUI_CONST_STORAGE unsigned char acB7B6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ___XX___,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ _____XX_,
+ ___XX___,
+ ________,
+ ________,
+ ______XX,
+ X_____XX,
+ ________,
+ XX______,
+ _______X,
+ XX____XX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ XXX_XXXX,
+ X_______,
+ XXX_____,
+ ________,
+ XX_XX_XX,
+ X_______,
+ XX______,
+ ___XXX__,
+ ___XX_XX,
+ X_______,
+ XX______,
+ ____XXX_,
+ ___XX_XX,
+ X_______,
+ XX______,
+ _____XXX,
+ __XX__XX,
+ X_______,
+ XX______,
+ _____XXX,
+ __XX__XX,
+ X_______,
+ XX______,
+ ________,
+ _XX___XX,
+ X______X,
+ XX______,
+ ________,
+ _XX___XX,
+ X______X,
+ XX______,
+ ________,
+ XX____XX,
+ X___XXXX,
+ XX______,
+ ________,
+ XX____XX,
+ X____XXX,
+ X_______,
+ ___XXX_X,
+ XX____XX,
+ X_____XX,
+ ____XX__,
+ _____XXX,
+ X_____XX,
+ X_______,
+ ____XX__,
+ ______XX,
+ X_____XX,
+ X_______,
+ ____XX__,
+ ______XX,
+ X_____XX,
+ X_______,
+ ___XXX__,
+ ______XX,
+ X_____XX,
+ XX______,
+ ___XXXX_,
+ ______XX,
+ X______X,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 方 code:0xB7BD */
+static GUI_CONST_STORAGE unsigned char acB7BD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ XX______,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ _______X,
+ XX______,
+ ________,
+ _____XX_,
+ _______X,
+ XX______,
+ ________,
+ ____XXX_,
+ _______X,
+ XX______,
+ ________,
+ ____XXX_,
+ _______X,
+ XX______,
+ ________,
+ ____XX__,
+ ______XX,
+ X_______,
+ ________,
+ ___XXX__,
+ ______XX,
+ X_______,
+ ________,
+ ___XX___,
+ ______XX,
+ X_______,
+ ________,
+ __XXX___,
+ ______XX,
+ X_______,
+ ________,
+ __XX____,
+ ______XX,
+ X_______,
+ ________,
+ _XXX____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ ________,
+ _______X,
+ XX______,
+ _____XXX,
+ ________,
+ ______XX,
+ X______X,
+ XX___XXX,
+ ________,
+ _____XX_,
+ ________,
+ _XXXXXXX,
+ ________,
+ ___XXX__,
+ ________,
+ __XXXXX_,
+ ________,
+ __XX____,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 分 code:0xB7D6 */
+static GUI_CONST_STORAGE unsigned char acB7D6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ________,
+ ________,
+ ___XXXX_,
+ ___XX___,
+ ________,
+ ________,
+ ___XXX__,
+ ___XX___,
+ ________,
+ ________,
+ __XXX___,
+ ___XXX__,
+ ________,
+ ________,
+ __XXX___,
+ ____XX__,
+ ________,
+ ________,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ _____XX_,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ ________,
+ _______X,
+ XX______,
+ ______XX,
+ X_______,
+ ______XX,
+ X_______,
+ _______X,
+ XX______,
+ ______XX,
+ ________,
+ ______XX,
+ XXXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ _____XXX,
+ _____XXX,
+ __XXXX__,
+ ___XX___,
+ _____XXX,
+ _____XXX,
+ ________,
+ __XX____,
+ _____XX_,
+ _____XXX,
+ ________,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ________,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ________,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ________,
+ ________,
+ ___XXX__,
+ _____XXX,
+ ________,
+ ________,
+ ___XXX__,
+ _____XXX,
+ ________,
+ ________,
+ ___XX___,
+ _____XXX,
+ ________,
+ ________,
+ __XXX___,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ _______X,
+ XX_____X,
+ X___XXX_,
+ ________,
+ ______XX,
+ X_______,
+ XXXXXXX_,
+ ________,
+ _____XX_,
+ ________,
+ __XXXX__,
+ ________,
+ ___XXX__,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 否 code:0xB7F1 */
+static GUI_CONST_STORAGE unsigned char acB7F1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ XX______,
+ ________,
+ ________,
+ ____XXXX,
+ XX______,
+ ________,
+ ________,
+ ____XXXX,
+ XX_XX___,
+ ________,
+ ________,
+ ___XXX_X,
+ XX__XXXX,
+ ________,
+ ________,
+ _XXXX__X,
+ XX_____X,
+ XXX_____,
+ ________,
+ XXX____X,
+ XX______,
+ XXXXX___,
+ _______X,
+ XX_____X,
+ XX______,
+ __XXXX__,
+ _____XXX,
+ _______X,
+ XX______,
+ ___XXX__,
+ ____XXX_,
+ _______X,
+ XX______,
+ ____XX__,
+ __XXX___,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ XX____XX,
+ ________,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 复 code:0xB8B4 */
+static GUI_CONST_STORAGE unsigned char acB8B4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ __XXX___,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ _______X,
+ X_______,
+ _____XXX,
+ _XXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ____XX__,
+ _XXX____,
+ _______X,
+ XX______,
+ ___XX___,
+ _XXX____,
+ _______X,
+ XX______,
+ __XX____,
+ _XXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXXXX__,
+ _______X,
+ X_______,
+ ________,
+ ___XXX__,
+ _______X,
+ X_______,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ __XXXX__,
+ ______XX,
+ X_______,
+ ________,
+ _XXXXXX_,
+ _____XXX,
+ ________,
+ ________,
+ XXX__XX_,
+ ___XXXX_,
+ ________,
+ _______X,
+ XX____XX,
+ X_XXXX__,
+ ________,
+ ______XX,
+ X_____XX,
+ XXXXX___,
+ ________,
+ _____XX_,
+ _______X,
+ XXX_____,
+ ________,
+ ____XX__,
+ ______XX,
+ XXXXX___,
+ ________,
+ ________,
+ ____XXXX,
+ __XXXXXX,
+ ________,
+ ________,
+ __XXXX__,
+ ____XXXX,
+ XXXXXXX_,
+ _______X,
+ XXX_____,
+ _______X,
+ XXXXXX__,
+ __XXXXXX,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 感 code:0xB8D0 */
+static GUI_CONST_STORAGE unsigned char acB8D0[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX_XX,
+ ________,
+ ________,
+ ________,
+ ___XXX_X,
+ XX______,
+ ________,
+ ________,
+ ___XX___,
+ XXX_____,
+ _____XX_,
+ ________,
+ ___XX___,
+ XX_XXX__,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ _____XXX,
+ ________,
+ XX_XXX__,
+ _XXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _XXXX___,
+ _____XXX,
+ ________,
+ ___XXX__,
+ XXXX____,
+ _____XXX,
+ _XX_____,
+ XX__XX__,
+ XXX_____,
+ _____XXX,
+ _XXXXXXX,
+ XXX_XXXX,
+ XX______,
+ _____XXX,
+ _XXX____,
+ XXX_XXXX,
+ XX______,
+ _____XX_,
+ _XXX____,
+ XX___XXX,
+ X_______,
+ _____XX_,
+ _XXX____,
+ XX___XXX,
+ ________,
+ ____XXX_,
+ _XXX____,
+ XX__XXXX,
+ X___XX__,
+ ____XX__,
+ _XXXXXXX,
+ XX_XXX_X,
+ XX__XX__,
+ ___XXX__,
+ _XXX____,
+ XXXXX___,
+ XXXXXX__,
+ ___XX___,
+ _XX_____,
+ _XX_____,
+ _XXXXXX_,
+ __XX____,
+ ________,
+ XX______,
+ __XXXXX_,
+ _XX_____,
+ _XX___XX,
+ X_______,
+ _____XX_,
+ ________,
+ _XXXX__X,
+ XXX_____,
+ XXX_____,
+ _____XX_,
+ _XXX____,
+ XXX_____,
+ _XXX____,
+ _____XX_,
+ _XXX____,
+ _XX__XX_,
+ __XXX___,
+ ____XXX_,
+ _XXX____,
+ ______XX,
+ __XXX___,
+ ___XXXX_,
+ _XXX____,
+ _____XXX,
+ ___XX___,
+ ___XXX__,
+ _XXX____,
+ _____XXX,
+ X_______,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 高 code:0xB8DF */
+static GUI_CONST_STORAGE unsigned char acB8DF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ____XX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ______XX,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ _XX_____,
+ _____XXX,
+ ________,
+ ________,
+ _XX_____,
+ _____XXX,
+ ________,
+ ________,
+ _XX_____,
+ _____XXX,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ _XX_____,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ___XX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ __XX____,
+ ____XX__,
+ __XXX___,
+ ____XXX_,
+ __XXXXXX,
+ XXXXXXX_,
+ __XXX___,
+ ____XXX_,
+ __XXX___,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ __XXX___,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ __XXX___,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ __XXX___,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ __XXXXXX,
+ XXXXXX__,
+ __XXX___,
+ ____XXX_,
+ __XXX___,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ __XX____,
+ ___XX___,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ______XX,
+ XXXXX___,
+ ____XXX_,
+ ________,
+ ________,
+ XXXXX___,
+ ____XX__,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 工 code:0xB9A4 */
+static GUI_CONST_STORAGE unsigned char acB9A4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XX___,
+ ________,
+ _______X,
+ XX______,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 功 code:0xB9A6 */
+static GUI_CONST_STORAGE unsigned char acB9A6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ _____XXX,
+ ____XXX_,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ X___XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ____XX__,
+ ________,
+ XXX___XX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ____XX__,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ____XX__,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ____XX__,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ___XX___,
+ ___XX___,
+ ________,
+ XXX__XXX,
+ X_XXX___,
+ ___XX___,
+ ________,
+ XXXXXX__,
+ __XXX___,
+ ___XX___,
+ ______XX,
+ XXX_____,
+ __XX____,
+ ___XX___,
+ __XXXXXX,
+ X_______,
+ _XXX____,
+ __XXX___,
+ __XXXXX_,
+ ________,
+ XXX_____,
+ __XXX___,
+ ___XX___,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ X_______,
+ __XXX___,
+ ________,
+ _____XXX,
+ ___XXX__,
+ __XXX___,
+ ________,
+ ____XXX_,
+ _____XXX,
+ XXXX____,
+ ________,
+ __XXX___,
+ _______X,
+ XXXX____,
+ ________,
+ _XX_____,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 供 code:0xB9A9 */
+static GUI_CONST_STORAGE unsigned char acB9A9[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX____X,
+ X_____XX,
+ ________,
+ ________,
+ _XXX___X,
+ XXX___XX,
+ XX______,
+ ________,
+ XXXX___X,
+ XX____XX,
+ X_______,
+ ________,
+ XXX____X,
+ XX____XX,
+ X_______,
+ _______X,
+ XX_____X,
+ XX____XX,
+ X_______,
+ _______X,
+ XX_____X,
+ XX____XX,
+ X_______,
+ _______X,
+ X______X,
+ XX____XX,
+ X_______,
+ ______XX,
+ X______X,
+ XX____XX,
+ X__XX___,
+ ______XX,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XXX,
+ X______X,
+ XX____XX,
+ X_______,
+ _____XXX,
+ X______X,
+ XX____XX,
+ X_______,
+ ____XXXX,
+ X______X,
+ XX____XX,
+ X_______,
+ ___XXXXX,
+ X______X,
+ XX____XX,
+ X_______,
+ ___XX_XX,
+ X______X,
+ XX____XX,
+ X_______,
+ __XX__XX,
+ X______X,
+ XX____XX,
+ X_______,
+ _XX___XX,
+ X______X,
+ XX____XX,
+ X_______,
+ ______XX,
+ X______X,
+ XX____XX,
+ X___XX__,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X______X,
+ XXX__XX_,
+ ________,
+ ______XX,
+ X______X,
+ XX____XX,
+ X_______,
+ ______XX,
+ X_____XX,
+ X______X,
+ XX______,
+ ______XX,
+ X____XXX,
+ ________,
+ XXXX____,
+ ______XX,
+ X____XX_,
+ ________,
+ _XXXX___,
+ ______XX,
+ X___XX__,
+ ________,
+ __XXXX__,
+ ______XX,
+ X__XX___,
+ ________,
+ ___XXX__,
+ ______XX,
+ X_XX____,
+ ________,
+ ____XX__,
+ ______XX,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 公 code:0xB9AB */
+static GUI_CONST_STORAGE unsigned char acB9AB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ____XX__,
+ __XX____,
+ ________,
+ ________,
+ ____XXX_,
+ __XX____,
+ ________,
+ ________,
+ ___XXX__,
+ ___XX___,
+ ________,
+ ________,
+ ___XXX__,
+ ___XX___,
+ ________,
+ ________,
+ __XXX___,
+ ___XXX__,
+ ________,
+ ________,
+ __XXX___,
+ ____XX__,
+ ________,
+ ________,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ ______XX,
+ X_______,
+ _______X,
+ XX_____X,
+ X______X,
+ XX______,
+ ______XX,
+ X______X,
+ XX_____X,
+ XXXX____,
+ _____XXX,
+ _______X,
+ XXX_____,
+ XXXXX___,
+ ____XXX_,
+ ______XX,
+ XX______,
+ _XXXXXX_,
+ ___XXX__,
+ ______XX,
+ X_______,
+ __XXX___,
+ __XX____,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XX___,
+ ________,
+ ________,
+ __XXX___,
+ ____XX__,
+ ________,
+ ________,
+ __XX____,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ _______X,
+ XX______,
+ ______XX,
+ XX______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ______XX,
+ XXXXXX__,
+ _______X,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 构 code:0xB9B9 */
+static GUI_CONST_STORAGE unsigned char acB9B9[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ __XX____,
+ ________,
+ _______X,
+ XXX_____,
+ __XXXX__,
+ ________,
+ _______X,
+ XX______,
+ _XXXX___,
+ ________,
+ _______X,
+ XX______,
+ _XXX____,
+ ________,
+ _______X,
+ XX______,
+ _XXX____,
+ ________,
+ _______X,
+ XX______,
+ XXX_____,
+ ___XX___,
+ _______X,
+ XX_XX___,
+ XXXXXXXX,
+ XXXXXX__,
+ __XXXXXX,
+ XXXXXX_X,
+ XX______,
+ ___XXX__,
+ _______X,
+ XX_____X,
+ X_______,
+ ___XXX__,
+ _______X,
+ XX_____X,
+ X_______,
+ ___XXX__,
+ ______XX,
+ XX____XX,
+ __XX____,
+ ___XXX__,
+ ______XX,
+ XX___XX_,
+ __XXX___,
+ ___XXX__,
+ ______XX,
+ XXXX_XX_,
+ _XXX____,
+ ___XXX__,
+ _____XXX,
+ XXXXXX__,
+ _XXX____,
+ ___XXX__,
+ _____XXX,
+ XX_XXX__,
+ _XX_____,
+ ___XXX__,
+ _____XXX,
+ XX_XXX__,
+ XXX_____,
+ ___XXX__,
+ ____XXXX,
+ XX__XX__,
+ XX___XX_,
+ ___XXX__,
+ ____XX_X,
+ XX_____X,
+ XX___XXX,
+ ___XX___,
+ ___XX__X,
+ XX_____X,
+ X_____XX,
+ X__XX___,
+ ___XX__X,
+ XX____XX,
+ ____XXXX,
+ X__XX___,
+ __XX___X,
+ XX____XX,
+ XXXXX_XX,
+ X_XXX___,
+ __XX___X,
+ XX____XX,
+ X_____XX,
+ X_XXX___,
+ _______X,
+ XX______,
+ ________,
+ __XXX___,
+ _______X,
+ XX______,
+ ________,
+ __XXX___,
+ _______X,
+ XX______,
+ ________,
+ __XXX___,
+ _______X,
+ XX______,
+ ____XX__,
+ __XXX___,
+ _______X,
+ XX______,
+ _____XXX,
+ XXXXX___,
+ _______X,
+ XX______,
+ _______X,
+ XXXX____,
+ _______X,
+ X_______,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 关 code:0xB9D8 */
+static GUI_CONST_STORAGE unsigned char acB9D8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ _XXX____,
+ ____XXXX,
+ ________,
+ ________,
+ __XXX___,
+ ____XXXX,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ ___XXXX_,
+ ___XXX__,
+ ________,
+ ________,
+ ____XXX_,
+ ___XX___,
+ ________,
+ ________,
+ ____XXX_,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ __XXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ X_XX____,
+ ________,
+ ________,
+ ______XX,
+ X_XX____,
+ ________,
+ ________,
+ _____XXX,
+ ___XX___,
+ ________,
+ ________,
+ ____XXX_,
+ ___XXX__,
+ ________,
+ ________,
+ ____XXX_,
+ ____XX__,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ _____XXX,
+ X_______,
+ ________,
+ _XXX____,
+ ______XX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XXXX____,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXX_,
+ ____XXX_,
+ ________,
+ ________,
+ __XXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 号 code:0xBAC5 */
+static GUI_CONST_STORAGE unsigned char acBAC5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _______X,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ __XX____,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ______XX,
+ X____XXX,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 合 code:0xBACF */
+static GUI_CONST_STORAGE unsigned char acBACF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ _____XXX,
+ _XX_____,
+ ________,
+ ________,
+ ____XXX_,
+ __XX____,
+ ________,
+ ________,
+ ____XXX_,
+ ___XX___,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ XXX_____,
+ ______XX,
+ X_______,
+ _____XXX,
+ XXXXXX__,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ___XXX__,
+ ________,
+ ________,
+ ___XX___,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 后 code:0xBAF3 */
+static GUI_CONST_STORAGE unsigned char acBAF3[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ______XX,
+ XXXX____,
+ ______XX,
+ ________,
+ _XXXXXXX,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ __XXX___,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X__XX___,
+ ________,
+ _XX_____,
+ ______XX,
+ X__XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X__XXX__,
+ ________,
+ XXX_____,
+ ______XX,
+ X__XXX__,
+ ________,
+ XXX_____,
+ ______XX,
+ X__XXX__,
+ ________,
+ XXX_____,
+ ______XX,
+ X__XXX__,
+ ________,
+ XXX_____,
+ ______XX,
+ ___XXX__,
+ ________,
+ XXX_____,
+ _____XXX,
+ ___XXX__,
+ ________,
+ XXX_____,
+ _____XXX,
+ ___XXX__,
+ ________,
+ XXX_____,
+ _____XX_,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ___XXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ____XX__,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ___XX___,
+ ___XXX__,
+ ________,
+ XXX_____,
+ __XX____,
+ ___XX___,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 欢 code:0xBBB6 */
+static GUI_CONST_STORAGE unsigned char acBBB6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ____XX__,
+ __XXX___,
+ ________,
+ __XXXXXX,
+ XXXXXXX_,
+ _XXX____,
+ ________,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ________,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ____XX__,
+ ________,
+ ___XX___,
+ _XXXXXXX,
+ XXXXXXX_,
+ ___XX___,
+ __XXX___,
+ XXX_____,
+ ___XXX__,
+ ____XX__,
+ __XXX___,
+ XX______,
+ __XXX___,
+ _____XX_,
+ __XX____,
+ XX__XXX_,
+ __XX____,
+ ______XX,
+ _XXX___X,
+ X___XXX_,
+ _XX_____,
+ ______XX,
+ XXXX___X,
+ X___XXX_,
+ ________,
+ _______X,
+ XXX___XX,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXXX,
+ ________,
+ ________,
+ XXX_____,
+ ___XXXXX,
+ ________,
+ _______X,
+ XXXX____,
+ ___XXXXX,
+ ________,
+ _______X,
+ XXXXX___,
+ ___XXXXX,
+ ________,
+ ______XX,
+ X_XXX___,
+ ___XX_XX,
+ ________,
+ ______XX,
+ ___XXX__,
+ __XXX__X,
+ X_______,
+ _____XX_,
+ ___XXX__,
+ __XXX__X,
+ X_______,
+ ____XXX_,
+ ___XXXX_,
+ _XXX___X,
+ XX______,
+ ____XX__,
+ ____XX__,
+ _XX_____,
+ XX______,
+ ___XX___,
+ ________,
+ XXX_____,
+ XXX_____,
+ __XX____,
+ _______X,
+ XX______,
+ _XXX____,
+ _XX_____,
+ ______XX,
+ X_______,
+ _XXXX___,
+ ________,
+ _____XXX,
+ ________,
+ __XXXXX_,
+ ________,
+ ___XXX__,
+ ________,
+ ___XXX__,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 簧 code:0xBBC9 */
+static GUI_CONST_STORAGE unsigned char acBBC9[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ___XX___,
+ ________,
+ _______X,
+ XXX_____,
+ ___XXX__,
+ ________,
+ _______X,
+ XX____XX,
+ X_XXX___,
+ ___XXX__,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ __XX____,
+ _XXX__XX,
+ ________,
+ ____XXX_,
+ ___XXX__,
+ _XX____X,
+ XX______,
+ ___XXX__,
+ ___XXX__,
+ XX_____X,
+ XX______,
+ __XX____,
+ _______X,
+ X__XX___,
+ XX______,
+ ________,
+ ___XX___,
+ ___XXXX_,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ _XXX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ____XX__,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ X______X,
+ XX_____X,
+ XX______,
+ _______X,
+ X______X,
+ XX_____X,
+ XX______,
+ _______X,
+ X______X,
+ XX_____X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ X______X,
+ XX_____X,
+ XX______,
+ _______X,
+ X______X,
+ XX_____X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ X__XX___,
+ ___XX__X,
+ XX______,
+ ________,
+ __XXXX__,
+ ____XXXX,
+ X_______,
+ ________,
+ _XXXX___,
+ _______X,
+ XXX_____,
+ _______X,
+ XXX_____,
+ ________,
+ XXXXX___,
+ _____XXX,
+ ________,
+ ________,
+ __XXX___,
+ ___XXX__,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 恢 code:0xBBD6 */
+static GUI_CONST_STORAGE unsigned char acBBD6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ _XXXX___,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ___XXX__,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ XX______,
+ XXX_____,
+ ________,
+ ______XX,
+ XXX_____,
+ XX__XX__,
+ ________,
+ ___XX_XX,
+ XXXX___X,
+ XX__XXXX,
+ ________,
+ ___XX_XX,
+ X_XXX__X,
+ XX__XXX_,
+ ________,
+ ___XX_XX,
+ X_XX___X,
+ XX__XXX_,
+ ________,
+ __XXX_XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ __XXX_XX,
+ X_____XX,
+ X___XXX_,
+ ___XX___,
+ __XX__XX,
+ X_____XX,
+ _XX_XXX_,
+ __XXXX__,
+ ______XX,
+ X____XXX,
+ _XX_XXX_,
+ _XXXX___,
+ ______XX,
+ X____XXX,
+ XXX_XXXX,
+ _XX_____,
+ ______XX,
+ X____XX_,
+ XXX_XXXX,
+ XX______,
+ ______XX,
+ X___XXXX,
+ XX_XXXXX,
+ X_______,
+ ______XX,
+ X___XX__,
+ ___XXX_X,
+ X_______,
+ ______XX,
+ X__XX___,
+ ___XXX_X,
+ X_______,
+ ______XX,
+ X__XX___,
+ __XXX__X,
+ XX______,
+ ______XX,
+ X_XX____,
+ __XXX___,
+ XX______,
+ ______XX,
+ XXX_____,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ XX______,
+ XXX_____,
+ XXXX____,
+ ______XX,
+ X_______,
+ XX______,
+ _XXXX___,
+ ______XX,
+ X______X,
+ X_______,
+ __XXXX__,
+ ______XX,
+ X____XXX,
+ ________,
+ __XXXXXX,
+ ______XX,
+ X___XX__,
+ ________,
+ ___XX___,
+ ______XX,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 混 code:0xBBEC */
+static GUI_CONST_STORAGE unsigned char acBBEC[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ X____XX_,
+ ________,
+ __XX____,
+ _______X,
+ XX___XXX,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ XX___XXX,
+ ________,
+ __XX____,
+ ________,
+ XX___XXX,
+ ________,
+ __XX____,
+ ________,
+ ___XXXXX,
+ ________,
+ __XX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ __XXX___,
+ __XX_XXX,
+ ________,
+ __XX____,
+ ___XXX__,
+ __XX_XXX,
+ ________,
+ __XX____,
+ ____XXX_,
+ __XX_XXX,
+ ________,
+ __XX____,
+ ____XXX_,
+ _XX__XXX,
+ ________,
+ __XX____,
+ _____XX_,
+ _XX__XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _XX__XXX,
+ ____XX__,
+ __XX____,
+ ________,
+ XX______,
+ ____XXX_,
+ ________,
+ ________,
+ XX___XX_,
+ ____XXXX,
+ ________,
+ _______X,
+ XX___XXX,
+ ____XXX_,
+ __XXX___,
+ _______X,
+ X____XX_,
+ ____XXX_,
+ _XXXXX__,
+ ______XX,
+ X____XX_,
+ _XX_XXX_,
+ XXX_____,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XX______,
+ ___XXXXX,
+ _____XX_,
+ ____XXXX,
+ ________,
+ _____XXX,
+ _____XX_,
+ ____XXX_,
+ ____XX__,
+ _____XXX,
+ _____XX_,
+ ____XXX_,
+ ____XX__,
+ _____XXX,
+ _____XX_,
+ ____XXX_,
+ ____XX__,
+ _____XXX,
+ _____XX_,
+ _XXXXXX_,
+ ____XX__,
+ _____XXX,
+ ____XXXX,
+ XX__XXX_,
+ ____XXX_,
+ ____XXXX,
+ ____XXXX,
+ _____XXX,
+ XXXXXXX_,
+ _____XXX,
+ _____XX_,
+ _____XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 活 code:0xBBEE */
+static GUI_CONST_STORAGE unsigned char acBBEE[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _____XXX,
+ ________,
+ ______XX,
+ XXXX____,
+ ______XX,
+ XX______,
+ __XXXXXX,
+ XXX_____,
+ _______X,
+ XX__XXXX,
+ XXXXXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ __XX____,
+ ___XXX__,
+ ________,
+ __XXX___,
+ _XX_____,
+ ___XXX__,
+ ____XX__,
+ ___XXX__,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XXX_,
+ _XX_____,
+ ___XXX__,
+ ________,
+ ____XXX_,
+ XX______,
+ ___XXX__,
+ ________,
+ _____XX_,
+ XX______,
+ ___XXX__,
+ ________,
+ ________,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X___XX__,
+ ___XXX__,
+ __XX____,
+ _______X,
+ X___XXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ ____XXX_,
+ ________,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ________,
+ _XXX____,
+ ___XXXXX,
+ ____XXX_,
+ ________,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ________,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ________,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ________,
+ _XXX____,
+ ____XXXX,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ____XXXX,
+ ____XXX_,
+ ________,
+ _XXX____,
+ ____XXXX,
+ ____XXX_,
+ ________,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ________,
+ _XXX____,
+ ________,
+ ____XX__,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 或 code:0xBBF2 */
+static GUI_CONST_STORAGE unsigned char acBBF2[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX__XX,
+ X_______,
+ ________,
+ ________,
+ __XXX__X,
+ XXX_____,
+ ________,
+ ________,
+ __XXX___,
+ XXX_____,
+ ________,
+ ________,
+ __XXX___,
+ _XX_____,
+ ________,
+ ________,
+ __XXX___,
+ _XXXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ _____XX_,
+ __XXX___,
+ _XX_____,
+ _____XXX,
+ XXXXXXXX,
+ __XXX___,
+ _XXX____,
+ _____XXX,
+ _____XXX,
+ __XXX___,
+ _XXXX___,
+ _____XXX,
+ _____XXX,
+ __XXX___,
+ XXXX____,
+ _____XXX,
+ _____XXX,
+ ___XX___,
+ XXX_____,
+ _____XXX,
+ _____XXX,
+ ___XXX__,
+ XXX_____,
+ _____XXX,
+ _____XXX,
+ ___XXX_X,
+ XX______,
+ _____XXX,
+ _____XXX,
+ ___XXX_X,
+ XX______,
+ _____XXX,
+ XXXXXXXX,
+ ___XXX_X,
+ XX______,
+ _____XXX,
+ _____XXX,
+ ____XXXX,
+ X_______,
+ _____XXX,
+ ________,
+ ____XXXX,
+ X_______,
+ ________,
+ ________,
+ ____XXXX,
+ _____XX_,
+ ________,
+ _______X,
+ XXX_XXXX,
+ _____XX_,
+ ________,
+ __XXXXXX,
+ ___XXXXX,
+ X____XX_,
+ _____XXX,
+ XXXXX___,
+ __XXX_XX,
+ XX___XX_,
+ __XXXXXX,
+ X_______,
+ _XXX___X,
+ XXX_XXX_,
+ __XXXXX_,
+ ________,
+ XXX_____,
+ XXXXXXX_,
+ ________,
+ ______XX,
+ X_______,
+ _XXXXXX_,
+ ________,
+ _____XX_,
+ ________,
+ ___XXXX_,
+ ________,
+ ___XXX__,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 机 code:0xBBFA */
+static GUI_CONST_STORAGE unsigned char acBBFA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX_____X,
+ X______X,
+ X_______,
+ _______X,
+ XX_____X,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_XX__X,
+ XX_____X,
+ XX______,
+ __XXXXXX,
+ XXXXXX_X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ ______XX,
+ XX_____X,
+ XX_____X,
+ XX______,
+ ______XX,
+ XX_____X,
+ XX_____X,
+ XX______,
+ ______XX,
+ XX_____X,
+ XX_____X,
+ XX______,
+ ______XX,
+ XXXXX__X,
+ XX_____X,
+ XX______,
+ _____XXX,
+ XX_XXX_X,
+ XX_____X,
+ XX______,
+ _____XXX,
+ XX_XXX_X,
+ XX_____X,
+ XX______,
+ ____XXXX,
+ XX__XX_X,
+ XX_____X,
+ XX______,
+ ____XX_X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ ____XX_X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ ___XX__X,
+ XX_____X,
+ X______X,
+ XX______,
+ ___XX__X,
+ XX____XX,
+ X______X,
+ XX______,
+ __XX___X,
+ XX____XX,
+ X______X,
+ XX__XX__,
+ _XX____X,
+ XX____XX,
+ _______X,
+ XX__XX__,
+ _______X,
+ XX___XXX,
+ _______X,
+ XX__XX__,
+ _______X,
+ XX___XX_,
+ _______X,
+ XX__XXX_,
+ _______X,
+ XX__XX__,
+ _______X,
+ XXXXXXXX,
+ _______X,
+ XX_XX___,
+ _______X,
+ XXXXXXX_,
+ _______X,
+ XXXX____,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 积 code:0xBBFD */
+static GUI_CONST_STORAGE unsigned char acBBFD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ ________,
+ ________,
+ _______X,
+ XXXXX___,
+ ________,
+ ___XX___,
+ ___XXXXX,
+ XX______,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ XX______,
+ XX______,
+ __XXX___,
+ ________,
+ XX______,
+ XX______,
+ __XXX___,
+ ________,
+ XX______,
+ XX______,
+ __XXX___,
+ ________,
+ XX______,
+ XX______,
+ __XXX___,
+ ________,
+ XX__XX__,
+ XX______,
+ __XXX___,
+ __XXXXXX,
+ XXXXXXX_,
+ XX______,
+ __XXX___,
+ _______X,
+ XX______,
+ XX______,
+ __XXX___,
+ _______X,
+ XX______,
+ XX______,
+ __XXX___,
+ _______X,
+ XXX_____,
+ XX______,
+ __XXX___,
+ ______XX,
+ XXXX____,
+ XX______,
+ __XXX___,
+ ______XX,
+ XX_XXX__,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ XX_XXX__,
+ XX______,
+ __XXX___,
+ _____XXX,
+ XX__XXX_,
+ XX______,
+ __XX____,
+ ____XXX_,
+ XX__XX__,
+ ________,
+ ________,
+ ____XX__,
+ XX______,
+ ___XX__X,
+ X_______,
+ ___XXX__,
+ XX______,
+ __XXXX__,
+ XX______,
+ ___XX___,
+ XX______,
+ __XXX___,
+ _XX_____,
+ __XX____,
+ XX______,
+ _XXX____,
+ __XX____,
+ _XX_____,
+ XX______,
+ XXX_____,
+ __XXX___,
+ ________,
+ XX______,
+ XX______,
+ ___XXX__,
+ ________,
+ XX_____X,
+ X_______,
+ ___XXX__,
+ ________,
+ XX____XX,
+ ________,
+ ____XXX_,
+ ________,
+ XX___XX_,
+ ________,
+ ____XXX_,
+ ________,
+ XX_XXX__,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 激 code:0xBCA4 */
+static GUI_CONST_STORAGE unsigned char acBCA4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ _______X,
+ X_______,
+ ____XX__,
+ ______XX,
+ X______X,
+ XX______,
+ _____XXX,
+ _____XXX,
+ _______X,
+ XX______,
+ ______XX,
+ X_XX_XX_,
+ __XX__XX,
+ X_______,
+ ______XX,
+ X_XXXXXX,
+ XXXXX_XX,
+ X_______,
+ ______XX,
+ X_XXX___,
+ _XXX__XX,
+ ________,
+ ________,
+ XXXXX___,
+ _XXX__XX,
+ ________,
+ _XX_____,
+ XXXXX___,
+ _XXX_XX_,
+ ____XX__,
+ __XX____,
+ XXXXXXXX,
+ XXXX_XXX,
+ XXXXXXX_,
+ ___XXX_X,
+ X_XXX___,
+ _XXX_XX_,
+ __XXX___,
+ ___XXX_X,
+ X_XXX___,
+ _XXXXXX_,
+ __XXX___,
+ ____XX_X,
+ X_XXXXXX,
+ XXXXXXX_,
+ __XXX___,
+ _______X,
+ X_XXX_XX,
+ _XXXXXX_,
+ __XXX___,
+ _______X,
+ X_____XX,
+ X_____XX,
+ __XX____,
+ ______XX,
+ _______X,
+ X__XX_XX,
+ __XX____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ _XXX____,
+ ______XX,
+ ____XX__,
+ ______XX,
+ _XXX____,
+ ______XX,
+ ____XX__,
+ ______XX,
+ _XX_____,
+ _____XXX,
+ ____XXXX,
+ XXXX__XX,
+ XXX_____,
+ _XXXXXX_,
+ ___XXX__,
+ _XXX___X,
+ XXX_____,
+ ___XXXX_,
+ ___XXX__,
+ _XXX___X,
+ XX______,
+ ____XXX_,
+ ___XX___,
+ _XX____X,
+ XX______,
+ ____XXX_,
+ ___XX___,
+ _XX___XX,
+ XXX_____,
+ ____XXX_,
+ __XXX___,
+ _XX___XX,
+ _XXX____,
+ ____XXX_,
+ __XX_XXX,
+ XXX__XX_,
+ __XXX___,
+ ____XXX_,
+ _XX____X,
+ XX_XXX__,
+ __XXXX__,
+ ____XXX_,
+ XXX____X,
+ X_XXX___,
+ ___XXXXX,
+ _____XXX,
+ XX______,
+ _XX_____,
+ ____XX__,
+ ______XX,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 辑 code:0xBCAD */
+static GUI_CONST_STORAGE unsigned char acBCAD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX____X,
+ X_______,
+ _XX_____,
+ _______X,
+ X______X,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ ___XX__X,
+ XX______,
+ XXX_____,
+ _XXXXXXX,
+ XXXXXX_X,
+ XX______,
+ XXX_____,
+ _____XXX,
+ _______X,
+ XXXXXXXX,
+ XXX_____,
+ _____XX_,
+ XX_____X,
+ XX______,
+ XXX_____,
+ ____XXX_,
+ XXX____X,
+ XX______,
+ XX__XX__,
+ ____XX__,
+ XXX_XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ___XXX__,
+ XXX____X,
+ XX______,
+ XXX_____,
+ ___XXX__,
+ XXXXX__X,
+ XX______,
+ XXX_____,
+ __XXXXXX,
+ XXXXXX_X,
+ XX______,
+ XXX_____,
+ ___XX___,
+ XXX____X,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ XXX____X,
+ XX______,
+ XXX_____,
+ ________,
+ XXX____X,
+ XX______,
+ XXX_____,
+ ________,
+ XXX___XX,
+ XX______,
+ XXX_____,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ XXXX___X,
+ XX______,
+ XXX_____,
+ ____XXXX,
+ XXX____X,
+ XX______,
+ XXX_____,
+ __XXXXX_,
+ XXX____X,
+ XX______,
+ XXX_XXX_,
+ __XXX___,
+ XXX____X,
+ XX___XXX,
+ XXXXXXXX,
+ ________,
+ XXXXXXXX,
+ XXXXXX__,
+ XXX_____,
+ ________,
+ XXX_____,
+ ________,
+ XXX_____,
+ ________,
+ XXX_____,
+ ________,
+ XXX_____,
+ ________,
+ XXX_____,
+ ________,
+ XXX_____,
+ ________,
+ XXX_____,
+ ________,
+ XXX_____,
+ ________,
+ XX______,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 级 code:0xBCB6 */
+static GUI_CONST_STORAGE unsigned char acBCB6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XXXX____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ XX___XXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X_______,
+ _XX_____,
+ XXXX____,
+ ______XX,
+ ________,
+ _XX_____,
+ XXX_____,
+ _____XXX,
+ ____XX__,
+ _XX____X,
+ XX______,
+ _____XX_,
+ ___XXXX_,
+ _XX____X,
+ XX______,
+ ____XX__,
+ ___XXX__,
+ XXX___XX,
+ X_______,
+ ___XX___,
+ __XXX___,
+ XXX___XX,
+ X_______,
+ __XXXXXX,
+ XXXX____,
+ XXX__XXX,
+ ___XX___,
+ __XXXXX_,
+ _XX_____,
+ XXX_XXXX,
+ XXXXXX__,
+ ________,
+ XXX_____,
+ XXX__XX_,
+ __XXX___,
+ _______X,
+ XX______,
+ XXXX____,
+ __XX____,
+ ______XX,
+ X_______,
+ XXXX____,
+ _XXX____,
+ ______XX,
+ ________,
+ XXXX____,
+ _XXX____,
+ _____XX_,
+ ________,
+ XX_XX___,
+ _XX_____,
+ ____XX__,
+ _XXXXX_X,
+ XX_XX___,
+ XXX_____,
+ __XXXXXX,
+ XX_____X,
+ XX_XXX__,
+ XXX_____,
+ ___XXXX_,
+ _______X,
+ X___XX_X,
+ XX______,
+ ___XX___,
+ ______XX,
+ X___XXXX,
+ XX______,
+ ________,
+ ______XX,
+ X____XXX,
+ X_______,
+ ________,
+ __XXX_XX,
+ _____XXX,
+ X_______,
+ _______X,
+ XXX__XX_,
+ ____XXXX,
+ XX______,
+ ___XXXXX,
+ X___XXX_,
+ ___XXX_X,
+ XXX_____,
+ __XXXXX_,
+ ___XXX__,
+ __XXX___,
+ XXXX____,
+ ___XX___,
+ __XX____,
+ _XXX____,
+ _XXXXXX_,
+ ________,
+ _XX____X,
+ XX______,
+ __XXX___,
+ ________,
+ XX___XXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 技 code:0xBCBC */
+static GUI_CONST_STORAGE unsigned char acBCBC[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ____XX__,
+ ________,
+ _______X,
+ XXX_____,
+ ____XXXX,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX_XXX__,
+ ____XXX_,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX__XXX_,
+ ____XXX_,
+ __XX____,
+ _______X,
+ XXXXX_XX,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ XXX_____,
+ XX______,
+ _XXX____,
+ ____XXXX,
+ XX______,
+ XX______,
+ _XXX____,
+ __XXXXXX,
+ XX______,
+ _XX_____,
+ XXX_____,
+ __XXX__X,
+ XX______,
+ _XX_____,
+ XXX_____,
+ _______X,
+ XX______,
+ _XXX___X,
+ XX______,
+ _______X,
+ XX______,
+ __XX___X,
+ XX______,
+ _______X,
+ XX______,
+ __XXX_XX,
+ X_______,
+ _______X,
+ XX______,
+ ___XXXXX,
+ ________,
+ _______X,
+ XX______,
+ ____XXXX,
+ ________,
+ _______X,
+ XX______,
+ ___XXXXX,
+ ________,
+ _______X,
+ XX______,
+ __XXXXXX,
+ X_______,
+ _______X,
+ XX______,
+ XXXX__XX,
+ XXX_____,
+ ___XXXXX,
+ XX_____X,
+ XX______,
+ XXXXXX__,
+ _____XXX,
+ XX__XXXX,
+ ________,
+ _XXXXXX_,
+ ______XX,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 计 code:0xBCC6 */
+static GUI_CONST_STORAGE unsigned char acBCC6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ___XX___,
+ ________,
+ ______XX,
+ ________,
+ ___XXXX_,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ___XXX__,
+ _XXXXXXX,
+ XX_XXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X___XX__,
+ ___XXX__,
+ ________,
+ _______X,
+ X__XX___,
+ ___XXX__,
+ ________,
+ _______X,
+ X_XXX___,
+ ___XXX__,
+ ________,
+ _______X,
+ XXXX____,
+ ___XXX__,
+ ________,
+ _______X,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ______XX,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 际 code:0xBCCA */
+static GUI_CONST_STORAGE unsigned char acBCCA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XX____,
+ ________,
+ __XX____,
+ ____XXXX,
+ XXXXX_XX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XX__,
+ __XXX___,
+ ________,
+ ________,
+ ____XX__,
+ _XXX____,
+ ________,
+ ________,
+ ____XX__,
+ _XX_____,
+ ________,
+ ________,
+ ____XX__,
+ _XX_____,
+ ________,
+ ________,
+ ____XX__,
+ XX______,
+ ________,
+ ________,
+ ____XX__,
+ XX______,
+ ________,
+ ________,
+ ____XX__,
+ XX______,
+ ________,
+ ____XX__,
+ ____XX_X,
+ X___XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XX__,
+ XX______,
+ ____XXX_,
+ ________,
+ ____XX__,
+ _XX_____,
+ ____XXX_,
+ ________,
+ ____XX__,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ____XX__,
+ __XX___X,
+ X___XXX_,
+ ________,
+ ____XX__,
+ __XXX__X,
+ XXX_XXX_,
+ XX______,
+ ____XX__,
+ __XXX__X,
+ XX__XXX_,
+ XXX_____,
+ ____XX__,
+ __XXX_XX,
+ X___XXX_,
+ _XX_____,
+ ____XXX_,
+ __XXX_XX,
+ X___XXX_,
+ __XX____,
+ ____XXXX,
+ XXXX_XXX,
+ ____XXX_,
+ __XXX___,
+ ____XX__,
+ XXX__XXX,
+ ____XXX_,
+ ___XXX__,
+ ____XX__,
+ ____XXX_,
+ ____XXX_,
+ ___XXX__,
+ ____XX__,
+ ____XX__,
+ ____XXX_,
+ ____XXX_,
+ ____XX__,
+ ___XX___,
+ ____XXX_,
+ ____XX__,
+ ____XX__,
+ __XX____,
+ ____XXX_,
+ ____XX__,
+ ____XX__,
+ _XX____X,
+ X___XXX_,
+ ________,
+ ____XX__,
+ ________,
+ XXXXXX__,
+ ________,
+ ____XX__,
+ ________,
+ __XXXX__,
+ ________,
+ ____XX__,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 加 code:0xBCD3 */
+static GUI_CONST_STORAGE unsigned char acBCD3[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ___XX___,
+ _______X,
+ XX____XX,
+ ___XXXXX,
+ XXXXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ X__XX___,
+ ___XXX__,
+ _______X,
+ XX____XX,
+ X__XX___,
+ ___XXX__,
+ _______X,
+ XX____XX,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ XX____XX,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ XX____XX,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ XX____XX,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ XX____XX,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ XX____XX,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ XX____XX,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ XX____XX,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ X_____XX,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ X_____XX,
+ ___XX___,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XX___,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XX___,
+ ___XXX__,
+ ______XX,
+ _____XXX,
+ ___XX___,
+ ___XXX__,
+ _____XXX,
+ _____XXX,
+ ___XX___,
+ ___XXX__,
+ _____XX_,
+ _____XXX,
+ ___XX___,
+ ___XXX__,
+ ____XXXX,
+ X___XXX_,
+ ___XXXXX,
+ XXXXXX__,
+ ____XX__,
+ XXXXXXX_,
+ ___XX___,
+ ___XXX__,
+ ___XX___,
+ __XXXX__,
+ ___XX___,
+ ___XXX__,
+ __XX____,
+ ___XX___,
+ ___XX___,
+ ___XXX__,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 间 code:0xBCE4 */
+static GUI_CONST_STORAGE unsigned char acBCE4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ___XX___,
+ ________,
+ XXX_XXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ____XX__,
+ XXX_____,
+ ________,
+ __XXX___,
+ ____XXXX,
+ _XX_____,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXXXX,
+ XXXXXXX_,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXXXX,
+ XXXXXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXXXX,
+ XXXXXX__,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX___,
+ ____XXX_,
+ ___XX___,
+ ___XX___,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ______XX,
+ XXXXX___,
+ ____XXX_,
+ ________,
+ ________,
+ XXXX____,
+ ____XX__,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 减 code:0xBCF5 */
+static GUI_CONST_STORAGE unsigned char acBCF5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXX_____,
+ __XX____,
+ ________,
+ _____XXX,
+ _XXXX___,
+ ___XXX__,
+ ________,
+ _____XXX,
+ __XXX___,
+ ____XXX_,
+ ________,
+ _____XXX,
+ __XXX___,
+ ____XXXX,
+ ________,
+ _____XXX,
+ ____XX__,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ XXXXX___,
+ _____XXX,
+ ________,
+ _______X,
+ X_XXX___,
+ _____XXX,
+ ________,
+ _______X,
+ X_XXX___,
+ __XX_XXX,
+ ________,
+ _______X,
+ X_XXXXXX,
+ XXXXXXXX,
+ ___XX___,
+ ______XX,
+ __XXX___,
+ _____XXX,
+ ___XXX__,
+ ______XX,
+ __XXX___,
+ _____XXX,
+ ___XXX__,
+ ______XX,
+ __XXX___,
+ _____XXX,
+ __XXX___,
+ _____XX_,
+ __XXXXX_,
+ _____XXX,
+ __XXX___,
+ _____XX_,
+ __XX_XXX,
+ XXXXXXXX,
+ _XXX____,
+ _XX_XXX_,
+ __XX_XXX,
+ __XXXXXX,
+ _XXX____,
+ __XXXX__,
+ _XXX_XXX,
+ __XXX_XX,
+ _XX_____,
+ ___XXX__,
+ _XXX_XXX,
+ __XXX_XX,
+ XXX_____,
+ ____XX__,
+ _XXX_XXX,
+ __XXX_XX,
+ XX______,
+ ___XXX__,
+ _XXX_XXX,
+ __XXX_XX,
+ XX______,
+ ___XXX__,
+ _XX__XXX,
+ XXXXX_XX,
+ X_______,
+ ___XXX__,
+ XXX__XXX,
+ __XX_XXX,
+ XX___XX_,
+ ___XXX__,
+ XX___XXX,
+ _____XX_,
+ XXX__XX_,
+ ___XXX_X,
+ XX______,
+ ____XX__,
+ XXX__XX_,
+ _______X,
+ X_______,
+ __XXX___,
+ _XXXXXX_,
+ ______XX,
+ ________,
+ _XXX____,
+ __XXXXX_,
+ _____XX_,
+ ________,
+ XX______,
+ ___XXXX_,
+ ____XX__,
+ _______X,
+ X_______,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 江 code:0xBDAD */
+static GUI_CONST_STORAGE unsigned char acBDAD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ __XXX___,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X_______,
+ __XXX___,
+ ________,
+ ________,
+ __XX____,
+ __XXX___,
+ ________,
+ ________,
+ _XX_____,
+ __XXX___,
+ ________,
+ __XXX___,
+ _XX_____,
+ __XXX___,
+ ________,
+ ___XXX__,
+ _XX_____,
+ __XXX___,
+ ________,
+ ____XXX_,
+ XX______,
+ __XXX___,
+ ________,
+ ____XXX_,
+ XX______,
+ __XXX___,
+ ________,
+ ________,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ X_______,
+ __XXX___,
+ ________,
+ _______X,
+ X_______,
+ __XXX___,
+ ________,
+ _______X,
+ X_______,
+ __XXX___,
+ ________,
+ ______XX,
+ ________,
+ __XXX___,
+ ________,
+ ______XX,
+ ________,
+ __XXX___,
+ ________,
+ _____XXX,
+ ________,
+ __XXX___,
+ ________,
+ __XXXXXX,
+ ________,
+ __XXX___,
+ ________,
+ ____XXX_,
+ ________,
+ __XXX___,
+ ________,
+ ____XXX_,
+ ________,
+ __XXX___,
+ ________,
+ ____XXX_,
+ ________,
+ __XXX___,
+ ________,
+ ____XXX_,
+ ________,
+ __XXX___,
+ ___XXX__,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 角 code:0xBDC7 */
+static GUI_CONST_STORAGE unsigned char acBDC7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ____XX__,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ _XXX____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XX____,
+ _XXX____,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ XXX_____,
+ XXX_____,
+ _XXX____,
+ _____XX_,
+ XXX_____,
+ XXX_____,
+ _XXX____,
+ ____XX__,
+ XXX_____,
+ XXX_____,
+ _XXX____,
+ __XXX___,
+ XXX_____,
+ XXX_____,
+ _XXX____,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ XXX_____,
+ XXX_____,
+ _XXX____,
+ ________,
+ XXX_____,
+ XXX_____,
+ _XXX____,
+ ________,
+ XXX_____,
+ XXX_____,
+ _XXX____,
+ ________,
+ XXX_____,
+ XXX_____,
+ _XXX____,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ XX______,
+ XXX_____,
+ _XXX____,
+ ________,
+ XX______,
+ XXX_____,
+ _XXX____,
+ _______X,
+ XX______,
+ XXX_____,
+ _XXX____,
+ _______X,
+ XX______,
+ XXX_____,
+ _XXX____,
+ ______XX,
+ X_______,
+ XXX_____,
+ _XXX____,
+ ______XX,
+ ________,
+ XXX_____,
+ _XXX____,
+ _____XXX,
+ ________,
+ XXX_____,
+ _XXX____,
+ ____XXX_,
+ ________,
+ XXX__XXX,
+ XXXX____,
+ ___XX___,
+ ________,
+ XX_____X,
+ XXXX____,
+ __XX____,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 节 code:0xBDDA */
+static GUI_CONST_STORAGE unsigned char acBDDA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ___XXXX_,
+ ____XXXX,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ___XX___,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ __XXXX__,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ ___XXX__,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ________,
+ _____XXX,
+ __XXXXX_,
+ XXX_____,
+ ________,
+ _____XXX,
+ _____XXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ ______XX,
+ XX______,
+ ________,
+ _____XXX,
+ _______X,
+ X_______,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 结 code:0xBDE1 */
+static GUI_CONST_STORAGE unsigned char acBDE1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ _______X,
+ XX______,
+ ____XXXX,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ___XXX__,
+ ______XX,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ ___XX___,
+ ____XXX_,
+ ________,
+ _____XX_,
+ ___XXXX_,
+ ____XXX_,
+ ________,
+ ____XX__,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ____XXX_,
+ ________,
+ __XXXXXX,
+ XXXX____,
+ ____XXX_,
+ ________,
+ ___XXXX_,
+ XXX_____,
+ ____XXX_,
+ __XX____,
+ _______X,
+ XX____XX,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ _______X,
+ X_______,
+ __XX____,
+ ____XX__,
+ _XXXXX_X,
+ XXXXXXXX,
+ XXXXX___,
+ ___XXXXX,
+ XX_____X,
+ XX______,
+ __XXX___,
+ ___XXXX_,
+ _______X,
+ XX______,
+ __XX____,
+ ________,
+ _______X,
+ XX______,
+ __XX____,
+ ________,
+ _______X,
+ XX______,
+ __XX____,
+ ________,
+ ___XXX_X,
+ XX______,
+ __XX____,
+ ________,
+ XXXX___X,
+ XX______,
+ __XX____,
+ ____XXXX,
+ XX_____X,
+ XX______,
+ __XX____,
+ __XXXXX_,
+ _______X,
+ XXXXXXXX,
+ XXXX____,
+ ___XX___,
+ _______X,
+ XX______,
+ __XX____,
+ ________,
+ _______X,
+ XX______,
+ __XX____,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 介 code:0xBDE9 */
+static GUI_CONST_STORAGE unsigned char acBDE9[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ XX______,
+ ________,
+ ________,
+ _____XXX,
+ _XX_____,
+ ________,
+ ________,
+ ____XXX_,
+ _XXX____,
+ ________,
+ ________,
+ ____XXX_,
+ __XX____,
+ ________,
+ ________,
+ ___XXX__,
+ ___XX___,
+ ________,
+ ________,
+ __XXX___,
+ ___XXX__,
+ ________,
+ ________,
+ _XXXX___,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ X_______,
+ ________,
+ XX______,
+ ______XX,
+ XXX_____,
+ _______X,
+ X__XX___,
+ ___XXX_X,
+ XXXXX___,
+ _____XXX,
+ ___XXX__,
+ ___XXXX_,
+ _XXXXXX_,
+ ____XX__,
+ ___XX___,
+ ___XXX__,
+ __XXX___,
+ __XXX___,
+ ___XX___,
+ ___XXX__,
+ ________,
+ ________,
+ ___XX___,
+ ___XXX__,
+ ________,
+ ________,
+ ___XX___,
+ ___XXX__,
+ ________,
+ ________,
+ __XXX___,
+ ___XXX__,
+ ________,
+ ________,
+ __XXX___,
+ ___XXX__,
+ ________,
+ ________,
+ __XXX___,
+ ___XXX__,
+ ________,
+ ________,
+ __XXX___,
+ ___XXX__,
+ ________,
+ ________,
+ __XX____,
+ ___XXX__,
+ ________,
+ ________,
+ _XXX____,
+ ___XXX__,
+ ________,
+ ________,
+ _XX_____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ ______XX,
+ ________,
+ ___XXX__,
+ ________,
+ ____XXX_,
+ ________,
+ ___XXX__,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 禁 code:0xBDFB */
+static GUI_CONST_STORAGE unsigned char acBDFB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _____XX_,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX_XX_,
+ _____XXX,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ XXXX____,
+ ____XXXX,
+ ________,
+ _______X,
+ XXXX____,
+ ____XXXX,
+ X_______,
+ ______XX,
+ XXXXXXX_,
+ ___XXXXX,
+ XX______,
+ ______XX,
+ _XXXXXXX,
+ __XXXXXX,
+ XXX_____,
+ _____XXX,
+ _XXX_XXX,
+ _XXX_XXX,
+ _XXXX___,
+ ____XXX_,
+ _XXX____,
+ XXX__XXX,
+ __XXXXX_,
+ ___XXX__,
+ _XXX___X,
+ XX___XXX,
+ ___XXX__,
+ __XX____,
+ _XXX__XX,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ __XX___X,
+ XX______,
+ ________,
+ ________,
+ _XXXX__X,
+ XX__XXX_,
+ ________,
+ ________,
+ XXXX___X,
+ XX____XX,
+ X_______,
+ _______X,
+ XXX____X,
+ XX_____X,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ ____XX__,
+ ___XXXXX,
+ XX______,
+ __XX____,
+ ___XX___,
+ _____XXX,
+ XX______,
+ __XX____,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 警 code:0xBEAF */
+static GUI_CONST_STORAGE unsigned char acBEAF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X___XX__,
+ ____XX__,
+ ________,
+ _______X,
+ XX__XXX_,
+ ____XXX_,
+ ________,
+ _______X,
+ XX__XXX_,
+ XX__XX__,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ____XX__,
+ _____XXX,
+ XX__XXX_,
+ ___XXXXX,
+ XXXXXXX_,
+ _____XXX,
+ X__XX__X,
+ X__XXX__,
+ _XX_____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ XXX_____,
+ ____XXX_,
+ ___XX_XX,
+ X_XXXX__,
+ XXX_____,
+ ___XXXXX,
+ XXXXXXXX,
+ XXX__XXX,
+ XX______,
+ ___XX_XX,
+ __XXX_XX,
+ X____XXX,
+ X_______,
+ ______XX,
+ XXXXX_XX,
+ X_____XX,
+ X_______,
+ ______XX,
+ __XXX_XX,
+ _____XXX,
+ XX______,
+ ________,
+ ______XX,
+ ____XXX_,
+ XXXXX___,
+ ________,
+ ___XXXXX,
+ __XXX___,
+ __XXXXX_,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ____XX__,
+ ________,
+ ________,
+ XX______,
+ ___XX___,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _______X,
+ XX______,
+ ______XX,
+ X_______,
+ _______X,
+ XX______,
+ ______XX,
+ X_______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _______X,
+ XX______,
+ ______XX,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 巨 code:0xBEDE */
+static GUI_CONST_STORAGE unsigned char acBEDE[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ _____XX_,
+ ________,
+ ________,
+ _XXXX___,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ___XX___,
+ _____XXX,
+ ________,
+ ________,
+ __XXXX__,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 开 code:0xBFAA */
+static GUI_CONST_STORAGE unsigned char acBFAA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XX____,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ________,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ ________,
+ ____XXX_,
+ ________,
+ _____XX_,
+ ________,
+ ____XXX_,
+ ________,
+ ___XXX__,
+ ________,
+ ____XXX_,
+ ________,
+ __XX____,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 控 code:0xBFD8 */
+static GUI_CONST_STORAGE unsigned char acBFD8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ __XX____,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ _____XX_,
+ ____XX__,
+ ______XX,
+ X_XX__XX,
+ XXXXXXXX,
+ XXXXXXX_,
+ __XXXXXX,
+ XXXXXXXX,
+ ________,
+ ___XXX__,
+ ______XX,
+ X___XXXX,
+ ________,
+ ___XX___,
+ ______XX,
+ X___XXX_,
+ _XXX____,
+ __XX____,
+ ______XX,
+ X_______,
+ _XXXX__X,
+ X_______,
+ ______XX,
+ X_______,
+ XXX_____,
+ XXXX____,
+ ______XX,
+ X______X,
+ XX______,
+ _XXXX___,
+ ______XX,
+ X_XXX_XX,
+ ________,
+ __XXXX__,
+ ______XX,
+ XXX_XXX_,
+ ________,
+ ___XX___,
+ _____XXX,
+ X_______,
+ ________,
+ _XX_____,
+ __XXXXXX,
+ X____XXX,
+ XXXXXXXX,
+ XXXX____,
+ __XXX_XX,
+ X_______,
+ ___XXX__,
+ ________,
+ __XX__XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X__XXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ __XXXXXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 块 code:0xBFE9 */
+static GUI_CONST_STORAGE unsigned char acBFE9[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ _XXX____,
+ ________,
+ ______XX,
+ XX______,
+ _XXXX___,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ _XX_____,
+ ______XX,
+ X___XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X__XX___,
+ _XXX____,
+ XXX_____,
+ _XXXXXXX,
+ XXXXXX__,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ X_______,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ X_______,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ X_______,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ X_______,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ X_______,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ X_______,
+ _XXX____,
+ XXXXXX__,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ _XXXXX__,
+ ________,
+ ______XX,
+ X_______,
+ _XX_XX__,
+ ________,
+ ______XX,
+ X__XXXX_,
+ XXX_XX__,
+ ________,
+ ______XX,
+ XXXX____,
+ XXX__XX_,
+ ________,
+ __XXXXXX,
+ X_______,
+ XX___XXX,
+ ________,
+ __XXXXX_,
+ _______X,
+ XX____XX,
+ ________,
+ __XXX___,
+ ______XX,
+ X______X,
+ X_______,
+ ________,
+ _____XXX,
+ _______X,
+ XXX_____,
+ ________,
+ ____XXX_,
+ ________,
+ XXXX____,
+ ________,
+ __XXX___,
+ ________,
+ _XXXXXX_,
+ ________,
+ XXX_____,
+ ________,
+ __XXXX__,
+ ______XX,
+ X_______,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 快 code:0xBFEC */
+static GUI_CONST_STORAGE unsigned char acBFEC[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ _XX_____,
+ ________,
+ ______XX,
+ XX______,
+ _XXXX___,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ _XX_____,
+ ______XX,
+ X___XXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ XX______,
+ _XXX____,
+ _XXX____,
+ ______XX,
+ XXXX____,
+ _XXX____,
+ _XXX____,
+ ______XX,
+ X_XXX___,
+ _XXX____,
+ _XXX____,
+ ___XXXXX,
+ X_XXX___,
+ _XXX____,
+ _XXX____,
+ ___XXXXX,
+ X__XX___,
+ _XXX____,
+ _XXX____,
+ __XXX_XX,
+ X_______,
+ _XXX____,
+ _XXX____,
+ __XXX_XX,
+ X_______,
+ _XXX____,
+ _XXX____,
+ ______XX,
+ X_______,
+ _XXX____,
+ _XXXXX__,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ _XXXXX__,
+ ________,
+ ______XX,
+ X_______,
+ _XX_XX__,
+ ________,
+ ______XX,
+ X_______,
+ XXX_XX__,
+ ________,
+ ______XX,
+ X_______,
+ XXX__XX_,
+ ________,
+ ______XX,
+ X_______,
+ XX___XX_,
+ ________,
+ ______XX,
+ X______X,
+ XX___XXX,
+ ________,
+ ______XX,
+ X______X,
+ X_____XX,
+ X_______,
+ ______XX,
+ X_____XX,
+ X______X,
+ XX______,
+ ______XX,
+ X____XXX,
+ _______X,
+ XXX_____,
+ ______XX,
+ X___XXX_,
+ ________,
+ XXXX____,
+ ______XX,
+ X__XXX__,
+ ________,
+ _XXXXXX_,
+ ______XX,
+ X_XX____,
+ ________,
+ __XXXX__,
+ ______XX,
+ _XX_____,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 累 code:0xC0DB */
+static GUI_CONST_STORAGE unsigned char acC0DB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _______X,
+ X_______,
+ XX______,
+ _XX_____,
+ _______X,
+ X_______,
+ XX______,
+ _XX_____,
+ _______X,
+ X_______,
+ XX______,
+ _XX_____,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ X_______,
+ XX______,
+ _XX_____,
+ _______X,
+ X_______,
+ XX______,
+ _XX_____,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ X______X,
+ X_______,
+ _XX_____,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ XXXX____,
+ __XXXXX_,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ XX_____X,
+ XX___XX_,
+ ________,
+ ________,
+ _____XXX,
+ ______XX,
+ X_______,
+ ________,
+ __XXXX__,
+ _______X,
+ XXX_____,
+ _______X,
+ XXX____X,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ XXXXXXXX,
+ XXX_____,
+ _XXX____,
+ _______X,
+ XX_XX___,
+ XXX_____,
+ __XX____,
+ ________,
+ __XXX___,
+ XXX__XXX,
+ ________,
+ ________,
+ _XXXXX__,
+ XXX___XX,
+ XX______,
+ ________,
+ XXXX____,
+ XXX_____,
+ XXXX____,
+ _______X,
+ XX______,
+ XXX_____,
+ _XXXX___,
+ _____XXX,
+ ____XXXX,
+ XXX_____,
+ __XXX___,
+ ____XX__,
+ ______XX,
+ XX______,
+ ___XX___,
+ ___XX___,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 类 code:0xC0E0 */
+static GUI_CONST_STORAGE unsigned char acC0E0[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ _______X,
+ X______X,
+ XXX____X,
+ XX______,
+ ________,
+ XXX____X,
+ XX_____X,
+ XXX_____,
+ ________,
+ _XXXX__X,
+ XX____XX,
+ X_______,
+ ________,
+ __XXX__X,
+ XX___XXX,
+ ________,
+ ________,
+ __XXX__X,
+ XX___XX_,
+ ________,
+ ________,
+ __XX___X,
+ XX__XX__,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _____XXX,
+ XX______,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ___XXX_X,
+ XX__XXXX,
+ ________,
+ ________,
+ __XXX__X,
+ XX____XX,
+ XXX_____,
+ ________,
+ _XXX___X,
+ XX______,
+ XXXXX___,
+ _______X,
+ XXX____X,
+ XX______,
+ _XXXX___,
+ ______XX,
+ X______X,
+ X_______,
+ __XXX___,
+ ___XXXX_,
+ ______XX,
+ X_______,
+ ___XX___,
+ __XX____,
+ ______XX,
+ XX______,
+ ____XX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ______XX,
+ _XX_____,
+ ________,
+ ________,
+ _____XXX,
+ __XX____,
+ ________,
+ ________,
+ _____XXX,
+ __XXX___,
+ ________,
+ ________,
+ ____XXX_,
+ ___XXX__,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ __XXXX__,
+ _____XXX,
+ X_______,
+ ________,
+ _XXXX___,
+ ______XX,
+ XXXX____,
+ _______X,
+ XXX_____,
+ ________,
+ XXXXXXXX,
+ _____XXX,
+ X_______,
+ ________,
+ _XXXX___,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 离 code:0xC0EB */
+static GUI_CONST_STORAGE unsigned char acC0EB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ ______XX,
+ ________,
+ _______X,
+ XXXXX___,
+ __XXX__X,
+ XX______,
+ _______X,
+ XX__XXXX,
+ _XXXX__X,
+ XX______,
+ _______X,
+ XX_____X,
+ XXX____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XXXX___X,
+ XX______,
+ _______X,
+ XX___XXX,
+ __XXXX_X,
+ XX______,
+ _______X,
+ XX_XXX__,
+ ___XXX_X,
+ XX______,
+ _______X,
+ XXXX____,
+ ____XX_X,
+ XX______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ____XX__,
+ ______XX,
+ X_______,
+ __XX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXX_,
+ _____XXX,
+ ________,
+ __XXX___,
+ ____XXX_,
+ _____XX_,
+ _XX_____,
+ __XXX___,
+ ____XXX_,
+ ____XX__,
+ __XXX___,
+ __XXX___,
+ ____XXX_,
+ ___XX___,
+ ___XXXX_,
+ __XXX___,
+ ____XXX_,
+ _XXXXXXX,
+ XXXXXXXX,
+ __XXX___,
+ ____XXX_,
+ _XXXXXX_,
+ _____XXX,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ______XX,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ _____XXX,
+ XXXX____,
+ ____XXX_,
+ ________,
+ ________,
+ XXXX____,
+ ____XXX_,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 理 code:0xC0ED */
+static GUI_CONST_STORAGE unsigned char acC0ED[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ __XXX_XX,
+ XXXXXXXX,
+ XXXXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ X___XXX_,
+ __XXX___,
+ _______X,
+ X_____XX,
+ X___XXX_,
+ __XXX___,
+ _______X,
+ X_____XX,
+ X___XXX_,
+ __XXX___,
+ _______X,
+ X_____XX,
+ X___XXX_,
+ __XXX___,
+ _______X,
+ X_____XX,
+ X___XXX_,
+ __XXX___,
+ _______X,
+ X_____XX,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ X_____XX,
+ X___XXX_,
+ __XXX___,
+ _______X,
+ X_____XX,
+ X___XXX_,
+ __XXX___,
+ _______X,
+ X_XXX_XX,
+ X___XXX_,
+ __XXX___,
+ __XXXXXX,
+ XXXXXXXX,
+ X___XXX_,
+ __XXX___,
+ _______X,
+ X_____XX,
+ X___XXX_,
+ __XXX___,
+ _______X,
+ X_____XX,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ X_____XX,
+ X___XXX_,
+ __XXX___,
+ _______X,
+ X_____XX,
+ ____XXX_,
+ ________,
+ _______X,
+ X_______,
+ ____XXX_,
+ ________,
+ _______X,
+ X_______,
+ ____XXX_,
+ ________,
+ _______X,
+ X___XXX_,
+ ____XXX_,
+ __XXX___,
+ _______X,
+ XXXXX_XX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ___XXXXX,
+ ________,
+ ____XXX_,
+ ________,
+ __XXXX__,
+ ________,
+ ____XXX_,
+ ________,
+ ___XX___,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ____XX__,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 力 code:0xC1A6 */
+static GUI_CONST_STORAGE unsigned char acC1A6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ _______X,
+ X_______,
+ __XXX___,
+ ________,
+ ______XX,
+ X_______,
+ __XXX___,
+ ________,
+ ______XX,
+ X_______,
+ __XXX___,
+ ________,
+ ______XX,
+ X_______,
+ __XXX___,
+ ________,
+ ______XX,
+ X_______,
+ __XXX___,
+ ________,
+ _____XXX,
+ ________,
+ __XXX___,
+ ________,
+ _____XXX,
+ ________,
+ __XXX___,
+ ________,
+ _____XXX,
+ ________,
+ _XXX____,
+ ________,
+ ____XXX_,
+ ________,
+ _XXX____,
+ ________,
+ ____XXX_,
+ ________,
+ _XXX____,
+ ________,
+ ___XXX__,
+ ________,
+ _XXX____,
+ ________,
+ __XXX___,
+ ________,
+ _XXX____,
+ ________,
+ __XXX___,
+ ________,
+ _XXX____,
+ ________,
+ _XXX____,
+ ________,
+ _XXX____,
+ ________,
+ XXX_____,
+ ________,
+ XXXX____,
+ _______X,
+ XX______,
+ __XX____,
+ XXX_____,
+ ______XX,
+ X_______,
+ ___XXXXX,
+ XXX_____,
+ _____XX_,
+ ________,
+ ____XXXX,
+ XX______,
+ ___XXX__,
+ ________,
+ _____XXX,
+ X_______,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 连 code:0xC1AC */
+static GUI_CONST_STORAGE unsigned char acC1AC[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ____XXX_,
+ ________,
+ _XXX____,
+ ________,
+ _____XXX,
+ ________,
+ _XXX____,
+ ________,
+ _____XXX,
+ X_______,
+ XXX_____,
+ __XXX___,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X__XXXX_,
+ ________,
+ _______X,
+ X_____XX,
+ X__XXX__,
+ ________,
+ __XXXXXX,
+ XX___XXX,
+ ___XXX__,
+ ________,
+ ______XX,
+ X___XXXX,
+ ___XXX__,
+ _XX_____,
+ ______XX,
+ X__XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X___XXX_,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ____XXX_,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ___XXX__,
+ ________,
+ __XXX___,
+ ___XXXXX,
+ ________,
+ _____XXX,
+ ___XX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 量 code:0xC1BF */
+static GUI_CONST_STORAGE unsigned char acC1BF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ ________,
+ ____XX__,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ X_______,
+ ________,
+ _______X,
+ XX______,
+ XXX_____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 流 code:0xC1F7 */
+static GUI_CONST_STORAGE unsigned char acC1F7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ________,
+ _____XX_,
+ ________,
+ __XXX___,
+ ________,
+ ______XX,
+ X_______,
+ __XXX___,
+ __XXX___,
+ ______XX,
+ XX_XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _______X,
+ XX______,
+ __XX____,
+ ________,
+ _______X,
+ X_______,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ __XX____,
+ XX_____X,
+ X_______,
+ __XX____,
+ __XX___X,
+ X_______,
+ XX______,
+ ___XXX__,
+ _XX___XX,
+ ________,
+ XXX_____,
+ ___XXXX_,
+ _XX_XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ____XXX_,
+ XX___XXX,
+ X_______,
+ _XXX____,
+ ____XXX_,
+ XX___XX_,
+ ________,
+ __XX____,
+ ________,
+ XX___XX_,
+ _XX____X,
+ X_______,
+ _______X,
+ X____XXX,
+ __XXX__X,
+ XX______,
+ _______X,
+ X____XX_,
+ __XX___X,
+ XX______,
+ ______XX,
+ X____XX_,
+ __XX___X,
+ XX______,
+ ______XX,
+ _____XX_,
+ __XX___X,
+ XX______,
+ _____XXX,
+ ____XXX_,
+ __XX___X,
+ XX______,
+ __XXXXXX,
+ ____XXX_,
+ __XX___X,
+ XX______,
+ ____XXXX,
+ ____XXX_,
+ __XX___X,
+ XX______,
+ _____XXX,
+ ____XXX_,
+ __XX___X,
+ XX__XX__,
+ _____XX_,
+ ____XX__,
+ __XX___X,
+ XX__XX__,
+ ____XXX_,
+ ___XXX__,
+ __XX___X,
+ XX__XX__,
+ ____XXX_,
+ __XXX___,
+ __XX___X,
+ X___XXX_,
+ ____XXX_,
+ __XX____,
+ __XX___X,
+ XX__XXXX,
+ ____XXX_,
+ XXX_____,
+ __XX___X,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 率 code:0xC2CA */
+static GUI_CONST_STORAGE unsigned char acC2CA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ __XX____,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ___XX___,
+ _XX_____,
+ _____XXX,
+ X___XXX_,
+ __XXXX__,
+ XXXX____,
+ ______XX,
+ XX_XXX__,
+ __XXX__X,
+ XX______,
+ _______X,
+ X_XXXXXX,
+ XXXX__XX,
+ X_______,
+ _______X,
+ X_XXXX__,
+ XXX__XX_,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _XX___XX,
+ X_____XX,
+ ________,
+ ________,
+ XX___XXX,
+ __XX___X,
+ XXX_____,
+ ______XX,
+ X___XX__,
+ ___XXX__,
+ XXXX____,
+ ____XXXX,
+ __XXXXXX,
+ XXXXXXX_,
+ __XXX___,
+ ___XXXX_,
+ __XXXXXX,
+ X___XXX_,
+ __XXX___,
+ ____XX__,
+ _______X,
+ XX__XX__,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 逻 code:0xC2DF */
+static GUI_CONST_STORAGE unsigned char acC2DF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ___XX___,
+ ____XXX_,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XXX,
+ ___XXX__,
+ XXX___XX,
+ ___XX___,
+ _____XXX,
+ X__XXX__,
+ XXX___XX,
+ ___XX___,
+ ______XX,
+ X__XXX__,
+ XXX___XX,
+ ___XX___,
+ ______XX,
+ ___XXX__,
+ XXX___XX,
+ ___XX___,
+ ________,
+ ___XXX__,
+ XXX___XX,
+ ___XX___,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ___XXX__,
+ __XX____,
+ ___XXX__,
+ ________,
+ ___XX___,
+ _XXXX___,
+ ________,
+ _______X,
+ X_______,
+ XXXX____,
+ ________,
+ _XXXXXXX,
+ XX______,
+ XXX_____,
+ _XX_____,
+ ______XX,
+ X______X,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X_____XX,
+ X_______,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ ________,
+ XXX_____,
+ ______XX,
+ X___XXXX,
+ XX_____X,
+ XX______,
+ ______XX,
+ X__XX___,
+ XXX____X,
+ XX______,
+ ______XX,
+ X_XX____,
+ XXX___XX,
+ X_______,
+ ______XX,
+ X_______,
+ _XX__XXX,
+ ________,
+ ______XX,
+ X_______,
+ ___XXXX_,
+ ________,
+ ______XX,
+ X_______,
+ __XXX___,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X______X,
+ XX______,
+ ________,
+ ____XXX_,
+ XX__XXXX,
+ ________,
+ ________,
+ __XXXX__,
+ _XXXX___,
+ ________,
+ ________,
+ __XXX___,
+ ___XXXX_,
+ ________,
+ _____XXX,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 门 code:0xC3C5 */
+static GUI_CONST_STORAGE unsigned char acC3C5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ __XX____,
+ ________,
+ _XXXX__X,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ __XXX___,
+ ________,
+ _XXX____,
+ _____XX_,
+ __XX____,
+ ________,
+ _XXX____,
+ _____XXX,
+ X_______,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ____XXX_,
+ _XXX____,
+ _____XXX,
+ ________,
+ ______XX,
+ XXXX____,
+ _____XXX,
+ ________,
+ ________,
+ XXXX____,
+ _____XX_,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 模 code:0xC4A3 */
+static GUI_CONST_STORAGE unsigned char acC4A3[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ XX____XX,
+ ________,
+ ______XX,
+ XX______,
+ XXXX__XX,
+ XX______,
+ ______XX,
+ X_______,
+ XXX___XX,
+ X_______,
+ ______XX,
+ X_______,
+ XXX___XX,
+ X__XXX__,
+ ______XX,
+ X__XXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ XXX___XX,
+ X_______,
+ ______XX,
+ X_XXX___,
+ XXX___XX,
+ X_______,
+ _XXXXXXX,
+ XXXXXX__,
+ XXX___XX,
+ X_______,
+ ______XX,
+ X_____XX,
+ ________,
+ ________,
+ ______XX,
+ X_____XX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X_____XX,
+ X_______,
+ _XXX____,
+ _____XXX,
+ XX____XX,
+ X_______,
+ _XXX____,
+ _____XXX,
+ XXXX__XX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ X_XXX_XX,
+ X_______,
+ _XXX____,
+ ____XXXX,
+ X_XXX_XX,
+ X_______,
+ _XXX____,
+ ____XXXX,
+ X__XX_XX,
+ X_______,
+ _XXX____,
+ ____XXXX,
+ X__XX_XX,
+ XXXXXXXX,
+ XXXX____,
+ ___XX_XX,
+ X_____XX,
+ X__XXX__,
+ _XXX____,
+ ___XX_XX,
+ X_____XX,
+ ___XXX__,
+ ________,
+ __XX__XX,
+ X_______,
+ ___XX___,
+ ___XXX__,
+ _XX___XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ __XXXXX_,
+ ________,
+ ______XX,
+ X_______,
+ __XXX_XX,
+ ________,
+ ______XX,
+ X_______,
+ _XXX__XX,
+ X_______,
+ ______XX,
+ X_______,
+ _XX____X,
+ XX______,
+ ______XX,
+ X_______,
+ XXX_____,
+ XXXX____,
+ ______XX,
+ X_____XX,
+ X_______,
+ _XXXXXXX,
+ ______XX,
+ X___XXXX,
+ ________,
+ __XXXX__,
+ ______XX,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 摩 code:0xC4A6 */
+static GUI_CONST_STORAGE unsigned char acC4A6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ___XX___,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XXX,
+ ____XX__,
+ _____XXX,
+ ________,
+ _____XXX,
+ ____XXX_,
+ _____XXX,
+ ________,
+ _____XXX,
+ ____XX__,
+ _____XXX,
+ ___XX___,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XXX,
+ ___XXX__,
+ ____XXXX,
+ X_______,
+ _____XXX,
+ __XXXXXX,
+ ___XXXXX,
+ XX______,
+ _____XXX,
+ __XXXXXX,
+ X_XXXXXX,
+ XXX_____,
+ _____XXX,
+ _XX_XX_X,
+ X_XX_XXX,
+ _XXX____,
+ _____XX_,
+ XXX_XX__,
+ _XX__XXX,
+ __XXXX__,
+ _____XX_,
+ XX__XX__,
+ XX___XXX,
+ ___XXX__,
+ _____XXX,
+ X___XX__,
+ ____XXXX,
+ ________,
+ _____XX_,
+ ___XX___,
+ ___XXXXX,
+ X_______,
+ _____XX_,
+ __XXXXXX,
+ XXXXXXX_,
+ ________,
+ ____XXX_,
+ ________,
+ _XXX____,
+ ________,
+ ____XXX_,
+ ________,
+ _XXX____,
+ XX______,
+ ____XXX_,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ____XX__,
+ ________,
+ _XXX____,
+ ________,
+ ____XX__,
+ ________,
+ _XXX____,
+ ___XX___,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XX___,
+ ________,
+ _XXX____,
+ ________,
+ ___XX___,
+ ________,
+ _XXX____,
+ ________,
+ __XX____,
+ ________,
+ _XXX____,
+ ________,
+ __XX____,
+ _____XXX,
+ XXX_____,
+ ________,
+ _XX_____,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 幕 code:0xC4BB */
+static GUI_CONST_STORAGE unsigned char acC4BB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ________,
+ ________,
+ ___XXXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ___XX___,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ________,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XX______,
+ ______XX,
+ X_______,
+ ________,
+ XX______,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XX______,
+ ______XX,
+ X_______,
+ ________,
+ XX______,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XX___XXX,
+ ______XX,
+ X_______,
+ _______X,
+ X___XXXX,
+ ________,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ __XXX___,
+ ____XX__,
+ ________,
+ ________,
+ _XXX___X,
+ X____XX_,
+ ________,
+ _______X,
+ XXX____X,
+ XX____XX,
+ XX______,
+ ______XX,
+ X______X,
+ XX____XX,
+ XXXXX___,
+ ____XXX_,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ __XXX___,
+ XXX____X,
+ XX____XX,
+ X__XX___,
+ ________,
+ XXX____X,
+ XX____XX,
+ X_______,
+ ________,
+ XXX____X,
+ XX____XX,
+ X_______,
+ ________,
+ XXX____X,
+ XX____XX,
+ X_______,
+ ________,
+ XXX____X,
+ XXXXX_XX,
+ ________,
+ ________,
+ XXX____X,
+ XX__XXXX,
+ ________,
+ ________,
+ XX_____X,
+ XX___XX_,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 目 code:0xC4BF */
+static GUI_CONST_STORAGE unsigned char acC4BF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 能 code:0xC4DC */
+static GUI_CONST_STORAGE unsigned char acC4DC[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ __XXX___,
+ ________,
+ ________,
+ XXX_____,
+ __XXXX__,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ _XX_____,
+ ______XX,
+ X___XX__,
+ __XXX___,
+ XXXX____,
+ _____XXX,
+ _____XXX,
+ __XXX__X,
+ XXX_____,
+ ____XXX_,
+ _____XXX,
+ X_XXXXXX,
+ X_______,
+ __XXXX__,
+ ___XXXXX,
+ X_XXXX__,
+ ________,
+ ___XXXXX,
+ XXXX__XX,
+ X_XXX___,
+ ____XX__,
+ ___XX___,
+ _______X,
+ X_XXX___,
+ ____XX__,
+ ____XX__,
+ _____XX_,
+ __XXX___,
+ ____XX__,
+ ____XXXX,
+ XXXXXXXX,
+ ___XXX__,
+ ___XXXX_,
+ ____XXX_,
+ _____XX_,
+ ___XXXXX,
+ XXXXXX__,
+ ____XXX_,
+ _____XX_,
+ ________,
+ ________,
+ ____XXX_,
+ _____XX_,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXXXX_,
+ __XXX___,
+ ________,
+ ____XXX_,
+ _____XX_,
+ __XXX___,
+ _XXX____,
+ ____XXX_,
+ _____XX_,
+ __XXX___,
+ XXXXX___,
+ ____XXX_,
+ _____XX_,
+ __XXX__X,
+ XXX_____,
+ ____XXX_,
+ _____XX_,
+ __XXX_XX,
+ X_______,
+ ____XXXX,
+ XXXXXXX_,
+ __XXXXX_,
+ ________,
+ ____XXX_,
+ _____XX_,
+ __XXX___,
+ ____XX__,
+ ____XXX_,
+ _____XX_,
+ __XXX___,
+ ____XX__,
+ ____XXX_,
+ _____XX_,
+ __XXX___,
+ ____XX__,
+ ____XXX_,
+ _____XX_,
+ __XXX___,
+ ____XX__,
+ ____XXX_,
+ _____XX_,
+ __XXX___,
+ ____XX__,
+ ____XXX_,
+ XXXXXXX_,
+ __XXXXXX,
+ XXXXXXX_,
+ ____XXX_,
+ ___XXXX_,
+ ___XXXXX,
+ XXXXXX__,
+ ____XX__,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 排 code:0xC5C5 */
+static GUI_CONST_STORAGE unsigned char acC5C5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ _XX_____,
+ ________,
+ _______X,
+ XX______,
+ _XXXX_XX,
+ XX______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X___XX__,
+ _______X,
+ X_XXXXXX,
+ XXXX__XX,
+ XXXXXXX_,
+ __XXXXXX,
+ XXXXX___,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_XXX___,
+ _XXX__XX,
+ X___XX__,
+ _______X,
+ XXX__XXX,
+ XXXX__XX,
+ XXXXXXX_,
+ _____XXX,
+ X_______,
+ _XXX__XX,
+ X_______,
+ __XXXXXX,
+ X_______,
+ _XXX__XX,
+ X_______,
+ __XXXX_X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ __XX___X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X___XX__,
+ _______X,
+ X__XXXXX,
+ XXXX__XX,
+ XXXXXXX_,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _______X,
+ X_______,
+ _XXX__XX,
+ X_______,
+ ______XX,
+ X_______,
+ _XXX__XX,
+ X_______,
+ ___XXXXX,
+ X_______,
+ _XXX__XX,
+ X_______,
+ _____XXX,
+ X_______,
+ _XXX__XX,
+ X_______,
+ ________,
+ ________,
+ _XX___XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 屏 code:0xC6C1 */
+static GUI_CONST_STORAGE unsigned char acC6C1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X_______,
+ ________,
+ __XXX___,
+ ______XX,
+ X_______,
+ ________,
+ __XXX___,
+ ______XX,
+ X_______,
+ ________,
+ __XXX___,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ ________,
+ ________,
+ __XXX___,
+ ______XX,
+ _____XX_,
+ ______XX,
+ ________,
+ ______XX,
+ _____XXX,
+ _____XXX,
+ X_______,
+ ______XX,
+ ______XX,
+ X____XXX,
+ ________,
+ ______XX,
+ ______XX,
+ X____XX_,
+ ________,
+ ______XX,
+ _______X,
+ X___XX__,
+ _XXX____,
+ ______XX,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ ______XX,
+ _____XXX,
+ ________,
+ _____XXX,
+ ______XX,
+ _____XXX,
+ ________,
+ _____XXX,
+ ______XX,
+ _____XXX,
+ ________,
+ _____XXX,
+ ______XX,
+ _____XXX,
+ ________,
+ _____XXX,
+ ______XX,
+ _____XXX,
+ __XXX___,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XX_,
+ ______XX,
+ _____XXX,
+ ________,
+ ____XXX_,
+ ______XX,
+ _____XXX,
+ ________,
+ ____XX__,
+ _____XXX,
+ _____XXX,
+ ________,
+ ____XX__,
+ _____XXX,
+ _____XXX,
+ ________,
+ ___XX___,
+ ____XXX_,
+ _____XXX,
+ ________,
+ ___XX___,
+ ____XX__,
+ _____XXX,
+ ________,
+ __XX____,
+ __XXX___,
+ _____XXX,
+ ________,
+ __XX____,
+ _XXX____,
+ _____XXX,
+ ________,
+ _______X,
+ XX______,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 期 code:0xC6DA */
+static GUI_CONST_STORAGE unsigned char acC6DA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ _____XX_,
+ ________,
+ ________,
+ ______XX,
+ XX___XXX,
+ X__XX___,
+ ____XX__,
+ ______XX,
+ X____XXX,
+ ___XXXXX,
+ XXXXXXX_,
+ ______XX,
+ X____XXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ XX_XXX__,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ XXXXXXXX,
+ ___XXXXX,
+ XXXXXX__,
+ ______XX,
+ X____XXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ XXXXXXXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XXXXX,
+ XXXXXX__,
+ ______XX,
+ X____XXX,
+ XX_XXX__,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XXX__,
+ _______X,
+ X_______,
+ ___XXX__,
+ ___XXX__,
+ _______X,
+ XX__XX__,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ XXX__XX_,
+ __XXX___,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ X_XXX___,
+ ___XXX__,
+ _____XXX,
+ ______XX,
+ XXXX____,
+ ___XXX__,
+ _____XXX,
+ ______XX,
+ XXXX____,
+ ___XXX__,
+ ____XX__,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ___XX___,
+ _______X,
+ XX______,
+ XXXXXX__,
+ __XX____,
+ ______XX,
+ X_______,
+ __XXX___,
+ ________,
+ _____XX_,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 其 code:0xC6E4 */
+static GUI_CONST_STORAGE unsigned char acC6E4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ____XX__,
+ ________,
+ ________,
+ __XXXX__,
+ ____XXXX,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ __XXX___,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ___XX___,
+ ________,
+ __XXX___,
+ ____XXX_,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ___XX___,
+ ________,
+ ________,
+ __XXXXX_,
+ ____XXX_,
+ ________,
+ ________,
+ _XXXX___,
+ _____XXX,
+ X_______,
+ ________,
+ XXXX____,
+ ______XX,
+ XXX_____,
+ _______X,
+ XXX_____,
+ _______X,
+ XXXX____,
+ _____XXX,
+ X_______,
+ ________,
+ XXXXX___,
+ ____XXX_,
+ ________,
+ ________,
+ _XXXX___,
+ __XXX___,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 启 code:0xC6F4 */
+static GUI_CONST_STORAGE unsigned char acC6F4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ _______X,
+ X_______,
+ XX______,
+ _XX_____,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX_XX___,
+ ________,
+ ________,
+ _______X,
+ X__XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X__XXX__,
+ ________,
+ XXX_____,
+ ______XX,
+ X__XXX__,
+ ________,
+ XXX_____,
+ ______XX,
+ X__XXX__,
+ ________,
+ XXX_____,
+ ______XX,
+ X__XXX__,
+ ________,
+ XXX_____,
+ ______XX,
+ ___XXX__,
+ ________,
+ XXX_____,
+ _____XXX,
+ ___XXX__,
+ ________,
+ XXX_____,
+ _____XXX,
+ ___XXX__,
+ ________,
+ XXX_____,
+ _____XX_,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ____XX__,
+ ___XXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ___XX___,
+ ___XXX__,
+ ________,
+ XXX_____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 器 code:0xC6F7 */
+static GUI_CONST_STORAGE unsigned char acC6F7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ _XX_____,
+ ______XX,
+ XXXXXXXX,
+ __XXXXXX,
+ XXXX____,
+ ______XX,
+ ____XXX_,
+ __XXX___,
+ XXX_____,
+ ______XX,
+ ____XXX_,
+ __XXX___,
+ XXX_____,
+ ______XX,
+ ____XXX_,
+ __XXX___,
+ XXX_____,
+ ______XX,
+ ____XXX_,
+ __XXX___,
+ XXX_____,
+ ______XX,
+ XXXXXXX_,
+ __XXXXXX,
+ XXX_____,
+ ______XX,
+ ____XXX_,
+ __XXX___,
+ XXX_____,
+ ______XX,
+ ______XX,
+ X___XXX_,
+ ________,
+ ________,
+ ______XX,
+ X____XXX,
+ X__XX___,
+ ________,
+ _____XXX,
+ ______XX,
+ X_XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ____XXX_,
+ __XX____,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ X_______,
+ _______X,
+ XXX_____,
+ ______XX,
+ XXXX____,
+ _____XXX,
+ X____XX_,
+ ________,
+ XXXXXXX_,
+ ___XXXXX,
+ XXXXXXXX,
+ _XXXXXXX,
+ XXXXXX__,
+ _XXX__XX,
+ X____XX_,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ XXXXXXX_,
+ _XXXXXXX,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ _XXX____,
+ XXX_____,
+ ______XX,
+ ________,
+ _XXX____,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 气 code:0xC6F8 */
+static GUI_CONST_STORAGE unsigned char acC6F8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ _______X,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ______XX,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ __XX____,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X___XX__,
+ ________,
+ ________,
+ ______XX,
+ X___XX__,
+ ________,
+ ________,
+ _______X,
+ XX__XX__,
+ ________,
+ ________,
+ _______X,
+ XXX_XX__,
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 切 code:0xC7D0 */
+static GUI_CONST_STORAGE unsigned char acC7D0[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ___XX___,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ ___XXX__,
+ ___XXX__,
+ ______XX,
+ X__XXXXX,
+ X__XXX__,
+ ___XXX__,
+ ______XX,
+ XXXX____,
+ ___XXX__,
+ ___XXX__,
+ _XXXXXXX,
+ X_______,
+ ___XXX__,
+ ___XX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ___XX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ __XXX___,
+ __XXX___,
+ ______XX,
+ X_______,
+ __XXX___,
+ __XXX___,
+ ______XX,
+ X_______,
+ __XXX___,
+ __XXX___,
+ ______XX,
+ X_______,
+ __XXX___,
+ __XXX___,
+ ______XX,
+ X_____XX,
+ _XXX____,
+ __XXX___,
+ ______XX,
+ X___XXX_,
+ _XXX____,
+ __XXX___,
+ ______XX,
+ X__XXX__,
+ _XXX____,
+ __XXX___,
+ ______XX,
+ XXXX____,
+ XXX_____,
+ __XXX___,
+ ______XX,
+ XXX_____,
+ XXX_____,
+ __XXX___,
+ ______XX,
+ XX_____X,
+ XX______,
+ __XXX___,
+ _______X,
+ X_____XX,
+ X_______,
+ __XXX___,
+ _______X,
+ X_____XX,
+ ________,
+ _XXXX___,
+ ________,
+ _____XX_,
+ ____XXX_,
+ _XXX____,
+ ________,
+ ___XXX__,
+ ______XX,
+ XXXX____,
+ ________,
+ __XXX___,
+ _______X,
+ XXX_____,
+ ________,
+ _XX_____,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 区 code:0xC7F8 */
+static GUI_CONST_STORAGE unsigned char acC7F8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ __XX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ______XX,
+ ________,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ __XX____,
+ _____XXX,
+ X_______,
+ ____XXX_,
+ ___XXX__,
+ _____XXX,
+ ________,
+ ____XXX_,
+ ____XXX_,
+ ____XXX_,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ___XXXX_,
+ ________,
+ ____XXX_,
+ ______XX,
+ X__XXX__,
+ ________,
+ ____XXX_,
+ _______X,
+ XXXXX___,
+ ________,
+ ____XXX_,
+ ________,
+ XXXX____,
+ ________,
+ ____XXX_,
+ ________,
+ XXXX____,
+ ________,
+ ____XXX_,
+ ________,
+ XXXXXX__,
+ ________,
+ ____XXX_,
+ _______X,
+ XX_XXXX_,
+ ________,
+ ____XXX_,
+ ______XX,
+ X__XXXX_,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ____XXXX,
+ ________,
+ ____XXX_,
+ ____XXX_,
+ _____XXX,
+ X_______,
+ ____XXX_,
+ ___XXX__,
+ ______XX,
+ X_______,
+ ____XXX_,
+ __XXX___,
+ ______XX,
+ X_______,
+ ____XXX_,
+ _XX_____,
+ _______X,
+ X_______,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 曲 code:0xC7FA */
+static GUI_CONST_STORAGE unsigned char acC7FA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ __XX____,
+ ________,
+ ________,
+ ____XXXX,
+ ___XXX__,
+ ________,
+ ________,
+ ____XXX_,
+ ___XX___,
+ ________,
+ ________,
+ ____XXX_,
+ ___XX___,
+ ________,
+ ________,
+ ____XXX_,
+ ___XX___,
+ ________,
+ ________,
+ ____XXX_,
+ ___XX___,
+ ________,
+ _____XX_,
+ ____XXX_,
+ ___XX___,
+ __XX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 驱 code:0xC7FD */
+static GUI_CONST_STORAGE unsigned char acC7FD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ XX______,
+ ____XX__,
+ __XXXXXX,
+ XXXXXXX_,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ___XX___,
+ XXX_____,
+ ________,
+ ________,
+ ___XX___,
+ XXX_____,
+ ________,
+ _____XX_,
+ ___XX___,
+ XXX_____,
+ ________,
+ _____XXX,
+ ___XX___,
+ XXX_____,
+ ___XX___,
+ _____XX_,
+ __XXX___,
+ XXX_____,
+ __XXXX__,
+ _____XX_,
+ __XXX___,
+ XXXXX___,
+ __XXX___,
+ _____XX_,
+ __XXX___,
+ XXX_XX__,
+ __XXX___,
+ _____XX_,
+ __XXX___,
+ XXX__XX_,
+ _XXX____,
+ ____XXX_,
+ __XXX___,
+ XXX___XX,
+ _XXX____,
+ ____XXX_,
+ __XXX___,
+ XXX___XX,
+ XXX_____,
+ ____XXX_,
+ __XXX___,
+ XXX____X,
+ XXX_____,
+ ____XXX_,
+ __XX_XX_,
+ XXX____X,
+ XX______,
+ ___XXXXX,
+ XXXXXXXX,
+ XXX____X,
+ XXX_____,
+ ____XX__,
+ _____XX_,
+ XXX____X,
+ XXXX____,
+ ________,
+ _____XX_,
+ XXX___XX,
+ _XXXX___,
+ ________,
+ ____XXX_,
+ XXX__XXX,
+ __XXX___,
+ ________,
+ ____XXX_,
+ XXX__XX_,
+ __XXXX__,
+ ________,
+ XXX_XXX_,
+ XXX_XX__,
+ ___XXX__,
+ ___XXXXX,
+ X___XXX_,
+ XXXXX___,
+ ___XX___,
+ __XXXX__,
+ ____XXX_,
+ XXXXX___,
+ ________,
+ ________,
+ ____XX__,
+ XXX_____,
+ ________,
+ ________,
+ ___XXX__,
+ XXX_____,
+ ________,
+ ______XX,
+ ___XXX__,
+ XXX_____,
+ ____XX__,
+ _______X,
+ XXXXX___,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ XXXXX___,
+ _XX_____,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 全 code:0xC8AB */
+static GUI_CONST_STORAGE unsigned char acC8AB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ XX______,
+ ________,
+ ________,
+ ____XXX_,
+ _XX_____,
+ ________,
+ ________,
+ ____XXX_,
+ _XXX____,
+ ________,
+ ________,
+ ___XXX__,
+ __XXX___,
+ ________,
+ ________,
+ __XXX___,
+ ___XXX__,
+ ________,
+ ________,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ ______XX,
+ XX______,
+ _______X,
+ XX______,
+ ______XX,
+ XXXXX___,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXXX__,
+ __XXX___,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX_____X,
+ X_______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 确 code:0xC8B7 */
+static GUI_CONST_STORAGE unsigned char acC8B7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ________,
+ ________,
+ ____XX__,
+ _XXX____,
+ XX______,
+ __XXXXXX,
+ XXXXXXX_,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ X_______,
+ XXX____X,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX_____X,
+ X_______,
+ ______XX,
+ X______X,
+ X_____XX,
+ ________,
+ ______XX,
+ ______XX,
+ X_____XX,
+ ___XX___,
+ _____XXX,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XXX,
+ ____XX_X,
+ XX___XXX,
+ ___XXX__,
+ _____XX_,
+ _______X,
+ XX___XXX,
+ ___XXX__,
+ ____XXXX,
+ XXXXXX_X,
+ XX___XXX,
+ ___XXX__,
+ ____XXX_,
+ __XXX__X,
+ XX___XXX,
+ ___XXX__,
+ ___XXXX_,
+ __XXX__X,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XXXX_,
+ __XXX__X,
+ XX___XXX,
+ ___XXX__,
+ __XX_XX_,
+ __XXX__X,
+ XX___XXX,
+ ___XXX__,
+ __XX_XX_,
+ __XXX__X,
+ XX___XXX,
+ ___XXX__,
+ _XX__XX_,
+ __XXX__X,
+ XX___XXX,
+ ___XXX__,
+ _____XX_,
+ __XXX__X,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XX_,
+ __XXX__X,
+ XX___XXX,
+ ___XXX__,
+ _____XXX,
+ XXXXX__X,
+ X____XXX,
+ ___XXX__,
+ _____XX_,
+ __XXX_XX,
+ X____XXX,
+ ___XXX__,
+ _____XX_,
+ __XX__XX,
+ X____XXX,
+ ___XXX__,
+ _____XX_,
+ ______XX,
+ _____XXX,
+ ___XXX__,
+ _____XX_,
+ _____XXX,
+ _____XXX,
+ ___XXX__,
+ ________,
+ ____XXX_,
+ _____XXX,
+ XXXXXX__,
+ ________,
+ ____XX__,
+ _____XX_,
+ __XXX___,
+ ________,
+ ___XX___,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 认 code:0xC8CF */
+static GUI_CONST_STORAGE unsigned char acC8CF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ______XX,
+ ________,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XXX_____,
+ ___XXX__,
+ ________,
+ _______X,
+ XXX_____,
+ __XXXX__,
+ ________,
+ ________,
+ XXX_____,
+ __XXXX__,
+ ________,
+ ________,
+ XXX_____,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ________,
+ _______X,
+ X_______,
+ __XXXX__,
+ ________,
+ _XXXXXXX,
+ XX______,
+ __XXXX__,
+ ________,
+ _______X,
+ X_______,
+ __XXXXX_,
+ ________,
+ _______X,
+ X_______,
+ __XX_XX_,
+ ________,
+ _______X,
+ X_______,
+ __XX_XX_,
+ ________,
+ _______X,
+ X_______,
+ _XXX_XX_,
+ ________,
+ _______X,
+ X_______,
+ _XXX_XXX,
+ ________,
+ _______X,
+ X_____XX,
+ _XXX__XX,
+ ________,
+ _______X,
+ X____XX_,
+ XXX___XX,
+ X_______,
+ _______X,
+ X___XX__,
+ XXX___XX,
+ X_______,
+ _______X,
+ X_XXX__X,
+ XX_____X,
+ XX______,
+ _______X,
+ XXXX___X,
+ X______X,
+ XX______,
+ _______X,
+ XXX___XX,
+ X_______,
+ XXX_____,
+ _______X,
+ XXX__XXX,
+ ________,
+ XXXX____,
+ ______XX,
+ XX__XXX_,
+ ________,
+ _XXXXX__,
+ _______X,
+ X__XX___,
+ ________,
+ __XXXXX_,
+ ________,
+ _XXX____,
+ ________,
+ ___XX___,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 日 code:0xC8D5 */
+static GUI_CONST_STORAGE unsigned char acC8D5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 入 code:0xC8EB */
+static GUI_CONST_STORAGE unsigned char acC8EB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ _____XXX,
+ _XXX____,
+ ________,
+ ________,
+ _____XXX,
+ _XXX____,
+ ________,
+ ________,
+ _____XXX,
+ __XX____,
+ ________,
+ ________,
+ ____XXX_,
+ __XXX___,
+ ________,
+ ________,
+ ____XXX_,
+ __XXX___,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ __XXX___,
+ ___XXXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ XXX_____,
+ _____XXX,
+ X_______,
+ _______X,
+ XX______,
+ ______XX,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ XXX_____,
+ ______XX,
+ ________,
+ ________,
+ XXXXX___,
+ _____XX_,
+ ________,
+ ________,
+ _XXXXXX_,
+ ____XX__,
+ ________,
+ ________,
+ __XXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ___XX___,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 上 code:0xC9CF */
+static GUI_CONST_STORAGE unsigned char acC9CF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 绍 code:0xC9DC */
+static GUI_CONST_STORAGE unsigned char acC9DC[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX__XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _______X,
+ XX______,
+ ___XX___,
+ ___XX___,
+ ______XX,
+ X_______,
+ __XXX___,
+ ___XX___,
+ ______XX,
+ ________,
+ __XXX___,
+ __XXX___,
+ _____XXX,
+ ___XX___,
+ __XXX___,
+ __XXX___,
+ _____XX_,
+ ___XXX__,
+ __XXX___,
+ __XXX___,
+ ____XX__,
+ __XXXX__,
+ __XX____,
+ __XXX___,
+ ____XX__,
+ __XXX___,
+ _XXX____,
+ __XXX___,
+ ___XX___,
+ _XXX____,
+ _XXX____,
+ __XXX___,
+ __XXXXXX,
+ XXX_____,
+ _XX_____,
+ __XXX___,
+ __XXXX__,
+ XXX_____,
+ XX___XXX,
+ XXXX____,
+ _______X,
+ XX_____X,
+ XX______,
+ XXXX____,
+ _______X,
+ X_____XX,
+ X_______,
+ XXX_____,
+ ______XX,
+ _____XX_,
+ ________,
+ ________,
+ _____XXX,
+ _______X,
+ X_______,
+ ___XX___,
+ ____XXX_,
+ __XXXX_X,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XXXXX,
+ XXX____X,
+ XX______,
+ __XXX___,
+ ____XXXX,
+ _______X,
+ XX______,
+ __XXX___,
+ ____XX__,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ __XXXX_X,
+ XX______,
+ __XXX___,
+ _______X,
+ XXX____X,
+ XX______,
+ __XXX___,
+ ___XXXXX,
+ X______X,
+ XXXXXXXX,
+ XXXXX___,
+ ___XXX__,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 设 code:0xC9E8 */
+static GUI_CONST_STORAGE unsigned char acC9E8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ _______X,
+ X_______,
+ ______XX,
+ X______X,
+ XXXXXXXX,
+ XX______,
+ ______XX,
+ XX_____X,
+ XX____XX,
+ X_______,
+ _______X,
+ XX_____X,
+ XX____XX,
+ X_______,
+ _______X,
+ XX_____X,
+ XX____XX,
+ X_______,
+ _______X,
+ X______X,
+ XX____XX,
+ X_______,
+ ________,
+ _______X,
+ X_____XX,
+ X_______,
+ ________,
+ ______XX,
+ X_____XX,
+ X_______,
+ ________,
+ ______XX,
+ X_____XX,
+ XXXXXXX_,
+ _______X,
+ X____XXX,
+ _______X,
+ XXXXXXX_,
+ __XXXXXX,
+ XXX__XX_,
+ ________,
+ ________,
+ _______X,
+ XX__XX__,
+ ________,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _______X,
+ XX_____X,
+ X_______,
+ XXX_____,
+ _______X,
+ XX______,
+ XX_____X,
+ XXX_____,
+ _______X,
+ XX______,
+ XX_____X,
+ XX______,
+ _______X,
+ XX______,
+ XX_____X,
+ XX______,
+ _______X,
+ XX______,
+ _XX___XX,
+ X_______,
+ _______X,
+ XX___XX_,
+ _XX___XX,
+ X_______,
+ _______X,
+ XX__XX__,
+ __XX_XXX,
+ ________,
+ _______X,
+ XX_XX___,
+ __XXXXXX,
+ ________,
+ _______X,
+ XXXX____,
+ ___XXXX_,
+ ________,
+ _______X,
+ XXXX____,
+ ___XXX__,
+ ________,
+ _______X,
+ XXX_____,
+ __XXXXXX,
+ ________,
+ _______X,
+ XX______,
+ _XXX_XXX,
+ XX______,
+ ________,
+ _______X,
+ XXX___XX,
+ XXXX____,
+ ________,
+ _____XXX,
+ X_______,
+ XXXXXXX_,
+ ________,
+ ___XXXX_,
+ ________,
+ __XXX___,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 石 code:0xCAAF */
+static GUI_CONST_STORAGE unsigned char acCAAF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ XXX_____,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ XXXXX___,
+ ________,
+ XXX_____,
+ _______X,
+ XXXXX___,
+ ________,
+ XXX_____,
+ ______XX,
+ X_XXX___,
+ ________,
+ XXX_____,
+ _____XXX,
+ __XXX___,
+ ________,
+ XXX_____,
+ _____XX_,
+ __XXX___,
+ ________,
+ XXX_____,
+ ____XX__,
+ __XXX___,
+ ________,
+ XXX_____,
+ __XXX___,
+ __XXX___,
+ ________,
+ XXX_____,
+ _XX_____,
+ __XXX___,
+ ________,
+ XXX_____,
+ ________,
+ __XXX___,
+ ________,
+ XXX_____,
+ ________,
+ __XXX___,
+ ________,
+ XXX_____,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ __XXX___,
+ ________,
+ XXX_____,
+ ________,
+ __XXX___,
+ ________,
+ XXX_____,
+ ________,
+ __XXX___,
+ ________,
+ XXX_____,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 时 code:0xCAB1 */
+static GUI_CONST_STORAGE unsigned char acCAB1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ __XX____,
+ ______XX,
+ X_______,
+ ___XXXXX,
+ XXXXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X__XXX__,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX_XX,
+ ______XX,
+ X_______,
+ ___XXXXX,
+ XXXXX__X,
+ X_____XX,
+ X_______,
+ ___XXX__,
+ __XXX__X,
+ XXX___XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ XXX___XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ XXXX__XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ _XX___XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ ___XXXXX,
+ XXXXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XXX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ __XXXXXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 实 code:0xCAB5 */
+static GUI_CONST_STORAGE unsigned char acCAB5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ _____XX_,
+ ________,
+ XX______,
+ ___XX___,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XX_,
+ ________,
+ _XX_____,
+ __XXXXX_,
+ ____XXX_,
+ ________,
+ _XXXX___,
+ __XXX___,
+ ___XXXX_,
+ __XXXX__,
+ _XXX____,
+ _XX_____,
+ ___XXX__,
+ ___XXXX_,
+ _XXX____,
+ ________,
+ ________,
+ ____XXX_,
+ _XXX____,
+ ________,
+ ________,
+ _____XX_,
+ _XXX____,
+ ________,
+ ______XX,
+ ________,
+ _XXX____,
+ ________,
+ _______X,
+ XXX_____,
+ _XXX____,
+ ________,
+ ________,
+ XXXX____,
+ _XXX____,
+ ________,
+ ________,
+ _XXX____,
+ XXX_____,
+ ________,
+ ________,
+ __XX____,
+ XXX_____,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XXXX____,
+ ________,
+ ________,
+ ______XX,
+ X_XXXX__,
+ ________,
+ ________,
+ _____XXX,
+ X___XXXX,
+ X_______,
+ ________,
+ ____XXXX,
+ ______XX,
+ XXX_____,
+ ________,
+ ___XXXX_,
+ _______X,
+ XXXX____,
+ ________,
+ _XXXX___,
+ ________,
+ XXXXX___,
+ ______XX,
+ XX______,
+ ________,
+ _XXXX___,
+ __XXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 使 code:0xCAB9 */
+static GUI_CONST_STORAGE unsigned char acCAB9[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ___XX___,
+ ________,
+ ________,
+ _XXX____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ___XXX__,
+ _______X,
+ XX_XXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ __XX____,
+ _____XXX,
+ XX___XXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ X____XX_,
+ ___XXX__,
+ __XX____,
+ ____XXXX,
+ X____XX_,
+ ___XXX__,
+ __XX____,
+ ____XX_X,
+ X____XX_,
+ ___XXX__,
+ __XX____,
+ ___XX__X,
+ X____XX_,
+ ___XXX__,
+ __XX____,
+ ___XX__X,
+ X____XX_,
+ ___XXX__,
+ __XX____,
+ __XX___X,
+ X____XXX,
+ XXXXXXXX,
+ XXXX____,
+ _______X,
+ X____XX_,
+ ___XXX__,
+ __XX____,
+ _______X,
+ X_____XX,
+ ___XXX__,
+ ________,
+ _______X,
+ X______X,
+ X__XXX__,
+ ________,
+ _______X,
+ X______X,
+ X__XX___,
+ ________,
+ _______X,
+ X_______,
+ XXXXX___,
+ ________,
+ _______X,
+ X_______,
+ XXXXX___,
+ ________,
+ _______X,
+ X_______,
+ _XXX____,
+ ________,
+ _______X,
+ X_______,
+ _XXXX___,
+ ________,
+ _______X,
+ X_______,
+ XXXXXXX_,
+ ________,
+ _______X,
+ X______X,
+ XX___XXX,
+ XX______,
+ _______X,
+ X____XXX,
+ ______XX,
+ XXXXXXX_,
+ _______X,
+ X__XXX__,
+ ________,
+ XXXXXX__,
+ ________,
+ _XXX____,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 式 code:0xCABD */
+static GUI_CONST_STORAGE unsigned char acCABD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ _XXXX_XX,
+ ________,
+ ________,
+ ________,
+ _XXX___X,
+ XX______,
+ ________,
+ ________,
+ _XXX____,
+ XXX_____,
+ ________,
+ ________,
+ __XX____,
+ XXXX____,
+ ________,
+ ________,
+ __XX____,
+ _XXXX___,
+ ________,
+ ________,
+ __XX____,
+ __XXXX__,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ______XX,
+ X_XXX___,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ _XXX____,
+ __XXX___,
+ ________,
+ ________,
+ _XXX____,
+ ___XXX__,
+ ________,
+ ________,
+ _XXX____,
+ ___XXX__,
+ ________,
+ ________,
+ _XXX____,
+ ___XXX__,
+ ________,
+ ________,
+ _XXX____,
+ ___XXX__,
+ ________,
+ ________,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ ____XXX_,
+ _____XX_,
+ ________,
+ _XXX____,
+ _XX__XXX,
+ _____XX_,
+ ________,
+ _XXX__XX,
+ XX___XXX,
+ X___XX__,
+ ________,
+ _XXXXXX_,
+ ______XX,
+ X___XX__,
+ _____XXX,
+ XXXX____,
+ _______X,
+ XX__XXX_,
+ __XXXXXX,
+ X_______,
+ _______X,
+ XXXXXXX_,
+ ___XXX__,
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 示 code:0xCABE */
+static GUI_CONST_STORAGE unsigned char acCABE[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _XXX___X,
+ XX__XX__,
+ ________,
+ ________,
+ XXXXX__X,
+ XX___XX_,
+ ________,
+ ________,
+ XXX____X,
+ XX____XX,
+ X_______,
+ _______X,
+ XXX____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXXX__,
+ ____XX__,
+ _______X,
+ XX______,
+ ___XXX__,
+ ___XX___,
+ _______X,
+ XX______,
+ ___XX___,
+ __XX____,
+ _XXX___X,
+ XX______,
+ ________,
+ ________,
+ ___XXXXX,
+ XX______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 是 code:0xCAC7 */
+static GUI_CONST_STORAGE unsigned char acCAC7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XX_____,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ XXX____X,
+ XX______,
+ ________,
+ ________,
+ XXXX___X,
+ XX______,
+ ________,
+ ________,
+ XXX____X,
+ XX______,
+ XXX_____,
+ ________,
+ XXX____X,
+ XXXXXXXX,
+ XXXX____,
+ _______X,
+ XX_____X,
+ XX______,
+ ________,
+ _______X,
+ XXX____X,
+ XX______,
+ ________,
+ _______X,
+ XXXX___X,
+ XX______,
+ ________,
+ ______XX,
+ X__XXX_X,
+ XX______,
+ ________,
+ _____XXX,
+ ____XXXX,
+ XX______,
+ ________,
+ _____XXX,
+ _____XXX,
+ XX______,
+ ________,
+ ____XXX_,
+ _______X,
+ XXXXXXXX,
+ XXXXXXX_,
+ ___XX___,
+ ________,
+ __XXXXXX,
+ XXXXX___,
+ __XX____,
+ ________,
+ ________,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 试 code:0xCAD4 */
+static GUI_CONST_STORAGE unsigned char acCAD4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXX_____,
+ ____XXX_,
+ ________,
+ _____XXX,
+ _XXXX___,
+ _____XXX,
+ ________,
+ _____XXX,
+ __XXX___,
+ ______XX,
+ X_______,
+ _____XXX,
+ ___XX___,
+ ______XX,
+ X_______,
+ _____XXX,
+ ___XXX__,
+ ______XX,
+ X_______,
+ _____XXX,
+ ____XX__,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ _______X,
+ X_______,
+ _____XXX,
+ ________,
+ _XXXXXXX,
+ XX______,
+ ___XXXXX,
+ ________,
+ ______XX,
+ X__XXXXX,
+ XXXXXXXX,
+ ________,
+ ______XX,
+ X______X,
+ XX____XX,
+ ________,
+ ______XX,
+ X______X,
+ XX____XX,
+ X_______,
+ ______XX,
+ X______X,
+ XX____XX,
+ X_______,
+ ______XX,
+ X______X,
+ XX____XX,
+ X_______,
+ ______XX,
+ X______X,
+ XX_____X,
+ X_______,
+ ______XX,
+ X______X,
+ XX_____X,
+ XX______,
+ ______XX,
+ X___XX_X,
+ XX_____X,
+ XX______,
+ ______XX,
+ X__XX__X,
+ XX__XXX_,
+ XXX__XX_,
+ ______XX,
+ X_XX___X,
+ XXXXX___,
+ XXX__XX_,
+ ______XX,
+ XXX___XX,
+ XXX_____,
+ _XXX_XX_,
+ ______XX,
+ XXXXXXXX,
+ ________,
+ _XXXXXX_,
+ ______XX,
+ XX__XX__,
+ ________,
+ __XXXXX_,
+ ______XX,
+ XX______,
+ ________,
+ ___XXXX_,
+ _______X,
+ X_______,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 手 code:0xCAD6 */
+static GUI_CONST_STORAGE unsigned char acCAD6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXX____,
+ ____XXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ XXX_____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ __XXXXXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 输 code:0xCAE4 */
+static GUI_CONST_STORAGE unsigned char acCAE4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ___XX___,
+ ________,
+ ______XX,
+ XX______,
+ ___XXXX_,
+ ________,
+ ______XX,
+ X_______,
+ __XXXX__,
+ ________,
+ _____XXX,
+ ________,
+ __XXXXX_,
+ ________,
+ _____XXX,
+ ___XX___,
+ _XXX__XX,
+ ________,
+ _XXXXXXX,
+ XXXXXX__,
+ _XXX__XX,
+ X_______,
+ _____XX_,
+ ________,
+ XXX____X,
+ XX______,
+ ____XXX_,
+ _______X,
+ XX_____X,
+ XXX_____,
+ ____XX_X,
+ X_____XX,
+ XXX___XX,
+ XXXXX___,
+ ____XX_X,
+ XXX__XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ___XXX_X,
+ XX__XXX_,
+ ________,
+ ___XXX__,
+ ___XX__X,
+ XX_XXXX_,
+ ___XX___,
+ ________,
+ __XXX__X,
+ XXXX_XXX,
+ XXXXXX__,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ __XXX__X,
+ X__XX___,
+ __XX___X,
+ XX___XXX,
+ __XXX__X,
+ X__XX___,
+ _______X,
+ XX___XXX,
+ __XXX__X,
+ X__XX___,
+ _______X,
+ XX___XXX,
+ XXXXX__X,
+ X__XX___,
+ _______X,
+ XX___XXX,
+ __XXX__X,
+ X__XX___,
+ _______X,
+ XX___XXX,
+ __XXX__X,
+ X__XX___,
+ _______X,
+ XXXXXXXX,
+ __XXX__X,
+ X__XX___,
+ __XXXXXX,
+ XX___XXX,
+ XXXXX__X,
+ X__XX___,
+ __XXX__X,
+ XX___XXX,
+ __XXX__X,
+ X__XX___,
+ _______X,
+ XX___XXX,
+ __XXX__X,
+ X__XX___,
+ _______X,
+ XX___XXX,
+ __XXX__X,
+ X__XX___,
+ _______X,
+ XX___XXX,
+ __XXX___,
+ ___XX___,
+ _______X,
+ XX___XXX,
+ __XXX___,
+ ___XX___,
+ _______X,
+ XX___XXX,
+ __XXX__X,
+ XXXXX___,
+ _______X,
+ XX___XXX,
+ _XXXX___,
+ _XXXX___,
+ _______X,
+ XX___XX_,
+ __XX____,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 术 code:0xCAF5 */
+static GUI_CONST_STORAGE unsigned char acCAF5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX__XXX_,
+ ________,
+ ________,
+ _______X,
+ XX____XX,
+ XX______,
+ ________,
+ _______X,
+ XX_____X,
+ XX______,
+ ________,
+ _______X,
+ XX_____X,
+ XX______,
+ ________,
+ _______X,
+ XX______,
+ XX_XX___,
+ ________,
+ _______X,
+ XX______,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XX_XX___,
+ ________,
+ ________,
+ ___XXX_X,
+ XX_XXX__,
+ ________,
+ ________,
+ __XXX__X,
+ XX__XX__,
+ ________,
+ ________,
+ __XXX__X,
+ XX__XXX_,
+ ________,
+ ________,
+ _XXX___X,
+ XX___XXX,
+ ________,
+ ________,
+ XXX____X,
+ XX___XXX,
+ X_______,
+ _______X,
+ XX_____X,
+ XX____XX,
+ XX______,
+ _______X,
+ X______X,
+ XX_____X,
+ XXX_____,
+ ______XX,
+ _______X,
+ XX______,
+ XXXXX___,
+ _____XX_,
+ _______X,
+ XX______,
+ _XXXXXXX,
+ ____XX__,
+ _______X,
+ XX______,
+ __XXX___,
+ __XXX___,
+ _______X,
+ XX______,
+ ___XX___,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 束 code:0xCAF8 */
+static GUI_CONST_STORAGE unsigned char acCAF8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ______XX,
+ _______X,
+ XX______,
+ XX______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXX_____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ X____XXX,
+ XXX_____,
+ XXX_____,
+ ______XX,
+ X___XXXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ___XXX_X,
+ XX_XX___,
+ ________,
+ ________,
+ __XXX__X,
+ XX__XX__,
+ ________,
+ ________,
+ _XXX___X,
+ XX__XXXX,
+ ________,
+ ________,
+ XXX____X,
+ XX___XXX,
+ X_______,
+ _______X,
+ XX_____X,
+ XX____XX,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX_____X,
+ XXXXX___,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXXXXX_,
+ ___XXX__,
+ _______X,
+ XX______,
+ __XXX___,
+ __XX____,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 数 code:0xCAFD */
+static GUI_CONST_STORAGE unsigned char acCAFD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ____XX__,
+ ________,
+ ________,
+ _XXXX___,
+ ____XXXX,
+ ________,
+ ____XXX_,
+ _XXX___X,
+ XX__XXX_,
+ ________,
+ _____XXX,
+ _XXX__XX,
+ X__XXX__,
+ ________,
+ _____XXX,
+ XXXX_XXX,
+ ___XXX__,
+ ________,
+ ______XX,
+ _XXX_XX_,
+ ___XX___,
+ ________,
+ ________,
+ _XXXXX_X,
+ X__XX___,
+ ____XX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ XXXX____,
+ __XXX___,
+ _XXX____,
+ _______X,
+ XXXXXX__,
+ __XXX___,
+ _XXX____,
+ _______X,
+ XXXXXXXX,
+ _XXXX___,
+ _XXX____,
+ ______XX,
+ _XXX_XXX,
+ _XXXX___,
+ _XXX____,
+ _____XX_,
+ _XXX__XX,
+ XX_XX___,
+ _XX_____,
+ ___XXX__,
+ _XXX____,
+ XX_XX___,
+ _XX_____,
+ __XX____,
+ _XX____X,
+ X___XX__,
+ XXX_____,
+ ________,
+ XXXX____,
+ ____XX__,
+ XXX_____,
+ ________,
+ XXX___XX,
+ ____XX__,
+ XXX_____,
+ __XXXXXX,
+ XXXXXXXX,
+ X___XXX_,
+ XX______,
+ _______X,
+ XX___XXX,
+ ____XXXX,
+ XX______,
+ _______X,
+ X____XXX,
+ _____XXX,
+ XX______,
+ ______XX,
+ X___XXX_,
+ _____XXX,
+ X_______,
+ ______XX,
+ XX__XXX_,
+ _____XXX,
+ X_______,
+ ________,
+ _XXXXX__,
+ _____XXX,
+ X_______,
+ ________,
+ __XXXXXX,
+ X___XXXX,
+ XX______,
+ ________,
+ XXXX__XX,
+ X__XXX__,
+ XXXX____,
+ _______X,
+ XX_____X,
+ X_XXX___,
+ _XXXX___,
+ _____XXX,
+ ________,
+ XXX_____,
+ __XXXXXX,
+ __XXXX__,
+ _______X,
+ X_______,
+ ___XX___,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 双 code:0xCBAB */
+static GUI_CONST_STORAGE unsigned char acCBAB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ _____XXX,
+ __XX____,
+ __XX____,
+ ________,
+ _____XXX,
+ __XX____,
+ __XX____,
+ ________,
+ _____XX_,
+ __XX____,
+ _XXX____,
+ ____XX__,
+ ____XXX_,
+ __XX____,
+ _XXX____,
+ _____XX_,
+ ____XXX_,
+ ___XX___,
+ _XXX____,
+ ______XX,
+ ____XX__,
+ ___XX___,
+ _XXX____,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ XXX_____,
+ _______X,
+ XX_XXX__,
+ ___XX___,
+ XXX_____,
+ ________,
+ XX_XX___,
+ ___XX___,
+ XXX_____,
+ ________,
+ _XXXX___,
+ ____XX__,
+ XX______,
+ ________,
+ _XXXX___,
+ ____XX_X,
+ XX______,
+ ________,
+ _XXXX___,
+ ____XXXX,
+ XX______,
+ ________,
+ XXXXXX__,
+ _____XXX,
+ X_______,
+ ________,
+ XXXXXXX_,
+ _____XXX,
+ X_______,
+ _______X,
+ XX__XXX_,
+ _____XXX,
+ ________,
+ ______XX,
+ X____XXX,
+ ____XXXX,
+ X_______,
+ ______XX,
+ _____XXX,
+ ____XXXX,
+ XX______,
+ _____XX_,
+ _____XXX,
+ ___XXX_X,
+ XXX_____,
+ ____XX__,
+ ______XX,
+ __XXX___,
+ XXXX____,
+ ___XX___,
+ ________,
+ XXX_____,
+ _XXXX___,
+ __XX____,
+ _______X,
+ XX______,
+ __XXXXX_,
+ ________,
+ ______XX,
+ ________,
+ ___XX___,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 司 code:0xCBBE */
+static GUI_CONST_STORAGE unsigned char acCBBE[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ______XX,
+ ________,
+ _XX_____,
+ _XXX____,
+ ______XX,
+ XXXXXXXX,
+ XXXX____,
+ _XXX____,
+ ______XX,
+ X_______,
+ _XX_____,
+ _XXX____,
+ ______XX,
+ X_______,
+ _XX_____,
+ _XXX____,
+ ______XX,
+ X_______,
+ _XX_____,
+ _XXX____,
+ ______XX,
+ X_______,
+ _XX_____,
+ _XXX____,
+ ______XX,
+ X_______,
+ _XX_____,
+ _XXX____,
+ ______XX,
+ X_______,
+ _XX_____,
+ _XXX____,
+ ______XX,
+ XXXXXXXX,
+ XXX_____,
+ _XXX____,
+ ______XX,
+ X_______,
+ _XX_____,
+ _XXX____,
+ ______XX,
+ X_______,
+ _XXX____,
+ _XXX____,
+ ______XX,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 死 code:0xCBC0 */
+static GUI_CONST_STORAGE unsigned char acCBC0[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _XXX____,
+ ___XX___,
+ ________,
+ ________,
+ _XXX____,
+ ___XX___,
+ ________,
+ ________,
+ XXX_____,
+ ___XX___,
+ ________,
+ ________,
+ XXX_____,
+ ___XX___,
+ ________,
+ ________,
+ XXX_____,
+ ___XX___,
+ ___XX___,
+ _______X,
+ XX____XX,
+ ___XX___,
+ ___XXX__,
+ _______X,
+ XXXXXXXX,
+ X__XX___,
+ __XXXXX_,
+ _______X,
+ XX____XX,
+ X__XX___,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ ___XX___,
+ XXX_____,
+ ______XX,
+ X____XXX,
+ ___XX__X,
+ X_______,
+ _____XXX,
+ X____XXX,
+ ___XXXXX,
+ ________,
+ _____XX_,
+ XX__XXX_,
+ ___XXX__,
+ ________,
+ ____XXX_,
+ XXX_XXX_,
+ ___XX___,
+ ________,
+ ___XXX__,
+ XXX_XXX_,
+ ___XX___,
+ ________,
+ ___XX___,
+ _XXXXX__,
+ ___XX___,
+ ________,
+ __XX____,
+ ___XXX__,
+ ___XX___,
+ ____XX__,
+ ________,
+ __XXX___,
+ ___XX___,
+ ____XX__,
+ ________,
+ _XXX____,
+ ___XX___,
+ ____XX__,
+ ________,
+ _XXX____,
+ ___XX___,
+ ____XX__,
+ ________,
+ XXX_____,
+ ___XX___,
+ ____XX__,
+ _______X,
+ XX______,
+ ___XX___,
+ ____XXX_,
+ ______XX,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ ____XXX_,
+ ________,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 苏 code:0xCBD5 */
+static GUI_CONST_STORAGE unsigned char acCBD5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ___XX___,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXXX_,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ___XX___,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ___XXXXX,
+ ___XXX__,
+ ________,
+ ________,
+ ___XXXXX,
+ X__XX___,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ______XX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _____XXX,
+ ______XX,
+ ________,
+ ________,
+ _____XXX,
+ ______XX,
+ ________,
+ ________,
+ _____XXX,
+ ______XX,
+ ________,
+ ______XX,
+ _____XXX,
+ ______XX,
+ _XX_____,
+ ______XX,
+ _____XX_,
+ _____XXX,
+ __XX____,
+ _____XXX,
+ ____XXX_,
+ _____XXX,
+ __XXX___,
+ ____XXX_,
+ ____XXX_,
+ _____XXX,
+ ___XXX__,
+ ___XXXX_,
+ ___XXX__,
+ _____XXX,
+ ___XXX__,
+ ___XXX__,
+ ___XXX__,
+ _____XXX,
+ ___XXX__,
+ ________,
+ __XXX___,
+ _____XXX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ ________,
+ ________,
+ _XX_____,
+ _____XXX,
+ ________,
+ _______X,
+ XX_____X,
+ XX__XXX_,
+ ________,
+ ______XX,
+ X_______,
+ _XXXXXX_,
+ ________,
+ _____XX_,
+ ________,
+ __XXXX__,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 速 code:0xCBD9 */
+static GUI_CONST_STORAGE unsigned char acCBD9[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ________,
+ ____XX__,
+ ________,
+ __XXX___,
+ ________,
+ _____XXX,
+ ________,
+ __XXX___,
+ ___XX___,
+ _____XXX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X_______,
+ __XXX___,
+ ________,
+ ______XX,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ____XX__,
+ __XXX___,
+ _XX_____,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ____XXX_,
+ __XXX___,
+ _XX_____,
+ _______X,
+ X___XXX_,
+ __XXX___,
+ _XX_____,
+ _XXXXXXX,
+ XX__XXX_,
+ __XXX___,
+ _XX_____,
+ ______XX,
+ X___XXX_,
+ __XXX___,
+ _XX_____,
+ ______XX,
+ X___XXXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ X___XXX_,
+ _XXXX___,
+ _XX_____,
+ ______XX,
+ X___XX__,
+ _XXXX___,
+ ________,
+ ______XX,
+ X_______,
+ XXXXXX__,
+ ________,
+ ______XX,
+ X______X,
+ XXXXXXXX,
+ X_______,
+ ______XX,
+ X_____XX,
+ X_XXX__X,
+ XXX_____,
+ ______XX,
+ X____XXX,
+ __XXX___,
+ XXXXX___,
+ ______XX,
+ X___XXX_,
+ __XXX___,
+ _XXXX___,
+ ______XX,
+ X__XX___,
+ __XXX___,
+ __XXX___,
+ _____XXX,
+ X_XX____,
+ __XXX___,
+ ________,
+ ____XXX_,
+ XX______,
+ __XXX___,
+ ________,
+ __XXXX__,
+ _XXX____,
+ __XXX___,
+ ________,
+ __XXX___,
+ __XXXX__,
+ ________,
+ ______XX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 他 code:0xCBFB */
+static GUI_CONST_STORAGE unsigned char acCBFB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ___XXXX_,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X____XX_,
+ ___XXX__,
+ ________,
+ ______XX,
+ X____XXX,
+ X__XXX__,
+ __XX____,
+ ______XX,
+ _____XXX,
+ ___XXX__,
+ XXXXX___,
+ _____XXX,
+ XX___XXX,
+ ___XXXXX,
+ X_XX____,
+ _____XXX,
+ XX___XXX,
+ XXXXXX__,
+ __XX____,
+ ____XXXX,
+ X___XXXX,
+ X__XXX__,
+ __XX____,
+ ____XX_X,
+ XXXXXXXX,
+ ___XXX__,
+ __XX____,
+ ___XXX_X,
+ X____XXX,
+ ___XXX__,
+ __XX____,
+ ___XX__X,
+ X____XXX,
+ ___XXX__,
+ _XXX____,
+ __XX___X,
+ X____XXX,
+ ___XXX__,
+ _XXX____,
+ __XX___X,
+ X____XXX,
+ ___XXX__,
+ _XXX____,
+ _______X,
+ X____XXX,
+ ___XXX__,
+ _XXX____,
+ _______X,
+ X____XXX,
+ ___XXXXX,
+ XXXX____,
+ _______X,
+ X____XXX,
+ ___XXX__,
+ XXX_____,
+ _______X,
+ X____XXX,
+ ___XXX__,
+ ________,
+ _______X,
+ X____XXX,
+ ___XXX__,
+ ____XX__,
+ _______X,
+ X____XXX,
+ ___XX___,
+ ____XX__,
+ _______X,
+ X____XXX,
+ ________,
+ ____XX__,
+ _______X,
+ X____XXX,
+ ________,
+ ____XX__,
+ _______X,
+ X____XXX,
+ ________,
+ ____XXX_,
+ _______X,
+ X____XXX,
+ ________,
+ ___XXXXX,
+ _______X,
+ X_____XX,
+ XXXXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 特 code:0xCCD8 */
+static GUI_CONST_STORAGE unsigned char acCCD8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ___XX___,
+ ________,
+ _______X,
+ XXX_____,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ ___XX__X,
+ XX______,
+ ___XXX__,
+ _XXX____,
+ ___XXXXX,
+ XX___XXX,
+ XXXXXXXX,
+ XXXXX___,
+ ___XXX_X,
+ XX______,
+ ___XXX__,
+ ________,
+ ___XXX_X,
+ XX______,
+ ___XXX__,
+ ________,
+ ___XX__X,
+ XX_XXX__,
+ ___XXX__,
+ ________,
+ ___XXXXX,
+ XXXXXXX_,
+ ___XXX__,
+ ________,
+ __XXX__X,
+ XX______,
+ ___XXX__,
+ ___XXX__,
+ __XX___X,
+ XX__XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ __XX___X,
+ XX______,
+ _______X,
+ X_______,
+ __XX___X,
+ XX______,
+ _______X,
+ XX______,
+ _XX____X,
+ XX__XXX_,
+ _______X,
+ XX______,
+ _______X,
+ XXXXX___,
+ _______X,
+ XX__XX__,
+ _______X,
+ XXX_XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ XX______,
+ _______X,
+ XX______,
+ ___XXXXX,
+ XX____XX,
+ _______X,
+ XX______,
+ __XXXX_X,
+ XX_____X,
+ X______X,
+ XX______,
+ ___XX__X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX______,
+ XXX____X,
+ XX______,
+ _______X,
+ XX______,
+ XXX____X,
+ XX______,
+ _______X,
+ XX______,
+ XX_____X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ __XXXXXX,
+ X_______,
+ _______X,
+ XX______,
+ _____XXX,
+ X_______,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 提 code:0xCCE1 */
+static GUI_CONST_STORAGE unsigned char acCCE1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ _XX_____,
+ ______XX,
+ X______X,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X______X,
+ X_______,
+ XXX_____,
+ ______XX,
+ X______X,
+ X_______,
+ XXX_____,
+ ______XX,
+ X______X,
+ X_______,
+ XXX_____,
+ ______XX,
+ X_XXX__X,
+ XXXXXXXX,
+ XXX_____,
+ __XXXXXX,
+ XXXXXX_X,
+ X_______,
+ XXX_____,
+ ______XX,
+ X______X,
+ X_______,
+ XXX_____,
+ ______XX,
+ X______X,
+ X_______,
+ XXX_____,
+ ______XX,
+ X______X,
+ X_______,
+ XXX_____,
+ ______XX,
+ X______X,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ X__XX__X,
+ X_______,
+ XXX_____,
+ ______XX,
+ XXXX___X,
+ X_______,
+ ___XXX__,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XXXX,
+ X_______,
+ ____XX__,
+ ________,
+ _XXXXXXX,
+ X_______,
+ ____XX__,
+ ________,
+ __XXX_XX,
+ X____XXX,
+ X___XX__,
+ ________,
+ ______XX,
+ X____XXX,
+ ____XX__,
+ ________,
+ ______XX,
+ X____XXX,
+ ____XX__,
+ __XXX___,
+ ______XX,
+ X____XXX,
+ ____XXXX,
+ XXXXXX__,
+ ______XX,
+ X____XXX,
+ ____XX__,
+ ________,
+ ______XX,
+ X___XXXX,
+ X___XX__,
+ ________,
+ ______XX,
+ X___XXX_,
+ XX__XX__,
+ ________,
+ ______XX,
+ X__XXX__,
+ _XX_XX__,
+ ________,
+ ______XX,
+ X__XX___,
+ __XXXXX_,
+ ______XX,
+ ___XXXXX,
+ X_XX____,
+ ___XXXXX,
+ XXXXXXX_,
+ _____XXX,
+ _XX_____,
+ ______XX,
+ XXXXX___,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 条 code:0xCCF5 */
+static GUI_CONST_STORAGE unsigned char acCCF5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ______XX,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ _XXX____,
+ _____XXX,
+ X_______,
+ ________,
+ XXXXX___,
+ ____XXXX,
+ ________,
+ ________,
+ XXX_XX__,
+ ____XXX_,
+ ________,
+ _______X,
+ XX__XXX_,
+ ___XXXX_,
+ ________,
+ ______XX,
+ X____XXX,
+ __XXXX__,
+ ________,
+ _____XXX,
+ ______XX,
+ XXXXX___,
+ ________,
+ ____XX__,
+ _______X,
+ XXXX____,
+ ________,
+ ___XX___,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ _____XXX,
+ XXXXX___,
+ ________,
+ ________,
+ ___XXXXX,
+ X_XXXXXX,
+ ________,
+ ________,
+ XXXX___X,
+ XXX_XXXX,
+ XXXXXXXX,
+ ____XXXX,
+ X______X,
+ XXX____X,
+ XXXXX___,
+ __XXX___,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX_____X,
+ XX______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ __XX___X,
+ XX______,
+ ________,
+ ________,
+ __XXX__X,
+ XX__XX__,
+ ________,
+ ________,
+ _XXXX__X,
+ XX___XXX,
+ ________,
+ ________,
+ XXXX___X,
+ XX____XX,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XXX_____,
+ ______XX,
+ X______X,
+ XX______,
+ XXXX____,
+ _____XXX,
+ ___XX__X,
+ XX______,
+ _XXXX___,
+ ____XXX_,
+ ____XXXX,
+ XX______,
+ __XXX___,
+ ___XX___,
+ ______XX,
+ XX______,
+ __XX____,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 停 code:0xCDA3 */
+static GUI_CONST_STORAGE unsigned char acCDA3[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ _XX_____,
+ ________,
+ _______X,
+ XXX_____,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ ___XX___,
+ ___XX___,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ _____XX_,
+ ________,
+ XX______,
+ _____XXX,
+ ______XX,
+ XXXXXXXX,
+ XXX_____,
+ _____XXX,
+ X_____XX,
+ _______X,
+ XX______,
+ ____XXXX,
+ ______XX,
+ _______X,
+ XX______,
+ ____XXXX,
+ ______XX,
+ _______X,
+ XX______,
+ ____XXXX,
+ ______XX,
+ XXXXXXXX,
+ XX______,
+ ___XXXXX,
+ ______XX,
+ _______X,
+ XX______,
+ __XX_XXX,
+ __XX____,
+ ________,
+ ____XX__,
+ __XX_XXX,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ __XX____,
+ ________,
+ ___XXX__,
+ _____XXX,
+ _XXX____,
+ ________,
+ ___XX___,
+ _____XXX,
+ _XXX____,
+ ________,
+ XXXX____,
+ _____XXX,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ _____XXX,
+ _______X,
+ XXXXXX__,
+ ________,
+ _____XXX,
+ ________,
+ _XXXX___,
+ ________,
+ _____XX_,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 通 code:0xCDA8 */
+static GUI_CONST_STORAGE unsigned char acCDA8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ____XX__,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ____XXX_,
+ ________,
+ _______X,
+ XXXX____,
+ _____XXX,
+ ________,
+ XX____XX,
+ X_______,
+ _____XXX,
+ X_______,
+ _XXXXXX_,
+ ________,
+ ______XX,
+ X_______,
+ __XXXX__,
+ ________,
+ ______XX,
+ ___XX___,
+ ___XXX__,
+ __XX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ___XXX__,
+ ___XX___,
+ __XXX___,
+ ________,
+ ___XXX__,
+ ___XX___,
+ __XXX___,
+ _______X,
+ X__XXX__,
+ ___XX___,
+ __XXX___,
+ _XXXXXXX,
+ XX_XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ __XXX___,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ __XXX___,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ __XXX___,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ __XXX___,
+ ______XX,
+ X__XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ __XXX___,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ __XXX___,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ __XXX___,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ __XXX___,
+ ______XX,
+ X__XXX__,
+ ___XX___,
+ __XXX___,
+ ______XX,
+ X__XXX__,
+ ___XX__X,
+ XXXXX___,
+ ____XXX_,
+ XX_XX___,
+ ________,
+ _XXX____,
+ __XXXX__,
+ _XXX____,
+ ________,
+ ________,
+ _XXXX___,
+ __XXXXXX,
+ ________,
+ ____XXXX,
+ __XX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 围 code:0xCEA7 */
+static GUI_CONST_STORAGE unsigned char acCEA7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX____XX,
+ X_XXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX___XX_,
+ __XXX___,
+ ____XXX_,
+ _XXXXXXX,
+ XXXXXXXX,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX_____X,
+ X_XXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXX_,
+ _______X,
+ XX____XX,
+ X_XXX___,
+ ____XXX_,
+ _______X,
+ XX____XX,
+ X_XXX___,
+ ____XXX_,
+ _______X,
+ XX____XX,
+ X_XXX___,
+ ____XXX_,
+ _______X,
+ XX____XX,
+ X_XXX___,
+ ____XXX_,
+ _______X,
+ XX_XXXXX,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX___XXX,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXX___,
+ ____XXX_,
+ _______X,
+ X_______,
+ __XXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XX__,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 位 code:0xCEBB */
+static GUI_CONST_STORAGE unsigned char acCEBB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ XX______,
+ ________,
+ ________,
+ XXXX____,
+ _XX_____,
+ ________,
+ ________,
+ XXX_____,
+ __XXX___,
+ ________,
+ ________,
+ XXX_____,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XX___,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ __XXX___,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XX______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ XX______,
+ ____XXXX,
+ X____XX_,
+ _______X,
+ XXX_____,
+ ____XXXX,
+ X_____XX,
+ _______X,
+ XXX_____,
+ ___XXXXX,
+ X_____XX,
+ _______X,
+ XX______,
+ ___XX_XX,
+ X_____XX,
+ X______X,
+ XX______,
+ __XX__XX,
+ X_____XX,
+ X______X,
+ X_______,
+ _XX___XX,
+ X______X,
+ XX____XX,
+ X_______,
+ ______XX,
+ X______X,
+ XX____XX,
+ X_______,
+ ______XX,
+ X______X,
+ XX____XX,
+ ________,
+ ______XX,
+ X______X,
+ XX____XX,
+ ________,
+ ______XX,
+ X______X,
+ XX____XX,
+ ________,
+ ______XX,
+ X______X,
+ XX___XX_,
+ ________,
+ ______XX,
+ X_______,
+ _____XX_,
+ ________,
+ ______XX,
+ X_______,
+ _____XX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XX__,
+ ________,
+ ______XX,
+ X_______,
+ ____XX__,
+ ___XXX__,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 温 code:0xCEC2 */
+static GUI_CONST_STORAGE unsigned char acCEC2[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ____XX__,
+ ________,
+ XX______,
+ _____XXX,
+ ____XXXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ X___XXX_,
+ ________,
+ XX______,
+ ______XX,
+ X___XXX_,
+ ________,
+ XX______,
+ ________,
+ __XXXXX_,
+ ________,
+ XX______,
+ ________,
+ _XX_XXX_,
+ ________,
+ XX______,
+ ________,
+ _XX_XXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XX_XXX_,
+ ________,
+ XX______,
+ __XXX___,
+ _XX_XXX_,
+ ________,
+ XX______,
+ ___XXX__,
+ XX__XXX_,
+ ________,
+ XX______,
+ ____XXX_,
+ XX__XXX_,
+ ________,
+ XX______,
+ ____XX__,
+ XX__XXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ X___XXX_,
+ ________,
+ XX______,
+ _______X,
+ X___XX__,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_XX____,
+ ________,
+ __XX____,
+ ______XX,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ __XXX__X,
+ XX__XXX_,
+ _XXX____,
+ _____XXX,
+ __XXX__X,
+ XX__XXX_,
+ _XXX____,
+ __XXXXXX,
+ __XXX__X,
+ XX__XXX_,
+ _XXX____,
+ ____XXXX,
+ __XXX__X,
+ XX__XXX_,
+ _XXX____,
+ ____XXX_,
+ __XXX__X,
+ XX__XXX_,
+ _XXX____,
+ ____XXX_,
+ __XXX__X,
+ XX__XXX_,
+ _XXX____,
+ ____XXX_,
+ __XXX__X,
+ XX__XXX_,
+ _XXX____,
+ ____XXX_,
+ __XXX__X,
+ XX__XXX_,
+ _XXX____,
+ ____XXX_,
+ __XXX__X,
+ XX__XXX_,
+ _XXXXXX_,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 文 code:0xCEC4 */
+static GUI_CONST_STORAGE unsigned char acCEC4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ___XX___,
+ ________,
+ ________,
+ XX______,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ __XX____,
+ ____XXX_,
+ ________,
+ ________,
+ __XX____,
+ ____XXX_,
+ ________,
+ ________,
+ __XX____,
+ ____XXX_,
+ ________,
+ ________,
+ ___XX___,
+ ____XXX_,
+ ________,
+ ________,
+ ___XX___,
+ ___XXX__,
+ ________,
+ ________,
+ ___XX___,
+ ___XXX__,
+ ________,
+ ________,
+ ___XXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ____XX__,
+ __XXX___,
+ ________,
+ ________,
+ ____XXX_,
+ __XXX___,
+ ________,
+ ________,
+ _____XX_,
+ _XXX____,
+ ________,
+ ________,
+ _____XXX,
+ _XXX____,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXX_,
+ _XXXXX__,
+ ________,
+ ________,
+ __XXXX__,
+ ___XXXXX,
+ ________,
+ ________,
+ _XXX____,
+ ____XXXX,
+ XXX_____,
+ _______X,
+ XX______,
+ ______XX,
+ XXXXXXX_,
+ ____XXXX,
+ ________,
+ ________,
+ XXXXX___,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 误 code:0xCEF3 */
+static GUI_CONST_STORAGE unsigned char acCEF3[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _____XXX,
+ ______XX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X_____XX,
+ X_______,
+ _XX_____,
+ ______XX,
+ XX____XX,
+ X_______,
+ _XX_____,
+ _______X,
+ XX____XX,
+ X_______,
+ _XX_____,
+ _______X,
+ X_____XX,
+ X_______,
+ _XX_____,
+ ________,
+ ______XX,
+ X_______,
+ _XX_____,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ _XX_____,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ __XXXXXX,
+ XX______,
+ ________,
+ __XXX___,
+ ______XX,
+ X___XXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XX___,
+ ________,
+ ______XX,
+ X_______,
+ ___XX___,
+ ___XXX__,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ __XXXXX_,
+ ________,
+ ______XX,
+ X___XX__,
+ __XXXXX_,
+ ________,
+ ______XX,
+ X__XX___,
+ __XXXXXX,
+ ________,
+ ______XX,
+ X_XX____,
+ _XXX__XX,
+ ________,
+ ______XX,
+ XXX_____,
+ _XXX__XX,
+ X_______,
+ ______XX,
+ XXX_____,
+ XXX____X,
+ XX______,
+ ______XX,
+ XX_____X,
+ XX______,
+ XXX_____,
+ _______X,
+ X_____XX,
+ X_______,
+ XXXXX___,
+ ________,
+ _____XXX,
+ ________,
+ _XXXXXX_,
+ ________,
+ ___XXX__,
+ ________,
+ __XXXX__,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 息 code:0xCFA2 */
+static GUI_CONST_STORAGE unsigned char acCFA2[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _____XX_,
+ _______X,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ __XX___X,
+ XXX_____,
+ ________,
+ ________,
+ __XXXX__,
+ XXX_____,
+ ________,
+ ______XX,
+ __XXX___,
+ _XX___XX,
+ _XXX____,
+ _____XXX,
+ __XXX___,
+ ______XX,
+ __XXXX__,
+ _____XXX,
+ __XXX___,
+ ______XX,
+ ___XXX__,
+ ____XXX_,
+ __XXX___,
+ ______XX,
+ ___XXXX_,
+ ___XXXX_,
+ __XXX___,
+ ______XX,
+ X___XX__,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 细 code:0xCFB8 */
+static GUI_CONST_STORAGE unsigned char acCFB8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X_____XX,
+ ________,
+ ____XX__,
+ _____XXX,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ ___XX_XX,
+ X___XXX_,
+ ___XXX__,
+ ____XXX_,
+ ___XXXXX,
+ X___XXX_,
+ ___XXX__,
+ ____XX__,
+ __XXXXXX,
+ X___XXX_,
+ ___XXX__,
+ ___XXX__,
+ __XXX_XX,
+ X___XXX_,
+ ___XXX__,
+ __XXX___,
+ _XXX__XX,
+ X___XXX_,
+ ___XXX__,
+ __XXXXXX,
+ XXX___XX,
+ X___XXX_,
+ ___XXX__,
+ __XXXX__,
+ XX____XX,
+ X___XXX_,
+ ___XXX__,
+ _______X,
+ XX____XX,
+ X___XXX_,
+ ___XXX__,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ___XXX__,
+ ______XX,
+ ______XX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XX_,
+ ______XX,
+ X___XXX_,
+ ___XXX__,
+ ____XX__,
+ __XXXXXX,
+ X___XXX_,
+ ___XXX__,
+ __XXXXXX,
+ XXX___XX,
+ X___XXX_,
+ ___XXX__,
+ ___XXXXX,
+ ______XX,
+ X___XXX_,
+ ___XXX__,
+ ____XX__,
+ ______XX,
+ X___XXX_,
+ ___XXX__,
+ ________,
+ ______XX,
+ X___XXX_,
+ ___XXX__,
+ ________,
+ ______XX,
+ X___XXX_,
+ ___XXX__,
+ ________,
+ __XXXXXX,
+ X___XXX_,
+ ___XXX__,
+ _______X,
+ XXX___XX,
+ X___XXX_,
+ ___XXX__,
+ _XXXXXXX,
+ X_____XX,
+ X___XXX_,
+ ___XXX__,
+ __XXXX__,
+ ______XX,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XX___,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ ________,
+ ______XX,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 下 code:0xCFC2 */
+static GUI_CONST_STORAGE unsigned char acCFC2[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ XXXXX___,
+ ________,
+ ________,
+ ______XX,
+ X__XXXX_,
+ ________,
+ ________,
+ ______XX,
+ X___XXXX,
+ X_______,
+ ________,
+ ______XX,
+ X_____XX,
+ XX______,
+ ________,
+ ______XX,
+ X______X,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 显 code:0xCFD4 */
+static GUI_CONST_STORAGE unsigned char acCFD4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ _______X,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ __XXX___,
+ ________,
+ ________,
+ ____XXX_,
+ __XXX___,
+ __XX____,
+ ____XX__,
+ ____XXX_,
+ __XXX___,
+ _XXXX___,
+ _____XXX,
+ ____XXX_,
+ __XXX___,
+ _XXX____,
+ _____XXX,
+ X___XXX_,
+ __XXX___,
+ XXX_____,
+ ______XX,
+ XX__XXX_,
+ __XXX__X,
+ XX______,
+ _______X,
+ XX__XXX_,
+ __XXX_XX,
+ X_______,
+ _______X,
+ XX__XXX_,
+ __XXX_XX,
+ ________,
+ ________,
+ XX__XXX_,
+ __XXXXX_,
+ ________,
+ ________,
+ ____XXX_,
+ __XXXX__,
+ ________,
+ ________,
+ ____XXX_,
+ __XXX___,
+ __XXX___,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 限 code:0xCFDE */
+static GUI_CONST_STORAGE unsigned char acCFDE[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __XX__XX,
+ ________,
+ _XX_____,
+ ____XXXX,
+ XXXXX_XX,
+ XXXXXXXX,
+ XXXX____,
+ ____XX__,
+ _XXX__XX,
+ X_______,
+ _XX_____,
+ ____XX__,
+ _XXX__XX,
+ X_______,
+ _XX_____,
+ ____XX__,
+ _XX___XX,
+ X_______,
+ _XX_____,
+ ____XX__,
+ _XX___XX,
+ X_______,
+ _XX_____,
+ ____XX__,
+ XXX___XX,
+ X_______,
+ _XX_____,
+ ____XX__,
+ XX____XX,
+ XXXXXXXX,
+ XXX_____,
+ ____XX__,
+ XX____XX,
+ X_______,
+ _XX_____,
+ ____XX__,
+ XX____XX,
+ X_______,
+ _XX_____,
+ ____XX__,
+ XX____XX,
+ X_______,
+ _XX_____,
+ ____XX__,
+ _XX___XX,
+ X_______,
+ _XX_____,
+ ____XX__,
+ _XX___XX,
+ XXXXXXXX,
+ XXX_____,
+ ____XX__,
+ __XX__XX,
+ X_XX____,
+ _XX_____,
+ ____XX__,
+ __XXX_XX,
+ X__XX___,
+ __XX____,
+ ____XX__,
+ __XXX_XX,
+ X__XX___,
+ _XXXX___,
+ ____XX__,
+ __XXX_XX,
+ X__XX___,
+ _XXX____,
+ ____XX__,
+ __XXX_XX,
+ X__XXX_X,
+ XX______,
+ ____XX__,
+ __XXX_XX,
+ X___XXXX,
+ X_______,
+ ____XX_X,
+ XXXXX_XX,
+ X___XXX_,
+ ________,
+ ____XX__,
+ XXXX__XX,
+ X____XXX,
+ ________,
+ ____XX__,
+ XX____XX,
+ X____XXX,
+ X_______,
+ ____XX__,
+ ______XX,
+ X__XXXXX,
+ XX______,
+ ____XX__,
+ ______XX,
+ X_XX___X,
+ XXX_____,
+ ____XX__,
+ ______XX,
+ XXX_____,
+ XXXXXX__,
+ ____XX__,
+ ______XX,
+ XX______,
+ _XXXXX__,
+ ____XX__,
+ _______X,
+ X_______,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 线 code:0xCFDF */
+static GUI_CONST_STORAGE unsigned char acCFDF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XXX_____,
+ __XX__XX,
+ X_______,
+ _______X,
+ XX______,
+ __XX___X,
+ XXX_____,
+ ______XX,
+ X_______,
+ __XX____,
+ XXX_____,
+ ______XX,
+ X_______,
+ __XX____,
+ _XX_____,
+ _____XXX,
+ ___XXX__,
+ __XX____,
+ _XXX____,
+ _____XX_,
+ ___XXX__,
+ __XX____,
+ _XXXX___,
+ ____XXX_,
+ __XXX___,
+ __XXXXXX,
+ XXXXXX__,
+ ____XX__,
+ __XXXXXX,
+ XXXXX___,
+ ________,
+ ___XX___,
+ _XXX____,
+ __XXX___,
+ ________,
+ __XXXXXX,
+ XXX_____,
+ __XXX___,
+ ________,
+ ___XX___,
+ XX______,
+ __XXX___,
+ __XXXX__,
+ _______X,
+ XX______,
+ __XXX_XX,
+ XXXXXXX_,
+ ______XX,
+ X_____XX,
+ XXXXXXX_,
+ ________,
+ ______XX,
+ ___XXXX_,
+ __XXX___,
+ _XX_____,
+ _____XXX,
+ ________,
+ __XXX___,
+ _XXX____,
+ ____XXX_,
+ __XXXX__,
+ __XXX___,
+ XXXXX___,
+ __XXXXXX,
+ XXX_____,
+ ___XX__X,
+ XXX_____,
+ ___XXXXX,
+ ________,
+ ___XXXXX,
+ XX______,
+ ____XX__,
+ ________,
+ ___XXXXX,
+ X_______,
+ ________,
+ ________,
+ ___XXXXX,
+ ________,
+ ________,
+ ____XXX_,
+ ___XXXX_,
+ ____XX__,
+ _______X,
+ XXXXX___,
+ __XXXXXX,
+ ____XX__,
+ __XXXXXX,
+ X_______,
+ XXXX_XXX,
+ X___XX__,
+ __XXXX__,
+ _______X,
+ XX____XX,
+ XX_XXX__,
+ ________,
+ _____XXX,
+ _______X,
+ XXXXXX__,
+ ________,
+ __XXXX__,
+ ________,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 详 code:0xCFEA */
+static GUI_CONST_STORAGE unsigned char acCFEA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ _______X,
+ X_______,
+ ________,
+ _______X,
+ X______X,
+ XXX_____,
+ _____XXX,
+ _______X,
+ XX_____X,
+ XX______,
+ _____XXX,
+ X______X,
+ XXX____X,
+ X_______,
+ ______XX,
+ XX______,
+ XXX___XX,
+ X_______,
+ ______XX,
+ XX______,
+ XXX___XX,
+ ________,
+ _______X,
+ X_______,
+ XX___XXX,
+ __XXX___,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ __XXXXXX,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ _XXX____,
+ _______X,
+ XX___XXX,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ___XXX__,
+ _______X,
+ XX_XXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _______X,
+ XX__XX__,
+ ___XXX__,
+ ________,
+ _______X,
+ XX_XX___,
+ ___XXX__,
+ ________,
+ _______X,
+ XXXX____,
+ ___XXX__,
+ ________,
+ _______X,
+ XXXX____,
+ ___XXX__,
+ ________,
+ _______X,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ______XX,
+ XX______,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 向 code:0xCFF2 */
+static GUI_CONST_STORAGE unsigned char acCFF2[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ____XX__,
+ ____XX__,
+ ________,
+ __XX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XX_,
+ ________,
+ ________,
+ __XXX___,
+ _____XX_,
+ ________,
+ ________,
+ __XXX___,
+ _____XX_,
+ ________,
+ ________,
+ __XXX___,
+ _____XX_,
+ ________,
+ ________,
+ __XXX___,
+ _____XX_,
+ __XX____,
+ ____XX__,
+ __XXX___,
+ _____XX_,
+ ___XXXXX,
+ XXXXXXX_,
+ __XXX___,
+ _____XX_,
+ ___XX___,
+ ___XXX__,
+ __XXX___,
+ _____XX_,
+ ___XX___,
+ ___XXX__,
+ __XXX___,
+ _____XX_,
+ ___XX___,
+ ___XXX__,
+ __XXX___,
+ _____XX_,
+ ___XX___,
+ ___XXX__,
+ __XXX___,
+ _____XX_,
+ ___XX___,
+ ___XXX__,
+ __XXX___,
+ _____XX_,
+ ___XX___,
+ ___XXX__,
+ __XXX___,
+ _____XX_,
+ ___XXXXX,
+ XXXXXX__,
+ __XXX___,
+ _____XX_,
+ ___XX___,
+ ___XXX__,
+ __XXX___,
+ _____XX_,
+ ___XX___,
+ ___XXX__,
+ __XXX___,
+ _____XX_,
+ __XX____,
+ ________,
+ __XXX___,
+ _____XX_,
+ ________,
+ ________,
+ __XXX___,
+ _____XX_,
+ ________,
+ ________,
+ __XXX___,
+ _____XX_,
+ ________,
+ _____XX_,
+ _XXXX___,
+ _____XX_,
+ ________,
+ ______XX,
+ XXXX____,
+ _____XX_,
+ ________,
+ ________,
+ XXXX____,
+ _____XX_,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 小 code:0xD0A1 */
+static GUI_CONST_STORAGE unsigned char acD0A1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXXX____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _XX____X,
+ XX______,
+ ________,
+ ________,
+ _XXXX__X,
+ XX___XX_,
+ ________,
+ ________,
+ _XXX___X,
+ XX____XX,
+ ________,
+ ________,
+ XXXX___X,
+ XX_____X,
+ X_______,
+ ________,
+ XXX____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX______,
+ XXX_____,
+ _______X,
+ XX_____X,
+ XX______,
+ _XXX____,
+ ______XX,
+ X______X,
+ XX______,
+ _XXXX___,
+ ______XX,
+ _______X,
+ XX______,
+ __XXXX__,
+ _____XXX,
+ _______X,
+ XX______,
+ __XXXX__,
+ ____XXX_,
+ _______X,
+ XX______,
+ ___XXX__,
+ ____XX__,
+ _______X,
+ XX______,
+ ___XXX__,
+ ___XX___,
+ _______X,
+ XX______,
+ ____XX__,
+ __XX____,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ __XXX__X,
+ XX______,
+ ________,
+ ________,
+ ____XXXX,
+ XX______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 校 code:0xD0A3 */
+static GUI_CONST_STORAGE unsigned char acD0A3[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ __XX____,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ ____XXX_,
+ ________,
+ _______X,
+ X_______,
+ ____XXX_,
+ ________,
+ _______X,
+ X_______,
+ ____XX__,
+ ___XXX__,
+ _______X,
+ X__XXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ __XXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ _XX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXXXX__X,
+ XX______,
+ ______XX,
+ XX______,
+ XXX_____,
+ XXXX____,
+ ______XX,
+ XXXX___X,
+ XX______,
+ _XXXX___,
+ _____XXX,
+ X_XXX_XX,
+ X_______,
+ __XXXX__,
+ _____XXX,
+ X_XXX_XX,
+ _______X,
+ XX_XXX__,
+ _____XXX,
+ X__XXXXX,
+ X______X,
+ XXX_XX__,
+ ____XXXX,
+ X___XX__,
+ XX_____X,
+ XX______,
+ ____XX_X,
+ X_______,
+ XX_____X,
+ XX______,
+ ____XX_X,
+ X_______,
+ _XX___XX,
+ X_______,
+ ___XX__X,
+ X_______,
+ _XX___XX,
+ X_______,
+ ___XX__X,
+ X_______,
+ _XXX_XXX,
+ ________,
+ __XX___X,
+ X_______,
+ __XX_XXX,
+ ________,
+ _XX____X,
+ X_______,
+ __XXXXX_,
+ ________,
+ _______X,
+ X_______,
+ ___XXX__,
+ ________,
+ _______X,
+ X_______,
+ __XXXXX_,
+ ________,
+ _______X,
+ X_______,
+ _XXX_XXX,
+ X_______,
+ _______X,
+ X_______,
+ XXX___XX,
+ XXX_____,
+ _______X,
+ X_____XX,
+ X______X,
+ XXXXXXXX,
+ _______X,
+ X___XXX_,
+ ________,
+ _XXXXX__,
+ _______X,
+ XXXXX___,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 信 code:0xD0C5 */
+static GUI_CONST_STORAGE unsigned char acD0C5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ _XX_____,
+ ________,
+ ________,
+ XXXX____,
+ __XXX___,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ ___XX___,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ XX___XXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ____XXXX,
+ X_______,
+ ________,
+ ________,
+ ____XXXX,
+ X_______,
+ ________,
+ ________,
+ ___XX_XX,
+ X_______,
+ ________,
+ _XXX____,
+ __XX__XX,
+ X___XXXX,
+ XXXXXXXX,
+ XXXXX___,
+ __XX__XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X____XX_,
+ ________,
+ __XX____,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 型 code:0xD0CD */
+static GUI_CONST_STORAGE unsigned char acD0CD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ XX______,
+ __XXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXX_____,
+ __XXX___,
+ ________,
+ XX___XXX,
+ _____XX_,
+ __XXX___,
+ ________,
+ XX___XXX,
+ _____XXX,
+ __XXX___,
+ ________,
+ XX___XXX,
+ _____XXX,
+ __XXX___,
+ ________,
+ XX___XXX,
+ _____XXX,
+ __XXX___,
+ ________,
+ XX___XXX,
+ _XXX_XXX,
+ __XXX___,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ __XXX___,
+ ________,
+ XX___XXX,
+ _____XXX,
+ __XXX___,
+ ________,
+ XX___XXX,
+ _____XXX,
+ __XXX___,
+ _______X,
+ XX___XXX,
+ _____XXX,
+ __XXX___,
+ _______X,
+ XX___XXX,
+ _____XXX,
+ __XXX___,
+ _______X,
+ X____XXX,
+ _____XX_,
+ __XXX___,
+ ______XX,
+ X____XXX,
+ ________,
+ __XXX___,
+ ______XX,
+ _____XXX,
+ _____XX_,
+ __XXX___,
+ _____XX_,
+ _____XXX,
+ ______XX,
+ XXXXX___,
+ ____XX__,
+ _______X,
+ X_______,
+ _XXX____,
+ ___XX___,
+ _______X,
+ XXX_____,
+ _XX_____,
+ ________,
+ _______X,
+ XX______,
+ XX______,
+ ________,
+ _______X,
+ XX_____X,
+ XXX_____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 行 code:0xD0D0 */
+static GUI_CONST_STORAGE unsigned char acD0D0[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ __XX____,
+ _______X,
+ XX____XX,
+ XXXXXXXX,
+ XXXXX___,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ __XX____,
+ ________,
+ ________,
+ ____XX__,
+ __XXX___,
+ ________,
+ ________,
+ ___XX___,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ _XXX____,
+ ________,
+ ___XXX__,
+ ________,
+ XXX_XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _______X,
+ XX______,
+ _____XXX,
+ ________,
+ _______X,
+ XX______,
+ _____XXX,
+ ________,
+ ______XX,
+ XXX_____,
+ _____XXX,
+ ________,
+ _____XXX,
+ XX______,
+ _____XXX,
+ ________,
+ ____XXX_,
+ XX______,
+ _____XXX,
+ ________,
+ ___XXX__,
+ XX______,
+ _____XXX,
+ ________,
+ __XXX___,
+ XX______,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ _____XXX,
+ ________,
+ ________,
+ XX_____X,
+ XXX_XXXX,
+ ________,
+ ________,
+ XX______,
+ _XXXXXX_,
+ ________,
+ ________,
+ XX______,
+ ___XXXX_,
+ ________,
+ _______X,
+ X_______,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 性 code:0xD0D4 */
+static GUI_CONST_STORAGE unsigned char acD0D4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ XX__XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ XXX___XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ XXXX__XX,
+ ____XXX_,
+ __XXX___,
+ ____XXXX,
+ X_XX_XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XXXXX,
+ X_XX_XXX,
+ ____XXX_,
+ ________,
+ ___XXXXX,
+ X____XX_,
+ ____XXX_,
+ ________,
+ __XXXXXX,
+ X___XXX_,
+ ____XXX_,
+ ________,
+ __XXX_XX,
+ X___XX__,
+ ____XXX_,
+ ________,
+ ______XX,
+ X___XX__,
+ ____XXX_,
+ ________,
+ ______XX,
+ X__XX___,
+ ____XXX_,
+ __XX____,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ___XXX__,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 许 code:0xD0ED */
+static GUI_CONST_STORAGE unsigned char acD0ED[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ____XXX_,
+ ________,
+ XXXX____,
+ ________,
+ _____XXX,
+ _______X,
+ XXX_____,
+ ________,
+ ______XX,
+ X______X,
+ XX______,
+ ________,
+ ______XX,
+ XX_____X,
+ XX______,
+ ________,
+ _______X,
+ XX____XX,
+ X_______,
+ __XXX___,
+ _______X,
+ X_____XX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ______XX,
+ X___XXX_,
+ ________,
+ ________,
+ _____XXX,
+ ____XXX_,
+ ________,
+ _______X,
+ X____XX_,
+ ____XXX_,
+ ________,
+ __XXXXXX,
+ XX__XXX_,
+ ____XXX_,
+ ________,
+ ______XX,
+ X___XX__,
+ ____XXX_,
+ ________,
+ ______XX,
+ X__XX___,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ____XX__,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ___XXX__,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X____XX_,
+ ____XXX_,
+ ________,
+ ______XX,
+ X___XX__,
+ ____XXX_,
+ ________,
+ ______XX,
+ X__XX___,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_XX____,
+ ____XXX_,
+ ________,
+ ______XX,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ______XX,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ______XX,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ X_______,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 续 code:0xD0F8 */
+static GUI_CONST_STORAGE unsigned char acD0F8[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ _______X,
+ X_______,
+ ___XXXX_,
+ ________,
+ ______XX,
+ XX______,
+ ___XXX__,
+ ________,
+ ______XX,
+ X_______,
+ ___XXX__,
+ _XXX____,
+ ______XX,
+ _____XXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ ________,
+ ___XXX__,
+ ________,
+ _____XX_,
+ __XX____,
+ ___XXX__,
+ ________,
+ ____XXX_,
+ __XXXX__,
+ ___XXX__,
+ ________,
+ ____XX__,
+ _XXXX___,
+ ___XXX__,
+ ____XX__,
+ ___XX___,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ __XXX__X,
+ XXX_____,
+ ____XX__,
+ ___XXXX_,
+ __XXXXXX,
+ XX____XX,
+ ____XXXX,
+ __XXX___,
+ ___XX__X,
+ XX_____X,
+ XXX_XXX_,
+ __XX____,
+ _______X,
+ X_______,
+ XXX_XXX_,
+ ________,
+ ______XX,
+ ________,
+ _XX_XXX_,
+ ________,
+ _____XXX,
+ _____XXX,
+ ____XXX_,
+ ________,
+ _____XX_,
+ ______XX,
+ XX__XXX_,
+ ________,
+ ____XX__,
+ XXXXX__X,
+ XX__XXX_,
+ ________,
+ ___XXXXX,
+ X______X,
+ X___XX__,
+ ___XXX__,
+ ___XXX__,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ XXXX____,
+ __XXXXXX,
+ X_______,
+ ___XXXXX,
+ X_______,
+ _XXX___X,
+ XXX_____,
+ __XXXX__,
+ ________,
+ XXX_____,
+ _XXXX___,
+ ________,
+ ______XX,
+ XX______,
+ __XXX___,
+ ________,
+ ____XXXX,
+ ________,
+ ___XX___,
+ ________,
+ _XXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 选 code:0xD1A1 */
+static GUI_CONST_STORAGE unsigned char acD1A1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ________,
+ _____XX_,
+ ______XX,
+ __XXX___,
+ ________,
+ ______XX,
+ ______XX,
+ X_XXX___,
+ ________,
+ ______XX,
+ X____XXX,
+ __XXX___,
+ ________,
+ ______XX,
+ X____XXX,
+ __XXX___,
+ XXX_____,
+ _______X,
+ X____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _____XX_,
+ __XXX___,
+ ________,
+ ________,
+ ____XX__,
+ __XXX___,
+ ________,
+ ________,
+ ____XX__,
+ __XXX___,
+ ________,
+ _______X,
+ X__XX___,
+ __XXX___,
+ ________,
+ __XXXXXX,
+ XX______,
+ __XXX___,
+ __XXX___,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X_______,
+ XXX__XX_,
+ ________,
+ ______XX,
+ X_______,
+ XXX__XX_,
+ ________,
+ ______XX,
+ X_______,
+ XX___XX_,
+ ________,
+ ______XX,
+ X______X,
+ XX___XX_,
+ ________,
+ ______XX,
+ X______X,
+ XX___XX_,
+ ________,
+ ______XX,
+ X______X,
+ X____XX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X____XX_,
+ ___XX___,
+ ______XX,
+ X_____XX,
+ _____XX_,
+ ___XX___,
+ ______XX,
+ X____XX_,
+ _____XX_,
+ ___XXX__,
+ _____XXX,
+ X___XX__,
+ _____XXX,
+ ___XXXX_,
+ ___XXXX_,
+ XX_XX___,
+ _____XXX,
+ XXXXXX__,
+ __XXXX__,
+ _XXX____,
+ ________,
+ ________,
+ __XXX___,
+ __XXXXX_,
+ ________,
+ _____XXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 讯 code:0xD1B6 */
+static GUI_CONST_STORAGE unsigned char acD1B6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ ______XX,
+ X__XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ XXX_____,
+ XXX_____,
+ _______X,
+ X_______,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ _______X,
+ X_______,
+ XXX_____,
+ XXX_____,
+ __XXXXXX,
+ XX______,
+ XXX_____,
+ XXX_____,
+ _______X,
+ XX______,
+ XXX__XX_,
+ XXX_____,
+ _______X,
+ X__XXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ X_______,
+ XXX____X,
+ XXX_____,
+ _______X,
+ X_______,
+ XXX_____,
+ XXX_____,
+ _______X,
+ X_______,
+ XXX_____,
+ XXX_____,
+ _______X,
+ X_______,
+ XXX_____,
+ XXX_____,
+ _______X,
+ X_______,
+ XXX_____,
+ XXX_____,
+ _______X,
+ X___XX__,
+ XXX_____,
+ XXX__XX_,
+ _______X,
+ X__XX___,
+ XXX_____,
+ _XX__XX_,
+ _______X,
+ X_XXX___,
+ XXX_____,
+ _XXX_XX_,
+ _______X,
+ XXXX____,
+ XXX_____,
+ _XXX_XX_,
+ _______X,
+ XXX_____,
+ XXX_____,
+ _XXXXXX_,
+ ______XX,
+ XX______,
+ XXX_____,
+ __XXXXX_,
+ _______X,
+ XX______,
+ XXX_____,
+ __XXXXX_,
+ ________,
+ ________,
+ XXX_____,
+ ___XXXX_,
+ ________,
+ ________,
+ XX______,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 压 code:0xD1B9 */
+static GUI_CONST_STORAGE unsigned char acD1B9[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ XX______,
+ ________,
+ ______XX,
+ X_______,
+ XXXX____,
+ ________,
+ ______XX,
+ X_______,
+ XXXX____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ XXX_____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ ________,
+ XXX_____,
+ ________,
+ ______XX,
+ ________,
+ XXX_____,
+ ________,
+ ______XX,
+ ________,
+ XXX__XXX,
+ ________,
+ _____XXX,
+ ________,
+ XXX___XX,
+ X_______,
+ _____XXX,
+ ________,
+ XXX____X,
+ XX______,
+ _____XXX,
+ ________,
+ XXX____X,
+ XXX_____,
+ _____XXX,
+ ________,
+ XXX_____,
+ XXX_____,
+ _____XX_,
+ ________,
+ XXX_____,
+ XXX_____,
+ ____XXX_,
+ ________,
+ XXX_____,
+ XXX_____,
+ ____XX__,
+ ________,
+ XXX_____,
+ ________,
+ ___XXX__,
+ ________,
+ XXX_____,
+ ___XXX__,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 言 code:0xD1D4 */
+static GUI_CONST_STORAGE unsigned char acD1D4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XX______,
+ __XXX___,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XX______,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 验 code:0xD1E9 */
+static GUI_CONST_STORAGE unsigned char acD1E9[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ __XX____,
+ ____XXXX,
+ ________,
+ __XXXXXX,
+ XXXXX___,
+ ___XXXX_,
+ ________,
+ ________,
+ __XX____,
+ ___XXXXX,
+ ________,
+ ________,
+ __XX____,
+ ___XX_XX,
+ ________,
+ ____XXX_,
+ __XX____,
+ __XXX_XX,
+ X_______,
+ ____XXX_,
+ _XXX____,
+ _XXX___X,
+ X_______,
+ ____XXX_,
+ _XXX____,
+ _XXX___X,
+ XX______,
+ ____XXX_,
+ _XXX____,
+ XXX_____,
+ XXX_____,
+ ____XXX_,
+ _XXX____,
+ XX______,
+ _XXX____,
+ ____XXX_,
+ _XXX___X,
+ X_______,
+ __XXXX__,
+ ____XX__,
+ _XXX__XX,
+ ________,
+ XXXXXXXX,
+ ____XX__,
+ _XX__XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ___XXX__,
+ _XX_XX__,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXX__,
+ ________,
+ __XX____,
+ ____XX__,
+ ___XXX__,
+ __XX____,
+ __XXX___,
+ ________,
+ ___XXX_X,
+ X__XX___,
+ _XXXX___,
+ ________,
+ ___XXX_X,
+ X__XXX__,
+ _XXX____,
+ ________,
+ ___XX__X,
+ XX__XX__,
+ _XXX____,
+ ______XX,
+ XX_XX___,
+ XX__XXX_,
+ _XX_____,
+ _XXXXXX_,
+ ___XX___,
+ XXX_XXX_,
+ XXX_____,
+ __XXX___,
+ __XXX___,
+ XXX_XXX_,
+ XX______,
+ ________,
+ __XXX___,
+ XXX_XX__,
+ XX______,
+ ________,
+ __XXX___,
+ XX_____X,
+ XX______,
+ ________,
+ __XXX___,
+ _______X,
+ X_______,
+ _____XXX,
+ XXXX____,
+ _______X,
+ X__XXX__,
+ _______X,
+ XXX__XXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 移 code:0xD2C6 */
+static GUI_CONST_STORAGE unsigned char acD2C6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ __XXXX__,
+ ___XXXX_,
+ ________,
+ ________,
+ XXXXXXX_,
+ ___XXX__,
+ ________,
+ ___XXXXX,
+ XX______,
+ __XXX___,
+ ___XX___,
+ ________,
+ XX______,
+ __XXXXXX,
+ XXXXXX__,
+ ________,
+ XX______,
+ _XX_____,
+ __XXX___,
+ ________,
+ XX______,
+ XXXXX___,
+ _XXX____,
+ ________,
+ XX_____X,
+ X__XXX__,
+ XXX_____,
+ ________,
+ XX__XXXX,
+ ___XXX_X,
+ XX______,
+ __XXXXXX,
+ XXXXXXX_,
+ ____XXXX,
+ X_______,
+ _______X,
+ XX______,
+ _____XXX,
+ ________,
+ _______X,
+ XX______,
+ ____XXX_,
+ ________,
+ _______X,
+ XX______,
+ ___XXXXX,
+ ________,
+ ______XX,
+ XXXX____,
+ _XXX__XX,
+ X_______,
+ ______XX,
+ XXXXX__X,
+ XX___XXX,
+ ________,
+ ______XX,
+ XX_XXXXX,
+ ____XXX_,
+ ____XX__,
+ _____XXX,
+ XX__XXX_,
+ ___XXXXX,
+ XXXXXXX_,
+ _____XX_,
+ XX__XX__,
+ __XXX___,
+ ___XXX__,
+ ____XX__,
+ XX______,
+ _XXX____,
+ __XXXX__,
+ ____XX__,
+ XX______,
+ XXXX____,
+ __XXX___,
+ ___XX___,
+ XX_____X,
+ X__XXX__,
+ _XXX____,
+ __XX____,
+ XX____XX,
+ ___XXX__,
+ XXX_____,
+ __XX____,
+ XX______,
+ ____XX_X,
+ XX______,
+ ________,
+ XX______,
+ ______XX,
+ X_______,
+ ________,
+ XX______,
+ _____XXX,
+ ________,
+ ________,
+ XX______,
+ ___XXX__,
+ ________,
+ ________,
+ XX______,
+ _XXXX___,
+ ________,
+ ________,
+ XXX___XX,
+ XX______,
+ ________,
+ _______X,
+ X_XXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 义 code:0xD2E5 */
+static GUI_CONST_STORAGE unsigned char acD2E5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ X______X,
+ X_______,
+ ________,
+ _______X,
+ XX_____X,
+ XX______,
+ ________,
+ _______X,
+ XXX___XX,
+ XX______,
+ ________,
+ XX_____X,
+ XXX___XX,
+ XX______,
+ ________,
+ XX______,
+ XX____XX,
+ X_______,
+ ________,
+ _XX_____,
+ _____XXX,
+ X_______,
+ ________,
+ _XX_____,
+ _____XXX,
+ ________,
+ ________,
+ __XX____,
+ _____XXX,
+ ________,
+ ________,
+ __XX____,
+ ____XXXX,
+ ________,
+ ________,
+ ___XX___,
+ ____XXX_,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXX_,
+ ________,
+ ________,
+ ____XX__,
+ ___XXX__,
+ ________,
+ ________,
+ ____XXX_,
+ ___XXX__,
+ ________,
+ ________,
+ _____XX_,
+ __XXX___,
+ ________,
+ ________,
+ _____XXX,
+ __XXX___,
+ ________,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ________,
+ _______X,
+ XXXX____,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XXXX____,
+ ________,
+ ________,
+ ______XX,
+ XXXXX___,
+ ________,
+ ________,
+ ____XXXX,
+ __XXXX__,
+ ________,
+ ________,
+ ___XXXX_,
+ ___XXXXX,
+ ________,
+ ________,
+ __XXX___,
+ ____XXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ XXXX____,
+ ______XX,
+ XX______,
+ _______X,
+ XXXXXXX_,
+ ____XXX_,
+ ________,
+ ________,
+ _XXXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 英 code:0xD3A2 */
+static GUI_CONST_STORAGE unsigned char acD3A2[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ____XX__,
+ ________,
+ ________,
+ ___XXX__,
+ ____XXXX,
+ ________,
+ ________,
+ ___XX___,
+ ____XXX_,
+ ________,
+ ________,
+ ___XX___,
+ ____XXX_,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ___XX___,
+ ____XXX_,
+ ________,
+ ________,
+ ___XX___,
+ ____XXX_,
+ ________,
+ ________,
+ ___XX__X,
+ XX__XXX_,
+ ________,
+ ________,
+ ___XX__X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX_____X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ XX_____X,
+ XX______,
+ _______X,
+ XX_____X,
+ X______X,
+ XX______,
+ _______X,
+ XX_____X,
+ X______X,
+ XX______,
+ _______X,
+ XX____XX,
+ X______X,
+ XX_XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ______XX,
+ XXX_____,
+ ________,
+ ________,
+ _____XXX,
+ __XX____,
+ ________,
+ ________,
+ _____XXX,
+ __XXX___,
+ ________,
+ ________,
+ ____XXX_,
+ ___XXX__,
+ ________,
+ ________,
+ ___XXXX_,
+ ____XXX_,
+ ________,
+ ________,
+ __XXXX__,
+ _____XXX,
+ X_______,
+ ________,
+ _XXX____,
+ ______XX,
+ XXX_____,
+ _______X,
+ XXX_____,
+ ________,
+ XXXXXXX_,
+ _____XXX,
+ ________,
+ ________,
+ _XXXXX__,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 迎 code:0xD3AD */
+static GUI_CONST_STORAGE unsigned char acD3AD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ _XXXX___,
+ ________,
+ _____XXX,
+ ________,
+ XXXX____,
+ ________,
+ ______XX,
+ X___XXXX,
+ X_______,
+ ___XX___,
+ ______XX,
+ X___XXX_,
+ ____XXXX,
+ XXXXXX__,
+ ______XX,
+ X___XXX_,
+ ____XXX_,
+ ___XX___,
+ ________,
+ ____XXX_,
+ ____XXX_,
+ ___XX___,
+ ________,
+ ____XXX_,
+ ____XXX_,
+ ___XX___,
+ ________,
+ ____XXX_,
+ ____XXX_,
+ ___XX___,
+ _______X,
+ X___XXX_,
+ ____XXX_,
+ ___XX___,
+ __XXXXXX,
+ XX__XXX_,
+ ____XXX_,
+ ___XX___,
+ ______XX,
+ X___XXX_,
+ ____XXX_,
+ ___XX___,
+ ______XX,
+ X___XXX_,
+ ____XXX_,
+ ___XX___,
+ ______XX,
+ X___XXX_,
+ ____XXX_,
+ ___XX___,
+ ______XX,
+ X___XXX_,
+ ____XXX_,
+ ___XX___,
+ ______XX,
+ X___XXX_,
+ _XXXXXX_,
+ ___XX___,
+ ______XX,
+ X___XXXX,
+ XX__XXX_,
+ ___XX___,
+ ______XX,
+ X___XXXX,
+ X___XXXX,
+ XXXXX___,
+ ______XX,
+ X___XXXX,
+ ____XXX_,
+ _XXXX___,
+ ______XX,
+ X___XXX_,
+ ____XXX_,
+ __XX____,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ _____XXX,
+ X_______,
+ ____XXX_,
+ ________,
+ ___XXXX_,
+ XXX_____,
+ ____XXX_,
+ ________,
+ __XXXX__,
+ _XXX____,
+ ____XX__,
+ ________,
+ __XXX___,
+ __XXXXX_,
+ ________,
+ ______XX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 用 code:0xD3C3 */
+static GUI_CONST_STORAGE unsigned char acD3C3[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ __XX____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ ______XX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XXX,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XX_,
+ _______X,
+ XX______,
+ _XXX____,
+ _____XX_,
+ _______X,
+ XX______,
+ _XXX____,
+ ____XXX_,
+ _______X,
+ XX______,
+ _XXX____,
+ ____XX__,
+ _______X,
+ XX______,
+ _XXX____,
+ ____XX__,
+ _______X,
+ XX______,
+ _XXX____,
+ ___XX___,
+ _______X,
+ XX__XXXX,
+ XXXX____,
+ ___XX___,
+ _______X,
+ XX____XX,
+ XXXX____,
+ __XX____,
+ ________,
+ ________,
+ XXX_____,
+ _XX_____,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 有 code:0xD3D0 */
+static GUI_CONST_STORAGE unsigned char acD3D0[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ___XX___,
+ ________,
+ _____XXX,
+ ________,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ _______X,
+ X_______,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ X_______,
+ ________,
+ XXXX____,
+ _______X,
+ X_______,
+ _______X,
+ XXXX____,
+ _______X,
+ X_______,
+ ______XX,
+ XXXX____,
+ _______X,
+ X_______,
+ _____XXX,
+ _XXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ____XXX_,
+ _XXX____,
+ _______X,
+ X_______,
+ ___XX___,
+ _XXX____,
+ _______X,
+ X_______,
+ __XX____,
+ _XXX____,
+ _______X,
+ X_______,
+ ________,
+ _XXX____,
+ _______X,
+ X_______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ _XXX____,
+ _______X,
+ X_______,
+ ________,
+ _XXX____,
+ _______X,
+ X_______,
+ ________,
+ _XXX____,
+ _______X,
+ X_______,
+ ________,
+ _XXX____,
+ _______X,
+ X_______,
+ ________,
+ _XXX____,
+ _______X,
+ X_______,
+ ________,
+ _XXX____,
+ __XXXXXX,
+ X_______,
+ ________,
+ _XXX____,
+ _____XXX,
+ X_______,
+ ________,
+ _XX_____,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 于 code:0xD3DA */
+static GUI_CONST_STORAGE unsigned char acD3DA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XX___,
+ ________,
+ _______X,
+ XX______,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ __XX___X,
+ XX______,
+ ________,
+ ________,
+ ___XXXXX,
+ XX______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 语 code:0xD3EF */
+static GUI_CONST_STORAGE unsigned char acD3EF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ __XX____,
+ _____XX_,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ ________,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XX_____,
+ ________,
+ ______XX,
+ ________,
+ XXX_____,
+ XX______,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ________,
+ XXX____X,
+ XX______,
+ ________,
+ ________,
+ XXX____X,
+ XX______,
+ ______XX,
+ ________,
+ XXX____X,
+ XX______,
+ _XXXXXXX,
+ X_______,
+ XX_____X,
+ XX______,
+ ______XX,
+ X______X,
+ XX_____X,
+ XX__XX__,
+ ______XX,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X____XX_,
+ ________,
+ _XX_____,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ X__XXXXX,
+ ________,
+ _XXX____,
+ ______XX,
+ X_XX_XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ XXX__XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ XX___XXX,
+ ________,
+ _XXX____,
+ _____XXX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ______XX,
+ X____XXX,
+ ________,
+ _XXX____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _____XXX,
+ ________,
+ _XXX____,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 源 code:0xD4B4 */
+static GUI_CONST_STORAGE unsigned char acD4B4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ____XX__,
+ _____XXX,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ X___XX__,
+ _____XX_,
+ ________,
+ ______XX,
+ X_XXXX__,
+ _____XXX,
+ ________,
+ ______XX,
+ X_XXXX__,
+ _____XX_,
+ ________,
+ ________,
+ _XX_XX__,
+ ____XX__,
+ ________,
+ ________,
+ _XX_XX__,
+ XX__XX__,
+ ________,
+ _XXX____,
+ _XX_XX__,
+ XXXXXXXX,
+ XXXXXX__,
+ __XXX___,
+ XX__XX__,
+ XXX_____,
+ __XXX___,
+ ___XXXX_,
+ XX__XX__,
+ XXX_____,
+ __XXX___,
+ ___XXXX_,
+ XX__XX__,
+ XXX_____,
+ __XXX___,
+ ____XXX_,
+ XX__XX__,
+ XXXXXXXX,
+ XXXXX___,
+ ____XX_X,
+ X___XX__,
+ XXX_____,
+ __XXX___,
+ _______X,
+ X___XX__,
+ XXX_____,
+ __XXX___,
+ _______X,
+ X__XXX__,
+ XXX_____,
+ __XXX___,
+ ______XX,
+ ___XXX__,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ ___XXX__,
+ XXX__XXX,
+ __XXX___,
+ _____XXX,
+ ___XXX__,
+ _____XXX,
+ ________,
+ _XXX_XXX,
+ ___XX___,
+ _____XXX,
+ ________,
+ ___XXXX_,
+ ___XX___,
+ XXXX_XXX,
+ XXX_____,
+ ____XXX_,
+ __XXX___,
+ XXX__XXX,
+ _XXX____,
+ ____XXX_,
+ __XX___X,
+ XX___XXX,
+ __XXX___,
+ ____XXX_,
+ _XXX___X,
+ X____XXX,
+ ___XXX__,
+ ____XXX_,
+ _XX___XX,
+ _____XXX,
+ ___XXXX_,
+ ____XXX_,
+ XX___XX_,
+ _____XXX,
+ ____XXX_,
+ ____XXX_,
+ XX__XX__,
+ _XXXXXXX,
+ ____XX__,
+ _____XXX,
+ X__XX___,
+ ___XXXX_,
+ ________,
+ ______XX,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 允 code:0xD4CA */
+static GUI_CONST_STORAGE unsigned char acD4CA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ____XXXX,
+ ________,
+ ________,
+ ________,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ____XX__,
+ ________,
+ ________,
+ __XX____,
+ _____XXX,
+ ________,
+ ________,
+ _XX_____,
+ ______XX,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ XXX_____,
+ _______X,
+ X_______,
+ ________,
+ XXXX____,
+ ____XXXX,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ XXXXXX__,
+ _XXX____,
+ _XXXX___,
+ _____XXX,
+ ___XXX__,
+ _XXX____,
+ __XX____,
+ ________,
+ ___XXX__,
+ _XXX____,
+ __XX____,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ________,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ________,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ________,
+ ________,
+ ___XXX__,
+ _XXX____,
+ ________,
+ ________,
+ __XXX___,
+ _XXX____,
+ ________,
+ ________,
+ __XXX___,
+ _XXX____,
+ ________,
+ ________,
+ __XXX___,
+ _XXX____,
+ ___XX___,
+ ________,
+ __XXX___,
+ _XXX____,
+ ___XX___,
+ ________,
+ _XXX____,
+ _XXX____,
+ ___XX___,
+ ________,
+ _XXX____,
+ _XXX____,
+ ___XX___,
+ ________,
+ XXX_____,
+ _XXX____,
+ ___XX___,
+ _______X,
+ XX______,
+ __XXX___,
+ ___XXX__,
+ ______XX,
+ X_______,
+ __XXXXXX,
+ XXXXXXX_,
+ ____XXX_,
+ ________,
+ ___XXXXX,
+ XXXXXX__,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 在 code:0xD4DA */
+static GUI_CONST_STORAGE unsigned char acD4DA[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ __XXX___,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ___XXX__,
+ __XX____,
+ ________,
+ ________,
+ ___XX___,
+ __XXX___,
+ ________,
+ ________,
+ __XXX___,
+ __XXX___,
+ ________,
+ ________,
+ _XXX____,
+ __XXX___,
+ ________,
+ ________,
+ _XXX____,
+ __XXX___,
+ ________,
+ _______X,
+ XXX_____,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ _XXX____,
+ ______XX,
+ XX_XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ XX______,
+ __XXX___,
+ ________,
+ ____XXXX,
+ XX______,
+ __XXX___,
+ ________,
+ ___XXX_X,
+ XX______,
+ __XXX___,
+ ________,
+ __XX___X,
+ XX______,
+ __XXX___,
+ ________,
+ _XX____X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ___XXX__,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 暂 code:0xD4DD */
+static GUI_CONST_STORAGE unsigned char acD4DD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ _XXXX___,
+ ________,
+ XXX_____,
+ __XX__XX,
+ XXXXXX__,
+ ________,
+ XXX____X,
+ X_XXXXX_,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ ______XX,
+ X_XXX___,
+ __XXX___,
+ ____XX__,
+ ______XX,
+ X_XXXX__,
+ __XXXXXX,
+ XXXXXXX_,
+ _____XXX,
+ __XXX_XX,
+ X_XXX___,
+ XXX_____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXX___,
+ XXX_____,
+ ________,
+ __XXX___,
+ _XXXX___,
+ XXX_____,
+ ________,
+ __XXX___,
+ XXXXX___,
+ XXX_____,
+ ________,
+ __XXXXXX,
+ XXXX____,
+ XXX_____,
+ __XXXXXX,
+ XXXXX___,
+ _XX_____,
+ XXX_____,
+ ___XXXXX,
+ __XXX___,
+ XXX_____,
+ XXX_____,
+ ________,
+ __XXX__X,
+ X_______,
+ XX______,
+ ________,
+ __XXX_XX,
+ ________,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XX______,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 择 code:0xD4F1 */
+static GUI_CONST_STORAGE unsigned char acD4F1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ __XX____,
+ ________,
+ XXX__XXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ XXX_____,
+ XX______,
+ _XXX____,
+ ________,
+ XXX_____,
+ XX______,
+ XXX_____,
+ ________,
+ XXX_____,
+ _XX____X,
+ XX______,
+ ________,
+ XXX_XXX_,
+ __XX__XX,
+ X_______,
+ __XXXXXX,
+ XXXXXXXX,
+ __XXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ___XXXXX,
+ ________,
+ ________,
+ XXX_____,
+ ___XXXX_,
+ ________,
+ ________,
+ XXX_____,
+ __XXXXXX,
+ X_______,
+ ________,
+ XXX__XX_,
+ _XXX___X,
+ XXXXX___,
+ ________,
+ XXXXXX_X,
+ XX__XX__,
+ XXXXXX__,
+ ________,
+ XXXX_XXX,
+ ____XXX_,
+ ___XX___,
+ ______XX,
+ XXXXXX__,
+ ____XXX_,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ____XXX_,
+ __XX____,
+ __XXXXX_,
+ XXX__XXX,
+ XXXXXXXX,
+ XXXXX___,
+ __XXX___,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ___XXX__,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ________,
+ XXX_____,
+ ____XXX_,
+ ________,
+ ___XX__X,
+ XX______,
+ ____XXX_,
+ ________,
+ ____XXXX,
+ XX______,
+ ____XXX_,
+ ________,
+ ______XX,
+ XX______,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 增 code:0xD4F6 */
+static GUI_CONST_STORAGE unsigned char acD4F6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ XX______,
+ ______XX,
+ X_______,
+ XXX_____,
+ XXX_____,
+ ______XX,
+ X_______,
+ _XXX___X,
+ XX______,
+ ______XX,
+ X_______,
+ _XXX___X,
+ X_______,
+ ______XX,
+ X_______,
+ __XX__XX,
+ ___XX___,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X____XX_,
+ ____XX__,
+ ___XXX__,
+ ______XX,
+ X____XX_,
+ ____XX__,
+ ___XXX__,
+ ______XX,
+ XXXX_XXX,
+ XX__XX__,
+ XXXXXX__,
+ __XXXXXX,
+ XXXXXXX_,
+ XXX_XX__,
+ XXXXXX__,
+ ______XX,
+ X____XX_,
+ XXX_XX_X,
+ XX_XXX__,
+ ______XX,
+ X____XX_,
+ _XX_XX_X,
+ X__XXX__,
+ ______XX,
+ X____XX_,
+ _XX_XXXX,
+ ___XXX__,
+ ______XX,
+ X____XX_,
+ ____XX__,
+ ___XXX__,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X____XX_,
+ ________,
+ ___XXX__,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_____XX,
+ ________,
+ __XX____,
+ ______XX,
+ X_____XX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ X__XX_XX,
+ X_______,
+ _XXX____,
+ ______XX,
+ XXXX__XX,
+ X_______,
+ _XXX____,
+ _____XXX,
+ X_____XX,
+ X_______,
+ _XXX____,
+ _XXXXXX_,
+ ______XX,
+ XXXXXXXX,
+ XXXX____,
+ __XXX___,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ ________,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 诊 code:0xD5EF */
+static GUI_CONST_STORAGE unsigned char acD5EF[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XX____,
+ ________,
+ _____XX_,
+ ________,
+ __XXXX__,
+ ________,
+ ______XX,
+ ________,
+ __XXX___,
+ ________,
+ ______XX,
+ X_______,
+ _XXXXX__,
+ ________,
+ _______X,
+ XX______,
+ _XXXXX__,
+ ________,
+ _______X,
+ XX______,
+ XXX__XX_,
+ ________,
+ _______X,
+ X_______,
+ XX___XXX,
+ ________,
+ ________,
+ _______X,
+ XX____XX,
+ X_______,
+ ________,
+ ______XX,
+ X______X,
+ XX______,
+ ________,
+ _____XXX,
+ ________,
+ XXX_____,
+ ______XX,
+ _____XX_,
+ ____XX__,
+ _XXXX___,
+ __XXXXXX,
+ XX__XX__,
+ ___XXXX_,
+ __XXXXX_,
+ ______XX,
+ X_XXX___,
+ __XXXX__,
+ ___XX___,
+ ______XX,
+ XXX_____,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ XXX_____,
+ ________,
+ ______XX,
+ X_____XX,
+ X______X,
+ X_______,
+ ______XX,
+ X____XX_,
+ ______XX,
+ XXX_____,
+ ______XX,
+ X_______,
+ _____XXX,
+ X_______,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ __XXXX__,
+ ___XX___,
+ ______XX,
+ X__XX___,
+ _XXX____,
+ __XXXX__,
+ ______XX,
+ X_XX___X,
+ XX______,
+ _XXXX___,
+ ______XX,
+ XXX__XXX,
+ ________,
+ XXXX____,
+ ______XX,
+ XXX_____,
+ ______XX,
+ XX______,
+ ______XX,
+ XX______,
+ _____XXX,
+ X_______,
+ ______XX,
+ X_______,
+ ___XXXX_,
+ ________,
+ ______XX,
+ ________,
+ _XXXX___,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ____XXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 整 code:0xD5FB */
+static GUI_CONST_STORAGE unsigned char acD5FB[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ____XX__,
+ ________,
+ ________,
+ _XXXX___,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX___X,
+ X__XXX__,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XX_XXX__,
+ ___XXX__,
+ ________,
+ _XXX____,
+ ___XXXXX,
+ XXXXXXX_,
+ ________,
+ _XXX____,
+ __XXX___,
+ _XXX____,
+ ____XX__,
+ _XXX__XX,
+ __XXX___,
+ _XXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _XX_____,
+ _____XX_,
+ _XXX__XX,
+ _XX_XX__,
+ XXX_____,
+ _____XX_,
+ _XXX__XX,
+ XX___XX_,
+ XXX_____,
+ _____XX_,
+ _XXX__XX,
+ _____XXX,
+ XX______,
+ _____XXX,
+ XXXXXXXX,
+ _____XXX,
+ X_______,
+ _____XX_,
+ XXXX__XX,
+ ______XX,
+ X_______,
+ _______X,
+ XXXXXX__,
+ _____XXX,
+ XX______,
+ ______XX,
+ XXXX_XXX,
+ ___XXX__,
+ XXXX____,
+ _____XXX,
+ _XXX_XXX,
+ _XXX____,
+ _XXXXXX_,
+ ____XXX_,
+ _XXX__XX,
+ XX______,
+ ___XXX__,
+ ___XX___,
+ _XXX_XX_,
+ ________,
+ XXX_____,
+ _XXX_XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _XX____X,
+ XX_____X,
+ X_______,
+ ________,
+ _XXX___X,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXX___X,
+ XX______,
+ ________,
+ ________,
+ _XXX___X,
+ XX______,
+ ________,
+ ________,
+ _XXX___X,
+ XX______,
+ ________,
+ ________,
+ _XXX___X,
+ XX______,
+ __XXX___,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 正 code:0xD5FD */
+static GUI_CONST_STORAGE unsigned char acD5FD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ________,
+ __XXXX__,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ XX______,
+ XXX_____,
+ ________,
+ ________,
+ XXXX____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ _XXX____,
+ ________,
+ XXX_____,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ___XX___,
+ ________,
+ XXX_____,
+ XXX_____,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 直 code:0xD6B1 */
+static GUI_CONST_STORAGE unsigned char acD6B1[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X______X,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X__XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 执 code:0xD6B4 */
+static GUI_CONST_STORAGE unsigned char acD6B4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ _XX_____,
+ ________,
+ _______X,
+ XXX_____,
+ _XXXX___,
+ ________,
+ _______X,
+ XX______,
+ _XXX____,
+ ________,
+ _______X,
+ XX______,
+ _XXX____,
+ ________,
+ _______X,
+ XX______,
+ _XXX____,
+ ________,
+ _______X,
+ XX______,
+ _XXX____,
+ ________,
+ _______X,
+ XX_XXX__,
+ _XXX____,
+ ________,
+ _XXXXXXX,
+ XXXXXXX_,
+ _XXX___X,
+ XX______,
+ _______X,
+ XX______,
+ XXXXXXXX,
+ XXX_____,
+ _______X,
+ XX___XXX,
+ XXXX___X,
+ XX______,
+ _______X,
+ XX______,
+ _XXX___X,
+ XX______,
+ _______X,
+ XX______,
+ _XXX___X,
+ XX______,
+ _______X,
+ XX__XX__,
+ _XXX___X,
+ XX______,
+ _______X,
+ XXXXX___,
+ _XXX___X,
+ XX______,
+ _______X,
+ XXX_____,
+ _XXX___X,
+ XX______,
+ ____XXXX,
+ XX___XXX,
+ _XX____X,
+ XX______,
+ _XXXXXXX,
+ XX_____X,
+ XXX____X,
+ XX______,
+ __XXX__X,
+ XX______,
+ XXXXX__X,
+ XX______,
+ _______X,
+ XX______,
+ XXXXXX_X,
+ XX______,
+ _______X,
+ XX______,
+ XX_XXXXX,
+ XX______,
+ _______X,
+ XX_____X,
+ XX__XXXX,
+ XX______,
+ _______X,
+ XX_____X,
+ X____XX_,
+ XX___XX_,
+ _______X,
+ XX____XX,
+ X_______,
+ XXX__XX_,
+ _______X,
+ XX____XX,
+ ________,
+ XXX__XX_,
+ _______X,
+ XX___XX_,
+ ________,
+ _XXXXXX_,
+ _______X,
+ XX__XX__,
+ ________,
+ __XXXXX_,
+ ____XXXX,
+ XX_XX___,
+ ________,
+ ___XXXX_,
+ ______XX,
+ X_XX____,
+ ________,
+ ____XXX_,
+ ______XX,
+ _XX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 值 code:0xD6B5 */
+static GUI_CONST_STORAGE unsigned char acD6B5[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX______,
+ __XX____,
+ ________,
+ ________,
+ XXXX____,
+ __XXXX__,
+ ________,
+ ________,
+ XXX_____,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ __XXX___,
+ __XXX___,
+ _______X,
+ X_XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X_______,
+ __XX____,
+ ________,
+ ______XX,
+ X_______,
+ __XX____,
+ ________,
+ _____XXX,
+ ________,
+ __XX____,
+ XX______,
+ _____XXX,
+ XX___XXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ____XXXX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ____XXXX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ___XX_XX,
+ X____XXX,
+ XXXXXXXX,
+ XXX_____,
+ __XX__XX,
+ X____XX_,
+ ________,
+ XXX_____,
+ __XX__XX,
+ X____XX_,
+ ________,
+ XXX_____,
+ _XX___XX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ______XX,
+ X____XXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ ________,
+ XXX_____,
+ ______XX,
+ X____XX_,
+ ________,
+ XXXXXX__,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 址 code:0xD6B7 */
+static GUI_CONST_STORAGE unsigned char acD6B7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ____XX__,
+ ________,
+ ______XX,
+ XX______,
+ ____XXXX,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_______,
+ ____XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ X__XX_XX,
+ XX__XXX_,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ X___XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ___XXX__,
+ ______XX,
+ X_____XX,
+ X___XXXX,
+ XXXXXXX_,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ X_____XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ X___XXXX,
+ X___XXX_,
+ ________,
+ ______XX,
+ XXXXX_XX,
+ X___XXX_,
+ ________,
+ ______XX,
+ XX____XX,
+ X___XXX_,
+ ________,
+ ___XXXXX,
+ ______XX,
+ X___XXX_,
+ ________,
+ __XXXX__,
+ ______XX,
+ X___XXX_,
+ ________,
+ __XXX___,
+ ______XX,
+ X___XXX_,
+ ___XXX__,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 置 code:0xD6C3 */
+static GUI_CONST_STORAGE unsigned char acD6C3[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ _XXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ _____XXX,
+ ____XXX_,
+ __XXX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ __XXX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ __XXX___,
+ _XXX____,
+ _____XXX,
+ ____XXX_,
+ __XXX___,
+ _XXX____,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _____XXX,
+ ______XX,
+ ________,
+ _XXX____,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ _XXX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ _______X,
+ X_____XX,
+ X_____XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X_______,
+ ________,
+ XXX_____,
+ ______XX,
+ X__XXX__,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 制 code:0xD6C6 */
+static GUI_CONST_STORAGE unsigned char acD6C6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ ________,
+ ___XX___,
+ ________,
+ __XXX___,
+ ________,
+ ___XXX__,
+ ________,
+ __XX____,
+ ________,
+ ___XX___,
+ _____XXX,
+ __XX____,
+ ________,
+ ___XX___,
+ ____XXX_,
+ __XX____,
+ ________,
+ ___XX___,
+ ____XXX_,
+ __XX___X,
+ X____XXX,
+ ___XX___,
+ ____XXXX,
+ XXXXXXXX,
+ XX___XXX,
+ ___XX___,
+ ____XX__,
+ __XX____,
+ _____XXX,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ _____XXX,
+ ___XX___,
+ ___XX___,
+ __XX____,
+ _____XXX,
+ ___XX___,
+ __XX____,
+ __XX____,
+ XXX__XXX,
+ ___XX___,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXX_XXX,
+ ___XX___,
+ ________,
+ __XX____,
+ _____XXX,
+ ___XX___,
+ ________,
+ __XX____,
+ _____XXX,
+ ___XX___,
+ ________,
+ __XX____,
+ XX___XXX,
+ ___XX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXX__XXX,
+ ___XX___,
+ ____XX__,
+ __XX___X,
+ XX___XXX,
+ ___XX___,
+ ____XX__,
+ __XX___X,
+ XX___XXX,
+ ___XX___,
+ ____XX__,
+ __XX___X,
+ XX___XXX,
+ ___XX___,
+ ____XX__,
+ __XX___X,
+ XX___XXX,
+ ___XX___,
+ ____XX__,
+ __XX___X,
+ XX___XXX,
+ ___XX___,
+ ____XX__,
+ __XX___X,
+ XX______,
+ ___XX___,
+ ____XX__,
+ __XX___X,
+ XX______,
+ ___XX___,
+ ____XX__,
+ __XX_XXX,
+ XX______,
+ ___XX___,
+ ____XX__,
+ __XX__XX,
+ X_______,
+ ___XX___,
+ ________,
+ __XX____,
+ ________,
+ ___XX___,
+ ________,
+ __XX____,
+ ______XX,
+ XXXXX___,
+ ________,
+ __XX____,
+ ________,
+ _XXXX___,
+ ________,
+ __XX____,
+ ________,
+ __XX____,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 智 code:0xD6C7 */
+static GUI_CONST_STORAGE unsigned char acD6C7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ______XX,
+ X_____XX,
+ X_______,
+ ___XX___,
+ ______XX,
+ XXXXXXXX,
+ XX_XXXXX,
+ XXXXXX__,
+ _____XXX,
+ __XXX___,
+ ___XXX__,
+ __XXX___,
+ _____XX_,
+ __XXX___,
+ ___XXX__,
+ __XXX___,
+ ____XX__,
+ __XXX___,
+ ___XXX__,
+ __XXX___,
+ ________,
+ __XXX___,
+ ___XXX__,
+ __XXX___,
+ ________,
+ __XX___X,
+ XX_XXX__,
+ __XXX___,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ __XXX___,
+ ________,
+ _XXX____,
+ ___XXX__,
+ __XXX___,
+ ________,
+ _XXXX___,
+ ___XXX__,
+ __XXX___,
+ ________,
+ _XX_XXX_,
+ ___XXXXX,
+ XXXXX___,
+ ________,
+ XXX__XXX,
+ X__XXX__,
+ __XXX___,
+ _______X,
+ XX____XX,
+ XX_XXX__,
+ __XXX___,
+ ______XX,
+ X______X,
+ XX______,
+ ________,
+ _____XXX,
+ ________,
+ XX______,
+ ________,
+ ___XXX__,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ __XX____,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXX____,
+ _______X,
+ XX______,
+ ________,
+ _XX_____,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 滞 code:0xD6CD */
+static GUI_CONST_STORAGE unsigned char acD6CD[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ __XX___X,
+ X_______,
+ ____XX__,
+ _____XXX,
+ __XXXX_X,
+ XXX_____,
+ _____XXX,
+ _____XXX,
+ __XXX__X,
+ XX______,
+ _____XXX,
+ X____XXX,
+ __XXX__X,
+ XX_XXX__,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ _____XXX,
+ __XXX__X,
+ XX______,
+ ________,
+ _XX__XXX,
+ __XXX__X,
+ XX______,
+ ________,
+ _XX__XXX,
+ __XXX__X,
+ XX______,
+ _XXX____,
+ _XX__XXX,
+ __XXX__X,
+ XX______,
+ __XXX___,
+ XX______,
+ ________,
+ ________,
+ ___XXX__,
+ XX______,
+ ________,
+ ____XX__,
+ ___XXXX_,
+ XX_XXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ____XXXX,
+ X_XXX___,
+ __XXX___,
+ ___XXX__,
+ ____XX_X,
+ X_XXX___,
+ __XXX___,
+ ___XX___,
+ _______X,
+ XXXX____,
+ __XXX___,
+ __XX____,
+ ______XX,
+ X_______,
+ __XXX___,
+ _XX_____,
+ ______XX,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ______XX,
+ ____XXX_,
+ __XXX___,
+ _XX_____,
+ _____XXX,
+ ____XXX_,
+ __XXX___,
+ _XX_____,
+ ____XXX_,
+ ____XXX_,
+ __XXX___,
+ _XX_____,
+ __XXXXX_,
+ ____XXX_,
+ __XXX___,
+ _XX_____,
+ ____XXX_,
+ ____XXX_,
+ __XXX___,
+ _XX_____,
+ ____XXX_,
+ ____XXX_,
+ __XXX___,
+ _XX_____,
+ ____XXX_,
+ ____XXX_,
+ __XXX___,
+ _XX_____,
+ ____XXX_,
+ ____XXX_,
+ __XXXXXX,
+ XXX_____,
+ ____XXX_,
+ ____XXX_,
+ __XXX__X,
+ XXX_____,
+ ____XXX_,
+ ________,
+ __XXX___,
+ XX______,
+ ____XXX_,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 中 code:0xD6D0 */
+static GUI_CONST_STORAGE unsigned char acD6D0[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ____XX__,
+ _______X,
+ XX______,
+ __XX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XX____,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XX____,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XX____,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XX____,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XX____,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XX____,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XX____,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XX____,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XX____,
+ ____XXX_,
+ _______X,
+ XX______,
+ __XXX___,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 主 code:0xD6F7 */
+static GUI_CONST_STORAGE unsigned char acD6F7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XX__,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ XX______,
+ __XX____,
+ ________,
+ ________,
+ XX______,
+ _XXXX___,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX_____X,
+ XX______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ______XX,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XX___,
+ ________,
+ _______X,
+ XX______,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 准 code:0xD7BC */
+static GUI_CONST_STORAGE unsigned char acD7BC[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ ________,
+ ________,
+ ______XX,
+ XX__XXX_,
+ ________,
+ ___XX___,
+ ______XX,
+ X____XXX,
+ ________,
+ ___XXX__,
+ __XX__XX,
+ X____XXX,
+ ________,
+ ____XXX_,
+ __XX_XXX,
+ _____XXX,
+ ________,
+ ____XXXX,
+ __XX_XXX,
+ _____XX_,
+ ___XXX__,
+ _____XX_,
+ _XX_XXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ _____XX_,
+ _XX_XXXX,
+ ____XXX_,
+ ________,
+ ________,
+ XX__XXXX,
+ ____XXX_,
+ ________,
+ ________,
+ XX_XXXXX,
+ ____XXX_,
+ ________,
+ ________,
+ XX_XXXXX,
+ ____XXX_,
+ ________,
+ _______X,
+ X_XX_XXX,
+ ____XXX_,
+ __XXX___,
+ _______X,
+ XXXX_XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ XXX__XXX,
+ ____XXX_,
+ ________,
+ ______XX,
+ XX___XXX,
+ ____XXX_,
+ ________,
+ _____XXX,
+ _____XXX,
+ ____XXX_,
+ ________,
+ ____XXXX,
+ _____XXX,
+ ____XXX_,
+ ________,
+ __XXXXX_,
+ _____XXX,
+ ____XXX_,
+ __XXX___,
+ ____XXX_,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ____XXX_,
+ _____XXX,
+ ____XXX_,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ____XXX_,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ____XXX_,
+ ________,
+ ____XXX_,
+ _____XXX,
+ ____XXX_,
+ ________,
+ ___XXXX_,
+ _____XXX,
+ ____XXX_,
+ ________,
+ ___XXXX_,
+ _____XXX,
+ ____XXX_,
+ ___XXX__,
+ ____XXX_,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 自 code:0xD7D4 */
+static GUI_CONST_STORAGE unsigned char acD7D4[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ _____XX_,
+ ________,
+ ________,
+ ______XX,
+ _____XX_,
+ ________,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ XX______,
+ _______X,
+ X_______,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 字 code:0xD7D6 */
+static GUI_CONST_STORAGE unsigned char acD7D6[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ X_______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ _____XX_,
+ ________,
+ XX______,
+ ___XX___,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ _____XX_,
+ ________,
+ ________,
+ __XXX___,
+ ____XXX_,
+ ________,
+ ________,
+ _XXX____,
+ ____XXX_,
+ ________,
+ ________,
+ _XX_____,
+ ___XXX__,
+ ________,
+ ______XX,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ _____XXX,
+ X_______,
+ ________,
+ ________,
+ ___XXXX_,
+ ________,
+ ________,
+ ________,
+ __XXX___,
+ ________,
+ ________,
+ _______X,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ___XXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ _______X,
+ XX______,
+ ________,
+ ________,
+ __XXXXXX,
+ XX______,
+ ________,
+ ________,
+ _____XXX,
+ XX______,
+ ________,
+ ________,
+ ______XX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 最 code:0xD7EE */
+static GUI_CONST_STORAGE unsigned char acD7EE[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX______,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ XXX_____,
+ _______X,
+ XX_XX___,
+ _______X,
+ X_______,
+ ______XX,
+ __XXXX__,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ______XX,
+ X_____XX,
+ ________,
+ ________,
+ ______XX,
+ X_____XX,
+ ________,
+ __XX____,
+ ______XX,
+ X_____XX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ XXXXXXXX,
+ __XX____,
+ _XXX____,
+ ______XX,
+ X_____XX,
+ ___XX___,
+ _XXX____,
+ ______XX,
+ X_____XX,
+ ___XX___,
+ XXX_____,
+ ______XX,
+ XXXXXXXX,
+ ___XX___,
+ XXX_____,
+ ______XX,
+ X_____XX,
+ ____XX_X,
+ XX______,
+ ______XX,
+ X_____XX,
+ ____XXXX,
+ XX______,
+ ______XX,
+ X_____XX,
+ XXXX_XXX,
+ X_______,
+ ______XX,
+ X__XXXXX,
+ X____XXX,
+ ________,
+ ______XX,
+ XXXXX_XX,
+ _____XXX,
+ X_______,
+ __XXXXXX,
+ X_____XX,
+ ____XX_X,
+ XXX_____,
+ ___XXX__,
+ ______XX,
+ ___XX___,
+ XXXX____,
+ ________,
+ ______XX,
+ __XX____,
+ _XXXXXX_,
+ ________,
+ ______XX,
+ XXX_____,
+ ___XX___,
+ ________,
+ _______X,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+/* char: 作 code:0xD7F7 */
+static GUI_CONST_STORAGE unsigned char acD7F7[128] = {
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_____,
+ XX______,
+ ________,
+ ________,
+ _XXX____,
+ XXXX____,
+ ________,
+ ________,
+ XXX_____,
+ XXX_____,
+ ________,
+ ________,
+ XXX____X,
+ XX______,
+ ________,
+ ________,
+ XX_____X,
+ XX______,
+ ________,
+ _______X,
+ XX_____X,
+ X_______,
+ ___XX___,
+ _______X,
+ XX____XX,
+ XXXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X_____XX,
+ _XXX____,
+ ________,
+ ______XX,
+ X____XXX,
+ _XXX____,
+ ________,
+ _____XXX,
+ X____XX_,
+ _XXX____,
+ ________,
+ _____XXX,
+ XX__XX__,
+ _XXX____,
+ ________,
+ ____XXXX,
+ X___XX__,
+ _XXX____,
+ ________,
+ ____XXXX,
+ X__XX___,
+ _XXX____,
+ _XXX____,
+ ___XX_XX,
+ X_XX____,
+ _XXXXXXX,
+ XXXXX___,
+ ___XX_XX,
+ X_______,
+ _XXX____,
+ ________,
+ __XX__XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ __XXX___,
+ ______XX,
+ X_______,
+ _XXXXXXX,
+ XXXXXX__,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ X_______,
+ _XXX____,
+ ________,
+ ______XX,
+ ________,
+ _XXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+};
+
+static GUI_CONST_STORAGE GUI_CHARINFO Cinfo[303] = {
+ {14, 14, 1, (unsigned char *)&ac000A}, /*0:
+ */
+ {14, 14, 1, (unsigned char *)&ac000D}, /*1:
+ */
+ {14, 14, 3, (unsigned char *)&ac0020}, /*2: */
+ {11, 11, 3, (unsigned char *)&ac0021}, /*3: !*/
+ {14, 14, 3, (unsigned char *)&ac0022}, /*4: "*/
+ {16, 16, 3, (unsigned char *)&ac0023}, /*5: #*/
+ {14, 14, 3, (unsigned char *)&ac0024}, /*6: $*/
+ {16, 16, 3, (unsigned char *)&ac0025}, /*7: %*/
+ {16, 16, 3, (unsigned char *)&ac0026}, /*8: &*/
+ {7, 7, 3, (unsigned char *)&ac0027}, /*9: '*/
+ {16, 16, 3, (unsigned char *)&ac0028}, /*10: (*/
+ {10, 10, 3, (unsigned char *)&ac0029}, /*11: )*/
+ {16, 16, 3, (unsigned char *)&ac002A}, /*12: **/
+ {16, 16, 3, (unsigned char *)&ac002B}, /*13: +*/
+ {7, 7, 3, (unsigned char *)&ac002C}, /*14: ,*/
+ {16, 16, 3, (unsigned char *)&ac002D}, /*15: -*/
+ {7, 7, 3, (unsigned char *)&ac002E}, /*16: .*/
+ {16, 16, 3, (unsigned char *)&ac002F}, /*17: /*/
+ {15, 15, 3, (unsigned char *)&ac0030}, /*18: 0*/
+ {14, 14, 3, (unsigned char *)&ac0031}, /*19: 1*/
+ {15, 15, 3, (unsigned char *)&ac0032}, /*20: 2*/
+ {15, 15, 3, (unsigned char *)&ac0033}, /*21: 3*/
+ {15, 15, 3, (unsigned char *)&ac0034}, /*22: 4*/
+ {15, 15, 3, (unsigned char *)&ac0035}, /*23: 5*/
+ {15, 15, 3, (unsigned char *)&ac0036}, /*24: 6*/
+ {15, 15, 3, (unsigned char *)&ac0037}, /*25: 7*/
+ {15, 15, 3, (unsigned char *)&ac0038}, /*26: 8*/
+ {15, 15, 3, (unsigned char *)&ac0039}, /*27: 9*/
+ {11, 11, 3, (unsigned char *)&ac003A}, /*28: :*/
+ {10, 10, 3, (unsigned char *)&ac003B}, /*29: ;*/
+ {15, 15, 3, (unsigned char *)&ac003C}, /*30: <*/
+ {16, 16, 3, (unsigned char *)&ac003D}, /*31: =*/
+ {14, 14, 3, (unsigned char *)&ac003E}, /*32: >*/
+ {16, 16, 3, (unsigned char *)&ac003F}, /*33: ?*/
+ {16, 16, 3, (unsigned char *)&ac0040}, /*34: @*/
+ {16, 16, 3, (unsigned char *)&ac0041}, /*35: A*/
+ {16, 16, 3, (unsigned char *)&ac0042}, /*36: B*/
+ {16, 16, 3, (unsigned char *)&ac0043}, /*37: C*/
+ {16, 16, 3, (unsigned char *)&ac0044}, /*38: D*/
+ {16, 16, 3, (unsigned char *)&ac0045}, /*39: E*/
+ {16, 16, 3, (unsigned char *)&ac0046}, /*40: F*/
+ {16, 16, 3, (unsigned char *)&ac0047}, /*41: G*/
+ {17, 17, 3, (unsigned char *)&ac0048}, /*42: H*/
+ {14, 14, 3, (unsigned char *)&ac0049}, /*43: I*/
+ {16, 16, 3, (unsigned char *)&ac004A}, /*44: J*/
+ {16, 16, 3, (unsigned char *)&ac004B}, /*45: K*/
+ {16, 16, 3, (unsigned char *)&ac004C}, /*46: L*/
+ {17, 17, 3, (unsigned char *)&ac004D}, /*47: M*/
+ {17, 17, 3, (unsigned char *)&ac004E}, /*48: N*/
+ {16, 16, 3, (unsigned char *)&ac004F}, /*49: O*/
+ {16, 16, 3, (unsigned char *)&ac0050}, /*50: P*/
+ {16, 16, 3, (unsigned char *)&ac0051}, /*51: Q*/
+ {16, 16, 3, (unsigned char *)&ac0052}, /*52: R*/
+ {15, 15, 3, (unsigned char *)&ac0053}, /*53: S*/
+ {16, 16, 3, (unsigned char *)&ac0054}, /*54: T*/
+ {16, 16, 3, (unsigned char *)&ac0055}, /*55: U*/
+ {16, 16, 3, (unsigned char *)&ac0056}, /*56: V*/
+ {17, 17, 3, (unsigned char *)&ac0057}, /*57: W*/
+ {16, 16, 3, (unsigned char *)&ac0058}, /*58: X*/
+ {16, 16, 3, (unsigned char *)&ac0059}, /*59: Y*/
+ {16, 16, 3, (unsigned char *)&ac005A}, /*60: Z*/
+ {15, 15, 3, (unsigned char *)&ac005B}, /*61: [*/
+ {16, 16, 3, (unsigned char *)&ac005C}, /*62: \*/
+ {11, 11, 3, (unsigned char *)&ac005D}, /*63: ]*/
+ {13, 13, 3, (unsigned char *)&ac005E}, /*64: ^*/
+ {17, 17, 3, (unsigned char *)&ac005F}, /*65: _*/
+ {10, 10, 3, (unsigned char *)&ac0060}, /*66: `*/
+ {17, 17, 3, (unsigned char *)&ac0061}, /*67: a*/
+ {15, 15, 3, (unsigned char *)&ac0062}, /*68: b*/
+ {15, 15, 3, (unsigned char *)&ac0063}, /*69: c*/
+ {16, 16, 3, (unsigned char *)&ac0064}, /*70: d*/
+ {15, 15, 3, (unsigned char *)&ac0065}, /*71: e*/
+ {16, 16, 3, (unsigned char *)&ac0066}, /*72: f*/
+ {16, 16, 3, (unsigned char *)&ac0067}, /*73: g*/
+ {16, 16, 3, (unsigned char *)&ac0068}, /*74: h*/
+ {14, 14, 3, (unsigned char *)&ac0069}, /*75: i*/
+ {14, 14, 3, (unsigned char *)&ac006A}, /*76: j*/
+ {16, 16, 3, (unsigned char *)&ac006B}, /*77: k*/
+ {14, 14, 3, (unsigned char *)&ac006C}, /*78: l*/
+ {17, 17, 3, (unsigned char *)&ac006D}, /*79: m*/
+ {16, 16, 3, (unsigned char *)&ac006E}, /*80: n*/
+ {15, 15, 3, (unsigned char *)&ac006F}, /*81: o*/
+ {15, 15, 3, (unsigned char *)&ac0070}, /*82: p*/
+ {16, 16, 3, (unsigned char *)&ac0071}, /*83: q*/
+ {16, 16, 3, (unsigned char *)&ac0072}, /*84: r*/
+ {15, 15, 3, (unsigned char *)&ac0073}, /*85: s*/
+ {15, 15, 3, (unsigned char *)&ac0074}, /*86: t*/
+ {16, 16, 3, (unsigned char *)&ac0075}, /*87: u*/
+ {16, 16, 3, (unsigned char *)&ac0076}, /*88: v*/
+ {17, 17, 3, (unsigned char *)&ac0077}, /*89: w*/
+ {16, 16, 3, (unsigned char *)&ac0078}, /*90: x*/
+ {16, 16, 3, (unsigned char *)&ac0079}, /*91: y*/
+ {15, 15, 3, (unsigned char *)&ac007A}, /*92: z*/
+ {15, 15, 3, (unsigned char *)&ac007B}, /*93: {*/
+ {10, 10, 3, (unsigned char *)&ac007C}, /*94: |*/
+ {11, 11, 3, (unsigned char *)&ac007D}, /*95: }*/
+ {16, 16, 3, (unsigned char *)&ac007E}, /*96: ~*/
+ {14, 14, 3, (unsigned char *)&ac007F}, /*97: */
+ {26, 26, 4, (unsigned char *)&acA1CC}, /*98: √*/
+ {28, 28, 4, (unsigned char *)&acA1E6}, /*99: ℃*/
+ {29, 29, 4, (unsigned char *)&acA1F0}, /*100: ○*/
+ {29, 29, 4, (unsigned char *)&acA1F1}, /*101: ●*/
+ {21, 21, 4, (unsigned char *)&acA1FC}, /*102: ↑*/
+ {21, 21, 4, (unsigned char *)&acA1FD}, /*103: ↓*/
+ {32, 32, 4, (unsigned char *)&acB0E6}, /*104: 版*/
+ {31, 31, 4, (unsigned char *)&acB1A8}, /*105: 报*/
+ {31, 31, 4, (unsigned char *)&acB1B8}, /*106: 备*/
+ {32, 32, 4, (unsigned char *)&acB1BE}, /*107: 本*/
+ {30, 30, 4, (unsigned char *)&acB1D5}, /*108: 闭*/
+ {31, 31, 4, (unsigned char *)&acB1E0}, /*109: 编*/
+ {31, 31, 4, (unsigned char *)&acB1EA}, /*110: 标*/
+ {32, 32, 4, (unsigned char *)&acB2C1}, /*111: 擦*/
+ {31, 31, 4, (unsigned char *)&acB2CB}, /*112: 菜*/
+ {31, 31, 4, (unsigned char *)&acB2CE}, /*113: 参*/
+ {31, 31, 4, (unsigned char *)&acB2EE}, /*114: 差*/
+ {31, 31, 4, (unsigned char *)&acB3A3}, /*115: 常*/
+ {31, 31, 4, (unsigned char *)&acB3A7}, /*116: 厂*/
+ {31, 31, 4, (unsigned char *)&acB3CC}, /*117: 程*/
+ {29, 29, 4, (unsigned char *)&acB3F6}, /*118: 出*/
+ {31, 31, 4, (unsigned char *)&acB3FD}, /*119: 除*/
+ {31, 31, 4, (unsigned char *)&acB4A5}, /*120: 触*/
+ {31, 31, 4, (unsigned char *)&acB4A6}, /*121: 处*/
+ {31, 31, 4, (unsigned char *)&acB4AB}, /*122: 传*/
+ {31, 31, 4, (unsigned char *)&acB4C5}, /*123: 磁*/
+ {31, 31, 4, (unsigned char *)&acB4CE}, /*124: 次*/
+ {31, 31, 4, (unsigned char *)&acB4ED}, /*125: 错*/
+ {31, 31, 4, (unsigned char *)&acB4F3}, /*126: 大*/
+ {31, 31, 4, (unsigned char *)&acB4FD}, /*127: 待*/
+ {31, 31, 4, (unsigned char *)&acB5A5}, /*128: 单*/
+ {31, 31, 4, (unsigned char *)&acB5AF}, /*129: 弹*/
+ {31, 31, 4, (unsigned char *)&acB5C8}, /*130: 等*/
+ {31, 31, 4, (unsigned char *)&acB5D8}, /*131: 地*/
+ {31, 31, 4, (unsigned char *)&acB5E7}, /*132: 电*/
+ {30, 30, 4, (unsigned char *)&acB5F7}, /*133: 调*/
+ {30, 30, 4, (unsigned char *)&acB6A8}, /*134: 定*/
+ {31, 31, 4, (unsigned char *)&acB6AF}, /*135: 动*/
+ {31, 31, 4, (unsigned char *)&acB6C8}, /*136: 度*/
+ {31, 31, 4, (unsigned char *)&acB6CF}, /*137: 断*/
+ {31, 31, 4, (unsigned char *)&acB7A2}, /*138: 发*/
+ {30, 30, 4, (unsigned char *)&acB7A7}, /*139: 阀*/
+ {32, 32, 4, (unsigned char *)&acB7B4}, /*140: 反*/
+ {31, 31, 4, (unsigned char *)&acB7B6}, /*141: 范*/
+ {31, 31, 4, (unsigned char *)&acB7BD}, /*142: 方*/
+ {31, 31, 4, (unsigned char *)&acB7D6}, /*143: 分*/
+ {30, 30, 4, (unsigned char *)&acB7F1}, /*144: 否*/
+ {31, 31, 4, (unsigned char *)&acB8B4}, /*145: 复*/
+ {31, 31, 4, (unsigned char *)&acB8D0}, /*146: 感*/
+ {31, 31, 4, (unsigned char *)&acB8DF}, /*147: 高*/
+ {31, 31, 4, (unsigned char *)&acB9A4}, /*148: 工*/
+ {31, 31, 4, (unsigned char *)&acB9A6}, /*149: 功*/
+ {31, 31, 4, (unsigned char *)&acB9A9}, /*150: 供*/
+ {31, 31, 4, (unsigned char *)&acB9AB}, /*151: 公*/
+ {30, 30, 4, (unsigned char *)&acB9B9}, /*152: 构*/
+ {31, 31, 4, (unsigned char *)&acB9D8}, /*153: 关*/
+ {31, 31, 4, (unsigned char *)&acBAC5}, /*154: 号*/
+ {31, 31, 4, (unsigned char *)&acBACF}, /*155: 合*/
+ {30, 30, 4, (unsigned char *)&acBAF3}, /*156: 后*/
+ {31, 31, 4, (unsigned char *)&acBBB6}, /*157: 欢*/
+ {31, 31, 4, (unsigned char *)&acBBC9}, /*158: 簧*/
+ {32, 32, 4, (unsigned char *)&acBBD6}, /*159: 恢*/
+ {31, 31, 4, (unsigned char *)&acBBEC}, /*160: 混*/
+ {31, 31, 4, (unsigned char *)&acBBEE}, /*161: 活*/
+ {31, 31, 4, (unsigned char *)&acBBF2}, /*162: 或*/
+ {32, 32, 4, (unsigned char *)&acBBFA}, /*163: 机*/
+ {31, 31, 4, (unsigned char *)&acBBFD}, /*164: 积*/
+ {32, 32, 4, (unsigned char *)&acBCA4}, /*165: 激*/
+ {32, 32, 4, (unsigned char *)&acBCAD}, /*166: 辑*/
+ {31, 31, 4, (unsigned char *)&acBCB6}, /*167: 级*/
+ {31, 31, 4, (unsigned char *)&acBCBC}, /*168: 技*/
+ {31, 31, 4, (unsigned char *)&acBCC6}, /*169: 计*/
+ {31, 31, 4, (unsigned char *)&acBCCA}, /*170: 际*/
+ {30, 30, 4, (unsigned char *)&acBCD3}, /*171: 加*/
+ {30, 30, 4, (unsigned char *)&acBCE4}, /*172: 间*/
+ {31, 31, 4, (unsigned char *)&acBCF5}, /*173: 减*/
+ {31, 31, 4, (unsigned char *)&acBDAD}, /*174: 江*/
+ {29, 29, 4, (unsigned char *)&acBDC7}, /*175: 角*/
+ {31, 31, 4, (unsigned char *)&acBDDA}, /*176: 节*/
+ {31, 31, 4, (unsigned char *)&acBDE1}, /*177: 结*/
+ {31, 31, 4, (unsigned char *)&acBDE9}, /*178: 介*/
+ {31, 31, 4, (unsigned char *)&acBDFB}, /*179: 禁*/
+ {31, 31, 4, (unsigned char *)&acBEAF}, /*180: 警*/
+ {31, 31, 4, (unsigned char *)&acBEDE}, /*181: 巨*/
+ {31, 31, 4, (unsigned char *)&acBFAA}, /*182: 开*/
+ {31, 31, 4, (unsigned char *)&acBFD8}, /*183: 控*/
+ {31, 31, 4, (unsigned char *)&acBFE9}, /*184: 块*/
+ {31, 31, 4, (unsigned char *)&acBFEC}, /*185: 快*/
+ {29, 29, 4, (unsigned char *)&acC0DB}, /*186: 累*/
+ {32, 32, 4, (unsigned char *)&acC0E0}, /*187: 类*/
+ {31, 31, 4, (unsigned char *)&acC0EB}, /*188: 离*/
+ {31, 31, 4, (unsigned char *)&acC0ED}, /*189: 理*/
+ {30, 30, 4, (unsigned char *)&acC1A6}, /*190: 力*/
+ {32, 32, 4, (unsigned char *)&acC1AC}, /*191: 连*/
+ {31, 31, 4, (unsigned char *)&acC1BF}, /*192: 量*/
+ {32, 32, 4, (unsigned char *)&acC1F7}, /*193: 流*/
+ {31, 31, 4, (unsigned char *)&acC2CA}, /*194: 率*/
+ {32, 32, 4, (unsigned char *)&acC2DF}, /*195: 逻*/
+ {29, 29, 4, (unsigned char *)&acC3C5}, /*196: 门*/
+ {32, 32, 4, (unsigned char *)&acC4A3}, /*197: 模*/
+ {30, 30, 4, (unsigned char *)&acC4A6}, /*198: 摩*/
+ {31, 31, 4, (unsigned char *)&acC4BB}, /*199: 幕*/
+ {27, 27, 4, (unsigned char *)&acC4BF}, /*200: 目*/
+ {31, 31, 4, (unsigned char *)&acC4DC}, /*201: 能*/
+ {31, 31, 4, (unsigned char *)&acC5C5}, /*202: 排*/
+ {30, 30, 4, (unsigned char *)&acC6C1}, /*203: 屏*/
+ {31, 31, 4, (unsigned char *)&acC6DA}, /*204: 期*/
+ {31, 31, 4, (unsigned char *)&acC6E4}, /*205: 其*/
+ {28, 28, 4, (unsigned char *)&acC6F4}, /*206: 启*/
+ {31, 31, 4, (unsigned char *)&acC6F7}, /*207: 器*/
+ {31, 31, 4, (unsigned char *)&acC6F8}, /*208: 气*/
+ {31, 31, 4, (unsigned char *)&acC7D0}, /*209: 切*/
+ {30, 30, 4, (unsigned char *)&acC7F8}, /*210: 区*/
+ {29, 29, 4, (unsigned char *)&acC7FA}, /*211: 曲*/
+ {31, 31, 4, (unsigned char *)&acC7FD}, /*212: 驱*/
+ {32, 32, 4, (unsigned char *)&acC8AB}, /*213: 全*/
+ {30, 30, 4, (unsigned char *)&acC8B7}, /*214: 确*/
+ {31, 31, 4, (unsigned char *)&acC8CF}, /*215: 认*/
+ {27, 27, 4, (unsigned char *)&acC8D5}, /*216: 日*/
+ {31, 31, 4, (unsigned char *)&acC8EB}, /*217: 入*/
+ {31, 31, 4, (unsigned char *)&acC9CF}, /*218: 上*/
+ {30, 30, 4, (unsigned char *)&acC9DC}, /*219: 绍*/
+ {31, 31, 4, (unsigned char *)&acC9E8}, /*220: 设*/
+ {31, 31, 4, (unsigned char *)&acCAAF}, /*221: 石*/
+ {31, 31, 4, (unsigned char *)&acCAB1}, /*222: 时*/
+ {31, 31, 4, (unsigned char *)&acCAB5}, /*223: 实*/
+ {31, 31, 4, (unsigned char *)&acCAB9}, /*224: 使*/
+ {31, 31, 4, (unsigned char *)&acCABD}, /*225: 式*/
+ {31, 31, 4, (unsigned char *)&acCABE}, /*226: 示*/
+ {31, 31, 4, (unsigned char *)&acCAC7}, /*227: 是*/
+ {31, 31, 4, (unsigned char *)&acCAD4}, /*228: 试*/
+ {31, 31, 4, (unsigned char *)&acCAD6}, /*229: 手*/
+ {32, 32, 4, (unsigned char *)&acCAE4}, /*230: 输*/
+ {32, 32, 4, (unsigned char *)&acCAF5}, /*231: 术*/
+ {31, 31, 4, (unsigned char *)&acCAF8}, /*232: 束*/
+ {32, 32, 4, (unsigned char *)&acCAFD}, /*233: 数*/
+ {31, 31, 4, (unsigned char *)&acCBAB}, /*234: 双*/
+ {28, 28, 4, (unsigned char *)&acCBBE}, /*235: 司*/
+ {32, 32, 4, (unsigned char *)&acCBC0}, /*236: 死*/
+ {31, 31, 4, (unsigned char *)&acCBD5}, /*237: 苏*/
+ {32, 32, 4, (unsigned char *)&acCBD9}, /*238: 速*/
+ {32, 32, 4, (unsigned char *)&acCBFB}, /*239: 他*/
+ {31, 31, 4, (unsigned char *)&acCCD8}, /*240: 特*/
+ {32, 32, 4, (unsigned char *)&acCCE1}, /*241: 提*/
+ {32, 32, 4, (unsigned char *)&acCCF5}, /*242: 条*/
+ {31, 31, 4, (unsigned char *)&acCDA3}, /*243: 停*/
+ {32, 32, 4, (unsigned char *)&acCDA8}, /*244: 通*/
+ {30, 30, 4, (unsigned char *)&acCEA7}, /*245: 围*/
+ {31, 31, 4, (unsigned char *)&acCEBB}, /*246: 位*/
+ {31, 31, 4, (unsigned char *)&acCEC2}, /*247: 温*/
+ {31, 31, 4, (unsigned char *)&acCEC4}, /*248: 文*/
+ {31, 31, 4, (unsigned char *)&acCEF3}, /*249: 误*/
+ {31, 31, 4, (unsigned char *)&acCFA2}, /*250: 息*/
+ {31, 31, 4, (unsigned char *)&acCFB8}, /*251: 细*/
+ {30, 30, 4, (unsigned char *)&acCFC2}, /*252: 下*/
+ {30, 30, 4, (unsigned char *)&acCFD4}, /*253: 显*/
+ {30, 30, 4, (unsigned char *)&acCFDE}, /*254: 限*/
+ {31, 31, 4, (unsigned char *)&acCFDF}, /*255: 线*/
+ {31, 31, 4, (unsigned char *)&acCFEA}, /*256: 详*/
+ {30, 30, 4, (unsigned char *)&acCFF2}, /*257: 向*/
+ {30, 30, 4, (unsigned char *)&acD0A1}, /*258: 小*/
+ {32, 32, 4, (unsigned char *)&acD0A3}, /*259: 校*/
+ {30, 30, 4, (unsigned char *)&acD0C5}, /*260: 信*/
+ {30, 30, 4, (unsigned char *)&acD0CD}, /*261: 型*/
+ {31, 31, 4, (unsigned char *)&acD0D0}, /*262: 行*/
+ {31, 31, 4, (unsigned char *)&acD0D4}, /*263: 性*/
+ {31, 31, 4, (unsigned char *)&acD0ED}, /*264: 许*/
+ {31, 31, 4, (unsigned char *)&acD0F8}, /*265: 续*/
+ {32, 32, 4, (unsigned char *)&acD1A1}, /*266: 选*/
+ {31, 31, 4, (unsigned char *)&acD1B6}, /*267: 讯*/
+ {31, 31, 4, (unsigned char *)&acD1B9}, /*268: 压*/
+ {30, 30, 4, (unsigned char *)&acD1D4}, /*269: 言*/
+ {32, 32, 4, (unsigned char *)&acD1E9}, /*270: 验*/
+ {31, 31, 4, (unsigned char *)&acD2C6}, /*271: 移*/
+ {31, 31, 4, (unsigned char *)&acD2E5}, /*272: 义*/
+ {31, 31, 4, (unsigned char *)&acD3A2}, /*273: 英*/
+ {32, 32, 4, (unsigned char *)&acD3AD}, /*274: 迎*/
+ {29, 29, 4, (unsigned char *)&acD3C3}, /*275: 用*/
+ {31, 31, 4, (unsigned char *)&acD3D0}, /*276: 有*/
+ {31, 31, 4, (unsigned char *)&acD3DA}, /*277: 于*/
+ {31, 31, 4, (unsigned char *)&acD3EF}, /*278: 语*/
+ {31, 31, 4, (unsigned char *)&acD4B4}, /*279: 源*/
+ {31, 31, 4, (unsigned char *)&acD4CA}, /*280: 允*/
+ {31, 31, 4, (unsigned char *)&acD4DA}, /*281: 在*/
+ {31, 31, 4, (unsigned char *)&acD4DD}, /*282: 暂*/
+ {31, 31, 4, (unsigned char *)&acD4F1}, /*283: 择*/
+ {30, 30, 4, (unsigned char *)&acD4F6}, /*284: 增*/
+ {31, 31, 4, (unsigned char *)&acD5EF}, /*285: 诊*/
+ {31, 31, 4, (unsigned char *)&acD5FB}, /*286: 整*/
+ {31, 31, 4, (unsigned char *)&acD5FD}, /*287: 正*/
+ {31, 31, 4, (unsigned char *)&acD6B1}, /*288: 直*/
+ {31, 31, 4, (unsigned char *)&acD6B4}, /*289: 执*/
+ {31, 31, 4, (unsigned char *)&acD6B5}, /*290: 值*/
+ {31, 31, 4, (unsigned char *)&acD6B7}, /*291: 址*/
+ {31, 31, 4, (unsigned char *)&acD6C3}, /*292: 置*/
+ {30, 30, 4, (unsigned char *)&acD6C6}, /*293: 制*/
+ {30, 30, 4, (unsigned char *)&acD6C7}, /*294: 智*/
+ {31, 31, 4, (unsigned char *)&acD6CD}, /*295: 滞*/
+ {29, 29, 4, (unsigned char *)&acD6D0}, /*296: 中*/
+ {31, 31, 4, (unsigned char *)&acD6F7}, /*297: 主*/
+ {31, 31, 4, (unsigned char *)&acD7BC}, /*298: 准*/
+ {28, 28, 4, (unsigned char *)&acD7D4}, /*299: 自*/
+ {31, 31, 4, (unsigned char *)&acD7D6}, /*300: 字*/
+ {31, 31, 4, (unsigned char *)&acD7EE}, /*301: 最*/
+ {30, 30, 4, (unsigned char *)&acD7F7}, /*302: 作*/
+};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop200 = {
+ 0xD7F7, /*start :作*/
+ 0xD7F7, /*end :作, len=1*/
+ &Cinfo[302],
+ (void *)0};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop199 = {
+ 0xD7EE, /*start :最*/
+ 0xD7EE, /*end :最, len=1*/
+ &Cinfo[301],
+ &Prop200};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop198 = {
+ 0xD7D6, /*start :字*/
+ 0xD7D6, /*end :字, len=1*/
+ &Cinfo[300],
+ &Prop199};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop197 = {
+ 0xD7D4, /*start :自*/
+ 0xD7D4, /*end :自, len=1*/
+ &Cinfo[299],
+ &Prop198};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop196 = {
+ 0xD7BC, /*start :准*/
+ 0xD7BC, /*end :准, len=1*/
+ &Cinfo[298],
+ &Prop197};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop195 = {
+ 0xD6F7, /*start :主*/
+ 0xD6F7, /*end :主, len=1*/
+ &Cinfo[297],
+ &Prop196};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop194 = {
+ 0xD6D0, /*start :中*/
+ 0xD6D0, /*end :中, len=1*/
+ &Cinfo[296],
+ &Prop195};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop193 = {
+ 0xD6CD, /*start :滞*/
+ 0xD6CD, /*end :滞, len=1*/
+ &Cinfo[295],
+ &Prop194};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop192 = {
+ 0xD6C6, /*start :制*/
+ 0xD6C7, /*end :智, len=2*/
+ &Cinfo[293],
+ &Prop193};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop191 = {
+ 0xD6C3, /*start :置*/
+ 0xD6C3, /*end :置, len=1*/
+ &Cinfo[292],
+ &Prop192};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop190 = {
+ 0xD6B7, /*start :址*/
+ 0xD6B7, /*end :址, len=1*/
+ &Cinfo[291],
+ &Prop191};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop189 = {
+ 0xD6B4, /*start :执*/
+ 0xD6B5, /*end :值, len=2*/
+ &Cinfo[289],
+ &Prop190};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop188 = {
+ 0xD6B1, /*start :直*/
+ 0xD6B1, /*end :直, len=1*/
+ &Cinfo[288],
+ &Prop189};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop187 = {
+ 0xD5FD, /*start :正*/
+ 0xD5FD, /*end :正, len=1*/
+ &Cinfo[287],
+ &Prop188};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop186 = {
+ 0xD5FB, /*start :整*/
+ 0xD5FB, /*end :整, len=1*/
+ &Cinfo[286],
+ &Prop187};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop185 = {
+ 0xD5EF, /*start :诊*/
+ 0xD5EF, /*end :诊, len=1*/
+ &Cinfo[285],
+ &Prop186};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop184 = {
+ 0xD4F6, /*start :增*/
+ 0xD4F6, /*end :增, len=1*/
+ &Cinfo[284],
+ &Prop185};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop183 = {
+ 0xD4F1, /*start :择*/
+ 0xD4F1, /*end :择, len=1*/
+ &Cinfo[283],
+ &Prop184};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop182 = {
+ 0xD4DD, /*start :暂*/
+ 0xD4DD, /*end :暂, len=1*/
+ &Cinfo[282],
+ &Prop183};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop181 = {
+ 0xD4DA, /*start :在*/
+ 0xD4DA, /*end :在, len=1*/
+ &Cinfo[281],
+ &Prop182};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop180 = {
+ 0xD4CA, /*start :允*/
+ 0xD4CA, /*end :允, len=1*/
+ &Cinfo[280],
+ &Prop181};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop179 = {
+ 0xD4B4, /*start :源*/
+ 0xD4B4, /*end :源, len=1*/
+ &Cinfo[279],
+ &Prop180};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop178 = {
+ 0xD3EF, /*start :语*/
+ 0xD3EF, /*end :语, len=1*/
+ &Cinfo[278],
+ &Prop179};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop177 = {
+ 0xD3DA, /*start :于*/
+ 0xD3DA, /*end :于, len=1*/
+ &Cinfo[277],
+ &Prop178};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop176 = {
+ 0xD3D0, /*start :有*/
+ 0xD3D0, /*end :有, len=1*/
+ &Cinfo[276],
+ &Prop177};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop175 = {
+ 0xD3C3, /*start :用*/
+ 0xD3C3, /*end :用, len=1*/
+ &Cinfo[275],
+ &Prop176};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop174 = {
+ 0xD3AD, /*start :迎*/
+ 0xD3AD, /*end :迎, len=1*/
+ &Cinfo[274],
+ &Prop175};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop173 = {
+ 0xD3A2, /*start :英*/
+ 0xD3A2, /*end :英, len=1*/
+ &Cinfo[273],
+ &Prop174};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop172 = {
+ 0xD2E5, /*start :义*/
+ 0xD2E5, /*end :义, len=1*/
+ &Cinfo[272],
+ &Prop173};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop171 = {
+ 0xD2C6, /*start :移*/
+ 0xD2C6, /*end :移, len=1*/
+ &Cinfo[271],
+ &Prop172};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop170 = {
+ 0xD1E9, /*start :验*/
+ 0xD1E9, /*end :验, len=1*/
+ &Cinfo[270],
+ &Prop171};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop169 = {
+ 0xD1D4, /*start :言*/
+ 0xD1D4, /*end :言, len=1*/
+ &Cinfo[269],
+ &Prop170};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop168 = {
+ 0xD1B9, /*start :压*/
+ 0xD1B9, /*end :压, len=1*/
+ &Cinfo[268],
+ &Prop169};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop167 = {
+ 0xD1B6, /*start :讯*/
+ 0xD1B6, /*end :讯, len=1*/
+ &Cinfo[267],
+ &Prop168};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop166 = {
+ 0xD1A1, /*start :选*/
+ 0xD1A1, /*end :选, len=1*/
+ &Cinfo[266],
+ &Prop167};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop165 = {
+ 0xD0F8, /*start :续*/
+ 0xD0F8, /*end :续, len=1*/
+ &Cinfo[265],
+ &Prop166};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop164 = {
+ 0xD0ED, /*start :许*/
+ 0xD0ED, /*end :许, len=1*/
+ &Cinfo[264],
+ &Prop165};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop163 = {
+ 0xD0D4, /*start :性*/
+ 0xD0D4, /*end :性, len=1*/
+ &Cinfo[263],
+ &Prop164};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop162 = {
+ 0xD0D0, /*start :行*/
+ 0xD0D0, /*end :行, len=1*/
+ &Cinfo[262],
+ &Prop163};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop161 = {
+ 0xD0CD, /*start :型*/
+ 0xD0CD, /*end :型, len=1*/
+ &Cinfo[261],
+ &Prop162};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop160 = {
+ 0xD0C5, /*start :信*/
+ 0xD0C5, /*end :信, len=1*/
+ &Cinfo[260],
+ &Prop161};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop159 = {
+ 0xD0A3, /*start :校*/
+ 0xD0A3, /*end :校, len=1*/
+ &Cinfo[259],
+ &Prop160};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop158 = {
+ 0xD0A1, /*start :小*/
+ 0xD0A1, /*end :小, len=1*/
+ &Cinfo[258],
+ &Prop159};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop157 = {
+ 0xCFF2, /*start :向*/
+ 0xCFF2, /*end :向, len=1*/
+ &Cinfo[257],
+ &Prop158};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop156 = {
+ 0xCFEA, /*start :详*/
+ 0xCFEA, /*end :详, len=1*/
+ &Cinfo[256],
+ &Prop157};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop155 = {
+ 0xCFDE, /*start :限*/
+ 0xCFDF, /*end :线, len=2*/
+ &Cinfo[254],
+ &Prop156};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop154 = {
+ 0xCFD4, /*start :显*/
+ 0xCFD4, /*end :显, len=1*/
+ &Cinfo[253],
+ &Prop155};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop153 = {
+ 0xCFC2, /*start :下*/
+ 0xCFC2, /*end :下, len=1*/
+ &Cinfo[252],
+ &Prop154};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop152 = {
+ 0xCFB8, /*start :细*/
+ 0xCFB8, /*end :细, len=1*/
+ &Cinfo[251],
+ &Prop153};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop151 = {
+ 0xCFA2, /*start :息*/
+ 0xCFA2, /*end :息, len=1*/
+ &Cinfo[250],
+ &Prop152};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop150 = {
+ 0xCEF3, /*start :误*/
+ 0xCEF3, /*end :误, len=1*/
+ &Cinfo[249],
+ &Prop151};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop149 = {
+ 0xCEC4, /*start :文*/
+ 0xCEC4, /*end :文, len=1*/
+ &Cinfo[248],
+ &Prop150};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop148 = {
+ 0xCEC2, /*start :温*/
+ 0xCEC2, /*end :温, len=1*/
+ &Cinfo[247],
+ &Prop149};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop147 = {
+ 0xCEBB, /*start :位*/
+ 0xCEBB, /*end :位, len=1*/
+ &Cinfo[246],
+ &Prop148};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop146 = {
+ 0xCEA7, /*start :围*/
+ 0xCEA7, /*end :围, len=1*/
+ &Cinfo[245],
+ &Prop147};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop145 = {
+ 0xCDA8, /*start :通*/
+ 0xCDA8, /*end :通, len=1*/
+ &Cinfo[244],
+ &Prop146};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop144 = {
+ 0xCDA3, /*start :停*/
+ 0xCDA3, /*end :停, len=1*/
+ &Cinfo[243],
+ &Prop145};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop143 = {
+ 0xCCF5, /*start :条*/
+ 0xCCF5, /*end :条, len=1*/
+ &Cinfo[242],
+ &Prop144};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop142 = {
+ 0xCCE1, /*start :提*/
+ 0xCCE1, /*end :提, len=1*/
+ &Cinfo[241],
+ &Prop143};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop141 = {
+ 0xCCD8, /*start :特*/
+ 0xCCD8, /*end :特, len=1*/
+ &Cinfo[240],
+ &Prop142};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop140 = {
+ 0xCBFB, /*start :他*/
+ 0xCBFB, /*end :他, len=1*/
+ &Cinfo[239],
+ &Prop141};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop139 = {
+ 0xCBD9, /*start :速*/
+ 0xCBD9, /*end :速, len=1*/
+ &Cinfo[238],
+ &Prop140};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop138 = {
+ 0xCBD5, /*start :苏*/
+ 0xCBD5, /*end :苏, len=1*/
+ &Cinfo[237],
+ &Prop139};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop137 = {
+ 0xCBC0, /*start :死*/
+ 0xCBC0, /*end :死, len=1*/
+ &Cinfo[236],
+ &Prop138};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop136 = {
+ 0xCBBE, /*start :司*/
+ 0xCBBE, /*end :司, len=1*/
+ &Cinfo[235],
+ &Prop137};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop135 = {
+ 0xCBAB, /*start :双*/
+ 0xCBAB, /*end :双, len=1*/
+ &Cinfo[234],
+ &Prop136};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop134 = {
+ 0xCAFD, /*start :数*/
+ 0xCAFD, /*end :数, len=1*/
+ &Cinfo[233],
+ &Prop135};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop133 = {
+ 0xCAF8, /*start :束*/
+ 0xCAF8, /*end :束, len=1*/
+ &Cinfo[232],
+ &Prop134};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop132 = {
+ 0xCAF5, /*start :术*/
+ 0xCAF5, /*end :术, len=1*/
+ &Cinfo[231],
+ &Prop133};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop131 = {
+ 0xCAE4, /*start :输*/
+ 0xCAE4, /*end :输, len=1*/
+ &Cinfo[230],
+ &Prop132};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop130 = {
+ 0xCAD6, /*start :手*/
+ 0xCAD6, /*end :手, len=1*/
+ &Cinfo[229],
+ &Prop131};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop129 = {
+ 0xCAD4, /*start :试*/
+ 0xCAD4, /*end :试, len=1*/
+ &Cinfo[228],
+ &Prop130};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop128 = {
+ 0xCAC7, /*start :是*/
+ 0xCAC7, /*end :是, len=1*/
+ &Cinfo[227],
+ &Prop129};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop127 = {
+ 0xCABD, /*start :式*/
+ 0xCABE, /*end :示, len=2*/
+ &Cinfo[225],
+ &Prop128};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop126 = {
+ 0xCAB9, /*start :使*/
+ 0xCAB9, /*end :使, len=1*/
+ &Cinfo[224],
+ &Prop127};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop125 = {
+ 0xCAB5, /*start :实*/
+ 0xCAB5, /*end :实, len=1*/
+ &Cinfo[223],
+ &Prop126};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop124 = {
+ 0xCAB1, /*start :时*/
+ 0xCAB1, /*end :时, len=1*/
+ &Cinfo[222],
+ &Prop125};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop123 = {
+ 0xCAAF, /*start :石*/
+ 0xCAAF, /*end :石, len=1*/
+ &Cinfo[221],
+ &Prop124};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop122 = {
+ 0xC9E8, /*start :设*/
+ 0xC9E8, /*end :设, len=1*/
+ &Cinfo[220],
+ &Prop123};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop121 = {
+ 0xC9DC, /*start :绍*/
+ 0xC9DC, /*end :绍, len=1*/
+ &Cinfo[219],
+ &Prop122};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop120 = {
+ 0xC9CF, /*start :上*/
+ 0xC9CF, /*end :上, len=1*/
+ &Cinfo[218],
+ &Prop121};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop119 = {
+ 0xC8EB, /*start :入*/
+ 0xC8EB, /*end :入, len=1*/
+ &Cinfo[217],
+ &Prop120};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop118 = {
+ 0xC8D5, /*start :日*/
+ 0xC8D5, /*end :日, len=1*/
+ &Cinfo[216],
+ &Prop119};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop117 = {
+ 0xC8CF, /*start :认*/
+ 0xC8CF, /*end :认, len=1*/
+ &Cinfo[215],
+ &Prop118};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop116 = {
+ 0xC8B7, /*start :确*/
+ 0xC8B7, /*end :确, len=1*/
+ &Cinfo[214],
+ &Prop117};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop115 = {
+ 0xC8AB, /*start :全*/
+ 0xC8AB, /*end :全, len=1*/
+ &Cinfo[213],
+ &Prop116};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop114 = {
+ 0xC7FD, /*start :驱*/
+ 0xC7FD, /*end :驱, len=1*/
+ &Cinfo[212],
+ &Prop115};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop113 = {
+ 0xC7FA, /*start :曲*/
+ 0xC7FA, /*end :曲, len=1*/
+ &Cinfo[211],
+ &Prop114};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop112 = {
+ 0xC7F8, /*start :区*/
+ 0xC7F8, /*end :区, len=1*/
+ &Cinfo[210],
+ &Prop113};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop111 = {
+ 0xC7D0, /*start :切*/
+ 0xC7D0, /*end :切, len=1*/
+ &Cinfo[209],
+ &Prop112};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop110 = {
+ 0xC6F7, /*start :器*/
+ 0xC6F8, /*end :气, len=2*/
+ &Cinfo[207],
+ &Prop111};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop109 = {
+ 0xC6F4, /*start :启*/
+ 0xC6F4, /*end :启, len=1*/
+ &Cinfo[206],
+ &Prop110};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop108 = {
+ 0xC6E4, /*start :其*/
+ 0xC6E4, /*end :其, len=1*/
+ &Cinfo[205],
+ &Prop109};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop107 = {
+ 0xC6DA, /*start :期*/
+ 0xC6DA, /*end :期, len=1*/
+ &Cinfo[204],
+ &Prop108};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop106 = {
+ 0xC6C1, /*start :屏*/
+ 0xC6C1, /*end :屏, len=1*/
+ &Cinfo[203],
+ &Prop107};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop105 = {
+ 0xC5C5, /*start :排*/
+ 0xC5C5, /*end :排, len=1*/
+ &Cinfo[202],
+ &Prop106};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop104 = {
+ 0xC4DC, /*start :能*/
+ 0xC4DC, /*end :能, len=1*/
+ &Cinfo[201],
+ &Prop105};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop103 = {
+ 0xC4BF, /*start :目*/
+ 0xC4BF, /*end :目, len=1*/
+ &Cinfo[200],
+ &Prop104};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop102 = {
+ 0xC4BB, /*start :幕*/
+ 0xC4BB, /*end :幕, len=1*/
+ &Cinfo[199],
+ &Prop103};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop101 = {
+ 0xC4A6, /*start :摩*/
+ 0xC4A6, /*end :摩, len=1*/
+ &Cinfo[198],
+ &Prop102};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop100 = {
+ 0xC4A3, /*start :模*/
+ 0xC4A3, /*end :模, len=1*/
+ &Cinfo[197],
+ &Prop101};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop99 = {
+ 0xC3C5, /*start :门*/
+ 0xC3C5, /*end :门, len=1*/
+ &Cinfo[196],
+ &Prop100};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop98 = {
+ 0xC2DF, /*start :逻*/
+ 0xC2DF, /*end :逻, len=1*/
+ &Cinfo[195],
+ &Prop99};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop97 = {
+ 0xC2CA, /*start :率*/
+ 0xC2CA, /*end :率, len=1*/
+ &Cinfo[194],
+ &Prop98};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop96 = {
+ 0xC1F7, /*start :流*/
+ 0xC1F7, /*end :流, len=1*/
+ &Cinfo[193],
+ &Prop97};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop95 = {
+ 0xC1BF, /*start :量*/
+ 0xC1BF, /*end :量, len=1*/
+ &Cinfo[192],
+ &Prop96};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop94 = {
+ 0xC1AC, /*start :连*/
+ 0xC1AC, /*end :连, len=1*/
+ &Cinfo[191],
+ &Prop95};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop93 = {
+ 0xC1A6, /*start :力*/
+ 0xC1A6, /*end :力, len=1*/
+ &Cinfo[190],
+ &Prop94};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop92 = {
+ 0xC0ED, /*start :理*/
+ 0xC0ED, /*end :理, len=1*/
+ &Cinfo[189],
+ &Prop93};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop91 = {
+ 0xC0EB, /*start :离*/
+ 0xC0EB, /*end :离, len=1*/
+ &Cinfo[188],
+ &Prop92};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop90 = {
+ 0xC0E0, /*start :类*/
+ 0xC0E0, /*end :类, len=1*/
+ &Cinfo[187],
+ &Prop91};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop89 = {
+ 0xC0DB, /*start :累*/
+ 0xC0DB, /*end :累, len=1*/
+ &Cinfo[186],
+ &Prop90};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop88 = {
+ 0xBFEC, /*start :快*/
+ 0xBFEC, /*end :快, len=1*/
+ &Cinfo[185],
+ &Prop89};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop87 = {
+ 0xBFE9, /*start :块*/
+ 0xBFE9, /*end :块, len=1*/
+ &Cinfo[184],
+ &Prop88};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop86 = {
+ 0xBFD8, /*start :控*/
+ 0xBFD8, /*end :控, len=1*/
+ &Cinfo[183],
+ &Prop87};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop85 = {
+ 0xBFAA, /*start :开*/
+ 0xBFAA, /*end :开, len=1*/
+ &Cinfo[182],
+ &Prop86};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop84 = {
+ 0xBEDE, /*start :巨*/
+ 0xBEDE, /*end :巨, len=1*/
+ &Cinfo[181],
+ &Prop85};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop83 = {
+ 0xBEAF, /*start :警*/
+ 0xBEAF, /*end :警, len=1*/
+ &Cinfo[180],
+ &Prop84};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop82 = {
+ 0xBDFB, /*start :禁*/
+ 0xBDFB, /*end :禁, len=1*/
+ &Cinfo[179],
+ &Prop83};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop81 = {
+ 0xBDE9, /*start :介*/
+ 0xBDE9, /*end :介, len=1*/
+ &Cinfo[178],
+ &Prop82};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop80 = {
+ 0xBDE1, /*start :结*/
+ 0xBDE1, /*end :结, len=1*/
+ &Cinfo[177],
+ &Prop81};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop79 = {
+ 0xBDDA, /*start :节*/
+ 0xBDDA, /*end :节, len=1*/
+ &Cinfo[176],
+ &Prop80};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop78 = {
+ 0xBDC7, /*start :角*/
+ 0xBDC7, /*end :角, len=1*/
+ &Cinfo[175],
+ &Prop79};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop77 = {
+ 0xBDAD, /*start :江*/
+ 0xBDAD, /*end :江, len=1*/
+ &Cinfo[174],
+ &Prop78};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop76 = {
+ 0xBCF5, /*start :减*/
+ 0xBCF5, /*end :减, len=1*/
+ &Cinfo[173],
+ &Prop77};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop75 = {
+ 0xBCE4, /*start :间*/
+ 0xBCE4, /*end :间, len=1*/
+ &Cinfo[172],
+ &Prop76};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop74 = {
+ 0xBCD3, /*start :加*/
+ 0xBCD3, /*end :加, len=1*/
+ &Cinfo[171],
+ &Prop75};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop73 = {
+ 0xBCCA, /*start :际*/
+ 0xBCCA, /*end :际, len=1*/
+ &Cinfo[170],
+ &Prop74};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop72 = {
+ 0xBCC6, /*start :计*/
+ 0xBCC6, /*end :计, len=1*/
+ &Cinfo[169],
+ &Prop73};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop71 = {
+ 0xBCBC, /*start :技*/
+ 0xBCBC, /*end :技, len=1*/
+ &Cinfo[168],
+ &Prop72};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop70 = {
+ 0xBCB6, /*start :级*/
+ 0xBCB6, /*end :级, len=1*/
+ &Cinfo[167],
+ &Prop71};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop69 = {
+ 0xBCAD, /*start :辑*/
+ 0xBCAD, /*end :辑, len=1*/
+ &Cinfo[166],
+ &Prop70};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop68 = {
+ 0xBCA4, /*start :激*/
+ 0xBCA4, /*end :激, len=1*/
+ &Cinfo[165],
+ &Prop69};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop67 = {
+ 0xBBFD, /*start :积*/
+ 0xBBFD, /*end :积, len=1*/
+ &Cinfo[164],
+ &Prop68};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop66 = {
+ 0xBBFA, /*start :机*/
+ 0xBBFA, /*end :机, len=1*/
+ &Cinfo[163],
+ &Prop67};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop65 = {
+ 0xBBF2, /*start :或*/
+ 0xBBF2, /*end :或, len=1*/
+ &Cinfo[162],
+ &Prop66};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop64 = {
+ 0xBBEE, /*start :活*/
+ 0xBBEE, /*end :活, len=1*/
+ &Cinfo[161],
+ &Prop65};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop63 = {
+ 0xBBEC, /*start :混*/
+ 0xBBEC, /*end :混, len=1*/
+ &Cinfo[160],
+ &Prop64};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop62 = {
+ 0xBBD6, /*start :恢*/
+ 0xBBD6, /*end :恢, len=1*/
+ &Cinfo[159],
+ &Prop63};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop61 = {
+ 0xBBC9, /*start :簧*/
+ 0xBBC9, /*end :簧, len=1*/
+ &Cinfo[158],
+ &Prop62};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop60 = {
+ 0xBBB6, /*start :欢*/
+ 0xBBB6, /*end :欢, len=1*/
+ &Cinfo[157],
+ &Prop61};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop59 = {
+ 0xBAF3, /*start :后*/
+ 0xBAF3, /*end :后, len=1*/
+ &Cinfo[156],
+ &Prop60};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop58 = {
+ 0xBACF, /*start :合*/
+ 0xBACF, /*end :合, len=1*/
+ &Cinfo[155],
+ &Prop59};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop57 = {
+ 0xBAC5, /*start :号*/
+ 0xBAC5, /*end :号, len=1*/
+ &Cinfo[154],
+ &Prop58};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop56 = {
+ 0xB9D8, /*start :关*/
+ 0xB9D8, /*end :关, len=1*/
+ &Cinfo[153],
+ &Prop57};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop55 = {
+ 0xB9B9, /*start :构*/
+ 0xB9B9, /*end :构, len=1*/
+ &Cinfo[152],
+ &Prop56};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop54 = {
+ 0xB9AB, /*start :公*/
+ 0xB9AB, /*end :公, len=1*/
+ &Cinfo[151],
+ &Prop55};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop53 = {
+ 0xB9A9, /*start :供*/
+ 0xB9A9, /*end :供, len=1*/
+ &Cinfo[150],
+ &Prop54};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop52 = {
+ 0xB9A6, /*start :功*/
+ 0xB9A6, /*end :功, len=1*/
+ &Cinfo[149],
+ &Prop53};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop51 = {
+ 0xB9A4, /*start :工*/
+ 0xB9A4, /*end :工, len=1*/
+ &Cinfo[148],
+ &Prop52};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop50 = {
+ 0xB8DF, /*start :高*/
+ 0xB8DF, /*end :高, len=1*/
+ &Cinfo[147],
+ &Prop51};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop49 = {
+ 0xB8D0, /*start :感*/
+ 0xB8D0, /*end :感, len=1*/
+ &Cinfo[146],
+ &Prop50};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop48 = {
+ 0xB8B4, /*start :复*/
+ 0xB8B4, /*end :复, len=1*/
+ &Cinfo[145],
+ &Prop49};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop47 = {
+ 0xB7F1, /*start :否*/
+ 0xB7F1, /*end :否, len=1*/
+ &Cinfo[144],
+ &Prop48};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop46 = {
+ 0xB7D6, /*start :分*/
+ 0xB7D6, /*end :分, len=1*/
+ &Cinfo[143],
+ &Prop47};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop45 = {
+ 0xB7BD, /*start :方*/
+ 0xB7BD, /*end :方, len=1*/
+ &Cinfo[142],
+ &Prop46};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop44 = {
+ 0xB7B6, /*start :范*/
+ 0xB7B6, /*end :范, len=1*/
+ &Cinfo[141],
+ &Prop45};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop43 = {
+ 0xB7B4, /*start :反*/
+ 0xB7B4, /*end :反, len=1*/
+ &Cinfo[140],
+ &Prop44};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop42 = {
+ 0xB7A7, /*start :阀*/
+ 0xB7A7, /*end :阀, len=1*/
+ &Cinfo[139],
+ &Prop43};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop41 = {
+ 0xB7A2, /*start :发*/
+ 0xB7A2, /*end :发, len=1*/
+ &Cinfo[138],
+ &Prop42};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop40 = {
+ 0xB6CF, /*start :断*/
+ 0xB6CF, /*end :断, len=1*/
+ &Cinfo[137],
+ &Prop41};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop39 = {
+ 0xB6C8, /*start :度*/
+ 0xB6C8, /*end :度, len=1*/
+ &Cinfo[136],
+ &Prop40};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop38 = {
+ 0xB6AF, /*start :动*/
+ 0xB6AF, /*end :动, len=1*/
+ &Cinfo[135],
+ &Prop39};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop37 = {
+ 0xB6A8, /*start :定*/
+ 0xB6A8, /*end :定, len=1*/
+ &Cinfo[134],
+ &Prop38};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop36 = {
+ 0xB5F7, /*start :调*/
+ 0xB5F7, /*end :调, len=1*/
+ &Cinfo[133],
+ &Prop37};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop35 = {
+ 0xB5E7, /*start :电*/
+ 0xB5E7, /*end :电, len=1*/
+ &Cinfo[132],
+ &Prop36};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop34 = {
+ 0xB5D8, /*start :地*/
+ 0xB5D8, /*end :地, len=1*/
+ &Cinfo[131],
+ &Prop35};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop33 = {
+ 0xB5C8, /*start :等*/
+ 0xB5C8, /*end :等, len=1*/
+ &Cinfo[130],
+ &Prop34};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop32 = {
+ 0xB5AF, /*start :弹*/
+ 0xB5AF, /*end :弹, len=1*/
+ &Cinfo[129],
+ &Prop33};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop31 = {
+ 0xB5A5, /*start :单*/
+ 0xB5A5, /*end :单, len=1*/
+ &Cinfo[128],
+ &Prop32};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop30 = {
+ 0xB4FD, /*start :待*/
+ 0xB4FD, /*end :待, len=1*/
+ &Cinfo[127],
+ &Prop31};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop29 = {
+ 0xB4F3, /*start :大*/
+ 0xB4F3, /*end :大, len=1*/
+ &Cinfo[126],
+ &Prop30};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop28 = {
+ 0xB4ED, /*start :错*/
+ 0xB4ED, /*end :错, len=1*/
+ &Cinfo[125],
+ &Prop29};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop27 = {
+ 0xB4CE, /*start :次*/
+ 0xB4CE, /*end :次, len=1*/
+ &Cinfo[124],
+ &Prop28};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop26 = {
+ 0xB4C5, /*start :磁*/
+ 0xB4C5, /*end :磁, len=1*/
+ &Cinfo[123],
+ &Prop27};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop25 = {
+ 0xB4AB, /*start :传*/
+ 0xB4AB, /*end :传, len=1*/
+ &Cinfo[122],
+ &Prop26};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop24 = {
+ 0xB4A5, /*start :触*/
+ 0xB4A6, /*end :处, len=2*/
+ &Cinfo[120],
+ &Prop25};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop23 = {
+ 0xB3FD, /*start :除*/
+ 0xB3FD, /*end :除, len=1*/
+ &Cinfo[119],
+ &Prop24};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop22 = {
+ 0xB3F6, /*start :出*/
+ 0xB3F6, /*end :出, len=1*/
+ &Cinfo[118],
+ &Prop23};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop21 = {
+ 0xB3CC, /*start :程*/
+ 0xB3CC, /*end :程, len=1*/
+ &Cinfo[117],
+ &Prop22};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop20 = {
+ 0xB3A7, /*start :厂*/
+ 0xB3A7, /*end :厂, len=1*/
+ &Cinfo[116],
+ &Prop21};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop19 = {
+ 0xB3A3, /*start :常*/
+ 0xB3A3, /*end :常, len=1*/
+ &Cinfo[115],
+ &Prop20};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop18 = {
+ 0xB2EE, /*start :差*/
+ 0xB2EE, /*end :差, len=1*/
+ &Cinfo[114],
+ &Prop19};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop17 = {
+ 0xB2CE, /*start :参*/
+ 0xB2CE, /*end :参, len=1*/
+ &Cinfo[113],
+ &Prop18};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop16 = {
+ 0xB2CB, /*start :菜*/
+ 0xB2CB, /*end :菜, len=1*/
+ &Cinfo[112],
+ &Prop17};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop15 = {
+ 0xB2C1, /*start :擦*/
+ 0xB2C1, /*end :擦, len=1*/
+ &Cinfo[111],
+ &Prop16};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop14 = {
+ 0xB1EA, /*start :标*/
+ 0xB1EA, /*end :标, len=1*/
+ &Cinfo[110],
+ &Prop15};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop13 = {
+ 0xB1E0, /*start :编*/
+ 0xB1E0, /*end :编, len=1*/
+ &Cinfo[109],
+ &Prop14};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop12 = {
+ 0xB1D5, /*start :闭*/
+ 0xB1D5, /*end :闭, len=1*/
+ &Cinfo[108],
+ &Prop13};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop11 = {
+ 0xB1BE, /*start :本*/
+ 0xB1BE, /*end :本, len=1*/
+ &Cinfo[107],
+ &Prop12};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop10 = {
+ 0xB1B8, /*start :备*/
+ 0xB1B8, /*end :备, len=1*/
+ &Cinfo[106],
+ &Prop11};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop9 = {
+ 0xB1A8, /*start :报*/
+ 0xB1A8, /*end :报, len=1*/
+ &Cinfo[105],
+ &Prop10};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop8 = {
+ 0xB0E6, /*start :版*/
+ 0xB0E6, /*end :版, len=1*/
+ &Cinfo[104],
+ &Prop9};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop7 = {
+ 0xA1FC, /*start :↑*/
+ 0xA1FD, /*end :↓, len=2*/
+ &Cinfo[102],
+ &Prop8};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop6 = {
+ 0xA1F0, /*start :○*/
+ 0xA1F1, /*end :●, len=2*/
+ &Cinfo[100],
+ &Prop7};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop5 = {
+ 0xA1E6, /*start :℃*/
+ 0xA1E6, /*end :℃, len=1*/
+ &Cinfo[99],
+ &Prop6};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop4 = {
+ 0xA1CC, /*start :√*/
+ 0xA1CC, /*end :√, len=1*/
+ &Cinfo[98],
+ &Prop5};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop3 = {
+ 0x0020, /*start : */
+ 0x007F, /*end :, len=96*/
+ &Cinfo[2],
+ &Prop4};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop2 = {
+ 0x000D, /*start :
+ */
+ 0x000D, /*end :
+ , len=1*/
+ &Cinfo[1],
+ &Prop3};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop1 = {
+ 0x000A, /*start :
+ */
+ 0x000A, /*end :
+ , len=1*/
+ &Cinfo[0],
+ &Prop2};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontHZ32x32 = {
+ GUI_FONTTYPE_PROP_SJIS,
+ 32, /* height of font */
+ 32, /* space of font y */
+ 1,
+ 1,
+ &Prop1};
diff --git a/User/lib/lcd/gui/Font/LOGO.c b/User/lib/lcd/gui/Font/LOGO.c
new file mode 100644
index 0000000..b0e5481
--- /dev/null
+++ b/User/lib/lcd/gui/Font/LOGO.c
@@ -0,0 +1,10040 @@
+/*
+**********************************************************************
+* UcGUI Font
+* Chinese GB2312 library
+* (c) Copyright 19xx-20xx, company name
+*
+*
+* 注:本字体文件由 ucGUI字体生成器v9.0 生成,作者:馋嘴猫(qq:602426967)
+*
+**********************************************************************
+*/
+
+#include "GUI.H"
+
+/* char: code:0x0030 */
+static GUI_CONST_STORAGE unsigned char ac0030[5000] = {
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX____XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XX______,
+ ________,
+ _____XXX,
+ XXX_____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XX______,
+ ________,
+ _____XXX,
+ XXX_____,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XX______,
+ ________,
+ _____XXX,
+ XXX_____,
+ ________,
+ ________,
+ _______X,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XX______,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XX______,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ___XXXXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XX______,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XX______,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XX______,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XXXXX___,
+ ________,
+ ___XXXXX,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXX__,
+ ________,
+ __XXXXXX,
+ XX______,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXX_,
+ ________,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXX___,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXX_____,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ X_____XX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_____,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ _XXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ _XXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ _XXXXXXX,
+ XX______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ _XXXXXXX,
+ X_______,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XX______,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXX_____,
+ ________,
+ ________,
+ _XXXXXXX,
+ XX______,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ___XXXXX,
+ XX______,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ _____XXX,
+ XX______,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ________,
+ ______XX,
+ XX______,
+ ________,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXX_,
+ ________,
+ ______XX,
+ XX______,
+ _______X,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ______XX,
+ XX______,
+ _____XXX,
+ XXXXXXX_,
+ ________,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ______XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXX___,
+ ______XX,
+ XX______,
+ __XXXXXX,
+ XXXXXX__,
+ ________,
+ ________,
+ ________,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ _______X,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX____XX,
+ XX____XX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+};
+
+/* char: code:0x0031 */
+static GUI_CONST_STORAGE unsigned char ac0031[5000] = {
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX_XXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX___X,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ _XXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ___XXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ____XXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ______XX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ________,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ______XX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ____XXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ ___XXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX____,
+ _XXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX___X,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXX_XXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXX_____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXX____,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _____XXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ X_______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ____XXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XX______,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXX____,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ __XXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+ XXXXXXXX,
+};
+
+static GUI_CONST_STORAGE GUI_CHARINFO Cinfo[2] = {
+ {200, 200, 25, (unsigned char *)&ac0030}, /*0: */
+ {200, 200, 25, (unsigned char *)&ac0031}, /*1: */
+};
+
+static GUI_CONST_STORAGE GUI_FONT_PROP Prop1 = {
+ 0x0030, /*start :*/
+ 0x0031, /*end :, len=2*/
+ &Cinfo[0],
+ (void *)0};
+
+GUI_CONST_STORAGE GUI_FONT GUI_FontHZ200x200 = {
+ GUI_FONTTYPE_PROP_SJIS,
+ 200, /* height of font */
+ 200, /* space of font y */
+ 1,
+ 1,
+ &Prop1};
diff --git a/User/lib/lcd/gui/Font/vssver.scc b/User/lib/lcd/gui/Font/vssver.scc
new file mode 100644
index 0000000..a6e79e9
Binary files /dev/null and b/User/lib/lcd/gui/Font/vssver.scc differ
diff --git a/User/lib/lcd/gui/GUIDemo/CCGUIDemo.bat b/User/lib/lcd/gui/GUIDemo/CCGUIDemo.bat
new file mode 100644
index 0000000..911bed9
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/CCGUIDemo.bat
@@ -0,0 +1,26 @@
+REM ****************************************
+REM Compile GUIDemo modules
+REM ****************************************
+
+CALL CC GUIDEMO
+CALL CC GUIDEMO_Automotive
+CALL CC GUIDEMO_Bitmap
+CALL CC GUIDEMO_Bitmap4bpp
+CALL CC GUIDEMO_Circle
+CALL CC GUIDEMO_ColorBar
+CALL CC GUIDEMO_ColorList
+CALL CC GUIDEMO_Cursor
+CALL CC GUIDEMO_Dialog
+CALL CC GUIDEMO_Font
+CALL CC GUIDEMO_FrameWin
+CALL CC GUIDEMO_Graph
+CALL CC GUIDEMO_HardwareInfo
+CALL CC GUIDEMO_Intro
+CALL CC GUIDEMO_LUT
+CALL CC GUIDEMO_MemDevB
+CALL CC GUIDEMO_Navi
+CALL CC GUIDEMO_Polygon
+CALL CC GUIDEMO_ProgBar
+CALL CC GUIDEMO_Speed
+CALL CC GUIDEMO_Touch
+CALL CC SeggerLogoBlue
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO.c
new file mode 100644
index 0000000..a381829
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO.c
@@ -0,0 +1,444 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO.c
+Purpose : Several GUIDEMO routines
+----------------------------------------------------------------------
+*/
+
+#include
+#include "GUI.h"
+#if GUI_WINSUPPORT
+ #include "PROGBAR.h"
+ #include "LISTBOX.h"
+ #include "FRAMEWIN.h"
+ #include "BUTTON.h"
+#endif
+#include "GUIDEMO.h"
+
+/*********************************************************************
+*
+* Static variables
+*
+**********************************************************************
+*/
+
+#if GUI_WINSUPPORT
+ static BUTTON_Handle _ahButton[2];
+ static FRAMEWIN_Handle _ahFrameWin[3];
+ static int _ButtonSizeX, _ButtonSizeY;
+ #if GUIDEMO_LARGE
+ static FRAMEWIN_Handle _ahInfoWin[2];
+ static const char* _sInfo;
+ #endif
+#endif
+
+static int _iTest, _iTestMinor;
+static char _CmdNext;
+static const char* _sExplain;
+
+#define countof(Obj) (sizeof(Obj)/sizeof(Obj[0]))
+
+/*********************************************************************
+*
+* Routine table
+*
+**********************************************************************
+
+ The routines to be called are listed here. The advantage to calling
+ directly is that we can execute some code before and after.
+*/
+
+typedef void fVoidVoid(void);
+
+static fVoidVoid * _apfTest[] = {
+ GUIDEMO_HardwareInfo,
+ GUIDEMO_Speed,
+ #if GUI_SUPPORT_MEMDEV
+ GUIDEMO_Graph,
+ #endif
+ GUIDEMO_Bitmap,
+ GUIDEMO_Cursor,
+ GUIDEMO_ShowInternationalFonts,
+ GUIDEMO_ShowColorBar,
+ GUIDEMO_ShowColorList,
+ //GUIDEMO_DemoLUT,
+ GUIDEMO_DemoPolygon,
+ GUIDEMO_Circle,
+ GUIDEMO_Automotive,
+ GUIDEMO_Navigation,
+ #if GUI_WINSUPPORT
+ GUIDEMO_Dialog,
+ GUIDEMO_DemoProgBar,
+ GUIDEMO_DemoFrameWin,
+ #if GUI_SUPPORT_TOUCH
+ GUIDEMO_Touch,
+ #endif
+ #endif
+ 0
+};
+
+/*********************************************************************
+*
+* Static routines
+*
+**********************************************************************
+*/
+
+static void _UpdateCmdWin(void) {
+ #if GUI_WINSUPPORT && GUIDEMO_LARGE
+ WM_InvalidateWindow(_ahInfoWin[1]);
+ #endif
+}
+
+#if (GUI_WINSUPPORT && GUIDEMO_LARGE)
+static void _cbCmdWin(WM_MESSAGE* pMsg) {
+ switch (pMsg->MsgId) {
+ case WM_PAINT:
+ /* Update info in command window */
+ GUI_SetBkColor(GUI_GRAY);
+ GUI_Clear();
+ GUI_DispStringAt("Demo ", 0, 0);
+ GUI_DispDecMin(_iTest + 1);
+ GUI_DispString(".");
+ GUI_DispDecMin(_iTestMinor);
+ GUI_DispString("/");
+ GUI_DispDecMin(countof(_apfTest));
+ default:
+ WM_DefaultProc(pMsg);
+ }
+}
+#endif
+
+static void _UpdateInfoWin(void) {
+ #if GUI_WINSUPPORT && GUIDEMO_LARGE
+ GUI_RECT rClient;
+ WM_HWIN hWin;
+ GUI_CONTEXT ContextOld;
+ GUI_SaveContext(&ContextOld);
+ /* Update info window */
+ WM_ShowWindow(_ahInfoWin[0]);
+ WM_ShowWindow(_ahFrameWin[0]);
+ hWin = WM_SelectWindow(_ahInfoWin[0]);
+ GUI_GetClientRect(&rClient);
+ GUI_SetBkColor(GUI_WHITE);
+ GUI_Clear();
+ GUI_SetColor(GUI_BLACK);
+ GUI_SetFont(&GUI_Font13_1);
+ GUI_SetTextAlign(GUI_TA_HCENTER);
+ GUI_DispStringHCenterAt(_sInfo, (rClient.x1 - rClient.x0) / 2, 0);
+ GUI_SetTextAlign(GUI_TA_LEFT);
+ GUI_SetFont(&GUI_Font8_ASCII);
+ GUI_DispStringAt(_sExplain, 0, 20);
+ WM_SelectWindow(hWin);
+ GUI_RestoreContext(&ContextOld);
+ #endif
+}
+
+/*********************************************************************
+*
+* Exported routines
+*
+**********************************************************************
+*/
+
+GUI_COLOR GUIDEMO_SetBkColor(GUI_COLOR Color) {
+ GUI_COLOR r;
+ if (GUI_ColorIsAvailable(GUI_RED)) {
+ r = Color;
+ } else {
+ r = GUI_BLACK;
+ }
+ GUI_SetBkColor(r);
+ return r;
+}
+
+GUI_COLOR GUIDEMO_SetColor(GUI_COLOR Color) {
+ GUI_COLOR r;
+ if (GUI_ColorIsAvailable(GUI_RED)) {
+ r = Color;
+ } else {
+ r = GUI_WHITE;
+ }
+ GUI_SetColor(r);
+ return r;
+}
+
+int GUIDEMO_Delay(int t) {
+ int r = 0;
+ #if GUI_WINSUPPORT
+ U32 value, tm;
+ #if GUIDEMO_LARGE
+ PROGBAR_Handle hProg;
+ #endif
+ WM_SetForegroundWindow(_ahButton[0]);
+ #if GUIDEMO_LARGE
+ hProg = (t > 100) ? PROGBAR_CreateAsChild(10, 10, 60, 7, _ahInfoWin[1], 0,
+ WM_CF_SHOW | WM_CF_STAYONTOP| WM_CF_MEMDEV) : 0;
+ PROGBAR_SetMinMax(hProg, 0, t);
+ #endif
+ tm = GUI_GetTime();
+ do {
+ value = GUI_GetTime() - tm;
+ #if GUIDEMO_LARGE
+ PROGBAR_SetValue(hProg, value);
+ WM_ExecIdle();
+ #endif
+ GUI_Delay(10);
+ } while ((value < (U32)t) && !GUIDEMO_CheckCancel());
+ #if GUIDEMO_LARGE
+ PROGBAR_Delete(hProg);
+ #endif
+ _UpdateCmdWin();
+ WM_ExecIdle();
+ #else
+ GUI_Delay(t);
+ #endif
+ return r;
+}
+
+void GUIDEMO_Wait(void) {
+ GUIDEMO_Delay(4000);
+ GUIDEMO_NotifyStartNext();
+}
+
+int GUIDEMO_CheckCancel(void) {
+ int c = GUI_GetKey();
+ #if GUI_WINSUPPORT
+ WM_ExecIdle();
+ #endif
+ if ((c == 'n') || (c=='N'))
+ _CmdNext =1;
+ if ((c == 'h') || (c=='H')) {
+ GUI_Delay(500);
+ do {
+ GUI_Delay(10);
+ #if GUI_WINSUPPORT
+ WM_ExecIdle();
+ #endif
+ c = GUI_GetKey();
+ } while (!c);
+ }
+ return _CmdNext;
+}
+
+void GUIDEMO_ShowInfo(const char* s) {
+ _sExplain = s;
+ _UpdateInfoWin();
+}
+
+void GUIDEMO_HideInfoWin(void) {
+ #if GUI_WINSUPPORT
+ WM_HideWindow(_ahFrameWin[0]);
+ #endif
+}
+
+
+void GUIDEMO_NotifyStartNext(void) {
+ _CmdNext = 0;
+ _UpdateCmdWin();
+ _iTestMinor++;
+}
+
+int GUIDEMO_WaitKey(void) {
+ int r = 0;
+ U32 tMax = GUI_GetTime() + 4000;
+ U32 tDiff;
+ #if GUI_WINSUPPORT
+ PROGBAR_Handle hProg = PROGBAR_Create(LCD_GetXSize() - 70,
+ LCD_GetYSize() - 40,
+ 80, 5, WM_CF_SHOW);
+ #endif
+ while (tDiff = tMax - GUI_GetTime(), (tDiff > 0) && !GUIDEMO_CheckCancel()) {
+ if ((r = GUI_GetKey()) != 0)
+ break;
+ }
+ #if GUI_WINSUPPORT
+ PROGBAR_Delete(hProg);
+ WM_ExecIdle();
+ #endif
+ return r;
+}
+
+void GUIDEMO_ShowIntro(const char * s, const char * sExp) {
+ GUI_CONTEXT ContextOld;
+ GUI_SaveContext(&ContextOld);
+#if GUI_WINSUPPORT && GUIDEMO_LARGE
+ _sInfo = s;
+#endif
+ _sExplain = sExp;
+ GUI_SetDefault();
+ GUIDEMO_HideInfoWin();
+ GUIDEMO_SetBkColor(GUI_BLUE);
+ GUI_SetColor(GUI_WHITE);
+ GUI_Clear();
+ #if !(GUIDEMO_TINY)
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_DispStringHCenterAt(s, LCD_GET_XSIZE() / 2, LCD_GET_YSIZE() / 3 - 10);
+ #else
+ GUI_SetFont(&GUI_Font13B_ASCII);
+ GUI_DispStringHCenterAt(s, LCD_GET_XSIZE() / 2, LCD_GET_YSIZE() / 3 - 18);
+ #endif
+ if (_sExplain) {
+ GUI_SetFont(&GUI_Font8_ASCII);
+ #if !(GUIDEMO_TINY)
+ GUI_DispStringHCenterAt(_sExplain, LCD_GET_XSIZE() / 2, LCD_GET_YSIZE() / 2 - 10);
+ #else
+ GUI_DispStringHCenterAt(_sExplain, LCD_GET_XSIZE() / 2, LCD_GET_YSIZE() / 2 - 14);
+ #endif
+ }
+ GUIDEMO_Delay(_sExplain ? 2000 : 4000);
+#if GUI_WINSUPPORT
+ _UpdateInfoWin();
+ _UpdateCmdWin();
+#endif
+ GUI_RestoreContext(&ContextOld);
+ #if GUI_WINSUPPORT
+ WM_ExecIdle();
+ #endif
+ GUIDEMO_NotifyStartNext();
+ GUIDEMO_SetBkColor(GUI_RED);
+ GUI_Clear();
+}
+
+/*********************************************************************
+*
+* GUIDEMO_main(): Large version of the demo
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_LARGE
+
+void GUIDEMO_main(void) {
+ #if GUI_WINSUPPORT
+ int i;
+ int xSize, ySize, xPos, yPos;
+ #endif
+ #if (GUI_SUPPORT_CURSOR|GUI_SUPPORT_TOUCH)
+ GUI_CURSOR_Show();
+ #endif
+ GUI_Clear();
+ #if GUI_WINSUPPORT
+ #if GUI_NUM_LAYERS > 1
+ _ahFrameWin[2] = FRAMEWIN_CreateAsChild(10, 10, 100, 100, WM_GetDesktopWindowEx(1), "Display 1", NULL, WM_CF_SHOW);
+ WM_SetDesktopColorEx(GUI_RED, 1);
+ GUI_Delay(1000);
+ #endif
+ WM_SetCreateFlags(WM_CF_MEMDEV); /* Automatically use memory devices on all windows */
+ /* Calculate position and size of FrameWin[1] */
+ _ButtonSizeX = 30;
+ _ButtonSizeY = 20;
+ /* Create the control window incl. buttons */
+ _ahFrameWin[1] = FRAMEWIN_Create("Control", &_cbCmdWin, WM_CF_SHOW | WM_CF_STAYONTOP,
+ LCD_GetXSize() - 80, LCD_GetYSize() - 60, 80, 60);
+ _ahInfoWin[1] = WM_GetClientWindow(_ahFrameWin[1]);
+ _ahButton[0] = BUTTON_CreateAsChild(4, 20, _ButtonSizeX, _ButtonSizeY, _ahInfoWin[1],
+ 'H' , WM_CF_SHOW | WM_CF_STAYONTOP | WM_CF_MEMDEV);
+ _ahButton[1] = BUTTON_CreateAsChild(40, 20, _ButtonSizeX, _ButtonSizeY, _ahInfoWin[1],
+ 'N' , WM_CF_SHOW | WM_CF_STAYONTOP | WM_CF_MEMDEV);
+ BUTTON_SetText(_ahButton[0], "Halt");
+ BUTTON_SetText(_ahButton[1], "Next");
+ _UpdateCmdWin();
+ WM_ExecIdle();
+ #endif
+ /* Show Intro */
+ GUIDEMO_Intro();
+ #if GUI_WINSUPPORT
+ /* Calculate position and size of FrameWin[0] */
+ xSize = LCD_GetXSize() / 2;
+ ySize = 65;
+ xPos = LCD_GetXSize() - xSize;
+ yPos = 0;
+ /* Create info window and run the individual demos */
+ _ahFrameWin[0] = FRAMEWIN_Create("emWin Demo", NULL, WM_CF_STAYONTOP,
+ xPos, yPos, xSize, ySize);
+// _ahInfoWin[0] = WM_GetFirstChild(_ahFrameWin[0]);
+ _ahInfoWin[0] = WM_CreateWindowAsChild(0, 0, 0, 0, WM_GetFirstChild(_ahFrameWin[0]), WM_CF_SHOW | WM_CF_STAYONTOP, 0, 0);
+ WM_ExecIdle();
+ #endif
+ /* Run the individual demos ! */
+ for (_iTest = 0; _apfTest[_iTest]; _iTest++) {
+ GUI_CONTEXT ContextOld;
+ GUI_SaveContext(&ContextOld);
+ _iTestMinor = 0;
+ _UpdateCmdWin();
+ (*_apfTest[_iTest])();
+ _CmdNext = 0;
+ GUI_RestoreContext(&ContextOld);
+ }
+ /* Cleanup */
+ #if GUI_WINSUPPORT
+ for (i = 0; i < countof(_ahFrameWin); i++) {
+ WM_DeleteWindow(_ahFrameWin[i]);
+ }
+ #endif
+}
+
+#else /* GUIDEMO_LARGE */
+
+/*********************************************************************
+*
+* GUIDEMO_main(): Small version of the demo
+*
+**********************************************************************
+*/
+void GUIDEMO_main(void) {
+ #if GUI_WINSUPPORT
+ int i;
+ #endif
+ #if GUI_WINSUPPORT
+ #if GUI_NUM_LAYERS > 1
+ FRAMEWIN_CreateAsChild(10, 10, 100, 100, WM_GetDesktopWindowEx(1), "Display 1", NULL, WM_CF_SHOW);
+ GUI_Delay(1000);
+ #endif
+ WM_SetCreateFlags(WM_CF_MEMDEV); /* Automatically use memory devices on all windows */
+ _ButtonSizeX = 27;
+ _ButtonSizeY = 14;
+ _ahButton[0] = BUTTON_Create(LCD_GetXSize() - _ButtonSizeX * 2 - 4,
+ LCD_GetYSize() - _ButtonSizeY - 2,
+ _ButtonSizeX, _ButtonSizeY,
+ 'H' , WM_CF_SHOW | WM_CF_STAYONTOP | WM_CF_MEMDEV);
+ _ahButton[1] = BUTTON_Create(LCD_GetXSize() - _ButtonSizeX - 2,
+ LCD_GetYSize() - _ButtonSizeY - 2,
+ _ButtonSizeX, _ButtonSizeY,
+ 'N' , WM_CF_SHOW | WM_CF_STAYONTOP | WM_CF_MEMDEV);
+ BUTTON_SetFont(_ahButton[0], &GUI_Font8_ASCII);
+ BUTTON_SetFont(_ahButton[1], &GUI_Font8_ASCII);
+ BUTTON_SetText(_ahButton[0], "Halt");
+ BUTTON_SetText(_ahButton[1], "Next");
+ _UpdateCmdWin();
+ WM_ExecIdle();
+ #endif
+ /* Show Intro */
+ GUIDEMO_Intro();
+ /* Run the individual demos ! */
+ for (_iTest = 0; _apfTest[_iTest]; _iTest++) {
+ GUI_CONTEXT ContextOld;
+ GUI_SaveContext(&ContextOld);
+ _iTestMinor = 0;
+ _UpdateCmdWin();
+ (*_apfTest[_iTest])();
+ _CmdNext = 0;
+ GUI_RestoreContext(&ContextOld);
+ }
+ /* Cleanup */
+ #if GUI_WINSUPPORT
+ for (i = 0; i < countof(_ahButton); i++) {
+ BUTTON_Delete(_ahButton[i]);
+ }
+ #endif
+}
+
+#endif /* GUIDEMO_LARGE */
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO.h b/User/lib/lcd/gui/GUIDemo/GUIDEMO.h
new file mode 100644
index 0000000..9450322
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO.h
@@ -0,0 +1,126 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO.h
+Purpose : Multiple choice for emWin
+----------------------------------------------------------------------
+*/
+
+
+#ifndef GUIDEMO_H
+#define GUIDEMO_H
+
+#include "LCD_ConfDefaults.h" /* valid LCD configuration */
+
+
+#if defined(__cplusplus)
+extern "C" { /* Make sure we have C-declarations in C++ programs */
+#endif
+
+/*********************************************************************
+*
+* GUIDEMO publics
+*
+*********************************************************************
+
+ The following are the routines which are available to the
+ demo modules.
+*/
+
+void GUIDEMO_main(void);
+
+/*********************************************************************
+*
+* GUIDEMO main routines
+*
+*********************************************************************
+
+ The following are the routines which are available to the
+ demo modules.
+*/
+
+GUI_COLOR GUIDEMO_SetBkColor (GUI_COLOR Color);
+GUI_COLOR GUIDEMO_SetColor (GUI_COLOR Color);
+void GUIDEMO_Wait (void);
+int GUIDEMO_Delay (int t);
+void GUIDEMO_ShowIntro (const char*s, const char* sExplain);
+void GUIDEMO_ShowInfo (const char* sExplain);
+int GUIDEMO_CheckCancel (void);
+void GUIDEMO_NotifyStartNext (void);
+void GUIDEMO_HideInfoWin (void);
+int GUIDEMO_WaitKey (void);
+
+
+extern const GUI_BITMAP GUIDEMO_bm4bpp;
+
+
+/*********************************************************************
+*
+* Demo modules
+*
+*********************************************************************
+
+ The demo consists of different modules which are usually called
+ by the main routine.
+ The following are the declarations for the individual routines.
+*/
+
+void GUIDEMO_Messagebox(void);
+void GUIDEMO_Dialog(void);
+void GUIDEMO_Cursor(void);
+void GUIDEMO_HardwareInfo(void);
+void GUIDEMO_Graph(void);
+void GUIDEMO_Automotive(void);
+void GUIDEMO_Bitmap(void);
+void GUIDEMO_Intro(void);
+void GUIDEMO_Navigation(void);
+void GUIDEMO_ShowMemoryDevice(void);
+void GUIDEMO_DemoBITMAPObj(void);
+void GUIDEMO_Circle(void);
+void GUIDEMO_Speed(void);
+void GUIDEMO_ShowInternationalFonts(void);
+void GUIDEMO_ShowColorBar(void);
+void GUIDEMO_ShowColorList(void);
+void GUIDEMO_DemoFrameWin(void);
+void GUIDEMO_DemoLISTBOX(void);
+void GUIDEMO_DemoWidgets(void);
+void GUIDEMO_DemoPolygon(void);
+void GUIDEMO_DemoProgBar(void);
+//void GUIDEMO_ShowUCMix(void);
+void GUIDEMO_DemoLISTBOX(void);
+void GUIDEMO_DemoFrameWin(void);
+void GUIDEMO_DemoLUT(void);
+void GUIDEMO_ModifyLUT(int RFaktor, int GFaktor, int BFaktor);
+void GUIDEMO_ShowColorList(void);
+void GUIDEMO_Touch(void);
+
+extern const GUI_BITMAP bmemWinGSCLogo320x46;
+extern const GUI_BITMAP bmSeggerLogoBlue;
+
+/*********************************************************************
+*
+* GUIDEMO defines
+*
+*********************************************************************
+*/
+
+#define GUIDEMO_LARGE ((LCD_XSIZE >= 240) && (LCD_YSIZE >= 200))
+#define GUIDEMO_TINY ((LCD_XSIZE < 140) || (LCD_YSIZE < 100))
+
+#if defined(__cplusplus)
+ }
+#endif
+
+#endif
+
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Automotive.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Automotive.c
new file mode 100644
index 0000000..b59753b
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Automotive.c
@@ -0,0 +1,625 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Automotive.c
+Purpose : Automotive samples
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+#include "LCD_ConfDefaults.h"
+
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+#if (GUI_SUPPORT_MEMDEV & GUI_SUPPORT_AA)
+
+/*********************************************************************
+*
+* defines
+*
+**********************************************************************
+*/
+
+#define countof(Obj) (sizeof(Obj) / sizeof(Obj[0]))
+#define DEG2RAD (3.1415926f / 180)
+
+#define MAG 3
+
+#if ((LCD_XSIZE >= 200) && !(GUIDEMO_TINY))
+
+/*********************************************************************
+*
+* static data, scale bitmap (large)
+*
+**********************************************************************
+*/
+static GUI_CONST_STORAGE GUI_COLOR _ColorsScaleR140[] = {
+ 0x000000, 0x00B400, 0xF5F5F5, 0x0000B4
+ ,0x00F500, 0x494949, 0xE1E1E1, 0xC0C0C0
+ ,0x7F7F7F, 0x8DD78D, 0x9B9B9B, 0xD7D7D7
+ ,0xA8A8A8, 0xB4D7B4, 0x5D5D5D, 0xD7F5D7
+ ,0x5DB45D, 0xB4B4D7, 0x5D5DB4, 0xD7D7F5
+ ,0x8D8DD7, 0xEBEBEB, 0x8DB4B4, 0x8D8D8D
+ ,0x5D8DB4, 0x8DB48D, 0xB4D7D7, 0x6F6F6F
+ ,0xB4B4B4
+};
+
+static GUI_CONST_STORAGE GUI_LOGPALETTE _PalScaleR140 = {
+ 29, /* number of entries */
+ 0, /* No transparency */
+ &_ColorsScaleR140[0]
+};
+
+static GUI_CONST_STORAGE unsigned char _acScaleR140[] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x0C, 0x07, 0x07, 0x07, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x07, 0x07, 0x07, 0x07, 0x08, 0x08, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x07, 0x07, 0x06, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x07, 0x07, 0x0A, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x08, 0x0C, 0x07, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0C, 0x08, 0x08, 0x02, 0x02, 0x0B, 0x09, 0x09, 0x09, 0x09, 0x0D, 0x0D, 0x0D, 0x0D, 0x0D, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0B, 0x07, 0x08, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0A, 0x07, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x07, 0x07, 0x0A, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x09, 0x09, 0x0D, 0x0D, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0B, 0x0C, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x0C, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x07, 0x0C, 0x08, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x09, 0x09, 0x0D, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x07, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x08, 0x07, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x07, 0x0A, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x09, 0x0D, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0B, 0x0A, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0A, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x15, 0x07, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x0D, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x0C, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x07, 0x07, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x09, 0x0D, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0A, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x07, 0x08, 0x00, 0x00, 0x05, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x0F, 0x01, 0x01, 0x01, 0x10, 0x0D, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x0C, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x07, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x0C, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x0D, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x09, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0B, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x02, 0x02, 0x07, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x0D, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x07, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0B, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x0D, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0B, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x06, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x0F, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x06, 0x0A, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x02, 0x0B, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x0D, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x0D, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x02, 0x07, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x0D, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x0F, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x0F, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x0D, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x0F, 0x02, 0x02, 0x02, 0x06, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x0F, 0x02, 0x02, 0x02, 0x06, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x02, 0x02, 0x02, 0x02, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x02, 0x02, 0x02, 0x0B, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x06, 0x02, 0x02, 0x02, 0x15, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x0F, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x19, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0B, 0x02, 0x02, 0x02, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x0D, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x1A, 0x13, 0x02, 0x02, 0x02, 0x06, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x00, 0x07, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x0F, 0x12, 0x03, 0x14, 0x13, 0x02, 0x02, 0x02, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0B, 0x02, 0x02, 0x02, 0x0B, 0x0E, 0x00, 0x00, 0x05, 0x02, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0F, 0x02, 0x14, 0x03, 0x03, 0x03, 0x12, 0x11, 0x02, 0x02, 0x02, 0x06, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x02, 0x02, 0x02, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x02, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x0F, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x0B, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x12, 0x13, 0x02, 0x02, 0x02, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0B, 0x02, 0x02, 0x02, 0x0B, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x0D, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x02, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x02, 0x06, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x02, 0x02, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x11, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x12, 0x13, 0x02, 0x02, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x02, 0x02, 0x0B, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x0F, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x02, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x0F, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0F, 0x02, 0x16, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x14, 0x13, 0x02, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x02, 0x02, 0x06, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x02, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x0D, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x0B, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x12, 0x11, 0x02, 0x02, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x02, 0x02, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x0A, 0x07, 0x07, 0x07, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0F, 0x0D, 0x0D, 0x0D, 0x0D, 0x09, 0x09, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x02, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x14, 0x02, 0x02, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0B, 0x02, 0x02, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x08, 0x0C, 0x07, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0F, 0x0D, 0x0D, 0x09, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x11, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x14, 0x13, 0x02, 0x02, 0x06, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x02, 0x06, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x00, 0x00, 0x00, 0x08, 0x0C, 0x07, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0A, 0x08, 0x08, 0x08, 0x17, 0x08, 0x08, 0x08, 0x07, 0x07, 0x07, 0x07, 0x07, 0x06, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0F, 0x0D, 0x09, 0x10, 0x01, 0x10, 0x02, 0x0F, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x0F, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x12, 0x13, 0x02, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x02, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x15, 0x02, 0x0B, 0x06, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x07, 0x07, 0x0A, 0x08, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x08, 0x08, 0x07, 0x07, 0x06, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x15, 0x02, 0x0B, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0F, 0x02, 0x16, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x02, 0x02, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x02, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x0A, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x07, 0x0A, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x08, 0x07, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0F, 0x0D, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x0B, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x14, 0x02, 0x02, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x02, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x0C, 0x06, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0B, 0x0C, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0A, 0x07, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0D, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x02, 0x18, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x14, 0x02, 0x02, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0C, 0x06, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x07, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0C, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0D, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x0D, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x12, 0x13, 0x02, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x0C, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0A, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0F, 0x0D, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x0F, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x12, 0x13, 0x02, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x05, 0x0B, 0x02, 0x02, 0x06, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0C, 0x02, 0x02, 0x02, 0x02, 0x02, 0x06, 0x0C, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0A, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0F, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x0F, 0x02, 0x16, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x12, 0x13, 0x02, 0x02, 0x06, 0x08, 0x00, 0x00,
+ 0x00, 0x05, 0x06, 0x02, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x02, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x02, 0x07, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0C, 0x06, 0x02, 0x02, 0x02, 0x02, 0x0F, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x02, 0x0F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x02, 0x08, 0x00,
+ 0x05, 0x06, 0x02, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x06, 0x0A, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x0F, 0x0D, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x10, 0x02, 0x02, 0x18, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x02, 0x08,
+ 0x0B, 0x02, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x02, 0x0B, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0C, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0D, 0x10, 0x01, 0x01, 0x01, 0x01, 0x0D, 0x02, 0x0D, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x06,
+ 0x02, 0x02, 0x02, 0x1B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x02, 0x0D, 0x10, 0x01, 0x10, 0x02, 0x0F, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x17,
+ 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x0E, 0x0E, 0x0B, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x0F, 0x09, 0x0F, 0x02, 0x16, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x17, 0x00,
+ 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x06, 0x02, 0x02, 0x02, 0x02, 0x0F, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00,
+ 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0C, 0x02, 0x02, 0x02, 0x02, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x02, 0x02, 0x02, 0x02, 0x13, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x06, 0x02, 0x02, 0x02, 0x0B, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0C, 0x02, 0x02, 0x02, 0x02, 0x11, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0B, 0x02, 0x02, 0x02, 0x06, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0B, 0x02, 0x02, 0x02, 0x13, 0x14, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x02, 0x02, 0x02, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x06, 0x02, 0x02, 0x02, 0x11, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0B, 0x02, 0x02, 0x02, 0x0B, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0C, 0x02, 0x02, 0x02, 0x13, 0x14, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x06, 0x02, 0x02, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x06, 0x02, 0x02, 0x02, 0x11, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x02, 0x02, 0x0B, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x02, 0x02, 0x02, 0x13, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x02, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x06, 0x02, 0x02, 0x02, 0x14, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x02, 0x02, 0x06, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x07, 0x02, 0x02, 0x02, 0x11, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x02, 0x02, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x02, 0x02, 0x02, 0x13, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x07, 0x02, 0x02, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x06, 0x02, 0x02, 0x13, 0x12, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x02, 0x02, 0x14, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x06, 0x02, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x02, 0x02, 0x02, 0x14, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x02, 0x02, 0x0B, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x02, 0x02, 0x02, 0x11, 0x03, 0x03, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x00, 0x00, 0x08, 0x02, 0x02, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x02, 0x02, 0x11, 0x03, 0x03, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x05, 0x00, 0x08, 0x02, 0x02, 0x02, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x02, 0x02, 0x11, 0x03, 0x11, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x06, 0x17, 0x02, 0x02, 0x02, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x06, 0x02, 0x02, 0x13, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x02, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x06, 0x02, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x02, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x02, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static GUI_CONST_STORAGE GUI_BITMAP _bmScaleR140 = {
+ 200, /* XSize */
+ 73, /* YSize */
+ 200, /* BytesPerLine */
+ 8, /* BitsPerPixel */
+ _acScaleR140, /* Pointer to picture data (indices) */
+ &_PalScaleR140 /* Pointer to palette */
+};
+
+#else
+
+/*********************************************************************
+*
+* static data, scale bitmap (small)
+*
+**********************************************************************
+*/
+static GUI_CONST_STORAGE GUI_COLOR _ColorsScaleR80[] = {
+ 0x000000,0x101010,0x313031,0x525552
+ ,0x83858B,0x94959C,0xA4AAAC,0xC5CACD
+ ,0xD5DADE,0xFFFFFF,0xE6EAEE,0x202020
+ ,0xB4BABD,0x292C29,0x737973,0x626562
+ ,0x414041,0xDEE2E6,0x5ADE5A,0x41DA41
+ ,0x52DE52,0x62DE62,0x83E68B,0xA4EEAC
+ ,0xC5F2CD,0xE6FAEE,0x393C39,0x31D631
+ ,0x00CE00,0x10CE10,0x94EA9C,0xB4EEBD
+ ,0x737573,0xC5F2D5,0x737173,0x8BE694
+ ,0x20D220,0x73E273,0xD5F6DE,0xBDC2C5
+ ,0xD5DAE6,0x5A595A,0xA4B2BD,0xBDBEC5
+ ,0xE6F6EE,0x9499EE,0xE6EAFF,0xB4BAF6
+ ,0x0000CD,0x2020D5,0xA4AAEE,0x5255DE
+ ,0x8385E6,0x1010D5,0x7375E6,0xD5F2DE
+ ,0x6265E6,0x3130D5,0xD5DAFF,0xC5CAF6
+ ,0x4140DE,0xEEFAEE,0xEEEEF6,0xF6FAFF
+ ,0x6A6D6A,0xF6F6FF,0x7B797B,0xCDD2D5
+ ,0x4148D5,0x293429,0x181C18,0x181CD5
+ ,0x8B8D8B,0x00FF00,0x94E69C,0xB4BEC5
+ ,0x2028D5,0xC5C6CD
+};
+
+static GUI_CONST_STORAGE GUI_LOGPALETTE _PalScaleR80 = {
+ 78, /* number of entries */
+ 0, /* No transparency */
+ &_ColorsScaleR80[0]
+};
+
+static GUI_CONST_STORAGE unsigned char _acScaleR80[] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x08, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x0A, 0x08, 0x08, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x03, 0x04, 0x0C, 0x08, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x0A, 0x0C, 0x04, 0x03, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0D, 0x0E, 0x05, 0x08, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x0A, 0x08, 0x06, 0x05, 0x04, 0x0F, 0x03, 0x03, 0x10, 0x02, 0x11, 0x09, 0x12, 0x13, 0x14, 0x14, 0x15, 0x16, 0x16, 0x17, 0x18, 0x19, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x0A, 0x06, 0x0E, 0x1A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x08, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x07, 0x05, 0x0F, 0x10, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1D, 0x1B, 0x15, 0x1E, 0x1F, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x08, 0x05, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x04, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09, 0x11, 0x20, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1B, 0x15, 0x21, 0x09, 0x09, 0x09, 0x09, 0x09, 0x0A, 0x06, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x20, 0x08, 0x09, 0x09, 0x09, 0x09, 0x08, 0x05, 0x22, 0x09, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x17, 0x09, 0x23, 0x16, 0x18, 0x09, 0x09, 0x09, 0x09, 0x08, 0x04, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x09, 0x09, 0x09, 0x09, 0x08, 0x04, 0x02, 0x00, 0x00, 0x01, 0x09, 0x09, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x19, 0x09, 0x1B, 0x1C, 0x1C, 0x24, 0x25, 0x18, 0x09, 0x09, 0x09, 0x09, 0x06, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0C, 0x09, 0x09, 0x09, 0x09, 0x06, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x09, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1B, 0x09, 0x19, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1B, 0x16, 0x19, 0x09, 0x09, 0x09, 0x08, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x08, 0x09, 0x09, 0x09, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x25, 0x09, 0x17, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x14, 0x26, 0x09, 0x09, 0x09, 0x08, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x09, 0x09, 0x09, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1F, 0x09, 0x15, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x13, 0x1F, 0x09, 0x09, 0x09, 0x08, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1A, 0x27, 0x09, 0x09, 0x09, 0x0C, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x09, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x09, 0x09, 0x24, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1B, 0x17, 0x09, 0x09, 0x09, 0x28, 0x29, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x09, 0x09, 0x09, 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x09, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x13, 0x09, 0x26, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1B, 0x1F, 0x09, 0x09, 0x09, 0x2A, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x08, 0x09, 0x09, 0x09, 0x2B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x09, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x16, 0x09, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1E, 0x09, 0x09, 0x09, 0x0A, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x09, 0x09, 0x09, 0x05, 0x09, 0x09, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x09, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x18, 0x09, 0x14, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1D, 0x2C, 0x09, 0x2D, 0x2E, 0x09, 0x09, 0x07, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0A, 0x09, 0x09, 0x07, 0x02, 0x00, 0x04, 0x09, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1D, 0x09, 0x09, 0x1D, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1E, 0x09, 0x2F, 0x30, 0x31, 0x32, 0x09, 0x09, 0x09, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x09, 0x09, 0x09, 0x20, 0x00, 0x00, 0x00, 0x01, 0x08, 0x09, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x09, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x14, 0x09, 0x18, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1B, 0x09, 0x09, 0x31, 0x30, 0x30, 0x30, 0x33, 0x2E, 0x09, 0x09, 0x0C, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x08, 0x09, 0x09, 0x07, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x09, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x09, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1E, 0x09, 0x16, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1F, 0x09, 0x34, 0x30, 0x30, 0x30, 0x30, 0x30, 0x35, 0x2F, 0x09, 0x09, 0x0A, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x09, 0x09, 0x09, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x09, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0x09, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x26, 0x09, 0x13, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x14, 0x09, 0x2E, 0x35, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x36, 0x09, 0x09, 0x09, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x09, 0x0A, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x09, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x09, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1B, 0x09, 0x19, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x37, 0x09, 0x38, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x39, 0x3A, 0x09, 0x09, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x09, 0x09, 0x08, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x09, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x15, 0x09, 0x1F, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x16, 0x09, 0x3B, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x35, 0x2F, 0x09, 0x09, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x09, 0x09, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x09, 0x09, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x08, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x10, 0x20, 0x04, 0x06, 0x07, 0x08, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x26, 0x26, 0x17, 0x1E, 0x25, 0x14, 0x24, 0x1C, 0x1C, 0x1C, 0x1C, 0x17, 0x09, 0x25, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x24, 0x09, 0x09, 0x3C, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x34, 0x09, 0x09, 0x08, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x08, 0x09, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x09, 0x29, 0x04, 0x0C, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x1F, 0x16, 0x14, 0x3D, 0x09, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x17, 0x09, 0x32, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x38, 0x09, 0x09, 0x0A, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x02, 0x0A, 0x09, 0x09, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x20, 0x3E, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x08, 0x0C, 0x05, 0x04, 0x0F, 0x03, 0x03, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x04, 0x05, 0x06, 0x08, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x3F, 0x16, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1B, 0x09, 0x09, 0x31, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3C, 0x09, 0x09, 0x09, 0x10, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x40, 0x41, 0x09, 0x09, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x09, 0x0A, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x20, 0x07, 0x09, 0x09, 0x09, 0x09, 0x09, 0x08, 0x05, 0x0F, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x05, 0x07, 0x09, 0x09, 0x09, 0x09, 0x09, 0x26, 0x16, 0x1B, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x18, 0x09, 0x34, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3C, 0x2E, 0x09, 0x09, 0x42, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x43, 0x3F, 0x09, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x09, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x09, 0x09, 0x09, 0x09, 0x0A, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x05, 0x0A, 0x09, 0x09, 0x09, 0x09, 0x18, 0x14, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x15, 0x09, 0x3A, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x44, 0x3F, 0x3F, 0x43, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x45, 0x3F, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x09, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x08, 0x09, 0x09, 0x09, 0x0A, 0x06, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x04, 0x0A, 0x09, 0x09, 0x09, 0x19, 0x16, 0x1D, 0x1C, 0x1C, 0x1C, 0x1D, 0x37, 0x09, 0x33, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x47, 0x41, 0x09, 0x3F, 0x45, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x09, 0x0C, 0x00, 0x00, 0x04, 0x0A, 0x09, 0x09, 0x09, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x09, 0x09, 0x09, 0x09, 0x1E, 0x1D, 0x1C, 0x16, 0x09, 0x3B, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x47, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x09, 0x48, 0x08, 0x09, 0x09, 0x09, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x05, 0x09, 0x09, 0x09, 0x19, 0x4A, 0x09, 0x09, 0x39, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x47, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x09, 0x09, 0x09, 0x09, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x05, 0x09, 0x09, 0x09, 0x09, 0x2F, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x47, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x09, 0x09, 0x09, 0x4B, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x05, 0x09, 0x09, 0x09, 0x2F, 0x31, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x47, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0A, 0x09, 0x09, 0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x09, 0x09, 0x09, 0x36, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x47, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x09, 0x09, 0x09, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0A, 0x09, 0x09, 0x2F, 0x35, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x47, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x08, 0x09, 0x09, 0x07, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x0C, 0x09, 0x09, 0x2E, 0x3C, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x47, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x09, 0x09, 0x09, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x09, 0x09, 0x09, 0x36, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x47, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x09, 0x0A, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x08, 0x09, 0x09, 0x32, 0x30, 0x30, 0x30, 0x30, 0x47, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x05, 0x09, 0x09, 0x08, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0C, 0x09, 0x09, 0x2F, 0x35, 0x30, 0x47, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x41, 0x46, 0x0C, 0x09, 0x09, 0x0C, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x09, 0x09, 0x3A, 0x4C, 0x41, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x41, 0x09, 0x3F, 0x09, 0x09, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x09, 0x3F, 0x09, 0x41, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x3F, 0x3F, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x09, 0x3F, 0x3F, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x4D, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x4D, 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x49, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static GUI_CONST_STORAGE GUI_BITMAP _bmScaleR80 = {
+ 122, /* XSize */
+ 55, /* YSize */
+ 122, /* BytesPerLine */
+ 8, /* BitsPerPixel */
+ _acScaleR80, /* Pointer to picture data (indices) */
+ &_PalScaleR80 /* Pointer to palette */
+};
+
+#endif
+
+/*********************************************************************
+*
+* static data, shape of polygons
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_LARGE
+static const GUI_POINT _aNeedle_0[] = {
+ { MAG * ( 0), MAG * ( 0 + 125)},
+ { MAG * (-3), MAG * (-15 + 125)},
+ { MAG * (-3), MAG * (-65 + 125)},
+ { MAG * ( 3), MAG * (-65 + 125)},
+ { MAG * ( 3), MAG * (-15 + 125)},
+};
+#endif
+
+static const GUI_POINT _aNeedle_1[] = {
+ { MAG * ( 0), MAG * ( 0 + 125)},
+ { MAG * (-6), MAG * (-15 + 125)},
+ { MAG * ( 0), MAG * (-65 + 125)},
+ { MAG * ( 6), MAG * (-15 + 125)},
+};
+
+/*********************************************************************
+*
+* Structure containing information for drawing routine
+*
+**********************************************************************
+*/
+
+typedef struct {
+ GUI_AUTODEV_INFO AutoDevInfo; /* Information about what has to be displayed */
+ GUI_POINT aPoints[7]; /* Polygon data */
+ float Angle;
+} PARAM;
+
+/*********************************************************************
+*
+* static code, get angle
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_LARGE
+
+/*********************************************************************
+*
+* _GetAngle_0
+*/
+static float _GetAngle_0(int tDiff) {
+ if (tDiff < 6000)
+ return 225;
+ tDiff -= 6000;
+ if (tDiff < 15000) {
+ return 225 - 0.006 * tDiff ;
+ }
+ tDiff -= 15000;
+ if (tDiff < 7500) {
+ return 225 - 90 + 0.012 * tDiff ;
+ }
+ return 225;
+}
+
+/*********************************************************************
+*
+* _GetAngle_1
+*/
+static float _GetAngle_1(int tDiff) {
+ if (tDiff < 12000) {
+ return 225 - 0.0075 * tDiff ;
+ }
+ tDiff -= 18000;
+ if (tDiff > 0) {
+ return 225 - 90 + 0.0075 * tDiff;
+ }
+ return 225 - 90;
+}
+
+#else /* GUIDEMO_LARGE */
+
+/*********************************************************************
+*
+* _GetAngle
+*/
+static float _GetAngle(int tDiff) {
+ if (tDiff < 10000) {
+ return 225 - 0.009 * tDiff ;
+ }
+ tDiff -= 10000;
+ if (tDiff > 0) {
+ return 225 - 90 + 0.015 * tDiff;
+ }
+ return 225 - 90;
+}
+
+#endif
+
+/*********************************************************************
+*
+* static code, drawing routines
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_LARGE
+
+/*********************************************************************
+*
+* _Draw_0
+*/
+static void _Draw_0(void * p) {
+ PARAM* pParam = (PARAM *)p;
+ /* Fixed background */
+ if (pParam->AutoDevInfo.DrawFixed) {
+ GUI_ClearRect (1,
+ (LCD_YSIZE / 2 - 80) + _bmScaleR140.YSize,
+ 1 + _bmScaleR140.XSize - 1,
+ (LCD_YSIZE / 2 + 20));
+ GUI_DrawBitmap(&_bmScaleR140, 1, (LCD_YSIZE / 2 - 80));
+ }
+ /* Moving needle */
+ GUI_SetColor(GUI_WHITE);
+ GUI_AA_FillPolygon(pParam->aPoints,
+ countof(_aNeedle_0),
+ MAG * 101,
+ MAG * (LCD_YSIZE / 2 + 60));
+ /* Fixed foreground */
+ if (pParam->AutoDevInfo.DrawFixed) {
+ GUI_SetTextMode(GUI_TM_TRANS);
+ GUI_SetColor(GUI_RED);
+ GUI_SetFont(&GUI_Font24B_ASCII);
+ GUI_DispStringHCenterAt("RPM / 1000", 101, (LCD_YSIZE / 2 - 20));
+ }
+}
+
+/*********************************************************************
+*
+* _Draw_1
+*/
+static void _Draw_1(void * p) {
+ PARAM* pParam = (PARAM *)p;
+ /* Fixed background */
+ if (pParam->AutoDevInfo.DrawFixed) {
+ GUI_ClearRect (1,
+ (LCD_YSIZE / 2 + 21) + _bmScaleR140.YSize,
+ 1 + _bmScaleR140.XSize - 1,
+ (LCD_YSIZE / 2 + 121));
+ GUI_DrawBitmap(&_bmScaleR140, 1, (LCD_YSIZE / 2 + 21));
+ }
+ /* Moving needle */
+ GUI_SetColor(GUI_WHITE);
+ GUI_AA_FillPolygon(pParam->aPoints,
+ countof(_aNeedle_1),
+ MAG * 101,
+ MAG * (LCD_YSIZE / 2 + 161));
+ /* Fixed foreground */
+ if (pParam->AutoDevInfo.DrawFixed) {
+ GUI_SetTextMode(GUI_TM_TRANS);
+ GUI_SetColor(GUI_RED);
+ GUI_SetFont(&GUI_Font24B_ASCII);
+ GUI_DispStringHCenterAt("MPH / 10", 101, (LCD_YSIZE / 2 + 81));
+ }
+}
+
+#else /* GUIDEMO_LARGE */
+
+/*********************************************************************
+*
+* _MagnifyPolygon
+*/
+#if (GUIDEMO_TINY || (LCD_XSIZE < 200))
+static void _MagnifyPolygon(GUI_POINT* pPolygon, int NumPoints, float Mag) {
+ int j;
+ for (j = 0; j < NumPoints; j++) {
+ (pPolygon + j)->x = (pPolygon + j)->x * Mag;
+ (pPolygon + j)->y = (pPolygon + j)->y * Mag;
+ }
+}
+#endif
+
+/*********************************************************************
+*
+* _Draw
+*/
+static void _Draw(void* p) {
+ GUI_CONST_STORAGE GUI_BITMAP* pBitmap;
+ PARAM* pParam = (PARAM *)p;
+ int xMid = LCD_XSIZE >> 1;
+ int yMid = (LCD_YSIZE >> 1) + 3;
+ int bmSizeX, bmSizeY;
+ #if (GUIDEMO_TINY || (LCD_XSIZE < 200))
+ pBitmap = &_bmScaleR80;
+ #else
+ pBitmap = &_bmScaleR140;
+ #endif
+ bmSizeX = pBitmap->XSize;
+ bmSizeY = pBitmap->YSize;
+ /* Fixed background */
+ if (pParam->AutoDevInfo.DrawFixed) {
+ #if (GUIDEMO_TINY || (LCD_XSIZE < 200))
+ GUI_Clear();
+ GUI_DrawBitmap(pBitmap, xMid - (bmSizeX >> 1), (yMid - 35));
+ #else
+ GUI_ClearRect (xMid - (bmSizeX >> 1), (yMid - 50) + bmSizeY,
+ xMid + (bmSizeX >> 1) - 1, (yMid + 50));
+ GUI_DrawBitmap(pBitmap, xMid - (bmSizeX >> 1), (yMid - 50));
+ #endif
+ }
+ /* Moving needle */
+ GUI_SetColor(GUI_WHITE);
+ #if (GUIDEMO_TINY || (LCD_XSIZE < 200))
+ GUI_AA_FillPolygon(pParam->aPoints, countof(_aNeedle_1), MAG * xMid, MAG * (yMid + 49));
+ #else
+ GUI_AA_FillPolygon(pParam->aPoints, countof(_aNeedle_1), MAG * xMid, MAG * (yMid + 90));
+ #endif
+ /* Fixed foreground */
+ if (pParam->AutoDevInfo.DrawFixed) {
+ GUI_SetTextMode(GUI_TM_TRANS);
+ GUI_SetColor(GUI_RED);
+ #if (GUIDEMO_TINY || (LCD_XSIZE < 200))
+ GUI_SetFont(&GUI_Font13B_ASCII);
+ #else
+ GUI_SetFont(&GUI_Font24B_ASCII);
+ #endif
+ GUI_DispStringHCenterAt("MPH / 10", xMid, yMid + 10);
+ }
+}
+
+#endif
+
+/*********************************************************************
+*
+* static code, demo
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_LARGE
+
+/*********************************************************************
+*
+* _AutomotiveDemo
+*/
+static void _AutomotiveDemo(void) {
+ int Cnt, i;
+ int tDiff;
+ int tDiff1 = 0;
+ int tDiff2 = 0;
+ int t0, t1;
+ float Angle_0_Old, Angle_1_Old;
+ PARAM Param[2]; /* Parameters for drawing routine */
+ GUI_AUTODEV AutoDev[2]; /* Object for banding memory device */
+ /* Create GUI_AUTODEV-objects */
+ for (i = 0; i < 2; i++) {
+ GUI_MEMDEV_CreateAuto(&AutoDev[i]);
+ }
+ t0 = GUI_GetTime(); /* Get current time */
+ Angle_0_Old = Angle_1_Old = -1;
+ /* Show needle for a fixed time */
+ for (Cnt = 0; ((tDiff = GUI_GetTime() - t0) < 30000) && !GUIDEMO_CheckCancel(); Cnt++) {
+ /* Get values to display and calculate polygon for needle 1 */
+ Param[0].Angle = _GetAngle_0(tDiff)* DEG2RAD;
+ if (Angle_0_Old != Param[0].Angle) {
+ Angle_0_Old = Param[0].Angle;
+ t1 = GUI_GetTime();
+ GUI_RotatePolygon(Param[0].aPoints, _aNeedle_0, countof(_aNeedle_0), Param[0].Angle);
+ GUI_MEMDEV_DrawAuto(&AutoDev[0], &Param[0].AutoDevInfo, _Draw_0, &Param[0]);
+ tDiff1 = GUI_GetTime() - t1;
+ if (tDiff1 < 50) {
+ GUI_Delay(50 - tDiff1);
+ }
+ }
+ /* Get values to display and calculate polygon for needle 2 */
+ Param[1].Angle = _GetAngle_1(tDiff)* DEG2RAD;
+ if (Angle_1_Old != Param[1].Angle) {
+ Angle_1_Old = Param[1].Angle;
+ t1 = GUI_GetTime();
+ GUI_RotatePolygon(Param[1].aPoints, _aNeedle_1, countof(_aNeedle_1), Param[1].Angle);
+ GUI_MEMDEV_DrawAuto(&AutoDev[1], &Param[1].AutoDevInfo, _Draw_1, &Param[1]);
+ tDiff2 = GUI_GetTime() - t1;
+ }
+ /* Display used time */
+ if (!(Cnt % 20)) {
+ GUI_SetColor(GUI_WHITE);
+ GUI_SetTextMode(GUI_TM_NORMAL);
+ GUI_SetFont(&GUI_Font8_1);
+ GUI_DispStringAt("msec/picture:\n", 10, 10);
+ GUI_SetFont(&GUI_Font6x8);
+ GUI_GotoX(10);
+ GUI_DispDec(tDiff1, 3);
+ GUI_DispNextLine();
+ GUI_GotoX(10);
+ GUI_DispDec(tDiff2, 3);
+ }
+ }
+ GUIDEMO_Delay(1000);
+ /* Delete GUI_AUTODEV-objects */
+ for (i = 0; i < 2; i++) {
+ GUI_MEMDEV_DeleteAuto(&AutoDev[i]);
+ }
+}
+
+#else /* GUIDEMO_LARGE */
+
+/*********************************************************************
+*
+* _AutomotiveDemo
+*/
+static void _AutomotiveDemo(void) {
+ int Cnt;
+ int tDiff, t0;
+ float Angle_Old;
+ PARAM Param; /* Parameters for drawing routine */
+ GUI_AUTODEV AutoDev; /* Object for banding memory device */
+ /* Create GUI_AUTODEV-objects */
+ GUI_MEMDEV_CreateAuto(&AutoDev);
+ t0 = GUI_GetTime(); /* Get current time */
+ Angle_Old = -1;
+ /* Show needle for a fixed time */
+ for (Cnt = 0; ((tDiff = GUI_GetTime() - t0) < 16000) && !GUIDEMO_CheckCancel(); Cnt++) {
+ /* Get values to display and calculate polygon for needle 2 */
+ Param.Angle = _GetAngle(tDiff) * DEG2RAD;
+ if (Angle_Old != Param.Angle) {
+ Angle_Old = Param.Angle;
+ GUI_RotatePolygon(Param.aPoints, _aNeedle_1, countof(_aNeedle_1), Param.Angle);
+ #if (GUIDEMO_TINY || (LCD_XSIZE < 200))
+ _MagnifyPolygon(Param.aPoints, countof(_aNeedle_1), 0.575f);
+ #endif
+ GUI_MEMDEV_DrawAuto(&AutoDev, &Param.AutoDevInfo, _Draw, &Param);
+ }
+ }
+ GUIDEMO_Delay(1000);
+ /* Delete GUI_AUTODEV-objects */
+ GUI_MEMDEV_DeleteAuto(&AutoDev);
+}
+
+#endif
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIDEMO_Automotive
+*/
+void GUIDEMO_Automotive(void) {
+ /* Show intro message */
+ GUIDEMO_ShowIntro("Automotive samples",
+ "\nExamples for the"
+ "\nautomotive industrie");
+ GUIDEMO_NotifyStartNext();
+ GUI_SetBkColor(GUI_BLACK);
+ GUI_Clear();
+ /* Enable high resolution for antialiasing */
+ GUI_AA_EnableHiRes();
+ GUI_AA_SetFactor(MAG);
+ _AutomotiveDemo();
+}
+
+#else /* GUI_SUPPORT_MEMDEV | GUI_SUPPORT_AA */
+
+void GUIDEMO_Automotive(void) {}
+
+#endif /* GUI_SUPPORT_MEMDEV | GUI_SUPPORT_AA */
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Bitmap.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Bitmap.c
new file mode 100644
index 0000000..f46a3de
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Bitmap.c
@@ -0,0 +1,1125 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Bitmap.c
+Purpose : Draws bitmaps with and without compression
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+#include
+
+#if GUI_WINSUPPORT
+ #include "WM.h"
+#endif
+
+#define PI4 12.5663706f
+
+/*********************************************************************
+*
+* Bug bitmap
+*
+**********************************************************************
+*/
+
+static const GUI_COLOR _ColorsLadyBug[] = {
+ 0xFFFFFF, 0x000000, 0x0000ff, 0xFFCCCC
+};
+
+static const GUI_LOGPALETTE _PalLadyBug = {
+ 4, /* number of entries */
+ 0, /* No transparency */
+ &_ColorsLadyBug[0]
+};
+
+static const unsigned char _acLadyBug[] = {
+ /* RLE: 056 Pixels @ 000,000*/ 56, 0x00,
+ /* RLE: 007 Pixels @ 056,000*/ 7, 0x01,
+ /* RLE: 152 Pixels @ 063,000*/ 152, 0x00,
+ /* RLE: 009 Pixels @ 055,001*/ 9, 0x01,
+ /* RLE: 150 Pixels @ 064,001*/ 150, 0x00,
+ /* RLE: 010 Pixels @ 054,002*/ 10, 0x01,
+ /* RLE: 149 Pixels @ 064,002*/ 149, 0x00,
+ /* RLE: 012 Pixels @ 053,003*/ 12, 0x01,
+ /* RLE: 148 Pixels @ 065,003*/ 148, 0x00,
+ /* RLE: 012 Pixels @ 053,004*/ 12, 0x01,
+ /* RLE: 147 Pixels @ 065,004*/ 147, 0x00,
+ /* RLE: 013 Pixels @ 052,005*/ 13, 0x01,
+ /* RLE: 147 Pixels @ 065,005*/ 147, 0x00,
+ /* RLE: 013 Pixels @ 052,006*/ 13, 0x01,
+ /* RLE: 146 Pixels @ 065,006*/ 146, 0x00,
+ /* RLE: 014 Pixels @ 051,007*/ 14, 0x01,
+ /* RLE: 146 Pixels @ 065,007*/ 146, 0x00,
+ /* RLE: 014 Pixels @ 051,008*/ 14, 0x01,
+ /* RLE: 146 Pixels @ 065,008*/ 146, 0x00,
+ /* RLE: 014 Pixels @ 051,009*/ 14, 0x01,
+ /* RLE: 145 Pixels @ 065,009*/ 145, 0x00,
+ /* RLE: 014 Pixels @ 050,010*/ 14, 0x01,
+ /* RLE: 146 Pixels @ 064,010*/ 146, 0x00,
+ /* RLE: 014 Pixels @ 050,011*/ 14, 0x01,
+ /* RLE: 146 Pixels @ 064,011*/ 146, 0x00,
+ /* RLE: 014 Pixels @ 050,012*/ 14, 0x01,
+ /* RLE: 146 Pixels @ 064,012*/ 146, 0x00,
+ /* RLE: 013 Pixels @ 050,013*/ 13, 0x01,
+ /* RLE: 146 Pixels @ 063,013*/ 146, 0x00,
+ /* RLE: 014 Pixels @ 049,014*/ 14, 0x01,
+ /* RLE: 146 Pixels @ 063,014*/ 146, 0x00,
+ /* RLE: 013 Pixels @ 049,015*/ 13, 0x01,
+ /* RLE: 147 Pixels @ 062,015*/ 147, 0x00,
+ /* RLE: 013 Pixels @ 049,016*/ 13, 0x01,
+ /* RLE: 147 Pixels @ 062,016*/ 147, 0x00,
+ /* RLE: 012 Pixels @ 049,017*/ 12, 0x01,
+ /* RLE: 148 Pixels @ 061,017*/ 148, 0x00,
+ /* RLE: 012 Pixels @ 049,018*/ 12, 0x01,
+ /* RLE: 148 Pixels @ 061,018*/ 148, 0x00,
+ /* RLE: 012 Pixels @ 049,019*/ 12, 0x01,
+ /* RLE: 147 Pixels @ 061,019*/ 147, 0x00,
+ /* RLE: 012 Pixels @ 048,020*/ 12, 0x01,
+ /* RLE: 148 Pixels @ 060,020*/ 148, 0x00,
+ /* RLE: 012 Pixels @ 048,021*/ 12, 0x01,
+ /* RLE: 148 Pixels @ 060,021*/ 148, 0x00,
+ /* RLE: 011 Pixels @ 048,022*/ 11, 0x01,
+ /* RLE: 149 Pixels @ 059,022*/ 149, 0x00,
+ /* RLE: 011 Pixels @ 048,023*/ 11, 0x01,
+ /* RLE: 149 Pixels @ 059,023*/ 149, 0x00,
+ /* RLE: 011 Pixels @ 048,024*/ 11, 0x01,
+ /* RLE: 149 Pixels @ 059,024*/ 149, 0x00,
+ /* RLE: 010 Pixels @ 048,025*/ 10, 0x01,
+ /* RLE: 150 Pixels @ 058,025*/ 150, 0x00,
+ /* RLE: 010 Pixels @ 048,026*/ 10, 0x01,
+ /* RLE: 150 Pixels @ 058,026*/ 150, 0x00,
+ /* RLE: 010 Pixels @ 048,027*/ 10, 0x01,
+ /* RLE: 150 Pixels @ 058,027*/ 150, 0x00,
+ /* RLE: 009 Pixels @ 048,028*/ 9, 0x01,
+ /* RLE: 152 Pixels @ 057,028*/ 152, 0x00,
+ /* RLE: 008 Pixels @ 049,029*/ 8, 0x01,
+ /* RLE: 152 Pixels @ 057,029*/ 152, 0x00,
+ /* RLE: 008 Pixels @ 049,030*/ 8, 0x01,
+ /* RLE: 152 Pixels @ 057,030*/ 152, 0x00,
+ /* RLE: 008 Pixels @ 049,031*/ 8, 0x01,
+ /* RLE: 152 Pixels @ 057,031*/ 152, 0x00,
+ /* RLE: 008 Pixels @ 049,032*/ 8, 0x01,
+ /* RLE: 152 Pixels @ 057,032*/ 152, 0x00,
+ /* RLE: 008 Pixels @ 049,033*/ 8, 0x01,
+ /* RLE: 152 Pixels @ 057,033*/ 152, 0x00,
+ /* RLE: 008 Pixels @ 049,034*/ 8, 0x01,
+ /* RLE: 153 Pixels @ 057,034*/ 153, 0x00,
+ /* RLE: 007 Pixels @ 050,035*/ 7, 0x01,
+ /* RLE: 153 Pixels @ 057,035*/ 153, 0x00,
+ /* RLE: 007 Pixels @ 050,036*/ 7, 0x01,
+ /* RLE: 153 Pixels @ 057,036*/ 153, 0x00,
+ /* RLE: 007 Pixels @ 050,037*/ 7, 0x01,
+ /* RLE: 153 Pixels @ 057,037*/ 153, 0x00,
+ /* RLE: 007 Pixels @ 050,038*/ 7, 0x01,
+ /* RLE: 154 Pixels @ 057,038*/ 154, 0x00,
+ /* RLE: 006 Pixels @ 051,039*/ 6, 0x01,
+ /* RLE: 154 Pixels @ 057,039*/ 154, 0x00,
+ /* RLE: 007 Pixels @ 051,040*/ 7, 0x01,
+ /* RLE: 154 Pixels @ 058,040*/ 154, 0x00,
+ /* RLE: 006 Pixels @ 052,041*/ 6, 0x01,
+ /* RLE: 154 Pixels @ 058,041*/ 154, 0x00,
+ /* RLE: 007 Pixels @ 052,042*/ 7, 0x01,
+ /* RLE: 154 Pixels @ 059,042*/ 154, 0x00,
+ /* RLE: 006 Pixels @ 053,043*/ 6, 0x01,
+ /* RLE: 154 Pixels @ 059,043*/ 154, 0x00,
+ /* RLE: 007 Pixels @ 053,044*/ 7, 0x01,
+ /* RLE: 049 Pixels @ 060,044*/ 49, 0x00,
+ /* RLE: 010 Pixels @ 109,044*/ 10, 0x01,
+ /* RLE: 095 Pixels @ 119,044*/ 95, 0x00,
+ /* RLE: 006 Pixels @ 054,045*/ 6, 0x01,
+ /* RLE: 046 Pixels @ 060,045*/ 46, 0x00,
+ /* RLE: 014 Pixels @ 106,045*/ 14, 0x01,
+ /* RLE: 095 Pixels @ 120,045*/ 95, 0x00,
+ /* RLE: 006 Pixels @ 055,046*/ 6, 0x01,
+ /* RLE: 043 Pixels @ 061,046*/ 43, 0x00,
+ /* RLE: 017 Pixels @ 104,046*/ 17, 0x01,
+ /* RLE: 094 Pixels @ 121,046*/ 94, 0x00,
+ /* RLE: 007 Pixels @ 055,047*/ 7, 0x01,
+ /* RLE: 040 Pixels @ 062,047*/ 40, 0x00,
+ /* RLE: 020 Pixels @ 102,047*/ 20, 0x01,
+ /* RLE: 054 Pixels @ 122,047*/ 54, 0x00,
+ /* RLE: 019 Pixels @ 016,048*/ 19, 0x01,
+ /* RLE: 021 Pixels @ 035,048*/ 21, 0x00,
+ /* RLE: 006 Pixels @ 056,048*/ 6, 0x01,
+ /* RLE: 004 Pixels @ 062,048*/ 4, 0x00,
+ /* RLE: 006 Pixels @ 066,048*/ 6, 0x01,
+ /* RLE: 029 Pixels @ 072,048*/ 29, 0x00,
+ /* RLE: 022 Pixels @ 101,048*/ 22, 0x01,
+ /* RLE: 049 Pixels @ 123,048*/ 49, 0x00,
+ /* RLE: 027 Pixels @ 012,049*/ 27, 0x01,
+ /* RLE: 018 Pixels @ 039,049*/ 18, 0x00,
+ /* RLE: 006 Pixels @ 057,049*/ 6, 0x01,
+ /* RLE: 001 Pixels @ 063,049*/ 1, 0x00,
+ /* RLE: 009 Pixels @ 064,049*/ 9, 0x01,
+ /* RLE: 026 Pixels @ 073,049*/ 26, 0x00,
+ /* RLE: 024 Pixels @ 099,049*/ 24, 0x01,
+ /* RLE: 046 Pixels @ 123,049*/ 46, 0x00,
+ /* RLE: 032 Pixels @ 009,050*/ 32, 0x01,
+ /* RLE: 017 Pixels @ 041,050*/ 17, 0x00,
+ /* RLE: 016 Pixels @ 058,050*/ 16, 0x01,
+ /* RLE: 024 Pixels @ 074,050*/ 24, 0x00,
+ /* RLE: 026 Pixels @ 098,050*/ 26, 0x01,
+ /* RLE: 043 Pixels @ 124,050*/ 43, 0x00,
+ /* RLE: 036 Pixels @ 007,051*/ 36, 0x01,
+ /* RLE: 015 Pixels @ 043,051*/ 15, 0x00,
+ /* RLE: 017 Pixels @ 058,051*/ 17, 0x01,
+ /* RLE: 022 Pixels @ 075,051*/ 22, 0x00,
+ /* RLE: 027 Pixels @ 097,051*/ 27, 0x01,
+ /* RLE: 040 Pixels @ 124,051*/ 40, 0x00,
+ /* RLE: 041 Pixels @ 004,052*/ 41, 0x01,
+ /* RLE: 014 Pixels @ 045,052*/ 14, 0x00,
+ /* RLE: 016 Pixels @ 059,052*/ 16, 0x01,
+ /* RLE: 021 Pixels @ 075,052*/ 21, 0x00,
+ /* RLE: 016 Pixels @ 096,052*/ 16, 0x01,
+ /* RLE: 005 Pixels @ 112,052*/ 5, 0x00,
+ /* RLE: 012 Pixels @ 117,052*/ 12, 0x01,
+ /* RLE: 034 Pixels @ 129,052*/ 34, 0x00,
+ /* RLE: 044 Pixels @ 003,053*/ 44, 0x01,
+ /* RLE: 010 Pixels @ 047,053*/ 10, 0x00,
+ /* RLE: 018 Pixels @ 057,053*/ 18, 0x01,
+ /* RLE: 020 Pixels @ 075,053*/ 20, 0x00,
+ /* RLE: 016 Pixels @ 095,053*/ 16, 0x01,
+ /* RLE: 007 Pixels @ 111,053*/ 7, 0x00,
+ /* RLE: 013 Pixels @ 118,053*/ 13, 0x01,
+ /* RLE: 031 Pixels @ 131,053*/ 31, 0x00,
+ /* RLE: 046 Pixels @ 002,054*/ 46, 0x01,
+ /* RLE: 008 Pixels @ 048,054*/ 8, 0x00,
+ /* RLE: 020 Pixels @ 056,054*/ 20, 0x01,
+ /* RLE: 018 Pixels @ 076,054*/ 18, 0x00,
+ /* RLE: 015 Pixels @ 094,054*/ 15, 0x01,
+ /* RLE: 008 Pixels @ 109,054*/ 8, 0x00,
+ /* RLE: 016 Pixels @ 117,054*/ 16, 0x01,
+ /* RLE: 028 Pixels @ 133,054*/ 28, 0x00,
+ /* RLE: 049 Pixels @ 001,055*/ 49, 0x01,
+ /* RLE: 005 Pixels @ 050,055*/ 5, 0x00,
+ /* RLE: 021 Pixels @ 055,055*/ 21, 0x01,
+ /* RLE: 003 Pixels @ 076,055*/ 3, 0x00,
+ /* RLE: 030 Pixels @ 079,055*/ 30, 0x01,
+ /* RLE: 006 Pixels @ 109,055*/ 6, 0x00,
+ /* RLE: 018 Pixels @ 115,055*/ 18, 0x01,
+ /* RLE: 027 Pixels @ 133,055*/ 27, 0x00,
+ /* RLE: 028 Pixels @ 000,056*/ 28, 0x01,
+ /* RLE: 012 Pixels @ 028,056*/ 12, 0x00,
+ /* RLE: 011 Pixels @ 040,056*/ 11, 0x01,
+ /* RLE: 003 Pixels @ 051,056*/ 3, 0x00,
+ /* RLE: 054 Pixels @ 054,056*/ 54, 0x01,
+ /* RLE: 006 Pixels @ 108,056*/ 6, 0x00,
+ /* RLE: 020 Pixels @ 114,056*/ 20, 0x01,
+ /* RLE: 026 Pixels @ 134,056*/ 26, 0x00,
+ /* RLE: 025 Pixels @ 000,057*/ 25, 0x01,
+ /* RLE: 018 Pixels @ 025,057*/ 18, 0x00,
+ /* RLE: 009 Pixels @ 043,057*/ 9, 0x01,
+ /* ABS: 002 Pixels @ 052,057*/ 0, 2, 0x00,
+ /* RLE: 053 Pixels @ 054,057*/ 53, 0x01,
+ /* RLE: 005 Pixels @ 107,057*/ 5, 0x00,
+ /* RLE: 023 Pixels @ 112,057*/ 23, 0x01,
+ /* RLE: 025 Pixels @ 135,057*/ 25, 0x00,
+ /* RLE: 023 Pixels @ 000,058*/ 23, 0x01,
+ /* RLE: 022 Pixels @ 023,058*/ 22, 0x00,
+ /* RLE: 061 Pixels @ 045,058*/ 61, 0x01,
+ /* RLE: 005 Pixels @ 106,058*/ 5, 0x00,
+ /* RLE: 024 Pixels @ 111,058*/ 24, 0x01,
+ /* RLE: 025 Pixels @ 135,058*/ 25, 0x00,
+ /* RLE: 021 Pixels @ 000,059*/ 21, 0x01,
+ /* RLE: 026 Pixels @ 021,059*/ 26, 0x00,
+ /* RLE: 058 Pixels @ 047,059*/ 58, 0x01,
+ /* RLE: 004 Pixels @ 105,059*/ 4, 0x00,
+ /* RLE: 027 Pixels @ 109,059*/ 27, 0x01,
+ /* RLE: 024 Pixels @ 136,059*/ 24, 0x00,
+ /* RLE: 019 Pixels @ 000,060*/ 19, 0x01,
+ /* RLE: 029 Pixels @ 019,060*/ 29, 0x00,
+ /* RLE: 059 Pixels @ 048,060*/ 59, 0x01,
+ /* RLE: 001 Pixels @ 107,060*/ 1, 0x00,
+ /* RLE: 029 Pixels @ 108,060*/ 29, 0x01,
+ /* RLE: 023 Pixels @ 137,060*/ 23, 0x00,
+ /* RLE: 017 Pixels @ 000,061*/ 17, 0x01,
+ /* RLE: 033 Pixels @ 017,061*/ 33, 0x00,
+ /* RLE: 030 Pixels @ 050,061*/ 30, 0x01,
+ /* RLE: 004 Pixels @ 080,061*/ 4, 0x03,
+ /* RLE: 053 Pixels @ 084,061*/ 53, 0x01,
+ /* RLE: 023 Pixels @ 137,061*/ 23, 0x00,
+ /* RLE: 015 Pixels @ 000,062*/ 15, 0x01,
+ /* RLE: 036 Pixels @ 015,062*/ 36, 0x00,
+ /* RLE: 028 Pixels @ 051,062*/ 28, 0x01,
+ /* RLE: 005 Pixels @ 079,062*/ 5, 0x03,
+ /* RLE: 038 Pixels @ 084,062*/ 38, 0x01,
+ /* RLE: 001 Pixels @ 122,062*/ 1, 0x00,
+ /* RLE: 014 Pixels @ 123,062*/ 14, 0x01,
+ /* RLE: 024 Pixels @ 137,062*/ 24, 0x00,
+ /* RLE: 012 Pixels @ 001,063*/ 12, 0x01,
+ /* RLE: 038 Pixels @ 013,063*/ 38, 0x00,
+ /* RLE: 027 Pixels @ 051,063*/ 27, 0x01,
+ /* RLE: 006 Pixels @ 078,063*/ 6, 0x03,
+ /* RLE: 009 Pixels @ 084,063*/ 9, 0x01,
+ /* RLE: 005 Pixels @ 093,063*/ 5, 0x02,
+ /* RLE: 023 Pixels @ 098,063*/ 23, 0x01,
+ /* ABS: 002 Pixels @ 121,063*/ 0, 2, 0x00,
+ /* RLE: 015 Pixels @ 123,063*/ 15, 0x01,
+ /* RLE: 025 Pixels @ 138,063*/ 25, 0x00,
+ /* RLE: 007 Pixels @ 003,064*/ 7, 0x01,
+ /* RLE: 041 Pixels @ 010,064*/ 41, 0x00,
+ /* RLE: 027 Pixels @ 051,064*/ 27, 0x01,
+ /* RLE: 006 Pixels @ 078,064*/ 6, 0x03,
+ /* RLE: 008 Pixels @ 084,064*/ 8, 0x01,
+ /* RLE: 011 Pixels @ 092,064*/ 11, 0x02,
+ /* RLE: 017 Pixels @ 103,064*/ 17, 0x01,
+ /* RLE: 004 Pixels @ 120,064*/ 4, 0x00,
+ /* RLE: 014 Pixels @ 124,064*/ 14, 0x01,
+ /* RLE: 072 Pixels @ 138,064*/ 72, 0x00,
+ /* RLE: 028 Pixels @ 050,065*/ 28, 0x01,
+ /* RLE: 006 Pixels @ 078,065*/ 6, 0x03,
+ /* RLE: 006 Pixels @ 084,065*/ 6, 0x01,
+ /* RLE: 015 Pixels @ 090,065*/ 15, 0x02,
+ /* RLE: 014 Pixels @ 105,065*/ 14, 0x01,
+ /* RLE: 006 Pixels @ 119,065*/ 6, 0x00,
+ /* RLE: 013 Pixels @ 125,065*/ 13, 0x01,
+ /* RLE: 072 Pixels @ 138,065*/ 72, 0x00,
+ /* RLE: 028 Pixels @ 050,066*/ 28, 0x01,
+ /* RLE: 006 Pixels @ 078,066*/ 6, 0x03,
+ /* RLE: 006 Pixels @ 084,066*/ 6, 0x01,
+ /* RLE: 017 Pixels @ 090,066*/ 17, 0x02,
+ /* RLE: 012 Pixels @ 107,066*/ 12, 0x01,
+ /* RLE: 007 Pixels @ 119,066*/ 7, 0x00,
+ /* RLE: 013 Pixels @ 126,066*/ 13, 0x01,
+ /* RLE: 006 Pixels @ 139,066*/ 6, 0x00,
+ /* ABS: 002 Pixels @ 145,066*/ 0, 2, 0x11,
+ /* RLE: 063 Pixels @ 147,066*/ 63, 0x00,
+ /* RLE: 028 Pixels @ 050,067*/ 28, 0x01,
+ /* RLE: 005 Pixels @ 078,067*/ 5, 0x03,
+ /* RLE: 006 Pixels @ 083,067*/ 6, 0x01,
+ /* RLE: 011 Pixels @ 089,067*/ 11, 0x02,
+ /* ABS: 002 Pixels @ 100,067*/ 0, 2, 0x11,
+ /* RLE: 006 Pixels @ 102,067*/ 6, 0x02,
+ /* RLE: 010 Pixels @ 108,067*/ 10, 0x01,
+ /* RLE: 009 Pixels @ 118,067*/ 9, 0x00,
+ /* RLE: 013 Pixels @ 127,067*/ 13, 0x01,
+ /* RLE: 004 Pixels @ 140,067*/ 4, 0x00,
+ /* RLE: 004 Pixels @ 144,067*/ 4, 0x01,
+ /* RLE: 062 Pixels @ 148,067*/ 62, 0x00,
+ /* RLE: 038 Pixels @ 050,068*/ 38, 0x01,
+ /* RLE: 010 Pixels @ 088,068*/ 10, 0x02,
+ /* RLE: 006 Pixels @ 098,068*/ 6, 0x01,
+ /* RLE: 006 Pixels @ 104,068*/ 6, 0x02,
+ /* RLE: 007 Pixels @ 110,068*/ 7, 0x01,
+ /* RLE: 012 Pixels @ 117,068*/ 12, 0x00,
+ /* RLE: 012 Pixels @ 129,068*/ 12, 0x01,
+ /* RLE: 003 Pixels @ 141,068*/ 3, 0x00,
+ /* RLE: 004 Pixels @ 144,068*/ 4, 0x01,
+ /* RLE: 062 Pixels @ 148,068*/ 62, 0x00,
+ /* RLE: 038 Pixels @ 050,069*/ 38, 0x01,
+ /* RLE: 009 Pixels @ 088,069*/ 9, 0x02,
+ /* RLE: 008 Pixels @ 097,069*/ 8, 0x01,
+ /* RLE: 006 Pixels @ 105,069*/ 6, 0x02,
+ /* RLE: 007 Pixels @ 111,069*/ 7, 0x01,
+ /* RLE: 013 Pixels @ 118,069*/ 13, 0x00,
+ /* RLE: 011 Pixels @ 131,069*/ 11, 0x01,
+ /* RLE: 001 Pixels @ 142,069*/ 1, 0x00,
+ /* RLE: 006 Pixels @ 143,069*/ 6, 0x01,
+ /* RLE: 061 Pixels @ 149,069*/ 61, 0x00,
+ /* RLE: 037 Pixels @ 050,070*/ 37, 0x01,
+ /* RLE: 009 Pixels @ 087,070*/ 9, 0x02,
+ /* RLE: 010 Pixels @ 096,070*/ 10, 0x01,
+ /* RLE: 006 Pixels @ 106,070*/ 6, 0x02,
+ /* RLE: 006 Pixels @ 112,070*/ 6, 0x01,
+ /* RLE: 010 Pixels @ 118,070*/ 10, 0x00,
+ /* RLE: 021 Pixels @ 128,070*/ 21, 0x01,
+ /* RLE: 061 Pixels @ 149,070*/ 61, 0x00,
+ /* RLE: 037 Pixels @ 050,071*/ 37, 0x01,
+ /* RLE: 008 Pixels @ 087,071*/ 8, 0x02,
+ /* RLE: 012 Pixels @ 095,071*/ 12, 0x01,
+ /* RLE: 006 Pixels @ 107,071*/ 6, 0x02,
+ /* RLE: 006 Pixels @ 113,071*/ 6, 0x01,
+ /* RLE: 007 Pixels @ 119,071*/ 7, 0x00,
+ /* RLE: 023 Pixels @ 126,071*/ 23, 0x01,
+ /* RLE: 061 Pixels @ 149,071*/ 61, 0x00,
+ /* RLE: 037 Pixels @ 050,072*/ 37, 0x01,
+ /* RLE: 008 Pixels @ 087,072*/ 8, 0x02,
+ /* RLE: 012 Pixels @ 095,072*/ 12, 0x01,
+ /* RLE: 007 Pixels @ 107,072*/ 7, 0x02,
+ /* RLE: 006 Pixels @ 114,072*/ 6, 0x01,
+ /* RLE: 005 Pixels @ 120,072*/ 5, 0x00,
+ /* RLE: 025 Pixels @ 125,072*/ 25, 0x01,
+ /* RLE: 060 Pixels @ 150,072*/ 60, 0x00,
+ /* RLE: 036 Pixels @ 050,073*/ 36, 0x01,
+ /* RLE: 008 Pixels @ 086,073*/ 8, 0x02,
+ /* RLE: 014 Pixels @ 094,073*/ 14, 0x01,
+ /* RLE: 007 Pixels @ 108,073*/ 7, 0x02,
+ /* RLE: 006 Pixels @ 115,073*/ 6, 0x01,
+ /* ABS: 002 Pixels @ 121,073*/ 0, 2, 0x00,
+ /* RLE: 027 Pixels @ 123,073*/ 27, 0x01,
+ /* RLE: 060 Pixels @ 150,073*/ 60, 0x00,
+ /* RLE: 037 Pixels @ 050,074*/ 37, 0x01,
+ /* RLE: 007 Pixels @ 087,074*/ 7, 0x02,
+ /* RLE: 014 Pixels @ 094,074*/ 14, 0x01,
+ /* RLE: 007 Pixels @ 108,074*/ 7, 0x02,
+ /* RLE: 006 Pixels @ 115,074*/ 6, 0x01,
+ /* RLE: 001 Pixels @ 121,074*/ 1, 0x00,
+ /* RLE: 028 Pixels @ 122,074*/ 28, 0x01,
+ /* RLE: 062 Pixels @ 150,074*/ 62, 0x00,
+ /* RLE: 013 Pixels @ 052,075*/ 13, 0x01,
+ /* RLE: 004 Pixels @ 065,075*/ 4, 0x03,
+ /* RLE: 018 Pixels @ 069,075*/ 18, 0x01,
+ /* RLE: 008 Pixels @ 087,075*/ 8, 0x02,
+ /* RLE: 013 Pixels @ 095,075*/ 13, 0x01,
+ /* RLE: 008 Pixels @ 108,075*/ 8, 0x02,
+ /* RLE: 033 Pixels @ 116,075*/ 33, 0x01,
+ /* RLE: 068 Pixels @ 149,075*/ 68, 0x00,
+ /* RLE: 007 Pixels @ 057,076*/ 7, 0x01,
+ /* RLE: 006 Pixels @ 064,076*/ 6, 0x03,
+ /* RLE: 018 Pixels @ 070,076*/ 18, 0x01,
+ /* RLE: 007 Pixels @ 088,076*/ 7, 0x02,
+ /* RLE: 013 Pixels @ 095,076*/ 13, 0x01,
+ /* RLE: 009 Pixels @ 108,076*/ 9, 0x02,
+ /* RLE: 019 Pixels @ 117,076*/ 19, 0x01,
+ /* RLE: 003 Pixels @ 136,076*/ 3, 0x00,
+ /* RLE: 009 Pixels @ 139,076*/ 9, 0x01,
+ /* RLE: 069 Pixels @ 148,076*/ 69, 0x00,
+ /* RLE: 007 Pixels @ 057,077*/ 7, 0x01,
+ /* RLE: 006 Pixels @ 064,077*/ 6, 0x03,
+ /* RLE: 019 Pixels @ 070,077*/ 19, 0x01,
+ /* RLE: 007 Pixels @ 089,077*/ 7, 0x02,
+ /* RLE: 012 Pixels @ 096,077*/ 12, 0x01,
+ /* RLE: 009 Pixels @ 108,077*/ 9, 0x02,
+ /* RLE: 017 Pixels @ 117,077*/ 17, 0x01,
+ /* RLE: 006 Pixels @ 134,077*/ 6, 0x00,
+ /* RLE: 008 Pixels @ 140,077*/ 8, 0x01,
+ /* RLE: 069 Pixels @ 148,077*/ 69, 0x00,
+ /* RLE: 007 Pixels @ 057,078*/ 7, 0x01,
+ /* RLE: 006 Pixels @ 064,078*/ 6, 0x03,
+ /* RLE: 020 Pixels @ 070,078*/ 20, 0x01,
+ /* RLE: 007 Pixels @ 090,078*/ 7, 0x02,
+ /* RLE: 011 Pixels @ 097,078*/ 11, 0x01,
+ /* RLE: 010 Pixels @ 108,078*/ 10, 0x02,
+ /* RLE: 015 Pixels @ 118,078*/ 15, 0x01,
+ /* RLE: 008 Pixels @ 133,078*/ 8, 0x00,
+ /* RLE: 007 Pixels @ 141,078*/ 7, 0x01,
+ /* RLE: 069 Pixels @ 148,078*/ 69, 0x00,
+ /* RLE: 007 Pixels @ 057,079*/ 7, 0x01,
+ /* RLE: 005 Pixels @ 064,079*/ 5, 0x03,
+ /* RLE: 013 Pixels @ 069,079*/ 13, 0x01,
+ /* RLE: 001 Pixels @ 082,079*/ 1, 0x02,
+ /* RLE: 008 Pixels @ 083,079*/ 8, 0x01,
+ /* RLE: 007 Pixels @ 091,079*/ 7, 0x02,
+ /* RLE: 010 Pixels @ 098,079*/ 10, 0x01,
+ /* RLE: 010 Pixels @ 108,079*/ 10, 0x02,
+ /* RLE: 014 Pixels @ 118,079*/ 14, 0x01,
+ /* RLE: 010 Pixels @ 132,079*/ 10, 0x00,
+ /* RLE: 006 Pixels @ 142,079*/ 6, 0x01,
+ /* RLE: 069 Pixels @ 148,079*/ 69, 0x00,
+ /* RLE: 007 Pixels @ 057,080*/ 7, 0x01,
+ /* RLE: 005 Pixels @ 064,080*/ 5, 0x03,
+ /* RLE: 008 Pixels @ 069,080*/ 8, 0x01,
+ /* RLE: 008 Pixels @ 077,080*/ 8, 0x02,
+ /* RLE: 007 Pixels @ 085,080*/ 7, 0x01,
+ /* RLE: 008 Pixels @ 092,080*/ 8, 0x02,
+ /* RLE: 007 Pixels @ 100,080*/ 7, 0x01,
+ /* RLE: 012 Pixels @ 107,080*/ 12, 0x02,
+ /* RLE: 012 Pixels @ 119,080*/ 12, 0x01,
+ /* RLE: 011 Pixels @ 131,080*/ 11, 0x00,
+ /* RLE: 007 Pixels @ 142,080*/ 7, 0x01,
+ /* RLE: 067 Pixels @ 149,080*/ 67, 0x00,
+ /* RLE: 008 Pixels @ 056,081*/ 8, 0x01,
+ /* RLE: 004 Pixels @ 064,081*/ 4, 0x03,
+ /* RLE: 006 Pixels @ 068,081*/ 6, 0x01,
+ /* RLE: 013 Pixels @ 074,081*/ 13, 0x02,
+ /* RLE: 007 Pixels @ 087,081*/ 7, 0x01,
+ /* RLE: 025 Pixels @ 094,081*/ 25, 0x02,
+ /* RLE: 011 Pixels @ 119,081*/ 11, 0x01,
+ /* RLE: 013 Pixels @ 130,081*/ 13, 0x00,
+ /* RLE: 006 Pixels @ 143,081*/ 6, 0x01,
+ /* RLE: 067 Pixels @ 149,081*/ 67, 0x00,
+ /* RLE: 016 Pixels @ 056,082*/ 16, 0x01,
+ /* RLE: 016 Pixels @ 072,082*/ 16, 0x02,
+ /* RLE: 007 Pixels @ 088,082*/ 7, 0x01,
+ /* RLE: 016 Pixels @ 095,082*/ 16, 0x02,
+ /* RLE: 005 Pixels @ 111,082*/ 5, 0x01,
+ /* RLE: 004 Pixels @ 116,082*/ 4, 0x02,
+ /* RLE: 009 Pixels @ 120,082*/ 9, 0x01,
+ /* RLE: 014 Pixels @ 129,082*/ 14, 0x00,
+ /* RLE: 007 Pixels @ 143,082*/ 7, 0x01,
+ /* RLE: 006 Pixels @ 150,082*/ 6, 0x00,
+ /* ABS: 002 Pixels @ 156,082*/ 0, 2, 0x11,
+ /* RLE: 058 Pixels @ 158,082*/ 58, 0x00,
+ /* RLE: 014 Pixels @ 056,083*/ 14, 0x01,
+ /* RLE: 019 Pixels @ 070,083*/ 19, 0x02,
+ /* RLE: 007 Pixels @ 089,083*/ 7, 0x01,
+ /* RLE: 013 Pixels @ 096,083*/ 13, 0x02,
+ /* RLE: 008 Pixels @ 109,083*/ 8, 0x01,
+ /* RLE: 003 Pixels @ 117,083*/ 3, 0x02,
+ /* RLE: 009 Pixels @ 120,083*/ 9, 0x01,
+ /* RLE: 015 Pixels @ 129,083*/ 15, 0x00,
+ /* RLE: 007 Pixels @ 144,083*/ 7, 0x01,
+ /* RLE: 004 Pixels @ 151,083*/ 4, 0x00,
+ /* RLE: 003 Pixels @ 155,083*/ 3, 0x01,
+ /* RLE: 058 Pixels @ 158,083*/ 58, 0x00,
+ /* RLE: 013 Pixels @ 056,084*/ 13, 0x01,
+ /* RLE: 007 Pixels @ 069,084*/ 7, 0x02,
+ /* RLE: 007 Pixels @ 076,084*/ 7, 0x01,
+ /* RLE: 007 Pixels @ 083,084*/ 7, 0x02,
+ /* RLE: 007 Pixels @ 090,084*/ 7, 0x01,
+ /* RLE: 011 Pixels @ 097,084*/ 11, 0x02,
+ /* RLE: 010 Pixels @ 108,084*/ 10, 0x01,
+ /* RLE: 003 Pixels @ 118,084*/ 3, 0x02,
+ /* RLE: 007 Pixels @ 121,084*/ 7, 0x01,
+ /* RLE: 016 Pixels @ 128,084*/ 16, 0x00,
+ /* RLE: 007 Pixels @ 144,084*/ 7, 0x01,
+ /* RLE: 004 Pixels @ 151,084*/ 4, 0x00,
+ /* RLE: 004 Pixels @ 155,084*/ 4, 0x01,
+ /* RLE: 057 Pixels @ 159,084*/ 57, 0x00,
+ /* RLE: 012 Pixels @ 056,085*/ 12, 0x01,
+ /* RLE: 007 Pixels @ 068,085*/ 7, 0x02,
+ /* RLE: 009 Pixels @ 075,085*/ 9, 0x01,
+ /* RLE: 008 Pixels @ 084,085*/ 8, 0x02,
+ /* RLE: 006 Pixels @ 092,085*/ 6, 0x01,
+ /* RLE: 009 Pixels @ 098,085*/ 9, 0x02,
+ /* RLE: 011 Pixels @ 107,085*/ 11, 0x01,
+ /* RLE: 003 Pixels @ 118,085*/ 3, 0x02,
+ /* RLE: 006 Pixels @ 121,085*/ 6, 0x01,
+ /* RLE: 018 Pixels @ 127,085*/ 18, 0x00,
+ /* RLE: 008 Pixels @ 145,085*/ 8, 0x01,
+ /* RLE: 001 Pixels @ 153,085*/ 1, 0x00,
+ /* RLE: 006 Pixels @ 154,085*/ 6, 0x01,
+ /* RLE: 056 Pixels @ 000,086*/ 56, 0x00,
+ /* RLE: 012 Pixels @ 056,086*/ 12, 0x01,
+ /* RLE: 006 Pixels @ 068,086*/ 6, 0x02,
+ /* RLE: 010 Pixels @ 074,086*/ 10, 0x01,
+ /* RLE: 009 Pixels @ 084,086*/ 9, 0x02,
+ /* RLE: 006 Pixels @ 093,086*/ 6, 0x01,
+ /* RLE: 008 Pixels @ 099,086*/ 8, 0x02,
+ /* RLE: 012 Pixels @ 107,086*/ 12, 0x01,
+ /* RLE: 003 Pixels @ 119,086*/ 3, 0x02,
+ /* RLE: 005 Pixels @ 122,086*/ 5, 0x01,
+ /* RLE: 018 Pixels @ 127,086*/ 18, 0x00,
+ /* RLE: 015 Pixels @ 145,086*/ 15, 0x01,
+ /* RLE: 056 Pixels @ 000,087*/ 56, 0x00,
+ /* RLE: 011 Pixels @ 056,087*/ 11, 0x01,
+ /* RLE: 006 Pixels @ 067,087*/ 6, 0x02,
+ /* RLE: 012 Pixels @ 073,087*/ 12, 0x01,
+ /* RLE: 009 Pixels @ 085,087*/ 9, 0x02,
+ /* RLE: 007 Pixels @ 094,087*/ 7, 0x01,
+ /* RLE: 005 Pixels @ 101,087*/ 5, 0x02,
+ /* RLE: 013 Pixels @ 106,087*/ 13, 0x01,
+ /* RLE: 003 Pixels @ 119,087*/ 3, 0x02,
+ /* RLE: 005 Pixels @ 122,087*/ 5, 0x01,
+ /* RLE: 019 Pixels @ 127,087*/ 19, 0x00,
+ /* RLE: 014 Pixels @ 146,087*/ 14, 0x01,
+ /* RLE: 056 Pixels @ 000,088*/ 56, 0x00,
+ /* RLE: 011 Pixels @ 056,088*/ 11, 0x01,
+ /* RLE: 006 Pixels @ 067,088*/ 6, 0x02,
+ /* RLE: 012 Pixels @ 073,088*/ 12, 0x01,
+ /* RLE: 010 Pixels @ 085,088*/ 10, 0x02,
+ /* RLE: 007 Pixels @ 095,088*/ 7, 0x01,
+ /* RLE: 004 Pixels @ 102,088*/ 4, 0x02,
+ /* RLE: 013 Pixels @ 106,088*/ 13, 0x01,
+ /* RLE: 003 Pixels @ 119,088*/ 3, 0x02,
+ /* RLE: 006 Pixels @ 122,088*/ 6, 0x01,
+ /* RLE: 018 Pixels @ 128,088*/ 18, 0x00,
+ /* RLE: 014 Pixels @ 146,088*/ 14, 0x01,
+ /* RLE: 056 Pixels @ 000,089*/ 56, 0x00,
+ /* RLE: 010 Pixels @ 056,089*/ 10, 0x01,
+ /* RLE: 007 Pixels @ 066,089*/ 7, 0x02,
+ /* RLE: 013 Pixels @ 073,089*/ 13, 0x01,
+ /* RLE: 010 Pixels @ 086,089*/ 10, 0x02,
+ /* RLE: 007 Pixels @ 096,089*/ 7, 0x01,
+ /* RLE: 004 Pixels @ 103,089*/ 4, 0x02,
+ /* RLE: 012 Pixels @ 107,089*/ 12, 0x01,
+ /* RLE: 004 Pixels @ 119,089*/ 4, 0x02,
+ /* RLE: 005 Pixels @ 123,089*/ 5, 0x01,
+ /* RLE: 019 Pixels @ 128,089*/ 19, 0x00,
+ /* RLE: 013 Pixels @ 147,089*/ 13, 0x01,
+ /* RLE: 056 Pixels @ 000,090*/ 56, 0x00,
+ /* RLE: 010 Pixels @ 056,090*/ 10, 0x01,
+ /* RLE: 007 Pixels @ 066,090*/ 7, 0x02,
+ /* RLE: 013 Pixels @ 073,090*/ 13, 0x01,
+ /* RLE: 011 Pixels @ 086,090*/ 11, 0x02,
+ /* RLE: 007 Pixels @ 097,090*/ 7, 0x01,
+ /* RLE: 003 Pixels @ 104,090*/ 3, 0x02,
+ /* RLE: 012 Pixels @ 107,090*/ 12, 0x01,
+ /* RLE: 004 Pixels @ 119,090*/ 4, 0x02,
+ /* RLE: 005 Pixels @ 123,090*/ 5, 0x01,
+ /* RLE: 020 Pixels @ 128,090*/ 20, 0x00,
+ /* RLE: 012 Pixels @ 148,090*/ 12, 0x01,
+ /* RLE: 055 Pixels @ 000,091*/ 55, 0x00,
+ /* RLE: 010 Pixels @ 055,091*/ 10, 0x01,
+ /* RLE: 008 Pixels @ 065,091*/ 8, 0x02,
+ /* RLE: 013 Pixels @ 073,091*/ 13, 0x01,
+ /* RLE: 011 Pixels @ 086,091*/ 11, 0x02,
+ /* RLE: 007 Pixels @ 097,091*/ 7, 0x01,
+ /* RLE: 003 Pixels @ 104,091*/ 3, 0x02,
+ /* RLE: 012 Pixels @ 107,091*/ 12, 0x01,
+ /* RLE: 004 Pixels @ 119,091*/ 4, 0x02,
+ /* RLE: 005 Pixels @ 123,091*/ 5, 0x01,
+ /* RLE: 021 Pixels @ 128,091*/ 21, 0x00,
+ /* RLE: 011 Pixels @ 149,091*/ 11, 0x01,
+ /* RLE: 053 Pixels @ 000,092*/ 53, 0x00,
+ /* RLE: 012 Pixels @ 053,092*/ 12, 0x01,
+ /* RLE: 008 Pixels @ 065,092*/ 8, 0x02,
+ /* RLE: 013 Pixels @ 073,092*/ 13, 0x01,
+ /* RLE: 012 Pixels @ 086,092*/ 12, 0x02,
+ /* RLE: 007 Pixels @ 098,092*/ 7, 0x01,
+ /* RLE: 003 Pixels @ 105,092*/ 3, 0x02,
+ /* RLE: 011 Pixels @ 108,092*/ 11, 0x01,
+ /* RLE: 004 Pixels @ 119,092*/ 4, 0x02,
+ /* RLE: 005 Pixels @ 123,092*/ 5, 0x01,
+ /* RLE: 023 Pixels @ 128,092*/ 23, 0x00,
+ /* RLE: 008 Pixels @ 151,092*/ 8, 0x01,
+ /* RLE: 052 Pixels @ 159,092*/ 52, 0x00,
+ /* RLE: 014 Pixels @ 051,093*/ 14, 0x01,
+ /* RLE: 009 Pixels @ 065,093*/ 9, 0x02,
+ /* RLE: 012 Pixels @ 074,093*/ 12, 0x01,
+ /* RLE: 013 Pixels @ 086,093*/ 13, 0x02,
+ /* RLE: 007 Pixels @ 099,093*/ 7, 0x01,
+ /* RLE: 003 Pixels @ 106,093*/ 3, 0x02,
+ /* RLE: 010 Pixels @ 109,093*/ 10, 0x01,
+ /* RLE: 005 Pixels @ 119,093*/ 5, 0x02,
+ /* RLE: 004 Pixels @ 124,093*/ 4, 0x01,
+ /* RLE: 025 Pixels @ 128,093*/ 25, 0x00,
+ /* RLE: 004 Pixels @ 153,093*/ 4, 0x01,
+ /* RLE: 052 Pixels @ 157,093*/ 52, 0x00,
+ /* RLE: 015 Pixels @ 049,094*/ 15, 0x01,
+ /* RLE: 011 Pixels @ 064,094*/ 11, 0x02,
+ /* RLE: 011 Pixels @ 075,094*/ 11, 0x01,
+ /* RLE: 014 Pixels @ 086,094*/ 14, 0x02,
+ /* RLE: 006 Pixels @ 100,094*/ 6, 0x01,
+ /* RLE: 004 Pixels @ 106,094*/ 4, 0x02,
+ /* RLE: 008 Pixels @ 110,094*/ 8, 0x01,
+ /* RLE: 006 Pixels @ 118,094*/ 6, 0x02,
+ /* RLE: 005 Pixels @ 124,094*/ 5, 0x01,
+ /* RLE: 079 Pixels @ 129,094*/ 79, 0x00,
+ /* RLE: 016 Pixels @ 048,095*/ 16, 0x01,
+ /* RLE: 012 Pixels @ 064,095*/ 12, 0x02,
+ /* RLE: 010 Pixels @ 076,095*/ 10, 0x01,
+ /* RLE: 015 Pixels @ 086,095*/ 15, 0x02,
+ /* RLE: 006 Pixels @ 101,095*/ 6, 0x01,
+ /* RLE: 004 Pixels @ 107,095*/ 4, 0x02,
+ /* RLE: 007 Pixels @ 111,095*/ 7, 0x01,
+ /* RLE: 006 Pixels @ 118,095*/ 6, 0x02,
+ /* RLE: 005 Pixels @ 124,095*/ 5, 0x01,
+ /* RLE: 077 Pixels @ 129,095*/ 77, 0x00,
+ /* RLE: 018 Pixels @ 046,096*/ 18, 0x01,
+ /* RLE: 014 Pixels @ 064,096*/ 14, 0x02,
+ /* RLE: 007 Pixels @ 078,096*/ 7, 0x01,
+ /* RLE: 016 Pixels @ 085,096*/ 16, 0x02,
+ /* RLE: 007 Pixels @ 101,096*/ 7, 0x01,
+ /* RLE: 005 Pixels @ 108,096*/ 5, 0x02,
+ /* RLE: 004 Pixels @ 113,096*/ 4, 0x01,
+ /* RLE: 007 Pixels @ 117,096*/ 7, 0x02,
+ /* RLE: 005 Pixels @ 124,096*/ 5, 0x01,
+ /* RLE: 076 Pixels @ 129,096*/ 76, 0x00,
+ /* RLE: 019 Pixels @ 045,097*/ 19, 0x01,
+ /* RLE: 016 Pixels @ 064,097*/ 16, 0x02,
+ /* RLE: 004 Pixels @ 080,097*/ 4, 0x01,
+ /* RLE: 018 Pixels @ 084,097*/ 18, 0x02,
+ /* RLE: 006 Pixels @ 102,097*/ 6, 0x01,
+ /* RLE: 016 Pixels @ 108,097*/ 16, 0x02,
+ /* RLE: 005 Pixels @ 124,097*/ 5, 0x01,
+ /* RLE: 075 Pixels @ 129,097*/ 75, 0x00,
+ /* RLE: 020 Pixels @ 044,098*/ 20, 0x01,
+ /* RLE: 028 Pixels @ 064,098*/ 28, 0x02,
+ /* RLE: 005 Pixels @ 092,098*/ 5, 0x01,
+ /* RLE: 005 Pixels @ 097,098*/ 5, 0x02,
+ /* RLE: 007 Pixels @ 102,098*/ 7, 0x01,
+ /* RLE: 015 Pixels @ 109,098*/ 15, 0x02,
+ /* RLE: 005 Pixels @ 124,098*/ 5, 0x01,
+ /* RLE: 074 Pixels @ 129,098*/ 74, 0x00,
+ /* RLE: 021 Pixels @ 043,099*/ 21, 0x01,
+ /* RLE: 027 Pixels @ 064,099*/ 27, 0x02,
+ /* RLE: 008 Pixels @ 091,099*/ 8, 0x01,
+ /* RLE: 004 Pixels @ 099,099*/ 4, 0x02,
+ /* RLE: 007 Pixels @ 103,099*/ 7, 0x01,
+ /* RLE: 014 Pixels @ 110,099*/ 14, 0x02,
+ /* RLE: 005 Pixels @ 124,099*/ 5, 0x01,
+ /* RLE: 073 Pixels @ 129,099*/ 73, 0x00,
+ /* RLE: 022 Pixels @ 042,100*/ 22, 0x01,
+ /* RLE: 026 Pixels @ 064,100*/ 26, 0x02,
+ /* RLE: 009 Pixels @ 090,100*/ 9, 0x01,
+ /* RLE: 005 Pixels @ 099,100*/ 5, 0x02,
+ /* RLE: 006 Pixels @ 104,100*/ 6, 0x01,
+ /* RLE: 014 Pixels @ 110,100*/ 14, 0x02,
+ /* RLE: 005 Pixels @ 124,100*/ 5, 0x01,
+ /* RLE: 072 Pixels @ 129,100*/ 72, 0x00,
+ /* RLE: 023 Pixels @ 041,101*/ 23, 0x01,
+ /* RLE: 025 Pixels @ 064,101*/ 25, 0x02,
+ /* RLE: 011 Pixels @ 089,101*/ 11, 0x01,
+ /* RLE: 004 Pixels @ 100,101*/ 4, 0x02,
+ /* RLE: 007 Pixels @ 104,101*/ 7, 0x01,
+ /* RLE: 013 Pixels @ 111,101*/ 13, 0x02,
+ /* RLE: 005 Pixels @ 124,101*/ 5, 0x01,
+ /* RLE: 071 Pixels @ 129,101*/ 71, 0x00,
+ /* RLE: 025 Pixels @ 040,102*/ 25, 0x01,
+ /* RLE: 015 Pixels @ 065,102*/ 15, 0x02,
+ /* ABS: 002 Pixels @ 080,102*/ 0, 2, 0x11,
+ /* RLE: 006 Pixels @ 082,102*/ 6, 0x02,
+ /* RLE: 012 Pixels @ 088,102*/ 12, 0x01,
+ /* RLE: 005 Pixels @ 100,102*/ 5, 0x02,
+ /* RLE: 006 Pixels @ 105,102*/ 6, 0x01,
+ /* RLE: 013 Pixels @ 111,102*/ 13, 0x02,
+ /* RLE: 005 Pixels @ 124,102*/ 5, 0x01,
+ /* RLE: 071 Pixels @ 129,102*/ 71, 0x00,
+ /* RLE: 015 Pixels @ 040,103*/ 15, 0x01,
+ /* RLE: 005 Pixels @ 055,103*/ 5, 0x00,
+ /* RLE: 005 Pixels @ 060,103*/ 5, 0x01,
+ /* RLE: 012 Pixels @ 065,103*/ 12, 0x02,
+ /* RLE: 007 Pixels @ 077,103*/ 7, 0x01,
+ /* RLE: 004 Pixels @ 084,103*/ 4, 0x02,
+ /* RLE: 013 Pixels @ 088,103*/ 13, 0x01,
+ /* RLE: 004 Pixels @ 101,103*/ 4, 0x02,
+ /* RLE: 007 Pixels @ 105,103*/ 7, 0x01,
+ /* RLE: 012 Pixels @ 112,103*/ 12, 0x02,
+ /* RLE: 005 Pixels @ 124,103*/ 5, 0x01,
+ /* RLE: 070 Pixels @ 129,103*/ 70, 0x00,
+ /* RLE: 013 Pixels @ 039,104*/ 13, 0x01,
+ /* RLE: 008 Pixels @ 052,104*/ 8, 0x00,
+ /* RLE: 005 Pixels @ 060,104*/ 5, 0x01,
+ /* RLE: 011 Pixels @ 065,104*/ 11, 0x02,
+ /* RLE: 009 Pixels @ 076,104*/ 9, 0x01,
+ /* RLE: 003 Pixels @ 085,104*/ 3, 0x02,
+ /* RLE: 013 Pixels @ 088,104*/ 13, 0x01,
+ /* RLE: 004 Pixels @ 101,104*/ 4, 0x02,
+ /* RLE: 007 Pixels @ 105,104*/ 7, 0x01,
+ /* RLE: 012 Pixels @ 112,104*/ 12, 0x02,
+ /* RLE: 004 Pixels @ 124,104*/ 4, 0x01,
+ /* RLE: 071 Pixels @ 128,104*/ 71, 0x00,
+ /* RLE: 010 Pixels @ 039,105*/ 10, 0x01,
+ /* RLE: 011 Pixels @ 049,105*/ 11, 0x00,
+ /* RLE: 006 Pixels @ 060,105*/ 6, 0x01,
+ /* RLE: 009 Pixels @ 066,105*/ 9, 0x02,
+ /* RLE: 011 Pixels @ 075,105*/ 11, 0x01,
+ /* ABS: 002 Pixels @ 086,105*/ 0, 2, 0x22,
+ /* RLE: 013 Pixels @ 088,105*/ 13, 0x01,
+ /* RLE: 005 Pixels @ 101,105*/ 5, 0x02,
+ /* RLE: 007 Pixels @ 106,105*/ 7, 0x01,
+ /* RLE: 010 Pixels @ 113,105*/ 10, 0x02,
+ /* RLE: 005 Pixels @ 123,105*/ 5, 0x01,
+ /* RLE: 071 Pixels @ 128,105*/ 71, 0x00,
+ /* RLE: 009 Pixels @ 039,106*/ 9, 0x01,
+ /* RLE: 013 Pixels @ 048,106*/ 13, 0x00,
+ /* RLE: 005 Pixels @ 061,106*/ 5, 0x01,
+ /* RLE: 009 Pixels @ 066,106*/ 9, 0x02,
+ /* RLE: 011 Pixels @ 075,106*/ 11, 0x01,
+ /* ABS: 002 Pixels @ 086,106*/ 0, 2, 0x22,
+ /* RLE: 013 Pixels @ 088,106*/ 13, 0x01,
+ /* RLE: 005 Pixels @ 101,106*/ 5, 0x02,
+ /* RLE: 007 Pixels @ 106,106*/ 7, 0x01,
+ /* RLE: 010 Pixels @ 113,106*/ 10, 0x02,
+ /* RLE: 005 Pixels @ 123,106*/ 5, 0x01,
+ /* RLE: 071 Pixels @ 128,106*/ 71, 0x00,
+ /* RLE: 008 Pixels @ 039,107*/ 8, 0x01,
+ /* RLE: 014 Pixels @ 047,107*/ 14, 0x00,
+ /* RLE: 006 Pixels @ 061,107*/ 6, 0x01,
+ /* RLE: 007 Pixels @ 067,107*/ 7, 0x02,
+ /* RLE: 013 Pixels @ 074,107*/ 13, 0x01,
+ /* ABS: 002 Pixels @ 087,107*/ 0, 2, 0x22,
+ /* RLE: 012 Pixels @ 089,107*/ 12, 0x01,
+ /* RLE: 005 Pixels @ 101,107*/ 5, 0x02,
+ /* RLE: 008 Pixels @ 106,107*/ 8, 0x01,
+ /* RLE: 008 Pixels @ 114,107*/ 8, 0x02,
+ /* RLE: 006 Pixels @ 122,107*/ 6, 0x01,
+ /* RLE: 071 Pixels @ 128,107*/ 71, 0x00,
+ /* RLE: 008 Pixels @ 039,108*/ 8, 0x01,
+ /* RLE: 015 Pixels @ 047,108*/ 15, 0x00,
+ /* RLE: 006 Pixels @ 062,108*/ 6, 0x01,
+ /* RLE: 006 Pixels @ 068,108*/ 6, 0x02,
+ /* RLE: 013 Pixels @ 074,108*/ 13, 0x01,
+ /* RLE: 003 Pixels @ 087,108*/ 3, 0x02,
+ /* RLE: 011 Pixels @ 090,108*/ 11, 0x01,
+ /* RLE: 006 Pixels @ 101,108*/ 6, 0x02,
+ /* RLE: 007 Pixels @ 107,108*/ 7, 0x01,
+ /* RLE: 008 Pixels @ 114,108*/ 8, 0x02,
+ /* RLE: 006 Pixels @ 122,108*/ 6, 0x01,
+ /* RLE: 071 Pixels @ 128,108*/ 71, 0x00,
+ /* RLE: 007 Pixels @ 039,109*/ 7, 0x01,
+ /* RLE: 017 Pixels @ 046,109*/ 17, 0x00,
+ /* RLE: 005 Pixels @ 063,109*/ 5, 0x01,
+ /* RLE: 006 Pixels @ 068,109*/ 6, 0x02,
+ /* RLE: 013 Pixels @ 074,109*/ 13, 0x01,
+ /* RLE: 004 Pixels @ 087,109*/ 4, 0x02,
+ /* RLE: 010 Pixels @ 091,109*/ 10, 0x01,
+ /* RLE: 006 Pixels @ 101,109*/ 6, 0x02,
+ /* RLE: 008 Pixels @ 107,109*/ 8, 0x01,
+ /* RLE: 006 Pixels @ 115,109*/ 6, 0x02,
+ /* RLE: 006 Pixels @ 121,109*/ 6, 0x01,
+ /* RLE: 072 Pixels @ 127,109*/ 72, 0x00,
+ /* RLE: 007 Pixels @ 039,110*/ 7, 0x01,
+ /* RLE: 015 Pixels @ 046,110*/ 15, 0x00,
+ /* RLE: 008 Pixels @ 061,110*/ 8, 0x01,
+ /* RLE: 005 Pixels @ 069,110*/ 5, 0x02,
+ /* RLE: 013 Pixels @ 074,110*/ 13, 0x01,
+ /* RLE: 005 Pixels @ 087,110*/ 5, 0x02,
+ /* RLE: 009 Pixels @ 092,110*/ 9, 0x01,
+ /* RLE: 006 Pixels @ 101,110*/ 6, 0x02,
+ /* RLE: 008 Pixels @ 107,110*/ 8, 0x01,
+ /* RLE: 005 Pixels @ 115,110*/ 5, 0x02,
+ /* RLE: 007 Pixels @ 120,110*/ 7, 0x01,
+ /* RLE: 072 Pixels @ 127,110*/ 72, 0x00,
+ /* RLE: 008 Pixels @ 039,111*/ 8, 0x01,
+ /* RLE: 012 Pixels @ 047,111*/ 12, 0x00,
+ /* RLE: 011 Pixels @ 059,111*/ 11, 0x01,
+ /* RLE: 005 Pixels @ 070,111*/ 5, 0x02,
+ /* RLE: 013 Pixels @ 075,111*/ 13, 0x01,
+ /* RLE: 006 Pixels @ 088,111*/ 6, 0x02,
+ /* RLE: 006 Pixels @ 094,111*/ 6, 0x01,
+ /* RLE: 007 Pixels @ 100,111*/ 7, 0x02,
+ /* RLE: 009 Pixels @ 107,111*/ 9, 0x01,
+ /* RLE: 003 Pixels @ 116,111*/ 3, 0x02,
+ /* RLE: 008 Pixels @ 119,111*/ 8, 0x01,
+ /* RLE: 073 Pixels @ 127,111*/ 73, 0x00,
+ /* RLE: 007 Pixels @ 040,112*/ 7, 0x01,
+ /* RLE: 011 Pixels @ 047,112*/ 11, 0x00,
+ /* RLE: 013 Pixels @ 058,112*/ 13, 0x01,
+ /* RLE: 004 Pixels @ 071,112*/ 4, 0x02,
+ /* RLE: 013 Pixels @ 075,112*/ 13, 0x01,
+ /* RLE: 019 Pixels @ 088,112*/ 19, 0x02,
+ /* RLE: 009 Pixels @ 107,112*/ 9, 0x01,
+ /* ABS: 002 Pixels @ 116,112*/ 0, 2, 0x22,
+ /* RLE: 008 Pixels @ 118,112*/ 8, 0x01,
+ /* RLE: 074 Pixels @ 126,112*/ 74, 0x00,
+ /* RLE: 008 Pixels @ 040,113*/ 8, 0x01,
+ /* RLE: 008 Pixels @ 048,113*/ 8, 0x00,
+ /* RLE: 016 Pixels @ 056,113*/ 16, 0x01,
+ /* RLE: 004 Pixels @ 072,113*/ 4, 0x02,
+ /* RLE: 011 Pixels @ 076,113*/ 11, 0x01,
+ /* RLE: 020 Pixels @ 087,113*/ 20, 0x02,
+ /* RLE: 019 Pixels @ 107,113*/ 19, 0x01,
+ /* RLE: 075 Pixels @ 126,113*/ 75, 0x00,
+ /* RLE: 008 Pixels @ 041,114*/ 8, 0x01,
+ /* RLE: 006 Pixels @ 049,114*/ 6, 0x00,
+ /* RLE: 018 Pixels @ 055,114*/ 18, 0x01,
+ /* RLE: 005 Pixels @ 073,114*/ 5, 0x02,
+ /* RLE: 009 Pixels @ 078,114*/ 9, 0x01,
+ /* RLE: 020 Pixels @ 087,114*/ 20, 0x02,
+ /* RLE: 018 Pixels @ 107,114*/ 18, 0x01,
+ /* RLE: 077 Pixels @ 125,114*/ 77, 0x00,
+ /* RLE: 007 Pixels @ 042,115*/ 7, 0x01,
+ /* RLE: 005 Pixels @ 049,115*/ 5, 0x00,
+ /* RLE: 020 Pixels @ 054,115*/ 20, 0x01,
+ /* RLE: 005 Pixels @ 074,115*/ 5, 0x02,
+ /* RLE: 008 Pixels @ 079,115*/ 8, 0x01,
+ /* RLE: 021 Pixels @ 087,115*/ 21, 0x02,
+ /* RLE: 017 Pixels @ 108,115*/ 17, 0x01,
+ /* RLE: 077 Pixels @ 125,115*/ 77, 0x00,
+ /* RLE: 008 Pixels @ 042,116*/ 8, 0x01,
+ /* RLE: 003 Pixels @ 050,116*/ 3, 0x00,
+ /* RLE: 022 Pixels @ 053,116*/ 22, 0x01,
+ /* RLE: 007 Pixels @ 075,116*/ 7, 0x02,
+ /* RLE: 003 Pixels @ 082,116*/ 3, 0x01,
+ /* RLE: 023 Pixels @ 085,116*/ 23, 0x02,
+ /* RLE: 016 Pixels @ 108,116*/ 16, 0x01,
+ /* RLE: 079 Pixels @ 124,116*/ 79, 0x00,
+ /* RLE: 008 Pixels @ 043,117*/ 8, 0x01,
+ /* RLE: 001 Pixels @ 051,117*/ 1, 0x00,
+ /* RLE: 024 Pixels @ 052,117*/ 24, 0x01,
+ /* RLE: 032 Pixels @ 076,117*/ 32, 0x02,
+ /* RLE: 016 Pixels @ 108,117*/ 16, 0x01,
+ /* RLE: 080 Pixels @ 124,117*/ 80, 0x00,
+ /* RLE: 035 Pixels @ 044,118*/ 35, 0x01,
+ /* RLE: 028 Pixels @ 079,118*/ 28, 0x02,
+ /* RLE: 016 Pixels @ 107,118*/ 16, 0x01,
+ /* RLE: 082 Pixels @ 123,118*/ 82, 0x00,
+ /* RLE: 025 Pixels @ 045,119*/ 25, 0x01,
+ /* RLE: 001 Pixels @ 070,119*/ 1, 0x00,
+ /* RLE: 008 Pixels @ 071,119*/ 8, 0x01,
+ /* RLE: 028 Pixels @ 079,119*/ 28, 0x02,
+ /* RLE: 006 Pixels @ 107,119*/ 6, 0x01,
+ /* RLE: 001 Pixels @ 113,119*/ 1, 0x00,
+ /* RLE: 008 Pixels @ 114,119*/ 8, 0x01,
+ /* RLE: 084 Pixels @ 122,119*/ 84, 0x00,
+ /* RLE: 019 Pixels @ 046,120*/ 19, 0x01,
+ /* RLE: 007 Pixels @ 065,120*/ 7, 0x00,
+ /* RLE: 009 Pixels @ 072,120*/ 9, 0x01,
+ /* RLE: 026 Pixels @ 081,120*/ 26, 0x02,
+ /* RLE: 005 Pixels @ 107,120*/ 5, 0x01,
+ /* RLE: 004 Pixels @ 112,120*/ 4, 0x00,
+ /* RLE: 005 Pixels @ 116,120*/ 5, 0x01,
+ /* RLE: 086 Pixels @ 121,120*/ 86, 0x00,
+ /* RLE: 015 Pixels @ 047,121*/ 15, 0x01,
+ /* RLE: 011 Pixels @ 062,121*/ 11, 0x00,
+ /* RLE: 010 Pixels @ 073,121*/ 10, 0x01,
+ /* RLE: 024 Pixels @ 083,121*/ 24, 0x02,
+ /* RLE: 005 Pixels @ 107,121*/ 5, 0x01,
+ /* RLE: 005 Pixels @ 112,121*/ 5, 0x00,
+ /* RLE: 004 Pixels @ 117,121*/ 4, 0x01,
+ /* RLE: 086 Pixels @ 121,121*/ 86, 0x00,
+ /* RLE: 013 Pixels @ 047,122*/ 13, 0x01,
+ /* RLE: 013 Pixels @ 060,122*/ 13, 0x00,
+ /* RLE: 012 Pixels @ 073,122*/ 12, 0x01,
+ /* RLE: 021 Pixels @ 085,122*/ 21, 0x02,
+ /* RLE: 006 Pixels @ 106,122*/ 6, 0x01,
+ /* RLE: 096 Pixels @ 112,122*/ 96, 0x00,
+ /* RLE: 010 Pixels @ 048,123*/ 10, 0x01,
+ /* RLE: 014 Pixels @ 058,123*/ 14, 0x00,
+ /* RLE: 014 Pixels @ 072,123*/ 14, 0x01,
+ /* RLE: 020 Pixels @ 086,123*/ 20, 0x02,
+ /* RLE: 007 Pixels @ 106,123*/ 7, 0x01,
+ /* RLE: 095 Pixels @ 113,123*/ 95, 0x00,
+ /* RLE: 009 Pixels @ 048,124*/ 9, 0x01,
+ /* RLE: 014 Pixels @ 057,124*/ 14, 0x00,
+ /* RLE: 019 Pixels @ 071,124*/ 19, 0x01,
+ /* RLE: 014 Pixels @ 090,124*/ 14, 0x02,
+ /* RLE: 009 Pixels @ 104,124*/ 9, 0x01,
+ /* RLE: 096 Pixels @ 113,124*/ 96, 0x00,
+ /* RLE: 008 Pixels @ 049,125*/ 8, 0x01,
+ /* RLE: 012 Pixels @ 057,125*/ 12, 0x00,
+ /* RLE: 025 Pixels @ 069,125*/ 25, 0x01,
+ /* RLE: 007 Pixels @ 094,125*/ 7, 0x02,
+ /* RLE: 012 Pixels @ 101,125*/ 12, 0x01,
+ /* RLE: 095 Pixels @ 113,125*/ 95, 0x00,
+ /* RLE: 008 Pixels @ 048,126*/ 8, 0x01,
+ /* RLE: 012 Pixels @ 056,126*/ 12, 0x00,
+ /* RLE: 045 Pixels @ 068,126*/ 45, 0x01,
+ /* RLE: 093 Pixels @ 113,126*/ 93, 0x00,
+ /* RLE: 010 Pixels @ 046,127*/ 10, 0x01,
+ /* RLE: 012 Pixels @ 056,127*/ 12, 0x00,
+ /* RLE: 044 Pixels @ 068,127*/ 44, 0x01,
+ /* RLE: 092 Pixels @ 112,127*/ 92, 0x00,
+ /* RLE: 013 Pixels @ 044,128*/ 13, 0x01,
+ /* RLE: 010 Pixels @ 057,128*/ 10, 0x00,
+ /* RLE: 044 Pixels @ 067,128*/ 44, 0x01,
+ /* RLE: 093 Pixels @ 111,128*/ 93, 0x00,
+ /* RLE: 013 Pixels @ 044,129*/ 13, 0x01,
+ /* RLE: 009 Pixels @ 057,129*/ 9, 0x00,
+ /* RLE: 018 Pixels @ 066,129*/ 18, 0x01,
+ /* RLE: 004 Pixels @ 084,129*/ 4, 0x00,
+ /* RLE: 020 Pixels @ 088,129*/ 20, 0x01,
+ /* RLE: 097 Pixels @ 108,129*/ 97, 0x00,
+ /* RLE: 013 Pixels @ 045,130*/ 13, 0x01,
+ /* RLE: 008 Pixels @ 058,130*/ 8, 0x00,
+ /* RLE: 013 Pixels @ 066,130*/ 13, 0x01,
+ /* RLE: 014 Pixels @ 079,130*/ 14, 0x00,
+ /* RLE: 010 Pixels @ 093,130*/ 10, 0x01,
+ /* RLE: 102 Pixels @ 103,130*/ 102, 0x00,
+ /* RLE: 013 Pixels @ 045,131*/ 13, 0x01,
+ /* RLE: 007 Pixels @ 058,131*/ 7, 0x00,
+ /* RLE: 011 Pixels @ 065,131*/ 11, 0x01,
+ /* RLE: 130 Pixels @ 076,131*/ 130, 0x00,
+ /* RLE: 013 Pixels @ 046,132*/ 13, 0x01,
+ /* RLE: 006 Pixels @ 059,132*/ 6, 0x00,
+ /* RLE: 010 Pixels @ 065,132*/ 10, 0x01,
+ /* RLE: 132 Pixels @ 075,132*/ 132, 0x00,
+ /* RLE: 013 Pixels @ 047,133*/ 13, 0x01,
+ /* RLE: 005 Pixels @ 060,133*/ 5, 0x00,
+ /* RLE: 009 Pixels @ 065,133*/ 9, 0x01,
+ /* RLE: 134 Pixels @ 074,133*/ 134, 0x00,
+ /* RLE: 013 Pixels @ 048,134*/ 13, 0x01,
+ /* RLE: 004 Pixels @ 061,134*/ 4, 0x00,
+ /* RLE: 008 Pixels @ 065,134*/ 8, 0x01,
+ /* RLE: 141 Pixels @ 073,134*/ 141, 0x00,
+ /* RLE: 008 Pixels @ 054,135*/ 8, 0x01,
+ /* RLE: 003 Pixels @ 062,135*/ 3, 0x00,
+ /* RLE: 007 Pixels @ 065,135*/ 7, 0x01,
+ /* RLE: 143 Pixels @ 072,135*/ 143, 0x00,
+ /* RLE: 008 Pixels @ 055,136*/ 8, 0x01,
+ /* ABS: 002 Pixels @ 063,136*/ 0, 2, 0x00,
+ /* RLE: 007 Pixels @ 065,136*/ 7, 0x01,
+ /* RLE: 144 Pixels @ 072,136*/ 144, 0x00,
+ /* RLE: 008 Pixels @ 056,137*/ 8, 0x01,
+ /* RLE: 001 Pixels @ 064,137*/ 1, 0x00,
+ /* RLE: 007 Pixels @ 065,137*/ 7, 0x01,
+ /* RLE: 145 Pixels @ 072,137*/ 145, 0x00,
+ /* RLE: 007 Pixels @ 057,138*/ 7, 0x01,
+ /* RLE: 001 Pixels @ 064,138*/ 1, 0x00,
+ /* RLE: 008 Pixels @ 065,138*/ 8, 0x01,
+ /* RLE: 144 Pixels @ 073,138*/ 144, 0x00,
+ /* RLE: 008 Pixels @ 057,139*/ 8, 0x01,
+ /* RLE: 001 Pixels @ 065,139*/ 1, 0x00,
+ /* RLE: 007 Pixels @ 066,139*/ 7, 0x01,
+ /* RLE: 145 Pixels @ 073,139*/ 145, 0x00,
+ /* RLE: 007 Pixels @ 058,140*/ 7, 0x01,
+ /* RLE: 001 Pixels @ 065,140*/ 1, 0x00,
+ /* RLE: 008 Pixels @ 066,140*/ 8, 0x01,
+ /* RLE: 144 Pixels @ 074,140*/ 144, 0x00,
+ /* RLE: 007 Pixels @ 058,141*/ 7, 0x01,
+ /* ABS: 002 Pixels @ 065,141*/ 0, 2, 0x00,
+ /* RLE: 008 Pixels @ 067,141*/ 8, 0x01,
+ /* RLE: 144 Pixels @ 075,141*/ 144, 0x00,
+ /* RLE: 006 Pixels @ 059,142*/ 6, 0x01,
+ /* RLE: 003 Pixels @ 065,142*/ 3, 0x00,
+ /* RLE: 008 Pixels @ 068,142*/ 8, 0x01,
+ /* RLE: 142 Pixels @ 076,142*/ 142, 0x00,
+ /* RLE: 007 Pixels @ 058,143*/ 7, 0x01,
+ /* RLE: 004 Pixels @ 065,143*/ 4, 0x00,
+ /* RLE: 008 Pixels @ 069,143*/ 8, 0x01,
+ /* RLE: 139 Pixels @ 077,143*/ 139, 0x00,
+ /* RLE: 010 Pixels @ 056,144*/ 10, 0x01,
+ /* RLE: 004 Pixels @ 066,144*/ 4, 0x00,
+ /* RLE: 008 Pixels @ 070,144*/ 8, 0x01,
+ /* RLE: 136 Pixels @ 078,144*/ 136, 0x00,
+ /* RLE: 012 Pixels @ 054,145*/ 12, 0x01,
+ /* RLE: 005 Pixels @ 066,145*/ 5, 0x00,
+ /* RLE: 008 Pixels @ 071,145*/ 8, 0x01,
+ /* RLE: 135 Pixels @ 079,145*/ 135, 0x00,
+ /* RLE: 011 Pixels @ 054,146*/ 11, 0x01,
+ /* RLE: 007 Pixels @ 065,146*/ 7, 0x00,
+ /* RLE: 007 Pixels @ 072,146*/ 7, 0x01,
+ /* RLE: 136 Pixels @ 079,146*/ 136, 0x00,
+ /* RLE: 010 Pixels @ 055,147*/ 10, 0x01,
+ /* RLE: 007 Pixels @ 065,147*/ 7, 0x00,
+ /* RLE: 008 Pixels @ 072,147*/ 8, 0x01,
+ /* RLE: 135 Pixels @ 080,147*/ 135, 0x00,
+ /* RLE: 010 Pixels @ 055,148*/ 10, 0x01,
+ /* RLE: 008 Pixels @ 065,148*/ 8, 0x00,
+ /* RLE: 007 Pixels @ 073,148*/ 7, 0x01,
+ /* RLE: 136 Pixels @ 080,148*/ 136, 0x00,
+ /* RLE: 009 Pixels @ 056,149*/ 9, 0x01,
+ /* RLE: 009 Pixels @ 065,149*/ 9, 0x00,
+ /* RLE: 007 Pixels @ 074,149*/ 7, 0x01,
+ /* RLE: 136 Pixels @ 081,149*/ 136, 0x00,
+ /* RLE: 007 Pixels @ 057,150*/ 7, 0x01,
+ /* RLE: 010 Pixels @ 064,150*/ 10, 0x00,
+ /* RLE: 007 Pixels @ 074,150*/ 7, 0x01,
+ /* RLE: 137 Pixels @ 081,150*/ 137, 0x00,
+ /* RLE: 005 Pixels @ 058,151*/ 5, 0x01,
+ /* RLE: 012 Pixels @ 063,151*/ 12, 0x00,
+ /* RLE: 006 Pixels @ 075,151*/ 6, 0x01,
+ /* RLE: 154 Pixels @ 081,151*/ 154, 0x00,
+ /* RLE: 006 Pixels @ 075,152*/ 6, 0x01,
+ /* RLE: 153 Pixels @ 081,152*/ 153, 0x00,
+ /* RLE: 008 Pixels @ 074,153*/ 8, 0x01,
+ /* RLE: 148 Pixels @ 082,153*/ 148, 0x00,
+ /* RLE: 012 Pixels @ 070,154*/ 12, 0x01,
+ /* RLE: 148 Pixels @ 082,154*/ 148, 0x00,
+ /* RLE: 012 Pixels @ 070,155*/ 12, 0x01,
+ /* RLE: 148 Pixels @ 082,155*/ 148, 0x00,
+ /* RLE: 011 Pixels @ 070,156*/ 11, 0x01,
+ /* RLE: 150 Pixels @ 081,156*/ 150, 0x00,
+ /* RLE: 010 Pixels @ 071,157*/ 10, 0x01,
+ /* RLE: 150 Pixels @ 081,157*/ 150, 0x00,
+ /* RLE: 010 Pixels @ 071,158*/ 10, 0x01,
+ /* RLE: 151 Pixels @ 081,158*/ 151, 0x00,
+ /* RLE: 008 Pixels @ 072,159*/ 8, 0x01,
+ /* RLE: 153 Pixels @ 080,159*/ 153, 0x00,
+ /* RLE: 006 Pixels @ 073,160*/ 6, 0x01,
+ /* RLE: 081 Pixels @ 079,160*/ 81, 0x00,
+ 0
+}; /* 1927 for 25760 pixels */
+
+static const GUI_BITMAP _bmLadyBug = {
+ 160, /* XSize */
+ 161, /* YSize */
+ 40, /* BytesPerLine */
+ GUI_COMPRESS_RLE4, /* BitsPerPixel */
+ _acLadyBug, /* Pointer to picture data (indices) */
+ &_PalLadyBug /* Pointer to palette */
+ ,GUI_DRAW_RLE4
+};
+
+/*********************************************************************
+*
+* static code
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_LARGE
+ #define MAG_FACTOR 3
+#else
+ #define MAG_FACTOR 2
+#endif
+
+/*********************************************************************
+*
+* _ShowMagnifiedBitmap
+*/
+static void _ShowMagnifiedBitmap(void) {
+ int xCenter = LCD_XSIZE >> 1;
+ int yCenter = LCD_YSIZE >> 1;
+ int x0, y0;
+ x0 = xCenter - (GUIDEMO_bm4bpp.XSize >> 1) * MAG_FACTOR;
+ y0 = yCenter - (GUIDEMO_bm4bpp.YSize >> 1) * MAG_FACTOR;
+ GUI_DrawBitmapMag(&GUIDEMO_bm4bpp, x0, y0, MAG_FACTOR, MAG_FACTOR);
+ #if GUIDEMO_LARGE
+ GUI_DispStringHCenterAt("Bitmaps can be magnified...", xCenter, 100);
+ #else
+ GUI_DispStringAt("Bitmaps can be magnified...", 8, 10);
+ #endif
+}
+
+#if GUIDEMO_LARGE
+
+/*********************************************************************
+*
+* _BitmapDemo (GUIDEMO_LARGE)
+*/
+static void _BitmapDemo(void) {
+ int ix, iy;
+ GUI_DrawBitmap(&_bmLadyBug, 20, 50);
+ GUI_SetFont(&GUI_Font13_1);
+ GUI_DispStringAt("RLE Compressed bitmaps", 8, 10);
+ GUIDEMO_Wait();
+ GUI_Clear();
+ GUI_DispStringAt("1/2/4/8 bpp bitmaps", 8, 10);
+ GUI_DrawBitmap(&GUIDEMO_bm4bpp, 20, 50);
+ GUIDEMO_Delay(4000);
+ GUIDEMO_NotifyStartNext();
+ /* Tile display with image */
+ for (ix = 0; ix < LCD_XSIZE / GUIDEMO_bm4bpp.XSize + 1; ix++) {
+ for (iy = 0; iy < LCD_YSIZE / GUIDEMO_bm4bpp.YSize + 1; iy++) {
+ GUI_DrawBitmap(&GUIDEMO_bm4bpp,
+ GUIDEMO_bm4bpp.XSize * ix,
+ GUIDEMO_bm4bpp.YSize * iy);
+ }
+ }
+ GUIDEMO_Delay(2000);
+ GUIDEMO_NotifyStartNext();
+ GUIDEMO_ShowInfo("Bitmaps may also be\nmagnified and rotated");
+ GUI_SetTextMode(GUI_TM_TRANS);
+ GUI_SetFont(&GUI_Font16_1);
+ _ShowMagnifiedBitmap();
+}
+
+#else
+
+/*********************************************************************
+*
+* _BitmapDemo
+*/
+static void _BitmapDemo(void) {
+ const GUI_BITMAP * pBm;
+ int TextModeOld = GUI_SetTextMode(GUI_TM_XOR);
+ GUI_SetFont(&GUI_Font8_ASCII);
+ pBm = &_bmLadyBug;
+ GUI_DrawBitmap(pBm, (LCD_XSIZE - (int)pBm->XSize) >> 1, (LCD_YSIZE - (int)pBm->YSize) >> 1);
+ GUI_DispStringAt("RLE Compressed bitmaps", 8, 10);
+ GUIDEMO_Wait();
+ GUI_Clear();
+ GUI_SetTextMode(GUI_TM_TRANS);
+ pBm = &GUIDEMO_bm4bpp;
+ GUI_DrawBitmap(pBm, (LCD_XSIZE - (int)pBm->XSize) >> 1, (LCD_YSIZE - (int)pBm->YSize) >> 1);
+ GUI_DispStringAt("1/2/4/8 bpp bitmaps", 8, 10);
+ GUIDEMO_Wait();
+ GUI_Clear();
+ _ShowMagnifiedBitmap();
+ GUI_SetTextMode(TextModeOld);
+}
+
+#endif
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIDEMO_Bitmap
+*/
+void GUIDEMO_Bitmap(void) {
+ GUIDEMO_ShowIntro("Bitmaps", "Showing\ndifferent bitmaps with\nand without compression");
+ GUIDEMO_SetBkColor(GUI_BLUE);
+ GUI_Clear();
+ _BitmapDemo();
+ GUIDEMO_Wait();
+}
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Bitmap4bpp.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Bitmap4bpp.c
new file mode 100644
index 0000000..9f9c46c
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Bitmap4bpp.c
@@ -0,0 +1,152 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Bitmap4bpp.c
+Purpose : Contains a 4bpp bitmap
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static const GUI_COLOR _ColorsJoerg[] = {
+ 0x000000, 0x111111, 0x222222, 0x333333
+ ,0x444444, 0x555555, 0x666666, 0x777777
+ ,0x888888, 0x999999, 0xAAAAAA, 0xBBBBBB
+ ,0xCCCCCC, 0xDDDDDD, 0xEEEEEE, 0xFFFFFF
+};
+
+static const GUI_LOGPALETTE _PalJoerg = {
+ 16, /* number of entries */
+ 0, /* No transparency */
+ &_ColorsJoerg[0]
+};
+
+static const unsigned char _acJoerg[] = {
+ 0x88, 0x88, 0x88, 0x88, 0x89, 0x88, 0x99, 0x99, 0x89, 0x99, 0x88, 0x99, 0x98, 0x88, 0x98, 0x88, 0x89, 0x88, 0x89, 0x99, 0x88, 0x89, 0x88, 0x98, 0x98, 0x89, 0x88, 0x89, 0x98, 0x88, 0x80,
+ 0x88, 0x88, 0x88, 0x89, 0x88, 0x88, 0x88, 0x89, 0x89, 0x99, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x89, 0x89, 0x88, 0x98, 0x88, 0x89, 0x98, 0x89, 0x88, 0x88, 0x88, 0x88, 0x80,
+ 0x88, 0x88, 0x88, 0x88, 0x89, 0x88, 0x88, 0x88, 0x89, 0x88, 0x88, 0x88, 0x77, 0x75, 0x68, 0x56, 0x55, 0x55, 0x68, 0x88, 0x88, 0x99, 0x98, 0x99, 0x98, 0x88, 0x88, 0x88, 0x88, 0x88, 0x80,
+ 0x88, 0x88, 0x88, 0x88, 0x89, 0x88, 0x88, 0x88, 0x88, 0x85, 0x44, 0x55, 0x53, 0x54, 0x35, 0x33, 0x44, 0x44, 0x46, 0x67, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x80,
+ 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x78, 0x75, 0x43, 0x33, 0x33, 0x33, 0x34, 0x33, 0x33, 0x33, 0x44, 0x55, 0x67, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x80,
+ 0x98, 0x99, 0x88, 0x88, 0x88, 0x88, 0x87, 0x86, 0x63, 0x33, 0x33, 0x33, 0x33, 0x23, 0x22, 0x22, 0x23, 0x33, 0x33, 0x34, 0x56, 0x44, 0x68, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x80,
+ 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x85, 0x47, 0x54, 0x33, 0x33, 0x32, 0x22, 0x23, 0x22, 0x22, 0x22, 0x22, 0x22, 0x33, 0x33, 0x33, 0x43, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x80,
+ 0x88, 0x88, 0x88, 0x88, 0x88, 0x86, 0x44, 0x43, 0x44, 0x33, 0x33, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x33, 0x23, 0x23, 0x33, 0x45, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x80,
+ 0x88, 0x88, 0x88, 0x88, 0x87, 0x65, 0x43, 0x33, 0x33, 0x33, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x23, 0x34, 0x46, 0x76, 0x88, 0x88, 0x88, 0x88, 0x80,
+ 0x98, 0x88, 0x88, 0x88, 0x76, 0x54, 0x33, 0x33, 0x23, 0x32, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x12, 0x22, 0x22, 0x22, 0x22, 0x33, 0x33, 0x44, 0x48, 0x88, 0x88, 0x88, 0x88, 0x80,
+ 0x9A, 0x99, 0x99, 0x99, 0x75, 0x43, 0x33, 0x33, 0x22, 0x22, 0x22, 0x22, 0x22, 0x12, 0x21, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x23, 0x33, 0x33, 0x34, 0x76, 0x78, 0x88, 0x88, 0x88, 0x80,
+ 0x99, 0x99, 0x99, 0x97, 0x43, 0x33, 0x32, 0x32, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x21, 0x22, 0x12, 0x22, 0x12, 0x22, 0x22, 0x32, 0x22, 0x22, 0x34, 0x34, 0x88, 0x99, 0x99, 0x99, 0x90,
+ 0x99, 0x99, 0x99, 0x75, 0x43, 0x32, 0x22, 0x22, 0x22, 0x23, 0x23, 0x22, 0x22, 0x22, 0x21, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x23, 0x34, 0x68, 0x89, 0x89, 0x89, 0x80,
+ 0xAA, 0xAA, 0xA9, 0x86, 0x53, 0x22, 0x21, 0x22, 0x22, 0x23, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x24, 0x58, 0x99, 0x99, 0x99, 0x90,
+ 0xAA, 0xAA, 0xAA, 0x85, 0x32, 0x22, 0x21, 0x12, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x24, 0x46, 0x79, 0x99, 0x99, 0x90,
+ 0xAA, 0xAA, 0xA6, 0x33, 0x22, 0x22, 0x21, 0x22, 0x23, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x11, 0x22, 0x22, 0x22, 0x22, 0x22, 0x35, 0x68, 0x99, 0x99, 0x90,
+ 0xBB, 0xBA, 0xA4, 0x32, 0x22, 0x21, 0x21, 0x22, 0x23, 0x22, 0x22, 0x22, 0x22, 0x33, 0x33, 0x32, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x34, 0x66, 0x99, 0x99, 0x90,
+ 0xBB, 0xBA, 0x83, 0x22, 0x21, 0x12, 0x22, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x23, 0x33, 0x22, 0x33, 0x32, 0x22, 0x21, 0x12, 0x22, 0x33, 0x89, 0x99, 0x90,
+ 0xBB, 0xBA, 0x63, 0x22, 0x21, 0x11, 0x23, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x34, 0x45, 0x43, 0x33, 0x33, 0x32, 0x32, 0x21, 0x12, 0x22, 0x23, 0x69, 0x99, 0x90,
+ 0xBB, 0xBA, 0x32, 0x22, 0x21, 0x22, 0x34, 0x44, 0x45, 0x55, 0x55, 0x55, 0x55, 0x55, 0x44, 0x44, 0x45, 0x44, 0x54, 0x43, 0x33, 0x33, 0x33, 0x43, 0x21, 0x12, 0x22, 0x33, 0x58, 0x99, 0x90,
+ 0xBB, 0xB6, 0x33, 0x22, 0x22, 0x23, 0x44, 0x55, 0x55, 0x56, 0x66, 0x66, 0x76, 0x66, 0x66, 0x55, 0x66, 0x55, 0x55, 0x44, 0x44, 0x44, 0x44, 0x44, 0x32, 0x22, 0x22, 0x23, 0x36, 0x99, 0x90,
+ 0xBB, 0x92, 0x33, 0x22, 0x22, 0x34, 0x55, 0x55, 0x56, 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, 0x66, 0x67, 0x76, 0x66, 0x66, 0x66, 0x65, 0x55, 0x55, 0x43, 0x22, 0x22, 0x22, 0x34, 0x99, 0x90,
+ 0xBB, 0x43, 0x32, 0x22, 0x23, 0x44, 0x55, 0x55, 0x56, 0x66, 0x66, 0x76, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, 0x66, 0x65, 0x54, 0x21, 0x12, 0x22, 0x33, 0x69, 0x90,
+ 0xBC, 0x33, 0x32, 0x22, 0x24, 0x45, 0x55, 0x66, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x65, 0x55, 0x42, 0x12, 0x22, 0x34, 0x79, 0x90,
+ 0xBB, 0x33, 0x22, 0x22, 0x34, 0x45, 0x55, 0x66, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, 0x55, 0x43, 0x11, 0x22, 0x33, 0x69, 0x90,
+ 0xBB, 0x23, 0x23, 0x22, 0x34, 0x55, 0x55, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x55, 0x43, 0x22, 0x22, 0x33, 0x49, 0x90,
+ 0xBB, 0x23, 0x33, 0x33, 0x34, 0x55, 0x55, 0x66, 0x67, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, 0x77, 0x87, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x65, 0x54, 0x32, 0x22, 0x33, 0x47, 0x90,
+ 0xBA, 0x33, 0x33, 0x33, 0x44, 0x55, 0x55, 0x66, 0x67, 0x67, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x77, 0x77, 0x76, 0x65, 0x55, 0x32, 0x22, 0x33, 0x38, 0x90,
+ 0xB8, 0x33, 0x23, 0x33, 0x44, 0x55, 0x55, 0x66, 0x66, 0x77, 0x77, 0x77, 0x78, 0x88, 0x89, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x77, 0x76, 0x66, 0x55, 0x32, 0x23, 0x24, 0x38, 0x90,
+ 0xB9, 0x33, 0x33, 0x33, 0x45, 0x55, 0x55, 0x56, 0x66, 0x67, 0x77, 0x78, 0x88, 0x88, 0x89, 0x98, 0x99, 0x99, 0x98, 0x88, 0x87, 0x77, 0x77, 0x76, 0x66, 0x65, 0x43, 0x23, 0x33, 0x49, 0x90,
+ 0xB9, 0x32, 0x33, 0x34, 0x44, 0x55, 0x55, 0x56, 0x66, 0x67, 0x77, 0x88, 0x88, 0x88, 0x89, 0x88, 0x99, 0x89, 0x98, 0x88, 0x88, 0x77, 0x77, 0x76, 0x66, 0x65, 0x43, 0x33, 0x33, 0x49, 0x90,
+ 0xB9, 0x22, 0x33, 0x34, 0x44, 0x55, 0x55, 0x56, 0x66, 0x67, 0x77, 0x88, 0x88, 0x88, 0x99, 0x89, 0x98, 0x98, 0x88, 0x88, 0x88, 0x77, 0x76, 0x76, 0x66, 0x55, 0x43, 0x33, 0x34, 0x79, 0x90,
+ 0xB8, 0x32, 0x33, 0x34, 0x44, 0x55, 0x55, 0x56, 0x66, 0x67, 0x77, 0x87, 0x88, 0x88, 0x89, 0x89, 0x99, 0x98, 0x88, 0x88, 0x88, 0x77, 0x76, 0x66, 0x65, 0x55, 0x44, 0x33, 0x33, 0x89, 0x90,
+ 0xB5, 0x32, 0x33, 0x34, 0x44, 0x55, 0x55, 0x56, 0x66, 0x67, 0x77, 0x77, 0x88, 0x88, 0x89, 0x89, 0x99, 0x88, 0x88, 0x88, 0x78, 0x77, 0x76, 0x66, 0x66, 0x65, 0x43, 0x33, 0x33, 0x99, 0x90,
+ 0xB5, 0x32, 0x23, 0x34, 0x45, 0x55, 0x56, 0x66, 0x66, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x98, 0x89, 0x88, 0x88, 0x87, 0x77, 0x77, 0x66, 0x66, 0x55, 0x43, 0x33, 0x25, 0x99, 0x90,
+ 0xBA, 0x32, 0x23, 0x33, 0x45, 0x55, 0x66, 0x56, 0x66, 0x77, 0x77, 0x77, 0x78, 0x88, 0x89, 0x89, 0x88, 0x89, 0x88, 0x88, 0x88, 0x77, 0x77, 0x76, 0x66, 0x55, 0x43, 0x33, 0x28, 0x99, 0x90,
+ 0xB9, 0x23, 0x33, 0x34, 0x45, 0x55, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x77, 0x77, 0x66, 0x65, 0x43, 0x23, 0x29, 0x99, 0x90,
+ 0xB9, 0x23, 0x33, 0x33, 0x55, 0x56, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x89, 0x88, 0x88, 0x78, 0x77, 0x77, 0x77, 0x76, 0x65, 0x43, 0x23, 0x39, 0x99, 0x90,
+ 0xBB, 0x33, 0x33, 0x34, 0x55, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, 0x77, 0x77, 0x76, 0x66, 0x53, 0x23, 0x1A, 0x99, 0x90,
+ 0xAA, 0x33, 0x33, 0x33, 0x55, 0x56, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x89, 0x88, 0x88, 0x88, 0x78, 0x77, 0x77, 0x76, 0x66, 0x53, 0x23, 0x1A, 0xA9, 0x90,
+ 0xAA, 0x23, 0x33, 0x34, 0x56, 0x66, 0x66, 0x66, 0x66, 0x66, 0x77, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x77, 0x76, 0x66, 0x53, 0x23, 0x1A, 0x99, 0x90,
+ 0xAA, 0x73, 0x33, 0x45, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x66, 0x78, 0x88, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x66, 0x66, 0x77, 0x76, 0x66, 0x53, 0x33, 0x3A, 0x9A, 0xA0,
+ 0xAB, 0x84, 0x33, 0x35, 0x66, 0x56, 0x55, 0x44, 0x45, 0x43, 0x33, 0x34, 0x56, 0x67, 0x87, 0x77, 0x77, 0x88, 0x65, 0x65, 0x45, 0x55, 0x65, 0x66, 0x66, 0x66, 0x64, 0x33, 0x5A, 0x9A, 0xA0,
+ 0xAA, 0x33, 0x33, 0x36, 0x66, 0x65, 0x44, 0x45, 0x56, 0x55, 0x44, 0x44, 0x55, 0x66, 0x77, 0x67, 0x77, 0x77, 0x54, 0x44, 0x44, 0x44, 0x45, 0x55, 0x66, 0x66, 0x63, 0x33, 0x8A, 0x9A, 0xA0,
+ 0xA6, 0x63, 0x33, 0x46, 0x66, 0x65, 0x55, 0x56, 0x67, 0x77, 0x76, 0x55, 0x55, 0x66, 0x78, 0x77, 0x87, 0x76, 0x55, 0x55, 0x67, 0x77, 0x76, 0x55, 0x55, 0x66, 0x63, 0x43, 0x99, 0x9A, 0xA0,
+ 0xA5, 0x35, 0x33, 0x46, 0x66, 0x55, 0x55, 0x65, 0x65, 0x52, 0x34, 0x45, 0x54, 0x56, 0x78, 0x88, 0x88, 0x76, 0x66, 0x77, 0x88, 0x87, 0x77, 0x65, 0x65, 0x56, 0x63, 0x33, 0x34, 0xAA, 0xA0,
+ 0xB4, 0x45, 0x44, 0x46, 0x66, 0x65, 0x55, 0x43, 0x12, 0x2A, 0x12, 0x54, 0x44, 0x45, 0x68, 0x88, 0x88, 0x76, 0x66, 0x44, 0x12, 0x46, 0x77, 0x66, 0x66, 0x66, 0x63, 0x33, 0x77, 0x9A, 0xA0,
+ 0xB4, 0x45, 0x54, 0x46, 0x66, 0x66, 0x65, 0x32, 0x83, 0x22, 0x35, 0x75, 0x55, 0x45, 0x68, 0x88, 0x87, 0x65, 0x54, 0x51, 0x2A, 0x24, 0x24, 0x66, 0x67, 0x76, 0x63, 0x37, 0x75, 0x8A, 0xA0,
+ 0xB6, 0x45, 0x44, 0x56, 0x66, 0x66, 0x54, 0x55, 0x66, 0x34, 0x58, 0x56, 0x67, 0x44, 0x67, 0x88, 0x86, 0x68, 0x56, 0x83, 0x32, 0x39, 0x74, 0x46, 0x67, 0x77, 0x64, 0x57, 0x66, 0x9A, 0xA0,
+ 0xA7, 0x56, 0x54, 0x56, 0x66, 0x66, 0x56, 0x66, 0x66, 0x66, 0x77, 0x66, 0x66, 0x55, 0x67, 0x88, 0x87, 0x77, 0x65, 0x67, 0x44, 0x77, 0x66, 0x55, 0x67, 0x77, 0x64, 0x68, 0x76, 0x9A, 0xA0,
+ 0xA8, 0x56, 0x54, 0x56, 0x66, 0x66, 0x65, 0x56, 0x66, 0x77, 0x87, 0x66, 0x65, 0x55, 0x67, 0x78, 0x87, 0x67, 0x66, 0x67, 0x76, 0x77, 0x76, 0x66, 0x67, 0x76, 0x64, 0x78, 0x65, 0x9A, 0xA0,
+ 0xAB, 0x66, 0x43, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x76, 0x55, 0x56, 0x67, 0x87, 0x77, 0x76, 0x77, 0x77, 0x78, 0x88, 0x77, 0x77, 0x76, 0x76, 0x64, 0x88, 0x67, 0xAA, 0xA0,
+ 0xAB, 0x56, 0x44, 0x56, 0x66, 0x66, 0x76, 0x66, 0x77, 0x77, 0x77, 0x66, 0x65, 0x56, 0x67, 0x77, 0x87, 0x76, 0x77, 0x87, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x65, 0x68, 0x78, 0xAA, 0xA0,
+ 0xAA, 0x46, 0x46, 0x56, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x76, 0x77, 0x65, 0x66, 0x67, 0x88, 0x87, 0x76, 0x77, 0x88, 0x88, 0x77, 0x88, 0x77, 0x77, 0x76, 0x66, 0x68, 0x7A, 0xAA, 0xA0,
+ 0xBA, 0x46, 0x55, 0x56, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x65, 0x67, 0x78, 0x87, 0x66, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x77, 0x76, 0x67, 0x78, 0x7A, 0xAA, 0xA0,
+ 0xAA, 0x46, 0x63, 0x67, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x67, 0x78, 0x87, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x88, 0x77, 0x76, 0x76, 0x78, 0x9A, 0xAA, 0xA0,
+ 0xAA, 0x55, 0x65, 0x37, 0x66, 0x66, 0x67, 0x67, 0x77, 0x77, 0x77, 0x77, 0x66, 0x56, 0x66, 0x78, 0x77, 0x66, 0x77, 0x88, 0x77, 0x77, 0x78, 0x88, 0x77, 0x76, 0x86, 0x78, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0x95, 0x76, 0x56, 0x66, 0x66, 0x66, 0x77, 0x77, 0x87, 0x77, 0x87, 0x75, 0x56, 0x67, 0x78, 0x77, 0x76, 0x88, 0x88, 0x88, 0x77, 0x78, 0x87, 0x77, 0x77, 0x67, 0x77, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0xA5, 0x66, 0x57, 0x66, 0x66, 0x67, 0x77, 0x77, 0x87, 0x88, 0x87, 0x55, 0x56, 0x67, 0x77, 0x87, 0x66, 0x78, 0x88, 0x88, 0x88, 0x87, 0x87, 0x78, 0x76, 0x79, 0x77, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0xA7, 0x66, 0x57, 0x66, 0x66, 0x67, 0x77, 0x77, 0x88, 0x88, 0x76, 0x56, 0x66, 0x67, 0x78, 0x87, 0x66, 0x68, 0x89, 0x88, 0x88, 0x88, 0x87, 0x77, 0x76, 0x99, 0x77, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0xAA, 0x66, 0x56, 0x66, 0x66, 0x77, 0x77, 0x78, 0x88, 0x77, 0x65, 0x57, 0x66, 0x67, 0x8A, 0x97, 0x77, 0x77, 0x79, 0x98, 0x98, 0x88, 0x88, 0x87, 0x76, 0x88, 0x6A, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0xAA, 0x66, 0x57, 0x66, 0x66, 0x77, 0x77, 0x78, 0x88, 0x76, 0x65, 0x57, 0x76, 0x68, 0x89, 0x88, 0x77, 0x77, 0x77, 0x89, 0x98, 0x88, 0x88, 0x87, 0x76, 0x87, 0x6A, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0xAA, 0xA6, 0x57, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, 0x65, 0x44, 0x46, 0x68, 0x88, 0x88, 0x77, 0x77, 0x77, 0x88, 0x98, 0x88, 0x88, 0x87, 0x76, 0x88, 0x7A, 0xAA, 0xAA, 0xA0,
+ 0xA9, 0xAA, 0xAA, 0xA8, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x76, 0x76, 0x55, 0x44, 0x47, 0x77, 0x86, 0x55, 0x77, 0x77, 0x78, 0x88, 0x88, 0x88, 0x77, 0x76, 0x76, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0xAA, 0xAA, 0xA9, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x76, 0x66, 0x66, 0x54, 0x45, 0x66, 0x66, 0x66, 0x77, 0x78, 0x88, 0x88, 0x88, 0x88, 0x77, 0x66, 0x8B, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0x9A, 0xAA, 0xA9, 0x9A, 0x77, 0x66, 0x77, 0x77, 0x77, 0x77, 0x76, 0x66, 0x66, 0x66, 0x65, 0x45, 0x56, 0x67, 0x77, 0x77, 0x87, 0x88, 0x88, 0x88, 0x77, 0x75, 0xBA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0xAA, 0xAA, 0xAA, 0x67, 0x66, 0x77, 0x77, 0x77, 0x77, 0x66, 0x66, 0x67, 0x67, 0x87, 0x77, 0x77, 0x77, 0x77, 0x77, 0x87, 0x78, 0x88, 0x88, 0x77, 0x64, 0xBA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xA9, 0xAA, 0xAA, 0xAA, 0x67, 0x66, 0x67, 0x77, 0x77, 0x77, 0x56, 0x55, 0x55, 0x66, 0x77, 0x77, 0x78, 0x87, 0x67, 0x77, 0x88, 0x77, 0x88, 0x88, 0x77, 0x75, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0xAA, 0xAA, 0xA9, 0x57, 0x66, 0x67, 0x78, 0x87, 0x76, 0x33, 0x34, 0x33, 0x45, 0x57, 0x77, 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x87, 0x77, 0x79, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0xAA, 0xAA, 0xAA, 0x76, 0x66, 0x77, 0x77, 0x89, 0x77, 0x66, 0x54, 0x44, 0x43, 0x23, 0x34, 0x34, 0x56, 0x66, 0x75, 0x68, 0x78, 0x88, 0x88, 0x77, 0x5B, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0xAA, 0xAA, 0xAA, 0x76, 0x66, 0x75, 0x78, 0x88, 0x77, 0x76, 0x65, 0x55, 0x56, 0x65, 0x55, 0x55, 0x43, 0x34, 0x67, 0x67, 0x88, 0x88, 0x88, 0x76, 0x5A, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xA9, 0xAA, 0xAA, 0xAA, 0x76, 0x77, 0x76, 0x77, 0x78, 0x87, 0x76, 0x66, 0x65, 0x56, 0x66, 0x67, 0x66, 0x56, 0x67, 0x88, 0x88, 0x88, 0x88, 0x87, 0x76, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xA9, 0xAA, 0xAA, 0xAA, 0x66, 0x67, 0x67, 0x77, 0x78, 0x87, 0x76, 0x76, 0x76, 0x66, 0x76, 0x67, 0x67, 0x77, 0x78, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xA9, 0x9A, 0xAA, 0xAA, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x76, 0x76, 0x77, 0x67, 0x66, 0x67, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, 0x7B, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xA9, 0xAA, 0xAA, 0xAA, 0x66, 0x56, 0x67, 0x77, 0x77, 0x77, 0x76, 0x67, 0x67, 0x77, 0x77, 0x77, 0x88, 0x88, 0x78, 0x88, 0x88, 0x88, 0x88, 0x77, 0x6A, 0xBA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xA9, 0xAA, 0xAA, 0x74, 0x65, 0x55, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x77, 0xBA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0xAA, 0x9A, 0xA8, 0x54, 0x65, 0x55, 0x66, 0x66, 0x67, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x78, 0x5B, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0x99, 0xA9, 0x97, 0x45, 0x66, 0x65, 0x66, 0x66, 0x66, 0x66, 0x77, 0x77, 0x66, 0x67, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x88, 0x88, 0x76, 0xBA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xBA, 0xA0,
+ 0x99, 0x99, 0x85, 0x75, 0x66, 0x66, 0x55, 0x55, 0x66, 0x66, 0x67, 0x77, 0x67, 0x77, 0x78, 0x87, 0x88, 0x88, 0x88, 0x88, 0x78, 0x77, 0x75, 0xBA, 0xAA, 0xAA, 0xAA, 0xAA, 0xBB, 0xAA, 0xA0,
+ 0x99, 0x99, 0x93, 0x73, 0x66, 0x66, 0x55, 0x55, 0x56, 0x66, 0x66, 0x77, 0x67, 0x78, 0x78, 0x88, 0x88, 0x88, 0x88, 0x87, 0x87, 0x77, 0x67, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0x99, 0x99, 0x95, 0x63, 0x65, 0x66, 0x56, 0x55, 0x55, 0x56, 0x67, 0x77, 0x67, 0x67, 0x78, 0x88, 0x88, 0x88, 0x87, 0x77, 0x77, 0x76, 0x66, 0xAB, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0x99, 0x99, 0x97, 0x33, 0x65, 0x55, 0x55, 0x55, 0x55, 0x55, 0x66, 0x66, 0x66, 0x77, 0x77, 0x77, 0x88, 0x87, 0x77, 0x77, 0x76, 0x66, 0x74, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA0,
+ 0x99, 0x99, 0xA3, 0x32, 0x55, 0x66, 0x65, 0x55, 0x55, 0x55, 0x65, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x88, 0x77, 0x77, 0x66, 0x67, 0x62, 0xA9, 0xAA, 0xBA, 0xAA, 0xBB, 0xAA, 0xAA, 0xA0,
+ 0x99, 0x9A, 0x91, 0x23, 0x56, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x66, 0x66, 0x77, 0x77, 0x77, 0x77, 0x87, 0x77, 0x66, 0x76, 0x77, 0x62, 0x9A, 0xAA, 0xBA, 0xBA, 0xAA, 0xBA, 0xBA, 0xA0,
+ 0x99, 0x9A, 0xA1, 0x33, 0x56, 0x66, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x66, 0x67, 0x77, 0x76, 0x76, 0x76, 0x66, 0x67, 0x77, 0x77, 0x33, 0x9A, 0xAA, 0xAA, 0xAA, 0xAA, 0xBB, 0xAB, 0xB0,
+ 0x99, 0x9A, 0xA2, 0x23, 0x55, 0x66, 0x66, 0x65, 0x55, 0x55, 0x55, 0x55, 0x56, 0x66, 0x66, 0x66, 0x66, 0x55, 0x56, 0x67, 0x77, 0x77, 0x23, 0x9A, 0xAA, 0xBB, 0xBB, 0xAA, 0xBA, 0xAA, 0xB0,
+ 0x99, 0x9A, 0xA5, 0x34, 0x55, 0x66, 0x66, 0x65, 0x66, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x66, 0x67, 0x77, 0x77, 0x77, 0x22, 0x9A, 0xAB, 0xAA, 0xBA, 0xAA, 0xBA, 0xAA, 0xA0,
+ 0x99, 0x9A, 0xA8, 0x34, 0x45, 0x66, 0x66, 0x56, 0x66, 0x65, 0x55, 0x55, 0x55, 0x55, 0x55, 0x56, 0x66, 0x67, 0x77, 0x77, 0x77, 0x75, 0x31, 0x8A, 0xAA, 0x9A, 0xAA, 0xBB, 0xAB, 0xBA, 0xA0,
+ 0x99, 0x9A, 0xA9, 0x34, 0x45, 0x66, 0x76, 0x66, 0x66, 0x65, 0x66, 0x66, 0x66, 0x65, 0x67, 0x77, 0x77, 0x77, 0x88, 0x77, 0x77, 0x75, 0x31, 0x9B, 0xBA, 0xBA, 0xAA, 0x9A, 0xBB, 0xBA, 0xB0,
+ 0x9A, 0x9A, 0xAA, 0x54, 0x45, 0x56, 0x66, 0x76, 0x77, 0x66, 0x66, 0x77, 0x77, 0x77, 0x67, 0x77, 0x77, 0x77, 0x78, 0x77, 0x77, 0x64, 0x31, 0xAA, 0xAA, 0xAB, 0xBB, 0xBA, 0x9A, 0xAA, 0xB0,
+ 0x99, 0x9A, 0xAA, 0xA3, 0x45, 0x56, 0x66, 0x77, 0x77, 0x67, 0x67, 0x77, 0x77, 0x77, 0x88, 0x88, 0x88, 0x88, 0x87, 0x77, 0x77, 0x64, 0x35, 0xAA, 0xBA, 0xBB, 0xBA, 0xAA, 0xBB, 0xAA, 0xA0,
+ 0xA9, 0xAA, 0xAA, 0xB8, 0x44, 0x56, 0x66, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x88, 0x89, 0x88, 0x88, 0x88, 0x78, 0x77, 0x77, 0x53, 0x27, 0xAB, 0xBA, 0xBA, 0xBB, 0xBB, 0xBA, 0xAA, 0xB0
+};
+
+/*********************************************************************
+*
+* GUIDEMO_bm4bpp
+*
+**********************************************************************
+*/
+
+const GUI_BITMAP GUIDEMO_bm4bpp = {
+ 61, /* XSize */
+ 92, /* YSize */
+ 31, /* BytesPerLine */
+ 4, /* BitsPerPixel */
+ _acJoerg, /* Pointer to picture data (indices) */
+ &_PalJoerg /* Pointer to palette */
+};
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Circle.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Circle.c
new file mode 100644
index 0000000..6836833
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Circle.c
@@ -0,0 +1,76 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Circle.c
+Purpose : Drawing circles
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+/*********************************************************************
+*
+* GUIDEMO_Circle
+*
+**********************************************************************
+*/
+
+void GUIDEMO_Circle(void) {
+ int x0, y0, r;
+ GUIDEMO_ShowIntro("Circles",
+ "\nArbitrary circles"
+ "\nand arcs.");
+ GUI_Clear();
+ GUI_SetFont(&GUI_Font8x16);
+ GUI_SetColor(GUI_WHITE);
+ x0 = LCD_XSIZE >> 1;
+ y0 = LCD_YSIZE >> 1;
+ #if GUIDEMO_LARGE
+ r = 50;
+ GUI_DispStringAt("Circle", 0, 0);
+ #elif !(GUIDEMO_TINY)
+ r = 40;
+ #else
+ #if (LCD_YSIZE < 80)
+ r = 23;
+ #else
+ r = 30;
+ #endif
+ #endif
+ GUI_FillCircle (x0, y0, r);
+ GUIDEMO_Wait();
+ GUI_SetDrawMode(GUI_DM_XOR);
+ #if GUIDEMO_LARGE
+ GUI_FillCircle (x0, y0, r + 10);
+ #elif !(GUIDEMO_TINY)
+ GUI_FillCircle (x0, y0, r + 8);
+ #else
+ GUI_FillCircle (x0, y0, r + 6);
+ #endif
+ GUI_SetDrawMode(0);
+ GUIDEMO_Wait();
+ #if GUI_SUPPORT_AA
+ #if GUIDEMO_LARGE
+ GUIDEMO_ShowInfo("Circles with\nAntialiasing");
+ #endif
+ GUI_Clear();
+ GUI_SetColor(GUI_WHITE);
+ #if GUIDEMO_LARGE
+ GUI_DispStringAt("Antialiased\ncircle", 0, 0);
+ #endif
+ GUI_AA_FillCircle(x0, y0, r - 2);
+ GUIDEMO_Wait();
+ #endif
+}
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_ColorBar.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_ColorBar.c
new file mode 100644
index 0000000..bf8198a
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_ColorBar.c
@@ -0,0 +1,166 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_ShowColorBar.c
+Purpose : Draws color bars
+----------------------------------------------------------------------
+*/
+
+#include "LCD.h" /* interface definitions */
+#include "LCD_ConfDefaults.h" /* valid LCD configuration */
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+/*********************************************************************
+*
+* GUIDEMO_ShowColorBar
+*
+**********************************************************************
+*/
+
+#if LCD_BITSPERPIXEL > 2
+
+void GUIDEMO_ShowColorBar(void) {
+ int nBars = 13;
+ int NumColors = LCD_GetDevCap(LCD_DEVCAP_NUMCOLORS);
+ int XSize = LCD_XSIZE;
+ int i, yStep, y0, x0;
+ #if GUIDEMO_LARGE
+ y0 = 70;
+ x0 = 60;
+ GUIDEMO_ShowIntro("Color bar",
+ "emWin features "
+ "\nan integrated color"
+ "\nmanagement"
+ "\nwill always find the best available color"
+ "\nfor any logical color");
+ #else
+ #if !(GUIDEMO_TINY)
+ y0 = 55;
+ x0 = 55;
+ GUIDEMO_ShowIntro("Color bar",
+ "emWin features "
+ "\nan integrated color"
+ "\nmanagement will always"
+ "\nfind the best available"
+ "\ncolor for any logical color");
+ #else
+ y0 = 16;
+ x0 = 40;
+ GUIDEMO_ShowIntro("Color bar",
+ "emWin features "
+ "\nan integrated color"
+ "\nmanagement");
+ #endif
+ #endif
+ XSize -= x0;
+ #if (LCD_YSIZE < 320)
+ yStep = (LCD_YSIZE - y0) / nBars;
+ #else
+ yStep = (LCD_YSIZE - y0 - 60) / nBars;
+ #endif
+ GUI_SetColor(GUI_WHITE);
+ GUI_SetBkColor(GUI_BLACK);
+ GUI_Clear();
+ GUI_SetFont(&GUI_Font8x16);
+ GUI_DispString("Color bars\n");
+ #if !(GUIDEMO_TINY)
+ GUI_SetFont(&GUI_Font8_ASCII);
+ #ifdef LCD_CONTROLLER
+ GUI_DispString("\nLCD_CONTROLLER: ");
+ GUI_DispDecMin(LCD_CONTROLLER);
+ GUI_DispString("\n");
+ #endif
+ GUI_DispDecMin(LCD_BITSPERPIXEL);
+ GUI_DispString(" bpp");
+ #ifdef LCD_BUSWIDTH
+ GUI_DispString(", ");
+ GUI_DispDecMin(LCD_BUSWIDTH);
+ GUI_DispString(" bit bus");
+ #endif
+ GUI_DispString(", ");
+ GUI_DispDecMin(NumColors);
+ GUI_DispString(" colors\n");
+ #if (LCD_FIXEDPALETTE)
+ GUI_DispString("Fixed palette: ");
+ GUI_DispDecMin(LCD_FIXEDPALETTE);
+ #else
+ GUI_DispString("(Custom)");
+ #endif
+ #endif
+ #if !GUIDEMO_LARGE
+ #if (LCD_YSIZE < 100)
+ GUI_SetFont(&GUI_Font4x6);
+ #elif (LCD_YSIZE < 160)
+ GUI_SetFont(&GUI_Font6x8);
+ #else
+ GUI_SetFont(&GUI_Font8x8);
+ #endif
+ #else
+ GUI_SetFont(&GUI_Font8x8);
+ #endif
+ GUI_SetColor(GUI_WHITE);
+ GUI_DispStringAt("Red", 0, y0 + yStep);
+ GUI_DispStringAt("Green", 0, y0 + 3 * yStep);
+ GUI_DispStringAt("Blue", 0, y0 + 5 * yStep);
+ GUI_DispStringAt("Grey", 0, y0 + 6 * yStep);
+ GUI_DispStringAt("Yellow", 0, y0 + 8 * yStep);
+ GUI_DispStringAt("Cyan", 0, y0 + 10 * yStep);
+ GUI_DispStringAt("Magenta", 0, y0 + 12 * yStep);
+ for (i = 0; (i < XSize) && !GUIDEMO_CheckCancel(); i++) {
+ U16 cs = (255 * (U32)i) / XSize;
+ U16 x = x0 + i;;
+/* Red */
+ GUI_SetColor(cs);
+ GUI_DrawVLine(x, y0, y0 + yStep - 1);
+ GUI_SetColor(0x0000ff + (255 - cs) * 0x10100L);
+ GUI_DrawVLine(x, y0 + yStep, y0 + 2 * yStep - 1);
+/* Green */
+ GUI_SetColor(cs<<8);
+ GUI_DrawVLine(x, y0 + 2 * yStep, y0 + 3 * yStep - 1);
+ GUI_SetColor(0x00ff00 + (255 - cs) * 0x10001L);
+ GUI_DrawVLine(x, y0 + 3 * yStep, y0 + 4 * yStep - 1);
+/* Blue */
+ GUI_SetColor(cs * 0x10000L);
+ GUI_DrawVLine(x, y0 + 4 * yStep, y0 + 5 * yStep - 1);
+ GUI_SetColor(0xff0000 + (255 - cs) * 0x00101L);
+ GUI_DrawVLine(x, y0 + 5 * yStep, y0 + 6 * yStep - 1);
+/* Gray */
+ GUI_SetColor(cs * 0x10101L);
+ GUI_DrawVLine(x, y0 + 6 * yStep, y0 + 7 * yStep - 1);
+/* Yellow */
+ GUI_SetColor(cs * 0x00101L);
+ GUI_DrawVLine(x, y0 + 7 * yStep, y0 + 8 * yStep - 1);
+ GUI_SetColor(0x00ffff + (255 - cs) * 0x10000L);
+ GUI_DrawVLine(x, y0 + 8 * yStep, y0 + 9 * yStep - 1);
+/* Cyan */
+ GUI_SetColor(cs * 0x10100L);
+ GUI_DrawVLine(x, y0 + 9 * yStep, y0 + 10 * yStep - 1);
+ GUI_SetColor(0xffff00 + (255 - cs) * 0x00001L);
+ GUI_DrawVLine(x, y0 + 10 * yStep, y0 + 11 * yStep - 1);
+/* Magenta */
+ GUI_SetColor(cs * 0x10001L);
+ GUI_DrawVLine(x, y0 + 11 * yStep, y0 + 12 * yStep - 1);
+ GUI_SetColor(0xff00ff + (255 - cs) * 0x00100L);
+ GUI_DrawVLine(x, y0 + 12 * yStep, y0 + 13 * yStep - 1);
+ }
+ GUIDEMO_Wait();
+}
+
+#else
+
+void GUIDEMO_ShowColorBar(void) {}
+
+#endif
+
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_ColorList.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_ColorList.c
new file mode 100644
index 0000000..8617877
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_ColorList.c
@@ -0,0 +1,118 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_ColorList.c
+Purpose : Shows color list
+----------------------------------------------------------------------
+*/
+
+#include "LCD_ConfDefaults.h" /* valid LCD configuration */
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+/*********************************************************************
+*
+* GUIDEMO_ShowColorList
+*
+**********************************************************************
+*/
+
+#if (LCD_BITSPERPIXEL > 2) && (LCD_BITSPERPIXEL <= 8)
+
+void GUIDEMO_ShowColorList(void) {
+ int NumColors = LCD_GetDevCap(LCD_DEVCAP_NUMCOLORS);
+ int Lines = (NumColors - 1) / 16 + 1;
+ int y0;
+ #if (LCD_BITSPERPIXEL > 8)
+ int XStep = LCD_XSIZE / 256;
+ int YStep = NumColors / 256;
+ #endif
+ int i;
+ #if GUIDEMO_LARGE
+ y0 = 70;
+ #elif !(GUIDEMO_TINY)
+ #if (LCD_YSIZE < 120)
+ y0 = 50;
+ #else
+ y0 = 55;
+ #endif
+ #else
+ y0 = 16;
+ #endif
+ GUIDEMO_ShowIntro("Available colors",
+ "Shows the first of the"
+ "\navailable colors in the"
+ "\nsimulated configuration");
+ GUI_SetColor(GUI_WHITE);
+ GUI_SetBkColor(GUI_BLACK);
+ GUI_Clear();
+ GUI_SetFont(&GUI_Font8x16);
+ GUI_DispString("Available colors\n");
+ #if !(GUIDEMO_TINY)
+ GUI_SetFont(&GUI_Font8_ASCII);
+ #ifdef LCD_CONTROLLER
+ GUI_DispString("\nLCD_CONTROLLER: ");
+ GUI_DispDecMin(LCD_CONTROLLER);
+ GUI_DispString("\n");
+ #endif
+ GUI_DispDecMin(LCD_BITSPERPIXEL);
+ GUI_DispString(" bpp");
+ #ifdef LCD_BUSWIDTH
+ GUI_DispString(", ");
+ GUI_DispDecMin(LCD_BUSWIDTH);
+ GUI_DispString(" bit bus");
+ #endif
+ GUI_DispString(", ");
+ GUI_DispDecMin(NumColors);
+ GUI_DispString(" colors\n");
+ #if (LCD_FIXEDPALETTE)
+ GUI_DispString("Fixed palette: ");
+ GUI_DispDecMin(LCD_FIXEDPALETTE);
+ #else
+ GUI_DispString("(Custom)");
+ #endif
+ #endif
+ #if (LCD_BITSPERPIXEL <= 8)
+ {
+ int XStep = LCD_XSIZE / 16;
+ #if (LCD_YSIZE < 320)
+ int YStep = (LCD_YSIZE - y0) / Lines;
+ #else
+ int YStep = (LCD_YSIZE - y0 - 60) / Lines;
+ #endif
+ int dy = (YStep <= 3) ? 1 : 2;
+ for (i = 0; i < NumColors; i++) {
+ GUI_SetColorIndex(i);
+ GUI_FillRect((i%16) * XStep + 2,
+ (i/16) * YStep + y0 + 1,
+ (i%16 + 1) * XStep - 1,
+ (i/16 + 1) * YStep + y0 - dy);
+ }
+ }
+ #else
+ {
+ for (i = 0; i < NumColors; i++) {
+ GUI_SetColorIndex(i);
+ GUI_DrawPoint((U8)(i) + ((LCD_XSIZE - 1 - 256) >> 1), (i >> 8) + y0);
+ }
+ }
+ #endif
+ GUIDEMO_Delay(2500);
+}
+
+#else
+
+void GUIDEMO_ShowColorList(void) {}
+
+#endif
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Cursor.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Cursor.c
new file mode 100644
index 0000000..1f938bb
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Cursor.c
@@ -0,0 +1,303 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Cursor.c
+Purpose : shows Cursor-API
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+#if (GUI_SUPPORT_CURSOR & GUI_SUPPORT_TOUCH)
+
+/*********************************************************************
+*
+* defines
+*
+**********************************************************************
+*/
+
+#define countof(Obj) (sizeof(Obj)/sizeof(Obj[0]))
+
+#if GUIDEMO_LARGE
+ #define NUM_CURSORS 3
+ #define XMAX 28
+#else
+ #define NUM_CURSORS 2
+ #define XMAX 24
+#endif
+
+/*********************************************************************
+*
+* types
+*
+**********************************************************************
+*/
+
+typedef struct {
+ const GUI_CURSOR* pCursor;
+ char Size;
+} CURSOR_INFO;
+
+typedef struct {
+ const CURSOR_INFO aCursor[NUM_CURSORS];
+ const char* pType;
+} CURSORTYPE_INFO;
+
+/*********************************************************************
+*
+* static data
+*
+**********************************************************************
+*/
+
+static const CURSORTYPE_INFO _CursorArrow = {
+ &GUI_CursorArrowS, 'S',
+ &GUI_CursorArrowM, 'M',
+ #if (NUM_CURSORS == 3)
+ &GUI_CursorArrowL, 'L',
+ "arrow cursors"
+ #else
+ "arrow\ncursors"
+ #endif
+};
+
+#if !(GUIDEMO_TINY)
+ static const CURSORTYPE_INFO _CursorArrowI = {
+ &GUI_CursorArrowSI, 'S',
+ &GUI_CursorArrowMI, 'M',
+ #if (NUM_CURSORS == 3)
+ &GUI_CursorArrowLI, 'L',
+ "inverted arrow cursors"
+ #else
+ "inverted\narrow cursors"
+ #endif
+ };
+#endif
+
+static const CURSORTYPE_INFO _CursorCross = {
+ &GUI_CursorCrossS, 'S',
+ &GUI_CursorCrossM, 'M',
+ #if (NUM_CURSORS == 3)
+ &GUI_CursorCrossL, 'L',
+ "cross cursors"
+ #else
+ "cross\ncursors"
+ #endif
+};
+
+#if !(GUIDEMO_TINY)
+ static const CURSORTYPE_INFO _CursorCrossI = {
+ &GUI_CursorCrossSI, 'S',
+ &GUI_CursorCrossMI, 'M',
+ #if (NUM_CURSORS == 3)
+ &GUI_CursorCrossLI, 'L',
+ "inverted cross cursors"
+ #else
+ "inverted\ncross cursors"
+ #endif
+ };
+#endif
+
+static const GUI_CURSOR* _aCursor[] = {
+ &GUI_CursorArrowM,
+ #if !(GUIDEMO_TINY)
+ &GUI_CursorArrowMI,
+ #endif
+ &GUI_CursorCrossM,
+ #if !(GUIDEMO_TINY)
+ &GUI_CursorCrossMI,
+ #endif
+};
+
+/*********************************************************************
+*
+* static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _ShowCursorType
+*/
+static void _ShowCursorType(const CURSORTYPE_INFO* pCursorType, int x0, int y0) {
+ const GUI_CURSOR* pCursor;
+ char Char;
+ int i, x, y;
+ int yMax = 0;
+ int yHot = 0;
+ /* Calculate height and width of biggest cursor */
+ for (i = 0; i < NUM_CURSORS; i++) {
+ pCursor = pCursorType->aCursor[i].pCursor;
+ if (pCursor->pBitmap->YSize > yMax) {
+ yMax = pCursor->pBitmap->YSize;
+ yHot = pCursor->yHot;
+ }
+ }
+ #if ((LCD_YSIZE >= 220) && (LCD_XSIZE >= 300))
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ #else
+ GUI_SetFont(&GUI_Font13B_ASCII);
+ #endif
+ #if (NUM_CURSORS != 3)
+ GUI_SetLBorder(x0);
+ #endif
+ GUI_DispStringAt(pCursorType->pType, x0, y0);
+ #if GUIDEMO_LARGE
+ y0 += GUI_GetFontDistY() + 1;
+ GUI_SetFont(&GUI_Font13B_ASCII);
+ #else
+ #if (LCD_YSIZE < 80)
+ x0 += 50;
+ #else
+ y0 += GUI_GetFontDistY() * 2 + 1;
+ #endif
+ GUI_SetFont(&GUI_Font10_ASCII);
+ #endif
+ for (i = 0; i < NUM_CURSORS; i++) {
+ pCursor = pCursorType->aCursor[i].pCursor;
+ Char = pCursorType->aCursor[i].Size;
+ y = y0 + yHot - pCursor->yHot;
+ x = ((pCursor->pBitmap->XSize - GUI_GetCharDistX(Char)) >> 1);
+ GUI_DrawBitmap(pCursor->pBitmap, x0 + XMAX * i + 5, y);
+ GUI_DispCharAt(Char, x0 + XMAX * i + 5 + x, y0 + yMax + 2);
+ }
+}
+
+/*********************************************************************
+*
+* _MoveCursor
+*/
+static void _MoveCursor(const GUI_CURSOR* Cursor){
+ int x, y;
+ int xMax = LCD_XSIZE >> 1;
+ int yMax = LCD_YSIZE >> 1;
+ #if !GUIDEMO_LARGE
+ xMax *= 1.3;
+ yMax *= 1.3;
+ #endif
+ GUI_CURSOR_Select(Cursor);
+ for(x = y = 0; ((x < xMax) && (y < yMax) && !GUIDEMO_CheckCancel()); x += 6, y += 6) {
+ if ( x == xMax) {
+ x = xMax;
+ }
+ if ( y == yMax) {
+ y = yMax;
+ }
+ GUI_CURSOR_SetPosition(x, y);
+ GUIDEMO_Delay(75);
+ }
+}
+
+/*********************************************************************
+*
+* _DispCursor
+*/
+static void _DispCursor(void) {
+ #if !(GUIDEMO_LARGE)
+ int x0 = 0;
+ #endif
+ int y0, dx, dy;
+ GUI_CURSOR_Hide();
+ GUI_SetTextMode(GUI_TM_TRANS);
+ #if GUIDEMO_LARGE
+ GUI_SetFont(&GUI_FontComic24B_ASCII);
+ GUI_DispStringAt("Available\n cursors:", 18, 12);
+ #else
+ #if GUIDEMO_TINY
+ GUI_SetFont(&GUI_Font13B_ASCII);
+ #else
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ #endif
+ GUI_DispStringHCenterAt("Available cursors:", LCD_XSIZE >> 1, LCD_YSIZE >> 5);
+ #endif
+ /* Display the cursors */
+ #if GUIDEMO_LARGE
+ y0 = 68;
+ dx = LCD_XSIZE / 2.5;
+ #if (LCD_YSIZE > 240)
+ dy = LCD_YSIZE / 3.2;
+ #else
+ dy = 75;
+ #endif
+ #if ((LCD_YSIZE < 220) || (LCD_XSIZE < 300))
+ y0 -= 3;
+ dy -= 12;
+ #endif
+ _ShowCursorType(&_CursorArrow, 0, y0);
+ _ShowCursorType(&_CursorCross, 0, y0 + dy);
+ _ShowCursorType(&_CursorArrowI, dx, y0);
+ _ShowCursorType(&_CursorCrossI, dx, y0 + dy);
+ #else
+ #if GUIDEMO_TINY
+ y0 = 20;
+ #else
+ y0 = 30;
+ #endif
+ #if ((LCD_XSIZE < 160) && ((LCD_YSIZE >= 160) || (LCD_YSIZE < 90)))
+ x0 = 10;
+ #endif
+ dx = LCD_XSIZE / 2.2;
+ dy = LCD_YSIZE / 2.6;
+ _ShowCursorType(&_CursorArrow, x0, y0);
+ #if (LCD_YSIZE >= 160)
+ _ShowCursorType(&_CursorCross, x0, y0 + dy);
+ #elif (LCD_YSIZE < 90)
+ GUIDEMO_Delay(2000);
+ GUI_ClearRect(0, 20, LCD_XSIZE - 1, LCD_YSIZE - 1);
+ _ShowCursorType(&_CursorCross, x0, y0);
+ #else
+ _ShowCursorType(&_CursorCross, dx, y0);
+ #endif
+ #if ((LCD_YSIZE >= 160) && (LCD_XSIZE >= 160))
+ _ShowCursorType(&_CursorArrowI, dx, y0);
+ _ShowCursorType(&_CursorCrossI, dx, y0 + dy);
+ #endif
+ #endif
+}
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIDEMO_Cursor
+*/
+void GUIDEMO_Cursor(void) {
+ int i = 0;
+ GUIDEMO_ShowIntro("Cursor",
+ "\nemWin supports"
+ "\nsoftware cursor");
+ GUIDEMO_SetBkColor(GUI_BLUE);
+ GUI_Clear();
+ _DispCursor();
+ GUIDEMO_Delay(1500);
+ GUIDEMO_NotifyStartNext();
+ GUI_CURSOR_Show();
+ for ( i = 0;(i < countof(_aCursor) && !GUIDEMO_CheckCancel()); i++) {
+ _MoveCursor(_aCursor[i]);
+ }
+ GUI_CURSOR_SetPosition(0,0);
+ GUI_CURSOR_Select(&GUI_CursorArrowM);
+}
+
+#else
+
+void GUIDEMO_Cursor(void) {}
+
+#endif
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Dialog.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Dialog.c
new file mode 100644
index 0000000..6354e62
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Dialog.c
@@ -0,0 +1,272 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Dialog.c
+Purpose : Automotive samples
+----------------------------------------------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI.h"
+#include "GUIDEMO.h"
+#include "LCD_ConfDefaults.h"
+
+#if GUI_SUPPORT_MEMDEV && GUI_WINSUPPORT
+
+#include "WM.h"
+#include "DIALOG.h"
+#include "LISTBOX.h"
+#include "EDIT.h"
+#include "SLIDER.h"
+#include "FRAMEWIN.h"
+
+/*********************************************************************
+*
+* types
+*
+**********************************************************************
+*/
+
+typedef struct {
+ unsigned char Id;
+ int Time;
+} KEYSIM;
+
+/*********************************************************************
+*
+* static data
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_LARGE
+
+static const GUI_WIDGET_CREATE_INFO aDialogCreate[] = {
+ { FRAMEWIN_CreateIndirect, "Dialog", 0, 10, 10, 162, 214, FRAMEWIN_CF_MOVEABLE},
+ { BUTTON_CreateIndirect, "OK", GUI_ID_OK, 90, 5, 60, 20 },
+ { BUTTON_CreateIndirect, "Cancel", GUI_ID_CANCEL, 90, 30, 60, 20 },
+ { TEXT_CreateIndirect, "LText", 0, 5, 59, 43, 15, TEXT_CF_LEFT },
+ { TEXT_CreateIndirect, "RText", 0, 5, 79, 43, 15, TEXT_CF_RIGHT },
+ { TEXT_CreateIndirect, "Hex", 0, 5, 99, 48, 15, TEXT_CF_LEFT },
+ { TEXT_CreateIndirect, "Bin", 0, 5, 119, 48, 15, TEXT_CF_LEFT },
+ { EDIT_CreateIndirect, "", GUI_ID_EDIT0, 50, 59, 100, 15, EDIT_CF_LEFT, 50 },
+ { EDIT_CreateIndirect, "", GUI_ID_EDIT1, 50, 79, 100, 15, EDIT_CF_RIGHT, 50 },
+ { EDIT_CreateIndirect, "", GUI_ID_EDIT2, 50, 99, 100, 15, EDIT_CF_RIGHT, 6 },
+ { EDIT_CreateIndirect, "", GUI_ID_EDIT3, 50, 119, 100, 15, EDIT_CF_LEFT, 0 },
+ { LISTBOX_CreateIndirect, "", GUI_ID_LISTBOX0, 5, 5, 75, 45, 0, 0 },
+ { SLIDER_CreateIndirect, NULL, GUI_ID_SLIDER1, 5, 140, 100, 20, 0, 0 },
+ { SLIDER_CreateIndirect, NULL, GUI_ID_SLIDER0, 5, 165, 145, 26, 0, 0 }
+};
+
+static const KEYSIM _aID[] = {
+ { GUI_KEY_TAB, 400 },
+ { GUI_KEY_TAB, 400 },
+ { GUI_KEY_TAB, 400 },
+ { GUI_KEY_TAB, 400 },
+ { GUI_KEY_TAB, 400 },
+ { GUI_KEY_TAB, 400 },
+ { GUI_KEY_DOWN, 250 },
+ { GUI_KEY_DOWN, 250 },
+ { GUI_KEY_DOWN, 250 },
+ { GUI_KEY_DOWN, 250 },
+ { GUI_KEY_UP, 250 },
+ { GUI_KEY_UP, 250 }
+};
+
+static const GUI_ConstString _apListBox[] = {
+ "English", "Deutsch", "Franais", "Japanese", "Italiano", NULL
+};
+
+#elif !(GUIDEMO_TINY)
+
+static const GUI_WIDGET_CREATE_INFO aDialogCreate[] = {
+ { FRAMEWIN_CreateIndirect, "Dialog", 0, 10, 10, 132, 113, FRAMEWIN_CF_MOVEABLE},
+ { BUTTON_CreateIndirect, "OK", GUI_ID_OK, 5, 5, 55, 20 },
+ { BUTTON_CreateIndirect, "Cancel", GUI_ID_CANCEL, 65, 5, 55, 20 },
+ { TEXT_CreateIndirect, "LText", 0, 5, 32, 33, 15, TEXT_CF_LEFT },
+ { TEXT_CreateIndirect, "RText", 0, 5, 52, 33, 15, TEXT_CF_RIGHT },
+ { EDIT_CreateIndirect, "", GUI_ID_EDIT0, 40, 32, 80, 15, EDIT_CF_LEFT, 50 },
+ { EDIT_CreateIndirect, "", GUI_ID_EDIT1, 40, 52, 80, 15, EDIT_CF_RIGHT, 50 },
+ { SLIDER_CreateIndirect, NULL, GUI_ID_SLIDER0, 5, 74, 116, 20, 0, 0 },
+};
+
+static const KEYSIM _aID[] = {
+ { GUI_KEY_TAB, 400 },
+ { GUI_KEY_TAB, 400 },
+ { GUI_KEY_TAB, 400 },
+ { GUI_KEY_TAB, 400 },
+};
+
+#else
+
+static const GUI_WIDGET_CREATE_INFO aDialogCreate[] = {
+ { FRAMEWIN_CreateIndirect, "Dialog", 0, 0, 0, 110, 84, FRAMEWIN_CF_MOVEABLE},
+ { BUTTON_CreateIndirect, "OK", GUI_ID_OK, 4, 3, 95, 18 },
+ { TEXT_CreateIndirect, "Text", 0, 5, 25, 28, 15, TEXT_CF_LEFT },
+ { EDIT_CreateIndirect, "", GUI_ID_EDIT0, 30, 25, 69, 15, EDIT_CF_LEFT, 50 },
+};
+
+static const KEYSIM _aID[] = {
+ { GUI_KEY_TAB, 400 },
+ { GUI_KEY_TAB, 400 },
+};
+
+#endif
+
+/*********************************************************************
+*
+* static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _cbCallback
+*/
+static void _cbCallback(WM_MESSAGE * pMsg) {
+ WM_HWIN hWin = pMsg->hWin;
+ #if GUIDEMO_LARGE
+ int NCode, Id;
+ #endif
+ switch (pMsg->MsgId) {
+ case WM_INIT_DIALOG:
+ /* Initialize all widgets */
+ #if GUIDEMO_TINY
+ EDIT_SetText(WM_GetDialogItem(hWin, GUI_ID_EDIT0), "EDIT");
+ #else
+ EDIT_SetText(WM_GetDialogItem(hWin, GUI_ID_EDIT0), "EDIT widget 0");
+ EDIT_SetText(WM_GetDialogItem(hWin, GUI_ID_EDIT1), "EDIT widget 1");
+ #endif
+ {
+ #if GUIDEMO_LARGE
+ WM_HWIN hListBox;
+ EDIT_SetHexMode(WM_GetDialogItem(hWin, GUI_ID_EDIT2), 0x1234, 0, 0xffffff);
+ EDIT_SetBinMode(WM_GetDialogItem(hWin, GUI_ID_EDIT3), 0x1234, 0, 0xffff);
+ hListBox = WM_GetDialogItem(hWin, GUI_ID_LISTBOX0);
+ LISTBOX_SetText(hListBox, _apListBox);
+ SCROLLBAR_CreateAttached(hListBox, SCROLLBAR_CF_VERTICAL);
+ #else
+ GUI_RECT Rect;
+ int x, y, ySize;
+ ySize = LCD_GetYSize();
+ if (ySize < 120) {
+ WM_ResizeWindow(hWin, 0, -24);
+ }
+ WM_GetWindowRectEx(hWin, &Rect);
+ x = (LCD_GetXSize() - (Rect.x1 - Rect.x0 + 1)) >> 1;
+ y = (ySize - (Rect.y1 - Rect.y0 + 1)) >> 1;
+ #if GUIDEMO_TINY
+ WM_MoveTo(hWin, x, y);
+ #else
+ WM_MoveTo(hWin, x, y - 4);
+ #endif
+ #endif
+ }
+ break;
+ case WM_KEY:
+ switch (((WM_KEY_INFO*)(pMsg->Data.p))->Key) {
+ case GUI_KEY_ESCAPE:
+ GUI_EndDialog(hWin, 1);
+ break;
+ case GUI_KEY_ENTER:
+ GUI_EndDialog(hWin, 0);
+ break;
+ }
+ break;
+ #if GUIDEMO_LARGE
+ case WM_NOTIFY_PARENT:
+ Id = WM_GetId(pMsg->hWinSrc); /* Id of widget */
+ NCode = pMsg->Data.v; /* Notification code */
+ switch (NCode) {
+ case WM_NOTIFICATION_RELEASED: /* React only if released */
+ if (Id == GUI_ID_OK) { /* OK Button */
+ GUI_EndDialog(hWin, 0);
+ }
+ if (Id == GUI_ID_CANCEL) { /* Cancel Button */
+ GUI_EndDialog(hWin, 1);
+ }
+ break;
+ case WM_NOTIFICATION_SEL_CHANGED: /* Selection changed */
+ FRAMEWIN_SetText(hWin, "Dialog - sel changed");
+ break;
+ default:
+ FRAMEWIN_SetText(hWin, "Dialog - notification received");
+ }
+ break;
+ #endif
+ default:
+ WM_DefaultProc(pMsg);
+ }
+}
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIDEMO_Dialog
+*/
+void GUIDEMO_Dialog(void) {
+ int i;
+ WM_HWIN hWin;
+ GUI_COLOR DesktopColorOld;
+ GUIDEMO_ShowIntro("Dialog boxes", "\nDialog boxes\ncan easily be created");
+ GUIDEMO_HideInfoWin();
+ DesktopColorOld = GUIDEMO_SetBkColor(GUI_RED);
+ DesktopColorOld = WM_SetDesktopColor(DesktopColorOld); /* Automatically update desktop window */
+ hWin = GUI_CreateDialogBox(aDialogCreate, GUI_COUNTOF(aDialogCreate), _cbCallback, 0, 0, 0);
+ for (i = 0; i < GUI_COUNTOF(_aID); i++) {
+ GUIDEMO_Delay(_aID[i].Time);
+ GUI_SendKeyMsg(_aID[i].Id, 1);
+ }
+ #if !(GUIDEMO_TINY)
+ #if !(GUIDEMO_LARGE)
+ if (LCD_GetYSize() < 120) {
+ } else
+ #endif
+ {
+ GUIDEMO_Delay(1000);
+ for (i = 0; i <= 100; i += 10) {
+ if (WM_IsWindow(hWin)) {
+ SLIDER_SetValue(WM_GetDialogItem(hWin, GUI_ID_SLIDER0), i);
+ }
+ GUIDEMO_Delay(100);
+ }
+ }
+ #endif
+ GUIDEMO_Delay(800);
+ if (WM_IsWindow(hWin)) {
+ WM_MoveTo(hWin, 20, 20);
+ GUIDEMO_Delay(500);
+ }
+ if (WM_IsWindow(hWin)) {
+ WM_MoveTo(hWin, 60, 20);
+ GUIDEMO_Delay(800);
+ }
+ /* Cleanup ... */
+ if (WM_IsWindow(hWin)) {
+ WM_DeleteWindow(hWin);
+ }
+ GUIDEMO_NotifyStartNext();
+ WM_SetDesktopColor(DesktopColorOld); /* Restore old settings */
+}
+
+#else
+
+void GUIDEMO_Dialog(void) {}
+
+#endif /* GUI_SUPPORT_MEMDEV */
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Font.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Font.c
new file mode 100644
index 0000000..362a289
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Font.c
@@ -0,0 +1,1069 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Font.c
+Purpose : GUIDEMO font routines
+----------------------------------------------------------------------
+*/
+
+#include
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+/*********************************************************************
+*
+* Japanese SJIS font
+*
+**********************************************************************
+*/
+
+/* SPACE */
+static const unsigned char _acFontSJIS16_0020[ 16] = { /* code 0020 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+/* HYPHEN-MINUS */
+static const unsigned char _acFontSJIS16_002D[ 16] = { /* code 002D */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXXXX_,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________};
+
+/* QUESTION MARK */
+static const unsigned char _acFontSJIS16_003F[ 16] = { /* code 003F */
+ ________,
+ ___XX___,
+ __X__X__,
+ _XX___X_,
+ _XX___X_,
+ ______X_,
+ _____X__,
+ ____X___,
+ ___X____,
+ ___X____,
+ ________,
+ ________,
+ ___X____,
+ __XXX___,
+ ___X____,
+ ________};
+
+/* LATIN CAPITAL LETTER H */
+static const unsigned char _acFontSJIS16_0048[ 16] = { /* code 0048 */
+ ________,
+ XXX_XXX_,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _XXXXX__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ XXX_XXX_,
+ ________,
+ ________};
+
+/* LATIN CAPITAL LETTER L */
+static const unsigned char _acFontSJIS16_004C[ 16] = { /* code 004C */
+ ________,
+ XXX_____,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X______,
+ _X____X_,
+ _X____X_,
+ XXXXXXX_,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER A */
+static const unsigned char _acFontSJIS16_0061[ 16] = { /* code 0061 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX___,
+ X____X__,
+ X____X__,
+ __XXXX__,
+ _X___X__,
+ X____X__,
+ X___XX__,
+ _XXX_XX_,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER E */
+static const unsigned char _acFontSJIS16_0065[ 16] = { /* code 0065 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __X__X__,
+ _X____X_,
+ _XXXXXX_,
+ _X______,
+ _X______,
+ __X___X_,
+ ___XXX__,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER L */
+static const unsigned char _acFontSJIS16_006C[ 16] = { /* code 006C */
+ ________,
+ __XX____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ ___X____,
+ __XXX___,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER N */
+static const unsigned char _acFontSJIS16_006E[ 16] = { /* code 006E */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_XX___,
+ _XX__X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ XXX_XXX_,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER O */
+static const unsigned char _acFontSJIS16_006F[ 16] = { /* code 006F */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ___XX___,
+ __X__X__,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ _X____X_,
+ __X__X__,
+ ___XX___,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER R */
+static const unsigned char _acFontSJIS16_0072[ 16] = { /* code 0072 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XX_XX__,
+ __XX__X_,
+ __X___X_,
+ __X_____,
+ __X_____,
+ __X_____,
+ __X_____,
+ _XXX____,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER S */
+static const unsigned char _acFontSJIS16_0073[ 16] = { /* code 0073 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ _XXXX_X_,
+ X____XX_,
+ X_____X_,
+ _XX_____,
+ ___XXX__,
+ X_____X_,
+ XX____X_,
+ X_XXXX__,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER U */
+static const unsigned char _acFontSJIS16_0075[ 16] = { /* code 0075 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX__XX__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ _X__XX__,
+ __XX_XX_,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER W */
+static const unsigned char _acFontSJIS16_0077[ 16] = { /* code 0077 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX_X_XX_,
+ X__X__X_,
+ X__X__X_,
+ X_X_X_X_,
+ X_X_X_X_,
+ _X___X__,
+ _X___X__,
+ _X___X__,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER X */
+static const unsigned char _acFontSJIS16_0078[ 16] = { /* code 0078 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XX___XX_,
+ _X___X__,
+ __X_X___,
+ ___X____,
+ ___X____,
+ __X_X___,
+ _X___X__,
+ XX___XX_,
+ ________,
+ ________};
+
+/* LATIN SMALL LETTER Y */
+static const unsigned char _acFontSJIS16_0079[ 16] = { /* code 0079 */
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ ________,
+ XXX_XXX_,
+ _X___X__,
+ _X___X__,
+ __X_X___,
+ __X_X___,
+ __XX____,
+ ___X____,
+ X_X_____,
+ XX______,
+ ________};
+
+/* IDEOGRAPHIC SPACE */
+static const unsigned char _acFontSJIS16_8140[ 32] = { /* code 8140 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________};
+
+/* FULLWIDTH QUESTION MARK */
+static const unsigned char _acFontSJIS16_8148[ 32] = { /* code 8148 */
+ ________,________,
+ ______XX,X_______,
+ _____X__,_X______,
+ ____X___,__X_____,
+ ____XX__,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ _______X,________,
+ _______X,________,
+ ________,________,
+ ________,________,
+ _______X,________,
+ _______X,________,
+ ________,________,
+ ________,________};
+
+/* HIRAGANA LETTER O */
+static const unsigned char _acFontSJIS16_82A8[ 32] = { /* code 82A8 */
+ ____XX__,________,
+ _____XX_,________,
+ _____X__,X__XX___,
+ _X___XXX,_____X__,
+ __XXXX__,______X_,
+ _____X__,______X_,
+ _____X_X,XXXX____,
+ _____XX_,____X___,
+ ____XX__,_____X__,
+ ___X_X__,_____X__,
+ _XX__X__,_____X__,
+ ___X_X__,X___X___,
+ ____XX__,_XXX____,
+ _____X__,________,
+ ________,________,
+ ________,________};
+
+/* HIRAGANA LETTER KA */
+static const unsigned char _acFontSJIS16_82A9[ 32] = { /* code 82A9 */
+ ________,________,
+ ____XX__,________,
+ _____XX_,________,
+ _____X__,________,
+ _X___XXX,X__XX___,
+ _XXXXX__,_X___X__,
+ ____X___,_X____X_,
+ ____X___,_X____X_,
+ ____X___,_X__XXX_,
+ ___X____,_X____X_,
+ ___X_X__,_X______,
+ __X___X_,X_______,
+ _XX____X,X_______,
+ _X_____X,________,
+ ________,________,
+ ________,________};
+
+/* HIRAGANA LETTER KO */
+static const unsigned char _acFontSJIS16_82B1[ 32] = { /* code 82B1 */
+ ________,________,
+ ________,________,
+ ____X___,________,
+ _____XXX,XXXX____,
+ ________,XX______,
+ _______X,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ __X_____,________,
+ ___X____,________,
+ ___XX___,________,
+ _____XXX,XXXXX___,
+ ________,________,
+ ________,________};
+
+/* HIRAGANA LETTER SA */
+static const unsigned char _acFontSJIS16_82B3[ 32] = { /* code 82B3 */
+ _______X,X_______,
+ ________,X_______,
+ ________,X_______,
+ __X_____,_X_XX___,
+ ___XXXXX,XXX_____,
+ ________,_X______,
+ ________,__X_____,
+ ____XXXX,X_X_____,
+ ___X____,_XXX____,
+ __X_____,___X____,
+ __X_____,________,
+ __X_____,________,
+ ___XX___,________,
+ _____XXX,XX______,
+ ________,________,
+ ________,________};
+
+/* HIRAGANA LETTER SU */
+static const unsigned char _acFontSJIS16_82B7[ 32] = { /* code 82B7 */
+ _______X,X_______,
+ ________,XX______,
+ ________,X___X___,
+ XX__XXXX,XXXXXX__,
+ _XXX____,X_______,
+ _____XX_,X_______,
+ ____X__X,X_______,
+ ____X___,X_______,
+ ____X___,X_______,
+ ____X__X,X_______,
+ _____XX_,X_______,
+ _______X,________,
+ _______X,________,
+ ______X_,________,
+ _____X__,________,
+ ________,________};
+
+/* HIRAGANA LETTER TI */
+static const unsigned char _acFontSJIS16_82BF[ 32] = { /* code 82BF */
+ ________,________,
+ ____XX__,________,
+ _____X__,_XX_____,
+ _X___XXX,X_______,
+ __XXXX__,________,
+ ____X___,________,
+ ____X___,________,
+ ____X__X,XXX_____,
+ ___XXXX_,___X____,
+ ___XX___,____X___,
+ ___X____,____X___,
+ ________,____X___,
+ ________,___X____,
+ ________,__XX____,
+ _____XXX,XX______,
+ ________,________};
+
+/* HIRAGANA LETTER DE */
+static const unsigned char _acFontSJIS16_82C5[ 32] = { /* code 82C5 */
+ ________,________,
+ ________,________,
+ _X____XX,XXXXXX__,
+ __XXXX__,_XX_____,
+ ________,X____X__,
+ _______X,___X__X_,
+ ______X_,____X___,
+ ______X_,________,
+ _____X__,________,
+ _____X__,________,
+ _____X__,________,
+ ______X_,________,
+ ______XX,__X_____,
+ ________,XXXX____,
+ ________,________,
+ ________,________};
+
+/* HIRAGANA LETTER NI */
+static const unsigned char _acFontSJIS16_82C9[ 32] = { /* code 82C9 */
+ ________,________,
+ _XX_____,________,
+ __XX____,________,
+ __X_____,_XXXX___,
+ __X____X,X_______,
+ _X______,________,
+ _X______,________,
+ _X______,________,
+ _X__X___,________,
+ _X__X_X_,________,
+ _X_X__X_,________,
+ _X_X___X,X_______,
+ __XX____,_XXXXX__,
+ ___XX___,________,
+ ________,________,
+ ________,________};
+
+/* HIRAGANA LETTER HA */
+static const unsigned char _acFontSJIS16_82CD[ 32] = { /* code 82CD */
+ ________,________,
+ _XX_____,__XX____,
+ __XX____,___X____,
+ __X___X_,___XXX__,
+ __X____X,XXXX____,
+ _X______,___X____,
+ _X______,___X____,
+ _X______,___X____,
+ _X__X___,___X____,
+ _X_X____,___X____,
+ _X_X___X,XXXX____,
+ _XXX__X_,___XX___,
+ __X___X_,___X_X__,
+ __X____X,XXX_____,
+ ________,________,
+ ________,________};
+
+/* HIRAGANA LETTER N */
+static const unsigned char _acFontSJIS16_82F1[ 32] = { /* code 82F1 */
+ ________,________,
+ _____XX_,________,
+ ______XX,________,
+ ______X_,________,
+ _____X__,________,
+ _____X__,________,
+ ____X___,________,
+ ____XXX_,________,
+ ___XX__X,________,
+ ___X___X,_____X__,
+ __XX____,X____X__,
+ __X_____,X____X__,
+ _XX_____,X___X___,
+ _X______,_XXX____,
+ ________,________,
+ ________,________};
+
+/* KATAKANA LETTER KU */
+static const unsigned char _acFontSJIS16_834E[ 32] = { /* code 834E */
+ ________,________,
+ _____XX_,________,
+ ______XX,________,
+ ______X_,___X____,
+ _____XXX,XXXXX___,
+ _____X__,___X____,
+ ____X___,___X____,
+ ___X____,__X_____,
+ __X_____,__X_____,
+ ________,_X______,
+ ________,X_______,
+ _______X,________,
+ _____XX_,________,
+ ___XX___,________,
+ ________,________,
+ ________,________};
+
+/* KATAKANA LETTER SU */
+static const unsigned char _acFontSJIS16_8358[ 32] = { /* code 8358 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,__X_____,
+ __XXXXXX,XXXX____,
+ ___X____,__X_____,
+ ________,_X______,
+ ________,X_______,
+ ________,X_______,
+ _______X,_X______,
+ ______X_,__X_____,
+ _____X__,___X____,
+ ___XX___,___XX___,
+ _XX_____,____X___,
+ ________,________,
+ ________,________};
+
+/* KATAKANA LETTER SMALL TU */
+static const unsigned char _acFontSJIS16_8362[ 32] = { /* code 8362 */
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,________,
+ ______X_,__XX____,
+ ___X___X,___XX___,
+ ____X__X,___X____,
+ ____X___,__X_____,
+ ________,__X_____,
+ ________,_X______,
+ ________,X_______,
+ ______XX,________,
+ ____XX__,________,
+ ________,________,
+ ________,________};
+
+/* KATAKANA LETTER RA */
+static const unsigned char _acFontSJIS16_8389[ 32] = { /* code 8389 */
+ ________,________,
+ ________,__X_____,
+ ___XXXXX,XXXX____,
+ ____X___,________,
+ ________,____X___,
+ __XXXXXX,XXXXXX__,
+ ___X____,____X___,
+ ________,____X___,
+ ________,___X____,
+ ________,___X____,
+ ________,__X_____,
+ ________,_X______,
+ _______X,X_______,
+ ____XXX_,________,
+ ________,________,
+ ________,________};
+
+/* */
+static const unsigned char _acFontSJIS16_8B43[ 32] = { /* code 8B43 */
+ ___XX___,________,
+ ___X____,___X____,
+ __XXXXXX,XXXXX___,
+ _X______,________,
+ X__XXXXX,XXX_____,
+ ________,________,
+ _XXXXXXX,XXXX____,
+ ________,___X____,
+ _______X,X__X____,
+ __XX___X,___X____,
+ ____XXX_,___X____,
+ ______X_,___X__X_,
+ _____X_X,____X_X_,
+ ___XX___,X___XX__,
+ _XX_____,_____XX_,
+ ________,________};
+
+/* */
+static const unsigned char _acFontSJIS16_8CB3[ 32] = { /* code 8CB3 */
+ ________,__X_____,
+ __XXXXXX,XXXX____,
+ ________,________,
+ ________,________,
+ ________,________,
+ ________,____X___,
+ XXXXXXXX,XXXXXX__,
+ ____X___,X_______,
+ ____X___,X_______,
+ ____X___,X_______,
+ ____X___,X_______,
+ ___X____,X____X__,
+ ___X____,X____X__,
+ __X_____,X____XX_,
+ XX______,_XXXXX__,
+ ________,________};
+
+static const GUI_CHARINFO _FontSJIS16_CharInfo[34] = {
+ { 8, 8, 1, _acFontSJIS16_0020 } /* code 0020 */
+ ,{ 8, 8, 1, _acFontSJIS16_002D } /* code 002D */
+ ,{ 8, 8, 1, _acFontSJIS16_003F } /* code 003F */
+ ,{ 8, 8, 1, _acFontSJIS16_0048 } /* code 0048 */
+ ,{ 8, 8, 1, _acFontSJIS16_004C } /* code 004C */
+ ,{ 8, 8, 1, _acFontSJIS16_0061 } /* code 0061 */
+ ,{ 8, 8, 1, _acFontSJIS16_0065 } /* code 0065 */
+ ,{ 8, 8, 1, _acFontSJIS16_006C } /* code 006C */
+ ,{ 8, 8, 1, _acFontSJIS16_006E } /* code 006E */
+ ,{ 8, 8, 1, _acFontSJIS16_006F } /* code 006F */
+ ,{ 8, 8, 1, _acFontSJIS16_0072 } /* code 0072 */
+ ,{ 8, 8, 1, _acFontSJIS16_0073 } /* code 0073 */
+ ,{ 8, 8, 1, _acFontSJIS16_0075 } /* code 0075 */
+ ,{ 8, 8, 1, _acFontSJIS16_0077 } /* code 0077 */
+ ,{ 8, 8, 1, _acFontSJIS16_0078 } /* code 0078 */
+ ,{ 8, 8, 1, _acFontSJIS16_0079 } /* code 0079 */
+ ,{ 16, 16, 2, _acFontSJIS16_8140 } /* code 8140 */
+ ,{ 16, 16, 2, _acFontSJIS16_8148 } /* code 8148 */
+ ,{ 16, 16, 2, _acFontSJIS16_82A8 } /* code 82A8 */
+ ,{ 16, 16, 2, _acFontSJIS16_82A9 } /* code 82A9 */
+ ,{ 16, 16, 2, _acFontSJIS16_82B1 } /* code 82B1 */
+ ,{ 16, 16, 2, _acFontSJIS16_82B3 } /* code 82B3 */
+ ,{ 16, 16, 2, _acFontSJIS16_82B7 } /* code 82B7 */
+ ,{ 16, 16, 2, _acFontSJIS16_82BF } /* code 82BF */
+ ,{ 16, 16, 2, _acFontSJIS16_82C5 } /* code 82C5 */
+ ,{ 16, 16, 2, _acFontSJIS16_82C9 } /* code 82C9 */
+ ,{ 16, 16, 2, _acFontSJIS16_82CD } /* code 82CD */
+ ,{ 16, 16, 2, _acFontSJIS16_82F1 } /* code 82F1 */
+ ,{ 16, 16, 2, _acFontSJIS16_834E } /* code 834E */
+ ,{ 16, 16, 2, _acFontSJIS16_8358 } /* code 8358 */
+ ,{ 16, 16, 2, _acFontSJIS16_8362 } /* code 8362 */
+ ,{ 16, 16, 2, _acFontSJIS16_8389 } /* code 8389 */
+ ,{ 16, 16, 2, _acFontSJIS16_8B43 } /* code 8B43 */
+ ,{ 16, 16, 2, _acFontSJIS16_8CB3 } /* code 8CB3 */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop29 = {
+ 0x8CB3 /* first character */
+ ,0x8CB3 /* last character */
+ ,&_FontSJIS16_CharInfo[ 33] /* address of first character */
+ ,(const GUI_FONT_PROP*)0 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop28 = {
+ 0x8B43 /* first character */
+ ,0x8B43 /* last character */
+ ,&_FontSJIS16_CharInfo[ 32] /* address of first character */
+ ,&_FontSJIS16_Prop29 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop27 = {
+ 0x8389 /* first character */
+ ,0x8389 /* last character */
+ ,&_FontSJIS16_CharInfo[ 31] /* address of first character */
+ ,&_FontSJIS16_Prop28 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop26 = {
+ 0x8362 /* first character */
+ ,0x8362 /* last character */
+ ,&_FontSJIS16_CharInfo[ 30] /* address of first character */
+ ,&_FontSJIS16_Prop27 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop25 = {
+ 0x8358 /* first character */
+ ,0x8358 /* last character */
+ ,&_FontSJIS16_CharInfo[ 29] /* address of first character */
+ ,&_FontSJIS16_Prop26 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop24 = {
+ 0x834E /* first character */
+ ,0x834E /* last character */
+ ,&_FontSJIS16_CharInfo[ 28] /* address of first character */
+ ,&_FontSJIS16_Prop25 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop23 = {
+ 0x82F1 /* first character */
+ ,0x82F1 /* last character */
+ ,&_FontSJIS16_CharInfo[ 27] /* address of first character */
+ ,&_FontSJIS16_Prop24 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop22 = {
+ 0x82CD /* first character */
+ ,0x82CD /* last character */
+ ,&_FontSJIS16_CharInfo[ 26] /* address of first character */
+ ,&_FontSJIS16_Prop23 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop21 = {
+ 0x82C9 /* first character */
+ ,0x82C9 /* last character */
+ ,&_FontSJIS16_CharInfo[ 25] /* address of first character */
+ ,&_FontSJIS16_Prop22 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop20 = {
+ 0x82C5 /* first character */
+ ,0x82C5 /* last character */
+ ,&_FontSJIS16_CharInfo[ 24] /* address of first character */
+ ,&_FontSJIS16_Prop21 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop19 = {
+ 0x82BF /* first character */
+ ,0x82BF /* last character */
+ ,&_FontSJIS16_CharInfo[ 23] /* address of first character */
+ ,&_FontSJIS16_Prop20 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop18 = {
+ 0x82B7 /* first character */
+ ,0x82B7 /* last character */
+ ,&_FontSJIS16_CharInfo[ 22] /* address of first character */
+ ,&_FontSJIS16_Prop19 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop17 = {
+ 0x82B3 /* first character */
+ ,0x82B3 /* last character */
+ ,&_FontSJIS16_CharInfo[ 21] /* address of first character */
+ ,&_FontSJIS16_Prop18 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop16 = {
+ 0x82B1 /* first character */
+ ,0x82B1 /* last character */
+ ,&_FontSJIS16_CharInfo[ 20] /* address of first character */
+ ,&_FontSJIS16_Prop17 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop15 = {
+ 0x82A8 /* first character */
+ ,0x82A9 /* last character */
+ ,&_FontSJIS16_CharInfo[ 18] /* address of first character */
+ ,&_FontSJIS16_Prop16 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop14 = {
+ 0x8148 /* first character */
+ ,0x8148 /* last character */
+ ,&_FontSJIS16_CharInfo[ 17] /* address of first character */
+ ,&_FontSJIS16_Prop15 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop13 = {
+ 0x8140 /* first character */
+ ,0x8140 /* last character */
+ ,&_FontSJIS16_CharInfo[ 16] /* address of first character */
+ ,&_FontSJIS16_Prop14 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop12 = {
+ 0x0077 /* first character */
+ ,0x0079 /* last character */
+ ,&_FontSJIS16_CharInfo[ 13] /* address of first character */
+ ,&_FontSJIS16_Prop13 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop11 = {
+ 0x0075 /* first character */
+ ,0x0075 /* last character */
+ ,&_FontSJIS16_CharInfo[ 12] /* address of first character */
+ ,&_FontSJIS16_Prop12 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop10 = {
+ 0x0072 /* first character */
+ ,0x0073 /* last character */
+ ,&_FontSJIS16_CharInfo[ 10] /* address of first character */
+ ,&_FontSJIS16_Prop11 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop9 = {
+ 0x006E /* first character */
+ ,0x006F /* last character */
+ ,&_FontSJIS16_CharInfo[ 8] /* address of first character */
+ ,&_FontSJIS16_Prop10 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop8 = {
+ 0x006C /* first character */
+ ,0x006C /* last character */
+ ,&_FontSJIS16_CharInfo[ 7] /* address of first character */
+ ,&_FontSJIS16_Prop9 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop7 = {
+ 0x0065 /* first character */
+ ,0x0065 /* last character */
+ ,&_FontSJIS16_CharInfo[ 6] /* address of first character */
+ ,&_FontSJIS16_Prop8 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop6 = {
+ 0x0061 /* first character */
+ ,0x0061 /* last character */
+ ,&_FontSJIS16_CharInfo[ 5] /* address of first character */
+ ,&_FontSJIS16_Prop7 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop5 = {
+ 0x004C /* first character */
+ ,0x004C /* last character */
+ ,&_FontSJIS16_CharInfo[ 4] /* address of first character */
+ ,&_FontSJIS16_Prop6 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop4 = {
+ 0x0048 /* first character */
+ ,0x0048 /* last character */
+ ,&_FontSJIS16_CharInfo[ 3] /* address of first character */
+ ,&_FontSJIS16_Prop5 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop3 = {
+ 0x003F /* first character */
+ ,0x003F /* last character */
+ ,&_FontSJIS16_CharInfo[ 2] /* address of first character */
+ ,&_FontSJIS16_Prop4 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop2 = {
+ 0x002D /* first character */
+ ,0x002D /* last character */
+ ,&_FontSJIS16_CharInfo[ 1] /* address of first character */
+ ,&_FontSJIS16_Prop3 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT_PROP _FontSJIS16_Prop1 = {
+ 0x0020 /* first character */
+ ,0x0020 /* last character */
+ ,&_FontSJIS16_CharInfo[ 0] /* address of first character */
+ ,&_FontSJIS16_Prop2 /* pointer to next GUI_FONT_PROP */
+};
+
+static const GUI_FONT _FontSJIS16 = {
+ GUI_FONTTYPE_PROP_SJIS /* type of font */
+ ,16 /* height of font */
+ ,16 /* space of font y */
+ ,1 /* magnification x */
+ ,1 /* magnification y */
+ ,{&_FontSJIS16_Prop1}
+};
+
+/*********************************************************************
+*
+* Static variables
+*
+**********************************************************************
+*/
+
+static const GUI_FONT * _apPropFonts[] = {
+ &GUI_Font10S_ASCII,
+ &GUI_Font8_ASCII,
+ &GUI_Font13_ASCII,
+ &GUI_Font13H_ASCII,
+ &GUI_Font16_ASCII,
+ &GUI_Font13HB_ASCII,
+ 0
+};
+
+static const GUI_FONT * _apMonoFonts[] = {
+ &GUI_Font4x6,
+ &GUI_Font6x8,
+ &GUI_Font8x13_ASCII,
+ &GUI_Font8x8,
+ &GUI_Font8x15B_ASCII,
+ &GUI_Font8x16,
+ 0
+};
+
+static const GUI_FONT * _apDigitFonts[] = {
+ &GUI_FontD32,
+ 0
+};
+
+static const char * _apSJIS[] = {
+ "\x82\xa8\x8c\xb3\x8b\x43\x82\xc5\x82\xb7\x82\xa9\x81\x48\nHow are you?\x0",
+};
+
+/*********************************************************************
+*
+* Static functions
+*
+**********************************************************************
+*/
+
+static void _Label(const char * sText) {
+ GUI_Clear();
+ #if GUIDEMO_LARGE
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_SetLBorder(5);
+ GUI_DispStringAt(sText, 5, 5);
+ GUI_SetLBorder(0);
+ #else
+ GUI_USE_PARA(sText);
+ #endif
+}
+
+static int _GetYPos(void) {
+ #if GUIDEMO_LARGE
+ return 70;
+ #else
+ return 0;
+ #endif
+}
+
+static void _ShowCharacters(const char*s, const GUI_FONT* pFont, int IncX) {
+ int i;
+ int ix=0, y;
+ int FontSizeY;
+ GUI_SetFont(pFont);
+ FontSizeY = GUI_GetFontSizeY();
+ _Label(s);
+ GUI_SetFont(pFont);
+ y = _GetYPos();
+ for (i = 0; i < 20000; i++) {
+ if (GUI_IsInFont(NULL, (U16)i)) {
+ GUI_GotoXY(ix * IncX, y);
+ if (ix++ > 20) {
+ ix = 0;
+ y += FontSizeY;
+ }
+ GUI_DispChar((U16)i);
+ }
+ }
+ GUIDEMO_Delay(2000);
+ GUIDEMO_NotifyStartNext();
+}
+
+static void _ShowFonts(const char *s, const char *pMessage, const GUI_FONT **pPropFonts) {
+ int i;
+ _Label(s);
+ GUI_GotoXY(0, _GetYPos());
+ for (i=0;pPropFonts[i];i++) {
+ GUI_SetFont(pPropFonts[i]);
+ GUI_DispString(pMessage);
+ GUI_DispNextLine();
+ }
+ GUIDEMO_Wait();
+ GUIDEMO_NotifyStartNext();
+}
+
+static void _ShowJapaneseSample(void) {
+ int i;
+ _Label("Japanese text\nmixed with\nASCIItext");
+ GUI_SetFont(&_FontSJIS16);
+ for (i=0;i
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+#if GUI_WINSUPPORT
+
+#include "WM.h"
+#include "LISTBOX.h"
+#include "FRAMEWIN.h"
+
+/*********************************************************************
+*
+* defines
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_LARGE
+ #define BORDER 10
+#elif !(GUIDEMO_TINY)
+ #define BORDER 8
+#else
+ #define BORDER 4
+#endif
+
+/*********************************************************************
+*
+* static data
+*
+**********************************************************************
+*/
+
+static const GUI_ConstString _asLang[] = {
+ "English",
+ "Deutsch",
+ "Franais",
+ "Espa\xf1ol", /* "Espaol" -> "Espa\xf1ol" to avoid problems with NC308 */
+ "Italiano",
+ NULL
+};
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIDEMO_DemoFrameWin
+*/
+void GUIDEMO_DemoFrameWin(void) {
+ FRAMEWIN_Handle hFrame;
+ LISTBOX_Handle hListBox;
+ int xSize = LCD_GetXSize();
+ int ySize = LCD_GetYSize();
+ int i, x, y, w, h;
+ const GUI_FONT* pFont = &GUI_FontComic18B_1;
+ GUI_COLOR DesktopColorOld;
+ #if GUIDEMO_LARGE
+ GUIDEMO_ShowIntro("Frame Window & Listbox", NULL);
+ #else
+ GUIDEMO_ShowIntro("Frame Window\n & Listbox", NULL);
+ #endif
+ DesktopColorOld = GUIDEMO_SetBkColor(GUI_RED);
+ DesktopColorOld = WM_SetDesktopColor(DesktopColorOld); /* Automatically update desktop window */
+ x = BORDER;
+ #if GUIDEMO_LARGE
+ y = 75;
+ #else
+ y = BORDER;
+ #endif
+ w = xSize - x - BORDER;
+ h = ySize - y - BORDER;
+ if (w > 140) {
+ w = 140;
+ }
+ if (h > 120) {
+ h = 120;
+ }
+ hFrame = FRAMEWIN_Create("Select language", NULL, WM_CF_SHOW, x, y, w, h);
+ FRAMEWIN_SetActive(hFrame, 1);
+ FRAMEWIN_SetMoveable(hFrame, 1);
+ FRAMEWIN_AddMaxButton(hFrame, FRAMEWIN_BUTTON_RIGHT, 0);
+ FRAMEWIN_AddMinButton(hFrame, FRAMEWIN_BUTTON_RIGHT, 1);
+ FRAMEWIN_SetFont(hFrame, &GUI_Font13_ASCII);
+ hListBox = LISTBOX_CreateAsChild(_asLang, WM_GetClientWindow(hFrame), 0, 0, 0, 0, WM_CF_SHOW | WM_SF_ANCHOR_LEFT | WM_SF_ANCHOR_TOP | WM_SF_ANCHOR_RIGHT | WM_SF_ANCHOR_BOTTOM);
+ WM_SetFocus(hListBox);
+ LISTBOX_SetFont(hListBox, pFont);
+ GUIDEMO_Wait();
+ for (i = 0; (i < 10) && !GUIDEMO_CheckCancel(); i++) {
+ LISTBOX_IncSel(hListBox);
+ GUIDEMO_Delay(250);
+ }
+ for (i = 0; (i < 10) && !GUIDEMO_CheckCancel(); i++) {
+ LISTBOX_DecSel(hListBox);
+ GUIDEMO_Delay(250);
+ }
+ GUIDEMO_Delay(500);
+ LISTBOX_Delete(hListBox);
+ FRAMEWIN_Delete(hFrame);
+ WM_SetDesktopColor(DesktopColorOld);
+}
+
+#elif defined(NC30) || defined(NC308)
+
+void GUIDEMO_FrameWin(void) {}
+
+#endif
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Graph.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Graph.c
new file mode 100644
index 0000000..86b49f9
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Graph.c
@@ -0,0 +1,421 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Graph.c
+Purpose : Several GUIDEMO routines
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "LCD_ConfDefaults.h" /* valid LCD configuration */
+#include
+#include
+#include "GUIDEMO.h"
+
+#if GUI_SUPPORT_MEMDEV
+
+/*********************************************************************
+ *
+ * Structure containing information for drawing routine
+ *
+ **********************************************************************
+ */
+
+typedef struct
+{
+ I16 *aY;
+} PARAM;
+
+/*********************************************************************
+ *
+ * Defines
+ *
+ **********************************************************************
+ */
+
+#if GUIDEMO_LARGE
+#define YSIZE (LCD_YSIZE - 100)
+#else
+#define YSIZE (LCD_YSIZE - 30)
+#endif
+
+#define DEG2RAD (3.1415926f / 180)
+
+#if LCD_BITSPERPIXEL == 1
+#define COLOR_GRAPH0 GUI_WHITE
+#define COLOR_GRAPH1 GUI_WHITE
+#else
+#define COLOR_GRAPH0 GUI_GREEN
+#define COLOR_GRAPH1 GUI_YELLOW
+#endif
+
+/*********************************************************************
+ *
+ * static data
+ *
+ **********************************************************************
+ */
+
+static int _YSize;
+
+/*********************************************************************
+ *
+ * Draws the graph
+ *
+ **********************************************************************
+ */
+
+static void _Draw(void *p)
+{
+ int i;
+ PARAM *pParam = (PARAM *)p;
+ GUI_SetBkColor(GUI_BLACK);
+ GUI_SetColor(GUI_DARKGRAY);
+ GUI_ClearRect(19, (LCD_YSIZE - 20) - _YSize, (LCD_XSIZE - 2), (LCD_YSIZE - 21));
+ for (i = 0; i < (_YSize / 2); i += 20)
+ {
+ GUI_DrawHLine((LCD_YSIZE - 20) - (_YSize / 2) + i, 19, (LCD_XSIZE - 2));
+ if (i)
+ {
+ GUI_DrawHLine((LCD_YSIZE - 20) - (_YSize / 2) - i, 19, (LCD_XSIZE - 2));
+ }
+ }
+ for (i = 40; i < (LCD_XSIZE - 20); i += 40)
+ {
+ GUI_DrawVLine(18 + i, (LCD_YSIZE - 20) - _YSize, (LCD_YSIZE - 21));
+ }
+ GUIDEMO_SetColor(COLOR_GRAPH0);
+ GUI_DrawGraph(pParam->aY, (LCD_XSIZE - 20), 19, (LCD_YSIZE - 20) - _YSize);
+}
+
+static void _Draw2(void *p)
+{
+ PARAM *pParam = (PARAM *)p;
+ _Draw(p);
+ GUI_SetColor(COLOR_GRAPH1);
+ GUI_DrawGraph(pParam->aY + 15, (LCD_XSIZE - 20), 19, (LCD_YSIZE - 20) - _YSize);
+}
+
+/*********************************************************************
+ *
+ * Labels the x & y-axis
+ *
+ **********************************************************************
+ */
+
+static void _Label(void)
+{
+ int x, y;
+ GUI_SetPenSize(1);
+ GUI_ClearRect(0, (LCD_YSIZE - 21) - _YSize, (LCD_XSIZE - 1), (LCD_YSIZE - 1));
+ GUI_DrawRect(18, (LCD_YSIZE - 21) - _YSize, (LCD_XSIZE - 1), (LCD_YSIZE - 20));
+ GUI_SetFont(&GUI_Font6x8);
+ for (x = 0; x < (LCD_XSIZE - 20); x += 40)
+ {
+ int xPos = x + 18;
+ GUI_DrawVLine(xPos, (LCD_YSIZE - 20), (LCD_YSIZE - 14));
+ GUI_DispDecAt(x / 40, xPos - 2, (LCD_YSIZE - 9), 1);
+ }
+ for (y = 0; y < _YSize / 2; y += 20)
+ {
+ int yPos = (LCD_YSIZE - 20) - _YSize / 2 + y;
+ GUI_DrawHLine(yPos, 13, 18);
+ if (y)
+ {
+ GUI_GotoXY(1, yPos - 4);
+ GUI_DispSDec(-y / 20, 2);
+ yPos = (LCD_YSIZE - 20) - _YSize / 2 - y;
+ GUI_DrawHLine(yPos, 13, 18);
+ GUI_GotoXY(1, yPos - 4);
+ GUI_DispSDec(y / 20, 2);
+ }
+ else
+ {
+ GUI_DispCharAt('0', 7, yPos - 4);
+ }
+ }
+}
+
+/*********************************************************************
+ *
+ * Draws random data
+ *
+ **********************************************************************
+ */
+
+static void _GetRandomData(I16 *paY, int Time, int n)
+{
+ int aDiff, i;
+ if (Time > 5000)
+ Time -= 5000;
+ if (Time > 2500)
+ Time = 5000 - Time;
+ Time /= 200;
+ aDiff = Time * Time + 1;
+ for (i = 0; i < n; i++)
+ {
+ if (!i)
+ {
+ paY[i] = rand() % _YSize;
+ }
+ else
+ {
+ int Rnd0, Rnd1, yD;
+ I16 yNew;
+ Rnd0 = rand();
+ yD = aDiff - (Rnd0 % aDiff);
+ Rnd1 = rand();
+ if (Rnd1 > Rnd0)
+ {
+ yNew = paY[i - 1] + yD;
+ }
+ else
+ {
+ yNew = paY[i - 1] - yD;
+ }
+ if (yNew > _YSize)
+ {
+ yNew -= yD;
+ }
+ else
+ {
+ if (yNew < 0)
+ yNew += yD;
+ }
+ paY[i] = yNew;
+ }
+ }
+}
+
+static void _ShowText(const char *sText)
+{
+ GUIDEMO_SetColor(GUI_WHITE);
+ GUIDEMO_SetBkColor(GUI_RED);
+#if GUIDEMO_LARGE
+ GUI_ClearRect(0, 0, LCD_XSIZE, 60);
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_DispStringAt(sText, 10, 20);
+#else
+ sText = sText; /* Avoid warning */
+#endif
+}
+
+static void _LabelMS(void)
+{
+ GUI_SetFont(&GUI_Font6x8);
+#if GUIDEMO_LARGE
+ GUI_DispStringAt("msec/graph:", 10, 50);
+#endif
+}
+
+static void _DisplayTime(int tDiff)
+{
+#if GUIDEMO_LARGE
+ GUI_GotoXY(80, 50);
+ GUIDEMO_SetColor(GUI_WHITE);
+ GUIDEMO_SetBkColor(GUI_RED);
+ GUI_DispDecSpace(tDiff, 3);
+#else
+ tDiff = tDiff; /* Avoid warning */
+#endif
+}
+
+static void _DemoRandomGraph(void)
+{
+ PARAM Param;
+ int tDiff, t0;
+ int Cnt = 0;
+ GUI_HMEM hMem;
+ GUI_RECT Rect;
+ Rect.x0 = 19;
+ Rect.y0 = (LCD_YSIZE - 20) - _YSize;
+ Rect.x1 = LCD_XSIZE - 2;
+ Rect.y1 = LCD_YSIZE - 21;
+ hMem = GUI_ALLOC_AllocZero((LCD_XSIZE - 20) * sizeof(I16));
+ _ShowText("Random graph");
+ GUI_LOCK();
+ Param.aY = (I16 *)GUI_ALLOC_h2p(hMem);
+ GUI_UNLOCK(); /* Note: unlocking is permitted only if no further allocation is done so hMem stays valid */
+ /*
+ GUI_SetFont(&GUI_Font6x8);
+ GUI_DispStringAt("msec/graph:", 10, 50);
+ */
+ _LabelMS();
+ t0 = GUI_GetTime();
+ while (((tDiff = (GUI_GetTime() - t0)) < 10000) && !GUIDEMO_CheckCancel())
+ {
+ U32 t1, tDiff2;
+ _GetRandomData(Param.aY, tDiff, (LCD_XSIZE - 20));
+ t1 = GUI_GetTime();
+ GUI_MEMDEV_Draw(&Rect, _Draw, &Param, 0, GUI_MEMDEV_NOTRANS);
+ tDiff2 = GUI_GetTime() - t1;
+ if (tDiff2 < 100)
+ {
+ GUI_Delay(100 - tDiff2);
+ }
+ if (!((++Cnt) % 10))
+ {
+ _DisplayTime(tDiff2);
+ /*
+ GUI_GotoXY(80, 50);
+ GUI_SetColor(GUI_WHITE);
+ GUI_SetBkColor(GUI_RED);
+ GUI_DispDecSpace(tDiff2, 3);
+ */
+ }
+ }
+ GUI_ALLOC_Free(hMem);
+}
+
+/*********************************************************************
+ *
+ * Draws a sine wave
+ *
+ **********************************************************************
+ */
+
+static void _GetSineData(I16 *paY, int n)
+{
+ int i;
+ for (i = 0; i < n; i++)
+ {
+ float s = sin(i * DEG2RAD * 4);
+ paY[i] = s * _YSize / 2 + _YSize / 2;
+ }
+}
+
+static void _DemoSineWave(void)
+{
+ PARAM Param;
+ I16 *pStart;
+ int t0, Cnt = 0;
+ GUI_HMEM hMem;
+ GUI_RECT Rect;
+ Rect.x0 = 19;
+ Rect.y0 = (LCD_YSIZE - 20) - _YSize;
+ Rect.x1 = LCD_XSIZE - 2;
+ Rect.y1 = LCD_YSIZE - 21;
+ hMem = GUI_ALLOC_AllocZero((LCD_XSIZE + 90) * sizeof(I16));
+ _ShowText("Sine wave");
+ GUI_LOCK();
+ pStart = (I16 *)GUI_ALLOC_h2p(hMem);
+ GUI_UNLOCK(); /* Note: unlocking is permitted only if no further allocation is done so hMem stays valid */
+ _GetSineData(pStart, LCD_XSIZE + 90);
+ /*
+ GUI_SetFont(&GUI_Font6x8);
+ GUI_DispStringAt("msec/graph:", 10, 50);
+ */
+ _LabelMS();
+ t0 = GUI_GetTime();
+ while (((GUI_GetTime() - t0) < 10000) && !GUIDEMO_CheckCancel())
+ {
+ U32 t1, tDiff2;
+ if (Cnt % 90)
+ {
+ Param.aY++;
+ }
+ else
+ {
+ Param.aY = pStart;
+ }
+ t1 = GUI_GetTime();
+ GUI_MEMDEV_Draw(&Rect, _Draw2, &Param, 0, GUI_MEMDEV_NOTRANS);
+ tDiff2 = GUI_GetTime() - t1;
+ if (tDiff2 < 100)
+ {
+ GUI_Delay(100 - tDiff2);
+ }
+ if (!((++Cnt) % 10))
+ {
+ _DisplayTime(tDiff2);
+ /*
+ GUI_GotoXY(80, 50);
+ GUI_SetColor(GUI_WHITE);
+ GUI_SetBkColor(GUI_RED);
+ GUI_DispDecSpace(tDiff2, 3);
+ */
+ }
+ }
+ GUI_ALLOC_Free(hMem);
+}
+
+/*********************************************************************
+ *
+ * Adds several waves
+ *
+ **********************************************************************
+ */
+
+static void _DrawOrData(GUI_COLOR Color, I16 *paY)
+{
+ GUIDEMO_SetColor(Color);
+ GUI_DrawGraph(paY, (LCD_XSIZE - 20), 19, (LCD_YSIZE - 20) - _YSize);
+}
+
+static void _DemoOrData(void)
+{
+ int i;
+ PARAM Param;
+ GUI_RECT Rect;
+ GUI_HMEM hMem;
+ Rect.x0 = 19;
+ Rect.y0 = (LCD_YSIZE - 20) - _YSize;
+ Rect.x1 = LCD_XSIZE - 2;
+ Rect.y1 = LCD_YSIZE - 21;
+ hMem = GUI_ALLOC_AllocZero((LCD_XSIZE + 90) * sizeof(I16));
+ _ShowText("Several waves...");
+ GUI_LOCK();
+ Param.aY = (I16 *)GUI_ALLOC_h2p(hMem);
+ GUI_UNLOCK();
+ _GetSineData(Param.aY, LCD_XSIZE + 90);
+ GUI_MEMDEV_Draw(&Rect, _Draw, &Param, 0, GUI_MEMDEV_NOTRANS);
+ for (i = 0; (i < 90) && !GUIDEMO_CheckCancel(); i++)
+ {
+ _DrawOrData(GUI_GREEN, ++Param.aY);
+ GUI_Delay(10);
+ }
+ GUI_ALLOC_Free(hMem);
+}
+
+/*********************************************************************
+ *
+ * GUIDEMO_Graph
+ *
+ **********************************************************************
+ */
+
+void GUIDEMO_Graph(void)
+{
+#if GUIDEMO_LARGE
+ _YSize = (LCD_YSIZE - 100);
+#else
+ _YSize = (LCD_YSIZE - 30);
+#endif
+ GUIDEMO_ShowIntro("Drawing a graph",
+ "\nOptimized drawing routine"
+ "\nfor drawing graph data");
+ GUI_Clear();
+ _Label();
+ _DemoRandomGraph();
+ GUIDEMO_NotifyStartNext();
+ _DemoSineWave();
+ GUIDEMO_NotifyStartNext();
+ _DemoOrData();
+}
+
+#elif defined(NC30) || defined(NC308)
+
+void GUIDEMO_Graph(void) {}
+
+#endif
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_HardwareInfo.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_HardwareInfo.c
new file mode 100644
index 0000000..fc88e0d
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_HardwareInfo.c
@@ -0,0 +1,108 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_HardwareInfo.c
+Purpose : Displays hardware info
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+#include "LCD_ConfDefaults.h" /* valid LCD configuration */
+
+/*********************************************************************
+*
+* Static functions
+*
+**********************************************************************
+*/
+
+#if (LCD_CONTROLLER == 1375) | (LCD_CONTROLLER == 13705) | (LCD_CONTROLLER == 1386) | (LCD_CONTROLLER == 13806)
+static void _Show(const char* s0, const char* s1) {
+ GUIDEMO_SetColor(GUI_WHITE);
+ #if (LCD_YSIZE < 160)
+ GUI_SetFont(&GUI_Font8_ASCII);
+ #else
+ GUI_SetFont(&GUI_Font13B_ASCII);
+ #endif
+ GUI_DispString("\n");
+ #if (LCD_YSIZE < 128)
+ GUIDEMO_Delay(200);
+ GUI_GotoXY(0, LCD_YSIZE / 2 - 6);
+ GUI_ClearRect(0, 24, LCD_XSIZE - 1, LCD_YSIZE - 1);
+ GUIDEMO_Delay(200);
+ #endif
+ GUI_DispString(s0);
+ GUIDEMO_Delay(500);
+ #if GUIDEMO_LARGE
+ GUI_GotoX(110);
+ GUIDEMO_SetColor(GUI_GREEN);
+ #else
+ GUI_GotoX(100);
+ GUIDEMO_SetColor(GUI_BLUE);
+ #endif
+ #if (LCD_XSIZE < 320)
+ GUI_DispString("\n");
+ #if (LCD_XSIZE < 200)
+ GUI_GotoX(10);
+ #else
+ GUI_GotoX(LCD_XSIZE / 6);
+ #endif
+ #endif
+ GUI_DispString(s1);
+ GUIDEMO_Delay(1000);
+}
+#endif
+
+/*********************************************************************
+*
+* GUIDEMO_HardwareInfo
+*
+**********************************************************************
+*/
+
+void GUIDEMO_HardwareInfo(void) {
+ #if (LCD_CONTROLLER == 1375) | (LCD_CONTROLLER == 13705) | (LCD_CONTROLLER == 1386) | (LCD_CONTROLLER == 13806)
+ GUIDEMO_ShowIntro("Hardware info", "" );
+ GUI_Clear();
+ #if GUIDEMO_LARGE
+ GUI_SetFont(&GUI_FontComic24B_ASCII);
+ #else
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ #endif
+ GUIDEMO_SetColor(GUI_WHITE);
+ #if (LCD_CONTROLLER == 1375) | (LCD_CONTROLLER == 13705)
+ #if GUIDEMO_LARGE
+ GUI_DispStringAt("EPSON 13705\n", 10, 65 );
+ #else
+ GUI_DispStringHCenterAt("EPSON 13705\n", LCD_XSIZE >> 1, LCD_YSIZE / 14);
+ #endif
+ _Show("On chip VRAM", "80 kb");
+ _Show("Max. colors", "4096 (4 bit per color)");
+ _Show("Display types", "Mono / color / TFT");
+ _Show("LUT", "256 index colors");
+ #elif (LCD_CONTROLLER == 1386) | (LCD_CONTROLLER == 13806)
+ #if GUIDEMO_LARGE
+ GUI_DispStringAt("EPSON 13806\n", 10, 65 );
+ #else
+ GUI_DispStringHCenterAt("EPSON 13806\n", LCD_XSIZE >> 1, LCD_YSIZE / 14);
+ #endif
+ _Show("On chip VRAM", "1200 kb");
+ _Show("Max. colors", "65536 (up to 16 bpp)");
+ _Show("Display types", "Mono / color / TFT (analog / digital)");
+ _Show("LUT", "256 index colors");
+ #endif
+ GUIDEMO_Delay(1500);
+ #endif
+}
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Intro.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Intro.c
new file mode 100644
index 0000000..d382ff9
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Intro.c
@@ -0,0 +1,165 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Intro.c
+Purpose : Introduction for emWin generic demo
+ (This is also a good file to demo and explain basic
+ emWin features by setting breakpoints)
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+#include
+
+/*********************************************************************
+*
+* GUIDEMO_Intro
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_LARGE
+
+void GUIDEMO_Intro(void) {
+ int xCenter = LCD_XSIZE >> 1;
+ int y, yPos;
+ char acText[50] = "Version of emWin: ";
+ strcat(acText, GUI_GetVersionString());
+ GUIDEMO_SetBkColor(GUI_BLUE);
+ GUIDEMO_SetColor(GUI_WHITE);
+ GUI_Clear();
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_DispStringHCenterAt("emWin", xCenter, y = 12);
+ GUI_SetFont(&GUI_Font13H_ASCII);
+ GUI_DispStringHCenterAt("Universal graphic software"
+ "\nfor embedded applications"
+ , xCenter, y += 23);
+ GUI_SetColor(GUI_RED);
+ GUI_SetFont(&GUI_Font16_ASCII);
+ GUI_DispStringHCenterAt("Any CPU - Any LCD - Any Application"
+ , xCenter, y += 32);
+ GUI_SetFont(&GUI_Font10S_ASCII);
+ GUI_DispStringHCenterAt("Compiled " __DATE__ " "__TIME__, xCenter, y += 18);
+ GUI_SetFont(&GUI_Font13HB_ASCII);
+ GUI_SetColor(GUI_WHITE);
+ GUI_DispStringHCenterAt(acText, xCenter, y += 15);
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_SetColor(GUI_WHITE);
+ GUI_DispStringHCenterAt("www.segger.com", LCD_XSIZE >> 1, LCD_YSIZE - 20);
+ yPos = y + 15 + ((LCD_YSIZE - y - 33) >> 1);
+ yPos -= bmSeggerLogoBlue.YSize >> 1;
+ if (yPos > 160) {
+ yPos = 160;
+ }
+ GUI_DrawBitmap(&bmSeggerLogoBlue, (LCD_XSIZE - bmSeggerLogoBlue.XSize) >> 1, yPos);
+ #if (LCD_YSIZE >= 220)
+ GUI_SetFont(&GUI_Font10S_ASCII);
+ GUI_DispStringAt("GUI_OS: ", 0, LCD_YSIZE - 30); GUI_DispDecMin(GUI_OS);
+ GUI_DispStringAt("GUI_ALLOC_SIZE: ",0, LCD_YSIZE - 20); GUI_DispDecMin(GUI_ALLOC_SIZE);
+ GUI_DispStringAt("Compiler: "
+ #ifdef _MSC_VER
+ "Microsoft"
+ #elif defined (NC308)
+ "Mitsubishi NC308"
+ #elif defined (NC30)
+ "Mitsubishi NC30"
+ #elif defined (__TID__)
+ #if (((__TID__ >>8) &0x7f) == 48) /* IAR MC80 */
+ "IAR M32C"
+ #elif (((__TID__ >>8) &0x7f) == 85) /* IAR V850 */
+ "IAR V850"
+ #elif defined (__ICCARM__) /* IAR ARM */
+ "IAR ARM"
+ #else /* IAR MC16 */
+ "IAR M32C"
+ #endif
+ #elif defined __WATCOMC__ /* WATCOM */
+ "WATCOM"
+ #elif defined __GNUC__
+ "GNU"
+ #else
+ "Unknown"
+ #endif
+ ,0, LCD_YSIZE - 10);
+ #endif
+ GUIDEMO_Delay(5000);
+ GUIDEMO_NotifyStartNext();
+}
+
+#else /* GUIDEMO_LARGE */
+
+void GUIDEMO_Intro(void) {
+ #if GUIDEMO_TINY
+ char acText[20] = "Version: ";
+ #else
+ char acText[32] = "Version of emWin: ";
+ #endif
+ int xCenter, dy, y0 = 0;
+ xCenter = LCD_XSIZE >> 1;
+ #if (LCD_YSIZE < 72)
+ dy = 0;
+ #else
+ dy = ((LCD_YSIZE - 72) >> 3);
+ if (dy > 14) dy = 14;
+ #endif
+ strcat(acText, GUI_GetVersionString());
+ /* Clear the background */
+ GUIDEMO_SetBkColor(GUI_BLUE);
+ GUIDEMO_SetColor(GUI_WHITE);
+ GUI_Clear();
+ /* Display headline */
+ GUI_SetFont(&GUI_Font13B_ASCII);
+ GUI_DispStringHCenterAt("emWin", xCenter, dy + 1);
+ /* Display description */
+ #if (LCD_XSIZE < 140)
+ GUI_SetFont(&GUI_Font8_ASCII);
+ #else
+ GUI_SetFont(&GUI_Font10_ASCII);
+ #endif
+ GUI_DispStringHCenterAt("Universal graphic software\n"
+ "for embedded applications", xCenter, 2 * dy + 18);
+ /* Display compile time */
+ GUI_SetFont(&GUI_Font10S_ASCII);
+ GUI_DispStringHCenterAt("Compiled " __DATE__ " "__TIME__, xCenter, 3 * dy + 37);
+ /* Display version number */
+ #if (LCD_YSIZE < 80)
+ GUI_DispStringAt(acText, 6, LCD_YSIZE - 13);
+ #else
+ GUI_DispStringHCenterAt(acText, xCenter, 4 * dy + 49);
+ #endif
+ GUIDEMO_Delay(5000);
+ GUIDEMO_NotifyStartNext();
+ /* Show SEGGER logo */
+ GUI_Clear();
+ #if GUIDEMO_TINY
+ y0 = 2;
+ #endif
+ #if (LCD_YSIZE >= 90)
+ y0 += (LCD_YSIZE - 90) >> 1;
+ #endif
+ GUI_DrawBitmap(&bmSeggerLogoBlue, xCenter - (bmSeggerLogoBlue.XSize >> 1), y0);
+ /* Display URL */
+ #if (LCD_YSIZE < 80)
+ GUI_SetFont(&GUI_Font10_ASCII);
+ #else
+ GUI_SetFont(&GUI_Font13B_ASCII);
+ #endif
+ y0 += bmSeggerLogoBlue.YSize + 1;
+ GUI_DispStringHCenterAt("www.segger.com", xCenter, y0);
+ GUIDEMO_Delay(5000);
+ GUIDEMO_NotifyStartNext();
+}
+
+#endif
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_LUT.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_LUT.c
new file mode 100644
index 0000000..61f1e16
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_LUT.c
@@ -0,0 +1,82 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Lut.c
+Purpose : Modify lookup table
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+#include "LCD_ConfDefaults.h" /* valid LCD configuration */
+
+#if (LCD_BITSPERPIXEL > 2) && (LCD_BITSPERPIXEL <= 8)
+
+/*********************************************************************
+*
+* Static functions
+*
+**********************************************************************
+*/
+
+static void _ModifyLUT(int RFaktor, int GFaktor, int BFaktor) {
+ int NumColors = LCD_GetDevCap(LCD_DEVCAP_NUMCOLORS);
+ int i;
+ for (i = 0; (i < NumColors) && !GUIDEMO_CheckCancel(); i++) {
+ U32 Color = LCD_GetDevCap(LCD_DEVCAP_COLOR + i);
+ U32 R = Color & 0xff;
+ U32 G = (Color >> 8) & 0xff;
+ U32 B = (Color >> 16) & 0xff;
+ /* Now modify color */
+ R = (R * RFaktor) / 100; if (R > 255) R = 255;
+ G = (G * GFaktor) / 100; if (G > 255) G = 255;
+ B = (B * BFaktor) / 100; if (B > 255) B = 255;
+ /* Write modified color into lookup table */
+ Color = R | (G << 8) | (B << 16);
+ GUI_SetLUTEntry((U8)i, Color);
+ }
+}
+
+/*********************************************************************
+*
+* GUIDEMO_DemoLUT
+*
+**********************************************************************
+*/
+
+void GUIDEMO_DemoLUT(void) {
+ int i;
+ GUIDEMO_ShowIntro("Modify LUT", "... after drawing color bars");
+ GUIDEMO_ShowColorBar();
+ for (i = 100; (i >= 0) && !GUIDEMO_CheckCancel(); i -= 2) {
+ _ModifyLUT(100, 100, i);
+ GUI_Delay(20);
+ }
+ for (i = 100; (i >= 0) && !GUIDEMO_CheckCancel(); i -= 2) {
+ _ModifyLUT(100, i, 0);
+ GUI_Delay(20);
+ }
+ for (i = 100; (i >= 0) && !GUIDEMO_CheckCancel(); i -= 2) {
+ _ModifyLUT(i, i, i);
+ GUI_Delay(20);
+ }
+ LCD_InitLUT();
+ GUIDEMO_Wait();
+}
+
+#else
+
+void GUIDEMO_DemoLUT(void) {}
+
+#endif
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_MemDevB.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_MemDevB.c
new file mode 100644
index 0000000..69075ba
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_MemDevB.c
@@ -0,0 +1,157 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_MemDevB.c
+Purpose : Memory device demo
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+#if GUI_WINSUPPORT
+#include "WM.h"
+#endif
+#include "stdio.h"
+
+#if GUI_SUPPORT_MEMDEV
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static const GUI_POINT _aArrow[] = {
+ { 0, 0 +85},
+ {-40, -35 +85},
+ {-10, -25 +85},
+ {-10, -85 +85},
+ { 10, -85 +85},
+ { 10, -25 +85},
+ { 40, -35 +85}
+};
+
+/* Define the callback structure. The structure should contain all the data
+ required by the callback drawing funtion
+*/
+typedef struct {
+ int Angle;
+ int DoClear;
+ GUI_COLOR BkColor;
+} tDrawContext;
+
+/*********************************************************************
+*
+* Static functions
+*
+**********************************************************************
+*/
+
+/* The user defined callback routine */
+static void _Draw(void * p) {
+ int XSize = LCD_GetXSize();
+ int YSize = LCD_GetYSize();
+ tDrawContext * pContext = (tDrawContext *)p;
+ int i = pContext->Angle;
+ static int iLast = -1;
+ static GUI_POINT aPoint[7];
+ if (pContext->DoClear) {
+ GUI_SetBkColor(pContext->BkColor);
+ GUI_Clear();
+ }
+ GUI_SetFont(&GUI_FontD24x32);
+ GUI_SetTextMode(GUI_TM_TRANS);
+ GUI_SetColor(GUI_GRAY);
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_DispStringHCenterAt("Below arrow", XSize / 2, YSize / 2 - 20);
+ if (iLast != i) {
+ float Angle = 0.02 * (float)i;
+ iLast = i;
+ GUI_RotatePolygon(aPoint, _aArrow, 7, Angle);
+ }
+ GUI_SetColor(GUI_WHITE);
+ GUI_FillPolygon(&aPoint[0], 7, XSize / 2, YSize / 2 + 30);
+ GUI_SetTextMode(GUI_TM_TRANS);
+ GUI_SetColor(GUI_DARKGRAY);
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_DispStringHCenterAt("Above arrow", XSize / 2, YSize / 2);
+}
+
+/*********************************************************************
+*
+* GUIDEMO_ShowMemoryDevice
+*
+**********************************************************************
+*/
+
+void GUIDEMO_ShowMemoryDevice(void) {
+ int i;
+ U32 tDiff, t0;
+ tDrawContext DrawContext;
+ GUI_RECT rView, rPrev, rTemp;
+ GUIDEMO_ShowIntro("Memory devices",
+ "\nFor flicker free animation"
+ "\nand other purposes");
+ GUIDEMO_NotifyStartNext();
+ GUI_SetBkColor(GUI_GREEN);
+ GUI_Clear();
+ /* Use banding memory device */
+ GUI_GetClientRect(&rView);
+ DrawContext.BkColor = GUI_ColorIsAvailable(GUI_RED) ? GUI_RED : GUI_BLACK;
+ GUI_SetBkColor(DrawContext.BkColor);
+ GUI_Clear();
+ t0 = GUI_GetTime();
+ for (i = 0; tDiff = GUI_GetTime() - t0, (tDiff < 8000) && !GUIDEMO_CheckCancel(); i++) {
+ U32 t = GUI_GetTime();
+ DrawContext.Angle = 90 + tDiff / 50;
+ /* Calculate required size */
+ {
+ GUI_HMEM hMem = GUI_MEASDEV_Create();
+ GUI_MEASDEV_Select(hMem);
+ DrawContext.DoClear = 0;
+ _Draw(&DrawContext);
+ GUI_MEASDEV_GetRect(hMem, &rView);
+ GUI_MEASDEV_Delete(hMem);
+ rTemp = rView;
+ if (i)
+ GUI_MergeRect(&rView, &rView, &rPrev);
+ rPrev = rTemp;
+ }
+ DrawContext.DoClear = 1;
+ GUI_MEMDEV_Draw(&rView, _Draw, &DrawContext, 0, GUI_MEMDEV_NOTRANS);
+ t = (GUI_GetTime() - t);
+ if (t < 20) {
+ GUI_Delay(20 -t);
+ }
+ }
+ GUI_SetFont(&GUI_FontComic24B_ASCII);
+ GUI_SetColor(GUI_WHITE);
+ GUI_SetBkColor(DrawContext.BkColor);
+ GUI_DispStringAt("ms/Update: ", 10 , 200);
+ if (i) {
+ GUI_DispDecMin(tDiff / i);
+ }
+ GUIDEMO_Delay(1000);
+ GUI_Clear();
+}
+
+#else
+
+ void GUIDEMO_ShowMemoryDevice(void) {}
+
+#endif /* GUI_SUPPORT_MEMDEV */
+
+
+
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Messagebox.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Messagebox.c
new file mode 100644
index 0000000..61ff5f9
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Messagebox.c
@@ -0,0 +1,55 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Messagebox.c
+Purpose : Messagebox samples
+----------------------------------------------------------------------
+*/
+
+#include /* needed for definition of NULL */
+#include "GUI.h"
+#include "GUIDEMO.h"
+#include "LCD_ConfDefaults.h"
+
+#if GUI_WINSUPPORT
+
+#include "WM.h"
+#include "DIALOG.h"
+
+/*********************************************************************
+*
+* GUIDEMO_Dialog
+*
+**********************************************************************
+*/
+
+void GUIDEMO_Messagebox(void) {
+ GUI_COLOR Color;
+ GUIDEMO_ShowIntro("Message boxes",
+ "Message boxes" "\ncan easily be created");
+ Color = WM_SetDesktopColor(GUI_RED);
+ GUI_MessageBox("Message", "Text", 0);
+ GUI_Delay(1000);
+ GUI_MessageBox("2. Message", "Text", 0);
+ GUI_Delay(1000);
+ WM_SetDesktopColor(Color);
+ GUIDEMO_NotifyStartNext();
+
+}
+
+#else
+
+void GUIDEMO_Messagebox(void) {}
+
+#endif /* GUI_SUPPORT_MEMDEV */
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Navi.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Navi.c
new file mode 100644
index 0000000..3c91013
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Navi.c
@@ -0,0 +1,190 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Navi.c
+Purpose : Navigation system demo
+----------------------------------------------------------------------
+*/
+
+#include
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+#if GUI_WINSUPPORT & GUI_SUPPORT_MEMDEV
+
+#include "WM.h"
+#include "FRAMEWIN.h"
+
+#include "Map.h"
+
+/*********************************************************************
+*
+* defines
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_TINY
+ #define BORDER 0
+#else
+ #define BORDER 8
+#endif
+
+/*********************************************************************
+*
+* static data
+*
+**********************************************************************
+*/
+
+static int _MapX = 0;
+static int _MapY = 0;
+static int _MapHereX = 90;
+static int _MapHereY = 15;
+
+/*********************************************************************
+*
+* static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _cbNaviWindow
+*/
+static void _cbNaviWindow(WM_MESSAGE* pMsg) {
+ switch (pMsg->MsgId) {
+ case WM_PAINT:
+ GUI_SetDrawMode(GUI_DRAWMODE_NORMAL);
+ GUI_SetTextMode(GUI_TM_TRANS);
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_SetColor(0x0050FF);
+ GUI_DrawBitmap(&bmMap, -_MapX, -_MapY);
+ GUI_DrawCircle(_MapHereX - _MapX, _MapHereY - _MapY, 4);
+ GUI_DrawCircle(_MapHereX - _MapX, _MapHereY - _MapY, 5);
+ GUI_DispStringAt("You are here", _MapHereX - _MapX - 45, _MapHereY - _MapY - 22);
+ break;
+ default:
+ WM_DefaultProc(pMsg);
+ }
+}
+
+/*********************************************************************
+*
+* _NavigationDriveTo
+*/
+static void _NavigationDriveTo(WM_HWIN hWin, int x1, int y1) {
+ GUI_RECT Rect;
+ int x0 = _MapHereX;
+ int y0 = _MapHereY;
+ float dx = x1 - x0;
+ float dy = y1 - y0;
+ float Len = sqrt((dx * dx) + (dy * dy));
+ float sx = dx / Len;
+ float sy = dy / Len;
+ int i, tRef;
+ WM_GetClientRectEx(hWin, &Rect);
+ for (i = 1; (i <= Len) && !GUIDEMO_CheckCancel(); i += 2) {
+ tRef = GUI_GetTime();
+ _MapHereX = x0 + (i * sx);
+ _MapHereY = y0 + (i * sy);
+ _MapX = _MapHereX - (Rect.x1 >> 1);
+ _MapY = _MapHereY - (Rect.y1 >> 1);
+ if (_MapX < 0) {
+ _MapX = 0;
+ } else if ((_MapX + Rect.x1) >= bmMap.XSize) {
+ _MapX = bmMap.XSize - Rect.x1 - 1;
+ }
+ if (_MapY < 0) {
+ _MapY = 0;
+ } else if ((_MapY + Rect.y1) >= bmMap.YSize) {
+ _MapY = bmMap.YSize - Rect.y1 - 1;
+ }
+ WM_InvalidateWindow(hWin);
+ do {
+ GUI_Exec();
+ } while (((GUI_GetTime() - tRef) < 100) && !GUIDEMO_CheckCancel());
+ }
+ _MapHereX = x1;
+ _MapHereY = y1;
+ WM_InvalidateWindow(hWin);
+}
+
+/*********************************************************************
+*
+* _ShowMovingMap
+*/
+static void _ShowMovingMap(void) {
+ WM_HWIN hWin;
+ WM_HWIN hClient;
+ int i, x, y, w, h;
+ int xSize = LCD_GetXSize();
+ int ySize = LCD_GetYSize();
+ const GUI_POINT aRouteToSegger[] = {
+ { 90, 15}, {131, 54}, {141, 62},
+ {166, 46}, {180, 40}, {204, 113},
+ {213, 156}, {217, 172}, {206, 173},
+ {205, 165}
+ };
+ #if GUIDEMO_LARGE
+ y = 70;
+ #else
+ y = BORDER;
+ #endif
+ x = BORDER;
+ w = xSize - x - BORDER;
+ h = ySize - y - BORDER;
+ if (w > bmMap.XSize) {
+ w = bmMap.XSize;
+ }
+ if (h > bmMap.YSize) {
+ h = bmMap.YSize;
+ }
+ /* Initialize starting point */
+ _MapHereX = aRouteToSegger[0].x;
+ _MapHereY = aRouteToSegger[0].y;
+ /* Create framewin */
+ hWin = FRAMEWIN_CreateEx(x, y, w, h, WM_HBKWIN, WM_CF_SHOW | WM_CF_MEMDEV, 0, 0, "Map to Segger (Hilden)", _cbNaviWindow);
+ FRAMEWIN_SetActive(hWin, 0);
+ hClient = WM_GetClientWindow(hWin);
+ WM_SetCallback(hClient, &_cbNaviWindow);
+ /* Move over map */
+ for (i = 1; (i < 10) && !GUIDEMO_CheckCancel(); i++) {
+ _NavigationDriveTo(hClient, aRouteToSegger[i].x, aRouteToSegger[i].y);
+ }
+ GUIDEMO_Delay(1000);
+ /* Delete framewin */
+ WM_DeleteWindow(hWin);
+}
+
+#else
+
+#define _ShowMovingMap()
+
+#endif
+
+/*********************************************************************
+*
+* GUIDEMO_Navigation
+*
+**********************************************************************
+*/
+
+void GUIDEMO_Navigation(void) {
+ GUIDEMO_ShowIntro("Navigation system",
+ "\nSamples used in"
+ "\nNavigation systems");
+ _ShowMovingMap();
+}
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Polygon.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Polygon.c
new file mode 100644
index 0000000..4bd8acc
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Polygon.c
@@ -0,0 +1,147 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Polygon.c
+Purpose : Several GUIDEMO routines
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+#define COUNTOF(Obj) (sizeof(Obj)/sizeof(Obj[0]))
+
+/*********************************************************************
+*
+* Static data
+*
+**********************************************************************
+*/
+
+static const GUI_POINT _aArrow[] = {
+ { 0, 30 },
+ {-40, 0 },
+ {-10, 10 },
+ {-10, -50 },
+ { 10, -50 },
+ { 10, 10 },
+ { 40, 0 }
+};
+
+static const GUI_POINT _aTriangle[] = {
+ { 0, 0 },
+ {-30, 30 },
+ { 30, 30 },
+};
+
+#if GUI_SUPPORT_AA
+static const GUI_POINT _aiCursor[] = {
+ { 0, -10 },
+ { 50, 0 },
+ { 0, -100 },
+ {-50, 0 }
+};
+#endif
+
+/*********************************************************************
+*
+* static code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* _MagnifyPolygon
+*/
+#if ((LCD_XSIZE != 320) || (LCD_YSIZE != 240))
+static void _MagnifyPolygon(GUI_POINT* pDest, const GUI_POINT* pSrc, int NumPoints, float Mag) {
+ int j;
+ for (j = 0; j < NumPoints; j++) {
+ (pDest + j)->x = (pSrc + j)->x * Mag;
+ (pDest + j)->y = (pSrc + j)->y * Mag;
+ }
+}
+#endif
+
+/*********************************************************************
+*
+* public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUIDEMO_DemoPolygon
+*/
+void GUIDEMO_DemoPolygon(void) {
+ GUI_COLOR Color;
+ int XMid = (LCD_XSIZE >> 1);
+ int YMid = (LCD_YSIZE >> 1);
+ GUIDEMO_ShowIntro("Arbitrary Polygons",
+ "\nStandard and antialiased");
+ GUI_SetColor(GUI_WHITE);
+ #if GUIDEMO_LARGE
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_DispStringAt("Arbitrary\nPolygons", 0, 0);
+ YMid += 10;
+ #endif
+ #if ((LCD_XSIZE != 320) || (LCD_YSIZE != 240))
+ {
+ GUI_POINT aPolygon[8];
+ float Factor;
+ #if ((LCD_XSIZE / 320) < (LCD_YSIZE / 240))
+ Factor = LCD_XSIZE / 320.f;
+ #else
+ Factor = LCD_YSIZE / 240.f;
+ #endif
+ #if !(GUIDEMO_LARGE)
+ Factor *= 1.2f;
+ #endif
+ /* Draw arrows */
+ _MagnifyPolygon(aPolygon, _aArrow, COUNTOF(_aArrow), Factor);
+ GUI_FillPolygon(aPolygon, 7, XMid - (50 * Factor), YMid);
+ GUI_FillPolygon(aPolygon, 7, XMid + (50 * Factor), YMid);
+ /* Draw triangle */
+ _MagnifyPolygon(aPolygon, _aTriangle, COUNTOF(_aTriangle), Factor);
+ Color = GUIDEMO_SetColor(GUI_GREEN);
+ if (Color != GUI_GREEN) {
+ GUI_SetColor(GUI_YELLOW);
+ }
+ GUI_FillPolygon(aPolygon, 3, XMid, YMid + (10 * Factor));
+ /* Draw cursor */
+ #if GUI_SUPPORT_AA
+ GUI_SetColor(GUI_WHITE);
+ GUI_AA_EnableHiRes();
+ _MagnifyPolygon(aPolygon, _aiCursor, COUNTOF(_aiCursor), Factor);
+ GUI_AA_FillPolygon(aPolygon, 4, XMid * 3, (YMid - (10 * Factor)) * 3);
+ #endif
+ }
+ #else
+ GUI_FillPolygon(_aArrow, 7, XMid - 50, YMid);
+ GUI_FillPolygon(_aArrow, 7, XMid + 50, YMid);
+ /* Draw triangle */
+ Color = GUIDEMO_SetColor(GUI_GREEN);
+ if (Color != GUI_GREEN) {
+ GUI_SetColor(GUI_YELLOW);
+ }
+ GUI_FillPolygon(_aTriangle, 3, XMid, YMid + 10);
+ /* Draw cursor */
+ #if GUI_SUPPORT_AA
+ GUI_SetColor(GUI_WHITE);
+ GUI_AA_EnableHiRes();
+ GUI_AA_FillPolygon((GUI_POINT*)_aiCursor, 4, XMid * 3, (YMid - 10) * 3);
+ #endif
+ #endif
+ GUIDEMO_Wait();
+}
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_ProgBar.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_ProgBar.c
new file mode 100644
index 0000000..536a2c6
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_ProgBar.c
@@ -0,0 +1,147 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_DemoProgBar.c
+Purpose : Progress bar demo
+----------------------------------------------------------------------
+*/
+
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+#if GUI_WINSUPPORT
+
+#include "PROGBAR.h"
+
+/*********************************************************************
+*
+* GUIDEMO_DemoProgBar
+*
+**********************************************************************
+*/
+
+void GUIDEMO_DemoProgBar(void) {
+ PROGBAR_Handle ahProgBar[2];
+ int i, iRep;
+ int XMid = LCD_GetXSize() / 2;
+ int YMid = LCD_GetYSize() / 2;
+ #if GUIDEMO_LARGE
+ int MaxReps = 2;
+ int Length[2] = {110, 140};
+ int Height[2] = {20, 10};
+ int y0 = YMid - 40;
+ int dy = 10;
+ #elif !(GUIDEMO_TINY)
+ int MaxReps = 1;
+ int Length[2] = {100, 130};
+ int Height[2] = {18, 10};
+ int y0 = YMid - 38;
+ int dy = 9;
+ #else
+ int MaxReps = 1;
+ int Length[2] = {85, 115};
+ int Height[2] = {16, 8};
+ int y0 = YMid - 35;
+ int dy = 8;
+ #endif
+ if (YMid < 40) {
+ Height[0] = 14;
+ y0 = 1;
+ dy = 4;
+ }
+ GUIDEMO_ShowIntro("Widgets",
+ "\nProgressbars in"
+ "\nall variations");
+ GUI_Clear();
+ GUI_SetColor(GUI_WHITE);
+ GUI_SetFont(&GUI_Font8x16);
+ GUI_DispStringHCenterAt("Progress bar", XMid, y0);
+ /* Create `em */
+ ahProgBar[0] = PROGBAR_Create(XMid - Length[0] / 2,
+ YMid - Height[0],
+ Length[0],
+ Height[0],
+ WM_CF_SHOW);
+ ahProgBar[1] = PROGBAR_Create(XMid - Length[1] / 2,
+ YMid + dy,
+ Length[1],
+ Height[1],
+ WM_CF_SHOW);
+ /* Use memory device (optional, for better looks) */
+ #if GUI_SUPPORT_MEMDEV
+ PROGBAR_EnableMemdev(ahProgBar[0]);
+ PROGBAR_EnableMemdev(ahProgBar[1]);
+ #endif
+ GUIDEMO_Delay (800);
+ PROGBAR_SetMinMax(ahProgBar[1], 0, 500);
+ for (iRep = 0; iRep < MaxReps; iRep++) {
+ #if !(GUIDEMO_TINY)
+ PROGBAR_SetFont(ahProgBar[0], &GUI_Font8x16);
+ #endif
+ #if (LCD_BITSPERPIXEL == 2)
+ PROGBAR_SetBarColor(ahProgBar[0], 0, GUI_DARKGRAY);
+ PROGBAR_SetBarColor(ahProgBar[1], 0, GUI_DARKGRAY);
+ PROGBAR_SetBarColor(ahProgBar[0], 1, GUI_WHITE);
+ PROGBAR_SetBarColor(ahProgBar[1], 1, GUI_WHITE);
+ #elif (LCD_BITSPERPIXEL <= 4)
+ PROGBAR_SetBarColor(ahProgBar[0], 0, GUI_DARKGRAY);
+ PROGBAR_SetBarColor(ahProgBar[0], 1, GUI_LIGHTGRAY);
+ #else
+ PROGBAR_SetBarColor(ahProgBar[0], 0, GUI_GREEN);
+ PROGBAR_SetBarColor(ahProgBar[0], 1, GUI_RED);
+ #endif
+ for (i = 0; (i <= 100) && !GUIDEMO_CheckCancel(); i++) {
+ PROGBAR_SetValue(ahProgBar[0], i);
+ PROGBAR_SetValue(ahProgBar[1], i);
+ GUI_Delay(5);
+ }
+ PROGBAR_SetText(ahProgBar[0], "Tank empty");
+ for (; (i >= 0)&& !GUIDEMO_CheckCancel(); i--) {
+ PROGBAR_SetValue(ahProgBar[0], i);
+ PROGBAR_SetValue(ahProgBar[1], 200 - i);
+ GUI_Delay(5);
+ }
+ PROGBAR_SetText(ahProgBar[0], "Any text ...");
+ PROGBAR_SetTextAlign(ahProgBar[0], GUI_TA_LEFT);
+ for (; (i <= 100)&& !GUIDEMO_CheckCancel(); i++) {
+ PROGBAR_SetValue(ahProgBar[0], i);
+ PROGBAR_SetValue(ahProgBar[1], 200 + i);
+ GUI_Delay(5);
+ }
+ for (; (i >= 0)&& !GUIDEMO_CheckCancel(); i--) {
+ PROGBAR_SetValue(ahProgBar[0], i);
+ PROGBAR_SetValue(ahProgBar[1], 400 - i);
+ GUI_Delay(5);
+ }
+ PROGBAR_SetFont(ahProgBar[0], &GUI_FontComic18B_1);
+ PROGBAR_SetText(ahProgBar[0], "Any font ...");
+ for (; (i <= 100)&& !GUIDEMO_CheckCancel(); i++) {
+ PROGBAR_SetValue(ahProgBar[0], i);
+ PROGBAR_SetValue(ahProgBar[1], 400 + i);
+ GUI_Delay(5);
+ }
+ GUIDEMO_Delay(1000);
+ }
+ GUIDEMO_Delay(1000);
+ PROGBAR_Delete(ahProgBar[0]);
+ PROGBAR_Delete(ahProgBar[1]);
+ GUIDEMO_Delay(1000);
+ GUI_SetFont(&GUI_Font10S_ASCII);
+}
+
+#elif defined(NC30) || defined(NC308)
+
+void GUIDEMO_ProgBar(void) {}
+
+#endif /* GUI_WINSUPPORT */
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Speed.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Speed.c
new file mode 100644
index 0000000..0eca653
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Speed.c
@@ -0,0 +1,91 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Speed.c
+Purpose : Speed demo
+----------------------------------------------------------------------
+*/
+
+#include /* for rand */
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+static const GUI_COLOR _aColor[8] = {
+ 0x000000,
+ 0x0000FF,
+ 0x00FF00,
+ 0x00FFFF,
+ 0xFF0000,
+ 0xFF00FF,
+ 0xFFFF00,
+ 0xFFFFFF
+};
+
+/*********************************************************************
+*
+* GUIDEMO_Speed
+*
+**********************************************************************
+*/
+
+void GUIDEMO_Speed(void) {
+ int t, i;
+ I32 NumPixels = 0;
+ U16 aColorIndex[8];
+ GUIDEMO_ShowIntro("High speed",
+ "\nmulti layer clipping"
+ "\nhighly optimized drivers"
+ );
+ for (i = 0; i< 8; i++) {
+ aColorIndex[i] = GUI_Color2Index(_aColor[i]);
+ }
+ t = GUI_GetTime();
+ for (i = 0; ((GUI_GetTime() - t) < 8000) && !GUIDEMO_CheckCancel(); i++) {
+ GUI_RECT r;
+ GUI_SetColorIndex(aColorIndex[i&7]);
+ /* Calculate random positions */
+ r.x0 = rand() % LCD_XSIZE - LCD_XSIZE / 2;
+ r.y0 = rand() % LCD_YSIZE - LCD_YSIZE / 2;
+ r.x1 = r.x0 + 20 + rand() % LCD_XSIZE;
+ r.y1 = r.y0 + 20 + rand() % LCD_YSIZE;
+ GUI_FillRect(r.x0, r.y0, r.x1, r.y1);
+ /* Clip rectangle to visible area and add the number of pixels (for speed computation) */
+ if (r.x1 >= LCD_XSIZE)
+ r.x1 = LCD_XSIZE - 1;
+ if (r.y1 >= LCD_YSIZE)
+ r.y1 = LCD_YSIZE - 1;
+ if (r.x0 < 0 )
+ r.x0 = 0;
+ if (r.y1 < 0)
+ r.y1 = 0;
+ NumPixels += (r.x1 - r.x0) * (r.y1 - r.y0);
+ /* Allow short breaks so we do not use all available CPU time ... */
+ }
+ t = (GUI_GetTime() - t) / 100;
+ GUI_Clear();
+ GUIDEMO_NotifyStartNext();
+ #if GUIDEMO_LARGE
+ GUI_SetFont(&GUI_FontComic24B_ASCII);
+ #elif !(GUIDEMO_TINY)
+ GUI_SetFont(&GUI_Font16B_ASCII);
+ #else
+ GUI_SetFont(&GUI_Font13B_ASCII);
+ #endif
+ GUI_SetColor(GUI_WHITE);
+ GUI_DispStringAt("Pixels/sec: ", 5, (LCD_YSIZE - GUI_GetFontSizeY()) / 2);
+ if (t == 0)
+ t++;
+ GUI_DispDecMin(10 * (NumPixels / t));
+ GUIDEMO_Wait();
+}
diff --git a/User/lib/lcd/gui/GUIDemo/GUIDEMO_Touch.c b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Touch.c
new file mode 100644
index 0000000..7a07eac
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/GUIDEMO_Touch.c
@@ -0,0 +1,388 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUIDEMO_Touch
+Purpose : Touch demo
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "GUI.h"
+#include "LCD_ConfDefaults.h" /* valid LCD configuration */
+#include "GUIDEMO.h"
+
+#if (GUI_WINSUPPORT && GUI_SUPPORT_TOUCH)
+
+#include "BUTTON.h"
+#include "EDIT.h"
+
+#define countof(Obj) (sizeof(Obj)/sizeof(Obj[0]))
+
+/*********************************************************************
+*
+* Static functions
+*
+**********************************************************************
+*/
+
+static int _Log2Phys(int l, I32 l0, I32 l1, I32 p0, I32 p1) {
+ return p0 + ((p1 - p0) * (l - l0)) / (l1 - l0);
+}
+
+static void _Calibrate(int Coord, int Log0, int Log1, int Phys0, int Phys1, int *p0, int *p1) {
+ int l0 = 0;
+ int l1 = (Coord == GUI_COORD_X) ? LCD_XSIZE - 1 : LCD_YSIZE - 1;
+ *p0 = _Log2Phys(l0, Log0, Log1, Phys0, Phys1);
+ *p1 = _Log2Phys(l1, Log0, Log1, Phys0, Phys1);
+}
+
+/*********************************************************************
+*
+* _ExecCalibration
+*
+**********************************************************************
+*/
+
+static void _ExecCalibration(void) {
+ int ax_Phys[2],ay_Phys[2];
+/* calculate log. Positions */
+ int ax[2] = { 15, LCD_XSIZE -1-15};
+// const int ay[2] = { 15, LCD_YSIZE-1-15};
+ int ay[2] = { LCD_YSIZE-1-15, 15};
+ GUI_TOUCH_SetDefaultCalibration();
+/* _Calibrate upper left */
+ GUI_SetBkColor(GUI_RED);
+ GUI_Clear();
+ GUI_SetColor(GUI_WHITE); GUI_FillCircle(ax[0], ay[0], 10);
+ GUI_SetColor(GUI_RED); GUI_FillCircle(ax[0], ay[0], 5);
+ GUI_SetColor(GUI_WHITE);
+ GUI_DispStringAt("Press here", ax[0]+20, ay[0]);
+ do {
+ GUI_PID_STATE State;
+ GUI_TOUCH_GetState(&State);
+ if (State.Pressed) {
+ ax_Phys[0] = GUI_TOUCH_GetxPhys();
+ ay_Phys[0] = GUI_TOUCH_GetyPhys();
+ break;
+ }
+ GUI_Delay (100);
+ } while (1);
+/* Tell user to release */
+ GUI_Clear();
+ GUI_DispStringAt("OK", ax[0]+20, ay[0]);
+ do {
+ GUI_PID_STATE State;
+ GUI_TOUCH_GetState(&State);
+ if (State.Pressed == 0) {
+ break;
+ }
+ GUI_Delay (100);
+ } while (1);
+/* _Calibrate lower right */
+ GUI_SetBkColor(GUI_RED);
+ GUI_Clear();
+ GUI_SetColor(GUI_WHITE); GUI_FillCircle(ax[1], ay[1], 10);
+ GUI_SetColor(GUI_RED); GUI_FillCircle(ax[1], ay[1], 5);
+ GUI_SetColor(GUI_WHITE);
+ GUI_SetTextAlign(GUI_TA_RIGHT);
+ GUI_DispStringAt("Press here", ax[1]-20, ay[1]);
+ do {
+ GUI_PID_STATE State;
+ GUI_TOUCH_GetState(&State);
+ if (State.Pressed) {
+ ax_Phys[1] = GUI_TOUCH_GetxPhys();
+ ay_Phys[1] = GUI_TOUCH_GetyPhys();
+ break;
+ }
+ GUI_Delay (100);
+ } while (1);
+ GUI_TOUCH_Calibrate(GUI_COORD_X, ax[0], ax[1], ax_Phys[0], ax_Phys[1]);
+ GUI_TOUCH_Calibrate(GUI_COORD_Y, ay[0], ay[1], ay_Phys[0], ay_Phys[1]);
+ { /* calculate and display values for configuration file */
+ int x0, x1;
+ int y0, y1;
+ GUI_Clear();
+ _Calibrate(GUI_COORD_X, ax[0], ax[1], ax_Phys[0], ax_Phys[1], &x0, &x1);
+ _Calibrate(GUI_COORD_Y, ay[0], ay[1], ay_Phys[0], ay_Phys[1], &y0, &y1);
+ GUI_DispStringAt("x0: ", 0, 0); GUI_DispDec(x0, 4); GUI_DispNextLine();
+ GUI_DispString ("x1: "); GUI_DispDec(x1, 4); GUI_DispNextLine();
+ GUI_DispString ("y0: "); GUI_DispDec(y0, 4); GUI_DispNextLine();
+ GUI_DispString ("y1: "); GUI_DispDec(y1, 4); GUI_DispNextLine();
+ GUI_DispString ("Please touch display to continue...");
+ GUI_Delay(1000);
+ do {
+ GUI_PID_STATE State;
+ GUI_TOUCH_GetState(&State);
+ if (State.Pressed)
+ break;
+ GUI_Delay (10);
+ } while (1);
+ }
+}
+
+/*********************************************************************
+*
+* _TestCalibration
+*
+**********************************************************************
+*/
+
+static void _TestCalibration(void) {
+ int IdleCnt=0;
+ BUTTON_Handle hButton;
+ GUI_SetBkColor(GUI_RED);
+ GUI_SetColor(GUI_WHITE);
+ GUI_Clear();
+ hButton = BUTTON_Create( 225, 15, 80, 40, 1, BUTTON_CF_SHOW );
+ BUTTON_SetText (hButton, "ABORT");
+ BUTTON_SetFont (hButton, &GUI_FontComic18B_ASCII);
+ while ((IdleCnt<50) && (GUI_GetKey()==0)) {
+ static GUI_PID_STATE StateLast;
+ GUI_PID_STATE State;
+ GUI_TOUCH_GetState(&State);
+ if ((StateLast.Pressed != State.Pressed) && (State.Pressed == 0)) {
+ GUI_Clear();
+ }
+ if ((StateLast.x != State.x) || ((StateLast.y != State.y))) {
+ if (State.Pressed) {
+ GUI_FillCircle(State.x, State.y, 5);
+ }
+ StateLast = State;
+ }
+ if (State.Pressed) {
+ IdleCnt =0;
+ } else {
+ IdleCnt++;
+ }
+ GUI_Delay (100);
+ }
+ EDIT_Delete(hButton);
+}
+
+/*********************************************************************
+*
+* _ExecKeyboard
+*
+**********************************************************************
+
+This creates a sample keyboard.
+The routine returns after ENTER or ESC has been pressed.
+*/
+
+#if (LCD_XSIZE == 320) && (LCD_YSIZE == 240)
+
+static char _acText[] = { '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '='
+ ,0, 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P'
+ ,0, 'A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L', 'Q'
+ ,0, 'Z', 'X', 'C', 'V', 'B', 'N', 'M', '', '', ''
+ ,' ', ' ', ' ', ' ', ' ', 0, 0
+};
+
+static int _ExecKeyboard(void) {
+ int i;
+ int Key;
+ BUTTON_Handle ahButton[52];
+ BUTTON_Handle hButtonESC;
+ EDIT_Handle hEdit;
+ GUI_RECT rText = {000,0, LCD_XSIZE, 20};
+ GUI_SetBkColor(GUI_RED);
+ GUI_Clear();
+ GUI_DrawBitmap(&bmSeggerLogoBlue, 0, 0);
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_SetColor(GUI_WHITE);
+ GUI_DispStringInRect("emWin", &rText, GUI_TA_RIGHT | GUI_TA_VCENTER);
+ rText.y0 +=20;
+ rText.y1 +=20;
+ GUI_DispStringInRect("Touch screen demo", &rText, GUI_TA_RIGHT | GUI_TA_VCENTER);
+ /* Create Keyboard Buttons */
+ for (i=0; i< 51; i++) {
+ int Pos = (i < 47) ? i : i+4;
+ int x0 = 5 + 28*(Pos%11);
+ int y0 = 100 + 28*(Pos/11);
+ char c = _acText[i];
+ int Id = c ? c : 1;
+ char ac[2] = {0};
+ char *s= ac;
+ ac[0] = c;
+ ahButton[i] = BUTTON_Create( x0, y0, 25, 25, Id,BUTTON_CF_SHOW );
+ BUTTON_SetText (ahButton[i], s);
+ #if GUI_SUPPORT_MEMDEV
+ BUTTON_EnableMemdev(ahButton[i]);
+ #endif
+ }
+ ahButton[i] = BUTTON_Create( 89, 212, 109, 25, ' ',BUTTON_CF_SHOW );
+ hButtonESC = BUTTON_Create( 230, 40, 80, 25, GUI_ID_CANCEL,BUTTON_CF_SHOW );
+ BUTTON_SetText (hButtonESC, "ESC");
+ hEdit = EDIT_Create( 5, 70, 310, 25, ' ', 80, 0 );
+ EDIT_SetFont(hEdit, &GUI_Font8x16);
+ BUTTON_SetBkColor(ahButton[49], 0, GUI_RED);
+ BUTTON_SetBkColor(ahButton[50], 0, GUI_BLUE);
+ /* Handle Keyboard until ESC or ENTER is pressed */
+ do {
+ Key = GUIDEMO_WaitKey();
+ switch (Key) {
+ case 0:
+ case GUI_ID_CANCEL:
+ break;
+ default:
+ EDIT_AddKey(hEdit, Key);
+ }
+ } while ((Key != 'N') && (Key!=GUI_ID_CANCEL) && (Key!=0));
+ /* Cleanup */
+ for (i=0; i< countof(ahButton); i++) {
+ BUTTON_Delete(ahButton[i]);
+ }
+ BUTTON_Delete(hButtonESC);
+ EDIT_Delete(hEdit);
+ return Key;
+}
+
+#else
+
+static char _acText[] = {
+ '7','8','9','/',
+ '4','5','6','*',
+ '1','2','3','-',
+ '0',',','+','=',0
+};
+
+static int _ExecKeyboard(void) {
+ int y0 = 75;
+ int XSize = LCD_GetXSize();
+ int YSize = LCD_GetYSize();
+ int XStep = XSize / 4;
+ int YStep = (YSize - y0) / 4;
+ int i;
+ int Key;
+ BUTTON_Handle ahButton[16];
+ BUTTON_Handle hButtonESC;
+ EDIT_Handle hEdit;
+ GUI_RECT rText = {0};
+ rText.x1 = LCD_GetXSize() - 3;
+ rText.y1 = 20;
+ GUI_SetBkColor(GUI_RED);
+ GUI_Clear();
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_SetColor(GUI_WHITE);
+ GUI_DispStringInRect("emWin", &rText, GUI_TA_RIGHT | GUI_TA_VCENTER);
+ rText.y0 +=20;
+ rText.y1 +=20;
+ GUI_DispStringInRect("Touch screen demo", &rText, GUI_TA_RIGHT | GUI_TA_VCENTER);
+ /* Create Keyboard Buttons */
+ for (i=0; _acText[i]; i++) {
+ int XPos = (i%4) * XStep + 3;
+ int YPos = (i/4) * YStep + 3 + y0;
+ char c = _acText[i];
+ int Id = c ? c : 1;
+ char ac[2] = {0};
+ char *s= ac;
+ ac[0] = c;
+ ahButton[i] = BUTTON_Create( XPos, YPos, XStep - 5, YStep - 5, Id, BUTTON_CF_SHOW );
+ BUTTON_SetText(ahButton[i], s);
+ BUTTON_EnableMemdev(ahButton[i]);
+ }
+ hButtonESC = BUTTON_Create( 3, 3, 80, 25, GUI_ID_CANCEL, BUTTON_CF_SHOW );
+ BUTTON_SetText(hButtonESC, "ESC");
+ hEdit = EDIT_Create( 5, y0 - 30, XSize - 10, 25, ' ', 80, 0 );
+ EDIT_SetFont(hEdit, &GUI_Font8x16);
+ /* Handle Keyboard until ESC or ENTER is pressed */
+ do {
+ Key = GUIDEMO_WaitKey();
+ switch (Key) {
+ case 0:
+ case GUI_ID_CANCEL:
+ break;
+ default:
+ EDIT_AddKey(hEdit, Key);
+ }
+ } while ((Key != 'N') && (Key!=GUI_ID_CANCEL) && (Key!=0));
+ /* Cleanup */
+ for (i=0; i< countof(ahButton); i++) {
+ BUTTON_Delete(ahButton[i]);
+ }
+ BUTTON_Delete(hButtonESC);
+ EDIT_Delete(hEdit);
+ return Key;
+}
+
+#endif
+
+/*
+**********************************************************************
+*
+* USER_Task
+*
+**********************************************************************
+*/
+
+#if GUIDEMO_LARGE
+
+void GUIDEMO_Touch(void) {
+ #define ID_KEYBOARD 1
+ #define ID_TESTCAL 2
+ #define ID_CALIBRATE 3
+ int i, r;
+ int XSize = LCD_GetXSize();
+ int YSize = LCD_GetYSize();
+ int XMid = XSize / 2;
+ int YMid = YSize / 2;
+ GUIDEMO_NotifyStartNext();
+ GUIDEMO_HideInfoWin();
+ do {
+ GUI_RECT rText;/*= {0, 80, XSize, 120};*/
+ BUTTON_Handle ahButton[3];
+ rText.x0=0;
+ rText.y0=80;
+ rText.x1=XSize;
+ rText.y1=120;
+ GUI_SetBkColor(GUI_BLUE);
+ GUI_Clear();
+ GUI_DrawBitmap(&bmSeggerLogoBlue, (XSize - 1 - bmSeggerLogoBlue.XSize) / 2, 15);
+ GUI_SetFont(&GUI_FontComic18B_ASCII);
+ GUI_DispStringInRect("emWin Touch screen demo", &rText, GUI_TA_HCENTER | GUI_TA_VCENTER);
+ ahButton[0] = BUTTON_Create( XMid - 50, YMid - 20, 100, 50, ID_CALIBRATE,BUTTON_CF_SHOW );
+ ahButton[1] = BUTTON_Create( XMid - 90, YMid + 40, 80, 30, ID_KEYBOARD, BUTTON_CF_SHOW );
+ ahButton[2] = BUTTON_Create( XMid + 10, YMid + 40, 80, 30, ID_TESTCAL,BUTTON_CF_SHOW );
+ BUTTON_SetText (ahButton[0], "Calibrate");
+ BUTTON_SetBkColor(ahButton[0], 0, GUI_RED);
+ BUTTON_SetText (ahButton[1], "Keyboard");
+ BUTTON_SetText (ahButton[2], "Test calibration");
+ BUTTON_SetFont(ahButton[0], &GUI_FontComic18B_ASCII);
+ r = GUIDEMO_WaitKey();
+ if (r==0) {
+ r = ID_KEYBOARD;
+ BUTTON_SetState(ahButton[1], BUTTON_STATE_PRESSED);
+ GUIDEMO_Delay(500);
+ }
+ for (i=0; i< countof(ahButton); i++) {
+ BUTTON_Delete(ahButton[i]);
+ }
+ switch (r) {
+ case ID_KEYBOARD: r= _ExecKeyboard(); break;
+ case ID_CALIBRATE: _ExecCalibration(); break;
+ case ID_TESTCAL: _TestCalibration(); break;
+ }
+ } while (r && (r!='n') && (r!='N'));
+}
+
+#else
+
+void GUIDEMO_Touch(void) {}
+
+#endif
+
+#else
+
+void GUIDEMO_Touch(void) {} /* avoid empty object files */
+
+#endif /* #if GUI_WINSUPPORT */
diff --git a/User/lib/lcd/gui/GUIDemo/Map.h b/User/lib/lcd/gui/GUIDemo/Map.h
new file mode 100644
index 0000000..4382446
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/Map.h
@@ -0,0 +1,5793 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : Map.h
+Purpose : Bitmap file
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include "stdlib.h"
+
+#include "GUI.h"
+
+/* Palette
+
+
+The following are the entries of the palette table.
+Every entry is a 32-bit value (of which 24 bits are actually used)
+the lower 8 bits represent the Red component,
+the middle 8 bits represent the Green component,
+the highest 8 bits (of the 24 bits used) represent the Blue component
+as follows: 0xBBGGRR
+*/
+const GUI_COLOR ColorsMap[] = {
+ 0xEEEEEE,0x99CCFF,0xCCFFCC,0xFFFFFF
+ ,0xCCCCCC,0x0000FF,0x888888,0x000000
+ ,0x33FFFF,0x444444,0xDDDDDD,0xBBBBBB
+ ,0x99CC99,0x777777,0xAAAAAA,0x555555
+ ,0x00FFFF,0x666666,0x999999,0x660000
+ ,0x669966,0xCCCCFF,0xFF0066,0xCC0033
+ ,0xCCFFFF,0x9999FF,0x6666FF,0x99FFFF
+};
+
+
+const GUI_LOGPALETTE PalMap = {
+ 28, /* number of entries */
+ 0, /* No transparency */
+ &ColorsMap[0]
+};
+
+
+
+const unsigned char acMap[] = {
+ /* RLE: 011 Pixels @ 000,000*/ 11, 0x0C,
+ /* RLE: 001 Pixels @ 011,000*/ 1, 0x14,
+ /* RLE: 026 Pixels @ 012,000*/ 26, 0x0C,
+ /* RLE: 001 Pixels @ 038,000*/ 1, 0x02,
+ /* RLE: 033 Pixels @ 039,000*/ 33, 0x01,
+ /* RLE: 001 Pixels @ 072,000*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 073,000*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 080,000*/ 0, 2, 0x04, 0x04,
+ /* RLE: 091 Pixels @ 082,000*/ 91, 0x00,
+ /* ABS: 004 Pixels @ 173,000*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 047 Pixels @ 177,000*/ 47, 0x01,
+ /* RLE: 001 Pixels @ 224,000*/ 1, 0x04,
+ /* RLE: 019 Pixels @ 225,000*/ 19, 0x03,
+ /* RLE: 003 Pixels @ 244,000*/ 3, 0x04,
+ /* RLE: 141 Pixels @ 247,000*/ 141, 0x01,
+ /* RLE: 006 Pixels @ 000,001*/ 6, 0x0C,
+ /* RLE: 001 Pixels @ 006,001*/ 1, 0x14,
+ /* RLE: 005 Pixels @ 007,001*/ 5, 0x0C,
+ /* RLE: 001 Pixels @ 012,001*/ 1, 0x14,
+ /* RLE: 007 Pixels @ 013,001*/ 7, 0x0C,
+ /* RLE: 003 Pixels @ 020,001*/ 3, 0x14,
+ /* RLE: 014 Pixels @ 023,001*/ 14, 0x0C,
+ /* RLE: 001 Pixels @ 037,001*/ 1, 0x02,
+ /* RLE: 034 Pixels @ 038,001*/ 34, 0x01,
+ /* RLE: 001 Pixels @ 072,001*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 073,001*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 081,001*/ 0, 2, 0x04, 0x04,
+ /* RLE: 091 Pixels @ 083,001*/ 91, 0x00,
+ /* ABS: 004 Pixels @ 174,001*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 046 Pixels @ 178,001*/ 46, 0x01,
+ /* RLE: 001 Pixels @ 224,001*/ 1, 0x04,
+ /* RLE: 015 Pixels @ 225,001*/ 15, 0x03,
+ /* RLE: 003 Pixels @ 240,001*/ 3, 0x04,
+ /* RLE: 145 Pixels @ 243,001*/ 145, 0x01,
+ /* RLE: 019 Pixels @ 000,002*/ 19, 0x0C,
+ /* ABS: 005 Pixels @ 019,002*/ 0, 5, 0x14, 0x0C, 0x0C, 0x14, 0x14,
+ /* RLE: 012 Pixels @ 024,002*/ 12, 0x0C,
+ /* RLE: 001 Pixels @ 036,002*/ 1, 0x02,
+ /* RLE: 036 Pixels @ 037,002*/ 36, 0x01,
+ /* RLE: 001 Pixels @ 073,002*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 074,002*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 082,002*/ 0, 2, 0x04, 0x04,
+ /* RLE: 091 Pixels @ 084,002*/ 91, 0x00,
+ /* RLE: 001 Pixels @ 175,002*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 176,002*/ 4, 0x06,
+ /* RLE: 044 Pixels @ 180,002*/ 44, 0x01,
+ /* RLE: 001 Pixels @ 224,002*/ 1, 0x04,
+ /* RLE: 011 Pixels @ 225,002*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 236,002*/ 3, 0x04,
+ /* RLE: 149 Pixels @ 239,002*/ 149, 0x01,
+ /* RLE: 019 Pixels @ 000,003*/ 19, 0x0C,
+ /* ABS: 006 Pixels @ 019,003*/ 0, 6, 0x14, 0x0C, 0x0C, 0x0C, 0x14, 0x14,
+ /* RLE: 006 Pixels @ 025,003*/ 6, 0x0C,
+ /* ABS: 005 Pixels @ 031,003*/ 0, 5, 0x14, 0x0C, 0x0C, 0x0C, 0x02,
+ /* RLE: 037 Pixels @ 036,003*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 073,003*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 075,003*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 083,003*/ 0, 2, 0x04, 0x04,
+ /* RLE: 091 Pixels @ 085,003*/ 91, 0x00,
+ /* ABS: 005 Pixels @ 176,003*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 043 Pixels @ 181,003*/ 43, 0x01,
+ /* ABS: 002 Pixels @ 224,003*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 226,003*/ 6, 0x03,
+ /* RLE: 003 Pixels @ 232,003*/ 3, 0x04,
+ /* RLE: 153 Pixels @ 235,003*/ 153, 0x01,
+ /* RLE: 001 Pixels @ 000,004*/ 1, 0x14,
+ /* RLE: 017 Pixels @ 001,004*/ 17, 0x0C,
+ /* RLE: 001 Pixels @ 018,004*/ 1, 0x14,
+ /* RLE: 004 Pixels @ 019,004*/ 4, 0x0C,
+ /* ABS: 002 Pixels @ 023,004*/ 0, 2, 0x14, 0x14,
+ /* RLE: 007 Pixels @ 025,004*/ 7, 0x0C,
+ /* ABS: 003 Pixels @ 032,004*/ 0, 3, 0x14, 0x0C, 0x02,
+ /* RLE: 038 Pixels @ 035,004*/ 38, 0x01,
+ /* RLE: 003 Pixels @ 073,004*/ 3, 0x04,
+ /* RLE: 008 Pixels @ 076,004*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 084,004*/ 0, 2, 0x04, 0x04,
+ /* RLE: 091 Pixels @ 086,004*/ 91, 0x00,
+ /* ABS: 005 Pixels @ 177,004*/ 0, 5, 0x0D, 0x0D, 0x03, 0x06, 0x0D,
+ /* RLE: 043 Pixels @ 182,004*/ 43, 0x01,
+ /* RLE: 006 Pixels @ 225,004*/ 6, 0x04,
+ /* RLE: 157 Pixels @ 231,004*/ 157, 0x01,
+ /* RLE: 007 Pixels @ 000,005*/ 7, 0x0C,
+ /* RLE: 001 Pixels @ 007,005*/ 1, 0x14,
+ /* RLE: 011 Pixels @ 008,005*/ 11, 0x0C,
+ /* ABS: 005 Pixels @ 019,005*/ 0, 5, 0x14, 0x0C, 0x0C, 0x0C, 0x14,
+ /* RLE: 009 Pixels @ 024,005*/ 9, 0x0C,
+ /* RLE: 042 Pixels @ 033,005*/ 42, 0x01,
+ /* ABS: 002 Pixels @ 075,005*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 077,005*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 085,005*/ 0, 2, 0x04, 0x04,
+ /* RLE: 092 Pixels @ 087,005*/ 92, 0x00,
+ /* ABS: 004 Pixels @ 179,005*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 205 Pixels @ 183,005*/ 205, 0x01,
+ /* RLE: 006 Pixels @ 000,006*/ 6, 0x0C,
+ /* ABS: 003 Pixels @ 006,006*/ 0, 3, 0x14, 0x0C, 0x14,
+ /* RLE: 005 Pixels @ 009,006*/ 5, 0x0C,
+ /* RLE: 001 Pixels @ 014,006*/ 1, 0x14,
+ /* RLE: 005 Pixels @ 015,006*/ 5, 0x0C,
+ /* ABS: 004 Pixels @ 020,006*/ 0, 4, 0x14, 0x0C, 0x14, 0x14,
+ /* RLE: 008 Pixels @ 024,006*/ 8, 0x0C,
+ /* RLE: 044 Pixels @ 032,006*/ 44, 0x01,
+ /* ABS: 002 Pixels @ 076,006*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 078,006*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 086,006*/ 0, 2, 0x04, 0x04,
+ /* RLE: 092 Pixels @ 088,006*/ 92, 0x00,
+ /* ABS: 004 Pixels @ 180,006*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 204 Pixels @ 184,006*/ 204, 0x01,
+ /* RLE: 004 Pixels @ 000,007*/ 4, 0x0C,
+ /* ABS: 006 Pixels @ 004,007*/ 0, 6, 0x14, 0x14, 0x0C, 0x0C, 0x14, 0x14,
+ /* RLE: 012 Pixels @ 010,007*/ 12, 0x0C,
+ /* RLE: 001 Pixels @ 022,007*/ 1, 0x14,
+ /* RLE: 008 Pixels @ 023,007*/ 8, 0x0C,
+ /* RLE: 046 Pixels @ 031,007*/ 46, 0x01,
+ /* ABS: 002 Pixels @ 077,007*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 079,007*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 087,007*/ 0, 2, 0x04, 0x04,
+ /* RLE: 092 Pixels @ 089,007*/ 92, 0x00,
+ /* ABS: 004 Pixels @ 181,007*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 203 Pixels @ 185,007*/ 203, 0x01,
+ /* RLE: 003 Pixels @ 000,008*/ 3, 0x0C,
+ /* RLE: 001 Pixels @ 003,008*/ 1, 0x14,
+ /* RLE: 005 Pixels @ 004,008*/ 5, 0x0C,
+ /* ABS: 002 Pixels @ 009,008*/ 0, 2, 0x14, 0x14,
+ /* RLE: 011 Pixels @ 011,008*/ 11, 0x0C,
+ /* RLE: 001 Pixels @ 022,008*/ 1, 0x14,
+ /* RLE: 007 Pixels @ 023,008*/ 7, 0x0C,
+ /* RLE: 048 Pixels @ 030,008*/ 48, 0x01,
+ /* ABS: 002 Pixels @ 078,008*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 080,008*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 088,008*/ 0, 2, 0x04, 0x04,
+ /* RLE: 092 Pixels @ 090,008*/ 92, 0x00,
+ /* ABS: 005 Pixels @ 182,008*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x0D,
+ /* RLE: 201 Pixels @ 187,008*/ 201, 0x01,
+ /* RLE: 004 Pixels @ 000,009*/ 4, 0x0C,
+ /* RLE: 001 Pixels @ 004,009*/ 1, 0x14,
+ /* RLE: 004 Pixels @ 005,009*/ 4, 0x0C,
+ /* ABS: 002 Pixels @ 009,009*/ 0, 2, 0x14, 0x14,
+ /* RLE: 011 Pixels @ 011,009*/ 11, 0x0C,
+ /* RLE: 001 Pixels @ 022,009*/ 1, 0x14,
+ /* RLE: 006 Pixels @ 023,009*/ 6, 0x0C,
+ /* RLE: 050 Pixels @ 029,009*/ 50, 0x01,
+ /* ABS: 002 Pixels @ 079,009*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 081,009*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 089,009*/ 0, 2, 0x04, 0x04,
+ /* RLE: 092 Pixels @ 091,009*/ 92, 0x00,
+ /* ABS: 005 Pixels @ 183,009*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 200 Pixels @ 188,009*/ 200, 0x01,
+ /* RLE: 003 Pixels @ 000,010*/ 3, 0x0C,
+ /* RLE: 001 Pixels @ 003,010*/ 1, 0x14,
+ /* RLE: 006 Pixels @ 004,010*/ 6, 0x0C,
+ /* ABS: 002 Pixels @ 010,010*/ 0, 2, 0x14, 0x14,
+ /* RLE: 016 Pixels @ 012,010*/ 16, 0x0C,
+ /* RLE: 052 Pixels @ 028,010*/ 52, 0x01,
+ /* ABS: 002 Pixels @ 080,010*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 082,010*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 090,010*/ 0, 2, 0x04, 0x04,
+ /* RLE: 092 Pixels @ 092,010*/ 92, 0x00,
+ /* ABS: 005 Pixels @ 184,010*/ 0, 5, 0x0D, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 199 Pixels @ 189,010*/ 199, 0x01,
+ /* RLE: 003 Pixels @ 000,011*/ 3, 0x0C,
+ /* RLE: 001 Pixels @ 003,011*/ 1, 0x14,
+ /* RLE: 005 Pixels @ 004,011*/ 5, 0x0C,
+ /* ABS: 002 Pixels @ 009,011*/ 0, 2, 0x14, 0x14,
+ /* RLE: 015 Pixels @ 011,011*/ 15, 0x0C,
+ /* RLE: 001 Pixels @ 026,011*/ 1, 0x14,
+ /* RLE: 054 Pixels @ 027,011*/ 54, 0x01,
+ /* ABS: 002 Pixels @ 081,011*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 083,011*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 091,011*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 093,011*/ 93, 0x00,
+ /* ABS: 004 Pixels @ 186,011*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 198 Pixels @ 190,011*/ 198, 0x01,
+ /* RLE: 004 Pixels @ 000,012*/ 4, 0x0C,
+ /* ABS: 006 Pixels @ 004,012*/ 0, 6, 0x14, 0x0C, 0x0C, 0x0C, 0x14, 0x14,
+ /* RLE: 016 Pixels @ 010,012*/ 16, 0x0C,
+ /* RLE: 056 Pixels @ 026,012*/ 56, 0x01,
+ /* ABS: 002 Pixels @ 082,012*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 084,012*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 092,012*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 094,012*/ 93, 0x00,
+ /* ABS: 004 Pixels @ 187,012*/ 0, 4, 0x0D, 0x06, 0x06, 0x0D,
+ /* RLE: 197 Pixels @ 191,012*/ 197, 0x01,
+ /* RLE: 005 Pixels @ 000,013*/ 5, 0x0C,
+ /* ABS: 004 Pixels @ 005,013*/ 0, 4, 0x14, 0x0C, 0x0C, 0x14,
+ /* RLE: 008 Pixels @ 009,013*/ 8, 0x0C,
+ /* RLE: 001 Pixels @ 017,013*/ 1, 0x14,
+ /* RLE: 006 Pixels @ 018,013*/ 6, 0x0C,
+ /* RLE: 059 Pixels @ 024,013*/ 59, 0x01,
+ /* ABS: 002 Pixels @ 083,013*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 085,013*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 093,013*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 095,013*/ 93, 0x00,
+ /* ABS: 004 Pixels @ 188,013*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 196 Pixels @ 192,013*/ 196, 0x01,
+ /* RLE: 008 Pixels @ 000,014*/ 8, 0x0C,
+ /* RLE: 001 Pixels @ 008,014*/ 1, 0x14,
+ /* RLE: 014 Pixels @ 009,014*/ 14, 0x0C,
+ /* RLE: 061 Pixels @ 023,014*/ 61, 0x01,
+ /* ABS: 002 Pixels @ 084,014*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 086,014*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 094,014*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 096,014*/ 93, 0x00,
+ /* ABS: 004 Pixels @ 189,014*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 195 Pixels @ 193,014*/ 195, 0x01,
+ /* RLE: 008 Pixels @ 000,015*/ 8, 0x0C,
+ /* ABS: 002 Pixels @ 008,015*/ 0, 2, 0x14, 0x14,
+ /* RLE: 012 Pixels @ 010,015*/ 12, 0x0C,
+ /* RLE: 063 Pixels @ 022,015*/ 63, 0x01,
+ /* ABS: 002 Pixels @ 085,015*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 087,015*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 095,015*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 097,015*/ 93, 0x00,
+ /* ABS: 005 Pixels @ 190,015*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 193 Pixels @ 195,015*/ 193, 0x01,
+ /* RLE: 013 Pixels @ 000,016*/ 13, 0x0C,
+ /* RLE: 001 Pixels @ 013,016*/ 1, 0x14,
+ /* RLE: 007 Pixels @ 014,016*/ 7, 0x0C,
+ /* RLE: 065 Pixels @ 021,016*/ 65, 0x01,
+ /* ABS: 002 Pixels @ 086,016*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 088,016*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 096,016*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 098,016*/ 93, 0x00,
+ /* RLE: 001 Pixels @ 191,016*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 192,016*/ 4, 0x06,
+ /* RLE: 192 Pixels @ 196,016*/ 192, 0x01,
+ /* RLE: 019 Pixels @ 000,017*/ 19, 0x0C,
+ /* ABS: 002 Pixels @ 019,017*/ 0, 2, 0x07, 0x07,
+ /* RLE: 066 Pixels @ 021,017*/ 66, 0x01,
+ /* ABS: 002 Pixels @ 087,017*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 089,017*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 097,017*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 099,017*/ 93, 0x00,
+ /* ABS: 005 Pixels @ 192,017*/ 0, 5, 0x0D, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 191 Pixels @ 197,017*/ 191, 0x01,
+ /* RLE: 007 Pixels @ 000,018*/ 7, 0x0C,
+ /* RLE: 001 Pixels @ 007,018*/ 1, 0x14,
+ /* RLE: 010 Pixels @ 008,018*/ 10, 0x0C,
+ /* ABS: 002 Pixels @ 018,018*/ 0, 2, 0x07, 0x02,
+ /* RLE: 068 Pixels @ 020,018*/ 68, 0x01,
+ /* ABS: 002 Pixels @ 088,018*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 090,018*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 099,018*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 101,018*/ 93, 0x00,
+ /* ABS: 004 Pixels @ 194,018*/ 0, 4, 0x0D, 0x06, 0x06, 0x0D,
+ /* RLE: 190 Pixels @ 198,018*/ 190, 0x01,
+ /* RLE: 003 Pixels @ 000,019*/ 3, 0x14,
+ /* RLE: 013 Pixels @ 003,019*/ 13, 0x0C,
+ /* RLE: 004 Pixels @ 016,019*/ 4, 0x02,
+ /* RLE: 069 Pixels @ 020,019*/ 69, 0x01,
+ /* ABS: 002 Pixels @ 089,019*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 091,019*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 100,019*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 102,019*/ 93, 0x00,
+ /* ABS: 004 Pixels @ 195,019*/ 0, 4, 0x0D, 0x03, 0x03, 0x06,
+ /* RLE: 189 Pixels @ 199,019*/ 189, 0x01,
+ /* ABS: 004 Pixels @ 000,020*/ 0, 4, 0x0C, 0x0C, 0x14, 0x14,
+ /* RLE: 008 Pixels @ 004,020*/ 8, 0x0C,
+ /* ABS: 003 Pixels @ 012,020*/ 0, 3, 0x14, 0x07, 0x07,
+ /* RLE: 006 Pixels @ 015,020*/ 6, 0x02,
+ /* RLE: 069 Pixels @ 021,020*/ 69, 0x01,
+ /* ABS: 002 Pixels @ 090,020*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 092,020*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 101,020*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 103,020*/ 93, 0x00,
+ /* ABS: 004 Pixels @ 196,020*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 188 Pixels @ 200,020*/ 188, 0x01,
+ /* RLE: 003 Pixels @ 000,021*/ 3, 0x0C,
+ /* ABS: 002 Pixels @ 003,021*/ 0, 2, 0x14, 0x14,
+ /* RLE: 007 Pixels @ 005,021*/ 7, 0x0C,
+ /* RLE: 001 Pixels @ 012,021*/ 1, 0x07,
+ /* RLE: 008 Pixels @ 013,021*/ 8, 0x02,
+ /* RLE: 001 Pixels @ 021,021*/ 1, 0x07,
+ /* RLE: 069 Pixels @ 022,021*/ 69, 0x01,
+ /* ABS: 002 Pixels @ 091,021*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 093,021*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 102,021*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 104,021*/ 93, 0x00,
+ /* RLE: 001 Pixels @ 197,021*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 198,021*/ 4, 0x06,
+ /* RLE: 186 Pixels @ 202,021*/ 186, 0x01,
+ /* RLE: 003 Pixels @ 000,022*/ 3, 0x0C,
+ /* ABS: 002 Pixels @ 003,022*/ 0, 2, 0x14, 0x14,
+ /* RLE: 005 Pixels @ 005,022*/ 5, 0x0C,
+ /* RLE: 011 Pixels @ 010,022*/ 11, 0x02,
+ /* RLE: 001 Pixels @ 021,022*/ 1, 0x07,
+ /* RLE: 070 Pixels @ 022,022*/ 70, 0x01,
+ /* ABS: 002 Pixels @ 092,022*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 094,022*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 103,022*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 105,022*/ 93, 0x00,
+ /* RLE: 001 Pixels @ 198,022*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 199,022*/ 4, 0x06,
+ /* RLE: 185 Pixels @ 203,022*/ 185, 0x01,
+ /* RLE: 003 Pixels @ 000,023*/ 3, 0x0C,
+ /* ABS: 006 Pixels @ 003,023*/ 0, 6, 0x14, 0x14, 0x0C, 0x0C, 0x07, 0x07,
+ /* RLE: 012 Pixels @ 009,023*/ 12, 0x02,
+ /* RLE: 001 Pixels @ 021,023*/ 1, 0x07,
+ /* RLE: 071 Pixels @ 022,023*/ 71, 0x01,
+ /* RLE: 003 Pixels @ 093,023*/ 3, 0x04,
+ /* RLE: 008 Pixels @ 096,023*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 104,023*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 106,023*/ 93, 0x00,
+ /* ABS: 005 Pixels @ 199,023*/ 0, 5, 0x0D, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 184 Pixels @ 204,023*/ 184, 0x01,
+ /* ABS: 007 Pixels @ 000,024*/ 0, 7, 0x0C, 0x0C, 0x14, 0x14, 0x0C, 0x0C, 0x07,
+ /* RLE: 014 Pixels @ 007,024*/ 14, 0x02,
+ /* RLE: 074 Pixels @ 021,024*/ 74, 0x01,
+ /* ABS: 002 Pixels @ 095,024*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 097,024*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 105,024*/ 0, 2, 0x04, 0x04,
+ /* RLE: 094 Pixels @ 107,024*/ 94, 0x00,
+ /* ABS: 004 Pixels @ 201,024*/ 0, 4, 0x0D, 0x03, 0x06, 0x0D,
+ /* RLE: 183 Pixels @ 205,024*/ 183, 0x01,
+ /* ABS: 004 Pixels @ 000,025*/ 0, 4, 0x0C, 0x0C, 0x14, 0x0C,
+ /* RLE: 017 Pixels @ 004,025*/ 17, 0x02,
+ /* RLE: 075 Pixels @ 021,025*/ 75, 0x01,
+ /* ABS: 002 Pixels @ 096,025*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 098,025*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 106,025*/ 0, 2, 0x04, 0x04,
+ /* RLE: 094 Pixels @ 108,025*/ 94, 0x00,
+ /* ABS: 004 Pixels @ 202,025*/ 0, 4, 0x0D, 0x03, 0x03, 0x06,
+ /* RLE: 182 Pixels @ 206,025*/ 182, 0x01,
+ /* ABS: 003 Pixels @ 000,026*/ 0, 3, 0x0C, 0x07, 0x07,
+ /* RLE: 019 Pixels @ 003,026*/ 19, 0x02,
+ /* RLE: 075 Pixels @ 022,026*/ 75, 0x01,
+ /* ABS: 002 Pixels @ 097,026*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 099,026*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 107,026*/ 0, 2, 0x04, 0x04,
+ /* RLE: 094 Pixels @ 109,026*/ 94, 0x00,
+ /* ABS: 004 Pixels @ 203,026*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 181 Pixels @ 207,026*/ 181, 0x01,
+ /* RLE: 001 Pixels @ 000,027*/ 1, 0x07,
+ /* RLE: 021 Pixels @ 001,027*/ 21, 0x02,
+ /* RLE: 001 Pixels @ 022,027*/ 1, 0x07,
+ /* RLE: 075 Pixels @ 023,027*/ 75, 0x01,
+ /* ABS: 002 Pixels @ 098,027*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 100,027*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 108,027*/ 0, 2, 0x04, 0x04,
+ /* RLE: 094 Pixels @ 110,027*/ 94, 0x00,
+ /* ABS: 004 Pixels @ 204,027*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 180 Pixels @ 208,027*/ 180, 0x01,
+ /* RLE: 022 Pixels @ 000,028*/ 22, 0x02,
+ /* RLE: 001 Pixels @ 022,028*/ 1, 0x07,
+ /* RLE: 076 Pixels @ 023,028*/ 76, 0x01,
+ /* ABS: 002 Pixels @ 099,028*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 101,028*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 109,028*/ 0, 2, 0x04, 0x04,
+ /* RLE: 094 Pixels @ 111,028*/ 94, 0x00,
+ /* RLE: 001 Pixels @ 205,028*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 206,028*/ 4, 0x06,
+ /* RLE: 176 Pixels @ 210,028*/ 176, 0x01,
+ /* ABS: 002 Pixels @ 386,028*/ 0, 2, 0x15, 0x00,
+ /* RLE: 021 Pixels @ 000,029*/ 21, 0x02,
+ /* RLE: 005 Pixels @ 021,029*/ 5, 0x04,
+ /* RLE: 074 Pixels @ 026,029*/ 74, 0x01,
+ /* ABS: 002 Pixels @ 100,029*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 102,029*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 110,029*/ 0, 2, 0x04, 0x04,
+ /* RLE: 094 Pixels @ 112,029*/ 94, 0x00,
+ /* ABS: 005 Pixels @ 206,029*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 175 Pixels @ 211,029*/ 175, 0x01,
+ /* ABS: 002 Pixels @ 386,029*/ 0, 2, 0x03, 0x00,
+ /* RLE: 020 Pixels @ 000,030*/ 20, 0x02,
+ /* ABS: 007 Pixels @ 020,030*/ 0, 7, 0x04, 0x04, 0x03, 0x03, 0x03, 0x04, 0x04,
+ /* RLE: 074 Pixels @ 027,030*/ 74, 0x01,
+ /* ABS: 002 Pixels @ 101,030*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 103,030*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 111,030*/ 0, 2, 0x04, 0x04,
+ /* RLE: 094 Pixels @ 113,030*/ 94, 0x00,
+ /* ABS: 005 Pixels @ 207,030*/ 0, 5, 0x0D, 0x0D, 0x03, 0x06, 0x0D,
+ /* RLE: 174 Pixels @ 212,030*/ 174, 0x01,
+ /* ABS: 002 Pixels @ 386,030*/ 0, 2, 0x03, 0x0E,
+ /* RLE: 020 Pixels @ 000,031*/ 20, 0x02,
+ /* RLE: 001 Pixels @ 020,031*/ 1, 0x04,
+ /* RLE: 005 Pixels @ 021,031*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 026,031*/ 1, 0x04,
+ /* RLE: 075 Pixels @ 027,031*/ 75, 0x01,
+ /* ABS: 002 Pixels @ 102,031*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 104,031*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 112,031*/ 0, 2, 0x04, 0x04,
+ /* RLE: 095 Pixels @ 114,031*/ 95, 0x00,
+ /* ABS: 004 Pixels @ 209,031*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 172 Pixels @ 213,031*/ 172, 0x01,
+ /* ABS: 003 Pixels @ 385,031*/ 0, 3, 0x00, 0x03, 0x03,
+ /* RLE: 019 Pixels @ 000,032*/ 19, 0x02,
+ /* ABS: 002 Pixels @ 019,032*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 021,032*/ 6, 0x03,
+ /* RLE: 076 Pixels @ 027,032*/ 76, 0x01,
+ /* ABS: 002 Pixels @ 103,032*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 105,032*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 113,032*/ 0, 2, 0x04, 0x04,
+ /* RLE: 095 Pixels @ 115,032*/ 95, 0x00,
+ /* ABS: 004 Pixels @ 210,032*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 166 Pixels @ 214,032*/ 166, 0x01,
+ /* RLE: 003 Pixels @ 380,032*/ 3, 0x18,
+ /* ABS: 005 Pixels @ 383,032*/ 0, 5, 0x15, 0x03, 0x03, 0x06, 0x0E,
+ /* RLE: 020 Pixels @ 000,033*/ 20, 0x02,
+ /* RLE: 001 Pixels @ 020,033*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 021,033*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 027,033*/ 1, 0x04,
+ /* RLE: 076 Pixels @ 028,033*/ 76, 0x01,
+ /* ABS: 002 Pixels @ 104,033*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 106,033*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 114,033*/ 0, 2, 0x04, 0x04,
+ /* RLE: 095 Pixels @ 116,033*/ 95, 0x00,
+ /* ABS: 004 Pixels @ 211,033*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 165 Pixels @ 215,033*/ 165, 0x01,
+ /* ABS: 008 Pixels @ 380,033*/ 0, 8, 0x03, 0x04, 0x03, 0x03, 0x0A, 0x12, 0x0F, 0x0A,
+ /* RLE: 020 Pixels @ 000,034*/ 20, 0x02,
+ /* RLE: 001 Pixels @ 020,034*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 021,034*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 027,034*/ 1, 0x04,
+ /* RLE: 077 Pixels @ 028,034*/ 77, 0x01,
+ /* ABS: 002 Pixels @ 105,034*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 107,034*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 115,034*/ 0, 2, 0x04, 0x04,
+ /* RLE: 062 Pixels @ 117,034*/ 62, 0x00,
+ /* ABS: 002 Pixels @ 179,034*/ 0, 2, 0x03, 0x03,
+ /* RLE: 031 Pixels @ 181,034*/ 31, 0x00,
+ /* ABS: 005 Pixels @ 212,034*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x0D,
+ /* RLE: 163 Pixels @ 217,034*/ 163, 0x01,
+ /* ABS: 008 Pixels @ 380,034*/ 0, 8, 0x03, 0x0F, 0x04, 0x04, 0x00, 0x07, 0x0D, 0x03,
+ /* RLE: 020 Pixels @ 000,035*/ 20, 0x02,
+ /* RLE: 001 Pixels @ 020,035*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 021,035*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 027,035*/ 1, 0x04,
+ /* RLE: 078 Pixels @ 028,035*/ 78, 0x01,
+ /* ABS: 002 Pixels @ 106,035*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 108,035*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 116,035*/ 0, 2, 0x04, 0x04,
+ /* RLE: 060 Pixels @ 118,035*/ 60, 0x00,
+ /* ABS: 004 Pixels @ 178,035*/ 0, 4, 0x03, 0x0A, 0x0E, 0x03,
+ /* RLE: 031 Pixels @ 182,035*/ 31, 0x00,
+ /* ABS: 005 Pixels @ 213,035*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 162 Pixels @ 218,035*/ 162, 0x01,
+ /* ABS: 008 Pixels @ 380,035*/ 0, 8, 0x03, 0x11, 0x07, 0x0D, 0x03, 0x0E, 0x07, 0x00,
+ /* RLE: 020 Pixels @ 000,036*/ 20, 0x02,
+ /* RLE: 001 Pixels @ 020,036*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 021,036*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 027,036*/ 1, 0x04,
+ /* RLE: 079 Pixels @ 028,036*/ 79, 0x01,
+ /* ABS: 002 Pixels @ 107,036*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 109,036*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 117,036*/ 0, 2, 0x04, 0x04,
+ /* RLE: 054 Pixels @ 119,036*/ 54, 0x00,
+ /* ABS: 009 Pixels @ 173,036*/ 0, 9, 0x03, 0x00, 0x03, 0x00, 0x03, 0x0B, 0x0D, 0x0E, 0x03,
+ /* RLE: 004 Pixels @ 182,036*/ 4, 0x00,
+ /* RLE: 001 Pixels @ 186,036*/ 1, 0x0A,
+ /* RLE: 027 Pixels @ 187,036*/ 27, 0x00,
+ /* ABS: 005 Pixels @ 214,036*/ 0, 5, 0x0D, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 122 Pixels @ 219,036*/ 122, 0x01,
+ /* RLE: 005 Pixels @ 341,036*/ 5, 0x04,
+ /* RLE: 034 Pixels @ 346,036*/ 34, 0x01,
+ /* ABS: 008 Pixels @ 380,036*/ 0, 8, 0x03, 0x11, 0x0F, 0x06, 0x03, 0x03, 0x0D, 0x0F,
+ /* RLE: 020 Pixels @ 000,037*/ 20, 0x02,
+ /* RLE: 001 Pixels @ 020,037*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 021,037*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 027,037*/ 1, 0x04,
+ /* RLE: 080 Pixels @ 028,037*/ 80, 0x01,
+ /* ABS: 002 Pixels @ 108,037*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 110,037*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 118,037*/ 0, 2, 0x04, 0x04,
+ /* RLE: 053 Pixels @ 120,037*/ 53, 0x00,
+ /* ABS: 014 Pixels @ 173,037*/ 0, 14, 0x03, 0x0E, 0x0E, 0x00, 0x03, 0x0F, 0x07, 0x03, 0x03, 0x00, 0x03, 0x00, 0x03, 0x03,
+ /* RLE: 029 Pixels @ 187,037*/ 29, 0x00,
+ /* ABS: 004 Pixels @ 216,037*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 120 Pixels @ 220,037*/ 120, 0x01,
+ /* ABS: 002 Pixels @ 340,037*/ 0, 2, 0x04, 0x04,
+ /* RLE: 005 Pixels @ 342,037*/ 5, 0x03,
+ /* ABS: 002 Pixels @ 347,037*/ 0, 2, 0x04, 0x04,
+ /* RLE: 028 Pixels @ 349,037*/ 28, 0x01,
+ /* RLE: 005 Pixels @ 377,037*/ 5, 0x03,
+ /* ABS: 006 Pixels @ 382,037*/ 0, 6, 0x0B, 0x07, 0x0B, 0x03, 0x00, 0x07,
+ /* RLE: 021 Pixels @ 000,038*/ 21, 0x02,
+ /* RLE: 007 Pixels @ 021,038*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 028,038*/ 1, 0x04,
+ /* RLE: 080 Pixels @ 029,038*/ 80, 0x01,
+ /* ABS: 002 Pixels @ 109,038*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 111,038*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 119,038*/ 0, 2, 0x04, 0x04,
+ /* RLE: 052 Pixels @ 121,038*/ 52, 0x00,
+ /* ABS: 014 Pixels @ 173,038*/ 0, 14, 0x03, 0x0B, 0x07, 0x07, 0x00, 0x04, 0x07, 0x04, 0x03, 0x00, 0x03, 0x11, 0x12, 0x03,
+ /* RLE: 030 Pixels @ 187,038*/ 30, 0x00,
+ /* ABS: 004 Pixels @ 217,038*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 119 Pixels @ 221,038*/ 119, 0x01,
+ /* RLE: 001 Pixels @ 340,038*/ 1, 0x04,
+ /* RLE: 009 Pixels @ 341,038*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 350,038*/ 0, 2, 0x04, 0x04,
+ /* RLE: 024 Pixels @ 352,038*/ 24, 0x01,
+ /* ABS: 012 Pixels @ 376,038*/ 0, 12, 0x03, 0x03, 0x06, 0x07, 0x12, 0x03, 0x03, 0x12, 0x07, 0x0E, 0x0B, 0x0A,
+ /* RLE: 021 Pixels @ 000,039*/ 21, 0x02,
+ /* RLE: 001 Pixels @ 021,039*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 022,039*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 028,039*/ 1, 0x04,
+ /* RLE: 081 Pixels @ 029,039*/ 81, 0x01,
+ /* ABS: 002 Pixels @ 110,039*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 112,039*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 120,039*/ 0, 2, 0x04, 0x04,
+ /* RLE: 050 Pixels @ 122,039*/ 50, 0x00,
+ /* ABS: 015 Pixels @ 172,039*/ 0, 15, 0x04, 0x03, 0x0E, 0x07, 0x11, 0x03, 0x03, 0x06, 0x0F, 0x03, 0x03, 0x03, 0x0A, 0x00, 0x03,
+ /* RLE: 031 Pixels @ 187,039*/ 31, 0x00,
+ /* ABS: 004 Pixels @ 218,039*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 118 Pixels @ 222,039*/ 118, 0x01,
+ /* RLE: 001 Pixels @ 340,039*/ 1, 0x04,
+ /* RLE: 012 Pixels @ 341,039*/ 12, 0x03,
+ /* ABS: 002 Pixels @ 353,039*/ 0, 2, 0x04, 0x04,
+ /* RLE: 020 Pixels @ 355,039*/ 20, 0x01,
+ /* ABS: 013 Pixels @ 375,039*/ 0, 13, 0x15, 0x03, 0x11, 0x0E, 0x0A, 0x00, 0x00, 0x03, 0x03, 0x0D, 0x0F, 0x04, 0x03,
+ /* RLE: 021 Pixels @ 000,040*/ 21, 0x02,
+ /* RLE: 001 Pixels @ 021,040*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 022,040*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 028,040*/ 1, 0x04,
+ /* RLE: 082 Pixels @ 029,040*/ 82, 0x01,
+ /* ABS: 002 Pixels @ 111,040*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 113,040*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 121,040*/ 0, 2, 0x04, 0x04,
+ /* RLE: 048 Pixels @ 123,040*/ 48, 0x00,
+ /* RLE: 004 Pixels @ 171,040*/ 4, 0x03,
+ /* ABS: 011 Pixels @ 175,040*/ 0, 11, 0x0A, 0x07, 0x0B, 0x03, 0x00, 0x07, 0x0E, 0x03, 0x00, 0x03, 0x03,
+ /* RLE: 033 Pixels @ 186,040*/ 33, 0x00,
+ /* ABS: 005 Pixels @ 219,040*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x0D,
+ /* RLE: 116 Pixels @ 224,040*/ 116, 0x01,
+ /* RLE: 001 Pixels @ 340,040*/ 1, 0x04,
+ /* RLE: 015 Pixels @ 341,040*/ 15, 0x03,
+ /* ABS: 002 Pixels @ 356,040*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 358,040*/ 10, 0x01,
+ /* RLE: 003 Pixels @ 368,040*/ 3, 0x15,
+ /* RLE: 004 Pixels @ 371,040*/ 4, 0x01,
+ /* ABS: 008 Pixels @ 375,040*/ 0, 8, 0x00, 0x00, 0x07, 0x0B, 0x0D, 0x07, 0x07, 0x0E,
+ /* RLE: 004 Pixels @ 383,040*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 387,040*/ 1, 0x00,
+ /* RLE: 021 Pixels @ 000,041*/ 21, 0x02,
+ /* RLE: 001 Pixels @ 021,041*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 022,041*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 028,041*/ 1, 0x04,
+ /* RLE: 083 Pixels @ 029,041*/ 83, 0x01,
+ /* ABS: 002 Pixels @ 112,041*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 114,041*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 122,041*/ 0, 2, 0x04, 0x04,
+ /* RLE: 046 Pixels @ 124,041*/ 46, 0x00,
+ /* ABS: 015 Pixels @ 170,041*/ 0, 15, 0x03, 0x0A, 0x06, 0x12, 0x03, 0x03, 0x0E, 0x07, 0x04, 0x04, 0x04, 0x00, 0x03, 0x04, 0x04,
+ /* RLE: 035 Pixels @ 185,041*/ 35, 0x00,
+ /* ABS: 005 Pixels @ 220,041*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 115 Pixels @ 225,041*/ 115, 0x01,
+ /* ABS: 002 Pixels @ 340,041*/ 0, 2, 0x04, 0x04,
+ /* RLE: 017 Pixels @ 342,041*/ 17, 0x03,
+ /* ABS: 002 Pixels @ 359,041*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 361,041*/ 6, 0x01,
+ /* ABS: 005 Pixels @ 367,041*/ 0, 5, 0x15, 0x03, 0x00, 0x03, 0x18,
+ /* RLE: 005 Pixels @ 372,041*/ 5, 0x03,
+ /* ABS: 011 Pixels @ 377,041*/ 0, 11, 0x0D, 0x07, 0x0D, 0x04, 0x0E, 0x06, 0x03, 0x03, 0x04, 0x04, 0x04,
+ /* RLE: 021 Pixels @ 000,042*/ 21, 0x02,
+ /* RLE: 001 Pixels @ 021,042*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 022,042*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 028,042*/ 1, 0x04,
+ /* RLE: 084 Pixels @ 029,042*/ 84, 0x01,
+ /* ABS: 002 Pixels @ 113,042*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 115,042*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 123,042*/ 0, 2, 0x04, 0x04,
+ /* RLE: 044 Pixels @ 125,042*/ 44, 0x00,
+ /* ABS: 011 Pixels @ 169,042*/ 0, 11, 0x03, 0x0E, 0x11, 0x0B, 0x0A, 0x03, 0x03, 0x03, 0x11, 0x07, 0x04,
+ /* RLE: 004 Pixels @ 180,042*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 184,042*/ 1, 0x04,
+ /* RLE: 036 Pixels @ 185,042*/ 36, 0x00,
+ /* ABS: 005 Pixels @ 221,042*/ 0, 5, 0x06, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 115 Pixels @ 226,042*/ 115, 0x01,
+ /* ABS: 002 Pixels @ 341,042*/ 0, 2, 0x04, 0x04,
+ /* RLE: 019 Pixels @ 343,042*/ 19, 0x03,
+ /* ABS: 026 Pixels @ 362,042*/ 0, 26, 0x04, 0x04, 0x01, 0x01, 0x01, 0x15, 0x00, 0x0F, 0x04, 0x03, 0x03, 0x06, 0x07, 0x11, 0x00, 0x03, 0x03, 0x0A, 0x0A, 0x0F, 0x0B, 0x03, 0x04, 0x04, 0x01, 0x01,
+ /* RLE: 021 Pixels @ 000,043*/ 21, 0x02,
+ /* RLE: 001 Pixels @ 021,043*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 022,043*/ 7, 0x03,
+ /* RLE: 085 Pixels @ 029,043*/ 85, 0x01,
+ /* ABS: 002 Pixels @ 114,043*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 116,043*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 124,043*/ 0, 2, 0x04, 0x04,
+ /* RLE: 039 Pixels @ 126,043*/ 39, 0x00,
+ /* ABS: 014 Pixels @ 165,043*/ 0, 14, 0x03, 0x03, 0x00, 0x03, 0x03, 0x07, 0x0B, 0x0E, 0x11, 0x07, 0x0E, 0x03, 0x03, 0x00,
+ /* RLE: 006 Pixels @ 179,043*/ 6, 0x03,
+ /* RLE: 038 Pixels @ 185,043*/ 38, 0x00,
+ /* ABS: 004 Pixels @ 223,043*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 116 Pixels @ 227,043*/ 116, 0x01,
+ /* RLE: 003 Pixels @ 343,043*/ 3, 0x04,
+ /* RLE: 023 Pixels @ 346,043*/ 23, 0x03,
+ /* ABS: 019 Pixels @ 369,043*/ 0, 19, 0x0F, 0x12, 0x03, 0x06, 0x06, 0x00, 0x0D, 0x0F, 0x03, 0x0B, 0x07, 0x0F, 0x0B, 0x03, 0x00, 0x04, 0x01, 0x01, 0x01,
+ /* RLE: 022 Pixels @ 000,044*/ 22, 0x02,
+ /* RLE: 001 Pixels @ 022,044*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 023,044*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 029,044*/ 1, 0x04,
+ /* RLE: 085 Pixels @ 030,044*/ 85, 0x01,
+ /* ABS: 002 Pixels @ 115,044*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 117,044*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 125,044*/ 0, 2, 0x04, 0x04,
+ /* RLE: 037 Pixels @ 127,044*/ 37, 0x00,
+ /* ABS: 012 Pixels @ 164,044*/ 0, 12, 0x03, 0x00, 0x0F, 0x07, 0x0E, 0x03, 0x0E, 0x07, 0x0F, 0x0E, 0x06, 0x11,
+ /* RLE: 009 Pixels @ 176,044*/ 9, 0x03,
+ /* RLE: 001 Pixels @ 185,044*/ 1, 0x04,
+ /* RLE: 038 Pixels @ 186,044*/ 38, 0x00,
+ /* ABS: 004 Pixels @ 224,044*/ 0, 4, 0x0D, 0x06, 0x03, 0x0D,
+ /* RLE: 118 Pixels @ 228,044*/ 118, 0x01,
+ /* RLE: 003 Pixels @ 346,044*/ 3, 0x04,
+ /* RLE: 016 Pixels @ 349,044*/ 16, 0x03,
+ /* ABS: 013 Pixels @ 365,044*/ 0, 13, 0x00, 0x0D, 0x00, 0x03, 0x0B, 0x07, 0x00, 0x07, 0x04, 0x0B, 0x0F, 0x04, 0x00,
+ /* RLE: 004 Pixels @ 378,044*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 382,044*/ 1, 0x00,
+ /* RLE: 005 Pixels @ 383,044*/ 5, 0x01,
+ /* RLE: 022 Pixels @ 000,045*/ 22, 0x02,
+ /* RLE: 001 Pixels @ 022,045*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 023,045*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 029,045*/ 1, 0x04,
+ /* RLE: 086 Pixels @ 030,045*/ 86, 0x01,
+ /* ABS: 002 Pixels @ 116,045*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 118,045*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 126,045*/ 0, 2, 0x04, 0x04,
+ /* RLE: 034 Pixels @ 128,045*/ 34, 0x00,
+ /* ABS: 016 Pixels @ 162,045*/ 0, 16, 0x04, 0x03, 0x0E, 0x06, 0x0B, 0x0B, 0x07, 0x04, 0x03, 0x03, 0x00, 0x00, 0x0D, 0x0E, 0x03, 0x04,
+ /* RLE: 007 Pixels @ 178,045*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 185,045*/ 1, 0x04,
+ /* RLE: 039 Pixels @ 186,045*/ 39, 0x00,
+ /* ABS: 004 Pixels @ 225,045*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 120 Pixels @ 229,045*/ 120, 0x01,
+ /* RLE: 003 Pixels @ 349,045*/ 3, 0x04,
+ /* RLE: 013 Pixels @ 352,045*/ 13, 0x03,
+ /* ABS: 017 Pixels @ 365,045*/ 0, 17, 0x11, 0x07, 0x0F, 0x0A, 0x00, 0x07, 0x0B, 0x11, 0x07, 0x12, 0x03, 0x0E, 0x06, 0x03, 0x03, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 382,045*/ 6, 0x01,
+ /* RLE: 022 Pixels @ 000,046*/ 22, 0x02,
+ /* RLE: 001 Pixels @ 022,046*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 023,046*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 030,046*/ 1, 0x00,
+ /* RLE: 086 Pixels @ 031,046*/ 86, 0x01,
+ /* ABS: 002 Pixels @ 117,046*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 119,046*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 127,046*/ 0, 2, 0x04, 0x04,
+ /* RLE: 031 Pixels @ 129,046*/ 31, 0x00,
+ /* RLE: 004 Pixels @ 160,046*/ 4, 0x03,
+ /* ABS: 015 Pixels @ 164,046*/ 0, 15, 0x11, 0x07, 0x03, 0x03, 0x06, 0x0F, 0x03, 0x0B, 0x07, 0x07, 0x0E, 0x03, 0x03, 0x00, 0x04,
+ /* RLE: 007 Pixels @ 179,046*/ 7, 0x03,
+ /* RLE: 040 Pixels @ 186,046*/ 40, 0x00,
+ /* ABS: 004 Pixels @ 226,046*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 122 Pixels @ 230,046*/ 122, 0x01,
+ /* RLE: 003 Pixels @ 352,046*/ 3, 0x04,
+ /* RLE: 007 Pixels @ 355,046*/ 7, 0x03,
+ /* ABS: 019 Pixels @ 362,046*/ 0, 19, 0x00, 0x03, 0x03, 0x0B, 0x07, 0x06, 0x07, 0x04, 0x12, 0x11, 0x0A, 0x07, 0x12, 0x0B, 0x0F, 0x0B, 0x03, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 381,046*/ 7, 0x01,
+ /* RLE: 021 Pixels @ 000,047*/ 21, 0x02,
+ /* RLE: 001 Pixels @ 021,047*/ 1, 0x18,
+ /* RLE: 005 Pixels @ 022,047*/ 5, 0x03,
+ /* ABS: 005 Pixels @ 027,047*/ 0, 5, 0x00, 0x04, 0x0E, 0x03, 0x18,
+ /* RLE: 086 Pixels @ 032,047*/ 86, 0x01,
+ /* ABS: 002 Pixels @ 118,047*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 120,047*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 129,047*/ 0, 2, 0x04, 0x04,
+ /* RLE: 028 Pixels @ 131,047*/ 28, 0x00,
+ /* ABS: 012 Pixels @ 159,047*/ 0, 12, 0x03, 0x0A, 0x06, 0x0E, 0x00, 0x0A, 0x07, 0x0B, 0x03, 0x00, 0x0F, 0x0E,
+ /* RLE: 005 Pixels @ 171,047*/ 5, 0x03,
+ /* RLE: 003 Pixels @ 176,047*/ 3, 0x00,
+ /* RLE: 001 Pixels @ 179,047*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 180,047*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 186,047*/ 1, 0x04,
+ /* RLE: 040 Pixels @ 187,047*/ 40, 0x00,
+ /* RLE: 001 Pixels @ 227,047*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 228,047*/ 4, 0x06,
+ /* RLE: 123 Pixels @ 232,047*/ 123, 0x01,
+ /* RLE: 003 Pixels @ 355,047*/ 3, 0x04,
+ /* RLE: 003 Pixels @ 358,047*/ 3, 0x03,
+ /* ABS: 018 Pixels @ 361,047*/ 0, 18, 0x00, 0x07, 0x0D, 0x03, 0x00, 0x07, 0x04, 0x0E, 0x07, 0x11, 0x07, 0x0A, 0x0A, 0x0D, 0x0D, 0x04, 0x03, 0x00,
+ /* RLE: 009 Pixels @ 379,047*/ 9, 0x01,
+ /* RLE: 021 Pixels @ 000,048*/ 21, 0x02,
+ /* ABS: 005 Pixels @ 021,048*/ 0, 5, 0x03, 0x00, 0x0B, 0x12, 0x0D,
+ /* RLE: 004 Pixels @ 026,048*/ 4, 0x07,
+ /* ABS: 002 Pixels @ 030,048*/ 0, 2, 0x0A, 0x15,
+ /* RLE: 083 Pixels @ 032,048*/ 83, 0x01,
+ /* ABS: 005 Pixels @ 115,048*/ 0, 5, 0x15, 0x03, 0x00, 0x18, 0x00,
+ /* RLE: 010 Pixels @ 120,048*/ 10, 0x03,
+ /* ABS: 002 Pixels @ 130,048*/ 0, 2, 0x04, 0x04,
+ /* RLE: 026 Pixels @ 132,048*/ 26, 0x00,
+ /* ABS: 015 Pixels @ 158,048*/ 0, 15, 0x03, 0x04, 0x0F, 0x0B, 0x0D, 0x0F, 0x03, 0x12, 0x0F, 0x00, 0x03, 0x04, 0x00, 0x03, 0x04,
+ /* RLE: 005 Pixels @ 173,048*/ 5, 0x00,
+ /* ABS: 002 Pixels @ 178,048*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 180,048*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 186,048*/ 1, 0x04,
+ /* RLE: 041 Pixels @ 187,048*/ 41, 0x00,
+ /* RLE: 001 Pixels @ 228,048*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 229,048*/ 4, 0x06,
+ /* RLE: 125 Pixels @ 233,048*/ 125, 0x01,
+ /* ABS: 015 Pixels @ 358,048*/ 0, 15, 0x04, 0x04, 0x00, 0x03, 0x04, 0x07, 0x0D, 0x03, 0x06, 0x12, 0x03, 0x04, 0x07, 0x07, 0x0E,
+ /* RLE: 004 Pixels @ 373,048*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 377,048*/ 1, 0x00,
+ /* RLE: 010 Pixels @ 378,048*/ 10, 0x01,
+ /* RLE: 021 Pixels @ 000,049*/ 21, 0x02,
+ /* ABS: 011 Pixels @ 021,049*/ 0, 11, 0x03, 0x06, 0x07, 0x07, 0x06, 0x0E, 0x04, 0x0A, 0x03, 0x03, 0x15,
+ /* RLE: 083 Pixels @ 032,049*/ 83, 0x01,
+ /* ABS: 007 Pixels @ 115,049*/ 0, 7, 0x03, 0x0A, 0x04, 0x03, 0x03, 0x0B, 0x0A,
+ /* RLE: 009 Pixels @ 122,049*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 131,049*/ 0, 2, 0x04, 0x04,
+ /* RLE: 023 Pixels @ 133,049*/ 23, 0x00,
+ /* ABS: 014 Pixels @ 156,049*/ 0, 14, 0x04, 0x04, 0x03, 0x06, 0x0E, 0x00, 0x06, 0x12, 0x00, 0x00, 0x0F, 0x12, 0x03, 0x03,
+ /* RLE: 009 Pixels @ 170,049*/ 9, 0x00,
+ /* RLE: 001 Pixels @ 179,049*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 180,049*/ 7, 0x03,
+ /* RLE: 042 Pixels @ 187,049*/ 42, 0x00,
+ /* RLE: 001 Pixels @ 229,049*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 230,049*/ 4, 0x06,
+ /* RLE: 127 Pixels @ 234,049*/ 127, 0x01,
+ /* ABS: 015 Pixels @ 361,049*/ 0, 15, 0x00, 0x03, 0x04, 0x0F, 0x0D, 0x0E, 0x07, 0x00, 0x03, 0x0A, 0x0F, 0x0B, 0x03, 0x04, 0x04,
+ /* RLE: 012 Pixels @ 376,049*/ 12, 0x01,
+ /* RLE: 021 Pixels @ 000,050*/ 21, 0x02,
+ /* ABS: 010 Pixels @ 021,050*/ 0, 10, 0x03, 0x00, 0x00, 0x03, 0x03, 0x03, 0x00, 0x00, 0x03, 0x04,
+ /* RLE: 084 Pixels @ 031,050*/ 84, 0x01,
+ /* ABS: 007 Pixels @ 115,050*/ 0, 7, 0x03, 0x06, 0x0F, 0x00, 0x00, 0x07, 0x0A,
+ /* RLE: 010 Pixels @ 122,050*/ 10, 0x03,
+ /* ABS: 002 Pixels @ 132,050*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 134,050*/ 16, 0x00,
+ /* RLE: 001 Pixels @ 150,050*/ 1, 0x03,
+ /* RLE: 004 Pixels @ 151,050*/ 4, 0x00,
+ /* RLE: 004 Pixels @ 155,050*/ 4, 0x03,
+ /* ABS: 011 Pixels @ 159,050*/ 0, 11, 0x0E, 0x0F, 0x11, 0x0A, 0x04, 0x06, 0x03, 0x0A, 0x00, 0x03, 0x04,
+ /* RLE: 010 Pixels @ 170,050*/ 10, 0x00,
+ /* RLE: 001 Pixels @ 180,050*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 181,050*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 187,050*/ 1, 0x04,
+ /* RLE: 043 Pixels @ 188,050*/ 43, 0x00,
+ /* ABS: 004 Pixels @ 231,050*/ 0, 4, 0x0D, 0x03, 0x06, 0x0D,
+ /* RLE: 127 Pixels @ 235,050*/ 127, 0x01,
+ /* ABS: 007 Pixels @ 362,050*/ 0, 7, 0x18, 0x03, 0x00, 0x0F, 0x07, 0x07, 0x0B,
+ /* RLE: 004 Pixels @ 369,050*/ 4, 0x03,
+ /* ABS: 002 Pixels @ 373,050*/ 0, 2, 0x00, 0x04,
+ /* RLE: 013 Pixels @ 375,050*/ 13, 0x01,
+ /* RLE: 021 Pixels @ 000,051*/ 21, 0x02,
+ /* ABS: 010 Pixels @ 021,051*/ 0, 10, 0x18, 0x03, 0x04, 0x0E, 0x06, 0x0F, 0x07, 0x07, 0x03, 0x04,
+ /* RLE: 084 Pixels @ 031,051*/ 84, 0x01,
+ /* ABS: 007 Pixels @ 115,051*/ 0, 7, 0x03, 0x00, 0x0F, 0x0D, 0x00, 0x07, 0x00,
+ /* RLE: 011 Pixels @ 122,051*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 133,051*/ 0, 2, 0x04, 0x04,
+ /* RLE: 014 Pixels @ 135,051*/ 14, 0x00,
+ /* ABS: 017 Pixels @ 149,051*/ 0, 17, 0x03, 0x0B, 0x03, 0x00, 0x00, 0x03, 0x0A, 0x06, 0x12, 0x03, 0x00, 0x07, 0x12, 0x0A, 0x06, 0x0E, 0x03,
+ /* RLE: 014 Pixels @ 166,051*/ 14, 0x00,
+ /* RLE: 001 Pixels @ 180,051*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 181,051*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 187,051*/ 1, 0x04,
+ /* RLE: 044 Pixels @ 188,051*/ 44, 0x00,
+ /* ABS: 004 Pixels @ 232,051*/ 0, 4, 0x0D, 0x03, 0x03, 0x06,
+ /* RLE: 127 Pixels @ 236,051*/ 127, 0x01,
+ /* ABS: 010 Pixels @ 363,051*/ 0, 10, 0x15, 0x03, 0x00, 0x11, 0x07, 0x11, 0x03, 0x04, 0x04, 0x04,
+ /* RLE: 015 Pixels @ 373,051*/ 15, 0x01,
+ /* RLE: 022 Pixels @ 000,052*/ 22, 0x02,
+ /* ABS: 009 Pixels @ 022,052*/ 0, 9, 0x03, 0x06, 0x07, 0x06, 0x0E, 0x0E, 0x0D, 0x03, 0x00,
+ /* RLE: 084 Pixels @ 031,052*/ 84, 0x01,
+ /* ABS: 009 Pixels @ 115,052*/ 0, 9, 0x00, 0x03, 0x0A, 0x07, 0x0D, 0x07, 0x07, 0x0E, 0x00,
+ /* RLE: 010 Pixels @ 124,052*/ 10, 0x03,
+ /* ABS: 002 Pixels @ 134,052*/ 0, 2, 0x04, 0x04,
+ /* RLE: 013 Pixels @ 136,052*/ 13, 0x00,
+ /* ABS: 018 Pixels @ 149,052*/ 0, 18, 0x0A, 0x07, 0x0B, 0x03, 0x03, 0x0E, 0x11, 0x0B, 0x0A, 0x03, 0x03, 0x0A, 0x11, 0x0F, 0x0E, 0x03, 0x00, 0x04,
+ /* RLE: 012 Pixels @ 167,052*/ 12, 0x00,
+ /* ABS: 002 Pixels @ 179,052*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 007 Pixels @ 181,052*/ 7, 0x03,
+ /* RLE: 045 Pixels @ 188,052*/ 45, 0x00,
+ /* ABS: 004 Pixels @ 233,052*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 127 Pixels @ 237,052*/ 127, 0x01,
+ /* ABS: 006 Pixels @ 364,052*/ 0, 6, 0x15, 0x03, 0x03, 0x06, 0x0A, 0x03,
+ /* RLE: 018 Pixels @ 370,052*/ 18, 0x01,
+ /* RLE: 022 Pixels @ 000,053*/ 22, 0x02,
+ /* RLE: 006 Pixels @ 022,053*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 028,053*/ 0, 3, 0x06, 0x0B, 0x03,
+ /* RLE: 082 Pixels @ 031,053*/ 82, 0x01,
+ /* ABS: 014 Pixels @ 113,053*/ 0, 14, 0x15, 0x03, 0x03, 0x0A, 0x00, 0x0E, 0x07, 0x0D, 0x0B, 0x11, 0x07, 0x0E, 0x03, 0x04,
+ /* RLE: 008 Pixels @ 127,053*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 135,053*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 137,053*/ 8, 0x00,
+ /* RLE: 005 Pixels @ 145,053*/ 5, 0x03,
+ /* ABS: 010 Pixels @ 150,053*/ 0, 10, 0x0E, 0x07, 0x00, 0x03, 0x07, 0x0B, 0x0E, 0x11, 0x07, 0x0E,
+ /* RLE: 005 Pixels @ 160,053*/ 5, 0x03,
+ /* RLE: 016 Pixels @ 165,053*/ 16, 0x00,
+ /* RLE: 001 Pixels @ 181,053*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 182,053*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 188,053*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 189,053*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 234,053*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 235,053*/ 4, 0x06,
+ /* RLE: 127 Pixels @ 239,053*/ 127, 0x01,
+ /* ABS: 004 Pixels @ 366,053*/ 0, 4, 0x00, 0x03, 0x03, 0x15,
+ /* RLE: 018 Pixels @ 370,053*/ 18, 0x01,
+ /* RLE: 022 Pixels @ 000,054*/ 22, 0x02,
+ /* ABS: 009 Pixels @ 022,054*/ 0, 9, 0x00, 0x03, 0x03, 0x0A, 0x04, 0x0E, 0x0F, 0x0B, 0x03,
+ /* RLE: 081 Pixels @ 031,054*/ 81, 0x01,
+ /* ABS: 016 Pixels @ 112,054*/ 0, 16, 0x04, 0x03, 0x00, 0x0D, 0x07, 0x0F, 0x03, 0x0D, 0x0F, 0x03, 0x03, 0x0A, 0x03, 0x00, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 128,054*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 136,054*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 138,054*/ 6, 0x00,
+ /* ABS: 020 Pixels @ 144,054*/ 0, 20, 0x03, 0x03, 0x0D, 0x00, 0x03, 0x03, 0x03, 0x11, 0x06, 0x03, 0x0E, 0x07, 0x0F, 0x0E, 0x06, 0x11, 0x03, 0x04, 0x04, 0x04,
+ /* RLE: 017 Pixels @ 164,054*/ 17, 0x00,
+ /* RLE: 001 Pixels @ 181,054*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 182,054*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 188,054*/ 1, 0x04,
+ /* RLE: 046 Pixels @ 189,054*/ 46, 0x00,
+ /* RLE: 001 Pixels @ 235,054*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 236,054*/ 4, 0x06,
+ /* RLE: 148 Pixels @ 240,054*/ 148, 0x01,
+ /* RLE: 022 Pixels @ 000,055*/ 22, 0x02,
+ /* ABS: 002 Pixels @ 022,055*/ 0, 2, 0x00, 0x0A,
+ /* RLE: 005 Pixels @ 024,055*/ 5, 0x07,
+ /* ABS: 003 Pixels @ 029,055*/ 0, 3, 0x00, 0x03, 0x04,
+ /* RLE: 077 Pixels @ 032,055*/ 77, 0x01,
+ /* ABS: 014 Pixels @ 109,055*/ 0, 14, 0x15, 0x00, 0x00, 0x00, 0x03, 0x06, 0x12, 0x03, 0x00, 0x03, 0x00, 0x07, 0x0E, 0x03,
+ /* RLE: 004 Pixels @ 123,055*/ 4, 0x00,
+ /* ABS: 002 Pixels @ 127,055*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 129,055*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 137,055*/ 0, 2, 0x04, 0x04,
+ /* RLE: 004 Pixels @ 139,055*/ 4, 0x00,
+ /* ABS: 020 Pixels @ 143,055*/ 0, 20, 0x03, 0x0E, 0x00, 0x0B, 0x03, 0x0B, 0x00, 0x03, 0x0A, 0x07, 0x0B, 0x03, 0x03, 0x00, 0x00, 0x0D, 0x0E, 0x03, 0x04, 0x0A,
+ /* RLE: 018 Pixels @ 163,055*/ 18, 0x00,
+ /* RLE: 001 Pixels @ 181,055*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 182,055*/ 7, 0x03,
+ /* RLE: 047 Pixels @ 189,055*/ 47, 0x00,
+ /* ABS: 005 Pixels @ 236,055*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 147 Pixels @ 241,055*/ 147, 0x01,
+ /* RLE: 022 Pixels @ 000,056*/ 22, 0x02,
+ /* ABS: 010 Pixels @ 022,056*/ 0, 10, 0x18, 0x03, 0x0B, 0x04, 0x0A, 0x03, 0x0B, 0x0D, 0x03, 0x00,
+ /* RLE: 075 Pixels @ 032,056*/ 75, 0x01,
+ /* ABS: 017 Pixels @ 107,056*/ 0, 17, 0x15, 0x03, 0x03, 0x0A, 0x00, 0x03, 0x03, 0x07, 0x0B, 0x03, 0x03, 0x0B, 0x06, 0x0A, 0x03, 0x03, 0x04,
+ /* RLE: 004 Pixels @ 124,056*/ 4, 0x00,
+ /* ABS: 002 Pixels @ 128,056*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 130,056*/ 8, 0x03,
+ /* ABS: 022 Pixels @ 138,056*/ 0, 22, 0x04, 0x04, 0x00, 0x03, 0x03, 0x03, 0x0E, 0x00, 0x03, 0x03, 0x0F, 0x12, 0x03, 0x03, 0x12, 0x0F, 0x03, 0x0B, 0x07, 0x07, 0x0E, 0x03,
+ /* RLE: 021 Pixels @ 160,056*/ 21, 0x00,
+ /* ABS: 002 Pixels @ 181,056*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 183,056*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 189,056*/ 1, 0x04,
+ /* RLE: 048 Pixels @ 190,056*/ 48, 0x00,
+ /* ABS: 004 Pixels @ 238,056*/ 0, 4, 0x0D, 0x03, 0x06, 0x0D,
+ /* RLE: 146 Pixels @ 242,056*/ 146, 0x01,
+ /* RLE: 023 Pixels @ 000,057*/ 23, 0x02,
+ /* RLE: 005 Pixels @ 023,057*/ 5, 0x03,
+ /* ABS: 004 Pixels @ 028,057*/ 0, 4, 0x04, 0x07, 0x00, 0x00,
+ /* RLE: 071 Pixels @ 032,057*/ 71, 0x01,
+ /* ABS: 020 Pixels @ 103,057*/ 0, 20, 0x15, 0x00, 0x00, 0x15, 0x03, 0x00, 0x0D, 0x07, 0x07, 0x0F, 0x00, 0x0D, 0x0F, 0x03, 0x03, 0x0E, 0x11, 0x03, 0x00, 0x04,
+ /* RLE: 006 Pixels @ 123,057*/ 6, 0x00,
+ /* ABS: 002 Pixels @ 129,057*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 131,057*/ 10, 0x03,
+ /* ABS: 014 Pixels @ 141,057*/ 0, 14, 0x00, 0x0F, 0x00, 0x03, 0x0E, 0x00, 0x03, 0x0B, 0x07, 0x0A, 0x03, 0x00, 0x0F, 0x12,
+ /* RLE: 005 Pixels @ 155,057*/ 5, 0x03,
+ /* RLE: 022 Pixels @ 160,057*/ 22, 0x00,
+ /* RLE: 001 Pixels @ 182,057*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 183,057*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 189,057*/ 1, 0x04,
+ /* RLE: 049 Pixels @ 190,057*/ 49, 0x00,
+ /* ABS: 004 Pixels @ 239,057*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 145 Pixels @ 243,057*/ 145, 0x01,
+ /* RLE: 023 Pixels @ 000,058*/ 23, 0x02,
+ /* ABS: 009 Pixels @ 023,058*/ 0, 9, 0x03, 0x04, 0x0E, 0x0D, 0x07, 0x07, 0x0F, 0x03, 0x00,
+ /* RLE: 071 Pixels @ 032,058*/ 71, 0x01,
+ /* ABS: 018 Pixels @ 103,058*/ 0, 18, 0x03, 0x00, 0x0A, 0x03, 0x03, 0x12, 0x0D, 0x03, 0x00, 0x0F, 0x0D, 0x0A, 0x07, 0x11, 0x0E, 0x07, 0x04, 0x03,
+ /* RLE: 009 Pixels @ 121,058*/ 9, 0x00,
+ /* ABS: 002 Pixels @ 130,058*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 132,058*/ 9, 0x03,
+ /* ABS: 016 Pixels @ 141,058*/ 0, 16, 0x00, 0x0F, 0x06, 0x03, 0x0F, 0x06, 0x03, 0x03, 0x06, 0x0F, 0x03, 0x03, 0x0A, 0x00, 0x03, 0x04,
+ /* RLE: 024 Pixels @ 157,058*/ 24, 0x00,
+ /* ABS: 002 Pixels @ 181,058*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 183,058*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 189,058*/ 1, 0x04,
+ /* RLE: 050 Pixels @ 190,058*/ 50, 0x00,
+ /* ABS: 004 Pixels @ 240,058*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 144 Pixels @ 244,058*/ 144, 0x01,
+ /* RLE: 023 Pixels @ 000,059*/ 23, 0x02,
+ /* ABS: 009 Pixels @ 023,059*/ 0, 9, 0x03, 0x0B, 0x0F, 0x06, 0x0B, 0x04, 0x03, 0x03, 0x04,
+ /* RLE: 071 Pixels @ 032,059*/ 71, 0x01,
+ /* ABS: 017 Pixels @ 103,059*/ 0, 17, 0x03, 0x0F, 0x0F, 0x03, 0x03, 0x07, 0x0B, 0x03, 0x03, 0x0B, 0x07, 0x03, 0x0A, 0x12, 0x06, 0x0A, 0x03,
+ /* RLE: 011 Pixels @ 120,059*/ 11, 0x00,
+ /* ABS: 002 Pixels @ 131,059*/ 0, 2, 0x04, 0x04,
+ /* RLE: 005 Pixels @ 133,059*/ 5, 0x03,
+ /* ABS: 018 Pixels @ 138,059*/ 0, 18, 0x0B, 0x03, 0x03, 0x03, 0x04, 0x07, 0x04, 0x0A, 0x07, 0x0B, 0x03, 0x04, 0x07, 0x0E, 0x03, 0x03, 0x00, 0x0A,
+ /* RLE: 027 Pixels @ 156,059*/ 27, 0x00,
+ /* RLE: 007 Pixels @ 183,059*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 190,059*/ 1, 0x04,
+ /* RLE: 050 Pixels @ 191,059*/ 50, 0x00,
+ /* RLE: 001 Pixels @ 241,059*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 242,059*/ 4, 0x06,
+ /* RLE: 142 Pixels @ 246,059*/ 142, 0x01,
+ /* RLE: 023 Pixels @ 000,060*/ 23, 0x02,
+ /* RLE: 001 Pixels @ 023,060*/ 1, 0x00,
+ /* RLE: 008 Pixels @ 024,060*/ 8, 0x03,
+ /* RLE: 001 Pixels @ 032,060*/ 1, 0x04,
+ /* RLE: 066 Pixels @ 033,060*/ 66, 0x01,
+ /* ABS: 015 Pixels @ 099,060*/ 0, 15, 0x15, 0x03, 0x03, 0x00, 0x03, 0x0A, 0x07, 0x12, 0x03, 0x0D, 0x11, 0x03, 0x03, 0x0B, 0x0F,
+ /* RLE: 005 Pixels @ 114,060*/ 5, 0x03,
+ /* RLE: 013 Pixels @ 119,060*/ 13, 0x00,
+ /* ABS: 022 Pixels @ 132,060*/ 0, 22, 0x04, 0x04, 0x03, 0x03, 0x03, 0x00, 0x07, 0x0E, 0x03, 0x03, 0x0B, 0x07, 0x0F, 0x03, 0x06, 0x0F, 0x04, 0x0D, 0x0B, 0x00, 0x03, 0x04,
+ /* RLE: 029 Pixels @ 154,060*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 183,060*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 184,060*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 190,060*/ 1, 0x04,
+ /* RLE: 051 Pixels @ 191,060*/ 51, 0x00,
+ /* ABS: 005 Pixels @ 242,060*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x0D,
+ /* RLE: 141 Pixels @ 247,060*/ 141, 0x01,
+ /* RLE: 025 Pixels @ 000,061*/ 25, 0x02,
+ /* RLE: 001 Pixels @ 025,061*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 026,061*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 032,061*/ 1, 0x04,
+ /* RLE: 066 Pixels @ 033,061*/ 66, 0x01,
+ /* ABS: 018 Pixels @ 099,061*/ 0, 18, 0x03, 0x0A, 0x0B, 0x03, 0x03, 0x03, 0x0E, 0x07, 0x0B, 0x00, 0x07, 0x11, 0x06, 0x07, 0x0B, 0x03, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 117,061*/ 16, 0x00,
+ /* ABS: 019 Pixels @ 133,061*/ 0, 19, 0x04, 0x04, 0x03, 0x03, 0x03, 0x0E, 0x07, 0x0B, 0x06, 0x0F, 0x0E, 0x07, 0x12, 0x03, 0x11, 0x07, 0x0B, 0x03, 0x03,
+ /* RLE: 031 Pixels @ 152,061*/ 31, 0x00,
+ /* RLE: 001 Pixels @ 183,061*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 184,061*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 190,061*/ 1, 0x04,
+ /* RLE: 052 Pixels @ 191,061*/ 52, 0x00,
+ /* ABS: 005 Pixels @ 243,061*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 140 Pixels @ 248,061*/ 140, 0x01,
+ /* RLE: 025 Pixels @ 000,062*/ 25, 0x02,
+ /* RLE: 001 Pixels @ 025,062*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 026,062*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 033,062*/ 1, 0x00,
+ /* RLE: 065 Pixels @ 034,062*/ 65, 0x01,
+ /* ABS: 017 Pixels @ 099,062*/ 0, 17, 0x03, 0x12, 0x07, 0x0A, 0x03, 0x0A, 0x0F, 0x07, 0x07, 0x00, 0x0A, 0x12, 0x12, 0x0A, 0x03, 0x00, 0x04,
+ /* RLE: 018 Pixels @ 116,062*/ 18, 0x00,
+ /* ABS: 016 Pixels @ 134,062*/ 0, 16, 0x04, 0x04, 0x03, 0x03, 0x03, 0x11, 0x07, 0x06, 0x00, 0x03, 0x0B, 0x07, 0x00, 0x03, 0x03, 0x03,
+ /* RLE: 033 Pixels @ 150,062*/ 33, 0x00,
+ /* RLE: 001 Pixels @ 183,062*/ 1, 0x0A,
+ /* RLE: 007 Pixels @ 184,062*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 191,062*/ 1, 0x04,
+ /* RLE: 053 Pixels @ 192,062*/ 53, 0x00,
+ /* ABS: 004 Pixels @ 245,062*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 139 Pixels @ 249,062*/ 139, 0x01,
+ /* RLE: 024 Pixels @ 000,063*/ 24, 0x02,
+ /* ABS: 002 Pixels @ 024,063*/ 0, 2, 0x18, 0x00,
+ /* RLE: 004 Pixels @ 026,063*/ 4, 0x03,
+ /* ABS: 005 Pixels @ 030,063*/ 0, 5, 0x00, 0x0A, 0x0B, 0x03, 0x15,
+ /* RLE: 064 Pixels @ 035,063*/ 64, 0x01,
+ /* ABS: 010 Pixels @ 099,063*/ 0, 10, 0x00, 0x03, 0x0F, 0x0F, 0x0E, 0x07, 0x0E, 0x00, 0x0F, 0x0D,
+ /* RLE: 004 Pixels @ 109,063*/ 4, 0x03,
+ /* RLE: 022 Pixels @ 113,063*/ 22, 0x00,
+ /* RLE: 003 Pixels @ 135,063*/ 3, 0x04,
+ /* ABS: 011 Pixels @ 138,063*/ 0, 11, 0x03, 0x00, 0x07, 0x0B, 0x03, 0x03, 0x03, 0x11, 0x0B, 0x03, 0x04,
+ /* RLE: 035 Pixels @ 149,063*/ 35, 0x00,
+ /* RLE: 001 Pixels @ 184,063*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 185,063*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 191,063*/ 1, 0x04,
+ /* RLE: 054 Pixels @ 192,063*/ 54, 0x00,
+ /* ABS: 004 Pixels @ 246,063*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 138 Pixels @ 250,063*/ 138, 0x01,
+ /* RLE: 024 Pixels @ 000,064*/ 24, 0x02,
+ /* ABS: 005 Pixels @ 024,064*/ 0, 5, 0x03, 0x00, 0x0B, 0x0E, 0x06,
+ /* RLE: 004 Pixels @ 029,064*/ 4, 0x07,
+ /* ABS: 002 Pixels @ 033,064*/ 0, 2, 0x0A, 0x15,
+ /* RLE: 064 Pixels @ 035,064*/ 64, 0x01,
+ /* ABS: 014 Pixels @ 099,064*/ 0, 14, 0x04, 0x03, 0x0A, 0x07, 0x07, 0x04, 0x03, 0x03, 0x04, 0x07, 0x0E, 0x03, 0x04, 0x04,
+ /* RLE: 026 Pixels @ 113,064*/ 26, 0x00,
+ /* ABS: 004 Pixels @ 139,064*/ 0, 4, 0x03, 0x12, 0x07, 0x00,
+ /* RLE: 004 Pixels @ 143,064*/ 4, 0x03,
+ /* RLE: 036 Pixels @ 147,064*/ 36, 0x00,
+ /* ABS: 002 Pixels @ 183,064*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 185,064*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 191,064*/ 1, 0x04,
+ /* RLE: 055 Pixels @ 192,064*/ 55, 0x00,
+ /* ABS: 004 Pixels @ 247,064*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 137 Pixels @ 251,064*/ 137, 0x01,
+ /* RLE: 024 Pixels @ 000,065*/ 24, 0x02,
+ /* ABS: 011 Pixels @ 024,065*/ 0, 11, 0x03, 0x06, 0x07, 0x07, 0x0D, 0x07, 0x0E, 0x0A, 0x00, 0x03, 0x15,
+ /* RLE: 062 Pixels @ 035,065*/ 62, 0x01,
+ /* ABS: 015 Pixels @ 097,065*/ 0, 15, 0x04, 0x04, 0x03, 0x03, 0x03, 0x0E, 0x07, 0x0B, 0x03, 0x03, 0x03, 0x0B, 0x03, 0x00, 0x04,
+ /* RLE: 027 Pixels @ 112,065*/ 27, 0x00,
+ /* ABS: 006 Pixels @ 139,065*/ 0, 6, 0x03, 0x03, 0x0F, 0x06, 0x03, 0x0A,
+ /* RLE: 040 Pixels @ 145,065*/ 40, 0x00,
+ /* RLE: 007 Pixels @ 185,065*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 192,065*/ 1, 0x04,
+ /* RLE: 055 Pixels @ 193,065*/ 55, 0x00,
+ /* ABS: 004 Pixels @ 248,065*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 136 Pixels @ 252,065*/ 136, 0x01,
+ /* RLE: 024 Pixels @ 000,066*/ 24, 0x02,
+ /* ABS: 010 Pixels @ 024,066*/ 0, 10, 0x03, 0x0A, 0x00, 0x03, 0x03, 0x07, 0x04, 0x03, 0x03, 0x00,
+ /* RLE: 060 Pixels @ 034,066*/ 60, 0x01,
+ /* ABS: 004 Pixels @ 094,066*/ 0, 4, 0x15, 0x00, 0x03, 0x00,
+ /* RLE: 005 Pixels @ 098,066*/ 5, 0x03,
+ /* ABS: 005 Pixels @ 103,066*/ 0, 5, 0x0D, 0x07, 0x00, 0x03, 0x03,
+ /* RLE: 032 Pixels @ 108,066*/ 32, 0x00,
+ /* ABS: 004 Pixels @ 140,066*/ 0, 4, 0x03, 0x0A, 0x00, 0x03,
+ /* RLE: 041 Pixels @ 144,066*/ 41, 0x00,
+ /* RLE: 001 Pixels @ 185,066*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 186,066*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 192,066*/ 1, 0x04,
+ /* RLE: 056 Pixels @ 193,066*/ 56, 0x00,
+ /* ABS: 005 Pixels @ 249,066*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x0D,
+ /* RLE: 134 Pixels @ 254,066*/ 134, 0x01,
+ /* RLE: 024 Pixels @ 000,067*/ 24, 0x02,
+ /* ABS: 007 Pixels @ 024,067*/ 0, 7, 0x18, 0x03, 0x00, 0x03, 0x03, 0x0D, 0x0E,
+ /* RLE: 004 Pixels @ 031,067*/ 4, 0x03,
+ /* RLE: 058 Pixels @ 035,067*/ 58, 0x01,
+ /* ABS: 005 Pixels @ 093,067*/ 0, 5, 0x15, 0x03, 0x00, 0x04, 0x00,
+ /* RLE: 005 Pixels @ 098,067*/ 5, 0x03,
+ /* ABS: 006 Pixels @ 103,067*/ 0, 6, 0x00, 0x0F, 0x12, 0x03, 0x04, 0x04,
+ /* RLE: 032 Pixels @ 109,067*/ 32, 0x00,
+ /* ABS: 002 Pixels @ 141,067*/ 0, 2, 0x03, 0x03,
+ /* RLE: 006 Pixels @ 143,067*/ 6, 0x00,
+ /* RLE: 001 Pixels @ 149,067*/ 1, 0x07,
+ /* RLE: 035 Pixels @ 150,067*/ 35, 0x00,
+ /* RLE: 001 Pixels @ 185,067*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 186,067*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 192,067*/ 1, 0x04,
+ /* RLE: 057 Pixels @ 193,067*/ 57, 0x00,
+ /* ABS: 005 Pixels @ 250,067*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 133 Pixels @ 255,067*/ 133, 0x01,
+ /* RLE: 025 Pixels @ 000,068*/ 25, 0x02,
+ /* ABS: 010 Pixels @ 025,068*/ 0, 10, 0x00, 0x03, 0x03, 0x03, 0x12, 0x0D, 0x0B, 0x12, 0x0D, 0x03,
+ /* RLE: 057 Pixels @ 035,068*/ 57, 0x01,
+ /* ABS: 007 Pixels @ 092,068*/ 0, 7, 0x18, 0x03, 0x00, 0x0F, 0x07, 0x0F, 0x00,
+ /* RLE: 005 Pixels @ 099,068*/ 5, 0x03,
+ /* ABS: 003 Pixels @ 104,068*/ 0, 3, 0x0A, 0x03, 0x03,
+ /* RLE: 042 Pixels @ 107,068*/ 42, 0x00,
+ /* RLE: 001 Pixels @ 149,068*/ 1, 0x07,
+ /* RLE: 035 Pixels @ 150,068*/ 35, 0x00,
+ /* RLE: 001 Pixels @ 185,068*/ 1, 0x0A,
+ /* RLE: 007 Pixels @ 186,068*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 193,068*/ 1, 0x04,
+ /* RLE: 057 Pixels @ 194,068*/ 57, 0x00,
+ /* ABS: 005 Pixels @ 251,068*/ 0, 5, 0x06, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 132 Pixels @ 256,068*/ 132, 0x01,
+ /* RLE: 025 Pixels @ 000,069*/ 25, 0x02,
+ /* ABS: 004 Pixels @ 025,069*/ 0, 4, 0x03, 0x0E, 0x06, 0x0F,
+ /* RLE: 004 Pixels @ 029,069*/ 4, 0x07,
+ /* ABS: 002 Pixels @ 033,069*/ 0, 2, 0x06, 0x03,
+ /* RLE: 051 Pixels @ 035,069*/ 51, 0x01,
+ /* ABS: 013 Pixels @ 086,069*/ 0, 13, 0x15, 0x00, 0x03, 0x18, 0x01, 0x03, 0x03, 0x04, 0x0E, 0x0B, 0x00, 0x0F, 0x0D,
+ /* RLE: 005 Pixels @ 099,069*/ 5, 0x03,
+ /* RLE: 046 Pixels @ 104,069*/ 46, 0x00,
+ /* RLE: 001 Pixels @ 150,069*/ 1, 0x07,
+ /* RLE: 035 Pixels @ 151,069*/ 35, 0x00,
+ /* RLE: 001 Pixels @ 186,069*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 187,069*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 193,069*/ 1, 0x04,
+ /* RLE: 059 Pixels @ 194,069*/ 59, 0x00,
+ /* ABS: 004 Pixels @ 253,069*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 131 Pixels @ 257,069*/ 131, 0x01,
+ /* RLE: 025 Pixels @ 000,070*/ 25, 0x02,
+ /* ABS: 010 Pixels @ 025,070*/ 0, 10, 0x03, 0x0D, 0x11, 0x06, 0x0B, 0x0A, 0x00, 0x03, 0x03, 0x00,
+ /* RLE: 051 Pixels @ 035,070*/ 51, 0x01,
+ /* ABS: 020 Pixels @ 086,070*/ 0, 20, 0x03, 0x00, 0x0B, 0x03, 0x03, 0x03, 0x0D, 0x07, 0x07, 0x0B, 0x03, 0x0A, 0x07, 0x0E, 0x03, 0x03, 0x04, 0x04, 0x04, 0x0A,
+ /* RLE: 080 Pixels @ 106,070*/ 80, 0x00,
+ /* RLE: 001 Pixels @ 186,070*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 187,070*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 193,070*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 194,070*/ 60, 0x00,
+ /* ABS: 004 Pixels @ 254,070*/ 0, 4, 0x0D, 0x06, 0x03, 0x0D,
+ /* RLE: 130 Pixels @ 258,070*/ 130, 0x01,
+ /* RLE: 025 Pixels @ 000,071*/ 25, 0x02,
+ /* RLE: 004 Pixels @ 025,071*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 029,071*/ 1, 0x00,
+ /* RLE: 004 Pixels @ 030,071*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 034,071*/ 1, 0x04,
+ /* RLE: 051 Pixels @ 035,071*/ 51, 0x01,
+ /* ABS: 017 Pixels @ 086,071*/ 0, 17, 0x03, 0x06, 0x07, 0x00, 0x0A, 0x06, 0x12, 0x03, 0x0D, 0x0F, 0x00, 0x03, 0x0E, 0x07, 0x00, 0x00, 0x04,
+ /* RLE: 083 Pixels @ 103,071*/ 83, 0x00,
+ /* RLE: 001 Pixels @ 186,071*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 187,071*/ 7, 0x03,
+ /* RLE: 061 Pixels @ 194,071*/ 61, 0x00,
+ /* ABS: 004 Pixels @ 255,071*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 129 Pixels @ 259,071*/ 129, 0x01,
+ /* RLE: 025 Pixels @ 000,072*/ 25, 0x02,
+ /* ABS: 010 Pixels @ 025,072*/ 0, 10, 0x00, 0x03, 0x0B, 0x0F, 0x07, 0x0F, 0x04, 0x03, 0x03, 0x04,
+ /* RLE: 051 Pixels @ 035,072*/ 51, 0x01,
+ /* ABS: 015 Pixels @ 086,072*/ 0, 15, 0x03, 0x00, 0x0F, 0x11, 0x0B, 0x07, 0x0E, 0x03, 0x00, 0x0F, 0x06, 0x03, 0x03, 0x0A, 0x03,
+ /* RLE: 085 Pixels @ 101,072*/ 85, 0x00,
+ /* ABS: 002 Pixels @ 186,072*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 188,072*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 194,072*/ 1, 0x04,
+ /* RLE: 061 Pixels @ 195,072*/ 61, 0x00,
+ /* ABS: 005 Pixels @ 256,072*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 127 Pixels @ 261,072*/ 127, 0x01,
+ /* RLE: 025 Pixels @ 000,073*/ 25, 0x02,
+ /* ABS: 010 Pixels @ 025,073*/ 0, 10, 0x03, 0x0A, 0x07, 0x06, 0x0B, 0x12, 0x07, 0x00, 0x03, 0x04,
+ /* RLE: 051 Pixels @ 035,073*/ 51, 0x01,
+ /* ABS: 013 Pixels @ 086,073*/ 0, 13, 0x0A, 0x03, 0x0A, 0x07, 0x12, 0x12, 0x07, 0x00, 0x03, 0x04, 0x07, 0x04, 0x03,
+ /* RLE: 053 Pixels @ 099,073*/ 53, 0x00,
+ /* RLE: 001 Pixels @ 152,073*/ 1, 0x07,
+ /* RLE: 034 Pixels @ 153,073*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 187,073*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 188,073*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 194,073*/ 1, 0x04,
+ /* RLE: 062 Pixels @ 195,073*/ 62, 0x00,
+ /* RLE: 001 Pixels @ 257,073*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 258,073*/ 4, 0x06,
+ /* RLE: 126 Pixels @ 262,073*/ 126, 0x01,
+ /* RLE: 025 Pixels @ 000,074*/ 25, 0x02,
+ /* ABS: 010 Pixels @ 025,074*/ 0, 10, 0x03, 0x0B, 0x0D, 0x03, 0x03, 0x03, 0x0D, 0x0B, 0x03, 0x04,
+ /* RLE: 050 Pixels @ 035,074*/ 50, 0x01,
+ /* ABS: 013 Pixels @ 085,074*/ 0, 13, 0x04, 0x04, 0x03, 0x03, 0x0E, 0x07, 0x04, 0x0F, 0x11, 0x03, 0x03, 0x04, 0x03,
+ /* RLE: 008 Pixels @ 098,074*/ 8, 0x00,
+ /* RLE: 001 Pixels @ 106,074*/ 1, 0x0A,
+ /* RLE: 045 Pixels @ 107,074*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 152,074*/ 1, 0x07,
+ /* RLE: 034 Pixels @ 153,074*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 187,074*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 188,074*/ 7, 0x03,
+ /* RLE: 063 Pixels @ 195,074*/ 63, 0x00,
+ /* ABS: 005 Pixels @ 258,074*/ 0, 5, 0x06, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 125 Pixels @ 263,074*/ 125, 0x01,
+ /* RLE: 025 Pixels @ 000,075*/ 25, 0x02,
+ /* ABS: 010 Pixels @ 025,075*/ 0, 10, 0x03, 0x0B, 0x0D, 0x03, 0x03, 0x03, 0x0F, 0x0B, 0x03, 0x04,
+ /* RLE: 048 Pixels @ 035,075*/ 48, 0x01,
+ /* RLE: 003 Pixels @ 083,075*/ 3, 0x04,
+ /* RLE: 004 Pixels @ 086,075*/ 4, 0x03,
+ /* ABS: 006 Pixels @ 090,075*/ 0, 6, 0x0D, 0x0F, 0x00, 0x07, 0x0B, 0x03,
+ /* RLE: 013 Pixels @ 096,075*/ 13, 0x00,
+ /* RLE: 001 Pixels @ 109,075*/ 1, 0x0A,
+ /* RLE: 042 Pixels @ 110,075*/ 42, 0x00,
+ /* RLE: 001 Pixels @ 152,075*/ 1, 0x07,
+ /* RLE: 035 Pixels @ 153,075*/ 35, 0x00,
+ /* RLE: 001 Pixels @ 188,075*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 189,075*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 195,075*/ 1, 0x04,
+ /* RLE: 064 Pixels @ 196,075*/ 64, 0x00,
+ /* ABS: 004 Pixels @ 260,075*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 124 Pixels @ 264,075*/ 124, 0x01,
+ /* RLE: 025 Pixels @ 000,076*/ 25, 0x02,
+ /* ABS: 010 Pixels @ 025,076*/ 0, 10, 0x03, 0x00, 0x0F, 0x11, 0x06, 0x0F, 0x0F, 0x00, 0x03, 0x03,
+ /* RLE: 047 Pixels @ 035,076*/ 47, 0x01,
+ /* ABS: 002 Pixels @ 082,076*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 084,076*/ 6, 0x03,
+ /* ABS: 005 Pixels @ 090,076*/ 0, 5, 0x00, 0x07, 0x12, 0x0A, 0x03,
+ /* RLE: 013 Pixels @ 095,076*/ 13, 0x00,
+ /* RLE: 001 Pixels @ 108,076*/ 1, 0x0A,
+ /* RLE: 076 Pixels @ 109,076*/ 76, 0x00,
+ /* ABS: 004 Pixels @ 185,076*/ 0, 4, 0x0A, 0x00, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 189,076*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 195,076*/ 1, 0x04,
+ /* RLE: 065 Pixels @ 196,076*/ 65, 0x00,
+ /* ABS: 004 Pixels @ 261,076*/ 0, 4, 0x0D, 0x03, 0x03, 0x0D,
+ /* RLE: 123 Pixels @ 265,076*/ 123, 0x01,
+ /* RLE: 025 Pixels @ 000,077*/ 25, 0x02,
+ /* ABS: 011 Pixels @ 025,077*/ 0, 11, 0x0A, 0x03, 0x00, 0x12, 0x06, 0x12, 0x00, 0x03, 0x03, 0x03, 0x04,
+ /* RLE: 044 Pixels @ 036,077*/ 44, 0x01,
+ /* RLE: 003 Pixels @ 080,077*/ 3, 0x04,
+ /* RLE: 008 Pixels @ 083,077*/ 8, 0x03,
+ /* ABS: 003 Pixels @ 091,077*/ 0, 3, 0x0A, 0x03, 0x03,
+ /* RLE: 015 Pixels @ 094,077*/ 15, 0x00,
+ /* RLE: 001 Pixels @ 109,077*/ 1, 0x0A,
+ /* RLE: 078 Pixels @ 110,077*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 188,077*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 189,077*/ 7, 0x03,
+ /* RLE: 066 Pixels @ 196,077*/ 66, 0x00,
+ /* ABS: 004 Pixels @ 262,077*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 122 Pixels @ 266,077*/ 122, 0x01,
+ /* RLE: 026 Pixels @ 000,078*/ 26, 0x02,
+ /* ABS: 010 Pixels @ 026,078*/ 0, 10, 0x18, 0x03, 0x03, 0x0B, 0x0F, 0x07, 0x07, 0x0B, 0x03, 0x00,
+ /* RLE: 043 Pixels @ 036,078*/ 43, 0x01,
+ /* ABS: 002 Pixels @ 079,078*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 081,078*/ 10, 0x03,
+ /* ABS: 003 Pixels @ 091,078*/ 0, 3, 0x00, 0x00, 0x04,
+ /* RLE: 095 Pixels @ 094,078*/ 95, 0x00,
+ /* RLE: 001 Pixels @ 189,078*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 190,078*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 196,078*/ 1, 0x04,
+ /* RLE: 066 Pixels @ 197,078*/ 66, 0x00,
+ /* RLE: 001 Pixels @ 263,078*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 264,078*/ 4, 0x06,
+ /* RLE: 120 Pixels @ 268,078*/ 120, 0x01,
+ /* RLE: 027 Pixels @ 000,079*/ 27, 0x02,
+ /* ABS: 009 Pixels @ 027,079*/ 0, 9, 0x03, 0x04, 0x07, 0x06, 0x0B, 0x0E, 0x07, 0x00, 0x03,
+ /* RLE: 041 Pixels @ 036,079*/ 41, 0x01,
+ /* ABS: 002 Pixels @ 077,079*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 079,079*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 090,079*/ 0, 2, 0x04, 0x04,
+ /* RLE: 062 Pixels @ 092,079*/ 62, 0x00,
+ /* RLE: 001 Pixels @ 154,079*/ 1, 0x07,
+ /* RLE: 034 Pixels @ 155,079*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 189,079*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 190,079*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 196,079*/ 1, 0x04,
+ /* RLE: 067 Pixels @ 197,079*/ 67, 0x00,
+ /* RLE: 001 Pixels @ 264,079*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 265,079*/ 4, 0x06,
+ /* RLE: 119 Pixels @ 269,079*/ 119, 0x01,
+ /* RLE: 027 Pixels @ 000,080*/ 27, 0x02,
+ /* ABS: 009 Pixels @ 027,080*/ 0, 9, 0x03, 0x0B, 0x0D, 0x03, 0x03, 0x03, 0x06, 0x0B, 0x00,
+ /* RLE: 039 Pixels @ 036,080*/ 39, 0x01,
+ /* RLE: 003 Pixels @ 075,080*/ 3, 0x04,
+ /* RLE: 011 Pixels @ 078,080*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 089,080*/ 0, 2, 0x04, 0x04,
+ /* RLE: 017 Pixels @ 091,080*/ 17, 0x00,
+ /* RLE: 001 Pixels @ 108,080*/ 1, 0x0A,
+ /* RLE: 046 Pixels @ 109,080*/ 46, 0x00,
+ /* RLE: 001 Pixels @ 155,080*/ 1, 0x07,
+ /* RLE: 032 Pixels @ 156,080*/ 32, 0x00,
+ /* ABS: 002 Pixels @ 188,080*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 007 Pixels @ 190,080*/ 7, 0x03,
+ /* RLE: 068 Pixels @ 197,080*/ 68, 0x00,
+ /* ABS: 005 Pixels @ 265,080*/ 0, 5, 0x06, 0x0D, 0x06, 0x06, 0x0D,
+ /* RLE: 118 Pixels @ 270,080*/ 118, 0x01,
+ /* RLE: 027 Pixels @ 000,081*/ 27, 0x02,
+ /* ABS: 009 Pixels @ 027,081*/ 0, 9, 0x03, 0x0B, 0x11, 0x03, 0x03, 0x00, 0x0F, 0x04, 0x03,
+ /* RLE: 038 Pixels @ 036,081*/ 38, 0x01,
+ /* ABS: 002 Pixels @ 074,081*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 076,081*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 087,081*/ 0, 2, 0x04, 0x04,
+ /* RLE: 066 Pixels @ 089,081*/ 66, 0x00,
+ /* RLE: 001 Pixels @ 155,081*/ 1, 0x07,
+ /* RLE: 034 Pixels @ 156,081*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 190,081*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 191,081*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 197,081*/ 1, 0x04,
+ /* RLE: 069 Pixels @ 198,081*/ 69, 0x00,
+ /* ABS: 004 Pixels @ 267,081*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 117 Pixels @ 271,081*/ 117, 0x01,
+ /* RLE: 027 Pixels @ 000,082*/ 27, 0x02,
+ /* ABS: 011 Pixels @ 027,082*/ 0, 11, 0x03, 0x00, 0x0F, 0x07, 0x03, 0x00, 0x06, 0x03, 0x03, 0x03, 0x00,
+ /* RLE: 034 Pixels @ 038,082*/ 34, 0x01,
+ /* RLE: 003 Pixels @ 072,082*/ 3, 0x04,
+ /* RLE: 011 Pixels @ 075,082*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 086,082*/ 0, 2, 0x04, 0x04,
+ /* RLE: 102 Pixels @ 088,082*/ 102, 0x00,
+ /* RLE: 001 Pixels @ 190,082*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 191,082*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 197,082*/ 1, 0x04,
+ /* RLE: 070 Pixels @ 198,082*/ 70, 0x00,
+ /* ABS: 004 Pixels @ 268,082*/ 0, 4, 0x0D, 0x03, 0x03, 0x06,
+ /* RLE: 116 Pixels @ 272,082*/ 116, 0x01,
+ /* RLE: 027 Pixels @ 000,083*/ 27, 0x02,
+ /* ABS: 012 Pixels @ 027,083*/ 0, 12, 0x0A, 0x03, 0x00, 0x0B, 0x03, 0x03, 0x03, 0x00, 0x0B, 0x0E, 0x03, 0x15,
+ /* RLE: 032 Pixels @ 039,083*/ 32, 0x01,
+ /* ABS: 002 Pixels @ 071,083*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 073,083*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 084,083*/ 0, 2, 0x04, 0x04,
+ /* RLE: 023 Pixels @ 086,083*/ 23, 0x00,
+ /* RLE: 001 Pixels @ 109,083*/ 1, 0x0A,
+ /* RLE: 080 Pixels @ 110,083*/ 80, 0x00,
+ /* RLE: 001 Pixels @ 190,083*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 191,083*/ 7, 0x03,
+ /* RLE: 071 Pixels @ 198,083*/ 71, 0x00,
+ /* ABS: 004 Pixels @ 269,083*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 115 Pixels @ 273,083*/ 115, 0x01,
+ /* RLE: 028 Pixels @ 000,084*/ 28, 0x02,
+ /* ABS: 005 Pixels @ 028,084*/ 0, 5, 0x03, 0x0A, 0x0B, 0x12, 0x11,
+ /* RLE: 004 Pixels @ 033,084*/ 4, 0x07,
+ /* ABS: 002 Pixels @ 037,084*/ 0, 2, 0x00, 0x15,
+ /* RLE: 030 Pixels @ 039,084*/ 30, 0x01,
+ /* ABS: 002 Pixels @ 069,084*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 071,084*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 082,084*/ 3, 0x04,
+ /* RLE: 105 Pixels @ 085,084*/ 105, 0x00,
+ /* ABS: 002 Pixels @ 190,084*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 192,084*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 198,084*/ 1, 0x04,
+ /* RLE: 071 Pixels @ 199,084*/ 71, 0x00,
+ /* ABS: 004 Pixels @ 270,084*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 114 Pixels @ 274,084*/ 114, 0x01,
+ /* RLE: 028 Pixels @ 000,085*/ 28, 0x02,
+ /* ABS: 011 Pixels @ 028,085*/ 0, 11, 0x03, 0x06, 0x07, 0x07, 0x07, 0x12, 0x0A, 0x00, 0x03, 0x03, 0x15,
+ /* RLE: 028 Pixels @ 039,085*/ 28, 0x01,
+ /* RLE: 003 Pixels @ 067,085*/ 3, 0x04,
+ /* RLE: 011 Pixels @ 070,085*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 081,085*/ 0, 2, 0x04, 0x04,
+ /* RLE: 074 Pixels @ 083,085*/ 74, 0x00,
+ /* RLE: 001 Pixels @ 157,085*/ 1, 0x07,
+ /* RLE: 033 Pixels @ 158,085*/ 33, 0x00,
+ /* RLE: 001 Pixels @ 191,085*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 192,085*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 198,085*/ 1, 0x04,
+ /* RLE: 072 Pixels @ 199,085*/ 72, 0x00,
+ /* RLE: 001 Pixels @ 271,085*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 272,085*/ 4, 0x06,
+ /* RLE: 112 Pixels @ 276,085*/ 112, 0x01,
+ /* RLE: 028 Pixels @ 000,086*/ 28, 0x02,
+ /* ABS: 009 Pixels @ 028,086*/ 0, 9, 0x03, 0x00, 0x03, 0x00, 0x07, 0x07, 0x0E, 0x03, 0x00,
+ /* RLE: 030 Pixels @ 037,086*/ 30, 0x01,
+ /* RLE: 001 Pixels @ 067,086*/ 1, 0x04,
+ /* RLE: 011 Pixels @ 068,086*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 079,086*/ 0, 2, 0x04, 0x04,
+ /* RLE: 027 Pixels @ 081,086*/ 27, 0x00,
+ /* RLE: 001 Pixels @ 108,086*/ 1, 0x0A,
+ /* RLE: 048 Pixels @ 109,086*/ 48, 0x00,
+ /* RLE: 001 Pixels @ 157,086*/ 1, 0x07,
+ /* RLE: 032 Pixels @ 158,086*/ 32, 0x00,
+ /* ABS: 002 Pixels @ 190,086*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 192,086*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 198,086*/ 1, 0x04,
+ /* RLE: 073 Pixels @ 199,086*/ 73, 0x00,
+ /* ABS: 005 Pixels @ 272,086*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x0D,
+ /* RLE: 111 Pixels @ 277,086*/ 111, 0x01,
+ /* RLE: 028 Pixels @ 000,087*/ 28, 0x02,
+ /* ABS: 009 Pixels @ 028,087*/ 0, 9, 0x00, 0x03, 0x00, 0x0F, 0x11, 0x0B, 0x0F, 0x0B, 0x03,
+ /* RLE: 029 Pixels @ 037,087*/ 29, 0x01,
+ /* ABS: 002 Pixels @ 066,087*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 068,087*/ 10, 0x03,
+ /* ABS: 002 Pixels @ 078,087*/ 0, 2, 0x04, 0x04,
+ /* RLE: 078 Pixels @ 080,087*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 158,087*/ 1, 0x07,
+ /* RLE: 033 Pixels @ 159,087*/ 33, 0x00,
+ /* RLE: 007 Pixels @ 192,087*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 199,087*/ 1, 0x04,
+ /* RLE: 073 Pixels @ 200,087*/ 73, 0x00,
+ /* ABS: 005 Pixels @ 273,087*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 110 Pixels @ 278,087*/ 110, 0x01,
+ /* RLE: 028 Pixels @ 000,088*/ 28, 0x02,
+ /* ABS: 010 Pixels @ 028,088*/ 0, 10, 0x18, 0x00, 0x07, 0x0D, 0x03, 0x03, 0x03, 0x04, 0x03, 0x04,
+ /* RLE: 027 Pixels @ 038,088*/ 27, 0x01,
+ /* ABS: 002 Pixels @ 065,088*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 067,088*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 076,088*/ 0, 2, 0x04, 0x04,
+ /* RLE: 114 Pixels @ 078,088*/ 114, 0x00,
+ /* RLE: 001 Pixels @ 192,088*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 193,088*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 199,088*/ 1, 0x04,
+ /* RLE: 075 Pixels @ 200,088*/ 75, 0x00,
+ /* ABS: 004 Pixels @ 275,088*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 109 Pixels @ 279,088*/ 109, 0x01,
+ /* RLE: 028 Pixels @ 000,089*/ 28, 0x02,
+ /* ABS: 003 Pixels @ 028,089*/ 0, 3, 0x18, 0x03, 0x0E,
+ /* RLE: 006 Pixels @ 031,089*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 037,089*/ 1, 0x04,
+ /* RLE: 026 Pixels @ 038,089*/ 26, 0x01,
+ /* ABS: 002 Pixels @ 064,089*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 066,089*/ 8, 0x03,
+ /* RLE: 003 Pixels @ 074,089*/ 3, 0x04,
+ /* RLE: 033 Pixels @ 077,089*/ 33, 0x00,
+ /* RLE: 001 Pixels @ 110,089*/ 1, 0x0A,
+ /* RLE: 081 Pixels @ 111,089*/ 81, 0x00,
+ /* RLE: 001 Pixels @ 192,089*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 193,089*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 199,089*/ 1, 0x04,
+ /* RLE: 076 Pixels @ 200,089*/ 76, 0x00,
+ /* ABS: 004 Pixels @ 276,089*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 108 Pixels @ 280,089*/ 108, 0x01,
+ /* RLE: 029 Pixels @ 000,090*/ 29, 0x02,
+ /* ABS: 002 Pixels @ 029,090*/ 0, 2, 0x03, 0x00,
+ /* RLE: 006 Pixels @ 031,090*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 037,090*/ 1, 0x04,
+ /* RLE: 025 Pixels @ 038,090*/ 25, 0x01,
+ /* ABS: 002 Pixels @ 063,090*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 065,090*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 073,090*/ 0, 2, 0x04, 0x04,
+ /* RLE: 117 Pixels @ 075,090*/ 117, 0x00,
+ /* RLE: 001 Pixels @ 192,090*/ 1, 0x0A,
+ /* RLE: 007 Pixels @ 193,090*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 200,090*/ 1, 0x04,
+ /* RLE: 076 Pixels @ 201,090*/ 76, 0x00,
+ /* ABS: 004 Pixels @ 277,090*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 107 Pixels @ 281,090*/ 107, 0x01,
+ /* RLE: 030 Pixels @ 000,091*/ 30, 0x02,
+ /* RLE: 001 Pixels @ 030,091*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 031,091*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 037,091*/ 1, 0x04,
+ /* RLE: 024 Pixels @ 038,091*/ 24, 0x01,
+ /* ABS: 002 Pixels @ 062,091*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 064,091*/ 8, 0x03,
+ /* RLE: 001 Pixels @ 072,091*/ 1, 0x04,
+ /* RLE: 028 Pixels @ 073,091*/ 28, 0x00,
+ /* ABS: 006 Pixels @ 101,091*/ 0, 6, 0x03, 0x03, 0x00, 0x03, 0x03, 0x03,
+ /* RLE: 052 Pixels @ 107,091*/ 52, 0x00,
+ /* RLE: 001 Pixels @ 159,091*/ 1, 0x07,
+ /* RLE: 033 Pixels @ 160,091*/ 33, 0x00,
+ /* RLE: 001 Pixels @ 193,091*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 194,091*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 200,091*/ 1, 0x04,
+ /* RLE: 077 Pixels @ 201,091*/ 77, 0x00,
+ /* ABS: 005 Pixels @ 278,091*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 105 Pixels @ 283,091*/ 105, 0x01,
+ /* RLE: 030 Pixels @ 000,092*/ 30, 0x02,
+ /* RLE: 001 Pixels @ 030,092*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 031,092*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 037,092*/ 1, 0x04,
+ /* RLE: 023 Pixels @ 038,092*/ 23, 0x01,
+ /* ABS: 002 Pixels @ 061,092*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 063,092*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 071,092*/ 0, 2, 0x04, 0x04,
+ /* RLE: 027 Pixels @ 073,092*/ 27, 0x00,
+ /* ABS: 007 Pixels @ 100,092*/ 0, 7, 0x03, 0x04, 0x0A, 0x03, 0x03, 0x12, 0x0A,
+ /* RLE: 053 Pixels @ 107,092*/ 53, 0x00,
+ /* RLE: 001 Pixels @ 160,092*/ 1, 0x07,
+ /* RLE: 032 Pixels @ 161,092*/ 32, 0x00,
+ /* RLE: 001 Pixels @ 193,092*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 194,092*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 200,092*/ 1, 0x04,
+ /* RLE: 078 Pixels @ 201,092*/ 78, 0x00,
+ /* ABS: 005 Pixels @ 279,092*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x0D,
+ /* RLE: 104 Pixels @ 284,092*/ 104, 0x01,
+ /* RLE: 031 Pixels @ 000,093*/ 31, 0x02,
+ /* RLE: 007 Pixels @ 031,093*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 038,093*/ 1, 0x04,
+ /* RLE: 021 Pixels @ 039,093*/ 21, 0x01,
+ /* ABS: 002 Pixels @ 060,093*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 062,093*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 070,093*/ 0, 2, 0x04, 0x04,
+ /* RLE: 028 Pixels @ 072,093*/ 28, 0x00,
+ /* ABS: 008 Pixels @ 100,093*/ 0, 8, 0x03, 0x11, 0x0F, 0x03, 0x0A, 0x07, 0x03, 0x03,
+ /* RLE: 052 Pixels @ 108,093*/ 52, 0x00,
+ /* RLE: 001 Pixels @ 160,093*/ 1, 0x07,
+ /* RLE: 033 Pixels @ 161,093*/ 33, 0x00,
+ /* RLE: 007 Pixels @ 194,093*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 201,093*/ 1, 0x04,
+ /* RLE: 078 Pixels @ 202,093*/ 78, 0x00,
+ /* ABS: 005 Pixels @ 280,093*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 103 Pixels @ 285,093*/ 103, 0x01,
+ /* RLE: 031 Pixels @ 000,094*/ 31, 0x02,
+ /* RLE: 001 Pixels @ 031,094*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 032,094*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 038,094*/ 1, 0x04,
+ /* RLE: 020 Pixels @ 039,094*/ 20, 0x01,
+ /* ABS: 002 Pixels @ 059,094*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 061,094*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 069,094*/ 0, 2, 0x04, 0x04,
+ /* RLE: 029 Pixels @ 071,094*/ 29, 0x00,
+ /* ABS: 010 Pixels @ 100,094*/ 0, 10, 0x03, 0x00, 0x07, 0x06, 0x00, 0x07, 0x00, 0x03, 0x03, 0x03,
+ /* RLE: 083 Pixels @ 110,094*/ 83, 0x00,
+ /* ABS: 002 Pixels @ 193,094*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 195,094*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 201,094*/ 1, 0x04,
+ /* RLE: 080 Pixels @ 202,094*/ 80, 0x00,
+ /* ABS: 004 Pixels @ 282,094*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 102 Pixels @ 286,094*/ 102, 0x01,
+ /* RLE: 031 Pixels @ 000,095*/ 31, 0x02,
+ /* RLE: 001 Pixels @ 031,095*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 032,095*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 038,095*/ 1, 0x04,
+ /* RLE: 019 Pixels @ 039,095*/ 19, 0x01,
+ /* ABS: 002 Pixels @ 058,095*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 060,095*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 068,095*/ 0, 2, 0x04, 0x04,
+ /* RLE: 030 Pixels @ 070,095*/ 30, 0x00,
+ /* ABS: 011 Pixels @ 100,095*/ 0, 11, 0x03, 0x03, 0x0B, 0x07, 0x0F, 0x07, 0x07, 0x06, 0x0A, 0x03, 0x03,
+ /* RLE: 083 Pixels @ 111,095*/ 83, 0x00,
+ /* RLE: 001 Pixels @ 194,095*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 195,095*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 201,095*/ 1, 0x04,
+ /* RLE: 081 Pixels @ 202,095*/ 81, 0x00,
+ /* ABS: 004 Pixels @ 283,095*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 101 Pixels @ 287,095*/ 101, 0x01,
+ /* RLE: 031 Pixels @ 000,096*/ 31, 0x02,
+ /* RLE: 001 Pixels @ 031,096*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 032,096*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 038,096*/ 1, 0x04,
+ /* RLE: 018 Pixels @ 039,096*/ 18, 0x01,
+ /* ABS: 002 Pixels @ 057,096*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 059,096*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 067,096*/ 0, 2, 0x04, 0x04,
+ /* RLE: 029 Pixels @ 069,096*/ 29, 0x00,
+ /* ABS: 013 Pixels @ 098,096*/ 0, 13, 0x03, 0x03, 0x04, 0x00, 0x03, 0x12, 0x07, 0x06, 0x04, 0x11, 0x07, 0x0E, 0x03,
+ /* RLE: 084 Pixels @ 111,096*/ 84, 0x00,
+ /* RLE: 007 Pixels @ 195,096*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 202,096*/ 1, 0x04,
+ /* RLE: 081 Pixels @ 203,096*/ 81, 0x00,
+ /* ABS: 004 Pixels @ 284,096*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 100 Pixels @ 288,096*/ 100, 0x01,
+ /* RLE: 031 Pixels @ 000,097*/ 31, 0x02,
+ /* RLE: 001 Pixels @ 031,097*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 032,097*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 038,097*/ 1, 0x04,
+ /* RLE: 017 Pixels @ 039,097*/ 17, 0x01,
+ /* ABS: 002 Pixels @ 056,097*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 058,097*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 066,097*/ 0, 2, 0x04, 0x04,
+ /* RLE: 028 Pixels @ 068,097*/ 28, 0x00,
+ /* ABS: 015 Pixels @ 096,097*/ 0, 15, 0x04, 0x03, 0x00, 0x0F, 0x07, 0x0D, 0x03, 0x03, 0x11, 0x0F, 0x03, 0x03, 0x00, 0x03, 0x03,
+ /* RLE: 051 Pixels @ 111,097*/ 51, 0x00,
+ /* ABS: 004 Pixels @ 162,097*/ 0, 4, 0x07, 0x00, 0x00, 0x0A,
+ /* RLE: 029 Pixels @ 166,097*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 195,097*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 196,097*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 202,097*/ 1, 0x04,
+ /* RLE: 082 Pixels @ 203,097*/ 82, 0x00,
+ /* ABS: 005 Pixels @ 285,097*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 098 Pixels @ 290,097*/ 98, 0x01,
+ /* RLE: 031 Pixels @ 000,098*/ 31, 0x02,
+ /* RLE: 001 Pixels @ 031,098*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 032,098*/ 7, 0x03,
+ /* RLE: 016 Pixels @ 039,098*/ 16, 0x01,
+ /* ABS: 002 Pixels @ 055,098*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 057,098*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 065,098*/ 0, 2, 0x04, 0x04,
+ /* RLE: 028 Pixels @ 067,098*/ 28, 0x00,
+ /* ABS: 013 Pixels @ 095,098*/ 0, 13, 0x04, 0x04, 0x03, 0x0F, 0x0E, 0x03, 0x00, 0x03, 0x03, 0x00, 0x07, 0x0E, 0x03,
+ /* RLE: 054 Pixels @ 108,098*/ 54, 0x00,
+ /* ABS: 003 Pixels @ 162,098*/ 0, 3, 0x07, 0x00, 0x0A,
+ /* RLE: 029 Pixels @ 165,098*/ 29, 0x00,
+ /* ABS: 002 Pixels @ 194,098*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 196,098*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 202,098*/ 1, 0x04,
+ /* RLE: 083 Pixels @ 203,098*/ 83, 0x00,
+ /* ABS: 005 Pixels @ 286,098*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x0D,
+ /* RLE: 097 Pixels @ 291,098*/ 97, 0x01,
+ /* RLE: 032 Pixels @ 000,099*/ 32, 0x02,
+ /* RLE: 001 Pixels @ 032,099*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 033,099*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 039,099*/ 1, 0x04,
+ /* RLE: 014 Pixels @ 040,099*/ 14, 0x01,
+ /* ABS: 002 Pixels @ 054,099*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 056,099*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 064,099*/ 0, 2, 0x04, 0x04,
+ /* RLE: 029 Pixels @ 066,099*/ 29, 0x00,
+ /* RLE: 003 Pixels @ 095,099*/ 3, 0x03,
+ /* ABS: 010 Pixels @ 098,099*/ 0, 10, 0x07, 0x04, 0x03, 0x03, 0x0B, 0x06, 0x03, 0x0A, 0x03, 0x03,
+ /* RLE: 055 Pixels @ 108,099*/ 55, 0x00,
+ /* ABS: 004 Pixels @ 163,099*/ 0, 4, 0x07, 0x00, 0x00, 0x0A,
+ /* RLE: 028 Pixels @ 167,099*/ 28, 0x00,
+ /* RLE: 001 Pixels @ 195,099*/ 1, 0x0A,
+ /* RLE: 007 Pixels @ 196,099*/ 7, 0x03,
+ /* RLE: 084 Pixels @ 203,099*/ 84, 0x00,
+ /* RLE: 001 Pixels @ 287,099*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 288,099*/ 4, 0x06,
+ /* RLE: 096 Pixels @ 292,099*/ 96, 0x01,
+ /* RLE: 032 Pixels @ 000,100*/ 32, 0x02,
+ /* RLE: 001 Pixels @ 032,100*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 033,100*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 039,100*/ 1, 0x04,
+ /* RLE: 013 Pixels @ 040,100*/ 13, 0x01,
+ /* ABS: 002 Pixels @ 053,100*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 055,100*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 063,100*/ 0, 2, 0x04, 0x04,
+ /* RLE: 024 Pixels @ 065,100*/ 24, 0x00,
+ /* ABS: 016 Pixels @ 089,100*/ 0, 16, 0x03, 0x03, 0x00, 0x00, 0x03, 0x03, 0x04, 0x0B, 0x00, 0x11, 0x11, 0x03, 0x03, 0x0E, 0x0D, 0x03,
+ /* RLE: 058 Pixels @ 105,100*/ 58, 0x00,
+ /* ABS: 003 Pixels @ 163,100*/ 0, 3, 0x0A, 0x00, 0x0A,
+ /* RLE: 027 Pixels @ 166,100*/ 27, 0x00,
+ /* ABS: 004 Pixels @ 193,100*/ 0, 4, 0x0A, 0x00, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 197,100*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 203,100*/ 1, 0x04,
+ /* RLE: 085 Pixels @ 204,100*/ 85, 0x00,
+ /* RLE: 004 Pixels @ 289,100*/ 4, 0x06,
+ /* RLE: 095 Pixels @ 293,100*/ 95, 0x01,
+ /* RLE: 032 Pixels @ 000,101*/ 32, 0x02,
+ /* RLE: 001 Pixels @ 032,101*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 033,101*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 039,101*/ 1, 0x04,
+ /* RLE: 012 Pixels @ 040,101*/ 12, 0x01,
+ /* ABS: 002 Pixels @ 052,101*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 054,101*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 062,101*/ 0, 2, 0x04, 0x04,
+ /* RLE: 024 Pixels @ 064,101*/ 24, 0x00,
+ /* ABS: 017 Pixels @ 088,101*/ 0, 17, 0x03, 0x0B, 0x00, 0x03, 0x03, 0x00, 0x0F, 0x07, 0x07, 0x0F, 0x00, 0x07, 0x11, 0x06, 0x07, 0x0A, 0x03,
+ /* RLE: 061 Pixels @ 105,101*/ 61, 0x00,
+ /* RLE: 001 Pixels @ 166,101*/ 1, 0x0A,
+ /* RLE: 029 Pixels @ 167,101*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 196,101*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 197,101*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 203,101*/ 1, 0x04,
+ /* RLE: 086 Pixels @ 204,101*/ 86, 0x00,
+ /* ABS: 004 Pixels @ 290,101*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 094 Pixels @ 294,101*/ 94, 0x01,
+ /* RLE: 032 Pixels @ 000,102*/ 32, 0x02,
+ /* RLE: 001 Pixels @ 032,102*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 033,102*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 039,102*/ 1, 0x04,
+ /* RLE: 011 Pixels @ 040,102*/ 11, 0x01,
+ /* ABS: 002 Pixels @ 051,102*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 053,102*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 061,102*/ 0, 2, 0x04, 0x04,
+ /* RLE: 026 Pixels @ 063,102*/ 26, 0x00,
+ /* ABS: 015 Pixels @ 089,102*/ 0, 15, 0x0F, 0x11, 0x03, 0x03, 0x11, 0x12, 0x03, 0x00, 0x0F, 0x11, 0x0A, 0x12, 0x12, 0x0A, 0x03,
+ /* RLE: 058 Pixels @ 104,102*/ 58, 0x00,
+ /* RLE: 001 Pixels @ 162,102*/ 1, 0x0A,
+ /* RLE: 033 Pixels @ 163,102*/ 33, 0x00,
+ /* RLE: 001 Pixels @ 196,102*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 197,102*/ 7, 0x03,
+ /* RLE: 087 Pixels @ 204,102*/ 87, 0x00,
+ /* ABS: 004 Pixels @ 291,102*/ 0, 4, 0x06, 0x06, 0x03, 0x0D,
+ /* RLE: 093 Pixels @ 295,102*/ 93, 0x01,
+ /* RLE: 032 Pixels @ 000,103*/ 32, 0x02,
+ /* RLE: 001 Pixels @ 032,103*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 033,103*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 039,103*/ 1, 0x04,
+ /* RLE: 010 Pixels @ 040,103*/ 10, 0x01,
+ /* ABS: 002 Pixels @ 050,103*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 052,103*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 060,103*/ 0, 2, 0x04, 0x04,
+ /* RLE: 022 Pixels @ 062,103*/ 22, 0x00,
+ /* RLE: 005 Pixels @ 084,103*/ 5, 0x03,
+ /* ABS: 010 Pixels @ 089,103*/ 0, 10, 0x0A, 0x07, 0x12, 0x03, 0x07, 0x0B, 0x03, 0x03, 0x0B, 0x07,
+ /* RLE: 004 Pixels @ 099,103*/ 4, 0x03,
+ /* RLE: 061 Pixels @ 103,103*/ 61, 0x00,
+ /* ABS: 004 Pixels @ 164,103*/ 0, 4, 0x07, 0x00, 0x00, 0x0A,
+ /* RLE: 029 Pixels @ 168,103*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 197,103*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 198,103*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 204,103*/ 1, 0x04,
+ /* RLE: 087 Pixels @ 205,103*/ 87, 0x00,
+ /* ABS: 004 Pixels @ 292,103*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 092 Pixels @ 296,103*/ 92, 0x01,
+ /* RLE: 032 Pixels @ 000,104*/ 32, 0x02,
+ /* RLE: 001 Pixels @ 032,104*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 033,104*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 040,104*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 041,104*/ 7, 0x01,
+ /* ABS: 002 Pixels @ 048,104*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 050,104*/ 10, 0x03,
+ /* ABS: 002 Pixels @ 060,104*/ 0, 2, 0x04, 0x04,
+ /* RLE: 022 Pixels @ 062,104*/ 22, 0x00,
+ /* ABS: 017 Pixels @ 084,104*/ 0, 17, 0x03, 0x04, 0x0B, 0x03, 0x03, 0x03, 0x0E, 0x07, 0x0B, 0x11, 0x11, 0x03, 0x03, 0x0E, 0x0F, 0x03, 0x04,
+ /* RLE: 062 Pixels @ 101,104*/ 62, 0x00,
+ /* ABS: 004 Pixels @ 163,104*/ 0, 4, 0x0A, 0x00, 0x07, 0x0A,
+ /* RLE: 029 Pixels @ 167,104*/ 29, 0x00,
+ /* ABS: 002 Pixels @ 196,104*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 198,104*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 204,104*/ 1, 0x04,
+ /* RLE: 088 Pixels @ 205,104*/ 88, 0x00,
+ /* RLE: 005 Pixels @ 293,104*/ 5, 0x06,
+ /* RLE: 046 Pixels @ 298,104*/ 46, 0x01,
+ /* RLE: 010 Pixels @ 344,104*/ 10, 0x09,
+ /* RLE: 034 Pixels @ 354,104*/ 34, 0x01,
+ /* RLE: 033 Pixels @ 000,105*/ 33, 0x02,
+ /* RLE: 001 Pixels @ 033,105*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 034,105*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 040,105*/ 1, 0x04,
+ /* RLE: 005 Pixels @ 041,105*/ 5, 0x01,
+ /* RLE: 003 Pixels @ 046,105*/ 3, 0x04,
+ /* RLE: 013 Pixels @ 049,105*/ 13, 0x03,
+ /* ABS: 002 Pixels @ 062,105*/ 0, 2, 0x04, 0x04,
+ /* RLE: 020 Pixels @ 064,105*/ 20, 0x00,
+ /* ABS: 017 Pixels @ 084,105*/ 0, 17, 0x03, 0x0D, 0x07, 0x00, 0x03, 0x0B, 0x07, 0x0F, 0x07, 0x04, 0x07, 0x11, 0x06, 0x07, 0x04, 0x03, 0x0A,
+ /* RLE: 064 Pixels @ 101,105*/ 64, 0x00,
+ /* ABS: 003 Pixels @ 165,105*/ 0, 3, 0x07, 0x00, 0x0A,
+ /* RLE: 029 Pixels @ 168,105*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 197,105*/ 1, 0x0A,
+ /* RLE: 007 Pixels @ 198,105*/ 7, 0x03,
+ /* RLE: 089 Pixels @ 205,105*/ 89, 0x00,
+ /* RLE: 001 Pixels @ 294,105*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 295,105*/ 4, 0x06,
+ /* RLE: 029 Pixels @ 299,105*/ 29, 0x01,
+ /* RLE: 016 Pixels @ 328,105*/ 16, 0x09,
+ /* RLE: 010 Pixels @ 344,105*/ 10, 0x05,
+ /* RLE: 006 Pixels @ 354,105*/ 6, 0x09,
+ /* RLE: 028 Pixels @ 360,105*/ 28, 0x01,
+ /* RLE: 033 Pixels @ 000,106*/ 33, 0x02,
+ /* RLE: 001 Pixels @ 033,106*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 034,106*/ 7, 0x03,
+ /* ABS: 006 Pixels @ 041,106*/ 0, 6, 0x04, 0x01, 0x01, 0x04, 0x04, 0x04,
+ /* RLE: 018 Pixels @ 047,106*/ 18, 0x03,
+ /* ABS: 002 Pixels @ 065,106*/ 0, 2, 0x04, 0x04,
+ /* RLE: 017 Pixels @ 067,106*/ 17, 0x00,
+ /* ABS: 015 Pixels @ 084,106*/ 0, 15, 0x03, 0x00, 0x0F, 0x11, 0x06, 0x07, 0x0B, 0x00, 0x0F, 0x11, 0x0A, 0x12, 0x0E, 0x0A, 0x03,
+ /* RLE: 098 Pixels @ 099,106*/ 98, 0x00,
+ /* ABS: 002 Pixels @ 197,106*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 199,106*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 205,106*/ 1, 0x04,
+ /* RLE: 089 Pixels @ 206,106*/ 89, 0x00,
+ /* ABS: 005 Pixels @ 295,106*/ 0, 5, 0x06, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 011 Pixels @ 300,106*/ 11, 0x01,
+ /* ABS: 003 Pixels @ 311,106*/ 0, 3, 0x00, 0x00, 0x0A,
+ /* RLE: 014 Pixels @ 314,106*/ 14, 0x09,
+ /* ABS: 003 Pixels @ 328,106*/ 0, 3, 0x05, 0x05, 0x1A,
+ /* RLE: 005 Pixels @ 331,106*/ 5, 0x03,
+ /* ABS: 002 Pixels @ 336,106*/ 0, 2, 0x15, 0x15,
+ /* RLE: 004 Pixels @ 338,106*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 342,106*/ 1, 0x19,
+ /* RLE: 017 Pixels @ 343,106*/ 17, 0x05,
+ /* RLE: 006 Pixels @ 360,106*/ 6, 0x09,
+ /* RLE: 022 Pixels @ 366,106*/ 22, 0x01,
+ /* RLE: 033 Pixels @ 000,107*/ 33, 0x02,
+ /* ABS: 002 Pixels @ 033,107*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 035,107*/ 6, 0x03,
+ /* ABS: 004 Pixels @ 041,107*/ 0, 4, 0x04, 0x01, 0x04, 0x04,
+ /* RLE: 022 Pixels @ 045,107*/ 22, 0x03,
+ /* ABS: 002 Pixels @ 067,107*/ 0, 2, 0x04, 0x04,
+ /* RLE: 014 Pixels @ 069,107*/ 14, 0x00,
+ /* ABS: 015 Pixels @ 083,107*/ 0, 15, 0x04, 0x0A, 0x03, 0x04, 0x07, 0x07, 0x00, 0x03, 0x03, 0x0A, 0x07, 0x0E, 0x03, 0x03, 0x03,
+ /* RLE: 068 Pixels @ 098,107*/ 68, 0x00,
+ /* ABS: 004 Pixels @ 166,107*/ 0, 4, 0x0A, 0x00, 0x00, 0x0A,
+ /* RLE: 028 Pixels @ 170,107*/ 28, 0x00,
+ /* RLE: 001 Pixels @ 198,107*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 199,107*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 205,107*/ 1, 0x04,
+ /* RLE: 068 Pixels @ 206,107*/ 68, 0x00,
+ /* ABS: 003 Pixels @ 274,107*/ 0, 3, 0x03, 0x00, 0x00,
+ /* RLE: 004 Pixels @ 277,107*/ 4, 0x03,
+ /* RLE: 016 Pixels @ 281,107*/ 16, 0x00,
+ /* RLE: 001 Pixels @ 297,107*/ 1, 0x0D,
+ /* RLE: 012 Pixels @ 298,107*/ 12, 0x09,
+ /* ABS: 005 Pixels @ 310,107*/ 0, 5, 0x04, 0x03, 0x12, 0x03, 0x15,
+ /* RLE: 009 Pixels @ 315,107*/ 9, 0x03,
+ /* RLE: 001 Pixels @ 324,107*/ 1, 0x00,
+ /* RLE: 006 Pixels @ 325,107*/ 6, 0x03,
+ /* ABS: 013 Pixels @ 331,107*/ 0, 13, 0x00, 0x11, 0x07, 0x07, 0x0E, 0x03, 0x03, 0x06, 0x07, 0x0F, 0x04, 0x03, 0x1A,
+ /* RLE: 022 Pixels @ 344,107*/ 22, 0x05,
+ /* RLE: 006 Pixels @ 366,107*/ 6, 0x09,
+ /* RLE: 016 Pixels @ 372,107*/ 16, 0x01,
+ /* RLE: 034 Pixels @ 000,108*/ 34, 0x02,
+ /* RLE: 001 Pixels @ 034,108*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 035,108*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 041,108*/ 0, 2, 0x04, 0x04,
+ /* RLE: 027 Pixels @ 043,108*/ 27, 0x03,
+ /* ABS: 002 Pixels @ 070,108*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 072,108*/ 10, 0x00,
+ /* ABS: 013 Pixels @ 082,108*/ 0, 13, 0x04, 0x04, 0x03, 0x03, 0x03, 0x0E, 0x07, 0x0B, 0x03, 0x03, 0x03, 0x04, 0x03,
+ /* RLE: 073 Pixels @ 095,108*/ 73, 0x00,
+ /* RLE: 001 Pixels @ 168,108*/ 1, 0x0A,
+ /* RLE: 029 Pixels @ 169,108*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 198,108*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 199,108*/ 7, 0x03,
+ /* RLE: 061 Pixels @ 206,108*/ 61, 0x00,
+ /* RLE: 004 Pixels @ 267,108*/ 4, 0x03,
+ /* ABS: 015 Pixels @ 271,108*/ 0, 15, 0x00, 0x03, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x03, 0x0A, 0x03, 0x00, 0x03, 0x03, 0x00,
+ /* RLE: 012 Pixels @ 286,108*/ 12, 0x09,
+ /* RLE: 006 Pixels @ 298,108*/ 6, 0x05,
+ /* RLE: 001 Pixels @ 304,108*/ 1, 0x1A,
+ /* RLE: 006 Pixels @ 305,108*/ 6, 0x03,
+ /* ABS: 033 Pixels @ 311,108*/ 0, 33, 0x0B, 0x07, 0x03, 0x03, 0x0B, 0x0E, 0x0D, 0x0F, 0x00, 0x06, 0x07, 0x07, 0x12, 0x03, 0x00, 0x11, 0x07, 0x07, 0x0E, 0x03, 0x06, 0x06, 0x03, 0x04, 0x0B, 0x03, 0x0E, 0x0F, 0x00, 0x0B, 0x07, 0x00, 0x15,
+ /* RLE: 028 Pixels @ 344,108*/ 28, 0x05,
+ /* RLE: 006 Pixels @ 372,108*/ 6, 0x09,
+ /* RLE: 010 Pixels @ 378,108*/ 10, 0x01,
+ /* RLE: 034 Pixels @ 000,109*/ 34, 0x02,
+ /* RLE: 001 Pixels @ 034,109*/ 1, 0x04,
+ /* RLE: 018 Pixels @ 035,109*/ 18, 0x03,
+ /* RLE: 003 Pixels @ 053,109*/ 3, 0x04,
+ /* RLE: 016 Pixels @ 056,109*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 072,109*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 074,109*/ 6, 0x00,
+ /* RLE: 008 Pixels @ 080,109*/ 8, 0x03,
+ /* ABS: 007 Pixels @ 088,109*/ 0, 7, 0x0D, 0x07, 0x00, 0x03, 0x00, 0x00, 0x03,
+ /* RLE: 071 Pixels @ 095,109*/ 71, 0x00,
+ /* ABS: 005 Pixels @ 166,109*/ 0, 5, 0x0A, 0x07, 0x00, 0x00, 0x0A,
+ /* RLE: 028 Pixels @ 171,109*/ 28, 0x00,
+ /* RLE: 001 Pixels @ 199,109*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 200,109*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 206,109*/ 1, 0x04,
+ /* RLE: 061 Pixels @ 207,109*/ 61, 0x00,
+ /* ABS: 017 Pixels @ 268,109*/ 0, 17, 0x06, 0x07, 0x03, 0x09, 0x03, 0x07, 0x12, 0x03, 0x0A, 0x0B, 0x0D, 0x00, 0x07, 0x0A, 0x03, 0x06, 0x06,
+ /* RLE: 006 Pixels @ 285,109*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 291,109*/ 0, 2, 0x15, 0x15,
+ /* RLE: 004 Pixels @ 293,109*/ 4, 0x03,
+ /* ABS: 002 Pixels @ 297,109*/ 0, 2, 0x15, 0x00,
+ /* RLE: 006 Pixels @ 299,109*/ 6, 0x03,
+ /* ABS: 039 Pixels @ 305,109*/ 0, 39, 0x00, 0x11, 0x07, 0x07, 0x0E, 0x00, 0x11, 0x07, 0x0F, 0x03, 0x0B, 0x07, 0x0E, 0x0A, 0x0B, 0x06, 0x00, 0x0B, 0x07, 0x00, 0x06, 0x06, 0x03, 0x04, 0x04, 0x03, 0x0E, 0x07, 0x0F, 0x06, 0x04, 0x03, 0x06, 0x11, 0x0B, 0x0B, 0x07, 0x0B, 0x00,
+ /* RLE: 034 Pixels @ 344,109*/ 34, 0x05,
+ /* RLE: 006 Pixels @ 378,109*/ 6, 0x09,
+ /* RLE: 004 Pixels @ 384,109*/ 4, 0x01,
+ /* RLE: 035 Pixels @ 000,110*/ 35, 0x02,
+ /* RLE: 001 Pixels @ 035,110*/ 1, 0x04,
+ /* RLE: 016 Pixels @ 036,110*/ 16, 0x03,
+ /* ABS: 007 Pixels @ 052,110*/ 0, 7, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 059,110*/ 16, 0x03,
+ /* ABS: 008 Pixels @ 075,110*/ 0, 8, 0x04, 0x04, 0x00, 0x00, 0x03, 0x00, 0x0E, 0x0A,
+ /* RLE: 005 Pixels @ 083,110*/ 5, 0x03,
+ /* ABS: 005 Pixels @ 088,110*/ 0, 5, 0x00, 0x0F, 0x06, 0x03, 0x04,
+ /* RLE: 072 Pixels @ 093,110*/ 72, 0x00,
+ /* ABS: 005 Pixels @ 165,110*/ 0, 5, 0x0A, 0x00, 0x07, 0x00, 0x0A,
+ /* RLE: 028 Pixels @ 170,110*/ 28, 0x00,
+ /* ABS: 002 Pixels @ 198,110*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 200,110*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 206,110*/ 1, 0x04,
+ /* RLE: 050 Pixels @ 207,110*/ 50, 0x00,
+ /* RLE: 010 Pixels @ 257,110*/ 10, 0x09,
+ /* ABS: 008 Pixels @ 267,110*/ 0, 8, 0x03, 0x0E, 0x07, 0x03, 0x05, 0x03, 0x0F, 0x06,
+ /* RLE: 008 Pixels @ 275,110*/ 8, 0x03,
+ /* ABS: 061 Pixels @ 283,110*/ 0, 61, 0x0E, 0x11, 0x03, 0x00, 0x11, 0x07, 0x07, 0x0E, 0x03, 0x03, 0x06, 0x07, 0x0F, 0x04, 0x03, 0x04, 0x0E, 0x0E, 0x07, 0x0F, 0x0A, 0x03, 0x06, 0x06, 0x03, 0x04, 0x0B, 0x00, 0x06, 0x07, 0x00, 0x03, 0x0B, 0x07, 0x03, 0x03, 0x03, 0x0A, 0x0E, 0x11, 0x07, 0x0A, 0x0E, 0x07, 0x0F, 0x06, 0x0B, 0x03, 0x03, 0x0A, 0x0E, 0x0D, 0x07, 0x0B, 0x06, 0x11, 0x0B, 0x00, 0x00, 0x00, 0x03,
+ /* RLE: 040 Pixels @ 344,110*/ 40, 0x05,
+ /* RLE: 004 Pixels @ 384,110*/ 4, 0x09,
+ /* RLE: 035 Pixels @ 000,111*/ 35, 0x02,
+ /* RLE: 001 Pixels @ 035,111*/ 1, 0x04,
+ /* RLE: 014 Pixels @ 036,111*/ 14, 0x03,
+ /* ABS: 003 Pixels @ 050,111*/ 0, 3, 0x04, 0x04, 0x0A,
+ /* RLE: 006 Pixels @ 053,111*/ 6, 0x00,
+ /* ABS: 002 Pixels @ 059,111*/ 0, 2, 0x04, 0x04,
+ /* RLE: 018 Pixels @ 061,111*/ 18, 0x03,
+ /* ABS: 005 Pixels @ 079,111*/ 0, 5, 0x0A, 0x07, 0x0F, 0x07, 0x00,
+ /* RLE: 005 Pixels @ 084,111*/ 5, 0x03,
+ /* ABS: 003 Pixels @ 089,111*/ 0, 3, 0x0A, 0x03, 0x03,
+ /* RLE: 076 Pixels @ 092,111*/ 76, 0x00,
+ /* ABS: 004 Pixels @ 168,111*/ 0, 4, 0x07, 0x00, 0x00, 0x0A,
+ /* RLE: 027 Pixels @ 172,111*/ 27, 0x00,
+ /* RLE: 001 Pixels @ 199,111*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 200,111*/ 7, 0x03,
+ /* RLE: 046 Pixels @ 207,111*/ 46, 0x00,
+ /* RLE: 004 Pixels @ 253,111*/ 4, 0x09,
+ /* RLE: 010 Pixels @ 257,111*/ 10, 0x05,
+ /* ABS: 077 Pixels @ 267,111*/ 0, 77, 0x03, 0x0B, 0x07, 0x03, 0x03, 0x03, 0x0D, 0x06, 0x03, 0x0B, 0x06, 0x03, 0x03, 0x07, 0x0E, 0x03, 0x0B, 0x07, 0x03, 0x06, 0x06, 0x03, 0x04, 0x04, 0x03, 0x0E, 0x0F, 0x00, 0x0B, 0x07, 0x00, 0x0B, 0x07, 0x0B, 0x00, 0x0F, 0x12, 0x03, 0x0E, 0x07, 0x0F, 0x06, 0x04, 0x03, 0x0A, 0x07, 0x0A, 0x03, 0x0B, 0x07, 0x03, 0x03, 0x0B, 0x0F, 0x04, 0x04, 0x07, 0x00, 0x03, 0x04, 0x0E, 0x0D, 0x07, 0x0B, 0x0B, 0x0D, 0x00, 0x04, 0x07, 0x04, 0x0B, 0x07, 0x0A, 0x0B, 0x07, 0x04, 0x15,
+ /* RLE: 044 Pixels @ 344,111*/ 44, 0x05,
+ /* RLE: 036 Pixels @ 000,112*/ 36, 0x02,
+ /* RLE: 001 Pixels @ 036,112*/ 1, 0x04,
+ /* RLE: 011 Pixels @ 037,112*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 048,112*/ 0, 2, 0x04, 0x04,
+ /* RLE: 012 Pixels @ 050,112*/ 12, 0x00,
+ /* ABS: 002 Pixels @ 062,112*/ 0, 2, 0x04, 0x04,
+ /* RLE: 013 Pixels @ 064,112*/ 13, 0x03,
+ /* ABS: 007 Pixels @ 077,112*/ 0, 7, 0x00, 0x0B, 0x06, 0x04, 0x03, 0x11, 0x11,
+ /* RLE: 004 Pixels @ 084,112*/ 4, 0x03,
+ /* RLE: 082 Pixels @ 088,112*/ 82, 0x00,
+ /* RLE: 001 Pixels @ 170,112*/ 1, 0x0A,
+ /* RLE: 029 Pixels @ 171,112*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 200,112*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 201,112*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 207,112*/ 1, 0x04,
+ /* RLE: 041 Pixels @ 208,112*/ 41, 0x00,
+ /* RLE: 004 Pixels @ 249,112*/ 4, 0x09,
+ /* RLE: 014 Pixels @ 253,112*/ 14, 0x05,
+ /* ABS: 002 Pixels @ 267,112*/ 0, 2, 0x03, 0x0B,
+ /* RLE: 005 Pixels @ 269,112*/ 5, 0x07,
+ /* ABS: 070 Pixels @ 274,112*/ 0, 70, 0x06, 0x03, 0x0B, 0x07, 0x03, 0x03, 0x06, 0x06, 0x03, 0x0B, 0x07, 0x03, 0x0E, 0x07, 0x0F, 0x06, 0x0B, 0x03, 0x06, 0x11, 0x0B, 0x0B, 0x07, 0x0B, 0x0B, 0x07, 0x03, 0x03, 0x06, 0x06, 0x03, 0x03, 0x0A, 0x0E, 0x0D, 0x07, 0x04, 0x0A, 0x07, 0x00, 0x03, 0x04, 0x07, 0x0A, 0x03, 0x12, 0x11, 0x00, 0x0E, 0x07, 0x0A, 0x0B, 0x0D, 0x00, 0x0A, 0x07, 0x04, 0x00, 0x12, 0x07, 0x11, 0x0B, 0x03, 0x03, 0x0E, 0x0F, 0x11, 0x0B, 0x03, 0x19,
+ /* RLE: 044 Pixels @ 344,112*/ 44, 0x05,
+ /* RLE: 035 Pixels @ 000,113*/ 35, 0x02,
+ /* ABS: 002 Pixels @ 035,113*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 037,113*/ 9, 0x03,
+ /* RLE: 003 Pixels @ 046,113*/ 3, 0x04,
+ /* RLE: 001 Pixels @ 049,113*/ 1, 0x0A,
+ /* RLE: 014 Pixels @ 050,113*/ 14, 0x00,
+ /* ABS: 002 Pixels @ 064,113*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 066,113*/ 11, 0x03,
+ /* ABS: 013 Pixels @ 077,113*/ 0, 13, 0x0F, 0x07, 0x07, 0x0B, 0x03, 0x00, 0x07, 0x12, 0x03, 0x03, 0x04, 0x04, 0x0A,
+ /* RLE: 079 Pixels @ 090,113*/ 79, 0x00,
+ /* RLE: 001 Pixels @ 169,113*/ 1, 0x0A,
+ /* RLE: 030 Pixels @ 170,113*/ 30, 0x00,
+ /* RLE: 001 Pixels @ 200,113*/ 1, 0x04,
+ /* RLE: 010 Pixels @ 201,113*/ 10, 0x03,
+ /* RLE: 034 Pixels @ 211,113*/ 34, 0x00,
+ /* RLE: 004 Pixels @ 245,113*/ 4, 0x09,
+ /* RLE: 018 Pixels @ 249,113*/ 18, 0x05,
+ /* ABS: 063 Pixels @ 267,113*/ 0, 63, 0x03, 0x0B, 0x07, 0x0E, 0x0A, 0x0A, 0x0D, 0x0F, 0x03, 0x0B, 0x07, 0x03, 0x03, 0x06, 0x06, 0x03, 0x0B, 0x07, 0x03, 0x03, 0x0A, 0x0E, 0x0D, 0x07, 0x0B, 0x06, 0x11, 0x0B, 0x00, 0x0A, 0x00, 0x04, 0x07, 0x00, 0x03, 0x06, 0x06, 0x03, 0x0B, 0x0D, 0x00, 0x04, 0x07, 0x04, 0x00, 0x07, 0x0B, 0x00, 0x0A, 0x07, 0x00, 0x03, 0x00, 0x11, 0x0F, 0x0E, 0x12, 0x0B, 0x00, 0x12, 0x07, 0x11, 0x0B,
+ /* RLE: 006 Pixels @ 330,113*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 336,113*/ 0, 2, 0x15, 0x15,
+ /* RLE: 004 Pixels @ 338,113*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 342,113*/ 1, 0x15,
+ /* RLE: 045 Pixels @ 343,113*/ 45, 0x05,
+ /* RLE: 034 Pixels @ 000,114*/ 34, 0x02,
+ /* ABS: 002 Pixels @ 034,114*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 036,114*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 045,114*/ 0, 2, 0x04, 0x04,
+ /* RLE: 020 Pixels @ 047,114*/ 20, 0x00,
+ /* ABS: 021 Pixels @ 067,114*/ 0, 21, 0x04, 0x04, 0x03, 0x03, 0x03, 0x0B, 0x04, 0x03, 0x0B, 0x06, 0x0E, 0x03, 0x0D, 0x0F, 0x00, 0x03, 0x0B, 0x0F, 0x00, 0x00, 0x04,
+ /* RLE: 079 Pixels @ 088,114*/ 79, 0x00,
+ /* ABS: 005 Pixels @ 167,114*/ 0, 5, 0x0A, 0x00, 0x00, 0x00, 0x0A,
+ /* RLE: 027 Pixels @ 172,114*/ 27, 0x00,
+ /* ABS: 002 Pixels @ 199,114*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 005 Pixels @ 201,114*/ 5, 0x03,
+ /* ABS: 005 Pixels @ 206,114*/ 0, 5, 0x00, 0x0A, 0x0B, 0x06, 0x03,
+ /* RLE: 029 Pixels @ 211,114*/ 29, 0x00,
+ /* RLE: 005 Pixels @ 240,114*/ 5, 0x09,
+ /* RLE: 022 Pixels @ 245,114*/ 22, 0x05,
+ /* ABS: 052 Pixels @ 267,114*/ 0, 52, 0x03, 0x0A, 0x07, 0x0A, 0x03, 0x03, 0x0E, 0x07, 0x03, 0x0B, 0x07, 0x00, 0x03, 0x06, 0x06, 0x03, 0x0A, 0x07, 0x00, 0x0B, 0x0D, 0x00, 0x0A, 0x07, 0x04, 0x0B, 0x07, 0x0A, 0x0B, 0x07, 0x04, 0x00, 0x07, 0x0A, 0x03, 0x0E, 0x07, 0x03, 0x00, 0x12, 0x07, 0x11, 0x0B, 0x03, 0x03, 0x0D, 0x07, 0x04, 0x03, 0x03, 0x03, 0x15,
+ /* RLE: 011 Pixels @ 319,114*/ 11, 0x03,
+ /* RLE: 001 Pixels @ 330,114*/ 1, 0x15,
+ /* RLE: 013 Pixels @ 331,114*/ 13, 0x05,
+ /* RLE: 005 Pixels @ 344,114*/ 5, 0x09,
+ /* RLE: 005 Pixels @ 349,114*/ 5, 0x03,
+ /* RLE: 034 Pixels @ 354,114*/ 34, 0x05,
+ /* RLE: 034 Pixels @ 000,115*/ 34, 0x02,
+ /* RLE: 001 Pixels @ 034,115*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 035,115*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 043,115*/ 0, 2, 0x04, 0x04,
+ /* RLE: 024 Pixels @ 045,115*/ 24, 0x00,
+ /* ABS: 017 Pixels @ 069,115*/ 0, 17, 0x04, 0x04, 0x03, 0x11, 0x0F, 0x00, 0x0B, 0x07, 0x0E, 0x03, 0x00, 0x0F, 0x0D, 0x03, 0x03, 0x00, 0x03,
+ /* RLE: 083 Pixels @ 086,115*/ 83, 0x00,
+ /* RLE: 001 Pixels @ 169,115*/ 1, 0x07,
+ /* RLE: 031 Pixels @ 170,115*/ 31, 0x00,
+ /* ABS: 009 Pixels @ 201,115*/ 0, 9, 0x03, 0x00, 0x0B, 0x06, 0x0F, 0x07, 0x07, 0x07, 0x0F,
+ /* RLE: 026 Pixels @ 210,115*/ 26, 0x00,
+ /* RLE: 004 Pixels @ 236,115*/ 4, 0x09,
+ /* RLE: 027 Pixels @ 240,115*/ 27, 0x05,
+ /* ABS: 039 Pixels @ 267,115*/ 0, 39, 0x00, 0x0A, 0x07, 0x0A, 0x00, 0x03, 0x0B, 0x07, 0x03, 0x0A, 0x07, 0x0B, 0x0A, 0x0F, 0x11, 0x03, 0x0A, 0x07, 0x0A, 0x00, 0x12, 0x07, 0x11, 0x0B, 0x03, 0x03, 0x0E, 0x0F, 0x11, 0x0B, 0x03, 0x0A, 0x0F, 0x00, 0x03, 0x04, 0x12, 0x03, 0x00,
+ /* RLE: 004 Pixels @ 306,115*/ 4, 0x03,
+ /* ABS: 006 Pixels @ 310,115*/ 0, 6, 0x15, 0x00, 0x03, 0x03, 0x03, 0x19,
+ /* RLE: 012 Pixels @ 316,115*/ 12, 0x05,
+ /* RLE: 016 Pixels @ 328,115*/ 16, 0x09,
+ /* RLE: 005 Pixels @ 344,115*/ 5, 0x01,
+ /* RLE: 001 Pixels @ 349,115*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 350,115*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 358,115*/ 0, 2, 0x09, 0x09,
+ /* RLE: 028 Pixels @ 360,115*/ 28, 0x05,
+ /* RLE: 034 Pixels @ 000,116*/ 34, 0x02,
+ /* RLE: 001 Pixels @ 034,116*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 035,116*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 042,116*/ 1, 0x04,
+ /* RLE: 027 Pixels @ 043,116*/ 27, 0x00,
+ /* ABS: 013 Pixels @ 070,116*/ 0, 13, 0x0A, 0x03, 0x00, 0x07, 0x0D, 0x03, 0x06, 0x07, 0x00, 0x03, 0x04, 0x07, 0x04,
+ /* RLE: 085 Pixels @ 083,116*/ 85, 0x00,
+ /* ABS: 006 Pixels @ 168,116*/ 0, 6, 0x0A, 0x00, 0x07, 0x0A, 0x00, 0x0A,
+ /* RLE: 024 Pixels @ 174,116*/ 24, 0x00,
+ /* ABS: 013 Pixels @ 198,116*/ 0, 13, 0x0A, 0x00, 0x0A, 0x03, 0x12, 0x07, 0x0F, 0x06, 0x0B, 0x0A, 0x00, 0x03, 0x03,
+ /* RLE: 021 Pixels @ 211,116*/ 21, 0x00,
+ /* RLE: 004 Pixels @ 232,116*/ 4, 0x09,
+ /* RLE: 031 Pixels @ 236,116*/ 31, 0x05,
+ /* ABS: 019 Pixels @ 267,116*/ 0, 19, 0x15, 0x0A, 0x07, 0x0A, 0x15, 0x00, 0x0A, 0x0B, 0x03, 0x03, 0x12, 0x07, 0x06, 0x0B, 0x12, 0x03, 0x0A, 0x0F, 0x00,
+ /* RLE: 005 Pixels @ 286,116*/ 5, 0x03,
+ /* ABS: 002 Pixels @ 291,116*/ 0, 2, 0x15, 0x15,
+ /* RLE: 004 Pixels @ 293,116*/ 4, 0x03,
+ /* ABS: 008 Pixels @ 297,116*/ 0, 8, 0x15, 0x03, 0x03, 0x03, 0x15, 0x03, 0x00, 0x15,
+ /* RLE: 008 Pixels @ 305,116*/ 8, 0x05,
+ /* RLE: 015 Pixels @ 313,116*/ 15, 0x09,
+ /* RLE: 021 Pixels @ 328,116*/ 21, 0x01,
+ /* ABS: 002 Pixels @ 349,116*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 351,116*/ 8, 0x03,
+ /* RLE: 001 Pixels @ 359,116*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 360,116*/ 6, 0x09,
+ /* RLE: 022 Pixels @ 366,116*/ 22, 0x05,
+ /* RLE: 033 Pixels @ 000,117*/ 33, 0x02,
+ /* ABS: 002 Pixels @ 033,117*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 035,117*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 041,117*/ 0, 3, 0x04, 0x04, 0x0A,
+ /* RLE: 028 Pixels @ 044,117*/ 28, 0x00,
+ /* ABS: 013 Pixels @ 072,117*/ 0, 13, 0x03, 0x04, 0x07, 0x0E, 0x03, 0x0F, 0x11, 0x03, 0x03, 0x0A, 0x03, 0x00, 0x0A,
+ /* RLE: 085 Pixels @ 085,117*/ 85, 0x00,
+ /* ABS: 003 Pixels @ 170,117*/ 0, 3, 0x07, 0x00, 0x0A,
+ /* RLE: 028 Pixels @ 173,117*/ 28, 0x00,
+ /* ABS: 008 Pixels @ 201,117*/ 0, 8, 0x03, 0x00, 0x00, 0x03, 0x03, 0x00, 0x04, 0x03,
+ /* RLE: 019 Pixels @ 209,117*/ 19, 0x00,
+ /* RLE: 004 Pixels @ 228,117*/ 4, 0x09,
+ /* RLE: 035 Pixels @ 232,117*/ 35, 0x05,
+ /* ABS: 010 Pixels @ 267,117*/ 0, 10, 0x19, 0x03, 0x03, 0x03, 0x19, 0x19, 0x00, 0x00, 0x15, 0x15,
+ /* RLE: 005 Pixels @ 277,117*/ 5, 0x03,
+ /* ABS: 005 Pixels @ 282,117*/ 0, 5, 0x00, 0x03, 0x03, 0x03, 0x1A,
+ /* RLE: 011 Pixels @ 287,117*/ 11, 0x05,
+ /* RLE: 015 Pixels @ 298,117*/ 15, 0x09,
+ /* RLE: 036 Pixels @ 313,117*/ 36, 0x01,
+ /* RLE: 003 Pixels @ 349,117*/ 3, 0x04,
+ /* RLE: 008 Pixels @ 352,117*/ 8, 0x03,
+ /* RLE: 003 Pixels @ 360,117*/ 3, 0x04,
+ /* RLE: 003 Pixels @ 363,117*/ 3, 0x01,
+ /* RLE: 006 Pixels @ 366,117*/ 6, 0x09,
+ /* RLE: 016 Pixels @ 372,117*/ 16, 0x05,
+ /* RLE: 034 Pixels @ 000,118*/ 34, 0x02,
+ /* RLE: 001 Pixels @ 034,118*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 035,118*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 041,118*/ 1, 0x04,
+ /* RLE: 030 Pixels @ 042,118*/ 30, 0x00,
+ /* ABS: 012 Pixels @ 072,118*/ 0, 12, 0x03, 0x03, 0x12, 0x07, 0x04, 0x0A, 0x07, 0x0B, 0x03, 0x03, 0x03, 0x04,
+ /* RLE: 116 Pixels @ 084,118*/ 116, 0x00,
+ /* ABS: 010 Pixels @ 200,118*/ 0, 10, 0x0A, 0x03, 0x04, 0x0E, 0x0D, 0x07, 0x07, 0x07, 0x03, 0x0A,
+ /* RLE: 013 Pixels @ 210,118*/ 13, 0x00,
+ /* RLE: 005 Pixels @ 223,118*/ 5, 0x09,
+ /* RLE: 054 Pixels @ 228,118*/ 54, 0x05,
+ /* RLE: 016 Pixels @ 282,118*/ 16, 0x09,
+ /* RLE: 005 Pixels @ 298,118*/ 5, 0x00,
+ /* ABS: 011 Pixels @ 303,118*/ 0, 11, 0x0D, 0x03, 0x06, 0x00, 0x00, 0x00, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 037 Pixels @ 314,118*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 351,118*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 353,118*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 362,118*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 364,118*/ 8, 0x01,
+ /* RLE: 006 Pixels @ 372,118*/ 6, 0x09,
+ /* RLE: 010 Pixels @ 378,118*/ 10, 0x05,
+ /* RLE: 034 Pixels @ 000,119*/ 34, 0x02,
+ /* RLE: 001 Pixels @ 034,119*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 035,119*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 041,119*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 030 Pixels @ 043,119*/ 30, 0x00,
+ /* ABS: 006 Pixels @ 073,119*/ 0, 6, 0x03, 0x03, 0x11, 0x0F, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 079,119*/ 4, 0x03,
+ /* ABS: 002 Pixels @ 083,119*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 116 Pixels @ 085,119*/ 116, 0x00,
+ /* ABS: 009 Pixels @ 201,119*/ 0, 9, 0x03, 0x12, 0x07, 0x06, 0x0E, 0x0E, 0x0D, 0x00, 0x03,
+ /* RLE: 009 Pixels @ 210,119*/ 9, 0x00,
+ /* RLE: 004 Pixels @ 219,119*/ 4, 0x09,
+ /* RLE: 044 Pixels @ 223,119*/ 44, 0x05,
+ /* RLE: 015 Pixels @ 267,119*/ 15, 0x09,
+ /* RLE: 021 Pixels @ 282,119*/ 21, 0x00,
+ /* ABS: 004 Pixels @ 303,119*/ 0, 4, 0x0D, 0x0D, 0x06, 0x06,
+ /* RLE: 004 Pixels @ 307,119*/ 4, 0x00,
+ /* ABS: 004 Pixels @ 311,119*/ 0, 4, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 037 Pixels @ 315,119*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 352,119*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 354,119*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 363,119*/ 0, 2, 0x04, 0x04,
+ /* RLE: 013 Pixels @ 365,119*/ 13, 0x01,
+ /* RLE: 006 Pixels @ 378,119*/ 6, 0x09,
+ /* RLE: 004 Pixels @ 384,119*/ 4, 0x05,
+ /* RLE: 034 Pixels @ 000,120*/ 34, 0x02,
+ /* RLE: 001 Pixels @ 034,120*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 035,120*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 041,120*/ 1, 0x04,
+ /* RLE: 032 Pixels @ 042,120*/ 32, 0x00,
+ /* ABS: 004 Pixels @ 074,120*/ 0, 4, 0x03, 0x00, 0x07, 0x12,
+ /* RLE: 005 Pixels @ 078,120*/ 5, 0x03,
+ /* ABS: 003 Pixels @ 083,120*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 084 Pixels @ 086,120*/ 84, 0x00,
+ /* ABS: 004 Pixels @ 170,120*/ 0, 4, 0x0A, 0x00, 0x00, 0x0A,
+ /* RLE: 026 Pixels @ 174,120*/ 26, 0x00,
+ /* RLE: 001 Pixels @ 200,120*/ 1, 0x0A,
+ /* RLE: 006 Pixels @ 201,120*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 207,120*/ 0, 3, 0x06, 0x0E, 0x03,
+ /* RLE: 005 Pixels @ 210,120*/ 5, 0x00,
+ /* RLE: 004 Pixels @ 215,120*/ 4, 0x09,
+ /* RLE: 038 Pixels @ 219,120*/ 38, 0x05,
+ /* RLE: 010 Pixels @ 257,120*/ 10, 0x09,
+ /* RLE: 037 Pixels @ 267,120*/ 37, 0x00,
+ /* RLE: 003 Pixels @ 304,120*/ 3, 0x06,
+ /* RLE: 005 Pixels @ 307,120*/ 5, 0x00,
+ /* RLE: 004 Pixels @ 312,120*/ 4, 0x06,
+ /* RLE: 037 Pixels @ 316,120*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 353,120*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 355,120*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 364,120*/ 0, 2, 0x04, 0x04,
+ /* RLE: 018 Pixels @ 366,120*/ 18, 0x01,
+ /* RLE: 004 Pixels @ 384,120*/ 4, 0x09,
+ /* RLE: 034 Pixels @ 000,121*/ 34, 0x02,
+ /* RLE: 001 Pixels @ 034,121*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 035,121*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 041,121*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 031 Pixels @ 044,121*/ 31, 0x00,
+ /* ABS: 002 Pixels @ 075,121*/ 0, 2, 0x03, 0x0A,
+ /* RLE: 006 Pixels @ 077,121*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 083,121*/ 0, 2, 0x04, 0x04,
+ /* RLE: 086 Pixels @ 085,121*/ 86, 0x00,
+ /* ABS: 004 Pixels @ 171,121*/ 0, 4, 0x0A, 0x07, 0x00, 0x0A,
+ /* RLE: 026 Pixels @ 175,121*/ 26, 0x00,
+ /* ABS: 010 Pixels @ 201,121*/ 0, 10, 0x0A, 0x03, 0x03, 0x00, 0x0B, 0x0E, 0x0F, 0x0E, 0x03, 0x04,
+ /* RLE: 004 Pixels @ 211,121*/ 4, 0x09,
+ /* RLE: 038 Pixels @ 215,121*/ 38, 0x05,
+ /* RLE: 004 Pixels @ 253,121*/ 4, 0x09,
+ /* RLE: 047 Pixels @ 257,121*/ 47, 0x00,
+ /* ABS: 003 Pixels @ 304,121*/ 0, 3, 0x0D, 0x06, 0x06,
+ /* RLE: 006 Pixels @ 307,121*/ 6, 0x00,
+ /* RLE: 005 Pixels @ 313,121*/ 5, 0x06,
+ /* RLE: 036 Pixels @ 318,121*/ 36, 0x01,
+ /* ABS: 002 Pixels @ 354,121*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 356,121*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 365,121*/ 0, 2, 0x04, 0x04,
+ /* RLE: 021 Pixels @ 367,121*/ 21, 0x01,
+ /* RLE: 034 Pixels @ 000,122*/ 34, 0x02,
+ /* RLE: 001 Pixels @ 034,122*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 035,122*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 041,122*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 034 Pixels @ 043,122*/ 34, 0x00,
+ /* RLE: 007 Pixels @ 077,122*/ 7, 0x03,
+ /* ABS: 003 Pixels @ 084,122*/ 0, 3, 0x04, 0x04, 0x0A,
+ /* RLE: 083 Pixels @ 087,122*/ 83, 0x00,
+ /* ABS: 033 Pixels @ 170,122*/ 0, 33, 0x0A, 0x00, 0x07, 0x00, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x00, 0x03,
+ /* RLE: 005 Pixels @ 203,122*/ 5, 0x07,
+ /* ABS: 003 Pixels @ 208,122*/ 0, 3, 0x0A, 0x03, 0x06,
+ /* RLE: 038 Pixels @ 211,122*/ 38, 0x05,
+ /* RLE: 004 Pixels @ 249,122*/ 4, 0x09,
+ /* RLE: 051 Pixels @ 253,122*/ 51, 0x00,
+ /* ABS: 003 Pixels @ 304,122*/ 0, 3, 0x06, 0x03, 0x06,
+ /* RLE: 007 Pixels @ 307,122*/ 7, 0x00,
+ /* ABS: 005 Pixels @ 314,122*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 036 Pixels @ 319,122*/ 36, 0x01,
+ /* ABS: 002 Pixels @ 355,122*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 357,122*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 366,122*/ 0, 2, 0x04, 0x04,
+ /* RLE: 020 Pixels @ 368,122*/ 20, 0x01,
+ /* RLE: 035 Pixels @ 000,123*/ 35, 0x02,
+ /* RLE: 007 Pixels @ 035,123*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 042,123*/ 1, 0x04,
+ /* RLE: 034 Pixels @ 043,123*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 077,123*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 078,123*/ 7, 0x03,
+ /* ABS: 003 Pixels @ 085,123*/ 0, 3, 0x04, 0x04, 0x0A,
+ /* RLE: 085 Pixels @ 088,123*/ 85, 0x00,
+ /* ABS: 038 Pixels @ 173,123*/ 0, 38, 0x07, 0x00, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x03, 0x0E, 0x04, 0x00, 0x03, 0x00, 0x07, 0x00, 0x15,
+ /* RLE: 034 Pixels @ 211,123*/ 34, 0x05,
+ /* RLE: 004 Pixels @ 245,123*/ 4, 0x09,
+ /* RLE: 055 Pixels @ 249,123*/ 55, 0x00,
+ /* ABS: 003 Pixels @ 304,123*/ 0, 3, 0x0D, 0x03, 0x06,
+ /* RLE: 008 Pixels @ 307,123*/ 8, 0x00,
+ /* ABS: 005 Pixels @ 315,123*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 037 Pixels @ 320,123*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 357,123*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 359,123*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 368,123*/ 0, 2, 0x04, 0x04,
+ /* RLE: 018 Pixels @ 370,123*/ 18, 0x01,
+ /* RLE: 035 Pixels @ 000,124*/ 35, 0x02,
+ /* RLE: 001 Pixels @ 035,124*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 036,124*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 042,124*/ 1, 0x04,
+ /* RLE: 033 Pixels @ 043,124*/ 33, 0x00,
+ /* ABS: 002 Pixels @ 076,124*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 008 Pixels @ 078,124*/ 8, 0x03,
+ /* ABS: 003 Pixels @ 086,124*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 086 Pixels @ 089,124*/ 86, 0x00,
+ /* RLE: 001 Pixels @ 175,124*/ 1, 0x0A,
+ /* RLE: 023 Pixels @ 176,124*/ 23, 0x00,
+ /* RLE: 003 Pixels @ 199,124*/ 3, 0x09,
+ /* RLE: 001 Pixels @ 202,124*/ 1, 0x00,
+ /* RLE: 004 Pixels @ 203,124*/ 4, 0x03,
+ /* ABS: 004 Pixels @ 207,124*/ 0, 4, 0x0A, 0x07, 0x00, 0x15,
+ /* RLE: 029 Pixels @ 211,124*/ 29, 0x05,
+ /* RLE: 005 Pixels @ 240,124*/ 5, 0x09,
+ /* RLE: 059 Pixels @ 245,124*/ 59, 0x00,
+ /* ABS: 003 Pixels @ 304,124*/ 0, 3, 0x06, 0x03, 0x06,
+ /* RLE: 010 Pixels @ 307,124*/ 10, 0x00,
+ /* ABS: 004 Pixels @ 317,124*/ 0, 4, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 037 Pixels @ 321,124*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 358,124*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 360,124*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 369,124*/ 0, 2, 0x04, 0x04,
+ /* RLE: 017 Pixels @ 371,124*/ 17, 0x01,
+ /* RLE: 035 Pixels @ 000,125*/ 35, 0x02,
+ /* RLE: 001 Pixels @ 035,125*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 036,125*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 042,125*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 032 Pixels @ 045,125*/ 32, 0x00,
+ /* ABS: 002 Pixels @ 077,125*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 008 Pixels @ 079,125*/ 8, 0x03,
+ /* ABS: 003 Pixels @ 087,125*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 084 Pixels @ 090,125*/ 84, 0x00,
+ /* RLE: 001 Pixels @ 174,125*/ 1, 0x0A,
+ /* RLE: 020 Pixels @ 175,125*/ 20, 0x00,
+ /* RLE: 004 Pixels @ 195,125*/ 4, 0x09,
+ /* RLE: 003 Pixels @ 199,125*/ 3, 0x05,
+ /* ABS: 009 Pixels @ 202,125*/ 0, 9, 0x15, 0x00, 0x0E, 0x0D, 0x07, 0x07, 0x0F, 0x00, 0x15,
+ /* RLE: 025 Pixels @ 211,125*/ 25, 0x05,
+ /* RLE: 004 Pixels @ 236,125*/ 4, 0x09,
+ /* RLE: 064 Pixels @ 240,125*/ 64, 0x00,
+ /* ABS: 004 Pixels @ 304,125*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 010 Pixels @ 308,125*/ 10, 0x00,
+ /* RLE: 004 Pixels @ 318,125*/ 4, 0x06,
+ /* RLE: 037 Pixels @ 322,125*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 359,125*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 361,125*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 370,125*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 372,125*/ 16, 0x01,
+ /* RLE: 035 Pixels @ 000,126*/ 35, 0x02,
+ /* RLE: 001 Pixels @ 035,126*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 036,126*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 042,126*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 033 Pixels @ 044,126*/ 33, 0x00,
+ /* ABS: 003 Pixels @ 077,126*/ 0, 3, 0x0A, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 080,126*/ 7, 0x03,
+ /* ABS: 005 Pixels @ 087,126*/ 0, 5, 0x04, 0x04, 0x00, 0x00, 0x0A,
+ /* RLE: 048 Pixels @ 092,126*/ 48, 0x00,
+ /* ABS: 033 Pixels @ 140,126*/ 0, 33, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A,
+ /* RLE: 019 Pixels @ 173,126*/ 19, 0x00,
+ /* RLE: 003 Pixels @ 192,126*/ 3, 0x09,
+ /* RLE: 007 Pixels @ 195,126*/ 7, 0x05,
+ /* ABS: 009 Pixels @ 202,126*/ 0, 9, 0x15, 0x0A, 0x0F, 0x06, 0x0B, 0x04, 0x03, 0x03, 0x1A,
+ /* RLE: 021 Pixels @ 211,126*/ 21, 0x05,
+ /* RLE: 004 Pixels @ 232,126*/ 4, 0x09,
+ /* RLE: 069 Pixels @ 236,126*/ 69, 0x00,
+ /* RLE: 003 Pixels @ 305,126*/ 3, 0x06,
+ /* RLE: 011 Pixels @ 308,126*/ 11, 0x00,
+ /* RLE: 004 Pixels @ 319,126*/ 4, 0x06,
+ /* RLE: 037 Pixels @ 323,126*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 360,126*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 362,126*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 371,126*/ 0, 2, 0x04, 0x04,
+ /* RLE: 015 Pixels @ 373,126*/ 15, 0x01,
+ /* RLE: 035 Pixels @ 000,127*/ 35, 0x02,
+ /* RLE: 001 Pixels @ 035,127*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 036,127*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 042,127*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 034 Pixels @ 045,127*/ 34, 0x00,
+ /* ABS: 002 Pixels @ 079,127*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 081,127*/ 7, 0x03,
+ /* ABS: 003 Pixels @ 088,127*/ 0, 3, 0x04, 0x04, 0x0A,
+ /* RLE: 048 Pixels @ 091,127*/ 48, 0x00,
+ /* ABS: 037 Pixels @ 139,127*/ 0, 37, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x07,
+ /* RLE: 012 Pixels @ 176,127*/ 12, 0x00,
+ /* RLE: 004 Pixels @ 188,127*/ 4, 0x09,
+ /* RLE: 010 Pixels @ 192,127*/ 10, 0x05,
+ /* RLE: 001 Pixels @ 202,127*/ 1, 0x19,
+ /* RLE: 004 Pixels @ 203,127*/ 4, 0x03,
+ /* ABS: 002 Pixels @ 207,127*/ 0, 2, 0x00, 0x19,
+ /* RLE: 019 Pixels @ 209,127*/ 19, 0x05,
+ /* RLE: 004 Pixels @ 228,127*/ 4, 0x09,
+ /* RLE: 073 Pixels @ 232,127*/ 73, 0x00,
+ /* ABS: 003 Pixels @ 305,127*/ 0, 3, 0x0D, 0x06, 0x06,
+ /* RLE: 012 Pixels @ 308,127*/ 12, 0x00,
+ /* ABS: 005 Pixels @ 320,127*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 036 Pixels @ 325,127*/ 36, 0x01,
+ /* ABS: 002 Pixels @ 361,127*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 363,127*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 372,127*/ 0, 2, 0x04, 0x04,
+ /* RLE: 014 Pixels @ 374,127*/ 14, 0x01,
+ /* RLE: 035 Pixels @ 000,128*/ 35, 0x02,
+ /* RLE: 001 Pixels @ 035,128*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 036,128*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 042,128*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 036 Pixels @ 044,128*/ 36, 0x00,
+ /* ABS: 002 Pixels @ 080,128*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 082,128*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 089,128*/ 0, 2, 0x04, 0x04,
+ /* RLE: 043 Pixels @ 091,128*/ 43, 0x00,
+ /* ABS: 005 Pixels @ 134,128*/ 0, 5, 0x0A, 0x00, 0x00, 0x00, 0x0A,
+ /* RLE: 036 Pixels @ 139,128*/ 36, 0x00,
+ /* RLE: 001 Pixels @ 175,128*/ 1, 0x07,
+ /* RLE: 008 Pixels @ 176,128*/ 8, 0x00,
+ /* RLE: 004 Pixels @ 184,128*/ 4, 0x09,
+ /* RLE: 021 Pixels @ 188,128*/ 21, 0x05,
+ /* ABS: 006 Pixels @ 209,128*/ 0, 6, 0x19, 0x15, 0x03, 0x03, 0x00, 0x1A,
+ /* RLE: 008 Pixels @ 215,128*/ 8, 0x05,
+ /* RLE: 005 Pixels @ 223,128*/ 5, 0x09,
+ /* RLE: 077 Pixels @ 228,128*/ 77, 0x00,
+ /* ABS: 003 Pixels @ 305,128*/ 0, 3, 0x06, 0x03, 0x06,
+ /* RLE: 013 Pixels @ 308,128*/ 13, 0x00,
+ /* ABS: 005 Pixels @ 321,128*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 036 Pixels @ 326,128*/ 36, 0x01,
+ /* RLE: 003 Pixels @ 362,128*/ 3, 0x04,
+ /* RLE: 008 Pixels @ 365,128*/ 8, 0x03,
+ /* RLE: 003 Pixels @ 373,128*/ 3, 0x04,
+ /* RLE: 012 Pixels @ 376,128*/ 12, 0x01,
+ /* RLE: 036 Pixels @ 000,129*/ 36, 0x02,
+ /* RLE: 007 Pixels @ 036,129*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 043,129*/ 1, 0x04,
+ /* RLE: 037 Pixels @ 044,129*/ 37, 0x00,
+ /* RLE: 001 Pixels @ 081,129*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 082,129*/ 8, 0x03,
+ /* ABS: 004 Pixels @ 090,129*/ 0, 4, 0x04, 0x00, 0x00, 0x0A,
+ /* RLE: 041 Pixels @ 094,129*/ 41, 0x00,
+ /* ABS: 003 Pixels @ 135,129*/ 0, 3, 0x0A, 0x00, 0x0A,
+ /* RLE: 037 Pixels @ 138,129*/ 37, 0x00,
+ /* RLE: 001 Pixels @ 175,129*/ 1, 0x07,
+ /* RLE: 004 Pixels @ 176,129*/ 4, 0x00,
+ /* RLE: 004 Pixels @ 180,129*/ 4, 0x09,
+ /* RLE: 020 Pixels @ 184,129*/ 20, 0x05,
+ /* ABS: 002 Pixels @ 204,129*/ 0, 2, 0x1A, 0x15,
+ /* RLE: 004 Pixels @ 206,129*/ 4, 0x03,
+ /* ABS: 005 Pixels @ 210,129*/ 0, 5, 0x00, 0x0B, 0x12, 0x00, 0x19,
+ /* RLE: 004 Pixels @ 215,129*/ 4, 0x05,
+ /* RLE: 004 Pixels @ 219,129*/ 4, 0x09,
+ /* RLE: 082 Pixels @ 223,129*/ 82, 0x00,
+ /* ABS: 003 Pixels @ 305,129*/ 0, 3, 0x0D, 0x03, 0x06,
+ /* RLE: 014 Pixels @ 308,129*/ 14, 0x00,
+ /* ABS: 005 Pixels @ 322,129*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 037 Pixels @ 327,129*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 364,129*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 366,129*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 375,129*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 377,129*/ 11, 0x01,
+ /* RLE: 036 Pixels @ 000,130*/ 36, 0x02,
+ /* RLE: 001 Pixels @ 036,130*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 037,130*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 043,130*/ 1, 0x04,
+ /* RLE: 036 Pixels @ 044,130*/ 36, 0x00,
+ /* ABS: 003 Pixels @ 080,130*/ 0, 3, 0x0A, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 083,130*/ 7, 0x03,
+ /* ABS: 003 Pixels @ 090,130*/ 0, 3, 0x04, 0x04, 0x0A,
+ /* RLE: 039 Pixels @ 093,130*/ 39, 0x00,
+ /* ABS: 003 Pixels @ 132,130*/ 0, 3, 0x0A, 0x00, 0x0A,
+ /* RLE: 042 Pixels @ 135,130*/ 42, 0x00,
+ /* RLE: 003 Pixels @ 177,130*/ 3, 0x09,
+ /* RLE: 024 Pixels @ 180,130*/ 24, 0x05,
+ /* ABS: 005 Pixels @ 204,130*/ 0, 5, 0x00, 0x00, 0x0B, 0x12, 0x11,
+ /* RLE: 004 Pixels @ 209,130*/ 4, 0x07,
+ /* ABS: 002 Pixels @ 213,130*/ 0, 2, 0x00, 0x19,
+ /* RLE: 004 Pixels @ 215,130*/ 4, 0x09,
+ /* RLE: 086 Pixels @ 219,130*/ 86, 0x00,
+ /* ABS: 004 Pixels @ 305,130*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 015 Pixels @ 309,130*/ 15, 0x00,
+ /* RLE: 004 Pixels @ 324,130*/ 4, 0x06,
+ /* RLE: 037 Pixels @ 328,130*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 365,130*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 367,130*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 376,130*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 378,130*/ 10, 0x01,
+ /* RLE: 001 Pixels @ 000,131*/ 1, 0x09,
+ /* RLE: 035 Pixels @ 001,131*/ 35, 0x02,
+ /* RLE: 001 Pixels @ 036,131*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 037,131*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 043,131*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 036 Pixels @ 046,131*/ 36, 0x00,
+ /* ABS: 002 Pixels @ 082,131*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 007 Pixels @ 084,131*/ 7, 0x03,
+ /* ABS: 003 Pixels @ 091,131*/ 0, 3, 0x04, 0x04, 0x0A,
+ /* RLE: 041 Pixels @ 094,131*/ 41, 0x00,
+ /* RLE: 001 Pixels @ 135,131*/ 1, 0x0A,
+ /* RLE: 037 Pixels @ 136,131*/ 37, 0x00,
+ /* RLE: 004 Pixels @ 173,131*/ 4, 0x09,
+ /* RLE: 027 Pixels @ 177,131*/ 27, 0x05,
+ /* ABS: 011 Pixels @ 204,131*/ 0, 11, 0x03, 0x12, 0x07, 0x07, 0x06, 0x07, 0x0B, 0x00, 0x03, 0x03, 0x12,
+ /* RLE: 091 Pixels @ 215,131*/ 91, 0x00,
+ /* ABS: 003 Pixels @ 306,131*/ 0, 3, 0x0D, 0x06, 0x06,
+ /* RLE: 016 Pixels @ 309,131*/ 16, 0x00,
+ /* RLE: 004 Pixels @ 325,131*/ 4, 0x06,
+ /* RLE: 037 Pixels @ 329,131*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 366,131*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 368,131*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 377,131*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 379,131*/ 9, 0x01,
+ /* RLE: 003 Pixels @ 000,132*/ 3, 0x09,
+ /* RLE: 033 Pixels @ 003,132*/ 33, 0x02,
+ /* RLE: 001 Pixels @ 036,132*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 037,132*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 043,132*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 037 Pixels @ 045,132*/ 37, 0x00,
+ /* ABS: 003 Pixels @ 082,132*/ 0, 3, 0x0A, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 085,132*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 092,132*/ 0, 2, 0x04, 0x04,
+ /* RLE: 075 Pixels @ 094,132*/ 75, 0x00,
+ /* RLE: 004 Pixels @ 169,132*/ 4, 0x09,
+ /* RLE: 031 Pixels @ 173,132*/ 31, 0x05,
+ /* RLE: 003 Pixels @ 204,132*/ 3, 0x00,
+ /* ABS: 007 Pixels @ 207,132*/ 0, 7, 0x03, 0x03, 0x0F, 0x0B, 0x03, 0x03, 0x04,
+ /* RLE: 092 Pixels @ 214,132*/ 92, 0x00,
+ /* RLE: 003 Pixels @ 306,132*/ 3, 0x06,
+ /* RLE: 017 Pixels @ 309,132*/ 17, 0x00,
+ /* ABS: 005 Pixels @ 326,132*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 036 Pixels @ 331,132*/ 36, 0x01,
+ /* ABS: 002 Pixels @ 367,132*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 369,132*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 378,132*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 380,132*/ 8, 0x01,
+ /* ABS: 005 Pixels @ 000,133*/ 0, 5, 0x05, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 031 Pixels @ 005,133*/ 31, 0x02,
+ /* RLE: 001 Pixels @ 036,133*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 037,133*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 043,133*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 038 Pixels @ 046,133*/ 38, 0x00,
+ /* RLE: 001 Pixels @ 084,133*/ 1, 0x0A,
+ /* RLE: 008 Pixels @ 085,133*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 093,133*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 070 Pixels @ 095,133*/ 70, 0x00,
+ /* RLE: 004 Pixels @ 165,133*/ 4, 0x09,
+ /* RLE: 034 Pixels @ 169,133*/ 34, 0x05,
+ /* ABS: 008 Pixels @ 203,133*/ 0, 8, 0x09, 0x12, 0x04, 0x04, 0x03, 0x03, 0x06, 0x12,
+ /* RLE: 004 Pixels @ 211,133*/ 4, 0x03,
+ /* RLE: 091 Pixels @ 215,133*/ 91, 0x00,
+ /* ABS: 004 Pixels @ 306,133*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 017 Pixels @ 310,133*/ 17, 0x00,
+ /* ABS: 005 Pixels @ 327,133*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 036 Pixels @ 332,133*/ 36, 0x01,
+ /* ABS: 002 Pixels @ 368,133*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 370,133*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 379,133*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 381,133*/ 7, 0x01,
+ /* ABS: 007 Pixels @ 000,134*/ 0, 7, 0x00, 0x00, 0x1A, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 029 Pixels @ 007,134*/ 29, 0x02,
+ /* RLE: 001 Pixels @ 036,134*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 037,134*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 043,134*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 039 Pixels @ 045,134*/ 39, 0x00,
+ /* ABS: 002 Pixels @ 084,134*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 008 Pixels @ 086,134*/ 8, 0x03,
+ /* ABS: 003 Pixels @ 094,134*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 037 Pixels @ 097,134*/ 37, 0x00,
+ /* ABS: 004 Pixels @ 134,134*/ 0, 4, 0x0A, 0x00, 0x00, 0x00,
+ /* RLE: 022 Pixels @ 138,134*/ 22, 0x07,
+ /* RLE: 001 Pixels @ 160,134*/ 1, 0x00,
+ /* RLE: 004 Pixels @ 161,134*/ 4, 0x09,
+ /* RLE: 034 Pixels @ 165,134*/ 34, 0x05,
+ /* RLE: 004 Pixels @ 199,134*/ 4, 0x09,
+ /* RLE: 003 Pixels @ 203,134*/ 3, 0x00,
+ /* RLE: 003 Pixels @ 206,134*/ 3, 0x03,
+ /* ABS: 005 Pixels @ 209,134*/ 0, 5, 0x0E, 0x11, 0x0E, 0x06, 0x07,
+ /* RLE: 093 Pixels @ 214,134*/ 93, 0x00,
+ /* ABS: 004 Pixels @ 307,134*/ 0, 4, 0x0D, 0x0D, 0x06, 0x06,
+ /* RLE: 017 Pixels @ 311,134*/ 17, 0x00,
+ /* ABS: 005 Pixels @ 328,134*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 037 Pixels @ 333,134*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 370,134*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 372,134*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 381,134*/ 0, 2, 0x04, 0x04,
+ /* RLE: 005 Pixels @ 383,134*/ 5, 0x01,
+ /* ABS: 009 Pixels @ 000,135*/ 0, 9, 0x12, 0x00, 0x03, 0x03, 0x19, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 028 Pixels @ 009,135*/ 28, 0x02,
+ /* RLE: 007 Pixels @ 037,135*/ 7, 0x03,
+ /* ABS: 004 Pixels @ 044,135*/ 0, 4, 0x04, 0x0A, 0x00, 0x0A,
+ /* RLE: 037 Pixels @ 048,135*/ 37, 0x00,
+ /* ABS: 002 Pixels @ 085,135*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 007 Pixels @ 087,135*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 094,135*/ 0, 2, 0x04, 0x04,
+ /* RLE: 039 Pixels @ 096,135*/ 39, 0x00,
+ /* ABS: 003 Pixels @ 135,135*/ 0, 3, 0x0A, 0x00, 0x07,
+ /* RLE: 022 Pixels @ 138,135*/ 22, 0x10,
+ /* RLE: 001 Pixels @ 160,135*/ 1, 0x07,
+ /* RLE: 034 Pixels @ 161,135*/ 34, 0x05,
+ /* RLE: 004 Pixels @ 195,135*/ 4, 0x09,
+ /* RLE: 006 Pixels @ 199,135*/ 6, 0x00,
+ /* ABS: 003 Pixels @ 205,135*/ 0, 3, 0x03, 0x0B, 0x06,
+ /* RLE: 004 Pixels @ 208,135*/ 4, 0x07,
+ /* ABS: 004 Pixels @ 212,135*/ 0, 4, 0x11, 0x12, 0x00, 0x03,
+ /* RLE: 092 Pixels @ 216,135*/ 92, 0x00,
+ /* ABS: 004 Pixels @ 308,135*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 312,135*/ 18, 0x00,
+ /* RLE: 004 Pixels @ 330,135*/ 4, 0x06,
+ /* RLE: 037 Pixels @ 334,135*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 371,135*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 373,135*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 382,135*/ 0, 2, 0x04, 0x04,
+ /* RLE: 004 Pixels @ 384,135*/ 4, 0x01,
+ /* ABS: 011 Pixels @ 000,136*/ 0, 11, 0x07, 0x06, 0x06, 0x0A, 0x03, 0x19, 0x05, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 026 Pixels @ 011,136*/ 26, 0x02,
+ /* RLE: 001 Pixels @ 037,136*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 038,136*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 044,136*/ 1, 0x04,
+ /* RLE: 040 Pixels @ 045,136*/ 40, 0x00,
+ /* ABS: 003 Pixels @ 085,136*/ 0, 3, 0x0A, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 088,136*/ 7, 0x03,
+ /* ABS: 003 Pixels @ 095,136*/ 0, 3, 0x04, 0x04, 0x0A,
+ /* RLE: 036 Pixels @ 098,136*/ 36, 0x00,
+ /* ABS: 005 Pixels @ 134,136*/ 0, 5, 0x0A, 0x00, 0x07, 0x10, 0x10,
+ /* RLE: 020 Pixels @ 139,136*/ 20, 0x07,
+ /* ABS: 003 Pixels @ 159,136*/ 0, 3, 0x10, 0x10, 0x07,
+ /* RLE: 030 Pixels @ 162,136*/ 30, 0x05,
+ /* RLE: 003 Pixels @ 192,136*/ 3, 0x09,
+ /* RLE: 010 Pixels @ 195,136*/ 10, 0x00,
+ /* ABS: 006 Pixels @ 205,136*/ 0, 6, 0x03, 0x12, 0x11, 0x12, 0x0B, 0x0A,
+ /* RLE: 004 Pixels @ 211,136*/ 4, 0x03,
+ /* RLE: 094 Pixels @ 215,136*/ 94, 0x00,
+ /* ABS: 004 Pixels @ 309,136*/ 0, 4, 0x0D, 0x03, 0x03, 0x06,
+ /* RLE: 018 Pixels @ 313,136*/ 18, 0x00,
+ /* RLE: 004 Pixels @ 331,136*/ 4, 0x06,
+ /* RLE: 037 Pixels @ 335,136*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 372,136*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 374,136*/ 9, 0x03,
+ /* ABS: 009 Pixels @ 383,136*/ 0, 9, 0x04, 0x04, 0x01, 0x01, 0x01, 0x0D, 0x0A, 0x0B, 0x07,
+ /* RLE: 004 Pixels @ 004,137*/ 4, 0x00,
+ /* ABS: 005 Pixels @ 008,137*/ 0, 5, 0x19, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 024 Pixels @ 013,137*/ 24, 0x02,
+ /* RLE: 001 Pixels @ 037,137*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 038,137*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 044,137*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 041 Pixels @ 046,137*/ 41, 0x00,
+ /* ABS: 002 Pixels @ 087,137*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 007 Pixels @ 089,137*/ 7, 0x03,
+ /* ABS: 003 Pixels @ 096,137*/ 0, 3, 0x04, 0x04, 0x0A,
+ /* RLE: 036 Pixels @ 099,137*/ 36, 0x00,
+ /* ABS: 004 Pixels @ 135,137*/ 0, 4, 0x0A, 0x07, 0x10, 0x07,
+ /* RLE: 020 Pixels @ 139,137*/ 20, 0x10,
+ /* ABS: 003 Pixels @ 159,137*/ 0, 3, 0x07, 0x10, 0x07,
+ /* RLE: 026 Pixels @ 162,137*/ 26, 0x05,
+ /* RLE: 004 Pixels @ 188,137*/ 4, 0x09,
+ /* RLE: 014 Pixels @ 192,137*/ 14, 0x00,
+ /* RLE: 004 Pixels @ 206,137*/ 4, 0x03,
+ /* ABS: 005 Pixels @ 210,137*/ 0, 5, 0x00, 0x0A, 0x03, 0x03, 0x03,
+ /* RLE: 095 Pixels @ 215,137*/ 95, 0x00,
+ /* ABS: 004 Pixels @ 310,137*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 314,137*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 332,137*/ 0, 4, 0x06, 0x06, 0x03, 0x06,
+ /* RLE: 037 Pixels @ 336,137*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 373,137*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 375,137*/ 9, 0x03,
+ /* ABS: 019 Pixels @ 384,137*/ 0, 19, 0x04, 0x04, 0x01, 0x01, 0x0A, 0x03, 0x0A, 0x07, 0x0A, 0x03, 0x0B, 0x0A, 0x03, 0x03, 0x1A, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 022 Pixels @ 015,138*/ 22, 0x02,
+ /* RLE: 001 Pixels @ 037,138*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 038,138*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 044,138*/ 1, 0x04,
+ /* RLE: 042 Pixels @ 045,138*/ 42, 0x00,
+ /* ABS: 002 Pixels @ 087,138*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 008 Pixels @ 089,138*/ 8, 0x03,
+ /* ABS: 004 Pixels @ 097,138*/ 0, 4, 0x04, 0x00, 0x00, 0x0A,
+ /* RLE: 032 Pixels @ 101,138*/ 32, 0x00,
+ /* ABS: 006 Pixels @ 133,138*/ 0, 6, 0x0A, 0x00, 0x00, 0x07, 0x10, 0x07,
+ /* RLE: 020 Pixels @ 139,138*/ 20, 0x10,
+ /* ABS: 003 Pixels @ 159,138*/ 0, 3, 0x07, 0x10, 0x07,
+ /* RLE: 022 Pixels @ 162,138*/ 22, 0x05,
+ /* RLE: 004 Pixels @ 184,138*/ 4, 0x09,
+ /* RLE: 017 Pixels @ 188,138*/ 17, 0x00,
+ /* ABS: 011 Pixels @ 205,138*/ 0, 11, 0x03, 0x03, 0x0B, 0x06, 0x0F, 0x07, 0x07, 0x03, 0x04, 0x0A, 0x03,
+ /* RLE: 095 Pixels @ 216,138*/ 95, 0x00,
+ /* ABS: 005 Pixels @ 311,138*/ 0, 5, 0x0D, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 017 Pixels @ 316,138*/ 17, 0x00,
+ /* ABS: 005 Pixels @ 333,138*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 036 Pixels @ 338,138*/ 36, 0x01,
+ /* ABS: 002 Pixels @ 374,138*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 376,138*/ 9, 0x03,
+ /* ABS: 020 Pixels @ 385,138*/ 0, 20, 0x04, 0x04, 0x01, 0x03, 0x03, 0x06, 0x0F, 0x03, 0x06, 0x11, 0x11, 0x11, 0x00, 0x00, 0x19, 0x03, 0x03, 0x03, 0x0B, 0x09,
+ /* RLE: 020 Pixels @ 017,139*/ 20, 0x02,
+ /* RLE: 001 Pixels @ 037,139*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 038,139*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 044,139*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 041 Pixels @ 047,139*/ 41, 0x00,
+ /* ABS: 002 Pixels @ 088,139*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 007 Pixels @ 090,139*/ 7, 0x03,
+ /* ABS: 003 Pixels @ 097,139*/ 0, 3, 0x04, 0x04, 0x0A,
+ /* RLE: 034 Pixels @ 100,139*/ 34, 0x00,
+ /* ABS: 008 Pixels @ 134,139*/ 0, 8, 0x0A, 0x00, 0x07, 0x10, 0x07, 0x10, 0x10, 0x07,
+ /* RLE: 005 Pixels @ 142,139*/ 5, 0x10,
+ /* RLE: 003 Pixels @ 147,139*/ 3, 0x07,
+ /* RLE: 003 Pixels @ 150,139*/ 3, 0x10,
+ /* RLE: 004 Pixels @ 153,139*/ 4, 0x07,
+ /* ABS: 005 Pixels @ 157,139*/ 0, 5, 0x10, 0x10, 0x07, 0x10, 0x07,
+ /* RLE: 018 Pixels @ 162,139*/ 18, 0x05,
+ /* RLE: 004 Pixels @ 180,139*/ 4, 0x09,
+ /* RLE: 022 Pixels @ 184,139*/ 22, 0x00,
+ /* ABS: 010 Pixels @ 206,139*/ 0, 10, 0x04, 0x07, 0x11, 0x0E, 0x0B, 0x00, 0x03, 0x12, 0x0B, 0x03,
+ /* RLE: 096 Pixels @ 216,139*/ 96, 0x00,
+ /* ABS: 005 Pixels @ 312,139*/ 0, 5, 0x0D, 0x06, 0x06, 0x0D, 0x06,
+ /* RLE: 017 Pixels @ 317,139*/ 17, 0x00,
+ /* ABS: 005 Pixels @ 334,139*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 036 Pixels @ 339,139*/ 36, 0x01,
+ /* RLE: 003 Pixels @ 375,139*/ 3, 0x04,
+ /* RLE: 008 Pixels @ 378,139*/ 8, 0x03,
+ /* ABS: 021 Pixels @ 386,139*/ 0, 21, 0x04, 0x04, 0x03, 0x00, 0x07, 0x0B, 0x03, 0x11, 0x0D, 0x03, 0x12, 0x12, 0x03, 0x03, 0x0A, 0x0F, 0x04, 0x19, 0x09, 0x09, 0x09,
+ /* RLE: 018 Pixels @ 019,140*/ 18, 0x02,
+ /* RLE: 001 Pixels @ 037,140*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 038,140*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 045,140*/ 1, 0x0A,
+ /* RLE: 042 Pixels @ 046,140*/ 42, 0x00,
+ /* ABS: 003 Pixels @ 088,140*/ 0, 3, 0x0A, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 091,140*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 098,140*/ 0, 2, 0x04, 0x04,
+ /* RLE: 033 Pixels @ 100,140*/ 33, 0x00,
+ /* ABS: 009 Pixels @ 133,140*/ 0, 9, 0x0A, 0x00, 0x00, 0x07, 0x10, 0x07, 0x10, 0x10, 0x07,
+ /* RLE: 004 Pixels @ 142,140*/ 4, 0x10,
+ /* ABS: 008 Pixels @ 146,140*/ 0, 8, 0x07, 0x10, 0x10, 0x10, 0x07, 0x10, 0x10, 0x07,
+ /* RLE: 005 Pixels @ 154,140*/ 5, 0x10,
+ /* ABS: 003 Pixels @ 159,140*/ 0, 3, 0x07, 0x10, 0x07,
+ /* RLE: 015 Pixels @ 162,140*/ 15, 0x05,
+ /* RLE: 003 Pixels @ 177,140*/ 3, 0x09,
+ /* RLE: 025 Pixels @ 180,140*/ 25, 0x00,
+ /* ABS: 003 Pixels @ 205,140*/ 0, 3, 0x03, 0x0E, 0x0D,
+ /* RLE: 006 Pixels @ 208,140*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 214,140*/ 0, 2, 0x00, 0x03,
+ /* RLE: 097 Pixels @ 216,140*/ 97, 0x00,
+ /* ABS: 005 Pixels @ 313,140*/ 0, 5, 0x0D, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 017 Pixels @ 318,140*/ 17, 0x00,
+ /* RLE: 005 Pixels @ 335,140*/ 5, 0x06,
+ /* RLE: 037 Pixels @ 340,140*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 377,140*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 379,140*/ 10, 0x03,
+ /* ABS: 020 Pixels @ 001,141*/ 0, 20, 0x06, 0x0F, 0x03, 0x00, 0x0A, 0x07, 0x0D, 0x0A, 0x0A, 0x03, 0x0E, 0x07, 0x11, 0x03, 0x03, 0x00, 0x1A, 0x09, 0x09, 0x09,
+ /* RLE: 017 Pixels @ 021,141*/ 17, 0x02,
+ /* RLE: 001 Pixels @ 038,141*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 039,141*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 045,141*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 043 Pixels @ 047,141*/ 43, 0x00,
+ /* ABS: 002 Pixels @ 090,141*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 092,141*/ 7, 0x03,
+ /* ABS: 004 Pixels @ 099,141*/ 0, 4, 0x04, 0x04, 0x00, 0x0A,
+ /* RLE: 026 Pixels @ 103,141*/ 26, 0x00,
+ /* ABS: 013 Pixels @ 129,141*/ 0, 13, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A, 0x09, 0x07, 0x10, 0x07, 0x10, 0x10, 0x07,
+ /* RLE: 004 Pixels @ 142,141*/ 4, 0x10,
+ /* ABS: 006 Pixels @ 146,141*/ 0, 6, 0x07, 0x10, 0x10, 0x10, 0x07, 0x10,
+ /* RLE: 004 Pixels @ 152,141*/ 4, 0x07,
+ /* RLE: 003 Pixels @ 156,141*/ 3, 0x10,
+ /* ABS: 003 Pixels @ 159,141*/ 0, 3, 0x07, 0x10, 0x07,
+ /* RLE: 011 Pixels @ 162,141*/ 11, 0x05,
+ /* RLE: 004 Pixels @ 173,141*/ 4, 0x09,
+ /* RLE: 028 Pixels @ 177,141*/ 28, 0x00,
+ /* ABS: 011 Pixels @ 205,141*/ 0, 11, 0x03, 0x0A, 0x11, 0x03, 0x03, 0x00, 0x0B, 0x0B, 0x04, 0x07, 0x03,
+ /* RLE: 099 Pixels @ 216,141*/ 99, 0x00,
+ /* ABS: 004 Pixels @ 315,141*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 319,141*/ 18, 0x00,
+ /* RLE: 004 Pixels @ 337,141*/ 4, 0x06,
+ /* RLE: 037 Pixels @ 341,141*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 378,141*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 380,141*/ 8, 0x03,
+ /* ABS: 023 Pixels @ 000,142*/ 0, 23, 0x00, 0x00, 0x04, 0x03, 0x07, 0x0B, 0x00, 0x0F, 0x0D, 0x03, 0x03, 0x0B, 0x07, 0x07, 0x04, 0x06, 0x00, 0x03, 0x03, 0x1A, 0x09, 0x09, 0x09,
+ /* RLE: 015 Pixels @ 023,142*/ 15, 0x02,
+ /* RLE: 001 Pixels @ 038,142*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 039,142*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 045,142*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 046,142*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 091,142*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 092,142*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 100,142*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 018 Pixels @ 102,142*/ 18, 0x00,
+ /* RLE: 001 Pixels @ 120,142*/ 1, 0x0A,
+ /* RLE: 004 Pixels @ 121,142*/ 4, 0x00,
+ /* ABS: 006 Pixels @ 125,142*/ 0, 6, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 131,142*/ 4, 0x09,
+ /* ABS: 007 Pixels @ 135,142*/ 0, 7, 0x05, 0x07, 0x10, 0x07, 0x10, 0x10, 0x07,
+ /* RLE: 005 Pixels @ 142,142*/ 5, 0x10,
+ /* RLE: 003 Pixels @ 147,142*/ 3, 0x07,
+ /* ABS: 012 Pixels @ 150,142*/ 0, 12, 0x10, 0x10, 0x07, 0x10, 0x10, 0x10, 0x07, 0x10, 0x10, 0x07, 0x10, 0x07,
+ /* RLE: 007 Pixels @ 162,142*/ 7, 0x05,
+ /* RLE: 004 Pixels @ 169,142*/ 4, 0x09,
+ /* RLE: 033 Pixels @ 173,142*/ 33, 0x00,
+ /* ABS: 002 Pixels @ 206,142*/ 0, 2, 0x03, 0x06,
+ /* RLE: 004 Pixels @ 208,142*/ 4, 0x07,
+ /* ABS: 004 Pixels @ 212,142*/ 0, 4, 0x06, 0x03, 0x00, 0x03,
+ /* RLE: 100 Pixels @ 216,142*/ 100, 0x00,
+ /* ABS: 004 Pixels @ 316,142*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 320,142*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 338,142*/ 0, 4, 0x06, 0x06, 0x03, 0x06,
+ /* RLE: 037 Pixels @ 342,142*/ 37, 0x01,
+ /* ABS: 002 Pixels @ 379,142*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 381,142*/ 7, 0x03,
+ /* ABS: 022 Pixels @ 000,143*/ 0, 22, 0x0A, 0x0A, 0x04, 0x03, 0x0E, 0x0F, 0x0B, 0x06, 0x0F, 0x03, 0x03, 0x11, 0x11, 0x00, 0x0B, 0x07, 0x11, 0x11, 0x00, 0x00, 0x15, 0x19,
+ /* RLE: 004 Pixels @ 022,143*/ 4, 0x09,
+ /* RLE: 012 Pixels @ 026,143*/ 12, 0x02,
+ /* RLE: 001 Pixels @ 038,143*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 039,143*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 045,143*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 045 Pixels @ 047,143*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 092,143*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 093,143*/ 8, 0x03,
+ /* RLE: 001 Pixels @ 101,143*/ 1, 0x04,
+ /* RLE: 017 Pixels @ 102,143*/ 17, 0x00,
+ /* ABS: 008 Pixels @ 119,143*/ 0, 8, 0x0A, 0x00, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 127,143*/ 4, 0x09,
+ /* RLE: 005 Pixels @ 131,143*/ 5, 0x05,
+ /* ABS: 006 Pixels @ 136,143*/ 0, 6, 0x07, 0x10, 0x07, 0x10, 0x10, 0x07,
+ /* RLE: 004 Pixels @ 142,143*/ 4, 0x10,
+ /* ABS: 005 Pixels @ 146,143*/ 0, 5, 0x07, 0x10, 0x10, 0x10, 0x07,
+ /* RLE: 005 Pixels @ 151,143*/ 5, 0x10,
+ /* ABS: 009 Pixels @ 156,143*/ 0, 9, 0x07, 0x10, 0x10, 0x07, 0x10, 0x07, 0x05, 0x05, 0x05,
+ /* RLE: 004 Pixels @ 165,143*/ 4, 0x09,
+ /* RLE: 037 Pixels @ 169,143*/ 37, 0x00,
+ /* ABS: 005 Pixels @ 206,143*/ 0, 5, 0x03, 0x06, 0x12, 0x0B, 0x0A,
+ /* RLE: 005 Pixels @ 211,143*/ 5, 0x03,
+ /* RLE: 101 Pixels @ 216,143*/ 101, 0x00,
+ /* ABS: 004 Pixels @ 317,143*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 321,143*/ 18, 0x00,
+ /* ABS: 005 Pixels @ 339,143*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 036 Pixels @ 344,143*/ 36, 0x01,
+ /* ABS: 002 Pixels @ 380,143*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 382,143*/ 6, 0x03,
+ /* RLE: 003 Pixels @ 000,144*/ 3, 0x02,
+ /* ABS: 025 Pixels @ 003,144*/ 0, 25, 0x04, 0x03, 0x0A, 0x12, 0x06, 0x04, 0x03, 0x04, 0x07, 0x04, 0x03, 0x0F, 0x0D, 0x04, 0x12, 0x03, 0x0A, 0x00, 0x03, 0x03, 0x1A, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 010 Pixels @ 028,144*/ 10, 0x02,
+ /* RLE: 001 Pixels @ 038,144*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 039,144*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 045,144*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 046,144*/ 45, 0x00,
+ /* ABS: 003 Pixels @ 091,144*/ 0, 3, 0x0A, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 094,144*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 101,144*/ 1, 0x04,
+ /* RLE: 016 Pixels @ 102,144*/ 16, 0x00,
+ /* ABS: 005 Pixels @ 118,144*/ 0, 5, 0x0A, 0x00, 0x00, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 123,144*/ 4, 0x09,
+ /* RLE: 009 Pixels @ 127,144*/ 9, 0x05,
+ /* ABS: 006 Pixels @ 136,144*/ 0, 6, 0x07, 0x10, 0x07, 0x10, 0x10, 0x07,
+ /* RLE: 004 Pixels @ 142,144*/ 4, 0x10,
+ /* ABS: 019 Pixels @ 146,144*/ 0, 19, 0x07, 0x10, 0x10, 0x10, 0x07, 0x10, 0x07, 0x10, 0x10, 0x10, 0x07, 0x10, 0x10, 0x07, 0x10, 0x07, 0x09, 0x09, 0x09,
+ /* RLE: 042 Pixels @ 165,144*/ 42, 0x00,
+ /* RLE: 006 Pixels @ 207,144*/ 6, 0x03,
+ /* ABS: 004 Pixels @ 213,144*/ 0, 4, 0x00, 0x0B, 0x12, 0x03,
+ /* RLE: 101 Pixels @ 217,144*/ 101, 0x00,
+ /* ABS: 005 Pixels @ 318,144*/ 0, 5, 0x0D, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 017 Pixels @ 323,144*/ 17, 0x00,
+ /* ABS: 005 Pixels @ 340,144*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 036 Pixels @ 345,144*/ 36, 0x01,
+ /* ABS: 002 Pixels @ 381,144*/ 0, 2, 0x04, 0x04,
+ /* RLE: 005 Pixels @ 383,144*/ 5, 0x03,
+ /* RLE: 004 Pixels @ 000,145*/ 4, 0x02,
+ /* ABS: 002 Pixels @ 004,145*/ 0, 2, 0x00, 0x00,
+ /* RLE: 004 Pixels @ 006,145*/ 4, 0x03,
+ /* ABS: 020 Pixels @ 010,145*/ 0, 20, 0x12, 0x11, 0x03, 0x0B, 0x07, 0x0A, 0x03, 0x03, 0x04, 0x07, 0x07, 0x11, 0x00, 0x03, 0x05, 0x05, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 008 Pixels @ 030,145*/ 8, 0x02,
+ /* RLE: 001 Pixels @ 038,145*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 039,145*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 045,145*/ 0, 3, 0x04, 0x00, 0x0A,
+ /* RLE: 045 Pixels @ 048,145*/ 45, 0x00,
+ /* ABS: 002 Pixels @ 093,145*/ 0, 2, 0x0A, 0x04,
+ /* RLE: 006 Pixels @ 095,145*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 101,145*/ 1, 0x04,
+ /* RLE: 012 Pixels @ 102,145*/ 12, 0x00,
+ /* ABS: 009 Pixels @ 114,145*/ 0, 9, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A, 0x09, 0x09, 0x09,
+ /* RLE: 013 Pixels @ 123,145*/ 13, 0x05,
+ /* ABS: 005 Pixels @ 136,145*/ 0, 5, 0x07, 0x10, 0x07, 0x10, 0x10,
+ /* RLE: 005 Pixels @ 141,145*/ 5, 0x07,
+ /* ABS: 016 Pixels @ 146,145*/ 0, 16, 0x10, 0x07, 0x07, 0x07, 0x10, 0x10, 0x10, 0x07, 0x07, 0x07, 0x10, 0x10, 0x10, 0x07, 0x10, 0x07,
+ /* RLE: 045 Pixels @ 162,145*/ 45, 0x00,
+ /* ABS: 009 Pixels @ 207,145*/ 0, 9, 0x03, 0x00, 0x0B, 0x12, 0x11, 0x07, 0x07, 0x07, 0x11,
+ /* RLE: 103 Pixels @ 216,145*/ 103, 0x00,
+ /* ABS: 005 Pixels @ 319,145*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 017 Pixels @ 324,145*/ 17, 0x00,
+ /* RLE: 005 Pixels @ 341,145*/ 5, 0x06,
+ /* RLE: 036 Pixels @ 346,145*/ 36, 0x01,
+ /* RLE: 003 Pixels @ 382,145*/ 3, 0x04,
+ /* RLE: 003 Pixels @ 385,145*/ 3, 0x03,
+ /* RLE: 007 Pixels @ 000,146*/ 7, 0x02,
+ /* ABS: 025 Pixels @ 007,146*/ 0, 25, 0x09, 0x09, 0x03, 0x0E, 0x07, 0x0B, 0x0F, 0x06, 0x03, 0x03, 0x03, 0x00, 0x03, 0x03, 0x12, 0x11, 0x03, 0x19, 0x00, 0x00, 0x19, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 006 Pixels @ 032,146*/ 6, 0x02,
+ /* RLE: 001 Pixels @ 038,146*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 039,146*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 046,146*/ 1, 0x0A,
+ /* RLE: 046 Pixels @ 047,146*/ 46, 0x00,
+ /* ABS: 003 Pixels @ 093,146*/ 0, 3, 0x0A, 0x04, 0x04,
+ /* RLE: 005 Pixels @ 096,146*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 101,146*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 102,146*/ 8, 0x00,
+ /* ABS: 006 Pixels @ 110,146*/ 0, 6, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 116,146*/ 4, 0x09,
+ /* RLE: 016 Pixels @ 120,146*/ 16, 0x05,
+ /* ABS: 003 Pixels @ 136,146*/ 0, 3, 0x07, 0x10, 0x07,
+ /* RLE: 020 Pixels @ 139,146*/ 20, 0x10,
+ /* ABS: 003 Pixels @ 159,146*/ 0, 3, 0x07, 0x10, 0x07,
+ /* RLE: 045 Pixels @ 162,146*/ 45, 0x00,
+ /* ABS: 010 Pixels @ 207,146*/ 0, 10, 0x03, 0x12, 0x07, 0x11, 0x12, 0x0B, 0x00, 0x03, 0x03, 0x03,
+ /* RLE: 103 Pixels @ 217,146*/ 103, 0x00,
+ /* ABS: 005 Pixels @ 320,146*/ 0, 5, 0x0D, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 325,146*/ 18, 0x00,
+ /* RLE: 004 Pixels @ 343,146*/ 4, 0x06,
+ /* RLE: 038 Pixels @ 347,146*/ 38, 0x01,
+ /* RLE: 003 Pixels @ 385,146*/ 3, 0x04,
+ /* RLE: 009 Pixels @ 000,147*/ 9, 0x02,
+ /* ABS: 025 Pixels @ 009,147*/ 0, 25, 0x04, 0x03, 0x0A, 0x00, 0x06, 0x0A, 0x03, 0x03, 0x0D, 0x07, 0x07, 0x06, 0x0F, 0x06, 0x03, 0x03, 0x0B, 0x0A, 0x03, 0x03, 0x1A, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 005 Pixels @ 034,147*/ 5, 0x02,
+ /* RLE: 001 Pixels @ 039,147*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 040,147*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 046,147*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 047 Pixels @ 048,147*/ 47, 0x00,
+ /* ABS: 017 Pixels @ 095,147*/ 0, 17, 0x04, 0x04, 0x03, 0x03, 0x03, 0x04, 0x04, 0x00, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 112,147*/ 4, 0x09,
+ /* RLE: 020 Pixels @ 116,147*/ 20, 0x05,
+ /* ABS: 003 Pixels @ 136,147*/ 0, 3, 0x07, 0x10, 0x07,
+ /* RLE: 020 Pixels @ 139,147*/ 20, 0x10,
+ /* ABS: 003 Pixels @ 159,147*/ 0, 3, 0x07, 0x10, 0x07,
+ /* RLE: 045 Pixels @ 162,147*/ 45, 0x00,
+ /* ABS: 010 Pixels @ 207,147*/ 0, 10, 0x03, 0x00, 0x03, 0x03, 0x00, 0x04, 0x00, 0x03, 0x03, 0x04,
+ /* RLE: 105 Pixels @ 217,147*/ 105, 0x00,
+ /* ABS: 004 Pixels @ 322,147*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 326,147*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 344,147*/ 0, 4, 0x06, 0x06, 0x03, 0x06,
+ /* RLE: 040 Pixels @ 348,147*/ 40, 0x01,
+ /* RLE: 010 Pixels @ 000,148*/ 10, 0x02,
+ /* ABS: 030 Pixels @ 010,148*/ 0, 30, 0x00, 0x04, 0x03, 0x00, 0x00, 0x15, 0x00, 0x07, 0x0B, 0x03, 0x0B, 0x07, 0x0A, 0x03, 0x06, 0x11, 0x11, 0x11, 0x00, 0x00, 0x05, 0x05, 0x05, 0x09, 0x09, 0x09, 0x02, 0x02, 0x02, 0x04,
+ /* RLE: 006 Pixels @ 040,148*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 046,148*/ 1, 0x04,
+ /* RLE: 048 Pixels @ 047,148*/ 48, 0x00,
+ /* ABS: 013 Pixels @ 095,148*/ 0, 13, 0x04, 0x0A, 0x04, 0x0A, 0x04, 0x04, 0x00, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 108,148*/ 4, 0x09,
+ /* RLE: 024 Pixels @ 112,148*/ 24, 0x05,
+ /* ABS: 003 Pixels @ 136,148*/ 0, 3, 0x07, 0x10, 0x10,
+ /* RLE: 020 Pixels @ 139,148*/ 20, 0x07,
+ /* ABS: 003 Pixels @ 159,148*/ 0, 3, 0x10, 0x10, 0x07,
+ /* RLE: 045 Pixels @ 162,148*/ 45, 0x00,
+ /* ABS: 010 Pixels @ 207,148*/ 0, 10, 0x03, 0x00, 0x0D, 0x03, 0x11, 0x07, 0x0F, 0x03, 0x03, 0x04,
+ /* RLE: 106 Pixels @ 217,148*/ 106, 0x00,
+ /* ABS: 004 Pixels @ 323,148*/ 0, 4, 0x0D, 0x0D, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 327,148*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 345,148*/ 0, 4, 0x06, 0x06, 0x03, 0x06,
+ /* RLE: 039 Pixels @ 349,148*/ 39, 0x01,
+ /* RLE: 013 Pixels @ 000,149*/ 13, 0x02,
+ /* ABS: 027 Pixels @ 013,149*/ 0, 27, 0x09, 0x09, 0x06, 0x03, 0x06, 0x11, 0x0B, 0x0F, 0x11, 0x03, 0x03, 0x11, 0x0D, 0x03, 0x12, 0x12, 0x03, 0x15, 0x00, 0x19, 0x05, 0x05, 0x09, 0x09, 0x09, 0x02, 0x04,
+ /* RLE: 006 Pixels @ 040,149*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 046,149*/ 0, 2, 0x04, 0x0A,
+ /* RLE: 048 Pixels @ 048,149*/ 48, 0x00,
+ /* ABS: 008 Pixels @ 096,149*/ 0, 8, 0x0A, 0x00, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 104,149*/ 4, 0x09,
+ /* RLE: 029 Pixels @ 108,149*/ 29, 0x05,
+ /* RLE: 001 Pixels @ 137,149*/ 1, 0x07,
+ /* RLE: 022 Pixels @ 138,149*/ 22, 0x10,
+ /* RLE: 001 Pixels @ 160,149*/ 1, 0x07,
+ /* RLE: 047 Pixels @ 161,149*/ 47, 0x00,
+ /* ABS: 009 Pixels @ 208,149*/ 0, 9, 0x0B, 0x11, 0x00, 0x07, 0x04, 0x0D, 0x04, 0x03, 0x04,
+ /* RLE: 107 Pixels @ 217,149*/ 107, 0x00,
+ /* ABS: 004 Pixels @ 324,149*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 328,149*/ 18, 0x00,
+ /* ABS: 005 Pixels @ 346,149*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 037 Pixels @ 351,149*/ 37, 0x01,
+ /* RLE: 015 Pixels @ 000,150*/ 15, 0x02,
+ /* ABS: 025 Pixels @ 015,150*/ 0, 25, 0x09, 0x00, 0x03, 0x0A, 0x0A, 0x07, 0x04, 0x03, 0x00, 0x0A, 0x07, 0x0D, 0x0A, 0x0A, 0x03, 0x0B, 0x0A, 0x03, 0x03, 0x1A, 0x05, 0x05, 0x09, 0x09, 0x09,
+ /* RLE: 006 Pixels @ 040,150*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 046,150*/ 1, 0x04,
+ /* RLE: 048 Pixels @ 047,150*/ 48, 0x00,
+ /* ABS: 005 Pixels @ 095,150*/ 0, 5, 0x0A, 0x00, 0x00, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 100,150*/ 4, 0x09,
+ /* RLE: 034 Pixels @ 104,150*/ 34, 0x05,
+ /* RLE: 022 Pixels @ 138,150*/ 22, 0x07,
+ /* RLE: 047 Pixels @ 160,150*/ 47, 0x00,
+ /* ABS: 010 Pixels @ 207,150*/ 0, 10, 0x03, 0x0B, 0x0B, 0x0A, 0x07, 0x00, 0x12, 0x0B, 0x03, 0x04,
+ /* RLE: 108 Pixels @ 217,150*/ 108, 0x00,
+ /* ABS: 004 Pixels @ 325,150*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 018 Pixels @ 329,150*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 347,150*/ 5, 0x06,
+ /* RLE: 036 Pixels @ 352,150*/ 36, 0x01,
+ /* RLE: 017 Pixels @ 000,151*/ 17, 0x02,
+ /* ABS: 023 Pixels @ 017,151*/ 0, 23, 0x18, 0x0A, 0x03, 0x00, 0x00, 0x03, 0x07, 0x0B, 0x00, 0x0F, 0x0D, 0x03, 0x06, 0x11, 0x11, 0x11, 0x00, 0x00, 0x1A, 0x15, 0x15, 0x19, 0x09,
+ /* RLE: 006 Pixels @ 040,151*/ 6, 0x03,
+ /* ABS: 004 Pixels @ 046,151*/ 0, 4, 0x04, 0x00, 0x00, 0x0A,
+ /* RLE: 041 Pixels @ 050,151*/ 41, 0x00,
+ /* ABS: 009 Pixels @ 091,151*/ 0, 9, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A, 0x09, 0x09, 0x09,
+ /* RLE: 035 Pixels @ 100,151*/ 35, 0x05,
+ /* RLE: 004 Pixels @ 135,151*/ 4, 0x09,
+ /* RLE: 068 Pixels @ 139,151*/ 68, 0x00,
+ /* ABS: 010 Pixels @ 207,151*/ 0, 10, 0x03, 0x04, 0x11, 0x04, 0x07, 0x0A, 0x0F, 0x04, 0x03, 0x03,
+ /* RLE: 109 Pixels @ 217,151*/ 109, 0x00,
+ /* ABS: 005 Pixels @ 326,151*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 017 Pixels @ 331,151*/ 17, 0x00,
+ /* RLE: 005 Pixels @ 348,151*/ 5, 0x06,
+ /* RLE: 035 Pixels @ 353,151*/ 35, 0x01,
+ /* RLE: 019 Pixels @ 000,152*/ 19, 0x02,
+ /* ABS: 022 Pixels @ 019,152*/ 0, 22, 0x18, 0x0E, 0x0B, 0x03, 0x0E, 0x0F, 0x04, 0x06, 0x0F, 0x03, 0x11, 0x0D, 0x03, 0x12, 0x12, 0x03, 0x03, 0x00, 0x00, 0x03, 0x03, 0x1A,
+ /* RLE: 006 Pixels @ 041,152*/ 6, 0x03,
+ /* ABS: 013 Pixels @ 047,152*/ 0, 13, 0x00, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A,
+ /* RLE: 027 Pixels @ 060,152*/ 27, 0x00,
+ /* ABS: 006 Pixels @ 087,152*/ 0, 6, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 093,152*/ 4, 0x09,
+ /* RLE: 034 Pixels @ 097,152*/ 34, 0x05,
+ /* RLE: 004 Pixels @ 131,152*/ 4, 0x09,
+ /* RLE: 073 Pixels @ 135,152*/ 73, 0x00,
+ /* ABS: 010 Pixels @ 208,152*/ 0, 10, 0x03, 0x0D, 0x07, 0x0F, 0x03, 0x04, 0x03, 0x03, 0x03, 0x04,
+ /* RLE: 109 Pixels @ 218,152*/ 109, 0x00,
+ /* ABS: 005 Pixels @ 327,152*/ 0, 5, 0x0D, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 332,152*/ 18, 0x00,
+ /* RLE: 004 Pixels @ 350,152*/ 4, 0x06,
+ /* RLE: 034 Pixels @ 354,152*/ 34, 0x01,
+ /* RLE: 022 Pixels @ 000,153*/ 22, 0x02,
+ /* ABS: 021 Pixels @ 022,153*/ 0, 21, 0x04, 0x03, 0x04, 0x12, 0x06, 0x04, 0x00, 0x0A, 0x07, 0x0D, 0x0A, 0x0A, 0x03, 0x0E, 0x07, 0x07, 0x0D, 0x00, 0x00, 0x05, 0x05,
+ /* RLE: 004 Pixels @ 043,153*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 047,153*/ 3, 0x09,
+ /* ABS: 022 Pixels @ 050,153*/ 0, 22, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A,
+ /* RLE: 011 Pixels @ 072,153*/ 11, 0x00,
+ /* ABS: 006 Pixels @ 083,153*/ 0, 6, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 089,153*/ 4, 0x09,
+ /* RLE: 034 Pixels @ 093,153*/ 34, 0x05,
+ /* RLE: 004 Pixels @ 127,153*/ 4, 0x09,
+ /* RLE: 001 Pixels @ 131,153*/ 1, 0x0A,
+ /* RLE: 077 Pixels @ 132,153*/ 77, 0x00,
+ /* ABS: 009 Pixels @ 209,153*/ 0, 9, 0x03, 0x0A, 0x03, 0x00, 0x00, 0x0A, 0x03, 0x03, 0x04,
+ /* RLE: 110 Pixels @ 218,153*/ 110, 0x00,
+ /* ABS: 005 Pixels @ 328,153*/ 0, 5, 0x0D, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 333,153*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 351,153*/ 0, 4, 0x06, 0x03, 0x03, 0x06,
+ /* RLE: 033 Pixels @ 355,153*/ 33, 0x01,
+ /* RLE: 023 Pixels @ 000,154*/ 23, 0x02,
+ /* RLE: 003 Pixels @ 023,154*/ 3, 0x00,
+ /* ABS: 015 Pixels @ 026,154*/ 0, 15, 0x03, 0x03, 0x07, 0x0B, 0x00, 0x0F, 0x0D, 0x03, 0x04, 0x07, 0x0B, 0x03, 0x06, 0x12, 0x03,
+ /* RLE: 009 Pixels @ 041,154*/ 9, 0x05,
+ /* RLE: 012 Pixels @ 050,154*/ 12, 0x09,
+ /* ABS: 023 Pixels @ 062,154*/ 0, 23, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x0A, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 085,154*/ 4, 0x09,
+ /* RLE: 034 Pixels @ 089,154*/ 34, 0x05,
+ /* RLE: 004 Pixels @ 123,154*/ 4, 0x09,
+ /* RLE: 082 Pixels @ 127,154*/ 82, 0x00,
+ /* ABS: 008 Pixels @ 209,154*/ 0, 8, 0x03, 0x03, 0x0E, 0x07, 0x07, 0x07, 0x06, 0x03,
+ /* RLE: 113 Pixels @ 217,154*/ 113, 0x00,
+ /* ABS: 004 Pixels @ 330,154*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 334,154*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 352,154*/ 0, 4, 0x06, 0x06, 0x03, 0x06,
+ /* RLE: 032 Pixels @ 356,154*/ 32, 0x01,
+ /* RLE: 026 Pixels @ 000,155*/ 26, 0x02,
+ /* ABS: 015 Pixels @ 026,155*/ 0, 15, 0x09, 0x03, 0x0E, 0x0F, 0x0B, 0x06, 0x0F, 0x03, 0x06, 0x0F, 0x11, 0x0E, 0x12, 0x06, 0x03,
+ /* RLE: 021 Pixels @ 041,155*/ 21, 0x05,
+ /* RLE: 012 Pixels @ 062,155*/ 12, 0x09,
+ /* ABS: 007 Pixels @ 074,155*/ 0, 7, 0x0A, 0x00, 0x0A, 0x00, 0x0A, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 081,155*/ 4, 0x09,
+ /* RLE: 035 Pixels @ 085,155*/ 35, 0x05,
+ /* RLE: 003 Pixels @ 120,155*/ 3, 0x09,
+ /* RLE: 087 Pixels @ 123,155*/ 87, 0x00,
+ /* ABS: 007 Pixels @ 210,155*/ 0, 7, 0x04, 0x07, 0x0E, 0x0D, 0x0A, 0x0F, 0x04,
+ /* RLE: 114 Pixels @ 217,155*/ 114, 0x00,
+ /* ABS: 004 Pixels @ 331,155*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 018 Pixels @ 335,155*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 353,155*/ 5, 0x06,
+ /* RLE: 030 Pixels @ 358,155*/ 30, 0x01,
+ /* RLE: 027 Pixels @ 000,156*/ 27, 0x02,
+ /* ABS: 014 Pixels @ 027,156*/ 0, 14, 0x00, 0x03, 0x04, 0x12, 0x06, 0x0A, 0x03, 0x06, 0x0E, 0x03, 0x0B, 0x11, 0x0E, 0x03,
+ /* RLE: 033 Pixels @ 041,156*/ 33, 0x05,
+ /* RLE: 007 Pixels @ 074,156*/ 7, 0x09,
+ /* RLE: 035 Pixels @ 081,156*/ 35, 0x05,
+ /* RLE: 004 Pixels @ 116,156*/ 4, 0x09,
+ /* RLE: 089 Pixels @ 120,156*/ 89, 0x00,
+ /* ABS: 009 Pixels @ 209,156*/ 0, 9, 0x03, 0x0B, 0x12, 0x03, 0x07, 0x03, 0x06, 0x0B, 0x03,
+ /* RLE: 114 Pixels @ 218,156*/ 114, 0x00,
+ /* ABS: 004 Pixels @ 332,156*/ 0, 4, 0x0D, 0x0D, 0x03, 0x06,
+ /* RLE: 018 Pixels @ 336,156*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 354,156*/ 5, 0x06,
+ /* RLE: 029 Pixels @ 359,156*/ 29, 0x01,
+ /* RLE: 028 Pixels @ 000,157*/ 28, 0x02,
+ /* ABS: 013 Pixels @ 028,157*/ 0, 13, 0x00, 0x03, 0x03, 0x00, 0x00, 0x03, 0x04, 0x0F, 0x0B, 0x0E, 0x00, 0x03, 0x15,
+ /* RLE: 071 Pixels @ 041,157*/ 71, 0x05,
+ /* RLE: 004 Pixels @ 112,157*/ 4, 0x09,
+ /* RLE: 001 Pixels @ 116,157*/ 1, 0x0A,
+ /* RLE: 092 Pixels @ 117,157*/ 92, 0x00,
+ /* ABS: 010 Pixels @ 209,157*/ 0, 10, 0x03, 0x04, 0x11, 0x0A, 0x06, 0x12, 0x07, 0x00, 0x03, 0x04,
+ /* RLE: 114 Pixels @ 219,157*/ 114, 0x00,
+ /* ABS: 005 Pixels @ 333,157*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 017 Pixels @ 338,157*/ 17, 0x00,
+ /* RLE: 005 Pixels @ 355,157*/ 5, 0x06,
+ /* RLE: 028 Pixels @ 360,157*/ 28, 0x01,
+ /* RLE: 032 Pixels @ 000,158*/ 32, 0x02,
+ /* ABS: 008 Pixels @ 032,158*/ 0, 8, 0x09, 0x0B, 0x03, 0x04, 0x12, 0x06, 0x0A, 0x15,
+ /* RLE: 068 Pixels @ 040,158*/ 68, 0x05,
+ /* RLE: 004 Pixels @ 108,158*/ 4, 0x09,
+ /* RLE: 098 Pixels @ 112,158*/ 98, 0x00,
+ /* ABS: 009 Pixels @ 210,158*/ 0, 9, 0x03, 0x0D, 0x06, 0x0E, 0x0F, 0x04, 0x03, 0x03, 0x04,
+ /* RLE: 115 Pixels @ 219,158*/ 115, 0x00,
+ /* RLE: 001 Pixels @ 334,158*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 335,158*/ 4, 0x06,
+ /* RLE: 018 Pixels @ 339,158*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 357,158*/ 0, 4, 0x06, 0x03, 0x03, 0x06,
+ /* RLE: 027 Pixels @ 361,158*/ 27, 0x01,
+ /* RLE: 034 Pixels @ 000,159*/ 34, 0x02,
+ /* ABS: 006 Pixels @ 034,159*/ 0, 6, 0x0E, 0x00, 0x03, 0x03, 0x03, 0x19,
+ /* RLE: 064 Pixels @ 040,159*/ 64, 0x05,
+ /* RLE: 004 Pixels @ 104,159*/ 4, 0x09,
+ /* RLE: 103 Pixels @ 108,159*/ 103, 0x00,
+ /* ABS: 008 Pixels @ 211,159*/ 0, 8, 0x03, 0x00, 0x00, 0x03, 0x03, 0x0A, 0x03, 0x04,
+ /* RLE: 116 Pixels @ 219,159*/ 116, 0x00,
+ /* ABS: 005 Pixels @ 335,159*/ 0, 5, 0x0D, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 340,159*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 358,159*/ 0, 4, 0x06, 0x06, 0x03, 0x06,
+ /* RLE: 026 Pixels @ 362,159*/ 26, 0x01,
+ /* RLE: 036 Pixels @ 000,160*/ 36, 0x02,
+ /* RLE: 003 Pixels @ 036,160*/ 3, 0x09,
+ /* RLE: 061 Pixels @ 039,160*/ 61, 0x05,
+ /* RLE: 004 Pixels @ 100,160*/ 4, 0x09,
+ /* RLE: 106 Pixels @ 104,160*/ 106, 0x00,
+ /* ABS: 008 Pixels @ 210,160*/ 0, 8, 0x03, 0x00, 0x0B, 0x12, 0x11, 0x07, 0x07, 0x03,
+ /* RLE: 119 Pixels @ 218,160*/ 119, 0x00,
+ /* ABS: 004 Pixels @ 337,160*/ 0, 4, 0x0D, 0x0D, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 341,160*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 359,160*/ 5, 0x06,
+ /* RLE: 024 Pixels @ 364,160*/ 24, 0x01,
+ /* RLE: 038 Pixels @ 000,161*/ 38, 0x02,
+ /* RLE: 003 Pixels @ 038,161*/ 3, 0x09,
+ /* RLE: 056 Pixels @ 041,161*/ 56, 0x05,
+ /* RLE: 003 Pixels @ 097,161*/ 3, 0x09,
+ /* RLE: 110 Pixels @ 100,161*/ 110, 0x00,
+ /* ABS: 009 Pixels @ 210,161*/ 0, 9, 0x03, 0x12, 0x07, 0x11, 0x12, 0x0E, 0x0D, 0x00, 0x03,
+ /* RLE: 119 Pixels @ 219,161*/ 119, 0x00,
+ /* ABS: 004 Pixels @ 338,161*/ 0, 4, 0x0D, 0x03, 0x03, 0x06,
+ /* RLE: 018 Pixels @ 342,161*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 360,161*/ 5, 0x06,
+ /* RLE: 023 Pixels @ 365,161*/ 23, 0x01,
+ /* RLE: 040 Pixels @ 000,162*/ 40, 0x02,
+ /* RLE: 003 Pixels @ 040,162*/ 3, 0x09,
+ /* RLE: 050 Pixels @ 043,162*/ 50, 0x05,
+ /* RLE: 004 Pixels @ 093,162*/ 4, 0x09,
+ /* RLE: 113 Pixels @ 097,162*/ 113, 0x00,
+ /* ABS: 002 Pixels @ 210,162*/ 0, 2, 0x03, 0x00,
+ /* RLE: 004 Pixels @ 212,162*/ 4, 0x03,
+ /* ABS: 004 Pixels @ 216,162*/ 0, 4, 0x0E, 0x0B, 0x03, 0x04,
+ /* RLE: 119 Pixels @ 220,162*/ 119, 0x00,
+ /* ABS: 004 Pixels @ 339,162*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 018 Pixels @ 343,162*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 361,162*/ 5, 0x06,
+ /* RLE: 022 Pixels @ 366,162*/ 22, 0x01,
+ /* RLE: 043 Pixels @ 000,163*/ 43, 0x02,
+ /* RLE: 007 Pixels @ 043,163*/ 7, 0x09,
+ /* RLE: 039 Pixels @ 050,163*/ 39, 0x05,
+ /* RLE: 004 Pixels @ 089,163*/ 4, 0x09,
+ /* RLE: 118 Pixels @ 093,163*/ 118, 0x00,
+ /* RLE: 004 Pixels @ 211,163*/ 4, 0x03,
+ /* ABS: 005 Pixels @ 215,163*/ 0, 5, 0x0A, 0x11, 0x06, 0x03, 0x04,
+ /* RLE: 120 Pixels @ 220,163*/ 120, 0x00,
+ /* RLE: 001 Pixels @ 340,163*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 341,163*/ 4, 0x06,
+ /* RLE: 018 Pixels @ 345,163*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 363,163*/ 0, 4, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 021 Pixels @ 367,163*/ 21, 0x01,
+ /* RLE: 044 Pixels @ 000,164*/ 44, 0x02,
+ /* ABS: 002 Pixels @ 044,164*/ 0, 2, 0x01, 0x04,
+ /* RLE: 004 Pixels @ 046,164*/ 4, 0x00,
+ /* RLE: 012 Pixels @ 050,164*/ 12, 0x09,
+ /* RLE: 023 Pixels @ 062,164*/ 23, 0x05,
+ /* RLE: 004 Pixels @ 085,164*/ 4, 0x09,
+ /* RLE: 122 Pixels @ 089,164*/ 122, 0x00,
+ /* ABS: 009 Pixels @ 211,164*/ 0, 9, 0x03, 0x12, 0x11, 0x07, 0x07, 0x07, 0x0A, 0x03, 0x03,
+ /* RLE: 121 Pixels @ 220,164*/ 121, 0x00,
+ /* ABS: 005 Pixels @ 341,164*/ 0, 5, 0x0D, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 346,164*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 364,164*/ 0, 4, 0x06, 0x03, 0x03, 0x06,
+ /* RLE: 020 Pixels @ 368,164*/ 20, 0x01,
+ /* RLE: 043 Pixels @ 000,165*/ 43, 0x02,
+ /* RLE: 005 Pixels @ 043,165*/ 5, 0x04,
+ /* RLE: 014 Pixels @ 048,165*/ 14, 0x00,
+ /* RLE: 012 Pixels @ 062,165*/ 12, 0x09,
+ /* RLE: 007 Pixels @ 074,165*/ 7, 0x05,
+ /* RLE: 005 Pixels @ 081,165*/ 5, 0x08,
+ /* RLE: 001 Pixels @ 086,165*/ 1, 0x0B,
+ /* RLE: 124 Pixels @ 087,165*/ 124, 0x00,
+ /* ABS: 010 Pixels @ 211,165*/ 0, 10, 0x03, 0x0D, 0x06, 0x0B, 0x04, 0x00, 0x0D, 0x00, 0x0A, 0x03,
+ /* RLE: 121 Pixels @ 221,165*/ 121, 0x00,
+ /* ABS: 005 Pixels @ 342,165*/ 0, 5, 0x0D, 0x0D, 0x06, 0x0D, 0x06,
+ /* RLE: 018 Pixels @ 347,165*/ 18, 0x00,
+ /* RLE: 004 Pixels @ 365,165*/ 4, 0x06,
+ /* RLE: 019 Pixels @ 369,165*/ 19, 0x01,
+ /* RLE: 042 Pixels @ 000,166*/ 42, 0x02,
+ /* ABS: 007 Pixels @ 042,166*/ 0, 7, 0x04, 0x04, 0x03, 0x03, 0x03, 0x04, 0x04,
+ /* RLE: 025 Pixels @ 049,166*/ 25, 0x00,
+ /* RLE: 003 Pixels @ 074,166*/ 3, 0x09,
+ /* RLE: 009 Pixels @ 077,166*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 086,166*/ 1, 0x0B,
+ /* RLE: 124 Pixels @ 087,166*/ 124, 0x00,
+ /* ABS: 011 Pixels @ 211,166*/ 0, 11, 0x03, 0x03, 0x00, 0x0B, 0x06, 0x0F, 0x07, 0x07, 0x07, 0x04, 0x03,
+ /* RLE: 122 Pixels @ 222,166*/ 122, 0x00,
+ /* ABS: 004 Pixels @ 344,166*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 348,166*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 366,166*/ 5, 0x06,
+ /* RLE: 017 Pixels @ 371,166*/ 17, 0x01,
+ /* RLE: 042 Pixels @ 000,167*/ 42, 0x02,
+ /* RLE: 001 Pixels @ 042,167*/ 1, 0x04,
+ /* RLE: 005 Pixels @ 043,167*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 048,167*/ 1, 0x04,
+ /* RLE: 028 Pixels @ 049,167*/ 28, 0x00,
+ /* RLE: 001 Pixels @ 077,167*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 078,167*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 087,167*/ 1, 0x0B,
+ /* RLE: 123 Pixels @ 088,167*/ 123, 0x00,
+ /* ABS: 011 Pixels @ 211,167*/ 0, 11, 0x03, 0x12, 0x07, 0x07, 0x11, 0x12, 0x07, 0x0B, 0x12, 0x0E, 0x03,
+ /* RLE: 034 Pixels @ 222,167*/ 34, 0x00,
+ /* RLE: 005 Pixels @ 256,167*/ 5, 0x04,
+ /* RLE: 084 Pixels @ 261,167*/ 84, 0x00,
+ /* ABS: 004 Pixels @ 345,167*/ 0, 4, 0x0D, 0x03, 0x03, 0x06,
+ /* RLE: 018 Pixels @ 349,167*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 367,167*/ 5, 0x06,
+ /* RLE: 016 Pixels @ 372,167*/ 16, 0x01,
+ /* RLE: 041 Pixels @ 000,168*/ 41, 0x02,
+ /* ABS: 002 Pixels @ 041,168*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 043,168*/ 6, 0x03,
+ /* RLE: 029 Pixels @ 049,168*/ 29, 0x00,
+ /* RLE: 009 Pixels @ 078,168*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 087,168*/ 1, 0x0B,
+ /* RLE: 123 Pixels @ 088,168*/ 123, 0x00,
+ /* ABS: 011 Pixels @ 211,168*/ 0, 11, 0x03, 0x0A, 0x00, 0x03, 0x03, 0x03, 0x04, 0x00, 0x0A, 0x04, 0x03,
+ /* RLE: 033 Pixels @ 222,168*/ 33, 0x00,
+ /* ABS: 007 Pixels @ 255,168*/ 0, 7, 0x04, 0x04, 0x03, 0x03, 0x03, 0x04, 0x04,
+ /* RLE: 084 Pixels @ 262,168*/ 84, 0x00,
+ /* ABS: 004 Pixels @ 346,168*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 350,168*/ 18, 0x00,
+ /* ABS: 005 Pixels @ 368,168*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 015 Pixels @ 373,168*/ 15, 0x01,
+ /* RLE: 042 Pixels @ 000,169*/ 42, 0x02,
+ /* RLE: 001 Pixels @ 042,169*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 043,169*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 049,169*/ 1, 0x04,
+ /* RLE: 028 Pixels @ 050,169*/ 28, 0x00,
+ /* RLE: 001 Pixels @ 078,169*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 079,169*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 088,169*/ 1, 0x0B,
+ /* RLE: 121 Pixels @ 089,169*/ 121, 0x00,
+ /* ABS: 011 Pixels @ 210,169*/ 0, 11, 0x04, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x0A, 0x03, 0x03, 0x03,
+ /* RLE: 034 Pixels @ 221,169*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 255,169*/ 1, 0x04,
+ /* RLE: 005 Pixels @ 256,169*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 261,169*/ 1, 0x04,
+ /* RLE: 085 Pixels @ 262,169*/ 85, 0x00,
+ /* RLE: 001 Pixels @ 347,169*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 348,169*/ 4, 0x06,
+ /* RLE: 018 Pixels @ 352,169*/ 18, 0x00,
+ /* ABS: 004 Pixels @ 370,169*/ 0, 4, 0x06, 0x03, 0x03, 0x06,
+ /* RLE: 014 Pixels @ 374,169*/ 14, 0x01,
+ /* RLE: 042 Pixels @ 000,170*/ 42, 0x02,
+ /* RLE: 001 Pixels @ 042,170*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 043,170*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 049,170*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 050,170*/ 29, 0x00,
+ /* RLE: 009 Pixels @ 079,170*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 088,170*/ 1, 0x0B,
+ /* RLE: 117 Pixels @ 089,170*/ 117, 0x00,
+ /* RLE: 003 Pixels @ 206,170*/ 3, 0x04,
+ /* RLE: 005 Pixels @ 209,170*/ 5, 0x03,
+ /* ABS: 006 Pixels @ 214,170*/ 0, 6, 0x0E, 0x07, 0x07, 0x07, 0x06, 0x03,
+ /* RLE: 034 Pixels @ 220,170*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 254,170*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 255,170*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 261,170*/ 1, 0x04,
+ /* RLE: 086 Pixels @ 262,170*/ 86, 0x00,
+ /* ABS: 005 Pixels @ 348,170*/ 0, 5, 0x0D, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 353,170*/ 18, 0x00,
+ /* RLE: 004 Pixels @ 371,170*/ 4, 0x06,
+ /* RLE: 013 Pixels @ 375,170*/ 13, 0x01,
+ /* RLE: 042 Pixels @ 000,171*/ 42, 0x02,
+ /* RLE: 001 Pixels @ 042,171*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 043,171*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 049,171*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 050,171*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 079,171*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 080,171*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 089,171*/ 1, 0x0B,
+ /* RLE: 112 Pixels @ 090,171*/ 112, 0x00,
+ /* RLE: 003 Pixels @ 202,171*/ 3, 0x04,
+ /* RLE: 008 Pixels @ 205,171*/ 8, 0x03,
+ /* ABS: 008 Pixels @ 213,171*/ 0, 8, 0x0B, 0x07, 0x0E, 0x0D, 0x0A, 0x0F, 0x04, 0x03,
+ /* RLE: 033 Pixels @ 221,171*/ 33, 0x00,
+ /* RLE: 001 Pixels @ 254,171*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 255,171*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 261,171*/ 1, 0x04,
+ /* RLE: 087 Pixels @ 262,171*/ 87, 0x00,
+ /* ABS: 005 Pixels @ 349,171*/ 0, 5, 0x0D, 0x0D, 0x03, 0x0D, 0x06,
+ /* RLE: 018 Pixels @ 354,171*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 372,171*/ 5, 0x06,
+ /* RLE: 011 Pixels @ 377,171*/ 11, 0x01,
+ /* RLE: 042 Pixels @ 000,172*/ 42, 0x02,
+ /* RLE: 001 Pixels @ 042,172*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 043,172*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 049,172*/ 1, 0x04,
+ /* RLE: 030 Pixels @ 050,172*/ 30, 0x00,
+ /* RLE: 009 Pixels @ 080,172*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 089,172*/ 1, 0x0B,
+ /* RLE: 108 Pixels @ 090,172*/ 108, 0x00,
+ /* RLE: 003 Pixels @ 198,172*/ 3, 0x04,
+ /* RLE: 012 Pixels @ 201,172*/ 12, 0x03,
+ /* ABS: 009 Pixels @ 213,172*/ 0, 9, 0x0B, 0x12, 0x03, 0x07, 0x03, 0x06, 0x0B, 0x03, 0x04,
+ /* RLE: 032 Pixels @ 222,172*/ 32, 0x00,
+ /* RLE: 001 Pixels @ 254,172*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 255,172*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 261,172*/ 1, 0x04,
+ /* RLE: 089 Pixels @ 262,172*/ 89, 0x00,
+ /* ABS: 004 Pixels @ 351,172*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 355,172*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 373,172*/ 5, 0x06,
+ /* RLE: 010 Pixels @ 378,172*/ 10, 0x01,
+ /* RLE: 042 Pixels @ 000,173*/ 42, 0x02,
+ /* RLE: 001 Pixels @ 042,173*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 043,173*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 049,173*/ 1, 0x04,
+ /* RLE: 030 Pixels @ 050,173*/ 30, 0x00,
+ /* RLE: 001 Pixels @ 080,173*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 081,173*/ 9, 0x08,
+ /* RLE: 104 Pixels @ 090,173*/ 104, 0x00,
+ /* RLE: 003 Pixels @ 194,173*/ 3, 0x04,
+ /* RLE: 016 Pixels @ 197,173*/ 16, 0x03,
+ /* ABS: 009 Pixels @ 213,173*/ 0, 9, 0x04, 0x11, 0x0A, 0x06, 0x12, 0x07, 0x0A, 0x03, 0x04,
+ /* RLE: 032 Pixels @ 222,173*/ 32, 0x00,
+ /* RLE: 001 Pixels @ 254,173*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 255,173*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 261,173*/ 1, 0x04,
+ /* RLE: 090 Pixels @ 262,173*/ 90, 0x00,
+ /* ABS: 004 Pixels @ 352,173*/ 0, 4, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 356,173*/ 18, 0x00,
+ /* ABS: 005 Pixels @ 374,173*/ 0, 5, 0x06, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 009 Pixels @ 379,173*/ 9, 0x01,
+ /* RLE: 042 Pixels @ 000,174*/ 42, 0x02,
+ /* RLE: 001 Pixels @ 042,174*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 043,174*/ 7, 0x03,
+ /* RLE: 031 Pixels @ 050,174*/ 31, 0x00,
+ /* RLE: 009 Pixels @ 081,174*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 090,174*/ 1, 0x0B,
+ /* RLE: 099 Pixels @ 091,174*/ 99, 0x00,
+ /* RLE: 003 Pixels @ 190,174*/ 3, 0x04,
+ /* RLE: 021 Pixels @ 193,174*/ 21, 0x03,
+ /* ABS: 005 Pixels @ 214,174*/ 0, 5, 0x0D, 0x06, 0x0E, 0x0F, 0x04,
+ /* RLE: 004 Pixels @ 219,174*/ 4, 0x03,
+ /* RLE: 031 Pixels @ 223,174*/ 31, 0x00,
+ /* RLE: 001 Pixels @ 254,174*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 255,174*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 261,174*/ 1, 0x04,
+ /* RLE: 091 Pixels @ 262,174*/ 91, 0x00,
+ /* ABS: 004 Pixels @ 353,174*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 019 Pixels @ 357,174*/ 19, 0x00,
+ /* ABS: 004 Pixels @ 376,174*/ 0, 4, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 008 Pixels @ 380,174*/ 8, 0x01,
+ /* RLE: 043 Pixels @ 000,175*/ 43, 0x02,
+ /* RLE: 001 Pixels @ 043,175*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 044,175*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 050,175*/ 1, 0x04,
+ /* RLE: 030 Pixels @ 051,175*/ 30, 0x00,
+ /* RLE: 001 Pixels @ 081,175*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 082,175*/ 9, 0x08,
+ /* RLE: 095 Pixels @ 091,175*/ 95, 0x00,
+ /* RLE: 004 Pixels @ 186,175*/ 4, 0x04,
+ /* RLE: 025 Pixels @ 190,175*/ 25, 0x03,
+ /* ABS: 008 Pixels @ 215,175*/ 0, 8, 0x00, 0x00, 0x03, 0x03, 0x00, 0x0B, 0x12, 0x03,
+ /* RLE: 031 Pixels @ 223,175*/ 31, 0x00,
+ /* RLE: 001 Pixels @ 254,175*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 255,175*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 261,175*/ 1, 0x04,
+ /* RLE: 092 Pixels @ 262,175*/ 92, 0x00,
+ /* ABS: 004 Pixels @ 354,175*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 019 Pixels @ 358,175*/ 19, 0x00,
+ /* ABS: 004 Pixels @ 377,175*/ 0, 4, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 007 Pixels @ 381,175*/ 7, 0x01,
+ /* RLE: 043 Pixels @ 000,176*/ 43, 0x02,
+ /* RLE: 001 Pixels @ 043,176*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 044,176*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 050,176*/ 1, 0x04,
+ /* RLE: 031 Pixels @ 051,176*/ 31, 0x00,
+ /* RLE: 009 Pixels @ 082,176*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 091,176*/ 1, 0x0B,
+ /* RLE: 090 Pixels @ 092,176*/ 90, 0x00,
+ /* RLE: 004 Pixels @ 182,176*/ 4, 0x04,
+ /* RLE: 024 Pixels @ 186,176*/ 24, 0x03,
+ /* RLE: 003 Pixels @ 210,176*/ 3, 0x04,
+ /* ABS: 009 Pixels @ 213,176*/ 0, 9, 0x03, 0x00, 0x0B, 0x12, 0x11, 0x07, 0x07, 0x07, 0x11,
+ /* RLE: 032 Pixels @ 222,176*/ 32, 0x00,
+ /* RLE: 001 Pixels @ 254,176*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 255,176*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 261,176*/ 1, 0x04,
+ /* RLE: 093 Pixels @ 262,176*/ 93, 0x00,
+ /* ABS: 005 Pixels @ 355,176*/ 0, 5, 0x0D, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 360,176*/ 18, 0x00,
+ /* RLE: 004 Pixels @ 378,176*/ 4, 0x06,
+ /* RLE: 006 Pixels @ 382,176*/ 6, 0x01,
+ /* RLE: 043 Pixels @ 000,177*/ 43, 0x02,
+ /* RLE: 001 Pixels @ 043,177*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 044,177*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 050,177*/ 1, 0x04,
+ /* RLE: 031 Pixels @ 051,177*/ 31, 0x00,
+ /* RLE: 001 Pixels @ 082,177*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 083,177*/ 9, 0x08,
+ /* RLE: 086 Pixels @ 092,177*/ 86, 0x00,
+ /* RLE: 004 Pixels @ 178,177*/ 4, 0x04,
+ /* RLE: 024 Pixels @ 182,177*/ 24, 0x03,
+ /* RLE: 004 Pixels @ 206,177*/ 4, 0x04,
+ /* RLE: 003 Pixels @ 210,177*/ 3, 0x00,
+ /* ABS: 010 Pixels @ 213,177*/ 0, 10, 0x03, 0x12, 0x07, 0x11, 0x12, 0x0B, 0x0A, 0x03, 0x03, 0x03,
+ /* RLE: 030 Pixels @ 223,177*/ 30, 0x00,
+ /* RLE: 001 Pixels @ 253,177*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 254,177*/ 7, 0x03,
+ /* RLE: 095 Pixels @ 261,177*/ 95, 0x00,
+ /* ABS: 005 Pixels @ 356,177*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 361,177*/ 18, 0x00,
+ /* RLE: 005 Pixels @ 379,177*/ 5, 0x06,
+ /* RLE: 004 Pixels @ 384,177*/ 4, 0x01,
+ /* RLE: 043 Pixels @ 000,178*/ 43, 0x02,
+ /* RLE: 001 Pixels @ 043,178*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 044,178*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 050,178*/ 1, 0x04,
+ /* RLE: 032 Pixels @ 051,178*/ 32, 0x00,
+ /* RLE: 009 Pixels @ 083,178*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 092,178*/ 1, 0x0B,
+ /* RLE: 081 Pixels @ 093,178*/ 81, 0x00,
+ /* RLE: 004 Pixels @ 174,178*/ 4, 0x04,
+ /* RLE: 024 Pixels @ 178,178*/ 24, 0x03,
+ /* RLE: 004 Pixels @ 202,178*/ 4, 0x04,
+ /* RLE: 007 Pixels @ 206,178*/ 7, 0x00,
+ /* ABS: 011 Pixels @ 213,178*/ 0, 11, 0x03, 0x00, 0x03, 0x03, 0x03, 0x00, 0x00, 0x03, 0x03, 0x03, 0x04,
+ /* RLE: 029 Pixels @ 224,178*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 253,178*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 254,178*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 260,178*/ 1, 0x04,
+ /* RLE: 096 Pixels @ 261,178*/ 96, 0x00,
+ /* ABS: 005 Pixels @ 357,178*/ 0, 5, 0x0D, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 362,178*/ 18, 0x00,
+ /* ABS: 008 Pixels @ 380,178*/ 0, 8, 0x06, 0x06, 0x03, 0x06, 0x06, 0x01, 0x01, 0x01,
+ /* RLE: 043 Pixels @ 000,179*/ 43, 0x02,
+ /* RLE: 001 Pixels @ 043,179*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 044,179*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 050,179*/ 1, 0x04,
+ /* RLE: 032 Pixels @ 051,179*/ 32, 0x00,
+ /* RLE: 001 Pixels @ 083,179*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 084,179*/ 9, 0x08,
+ /* RLE: 077 Pixels @ 093,179*/ 77, 0x00,
+ /* RLE: 004 Pixels @ 170,179*/ 4, 0x04,
+ /* RLE: 024 Pixels @ 174,179*/ 24, 0x03,
+ /* RLE: 004 Pixels @ 198,179*/ 4, 0x04,
+ /* RLE: 013 Pixels @ 202,179*/ 13, 0x00,
+ /* ABS: 009 Pixels @ 215,179*/ 0, 9, 0x03, 0x0E, 0x07, 0x07, 0x07, 0x06, 0x03, 0x03, 0x04,
+ /* RLE: 029 Pixels @ 224,179*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 253,179*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 254,179*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 260,179*/ 1, 0x04,
+ /* RLE: 098 Pixels @ 261,179*/ 98, 0x00,
+ /* ABS: 004 Pixels @ 359,179*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 363,179*/ 18, 0x00,
+ /* ABS: 007 Pixels @ 381,179*/ 0, 7, 0x06, 0x06, 0x03, 0x06, 0x06, 0x01, 0x01,
+ /* RLE: 043 Pixels @ 000,180*/ 43, 0x02,
+ /* RLE: 001 Pixels @ 043,180*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 044,180*/ 7, 0x03,
+ /* RLE: 032 Pixels @ 051,180*/ 32, 0x00,
+ /* RLE: 001 Pixels @ 083,180*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 084,180*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 093,180*/ 1, 0x0B,
+ /* RLE: 072 Pixels @ 094,180*/ 72, 0x00,
+ /* RLE: 004 Pixels @ 166,180*/ 4, 0x04,
+ /* RLE: 024 Pixels @ 170,180*/ 24, 0x03,
+ /* RLE: 004 Pixels @ 194,180*/ 4, 0x04,
+ /* RLE: 016 Pixels @ 198,180*/ 16, 0x00,
+ /* ABS: 010 Pixels @ 214,180*/ 0, 10, 0x03, 0x04, 0x07, 0x12, 0x04, 0x04, 0x0F, 0x04, 0x03, 0x04,
+ /* RLE: 029 Pixels @ 224,180*/ 29, 0x00,
+ /* RLE: 001 Pixels @ 253,180*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 254,180*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 260,180*/ 1, 0x04,
+ /* RLE: 099 Pixels @ 261,180*/ 99, 0x00,
+ /* ABS: 004 Pixels @ 360,180*/ 0, 4, 0x0D, 0x0D, 0x06, 0x06,
+ /* RLE: 019 Pixels @ 364,180*/ 19, 0x00,
+ /* ABS: 005 Pixels @ 383,180*/ 0, 5, 0x06, 0x03, 0x06, 0x06, 0x01,
+ /* RLE: 044 Pixels @ 000,181*/ 44, 0x02,
+ /* RLE: 001 Pixels @ 044,181*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 045,181*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 051,181*/ 1, 0x04,
+ /* RLE: 032 Pixels @ 052,181*/ 32, 0x00,
+ /* RLE: 001 Pixels @ 084,181*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 085,181*/ 9, 0x08,
+ /* RLE: 069 Pixels @ 094,181*/ 69, 0x00,
+ /* RLE: 003 Pixels @ 163,181*/ 3, 0x04,
+ /* RLE: 025 Pixels @ 166,181*/ 25, 0x03,
+ /* RLE: 003 Pixels @ 191,181*/ 3, 0x04,
+ /* RLE: 020 Pixels @ 194,181*/ 20, 0x00,
+ /* ABS: 011 Pixels @ 214,181*/ 0, 11, 0x03, 0x0B, 0x0D, 0x03, 0x03, 0x03, 0x06, 0x0B, 0x03, 0x03, 0x03,
+ /* RLE: 028 Pixels @ 225,181*/ 28, 0x00,
+ /* RLE: 001 Pixels @ 253,181*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 254,181*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 260,181*/ 1, 0x04,
+ /* RLE: 100 Pixels @ 261,181*/ 100, 0x00,
+ /* ABS: 004 Pixels @ 361,181*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 019 Pixels @ 365,181*/ 19, 0x00,
+ /* RLE: 004 Pixels @ 384,181*/ 4, 0x06,
+ /* RLE: 044 Pixels @ 000,182*/ 44, 0x02,
+ /* RLE: 001 Pixels @ 044,182*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 045,182*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 051,182*/ 1, 0x04,
+ /* RLE: 032 Pixels @ 052,182*/ 32, 0x00,
+ /* RLE: 001 Pixels @ 084,182*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 085,182*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 094,182*/ 1, 0x0B,
+ /* RLE: 067 Pixels @ 095,182*/ 67, 0x00,
+ /* ABS: 002 Pixels @ 162,182*/ 0, 2, 0x04, 0x04,
+ /* RLE: 023 Pixels @ 164,182*/ 23, 0x03,
+ /* RLE: 003 Pixels @ 187,182*/ 3, 0x04,
+ /* RLE: 024 Pixels @ 190,182*/ 24, 0x00,
+ /* ABS: 011 Pixels @ 214,182*/ 0, 11, 0x03, 0x0A, 0x11, 0x00, 0x03, 0x0A, 0x0F, 0x12, 0x0D, 0x0F, 0x03,
+ /* RLE: 028 Pixels @ 225,182*/ 28, 0x00,
+ /* RLE: 001 Pixels @ 253,182*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 254,182*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 260,182*/ 1, 0x04,
+ /* RLE: 101 Pixels @ 261,182*/ 101, 0x00,
+ /* ABS: 005 Pixels @ 362,182*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 367,182*/ 18, 0x00,
+ /* RLE: 003 Pixels @ 385,182*/ 3, 0x06,
+ /* RLE: 044 Pixels @ 000,183*/ 44, 0x02,
+ /* RLE: 001 Pixels @ 044,183*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 045,183*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 051,183*/ 1, 0x04,
+ /* RLE: 033 Pixels @ 052,183*/ 33, 0x00,
+ /* RLE: 001 Pixels @ 085,183*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 086,183*/ 9, 0x08,
+ /* RLE: 065 Pixels @ 095,183*/ 65, 0x00,
+ /* RLE: 003 Pixels @ 160,183*/ 3, 0x04,
+ /* RLE: 020 Pixels @ 163,183*/ 20, 0x03,
+ /* RLE: 003 Pixels @ 183,183*/ 3, 0x04,
+ /* RLE: 029 Pixels @ 186,183*/ 29, 0x00,
+ /* ABS: 002 Pixels @ 215,183*/ 0, 2, 0x03, 0x0D,
+ /* RLE: 004 Pixels @ 217,183*/ 4, 0x07,
+ /* ABS: 004 Pixels @ 221,183*/ 0, 4, 0x0F, 0x06, 0x0B, 0x03,
+ /* RLE: 028 Pixels @ 225,183*/ 28, 0x00,
+ /* RLE: 001 Pixels @ 253,183*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 254,183*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 260,183*/ 1, 0x04,
+ /* RLE: 102 Pixels @ 261,183*/ 102, 0x00,
+ /* ABS: 005 Pixels @ 363,183*/ 0, 5, 0x0D, 0x06, 0x03, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 368,183*/ 18, 0x00,
+ /* ABS: 002 Pixels @ 386,183*/ 0, 2, 0x06, 0x06,
+ /* RLE: 044 Pixels @ 000,184*/ 44, 0x02,
+ /* RLE: 001 Pixels @ 044,184*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 045,184*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 051,184*/ 1, 0x04,
+ /* RLE: 033 Pixels @ 052,184*/ 33, 0x00,
+ /* RLE: 001 Pixels @ 085,184*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 086,184*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 095,184*/ 1, 0x0B,
+ /* RLE: 063 Pixels @ 096,184*/ 63, 0x00,
+ /* ABS: 002 Pixels @ 159,184*/ 0, 2, 0x04, 0x04,
+ /* RLE: 018 Pixels @ 161,184*/ 18, 0x03,
+ /* RLE: 003 Pixels @ 179,184*/ 3, 0x04,
+ /* RLE: 033 Pixels @ 182,184*/ 33, 0x00,
+ /* ABS: 009 Pixels @ 215,184*/ 0, 9, 0x03, 0x11, 0x06, 0x0E, 0x04, 0x00, 0x03, 0x03, 0x03,
+ /* RLE: 028 Pixels @ 224,184*/ 28, 0x00,
+ /* RLE: 001 Pixels @ 252,184*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 253,184*/ 7, 0x03,
+ /* RLE: 104 Pixels @ 260,184*/ 104, 0x00,
+ /* RLE: 003 Pixels @ 364,184*/ 3, 0x0D,
+ /* ABS: 002 Pixels @ 367,184*/ 0, 2, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 369,184*/ 18, 0x00,
+ /* RLE: 001 Pixels @ 387,184*/ 1, 0x06,
+ /* RLE: 044 Pixels @ 000,185*/ 44, 0x02,
+ /* RLE: 001 Pixels @ 044,185*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 045,185*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 051,185*/ 1, 0x04,
+ /* RLE: 034 Pixels @ 052,185*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 086,185*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 087,185*/ 9, 0x08,
+ /* RLE: 061 Pixels @ 096,185*/ 61, 0x00,
+ /* ABS: 002 Pixels @ 157,185*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 159,185*/ 16, 0x03,
+ /* RLE: 003 Pixels @ 175,185*/ 3, 0x04,
+ /* RLE: 037 Pixels @ 178,185*/ 37, 0x00,
+ /* RLE: 010 Pixels @ 215,185*/ 10, 0x03,
+ /* RLE: 001 Pixels @ 225,185*/ 1, 0x04,
+ /* RLE: 026 Pixels @ 226,185*/ 26, 0x00,
+ /* RLE: 001 Pixels @ 252,185*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 253,185*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 259,185*/ 1, 0x04,
+ /* RLE: 106 Pixels @ 260,185*/ 106, 0x00,
+ /* ABS: 004 Pixels @ 366,185*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 018 Pixels @ 370,185*/ 18, 0x00,
+ /* RLE: 044 Pixels @ 000,186*/ 44, 0x02,
+ /* RLE: 001 Pixels @ 044,186*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 045,186*/ 7, 0x03,
+ /* RLE: 034 Pixels @ 052,186*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 086,186*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 087,186*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 096,186*/ 1, 0x0B,
+ /* RLE: 059 Pixels @ 097,186*/ 59, 0x00,
+ /* ABS: 002 Pixels @ 156,186*/ 0, 2, 0x04, 0x04,
+ /* RLE: 013 Pixels @ 158,186*/ 13, 0x03,
+ /* RLE: 003 Pixels @ 171,186*/ 3, 0x04,
+ /* RLE: 044 Pixels @ 174,186*/ 44, 0x00,
+ /* RLE: 001 Pixels @ 218,186*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 219,186*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 225,186*/ 1, 0x04,
+ /* RLE: 026 Pixels @ 226,186*/ 26, 0x00,
+ /* RLE: 001 Pixels @ 252,186*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 253,186*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 259,186*/ 1, 0x04,
+ /* RLE: 107 Pixels @ 260,186*/ 107, 0x00,
+ /* ABS: 004 Pixels @ 367,186*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 017 Pixels @ 371,186*/ 17, 0x00,
+ /* RLE: 045 Pixels @ 000,187*/ 45, 0x02,
+ /* RLE: 001 Pixels @ 045,187*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 046,187*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 052,187*/ 1, 0x04,
+ /* RLE: 034 Pixels @ 053,187*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 087,187*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 088,187*/ 9, 0x08,
+ /* RLE: 057 Pixels @ 097,187*/ 57, 0x00,
+ /* ABS: 002 Pixels @ 154,187*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 156,187*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 167,187*/ 3, 0x04,
+ /* RLE: 048 Pixels @ 170,187*/ 48, 0x00,
+ /* RLE: 001 Pixels @ 218,187*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 219,187*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 225,187*/ 1, 0x04,
+ /* RLE: 026 Pixels @ 226,187*/ 26, 0x00,
+ /* RLE: 001 Pixels @ 252,187*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 253,187*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 259,187*/ 1, 0x04,
+ /* RLE: 108 Pixels @ 260,187*/ 108, 0x00,
+ /* ABS: 004 Pixels @ 368,187*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 016 Pixels @ 372,187*/ 16, 0x00,
+ /* RLE: 045 Pixels @ 000,188*/ 45, 0x02,
+ /* RLE: 001 Pixels @ 045,188*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 046,188*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 052,188*/ 1, 0x04,
+ /* RLE: 034 Pixels @ 053,188*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 087,188*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 088,188*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 097,188*/ 1, 0x0B,
+ /* RLE: 054 Pixels @ 098,188*/ 54, 0x00,
+ /* RLE: 003 Pixels @ 152,188*/ 3, 0x04,
+ /* RLE: 011 Pixels @ 155,188*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 166,188*/ 0, 2, 0x04, 0x04,
+ /* RLE: 050 Pixels @ 168,188*/ 50, 0x00,
+ /* RLE: 001 Pixels @ 218,188*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 219,188*/ 7, 0x03,
+ /* RLE: 026 Pixels @ 226,188*/ 26, 0x00,
+ /* RLE: 001 Pixels @ 252,188*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 253,188*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 259,188*/ 1, 0x04,
+ /* RLE: 109 Pixels @ 260,188*/ 109, 0x00,
+ /* ABS: 005 Pixels @ 369,188*/ 0, 5, 0x0D, 0x0D, 0x03, 0x06, 0x06,
+ /* RLE: 014 Pixels @ 374,188*/ 14, 0x00,
+ /* RLE: 045 Pixels @ 000,189*/ 45, 0x02,
+ /* RLE: 001 Pixels @ 045,189*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 046,189*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 052,189*/ 1, 0x04,
+ /* RLE: 035 Pixels @ 053,189*/ 35, 0x00,
+ /* RLE: 001 Pixels @ 088,189*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 089,189*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 097,189*/ 1, 0x0B,
+ /* RLE: 054 Pixels @ 098,189*/ 54, 0x00,
+ /* ABS: 002 Pixels @ 152,189*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 154,189*/ 10, 0x03,
+ /* ABS: 002 Pixels @ 164,189*/ 0, 2, 0x04, 0x04,
+ /* RLE: 053 Pixels @ 166,189*/ 53, 0x00,
+ /* RLE: 001 Pixels @ 219,189*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 220,189*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 226,189*/ 1, 0x04,
+ /* RLE: 025 Pixels @ 227,189*/ 25, 0x00,
+ /* RLE: 001 Pixels @ 252,189*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 253,189*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 259,189*/ 1, 0x04,
+ /* RLE: 110 Pixels @ 260,189*/ 110, 0x00,
+ /* RLE: 001 Pixels @ 370,189*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 371,189*/ 4, 0x06,
+ /* RLE: 013 Pixels @ 375,189*/ 13, 0x00,
+ /* RLE: 045 Pixels @ 000,190*/ 45, 0x02,
+ /* RLE: 001 Pixels @ 045,190*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 046,190*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 052,190*/ 1, 0x04,
+ /* RLE: 035 Pixels @ 053,190*/ 35, 0x00,
+ /* RLE: 001 Pixels @ 088,190*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 089,190*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 098,190*/ 1, 0x0B,
+ /* RLE: 053 Pixels @ 099,190*/ 53, 0x00,
+ /* RLE: 001 Pixels @ 152,190*/ 1, 0x04,
+ /* RLE: 009 Pixels @ 153,190*/ 9, 0x03,
+ /* RLE: 003 Pixels @ 162,190*/ 3, 0x04,
+ /* RLE: 054 Pixels @ 165,190*/ 54, 0x00,
+ /* RLE: 001 Pixels @ 219,190*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 220,190*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 226,190*/ 1, 0x04,
+ /* RLE: 024 Pixels @ 227,190*/ 24, 0x00,
+ /* ABS: 002 Pixels @ 251,190*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 253,190*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 259,190*/ 1, 0x04,
+ /* RLE: 111 Pixels @ 260,190*/ 111, 0x00,
+ /* ABS: 005 Pixels @ 371,190*/ 0, 5, 0x0D, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 012 Pixels @ 376,190*/ 12, 0x00,
+ /* RLE: 045 Pixels @ 000,191*/ 45, 0x02,
+ /* RLE: 001 Pixels @ 045,191*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 046,191*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 052,191*/ 1, 0x04,
+ /* RLE: 036 Pixels @ 053,191*/ 36, 0x00,
+ /* RLE: 001 Pixels @ 089,191*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 090,191*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 098,191*/ 1, 0x0B,
+ /* RLE: 051 Pixels @ 099,191*/ 51, 0x00,
+ /* RLE: 011 Pixels @ 150,191*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 161,191*/ 0, 2, 0x04, 0x04,
+ /* RLE: 056 Pixels @ 163,191*/ 56, 0x00,
+ /* RLE: 001 Pixels @ 219,191*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 220,191*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 226,191*/ 1, 0x04,
+ /* RLE: 024 Pixels @ 227,191*/ 24, 0x00,
+ /* RLE: 001 Pixels @ 251,191*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 252,191*/ 7, 0x03,
+ /* RLE: 114 Pixels @ 259,191*/ 114, 0x00,
+ /* ABS: 004 Pixels @ 373,191*/ 0, 4, 0x0D, 0x0D, 0x06, 0x06,
+ /* RLE: 011 Pixels @ 377,191*/ 11, 0x00,
+ /* RLE: 045 Pixels @ 000,192*/ 45, 0x02,
+ /* RLE: 001 Pixels @ 045,192*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 046,192*/ 7, 0x03,
+ /* RLE: 036 Pixels @ 053,192*/ 36, 0x00,
+ /* RLE: 001 Pixels @ 089,192*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 090,192*/ 9, 0x08,
+ /* RLE: 050 Pixels @ 099,192*/ 50, 0x00,
+ /* ABS: 006 Pixels @ 149,192*/ 0, 6, 0x03, 0x00, 0x0B, 0x0B, 0x04, 0x00,
+ /* RLE: 004 Pixels @ 155,192*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 159,192*/ 3, 0x04,
+ /* RLE: 058 Pixels @ 162,192*/ 58, 0x00,
+ /* RLE: 007 Pixels @ 220,192*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 227,192*/ 1, 0x04,
+ /* RLE: 022 Pixels @ 228,192*/ 22, 0x00,
+ /* ABS: 002 Pixels @ 250,192*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 252,192*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 258,192*/ 1, 0x04,
+ /* RLE: 115 Pixels @ 259,192*/ 115, 0x00,
+ /* ABS: 004 Pixels @ 374,192*/ 0, 4, 0x0D, 0x03, 0x03, 0x06,
+ /* RLE: 010 Pixels @ 378,192*/ 10, 0x00,
+ /* RLE: 046 Pixels @ 000,193*/ 46, 0x02,
+ /* RLE: 001 Pixels @ 046,193*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 047,193*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 053,193*/ 1, 0x04,
+ /* RLE: 036 Pixels @ 054,193*/ 36, 0x00,
+ /* RLE: 001 Pixels @ 090,193*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 091,193*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 099,193*/ 1, 0x0B,
+ /* RLE: 048 Pixels @ 100,193*/ 48, 0x00,
+ /* ABS: 003 Pixels @ 148,193*/ 0, 3, 0x03, 0x00, 0x0F,
+ /* RLE: 004 Pixels @ 151,193*/ 4, 0x07,
+ /* ABS: 005 Pixels @ 155,193*/ 0, 5, 0x06, 0x03, 0x03, 0x04, 0x04,
+ /* RLE: 060 Pixels @ 160,193*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 220,193*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 221,193*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 227,193*/ 1, 0x04,
+ /* RLE: 022 Pixels @ 228,193*/ 22, 0x00,
+ /* RLE: 001 Pixels @ 250,193*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 251,193*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 258,193*/ 1, 0x04,
+ /* RLE: 116 Pixels @ 259,193*/ 116, 0x00,
+ /* ABS: 004 Pixels @ 375,193*/ 0, 4, 0x0D, 0x06, 0x03, 0x06,
+ /* RLE: 009 Pixels @ 379,193*/ 9, 0x00,
+ /* RLE: 046 Pixels @ 000,194*/ 46, 0x02,
+ /* RLE: 001 Pixels @ 046,194*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 047,194*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 053,194*/ 1, 0x04,
+ /* RLE: 036 Pixels @ 054,194*/ 36, 0x00,
+ /* RLE: 001 Pixels @ 090,194*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 091,194*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 099,194*/ 1, 0x0B,
+ /* RLE: 050 Pixels @ 100,194*/ 50, 0x00,
+ /* ABS: 008 Pixels @ 150,194*/ 0, 8, 0x11, 0x03, 0x03, 0x00, 0x04, 0x04, 0x03, 0x03,
+ /* RLE: 062 Pixels @ 158,194*/ 62, 0x00,
+ /* RLE: 001 Pixels @ 220,194*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 221,194*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 227,194*/ 0, 2, 0x04, 0x04,
+ /* RLE: 020 Pixels @ 229,194*/ 20, 0x00,
+ /* RLE: 001 Pixels @ 249,194*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 250,194*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 257,194*/ 1, 0x04,
+ /* RLE: 118 Pixels @ 258,194*/ 118, 0x00,
+ /* RLE: 001 Pixels @ 376,194*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 377,194*/ 4, 0x06,
+ /* RLE: 007 Pixels @ 381,194*/ 7, 0x00,
+ /* RLE: 046 Pixels @ 000,195*/ 46, 0x02,
+ /* RLE: 001 Pixels @ 046,195*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 047,195*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 053,195*/ 1, 0x04,
+ /* RLE: 037 Pixels @ 054,195*/ 37, 0x00,
+ /* RLE: 009 Pixels @ 091,195*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 100,195*/ 1, 0x0B,
+ /* RLE: 048 Pixels @ 101,195*/ 48, 0x00,
+ /* ABS: 002 Pixels @ 149,195*/ 0, 2, 0x03, 0x11,
+ /* RLE: 006 Pixels @ 151,195*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 157,195*/ 1, 0x04,
+ /* RLE: 062 Pixels @ 158,195*/ 62, 0x00,
+ /* RLE: 001 Pixels @ 220,195*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 221,195*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 228,195*/ 1, 0x04,
+ /* RLE: 019 Pixels @ 229,195*/ 19, 0x00,
+ /* ABS: 002 Pixels @ 248,195*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 250,195*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 257,195*/ 1, 0x04,
+ /* RLE: 119 Pixels @ 258,195*/ 119, 0x00,
+ /* RLE: 001 Pixels @ 377,195*/ 1, 0x0D,
+ /* RLE: 004 Pixels @ 378,195*/ 4, 0x06,
+ /* RLE: 006 Pixels @ 382,195*/ 6, 0x00,
+ /* RLE: 046 Pixels @ 000,196*/ 46, 0x02,
+ /* RLE: 001 Pixels @ 046,196*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 047,196*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 053,196*/ 1, 0x04,
+ /* RLE: 037 Pixels @ 054,196*/ 37, 0x00,
+ /* RLE: 001 Pixels @ 091,196*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 092,196*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 100,196*/ 1, 0x0B,
+ /* RLE: 047 Pixels @ 101,196*/ 47, 0x00,
+ /* ABS: 010 Pixels @ 148,196*/ 0, 10, 0x03, 0x0B, 0x07, 0x0F, 0x06, 0x0B, 0x0B, 0x03, 0x03, 0x04,
+ /* RLE: 063 Pixels @ 158,196*/ 63, 0x00,
+ /* RLE: 001 Pixels @ 221,196*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 222,196*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 228,196*/ 0, 2, 0x04, 0x04,
+ /* RLE: 018 Pixels @ 230,196*/ 18, 0x00,
+ /* RLE: 001 Pixels @ 248,196*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 249,196*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 256,196*/ 1, 0x04,
+ /* RLE: 121 Pixels @ 257,196*/ 121, 0x00,
+ /* RLE: 003 Pixels @ 378,196*/ 3, 0x0D,
+ /* ABS: 002 Pixels @ 381,196*/ 0, 2, 0x06, 0x06,
+ /* RLE: 005 Pixels @ 383,196*/ 5, 0x00,
+ /* RLE: 046 Pixels @ 000,197*/ 46, 0x02,
+ /* RLE: 001 Pixels @ 046,197*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 047,197*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 053,197*/ 1, 0x04,
+ /* RLE: 037 Pixels @ 054,197*/ 37, 0x00,
+ /* RLE: 001 Pixels @ 091,197*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 092,197*/ 9, 0x08,
+ /* RLE: 049 Pixels @ 101,197*/ 49, 0x00,
+ /* ABS: 005 Pixels @ 150,197*/ 0, 5, 0x0B, 0x06, 0x0D, 0x07, 0x07,
+ /* RLE: 066 Pixels @ 155,197*/ 66, 0x00,
+ /* RLE: 001 Pixels @ 221,197*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 222,197*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 229,197*/ 1, 0x04,
+ /* RLE: 017 Pixels @ 230,197*/ 17, 0x00,
+ /* ABS: 002 Pixels @ 247,197*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 249,197*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 255,197*/ 0, 2, 0x04, 0x04,
+ /* RLE: 123 Pixels @ 257,197*/ 123, 0x00,
+ /* ABS: 004 Pixels @ 380,197*/ 0, 4, 0x0D, 0x03, 0x0D, 0x06,
+ /* RLE: 004 Pixels @ 384,197*/ 4, 0x00,
+ /* RLE: 046 Pixels @ 000,198*/ 46, 0x02,
+ /* RLE: 001 Pixels @ 046,198*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 047,198*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 053,198*/ 1, 0x04,
+ /* RLE: 038 Pixels @ 054,198*/ 38, 0x00,
+ /* RLE: 001 Pixels @ 092,198*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 093,198*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 101,198*/ 1, 0x0B,
+ /* RLE: 046 Pixels @ 102,198*/ 46, 0x00,
+ /* RLE: 006 Pixels @ 148,198*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 154,198*/ 0, 2, 0x00, 0x03,
+ /* RLE: 065 Pixels @ 156,198*/ 65, 0x00,
+ /* ABS: 002 Pixels @ 221,198*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 223,198*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 230,198*/ 1, 0x04,
+ /* RLE: 016 Pixels @ 231,198*/ 16, 0x00,
+ /* RLE: 001 Pixels @ 247,198*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 248,198*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 255,198*/ 1, 0x04,
+ /* RLE: 125 Pixels @ 256,198*/ 125, 0x00,
+ /* ABS: 007 Pixels @ 381,198*/ 0, 7, 0x0D, 0x03, 0x03, 0x06, 0x00, 0x00, 0x00,
+ /* RLE: 047 Pixels @ 000,199*/ 47, 0x02,
+ /* RLE: 007 Pixels @ 047,199*/ 7, 0x03,
+ /* RLE: 038 Pixels @ 054,199*/ 38, 0x00,
+ /* RLE: 001 Pixels @ 092,199*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 093,199*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 101,199*/ 1, 0x0B,
+ /* RLE: 046 Pixels @ 102,199*/ 46, 0x00,
+ /* ABS: 008 Pixels @ 148,199*/ 0, 8, 0x03, 0x0B, 0x07, 0x07, 0x0A, 0x0E, 0x03, 0x03,
+ /* RLE: 066 Pixels @ 156,199*/ 66, 0x00,
+ /* RLE: 001 Pixels @ 222,199*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 223,199*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 230,199*/ 0, 2, 0x04, 0x04,
+ /* RLE: 014 Pixels @ 232,199*/ 14, 0x00,
+ /* RLE: 001 Pixels @ 246,199*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 247,199*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 254,199*/ 0, 2, 0x04, 0x04,
+ /* RLE: 126 Pixels @ 256,199*/ 126, 0x00,
+ /* ABS: 006 Pixels @ 382,199*/ 0, 6, 0x0D, 0x06, 0x06, 0x06, 0x00, 0x00,
+ /* RLE: 046 Pixels @ 000,200*/ 46, 0x02,
+ /* RLE: 001 Pixels @ 046,200*/ 1, 0x00,
+ /* RLE: 006 Pixels @ 047,200*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 053,200*/ 0, 3, 0x00, 0x04, 0x03,
+ /* RLE: 037 Pixels @ 056,200*/ 37, 0x00,
+ /* RLE: 009 Pixels @ 093,200*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 102,200*/ 1, 0x0B,
+ /* RLE: 044 Pixels @ 103,200*/ 44, 0x00,
+ /* ABS: 008 Pixels @ 147,200*/ 0, 8, 0x03, 0x00, 0x07, 0x04, 0x0D, 0x04, 0x0F, 0x04,
+ /* RLE: 068 Pixels @ 155,200*/ 68, 0x00,
+ /* RLE: 001 Pixels @ 223,200*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 224,200*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 231,200*/ 1, 0x04,
+ /* RLE: 013 Pixels @ 232,200*/ 13, 0x00,
+ /* ABS: 002 Pixels @ 245,200*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 247,200*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 254,200*/ 1, 0x04,
+ /* RLE: 128 Pixels @ 255,200*/ 128, 0x00,
+ /* ABS: 005 Pixels @ 383,200*/ 0, 5, 0x0D, 0x06, 0x06, 0x06, 0x00,
+ /* RLE: 046 Pixels @ 000,201*/ 46, 0x02,
+ /* ABS: 009 Pixels @ 046,201*/ 0, 9, 0x03, 0x0A, 0x0B, 0x0E, 0x06, 0x11, 0x07, 0x07, 0x07,
+ /* RLE: 038 Pixels @ 055,201*/ 38, 0x00,
+ /* RLE: 001 Pixels @ 093,201*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 094,201*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 102,201*/ 1, 0x0B,
+ /* RLE: 045 Pixels @ 103,201*/ 45, 0x00,
+ /* ABS: 008 Pixels @ 148,201*/ 0, 8, 0x0B, 0x06, 0x03, 0x0F, 0x03, 0x0E, 0x0B, 0x03,
+ /* RLE: 067 Pixels @ 156,201*/ 67, 0x00,
+ /* ABS: 002 Pixels @ 223,201*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 225,201*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 231,201*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 233,201*/ 11, 0x00,
+ /* ABS: 002 Pixels @ 244,201*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 246,201*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 253,201*/ 1, 0x04,
+ /* RLE: 130 Pixels @ 254,201*/ 130, 0x00,
+ /* ABS: 004 Pixels @ 384,201*/ 0, 4, 0x0D, 0x06, 0x06, 0x06,
+ /* RLE: 046 Pixels @ 000,202*/ 46, 0x02,
+ /* ABS: 002 Pixels @ 046,202*/ 0, 2, 0x03, 0x06,
+ /* RLE: 004 Pixels @ 048,202*/ 4, 0x07,
+ /* ABS: 005 Pixels @ 052,202*/ 0, 5, 0x0E, 0x0B, 0x07, 0x04, 0x03,
+ /* RLE: 036 Pixels @ 057,202*/ 36, 0x00,
+ /* RLE: 001 Pixels @ 093,202*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 094,202*/ 9, 0x08,
+ /* RLE: 044 Pixels @ 103,202*/ 44, 0x00,
+ /* ABS: 009 Pixels @ 147,202*/ 0, 9, 0x03, 0x00, 0x07, 0x0E, 0x0F, 0x0A, 0x11, 0x0B, 0x03,
+ /* RLE: 068 Pixels @ 156,202*/ 68, 0x00,
+ /* RLE: 001 Pixels @ 224,202*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 225,202*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 232,202*/ 1, 0x04,
+ /* RLE: 010 Pixels @ 233,202*/ 10, 0x00,
+ /* ABS: 002 Pixels @ 243,202*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 245,202*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 252,202*/ 0, 2, 0x04, 0x04,
+ /* RLE: 131 Pixels @ 254,202*/ 131, 0x00,
+ /* ABS: 003 Pixels @ 385,202*/ 0, 3, 0x0D, 0x06, 0x03,
+ /* RLE: 046 Pixels @ 000,203*/ 46, 0x02,
+ /* ABS: 011 Pixels @ 046,203*/ 0, 11, 0x03, 0x00, 0x0A, 0x03, 0x00, 0x07, 0x00, 0x03, 0x11, 0x0B, 0x03,
+ /* RLE: 037 Pixels @ 057,203*/ 37, 0x00,
+ /* RLE: 001 Pixels @ 094,203*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 095,203*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 103,203*/ 1, 0x0B,
+ /* RLE: 044 Pixels @ 104,203*/ 44, 0x00,
+ /* ABS: 007 Pixels @ 148,203*/ 0, 7, 0x03, 0x0E, 0x07, 0x07, 0x07, 0x0D, 0x03,
+ /* RLE: 069 Pixels @ 155,203*/ 69, 0x00,
+ /* ABS: 002 Pixels @ 224,203*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 226,203*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 233,203*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 234,203*/ 8, 0x00,
+ /* ABS: 002 Pixels @ 242,203*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 244,203*/ 8, 0x03,
+ /* RLE: 001 Pixels @ 252,203*/ 1, 0x04,
+ /* RLE: 133 Pixels @ 253,203*/ 133, 0x00,
+ /* ABS: 002 Pixels @ 386,203*/ 0, 2, 0x0D, 0x06,
+ /* RLE: 046 Pixels @ 000,204*/ 46, 0x02,
+ /* ABS: 011 Pixels @ 046,204*/ 0, 11, 0x00, 0x00, 0x03, 0x03, 0x03, 0x07, 0x04, 0x03, 0x06, 0x0E, 0x03,
+ /* RLE: 037 Pixels @ 057,204*/ 37, 0x00,
+ /* RLE: 001 Pixels @ 094,204*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 095,204*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 103,204*/ 1, 0x0B,
+ /* RLE: 044 Pixels @ 104,204*/ 44, 0x00,
+ /* RLE: 003 Pixels @ 148,204*/ 3, 0x03,
+ /* ABS: 005 Pixels @ 151,204*/ 0, 5, 0x00, 0x0A, 0x03, 0x03, 0x04,
+ /* RLE: 069 Pixels @ 156,204*/ 69, 0x00,
+ /* RLE: 001 Pixels @ 225,204*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 226,204*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 233,204*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 235,204*/ 6, 0x00,
+ /* ABS: 002 Pixels @ 241,204*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 243,204*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 251,204*/ 0, 2, 0x04, 0x04,
+ /* RLE: 135 Pixels @ 253,204*/ 135, 0x00,
+ /* RLE: 048 Pixels @ 000,205*/ 48, 0x02,
+ /* RLE: 003 Pixels @ 048,205*/ 3, 0x03,
+ /* ABS: 006 Pixels @ 051,205*/ 0, 6, 0x0D, 0x0B, 0x03, 0x0B, 0x06, 0x03,
+ /* RLE: 038 Pixels @ 057,205*/ 38, 0x00,
+ /* RLE: 009 Pixels @ 095,205*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 104,205*/ 1, 0x0B,
+ /* RLE: 042 Pixels @ 105,205*/ 42, 0x00,
+ /* ABS: 009 Pixels @ 147,205*/ 0, 9, 0x03, 0x0E, 0x0B, 0x00, 0x06, 0x12, 0x03, 0x03, 0x04,
+ /* RLE: 070 Pixels @ 156,205*/ 70, 0x00,
+ /* RLE: 001 Pixels @ 226,205*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 227,205*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 234,205*/ 1, 0x04,
+ /* RLE: 005 Pixels @ 235,205*/ 5, 0x00,
+ /* ABS: 002 Pixels @ 240,205*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 242,205*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 250,205*/ 0, 2, 0x04, 0x04,
+ /* RLE: 136 Pixels @ 252,205*/ 136, 0x00,
+ /* RLE: 048 Pixels @ 000,206*/ 48, 0x02,
+ /* RLE: 001 Pixels @ 048,206*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 049,206*/ 8, 0x03,
+ /* RLE: 038 Pixels @ 057,206*/ 38, 0x00,
+ /* RLE: 001 Pixels @ 095,206*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 096,206*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 104,206*/ 1, 0x0B,
+ /* RLE: 041 Pixels @ 105,206*/ 41, 0x00,
+ /* ABS: 009 Pixels @ 146,206*/ 0, 9, 0x03, 0x00, 0x0F, 0x00, 0x11, 0x11, 0x0F, 0x0B, 0x03,
+ /* RLE: 071 Pixels @ 155,206*/ 71, 0x00,
+ /* ABS: 002 Pixels @ 226,206*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 228,206*/ 6, 0x03,
+ /* ABS: 007 Pixels @ 234,206*/ 0, 7, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 241,206*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 249,206*/ 0, 2, 0x04, 0x04,
+ /* RLE: 137 Pixels @ 251,206*/ 137, 0x00,
+ /* RLE: 048 Pixels @ 000,207*/ 48, 0x02,
+ /* RLE: 001 Pixels @ 048,207*/ 1, 0x00,
+ /* RLE: 006 Pixels @ 049,207*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 055,207*/ 1, 0x04,
+ /* RLE: 039 Pixels @ 056,207*/ 39, 0x00,
+ /* RLE: 001 Pixels @ 095,207*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 096,207*/ 9, 0x08,
+ /* RLE: 041 Pixels @ 105,207*/ 41, 0x00,
+ /* ABS: 009 Pixels @ 146,207*/ 0, 9, 0x03, 0x0B, 0x06, 0x0A, 0x07, 0x04, 0x0B, 0x0B, 0x03,
+ /* RLE: 072 Pixels @ 155,207*/ 72, 0x00,
+ /* RLE: 001 Pixels @ 227,207*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 228,207*/ 7, 0x03,
+ /* ABS: 005 Pixels @ 235,207*/ 0, 5, 0x04, 0x00, 0x00, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 240,207*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 248,207*/ 0, 2, 0x04, 0x04,
+ /* RLE: 138 Pixels @ 250,207*/ 138, 0x00,
+ /* RLE: 047 Pixels @ 000,208*/ 47, 0x02,
+ /* ABS: 008 Pixels @ 047,208*/ 0, 8, 0x00, 0x03, 0x0B, 0x0F, 0x07, 0x11, 0x0A, 0x03,
+ /* RLE: 041 Pixels @ 055,208*/ 41, 0x00,
+ /* RLE: 001 Pixels @ 096,208*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 097,208*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 105,208*/ 1, 0x0B,
+ /* RLE: 040 Pixels @ 106,208*/ 40, 0x00,
+ /* ABS: 009 Pixels @ 146,208*/ 0, 9, 0x03, 0x0B, 0x11, 0x0D, 0x11, 0x03, 0x06, 0x04, 0x03,
+ /* RLE: 072 Pixels @ 155,208*/ 72, 0x00,
+ /* ABS: 002 Pixels @ 227,208*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 229,208*/ 7, 0x03,
+ /* RLE: 003 Pixels @ 236,208*/ 3, 0x04,
+ /* RLE: 008 Pixels @ 239,208*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 247,208*/ 0, 2, 0x04, 0x04,
+ /* RLE: 139 Pixels @ 249,208*/ 139, 0x00,
+ /* RLE: 047 Pixels @ 000,209*/ 47, 0x02,
+ /* ABS: 007 Pixels @ 047,209*/ 0, 7, 0x03, 0x04, 0x07, 0x06, 0x0B, 0x06, 0x0F,
+ /* RLE: 042 Pixels @ 054,209*/ 42, 0x00,
+ /* RLE: 001 Pixels @ 096,209*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 097,209*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 105,209*/ 1, 0x0B,
+ /* RLE: 038 Pixels @ 106,209*/ 38, 0x00,
+ /* ABS: 009 Pixels @ 144,209*/ 0, 9, 0x03, 0x00, 0x03, 0x03, 0x06, 0x0F, 0x04, 0x0B, 0x0F,
+ /* RLE: 075 Pixels @ 153,209*/ 75, 0x00,
+ /* RLE: 001 Pixels @ 228,209*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 229,209*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 236,209*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 238,209*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 246,209*/ 0, 2, 0x04, 0x04,
+ /* RLE: 140 Pixels @ 248,209*/ 140, 0x00,
+ /* RLE: 047 Pixels @ 000,210*/ 47, 0x02,
+ /* ABS: 009 Pixels @ 047,210*/ 0, 9, 0x03, 0x0B, 0x0D, 0x03, 0x03, 0x03, 0x11, 0x04, 0x03,
+ /* RLE: 041 Pixels @ 056,210*/ 41, 0x00,
+ /* RLE: 009 Pixels @ 097,210*/ 9, 0x08,
+ /* RLE: 001 Pixels @ 106,210*/ 1, 0x0B,
+ /* RLE: 036 Pixels @ 107,210*/ 36, 0x00,
+ /* ABS: 004 Pixels @ 143,210*/ 0, 4, 0x03, 0x00, 0x00, 0x00,
+ /* RLE: 004 Pixels @ 147,210*/ 4, 0x03,
+ /* ABS: 003 Pixels @ 151,210*/ 0, 3, 0x00, 0x00, 0x03,
+ /* RLE: 075 Pixels @ 154,210*/ 75, 0x00,
+ /* RLE: 001 Pixels @ 229,210*/ 1, 0x04,
+ /* RLE: 015 Pixels @ 230,210*/ 15, 0x03,
+ /* ABS: 002 Pixels @ 245,210*/ 0, 2, 0x04, 0x04,
+ /* RLE: 141 Pixels @ 247,210*/ 141, 0x00,
+ /* RLE: 047 Pixels @ 000,211*/ 47, 0x02,
+ /* ABS: 010 Pixels @ 047,211*/ 0, 10, 0x03, 0x0B, 0x0D, 0x03, 0x03, 0x03, 0x0F, 0x04, 0x03, 0x04,
+ /* RLE: 040 Pixels @ 057,211*/ 40, 0x00,
+ /* RLE: 001 Pixels @ 097,211*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 098,211*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 106,211*/ 1, 0x0B,
+ /* RLE: 036 Pixels @ 107,211*/ 36, 0x00,
+ /* ABS: 012 Pixels @ 143,211*/ 0, 12, 0x03, 0x06, 0x07, 0x07, 0x07, 0x0D, 0x06, 0x0B, 0x0B, 0x03, 0x03, 0x04,
+ /* RLE: 074 Pixels @ 155,211*/ 74, 0x00,
+ /* ABS: 002 Pixels @ 229,211*/ 0, 2, 0x04, 0x04,
+ /* RLE: 013 Pixels @ 231,211*/ 13, 0x03,
+ /* ABS: 002 Pixels @ 244,211*/ 0, 2, 0x04, 0x04,
+ /* RLE: 142 Pixels @ 246,211*/ 142, 0x00,
+ /* RLE: 047 Pixels @ 000,212*/ 47, 0x02,
+ /* ABS: 009 Pixels @ 047,212*/ 0, 9, 0x03, 0x00, 0x07, 0x0D, 0x06, 0x0F, 0x0F, 0x03, 0x03,
+ /* RLE: 041 Pixels @ 056,212*/ 41, 0x00,
+ /* RLE: 001 Pixels @ 097,212*/ 1, 0x0B,
+ /* RLE: 004 Pixels @ 098,212*/ 4, 0x08,
+ /* ABS: 002 Pixels @ 102,212*/ 0, 2, 0x1B, 0x18,
+ /* RLE: 004 Pixels @ 104,212*/ 4, 0x03,
+ /* RLE: 035 Pixels @ 108,212*/ 35, 0x00,
+ /* ABS: 012 Pixels @ 143,212*/ 0, 12, 0x03, 0x00, 0x0A, 0x0B, 0x0B, 0x06, 0x0D, 0x07, 0x07, 0x00, 0x03, 0x04,
+ /* RLE: 075 Pixels @ 155,212*/ 75, 0x00,
+ /* RLE: 001 Pixels @ 230,212*/ 1, 0x04,
+ /* RLE: 012 Pixels @ 231,212*/ 12, 0x03,
+ /* ABS: 002 Pixels @ 243,212*/ 0, 2, 0x04, 0x04,
+ /* RLE: 143 Pixels @ 245,212*/ 143, 0x00,
+ /* RLE: 047 Pixels @ 000,213*/ 47, 0x02,
+ /* ABS: 010 Pixels @ 047,213*/ 0, 10, 0x18, 0x03, 0x0A, 0x0D, 0x0F, 0x12, 0x00, 0x03, 0x00, 0x03,
+ /* RLE: 041 Pixels @ 057,213*/ 41, 0x00,
+ /* ABS: 009 Pixels @ 098,213*/ 0, 9, 0x0A, 0x18, 0x03, 0x03, 0x03, 0x00, 0x04, 0x0E, 0x0D,
+ /* RLE: 036 Pixels @ 107,213*/ 36, 0x00,
+ /* RLE: 008 Pixels @ 143,213*/ 8, 0x03,
+ /* ABS: 003 Pixels @ 151,213*/ 0, 3, 0x00, 0x03, 0x03,
+ /* RLE: 076 Pixels @ 154,213*/ 76, 0x00,
+ /* ABS: 002 Pixels @ 230,213*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 232,213*/ 10, 0x03,
+ /* ABS: 002 Pixels @ 242,213*/ 0, 2, 0x04, 0x04,
+ /* RLE: 144 Pixels @ 244,213*/ 144, 0x00,
+ /* RLE: 048 Pixels @ 000,214*/ 48, 0x02,
+ /* ABS: 009 Pixels @ 048,214*/ 0, 9, 0x00, 0x03, 0x0A, 0x0B, 0x12, 0x0D, 0x07, 0x0F, 0x03,
+ /* RLE: 041 Pixels @ 057,214*/ 41, 0x00,
+ /* ABS: 005 Pixels @ 098,214*/ 0, 5, 0x03, 0x00, 0x0B, 0x12, 0x0F,
+ /* RLE: 004 Pixels @ 103,214*/ 4, 0x07,
+ /* ABS: 002 Pixels @ 107,214*/ 0, 2, 0x04, 0x03,
+ /* RLE: 033 Pixels @ 109,214*/ 33, 0x00,
+ /* ABS: 012 Pixels @ 142,214*/ 0, 12, 0x03, 0x00, 0x06, 0x03, 0x12, 0x0E, 0x0B, 0x00, 0x00, 0x03, 0x03, 0x04,
+ /* RLE: 077 Pixels @ 154,214*/ 77, 0x00,
+ /* RLE: 001 Pixels @ 231,214*/ 1, 0x04,
+ /* RLE: 009 Pixels @ 232,214*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 241,214*/ 0, 2, 0x04, 0x04,
+ /* RLE: 145 Pixels @ 243,214*/ 145, 0x00,
+ /* RLE: 049 Pixels @ 000,215*/ 49, 0x02,
+ /* ABS: 008 Pixels @ 049,215*/ 0, 8, 0x00, 0x06, 0x07, 0x0F, 0x06, 0x11, 0x06, 0x03,
+ /* RLE: 042 Pixels @ 057,215*/ 42, 0x00,
+ /* ABS: 009 Pixels @ 099,215*/ 0, 9, 0x12, 0x07, 0x11, 0x0E, 0x0B, 0x0D, 0x07, 0x0B, 0x03,
+ /* RLE: 036 Pixels @ 108,215*/ 36, 0x00,
+ /* ABS: 003 Pixels @ 144,215*/ 0, 3, 0x0E, 0x03, 0x0D,
+ /* RLE: 004 Pixels @ 147,215*/ 4, 0x07,
+ /* ABS: 003 Pixels @ 151,215*/ 0, 3, 0x06, 0x03, 0x04,
+ /* RLE: 078 Pixels @ 154,215*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 232,215*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 233,215*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 240,215*/ 0, 2, 0x04, 0x04,
+ /* RLE: 146 Pixels @ 242,215*/ 146, 0x00,
+ /* RLE: 049 Pixels @ 000,216*/ 49, 0x02,
+ /* ABS: 002 Pixels @ 049,216*/ 0, 2, 0x03, 0x00,
+ /* RLE: 004 Pixels @ 051,216*/ 4, 0x03,
+ /* ABS: 003 Pixels @ 055,216*/ 0, 3, 0x07, 0x04, 0x03,
+ /* RLE: 040 Pixels @ 058,216*/ 40, 0x00,
+ /* ABS: 009 Pixels @ 098,216*/ 0, 9, 0x03, 0x00, 0x03, 0x03, 0x03, 0x0E, 0x07, 0x04, 0x03,
+ /* RLE: 035 Pixels @ 107,216*/ 35, 0x00,
+ /* ABS: 012 Pixels @ 142,216*/ 0, 12, 0x03, 0x00, 0x0A, 0x03, 0x03, 0x03, 0x00, 0x04, 0x0D, 0x04, 0x03, 0x04,
+ /* RLE: 078 Pixels @ 154,216*/ 78, 0x00,
+ /* ABS: 002 Pixels @ 232,216*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 234,216*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 240,216*/ 0, 2, 0x04, 0x04,
+ /* RLE: 146 Pixels @ 242,216*/ 146, 0x00,
+ /* RLE: 049 Pixels @ 000,217*/ 49, 0x02,
+ /* RLE: 001 Pixels @ 049,217*/ 1, 0x18,
+ /* RLE: 005 Pixels @ 050,217*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 055,217*/ 1, 0x04,
+ /* RLE: 043 Pixels @ 056,217*/ 43, 0x00,
+ /* ABS: 006 Pixels @ 099,217*/ 0, 6, 0x0A, 0x03, 0x03, 0x0D, 0x07, 0x04,
+ /* RLE: 004 Pixels @ 105,217*/ 4, 0x03,
+ /* RLE: 033 Pixels @ 109,217*/ 33, 0x00,
+ /* ABS: 003 Pixels @ 142,217*/ 0, 3, 0x03, 0x0E, 0x12,
+ /* RLE: 005 Pixels @ 145,217*/ 5, 0x03,
+ /* ABS: 004 Pixels @ 150,217*/ 0, 4, 0x0B, 0x0B, 0x03, 0x04,
+ /* RLE: 079 Pixels @ 154,217*/ 79, 0x00,
+ /* RLE: 001 Pixels @ 233,217*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 234,217*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 241,217*/ 1, 0x04,
+ /* RLE: 091 Pixels @ 242,217*/ 91, 0x00,
+ /* RLE: 006 Pixels @ 333,217*/ 6, 0x04,
+ /* RLE: 049 Pixels @ 339,217*/ 49, 0x00,
+ /* RLE: 049 Pixels @ 000,218*/ 49, 0x02,
+ /* RLE: 001 Pixels @ 049,218*/ 1, 0x18,
+ /* RLE: 004 Pixels @ 050,218*/ 4, 0x03,
+ /* ABS: 003 Pixels @ 054,218*/ 0, 3, 0x00, 0x03, 0x03,
+ /* RLE: 043 Pixels @ 057,218*/ 43, 0x00,
+ /* ABS: 008 Pixels @ 100,218*/ 0, 8, 0x03, 0x0D, 0x07, 0x0B, 0x0A, 0x0E, 0x06, 0x07,
+ /* RLE: 035 Pixels @ 108,218*/ 35, 0x00,
+ /* ABS: 011 Pixels @ 143,218*/ 0, 11, 0x03, 0x03, 0x0B, 0x07, 0x06, 0x12, 0x0B, 0x0F, 0x0B, 0x03, 0x04,
+ /* RLE: 079 Pixels @ 154,218*/ 79, 0x00,
+ /* ABS: 002 Pixels @ 233,218*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 235,218*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 242,218*/ 1, 0x04,
+ /* RLE: 090 Pixels @ 243,218*/ 90, 0x00,
+ /* ABS: 007 Pixels @ 333,218*/ 0, 7, 0x04, 0x04, 0x03, 0x03, 0x03, 0x04, 0x04,
+ /* RLE: 048 Pixels @ 340,218*/ 48, 0x00,
+ /* RLE: 049 Pixels @ 000,219*/ 49, 0x02,
+ /* ABS: 008 Pixels @ 049,219*/ 0, 8, 0x03, 0x00, 0x12, 0x03, 0x0D, 0x07, 0x06, 0x03,
+ /* RLE: 042 Pixels @ 057,219*/ 42, 0x00,
+ /* ABS: 002 Pixels @ 099,219*/ 0, 2, 0x03, 0x12,
+ /* RLE: 005 Pixels @ 101,219*/ 5, 0x07,
+ /* ABS: 004 Pixels @ 106,219*/ 0, 4, 0x06, 0x0E, 0x00, 0x03,
+ /* RLE: 034 Pixels @ 110,219*/ 34, 0x00,
+ /* ABS: 010 Pixels @ 144,219*/ 0, 10, 0x03, 0x0A, 0x0E, 0x06, 0x11, 0x07, 0x0D, 0x03, 0x03, 0x04,
+ /* RLE: 080 Pixels @ 154,219*/ 80, 0x00,
+ /* RLE: 001 Pixels @ 234,219*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 235,219*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 242,219*/ 0, 2, 0x04, 0x04,
+ /* RLE: 088 Pixels @ 244,219*/ 88, 0x00,
+ /* ABS: 002 Pixels @ 332,219*/ 0, 2, 0x04, 0x04,
+ /* RLE: 005 Pixels @ 334,219*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 339,219*/ 1, 0x04,
+ /* RLE: 048 Pixels @ 340,219*/ 48, 0x00,
+ /* RLE: 049 Pixels @ 000,220*/ 49, 0x02,
+ /* ABS: 007 Pixels @ 049,220*/ 0, 7, 0x03, 0x0E, 0x0D, 0x0A, 0x07, 0x04, 0x0F,
+ /* RLE: 043 Pixels @ 056,220*/ 43, 0x00,
+ /* ABS: 010 Pixels @ 099,220*/ 0, 10, 0x03, 0x0E, 0x11, 0x0E, 0x0B, 0x00, 0x00, 0x04, 0x00, 0x0D,
+ /* RLE: 036 Pixels @ 109,220*/ 36, 0x00,
+ /* RLE: 008 Pixels @ 145,220*/ 8, 0x03,
+ /* RLE: 082 Pixels @ 153,220*/ 82, 0x00,
+ /* RLE: 001 Pixels @ 235,220*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 236,220*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 243,220*/ 1, 0x04,
+ /* RLE: 088 Pixels @ 244,220*/ 88, 0x00,
+ /* RLE: 001 Pixels @ 332,220*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 333,220*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 339,220*/ 1, 0x04,
+ /* RLE: 048 Pixels @ 340,220*/ 48, 0x00,
+ /* RLE: 049 Pixels @ 000,221*/ 49, 0x02,
+ /* ABS: 007 Pixels @ 049,221*/ 0, 7, 0x03, 0x06, 0x0B, 0x0A, 0x07, 0x00, 0x06,
+ /* RLE: 044 Pixels @ 056,221*/ 44, 0x00,
+ /* ABS: 011 Pixels @ 100,221*/ 0, 11, 0x03, 0x00, 0x0B, 0x06, 0x0F, 0x07, 0x07, 0x0A, 0x06, 0x0A, 0x03,
+ /* RLE: 033 Pixels @ 111,221*/ 33, 0x00,
+ /* ABS: 009 Pixels @ 144,221*/ 0, 9, 0x03, 0x00, 0x0B, 0x0B, 0x0A, 0x00, 0x03, 0x03, 0x04,
+ /* RLE: 082 Pixels @ 153,221*/ 82, 0x00,
+ /* ABS: 002 Pixels @ 235,221*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 237,221*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 243,221*/ 0, 2, 0x04, 0x04,
+ /* RLE: 086 Pixels @ 245,221*/ 86, 0x00,
+ /* ABS: 002 Pixels @ 331,221*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 333,221*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 339,221*/ 1, 0x04,
+ /* RLE: 048 Pixels @ 340,221*/ 48, 0x00,
+ /* RLE: 049 Pixels @ 000,222*/ 49, 0x02,
+ /* ABS: 007 Pixels @ 049,222*/ 0, 7, 0x03, 0x0B, 0x12, 0x0E, 0x07, 0x00, 0x07,
+ /* RLE: 044 Pixels @ 056,222*/ 44, 0x00,
+ /* ABS: 010 Pixels @ 100,222*/ 0, 10, 0x03, 0x12, 0x07, 0x11, 0x0E, 0x0B, 0x00, 0x03, 0x03, 0x03,
+ /* RLE: 033 Pixels @ 110,222*/ 33, 0x00,
+ /* ABS: 003 Pixels @ 143,222*/ 0, 3, 0x03, 0x00, 0x0F,
+ /* RLE: 004 Pixels @ 146,222*/ 4, 0x07,
+ /* ABS: 003 Pixels @ 150,222*/ 0, 3, 0x06, 0x03, 0x04,
+ /* RLE: 083 Pixels @ 153,222*/ 83, 0x00,
+ /* RLE: 001 Pixels @ 236,222*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 237,222*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 244,222*/ 1, 0x04,
+ /* RLE: 086 Pixels @ 245,222*/ 86, 0x00,
+ /* RLE: 001 Pixels @ 331,222*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 332,222*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 339,222*/ 1, 0x04,
+ /* RLE: 048 Pixels @ 340,222*/ 48, 0x00,
+ /* RLE: 049 Pixels @ 000,223*/ 49, 0x02,
+ /* ABS: 009 Pixels @ 049,223*/ 0, 9, 0x03, 0x00, 0x0F, 0x07, 0x06, 0x03, 0x0B, 0x03, 0x03,
+ /* RLE: 044 Pixels @ 058,223*/ 44, 0x00,
+ /* ABS: 008 Pixels @ 102,223*/ 0, 8, 0x03, 0x03, 0x00, 0x0A, 0x00, 0x03, 0x03, 0x0B,
+ /* RLE: 032 Pixels @ 110,223*/ 32, 0x00,
+ /* ABS: 011 Pixels @ 142,223*/ 0, 11, 0x03, 0x00, 0x00, 0x11, 0x03, 0x03, 0x00, 0x04, 0x04, 0x03, 0x04,
+ /* RLE: 083 Pixels @ 153,223*/ 83, 0x00,
+ /* ABS: 002 Pixels @ 236,223*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 238,223*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 245,223*/ 1, 0x04,
+ /* RLE: 084 Pixels @ 246,223*/ 84, 0x00,
+ /* ABS: 002 Pixels @ 330,223*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 332,223*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 338,223*/ 1, 0x04,
+ /* RLE: 049 Pixels @ 339,223*/ 49, 0x00,
+ /* RLE: 049 Pixels @ 000,224*/ 49, 0x02,
+ /* ABS: 010 Pixels @ 049,224*/ 0, 10, 0x18, 0x03, 0x00, 0x0A, 0x03, 0x03, 0x00, 0x0E, 0x00, 0x03,
+ /* RLE: 041 Pixels @ 059,224*/ 41, 0x00,
+ /* ABS: 009 Pixels @ 100,224*/ 0, 9, 0x0A, 0x18, 0x03, 0x0E, 0x07, 0x07, 0x07, 0x0D, 0x03,
+ /* RLE: 032 Pixels @ 109,224*/ 32, 0x00,
+ /* ABS: 005 Pixels @ 141,224*/ 0, 5, 0x03, 0x00, 0x00, 0x00, 0x11,
+ /* RLE: 006 Pixels @ 146,224*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 152,224*/ 1, 0x04,
+ /* RLE: 084 Pixels @ 153,224*/ 84, 0x00,
+ /* RLE: 001 Pixels @ 237,224*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 238,224*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 245,224*/ 1, 0x04,
+ /* RLE: 084 Pixels @ 246,224*/ 84, 0x00,
+ /* RLE: 001 Pixels @ 330,224*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 331,224*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 338,224*/ 1, 0x04,
+ /* RLE: 049 Pixels @ 339,224*/ 49, 0x00,
+ /* RLE: 050 Pixels @ 000,225*/ 50, 0x02,
+ /* ABS: 010 Pixels @ 050,225*/ 0, 10, 0x03, 0x03, 0x04, 0x0B, 0x12, 0x0D, 0x07, 0x07, 0x0E, 0x03,
+ /* RLE: 040 Pixels @ 060,225*/ 40, 0x00,
+ /* ABS: 010 Pixels @ 100,225*/ 0, 10, 0x0B, 0x03, 0x04, 0x07, 0x0E, 0x11, 0x0A, 0x11, 0x0B, 0x03,
+ /* RLE: 031 Pixels @ 110,225*/ 31, 0x00,
+ /* ABS: 012 Pixels @ 141,225*/ 0, 12, 0x03, 0x06, 0x07, 0x07, 0x07, 0x0F, 0x06, 0x0B, 0x0B, 0x03, 0x03, 0x04,
+ /* RLE: 085 Pixels @ 153,225*/ 85, 0x00,
+ /* RLE: 001 Pixels @ 238,225*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 239,225*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 246,225*/ 1, 0x04,
+ /* RLE: 082 Pixels @ 247,225*/ 82, 0x00,
+ /* ABS: 002 Pixels @ 329,225*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 331,225*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 337,225*/ 1, 0x04,
+ /* RLE: 050 Pixels @ 338,225*/ 50, 0x00,
+ /* RLE: 050 Pixels @ 000,226*/ 50, 0x02,
+ /* ABS: 010 Pixels @ 050,226*/ 0, 10, 0x03, 0x12, 0x07, 0x07, 0x11, 0x06, 0x07, 0x04, 0x0A, 0x03,
+ /* RLE: 041 Pixels @ 060,226*/ 41, 0x00,
+ /* ABS: 010 Pixels @ 101,226*/ 0, 10, 0x03, 0x0B, 0x06, 0x03, 0x0F, 0x03, 0x06, 0x0B, 0x03, 0x0B,
+ /* RLE: 030 Pixels @ 111,226*/ 30, 0x00,
+ /* ABS: 012 Pixels @ 141,226*/ 0, 12, 0x03, 0x00, 0x00, 0x0B, 0x0B, 0x06, 0x0D, 0x07, 0x07, 0x0A, 0x03, 0x04,
+ /* RLE: 085 Pixels @ 153,226*/ 85, 0x00,
+ /* ABS: 002 Pixels @ 238,226*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 240,226*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 246,226*/ 1, 0x04,
+ /* RLE: 081 Pixels @ 247,226*/ 81, 0x00,
+ /* ABS: 002 Pixels @ 328,226*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 330,226*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 337,226*/ 1, 0x04,
+ /* RLE: 050 Pixels @ 338,226*/ 50, 0x00,
+ /* RLE: 050 Pixels @ 000,227*/ 50, 0x02,
+ /* ABS: 009 Pixels @ 050,227*/ 0, 9, 0x03, 0x06, 0x12, 0x03, 0x03, 0x03, 0x06, 0x00, 0x03,
+ /* RLE: 043 Pixels @ 059,227*/ 43, 0x00,
+ /* ABS: 009 Pixels @ 102,227*/ 0, 9, 0x04, 0x0F, 0x0A, 0x12, 0x06, 0x07, 0x00, 0x18, 0x0B,
+ /* RLE: 031 Pixels @ 111,227*/ 31, 0x00,
+ /* RLE: 003 Pixels @ 142,227*/ 3, 0x03,
+ /* ABS: 007 Pixels @ 145,227*/ 0, 7, 0x00, 0x0B, 0x0B, 0x0A, 0x00, 0x03, 0x03,
+ /* RLE: 087 Pixels @ 152,227*/ 87, 0x00,
+ /* RLE: 001 Pixels @ 239,227*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 240,227*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 247,227*/ 1, 0x04,
+ /* RLE: 078 Pixels @ 248,227*/ 78, 0x00,
+ /* ABS: 002 Pixels @ 326,227*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 328,227*/ 8, 0x03,
+ /* RLE: 001 Pixels @ 336,227*/ 1, 0x04,
+ /* RLE: 051 Pixels @ 337,227*/ 51, 0x00,
+ /* RLE: 050 Pixels @ 000,228*/ 50, 0x02,
+ /* ABS: 009 Pixels @ 050,228*/ 0, 9, 0x03, 0x0A, 0x0A, 0x12, 0x03, 0x0D, 0x07, 0x06, 0x03,
+ /* RLE: 043 Pixels @ 059,228*/ 43, 0x00,
+ /* ABS: 009 Pixels @ 102,228*/ 0, 9, 0x03, 0x06, 0x06, 0x0B, 0x0F, 0x04, 0x03, 0x1B, 0x0B,
+ /* RLE: 034 Pixels @ 111,228*/ 34, 0x00,
+ /* RLE: 001 Pixels @ 145,228*/ 1, 0x0F,
+ /* RLE: 004 Pixels @ 146,228*/ 4, 0x07,
+ /* ABS: 002 Pixels @ 150,228*/ 0, 2, 0x06, 0x03,
+ /* RLE: 087 Pixels @ 152,228*/ 87, 0x00,
+ /* ABS: 002 Pixels @ 239,228*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 241,228*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 247,228*/ 1, 0x04,
+ /* RLE: 076 Pixels @ 248,228*/ 76, 0x00,
+ /* ABS: 002 Pixels @ 324,228*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 326,228*/ 10, 0x03,
+ /* RLE: 001 Pixels @ 336,228*/ 1, 0x04,
+ /* RLE: 051 Pixels @ 337,228*/ 51, 0x00,
+ /* RLE: 050 Pixels @ 000,229*/ 50, 0x02,
+ /* ABS: 010 Pixels @ 050,229*/ 0, 10, 0x18, 0x03, 0x0E, 0x0D, 0x0A, 0x07, 0x0B, 0x0F, 0x00, 0x03,
+ /* RLE: 041 Pixels @ 060,229*/ 41, 0x00,
+ /* ABS: 010 Pixels @ 101,229*/ 0, 10, 0x0B, 0x03, 0x03, 0x00, 0x03, 0x00, 0x0A, 0x03, 0x03, 0x0B,
+ /* RLE: 033 Pixels @ 111,229*/ 33, 0x00,
+ /* ABS: 008 Pixels @ 144,229*/ 0, 8, 0x0A, 0x11, 0x03, 0x03, 0x0A, 0x04, 0x04, 0x03,
+ /* RLE: 088 Pixels @ 152,229*/ 88, 0x00,
+ /* RLE: 001 Pixels @ 240,229*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 241,229*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 248,229*/ 1, 0x04,
+ /* RLE: 073 Pixels @ 249,229*/ 73, 0x00,
+ /* RLE: 003 Pixels @ 322,229*/ 3, 0x04,
+ /* RLE: 010 Pixels @ 325,229*/ 10, 0x03,
+ /* RLE: 001 Pixels @ 335,229*/ 1, 0x04,
+ /* RLE: 052 Pixels @ 336,229*/ 52, 0x00,
+ /* RLE: 051 Pixels @ 000,230*/ 51, 0x02,
+ /* ABS: 007 Pixels @ 051,230*/ 0, 7, 0x03, 0x06, 0x0B, 0x00, 0x07, 0x00, 0x06,
+ /* RLE: 043 Pixels @ 058,230*/ 43, 0x00,
+ /* ABS: 009 Pixels @ 101,230*/ 0, 9, 0x0B, 0x18, 0x03, 0x0E, 0x07, 0x07, 0x07, 0x0D, 0x03,
+ /* RLE: 033 Pixels @ 110,230*/ 33, 0x00,
+ /* ABS: 003 Pixels @ 143,230*/ 0, 3, 0x03, 0x03, 0x11,
+ /* RLE: 005 Pixels @ 146,230*/ 5, 0x03,
+ /* RLE: 089 Pixels @ 151,230*/ 89, 0x00,
+ /* ABS: 002 Pixels @ 240,230*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 242,230*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 248,230*/ 1, 0x04,
+ /* RLE: 054 Pixels @ 249,230*/ 54, 0x00,
+ /* ABS: 007 Pixels @ 303,230*/ 0, 7, 0x03, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03,
+ /* RLE: 010 Pixels @ 310,230*/ 10, 0x00,
+ /* RLE: 003 Pixels @ 320,230*/ 3, 0x04,
+ /* RLE: 011 Pixels @ 323,230*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 334,230*/ 0, 2, 0x04, 0x04,
+ /* RLE: 052 Pixels @ 336,230*/ 52, 0x00,
+ /* RLE: 051 Pixels @ 000,231*/ 51, 0x02,
+ /* ABS: 007 Pixels @ 051,231*/ 0, 7, 0x03, 0x0B, 0x12, 0x0E, 0x07, 0x00, 0x07,
+ /* RLE: 045 Pixels @ 058,231*/ 45, 0x00,
+ /* ABS: 009 Pixels @ 103,231*/ 0, 9, 0x04, 0x07, 0x12, 0x04, 0x0A, 0x0F, 0x04, 0x03, 0x0A,
+ /* RLE: 031 Pixels @ 112,231*/ 31, 0x00,
+ /* ABS: 008 Pixels @ 143,231*/ 0, 8, 0x03, 0x0B, 0x07, 0x0F, 0x06, 0x0B, 0x04, 0x03,
+ /* RLE: 090 Pixels @ 151,231*/ 90, 0x00,
+ /* RLE: 001 Pixels @ 241,231*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 242,231*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 249,231*/ 1, 0x04,
+ /* RLE: 051 Pixels @ 250,231*/ 51, 0x00,
+ /* ABS: 009 Pixels @ 301,231*/ 0, 9, 0x03, 0x00, 0x04, 0x03, 0x03, 0x03, 0x04, 0x06, 0x03,
+ /* RLE: 009 Pixels @ 310,231*/ 9, 0x00,
+ /* ABS: 002 Pixels @ 319,231*/ 0, 2, 0x04, 0x04,
+ /* RLE: 012 Pixels @ 321,231*/ 12, 0x03,
+ /* ABS: 002 Pixels @ 333,231*/ 0, 2, 0x04, 0x04,
+ /* RLE: 053 Pixels @ 335,231*/ 53, 0x00,
+ /* RLE: 051 Pixels @ 000,232*/ 51, 0x02,
+ /* ABS: 009 Pixels @ 051,232*/ 0, 9, 0x03, 0x00, 0x0F, 0x07, 0x06, 0x03, 0x0B, 0x03, 0x03,
+ /* RLE: 042 Pixels @ 060,232*/ 42, 0x00,
+ /* ABS: 011 Pixels @ 102,232*/ 0, 11, 0x03, 0x0B, 0x0D, 0x03, 0x03, 0x03, 0x0E, 0x0B, 0x03, 0x00, 0x03,
+ /* RLE: 028 Pixels @ 113,232*/ 28, 0x00,
+ /* ABS: 010 Pixels @ 141,232*/ 0, 10, 0x03, 0x00, 0x03, 0x0A, 0x0B, 0x06, 0x0D, 0x07, 0x07, 0x0A,
+ /* RLE: 090 Pixels @ 151,232*/ 90, 0x00,
+ /* ABS: 002 Pixels @ 241,232*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 243,232*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 249,232*/ 1, 0x04,
+ /* RLE: 046 Pixels @ 250,232*/ 46, 0x00,
+ /* RLE: 006 Pixels @ 296,232*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 302,232*/ 0, 8, 0x0E, 0x11, 0x0A, 0x00, 0x0D, 0x11, 0x06, 0x03,
+ /* RLE: 007 Pixels @ 310,232*/ 7, 0x00,
+ /* ABS: 002 Pixels @ 317,232*/ 0, 2, 0x04, 0x04,
+ /* RLE: 012 Pixels @ 319,232*/ 12, 0x03,
+ /* RLE: 003 Pixels @ 331,232*/ 3, 0x04,
+ /* RLE: 054 Pixels @ 334,232*/ 54, 0x00,
+ /* RLE: 051 Pixels @ 000,233*/ 51, 0x02,
+ /* ABS: 010 Pixels @ 051,233*/ 0, 10, 0x18, 0x03, 0x00, 0x00, 0x03, 0x03, 0x0A, 0x0E, 0x00, 0x03,
+ /* RLE: 042 Pixels @ 061,233*/ 42, 0x00,
+ /* ABS: 010 Pixels @ 103,233*/ 0, 10, 0x0A, 0x0F, 0x00, 0x03, 0x0A, 0x0F, 0x06, 0x0F, 0x07, 0x03,
+ /* RLE: 027 Pixels @ 113,233*/ 27, 0x00,
+ /* ABS: 003 Pixels @ 140,233*/ 0, 3, 0x03, 0x00, 0x00,
+ /* RLE: 006 Pixels @ 143,233*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 149,233*/ 0, 2, 0x00, 0x03,
+ /* RLE: 091 Pixels @ 151,233*/ 91, 0x00,
+ /* RLE: 001 Pixels @ 242,233*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 243,233*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 250,233*/ 1, 0x04,
+ /* RLE: 044 Pixels @ 251,233*/ 44, 0x00,
+ /* ABS: 022 Pixels @ 295,233*/ 0, 22, 0x03, 0x00, 0x12, 0x07, 0x11, 0x00, 0x03, 0x12, 0x07, 0x0F, 0x00, 0x07, 0x06, 0x03, 0x03, 0x00, 0x03, 0x03, 0x03, 0x00, 0x04, 0x04,
+ /* RLE: 012 Pixels @ 317,233*/ 12, 0x03,
+ /* RLE: 003 Pixels @ 329,233*/ 3, 0x04,
+ /* RLE: 056 Pixels @ 332,233*/ 56, 0x00,
+ /* RLE: 052 Pixels @ 000,234*/ 52, 0x02,
+ /* ABS: 010 Pixels @ 052,234*/ 0, 10, 0x00, 0x03, 0x04, 0x0B, 0x12, 0x0D, 0x07, 0x07, 0x0E, 0x03,
+ /* RLE: 040 Pixels @ 062,234*/ 40, 0x00,
+ /* ABS: 003 Pixels @ 102,234*/ 0, 3, 0x0A, 0x03, 0x06,
+ /* RLE: 004 Pixels @ 105,234*/ 4, 0x07,
+ /* ABS: 004 Pixels @ 109,234*/ 0, 4, 0x11, 0x12, 0x0B, 0x03,
+ /* RLE: 027 Pixels @ 113,234*/ 27, 0x00,
+ /* ABS: 011 Pixels @ 140,234*/ 0, 11, 0x03, 0x06, 0x06, 0x0B, 0x07, 0x0D, 0x06, 0x0B, 0x0B, 0x03, 0x03,
+ /* RLE: 091 Pixels @ 151,234*/ 91, 0x00,
+ /* ABS: 002 Pixels @ 242,234*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 244,234*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 250,234*/ 1, 0x04,
+ /* RLE: 043 Pixels @ 251,234*/ 43, 0x00,
+ /* ABS: 022 Pixels @ 294,234*/ 0, 22, 0x03, 0x0A, 0x07, 0x12, 0x0B, 0x11, 0x0B, 0x03, 0x0E, 0x0F, 0x0E, 0x03, 0x12, 0x0F, 0x03, 0x00, 0x03, 0x12, 0x11, 0x03, 0x04, 0x04,
+ /* RLE: 012 Pixels @ 316,234*/ 12, 0x03,
+ /* ABS: 002 Pixels @ 328,234*/ 0, 2, 0x04, 0x04,
+ /* RLE: 058 Pixels @ 330,234*/ 58, 0x00,
+ /* RLE: 052 Pixels @ 000,235*/ 52, 0x02,
+ /* ABS: 010 Pixels @ 052,235*/ 0, 10, 0x03, 0x12, 0x07, 0x07, 0x11, 0x06, 0x07, 0x04, 0x0A, 0x03,
+ /* RLE: 041 Pixels @ 062,235*/ 41, 0x00,
+ /* ABS: 009 Pixels @ 103,235*/ 0, 9, 0x03, 0x0D, 0x06, 0x0B, 0x0A, 0x00, 0x03, 0x03, 0x03,
+ /* RLE: 028 Pixels @ 112,235*/ 28, 0x00,
+ /* ABS: 009 Pixels @ 140,235*/ 0, 9, 0x03, 0x00, 0x00, 0x00, 0x0B, 0x06, 0x0D, 0x07, 0x07,
+ /* RLE: 094 Pixels @ 149,235*/ 94, 0x00,
+ /* RLE: 001 Pixels @ 243,235*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 244,235*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 251,235*/ 1, 0x04,
+ /* RLE: 042 Pixels @ 252,235*/ 42, 0x00,
+ /* ABS: 003 Pixels @ 294,235*/ 0, 3, 0x03, 0x06, 0x0D,
+ /* RLE: 006 Pixels @ 297,235*/ 6, 0x03,
+ /* ABS: 010 Pixels @ 303,235*/ 0, 10, 0x0E, 0x07, 0x00, 0x00, 0x07, 0x04, 0x03, 0x03, 0x04, 0x04,
+ /* RLE: 013 Pixels @ 313,235*/ 13, 0x03,
+ /* ABS: 002 Pixels @ 326,235*/ 0, 2, 0x04, 0x04,
+ /* RLE: 060 Pixels @ 328,235*/ 60, 0x00,
+ /* RLE: 052 Pixels @ 000,236*/ 52, 0x02,
+ /* ABS: 009 Pixels @ 052,236*/ 0, 9, 0x03, 0x06, 0x12, 0x03, 0x03, 0x03, 0x0E, 0x00, 0x03,
+ /* RLE: 042 Pixels @ 061,236*/ 42, 0x00,
+ /* RLE: 003 Pixels @ 103,236*/ 3, 0x03,
+ /* ABS: 007 Pixels @ 106,236*/ 0, 7, 0x00, 0x04, 0x00, 0x03, 0x03, 0x08, 0x0B,
+ /* RLE: 028 Pixels @ 113,236*/ 28, 0x00,
+ /* RLE: 007 Pixels @ 141,236*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 148,236*/ 0, 2, 0x00, 0x03,
+ /* RLE: 093 Pixels @ 150,236*/ 93, 0x00,
+ /* ABS: 002 Pixels @ 243,236*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 245,236*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 251,236*/ 1, 0x04,
+ /* RLE: 042 Pixels @ 252,236*/ 42, 0x00,
+ /* ABS: 015 Pixels @ 294,236*/ 0, 15, 0x03, 0x0B, 0x07, 0x0D, 0x0F, 0x07, 0x07, 0x12, 0x03, 0x00, 0x07, 0x0B, 0x00, 0x11, 0x06,
+ /* RLE: 015 Pixels @ 309,236*/ 15, 0x03,
+ /* ABS: 002 Pixels @ 324,236*/ 0, 2, 0x04, 0x04,
+ /* RLE: 062 Pixels @ 326,236*/ 62, 0x00,
+ /* RLE: 052 Pixels @ 000,237*/ 52, 0x02,
+ /* ABS: 008 Pixels @ 052,237*/ 0, 8, 0x03, 0x0A, 0x00, 0x03, 0x03, 0x03, 0x00, 0x03,
+ /* RLE: 044 Pixels @ 060,237*/ 44, 0x00,
+ /* ABS: 009 Pixels @ 104,237*/ 0, 9, 0x03, 0x0E, 0x07, 0x07, 0x07, 0x0D, 0x03, 0x18, 0x0B,
+ /* RLE: 029 Pixels @ 113,237*/ 29, 0x00,
+ /* ABS: 009 Pixels @ 142,237*/ 0, 9, 0x03, 0x0B, 0x07, 0x07, 0x0A, 0x0E, 0x03, 0x03, 0x04,
+ /* RLE: 093 Pixels @ 151,237*/ 93, 0x00,
+ /* RLE: 001 Pixels @ 244,237*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 245,237*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 252,237*/ 1, 0x04,
+ /* RLE: 039 Pixels @ 253,237*/ 39, 0x00,
+ /* ABS: 017 Pixels @ 292,237*/ 0, 17, 0x04, 0x04, 0x03, 0x03, 0x0B, 0x06, 0x12, 0x0B, 0x12, 0x07, 0x04, 0x03, 0x0E, 0x07, 0x0F, 0x04, 0x04,
+ /* RLE: 013 Pixels @ 309,237*/ 13, 0x03,
+ /* RLE: 003 Pixels @ 322,237*/ 3, 0x04,
+ /* RLE: 063 Pixels @ 325,237*/ 63, 0x00,
+ /* RLE: 052 Pixels @ 000,238*/ 52, 0x02,
+ /* ABS: 009 Pixels @ 052,238*/ 0, 9, 0x03, 0x0A, 0x0B, 0x12, 0x0D, 0x07, 0x0F, 0x03, 0x04,
+ /* RLE: 042 Pixels @ 061,238*/ 42, 0x00,
+ /* ABS: 010 Pixels @ 103,238*/ 0, 10, 0x03, 0x04, 0x07, 0x0E, 0x11, 0x00, 0x11, 0x0B, 0x03, 0x0B,
+ /* RLE: 028 Pixels @ 113,238*/ 28, 0x00,
+ /* ABS: 010 Pixels @ 141,238*/ 0, 10, 0x03, 0x00, 0x07, 0x04, 0x0D, 0x0A, 0x0F, 0x0B, 0x03, 0x04,
+ /* RLE: 093 Pixels @ 151,238*/ 93, 0x00,
+ /* ABS: 002 Pixels @ 244,238*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 246,238*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 252,238*/ 1, 0x04,
+ /* RLE: 035 Pixels @ 253,238*/ 35, 0x00,
+ /* RLE: 007 Pixels @ 288,238*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 295,238*/ 1, 0x0A,
+ /* RLE: 005 Pixels @ 296,238*/ 5, 0x03,
+ /* ABS: 006 Pixels @ 301,238*/ 0, 6, 0x07, 0x0B, 0x03, 0x03, 0x0A, 0x00,
+ /* RLE: 013 Pixels @ 307,238*/ 13, 0x03,
+ /* RLE: 003 Pixels @ 320,238*/ 3, 0x04,
+ /* RLE: 065 Pixels @ 323,238*/ 65, 0x00,
+ /* RLE: 052 Pixels @ 000,239*/ 52, 0x02,
+ /* ABS: 008 Pixels @ 052,239*/ 0, 8, 0x03, 0x06, 0x07, 0x0F, 0x06, 0x11, 0x06, 0x03,
+ /* RLE: 043 Pixels @ 060,239*/ 43, 0x00,
+ /* ABS: 010 Pixels @ 103,239*/ 0, 10, 0x03, 0x0B, 0x06, 0x03, 0x0F, 0x03, 0x06, 0x0B, 0x03, 0x0B,
+ /* RLE: 029 Pixels @ 113,239*/ 29, 0x00,
+ /* ABS: 009 Pixels @ 142,239*/ 0, 9, 0x0B, 0x06, 0x03, 0x0F, 0x03, 0x0E, 0x0B, 0x03, 0x04,
+ /* RLE: 094 Pixels @ 151,239*/ 94, 0x00,
+ /* RLE: 001 Pixels @ 245,239*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 246,239*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 252,239*/ 0, 2, 0x04, 0x04,
+ /* RLE: 024 Pixels @ 254,239*/ 24, 0x00,
+ /* RLE: 003 Pixels @ 278,239*/ 3, 0x03,
+ /* RLE: 005 Pixels @ 281,239*/ 5, 0x00,
+ /* ABS: 017 Pixels @ 286,239*/ 0, 17, 0x03, 0x03, 0x00, 0x11, 0x07, 0x0B, 0x03, 0x0E, 0x07, 0x07, 0x04, 0x07, 0x0B, 0x04, 0x0D, 0x0F, 0x00,
+ /* RLE: 016 Pixels @ 303,239*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 319,239*/ 0, 2, 0x04, 0x04,
+ /* RLE: 067 Pixels @ 321,239*/ 67, 0x00,
+ /* RLE: 052 Pixels @ 000,240*/ 52, 0x02,
+ /* ABS: 002 Pixels @ 052,240*/ 0, 2, 0x03, 0x00,
+ /* RLE: 004 Pixels @ 054,240*/ 4, 0x03,
+ /* ABS: 002 Pixels @ 058,240*/ 0, 2, 0x07, 0x04,
+ /* RLE: 043 Pixels @ 060,240*/ 43, 0x00,
+ /* ABS: 011 Pixels @ 103,240*/ 0, 11, 0x03, 0x04, 0x0F, 0x0A, 0x12, 0x06, 0x07, 0x0A, 0x18, 0x08, 0x0B,
+ /* RLE: 027 Pixels @ 114,240*/ 27, 0x00,
+ /* ABS: 010 Pixels @ 141,240*/ 0, 10, 0x03, 0x00, 0x07, 0x0E, 0x0F, 0x0A, 0x11, 0x0B, 0x03, 0x04,
+ /* RLE: 094 Pixels @ 151,240*/ 94, 0x00,
+ /* RLE: 001 Pixels @ 245,240*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 246,240*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 253,240*/ 1, 0x04,
+ /* RLE: 024 Pixels @ 254,240*/ 24, 0x00,
+ /* ABS: 003 Pixels @ 278,240*/ 0, 3, 0x03, 0x06, 0x04,
+ /* RLE: 004 Pixels @ 281,240*/ 4, 0x03,
+ /* ABS: 017 Pixels @ 285,240*/ 0, 17, 0x00, 0x00, 0x11, 0x06, 0x04, 0x06, 0x07, 0x00, 0x0E, 0x0E, 0x00, 0x03, 0x06, 0x07, 0x07, 0x12, 0x00,
+ /* RLE: 015 Pixels @ 302,240*/ 15, 0x03,
+ /* ABS: 002 Pixels @ 317,240*/ 0, 2, 0x04, 0x04,
+ /* RLE: 069 Pixels @ 319,240*/ 69, 0x00,
+ /* RLE: 052 Pixels @ 000,241*/ 52, 0x02,
+ /* ABS: 002 Pixels @ 052,241*/ 0, 2, 0x18, 0x00,
+ /* RLE: 004 Pixels @ 054,241*/ 4, 0x03,
+ /* ABS: 003 Pixels @ 058,241*/ 0, 3, 0x04, 0x00, 0x03,
+ /* RLE: 037 Pixels @ 061,241*/ 37, 0x00,
+ /* RLE: 005 Pixels @ 098,241*/ 5, 0x03,
+ /* ABS: 011 Pixels @ 103,241*/ 0, 11, 0x00, 0x03, 0x06, 0x06, 0x0B, 0x0F, 0x04, 0x03, 0x03, 0x18, 0x0B,
+ /* RLE: 026 Pixels @ 114,241*/ 26, 0x00,
+ /* ABS: 010 Pixels @ 140,241*/ 0, 10, 0x03, 0x00, 0x03, 0x0E, 0x07, 0x07, 0x07, 0x0D, 0x03, 0x03,
+ /* RLE: 096 Pixels @ 150,241*/ 96, 0x00,
+ /* RLE: 001 Pixels @ 246,241*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 247,241*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 253,241*/ 0, 2, 0x04, 0x04,
+ /* RLE: 023 Pixels @ 255,241*/ 23, 0x00,
+ /* ABS: 015 Pixels @ 278,241*/ 0, 15, 0x03, 0x11, 0x06, 0x00, 0x11, 0x07, 0x0B, 0x03, 0x03, 0x07, 0x06, 0x03, 0x00, 0x07, 0x0B,
+ /* RLE: 025 Pixels @ 293,241*/ 25, 0x03,
+ /* ABS: 002 Pixels @ 318,241*/ 0, 2, 0x04, 0x04,
+ /* RLE: 068 Pixels @ 320,241*/ 68, 0x00,
+ /* RLE: 053 Pixels @ 000,242*/ 53, 0x02,
+ /* ABS: 003 Pixels @ 053,242*/ 0, 3, 0x03, 0x0A, 0x0A,
+ /* RLE: 005 Pixels @ 056,242*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 061,242*/ 1, 0x04,
+ /* RLE: 033 Pixels @ 062,242*/ 33, 0x00,
+ /* RLE: 003 Pixels @ 095,242*/ 3, 0x03,
+ /* RLE: 005 Pixels @ 098,242*/ 5, 0x13,
+ /* RLE: 003 Pixels @ 103,242*/ 3, 0x03,
+ /* ABS: 008 Pixels @ 106,242*/ 0, 8, 0x00, 0x03, 0x03, 0x03, 0x00, 0x04, 0x03, 0x0B,
+ /* RLE: 025 Pixels @ 114,242*/ 25, 0x00,
+ /* ABS: 011 Pixels @ 139,242*/ 0, 11, 0x03, 0x00, 0x00, 0x00, 0x03, 0x03, 0x0A, 0x00, 0x03, 0x03, 0x04,
+ /* RLE: 096 Pixels @ 150,242*/ 96, 0x00,
+ /* RLE: 001 Pixels @ 246,242*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 247,242*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 254,242*/ 1, 0x04,
+ /* RLE: 023 Pixels @ 255,242*/ 23, 0x00,
+ /* ABS: 015 Pixels @ 278,242*/ 0, 15, 0x03, 0x0B, 0x07, 0x0D, 0x04, 0x12, 0x07, 0x00, 0x03, 0x0E, 0x0F, 0x03, 0x03, 0x12, 0x11,
+ /* RLE: 004 Pixels @ 293,242*/ 4, 0x03,
+ /* RLE: 014 Pixels @ 297,242*/ 14, 0x04,
+ /* RLE: 008 Pixels @ 311,242*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 319,242*/ 0, 2, 0x04, 0x04,
+ /* RLE: 067 Pixels @ 321,242*/ 67, 0x00,
+ /* RLE: 053 Pixels @ 000,243*/ 53, 0x02,
+ /* ABS: 003 Pixels @ 053,243*/ 0, 3, 0x03, 0x06, 0x06,
+ /* RLE: 005 Pixels @ 056,243*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 061,243*/ 1, 0x04,
+ /* RLE: 032 Pixels @ 062,243*/ 32, 0x00,
+ /* ABS: 004 Pixels @ 094,243*/ 0, 4, 0x03, 0x03, 0x13, 0x13,
+ /* RLE: 005 Pixels @ 098,243*/ 5, 0x16,
+ /* ABS: 011 Pixels @ 103,243*/ 0, 11, 0x13, 0x13, 0x03, 0x03, 0x0B, 0x06, 0x0F, 0x07, 0x07, 0x03, 0x0B,
+ /* RLE: 025 Pixels @ 114,243*/ 25, 0x00,
+ /* ABS: 010 Pixels @ 139,243*/ 0, 10, 0x03, 0x06, 0x07, 0x07, 0x07, 0x0D, 0x06, 0x0B, 0x0B, 0x03,
+ /* RLE: 098 Pixels @ 149,243*/ 98, 0x00,
+ /* RLE: 001 Pixels @ 247,243*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 248,243*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 254,243*/ 0, 2, 0x04, 0x04,
+ /* RLE: 014 Pixels @ 256,243*/ 14, 0x00,
+ /* ABS: 002 Pixels @ 270,243*/ 0, 2, 0x03, 0x03,
+ /* RLE: 004 Pixels @ 272,243*/ 4, 0x00,
+ /* RLE: 004 Pixels @ 276,243*/ 4, 0x03,
+ /* ABS: 016 Pixels @ 280,243*/ 0, 16, 0x0F, 0x06, 0x03, 0x00, 0x07, 0x0B, 0x03, 0x00, 0x07, 0x04, 0x03, 0x0A, 0x07, 0x00, 0x03, 0x04,
+ /* RLE: 014 Pixels @ 296,243*/ 14, 0x00,
+ /* ABS: 002 Pixels @ 310,243*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 312,243*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 320,243*/ 0, 2, 0x04, 0x04,
+ /* RLE: 066 Pixels @ 322,243*/ 66, 0x00,
+ /* RLE: 053 Pixels @ 000,244*/ 53, 0x02,
+ /* ABS: 003 Pixels @ 053,244*/ 0, 3, 0x03, 0x00, 0x00,
+ /* RLE: 005 Pixels @ 056,244*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 061,244*/ 1, 0x04,
+ /* RLE: 031 Pixels @ 062,244*/ 31, 0x00,
+ /* ABS: 003 Pixels @ 093,244*/ 0, 3, 0x03, 0x03, 0x13,
+ /* RLE: 007 Pixels @ 096,244*/ 7, 0x16,
+ /* ABS: 010 Pixels @ 103,244*/ 0, 10, 0x17, 0x17, 0x13, 0x03, 0x03, 0x0D, 0x0E, 0x0E, 0x06, 0x03,
+ /* RLE: 026 Pixels @ 113,244*/ 26, 0x00,
+ /* ABS: 009 Pixels @ 139,244*/ 0, 9, 0x03, 0x00, 0x00, 0x0B, 0x0B, 0x06, 0x0D, 0x07, 0x07,
+ /* RLE: 099 Pixels @ 148,244*/ 99, 0x00,
+ /* RLE: 001 Pixels @ 247,244*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 248,244*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 255,244*/ 1, 0x04,
+ /* RLE: 013 Pixels @ 256,244*/ 13, 0x00,
+ /* ABS: 025 Pixels @ 269,244*/ 0, 25, 0x03, 0x04, 0x0B, 0x03, 0x00, 0x03, 0x03, 0x04, 0x06, 0x12, 0x03, 0x0E, 0x0F, 0x03, 0x03, 0x12, 0x11, 0x03, 0x03, 0x0D, 0x0D, 0x03, 0x03, 0x00, 0x03,
+ /* RLE: 017 Pixels @ 294,244*/ 17, 0x00,
+ /* ABS: 002 Pixels @ 311,244*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 313,244*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 321,244*/ 0, 2, 0x04, 0x04,
+ /* RLE: 065 Pixels @ 323,244*/ 65, 0x00,
+ /* RLE: 053 Pixels @ 000,245*/ 53, 0x02,
+ /* ABS: 002 Pixels @ 053,245*/ 0, 2, 0x18, 0x00,
+ /* RLE: 006 Pixels @ 055,245*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 061,245*/ 1, 0x04,
+ /* RLE: 030 Pixels @ 062,245*/ 30, 0x00,
+ /* ABS: 008 Pixels @ 092,245*/ 0, 8, 0x03, 0x03, 0x13, 0x16, 0x16, 0x16, 0x03, 0x03,
+ /* RLE: 004 Pixels @ 100,245*/ 4, 0x16,
+ /* ABS: 003 Pixels @ 104,245*/ 0, 3, 0x17, 0x17, 0x13,
+ /* RLE: 004 Pixels @ 107,245*/ 4, 0x03,
+ /* ABS: 004 Pixels @ 111,245*/ 0, 4, 0x0E, 0x0E, 0x03, 0x0B,
+ /* RLE: 024 Pixels @ 115,245*/ 24, 0x00,
+ /* ABS: 002 Pixels @ 139,245*/ 0, 2, 0x03, 0x04,
+ /* RLE: 006 Pixels @ 141,245*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 147,245*/ 0, 2, 0x00, 0x03,
+ /* RLE: 099 Pixels @ 149,245*/ 99, 0x00,
+ /* RLE: 001 Pixels @ 248,245*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 249,245*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 255,245*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 257,245*/ 8, 0x00,
+ /* RLE: 003 Pixels @ 265,245*/ 3, 0x03,
+ /* ABS: 024 Pixels @ 268,245*/ 0, 24, 0x00, 0x03, 0x0E, 0x07, 0x03, 0x00, 0x03, 0x0D, 0x11, 0x0B, 0x07, 0x0B, 0x00, 0x07, 0x04, 0x03, 0x0A, 0x07, 0x00, 0x03, 0x0A, 0x04, 0x03, 0x0A,
+ /* RLE: 020 Pixels @ 292,245*/ 20, 0x00,
+ /* ABS: 002 Pixels @ 312,245*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 314,245*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 322,245*/ 0, 2, 0x04, 0x04,
+ /* RLE: 064 Pixels @ 324,245*/ 64, 0x00,
+ /* RLE: 054 Pixels @ 000,246*/ 54, 0x02,
+ /* RLE: 001 Pixels @ 054,246*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 055,246*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 061,246*/ 1, 0x04,
+ /* RLE: 030 Pixels @ 062,246*/ 30, 0x00,
+ /* ABS: 005 Pixels @ 092,246*/ 0, 5, 0x03, 0x13, 0x17, 0x16, 0x16,
+ /* RLE: 004 Pixels @ 097,246*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 101,246*/ 3, 0x16,
+ /* RLE: 003 Pixels @ 104,246*/ 3, 0x17,
+ /* ABS: 008 Pixels @ 107,246*/ 0, 8, 0x13, 0x03, 0x03, 0x0A, 0x0D, 0x06, 0x03, 0x0B,
+ /* RLE: 024 Pixels @ 115,246*/ 24, 0x00,
+ /* ABS: 003 Pixels @ 139,246*/ 0, 3, 0x03, 0x07, 0x0A,
+ /* RLE: 004 Pixels @ 142,246*/ 4, 0x03,
+ /* ABS: 004 Pixels @ 146,246*/ 0, 4, 0x00, 0x0E, 0x03, 0x04,
+ /* RLE: 098 Pixels @ 150,246*/ 98, 0x00,
+ /* RLE: 001 Pixels @ 248,246*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 249,246*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 256,246*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 257,246*/ 8, 0x00,
+ /* ABS: 025 Pixels @ 265,246*/ 0, 25, 0x03, 0x06, 0x0B, 0x03, 0x03, 0x00, 0x07, 0x0B, 0x03, 0x03, 0x0D, 0x00, 0x0A, 0x0F, 0x11, 0x03, 0x06, 0x0D, 0x03, 0x03, 0x00, 0x03, 0x00, 0x00, 0x03,
+ /* RLE: 023 Pixels @ 290,246*/ 23, 0x00,
+ /* ABS: 002 Pixels @ 313,246*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 315,246*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 323,246*/ 0, 2, 0x04, 0x04,
+ /* RLE: 063 Pixels @ 325,246*/ 63, 0x00,
+ /* RLE: 054 Pixels @ 000,247*/ 54, 0x02,
+ /* RLE: 001 Pixels @ 054,247*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 055,247*/ 7, 0x03,
+ /* RLE: 030 Pixels @ 062,247*/ 30, 0x00,
+ /* ABS: 005 Pixels @ 092,247*/ 0, 5, 0x03, 0x13, 0x17, 0x16, 0x16,
+ /* RLE: 004 Pixels @ 097,247*/ 4, 0x03,
+ /* RLE: 004 Pixels @ 101,247*/ 4, 0x16,
+ /* ABS: 010 Pixels @ 105,247*/ 0, 10, 0x17, 0x17, 0x13, 0x03, 0x07, 0x07, 0x07, 0x0A, 0x03, 0x0B,
+ /* RLE: 024 Pixels @ 115,247*/ 24, 0x00,
+ /* ABS: 011 Pixels @ 139,247*/ 0, 11, 0x03, 0x0D, 0x0F, 0x00, 0x03, 0x00, 0x12, 0x07, 0x07, 0x03, 0x04,
+ /* RLE: 099 Pixels @ 150,247*/ 99, 0x00,
+ /* RLE: 001 Pixels @ 249,247*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 250,247*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 256,247*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 258,247*/ 7, 0x00,
+ /* ABS: 021 Pixels @ 265,247*/ 0, 21, 0x03, 0x11, 0x11, 0x03, 0x03, 0x00, 0x0F, 0x11, 0x03, 0x03, 0x03, 0x0E, 0x0D, 0x0B, 0x07, 0x0A, 0x0A, 0x04, 0x03, 0x03, 0x0A,
+ /* RLE: 028 Pixels @ 286,247*/ 28, 0x00,
+ /* ABS: 002 Pixels @ 314,247*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 316,247*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 324,247*/ 0, 2, 0x04, 0x04,
+ /* RLE: 062 Pixels @ 326,247*/ 62, 0x00,
+ /* RLE: 055 Pixels @ 000,248*/ 55, 0x02,
+ /* RLE: 001 Pixels @ 055,248*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 056,248*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 062,248*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 063,248*/ 29, 0x00,
+ /* ABS: 008 Pixels @ 092,248*/ 0, 8, 0x03, 0x13, 0x17, 0x16, 0x16, 0x16, 0x03, 0x03,
+ /* RLE: 005 Pixels @ 100,248*/ 5, 0x16,
+ /* ABS: 010 Pixels @ 105,248*/ 0, 10, 0x17, 0x17, 0x13, 0x03, 0x0B, 0x0A, 0x03, 0x03, 0x18, 0x0B,
+ /* RLE: 024 Pixels @ 115,248*/ 24, 0x00,
+ /* ABS: 010 Pixels @ 139,248*/ 0, 10, 0x03, 0x00, 0x0F, 0x0D, 0x06, 0x07, 0x07, 0x12, 0x0A, 0x03,
+ /* RLE: 100 Pixels @ 149,248*/ 100, 0x00,
+ /* RLE: 001 Pixels @ 249,248*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 250,248*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 257,248*/ 1, 0x0B,
+ /* RLE: 007 Pixels @ 258,248*/ 7, 0x00,
+ /* ABS: 018 Pixels @ 265,248*/ 0, 18, 0x03, 0x04, 0x07, 0x04, 0x12, 0x07, 0x0F, 0x07, 0x0A, 0x03, 0x00, 0x07, 0x00, 0x00, 0x07, 0x0D, 0x03, 0x03,
+ /* RLE: 032 Pixels @ 283,248*/ 32, 0x00,
+ /* ABS: 002 Pixels @ 315,248*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 317,248*/ 8, 0x03,
+ /* RLE: 001 Pixels @ 325,248*/ 1, 0x04,
+ /* RLE: 062 Pixels @ 326,248*/ 62, 0x00,
+ /* RLE: 055 Pixels @ 000,249*/ 55, 0x02,
+ /* RLE: 001 Pixels @ 055,249*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 056,249*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 062,249*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 063,249*/ 29, 0x00,
+ /* ABS: 003 Pixels @ 092,249*/ 0, 3, 0x03, 0x13, 0x17,
+ /* RLE: 009 Pixels @ 095,249*/ 9, 0x16,
+ /* RLE: 003 Pixels @ 104,249*/ 3, 0x17,
+ /* ABS: 009 Pixels @ 107,249*/ 0, 9, 0x13, 0x03, 0x03, 0x00, 0x0B, 0x00, 0x03, 0x1B, 0x0B,
+ /* RLE: 023 Pixels @ 116,249*/ 23, 0x00,
+ /* ABS: 009 Pixels @ 139,249*/ 0, 9, 0x03, 0x03, 0x0A, 0x07, 0x07, 0x0B, 0x00, 0x03, 0x03,
+ /* RLE: 102 Pixels @ 148,249*/ 102, 0x00,
+ /* ABS: 002 Pixels @ 250,249*/ 0, 2, 0x04, 0x03,
+ /* RLE: 006 Pixels @ 252,249*/ 6, 0x08,
+ /* ABS: 024 Pixels @ 258,249*/ 0, 24, 0x0B, 0x0B, 0x00, 0x00, 0x00, 0x04, 0x04, 0x03, 0x03, 0x0F, 0x07, 0x12, 0x0A, 0x03, 0x0F, 0x12, 0x03, 0x00, 0x07, 0x11, 0x11, 0x00, 0x00, 0x03,
+ /* RLE: 034 Pixels @ 282,249*/ 34, 0x00,
+ /* ABS: 002 Pixels @ 316,249*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 318,249*/ 8, 0x03,
+ /* RLE: 062 Pixels @ 326,249*/ 62, 0x00,
+ /* RLE: 055 Pixels @ 000,250*/ 55, 0x02,
+ /* RLE: 001 Pixels @ 055,250*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 056,250*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 062,250*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 063,250*/ 29, 0x00,
+ /* ABS: 004 Pixels @ 092,250*/ 0, 4, 0x03, 0x13, 0x17, 0x17,
+ /* RLE: 007 Pixels @ 096,250*/ 7, 0x16,
+ /* RLE: 004 Pixels @ 103,250*/ 4, 0x17,
+ /* ABS: 009 Pixels @ 107,250*/ 0, 9, 0x13, 0x03, 0x03, 0x0F, 0x07, 0x0F, 0x00, 0x18, 0x0B,
+ /* RLE: 022 Pixels @ 116,250*/ 22, 0x00,
+ /* ABS: 011 Pixels @ 138,250*/ 0, 11, 0x03, 0x00, 0x04, 0x00, 0x0B, 0x07, 0x04, 0x03, 0x03, 0x03, 0x0A,
+ /* RLE: 101 Pixels @ 149,250*/ 101, 0x00,
+ /* ABS: 009 Pixels @ 250,250*/ 0, 9, 0x04, 0x03, 0x1B, 0x18, 0x18, 0x18, 0x08, 0x08, 0x1B,
+ /* RLE: 007 Pixels @ 259,250*/ 7, 0x03,
+ /* ABS: 015 Pixels @ 266,250*/ 0, 15, 0x0A, 0x0E, 0x07, 0x00, 0x03, 0x03, 0x0E, 0x07, 0x00, 0x03, 0x00, 0x0B, 0x00, 0x03, 0x03,
+ /* RLE: 036 Pixels @ 281,250*/ 36, 0x00,
+ /* ABS: 002 Pixels @ 317,250*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 319,250*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 326,250*/ 1, 0x04,
+ /* RLE: 061 Pixels @ 327,250*/ 61, 0x00,
+ /* RLE: 055 Pixels @ 000,251*/ 55, 0x02,
+ /* RLE: 001 Pixels @ 055,251*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 056,251*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 062,251*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 063,251*/ 29, 0x00,
+ /* ABS: 002 Pixels @ 092,251*/ 0, 2, 0x03, 0x13,
+ /* RLE: 004 Pixels @ 094,251*/ 4, 0x17,
+ /* RLE: 004 Pixels @ 098,251*/ 4, 0x16,
+ /* RLE: 005 Pixels @ 102,251*/ 5, 0x17,
+ /* ABS: 009 Pixels @ 107,251*/ 0, 9, 0x13, 0x03, 0x0A, 0x07, 0x04, 0x06, 0x0B, 0x03, 0x0B,
+ /* RLE: 022 Pixels @ 116,251*/ 22, 0x00,
+ /* ABS: 002 Pixels @ 138,251*/ 0, 2, 0x03, 0x12,
+ /* RLE: 004 Pixels @ 140,251*/ 4, 0x07,
+ /* ABS: 005 Pixels @ 144,251*/ 0, 5, 0x0F, 0x12, 0x0B, 0x00, 0x03,
+ /* RLE: 102 Pixels @ 149,251*/ 102, 0x00,
+ /* ABS: 027 Pixels @ 251,251*/ 0, 27, 0x08, 0x18, 0x00, 0x04, 0x03, 0x1B, 0x18, 0x03, 0x04, 0x06, 0x06, 0x04, 0x03, 0x0E, 0x07, 0x07, 0x00, 0x07, 0x0B, 0x03, 0x03, 0x00, 0x06, 0x00, 0x03, 0x00, 0x03,
+ /* RLE: 040 Pixels @ 278,251*/ 40, 0x00,
+ /* ABS: 002 Pixels @ 318,251*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 320,251*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 326,251*/ 1, 0x04,
+ /* RLE: 061 Pixels @ 327,251*/ 61, 0x00,
+ /* RLE: 055 Pixels @ 000,252*/ 55, 0x02,
+ /* RLE: 001 Pixels @ 055,252*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 056,252*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 062,252*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 063,252*/ 29, 0x00,
+ /* ABS: 003 Pixels @ 092,252*/ 0, 3, 0x03, 0x03, 0x13,
+ /* RLE: 011 Pixels @ 095,252*/ 11, 0x17,
+ /* ABS: 010 Pixels @ 106,252*/ 0, 10, 0x13, 0x03, 0x03, 0x00, 0x07, 0x0A, 0x0E, 0x0B, 0x03, 0x0B,
+ /* RLE: 023 Pixels @ 116,252*/ 23, 0x00,
+ /* ABS: 010 Pixels @ 139,252*/ 0, 10, 0x03, 0x0A, 0x04, 0x0B, 0x12, 0x06, 0x07, 0x07, 0x0A, 0x03,
+ /* RLE: 102 Pixels @ 149,252*/ 102, 0x00,
+ /* ABS: 019 Pixels @ 251,252*/ 0, 19, 0x18, 0x03, 0x0E, 0x11, 0x0A, 0x03, 0x03, 0x0B, 0x0F, 0x0E, 0x12, 0x07, 0x04, 0x0E, 0x0E, 0x00, 0x03, 0x06, 0x11,
+ /* RLE: 005 Pixels @ 270,252*/ 5, 0x03,
+ /* RLE: 045 Pixels @ 275,252*/ 45, 0x00,
+ /* RLE: 007 Pixels @ 320,252*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 327,252*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 328,252*/ 60, 0x00,
+ /* RLE: 055 Pixels @ 000,253*/ 55, 0x02,
+ /* RLE: 001 Pixels @ 055,253*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 056,253*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 062,253*/ 1, 0x04,
+ /* RLE: 030 Pixels @ 063,253*/ 30, 0x00,
+ /* ABS: 003 Pixels @ 093,253*/ 0, 3, 0x03, 0x03, 0x13,
+ /* RLE: 009 Pixels @ 096,253*/ 9, 0x17,
+ /* ABS: 011 Pixels @ 105,253*/ 0, 11, 0x13, 0x03, 0x03, 0x11, 0x0B, 0x07, 0x00, 0x11, 0x04, 0x03, 0x0B,
+ /* RLE: 021 Pixels @ 116,253*/ 21, 0x00,
+ /* ABS: 002 Pixels @ 137,253*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 139,253*/ 9, 0x03,
+ /* RLE: 097 Pixels @ 148,253*/ 97, 0x00,
+ /* ABS: 019 Pixels @ 245,253*/ 0, 19, 0x03, 0x00, 0x00, 0x00, 0x03, 0x00, 0x04, 0x03, 0x12, 0x07, 0x0F, 0x0A, 0x03, 0x11, 0x0E, 0x03, 0x03, 0x0D, 0x0D,
+ /* RLE: 004 Pixels @ 264,253*/ 4, 0x03,
+ /* ABS: 004 Pixels @ 268,253*/ 0, 4, 0x0A, 0x04, 0x03, 0x04,
+ /* RLE: 048 Pixels @ 272,253*/ 48, 0x00,
+ /* RLE: 001 Pixels @ 320,253*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 321,253*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 327,253*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 328,253*/ 60, 0x00,
+ /* RLE: 056 Pixels @ 000,254*/ 56, 0x02,
+ /* RLE: 007 Pixels @ 056,254*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 063,254*/ 1, 0x04,
+ /* RLE: 030 Pixels @ 064,254*/ 30, 0x00,
+ /* ABS: 004 Pixels @ 094,254*/ 0, 4, 0x03, 0x03, 0x13, 0x13,
+ /* RLE: 005 Pixels @ 098,254*/ 5, 0x17,
+ /* ABS: 014 Pixels @ 103,254*/ 0, 14, 0x13, 0x13, 0x03, 0x03, 0x03, 0x0D, 0x07, 0x0F, 0x03, 0x0A, 0x03, 0x03, 0x18, 0x0A,
+ /* RLE: 018 Pixels @ 117,254*/ 18, 0x00,
+ /* RLE: 003 Pixels @ 135,254*/ 3, 0x04,
+ /* RLE: 007 Pixels @ 138,254*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 145,254*/ 0, 2, 0x04, 0x04,
+ /* RLE: 096 Pixels @ 147,254*/ 96, 0x00,
+ /* ABS: 021 Pixels @ 243,254*/ 0, 21, 0x03, 0x03, 0x00, 0x00, 0x03, 0x03, 0x03, 0x0E, 0x11, 0x0A, 0x0E, 0x0F, 0x0E, 0x03, 0x03, 0x11, 0x12, 0x03, 0x03, 0x0B, 0x0F,
+ /* RLE: 005 Pixels @ 264,254*/ 5, 0x03,
+ /* RLE: 051 Pixels @ 269,254*/ 51, 0x00,
+ /* RLE: 001 Pixels @ 320,254*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 321,254*/ 7, 0x03,
+ /* RLE: 060 Pixels @ 328,254*/ 60, 0x00,
+ /* RLE: 056 Pixels @ 000,255*/ 56, 0x02,
+ /* RLE: 001 Pixels @ 056,255*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 057,255*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 063,255*/ 1, 0x04,
+ /* RLE: 028 Pixels @ 064,255*/ 28, 0x00,
+ /* ABS: 006 Pixels @ 092,255*/ 0, 6, 0x0A, 0x00, 0x00, 0x03, 0x13, 0x00,
+ /* RLE: 005 Pixels @ 098,255*/ 5, 0x13,
+ /* RLE: 003 Pixels @ 103,255*/ 3, 0x03,
+ /* ABS: 011 Pixels @ 106,255*/ 0, 11, 0x00, 0x03, 0x03, 0x0A, 0x03, 0x03, 0x0A, 0x11, 0x0E, 0x00, 0x03,
+ /* RLE: 016 Pixels @ 117,255*/ 16, 0x00,
+ /* ABS: 002 Pixels @ 133,255*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 135,255*/ 10, 0x03,
+ /* RLE: 001 Pixels @ 145,255*/ 1, 0x04,
+ /* RLE: 096 Pixels @ 146,255*/ 96, 0x00,
+ /* ABS: 026 Pixels @ 242,255*/ 0, 26, 0x03, 0x00, 0x06, 0x07, 0x07, 0x07, 0x0E, 0x03, 0x12, 0x07, 0x0F, 0x0A, 0x0E, 0x07, 0x00, 0x03, 0x0B, 0x07, 0x0B, 0x0A, 0x11, 0x0E, 0x03, 0x03, 0x04, 0x04,
+ /* RLE: 053 Pixels @ 268,255*/ 53, 0x00,
+ /* RLE: 001 Pixels @ 321,255*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 322,255*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 328,255*/ 1, 0x04,
+ /* RLE: 059 Pixels @ 329,255*/ 59, 0x00,
+ /* RLE: 056 Pixels @ 000,256*/ 56, 0x02,
+ /* RLE: 001 Pixels @ 056,256*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 057,256*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 063,256*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 064,256*/ 29, 0x00,
+ /* ABS: 006 Pixels @ 093,256*/ 0, 6, 0x0A, 0x03, 0x13, 0x00, 0x13, 0x13,
+ /* RLE: 005 Pixels @ 099,256*/ 5, 0x03,
+ /* RLE: 004 Pixels @ 104,256*/ 4, 0x00,
+ /* ABS: 009 Pixels @ 108,256*/ 0, 9, 0x03, 0x04, 0x0E, 0x11, 0x07, 0x07, 0x07, 0x06, 0x03,
+ /* RLE: 013 Pixels @ 117,256*/ 13, 0x00,
+ /* RLE: 003 Pixels @ 130,256*/ 3, 0x04,
+ /* RLE: 011 Pixels @ 133,256*/ 11, 0x03,
+ /* RLE: 001 Pixels @ 144,256*/ 1, 0x04,
+ /* RLE: 096 Pixels @ 145,256*/ 96, 0x00,
+ /* ABS: 023 Pixels @ 241,256*/ 0, 23, 0x03, 0x03, 0x11, 0x0D, 0x04, 0x00, 0x0E, 0x07, 0x0B, 0x0E, 0x0F, 0x0E, 0x03, 0x00, 0x07, 0x0B, 0x00, 0x03, 0x12, 0x07, 0x07, 0x0E, 0x03,
+ /* RLE: 057 Pixels @ 264,256*/ 57, 0x00,
+ /* RLE: 001 Pixels @ 321,256*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 322,256*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 328,256*/ 1, 0x04,
+ /* RLE: 059 Pixels @ 329,256*/ 59, 0x00,
+ /* RLE: 056 Pixels @ 000,257*/ 56, 0x02,
+ /* RLE: 001 Pixels @ 056,257*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 057,257*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 063,257*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 064,257*/ 29, 0x00,
+ /* ABS: 007 Pixels @ 093,257*/ 0, 7, 0x03, 0x03, 0x13, 0x00, 0x13, 0x13, 0x03,
+ /* RLE: 007 Pixels @ 100,257*/ 7, 0x00,
+ /* ABS: 009 Pixels @ 107,257*/ 0, 9, 0x03, 0x0E, 0x07, 0x0F, 0x06, 0x0B, 0x0F, 0x04, 0x03,
+ /* RLE: 012 Pixels @ 116,257*/ 12, 0x00,
+ /* RLE: 003 Pixels @ 128,257*/ 3, 0x04,
+ /* RLE: 012 Pixels @ 131,257*/ 12, 0x03,
+ /* ABS: 002 Pixels @ 143,257*/ 0, 2, 0x04, 0x04,
+ /* RLE: 096 Pixels @ 145,257*/ 96, 0x00,
+ /* ABS: 017 Pixels @ 241,257*/ 0, 17, 0x03, 0x04, 0x07, 0x0A, 0x03, 0x03, 0x03, 0x11, 0x0F, 0x03, 0x0E, 0x07, 0x00, 0x03, 0x0E, 0x07, 0x0F,
+ /* RLE: 005 Pixels @ 258,257*/ 5, 0x03,
+ /* RLE: 059 Pixels @ 263,257*/ 59, 0x00,
+ /* RLE: 007 Pixels @ 322,257*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 329,257*/ 1, 0x04,
+ /* RLE: 058 Pixels @ 330,257*/ 58, 0x00,
+ /* RLE: 056 Pixels @ 000,258*/ 56, 0x02,
+ /* RLE: 001 Pixels @ 056,258*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 057,258*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 063,258*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 064,258*/ 29, 0x00,
+ /* ABS: 007 Pixels @ 093,258*/ 0, 7, 0x03, 0x13, 0x0A, 0x13, 0x13, 0x03, 0x03,
+ /* RLE: 007 Pixels @ 100,258*/ 7, 0x00,
+ /* ABS: 011 Pixels @ 107,258*/ 0, 11, 0x03, 0x0E, 0x06, 0x03, 0x03, 0x03, 0x00, 0x0B, 0x03, 0x08, 0x0B,
+ /* RLE: 008 Pixels @ 118,258*/ 8, 0x00,
+ /* ABS: 002 Pixels @ 126,258*/ 0, 2, 0x04, 0x04,
+ /* RLE: 014 Pixels @ 128,258*/ 14, 0x03,
+ /* ABS: 002 Pixels @ 142,258*/ 0, 2, 0x04, 0x04,
+ /* RLE: 094 Pixels @ 144,258*/ 94, 0x00,
+ /* ABS: 021 Pixels @ 238,258*/ 0, 21, 0x04, 0x04, 0x03, 0x03, 0x0B, 0x07, 0x00, 0x03, 0x03, 0x03, 0x0B, 0x07, 0x00, 0x00, 0x07, 0x0B, 0x00, 0x03, 0x0A, 0x00, 0x03,
+ /* RLE: 004 Pixels @ 259,258*/ 4, 0x08,
+ /* RLE: 001 Pixels @ 263,258*/ 1, 0x0B,
+ /* RLE: 058 Pixels @ 264,258*/ 58, 0x00,
+ /* RLE: 001 Pixels @ 322,258*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 323,258*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 329,258*/ 1, 0x04,
+ /* RLE: 058 Pixels @ 330,258*/ 58, 0x00,
+ /* RLE: 056 Pixels @ 000,259*/ 56, 0x02,
+ /* RLE: 001 Pixels @ 056,259*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 057,259*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 063,259*/ 1, 0x04,
+ /* RLE: 029 Pixels @ 064,259*/ 29, 0x00,
+ /* ABS: 006 Pixels @ 093,259*/ 0, 6, 0x03, 0x13, 0x00, 0x13, 0x13, 0x03,
+ /* RLE: 008 Pixels @ 099,259*/ 8, 0x00,
+ /* ABS: 011 Pixels @ 107,259*/ 0, 11, 0x03, 0x00, 0x0A, 0x0E, 0x0D, 0x07, 0x07, 0x07, 0x03, 0x1B, 0x0B,
+ /* RLE: 005 Pixels @ 118,259*/ 5, 0x00,
+ /* RLE: 003 Pixels @ 123,259*/ 3, 0x04,
+ /* RLE: 015 Pixels @ 126,259*/ 15, 0x03,
+ /* ABS: 002 Pixels @ 141,259*/ 0, 2, 0x04, 0x04,
+ /* RLE: 093 Pixels @ 143,259*/ 93, 0x00,
+ /* ABS: 002 Pixels @ 236,259*/ 0, 2, 0x04, 0x04,
+ /* RLE: 004 Pixels @ 238,259*/ 4, 0x03,
+ /* ABS: 021 Pixels @ 242,259*/ 0, 21, 0x04, 0x07, 0x04, 0x03, 0x03, 0x03, 0x00, 0x07, 0x00, 0x03, 0x0E, 0x07, 0x0F, 0x03, 0x18, 0x18, 0x1B, 0x08, 0x08, 0x08, 0x0B,
+ /* RLE: 059 Pixels @ 263,259*/ 59, 0x00,
+ /* RLE: 001 Pixels @ 322,259*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 323,259*/ 7, 0x03,
+ /* RLE: 058 Pixels @ 330,259*/ 58, 0x00,
+ /* RLE: 057 Pixels @ 000,260*/ 57, 0x02,
+ /* RLE: 007 Pixels @ 057,260*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 064,260*/ 1, 0x04,
+ /* RLE: 027 Pixels @ 065,260*/ 27, 0x00,
+ /* ABS: 011 Pixels @ 092,260*/ 0, 11, 0x03, 0x13, 0x00, 0x13, 0x13, 0x03, 0x03, 0x00, 0x0A, 0x00, 0x00,
+ /* RLE: 007 Pixels @ 103,260*/ 7, 0x03,
+ /* ABS: 013 Pixels @ 110,260*/ 0, 13, 0x07, 0x06, 0x0E, 0x0E, 0x11, 0x00, 0x18, 0x0B, 0x00, 0x00, 0x00, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 123,260*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 139,260*/ 0, 2, 0x04, 0x04,
+ /* RLE: 092 Pixels @ 141,260*/ 92, 0x00,
+ /* ABS: 002 Pixels @ 233,260*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 235,260*/ 8, 0x03,
+ /* ABS: 013 Pixels @ 243,260*/ 0, 13, 0x0F, 0x11, 0x03, 0x03, 0x03, 0x12, 0x07, 0x03, 0x03, 0x03, 0x0A, 0x00, 0x03,
+ /* RLE: 006 Pixels @ 256,260*/ 6, 0x08,
+ /* RLE: 001 Pixels @ 262,260*/ 1, 0x0B,
+ /* RLE: 060 Pixels @ 263,260*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 323,260*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 324,260*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 330,260*/ 1, 0x04,
+ /* RLE: 057 Pixels @ 331,260*/ 57, 0x00,
+ /* RLE: 057 Pixels @ 000,261*/ 57, 0x02,
+ /* RLE: 001 Pixels @ 057,261*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 058,261*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 064,261*/ 1, 0x04,
+ /* RLE: 026 Pixels @ 065,261*/ 26, 0x00,
+ /* ABS: 007 Pixels @ 091,261*/ 0, 7, 0x03, 0x03, 0x13, 0x00, 0x13, 0x13, 0x03,
+ /* RLE: 004 Pixels @ 098,261*/ 4, 0x00,
+ /* ABS: 002 Pixels @ 102,261*/ 0, 2, 0x03, 0x03,
+ /* RLE: 005 Pixels @ 104,261*/ 5, 0x13,
+ /* RLE: 005 Pixels @ 109,261*/ 5, 0x03,
+ /* ABS: 007 Pixels @ 114,261*/ 0, 7, 0x06, 0x0B, 0x03, 0x0B, 0x00, 0x04, 0x04,
+ /* RLE: 015 Pixels @ 121,261*/ 15, 0x03,
+ /* RLE: 003 Pixels @ 136,261*/ 3, 0x04,
+ /* RLE: 092 Pixels @ 139,261*/ 92, 0x00,
+ /* ABS: 002 Pixels @ 231,261*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 233,261*/ 10, 0x03,
+ /* ABS: 013 Pixels @ 243,261*/ 0, 13, 0x0A, 0x07, 0x11, 0x0E, 0x06, 0x07, 0x04, 0x03, 0x00, 0x00, 0x00, 0x18, 0x1B,
+ /* RLE: 006 Pixels @ 256,261*/ 6, 0x08,
+ /* RLE: 001 Pixels @ 262,261*/ 1, 0x0B,
+ /* RLE: 060 Pixels @ 263,261*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 323,261*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 324,261*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 330,261*/ 1, 0x04,
+ /* RLE: 057 Pixels @ 331,261*/ 57, 0x00,
+ /* RLE: 057 Pixels @ 000,262*/ 57, 0x02,
+ /* RLE: 001 Pixels @ 057,262*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 058,262*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 064,262*/ 1, 0x04,
+ /* RLE: 026 Pixels @ 065,262*/ 26, 0x00,
+ /* ABS: 011 Pixels @ 091,262*/ 0, 11, 0x03, 0x13, 0x00, 0x13, 0x13, 0x03, 0x03, 0x00, 0x00, 0x0A, 0x03,
+ /* RLE: 009 Pixels @ 102,262*/ 9, 0x13,
+ /* ABS: 008 Pixels @ 111,262*/ 0, 8, 0x03, 0x1B, 0x03, 0x00, 0x00, 0x18, 0x0B, 0x04,
+ /* RLE: 015 Pixels @ 119,262*/ 15, 0x03,
+ /* ABS: 002 Pixels @ 134,262*/ 0, 2, 0x04, 0x04,
+ /* RLE: 092 Pixels @ 136,262*/ 92, 0x00,
+ /* ABS: 002 Pixels @ 228,262*/ 0, 2, 0x04, 0x04,
+ /* RLE: 014 Pixels @ 230,262*/ 14, 0x03,
+ /* ABS: 006 Pixels @ 244,262*/ 0, 6, 0x0A, 0x12, 0x06, 0x12, 0x0A, 0x03,
+ /* RLE: 004 Pixels @ 250,262*/ 4, 0x00,
+ /* RLE: 001 Pixels @ 254,262*/ 1, 0x0B,
+ /* RLE: 006 Pixels @ 255,262*/ 6, 0x08,
+ /* ABS: 003 Pixels @ 261,262*/ 0, 3, 0x03, 0x03, 0x04,
+ /* RLE: 060 Pixels @ 264,262*/ 60, 0x00,
+ /* RLE: 007 Pixels @ 324,262*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 331,262*/ 1, 0x04,
+ /* RLE: 056 Pixels @ 332,262*/ 56, 0x00,
+ /* RLE: 057 Pixels @ 000,263*/ 57, 0x02,
+ /* RLE: 001 Pixels @ 057,263*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 058,263*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 064,263*/ 1, 0x04,
+ /* RLE: 025 Pixels @ 065,263*/ 25, 0x00,
+ /* ABS: 011 Pixels @ 090,263*/ 0, 11, 0x03, 0x03, 0x13, 0x00, 0x13, 0x13, 0x03, 0x00, 0x00, 0x00, 0x03,
+ /* RLE: 011 Pixels @ 101,263*/ 11, 0x13,
+ /* RLE: 001 Pixels @ 112,263*/ 1, 0x03,
+ /* RLE: 004 Pixels @ 113,263*/ 4, 0x1B,
+ /* RLE: 001 Pixels @ 117,263*/ 1, 0x08,
+ /* RLE: 014 Pixels @ 118,263*/ 14, 0x03,
+ /* ABS: 002 Pixels @ 132,263*/ 0, 2, 0x04, 0x04,
+ /* RLE: 092 Pixels @ 134,263*/ 92, 0x00,
+ /* ABS: 002 Pixels @ 226,263*/ 0, 2, 0x04, 0x04,
+ /* RLE: 021 Pixels @ 228,263*/ 21, 0x03,
+ /* RLE: 007 Pixels @ 249,263*/ 7, 0x00,
+ /* RLE: 001 Pixels @ 256,263*/ 1, 0x0B,
+ /* RLE: 006 Pixels @ 257,263*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 263,263*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 264,263*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 324,263*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 325,263*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 331,263*/ 1, 0x04,
+ /* RLE: 056 Pixels @ 332,263*/ 56, 0x00,
+ /* RLE: 057 Pixels @ 000,264*/ 57, 0x02,
+ /* RLE: 001 Pixels @ 057,264*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 058,264*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 064,264*/ 1, 0x04,
+ /* RLE: 024 Pixels @ 065,264*/ 24, 0x00,
+ /* ABS: 012 Pixels @ 089,264*/ 0, 12, 0x0A, 0x03, 0x13, 0x00, 0x13, 0x13, 0x03, 0x03, 0x00, 0x00, 0x00, 0x03,
+ /* RLE: 011 Pixels @ 101,264*/ 11, 0x13,
+ /* RLE: 001 Pixels @ 112,264*/ 1, 0x03,
+ /* RLE: 005 Pixels @ 113,264*/ 5, 0x08,
+ /* RLE: 011 Pixels @ 118,264*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 129,264*/ 3, 0x04,
+ /* RLE: 091 Pixels @ 132,264*/ 91, 0x00,
+ /* ABS: 002 Pixels @ 223,264*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 225,264*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 241,264*/ 0, 2, 0x04, 0x04,
+ /* RLE: 013 Pixels @ 243,264*/ 13, 0x00,
+ /* RLE: 001 Pixels @ 256,264*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 257,264*/ 7, 0x03,
+ /* RLE: 060 Pixels @ 264,264*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 324,264*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 325,264*/ 7, 0x03,
+ /* RLE: 056 Pixels @ 332,264*/ 56, 0x00,
+ /* RLE: 057 Pixels @ 000,265*/ 57, 0x02,
+ /* RLE: 001 Pixels @ 057,265*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 058,265*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 064,265*/ 1, 0x04,
+ /* RLE: 024 Pixels @ 065,265*/ 24, 0x00,
+ /* ABS: 007 Pixels @ 089,265*/ 0, 7, 0x03, 0x03, 0x13, 0x00, 0x13, 0x13, 0x03,
+ /* RLE: 004 Pixels @ 096,265*/ 4, 0x00,
+ /* RLE: 001 Pixels @ 100,265*/ 1, 0x03,
+ /* RLE: 011 Pixels @ 101,265*/ 11, 0x13,
+ /* RLE: 001 Pixels @ 112,265*/ 1, 0x03,
+ /* RLE: 005 Pixels @ 113,265*/ 5, 0x08,
+ /* RLE: 009 Pixels @ 118,265*/ 9, 0x03,
+ /* ABS: 002 Pixels @ 127,265*/ 0, 2, 0x04, 0x04,
+ /* RLE: 092 Pixels @ 129,265*/ 92, 0x00,
+ /* ABS: 002 Pixels @ 221,265*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 223,265*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 239,265*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 241,265*/ 16, 0x00,
+ /* RLE: 001 Pixels @ 257,265*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 258,265*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 264,265*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 265,265*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 325,265*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 326,265*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 332,265*/ 1, 0x04,
+ /* RLE: 055 Pixels @ 333,265*/ 55, 0x00,
+ /* RLE: 058 Pixels @ 000,266*/ 58, 0x02,
+ /* RLE: 007 Pixels @ 058,266*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 065,266*/ 1, 0x04,
+ /* RLE: 023 Pixels @ 066,266*/ 23, 0x00,
+ /* ABS: 007 Pixels @ 089,266*/ 0, 7, 0x03, 0x13, 0x0A, 0x13, 0x13, 0x03, 0x03,
+ /* RLE: 004 Pixels @ 096,266*/ 4, 0x00,
+ /* RLE: 001 Pixels @ 100,266*/ 1, 0x03,
+ /* RLE: 011 Pixels @ 101,266*/ 11, 0x13,
+ /* RLE: 001 Pixels @ 112,266*/ 1, 0x03,
+ /* RLE: 005 Pixels @ 113,266*/ 5, 0x08,
+ /* RLE: 006 Pixels @ 118,266*/ 6, 0x03,
+ /* RLE: 003 Pixels @ 124,266*/ 3, 0x04,
+ /* RLE: 091 Pixels @ 127,266*/ 91, 0x00,
+ /* ABS: 002 Pixels @ 218,266*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 220,266*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 236,266*/ 0, 2, 0x04, 0x04,
+ /* RLE: 019 Pixels @ 238,266*/ 19, 0x00,
+ /* RLE: 001 Pixels @ 257,266*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 258,266*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 264,266*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 265,266*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 325,266*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 326,266*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 332,266*/ 1, 0x04,
+ /* RLE: 055 Pixels @ 333,266*/ 55, 0x00,
+ /* RLE: 058 Pixels @ 000,267*/ 58, 0x02,
+ /* RLE: 001 Pixels @ 058,267*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 059,267*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 065,267*/ 1, 0x04,
+ /* RLE: 022 Pixels @ 066,267*/ 22, 0x00,
+ /* ABS: 012 Pixels @ 088,267*/ 0, 12, 0x03, 0x03, 0x13, 0x00, 0x13, 0x13, 0x03, 0x00, 0x04, 0x04, 0x03, 0x03,
+ /* RLE: 011 Pixels @ 100,267*/ 11, 0x13,
+ /* ABS: 002 Pixels @ 111,267*/ 0, 2, 0x03, 0x03,
+ /* RLE: 005 Pixels @ 113,267*/ 5, 0x08,
+ /* RLE: 004 Pixels @ 118,267*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 122,267*/ 3, 0x04,
+ /* RLE: 090 Pixels @ 125,267*/ 90, 0x00,
+ /* RLE: 003 Pixels @ 215,267*/ 3, 0x04,
+ /* RLE: 016 Pixels @ 218,267*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 234,267*/ 0, 2, 0x04, 0x04,
+ /* RLE: 021 Pixels @ 236,267*/ 21, 0x00,
+ /* RLE: 001 Pixels @ 257,267*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 258,267*/ 7, 0x03,
+ /* RLE: 061 Pixels @ 265,267*/ 61, 0x00,
+ /* RLE: 007 Pixels @ 326,267*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 333,267*/ 1, 0x04,
+ /* RLE: 054 Pixels @ 334,267*/ 54, 0x00,
+ /* RLE: 058 Pixels @ 000,268*/ 58, 0x02,
+ /* RLE: 001 Pixels @ 058,268*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 059,268*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 065,268*/ 1, 0x04,
+ /* RLE: 021 Pixels @ 066,268*/ 21, 0x00,
+ /* ABS: 013 Pixels @ 087,268*/ 0, 13, 0x03, 0x03, 0x13, 0x00, 0x13, 0x13, 0x03, 0x04, 0x03, 0x03, 0x03, 0x13, 0x13,
+ /* RLE: 004 Pixels @ 100,268*/ 4, 0x03,
+ /* RLE: 005 Pixels @ 104,268*/ 5, 0x13,
+ /* RLE: 003 Pixels @ 109,268*/ 3, 0x03,
+ /* RLE: 007 Pixels @ 112,268*/ 7, 0x08,
+ /* ABS: 003 Pixels @ 119,268*/ 0, 3, 0x03, 0x04, 0x04,
+ /* RLE: 090 Pixels @ 122,268*/ 90, 0x00,
+ /* RLE: 003 Pixels @ 212,268*/ 3, 0x04,
+ /* RLE: 016 Pixels @ 215,268*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 231,268*/ 0, 2, 0x04, 0x04,
+ /* RLE: 025 Pixels @ 233,268*/ 25, 0x00,
+ /* RLE: 001 Pixels @ 258,268*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 259,268*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 265,268*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 266,268*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 326,268*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 327,268*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 333,268*/ 1, 0x04,
+ /* RLE: 054 Pixels @ 334,268*/ 54, 0x00,
+ /* RLE: 058 Pixels @ 000,269*/ 58, 0x02,
+ /* RLE: 001 Pixels @ 058,269*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 059,269*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 065,269*/ 1, 0x04,
+ /* RLE: 021 Pixels @ 066,269*/ 21, 0x00,
+ /* ABS: 011 Pixels @ 087,269*/ 0, 11, 0x03, 0x03, 0x13, 0x04, 0x13, 0x13, 0x03, 0x03, 0x03, 0x13, 0x13,
+ /* RLE: 013 Pixels @ 098,269*/ 13, 0x03,
+ /* RLE: 008 Pixels @ 111,269*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 119,269*/ 1, 0x0B,
+ /* RLE: 091 Pixels @ 120,269*/ 91, 0x00,
+ /* ABS: 002 Pixels @ 211,269*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 213,269*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 229,269*/ 0, 2, 0x04, 0x04,
+ /* RLE: 027 Pixels @ 231,269*/ 27, 0x00,
+ /* RLE: 001 Pixels @ 258,269*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 259,269*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 265,269*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 266,269*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 326,269*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 327,269*/ 7, 0x03,
+ /* RLE: 054 Pixels @ 334,269*/ 54, 0x00,
+ /* RLE: 058 Pixels @ 000,270*/ 58, 0x02,
+ /* RLE: 001 Pixels @ 058,270*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 059,270*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 065,270*/ 1, 0x04,
+ /* RLE: 016 Pixels @ 066,270*/ 16, 0x00,
+ /* RLE: 004 Pixels @ 082,270*/ 4, 0x04,
+ /* ABS: 010 Pixels @ 086,270*/ 0, 10, 0x03, 0x03, 0x13, 0x03, 0x13, 0x13, 0x13, 0x03, 0x13, 0x13,
+ /* RLE: 015 Pixels @ 096,270*/ 15, 0x03,
+ /* RLE: 008 Pixels @ 111,270*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 119,270*/ 1, 0x0B,
+ /* RLE: 090 Pixels @ 120,270*/ 90, 0x00,
+ /* ABS: 002 Pixels @ 210,270*/ 0, 2, 0x04, 0x04,
+ /* RLE: 014 Pixels @ 212,270*/ 14, 0x03,
+ /* ABS: 002 Pixels @ 226,270*/ 0, 2, 0x04, 0x04,
+ /* RLE: 031 Pixels @ 228,270*/ 31, 0x00,
+ /* RLE: 007 Pixels @ 259,270*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 266,270*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 267,270*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 327,270*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 328,270*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 334,270*/ 1, 0x04,
+ /* RLE: 053 Pixels @ 335,270*/ 53, 0x00,
+ /* RLE: 058 Pixels @ 000,271*/ 58, 0x02,
+ /* RLE: 001 Pixels @ 058,271*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 059,271*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 065,271*/ 1, 0x04,
+ /* RLE: 011 Pixels @ 066,271*/ 11, 0x00,
+ /* RLE: 005 Pixels @ 077,271*/ 5, 0x04,
+ /* RLE: 006 Pixels @ 082,271*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 088,271*/ 0, 2, 0x13, 0x03,
+ /* RLE: 004 Pixels @ 090,271*/ 4, 0x13,
+ /* RLE: 016 Pixels @ 094,271*/ 16, 0x03,
+ /* RLE: 001 Pixels @ 110,271*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 111,271*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 119,271*/ 1, 0x0B,
+ /* RLE: 089 Pixels @ 120,271*/ 89, 0x00,
+ /* ABS: 002 Pixels @ 209,271*/ 0, 2, 0x04, 0x04,
+ /* RLE: 013 Pixels @ 211,271*/ 13, 0x03,
+ /* ABS: 002 Pixels @ 224,271*/ 0, 2, 0x04, 0x04,
+ /* RLE: 033 Pixels @ 226,271*/ 33, 0x00,
+ /* RLE: 001 Pixels @ 259,271*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 260,271*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 266,271*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 267,271*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 327,271*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 328,271*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 334,271*/ 1, 0x04,
+ /* RLE: 053 Pixels @ 335,271*/ 53, 0x00,
+ /* RLE: 059 Pixels @ 000,272*/ 59, 0x02,
+ /* RLE: 007 Pixels @ 059,272*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 066,272*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 067,272*/ 6, 0x00,
+ /* RLE: 004 Pixels @ 073,272*/ 4, 0x04,
+ /* RLE: 011 Pixels @ 077,272*/ 11, 0x03,
+ /* RLE: 004 Pixels @ 088,272*/ 4, 0x13,
+ /* RLE: 014 Pixels @ 092,272*/ 14, 0x03,
+ /* RLE: 004 Pixels @ 106,272*/ 4, 0x04,
+ /* ABS: 002 Pixels @ 110,272*/ 0, 2, 0x00, 0x0B,
+ /* RLE: 008 Pixels @ 112,272*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 120,272*/ 1, 0x0B,
+ /* RLE: 087 Pixels @ 121,272*/ 87, 0x00,
+ /* ABS: 002 Pixels @ 208,272*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 210,272*/ 11, 0x03,
+ /* ABS: 002 Pixels @ 221,272*/ 0, 2, 0x04, 0x04,
+ /* RLE: 036 Pixels @ 223,272*/ 36, 0x00,
+ /* RLE: 001 Pixels @ 259,272*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 260,272*/ 7, 0x03,
+ /* RLE: 061 Pixels @ 267,272*/ 61, 0x00,
+ /* RLE: 007 Pixels @ 328,272*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 335,272*/ 1, 0x04,
+ /* RLE: 052 Pixels @ 336,272*/ 52, 0x00,
+ /* RLE: 059 Pixels @ 000,273*/ 59, 0x02,
+ /* RLE: 001 Pixels @ 059,273*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 060,273*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 066,273*/ 0, 2, 0x04, 0x00,
+ /* RLE: 004 Pixels @ 068,273*/ 4, 0x04,
+ /* RLE: 029 Pixels @ 072,273*/ 29, 0x03,
+ /* RLE: 004 Pixels @ 101,273*/ 4, 0x04,
+ /* RLE: 006 Pixels @ 105,273*/ 6, 0x00,
+ /* RLE: 001 Pixels @ 111,273*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 112,273*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 120,273*/ 1, 0x0B,
+ /* RLE: 086 Pixels @ 121,273*/ 86, 0x00,
+ /* ABS: 002 Pixels @ 207,273*/ 0, 2, 0x04, 0x04,
+ /* RLE: 010 Pixels @ 209,273*/ 10, 0x03,
+ /* ABS: 002 Pixels @ 219,273*/ 0, 2, 0x04, 0x04,
+ /* RLE: 039 Pixels @ 221,273*/ 39, 0x00,
+ /* RLE: 001 Pixels @ 260,273*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 261,273*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 267,273*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 268,273*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 328,273*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 329,273*/ 6, 0x03,
+ /* RLE: 053 Pixels @ 335,273*/ 53, 0x00,
+ /* RLE: 057 Pixels @ 000,274*/ 57, 0x02,
+ /* RLE: 001 Pixels @ 057,274*/ 1, 0x18,
+ /* RLE: 008 Pixels @ 058,274*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 066,274*/ 0, 2, 0x04, 0x04,
+ /* RLE: 028 Pixels @ 068,274*/ 28, 0x03,
+ /* RLE: 005 Pixels @ 096,274*/ 5, 0x04,
+ /* RLE: 010 Pixels @ 101,274*/ 10, 0x00,
+ /* RLE: 001 Pixels @ 111,274*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 112,274*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 120,274*/ 1, 0x0B,
+ /* RLE: 085 Pixels @ 121,274*/ 85, 0x00,
+ /* ABS: 002 Pixels @ 206,274*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 208,274*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 216,274*/ 0, 2, 0x04, 0x04,
+ /* RLE: 042 Pixels @ 218,274*/ 42, 0x00,
+ /* RLE: 001 Pixels @ 260,274*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 261,274*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 267,274*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 268,274*/ 60, 0x00,
+ /* RLE: 001 Pixels @ 328,274*/ 1, 0x04,
+ /* RLE: 004 Pixels @ 329,274*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 333,274*/ 3, 0x00,
+ /* ABS: 002 Pixels @ 336,274*/ 0, 2, 0x03, 0x03,
+ /* RLE: 050 Pixels @ 338,274*/ 50, 0x00,
+ /* RLE: 034 Pixels @ 000,275*/ 34, 0x02,
+ /* ABS: 002 Pixels @ 034,275*/ 0, 2, 0x00, 0x00,
+ /* RLE: 006 Pixels @ 036,275*/ 6, 0x03,
+ /* ABS: 019 Pixels @ 042,275*/ 0, 19, 0x00, 0x18, 0x00, 0x03, 0x00, 0x18, 0x02, 0x02, 0x00, 0x00, 0x00, 0x18, 0x02, 0x03, 0x03, 0x03, 0x00, 0x0B, 0x00,
+ /* RLE: 031 Pixels @ 061,275*/ 31, 0x03,
+ /* RLE: 004 Pixels @ 092,275*/ 4, 0x04,
+ /* RLE: 015 Pixels @ 096,275*/ 15, 0x00,
+ /* RLE: 001 Pixels @ 111,275*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 112,275*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 120,275*/ 1, 0x0B,
+ /* RLE: 084 Pixels @ 121,275*/ 84, 0x00,
+ /* ABS: 002 Pixels @ 205,275*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 207,275*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 215,275*/ 0, 2, 0x04, 0x04,
+ /* RLE: 043 Pixels @ 217,275*/ 43, 0x00,
+ /* RLE: 001 Pixels @ 260,275*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 261,275*/ 7, 0x03,
+ /* RLE: 062 Pixels @ 268,275*/ 62, 0x00,
+ /* ABS: 008 Pixels @ 330,275*/ 0, 8, 0x03, 0x0A, 0x11, 0x07, 0x07, 0x07, 0x06, 0x03,
+ /* RLE: 050 Pixels @ 338,275*/ 50, 0x00,
+ /* RLE: 034 Pixels @ 000,276*/ 34, 0x02,
+ /* ABS: 013 Pixels @ 034,276*/ 0, 13, 0x03, 0x04, 0x00, 0x0E, 0x04, 0x00, 0x07, 0x00, 0x03, 0x03, 0x00, 0x0A, 0x00,
+ /* RLE: 004 Pixels @ 047,276*/ 4, 0x03,
+ /* ABS: 011 Pixels @ 051,276*/ 0, 11, 0x0A, 0x00, 0x03, 0x00, 0x03, 0x11, 0x06, 0x0F, 0x0F, 0x07, 0x00,
+ /* RLE: 025 Pixels @ 062,276*/ 25, 0x03,
+ /* RLE: 004 Pixels @ 087,276*/ 4, 0x04,
+ /* RLE: 020 Pixels @ 091,276*/ 20, 0x00,
+ /* RLE: 001 Pixels @ 111,276*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 112,276*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 120,276*/ 1, 0x0B,
+ /* RLE: 083 Pixels @ 121,276*/ 83, 0x00,
+ /* ABS: 002 Pixels @ 204,276*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 206,276*/ 8, 0x03,
+ /* ABS: 002 Pixels @ 214,276*/ 0, 2, 0x04, 0x04,
+ /* RLE: 045 Pixels @ 216,276*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 261,276*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 262,276*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 268,276*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 269,276*/ 60, 0x00,
+ /* ABS: 010 Pixels @ 329,276*/ 0, 10, 0x03, 0x0A, 0x07, 0x11, 0x0B, 0x0A, 0x04, 0x0F, 0x0B, 0x03,
+ /* RLE: 049 Pixels @ 339,276*/ 49, 0x00,
+ /* RLE: 025 Pixels @ 000,277*/ 25, 0x02,
+ /* ABS: 005 Pixels @ 025,277*/ 0, 5, 0x18, 0x03, 0x03, 0x03, 0x18,
+ /* RLE: 004 Pixels @ 030,277*/ 4, 0x02,
+ /* ABS: 028 Pixels @ 034,277*/ 0, 28, 0x03, 0x07, 0x00, 0x0B, 0x04, 0x03, 0x07, 0x0B, 0x03, 0x0E, 0x07, 0x0D, 0x07, 0x0B, 0x03, 0x04, 0x07, 0x07, 0x07, 0x04, 0x03, 0x03, 0x0D, 0x0F, 0x03, 0x00, 0x07, 0x0B,
+ /* RLE: 021 Pixels @ 062,277*/ 21, 0x03,
+ /* RLE: 004 Pixels @ 083,277*/ 4, 0x04,
+ /* RLE: 025 Pixels @ 087,277*/ 25, 0x00,
+ /* RLE: 001 Pixels @ 112,277*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 113,277*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 121,277*/ 1, 0x0B,
+ /* RLE: 082 Pixels @ 122,277*/ 82, 0x00,
+ /* ABS: 002 Pixels @ 204,277*/ 0, 2, 0x04, 0x04,
+ /* RLE: 007 Pixels @ 206,277*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 213,277*/ 0, 2, 0x04, 0x04,
+ /* RLE: 046 Pixels @ 215,277*/ 46, 0x00,
+ /* RLE: 001 Pixels @ 261,277*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 262,277*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 268,277*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 269,277*/ 60, 0x00,
+ /* ABS: 003 Pixels @ 329,277*/ 0, 3, 0x03, 0x06, 0x11,
+ /* RLE: 004 Pixels @ 332,277*/ 4, 0x03,
+ /* ABS: 003 Pixels @ 336,277*/ 0, 3, 0x0B, 0x0F, 0x03,
+ /* RLE: 049 Pixels @ 339,277*/ 49, 0x00,
+ /* RLE: 015 Pixels @ 000,278*/ 15, 0x02,
+ /* ABS: 005 Pixels @ 015,278*/ 0, 5, 0x00, 0x03, 0x03, 0x03, 0x00,
+ /* RLE: 005 Pixels @ 020,278*/ 5, 0x02,
+ /* ABS: 008 Pixels @ 025,278*/ 0, 8, 0x03, 0x0A, 0x07, 0x00, 0x03, 0x03, 0x03, 0x18,
+ /* RLE: 005 Pixels @ 033,278*/ 5, 0x03,
+ /* ABS: 024 Pixels @ 038,278*/ 0, 24, 0x0B, 0x00, 0x07, 0x0B, 0x03, 0x07, 0x0B, 0x03, 0x00, 0x03, 0x03, 0x0F, 0x0E, 0x03, 0x0B, 0x07, 0x03, 0x03, 0x06, 0x0D, 0x03, 0x03, 0x07, 0x0E,
+ /* RLE: 016 Pixels @ 062,278*/ 16, 0x03,
+ /* RLE: 004 Pixels @ 078,278*/ 4, 0x04,
+ /* RLE: 030 Pixels @ 082,278*/ 30, 0x00,
+ /* RLE: 001 Pixels @ 112,278*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 113,278*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 121,278*/ 1, 0x0B,
+ /* RLE: 082 Pixels @ 122,278*/ 82, 0x00,
+ /* RLE: 001 Pixels @ 204,278*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 205,278*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 212,278*/ 0, 2, 0x04, 0x04,
+ /* RLE: 048 Pixels @ 214,278*/ 48, 0x00,
+ /* RLE: 007 Pixels @ 262,278*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 269,278*/ 1, 0x04,
+ /* RLE: 059 Pixels @ 270,278*/ 59, 0x00,
+ /* ABS: 003 Pixels @ 329,278*/ 0, 3, 0x03, 0x07, 0x0B,
+ /* RLE: 004 Pixels @ 332,278*/ 4, 0x03,
+ /* ABS: 003 Pixels @ 336,278*/ 0, 3, 0x00, 0x07, 0x03,
+ /* RLE: 049 Pixels @ 339,278*/ 49, 0x00,
+ /* RLE: 003 Pixels @ 000,279*/ 3, 0x02,
+ /* RLE: 001 Pixels @ 003,279*/ 1, 0x00,
+ /* RLE: 006 Pixels @ 004,279*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 010,279*/ 1, 0x00,
+ /* RLE: 004 Pixels @ 011,279*/ 4, 0x02,
+ /* ABS: 007 Pixels @ 015,279*/ 0, 7, 0x00, 0x00, 0x07, 0x00, 0x00, 0x02, 0x18,
+ /* RLE: 004 Pixels @ 022,279*/ 4, 0x03,
+ /* ABS: 036 Pixels @ 026,279*/ 0, 36, 0x00, 0x07, 0x0B, 0x00, 0x0B, 0x00, 0x03, 0x03, 0x11, 0x0B, 0x03, 0x0A, 0x07, 0x0A, 0x06, 0x06, 0x03, 0x0D, 0x07, 0x07, 0x07, 0x12, 0x03, 0x07, 0x11, 0x06, 0x0F, 0x0F, 0x00, 0x03, 0x0B, 0x07, 0x03, 0x03, 0x06, 0x06,
+ /* RLE: 011 Pixels @ 062,279*/ 11, 0x03,
+ /* RLE: 004 Pixels @ 073,279*/ 4, 0x04,
+ /* RLE: 035 Pixels @ 077,279*/ 35, 0x00,
+ /* RLE: 001 Pixels @ 112,279*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 113,279*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 121,279*/ 1, 0x0B,
+ /* RLE: 081 Pixels @ 122,279*/ 81, 0x00,
+ /* RLE: 001 Pixels @ 203,279*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 204,279*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 211,279*/ 0, 2, 0x04, 0x04,
+ /* RLE: 049 Pixels @ 213,279*/ 49, 0x00,
+ /* RLE: 001 Pixels @ 262,279*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 263,279*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 269,279*/ 1, 0x04,
+ /* RLE: 059 Pixels @ 270,279*/ 59, 0x00,
+ /* ABS: 003 Pixels @ 329,279*/ 0, 3, 0x03, 0x06, 0x0E,
+ /* RLE: 004 Pixels @ 332,279*/ 4, 0x03,
+ /* ABS: 003 Pixels @ 336,279*/ 0, 3, 0x12, 0x0F, 0x03,
+ /* RLE: 049 Pixels @ 339,279*/ 49, 0x00,
+ /* RLE: 004 Pixels @ 000,280*/ 4, 0x03,
+ /* ABS: 058 Pixels @ 004,280*/ 0, 58, 0x0B, 0x06, 0x04, 0x0A, 0x07, 0x00, 0x03, 0x02, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x00, 0x0B, 0x00, 0x03, 0x03, 0x07, 0x06, 0x0F, 0x11, 0x07, 0x00, 0x03, 0x11, 0x12, 0x03, 0x00, 0x07, 0x0B, 0x06, 0x0D, 0x03, 0x03, 0x0A, 0x04, 0x0E, 0x07, 0x00, 0x07, 0x12, 0x00, 0x00, 0x0A, 0x00, 0x03, 0x04, 0x07, 0x00, 0x03, 0x12, 0x11,
+ /* RLE: 007 Pixels @ 062,280*/ 7, 0x03,
+ /* RLE: 004 Pixels @ 069,280*/ 4, 0x04,
+ /* RLE: 039 Pixels @ 073,280*/ 39, 0x00,
+ /* RLE: 001 Pixels @ 112,280*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 113,280*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 121,280*/ 1, 0x0B,
+ /* RLE: 081 Pixels @ 122,280*/ 81, 0x00,
+ /* RLE: 001 Pixels @ 203,280*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 204,280*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 210,280*/ 0, 2, 0x04, 0x04,
+ /* RLE: 050 Pixels @ 212,280*/ 50, 0x00,
+ /* RLE: 001 Pixels @ 262,280*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 263,280*/ 7, 0x03,
+ /* RLE: 059 Pixels @ 270,280*/ 59, 0x00,
+ /* ABS: 010 Pixels @ 329,280*/ 0, 10, 0x03, 0x04, 0x07, 0x0B, 0x00, 0x04, 0x06, 0x07, 0x0B, 0x03,
+ /* RLE: 049 Pixels @ 339,280*/ 49, 0x00,
+ /* ABS: 062 Pixels @ 000,281*/ 0, 62, 0x07, 0x0B, 0x03, 0x0A, 0x07, 0x0E, 0x03, 0x03, 0x07, 0x0B, 0x03, 0x03, 0x03, 0x00, 0x00, 0x03, 0x03, 0x11, 0x0E, 0x03, 0x11, 0x06, 0x0F, 0x0F, 0x07, 0x00, 0x03, 0x0D, 0x0F, 0x03, 0x00, 0x07, 0x0B, 0x03, 0x06, 0x06, 0x03, 0x03, 0x07, 0x0E, 0x0B, 0x07, 0x03, 0x12, 0x0D, 0x0B, 0x12, 0x07, 0x00, 0x0E, 0x07, 0x0E, 0x12, 0x0F, 0x00, 0x03, 0x0A, 0x06, 0x00, 0x03, 0x00, 0x0A,
+ /* RLE: 005 Pixels @ 062,281*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 067,281*/ 1, 0x04,
+ /* RLE: 044 Pixels @ 068,281*/ 44, 0x00,
+ /* RLE: 001 Pixels @ 112,281*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 113,281*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 121,281*/ 1, 0x0B,
+ /* RLE: 081 Pixels @ 122,281*/ 81, 0x00,
+ /* RLE: 001 Pixels @ 203,281*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 204,281*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 210,281*/ 1, 0x04,
+ /* RLE: 052 Pixels @ 211,281*/ 52, 0x00,
+ /* RLE: 001 Pixels @ 263,281*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 264,281*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 270,281*/ 1, 0x04,
+ /* RLE: 059 Pixels @ 271,281*/ 59, 0x00,
+ /* ABS: 009 Pixels @ 330,281*/ 0, 9, 0x03, 0x0E, 0x07, 0x07, 0x07, 0x0F, 0x0B, 0x03, 0x03,
+ /* RLE: 049 Pixels @ 339,281*/ 49, 0x00,
+ /* ABS: 054 Pixels @ 000,282*/ 0, 54, 0x07, 0x0B, 0x03, 0x0F, 0x0D, 0x03, 0x00, 0x03, 0x07, 0x0B, 0x03, 0x04, 0x07, 0x07, 0x07, 0x04, 0x03, 0x06, 0x06, 0x03, 0x0D, 0x0F, 0x03, 0x00, 0x07, 0x0B, 0x03, 0x06, 0x0D, 0x03, 0x03, 0x07, 0x0E, 0x03, 0x0E, 0x07, 0x03, 0x03, 0x07, 0x06, 0x04, 0x07, 0x00, 0x00, 0x0E, 0x06, 0x0E, 0x00, 0x03, 0x03, 0x0B, 0x06, 0x0E, 0x00,
+ /* RLE: 005 Pixels @ 054,282*/ 5, 0x03,
+ /* ABS: 002 Pixels @ 059,282*/ 0, 2, 0x00, 0x00,
+ /* RLE: 006 Pixels @ 061,282*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 067,282*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 068,282*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 113,282*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 114,282*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 122,282*/ 1, 0x0B,
+ /* RLE: 080 Pixels @ 123,282*/ 80, 0x00,
+ /* RLE: 001 Pixels @ 203,282*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 204,282*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 210,282*/ 1, 0x04,
+ /* RLE: 052 Pixels @ 211,282*/ 52, 0x00,
+ /* RLE: 001 Pixels @ 263,282*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 264,282*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 270,282*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 271,282*/ 60, 0x00,
+ /* ABS: 010 Pixels @ 331,282*/ 0, 10, 0x03, 0x00, 0x0A, 0x00, 0x03, 0x0B, 0x0E, 0x0B, 0x03, 0x03,
+ /* RLE: 047 Pixels @ 341,282*/ 47, 0x00,
+ /* ABS: 043 Pixels @ 000,283*/ 0, 43, 0x07, 0x06, 0x12, 0x07, 0x04, 0x03, 0x03, 0x03, 0x06, 0x06, 0x03, 0x0F, 0x0E, 0x03, 0x0B, 0x07, 0x03, 0x12, 0x0D, 0x03, 0x06, 0x0D, 0x03, 0x03, 0x07, 0x0E, 0x03, 0x0B, 0x07, 0x03, 0x03, 0x06, 0x06, 0x03, 0x04, 0x07, 0x12, 0x12, 0x11, 0x11, 0x0A, 0x06, 0x00,
+ /* RLE: 007 Pixels @ 043,283*/ 7, 0x03,
+ /* ABS: 006 Pixels @ 050,283*/ 0, 6, 0x00, 0x03, 0x03, 0x00, 0x00, 0x04,
+ /* RLE: 004 Pixels @ 056,283*/ 4, 0x02,
+ /* RLE: 001 Pixels @ 060,283*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 061,283*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 067,283*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 068,283*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 113,283*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 114,283*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 122,283*/ 1, 0x0B,
+ /* RLE: 079 Pixels @ 123,283*/ 79, 0x00,
+ /* RLE: 001 Pixels @ 202,283*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 203,283*/ 7, 0x03,
+ /* RLE: 053 Pixels @ 210,283*/ 53, 0x00,
+ /* RLE: 001 Pixels @ 263,283*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 264,283*/ 7, 0x03,
+ /* RLE: 061 Pixels @ 271,283*/ 61, 0x00,
+ /* RLE: 003 Pixels @ 332,283*/ 3, 0x03,
+ /* ABS: 006 Pixels @ 335,283*/ 0, 6, 0x0B, 0x11, 0x07, 0x0F, 0x04, 0x03,
+ /* RLE: 047 Pixels @ 341,283*/ 47, 0x00,
+ /* ABS: 044 Pixels @ 000,284*/ 0, 44, 0x06, 0x0F, 0x07, 0x0F, 0x11, 0x03, 0x03, 0x03, 0x06, 0x0D, 0x03, 0x07, 0x11, 0x06, 0x0F, 0x0F, 0x00, 0x0B, 0x07, 0x03, 0x0B, 0x07, 0x03, 0x03, 0x06, 0x06, 0x03, 0x04, 0x07, 0x00, 0x03, 0x12, 0x11, 0x03, 0x03, 0x0E, 0x06, 0x0B, 0x00, 0x0A, 0x03, 0x03, 0x03, 0x00,
+ /* RLE: 005 Pixels @ 044,284*/ 5, 0x04,
+ /* RLE: 012 Pixels @ 049,284*/ 12, 0x02,
+ /* RLE: 007 Pixels @ 061,284*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 068,284*/ 1, 0x04,
+ /* RLE: 044 Pixels @ 069,284*/ 44, 0x00,
+ /* RLE: 001 Pixels @ 113,284*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 114,284*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 122,284*/ 1, 0x0B,
+ /* RLE: 079 Pixels @ 123,284*/ 79, 0x00,
+ /* RLE: 001 Pixels @ 202,284*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 203,284*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 209,284*/ 1, 0x04,
+ /* RLE: 054 Pixels @ 210,284*/ 54, 0x00,
+ /* RLE: 001 Pixels @ 264,284*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 265,284*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 271,284*/ 1, 0x04,
+ /* RLE: 059 Pixels @ 272,284*/ 59, 0x00,
+ /* ABS: 010 Pixels @ 331,284*/ 0, 10, 0x03, 0x03, 0x0E, 0x07, 0x07, 0x06, 0x07, 0x00, 0x03, 0x03,
+ /* RLE: 047 Pixels @ 341,284*/ 47, 0x00,
+ /* ABS: 033 Pixels @ 000,285*/ 0, 33, 0x12, 0x07, 0x12, 0x00, 0x07, 0x0D, 0x03, 0x03, 0x0B, 0x07, 0x03, 0x07, 0x12, 0x0A, 0x00, 0x0A, 0x00, 0x04, 0x07, 0x00, 0x04, 0x07, 0x00, 0x03, 0x12, 0x11, 0x03, 0x0A, 0x06, 0x00, 0x03, 0x00, 0x0A,
+ /* RLE: 006 Pixels @ 033,285*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 039,285*/ 0, 3, 0x00, 0x00, 0x04,
+ /* RLE: 019 Pixels @ 042,285*/ 19, 0x02,
+ /* RLE: 001 Pixels @ 061,285*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 062,285*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 068,285*/ 1, 0x04,
+ /* RLE: 044 Pixels @ 069,285*/ 44, 0x00,
+ /* RLE: 001 Pixels @ 113,285*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 114,285*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 122,285*/ 1, 0x0B,
+ /* RLE: 079 Pixels @ 123,285*/ 79, 0x00,
+ /* RLE: 001 Pixels @ 202,285*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 203,285*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 209,285*/ 1, 0x04,
+ /* RLE: 054 Pixels @ 210,285*/ 54, 0x00,
+ /* RLE: 001 Pixels @ 264,285*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 265,285*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 271,285*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 272,285*/ 60, 0x00,
+ /* ABS: 010 Pixels @ 332,285*/ 0, 10, 0x0B, 0x07, 0x0B, 0x00, 0x03, 0x0B, 0x0E, 0x0B, 0x03, 0x03,
+ /* RLE: 046 Pixels @ 342,285*/ 46, 0x00,
+ /* ABS: 026 Pixels @ 000,286*/ 0, 26, 0x0B, 0x07, 0x00, 0x03, 0x0B, 0x07, 0x12, 0x03, 0x04, 0x07, 0x00, 0x0E, 0x07, 0x0E, 0x12, 0x0F, 0x00, 0x0A, 0x06, 0x00, 0x0A, 0x06, 0x00, 0x03, 0x00, 0x0A,
+ /* RLE: 004 Pixels @ 026,286*/ 4, 0x03,
+ /* RLE: 004 Pixels @ 030,286*/ 4, 0x00,
+ /* RLE: 001 Pixels @ 034,286*/ 1, 0x04,
+ /* RLE: 026 Pixels @ 035,286*/ 26, 0x02,
+ /* RLE: 001 Pixels @ 061,286*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 062,286*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 068,286*/ 1, 0x04,
+ /* RLE: 044 Pixels @ 069,286*/ 44, 0x00,
+ /* RLE: 001 Pixels @ 113,286*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 114,286*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 122,286*/ 1, 0x0B,
+ /* RLE: 079 Pixels @ 123,286*/ 79, 0x00,
+ /* RLE: 001 Pixels @ 202,286*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 203,286*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 209,286*/ 1, 0x04,
+ /* RLE: 055 Pixels @ 210,286*/ 55, 0x00,
+ /* RLE: 007 Pixels @ 265,286*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 272,286*/ 1, 0x04,
+ /* RLE: 057 Pixels @ 273,286*/ 57, 0x00,
+ /* ABS: 012 Pixels @ 330,286*/ 0, 12, 0x0A, 0x03, 0x00, 0x07, 0x00, 0x03, 0x04, 0x11, 0x07, 0x0F, 0x04, 0x03,
+ /* RLE: 046 Pixels @ 342,286*/ 46, 0x00,
+ /* ABS: 016 Pixels @ 000,287*/ 0, 16, 0x04, 0x07, 0x00, 0x03, 0x03, 0x0E, 0x07, 0x0E, 0x0A, 0x06, 0x00, 0x03, 0x0B, 0x06, 0x0E, 0x00,
+ /* RLE: 007 Pixels @ 016,287*/ 7, 0x03,
+ /* RLE: 004 Pixels @ 023,287*/ 4, 0x00,
+ /* RLE: 001 Pixels @ 027,287*/ 1, 0x04,
+ /* RLE: 033 Pixels @ 028,287*/ 33, 0x02,
+ /* RLE: 001 Pixels @ 061,287*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 062,287*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 068,287*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 069,287*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 114,287*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 115,287*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 123,287*/ 1, 0x0B,
+ /* RLE: 077 Pixels @ 124,287*/ 77, 0x00,
+ /* ABS: 002 Pixels @ 201,287*/ 0, 2, 0x04, 0x04,
+ /* RLE: 006 Pixels @ 203,287*/ 6, 0x03,
+ /* RLE: 056 Pixels @ 209,287*/ 56, 0x00,
+ /* RLE: 001 Pixels @ 265,287*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 266,287*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 272,287*/ 1, 0x04,
+ /* RLE: 059 Pixels @ 273,287*/ 59, 0x00,
+ /* ABS: 009 Pixels @ 332,287*/ 0, 9, 0x03, 0x03, 0x0E, 0x07, 0x07, 0x06, 0x07, 0x00, 0x03,
+ /* RLE: 047 Pixels @ 341,287*/ 47, 0x00,
+ /* ABS: 003 Pixels @ 000,288*/ 0, 3, 0x0A, 0x06, 0x0A,
+ /* RLE: 012 Pixels @ 003,288*/ 12, 0x03,
+ /* ABS: 002 Pixels @ 015,288*/ 0, 2, 0x00, 0x00,
+ /* RLE: 004 Pixels @ 017,288*/ 4, 0x04,
+ /* RLE: 040 Pixels @ 021,288*/ 40, 0x02,
+ /* RLE: 001 Pixels @ 061,288*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 062,288*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 068,288*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 069,288*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 114,288*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 115,288*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 123,288*/ 1, 0x0B,
+ /* RLE: 078 Pixels @ 124,288*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 202,288*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 203,288*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 209,288*/ 1, 0x04,
+ /* RLE: 055 Pixels @ 210,288*/ 55, 0x00,
+ /* RLE: 001 Pixels @ 265,288*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 266,288*/ 7, 0x03,
+ /* RLE: 059 Pixels @ 273,288*/ 59, 0x00,
+ /* ABS: 010 Pixels @ 332,288*/ 0, 10, 0x03, 0x0B, 0x07, 0x0B, 0x00, 0x03, 0x00, 0x00, 0x03, 0x04,
+ /* RLE: 046 Pixels @ 342,288*/ 46, 0x00,
+ /* RLE: 007 Pixels @ 000,289*/ 7, 0x03,
+ /* RLE: 007 Pixels @ 007,289*/ 7, 0x04,
+ /* RLE: 047 Pixels @ 014,289*/ 47, 0x02,
+ /* RLE: 001 Pixels @ 061,289*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 062,289*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 068,289*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 069,289*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 114,289*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 115,289*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 123,289*/ 1, 0x0B,
+ /* RLE: 078 Pixels @ 124,289*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 202,289*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 203,289*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 209,289*/ 1, 0x04,
+ /* RLE: 056 Pixels @ 210,289*/ 56, 0x00,
+ /* RLE: 001 Pixels @ 266,289*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 267,289*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 273,289*/ 1, 0x04,
+ /* RLE: 058 Pixels @ 274,289*/ 58, 0x00,
+ /* ABS: 004 Pixels @ 332,289*/ 0, 4, 0x03, 0x00, 0x07, 0x00,
+ /* RLE: 005 Pixels @ 336,289*/ 5, 0x03,
+ /* RLE: 047 Pixels @ 341,289*/ 47, 0x00,
+ /* RLE: 007 Pixels @ 000,290*/ 7, 0x04,
+ /* RLE: 055 Pixels @ 007,290*/ 55, 0x02,
+ /* RLE: 007 Pixels @ 062,290*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 069,290*/ 1, 0x04,
+ /* RLE: 044 Pixels @ 070,290*/ 44, 0x00,
+ /* RLE: 001 Pixels @ 114,290*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 115,290*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 123,290*/ 1, 0x0B,
+ /* RLE: 078 Pixels @ 124,290*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 202,290*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 203,290*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 209,290*/ 1, 0x04,
+ /* RLE: 056 Pixels @ 210,290*/ 56, 0x00,
+ /* RLE: 001 Pixels @ 266,290*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 267,290*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 273,290*/ 1, 0x04,
+ /* RLE: 059 Pixels @ 274,290*/ 59, 0x00,
+ /* RLE: 004 Pixels @ 333,290*/ 4, 0x03,
+ /* ABS: 005 Pixels @ 337,290*/ 0, 5, 0x0B, 0x06, 0x06, 0x0A, 0x03,
+ /* RLE: 046 Pixels @ 342,290*/ 46, 0x00,
+ /* RLE: 062 Pixels @ 000,291*/ 62, 0x02,
+ /* RLE: 001 Pixels @ 062,291*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 063,291*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 069,291*/ 1, 0x04,
+ /* RLE: 044 Pixels @ 070,291*/ 44, 0x00,
+ /* RLE: 001 Pixels @ 114,291*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 115,291*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 123,291*/ 1, 0x0B,
+ /* RLE: 079 Pixels @ 124,291*/ 79, 0x00,
+ /* RLE: 007 Pixels @ 203,291*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 210,291*/ 1, 0x04,
+ /* RLE: 055 Pixels @ 211,291*/ 55, 0x00,
+ /* RLE: 001 Pixels @ 266,291*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 267,291*/ 7, 0x03,
+ /* RLE: 061 Pixels @ 274,291*/ 61, 0x00,
+ /* ABS: 006 Pixels @ 335,291*/ 0, 6, 0x03, 0x06, 0x07, 0x06, 0x12, 0x07,
+ /* RLE: 047 Pixels @ 341,291*/ 47, 0x00,
+ /* RLE: 062 Pixels @ 000,292*/ 62, 0x02,
+ /* RLE: 001 Pixels @ 062,292*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 063,292*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 069,292*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 070,292*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 115,292*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 116,292*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 124,292*/ 1, 0x0B,
+ /* RLE: 078 Pixels @ 125,292*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 203,292*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 204,292*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 210,292*/ 1, 0x04,
+ /* RLE: 056 Pixels @ 211,292*/ 56, 0x00,
+ /* RLE: 001 Pixels @ 267,292*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 268,292*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 274,292*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 275,292*/ 60, 0x00,
+ /* ABS: 008 Pixels @ 335,292*/ 0, 8, 0x03, 0x07, 0x0B, 0x03, 0x03, 0x0E, 0x0E, 0x03,
+ /* RLE: 045 Pixels @ 343,292*/ 45, 0x00,
+ /* RLE: 062 Pixels @ 000,293*/ 62, 0x02,
+ /* RLE: 001 Pixels @ 062,293*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 063,293*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 069,293*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 070,293*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 115,293*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 116,293*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 124,293*/ 1, 0x0B,
+ /* RLE: 078 Pixels @ 125,293*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 203,293*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 204,293*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 210,293*/ 1, 0x04,
+ /* RLE: 056 Pixels @ 211,293*/ 56, 0x00,
+ /* RLE: 001 Pixels @ 267,293*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 268,293*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 274,293*/ 1, 0x04,
+ /* RLE: 060 Pixels @ 275,293*/ 60, 0x00,
+ /* ABS: 009 Pixels @ 335,293*/ 0, 9, 0x03, 0x07, 0x00, 0x03, 0x03, 0x12, 0x12, 0x03, 0x04,
+ /* RLE: 044 Pixels @ 344,293*/ 44, 0x00,
+ /* RLE: 062 Pixels @ 000,294*/ 62, 0x02,
+ /* RLE: 001 Pixels @ 062,294*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 063,294*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 069,294*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 070,294*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 115,294*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 116,294*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 124,294*/ 1, 0x0B,
+ /* RLE: 078 Pixels @ 125,294*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 203,294*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 204,294*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 210,294*/ 1, 0x04,
+ /* RLE: 057 Pixels @ 211,294*/ 57, 0x00,
+ /* RLE: 007 Pixels @ 268,294*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 275,294*/ 1, 0x04,
+ /* RLE: 059 Pixels @ 276,294*/ 59, 0x00,
+ /* ABS: 009 Pixels @ 335,294*/ 0, 9, 0x03, 0x06, 0x0D, 0x0B, 0x06, 0x07, 0x04, 0x03, 0x04,
+ /* RLE: 044 Pixels @ 344,294*/ 44, 0x00,
+ /* RLE: 062 Pixels @ 000,295*/ 62, 0x02,
+ /* RLE: 001 Pixels @ 062,295*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 063,295*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 069,295*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 070,295*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 115,295*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 116,295*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 124,295*/ 1, 0x0B,
+ /* RLE: 079 Pixels @ 125,295*/ 79, 0x00,
+ /* RLE: 007 Pixels @ 204,295*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 211,295*/ 1, 0x04,
+ /* RLE: 056 Pixels @ 212,295*/ 56, 0x00,
+ /* RLE: 001 Pixels @ 268,295*/ 1, 0x04,
+ /* RLE: 008 Pixels @ 269,295*/ 8, 0x03,
+ /* RLE: 058 Pixels @ 277,295*/ 58, 0x00,
+ /* ABS: 010 Pixels @ 335,295*/ 0, 10, 0x03, 0x03, 0x0E, 0x07, 0x11, 0x0A, 0x03, 0x03, 0x03, 0x04,
+ /* RLE: 043 Pixels @ 345,295*/ 43, 0x00,
+ /* RLE: 063 Pixels @ 000,296*/ 63, 0x02,
+ /* RLE: 007 Pixels @ 063,296*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 070,296*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 071,296*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 116,296*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 117,296*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 125,296*/ 1, 0x0B,
+ /* RLE: 078 Pixels @ 126,296*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 204,296*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 205,296*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 211,296*/ 1, 0x04,
+ /* RLE: 056 Pixels @ 212,296*/ 56, 0x00,
+ /* RLE: 001 Pixels @ 268,296*/ 1, 0x04,
+ /* RLE: 004 Pixels @ 269,296*/ 4, 0x03,
+ /* ABS: 004 Pixels @ 273,296*/ 0, 4, 0x04, 0x0D, 0x12, 0x03,
+ /* RLE: 059 Pixels @ 277,296*/ 59, 0x00,
+ /* RLE: 003 Pixels @ 336,296*/ 3, 0x03,
+ /* ABS: 006 Pixels @ 339,296*/ 0, 6, 0x0E, 0x0E, 0x03, 0x03, 0x03, 0x04,
+ /* RLE: 043 Pixels @ 345,296*/ 43, 0x00,
+ /* RLE: 063 Pixels @ 000,297*/ 63, 0x02,
+ /* RLE: 001 Pixels @ 063,297*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 064,297*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 070,297*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 071,297*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 116,297*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 117,297*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 125,297*/ 1, 0x0B,
+ /* RLE: 078 Pixels @ 126,297*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 204,297*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 205,297*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 211,297*/ 1, 0x04,
+ /* RLE: 056 Pixels @ 212,297*/ 56, 0x00,
+ /* ABS: 009 Pixels @ 268,297*/ 0, 9, 0x03, 0x03, 0x00, 0x0E, 0x0F, 0x07, 0x11, 0x0B, 0x03,
+ /* RLE: 060 Pixels @ 277,297*/ 60, 0x00,
+ /* ABS: 004 Pixels @ 337,297*/ 0, 4, 0x04, 0x03, 0x0E, 0x0F,
+ /* RLE: 005 Pixels @ 341,297*/ 5, 0x03,
+ /* RLE: 042 Pixels @ 346,297*/ 42, 0x00,
+ /* RLE: 063 Pixels @ 000,298*/ 63, 0x02,
+ /* RLE: 001 Pixels @ 063,298*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 064,298*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 070,298*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 071,298*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 116,298*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 117,298*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 125,298*/ 1, 0x0B,
+ /* RLE: 078 Pixels @ 126,298*/ 78, 0x00,
+ /* RLE: 001 Pixels @ 204,298*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 205,298*/ 7, 0x03,
+ /* RLE: 054 Pixels @ 212,298*/ 54, 0x00,
+ /* ABS: 010 Pixels @ 266,298*/ 0, 10, 0x04, 0x00, 0x0A, 0x0D, 0x07, 0x07, 0x0E, 0x00, 0x03, 0x03,
+ /* RLE: 062 Pixels @ 276,298*/ 62, 0x00,
+ /* ABS: 009 Pixels @ 338,298*/ 0, 9, 0x03, 0x00, 0x07, 0x00, 0x03, 0x04, 0x12, 0x0E, 0x03,
+ /* RLE: 041 Pixels @ 347,298*/ 41, 0x00,
+ /* RLE: 063 Pixels @ 000,299*/ 63, 0x02,
+ /* RLE: 001 Pixels @ 063,299*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 064,299*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 070,299*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 071,299*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 116,299*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 117,299*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 125,299*/ 1, 0x0B,
+ /* RLE: 079 Pixels @ 126,299*/ 79, 0x00,
+ /* RLE: 001 Pixels @ 205,299*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 206,299*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 212,299*/ 1, 0x04,
+ /* RLE: 050 Pixels @ 213,299*/ 50, 0x00,
+ /* ABS: 015 Pixels @ 263,299*/ 0, 15, 0x04, 0x04, 0x03, 0x03, 0x03, 0x04, 0x11, 0x0B, 0x03, 0x03, 0x00, 0x00, 0x03, 0x03, 0x04,
+ /* RLE: 060 Pixels @ 278,299*/ 60, 0x00,
+ /* ABS: 009 Pixels @ 338,299*/ 0, 9, 0x03, 0x03, 0x00, 0x0E, 0x11, 0x07, 0x0F, 0x0E, 0x03,
+ /* RLE: 041 Pixels @ 347,299*/ 41, 0x00,
+ /* RLE: 063 Pixels @ 000,300*/ 63, 0x02,
+ /* RLE: 001 Pixels @ 063,300*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 064,300*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 070,300*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 071,300*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 116,300*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 117,300*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 125,300*/ 1, 0x0B,
+ /* RLE: 027 Pixels @ 126,300*/ 27, 0x00,
+ /* RLE: 005 Pixels @ 153,300*/ 5, 0x04,
+ /* RLE: 047 Pixels @ 158,300*/ 47, 0x00,
+ /* RLE: 001 Pixels @ 205,300*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 206,300*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 212,300*/ 1, 0x04,
+ /* RLE: 048 Pixels @ 213,300*/ 48, 0x00,
+ /* ABS: 002 Pixels @ 261,300*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 263,300*/ 8, 0x03,
+ /* ABS: 007 Pixels @ 271,300*/ 0, 7, 0x0A, 0x12, 0x07, 0x0D, 0x03, 0x03, 0x04,
+ /* RLE: 059 Pixels @ 278,300*/ 59, 0x00,
+ /* ABS: 009 Pixels @ 337,300*/ 0, 9, 0x03, 0x0A, 0x06, 0x07, 0x07, 0x07, 0x0B, 0x03, 0x03,
+ /* RLE: 042 Pixels @ 346,300*/ 42, 0x00,
+ /* RLE: 063 Pixels @ 000,301*/ 63, 0x02,
+ /* RLE: 001 Pixels @ 063,301*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 064,301*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 070,301*/ 1, 0x04,
+ /* RLE: 046 Pixels @ 071,301*/ 46, 0x00,
+ /* RLE: 001 Pixels @ 117,301*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 118,301*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 126,301*/ 1, 0x0B,
+ /* RLE: 023 Pixels @ 127,301*/ 23, 0x00,
+ /* ABS: 002 Pixels @ 150,301*/ 0, 2, 0x04, 0x04,
+ /* RLE: 005 Pixels @ 152,301*/ 5, 0x03,
+ /* ABS: 002 Pixels @ 157,301*/ 0, 2, 0x04, 0x04,
+ /* RLE: 046 Pixels @ 159,301*/ 46, 0x00,
+ /* RLE: 001 Pixels @ 205,301*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 206,301*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 212,301*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 213,301*/ 45, 0x00,
+ /* ABS: 002 Pixels @ 258,301*/ 0, 2, 0x04, 0x04,
+ /* RLE: 009 Pixels @ 260,301*/ 9, 0x03,
+ /* ABS: 010 Pixels @ 269,301*/ 0, 10, 0x0B, 0x11, 0x07, 0x11, 0x06, 0x12, 0x00, 0x03, 0x03, 0x04,
+ /* RLE: 058 Pixels @ 279,301*/ 58, 0x00,
+ /* ABS: 007 Pixels @ 337,301*/ 0, 7, 0x03, 0x04, 0x11, 0x0E, 0x00, 0x06, 0x0E,
+ /* RLE: 004 Pixels @ 344,301*/ 4, 0x03,
+ /* RLE: 040 Pixels @ 348,301*/ 40, 0x00,
+ /* RLE: 064 Pixels @ 000,302*/ 64, 0x02,
+ /* RLE: 007 Pixels @ 064,302*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 071,302*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 072,302*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 117,302*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 118,302*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 126,302*/ 1, 0x0B,
+ /* RLE: 021 Pixels @ 127,302*/ 21, 0x00,
+ /* ABS: 002 Pixels @ 148,302*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 150,302*/ 8, 0x03,
+ /* RLE: 001 Pixels @ 158,302*/ 1, 0x04,
+ /* RLE: 046 Pixels @ 159,302*/ 46, 0x00,
+ /* RLE: 001 Pixels @ 205,302*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 206,302*/ 7, 0x03,
+ /* RLE: 043 Pixels @ 213,302*/ 43, 0x00,
+ /* ABS: 002 Pixels @ 256,302*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 258,302*/ 11, 0x03,
+ /* ABS: 010 Pixels @ 269,302*/ 0, 10, 0x04, 0x12, 0x0A, 0x03, 0x03, 0x0E, 0x12, 0x03, 0x03, 0x04,
+ /* RLE: 059 Pixels @ 279,302*/ 59, 0x00,
+ /* RLE: 004 Pixels @ 338,302*/ 4, 0x03,
+ /* ABS: 007 Pixels @ 342,302*/ 0, 7, 0x0B, 0x0F, 0x03, 0x00, 0x0E, 0x00, 0x03,
+ /* RLE: 039 Pixels @ 349,302*/ 39, 0x00,
+ /* RLE: 064 Pixels @ 000,303*/ 64, 0x02,
+ /* RLE: 001 Pixels @ 064,303*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 065,303*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 071,303*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 072,303*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 117,303*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 118,303*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 126,303*/ 1, 0x0B,
+ /* RLE: 018 Pixels @ 127,303*/ 18, 0x00,
+ /* ABS: 002 Pixels @ 145,303*/ 0, 2, 0x04, 0x04,
+ /* RLE: 011 Pixels @ 147,303*/ 11, 0x03,
+ /* RLE: 001 Pixels @ 158,303*/ 1, 0x04,
+ /* RLE: 047 Pixels @ 159,303*/ 47, 0x00,
+ /* RLE: 001 Pixels @ 206,303*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 207,303*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 213,303*/ 1, 0x04,
+ /* RLE: 039 Pixels @ 214,303*/ 39, 0x00,
+ /* ABS: 002 Pixels @ 253,303*/ 0, 2, 0x04, 0x04,
+ /* RLE: 018 Pixels @ 255,303*/ 18, 0x03,
+ /* ABS: 006 Pixels @ 273,303*/ 0, 6, 0x0B, 0x0F, 0x06, 0x03, 0x03, 0x04,
+ /* RLE: 061 Pixels @ 279,303*/ 61, 0x00,
+ /* RLE: 003 Pixels @ 340,303*/ 3, 0x03,
+ /* ABS: 005 Pixels @ 343,303*/ 0, 5, 0x07, 0x11, 0x07, 0x07, 0x04,
+ /* RLE: 040 Pixels @ 348,303*/ 40, 0x00,
+ /* RLE: 064 Pixels @ 000,304*/ 64, 0x02,
+ /* RLE: 001 Pixels @ 064,304*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 065,304*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 071,304*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 072,304*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 117,304*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 118,304*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 126,304*/ 1, 0x0B,
+ /* RLE: 016 Pixels @ 127,304*/ 16, 0x00,
+ /* ABS: 002 Pixels @ 143,304*/ 0, 2, 0x04, 0x04,
+ /* RLE: 013 Pixels @ 145,304*/ 13, 0x03,
+ /* RLE: 001 Pixels @ 158,304*/ 1, 0x04,
+ /* RLE: 047 Pixels @ 159,304*/ 47, 0x00,
+ /* RLE: 001 Pixels @ 206,304*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 207,304*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 213,304*/ 1, 0x04,
+ /* RLE: 037 Pixels @ 214,304*/ 37, 0x00,
+ /* ABS: 002 Pixels @ 251,304*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 253,304*/ 16, 0x03,
+ /* ABS: 011 Pixels @ 269,304*/ 0, 11, 0x00, 0x00, 0x0E, 0x07, 0x07, 0x0D, 0x0D, 0x00, 0x03, 0x03, 0x04,
+ /* RLE: 059 Pixels @ 280,304*/ 59, 0x00,
+ /* ABS: 009 Pixels @ 339,304*/ 0, 9, 0x03, 0x00, 0x0E, 0x0F, 0x07, 0x11, 0x0B, 0x00, 0x03,
+ /* RLE: 040 Pixels @ 348,304*/ 40, 0x00,
+ /* RLE: 064 Pixels @ 000,305*/ 64, 0x02,
+ /* RLE: 001 Pixels @ 064,305*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 065,305*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 071,305*/ 1, 0x04,
+ /* RLE: 045 Pixels @ 072,305*/ 45, 0x00,
+ /* RLE: 001 Pixels @ 117,305*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 118,305*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 126,305*/ 1, 0x0B,
+ /* RLE: 013 Pixels @ 127,305*/ 13, 0x00,
+ /* ABS: 002 Pixels @ 140,305*/ 0, 2, 0x04, 0x04,
+ /* RLE: 015 Pixels @ 142,305*/ 15, 0x03,
+ /* ABS: 002 Pixels @ 157,305*/ 0, 2, 0x04, 0x04,
+ /* RLE: 047 Pixels @ 159,305*/ 47, 0x00,
+ /* RLE: 001 Pixels @ 206,305*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 207,305*/ 6, 0x03,
+ /* ABS: 002 Pixels @ 213,305*/ 0, 2, 0x04, 0x04,
+ /* RLE: 033 Pixels @ 215,305*/ 33, 0x00,
+ /* ABS: 002 Pixels @ 248,305*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 250,305*/ 16, 0x03,
+ /* ABS: 014 Pixels @ 266,305*/ 0, 14, 0x04, 0x04, 0x00, 0x03, 0x00, 0x0F, 0x0E, 0x00, 0x03, 0x0A, 0x0F, 0x03, 0x03, 0x04,
+ /* RLE: 059 Pixels @ 280,305*/ 59, 0x00,
+ /* ABS: 005 Pixels @ 339,305*/ 0, 5, 0x03, 0x11, 0x07, 0x12, 0x0A,
+ /* RLE: 004 Pixels @ 344,305*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 348,305*/ 1, 0x04,
+ /* RLE: 039 Pixels @ 349,305*/ 39, 0x00,
+ /* RLE: 064 Pixels @ 000,306*/ 64, 0x02,
+ /* RLE: 001 Pixels @ 064,306*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 065,306*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 071,306*/ 1, 0x04,
+ /* RLE: 046 Pixels @ 072,306*/ 46, 0x00,
+ /* RLE: 001 Pixels @ 118,306*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 119,306*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 127,306*/ 1, 0x0B,
+ /* RLE: 009 Pixels @ 128,306*/ 9, 0x00,
+ /* ABS: 002 Pixels @ 137,306*/ 0, 2, 0x04, 0x04,
+ /* RLE: 017 Pixels @ 139,306*/ 17, 0x03,
+ /* ABS: 002 Pixels @ 156,306*/ 0, 2, 0x04, 0x04,
+ /* RLE: 048 Pixels @ 158,306*/ 48, 0x00,
+ /* RLE: 001 Pixels @ 206,306*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 207,306*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 214,306*/ 0, 2, 0x04, 0x04,
+ /* RLE: 030 Pixels @ 216,306*/ 30, 0x00,
+ /* ABS: 002 Pixels @ 246,306*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 248,306*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 264,306*/ 0, 2, 0x04, 0x04,
+ /* RLE: 004 Pixels @ 266,306*/ 4, 0x00,
+ /* RLE: 004 Pixels @ 270,306*/ 4, 0x03,
+ /* ABS: 007 Pixels @ 274,306*/ 0, 7, 0x00, 0x12, 0x07, 0x03, 0x03, 0x03, 0x04,
+ /* RLE: 058 Pixels @ 281,306*/ 58, 0x00,
+ /* ABS: 002 Pixels @ 339,306*/ 0, 2, 0x03, 0x00,
+ /* RLE: 007 Pixels @ 341,306*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 348,306*/ 1, 0x04,
+ /* RLE: 039 Pixels @ 349,306*/ 39, 0x00,
+ /* RLE: 064 Pixels @ 000,307*/ 64, 0x02,
+ /* RLE: 001 Pixels @ 064,307*/ 1, 0x04,
+ /* RLE: 006 Pixels @ 065,307*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 071,307*/ 1, 0x04,
+ /* RLE: 046 Pixels @ 072,307*/ 46, 0x00,
+ /* RLE: 001 Pixels @ 118,307*/ 1, 0x0B,
+ /* RLE: 008 Pixels @ 119,307*/ 8, 0x08,
+ /* RLE: 001 Pixels @ 127,307*/ 1, 0x0B,
+ /* RLE: 007 Pixels @ 128,307*/ 7, 0x00,
+ /* ABS: 002 Pixels @ 135,307*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 137,307*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 153,307*/ 0, 2, 0x04, 0x04,
+ /* RLE: 052 Pixels @ 155,307*/ 52, 0x00,
+ /* RLE: 001 Pixels @ 207,307*/ 1, 0x04,
+ /* RLE: 007 Pixels @ 208,307*/ 7, 0x03,
+ /* ABS: 002 Pixels @ 215,307*/ 0, 2, 0x04, 0x04,
+ /* RLE: 026 Pixels @ 217,307*/ 26, 0x00,
+ /* ABS: 002 Pixels @ 243,307*/ 0, 2, 0x04, 0x04,
+ /* RLE: 016 Pixels @ 245,307*/ 16, 0x03,
+ /* ABS: 002 Pixels @ 261,307*/ 0, 2, 0x04, 0x04,
+ /* RLE: 008 Pixels @ 263,307*/ 8, 0x00,
+ /* ABS: 010 Pixels @ 271,307*/ 0, 10, 0x03, 0x0B, 0x11, 0x07, 0x0F, 0x04, 0x03, 0x03, 0x03, 0x04,
+ /* RLE: 059 Pixels @ 281,307*/ 59, 0x00,
+ /* ABS: 009 Pixels @ 340,307*/ 0, 9, 0x03, 0x03, 0x00, 0x00, 0x03, 0x11, 0x0E, 0x03, 0x03,
+ /* RLE: 039 Pixels @ 349,307*/ 39, 0x00,
+
+
+ 0}; /* 20430 for 119504 pixels */
+
+const GUI_BITMAP bmMap = {
+ 388, /* XSize */
+ 308, /* YSize */
+ 388, /* BytesPerLine */
+ GUI_COMPRESS_RLE8, /* BitsPerPixel */
+ acMap, /* Pointer to picture data (indices) */
+ &PalMap /* Pointer to palette */
+ ,GUI_DRAW_RLE8
+};
+
+/* *** End of file *** */
diff --git a/User/lib/lcd/gui/GUIDemo/SeggerLogoBlue.c b/User/lib/lcd/gui/GUIDemo/SeggerLogoBlue.c
new file mode 100644
index 0000000..94823c3
--- /dev/null
+++ b/User/lib/lcd/gui/GUIDemo/SeggerLogoBlue.c
@@ -0,0 +1,907 @@
+/*
+ C-file generated by Bitmap converter for emWin GSC V2.30b, compiled May 8 2002, 10:05:14
+
+ Copyright (C) 1998-2002
+ Segger Microcontroller Systeme GmbH
+ www.segger.com
+
+ Solutions for real time microcontroller applications
+
+ Source file: SeggerLogo
+ Dimensions: 138 * 65
+ NumColors: 6
+*/
+
+#include "stdlib.h"
+#include "GUI.h"
+#include "GUIDEMO.h"
+
+#ifndef GUI_CONST_STORAGE
+ #define GUI_CONST_STORAGE const
+#endif
+
+extern const GUI_BITMAP bmSeggerLogoBlue;
+
+/*********************************************************************
+*
+* colors (SEGGER logo)
+*
+**********************************************************************
+*/
+GUI_CONST_STORAGE GUI_COLOR ColorsSeggerLogoBlue[] = {
+ 0x0000FF,0x000000,0x888888,0xFFFFFF
+ ,0xFF0000,0xBBBBBB
+};
+
+GUI_CONST_STORAGE GUI_LOGPALETTE PalSeggerLogoBlue = {
+ 6, /* number of entries */
+ 1, /* Has transparency */
+ &ColorsSeggerLogoBlue[0]
+};
+
+#if !(GUIDEMO_TINY)
+
+/*********************************************************************
+*
+* SEGGER logo, 100% size
+*
+**********************************************************************
+*/
+#ifdef LOGO_COMP
+
+GUI_CONST_STORAGE unsigned char acSeggerLogoBlue[] = {
+ /* RLE: 141 Pixels @ 000,000*/ 141, 0x00,
+ /* RLE: 132 Pixels @ 003,001*/ 132, 0x01,
+ /* RLE: 005 Pixels @ 135,001*/ 5, 0x00,
+ /* RLE: 134 Pixels @ 002,002*/ 134, 0x01,
+ /* RLE: 003 Pixels @ 136,002*/ 3, 0x00,
+ /* RLE: 004 Pixels @ 001,003*/ 4, 0x01,
+ /* RLE: 128 Pixels @ 005,003*/ 128, 0x02,
+ /* RLE: 004 Pixels @ 133,003*/ 4, 0x01,
+ /* ABS: 005 Pixels @ 137,003*/ 0, 5, 0x00, 0x11, 0x10,
+ /* RLE: 130 Pixels @ 004,004*/ 130, 0x03,
+ /* RLE: 003 Pixels @ 134,004*/ 3, 0x01,
+ /* ABS: 005 Pixels @ 137,004*/ 0, 5, 0x00, 0x11, 0x20,
+ /* RLE: 130 Pixels @ 004,005*/ 130, 0x03,
+ /* RLE: 003 Pixels @ 134,005*/ 3, 0x01,
+ /* ABS: 005 Pixels @ 137,005*/ 0, 5, 0x00, 0x11, 0x20,
+ /* RLE: 130 Pixels @ 004,006*/ 130, 0x03,
+ /* ABS: 008 Pixels @ 134,006*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 130 Pixels @ 004,007*/ 130, 0x03,
+ /* ABS: 008 Pixels @ 134,007*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 004 Pixels @ 004,008*/ 4, 0x03,
+ /* RLE: 004 Pixels @ 008,008*/ 4, 0x04,
+ /* RLE: 010 Pixels @ 012,008*/ 10, 0x03,
+ /* RLE: 004 Pixels @ 022,008*/ 4, 0x04,
+ /* RLE: 108 Pixels @ 026,008*/ 108, 0x03,
+ /* ABS: 008 Pixels @ 134,008*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 004 Pixels @ 004,009*/ 4, 0x03,
+ /* RLE: 004 Pixels @ 008,009*/ 4, 0x04,
+ /* RLE: 010 Pixels @ 012,009*/ 10, 0x03,
+ /* RLE: 004 Pixels @ 022,009*/ 4, 0x04,
+ /* RLE: 108 Pixels @ 026,009*/ 108, 0x03,
+ /* ABS: 008 Pixels @ 134,009*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 004 Pixels @ 004,010*/ 4, 0x03,
+ /* RLE: 005 Pixels @ 008,010*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 013,010*/ 1, 0x05,
+ /* RLE: 008 Pixels @ 014,010*/ 8, 0x03,
+ /* RLE: 005 Pixels @ 022,010*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 027,010*/ 1, 0x05,
+ /* RLE: 106 Pixels @ 028,010*/ 106, 0x03,
+ /* ABS: 008 Pixels @ 134,010*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 004 Pixels @ 004,011*/ 4, 0x03,
+ /* RLE: 006 Pixels @ 008,011*/ 6, 0x04,
+ /* RLE: 008 Pixels @ 014,011*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 022,011*/ 6, 0x04,
+ /* RLE: 106 Pixels @ 028,011*/ 106, 0x03,
+ /* ABS: 008 Pixels @ 134,011*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 005 Pixels @ 004,012*/ 5, 0x03,
+ /* RLE: 006 Pixels @ 009,012*/ 6, 0x04,
+ /* RLE: 008 Pixels @ 015,012*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 023,012*/ 6, 0x04,
+ /* RLE: 105 Pixels @ 029,012*/ 105, 0x03,
+ /* ABS: 008 Pixels @ 134,012*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 006 Pixels @ 004,013*/ 6, 0x03,
+ /* RLE: 005 Pixels @ 010,013*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 015,013*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 016,013*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 023,013*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 024,013*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 029,013*/ 1, 0x05,
+ /* RLE: 104 Pixels @ 030,013*/ 104, 0x03,
+ /* ABS: 008 Pixels @ 134,013*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 006 Pixels @ 004,014*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 010,014*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 011,014*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 016,014*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 017,014*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 024,014*/ 6, 0x04,
+ /* RLE: 104 Pixels @ 030,014*/ 104, 0x03,
+ /* ABS: 008 Pixels @ 134,014*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 007 Pixels @ 004,015*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 011,015*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 012,015*/ 5, 0x04,
+ /* RLE: 008 Pixels @ 017,015*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 025,015*/ 6, 0x04,
+ /* RLE: 103 Pixels @ 031,015*/ 103, 0x03,
+ /* ABS: 008 Pixels @ 134,015*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 008 Pixels @ 004,016*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 012,016*/ 6, 0x04,
+ /* RLE: 008 Pixels @ 018,016*/ 8, 0x03,
+ /* RLE: 005 Pixels @ 026,016*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 031,016*/ 1, 0x05,
+ /* RLE: 102 Pixels @ 032,016*/ 102, 0x03,
+ /* ABS: 008 Pixels @ 134,016*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 009 Pixels @ 004,017*/ 9, 0x03,
+ /* RLE: 006 Pixels @ 013,017*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 019,017*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 026,017*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 027,017*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 032,017*/ 1, 0x05,
+ /* RLE: 101 Pixels @ 033,017*/ 101, 0x03,
+ /* ABS: 008 Pixels @ 134,017*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 009 Pixels @ 004,018*/ 9, 0x03,
+ /* RLE: 001 Pixels @ 013,018*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 014,018*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 019,018*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 020,018*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 027,018*/ 6, 0x04,
+ /* RLE: 101 Pixels @ 033,018*/ 101, 0x03,
+ /* ABS: 008 Pixels @ 134,018*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 010 Pixels @ 004,019*/ 10, 0x03,
+ /* RLE: 001 Pixels @ 014,019*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 015,019*/ 5, 0x04,
+ /* RLE: 008 Pixels @ 020,019*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 028,019*/ 6, 0x04,
+ /* RLE: 100 Pixels @ 034,019*/ 100, 0x03,
+ /* ABS: 008 Pixels @ 134,019*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 011 Pixels @ 004,020*/ 11, 0x03,
+ /* RLE: 006 Pixels @ 015,020*/ 6, 0x04,
+ /* RLE: 008 Pixels @ 021,020*/ 8, 0x03,
+ /* RLE: 005 Pixels @ 029,020*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 034,020*/ 1, 0x05,
+ /* RLE: 099 Pixels @ 035,020*/ 99, 0x03,
+ /* ABS: 012 Pixels @ 134,020*/ 0, 12, 0x21, 0x10, 0x01, 0x12, 0x33, 0x34,
+ /* RLE: 008 Pixels @ 008,021*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 016,021*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 022,021*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 029,021*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 030,021*/ 5, 0x04,
+ /* RLE: 099 Pixels @ 035,021*/ 99, 0x03,
+ /* ABS: 013 Pixels @ 134,021*/ 0, 13, 0x21, 0x10, 0x01, 0x12, 0x33, 0x34, 0x40,
+ /* RLE: 007 Pixels @ 009,022*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 016,022*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 017,022*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 022,022*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 023,022*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 030,022*/ 6, 0x04,
+ /* RLE: 098 Pixels @ 036,022*/ 98, 0x03,
+ /* ABS: 014 Pixels @ 134,022*/ 0, 14, 0x21, 0x10, 0x01, 0x12, 0x33, 0x34, 0x44,
+ /* RLE: 007 Pixels @ 010,023*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 017,023*/ 6, 0x04,
+ /* RLE: 008 Pixels @ 023,023*/ 8, 0x03,
+ /* RLE: 005 Pixels @ 031,023*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 036,023*/ 1, 0x05,
+ /* RLE: 097 Pixels @ 037,023*/ 97, 0x03,
+ /* ABS: 015 Pixels @ 134,023*/ 0, 15, 0x21, 0x10, 0x01, 0x12, 0x33, 0x34, 0x44, 0x50,
+ /* RLE: 007 Pixels @ 011,024*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 018,024*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 024,024*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 031,024*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 032,024*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 037,024*/ 1, 0x05,
+ /* RLE: 096 Pixels @ 038,024*/ 96, 0x03,
+ /* ABS: 011 Pixels @ 134,024*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 004 Pixels @ 007,025*/ 4, 0x04,
+ /* RLE: 008 Pixels @ 011,025*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 019,025*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 025,025*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 032,025*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 033,025*/ 5, 0x04,
+ /* RLE: 096 Pixels @ 038,025*/ 96, 0x03,
+ /* ABS: 011 Pixels @ 134,025*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 005 Pixels @ 007,026*/ 5, 0x04,
+ /* RLE: 007 Pixels @ 012,026*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 019,026*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 020,026*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 025,026*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 026,026*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 033,026*/ 6, 0x04,
+ /* RLE: 095 Pixels @ 039,026*/ 95, 0x03,
+ /* ABS: 011 Pixels @ 134,026*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 006 Pixels @ 007,027*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 013,027*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 020,027*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 021,027*/ 5, 0x04,
+ /* RLE: 008 Pixels @ 026,027*/ 8, 0x03,
+ /* RLE: 095 Pixels @ 034,027*/ 95, 0x04,
+ /* RLE: 005 Pixels @ 129,027*/ 5, 0x03,
+ /* ABS: 011 Pixels @ 134,027*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 006 Pixels @ 007,028*/ 6, 0x04,
+ /* RLE: 001 Pixels @ 013,028*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 014,028*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 021,028*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 027,028*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 034,028*/ 1, 0x05,
+ /* RLE: 095 Pixels @ 035,028*/ 95, 0x04,
+ /* RLE: 004 Pixels @ 130,028*/ 4, 0x03,
+ /* ABS: 011 Pixels @ 134,028*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 007 Pixels @ 007,029*/ 7, 0x04,
+ /* RLE: 008 Pixels @ 014,029*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 022,029*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 028,029*/ 7, 0x03,
+ /* RLE: 095 Pixels @ 035,029*/ 95, 0x04,
+ /* RLE: 004 Pixels @ 130,029*/ 4, 0x03,
+ /* ABS: 011 Pixels @ 134,029*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 008 Pixels @ 007,030*/ 8, 0x04,
+ /* RLE: 007 Pixels @ 015,030*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 022,030*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 023,030*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 028,030*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 029,030*/ 7, 0x03,
+ /* RLE: 094 Pixels @ 036,030*/ 94, 0x04,
+ /* RLE: 004 Pixels @ 130,030*/ 4, 0x03,
+ /* ABS: 011 Pixels @ 134,030*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 009 Pixels @ 007,031*/ 9, 0x04,
+ /* RLE: 007 Pixels @ 016,031*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 023,031*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 024,031*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 029,031*/ 1, 0x05,
+ /* RLE: 006 Pixels @ 030,031*/ 6, 0x03,
+ /* RLE: 093 Pixels @ 036,031*/ 93, 0x04,
+ /* RLE: 005 Pixels @ 129,031*/ 5, 0x03,
+ /* ABS: 011 Pixels @ 134,031*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 010 Pixels @ 007,032*/ 10, 0x04,
+ /* RLE: 007 Pixels @ 017,032*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 024,032*/ 6, 0x04,
+ /* RLE: 104 Pixels @ 030,032*/ 104, 0x03,
+ /* ABS: 011 Pixels @ 134,032*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 009 Pixels @ 007,033*/ 9, 0x04,
+ /* RLE: 007 Pixels @ 016,033*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 023,033*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 024,033*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 029,033*/ 1, 0x05,
+ /* RLE: 006 Pixels @ 030,033*/ 6, 0x03,
+ /* RLE: 093 Pixels @ 036,033*/ 93, 0x04,
+ /* RLE: 005 Pixels @ 129,033*/ 5, 0x03,
+ /* ABS: 011 Pixels @ 134,033*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 008 Pixels @ 007,034*/ 8, 0x04,
+ /* RLE: 007 Pixels @ 015,034*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 022,034*/ 1, 0x05,
+ /* RLE: 006 Pixels @ 023,034*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 029,034*/ 7, 0x03,
+ /* RLE: 094 Pixels @ 036,034*/ 94, 0x04,
+ /* RLE: 004 Pixels @ 130,034*/ 4, 0x03,
+ /* ABS: 011 Pixels @ 134,034*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 007 Pixels @ 007,035*/ 7, 0x04,
+ /* RLE: 008 Pixels @ 014,035*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 022,035*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 028,035*/ 7, 0x03,
+ /* RLE: 095 Pixels @ 035,035*/ 95, 0x04,
+ /* RLE: 004 Pixels @ 130,035*/ 4, 0x03,
+ /* ABS: 011 Pixels @ 134,035*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 006 Pixels @ 007,036*/ 6, 0x04,
+ /* RLE: 001 Pixels @ 013,036*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 014,036*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 021,036*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 027,036*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 034,036*/ 1, 0x05,
+ /* RLE: 095 Pixels @ 035,036*/ 95, 0x04,
+ /* RLE: 004 Pixels @ 130,036*/ 4, 0x03,
+ /* ABS: 011 Pixels @ 134,036*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 006 Pixels @ 007,037*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 013,037*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 020,037*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 021,037*/ 5, 0x04,
+ /* RLE: 008 Pixels @ 026,037*/ 8, 0x03,
+ /* RLE: 095 Pixels @ 034,037*/ 95, 0x04,
+ /* RLE: 005 Pixels @ 129,037*/ 5, 0x03,
+ /* ABS: 011 Pixels @ 134,037*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 005 Pixels @ 007,038*/ 5, 0x04,
+ /* RLE: 007 Pixels @ 012,038*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 019,038*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 020,038*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 025,038*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 026,038*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 033,038*/ 6, 0x04,
+ /* RLE: 095 Pixels @ 039,038*/ 95, 0x03,
+ /* ABS: 011 Pixels @ 134,038*/ 0, 11, 0x21, 0x10, 0x01, 0x12, 0x33, 0x30,
+ /* RLE: 004 Pixels @ 007,039*/ 4, 0x04,
+ /* RLE: 008 Pixels @ 011,039*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 019,039*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 025,039*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 032,039*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 033,039*/ 5, 0x04,
+ /* RLE: 096 Pixels @ 038,039*/ 96, 0x03,
+ /* ABS: 015 Pixels @ 134,039*/ 0, 15, 0x21, 0x10, 0x01, 0x12, 0x33, 0x34, 0x44, 0x50,
+ /* RLE: 007 Pixels @ 011,040*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 018,040*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 024,040*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 031,040*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 032,040*/ 5, 0x04,
+ /* RLE: 097 Pixels @ 037,040*/ 97, 0x03,
+ /* ABS: 014 Pixels @ 134,040*/ 0, 14, 0x21, 0x10, 0x01, 0x12, 0x33, 0x34, 0x44,
+ /* RLE: 007 Pixels @ 010,041*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 017,041*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 018,041*/ 5, 0x04,
+ /* RLE: 008 Pixels @ 023,041*/ 8, 0x03,
+ /* RLE: 005 Pixels @ 031,041*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 036,041*/ 1, 0x05,
+ /* RLE: 097 Pixels @ 037,041*/ 97, 0x03,
+ /* ABS: 013 Pixels @ 134,041*/ 0, 13, 0x21, 0x10, 0x01, 0x12, 0x33, 0x34, 0x40,
+ /* RLE: 007 Pixels @ 009,042*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 016,042*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 017,042*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 022,042*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 023,042*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 030,042*/ 6, 0x04,
+ /* RLE: 098 Pixels @ 036,042*/ 98, 0x03,
+ /* ABS: 012 Pixels @ 134,042*/ 0, 12, 0x21, 0x10, 0x01, 0x12, 0x33, 0x34,
+ /* RLE: 008 Pixels @ 008,043*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 016,043*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 022,043*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 029,043*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 030,043*/ 5, 0x04,
+ /* RLE: 007 Pixels @ 035,043*/ 7, 0x03,
+ /* ABS: 007 Pixels @ 042,043*/ 0, 7, 0x22, 0x11, 0x12, 0x20,
+ /* RLE: 006 Pixels @ 049,043*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 055,043*/ 1, 0x02,
+ /* RLE: 010 Pixels @ 056,043*/ 10, 0x01,
+ /* RLE: 001 Pixels @ 066,043*/ 1, 0x02,
+ /* RLE: 004 Pixels @ 067,043*/ 4, 0x03,
+ /* ABS: 008 Pixels @ 071,043*/ 0, 8, 0x52, 0x21, 0x11, 0x25,
+ /* RLE: 008 Pixels @ 079,043*/ 8, 0x03,
+ /* ABS: 008 Pixels @ 087,043*/ 0, 8, 0x52, 0x21, 0x11, 0x25,
+ /* RLE: 007 Pixels @ 095,043*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 102,043*/ 1, 0x02,
+ /* RLE: 010 Pixels @ 103,043*/ 10, 0x01,
+ /* ABS: 004 Pixels @ 113,043*/ 0, 4, 0x23, 0x32,
+ /* RLE: 008 Pixels @ 117,043*/ 8, 0x01,
+ /* ABS: 002 Pixels @ 125,043*/ 0, 2, 0x25,
+ /* RLE: 007 Pixels @ 127,043*/ 7, 0x03,
+ /* ABS: 012 Pixels @ 134,043*/ 0, 12, 0x21, 0x10, 0x01, 0x12, 0x33, 0x34,
+ /* RLE: 007 Pixels @ 008,044*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 015,044*/ 6, 0x04,
+ /* RLE: 008 Pixels @ 021,044*/ 8, 0x03,
+ /* RLE: 005 Pixels @ 029,044*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 034,044*/ 1, 0x05,
+ /* RLE: 006 Pixels @ 035,044*/ 6, 0x03,
+ /* RLE: 009 Pixels @ 041,044*/ 9, 0x01,
+ /* RLE: 001 Pixels @ 050,044*/ 1, 0x05,
+ /* RLE: 004 Pixels @ 051,044*/ 4, 0x03,
+ /* RLE: 011 Pixels @ 055,044*/ 11, 0x01,
+ /* ABS: 005 Pixels @ 066,044*/ 0, 5, 0x23, 0x33, 0x20,
+ /* RLE: 009 Pixels @ 071,044*/ 9, 0x01,
+ /* RLE: 006 Pixels @ 080,044*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 086,044*/ 1, 0x02,
+ /* RLE: 009 Pixels @ 087,044*/ 9, 0x01,
+ /* RLE: 006 Pixels @ 096,044*/ 6, 0x03,
+ /* RLE: 011 Pixels @ 102,044*/ 11, 0x01,
+ /* ABS: 003 Pixels @ 113,044*/ 0, 3, 0x23, 0x30,
+ /* RLE: 011 Pixels @ 116,044*/ 11, 0x01,
+ /* RLE: 001 Pixels @ 127,044*/ 1, 0x05,
+ /* RLE: 006 Pixels @ 128,044*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 134,044*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 010 Pixels @ 004,045*/ 10, 0x03,
+ /* RLE: 001 Pixels @ 014,045*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 015,045*/ 5, 0x04,
+ /* RLE: 008 Pixels @ 020,045*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 028,045*/ 6, 0x04,
+ /* RLE: 006 Pixels @ 034,045*/ 6, 0x03,
+ /* ABS: 011 Pixels @ 040,045*/ 0, 11, 0x21, 0x12, 0x33, 0x35, 0x11, 0x10,
+ /* RLE: 004 Pixels @ 051,045*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 055,045*/ 3, 0x01,
+ /* RLE: 011 Pixels @ 058,045*/ 11, 0x03,
+ /* ABS: 012 Pixels @ 069,045*/ 0, 12, 0x21, 0x12, 0x53, 0x35, 0x21, 0x11,
+ /* RLE: 004 Pixels @ 081,045*/ 4, 0x03,
+ /* ABS: 012 Pixels @ 085,045*/ 0, 12, 0x21, 0x12, 0x53, 0x35, 0x21, 0x11,
+ /* RLE: 005 Pixels @ 097,045*/ 5, 0x03,
+ /* RLE: 003 Pixels @ 102,045*/ 3, 0x01,
+ /* RLE: 011 Pixels @ 105,045*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 116,045*/ 3, 0x01,
+ /* RLE: 005 Pixels @ 119,045*/ 5, 0x03,
+ /* ABS: 004 Pixels @ 124,045*/ 0, 4, 0x21, 0x12,
+ /* RLE: 006 Pixels @ 128,045*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 134,045*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 009 Pixels @ 004,046*/ 9, 0x03,
+ /* RLE: 001 Pixels @ 013,046*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 014,046*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 019,046*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 020,046*/ 7, 0x03,
+ /* RLE: 006 Pixels @ 027,046*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 033,046*/ 7, 0x03,
+ /* RLE: 003 Pixels @ 040,046*/ 3, 0x01,
+ /* RLE: 005 Pixels @ 043,046*/ 5, 0x03,
+ /* ABS: 003 Pixels @ 048,046*/ 0, 3, 0x51, 0x20,
+ /* RLE: 004 Pixels @ 051,046*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 055,046*/ 3, 0x01,
+ /* RLE: 010 Pixels @ 058,046*/ 10, 0x03,
+ /* ABS: 004 Pixels @ 068,046*/ 0, 4, 0x51, 0x12,
+ /* RLE: 006 Pixels @ 072,046*/ 6, 0x03,
+ /* ABS: 010 Pixels @ 078,046*/ 0, 10, 0x21, 0x23, 0x33, 0x51, 0x12,
+ /* RLE: 006 Pixels @ 088,046*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 094,046*/ 0, 3, 0x21, 0x20,
+ /* RLE: 005 Pixels @ 097,046*/ 5, 0x03,
+ /* RLE: 003 Pixels @ 102,046*/ 3, 0x01,
+ /* RLE: 011 Pixels @ 105,046*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 116,046*/ 3, 0x01,
+ /* RLE: 006 Pixels @ 119,046*/ 6, 0x03,
+ /* RLE: 003 Pixels @ 125,046*/ 3, 0x01,
+ /* RLE: 006 Pixels @ 128,046*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 134,046*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 009 Pixels @ 004,047*/ 9, 0x03,
+ /* RLE: 006 Pixels @ 013,047*/ 6, 0x04,
+ /* RLE: 007 Pixels @ 019,047*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 026,047*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 027,047*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 032,047*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 033,047*/ 7, 0x03,
+ /* ABS: 005 Pixels @ 040,047*/ 0, 5, 0x21, 0x12, 0x50,
+ /* RLE: 010 Pixels @ 045,047*/ 10, 0x03,
+ /* RLE: 003 Pixels @ 055,047*/ 3, 0x01,
+ /* RLE: 010 Pixels @ 058,047*/ 10, 0x03,
+ /* ABS: 004 Pixels @ 068,047*/ 0, 4, 0x21, 0x15,
+ /* RLE: 012 Pixels @ 072,047*/ 12, 0x03,
+ /* ABS: 004 Pixels @ 084,047*/ 0, 4, 0x21, 0x15,
+ /* RLE: 014 Pixels @ 088,047*/ 14, 0x03,
+ /* RLE: 003 Pixels @ 102,047*/ 3, 0x01,
+ /* RLE: 011 Pixels @ 105,047*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 116,047*/ 3, 0x01,
+ /* RLE: 006 Pixels @ 119,047*/ 6, 0x03,
+ /* RLE: 003 Pixels @ 125,047*/ 3, 0x01,
+ /* RLE: 006 Pixels @ 128,047*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 134,047*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 008 Pixels @ 004,048*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 012,048*/ 6, 0x04,
+ /* RLE: 008 Pixels @ 018,048*/ 8, 0x03,
+ /* RLE: 005 Pixels @ 026,048*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 031,048*/ 1, 0x05,
+ /* RLE: 009 Pixels @ 032,048*/ 9, 0x03,
+ /* RLE: 006 Pixels @ 041,048*/ 6, 0x01,
+ /* ABS: 002 Pixels @ 047,048*/ 0, 2, 0x22,
+ /* RLE: 006 Pixels @ 049,048*/ 6, 0x03,
+ /* RLE: 010 Pixels @ 055,048*/ 10, 0x01,
+ /* ABS: 006 Pixels @ 065,048*/ 0, 6, 0x23, 0x31, 0x11,
+ /* RLE: 013 Pixels @ 071,048*/ 13, 0x03,
+ /* RLE: 003 Pixels @ 084,048*/ 3, 0x01,
+ /* RLE: 015 Pixels @ 087,048*/ 15, 0x03,
+ /* RLE: 010 Pixels @ 102,048*/ 10, 0x01,
+ /* ABS: 007 Pixels @ 112,048*/ 0, 7, 0x23, 0x33, 0x11, 0x10,
+ /* RLE: 005 Pixels @ 119,048*/ 5, 0x03,
+ /* ABS: 004 Pixels @ 124,048*/ 0, 4, 0x21, 0x12,
+ /* RLE: 006 Pixels @ 128,048*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 134,048*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 007 Pixels @ 004,049*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 011,049*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 012,049*/ 5, 0x04,
+ /* RLE: 008 Pixels @ 017,049*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 025,049*/ 6, 0x04,
+ /* RLE: 011 Pixels @ 031,049*/ 11, 0x03,
+ /* ABS: 003 Pixels @ 042,049*/ 0, 3, 0x52, 0x20,
+ /* RLE: 005 Pixels @ 045,049*/ 5, 0x01,
+ /* RLE: 001 Pixels @ 050,049*/ 1, 0x02,
+ /* RLE: 004 Pixels @ 051,049*/ 4, 0x03,
+ /* RLE: 010 Pixels @ 055,049*/ 10, 0x01,
+ /* ABS: 006 Pixels @ 065,049*/ 0, 6, 0x23, 0x31, 0x11,
+ /* RLE: 004 Pixels @ 071,049*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 075,049*/ 1, 0x02,
+ /* RLE: 005 Pixels @ 076,049*/ 5, 0x01,
+ /* ABS: 006 Pixels @ 081,049*/ 0, 6, 0x23, 0x31, 0x11,
+ /* RLE: 004 Pixels @ 087,049*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 091,049*/ 1, 0x02,
+ /* RLE: 005 Pixels @ 092,049*/ 5, 0x01,
+ /* RLE: 001 Pixels @ 097,049*/ 1, 0x02,
+ /* RLE: 004 Pixels @ 098,049*/ 4, 0x03,
+ /* RLE: 010 Pixels @ 102,049*/ 10, 0x01,
+ /* ABS: 004 Pixels @ 112,049*/ 0, 4, 0x23, 0x33,
+ /* RLE: 010 Pixels @ 116,049*/ 10, 0x01,
+ /* RLE: 001 Pixels @ 126,049*/ 1, 0x02,
+ /* RLE: 007 Pixels @ 127,049*/ 7, 0x03,
+ /* ABS: 008 Pixels @ 134,049*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 006 Pixels @ 004,050*/ 6, 0x03,
+ /* RLE: 001 Pixels @ 010,050*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 011,050*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 016,050*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 017,050*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 024,050*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 025,050*/ 5, 0x04,
+ /* RLE: 016 Pixels @ 030,050*/ 16, 0x03,
+ /* ABS: 012 Pixels @ 046,050*/ 0, 12, 0x52, 0x11, 0x12, 0x33, 0x31, 0x11,
+ /* RLE: 010 Pixels @ 058,050*/ 10, 0x03,
+ /* RLE: 003 Pixels @ 068,050*/ 3, 0x01,
+ /* RLE: 004 Pixels @ 071,050*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 075,050*/ 1, 0x02,
+ /* RLE: 006 Pixels @ 076,050*/ 6, 0x01,
+ /* ABS: 005 Pixels @ 082,050*/ 0, 5, 0x33, 0x11, 0x10,
+ /* RLE: 004 Pixels @ 087,050*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 091,050*/ 1, 0x02,
+ /* RLE: 006 Pixels @ 092,050*/ 6, 0x01,
+ /* RLE: 004 Pixels @ 098,050*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 102,050*/ 3, 0x01,
+ /* RLE: 011 Pixels @ 105,050*/ 11, 0x03,
+ /* RLE: 010 Pixels @ 116,050*/ 10, 0x01,
+ /* RLE: 001 Pixels @ 126,050*/ 1, 0x02,
+ /* RLE: 007 Pixels @ 127,050*/ 7, 0x03,
+ /* ABS: 008 Pixels @ 134,050*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 006 Pixels @ 004,051*/ 6, 0x03,
+ /* RLE: 005 Pixels @ 010,051*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 015,051*/ 1, 0x05,
+ /* RLE: 007 Pixels @ 016,051*/ 7, 0x03,
+ /* RLE: 001 Pixels @ 023,051*/ 1, 0x05,
+ /* RLE: 005 Pixels @ 024,051*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 029,051*/ 1, 0x05,
+ /* RLE: 010 Pixels @ 030,051*/ 10, 0x03,
+ /* ABS: 003 Pixels @ 040,051*/ 0, 3, 0x21, 0x50,
+ /* RLE: 005 Pixels @ 043,051*/ 5, 0x03,
+ /* ABS: 010 Pixels @ 048,051*/ 0, 10, 0x51, 0x11, 0x33, 0x31, 0x11,
+ /* RLE: 010 Pixels @ 058,051*/ 10, 0x03,
+ /* ABS: 004 Pixels @ 068,051*/ 0, 4, 0x21, 0x15,
+ /* RLE: 007 Pixels @ 072,051*/ 7, 0x03,
+ /* RLE: 003 Pixels @ 079,051*/ 3, 0x01,
+ /* ABS: 006 Pixels @ 082,051*/ 0, 6, 0x33, 0x21, 0x15,
+ /* RLE: 007 Pixels @ 088,051*/ 7, 0x03,
+ /* RLE: 003 Pixels @ 095,051*/ 3, 0x01,
+ /* RLE: 004 Pixels @ 098,051*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 102,051*/ 3, 0x01,
+ /* RLE: 011 Pixels @ 105,051*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 116,051*/ 3, 0x01,
+ /* RLE: 005 Pixels @ 119,051*/ 5, 0x03,
+ /* ABS: 004 Pixels @ 124,051*/ 0, 4, 0x21, 0x12,
+ /* RLE: 006 Pixels @ 128,051*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 134,051*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 005 Pixels @ 004,052*/ 5, 0x03,
+ /* RLE: 006 Pixels @ 009,052*/ 6, 0x04,
+ /* RLE: 008 Pixels @ 015,052*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 023,052*/ 6, 0x04,
+ /* RLE: 011 Pixels @ 029,052*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 040,052*/ 3, 0x01,
+ /* RLE: 006 Pixels @ 043,052*/ 6, 0x03,
+ /* RLE: 003 Pixels @ 049,052*/ 3, 0x01,
+ /* RLE: 003 Pixels @ 052,052*/ 3, 0x03,
+ /* RLE: 003 Pixels @ 055,052*/ 3, 0x01,
+ /* RLE: 010 Pixels @ 058,052*/ 10, 0x03,
+ /* ABS: 004 Pixels @ 068,052*/ 0, 4, 0x51, 0x12,
+ /* RLE: 006 Pixels @ 072,052*/ 6, 0x03,
+ /* ABS: 010 Pixels @ 078,052*/ 0, 10, 0x21, 0x11, 0x33, 0x51, 0x12,
+ /* RLE: 006 Pixels @ 088,052*/ 6, 0x03,
+ /* ABS: 004 Pixels @ 094,052*/ 0, 4, 0x21, 0x11,
+ /* RLE: 004 Pixels @ 098,052*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 102,052*/ 3, 0x01,
+ /* RLE: 011 Pixels @ 105,052*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 116,052*/ 3, 0x01,
+ /* RLE: 006 Pixels @ 119,052*/ 6, 0x03,
+ /* RLE: 003 Pixels @ 125,052*/ 3, 0x01,
+ /* RLE: 006 Pixels @ 128,052*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 134,052*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 004 Pixels @ 004,053*/ 4, 0x03,
+ /* RLE: 006 Pixels @ 008,053*/ 6, 0x04,
+ /* RLE: 008 Pixels @ 014,053*/ 8, 0x03,
+ /* RLE: 006 Pixels @ 022,053*/ 6, 0x04,
+ /* RLE: 012 Pixels @ 028,053*/ 12, 0x03,
+ /* ABS: 018 Pixels @ 040,053*/ 0, 18, 0x21, 0x11, 0x53, 0x33, 0x21, 0x12, 0x33, 0x31, 0x11,
+ /* RLE: 011 Pixels @ 058,053*/ 11, 0x03,
+ /* ABS: 009 Pixels @ 069,053*/ 0, 9, 0x21, 0x12, 0x53, 0x33, 0x20,
+ /* RLE: 004 Pixels @ 078,053*/ 4, 0x01,
+ /* RLE: 003 Pixels @ 082,053*/ 3, 0x03,
+ /* ABS: 009 Pixels @ 085,053*/ 0, 9, 0x21, 0x12, 0x53, 0x33, 0x20,
+ /* RLE: 004 Pixels @ 094,053*/ 4, 0x01,
+ /* RLE: 004 Pixels @ 098,053*/ 4, 0x03,
+ /* RLE: 003 Pixels @ 102,053*/ 3, 0x01,
+ /* RLE: 011 Pixels @ 105,053*/ 11, 0x03,
+ /* RLE: 003 Pixels @ 116,053*/ 3, 0x01,
+ /* RLE: 006 Pixels @ 119,053*/ 6, 0x03,
+ /* RLE: 003 Pixels @ 125,053*/ 3, 0x01,
+ /* RLE: 006 Pixels @ 128,053*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 134,053*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 004 Pixels @ 004,054*/ 4, 0x03,
+ /* RLE: 005 Pixels @ 008,054*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 013,054*/ 1, 0x05,
+ /* RLE: 008 Pixels @ 014,054*/ 8, 0x03,
+ /* RLE: 005 Pixels @ 022,054*/ 5, 0x04,
+ /* RLE: 001 Pixels @ 027,054*/ 1, 0x05,
+ /* RLE: 013 Pixels @ 028,054*/ 13, 0x03,
+ /* RLE: 001 Pixels @ 041,054*/ 1, 0x02,
+ /* RLE: 008 Pixels @ 042,054*/ 8, 0x01,
+ /* RLE: 001 Pixels @ 050,054*/ 1, 0x02,
+ /* RLE: 004 Pixels @ 051,054*/ 4, 0x03,
+ /* RLE: 011 Pixels @ 055,054*/ 11, 0x01,
+ /* ABS: 005 Pixels @ 066,054*/ 0, 5, 0x23, 0x33, 0x20,
+ /* RLE: 008 Pixels @ 071,054*/ 8, 0x01,
+ /* ABS: 003 Pixels @ 079,054*/ 0, 3, 0x21, 0x10,
+ /* RLE: 004 Pixels @ 082,054*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 086,054*/ 1, 0x02,
+ /* RLE: 008 Pixels @ 087,054*/ 8, 0x01,
+ /* ABS: 003 Pixels @ 095,054*/ 0, 3, 0x21, 0x10,
+ /* RLE: 004 Pixels @ 098,054*/ 4, 0x03,
+ /* RLE: 011 Pixels @ 102,054*/ 11, 0x01,
+ /* ABS: 006 Pixels @ 113,054*/ 0, 6, 0x23, 0x31, 0x11,
+ /* RLE: 006 Pixels @ 119,054*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 125,054*/ 0, 3, 0x21, 0x10,
+ /* RLE: 006 Pixels @ 128,054*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 134,054*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 004 Pixels @ 004,055*/ 4, 0x03,
+ /* RLE: 004 Pixels @ 008,055*/ 4, 0x04,
+ /* RLE: 001 Pixels @ 012,055*/ 1, 0x05,
+ /* RLE: 009 Pixels @ 013,055*/ 9, 0x03,
+ /* RLE: 004 Pixels @ 022,055*/ 4, 0x04,
+ /* RLE: 001 Pixels @ 026,055*/ 1, 0x05,
+ /* RLE: 015 Pixels @ 027,055*/ 15, 0x03,
+ /* ABS: 008 Pixels @ 042,055*/ 0, 8, 0x52, 0x21, 0x11, 0x25,
+ /* RLE: 005 Pixels @ 050,055*/ 5, 0x03,
+ /* RLE: 001 Pixels @ 055,055*/ 1, 0x02,
+ /* RLE: 010 Pixels @ 056,055*/ 10, 0x01,
+ /* RLE: 001 Pixels @ 066,055*/ 1, 0x02,
+ /* RLE: 004 Pixels @ 067,055*/ 4, 0x03,
+ /* ABS: 011 Pixels @ 071,055*/ 0, 11, 0x52, 0x21, 0x12, 0x23, 0x51, 0x20,
+ /* RLE: 005 Pixels @ 082,055*/ 5, 0x03,
+ /* ABS: 011 Pixels @ 087,055*/ 0, 11, 0x52, 0x21, 0x12, 0x23, 0x51, 0x20,
+ /* RLE: 004 Pixels @ 098,055*/ 4, 0x03,
+ /* RLE: 001 Pixels @ 102,055*/ 1, 0x02,
+ /* RLE: 010 Pixels @ 103,055*/ 10, 0x01,
+ /* ABS: 006 Pixels @ 113,055*/ 0, 6, 0x23, 0x32, 0x12,
+ /* RLE: 006 Pixels @ 119,055*/ 6, 0x03,
+ /* ABS: 003 Pixels @ 125,055*/ 0, 3, 0x51, 0x20,
+ /* RLE: 006 Pixels @ 128,055*/ 6, 0x03,
+ /* ABS: 008 Pixels @ 134,055*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 004 Pixels @ 004,056*/ 4, 0x03,
+ /* RLE: 004 Pixels @ 008,056*/ 4, 0x04,
+ /* RLE: 010 Pixels @ 012,056*/ 10, 0x03,
+ /* RLE: 004 Pixels @ 022,056*/ 4, 0x04,
+ /* RLE: 108 Pixels @ 026,056*/ 108, 0x03,
+ /* ABS: 008 Pixels @ 134,056*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 130 Pixels @ 004,057*/ 130, 0x03,
+ /* ABS: 008 Pixels @ 134,057*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 130 Pixels @ 004,058*/ 130, 0x03,
+ /* ABS: 008 Pixels @ 134,058*/ 0, 8, 0x21, 0x10, 0x01, 0x12,
+ /* RLE: 130 Pixels @ 004,059*/ 130, 0x03,
+ /* RLE: 003 Pixels @ 134,059*/ 3, 0x01,
+ /* ABS: 005 Pixels @ 137,059*/ 0, 5, 0x00, 0x11, 0x10,
+ /* RLE: 129 Pixels @ 004,060*/ 129, 0x03,
+ /* ABS: 006 Pixels @ 133,060*/ 0, 6, 0x51, 0x11, 0x00,
+ /* RLE: 004 Pixels @ 001,061*/ 4, 0x01,
+ /* RLE: 128 Pixels @ 005,061*/ 128, 0x02,
+ /* RLE: 004 Pixels @ 133,061*/ 4, 0x01,
+ /* ABS: 002 Pixels @ 137,061*/ 0, 2, 0x00,
+ /* RLE: 135 Pixels @ 001,062*/ 135, 0x01,
+ /* RLE: 005 Pixels @ 136,062*/ 5, 0x00,
+ /* RLE: 132 Pixels @ 003,063*/ 132, 0x01,
+ /* RLE: 008 Pixels @ 135,063*/ 8, 0x00,
+ /* RLE: 128 Pixels @ 005,064*/ 128, 0x01,
+ /* RLE: 005 Pixels @ 133,064*/ 5, 0x00,
+
+ 0}; /* 1682 for 8970 pixels */
+
+GUI_CONST_STORAGE GUI_BITMAP bmSeggerLogoBlue = {
+ 138, /* XSize */
+ 65, /* YSize */
+ 69, /* BytesPerLine */
+ GUI_COMPRESS_RLE4, /* BitsPerPixel */
+ acSeggerLogoBlue, /* Pointer to picture data (indices) */
+ &PalSeggerLogoBlue /* Pointer to palette */
+ ,GUI_DRAW_RLE4
+};
+
+#else
+
+GUI_CONST_STORAGE unsigned char acSeggerLogoBlue[] = {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x01, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x10, 0x00,
+ 0x00, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x00,
+ 0x01, 0x11, 0x12, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x21, 0x11, 0x10,
+ 0x01, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x53, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x53, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x44, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x22, 0x11, 0x12, 0x23, 0x33, 0x33, 0x32, 0x11, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x35, 0x22, 0x11, 0x12, 0x53, 0x33, 0x33, 0x33, 0x35, 0x22, 0x11, 0x12, 0x53, 0x33, 0x33, 0x33, 0x21, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x21, 0x11, 0x11, 0x11, 0x12, 0x53, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x34, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x53, 0x33, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x53, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x21, 0x11, 0x11, 0x11, 0x11, 0x33, 0x33, 0x33, 0x21, 0x11, 0x11, 0x11, 0x11, 0x33, 0x33, 0x33, 0x11, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x11, 0x11, 0x11, 0x11, 0x11, 0x15, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x21, 0x12, 0x33, 0x35, 0x11, 0x13, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0x11, 0x25, 0x33, 0x52, 0x11, 0x13, 0x33, 0x32, 0x11, 0x25, 0x33, 0x52, 0x11, 0x13, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x21, 0x12, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x51, 0x23, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x51, 0x12, 0x33, 0x33, 0x33, 0x21, 0x23, 0x33, 0x51, 0x12, 0x33, 0x33, 0x33, 0x21, 0x23, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x21, 0x12, 0x53, 0x33, 0x33, 0x33, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x15, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x15, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x31, 0x11, 0x11, 0x12, 0x23, 0x33, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x11, 0x13, 0x33, 0x33, 0x21, 0x12, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x52, 0x21, 0x11, 0x11, 0x23, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x11, 0x13, 0x33, 0x32, 0x11, 0x11, 0x12, 0x33, 0x11, 0x13, 0x33, 0x32, 0x11, 0x11, 0x12, 0x33, 0x33, 0x11, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x11, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x52, 0x11, 0x12, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x32, 0x11, 0x11, 0x11, 0x33, 0x11, 0x13, 0x33, 0x32, 0x11, 0x11, 0x11, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x53, 0x33, 0x33, 0x51, 0x11, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x15, 0x33, 0x33, 0x33, 0x31, 0x11, 0x33, 0x21, 0x15, 0x33, 0x33, 0x33, 0x31, 0x11, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x21, 0x12, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x31, 0x11, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x51, 0x12, 0x33, 0x33, 0x33, 0x21, 0x11, 0x33, 0x51, 0x12, 0x33, 0x33, 0x33, 0x21, 0x11, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x11, 0x53, 0x33, 0x21, 0x12, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0x11, 0x25, 0x33, 0x32, 0x11, 0x11, 0x33, 0x32, 0x11, 0x25, 0x33, 0x32, 0x11, 0x11, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x21, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x33, 0x21, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x33, 0x11, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x11, 0x13, 0x33, 0x33, 0x32, 0x11, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x52, 0x21, 0x11, 0x25, 0x33, 0x33, 0x32, 0x11, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x35, 0x22, 0x11, 0x22, 0x35, 0x12, 0x33, 0x33, 0x35, 0x22, 0x11, 0x22, 0x35, 0x12, 0x33, 0x33, 0x21, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x21, 0x23, 0x33, 0x33, 0x35, 0x12, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x01, 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x10,
+ 0x01, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x35, 0x11, 0x10,
+ 0x01, 0x11, 0x12, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x21, 0x11, 0x10,
+ 0x01, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x00,
+ 0x00, 0x01, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x10, 0x00,
+ 0x00, 0x00, 0x01, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x10, 0x00, 0x00
+};
+
+GUI_CONST_STORAGE GUI_BITMAP bmSeggerLogoBlue = {
+ 138, /* XSize */
+ 65, /* YSize */
+ 69, /* BytesPerLine */
+ 4, /* BitsPerPixel */
+ acSeggerLogoBlue, /* Pointer to picture data (indices) */
+ &PalSeggerLogoBlue /* Pointer to palette */
+};
+
+#endif /* LOGO_COMP */
+
+#elif (LCD_YSIZE < 90) /* GUIDEMO_TINY */
+
+/*********************************************************************
+*
+* SEGGER logo, 65% size
+*
+**********************************************************************
+*/
+GUI_CONST_STORAGE unsigned char acSeggerLogoBlue[] = {
+ 0x01, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x10, 0x00,
+ 0x11, 0x12, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x11, 0x10,
+ 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x34, 0x43, 0x33, 0x33, 0x33, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x34, 0x44, 0x53, 0x33, 0x33, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x54, 0x44, 0x53, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x54, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x33, 0x54, 0x44, 0x53, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x54, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x33, 0x33, 0x34, 0x44, 0x33, 0x33, 0x33, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x53, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x43, 0x33, 0x33, 0x54, 0x44, 0x33, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x44, 0x33, 0x33, 0x34, 0x44, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x44, 0x44, 0x43, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x44, 0x33, 0x33, 0x34, 0x44, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x43, 0x33, 0x33, 0x54, 0x44, 0x33, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x53, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x44, 0x33, 0x33, 0x34, 0x44, 0x33, 0x33, 0x33, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x54, 0x44, 0x33, 0x33, 0x32, 0x11, 0x23, 0x33, 0x32, 0x11, 0x11, 0x11, 0x23, 0x33, 0x22, 0x11, 0x53, 0x33, 0x33, 0x52, 0x11, 0x23, 0x33, 0x33, 0x11, 0x11, 0x11, 0x12, 0x32, 0x11, 0x11, 0x15, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x43, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x11, 0x11, 0x11, 0x53, 0x31, 0x11, 0x11, 0x11, 0x23, 0x32, 0x11, 0x11, 0x11, 0x33, 0x32, 0x11, 0x11, 0x11, 0x33, 0x33, 0x11, 0x11, 0x11, 0x12, 0x31, 0x11, 0x11, 0x11, 0x53, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x33, 0x54, 0x44, 0x53, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x13, 0x33, 0x31, 0x23, 0x31, 0x13, 0x33, 0x33, 0x33, 0x11, 0x33, 0x33, 0x21, 0x33, 0x51, 0x23, 0x33, 0x31, 0x23, 0x33, 0x11, 0x33, 0x33, 0x33, 0x31, 0x13, 0x33, 0x31, 0x13, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x54, 0x44, 0x53, 0x33, 0x33, 0x12, 0x53, 0x33, 0x33, 0x31, 0x13, 0x33, 0x33, 0x33, 0x11, 0x33, 0x33, 0x33, 0x33, 0x21, 0x53, 0x33, 0x33, 0x33, 0x33, 0x11, 0x33, 0x33, 0x33, 0x31, 0x13, 0x33, 0x31, 0x13, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x32, 0x21, 0x11, 0x23, 0x31, 0x11, 0x11, 0x11, 0x33, 0x11, 0x33, 0x21, 0x11, 0x23, 0x11, 0x33, 0x31, 0x11, 0x13, 0x33, 0x11, 0x11, 0x11, 0x23, 0x31, 0x11, 0x11, 0x12, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x54, 0x44, 0x53, 0x33, 0x35, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x35, 0x21, 0x13, 0x31, 0x13, 0x33, 0x33, 0x33, 0x11, 0x33, 0x21, 0x11, 0x13, 0x11, 0x33, 0x31, 0x11, 0x13, 0x33, 0x11, 0x33, 0x33, 0x33, 0x31, 0x11, 0x11, 0x12, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x13, 0x33, 0x31, 0x13, 0x31, 0x13, 0x33, 0x33, 0x33, 0x11, 0x33, 0x33, 0x21, 0x13, 0x51, 0x23, 0x33, 0x31, 0x13, 0x33, 0x11, 0x33, 0x33, 0x33, 0x31, 0x13, 0x33, 0x31, 0x13, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x34, 0x44, 0x53, 0x33, 0x33, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x21, 0x11, 0x11, 0x23, 0x31, 0x11, 0x11, 0x11, 0x23, 0x32, 0x11, 0x11, 0x12, 0x13, 0x32, 0x11, 0x11, 0x12, 0x13, 0x33, 0x11, 0x11, 0x11, 0x12, 0x31, 0x13, 0x33, 0x31, 0x13, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x34, 0x45, 0x33, 0x33, 0x33, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x32, 0x21, 0x15, 0x33, 0x32, 0x11, 0x11, 0x11, 0x23, 0x33, 0x22, 0x12, 0x35, 0x23, 0x33, 0x52, 0x12, 0x25, 0x13, 0x33, 0x11, 0x11, 0x11, 0x12, 0x32, 0x23, 0x33, 0x31, 0x23, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x12, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x10,
+ 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x51, 0x10,
+ 0x11, 0x12, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x11, 0x10,
+ 0x01, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x10, 0x00,
+ 0x00, 0x01, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x00, 0x00
+};
+
+GUI_CONST_STORAGE GUI_BITMAP bmSeggerLogoBlue = {
+ 89, /* XSize */
+ 42, /* YSize */
+ 45, /* BytesPerLine */
+ 4, /* BitsPerPixel */
+ acSeggerLogoBlue, /* Pointer to picture data (indices) */
+ &PalSeggerLogoBlue /* Pointer to palette */
+};
+
+#else /* (LCD_YSIZE < 90) */
+
+/*********************************************************************
+*
+* SEGGER logo, 90% size
+*
+**********************************************************************
+*/
+GUI_CONST_STORAGE unsigned char acSeggerLogoBlue[] = {
+ 0x00, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x10, 0x00,
+ 0x01, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x00,
+ 0x11, 0x11, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x21, 0x11, 0x10,
+ 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x34, 0x44, 0x33, 0x33, 0x33, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x34, 0x44, 0x33, 0x33, 0x33, 0x33, 0x34, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x34, 0x44, 0x45, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x34, 0x44, 0x45, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x34, 0x44, 0x44, 0x53, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x35, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x35, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x33, 0x33, 0x33, 0x54, 0x44, 0x45, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x43, 0x33, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x44, 0x43, 0x33, 0x33, 0x35, 0x44, 0x44, 0x45, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x44, 0x43, 0x33, 0x33, 0x35, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x34, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x43, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x44, 0x33, 0x33, 0x33, 0x35, 0x44, 0x44, 0x53, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x43, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x35, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x43, 0x33, 0x33, 0x35, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x44, 0x33, 0x33, 0x33, 0x54, 0x44, 0x45, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x54, 0x44, 0x43, 0x33, 0x33, 0x32, 0x21, 0x11, 0x22, 0x33, 0x33, 0x32, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x35, 0x22, 0x11, 0x12, 0x53, 0x33, 0x33, 0x33, 0x52, 0x21, 0x12, 0x53, 0x33, 0x33, 0x32, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x21, 0x11, 0x11, 0x11, 0x25, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x43, 0x33, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x44, 0x44, 0x53, 0x33, 0x33, 0x11, 0x11, 0x11, 0x11, 0x13, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x33, 0x33, 0x32, 0x11, 0x11, 0x11, 0x11, 0x33, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x11, 0x11, 0x11, 0x11, 0x11, 0x53, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x11, 0x23, 0x33, 0x51, 0x13, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x25, 0x33, 0x52, 0x11, 0x33, 0x33, 0x21, 0x12, 0x53, 0x52, 0x11, 0x13, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x32, 0x11, 0x23, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x35, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x11, 0x25, 0x33, 0x33, 0x33, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x32, 0x15, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0x11, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x11, 0x11, 0x11, 0x22, 0x33, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x23, 0x31, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x11, 0x13, 0x33, 0x32, 0x11, 0x23, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x35, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x35, 0x22, 0x11, 0x11, 0x13, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x23, 0x31, 0x13, 0x33, 0x32, 0x11, 0x11, 0x23, 0x31, 0x11, 0x33, 0x32, 0x11, 0x11, 0x12, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x23, 0x33, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x34, 0x44, 0x44, 0x53, 0x33, 0x33, 0x35, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x35, 0x21, 0x12, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x31, 0x13, 0x33, 0x32, 0x11, 0x11, 0x13, 0x31, 0x11, 0x33, 0x32, 0x11, 0x11, 0x11, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x34, 0x44, 0x45, 0x33, 0x33, 0x33, 0x54, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x15, 0x33, 0x33, 0x35, 0x11, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x32, 0x15, 0x33, 0x33, 0x33, 0x31, 0x13, 0x32, 0x11, 0x53, 0x33, 0x33, 0x31, 0x11, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x32, 0x11, 0x23, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x44, 0x44, 0x44, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x33, 0x33, 0x33, 0x11, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x35, 0x12, 0x33, 0x33, 0x33, 0x21, 0x13, 0x35, 0x11, 0x23, 0x33, 0x33, 0x21, 0x11, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x34, 0x44, 0x44, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x43, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x15, 0x33, 0x32, 0x12, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x25, 0x33, 0x32, 0x11, 0x13, 0x33, 0x21, 0x12, 0x53, 0x32, 0x11, 0x11, 0x33, 0x31, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x11, 0x13, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x34, 0x44, 0x45, 0x33, 0x33, 0x33, 0x34, 0x44, 0x44, 0x53, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x11, 0x11, 0x11, 0x13, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x31, 0x11, 0x11, 0x11, 0x12, 0x13, 0x33, 0x32, 0x11, 0x11, 0x11, 0x12, 0x11, 0x33, 0x31, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x11, 0x13, 0x33, 0x33, 0x21, 0x13, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x34, 0x44, 0x53, 0x33, 0x33, 0x33, 0x34, 0x44, 0x45, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x35, 0x22, 0x11, 0x12, 0x53, 0x33, 0x32, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x35, 0x22, 0x11, 0x22, 0x35, 0x23, 0x33, 0x33, 0x52, 0x21, 0x22, 0x35, 0x12, 0x33, 0x32, 0x11, 0x11, 0x11, 0x11, 0x12, 0x33, 0x21, 0x23, 0x33, 0x33, 0x51, 0x23, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x21, 0x10,
+ 0x11, 0x23, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x11, 0x10,
+ 0x11, 0x13, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x35, 0x11, 0x10,
+ 0x11, 0x11, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x21, 0x11, 0x10,
+ 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x00,
+ 0x00, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x10, 0x00,
+ 0x00, 0x00, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x10, 0x00, 0x00
+};
+
+GUI_CONST_STORAGE GUI_BITMAP bmSeggerLogoBlue = {
+ 123, /* XSize */
+ 58, /* YSize */
+ 62, /* BytesPerLine */
+ 4, /* BitsPerPixel */
+ acSeggerLogoBlue, /* Pointer to picture data (indices) */
+ &PalSeggerLogoBlue /* Pointer to palette */
+};
+
+#endif /* (LCD_YSIZE < 90) */
+
+/* *** End of file *** */
diff --git a/User/lib/lcd/gui/JPEG/CCGUIJPG.bat b/User/lib/lcd/gui/JPEG/CCGUIJPG.bat
new file mode 100644
index 0000000..cfeeb4d
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/CCGUIJPG.bat
@@ -0,0 +1,31 @@
+@ECHO OFF
+ECHO CCGUIJPG.BAT: Compiling GUI\JPG
+CALL CC GUI_JPEG
+CALL CC jcomapi
+CALL CC jdapimin
+CALL CC jdapistd
+CALL CC jdcoefct
+CALL CC jdcolor
+CALL CC jddctmgr
+CALL CC jdhuff
+CALL CC jdinput
+CALL CC jdmainct
+CALL CC jdmarker
+CALL CC jdmaster
+CALL CC jdmerge
+CALL CC jdphuff
+CALL CC jdpostct
+CALL CC jdsample
+CALL CC jdtrans
+CALL CC jerror
+CALL CC jfdctflt
+CALL CC jfdctfst
+CALL CC jfdctint
+CALL CC jidctflt
+CALL CC jidctfst
+CALL CC jidctint
+CALL CC jidctred
+CALL CC jmemmgr
+CALL CC jquant1
+CALL CC jquant2
+CALL CC jutils
diff --git a/User/lib/lcd/gui/JPEG/Doc/ReadMe.txt b/User/lib/lcd/gui/JPEG/Doc/ReadMe.txt
new file mode 100644
index 0000000..0b02f30
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/Doc/ReadMe.txt
@@ -0,0 +1,406 @@
+Notes on the JPEG Library
+=========================
+
+This JPEG module is derived from work of the IJG (see below),
+and may be copyied and redistributed according to the
+conditions under LEGAL ISSUES in this file.
+The code has been modified in a variety of ways;
+some code (GUI_JPEG.c) has been added to as "glue" to make it
+work with emWin.
+The original text of this file is below; some things stated may no
+longer be correct for the code that ships with emWin.
+However, we decided to leave it here because it explains the basic
+concepts and structure of JPEG code.
+
+Segger Microcontroller Systeme GmbH, June 2003
+====================================================================
+
+
+
+
+
+The Independent JPEG Group's JPEG software
+==========================================
+
+README for release 6b of 27-Mar-1998
+====================================
+
+This distribution contains the sixth public release of the Independent JPEG
+Group's free JPEG software. You are welcome to redistribute this software and
+to use it for any purpose, subject to the conditions under LEGAL ISSUES, below.
+
+Serious users of this software (particularly those incorporating it into
+larger programs) should contact IJG at jpeg-info@uunet.uu.net to be added to
+our electronic mailing list. Mailing list members are notified of updates
+and have a chance to participate in technical discussions, etc.
+
+This software is the work of Tom Lane, Philip Gladstone, Jim Boucher,
+Lee Crocker, Julian Minguillon, Luis Ortiz, George Phillips, Davide Rossi,
+Guido Vollbeding, Ge' Weijers, and other members of the Independent JPEG
+Group.
+
+IJG is not affiliated with the official ISO JPEG standards committee.
+
+
+DOCUMENTATION ROADMAP
+=====================
+
+This file contains the following sections:
+
+OVERVIEW General description of JPEG and the IJG software.
+LEGAL ISSUES Copyright, lack of warranty, terms of distribution.
+REFERENCES Where to learn more about JPEG.
+ARCHIVE LOCATIONS Where to find newer versions of this software.
+RELATED SOFTWARE Other stuff you should get.
+FILE FORMAT WARS Software *not* to get.
+TO DO Plans for future IJG releases.
+
+Other documentation files in the distribution are:
+
+User documentation:
+ install.doc How to configure and install the IJG software.
+ usage.doc Usage instructions for cjpeg, djpeg, jpegtran,
+ rdjpgcom, and wrjpgcom.
+ *.1 Unix-style man pages for programs (same info as usage.doc).
+ wizard.doc Advanced usage instructions for JPEG wizards only.
+ change.log Version-to-version change highlights.
+Programmer and internal documentation:
+ libjpeg.doc How to use the JPEG library in your own programs.
+ example.c Sample code for calling the JPEG library.
+ structure.doc Overview of the JPEG library's internal structure.
+ filelist.doc Road map of IJG files.
+ coderules.doc Coding style rules --- please read if you contribute code.
+
+Please read at least the files install.doc and usage.doc. Useful information
+can also be found in the JPEG FAQ (Frequently Asked Questions) article. See
+ARCHIVE LOCATIONS below to find out where to obtain the FAQ article.
+
+If you want to understand how the JPEG code works, we suggest reading one or
+more of the REFERENCES, then looking at the documentation files (in roughly
+the order listed) before diving into the code.
+
+
+OVERVIEW
+========
+
+This package contains C software to implement JPEG image compression and
+decompression. JPEG (pronounced "jay-peg") is a standardized compression
+method for full-color and gray-scale images. JPEG is intended for compressing
+"real-world" scenes; line drawings, cartoons and other non-realistic images
+are not its strong suit. JPEG is lossy, meaning that the output image is not
+exactly identical to the input image. Hence you must not use JPEG if you
+have to have identical output bits. However, on typical photographic images,
+very good compression levels can be obtained with no visible change, and
+remarkably high compression levels are possible if you can tolerate a
+low-quality image. For more details, see the references, or just experiment
+with various compression settings.
+
+This software implements JPEG baseline, extended-sequential, and progressive
+compression processes. Provision is made for supporting all variants of these
+processes, although some uncommon parameter settings aren't implemented yet.
+For legal reasons, we are not distributing code for the arithmetic-coding
+variants of JPEG; see LEGAL ISSUES. We have made no provision for supporting
+the hierarchical or lossless processes defined in the standard.
+
+We provide a set of library routines for reading and writing JPEG image files,
+plus two sample applications "cjpeg" and "djpeg", which use the library to
+perform conversion between JPEG and some other popular image file formats.
+The library is intended to be reused in other applications.
+
+In order to support file conversion and viewing software, we have included
+considerable functionality beyond the bare JPEG coding/decoding capability;
+for example, the color quantization modules are not strictly part of JPEG
+decoding, but they are essential for output to colormapped file formats or
+colormapped displays. These extra functions can be compiled out of the
+library if not required for a particular application. We have also included
+"jpegtran", a utility for lossless transcoding between different JPEG
+processes, and "rdjpgcom" and "wrjpgcom", two simple applications for
+inserting and extracting textual comments in JFIF files.
+
+The emphasis in designing this software has been on achieving portability and
+flexibility, while also making it fast enough to be useful. In particular,
+the software is not intended to be read as a tutorial on JPEG. (See the
+REFERENCES section for introductory material.) Rather, it is intended to
+be reliable, portable, industrial-strength code. We do not claim to have
+achieved that goal in every aspect of the software, but we strive for it.
+
+We welcome the use of this software as a component of commercial products.
+No royalty is required, but we do ask for an acknowledgement in product
+documentation, as described under LEGAL ISSUES.
+
+
+LEGAL ISSUES
+============
+
+In plain English:
+
+1. We don't promise that this software works. (But if you find any bugs,
+ please let us know!)
+2. You can use this software for whatever you want. You don't have to pay us.
+3. You may not pretend that you wrote this software. If you use it in a
+ program, you must acknowledge somewhere in your documentation that
+ you've used the IJG code.
+
+In legalese:
+
+The authors make NO WARRANTY or representation, either express or implied,
+with respect to this software, its quality, accuracy, merchantability, or
+fitness for a particular purpose. This software is provided "AS IS", and you,
+its user, assume the entire risk as to its quality and accuracy.
+
+This software is copyright (C) 1991-1998, Thomas G. Lane.
+All Rights Reserved except as specified below.
+
+Permission is hereby granted to use, copy, modify, and distribute this
+software (or portions thereof) for any purpose, without fee, subject to these
+conditions:
+(1) If any part of the source code for this software is distributed, then this
+README file must be included, with this copyright and no-warranty notice
+unaltered; and any additions, deletions, or changes to the original files
+must be clearly indicated in accompanying documentation.
+(2) If only executable code is distributed, then the accompanying
+documentation must state that "this software is based in part on the work of
+the Independent JPEG Group".
+(3) Permission for use of this software is granted only if the user accepts
+full responsibility for any undesirable consequences; the authors accept
+NO LIABILITY for damages of any kind.
+
+These conditions apply to any software derived from or based on the IJG code,
+not just to the unmodified library. If you use our work, you ought to
+acknowledge us.
+
+Permission is NOT granted for the use of any IJG author's name or company name
+in advertising or publicity relating to this software or products derived from
+it. This software may be referred to only as "the Independent JPEG Group's
+software".
+
+We specifically permit and encourage the use of this software as the basis of
+commercial products, provided that all warranty or liability claims are
+assumed by the product vendor.
+
+
+ansi2knr.c is included in this distribution by permission of L. Peter Deutsch,
+sole proprietor of its copyright holder, Aladdin Enterprises of Menlo Park, CA.
+ansi2knr.c is NOT covered by the above copyright and conditions, but instead
+by the usual distribution terms of the Free Software Foundation; principally,
+that you must include source code if you redistribute it. (See the file
+ansi2knr.c for full details.) However, since ansi2knr.c is not needed as part
+of any program generated from the IJG code, this does not limit you more than
+the foregoing paragraphs do.
+
+The Unix configuration script "configure" was produced with GNU Autoconf.
+It is copyright by the Free Software Foundation but is freely distributable.
+The same holds for its supporting scripts (config.guess, config.sub,
+ltconfig, ltmain.sh). Another support script, install-sh, is copyright
+by M.I.T. but is also freely distributable.
+
+It appears that the arithmetic coding option of the JPEG spec is covered by
+patents owned by IBM, AT&T, and Mitsubishi. Hence arithmetic coding cannot
+legally be used without obtaining one or more licenses. For this reason,
+support for arithmetic coding has been removed from the free JPEG software.
+(Since arithmetic coding provides only a marginal gain over the unpatented
+Huffman mode, it is unlikely that very many implementations will support it.)
+So far as we are aware, there are no patent restrictions on the remaining
+code.
+
+The IJG distribution formerly included code to read and write GIF files.
+To avoid entanglement with the Unisys LZW patent, GIF reading support has
+been removed altogether, and the GIF writer has been simplified to produce
+"uncompressed GIFs". This technique does not use the LZW algorithm; the
+resulting GIF files are larger than usual, but are readable by all standard
+GIF decoders.
+
+We are required to state that
+ "The Graphics Interchange Format(c) is the Copyright property of
+ CompuServe Incorporated. GIF(sm) is a Service Mark property of
+ CompuServe Incorporated."
+
+
+REFERENCES
+==========
+
+We highly recommend reading one or more of these references before trying to
+understand the innards of the JPEG software.
+
+The best short technical introduction to the JPEG compression algorithm is
+ Wallace, Gregory K. "The JPEG Still Picture Compression Standard",
+ Communications of the ACM, April 1991 (vol. 34 no. 4), pp. 30-44.
+(Adjacent articles in that issue discuss MPEG motion picture compression,
+applications of JPEG, and related topics.) If you don't have the CACM issue
+handy, a PostScript file containing a revised version of Wallace's article is
+available at ftp://ftp.uu.net/graphics/jpeg/wallace.ps.gz. The file (actually
+a preprint for an article that appeared in IEEE Trans. Consumer Electronics)
+omits the sample images that appeared in CACM, but it includes corrections
+and some added material. Note: the Wallace article is copyright ACM and IEEE,
+and it may not be used for commercial purposes.
+
+A somewhat less technical, more leisurely introduction to JPEG can be found in
+"The Data Compression Book" by Mark Nelson and Jean-loup Gailly, published by
+M&T Books (New York), 2nd ed. 1996, ISBN 1-55851-434-1. This book provides
+good explanations and example C code for a multitude of compression methods
+including JPEG. It is an excellent source if you are comfortable reading C
+code but don't know much about data compression in general. The book's JPEG
+sample code is far from industrial-strength, but when you are ready to look
+at a full implementation, you've got one here...
+
+The best full description of JPEG is the textbook "JPEG Still Image Data
+Compression Standard" by William B. Pennebaker and Joan L. Mitchell, published
+by Van Nostrand Reinhold, 1993, ISBN 0-442-01272-1. Price US$59.95, 638 pp.
+The book includes the complete text of the ISO JPEG standards (DIS 10918-1
+and draft DIS 10918-2). This is by far the most complete exposition of JPEG
+in existence, and we highly recommend it.
+
+The JPEG standard itself is not available electronically; you must order a
+paper copy through ISO or ITU. (Unless you feel a need to own a certified
+official copy, we recommend buying the Pennebaker and Mitchell book instead;
+it's much cheaper and includes a great deal of useful explanatory material.)
+In the USA, copies of the standard may be ordered from ANSI Sales at (212)
+642-4900, or from Global Engineering Documents at (800) 854-7179. (ANSI
+doesn't take credit card orders, but Global does.) It's not cheap: as of
+1992, ANSI was charging $95 for Part 1 and $47 for Part 2, plus 7%
+shipping/handling. The standard is divided into two parts, Part 1 being the
+actual specification, while Part 2 covers compliance testing methods. Part 1
+is titled "Digital Compression and Coding of Continuous-tone Still Images,
+Part 1: Requirements and guidelines" and has document numbers ISO/IEC IS
+10918-1, ITU-T T.81. Part 2 is titled "Digital Compression and Coding of
+Continuous-tone Still Images, Part 2: Compliance testing" and has document
+numbers ISO/IEC IS 10918-2, ITU-T T.83.
+
+Some extensions to the original JPEG standard are defined in JPEG Part 3,
+a newer ISO standard numbered ISO/IEC IS 10918-3 and ITU-T T.84. IJG
+currently does not support any Part 3 extensions.
+
+The JPEG standard does not specify all details of an interchangeable file
+format. For the omitted details we follow the "JFIF" conventions, revision
+1.02. A copy of the JFIF spec is available from:
+ Literature Department
+ C-Cube Microsystems, Inc.
+ 1778 McCarthy Blvd.
+ Milpitas, CA 95035
+ phone (408) 944-6300, fax (408) 944-6314
+A PostScript version of this document is available by FTP at
+ftp://ftp.uu.net/graphics/jpeg/jfif.ps.gz. There is also a plain text
+version at ftp://ftp.uu.net/graphics/jpeg/jfif.txt.gz, but it is missing
+the figures.
+
+The TIFF 6.0 file format specification can be obtained by FTP from
+ftp://ftp.sgi.com/graphics/tiff/TIFF6.ps.gz. The JPEG incorporation scheme
+found in the TIFF 6.0 spec of 3-June-92 has a number of serious problems.
+IJG does not recommend use of the TIFF 6.0 design (TIFF Compression tag 6).
+Instead, we recommend the JPEG design proposed by TIFF Technical Note #2
+(Compression tag 7). Copies of this Note can be obtained from ftp.sgi.com or
+from ftp://ftp.uu.net/graphics/jpeg/. It is expected that the next revision
+of the TIFF spec will replace the 6.0 JPEG design with the Note's design.
+Although IJG's own code does not support TIFF/JPEG, the free libtiff library
+uses our library to implement TIFF/JPEG per the Note. libtiff is available
+from ftp://ftp.sgi.com/graphics/tiff/.
+
+
+ARCHIVE LOCATIONS
+=================
+
+The "official" archive site for this software is ftp.uu.net (Internet
+address 192.48.96.9). The most recent released version can always be found
+there in directory graphics/jpeg. This particular version will be archived
+as ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz. If you don't have
+direct Internet access, UUNET's archives are also available via UUCP; contact
+help@uunet.uu.net for information on retrieving files that way.
+
+Numerous Internet sites maintain copies of the UUNET files. However, only
+ftp.uu.net is guaranteed to have the latest official version.
+
+You can also obtain this software in DOS-compatible "zip" archive format from
+the SimTel archives (ftp://ftp.simtel.net/pub/simtelnet/msdos/graphics/), or
+on CompuServe in the Graphics Support forum (GO CIS:GRAPHSUP), library 12
+"JPEG Tools". Again, these versions may sometimes lag behind the ftp.uu.net
+release.
+
+The JPEG FAQ (Frequently Asked Questions) article is a useful source of
+general information about JPEG. It is updated constantly and therefore is
+not included in this distribution. The FAQ is posted every two weeks to
+Usenet newsgroups comp.graphics.misc, news.answers, and other groups.
+It is available on the World Wide Web at http://www.faqs.org/faqs/jpeg-faq/
+and other news.answers archive sites, including the official news.answers
+archive at rtfm.mit.edu: ftp://rtfm.mit.edu/pub/usenet/news.answers/jpeg-faq/.
+If you don't have Web or FTP access, send e-mail to mail-server@rtfm.mit.edu
+with body
+ send usenet/news.answers/jpeg-faq/part1
+ send usenet/news.answers/jpeg-faq/part2
+
+
+RELATED SOFTWARE
+================
+
+Numerous viewing and image manipulation programs now support JPEG. (Quite a
+few of them use this library to do so.) The JPEG FAQ described above lists
+some of the more popular free and shareware viewers, and tells where to
+obtain them on Internet.
+
+If you are on a Unix machine, we highly recommend Jef Poskanzer's free
+PBMPLUS software, which provides many useful operations on PPM-format image
+files. In particular, it can convert PPM images to and from a wide range of
+other formats, thus making cjpeg/djpeg considerably more useful. The latest
+version is distributed by the NetPBM group, and is available from numerous
+sites, notably ftp://wuarchive.wustl.edu/graphics/graphics/packages/NetPBM/.
+Unfortunately PBMPLUS/NETPBM is not nearly as portable as the IJG software is;
+you are likely to have difficulty making it work on any non-Unix machine.
+
+A different free JPEG implementation, written by the PVRG group at Stanford,
+is available from ftp://havefun.stanford.edu/pub/jpeg/. This program
+is designed for research and experimentation rather than production use;
+it is slower, harder to use, and less portable than the IJG code, but it
+is easier to read and modify. Also, the PVRG code supports lossless JPEG,
+which we do not. (On the other hand, it doesn't do progressive JPEG.)
+
+
+FILE FORMAT WARS
+================
+
+Some JPEG programs produce files that are not compatible with our library.
+The root of the problem is that the ISO JPEG committee failed to specify a
+concrete file format. Some vendors "filled in the blanks" on their own,
+creating proprietary formats that no one else could read. (For example, none
+of the early commercial JPEG implementations for the Macintosh were able to
+exchange compressed files.)
+
+The file format we have adopted is called JFIF (see REFERENCES). This format
+has been agreed to by a number of major commercial JPEG vendors, and it has
+become the de facto standard. JFIF is a minimal or "low end" representation.
+We recommend the use of TIFF/JPEG (TIFF revision 6.0 as modified by TIFF
+Technical Note #2) for "high end" applications that need to record a lot of
+additional data about an image. TIFF/JPEG is fairly new and not yet widely
+supported, unfortunately.
+
+The upcoming JPEG Part 3 standard defines a file format called SPIFF.
+SPIFF is interoperable with JFIF, in the sense that most JFIF decoders should
+be able to read the most common variant of SPIFF. SPIFF has some technical
+advantages over JFIF, but its major claim to fame is simply that it is an
+official standard rather than an informal one. At this point it is unclear
+whether SPIFF will supersede JFIF or whether JFIF will remain the de-facto
+standard. IJG intends to support SPIFF once the standard is frozen, but we
+have not decided whether it should become our default output format or not.
+(In any case, our decoder will remain capable of reading JFIF indefinitely.)
+
+Various proprietary file formats incorporating JPEG compression also exist.
+We have little or no sympathy for the existence of these formats. Indeed,
+one of the original reasons for developing this free software was to help
+force convergence on common, open format standards for JPEG files. Don't
+use a proprietary file format!
+
+
+TO DO
+=====
+
+The major thrust for v7 will probably be improvement of visual quality.
+The current method for scaling the quantization tables is known not to be
+very good at low Q values. We also intend to investigate block boundary
+smoothing, "poor man's variable quantization", and other means of improving
+quality-vs-file-size performance without sacrificing compatibility.
+
+In future versions, we are considering supporting some of the upcoming JPEG
+Part 3 extensions --- principally, variable quantization and the SPIFF file
+format.
+
+As always, speeding things up is of great interest.
+
+Please send bug reports, offers of help, etc. to jpeg-info@uunet.uu.net.
diff --git a/User/lib/lcd/gui/JPEG/Doc/libjpeg.txt b/User/lib/lcd/gui/JPEG/Doc/libjpeg.txt
new file mode 100644
index 0000000..2430b04
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/Doc/libjpeg.txt
@@ -0,0 +1,3025 @@
+Notes on the JPEG Library
+=========================
+
+This JPEG module is derived from work of the IJG (see below),
+and may be copyied and redistributed according to the
+conditions under LEGAL ISSUES in ReadMe.txt.
+The code has been modified in a variety of ways;
+some code (GUI_JPEG.c) has been added to as "glue" to make it
+work with emWin.
+The original text of this file is below; some things stated may no
+longer be correct for the code that ships with emWin.
+However, we decided to leave it here because it explains the basic
+concepts and structure of JPEG code.
+
+Segger Microcontroller Systeme GmbH, June 2003
+====================================================================
+
+
+
+USING THE IJG JPEG LIBRARY
+
+Copyright (C) 1994-1998, Thomas G. Lane.
+This file is part of the Independent JPEG Group's software.
+For conditions of distribution and use, see the accompanying README file.
+
+
+This file describes how to use the IJG JPEG library within an application
+program. Read it if you want to write a program that uses the library.
+
+The file example.c provides heavily commented skeleton code for calling the
+JPEG library. Also see jpeglib.h (the include file to be used by application
+programs) for full details about data structures and function parameter lists.
+The library source code, of course, is the ultimate reference.
+
+Note that there have been *major* changes from the application interface
+presented by IJG version 4 and earlier versions. The old design had several
+inherent limitations, and it had accumulated a lot of cruft as we added
+features while trying to minimize application-interface changes. We have
+sacrificed backward compatibility in the version 5 rewrite, but we think the
+improvements justify this.
+
+
+TABLE OF CONTENTS
+-----------------
+
+Overview:
+ Functions provided by the library
+ Outline of typical usage
+Basic library usage:
+ Data formats
+ Compression details
+ Decompression details
+ Mechanics of usage: include files, linking, etc
+Advanced features:
+ Compression parameter selection
+ Decompression parameter selection
+ Special color spaces
+ Error handling
+ Compressed data handling (source and destination managers)
+ I/O suspension
+ Progressive JPEG support
+ Buffered-image mode
+ Abbreviated datastreams and multiple images
+ Special markers
+ Raw (downsampled) image data
+ Really raw data: DCT coefficients
+ Progress monitoring
+ Memory management
+ Memory usage
+ Library compile-time options
+ Portability considerations
+ Notes for MS-DOS implementors
+
+You should read at least the overview and basic usage sections before trying
+to program with the library. The sections on advanced features can be read
+if and when you need them.
+
+
+OVERVIEW
+========
+
+Functions provided by the library
+---------------------------------
+
+The IJG JPEG library provides C code to read and write JPEG-compressed image
+files. The surrounding application program receives or supplies image data a
+scanline at a time, using a straightforward uncompressed image format. All
+details of color conversion and other preprocessing/postprocessing can be
+handled by the library.
+
+The library includes a substantial amount of code that is not covered by the
+JPEG standard but is necessary for typical applications of JPEG. These
+functions preprocess the image before JPEG compression or postprocess it after
+decompression. They include colorspace conversion, downsampling/upsampling,
+and color quantization. The application indirectly selects use of this code
+by specifying the format in which it wishes to supply or receive image data.
+For example, if colormapped output is requested, then the decompression
+library automatically invokes color quantization.
+
+A wide range of quality vs. speed tradeoffs are possible in JPEG processing,
+and even more so in decompression postprocessing. The decompression library
+provides multiple implementations that cover most of the useful tradeoffs,
+ranging from very-high-quality down to fast-preview operation. On the
+compression side we have generally not provided low-quality choices, since
+compression is normally less time-critical. It should be understood that the
+low-quality modes may not meet the JPEG standard's accuracy requirements;
+nonetheless, they are useful for viewers.
+
+A word about functions *not* provided by the library. We handle a subset of
+the ISO JPEG standard; most baseline, extended-sequential, and progressive
+JPEG processes are supported. (Our subset includes all features now in common
+use.) Unsupported ISO options include:
+ * Hierarchical storage
+ * Lossless JPEG
+ * Arithmetic entropy coding (unsupported for legal reasons)
+ * DNL marker
+ * Nonintegral subsampling ratios
+We support both 8- and 12-bit data precision, but this is a compile-time
+choice rather than a run-time choice; hence it is difficult to use both
+precisions in a single application.
+
+By itself, the library handles only interchange JPEG datastreams --- in
+particular the widely used JFIF file format. The library can be used by
+surrounding code to process interchange or abbreviated JPEG datastreams that
+are embedded in more complex file formats. (For example, this library is
+used by the free LIBTIFF library to support JPEG compression in TIFF.)
+
+
+Outline of typical usage
+------------------------
+
+The rough outline of a JPEG compression operation is:
+
+ Allocate and initialize a JPEG compression object
+ Specify the destination for the compressed data (eg, a file)
+ Set parameters for compression, including image size & colorspace
+ jpeg_start_compress(...);
+ while (scan lines remain to be written)
+ jpeg_write_scanlines(...);
+ jpeg_finish_compress(...);
+ Release the JPEG compression object
+
+A JPEG compression object holds parameters and working state for the JPEG
+library. We make creation/destruction of the object separate from starting
+or finishing compression of an image; the same object can be re-used for a
+series of image compression operations. This makes it easy to re-use the
+same parameter settings for a sequence of images. Re-use of a JPEG object
+also has important implications for processing abbreviated JPEG datastreams,
+as discussed later.
+
+The image data to be compressed is supplied to jpeg_write_scanlines() from
+in-memory buffers. If the application is doing file-to-file compression,
+reading image data from the source file is the application's responsibility.
+The library emits compressed data by calling a "data destination manager",
+which typically will write the data into a file; but the application can
+provide its own destination manager to do something else.
+
+Similarly, the rough outline of a JPEG decompression operation is:
+
+ Allocate and initialize a JPEG decompression object
+ Specify the source of the compressed data (eg, a file)
+ Call jpeg_read_header() to obtain image info
+ Set parameters for decompression
+ jpeg_start_decompress(...);
+ while (scan lines remain to be read)
+ jpeg_read_scanlines(...);
+ jpeg_finish_decompress(...);
+ Release the JPEG decompression object
+
+This is comparable to the compression outline except that reading the
+datastream header is a separate step. This is helpful because information
+about the image's size, colorspace, etc is available when the application
+selects decompression parameters. For example, the application can choose an
+output scaling ratio that will fit the image into the available screen size.
+
+The decompression library obtains compressed data by calling a data source
+manager, which typically will read the data from a file; but other behaviors
+can be obtained with a custom source manager. Decompressed data is delivered
+into in-memory buffers passed to jpeg_read_scanlines().
+
+It is possible to abort an incomplete compression or decompression operation
+by calling jpeg_abort(); or, if you do not need to retain the JPEG object,
+simply release it by calling jpeg_destroy().
+
+JPEG compression and decompression objects are two separate struct types.
+However, they share some common fields, and certain routines such as
+jpeg_destroy() can work on either type of object.
+
+The JPEG library has no static variables: all state is in the compression
+or decompression object. Therefore it is possible to process multiple
+compression and decompression operations concurrently, using multiple JPEG
+objects.
+
+Both compression and decompression can be done in an incremental memory-to-
+memory fashion, if suitable source/destination managers are used. See the
+section on "I/O suspension" for more details.
+
+
+BASIC LIBRARY USAGE
+===================
+
+Data formats
+------------
+
+Before diving into procedural details, it is helpful to understand the
+image data format that the JPEG library expects or returns.
+
+The standard input image format is a rectangular array of pixels, with each
+pixel having the same number of "component" or "sample" values (color
+channels). You must specify how many components there are and the colorspace
+interpretation of the components. Most applications will use RGB data
+(three components per pixel) or grayscale data (one component per pixel).
+PLEASE NOTE THAT RGB DATA IS THREE SAMPLES PER PIXEL, GRAYSCALE ONLY ONE.
+A remarkable number of people manage to miss this, only to find that their
+programs don't work with grayscale JPEG files.
+
+There is no provision for colormapped input. JPEG files are always full-color
+or full grayscale (or sometimes another colorspace such as CMYK). You can
+feed in a colormapped image by expanding it to full-color format. However
+JPEG often doesn't work very well with source data that has been colormapped,
+because of dithering noise. This is discussed in more detail in the JPEG FAQ
+and the other references mentioned in the README file.
+
+Pixels are stored by scanlines, with each scanline running from left to
+right. The component values for each pixel are adjacent in the row; for
+example, R,G,B,R,G,B,R,G,B,... for 24-bit RGB color. Each scanline is an
+array of data type JSAMPLE --- which is typically "unsigned char", unless
+you've changed jmorecfg.h. (You can also change the RGB pixel layout, say
+to B,G,R order, by modifying jmorecfg.h. But see the restrictions listed in
+that file before doing so.)
+
+A 2-D array of pixels is formed by making a list of pointers to the starts of
+scanlines; so the scanlines need not be physically adjacent in memory. Even
+if you process just one scanline at a time, you must make a one-element
+pointer array to conform to this structure. Pointers to JSAMPLE rows are of
+type JSAMPROW, and the pointer to the pointer array is of type JSAMPARRAY.
+
+The library accepts or supplies one or more complete scanlines per call.
+It is not possible to process part of a row at a time. Scanlines are always
+processed top-to-bottom. You can process an entire image in one call if you
+have it all in memory, but usually it's simplest to process one scanline at
+a time.
+
+For best results, source data values should have the precision specified by
+BITS_IN_JSAMPLE (normally 8 bits). For instance, if you choose to compress
+data that's only 6 bits/channel, you should left-justify each value in a
+byte before passing it to the compressor. If you need to compress data
+that has more than 8 bits/channel, compile with BITS_IN_JSAMPLE = 12.
+(See "Library compile-time options", later.)
+
+
+The data format returned by the decompressor is the same in all details,
+except that colormapped output is supported. (Again, a JPEG file is never
+colormapped. But you can ask the decompressor to perform on-the-fly color
+quantization to deliver colormapped output.) If you request colormapped
+output then the returned data array contains a single JSAMPLE per pixel;
+its value is an index into a color map. The color map is represented as
+a 2-D JSAMPARRAY in which each row holds the values of one color component,
+that is, colormap[i][j] is the value of the i'th color component for pixel
+value (map index) j. Note that since the colormap indexes are stored in
+JSAMPLEs, the maximum number of colors is limited by the size of JSAMPLE
+(ie, at most 256 colors for an 8-bit JPEG library).
+
+
+Compression details
+-------------------
+
+Here we revisit the JPEG compression outline given in the overview.
+
+1. Allocate and initialize a JPEG compression object.
+
+A JPEG compression object is a "struct jpeg_compress_struct". (It also has
+a bunch of subsidiary structures which are allocated via malloc(), but the
+application doesn't control those directly.) This struct can be just a local
+variable in the calling routine, if a single routine is going to execute the
+whole JPEG compression sequence. Otherwise it can be static or allocated
+from malloc().
+
+You will also need a structure representing a JPEG error handler. The part
+of this that the library cares about is a "struct jpeg_error_mgr". If you
+are providing your own error handler, you'll typically want to embed the
+jpeg_error_mgr struct in a larger structure; this is discussed later under
+"Error handling". For now we'll assume you are just using the default error
+handler. The default error handler will print JPEG error/warning messages
+on stderr, and it will call exit() if a fatal error occurs.
+
+You must initialize the error handler structure, store a pointer to it into
+the JPEG object's "err" field, and then call jpeg_create_compress() to
+initialize the rest of the JPEG object.
+
+Typical code for this step, if you are using the default error handler, is
+
+ struct jpeg_compress_struct cinfo;
+ struct jpeg_error_mgr jerr;
+ ...
+ cinfo.err = jpeg_std_error(&jerr);
+ jpeg_create_compress(&cinfo);
+
+jpeg_create_compress allocates a small amount of memory, so it could fail
+if you are out of memory. In that case it will exit via the error handler;
+that's why the error handler must be initialized first.
+
+
+2. Specify the destination for the compressed data (eg, a file).
+
+As previously mentioned, the JPEG library delivers compressed data to a
+"data destination" module. The library includes one data destination
+module which knows how to write to a stdio stream. You can use your own
+destination module if you want to do something else, as discussed later.
+
+If you use the standard destination module, you must open the target stdio
+stream beforehand. Typical code for this step looks like:
+
+ FILE * outfile;
+ ...
+ if ((outfile = fopen(filename, "wb")) == NULL) {
+ fprintf(stderr, "can't open %s\n", filename);
+ exit(1);
+ }
+ jpeg_stdio_dest(&cinfo, outfile);
+
+where the last line invokes the standard destination module.
+
+WARNING: it is critical that the binary compressed data be delivered to the
+output file unchanged. On non-Unix systems the stdio library may perform
+newline translation or otherwise corrupt binary data. To suppress this
+behavior, you may need to use a "b" option to fopen (as shown above), or use
+setmode() or another routine to put the stdio stream in binary mode. See
+cjpeg.c and djpeg.c for code that has been found to work on many systems.
+
+You can select the data destination after setting other parameters (step 3),
+if that's more convenient. You may not change the destination between
+calling jpeg_start_compress() and jpeg_finish_compress().
+
+
+3. Set parameters for compression, including image size & colorspace.
+
+You must supply information about the source image by setting the following
+fields in the JPEG object (cinfo structure):
+
+ image_width Width of image, in pixels
+ image_height Height of image, in pixels
+ input_components Number of color channels (samples per pixel)
+ in_color_space Color space of source image
+
+The image dimensions are, hopefully, obvious. JPEG supports image dimensions
+of 1 to 64K pixels in either direction. The input color space is typically
+RGB or grayscale, and input_components is 3 or 1 accordingly. (See "Special
+color spaces", later, for more info.) The in_color_space field must be
+assigned one of the J_COLOR_SPACE enum constants, typically JCS_RGB or
+JCS_GRAYSCALE.
+
+JPEG has a large number of compression parameters that determine how the
+image is encoded. Most applications don't need or want to know about all
+these parameters. You can set all the parameters to reasonable defaults by
+calling jpeg_set_defaults(); then, if there are particular values you want
+to change, you can do so after that. The "Compression parameter selection"
+section tells about all the parameters.
+
+You must set in_color_space correctly before calling jpeg_set_defaults(),
+because the defaults depend on the source image colorspace. However the
+other three source image parameters need not be valid until you call
+jpeg_start_compress(). There's no harm in calling jpeg_set_defaults() more
+than once, if that happens to be convenient.
+
+Typical code for a 24-bit RGB source image is
+
+ cinfo.image_width = Width; /* image width and height, in pixels */
+ cinfo.image_height = Height;
+ cinfo.input_components = 3; /* # of color components per pixel */
+ cinfo.in_color_space = JCS_RGB; /* colorspace of input image */
+
+ jpeg_set_defaults(&cinfo);
+ /* Make optional parameter settings here */
+
+
+4. jpeg_start_compress(...);
+
+After you have established the data destination and set all the necessary
+source image info and other parameters, call jpeg_start_compress() to begin
+a compression cycle. This will initialize internal state, allocate working
+storage, and emit the first few bytes of the JPEG datastream header.
+
+Typical code:
+
+ jpeg_start_compress(&cinfo, TRUE);
+
+The "TRUE" parameter ensures that a complete JPEG interchange datastream
+will be written. This is appropriate in most cases. If you think you might
+want to use an abbreviated datastream, read the section on abbreviated
+datastreams, below.
+
+Once you have called jpeg_start_compress(), you may not alter any JPEG
+parameters or other fields of the JPEG object until you have completed
+the compression cycle.
+
+
+5. while (scan lines remain to be written)
+ jpeg_write_scanlines(...);
+
+Now write all the required image data by calling jpeg_write_scanlines()
+one or more times. You can pass one or more scanlines in each call, up
+to the total image height. In most applications it is convenient to pass
+just one or a few scanlines at a time. The expected format for the passed
+data is discussed under "Data formats", above.
+
+Image data should be written in top-to-bottom scanline order. The JPEG spec
+contains some weasel wording about how top and bottom are application-defined
+terms (a curious interpretation of the English language...) but if you want
+your files to be compatible with everyone else's, you WILL use top-to-bottom
+order. If the source data must be read in bottom-to-top order, you can use
+the JPEG library's virtual array mechanism to invert the data efficiently.
+Examples of this can be found in the sample application cjpeg.
+
+The library maintains a count of the number of scanlines written so far
+in the next_scanline field of the JPEG object. Usually you can just use
+this variable as the loop counter, so that the loop test looks like
+"while (cinfo.next_scanline < cinfo.image_height)".
+
+Code for this step depends heavily on the way that you store the source data.
+example.c shows the following code for the case of a full-size 2-D source
+array containing 3-byte RGB pixels:
+
+ JSAMPROW row_pointer[1]; /* pointer to a single row */
+ int row_stride; /* physical row width in buffer */
+
+ row_stride = image_width * 3; /* JSAMPLEs per row in image_buffer */
+
+ while (cinfo.next_scanline < cinfo.image_height) {
+ row_pointer[0] = & image_buffer[cinfo.next_scanline * row_stride];
+ jpeg_write_scanlines(&cinfo, row_pointer, 1);
+ }
+
+jpeg_write_scanlines() returns the number of scanlines actually written.
+This will normally be equal to the number passed in, so you can usually
+ignore the return value. It is different in just two cases:
+ * If you try to write more scanlines than the declared image height,
+ the additional scanlines are ignored.
+ * If you use a suspending data destination manager, output buffer overrun
+ will cause the compressor to return before accepting all the passed lines.
+ This feature is discussed under "I/O suspension", below. The normal
+ stdio destination manager will NOT cause this to happen.
+In any case, the return value is the same as the change in the value of
+next_scanline.
+
+
+6. jpeg_finish_compress(...);
+
+After all the image data has been written, call jpeg_finish_compress() to
+complete the compression cycle. This step is ESSENTIAL to ensure that the
+last bufferload of data is written to the data destination.
+jpeg_finish_compress() also releases working memory associated with the JPEG
+object.
+
+Typical code:
+
+ jpeg_finish_compress(&cinfo);
+
+If using the stdio destination manager, don't forget to close the output
+stdio stream (if necessary) afterwards.
+
+If you have requested a multi-pass operating mode, such as Huffman code
+optimization, jpeg_finish_compress() will perform the additional passes using
+data buffered by the first pass. In this case jpeg_finish_compress() may take
+quite a while to complete. With the default compression parameters, this will
+not happen.
+
+It is an error to call jpeg_finish_compress() before writing the necessary
+total number of scanlines. If you wish to abort compression, call
+jpeg_abort() as discussed below.
+
+After completing a compression cycle, you may dispose of the JPEG object
+as discussed next, or you may use it to compress another image. In that case
+return to step 2, 3, or 4 as appropriate. If you do not change the
+destination manager, the new datastream will be written to the same target.
+If you do not change any JPEG parameters, the new datastream will be written
+with the same parameters as before. Note that you can change the input image
+dimensions freely between cycles, but if you change the input colorspace, you
+should call jpeg_set_defaults() to adjust for the new colorspace; and then
+you'll need to repeat all of step 3.
+
+
+7. Release the JPEG compression object.
+
+When you are done with a JPEG compression object, destroy it by calling
+jpeg_destroy_compress(). This will free all subsidiary memory (regardless of
+the previous state of the object). Or you can call jpeg_destroy(), which
+works for either compression or decompression objects --- this may be more
+convenient if you are sharing code between compression and decompression
+cases. (Actually, these routines are equivalent except for the declared type
+of the passed pointer. To avoid gripes from ANSI C compilers, jpeg_destroy()
+should be passed a j_common_ptr.)
+
+If you allocated the jpeg_compress_struct structure from malloc(), freeing
+it is your responsibility --- jpeg_destroy() won't. Ditto for the error
+handler structure.
+
+Typical code:
+
+ jpeg_destroy_compress(&cinfo);
+
+
+8. Aborting.
+
+If you decide to abort a compression cycle before finishing, you can clean up
+in either of two ways:
+
+* If you don't need the JPEG object any more, just call
+ jpeg_destroy_compress() or jpeg_destroy() to release memory. This is
+ legitimate at any point after calling jpeg_create_compress() --- in fact,
+ it's safe even if jpeg_create_compress() fails.
+
+* If you want to re-use the JPEG object, call jpeg_abort_compress(), or call
+ jpeg_abort() which works on both compression and decompression objects.
+ This will return the object to an idle state, releasing any working memory.
+ jpeg_abort() is allowed at any time after successful object creation.
+
+Note that cleaning up the data destination, if required, is your
+responsibility; neither of these routines will call term_destination().
+(See "Compressed data handling", below, for more about that.)
+
+jpeg_destroy() and jpeg_abort() are the only safe calls to make on a JPEG
+object that has reported an error by calling error_exit (see "Error handling"
+for more info). The internal state of such an object is likely to be out of
+whack. Either of these two routines will return the object to a known state.
+
+
+Decompression details
+---------------------
+
+Here we revisit the JPEG decompression outline given in the overview.
+
+1. Allocate and initialize a JPEG decompression object.
+
+This is just like initialization for compression, as discussed above,
+except that the object is a "struct jpeg_decompress_struct" and you
+call jpeg_create_decompress(). Error handling is exactly the same.
+
+Typical code:
+
+ struct jpeg_decompress_struct cinfo;
+ struct jpeg_error_mgr jerr;
+ ...
+ cinfo.err = jpeg_std_error(&jerr);
+ jpeg_create_decompress(&cinfo);
+
+(Both here and in the IJG code, we usually use variable name "cinfo" for
+both compression and decompression objects.)
+
+
+2. Specify the source of the compressed data (eg, a file).
+
+As previously mentioned, the JPEG library reads compressed data from a "data
+source" module. The library includes one data source module which knows how
+to read from a stdio stream. You can use your own source module if you want
+to do something else, as discussed later.
+
+If you use the standard source module, you must open the source stdio stream
+beforehand. Typical code for this step looks like:
+
+ FILE * infile;
+ ...
+ if ((infile = fopen(filename, "rb")) == NULL) {
+ fprintf(stderr, "can't open %s\n", filename);
+ exit(1);
+ }
+ jpeg_stdio_src(&cinfo, infile);
+
+where the last line invokes the standard source module.
+
+WARNING: it is critical that the binary compressed data be read unchanged.
+On non-Unix systems the stdio library may perform newline translation or
+otherwise corrupt binary data. To suppress this behavior, you may need to use
+a "b" option to fopen (as shown above), or use setmode() or another routine to
+put the stdio stream in binary mode. See cjpeg.c and djpeg.c for code that
+has been found to work on many systems.
+
+You may not change the data source between calling jpeg_read_header() and
+jpeg_finish_decompress(). If you wish to read a series of JPEG images from
+a single source file, you should repeat the jpeg_read_header() to
+jpeg_finish_decompress() sequence without reinitializing either the JPEG
+object or the data source module; this prevents buffered input data from
+being discarded.
+
+
+3. Call jpeg_read_header() to obtain image info.
+
+Typical code for this step is just
+
+ jpeg_read_header(&cinfo, TRUE);
+
+This will read the source datastream header markers, up to the beginning
+of the compressed data proper. On return, the image dimensions and other
+info have been stored in the JPEG object. The application may wish to
+consult this information before selecting decompression parameters.
+
+More complex code is necessary if
+ * A suspending data source is used --- in that case jpeg_read_header()
+ may return before it has read all the header data. See "I/O suspension",
+ below. The normal stdio source manager will NOT cause this to happen.
+ * Abbreviated JPEG files are to be processed --- see the section on
+ abbreviated datastreams. Standard applications that deal only in
+ interchange JPEG files need not be concerned with this case either.
+
+It is permissible to stop at this point if you just wanted to find out the
+image dimensions and other header info for a JPEG file. In that case,
+call jpeg_destroy() when you are done with the JPEG object, or call
+jpeg_abort() to return it to an idle state before selecting a new data
+source and reading another header.
+
+
+4. Set parameters for decompression.
+
+jpeg_read_header() sets appropriate default decompression parameters based on
+the properties of the image (in particular, its colorspace). However, you
+may well want to alter these defaults before beginning the decompression.
+For example, the default is to produce full color output from a color file.
+If you want colormapped output you must ask for it. Other options allow the
+returned image to be scaled and allow various speed/quality tradeoffs to be
+selected. "Decompression parameter selection", below, gives details.
+
+If the defaults are appropriate, nothing need be done at this step.
+
+Note that all default values are set by each call to jpeg_read_header().
+If you reuse a decompression object, you cannot expect your parameter
+settings to be preserved across cycles, as you can for compression.
+You must set desired parameter values each time.
+
+
+5. jpeg_start_decompress(...);
+
+Once the parameter values are satisfactory, call jpeg_start_decompress() to
+begin decompression. This will initialize internal state, allocate working
+memory, and prepare for returning data.
+
+Typical code is just
+
+ jpeg_start_decompress(&cinfo);
+
+If you have requested a multi-pass operating mode, such as 2-pass color
+quantization, jpeg_start_decompress() will do everything needed before data
+output can begin. In this case jpeg_start_decompress() may take quite a while
+to complete. With a single-scan (non progressive) JPEG file and default
+decompression parameters, this will not happen; jpeg_start_decompress() will
+return quickly.
+
+After this call, the final output image dimensions, including any requested
+scaling, are available in the JPEG object; so is the selected colormap, if
+colormapped output has been requested. Useful fields include
+
+ output_width image width and height, as scaled
+ output_height
+ out_color_components # of color components in out_color_space
+ output_components # of color components returned per pixel
+ colormap the selected colormap, if any
+ actual_number_of_colors number of entries in colormap
+
+output_components is 1 (a colormap index) when quantizing colors; otherwise it
+equals out_color_components. It is the number of JSAMPLE values that will be
+emitted per pixel in the output arrays.
+
+Typically you will need to allocate data buffers to hold the incoming image.
+You will need output_width * output_components JSAMPLEs per scanline in your
+output buffer, and a total of output_height scanlines will be returned.
+
+Note: if you are using the JPEG library's internal memory manager to allocate
+data buffers (as djpeg does), then the manager's protocol requires that you
+request large buffers *before* calling jpeg_start_decompress(). This is a
+little tricky since the output_XXX fields are not normally valid then. You
+can make them valid by calling jpeg_calc_output_dimensions() after setting the
+relevant parameters (scaling, output color space, and quantization flag).
+
+
+6. while (scan lines remain to be read)
+ jpeg_read_scanlines(...);
+
+Now you can read the decompressed image data by calling jpeg_read_scanlines()
+one or more times. At each call, you pass in the maximum number of scanlines
+to be read (ie, the height of your working buffer); jpeg_read_scanlines()
+will return up to that many lines. The return value is the number of lines
+actually read. The format of the returned data is discussed under "Data
+formats", above. Don't forget that grayscale and color JPEGs will return
+different data formats!
+
+Image data is returned in top-to-bottom scanline order. If you must write
+out the image in bottom-to-top order, you can use the JPEG library's virtual
+array mechanism to invert the data efficiently. Examples of this can be
+found in the sample application djpeg.
+
+The library maintains a count of the number of scanlines returned so far
+in the output_scanline field of the JPEG object. Usually you can just use
+this variable as the loop counter, so that the loop test looks like
+"while (cinfo.output_scanline < cinfo.output_height)". (Note that the test
+should NOT be against image_height, unless you never use scaling. The
+image_height field is the height of the original unscaled image.)
+The return value always equals the change in the value of output_scanline.
+
+If you don't use a suspending data source, it is safe to assume that
+jpeg_read_scanlines() reads at least one scanline per call, until the
+bottom of the image has been reached.
+
+If you use a buffer larger than one scanline, it is NOT safe to assume that
+jpeg_read_scanlines() fills it. (The current implementation returns only a
+few scanlines per call, no matter how large a buffer you pass.) So you must
+always provide a loop that calls jpeg_read_scanlines() repeatedly until the
+whole image has been read.
+
+
+7. jpeg_finish_decompress(...);
+
+After all the image data has been read, call jpeg_finish_decompress() to
+complete the decompression cycle. This causes working memory associated
+with the JPEG object to be released.
+
+Typical code:
+
+ jpeg_finish_decompress(&cinfo);
+
+If using the stdio source manager, don't forget to close the source stdio
+stream if necessary.
+
+It is an error to call jpeg_finish_decompress() before reading the correct
+total number of scanlines. If you wish to abort decompression, call
+jpeg_abort() as discussed below.
+
+After completing a decompression cycle, you may dispose of the JPEG object as
+discussed next, or you may use it to decompress another image. In that case
+return to step 2 or 3 as appropriate. If you do not change the source
+manager, the next image will be read from the same source.
+
+
+8. Release the JPEG decompression object.
+
+When you are done with a JPEG decompression object, destroy it by calling
+jpeg_destroy_decompress() or jpeg_destroy(). The previous discussion of
+destroying compression objects applies here too.
+
+Typical code:
+
+ jpeg_destroy_decompress(&cinfo);
+
+
+9. Aborting.
+
+You can abort a decompression cycle by calling jpeg_destroy_decompress() or
+jpeg_destroy() if you don't need the JPEG object any more, or
+jpeg_abort_decompress() or jpeg_abort() if you want to reuse the object.
+The previous discussion of aborting compression cycles applies here too.
+
+
+Mechanics of usage: include files, linking, etc
+-----------------------------------------------
+
+Applications using the JPEG library should include the header file jpeglib.h
+to obtain declarations of data types and routines. Before including
+jpeglib.h, include system headers that define at least the typedefs FILE and
+size_t. On ANSI-conforming systems, including is sufficient; on
+older Unix systems, you may need to define size_t.
+
+If the application needs to refer to individual JPEG library error codes, also
+include jerror.h to define those symbols.
+
+jpeglib.h indirectly includes the files jconfig.h and jmorecfg.h. If you are
+installing the JPEG header files in a system directory, you will want to
+install all four files: jpeglib.h, jerror.h, jconfig.h, jmorecfg.h.
+
+The most convenient way to include the JPEG code into your executable program
+is to prepare a library file ("libjpeg.a", or a corresponding name on non-Unix
+machines) and reference it at your link step. If you use only half of the
+library (only compression or only decompression), only that much code will be
+included from the library, unless your linker is hopelessly brain-damaged.
+The supplied makefiles build libjpeg.a automatically (see install.doc).
+
+While you can build the JPEG library as a shared library if the whim strikes
+you, we don't really recommend it. The trouble with shared libraries is that
+at some point you'll probably try to substitute a new version of the library
+without recompiling the calling applications. That generally doesn't work
+because the parameter struct declarations usually change with each new
+version. In other words, the library's API is *not* guaranteed binary
+compatible across versions; we only try to ensure source-code compatibility.
+(In hindsight, it might have been smarter to hide the parameter structs from
+applications and introduce a ton of access functions instead. Too late now,
+however.)
+
+On some systems your application may need to set up a signal handler to ensure
+that temporary files are deleted if the program is interrupted. This is most
+critical if you are on MS-DOS and use the jmemdos.c memory manager back end;
+it will try to grab extended memory for temp files, and that space will NOT be
+freed automatically. See cjpeg.c or djpeg.c for an example signal handler.
+
+It may be worth pointing out that the core JPEG library does not actually
+require the stdio library: only the default source/destination managers and
+error handler need it. You can use the library in a stdio-less environment
+if you replace those modules and use jmemnobs.c (or another memory manager of
+your own devising). More info about the minimum system library requirements
+may be found in jinclude.h.
+
+
+ADVANCED FEATURES
+=================
+
+Compression parameter selection
+-------------------------------
+
+This section describes all the optional parameters you can set for JPEG
+compression, as well as the "helper" routines provided to assist in this
+task. Proper setting of some parameters requires detailed understanding
+of the JPEG standard; if you don't know what a parameter is for, it's best
+not to mess with it! See REFERENCES in the README file for pointers to
+more info about JPEG.
+
+It's a good idea to call jpeg_set_defaults() first, even if you plan to set
+all the parameters; that way your code is more likely to work with future JPEG
+libraries that have additional parameters. For the same reason, we recommend
+you use a helper routine where one is provided, in preference to twiddling
+cinfo fields directly.
+
+The helper routines are:
+
+jpeg_set_defaults (j_compress_ptr cinfo)
+ This routine sets all JPEG parameters to reasonable defaults, using
+ only the input image's color space (field in_color_space, which must
+ already be set in cinfo). Many applications will only need to use
+ this routine and perhaps jpeg_set_quality().
+
+jpeg_set_colorspace (j_compress_ptr cinfo, J_COLOR_SPACE colorspace)
+ Sets the JPEG file's colorspace (field jpeg_color_space) as specified,
+ and sets other color-space-dependent parameters appropriately. See
+ "Special color spaces", below, before using this. A large number of
+ parameters, including all per-component parameters, are set by this
+ routine; if you want to twiddle individual parameters you should call
+ jpeg_set_colorspace() before rather than after.
+
+jpeg_default_colorspace (j_compress_ptr cinfo)
+ Selects an appropriate JPEG colorspace based on cinfo->in_color_space,
+ and calls jpeg_set_colorspace(). This is actually a subroutine of
+ jpeg_set_defaults(). It's broken out in case you want to change
+ just the colorspace-dependent JPEG parameters.
+
+jpeg_set_quality (j_compress_ptr cinfo, int quality, boolean force_baseline)
+ Constructs JPEG quantization tables appropriate for the indicated
+ quality setting. The quality value is expressed on the 0..100 scale
+ recommended by IJG (cjpeg's "-quality" switch uses this routine).
+ Note that the exact mapping from quality values to tables may change
+ in future IJG releases as more is learned about DCT quantization.
+ If the force_baseline parameter is TRUE, then the quantization table
+ entries are constrained to the range 1..255 for full JPEG baseline
+ compatibility. In the current implementation, this only makes a
+ difference for quality settings below 25, and it effectively prevents
+ very small/low quality files from being generated. The IJG decoder
+ is capable of reading the non-baseline files generated at low quality
+ settings when force_baseline is FALSE, but other decoders may not be.
+
+jpeg_set_linear_quality (j_compress_ptr cinfo, int scale_factor,
+ boolean force_baseline)
+ Same as jpeg_set_quality() except that the generated tables are the
+ sample tables given in the JPEC spec section K.1, multiplied by the
+ specified scale factor (which is expressed as a percentage; thus
+ scale_factor = 100 reproduces the spec's tables). Note that larger
+ scale factors give lower quality. This entry point is useful for
+ conforming to the Adobe PostScript DCT conventions, but we do not
+ recommend linear scaling as a user-visible quality scale otherwise.
+ force_baseline again constrains the computed table entries to 1..255.
+
+int jpeg_quality_scaling (int quality)
+ Converts a value on the IJG-recommended quality scale to a linear
+ scaling percentage. Note that this routine may change or go away
+ in future releases --- IJG may choose to adopt a scaling method that
+ can't be expressed as a simple scalar multiplier, in which case the
+ premise of this routine collapses. Caveat user.
+
+jpeg_add_quant_table (j_compress_ptr cinfo, int which_tbl,
+ const unsigned int *basic_table,
+ int scale_factor, boolean force_baseline)
+ Allows an arbitrary quantization table to be created. which_tbl
+ indicates which table slot to fill. basic_table points to an array
+ of 64 unsigned ints given in normal array order. These values are
+ multiplied by scale_factor/100 and then clamped to the range 1..65535
+ (or to 1..255 if force_baseline is TRUE).
+ CAUTION: prior to library version 6a, jpeg_add_quant_table expected
+ the basic table to be given in JPEG zigzag order. If you need to
+ write code that works with either older or newer versions of this
+ routine, you must check the library version number. Something like
+ "#if JPEG_LIB_VERSION >= 61" is the right test.
+
+jpeg_simple_progression (j_compress_ptr cinfo)
+ Generates a default scan script for writing a progressive-JPEG file.
+ This is the recommended method of creating a progressive file,
+ unless you want to make a custom scan sequence. You must ensure that
+ the JPEG color space is set correctly before calling this routine.
+
+
+Compression parameters (cinfo fields) include:
+
+J_DCT_METHOD dct_method
+ Selects the algorithm used for the DCT step. Choices are:
+ JDCT_ISLOW: slow but accurate integer algorithm
+ JDCT_IFAST: faster, less accurate integer method
+ JDCT_FLOAT: floating-point method
+ JDCT_DEFAULT: default method (normally JDCT_ISLOW)
+ JDCT_FASTEST: fastest method (normally JDCT_IFAST)
+ The FLOAT method is very slightly more accurate than the ISLOW method,
+ but may give different results on different machines due to varying
+ roundoff behavior. The integer methods should give the same results
+ on all machines. On machines with sufficiently fast FP hardware, the
+ floating-point method may also be the fastest. The IFAST method is
+ considerably less accurate than the other two; its use is not
+ recommended if high quality is a concern. JDCT_DEFAULT and
+ JDCT_FASTEST are macros configurable by each installation.
+
+J_COLOR_SPACE jpeg_color_space
+int num_components
+ The JPEG color space and corresponding number of components; see
+ "Special color spaces", below, for more info. We recommend using
+ jpeg_set_color_space() if you want to change these.
+
+boolean optimize_coding
+ TRUE causes the compressor to compute optimal Huffman coding tables
+ for the image. This requires an extra pass over the data and
+ therefore costs a good deal of space and time. The default is
+ FALSE, which tells the compressor to use the supplied or default
+ Huffman tables. In most cases optimal tables save only a few percent
+ of file size compared to the default tables. Note that when this is
+ TRUE, you need not supply Huffman tables at all, and any you do
+ supply will be overwritten.
+
+unsigned int restart_interval
+int restart_in_rows
+ To emit restart markers in the JPEG file, set one of these nonzero.
+ Set restart_interval to specify the exact interval in MCU blocks.
+ Set restart_in_rows to specify the interval in MCU rows. (If
+ restart_in_rows is not 0, then restart_interval is set after the
+ image width in MCUs is computed.) Defaults are zero (no restarts).
+ One restart marker per MCU row is often a good choice.
+ NOTE: the overhead of restart markers is higher in grayscale JPEG
+ files than in color files, and MUCH higher in progressive JPEGs.
+ If you use restarts, you may want to use larger intervals in those
+ cases.
+
+const jpeg_scan_info * scan_info
+int num_scans
+ By default, scan_info is NULL; this causes the compressor to write a
+ single-scan sequential JPEG file. If not NULL, scan_info points to
+ an array of scan definition records of length num_scans. The
+ compressor will then write a JPEG file having one scan for each scan
+ definition record. This is used to generate noninterleaved or
+ progressive JPEG files. The library checks that the scan array
+ defines a valid JPEG scan sequence. (jpeg_simple_progression creates
+ a suitable scan definition array for progressive JPEG.) This is
+ discussed further under "Progressive JPEG support".
+
+int smoothing_factor
+ If non-zero, the input image is smoothed; the value should be 1 for
+ minimal smoothing to 100 for maximum smoothing. Consult jcsample.c
+ for details of the smoothing algorithm. The default is zero.
+
+boolean write_JFIF_header
+ If TRUE, a JFIF APP0 marker is emitted. jpeg_set_defaults() and
+ jpeg_set_colorspace() set this TRUE if a JFIF-legal JPEG color space
+ (ie, YCbCr or grayscale) is selected, otherwise FALSE.
+
+UINT8 JFIF_major_version
+UINT8 JFIF_minor_version
+ The version number to be written into the JFIF marker.
+ jpeg_set_defaults() initializes the version to 1.01 (major=minor=1).
+ You should set it to 1.02 (major=1, minor=2) if you plan to write
+ any JFIF 1.02 extension markers.
+
+UINT8 density_unit
+UINT16 X_density
+UINT16 Y_density
+ The resolution information to be written into the JFIF marker;
+ not used otherwise. density_unit may be 0 for unknown,
+ 1 for dots/inch, or 2 for dots/cm. The default values are 0,1,1
+ indicating square pixels of unknown size.
+
+boolean write_Adobe_marker
+ If TRUE, an Adobe APP14 marker is emitted. jpeg_set_defaults() and
+ jpeg_set_colorspace() set this TRUE if JPEG color space RGB, CMYK,
+ or YCCK is selected, otherwise FALSE. It is generally a bad idea
+ to set both write_JFIF_header and write_Adobe_marker. In fact,
+ you probably shouldn't change the default settings at all --- the
+ default behavior ensures that the JPEG file's color space can be
+ recognized by the decoder.
+
+JQUANT_TBL * quant_tbl_ptrs[NUM_QUANT_TBLS]
+ Pointers to coefficient quantization tables, one per table slot,
+ or NULL if no table is defined for a slot. Usually these should
+ be set via one of the above helper routines; jpeg_add_quant_table()
+ is general enough to define any quantization table. The other
+ routines will set up table slot 0 for luminance quality and table
+ slot 1 for chrominance.
+
+JHUFF_TBL * dc_huff_tbl_ptrs[NUM_HUFF_TBLS]
+JHUFF_TBL * ac_huff_tbl_ptrs[NUM_HUFF_TBLS]
+ Pointers to Huffman coding tables, one per table slot, or NULL if
+ no table is defined for a slot. Slots 0 and 1 are filled with the
+ JPEG sample tables by jpeg_set_defaults(). If you need to allocate
+ more table structures, jpeg_alloc_huff_table() may be used.
+ Note that optimal Huffman tables can be computed for an image
+ by setting optimize_coding, as discussed above; there's seldom
+ any need to mess with providing your own Huffman tables.
+
+There are some additional cinfo fields which are not documented here
+because you currently can't change them; for example, you can't set
+arith_code TRUE because arithmetic coding is unsupported.
+
+
+Per-component parameters are stored in the struct cinfo.comp_info[i] for
+component number i. Note that components here refer to components of the
+JPEG color space, *not* the source image color space. A suitably large
+comp_info[] array is allocated by jpeg_set_defaults(); if you choose not
+to use that routine, it's up to you to allocate the array.
+
+int component_id
+ The one-byte identifier code to be recorded in the JPEG file for
+ this component. For the standard color spaces, we recommend you
+ leave the default values alone.
+
+int h_samp_factor
+int v_samp_factor
+ Horizontal and vertical sampling factors for the component; must
+ be 1..4 according to the JPEG standard. Note that larger sampling
+ factors indicate a higher-resolution component; many people find
+ this behavior quite unintuitive. The default values are 2,2 for
+ luminance components and 1,1 for chrominance components, except
+ for grayscale where 1,1 is used.
+
+int quant_tbl_no
+ Quantization table number for component. The default value is
+ 0 for luminance components and 1 for chrominance components.
+
+int dc_tbl_no
+int ac_tbl_no
+ DC and AC entropy coding table numbers. The default values are
+ 0 for luminance components and 1 for chrominance components.
+
+int component_index
+ Must equal the component's index in comp_info[]. (Beginning in
+ release v6, the compressor library will fill this in automatically;
+ you don't have to.)
+
+
+Decompression parameter selection
+---------------------------------
+
+Decompression parameter selection is somewhat simpler than compression
+parameter selection, since all of the JPEG internal parameters are
+recorded in the source file and need not be supplied by the application.
+(Unless you are working with abbreviated files, in which case see
+"Abbreviated datastreams", below.) Decompression parameters control
+the postprocessing done on the image to deliver it in a format suitable
+for the application's use. Many of the parameters control speed/quality
+tradeoffs, in which faster decompression may be obtained at the price of
+a poorer-quality image. The defaults select the highest quality (slowest)
+processing.
+
+The following fields in the JPEG object are set by jpeg_read_header() and
+may be useful to the application in choosing decompression parameters:
+
+JDIMENSION image_width Width and height of image
+JDIMENSION image_height
+int num_components Number of color components
+J_COLOR_SPACE jpeg_color_space Colorspace of image
+boolean saw_JFIF_marker TRUE if a JFIF APP0 marker was seen
+ UINT8 JFIF_major_version Version information from JFIF marker
+ UINT8 JFIF_minor_version
+ UINT8 density_unit Resolution data from JFIF marker
+ UINT16 X_density
+ UINT16 Y_density
+boolean saw_Adobe_marker TRUE if an Adobe APP14 marker was seen
+ UINT8 Adobe_transform Color transform code from Adobe marker
+
+The JPEG color space, unfortunately, is something of a guess since the JPEG
+standard proper does not provide a way to record it. In practice most files
+adhere to the JFIF or Adobe conventions, and the decoder will recognize these
+correctly. See "Special color spaces", below, for more info.
+
+
+The decompression parameters that determine the basic properties of the
+returned image are:
+
+J_COLOR_SPACE out_color_space
+ Output color space. jpeg_read_header() sets an appropriate default
+ based on jpeg_color_space; typically it will be RGB or grayscale.
+ The application can change this field to request output in a different
+ colorspace. For example, set it to JCS_GRAYSCALE to get grayscale
+ output from a color file. (This is useful for previewing: grayscale
+ output is faster than full color since the color components need not
+ be processed.) Note that not all possible color space transforms are
+ currently implemented; you may need to extend jdcolor.c if you want an
+ unusual conversion.
+
+unsigned int scale_num, scale_denom
+ Scale the image by the fraction scale_num/scale_denom. Default is
+ 1/1, or no scaling. Currently, the only supported scaling ratios
+ are 1/1, 1/2, 1/4, and 1/8. (The library design allows for arbitrary
+ scaling ratios but this is not likely to be implemented any time soon.)
+ Smaller scaling ratios permit significantly faster decoding since
+ fewer pixels need be processed and a simpler IDCT method can be used.
+
+boolean quantize_colors
+ If set TRUE, colormapped output will be delivered. Default is FALSE,
+ meaning that full-color output will be delivered.
+
+The next three parameters are relevant only if quantize_colors is TRUE.
+
+int desired_number_of_colors
+ Maximum number of colors to use in generating a library-supplied color
+ map (the actual number of colors is returned in a different field).
+ Default 256. Ignored when the application supplies its own color map.
+
+boolean two_pass_quantize
+ If TRUE, an extra pass over the image is made to select a custom color
+ map for the image. This usually looks a lot better than the one-size-
+ fits-all colormap that is used otherwise. Default is TRUE. Ignored
+ when the application supplies its own color map.
+
+J_DITHER_MODE dither_mode
+ Selects color dithering method. Supported values are:
+ JDITHER_NONE no dithering: fast, very low quality
+ JDITHER_ORDERED ordered dither: moderate speed and quality
+ JDITHER_FS Floyd-Steinberg dither: slow, high quality
+ Default is JDITHER_FS. (At present, ordered dither is implemented
+ only in the single-pass, standard-colormap case. If you ask for
+ ordered dither when two_pass_quantize is TRUE or when you supply
+ an external color map, you'll get F-S dithering.)
+
+When quantize_colors is TRUE, the target color map is described by the next
+two fields. colormap is set to NULL by jpeg_read_header(). The application
+can supply a color map by setting colormap non-NULL and setting
+actual_number_of_colors to the map size. Otherwise, jpeg_start_decompress()
+selects a suitable color map and sets these two fields itself.
+[Implementation restriction: at present, an externally supplied colormap is
+only accepted for 3-component output color spaces.]
+
+JSAMPARRAY colormap
+ The color map, represented as a 2-D pixel array of out_color_components
+ rows and actual_number_of_colors columns. Ignored if not quantizing.
+ CAUTION: if the JPEG library creates its own colormap, the storage
+ pointed to by this field is released by jpeg_finish_decompress().
+ Copy the colormap somewhere else first, if you want to save it.
+
+int actual_number_of_colors
+ The number of colors in the color map.
+
+Additional decompression parameters that the application may set include:
+
+J_DCT_METHOD dct_method
+ Selects the algorithm used for the DCT step. Choices are the same
+ as described above for compression.
+
+boolean do_fancy_upsampling
+ If TRUE, do careful upsampling of chroma components. If FALSE,
+ a faster but sloppier method is used. Default is TRUE. The visual
+ impact of the sloppier method is often very small.
+
+boolean do_block_smoothing
+ If TRUE, interblock smoothing is applied in early stages of decoding
+ progressive JPEG files; if FALSE, not. Default is TRUE. Early
+ progression stages look "fuzzy" with smoothing, "blocky" without.
+ In any case, block smoothing ceases to be applied after the first few
+ AC coefficients are known to full accuracy, so it is relevant only
+ when using buffered-image mode for progressive images.
+
+boolean enable_1pass_quant
+boolean enable_external_quant
+boolean enable_2pass_quant
+ These are significant only in buffered-image mode, which is
+ described in its own section below.
+
+
+The output image dimensions are given by the following fields. These are
+computed from the source image dimensions and the decompression parameters
+by jpeg_start_decompress(). You can also call jpeg_calc_output_dimensions()
+to obtain the values that will result from the current parameter settings.
+This can be useful if you are trying to pick a scaling ratio that will get
+close to a desired target size. It's also important if you are using the
+JPEG library's memory manager to allocate output buffer space, because you
+are supposed to request such buffers *before* jpeg_start_decompress().
+
+JDIMENSION output_width Actual dimensions of output image.
+JDIMENSION output_height
+int out_color_components Number of color components in out_color_space.
+int output_components Number of color components returned.
+int rec_outbuf_height Recommended height of scanline buffer.
+
+When quantizing colors, output_components is 1, indicating a single color map
+index per pixel. Otherwise it equals out_color_components. The output arrays
+are required to be output_width * output_components JSAMPLEs wide.
+
+rec_outbuf_height is the recommended minimum height (in scanlines) of the
+buffer passed to jpeg_read_scanlines(). If the buffer is smaller, the
+library will still work, but time will be wasted due to unnecessary data
+copying. In high-quality modes, rec_outbuf_height is always 1, but some
+faster, lower-quality modes set it to larger values (typically 2 to 4).
+If you are going to ask for a high-speed processing mode, you may as well
+go to the trouble of honoring rec_outbuf_height so as to avoid data copying.
+(An output buffer larger than rec_outbuf_height lines is OK, but won't
+provide any material speed improvement over that height.)
+
+
+Special color spaces
+--------------------
+
+The JPEG standard itself is "color blind" and doesn't specify any particular
+color space. It is customary to convert color data to a luminance/chrominance
+color space before compressing, since this permits greater compression. The
+existing de-facto JPEG file format standards specify YCbCr or grayscale data
+(JFIF), or grayscale, RGB, YCbCr, CMYK, or YCCK (Adobe). For special
+applications such as multispectral images, other color spaces can be used,
+but it must be understood that such files will be unportable.
+
+The JPEG library can handle the most common colorspace conversions (namely
+RGB <=> YCbCr and CMYK <=> YCCK). It can also deal with data of an unknown
+color space, passing it through without conversion. If you deal extensively
+with an unusual color space, you can easily extend the library to understand
+additional color spaces and perform appropriate conversions.
+
+For compression, the source data's color space is specified by field
+in_color_space. This is transformed to the JPEG file's color space given
+by jpeg_color_space. jpeg_set_defaults() chooses a reasonable JPEG color
+space depending on in_color_space, but you can override this by calling
+jpeg_set_colorspace(). Of course you must select a supported transformation.
+jccolor.c currently supports the following transformations:
+ RGB => YCbCr
+ RGB => GRAYSCALE
+ YCbCr => GRAYSCALE
+ CMYK => YCCK
+plus the null transforms: GRAYSCALE => GRAYSCALE, RGB => RGB,
+YCbCr => YCbCr, CMYK => CMYK, YCCK => YCCK, and UNKNOWN => UNKNOWN.
+
+The de-facto file format standards (JFIF and Adobe) specify APPn markers that
+indicate the color space of the JPEG file. It is important to ensure that
+these are written correctly, or omitted if the JPEG file's color space is not
+one of the ones supported by the de-facto standards. jpeg_set_colorspace()
+will set the compression parameters to include or omit the APPn markers
+properly, so long as it is told the truth about the JPEG color space.
+For example, if you are writing some random 3-component color space without
+conversion, don't try to fake out the library by setting in_color_space and
+jpeg_color_space to JCS_YCbCr; use JCS_UNKNOWN. You may want to write an
+APPn marker of your own devising to identify the colorspace --- see "Special
+markers", below.
+
+When told that the color space is UNKNOWN, the library will default to using
+luminance-quality compression parameters for all color components. You may
+well want to change these parameters. See the source code for
+jpeg_set_colorspace(), in jcparam.c, for details.
+
+For decompression, the JPEG file's color space is given in jpeg_color_space,
+and this is transformed to the output color space out_color_space.
+jpeg_read_header's setting of jpeg_color_space can be relied on if the file
+conforms to JFIF or Adobe conventions, but otherwise it is no better than a
+guess. If you know the JPEG file's color space for certain, you can override
+jpeg_read_header's guess by setting jpeg_color_space. jpeg_read_header also
+selects a default output color space based on (its guess of) jpeg_color_space;
+set out_color_space to override this. Again, you must select a supported
+transformation. jdcolor.c currently supports
+ YCbCr => GRAYSCALE
+ YCbCr => RGB
+ GRAYSCALE => RGB
+ YCCK => CMYK
+as well as the null transforms. (Since GRAYSCALE=>RGB is provided, an
+application can force grayscale JPEGs to look like color JPEGs if it only
+wants to handle one case.)
+
+The two-pass color quantizer, jquant2.c, is specialized to handle RGB data
+(it weights distances appropriately for RGB colors). You'll need to modify
+the code if you want to use it for non-RGB output color spaces. Note that
+jquant2.c is used to map to an application-supplied colormap as well as for
+the normal two-pass colormap selection process.
+
+CAUTION: it appears that Adobe Photoshop writes inverted data in CMYK JPEG
+files: 0 represents 100% ink coverage, rather than 0% ink as you'd expect.
+This is arguably a bug in Photoshop, but if you need to work with Photoshop
+CMYK files, you will have to deal with it in your application. We cannot
+"fix" this in the library by inverting the data during the CMYK<=>YCCK
+transform, because that would break other applications, notably Ghostscript.
+Photoshop versions prior to 3.0 write EPS files containing JPEG-encoded CMYK
+data in the same inverted-YCCK representation used in bare JPEG files, but
+the surrounding PostScript code performs an inversion using the PS image
+operator. I am told that Photoshop 3.0 will write uninverted YCCK in
+EPS/JPEG files, and will omit the PS-level inversion. (But the data
+polarity used in bare JPEG files will not change in 3.0.) In either case,
+the JPEG library must not invert the data itself, or else Ghostscript would
+read these EPS files incorrectly.
+
+
+Error handling
+--------------
+
+When the default error handler is used, any error detected inside the JPEG
+routines will cause a message to be printed on stderr, followed by exit().
+You can supply your own error handling routines to override this behavior
+and to control the treatment of nonfatal warnings and trace/debug messages.
+The file example.c illustrates the most common case, which is to have the
+application regain control after an error rather than exiting.
+
+The JPEG library never writes any message directly; it always goes through
+the error handling routines. Three classes of messages are recognized:
+ * Fatal errors: the library cannot continue.
+ * Warnings: the library can continue, but the data is corrupt, and a
+ damaged output image is likely to result.
+ * Trace/informational messages. These come with a trace level indicating
+ the importance of the message; you can control the verbosity of the
+ program by adjusting the maximum trace level that will be displayed.
+
+You may, if you wish, simply replace the entire JPEG error handling module
+(jerror.c) with your own code. However, you can avoid code duplication by
+only replacing some of the routines depending on the behavior you need.
+This is accomplished by calling jpeg_std_error() as usual, but then overriding
+some of the method pointers in the jpeg_error_mgr struct, as illustrated by
+example.c.
+
+All of the error handling routines will receive a pointer to the JPEG object
+(a j_common_ptr which points to either a jpeg_compress_struct or a
+jpeg_decompress_struct; if you need to tell which, test the is_decompressor
+field). This struct includes a pointer to the error manager struct in its
+"err" field. Frequently, custom error handler routines will need to access
+additional data which is not known to the JPEG library or the standard error
+handler. The most convenient way to do this is to embed either the JPEG
+object or the jpeg_error_mgr struct in a larger structure that contains
+additional fields; then casting the passed pointer provides access to the
+additional fields. Again, see example.c for one way to do it. (Beginning
+with IJG version 6b, there is also a void pointer "client_data" in each
+JPEG object, which the application can also use to find related data.
+The library does not touch client_data at all.)
+
+The individual methods that you might wish to override are:
+
+error_exit (j_common_ptr cinfo)
+ Receives control for a fatal error. Information sufficient to
+ generate the error message has been stored in cinfo->err; call
+ output_message to display it. Control must NOT return to the caller;
+ generally this routine will exit() or longjmp() somewhere.
+ Typically you would override this routine to get rid of the exit()
+ default behavior. Note that if you continue processing, you should
+ clean up the JPEG object with jpeg_abort() or jpeg_destroy().
+
+output_message (j_common_ptr cinfo)
+ Actual output of any JPEG message. Override this to send messages
+ somewhere other than stderr. Note that this method does not know
+ how to generate a message, only where to send it.
+
+format_message (j_common_ptr cinfo, char * buffer)
+ Constructs a readable error message string based on the error info
+ stored in cinfo->err. This method is called by output_message. Few
+ applications should need to override this method. One possible
+ reason for doing so is to implement dynamic switching of error message
+ language.
+
+emit_message (j_common_ptr cinfo, int msg_level)
+ Decide whether or not to emit a warning or trace message; if so,
+ calls output_message. The main reason for overriding this method
+ would be to abort on warnings. msg_level is -1 for warnings,
+ 0 and up for trace messages.
+
+Only error_exit() and emit_message() are called from the rest of the JPEG
+library; the other two are internal to the error handler.
+
+The actual message texts are stored in an array of strings which is pointed to
+by the field err->jpeg_message_table. The messages are numbered from 0 to
+err->last_jpeg_message, and it is these code numbers that are used in the
+JPEG library code. You could replace the message texts (for instance, with
+messages in French or German) by changing the message table pointer. See
+jerror.h for the default texts. CAUTION: this table will almost certainly
+change or grow from one library version to the next.
+
+It may be useful for an application to add its own message texts that are
+handled by the same mechanism. The error handler supports a second "add-on"
+message table for this purpose. To define an addon table, set the pointer
+err->addon_message_table and the message numbers err->first_addon_message and
+err->last_addon_message. If you number the addon messages beginning at 1000
+or so, you won't have to worry about conflicts with the library's built-in
+messages. See the sample applications cjpeg/djpeg for an example of using
+addon messages (the addon messages are defined in cderror.h).
+
+Actual invocation of the error handler is done via macros defined in jerror.h:
+ ERREXITn(...) for fatal errors
+ WARNMSn(...) for corrupt-data warnings
+ TRACEMSn(...) for trace and informational messages.
+These macros store the message code and any additional parameters into the
+error handler struct, then invoke the error_exit() or emit_message() method.
+The variants of each macro are for varying numbers of additional parameters.
+The additional parameters are inserted into the generated message using
+standard printf() format codes.
+
+See jerror.h and jerror.c for further details.
+
+
+Compressed data handling (source and destination managers)
+----------------------------------------------------------
+
+The JPEG compression library sends its compressed data to a "destination
+manager" module. The default destination manager just writes the data to a
+stdio stream, but you can provide your own manager to do something else.
+Similarly, the decompression library calls a "source manager" to obtain the
+compressed data; you can provide your own source manager if you want the data
+to come from somewhere other than a stdio stream.
+
+In both cases, compressed data is processed a bufferload at a time: the
+destination or source manager provides a work buffer, and the library invokes
+the manager only when the buffer is filled or emptied. (You could define a
+one-character buffer to force the manager to be invoked for each byte, but
+that would be rather inefficient.) The buffer's size and location are
+controlled by the manager, not by the library. For example, if you desired to
+decompress a JPEG datastream that was all in memory, you could just make the
+buffer pointer and length point to the original data in memory. Then the
+buffer-reload procedure would be invoked only if the decompressor ran off the
+end of the datastream, which would indicate an erroneous datastream.
+
+The work buffer is defined as an array of datatype JOCTET, which is generally
+"char" or "unsigned char". On a machine where char is not exactly 8 bits
+wide, you must define JOCTET as a wider data type and then modify the data
+source and destination modules to transcribe the work arrays into 8-bit units
+on external storage.
+
+A data destination manager struct contains a pointer and count defining the
+next byte to write in the work buffer and the remaining free space:
+
+ JOCTET * next_output_byte; /* => next byte to write in buffer */
+ size_t free_in_buffer; /* # of byte spaces remaining in buffer */
+
+The library increments the pointer and decrements the count until the buffer
+is filled. The manager's empty_output_buffer method must reset the pointer
+and count. The manager is expected to remember the buffer's starting address
+and total size in private fields not visible to the library.
+
+A data destination manager provides three methods:
+
+init_destination (j_compress_ptr cinfo)
+ Initialize destination. This is called by jpeg_start_compress()
+ before any data is actually written. It must initialize
+ next_output_byte and free_in_buffer. free_in_buffer must be
+ initialized to a positive value.
+
+empty_output_buffer (j_compress_ptr cinfo)
+ This is called whenever the buffer has filled (free_in_buffer
+ reaches zero). In typical applications, it should write out the
+ *entire* buffer (use the saved start address and buffer length;
+ ignore the current state of next_output_byte and free_in_buffer).
+ Then reset the pointer & count to the start of the buffer, and
+ return TRUE indicating that the buffer has been dumped.
+ free_in_buffer must be set to a positive value when TRUE is
+ returned. A FALSE return should only be used when I/O suspension is
+ desired (this operating mode is discussed in the next section).
+
+term_destination (j_compress_ptr cinfo)
+ Terminate destination --- called by jpeg_finish_compress() after all
+ data has been written. In most applications, this must flush any
+ data remaining in the buffer. Use either next_output_byte or
+ free_in_buffer to determine how much data is in the buffer.
+
+term_destination() is NOT called by jpeg_abort() or jpeg_destroy(). If you
+want the destination manager to be cleaned up during an abort, you must do it
+yourself.
+
+You will also need code to create a jpeg_destination_mgr struct, fill in its
+method pointers, and insert a pointer to the struct into the "dest" field of
+the JPEG compression object. This can be done in-line in your setup code if
+you like, but it's probably cleaner to provide a separate routine similar to
+the jpeg_stdio_dest() routine of the supplied destination manager.
+
+Decompression source managers follow a parallel design, but with some
+additional frammishes. The source manager struct contains a pointer and count
+defining the next byte to read from the work buffer and the number of bytes
+remaining:
+
+ const JOCTET * next_input_byte; /* => next byte to read from buffer */
+ size_t bytes_in_buffer; /* # of bytes remaining in buffer */
+
+The library increments the pointer and decrements the count until the buffer
+is emptied. The manager's fill_input_buffer method must reset the pointer and
+count. In most applications, the manager must remember the buffer's starting
+address and total size in private fields not visible to the library.
+
+A data source manager provides five methods:
+
+init_source (j_decompress_ptr cinfo)
+ Initialize source. This is called by jpeg_read_header() before any
+ data is actually read. Unlike init_destination(), it may leave
+ bytes_in_buffer set to 0 (in which case a fill_input_buffer() call
+ will occur immediately).
+
+fill_input_buffer (j_decompress_ptr cinfo)
+ This is called whenever bytes_in_buffer has reached zero and more
+ data is wanted. In typical applications, it should read fresh data
+ into the buffer (ignoring the current state of next_input_byte and
+ bytes_in_buffer), reset the pointer & count to the start of the
+ buffer, and return TRUE indicating that the buffer has been reloaded.
+ It is not necessary to fill the buffer entirely, only to obtain at
+ least one more byte. bytes_in_buffer MUST be set to a positive value
+ if TRUE is returned. A FALSE return should only be used when I/O
+ suspension is desired (this mode is discussed in the next section).
+
+skip_input_data (j_decompress_ptr cinfo, long num_bytes)
+ Skip num_bytes worth of data. The buffer pointer and count should
+ be advanced over num_bytes input bytes, refilling the buffer as
+ needed. This is used to skip over a potentially large amount of
+ uninteresting data (such as an APPn marker). In some applications
+ it may be possible to optimize away the reading of the skipped data,
+ but it's not clear that being smart is worth much trouble; large
+ skips are uncommon. bytes_in_buffer may be zero on return.
+ A zero or negative skip count should be treated as a no-op.
+
+resync_to_restart (j_decompress_ptr cinfo, int desired)
+ This routine is called only when the decompressor has failed to find
+ a restart (RSTn) marker where one is expected. Its mission is to
+ find a suitable point for resuming decompression. For most
+ applications, we recommend that you just use the default resync
+ procedure, jpeg_resync_to_restart(). However, if you are able to back
+ up in the input data stream, or if you have a-priori knowledge about
+ the likely location of restart markers, you may be able to do better.
+ Read the read_restart_marker() and jpeg_resync_to_restart() routines
+ in jdmarker.c if you think you'd like to implement your own resync
+ procedure.
+
+term_source (j_decompress_ptr cinfo)
+ Terminate source --- called by jpeg_finish_decompress() after all
+ data has been read. Often a no-op.
+
+For both fill_input_buffer() and skip_input_data(), there is no such thing
+as an EOF return. If the end of the file has been reached, the routine has
+a choice of exiting via ERREXIT() or inserting fake data into the buffer.
+In most cases, generating a warning message and inserting a fake EOI marker
+is the best course of action --- this will allow the decompressor to output
+however much of the image is there. In pathological cases, the decompressor
+may swallow the EOI and again demand data ... just keep feeding it fake EOIs.
+jdatasrc.c illustrates the recommended error recovery behavior.
+
+term_source() is NOT called by jpeg_abort() or jpeg_destroy(). If you want
+the source manager to be cleaned up during an abort, you must do it yourself.
+
+You will also need code to create a jpeg_source_mgr struct, fill in its method
+pointers, and insert a pointer to the struct into the "src" field of the JPEG
+decompression object. This can be done in-line in your setup code if you
+like, but it's probably cleaner to provide a separate routine similar to the
+jpeg_stdio_src() routine of the supplied source manager.
+
+For more information, consult the stdio source and destination managers
+in jdatasrc.c and jdatadst.c.
+
+
+I/O suspension
+--------------
+
+Some applications need to use the JPEG library as an incremental memory-to-
+memory filter: when the compressed data buffer is filled or emptied, they want
+control to return to the outer loop, rather than expecting that the buffer can
+be emptied or reloaded within the data source/destination manager subroutine.
+The library supports this need by providing an "I/O suspension" mode, which we
+describe in this section.
+
+The I/O suspension mode is not a panacea: nothing is guaranteed about the
+maximum amount of time spent in any one call to the library, so it will not
+eliminate response-time problems in single-threaded applications. If you
+need guaranteed response time, we suggest you "bite the bullet" and implement
+a real multi-tasking capability.
+
+To use I/O suspension, cooperation is needed between the calling application
+and the data source or destination manager; you will always need a custom
+source/destination manager. (Please read the previous section if you haven't
+already.) The basic idea is that the empty_output_buffer() or
+fill_input_buffer() routine is a no-op, merely returning FALSE to indicate
+that it has done nothing. Upon seeing this, the JPEG library suspends
+operation and returns to its caller. The surrounding application is
+responsible for emptying or refilling the work buffer before calling the
+JPEG library again.
+
+Compression suspension:
+
+For compression suspension, use an empty_output_buffer() routine that returns
+FALSE; typically it will not do anything else. This will cause the
+compressor to return to the caller of jpeg_write_scanlines(), with the return
+value indicating that not all the supplied scanlines have been accepted.
+The application must make more room in the output buffer, adjust the output
+buffer pointer/count appropriately, and then call jpeg_write_scanlines()
+again, pointing to the first unconsumed scanline.
+
+When forced to suspend, the compressor will backtrack to a convenient stopping
+point (usually the start of the current MCU); it will regenerate some output
+data when restarted. Therefore, although empty_output_buffer() is only
+called when the buffer is filled, you should NOT write out the entire buffer
+after a suspension. Write only the data up to the current position of
+next_output_byte/free_in_buffer. The data beyond that point will be
+regenerated after resumption.
+
+Because of the backtracking behavior, a good-size output buffer is essential
+for efficiency; you don't want the compressor to suspend often. (In fact, an
+overly small buffer could lead to infinite looping, if a single MCU required
+more data than would fit in the buffer.) We recommend a buffer of at least
+several Kbytes. You may want to insert explicit code to ensure that you don't
+call jpeg_write_scanlines() unless there is a reasonable amount of space in
+the output buffer; in other words, flush the buffer before trying to compress
+more data.
+
+The compressor does not allow suspension while it is trying to write JPEG
+markers at the beginning and end of the file. This means that:
+ * At the beginning of a compression operation, there must be enough free
+ space in the output buffer to hold the header markers (typically 600 or
+ so bytes). The recommended buffer size is bigger than this anyway, so
+ this is not a problem as long as you start with an empty buffer. However,
+ this restriction might catch you if you insert large special markers, such
+ as a JFIF thumbnail image, without flushing the buffer afterwards.
+ * When you call jpeg_finish_compress(), there must be enough space in the
+ output buffer to emit any buffered data and the final EOI marker. In the
+ current implementation, half a dozen bytes should suffice for this, but
+ for safety's sake we recommend ensuring that at least 100 bytes are free
+ before calling jpeg_finish_compress().
+
+A more significant restriction is that jpeg_finish_compress() cannot suspend.
+This means you cannot use suspension with multi-pass operating modes, namely
+Huffman code optimization and multiple-scan output. Those modes write the
+whole file during jpeg_finish_compress(), which will certainly result in
+buffer overrun. (Note that this restriction applies only to compression,
+not decompression. The decompressor supports input suspension in all of its
+operating modes.)
+
+Decompression suspension:
+
+For decompression suspension, use a fill_input_buffer() routine that simply
+returns FALSE (except perhaps during error recovery, as discussed below).
+This will cause the decompressor to return to its caller with an indication
+that suspension has occurred. This can happen at four places:
+ * jpeg_read_header(): will return JPEG_SUSPENDED.
+ * jpeg_start_decompress(): will return FALSE, rather than its usual TRUE.
+ * jpeg_read_scanlines(): will return the number of scanlines already
+ completed (possibly 0).
+ * jpeg_finish_decompress(): will return FALSE, rather than its usual TRUE.
+The surrounding application must recognize these cases, load more data into
+the input buffer, and repeat the call. In the case of jpeg_read_scanlines(),
+increment the passed pointers past any scanlines successfully read.
+
+Just as with compression, the decompressor will typically backtrack to a
+convenient restart point before suspending. When fill_input_buffer() is
+called, next_input_byte/bytes_in_buffer point to the current restart point,
+which is where the decompressor will backtrack to if FALSE is returned.
+The data beyond that position must NOT be discarded if you suspend; it needs
+to be re-read upon resumption. In most implementations, you'll need to shift
+this data down to the start of your work buffer and then load more data after
+it. Again, this behavior means that a several-Kbyte work buffer is essential
+for decent performance; furthermore, you should load a reasonable amount of
+new data before resuming decompression. (If you loaded, say, only one new
+byte each time around, you could waste a LOT of cycles.)
+
+The skip_input_data() source manager routine requires special care in a
+suspension scenario. This routine is NOT granted the ability to suspend the
+decompressor; it can decrement bytes_in_buffer to zero, but no more. If the
+requested skip distance exceeds the amount of data currently in the input
+buffer, then skip_input_data() must set bytes_in_buffer to zero and record the
+additional skip distance somewhere else. The decompressor will immediately
+call fill_input_buffer(), which should return FALSE, which will cause a
+suspension return. The surrounding application must then arrange to discard
+the recorded number of bytes before it resumes loading the input buffer.
+(Yes, this design is rather baroque, but it avoids complexity in the far more
+common case where a non-suspending source manager is used.)
+
+If the input data has been exhausted, we recommend that you emit a warning
+and insert dummy EOI markers just as a non-suspending data source manager
+would do. This can be handled either in the surrounding application logic or
+within fill_input_buffer(); the latter is probably more efficient. If
+fill_input_buffer() knows that no more data is available, it can set the
+pointer/count to point to a dummy EOI marker and then return TRUE just as
+though it had read more data in a non-suspending situation.
+
+The decompressor does not attempt to suspend within standard JPEG markers;
+instead it will backtrack to the start of the marker and reprocess the whole
+marker next time. Hence the input buffer must be large enough to hold the
+longest standard marker in the file. Standard JPEG markers should normally
+not exceed a few hundred bytes each (DHT tables are typically the longest).
+We recommend at least a 2K buffer for performance reasons, which is much
+larger than any correct marker is likely to be. For robustness against
+damaged marker length counts, you may wish to insert a test in your
+application for the case that the input buffer is completely full and yet
+the decoder has suspended without consuming any data --- otherwise, if this
+situation did occur, it would lead to an endless loop. (The library can't
+provide this test since it has no idea whether "the buffer is full", or
+even whether there is a fixed-size input buffer.)
+
+The input buffer would need to be 64K to allow for arbitrary COM or APPn
+markers, but these are handled specially: they are either saved into allocated
+memory, or skipped over by calling skip_input_data(). In the former case,
+suspension is handled correctly, and in the latter case, the problem of
+buffer overrun is placed on skip_input_data's shoulders, as explained above.
+Note that if you provide your own marker handling routine for large markers,
+you should consider how to deal with buffer overflow.
+
+Multiple-buffer management:
+
+In some applications it is desirable to store the compressed data in a linked
+list of buffer areas, so as to avoid data copying. This can be handled by
+having empty_output_buffer() or fill_input_buffer() set the pointer and count
+to reference the next available buffer; FALSE is returned only if no more
+buffers are available. Although seemingly straightforward, there is a
+pitfall in this approach: the backtrack that occurs when FALSE is returned
+could back up into an earlier buffer. For example, when fill_input_buffer()
+is called, the current pointer & count indicate the backtrack restart point.
+Since fill_input_buffer() will set the pointer and count to refer to a new
+buffer, the restart position must be saved somewhere else. Suppose a second
+call to fill_input_buffer() occurs in the same library call, and no
+additional input data is available, so fill_input_buffer must return FALSE.
+If the JPEG library has not moved the pointer/count forward in the current
+buffer, then *the correct restart point is the saved position in the prior
+buffer*. Prior buffers may be discarded only after the library establishes
+a restart point within a later buffer. Similar remarks apply for output into
+a chain of buffers.
+
+The library will never attempt to backtrack over a skip_input_data() call,
+so any skipped data can be permanently discarded. You still have to deal
+with the case of skipping not-yet-received data, however.
+
+It's much simpler to use only a single buffer; when fill_input_buffer() is
+called, move any unconsumed data (beyond the current pointer/count) down to
+the beginning of this buffer and then load new data into the remaining buffer
+space. This approach requires a little more data copying but is far easier
+to get right.
+
+
+Progressive JPEG support
+------------------------
+
+Progressive JPEG rearranges the stored data into a series of scans of
+increasing quality. In situations where a JPEG file is transmitted across a
+slow communications link, a decoder can generate a low-quality image very
+quickly from the first scan, then gradually improve the displayed quality as
+more scans are received. The final image after all scans are complete is
+identical to that of a regular (sequential) JPEG file of the same quality
+setting. Progressive JPEG files are often slightly smaller than equivalent
+sequential JPEG files, but the possibility of incremental display is the main
+reason for using progressive JPEG.
+
+The IJG encoder library generates progressive JPEG files when given a
+suitable "scan script" defining how to divide the data into scans.
+Creation of progressive JPEG files is otherwise transparent to the encoder.
+Progressive JPEG files can also be read transparently by the decoder library.
+If the decoding application simply uses the library as defined above, it
+will receive a final decoded image without any indication that the file was
+progressive. Of course, this approach does not allow incremental display.
+To perform incremental display, an application needs to use the decoder
+library's "buffered-image" mode, in which it receives a decoded image
+multiple times.
+
+Each displayed scan requires about as much work to decode as a full JPEG
+image of the same size, so the decoder must be fairly fast in relation to the
+data transmission rate in order to make incremental display useful. However,
+it is possible to skip displaying the image and simply add the incoming bits
+to the decoder's coefficient buffer. This is fast because only Huffman
+decoding need be done, not IDCT, upsampling, colorspace conversion, etc.
+The IJG decoder library allows the application to switch dynamically between
+displaying the image and simply absorbing the incoming bits. A properly
+coded application can automatically adapt the number of display passes to
+suit the time available as the image is received. Also, a final
+higher-quality display cycle can be performed from the buffered data after
+the end of the file is reached.
+
+Progressive compression:
+
+To create a progressive JPEG file (or a multiple-scan sequential JPEG file),
+set the scan_info cinfo field to point to an array of scan descriptors, and
+perform compression as usual. Instead of constructing your own scan list,
+you can call the jpeg_simple_progression() helper routine to create a
+recommended progression sequence; this method should be used by all
+applications that don't want to get involved in the nitty-gritty of
+progressive scan sequence design. (If you want to provide user control of
+scan sequences, you may wish to borrow the scan script reading code found
+in rdswitch.c, so that you can read scan script files just like cjpeg's.)
+When scan_info is not NULL, the compression library will store DCT'd data
+into a buffer array as jpeg_write_scanlines() is called, and will emit all
+the requested scans during jpeg_finish_compress(). This implies that
+multiple-scan output cannot be created with a suspending data destination
+manager, since jpeg_finish_compress() does not support suspension. We
+should also note that the compressor currently forces Huffman optimization
+mode when creating a progressive JPEG file, because the default Huffman
+tables are unsuitable for progressive files.
+
+Progressive decompression:
+
+When buffered-image mode is not used, the decoder library will read all of
+a multi-scan file during jpeg_start_decompress(), so that it can provide a
+final decoded image. (Here "multi-scan" means either progressive or
+multi-scan sequential.) This makes multi-scan files transparent to the
+decoding application. However, existing applications that used suspending
+input with version 5 of the IJG library will need to be modified to check
+for a suspension return from jpeg_start_decompress().
+
+To perform incremental display, an application must use the library's
+buffered-image mode. This is described in the next section.
+
+
+Buffered-image mode
+-------------------
+
+In buffered-image mode, the library stores the partially decoded image in a
+coefficient buffer, from which it can be read out as many times as desired.
+This mode is typically used for incremental display of progressive JPEG files,
+but it can be used with any JPEG file. Each scan of a progressive JPEG file
+adds more data (more detail) to the buffered image. The application can
+display in lockstep with the source file (one display pass per input scan),
+or it can allow input processing to outrun display processing. By making
+input and display processing run independently, it is possible for the
+application to adapt progressive display to a wide range of data transmission
+rates.
+
+The basic control flow for buffered-image decoding is
+
+ jpeg_create_decompress()
+ set data source
+ jpeg_read_header()
+ set overall decompression parameters
+ cinfo.buffered_image = TRUE; /* select buffered-image mode */
+ jpeg_start_decompress()
+ for (each output pass) {
+ adjust output decompression parameters if required
+ jpeg_start_output() /* start a new output pass */
+ for (all scanlines in image) {
+ jpeg_read_scanlines()
+ display scanlines
+ }
+ jpeg_finish_output() /* terminate output pass */
+ }
+ jpeg_finish_decompress()
+ jpeg_destroy_decompress()
+
+This differs from ordinary unbuffered decoding in that there is an additional
+level of looping. The application can choose how many output passes to make
+and how to display each pass.
+
+The simplest approach to displaying progressive images is to do one display
+pass for each scan appearing in the input file. In this case the outer loop
+condition is typically
+ while (! jpeg_input_complete(&cinfo))
+and the start-output call should read
+ jpeg_start_output(&cinfo, cinfo.input_scan_number);
+The second parameter to jpeg_start_output() indicates which scan of the input
+file is to be displayed; the scans are numbered starting at 1 for this
+purpose. (You can use a loop counter starting at 1 if you like, but using
+the library's input scan counter is easier.) The library automatically reads
+data as necessary to complete each requested scan, and jpeg_finish_output()
+advances to the next scan or end-of-image marker (hence input_scan_number
+will be incremented by the time control arrives back at jpeg_start_output()).
+With this technique, data is read from the input file only as needed, and
+input and output processing run in lockstep.
+
+After reading the final scan and reaching the end of the input file, the
+buffered image remains available; it can be read additional times by
+repeating the jpeg_start_output()/jpeg_read_scanlines()/jpeg_finish_output()
+sequence. For example, a useful technique is to use fast one-pass color
+quantization for display passes made while the image is arriving, followed by
+a final display pass using two-pass quantization for highest quality. This
+is done by changing the library parameters before the final output pass.
+Changing parameters between passes is discussed in detail below.
+
+In general the last scan of a progressive file cannot be recognized as such
+until after it is read, so a post-input display pass is the best approach if
+you want special processing in the final pass.
+
+When done with the image, be sure to call jpeg_finish_decompress() to release
+the buffered image (or just use jpeg_destroy_decompress()).
+
+If input data arrives faster than it can be displayed, the application can
+cause the library to decode input data in advance of what's needed to produce
+output. This is done by calling the routine jpeg_consume_input().
+The return value is one of the following:
+ JPEG_REACHED_SOS: reached an SOS marker (the start of a new scan)
+ JPEG_REACHED_EOI: reached the EOI marker (end of image)
+ JPEG_ROW_COMPLETED: completed reading one MCU row of compressed data
+ JPEG_SCAN_COMPLETED: completed reading last MCU row of current scan
+ JPEG_SUSPENDED: suspended before completing any of the above
+(JPEG_SUSPENDED can occur only if a suspending data source is used.) This
+routine can be called at any time after initializing the JPEG object. It
+reads some additional data and returns when one of the indicated significant
+events occurs. (If called after the EOI marker is reached, it will
+immediately return JPEG_REACHED_EOI without attempting to read more data.)
+
+The library's output processing will automatically call jpeg_consume_input()
+whenever the output processing overtakes the input; thus, simple lockstep
+display requires no direct calls to jpeg_consume_input(). But by adding
+calls to jpeg_consume_input(), you can absorb data in advance of what is
+being displayed. This has two benefits:
+ * You can limit buildup of unprocessed data in your input buffer.
+ * You can eliminate extra display passes by paying attention to the
+ state of the library's input processing.
+
+The first of these benefits only requires interspersing calls to
+jpeg_consume_input() with your display operations and any other processing
+you may be doing. To avoid wasting cycles due to backtracking, it's best to
+call jpeg_consume_input() only after a hundred or so new bytes have arrived.
+This is discussed further under "I/O suspension", above. (Note: the JPEG
+library currently is not thread-safe. You must not call jpeg_consume_input()
+from one thread of control if a different library routine is working on the
+same JPEG object in another thread.)
+
+When input arrives fast enough that more than one new scan is available
+before you start a new output pass, you may as well skip the output pass
+corresponding to the completed scan. This occurs for free if you pass
+cinfo.input_scan_number as the target scan number to jpeg_start_output().
+The input_scan_number field is simply the index of the scan currently being
+consumed by the input processor. You can ensure that this is up-to-date by
+emptying the input buffer just before calling jpeg_start_output(): call
+jpeg_consume_input() repeatedly until it returns JPEG_SUSPENDED or
+JPEG_REACHED_EOI.
+
+The target scan number passed to jpeg_start_output() is saved in the
+cinfo.output_scan_number field. The library's output processing calls
+jpeg_consume_input() whenever the current input scan number and row within
+that scan is less than or equal to the current output scan number and row.
+Thus, input processing can "get ahead" of the output processing but is not
+allowed to "fall behind". You can achieve several different effects by
+manipulating this interlock rule. For example, if you pass a target scan
+number greater than the current input scan number, the output processor will
+wait until that scan starts to arrive before producing any output. (To avoid
+an infinite loop, the target scan number is automatically reset to the last
+scan number when the end of image is reached. Thus, if you specify a large
+target scan number, the library will just absorb the entire input file and
+then perform an output pass. This is effectively the same as what
+jpeg_start_decompress() does when you don't select buffered-image mode.)
+When you pass a target scan number equal to the current input scan number,
+the image is displayed no faster than the current input scan arrives. The
+final possibility is to pass a target scan number less than the current input
+scan number; this disables the input/output interlock and causes the output
+processor to simply display whatever it finds in the image buffer, without
+waiting for input. (However, the library will not accept a target scan
+number less than one, so you can't avoid waiting for the first scan.)
+
+When data is arriving faster than the output display processing can advance
+through the image, jpeg_consume_input() will store data into the buffered
+image beyond the point at which the output processing is reading data out
+again. If the input arrives fast enough, it may "wrap around" the buffer to
+the point where the input is more than one whole scan ahead of the output.
+If the output processing simply proceeds through its display pass without
+paying attention to the input, the effect seen on-screen is that the lower
+part of the image is one or more scans better in quality than the upper part.
+Then, when the next output scan is started, you have a choice of what target
+scan number to use. The recommended choice is to use the current input scan
+number at that time, which implies that you've skipped the output scans
+corresponding to the input scans that were completed while you processed the
+previous output scan. In this way, the decoder automatically adapts its
+speed to the arriving data, by skipping output scans as necessary to keep up
+with the arriving data.
+
+When using this strategy, you'll want to be sure that you perform a final
+output pass after receiving all the data; otherwise your last display may not
+be full quality across the whole screen. So the right outer loop logic is
+something like this:
+ do {
+ absorb any waiting input by calling jpeg_consume_input()
+ final_pass = jpeg_input_complete(&cinfo);
+ adjust output decompression parameters if required
+ jpeg_start_output(&cinfo, cinfo.input_scan_number);
+ ...
+ jpeg_finish_output()
+ } while (! final_pass);
+rather than quitting as soon as jpeg_input_complete() returns TRUE. This
+arrangement makes it simple to use higher-quality decoding parameters
+for the final pass. But if you don't want to use special parameters for
+the final pass, the right loop logic is like this:
+ for (;;) {
+ absorb any waiting input by calling jpeg_consume_input()
+ jpeg_start_output(&cinfo, cinfo.input_scan_number);
+ ...
+ jpeg_finish_output()
+ if (jpeg_input_complete(&cinfo) &&
+ cinfo.input_scan_number == cinfo.output_scan_number)
+ break;
+ }
+In this case you don't need to know in advance whether an output pass is to
+be the last one, so it's not necessary to have reached EOF before starting
+the final output pass; rather, what you want to test is whether the output
+pass was performed in sync with the final input scan. This form of the loop
+will avoid an extra output pass whenever the decoder is able (or nearly able)
+to keep up with the incoming data.
+
+When the data transmission speed is high, you might begin a display pass,
+then find that much or all of the file has arrived before you can complete
+the pass. (You can detect this by noting the JPEG_REACHED_EOI return code
+from jpeg_consume_input(), or equivalently by testing jpeg_input_complete().)
+In this situation you may wish to abort the current display pass and start a
+new one using the newly arrived information. To do so, just call
+jpeg_finish_output() and then start a new pass with jpeg_start_output().
+
+A variant strategy is to abort and restart display if more than one complete
+scan arrives during an output pass; this can be detected by noting
+JPEG_REACHED_SOS returns and/or examining cinfo.input_scan_number. This
+idea should be employed with caution, however, since the display process
+might never get to the bottom of the image before being aborted, resulting
+in the lower part of the screen being several passes worse than the upper.
+In most cases it's probably best to abort an output pass only if the whole
+file has arrived and you want to begin the final output pass immediately.
+
+When receiving data across a communication link, we recommend always using
+the current input scan number for the output target scan number; if a
+higher-quality final pass is to be done, it should be started (aborting any
+incomplete output pass) as soon as the end of file is received. However,
+many other strategies are possible. For example, the application can examine
+the parameters of the current input scan and decide whether to display it or
+not. If the scan contains only chroma data, one might choose not to use it
+as the target scan, expecting that the scan will be small and will arrive
+quickly. To skip to the next scan, call jpeg_consume_input() until it
+returns JPEG_REACHED_SOS or JPEG_REACHED_EOI. Or just use the next higher
+number as the target scan for jpeg_start_output(); but that method doesn't
+let you inspect the next scan's parameters before deciding to display it.
+
+
+In buffered-image mode, jpeg_start_decompress() never performs input and
+thus never suspends. An application that uses input suspension with
+buffered-image mode must be prepared for suspension returns from these
+routines:
+* jpeg_start_output() performs input only if you request 2-pass quantization
+ and the target scan isn't fully read yet. (This is discussed below.)
+* jpeg_read_scanlines(), as always, returns the number of scanlines that it
+ was able to produce before suspending.
+* jpeg_finish_output() will read any markers following the target scan,
+ up to the end of the file or the SOS marker that begins another scan.
+ (But it reads no input if jpeg_consume_input() has already reached the
+ end of the file or a SOS marker beyond the target output scan.)
+* jpeg_finish_decompress() will read until the end of file, and thus can
+ suspend if the end hasn't already been reached (as can be tested by
+ calling jpeg_input_complete()).
+jpeg_start_output(), jpeg_finish_output(), and jpeg_finish_decompress()
+all return TRUE if they completed their tasks, FALSE if they had to suspend.
+In the event of a FALSE return, the application must load more input data
+and repeat the call. Applications that use non-suspending data sources need
+not check the return values of these three routines.
+
+
+It is possible to change decoding parameters between output passes in the
+buffered-image mode. The decoder library currently supports only very
+limited changes of parameters. ONLY THE FOLLOWING parameter changes are
+allowed after jpeg_start_decompress() is called:
+* dct_method can be changed before each call to jpeg_start_output().
+ For example, one could use a fast DCT method for early scans, changing
+ to a higher quality method for the final scan.
+* dither_mode can be changed before each call to jpeg_start_output();
+ of course this has no impact if not using color quantization. Typically
+ one would use ordered dither for initial passes, then switch to
+ Floyd-Steinberg dither for the final pass. Caution: changing dither mode
+ can cause more memory to be allocated by the library. Although the amount
+ of memory involved is not large (a scanline or so), it may cause the
+ initial max_memory_to_use specification to be exceeded, which in the worst
+ case would result in an out-of-memory failure.
+* do_block_smoothing can be changed before each call to jpeg_start_output().
+ This setting is relevant only when decoding a progressive JPEG image.
+ During the first DC-only scan, block smoothing provides a very "fuzzy" look
+ instead of the very "blocky" look seen without it; which is better seems a
+ matter of personal taste. But block smoothing is nearly always a win
+ during later stages, especially when decoding a successive-approximation
+ image: smoothing helps to hide the slight blockiness that otherwise shows
+ up on smooth gradients until the lowest coefficient bits are sent.
+* Color quantization mode can be changed under the rules described below.
+ You *cannot* change between full-color and quantized output (because that
+ would alter the required I/O buffer sizes), but you can change which
+ quantization method is used.
+
+When generating color-quantized output, changing quantization method is a
+very useful way of switching between high-speed and high-quality display.
+The library allows you to change among its three quantization methods:
+1. Single-pass quantization to a fixed color cube.
+ Selected by cinfo.two_pass_quantize = FALSE and cinfo.colormap = NULL.
+2. Single-pass quantization to an application-supplied colormap.
+ Selected by setting cinfo.colormap to point to the colormap (the value of
+ two_pass_quantize is ignored); also set cinfo.actual_number_of_colors.
+3. Two-pass quantization to a colormap chosen specifically for the image.
+ Selected by cinfo.two_pass_quantize = TRUE and cinfo.colormap = NULL.
+ (This is the default setting selected by jpeg_read_header, but it is
+ probably NOT what you want for the first pass of progressive display!)
+These methods offer successively better quality and lesser speed. However,
+only the first method is available for quantizing in non-RGB color spaces.
+
+IMPORTANT: because the different quantizer methods have very different
+working-storage requirements, the library requires you to indicate which
+one(s) you intend to use before you call jpeg_start_decompress(). (If we did
+not require this, the max_memory_to_use setting would be a complete fiction.)
+You do this by setting one or more of these three cinfo fields to TRUE:
+ enable_1pass_quant Fixed color cube colormap
+ enable_external_quant Externally-supplied colormap
+ enable_2pass_quant Two-pass custom colormap
+All three are initialized FALSE by jpeg_read_header(). But
+jpeg_start_decompress() automatically sets TRUE the one selected by the
+current two_pass_quantize and colormap settings, so you only need to set the
+enable flags for any other quantization methods you plan to change to later.
+
+After setting the enable flags correctly at jpeg_start_decompress() time, you
+can change to any enabled quantization method by setting two_pass_quantize
+and colormap properly just before calling jpeg_start_output(). The following
+special rules apply:
+1. You must explicitly set cinfo.colormap to NULL when switching to 1-pass
+ or 2-pass mode from a different mode, or when you want the 2-pass
+ quantizer to be re-run to generate a new colormap.
+2. To switch to an external colormap, or to change to a different external
+ colormap than was used on the prior pass, you must call
+ jpeg_new_colormap() after setting cinfo.colormap.
+NOTE: if you want to use the same colormap as was used in the prior pass,
+you should not do either of these things. This will save some nontrivial
+switchover costs.
+(These requirements exist because cinfo.colormap will always be non-NULL
+after completing a prior output pass, since both the 1-pass and 2-pass
+quantizers set it to point to their output colormaps. Thus you have to
+do one of these two things to notify the library that something has changed.
+Yup, it's a bit klugy, but it's necessary to do it this way for backwards
+compatibility.)
+
+Note that in buffered-image mode, the library generates any requested colormap
+during jpeg_start_output(), not during jpeg_start_decompress().
+
+When using two-pass quantization, jpeg_start_output() makes a pass over the
+buffered image to determine the optimum color map; it therefore may take a
+significant amount of time, whereas ordinarily it does little work. The
+progress monitor hook is called during this pass, if defined. It is also
+important to realize that if the specified target scan number is greater than
+or equal to the current input scan number, jpeg_start_output() will attempt
+to consume input as it makes this pass. If you use a suspending data source,
+you need to check for a FALSE return from jpeg_start_output() under these
+conditions. The combination of 2-pass quantization and a not-yet-fully-read
+target scan is the only case in which jpeg_start_output() will consume input.
+
+
+Application authors who support buffered-image mode may be tempted to use it
+for all JPEG images, even single-scan ones. This will work, but it is
+inefficient: there is no need to create an image-sized coefficient buffer for
+single-scan images. Requesting buffered-image mode for such an image wastes
+memory. Worse, it can cost time on large images, since the buffered data has
+to be swapped out or written to a temporary file. If you are concerned about
+maximum performance on baseline JPEG files, you should use buffered-image
+mode only when the incoming file actually has multiple scans. This can be
+tested by calling jpeg_has_multiple_scans(), which will return a correct
+result at any time after jpeg_read_header() completes.
+
+It is also worth noting that when you use jpeg_consume_input() to let input
+processing get ahead of output processing, the resulting pattern of access to
+the coefficient buffer is quite nonsequential. It's best to use the memory
+manager jmemnobs.c if you can (ie, if you have enough real or virtual main
+memory). If not, at least make sure that max_memory_to_use is set as high as
+possible. If the JPEG memory manager has to use a temporary file, you will
+probably see a lot of disk traffic and poor performance. (This could be
+improved with additional work on the memory manager, but we haven't gotten
+around to it yet.)
+
+In some applications it may be convenient to use jpeg_consume_input() for all
+input processing, including reading the initial markers; that is, you may
+wish to call jpeg_consume_input() instead of jpeg_read_header() during
+startup. This works, but note that you must check for JPEG_REACHED_SOS and
+JPEG_REACHED_EOI return codes as the equivalent of jpeg_read_header's codes.
+Once the first SOS marker has been reached, you must call
+jpeg_start_decompress() before jpeg_consume_input() will consume more input;
+it'll just keep returning JPEG_REACHED_SOS until you do. If you read a
+tables-only file this way, jpeg_consume_input() will return JPEG_REACHED_EOI
+without ever returning JPEG_REACHED_SOS; be sure to check for this case.
+If this happens, the decompressor will not read any more input until you call
+jpeg_abort() to reset it. It is OK to call jpeg_consume_input() even when not
+using buffered-image mode, but in that case it's basically a no-op after the
+initial markers have been read: it will just return JPEG_SUSPENDED.
+
+
+Abbreviated datastreams and multiple images
+-------------------------------------------
+
+A JPEG compression or decompression object can be reused to process multiple
+images. This saves a small amount of time per image by eliminating the
+"create" and "destroy" operations, but that isn't the real purpose of the
+feature. Rather, reuse of an object provides support for abbreviated JPEG
+datastreams. Object reuse can also simplify processing a series of images in
+a single input or output file. This section explains these features.
+
+A JPEG file normally contains several hundred bytes worth of quantization
+and Huffman tables. In a situation where many images will be stored or
+transmitted with identical tables, this may represent an annoying overhead.
+The JPEG standard therefore permits tables to be omitted. The standard
+defines three classes of JPEG datastreams:
+ * "Interchange" datastreams contain an image and all tables needed to decode
+ the image. These are the usual kind of JPEG file.
+ * "Abbreviated image" datastreams contain an image, but are missing some or
+ all of the tables needed to decode that image.
+ * "Abbreviated table specification" (henceforth "tables-only") datastreams
+ contain only table specifications.
+To decode an abbreviated image, it is necessary to load the missing table(s)
+into the decoder beforehand. This can be accomplished by reading a separate
+tables-only file. A variant scheme uses a series of images in which the first
+image is an interchange (complete) datastream, while subsequent ones are
+abbreviated and rely on the tables loaded by the first image. It is assumed
+that once the decoder has read a table, it will remember that table until a
+new definition for the same table number is encountered.
+
+It is the application designer's responsibility to figure out how to associate
+the correct tables with an abbreviated image. While abbreviated datastreams
+can be useful in a closed environment, their use is strongly discouraged in
+any situation where data exchange with other applications might be needed.
+Caveat designer.
+
+The JPEG library provides support for reading and writing any combination of
+tables-only datastreams and abbreviated images. In both compression and
+decompression objects, a quantization or Huffman table will be retained for
+the lifetime of the object, unless it is overwritten by a new table definition.
+
+
+To create abbreviated image datastreams, it is only necessary to tell the
+compressor not to emit some or all of the tables it is using. Each
+quantization and Huffman table struct contains a boolean field "sent_table",
+which normally is initialized to FALSE. For each table used by the image, the
+header-writing process emits the table and sets sent_table = TRUE unless it is
+already TRUE. (In normal usage, this prevents outputting the same table
+definition multiple times, as would otherwise occur because the chroma
+components typically share tables.) Thus, setting this field to TRUE before
+calling jpeg_start_compress() will prevent the table from being written at
+all.
+
+If you want to create a "pure" abbreviated image file containing no tables,
+just call "jpeg_suppress_tables(&cinfo, TRUE)" after constructing all the
+tables. If you want to emit some but not all tables, you'll need to set the
+individual sent_table fields directly.
+
+To create an abbreviated image, you must also call jpeg_start_compress()
+with a second parameter of FALSE, not TRUE. Otherwise jpeg_start_compress()
+will force all the sent_table fields to FALSE. (This is a safety feature to
+prevent abbreviated images from being created accidentally.)
+
+To create a tables-only file, perform the same parameter setup that you
+normally would, but instead of calling jpeg_start_compress() and so on, call
+jpeg_write_tables(&cinfo). This will write an abbreviated datastream
+containing only SOI, DQT and/or DHT markers, and EOI. All the quantization
+and Huffman tables that are currently defined in the compression object will
+be emitted unless their sent_tables flag is already TRUE, and then all the
+sent_tables flags will be set TRUE.
+
+A sure-fire way to create matching tables-only and abbreviated image files
+is to proceed as follows:
+
+ create JPEG compression object
+ set JPEG parameters
+ set destination to tables-only file
+ jpeg_write_tables(&cinfo);
+ set destination to image file
+ jpeg_start_compress(&cinfo, FALSE);
+ write data...
+ jpeg_finish_compress(&cinfo);
+
+Since the JPEG parameters are not altered between writing the table file and
+the abbreviated image file, the same tables are sure to be used. Of course,
+you can repeat the jpeg_start_compress() ... jpeg_finish_compress() sequence
+many times to produce many abbreviated image files matching the table file.
+
+You cannot suppress output of the computed Huffman tables when Huffman
+optimization is selected. (If you could, there'd be no way to decode the
+image...) Generally, you don't want to set optimize_coding = TRUE when
+you are trying to produce abbreviated files.
+
+In some cases you might want to compress an image using tables which are
+not stored in the application, but are defined in an interchange or
+tables-only file readable by the application. This can be done by setting up
+a JPEG decompression object to read the specification file, then copying the
+tables into your compression object. See jpeg_copy_critical_parameters()
+for an example of copying quantization tables.
+
+
+To read abbreviated image files, you simply need to load the proper tables
+into the decompression object before trying to read the abbreviated image.
+If the proper tables are stored in the application program, you can just
+allocate the table structs and fill in their contents directly. For example,
+to load a fixed quantization table into table slot "n":
+
+ if (cinfo.quant_tbl_ptrs[n] == NULL)
+ cinfo.quant_tbl_ptrs[n] = jpeg_alloc_quant_table((j_common_ptr) &cinfo);
+ quant_ptr = cinfo.quant_tbl_ptrs[n]; /* quant_ptr is JQUANT_TBL* */
+ for (i = 0; i < 64; i++) {
+ /* Qtable[] is desired quantization table, in natural array order */
+ quant_ptr->quantval[i] = Qtable[i];
+ }
+
+Code to load a fixed Huffman table is typically (for AC table "n"):
+
+ if (cinfo.ac_huff_tbl_ptrs[n] == NULL)
+ cinfo.ac_huff_tbl_ptrs[n] = jpeg_alloc_huff_table((j_common_ptr) &cinfo);
+ huff_ptr = cinfo.ac_huff_tbl_ptrs[n]; /* huff_ptr is JHUFF_TBL* */
+ for (i = 1; i <= 16; i++) {
+ /* counts[i] is number of Huffman codes of length i bits, i=1..16 */
+ huff_ptr->bits[i] = counts[i];
+ }
+ for (i = 0; i < 256; i++) {
+ /* symbols[] is the list of Huffman symbols, in code-length order */
+ huff_ptr->huffval[i] = symbols[i];
+ }
+
+(Note that trying to set cinfo.quant_tbl_ptrs[n] to point directly at a
+constant JQUANT_TBL object is not safe. If the incoming file happened to
+contain a quantization table definition, your master table would get
+overwritten! Instead allocate a working table copy and copy the master table
+into it, as illustrated above. Ditto for Huffman tables, of course.)
+
+You might want to read the tables from a tables-only file, rather than
+hard-wiring them into your application. The jpeg_read_header() call is
+sufficient to read a tables-only file. You must pass a second parameter of
+FALSE to indicate that you do not require an image to be present. Thus, the
+typical scenario is
+
+ create JPEG decompression object
+ set source to tables-only file
+ jpeg_read_header(&cinfo, FALSE);
+ set source to abbreviated image file
+ jpeg_read_header(&cinfo, TRUE);
+ set decompression parameters
+ jpeg_start_decompress(&cinfo);
+ read data...
+ jpeg_finish_decompress(&cinfo);
+
+In some cases, you may want to read a file without knowing whether it contains
+an image or just tables. In that case, pass FALSE and check the return value
+from jpeg_read_header(): it will be JPEG_HEADER_OK if an image was found,
+JPEG_HEADER_TABLES_ONLY if only tables were found. (A third return value,
+JPEG_SUSPENDED, is possible when using a suspending data source manager.)
+Note that jpeg_read_header() will not complain if you read an abbreviated
+image for which you haven't loaded the missing tables; the missing-table check
+occurs later, in jpeg_start_decompress().
+
+
+It is possible to read a series of images from a single source file by
+repeating the jpeg_read_header() ... jpeg_finish_decompress() sequence,
+without releasing/recreating the JPEG object or the data source module.
+(If you did reinitialize, any partial bufferload left in the data source
+buffer at the end of one image would be discarded, causing you to lose the
+start of the next image.) When you use this method, stored tables are
+automatically carried forward, so some of the images can be abbreviated images
+that depend on tables from earlier images.
+
+If you intend to write a series of images into a single destination file,
+you might want to make a specialized data destination module that doesn't
+flush the output buffer at term_destination() time. This would speed things
+up by some trifling amount. Of course, you'd need to remember to flush the
+buffer after the last image. You can make the later images be abbreviated
+ones by passing FALSE to jpeg_start_compress().
+
+
+Special markers
+---------------
+
+Some applications may need to insert or extract special data in the JPEG
+datastream. The JPEG standard provides marker types "COM" (comment) and
+"APP0" through "APP15" (application) to hold application-specific data.
+Unfortunately, the use of these markers is not specified by the standard.
+COM markers are fairly widely used to hold user-supplied text. The JFIF file
+format spec uses APP0 markers with specified initial strings to hold certain
+data. Adobe applications use APP14 markers beginning with the string "Adobe"
+for miscellaneous data. Other APPn markers are rarely seen, but might
+contain almost anything.
+
+If you wish to store user-supplied text, we recommend you use COM markers
+and place readable 7-bit ASCII text in them. Newline conventions are not
+standardized --- expect to find LF (Unix style), CR/LF (DOS style), or CR
+(Mac style). A robust COM reader should be able to cope with random binary
+garbage, including nulls, since some applications generate COM markers
+containing non-ASCII junk. (But yours should not be one of them.)
+
+For program-supplied data, use an APPn marker, and be sure to begin it with an
+identifying string so that you can tell whether the marker is actually yours.
+It's probably best to avoid using APP0 or APP14 for any private markers.
+(NOTE: the upcoming SPIFF standard will use APP8 markers; we recommend you
+not use APP8 markers for any private purposes, either.)
+
+Keep in mind that at most 65533 bytes can be put into one marker, but you
+can have as many markers as you like.
+
+By default, the IJG compression library will write a JFIF APP0 marker if the
+selected JPEG colorspace is grayscale or YCbCr, or an Adobe APP14 marker if
+the selected colorspace is RGB, CMYK, or YCCK. You can disable this, but
+we don't recommend it. The decompression library will recognize JFIF and
+Adobe markers and will set the JPEG colorspace properly when one is found.
+
+
+You can write special markers immediately following the datastream header by
+calling jpeg_write_marker() after jpeg_start_compress() and before the first
+call to jpeg_write_scanlines(). When you do this, the markers appear after
+the SOI and the JFIF APP0 and Adobe APP14 markers (if written), but before
+all else. Specify the marker type parameter as "JPEG_COM" for COM or
+"JPEG_APP0 + n" for APPn. (Actually, jpeg_write_marker will let you write
+any marker type, but we don't recommend writing any other kinds of marker.)
+For example, to write a user comment string pointed to by comment_text:
+ jpeg_write_marker(cinfo, JPEG_COM, comment_text, strlen(comment_text));
+
+If it's not convenient to store all the marker data in memory at once,
+you can instead call jpeg_write_m_header() followed by multiple calls to
+jpeg_write_m_byte(). If you do it this way, it's your responsibility to
+call jpeg_write_m_byte() exactly the number of times given in the length
+parameter to jpeg_write_m_header(). (This method lets you empty the
+output buffer partway through a marker, which might be important when
+using a suspending data destination module. In any case, if you are using
+a suspending destination, you should flush its buffer after inserting
+any special markers. See "I/O suspension".)
+
+Or, if you prefer to synthesize the marker byte sequence yourself,
+you can just cram it straight into the data destination module.
+
+If you are writing JFIF 1.02 extension markers (thumbnail images), don't
+forget to set cinfo.JFIF_minor_version = 2 so that the encoder will write the
+correct JFIF version number in the JFIF header marker. The library's default
+is to write version 1.01, but that's wrong if you insert any 1.02 extension
+markers. (We could probably get away with just defaulting to 1.02, but there
+used to be broken decoders that would complain about unknown minor version
+numbers. To reduce compatibility risks it's safest not to write 1.02 unless
+you are actually using 1.02 extensions.)
+
+
+When reading, two methods of handling special markers are available:
+1. You can ask the library to save the contents of COM and/or APPn markers
+into memory, and then examine them at your leisure afterwards.
+2. You can supply your own routine to process COM and/or APPn markers
+on-the-fly as they are read.
+The first method is simpler to use, especially if you are using a suspending
+data source; writing a marker processor that copes with input suspension is
+not easy (consider what happens if the marker is longer than your available
+input buffer). However, the second method conserves memory since the marker
+data need not be kept around after it's been processed.
+
+For either method, you'd normally set up marker handling after creating a
+decompression object and before calling jpeg_read_header(), because the
+markers of interest will typically be near the head of the file and so will
+be scanned by jpeg_read_header. Once you've established a marker handling
+method, it will be used for the life of that decompression object
+(potentially many datastreams), unless you change it. Marker handling is
+determined separately for COM markers and for each APPn marker code.
+
+
+To save the contents of special markers in memory, call
+ jpeg_save_markers(cinfo, marker_code, length_limit)
+where marker_code is the marker type to save, JPEG_COM or JPEG_APP0+n.
+(To arrange to save all the special marker types, you need to call this
+routine 17 times, for COM and APP0-APP15.) If the incoming marker is longer
+than length_limit data bytes, only length_limit bytes will be saved; this
+parameter allows you to avoid chewing up memory when you only need to see the
+first few bytes of a potentially large marker. If you want to save all the
+data, set length_limit to 0xFFFF; that is enough since marker lengths are only
+16 bits. As a special case, setting length_limit to 0 prevents that marker
+type from being saved at all. (That is the default behavior, in fact.)
+
+After jpeg_read_header() completes, you can examine the special markers by
+following the cinfo->marker_list pointer chain. All the special markers in
+the file appear in this list, in order of their occurrence in the file (but
+omitting any markers of types you didn't ask for). Both the original data
+length and the saved data length are recorded for each list entry; the latter
+will not exceed length_limit for the particular marker type. Note that these
+lengths exclude the marker length word, whereas the stored representation
+within the JPEG file includes it. (Hence the maximum data length is really
+only 65533.)
+
+It is possible that additional special markers appear in the file beyond the
+SOS marker at which jpeg_read_header stops; if so, the marker list will be
+extended during reading of the rest of the file. This is not expected to be
+common, however. If you are short on memory you may want to reset the length
+limit to zero for all marker types after finishing jpeg_read_header, to
+ensure that the max_memory_to_use setting cannot be exceeded due to addition
+of later markers.
+
+The marker list remains stored until you call jpeg_finish_decompress or
+jpeg_abort, at which point the memory is freed and the list is set to empty.
+(jpeg_destroy also releases the storage, of course.)
+
+Note that the library is internally interested in APP0 and APP14 markers;
+if you try to set a small nonzero length limit on these types, the library
+will silently force the length up to the minimum it wants. (But you can set
+a zero length limit to prevent them from being saved at all.) Also, in a
+16-bit environment, the maximum length limit may be constrained to less than
+65533 by malloc() limitations. It is therefore best not to assume that the
+effective length limit is exactly what you set it to be.
+
+
+If you want to supply your own marker-reading routine, you do it by calling
+jpeg_set_marker_processor(). A marker processor routine must have the
+signature
+ boolean jpeg_marker_parser_method (j_decompress_ptr cinfo)
+Although the marker code is not explicitly passed, the routine can find it
+in cinfo->unread_marker. At the time of call, the marker proper has been
+read from the data source module. The processor routine is responsible for
+reading the marker length word and the remaining parameter bytes, if any.
+Return TRUE to indicate success. (FALSE should be returned only if you are
+using a suspending data source and it tells you to suspend. See the standard
+marker processors in jdmarker.c for appropriate coding methods if you need to
+use a suspending data source.)
+
+If you override the default APP0 or APP14 processors, it is up to you to
+recognize JFIF and Adobe markers if you want colorspace recognition to occur
+properly. We recommend copying and extending the default processors if you
+want to do that. (A better idea is to save these marker types for later
+examination by calling jpeg_save_markers(); that method doesn't interfere
+with the library's own processing of these markers.)
+
+jpeg_set_marker_processor() and jpeg_save_markers() are mutually exclusive
+--- if you call one it overrides any previous call to the other, for the
+particular marker type specified.
+
+A simple example of an external COM processor can be found in djpeg.c.
+Also, see jpegtran.c for an example of using jpeg_save_markers.
+
+
+Raw (downsampled) image data
+----------------------------
+
+Some applications need to supply already-downsampled image data to the JPEG
+compressor, or to receive raw downsampled data from the decompressor. The
+library supports this requirement by allowing the application to write or
+read raw data, bypassing the normal preprocessing or postprocessing steps.
+The interface is different from the standard one and is somewhat harder to
+use. If your interest is merely in bypassing color conversion, we recommend
+that you use the standard interface and simply set jpeg_color_space =
+in_color_space (or jpeg_color_space = out_color_space for decompression).
+The mechanism described in this section is necessary only to supply or
+receive downsampled image data, in which not all components have the same
+dimensions.
+
+
+To compress raw data, you must supply the data in the colorspace to be used
+in the JPEG file (please read the earlier section on Special color spaces)
+and downsampled to the sampling factors specified in the JPEG parameters.
+You must supply the data in the format used internally by the JPEG library,
+namely a JSAMPIMAGE array. This is an array of pointers to two-dimensional
+arrays, each of type JSAMPARRAY. Each 2-D array holds the values for one
+color component. This structure is necessary since the components are of
+different sizes. If the image dimensions are not a multiple of the MCU size,
+you must also pad the data correctly (usually, this is done by replicating
+the last column and/or row). The data must be padded to a multiple of a DCT
+block in each component: that is, each downsampled row must contain a
+multiple of 8 valid samples, and there must be a multiple of 8 sample rows
+for each component. (For applications such as conversion of digital TV
+images, the standard image size is usually a multiple of the DCT block size,
+so that no padding need actually be done.)
+
+The procedure for compression of raw data is basically the same as normal
+compression, except that you call jpeg_write_raw_data() in place of
+jpeg_write_scanlines(). Before calling jpeg_start_compress(), you must do
+the following:
+ * Set cinfo->raw_data_in to TRUE. (It is set FALSE by jpeg_set_defaults().)
+ This notifies the library that you will be supplying raw data.
+ * Ensure jpeg_color_space is correct --- an explicit jpeg_set_colorspace()
+ call is a good idea. Note that since color conversion is bypassed,
+ in_color_space is ignored, except that jpeg_set_defaults() uses it to
+ choose the default jpeg_color_space setting.
+ * Ensure the sampling factors, cinfo->comp_info[i].h_samp_factor and
+ cinfo->comp_info[i].v_samp_factor, are correct. Since these indicate the
+ dimensions of the data you are supplying, it's wise to set them
+ explicitly, rather than assuming the library's defaults are what you want.
+
+To pass raw data to the library, call jpeg_write_raw_data() in place of
+jpeg_write_scanlines(). The two routines work similarly except that
+jpeg_write_raw_data takes a JSAMPIMAGE data array rather than JSAMPARRAY.
+The scanlines count passed to and returned from jpeg_write_raw_data is
+measured in terms of the component with the largest v_samp_factor.
+
+jpeg_write_raw_data() processes one MCU row per call, which is to say
+v_samp_factor*DCTSIZE sample rows of each component. The passed num_lines
+value must be at least max_v_samp_factor*DCTSIZE, and the return value will
+be exactly that amount (or possibly some multiple of that amount, in future
+library versions). This is true even on the last call at the bottom of the
+image; don't forget to pad your data as necessary.
+
+The required dimensions of the supplied data can be computed for each
+component as
+ cinfo->comp_info[i].width_in_blocks*DCTSIZE samples per row
+ cinfo->comp_info[i].height_in_blocks*DCTSIZE rows in image
+after jpeg_start_compress() has initialized those fields. If the valid data
+is smaller than this, it must be padded appropriately. For some sampling
+factors and image sizes, additional dummy DCT blocks are inserted to make
+the image a multiple of the MCU dimensions. The library creates such dummy
+blocks itself; it does not read them from your supplied data. Therefore you
+need never pad by more than DCTSIZE samples. An example may help here.
+Assume 2h2v downsampling of YCbCr data, that is
+ cinfo->comp_info[0].h_samp_factor = 2 for Y
+ cinfo->comp_info[0].v_samp_factor = 2
+ cinfo->comp_info[1].h_samp_factor = 1 for Cb
+ cinfo->comp_info[1].v_samp_factor = 1
+ cinfo->comp_info[2].h_samp_factor = 1 for Cr
+ cinfo->comp_info[2].v_samp_factor = 1
+and suppose that the nominal image dimensions (cinfo->image_width and
+cinfo->image_height) are 101x101 pixels. Then jpeg_start_compress() will
+compute downsampled_width = 101 and width_in_blocks = 13 for Y,
+downsampled_width = 51 and width_in_blocks = 7 for Cb and Cr (and the same
+for the height fields). You must pad the Y data to at least 13*8 = 104
+columns and rows, the Cb/Cr data to at least 7*8 = 56 columns and rows. The
+MCU height is max_v_samp_factor = 2 DCT rows so you must pass at least 16
+scanlines on each call to jpeg_write_raw_data(), which is to say 16 actual
+sample rows of Y and 8 each of Cb and Cr. A total of 7 MCU rows are needed,
+so you must pass a total of 7*16 = 112 "scanlines". The last DCT block row
+of Y data is dummy, so it doesn't matter what you pass for it in the data
+arrays, but the scanlines count must total up to 112 so that all of the Cb
+and Cr data gets passed.
+
+Output suspension is supported with raw-data compression: if the data
+destination module suspends, jpeg_write_raw_data() will return 0.
+In this case the same data rows must be passed again on the next call.
+
+
+Decompression with raw data output implies bypassing all postprocessing:
+you cannot ask for rescaling or color quantization, for instance. More
+seriously, you must deal with the color space and sampling factors present in
+the incoming file. If your application only handles, say, 2h1v YCbCr data,
+you must check for and fail on other color spaces or other sampling factors.
+The library will not convert to a different color space for you.
+
+To obtain raw data output, set cinfo->raw_data_out = TRUE before
+jpeg_start_decompress() (it is set FALSE by jpeg_read_header()). Be sure to
+verify that the color space and sampling factors are ones you can handle.
+Then call jpeg_read_raw_data() in place of jpeg_read_scanlines(). The
+decompression process is otherwise the same as usual.
+
+jpeg_read_raw_data() returns one MCU row per call, and thus you must pass a
+buffer of at least max_v_samp_factor*DCTSIZE scanlines (scanline counting is
+the same as for raw-data compression). The buffer you pass must be large
+enough to hold the actual data plus padding to DCT-block boundaries. As with
+compression, any entirely dummy DCT blocks are not processed so you need not
+allocate space for them, but the total scanline count includes them. The
+above example of computing buffer dimensions for raw-data compression is
+equally valid for decompression.
+
+Input suspension is supported with raw-data decompression: if the data source
+module suspends, jpeg_read_raw_data() will return 0. You can also use
+buffered-image mode to read raw data in multiple passes.
+
+
+Really raw data: DCT coefficients
+---------------------------------
+
+It is possible to read or write the contents of a JPEG file as raw DCT
+coefficients. This facility is mainly intended for use in lossless
+transcoding between different JPEG file formats. Other possible applications
+include lossless cropping of a JPEG image, lossless reassembly of a
+multi-strip or multi-tile TIFF/JPEG file into a single JPEG datastream, etc.
+
+To read the contents of a JPEG file as DCT coefficients, open the file and do
+jpeg_read_header() as usual. But instead of calling jpeg_start_decompress()
+and jpeg_read_scanlines(), call jpeg_read_coefficients(). This will read the
+entire image into a set of virtual coefficient-block arrays, one array per
+component. The return value is a pointer to an array of virtual-array
+descriptors. Each virtual array can be accessed directly using the JPEG
+memory manager's access_virt_barray method (see Memory management, below,
+and also read structure.doc's discussion of virtual array handling). Or,
+for simple transcoding to a different JPEG file format, the array list can
+just be handed directly to jpeg_write_coefficients().
+
+Each block in the block arrays contains quantized coefficient values in
+normal array order (not JPEG zigzag order). The block arrays contain only
+DCT blocks containing real data; any entirely-dummy blocks added to fill out
+interleaved MCUs at the right or bottom edges of the image are discarded
+during reading and are not stored in the block arrays. (The size of each
+block array can be determined from the width_in_blocks and height_in_blocks
+fields of the component's comp_info entry.) This is also the data format
+expected by jpeg_write_coefficients().
+
+When you are done using the virtual arrays, call jpeg_finish_decompress()
+to release the array storage and return the decompression object to an idle
+state; or just call jpeg_destroy() if you don't need to reuse the object.
+
+If you use a suspending data source, jpeg_read_coefficients() will return
+NULL if it is forced to suspend; a non-NULL return value indicates successful
+completion. You need not test for a NULL return value when using a
+non-suspending data source.
+
+It is also possible to call jpeg_read_coefficients() to obtain access to the
+decoder's coefficient arrays during a normal decode cycle in buffered-image
+mode. This frammish might be useful for progressively displaying an incoming
+image and then re-encoding it without loss. To do this, decode in buffered-
+image mode as discussed previously, then call jpeg_read_coefficients() after
+the last jpeg_finish_output() call. The arrays will be available for your use
+until you call jpeg_finish_decompress().
+
+
+To write the contents of a JPEG file as DCT coefficients, you must provide
+the DCT coefficients stored in virtual block arrays. You can either pass
+block arrays read from an input JPEG file by jpeg_read_coefficients(), or
+allocate virtual arrays from the JPEG compression object and fill them
+yourself. In either case, jpeg_write_coefficients() is substituted for
+jpeg_start_compress() and jpeg_write_scanlines(). Thus the sequence is
+ * Create compression object
+ * Set all compression parameters as necessary
+ * Request virtual arrays if needed
+ * jpeg_write_coefficients()
+ * jpeg_finish_compress()
+ * Destroy or re-use compression object
+jpeg_write_coefficients() is passed a pointer to an array of virtual block
+array descriptors; the number of arrays is equal to cinfo.num_components.
+
+The virtual arrays need only have been requested, not realized, before
+jpeg_write_coefficients() is called. A side-effect of
+jpeg_write_coefficients() is to realize any virtual arrays that have been
+requested from the compression object's memory manager. Thus, when obtaining
+the virtual arrays from the compression object, you should fill the arrays
+after calling jpeg_write_coefficients(). The data is actually written out
+when you call jpeg_finish_compress(); jpeg_write_coefficients() only writes
+the file header.
+
+When writing raw DCT coefficients, it is crucial that the JPEG quantization
+tables and sampling factors match the way the data was encoded, or the
+resulting file will be invalid. For transcoding from an existing JPEG file,
+we recommend using jpeg_copy_critical_parameters(). This routine initializes
+all the compression parameters to default values (like jpeg_set_defaults()),
+then copies the critical information from a source decompression object.
+The decompression object should have just been used to read the entire
+JPEG input file --- that is, it should be awaiting jpeg_finish_decompress().
+
+jpeg_write_coefficients() marks all tables stored in the compression object
+as needing to be written to the output file (thus, it acts like
+jpeg_start_compress(cinfo, TRUE)). This is for safety's sake, to avoid
+emitting abbreviated JPEG files by accident. If you really want to emit an
+abbreviated JPEG file, call jpeg_suppress_tables(), or set the tables'
+individual sent_table flags, between calling jpeg_write_coefficients() and
+jpeg_finish_compress().
+
+
+Progress monitoring
+-------------------
+
+Some applications may need to regain control from the JPEG library every so
+often. The typical use of this feature is to produce a percent-done bar or
+other progress display. (For a simple example, see cjpeg.c or djpeg.c.)
+Although you do get control back frequently during the data-transferring pass
+(the jpeg_read_scanlines or jpeg_write_scanlines loop), any additional passes
+will occur inside jpeg_finish_compress or jpeg_start_decompress; those
+routines may take a long time to execute, and you don't get control back
+until they are done.
+
+You can define a progress-monitor routine which will be called periodically
+by the library. No guarantees are made about how often this call will occur,
+so we don't recommend you use it for mouse tracking or anything like that.
+At present, a call will occur once per MCU row, scanline, or sample row
+group, whichever unit is convenient for the current processing mode; so the
+wider the image, the longer the time between calls. During the data
+transferring pass, only one call occurs per call of jpeg_read_scanlines or
+jpeg_write_scanlines, so don't pass a large number of scanlines at once if
+you want fine resolution in the progress count. (If you really need to use
+the callback mechanism for time-critical tasks like mouse tracking, you could
+insert additional calls inside some of the library's inner loops.)
+
+To establish a progress-monitor callback, create a struct jpeg_progress_mgr,
+fill in its progress_monitor field with a pointer to your callback routine,
+and set cinfo->progress to point to the struct. The callback will be called
+whenever cinfo->progress is non-NULL. (This pointer is set to NULL by
+jpeg_create_compress or jpeg_create_decompress; the library will not change
+it thereafter. So if you allocate dynamic storage for the progress struct,
+make sure it will live as long as the JPEG object does. Allocating from the
+JPEG memory manager with lifetime JPOOL_PERMANENT will work nicely.) You
+can use the same callback routine for both compression and decompression.
+
+The jpeg_progress_mgr struct contains four fields which are set by the library:
+ long pass_counter; /* work units completed in this pass */
+ long pass_limit; /* total number of work units in this pass */
+ int completed_passes; /* passes completed so far */
+ int total_passes; /* total number of passes expected */
+During any one pass, pass_counter increases from 0 up to (not including)
+pass_limit; the step size is usually but not necessarily 1. The pass_limit
+value may change from one pass to another. The expected total number of
+passes is in total_passes, and the number of passes already completed is in
+completed_passes. Thus the fraction of work completed may be estimated as
+ completed_passes + (pass_counter/pass_limit)
+ --------------------------------------------
+ total_passes
+ignoring the fact that the passes may not be equal amounts of work.
+
+When decompressing, pass_limit can even change within a pass, because it
+depends on the number of scans in the JPEG file, which isn't always known in
+advance. The computed fraction-of-work-done may jump suddenly (if the library
+discovers it has overestimated the number of scans) or even decrease (in the
+opposite case). It is not wise to put great faith in the work estimate.
+
+When using the decompressor's buffered-image mode, the progress monitor work
+estimate is likely to be completely unhelpful, because the library has no way
+to know how many output passes will be demanded of it. Currently, the library
+sets total_passes based on the assumption that there will be one more output
+pass if the input file end hasn't yet been read (jpeg_input_complete() isn't
+TRUE), but no more output passes if the file end has been reached when the
+output pass is started. This means that total_passes will rise as additional
+output passes are requested. If you have a way of determining the input file
+size, estimating progress based on the fraction of the file that's been read
+will probably be more useful than using the library's value.
+
+
+Memory management
+-----------------
+
+This section covers some key facts about the JPEG library's built-in memory
+manager. For more info, please read structure.doc's section about the memory
+manager, and consult the source code if necessary.
+
+All memory and temporary file allocation within the library is done via the
+memory manager. If necessary, you can replace the "back end" of the memory
+manager to control allocation yourself (for example, if you don't want the
+library to use malloc() and free() for some reason).
+
+Some data is allocated "permanently" and will not be freed until the JPEG
+object is destroyed. Most data is allocated "per image" and is freed by
+jpeg_finish_compress, jpeg_finish_decompress, or jpeg_abort. You can call the
+memory manager yourself to allocate structures that will automatically be
+freed at these times. Typical code for this is
+ ptr = (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, size);
+Use JPOOL_PERMANENT to get storage that lasts as long as the JPEG object.
+Use alloc_large instead of alloc_small for anything bigger than a few Kbytes.
+There are also alloc_sarray and alloc_barray routines that automatically
+build 2-D sample or block arrays.
+
+The library's minimum space requirements to process an image depend on the
+image's width, but not on its height, because the library ordinarily works
+with "strip" buffers that are as wide as the image but just a few rows high.
+Some operating modes (eg, two-pass color quantization) require full-image
+buffers. Such buffers are treated as "virtual arrays": only the current strip
+need be in memory, and the rest can be swapped out to a temporary file.
+
+If you use the simplest memory manager back end (jmemnobs.c), then no
+temporary files are used; virtual arrays are simply malloc()'d. Images bigger
+than memory can be processed only if your system supports virtual memory.
+The other memory manager back ends support temporary files of various flavors
+and thus work in machines without virtual memory. They may also be useful on
+Unix machines if you need to process images that exceed available swap space.
+
+When using temporary files, the library will make the in-memory buffers for
+its virtual arrays just big enough to stay within a "maximum memory" setting.
+Your application can set this limit by setting cinfo->mem->max_memory_to_use
+after creating the JPEG object. (Of course, there is still a minimum size for
+the buffers, so the max-memory setting is effective only if it is bigger than
+the minimum space needed.) If you allocate any large structures yourself, you
+must allocate them before jpeg_start_compress() or jpeg_start_decompress() in
+order to have them counted against the max memory limit. Also keep in mind
+that space allocated with alloc_small() is ignored, on the assumption that
+it's too small to be worth worrying about; so a reasonable safety margin
+should be left when setting max_memory_to_use.
+
+If you use the jmemname.c or jmemdos.c memory manager back end, it is
+important to clean up the JPEG object properly to ensure that the temporary
+files get deleted. (This is especially crucial with jmemdos.c, where the
+"temporary files" may be extended-memory segments; if they are not freed,
+DOS will require a reboot to recover the memory.) Thus, with these memory
+managers, it's a good idea to provide a signal handler that will trap any
+early exit from your program. The handler should call either jpeg_abort()
+or jpeg_destroy() for any active JPEG objects. A handler is not needed with
+jmemnobs.c, and shouldn't be necessary with jmemansi.c or jmemmac.c either,
+since the C library is supposed to take care of deleting files made with
+tmpfile().
+
+
+Memory usage
+------------
+
+Working memory requirements while performing compression or decompression
+depend on image dimensions, image characteristics (such as colorspace and
+JPEG process), and operating mode (application-selected options).
+
+As of v6b, the decompressor requires:
+ 1. About 24K in more-or-less-fixed-size data. This varies a bit depending
+ on operating mode and image characteristics (particularly color vs.
+ grayscale), but it doesn't depend on image dimensions.
+ 2. Strip buffers (of size proportional to the image width) for IDCT and
+ upsampling results. The worst case for commonly used sampling factors
+ is about 34 bytes * width in pixels for a color image. A grayscale image
+ only needs about 8 bytes per pixel column.
+ 3. A full-image DCT coefficient buffer is needed to decode a multi-scan JPEG
+ file (including progressive JPEGs), or whenever you select buffered-image
+ mode. This takes 2 bytes/coefficient. At typical 2x2 sampling, that's
+ 3 bytes per pixel for a color image. Worst case (1x1 sampling) requires
+ 6 bytes/pixel. For grayscale, figure 2 bytes/pixel.
+ 4. To perform 2-pass color quantization, the decompressor also needs a
+ 128K color lookup table and a full-image pixel buffer (3 bytes/pixel).
+This does not count any memory allocated by the application, such as a
+buffer to hold the final output image.
+
+The above figures are valid for 8-bit JPEG data precision and a machine with
+32-bit ints. For 12-bit JPEG data, double the size of the strip buffers and
+quantization pixel buffer. The "fixed-size" data will be somewhat smaller
+with 16-bit ints, larger with 64-bit ints. Also, CMYK or other unusual
+color spaces will require different amounts of space.
+
+The full-image coefficient and pixel buffers, if needed at all, do not
+have to be fully RAM resident; you can have the library use temporary
+files instead when the total memory usage would exceed a limit you set.
+(But if your OS supports virtual memory, it's probably better to just use
+jmemnobs and let the OS do the swapping.)
+
+The compressor's memory requirements are similar, except that it has no need
+for color quantization. Also, it needs a full-image DCT coefficient buffer
+if Huffman-table optimization is asked for, even if progressive mode is not
+requested.
+
+If you need more detailed information about memory usage in a particular
+situation, you can enable the MEM_STATS code in jmemmgr.c.
+
+
+Library compile-time options
+----------------------------
+
+A number of compile-time options are available by modifying jmorecfg.h.
+
+The JPEG standard provides for both the baseline 8-bit DCT process and
+a 12-bit DCT process. The IJG code supports 12-bit lossy JPEG if you define
+BITS_IN_JSAMPLE as 12 rather than 8. Note that this causes JSAMPLE to be
+larger than a char, so it affects the surrounding application's image data.
+The sample applications cjpeg and djpeg can support 12-bit mode only for PPM
+and GIF file formats; you must disable the other file formats to compile a
+12-bit cjpeg or djpeg. (install.doc has more information about that.)
+At present, a 12-bit library can handle *only* 12-bit images, not both
+precisions. (If you need to include both 8- and 12-bit libraries in a single
+application, you could probably do it by defining NEED_SHORT_EXTERNAL_NAMES
+for just one of the copies. You'd have to access the 8-bit and 12-bit copies
+from separate application source files. This is untested ... if you try it,
+we'd like to hear whether it works!)
+
+Note that a 12-bit library always compresses in Huffman optimization mode,
+in order to generate valid Huffman tables. This is necessary because our
+default Huffman tables only cover 8-bit data. If you need to output 12-bit
+files in one pass, you'll have to supply suitable default Huffman tables.
+You may also want to supply your own DCT quantization tables; the existing
+quality-scaling code has been developed for 8-bit use, and probably doesn't
+generate especially good tables for 12-bit.
+
+The maximum number of components (color channels) in the image is determined
+by MAX_COMPONENTS. The JPEG standard allows up to 255 components, but we
+expect that few applications will need more than four or so.
+
+On machines with unusual data type sizes, you may be able to improve
+performance or reduce memory space by tweaking the various typedefs in
+jmorecfg.h. In particular, on some RISC CPUs, access to arrays of "short"s
+is quite slow; consider trading memory for speed by making JCOEF, INT16, and
+UINT16 be "int" or "unsigned int". UINT8 is also a candidate to become int.
+You probably don't want to make JSAMPLE be int unless you have lots of memory
+to burn.
+
+You can reduce the size of the library by compiling out various optional
+functions. To do this, undefine xxx_SUPPORTED symbols as necessary.
+
+You can also save a few K by not having text error messages in the library;
+the standard error message table occupies about 5Kb. This is particularly
+reasonable for embedded applications where there's no good way to display
+a message anyway. To do this, remove the creation of the message table
+(jpeg_std_message_table[]) from jerror.c, and alter format_message to do
+something reasonable without it. You could output the numeric value of the
+message code number, for example. If you do this, you can also save a couple
+more K by modifying the TRACEMSn() macros in jerror.h to expand to nothing;
+you don't need trace capability anyway, right?
+
+
+Portability considerations
+--------------------------
+
+The JPEG library has been written to be extremely portable; the sample
+applications cjpeg and djpeg are slightly less so. This section summarizes
+the design goals in this area. (If you encounter any bugs that cause the
+library to be less portable than is claimed here, we'd appreciate hearing
+about them.)
+
+The code works fine on ANSI C, C++, and pre-ANSI C compilers, using any of
+the popular system include file setups, and some not-so-popular ones too.
+See install.doc for configuration procedures.
+
+The code is not dependent on the exact sizes of the C data types. As
+distributed, we make the assumptions that
+ char is at least 8 bits wide
+ short is at least 16 bits wide
+ int is at least 16 bits wide
+ long is at least 32 bits wide
+(These are the minimum requirements of the ANSI C standard.) Wider types will
+work fine, although memory may be used inefficiently if char is much larger
+than 8 bits or short is much bigger than 16 bits. The code should work
+equally well with 16- or 32-bit ints.
+
+In a system where these assumptions are not met, you may be able to make the
+code work by modifying the typedefs in jmorecfg.h. However, you will probably
+have difficulty if int is less than 16 bits wide, since references to plain
+int abound in the code.
+
+char can be either signed or unsigned, although the code runs faster if an
+unsigned char type is available. If char is wider than 8 bits, you will need
+to redefine JOCTET and/or provide custom data source/destination managers so
+that JOCTET represents exactly 8 bits of data on external storage.
+
+The JPEG library proper does not assume ASCII representation of characters.
+But some of the image file I/O modules in cjpeg/djpeg do have ASCII
+dependencies in file-header manipulation; so does cjpeg's select_file_type()
+routine.
+
+The JPEG library does not rely heavily on the C library. In particular, C
+stdio is used only by the data source/destination modules and the error
+handler, all of which are application-replaceable. (cjpeg/djpeg are more
+heavily dependent on stdio.) malloc and free are called only from the memory
+manager "back end" module, so you can use a different memory allocator by
+replacing that one file.
+
+The code generally assumes that C names must be unique in the first 15
+characters. However, global function names can be made unique in the
+first 6 characters by defining NEED_SHORT_EXTERNAL_NAMES.
+
+More info about porting the code may be gleaned by reading jconfig.doc,
+jmorecfg.h, and jinclude.h.
+
+
+Notes for MS-DOS implementors
+-----------------------------
+
+The IJG code is designed to work efficiently in 80x86 "small" or "medium"
+memory models (i.e., data pointers are 16 bits unless explicitly declared
+"far"; code pointers can be either size). You may be able to use small
+model to compile cjpeg or djpeg by itself, but you will probably have to use
+medium model for any larger application. This won't make much difference in
+performance. You *will* take a noticeable performance hit if you use a
+large-data memory model (perhaps 10%-25%), and you should avoid "huge" model
+if at all possible.
+
+The JPEG library typically needs 2Kb-3Kb of stack space. It will also
+malloc about 20K-30K of near heap space while executing (and lots of far
+heap, but that doesn't count in this calculation). This figure will vary
+depending on selected operating mode, and to a lesser extent on image size.
+There is also about 5Kb-6Kb of constant data which will be allocated in the
+near data segment (about 4Kb of this is the error message table).
+Thus you have perhaps 20K available for other modules' static data and near
+heap space before you need to go to a larger memory model. The C library's
+static data will account for several K of this, but that still leaves a good
+deal for your needs. (If you are tight on space, you could reduce the sizes
+of the I/O buffers allocated by jdatasrc.c and jdatadst.c, say from 4K to
+1K. Another possibility is to move the error message table to far memory;
+this should be doable with only localized hacking on jerror.c.)
+
+About 2K of the near heap space is "permanent" memory that will not be
+released until you destroy the JPEG object. This is only an issue if you
+save a JPEG object between compression or decompression operations.
+
+Far data space may also be a tight resource when you are dealing with large
+images. The most memory-intensive case is decompression with two-pass color
+quantization, or single-pass quantization to an externally supplied color
+map. This requires a 128Kb color lookup table plus strip buffers amounting
+to about 40 bytes per column for typical sampling ratios (eg, about 25600
+bytes for a 640-pixel-wide image). You may not be able to process wide
+images if you have large data structures of your own.
+
+Of course, all of these concerns vanish if you use a 32-bit flat-memory-model
+compiler, such as DJGPP or Watcom C. We highly recommend flat model if you
+can use it; the JPEG library is significantly faster in flat model.
diff --git a/User/lib/lcd/gui/JPEG/Doc/structure.txt b/User/lib/lcd/gui/JPEG/Doc/structure.txt
new file mode 100644
index 0000000..492f944
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/Doc/structure.txt
@@ -0,0 +1,969 @@
+Notes on the JPEG Library
+=========================
+
+This JPEG module is derived from work of the IJG (see below),
+and may be copyied and redistributed according to the
+conditions under LEGAL ISSUES in ReadMe.txt.
+The code has been modified in a variety of ways;
+some code (GUI_JPEG.c) has been added to as "glue" to make it
+work with emWin.
+The original text of this file is below; some things stated may no
+longer be correct for the code that ships with emWin.
+However, we decided to leave it here because it explains the basic
+concepts and structure of JPEG code.
+
+Segger Microcontroller Systeme GmbH, June 2003
+====================================================================
+
+
+
+
+
+IJG JPEG LIBRARY: SYSTEM ARCHITECTURE
+
+Copyright (C) 1991-1995, Thomas G. Lane.
+This file is part of the Independent JPEG Group's software.
+For conditions of distribution and use, see the accompanying README file.
+
+
+This file provides an overview of the architecture of the IJG JPEG software;
+that is, the functions of the various modules in the system and the interfaces
+between modules. For more precise details about any data structure or calling
+convention, see the include files and comments in the source code.
+
+We assume that the reader is already somewhat familiar with the JPEG standard.
+The README file includes references for learning about JPEG. The file
+libjpeg.doc describes the library from the viewpoint of an application
+programmer using the library; it's best to read that file before this one.
+Also, the file coderules.doc describes the coding style conventions we use.
+
+In this document, JPEG-specific terminology follows the JPEG standard:
+ A "component" means a color channel, e.g., Red or Luminance.
+ A "sample" is a single component value (i.e., one number in the image data).
+ A "coefficient" is a frequency coefficient (a DCT transform output number).
+ A "block" is an 8x8 group of samples or coefficients.
+ An "MCU" (minimum coded unit) is an interleaved set of blocks of size
+ determined by the sampling factors, or a single block in a
+ noninterleaved scan.
+We do not use the terms "pixel" and "sample" interchangeably. When we say
+pixel, we mean an element of the full-size image, while a sample is an element
+of the downsampled image. Thus the number of samples may vary across
+components while the number of pixels does not. (This terminology is not used
+rigorously throughout the code, but it is used in places where confusion would
+otherwise result.)
+
+
+*** System features ***
+
+The IJG distribution contains two parts:
+ * A subroutine library for JPEG compression and decompression.
+ * cjpeg/djpeg, two sample applications that use the library to transform
+ JFIF JPEG files to and from several other image formats.
+cjpeg/djpeg are of no great intellectual complexity: they merely add a simple
+command-line user interface and I/O routines for several uncompressed image
+formats. This document concentrates on the library itself.
+
+We desire the library to be capable of supporting all JPEG baseline, extended
+sequential, and progressive DCT processes. Hierarchical processes are not
+supported.
+
+The library does not support the lossless (spatial) JPEG process. Lossless
+JPEG shares little or no code with lossy JPEG, and would normally be used
+without the extensive pre- and post-processing provided by this library.
+We feel that lossless JPEG is better handled by a separate library.
+
+Within these limits, any set of compression parameters allowed by the JPEG
+spec should be readable for decompression. (We can be more restrictive about
+what formats we can generate.) Although the system design allows for all
+parameter values, some uncommon settings are not yet implemented and may
+never be; nonintegral sampling ratios are the prime example. Furthermore,
+we treat 8-bit vs. 12-bit data precision as a compile-time switch, not a
+run-time option, because most machines can store 8-bit pixels much more
+compactly than 12-bit.
+
+For legal reasons, JPEG arithmetic coding is not currently supported, but
+extending the library to include it would be straightforward.
+
+By itself, the library handles only interchange JPEG datastreams --- in
+particular the widely used JFIF file format. The library can be used by
+surrounding code to process interchange or abbreviated JPEG datastreams that
+are embedded in more complex file formats. (For example, libtiff uses this
+library to implement JPEG compression within the TIFF file format.)
+
+The library includes a substantial amount of code that is not covered by the
+JPEG standard but is necessary for typical applications of JPEG. These
+functions preprocess the image before JPEG compression or postprocess it after
+decompression. They include colorspace conversion, downsampling/upsampling,
+and color quantization. This code can be omitted if not needed.
+
+A wide range of quality vs. speed tradeoffs are possible in JPEG processing,
+and even more so in decompression postprocessing. The decompression library
+provides multiple implementations that cover most of the useful tradeoffs,
+ranging from very-high-quality down to fast-preview operation. On the
+compression side we have generally not provided low-quality choices, since
+compression is normally less time-critical. It should be understood that the
+low-quality modes may not meet the JPEG standard's accuracy requirements;
+nonetheless, they are useful for viewers.
+
+
+*** Portability issues ***
+
+Portability is an essential requirement for the library. The key portability
+issues that show up at the level of system architecture are:
+
+1. Memory usage. We want the code to be able to run on PC-class machines
+with limited memory. Images should therefore be processed sequentially (in
+strips), to avoid holding the whole image in memory at once. Where a
+full-image buffer is necessary, we should be able to use either virtual memory
+or temporary files.
+
+2. Near/far pointer distinction. To run efficiently on 80x86 machines, the
+code should distinguish "small" objects (kept in near data space) from
+"large" ones (kept in far data space). This is an annoying restriction, but
+fortunately it does not impact code quality for less brain-damaged machines,
+and the source code clutter turns out to be minimal with sufficient use of
+pointer typedefs.
+
+3. Data precision. We assume that "char" is at least 8 bits, "short" and
+"int" at least 16, "long" at least 32. The code will work fine with larger
+data sizes, although memory may be used inefficiently in some cases. However,
+the JPEG compressed datastream must ultimately appear on external storage as a
+sequence of 8-bit bytes if it is to conform to the standard. This may pose a
+problem on machines where char is wider than 8 bits. The library represents
+compressed data as an array of values of typedef JOCTET. If no data type
+exactly 8 bits wide is available, custom data source and data destination
+modules must be written to unpack and pack the chosen JOCTET datatype into
+8-bit external representation.
+
+
+*** System overview ***
+
+The compressor and decompressor are each divided into two main sections:
+the JPEG compressor or decompressor proper, and the preprocessing or
+postprocessing functions. The interface between these two sections is the
+image data that the official JPEG spec regards as its input or output: this
+data is in the colorspace to be used for compression, and it is downsampled
+to the sampling factors to be used. The preprocessing and postprocessing
+steps are responsible for converting a normal image representation to or from
+this form. (Those few applications that want to deal with YCbCr downsampled
+data can skip the preprocessing or postprocessing step.)
+
+Looking more closely, the compressor library contains the following main
+elements:
+
+ Preprocessing:
+ * Color space conversion (e.g., RGB to YCbCr).
+ * Edge expansion and downsampling. Optionally, this step can do simple
+ smoothing --- this is often helpful for low-quality source data.
+ JPEG proper:
+ * MCU assembly, DCT, quantization.
+ * Entropy coding (sequential or progressive, Huffman or arithmetic).
+
+In addition to these modules we need overall control, marker generation,
+and support code (memory management & error handling). There is also a
+module responsible for physically writing the output data --- typically
+this is just an interface to fwrite(), but some applications may need to
+do something else with the data.
+
+The decompressor library contains the following main elements:
+
+ JPEG proper:
+ * Entropy decoding (sequential or progressive, Huffman or arithmetic).
+ * Dequantization, inverse DCT, MCU disassembly.
+ Postprocessing:
+ * Upsampling. Optionally, this step may be able to do more general
+ rescaling of the image.
+ * Color space conversion (e.g., YCbCr to RGB). This step may also
+ provide gamma adjustment [ currently it does not ].
+ * Optional color quantization (e.g., reduction to 256 colors).
+ * Optional color precision reduction (e.g., 24-bit to 15-bit color).
+ [This feature is not currently implemented.]
+
+We also need overall control, marker parsing, and a data source module.
+The support code (memory management & error handling) can be shared with
+the compression half of the library.
+
+There may be several implementations of each of these elements, particularly
+in the decompressor, where a wide range of speed/quality tradeoffs is very
+useful. It must be understood that some of the best speedups involve
+merging adjacent steps in the pipeline. For example, upsampling, color space
+conversion, and color quantization might all be done at once when using a
+low-quality ordered-dither technique. The system architecture is designed to
+allow such merging where appropriate.
+
+
+Note: it is convenient to regard edge expansion (padding to block boundaries)
+as a preprocessing/postprocessing function, even though the JPEG spec includes
+it in compression/decompression. We do this because downsampling/upsampling
+can be simplified a little if they work on padded data: it's not necessary to
+have special cases at the right and bottom edges. Therefore the interface
+buffer is always an integral number of blocks wide and high, and we expect
+compression preprocessing to pad the source data properly. Padding will occur
+only to the next block (8-sample) boundary. In an interleaved-scan situation,
+additional dummy blocks may be used to fill out MCUs, but the MCU assembly and
+disassembly logic will create or discard these blocks internally. (This is
+advantageous for speed reasons, since we avoid DCTing the dummy blocks.
+It also permits a small reduction in file size, because the compressor can
+choose dummy block contents so as to minimize their size in compressed form.
+Finally, it makes the interface buffer specification independent of whether
+the file is actually interleaved or not.) Applications that wish to deal
+directly with the downsampled data must provide similar buffering and padding
+for odd-sized images.
+
+
+*** Poor man's object-oriented programming ***
+
+It should be clear by now that we have a lot of quasi-independent processing
+steps, many of which have several possible behaviors. To avoid cluttering the
+code with lots of switch statements, we use a simple form of object-style
+programming to separate out the different possibilities.
+
+For example, two different color quantization algorithms could be implemented
+as two separate modules that present the same external interface; at runtime,
+the calling code will access the proper module indirectly through an "object".
+
+We can get the limited features we need while staying within portable C.
+The basic tool is a function pointer. An "object" is just a struct
+containing one or more function pointer fields, each of which corresponds to
+a method name in real object-oriented languages. During initialization we
+fill in the function pointers with references to whichever module we have
+determined we need to use in this run. Then invocation of the module is done
+by indirecting through a function pointer; on most machines this is no more
+expensive than a switch statement, which would be the only other way of
+making the required run-time choice. The really significant benefit, of
+course, is keeping the source code clean and well structured.
+
+We can also arrange to have private storage that varies between different
+implementations of the same kind of object. We do this by making all the
+module-specific object structs be separately allocated entities, which will
+be accessed via pointers in the master compression or decompression struct.
+The "public" fields or methods for a given kind of object are specified by
+a commonly known struct. But a module's initialization code can allocate
+a larger struct that contains the common struct as its first member, plus
+additional private fields. With appropriate pointer casting, the module's
+internal functions can access these private fields. (For a simple example,
+see jdatadst.c, which implements the external interface specified by struct
+jpeg_destination_mgr, but adds extra fields.)
+
+(Of course this would all be a lot easier if we were using C++, but we are
+not yet prepared to assume that everyone has a C++ compiler.)
+
+An important benefit of this scheme is that it is easy to provide multiple
+versions of any method, each tuned to a particular case. While a lot of
+precalculation might be done to select an optimal implementation of a method,
+the cost per invocation is constant. For example, the upsampling step might
+have a "generic" method, plus one or more "hardwired" methods for the most
+popular sampling factors; the hardwired methods would be faster because they'd
+use straight-line code instead of for-loops. The cost to determine which
+method to use is paid only once, at startup, and the selection criteria are
+hidden from the callers of the method.
+
+This plan differs a little bit from usual object-oriented structures, in that
+only one instance of each object class will exist during execution. The
+reason for having the class structure is that on different runs we may create
+different instances (choose to execute different modules). You can think of
+the term "method" as denoting the common interface presented by a particular
+set of interchangeable functions, and "object" as denoting a group of related
+methods, or the total shared interface behavior of a group of modules.
+
+
+*** Overall control structure ***
+
+We previously mentioned the need for overall control logic in the compression
+and decompression libraries. In IJG implementations prior to v5, overall
+control was mostly provided by "pipeline control" modules, which proved to be
+large, unwieldy, and hard to understand. To improve the situation, the
+control logic has been subdivided into multiple modules. The control modules
+consist of:
+
+1. Master control for module selection and initialization. This has two
+responsibilities:
+
+ 1A. Startup initialization at the beginning of image processing.
+ The individual processing modules to be used in this run are selected
+ and given initialization calls.
+
+ 1B. Per-pass control. This determines how many passes will be performed
+ and calls each active processing module to configure itself
+ appropriately at the beginning of each pass. End-of-pass processing,
+ where necessary, is also invoked from the master control module.
+
+ Method selection is partially distributed, in that a particular processing
+ module may contain several possible implementations of a particular method,
+ which it will select among when given its initialization call. The master
+ control code need only be concerned with decisions that affect more than
+ one module.
+
+2. Data buffering control. A separate control module exists for each
+ inter-processing-step data buffer. This module is responsible for
+ invoking the processing steps that write or read that data buffer.
+
+Each buffer controller sees the world as follows:
+
+input data => processing step A => buffer => processing step B => output data
+ | | |
+ ------------------ controller ------------------
+
+The controller knows the dataflow requirements of steps A and B: how much data
+they want to accept in one chunk and how much they output in one chunk. Its
+function is to manage its buffer and call A and B at the proper times.
+
+A data buffer control module may itself be viewed as a processing step by a
+higher-level control module; thus the control modules form a binary tree with
+elementary processing steps at the leaves of the tree.
+
+The control modules are objects. A considerable amount of flexibility can
+be had by replacing implementations of a control module. For example:
+* Merging of adjacent steps in the pipeline is done by replacing a control
+ module and its pair of processing-step modules with a single processing-
+ step module. (Hence the possible merges are determined by the tree of
+ control modules.)
+* In some processing modes, a given interstep buffer need only be a "strip"
+ buffer large enough to accommodate the desired data chunk sizes. In other
+ modes, a full-image buffer is needed and several passes are required.
+ The control module determines which kind of buffer is used and manipulates
+ virtual array buffers as needed. One or both processing steps may be
+ unaware of the multi-pass behavior.
+
+In theory, we might be able to make all of the data buffer controllers
+interchangeable and provide just one set of implementations for all. In
+practice, each one contains considerable special-case processing for its
+particular job. The buffer controller concept should be regarded as an
+overall system structuring principle, not as a complete description of the
+task performed by any one controller.
+
+
+*** Compression object structure ***
+
+Here is a sketch of the logical structure of the JPEG compression library:
+
+ |-- Colorspace conversion
+ |-- Preprocessing controller --|
+ | |-- Downsampling
+Main controller --|
+ | |-- Forward DCT, quantize
+ |-- Coefficient controller --|
+ |-- Entropy encoding
+
+This sketch also describes the flow of control (subroutine calls) during
+typical image data processing. Each of the components shown in the diagram is
+an "object" which may have several different implementations available. One
+or more source code files contain the actual implementation(s) of each object.
+
+The objects shown above are:
+
+* Main controller: buffer controller for the subsampled-data buffer, which
+ holds the preprocessed input data. This controller invokes preprocessing to
+ fill the subsampled-data buffer, and JPEG compression to empty it. There is
+ usually no need for a full-image buffer here; a strip buffer is adequate.
+
+* Preprocessing controller: buffer controller for the downsampling input data
+ buffer, which lies between colorspace conversion and downsampling. Note
+ that a unified conversion/downsampling module would probably replace this
+ controller entirely.
+
+* Colorspace conversion: converts application image data into the desired
+ JPEG color space; also changes the data from pixel-interleaved layout to
+ separate component planes. Processes one pixel row at a time.
+
+* Downsampling: performs reduction of chroma components as required.
+ Optionally may perform pixel-level smoothing as well. Processes a "row
+ group" at a time, where a row group is defined as Vmax pixel rows of each
+ component before downsampling, and Vk sample rows afterwards (remember Vk
+ differs across components). Some downsampling or smoothing algorithms may
+ require context rows above and below the current row group; the
+ preprocessing controller is responsible for supplying these rows via proper
+ buffering. The downsampler is responsible for edge expansion at the right
+ edge (i.e., extending each sample row to a multiple of 8 samples); but the
+ preprocessing controller is responsible for vertical edge expansion (i.e.,
+ duplicating the bottom sample row as needed to make a multiple of 8 rows).
+
+* Coefficient controller: buffer controller for the DCT-coefficient data.
+ This controller handles MCU assembly, including insertion of dummy DCT
+ blocks when needed at the right or bottom edge. When performing
+ Huffman-code optimization or emitting a multiscan JPEG file, this
+ controller is responsible for buffering the full image. The equivalent of
+ one fully interleaved MCU row of subsampled data is processed per call,
+ even when the JPEG file is noninterleaved.
+
+* Forward DCT and quantization: Perform DCT, quantize, and emit coefficients.
+ Works on one or more DCT blocks at a time. (Note: the coefficients are now
+ emitted in normal array order, which the entropy encoder is expected to
+ convert to zigzag order as necessary. Prior versions of the IJG code did
+ the conversion to zigzag order within the quantization step.)
+
+* Entropy encoding: Perform Huffman or arithmetic entropy coding and emit the
+ coded data to the data destination module. Works on one MCU per call.
+ For progressive JPEG, the same DCT blocks are fed to the entropy coder
+ during each pass, and the coder must emit the appropriate subset of
+ coefficients.
+
+In addition to the above objects, the compression library includes these
+objects:
+
+* Master control: determines the number of passes required, controls overall
+ and per-pass initialization of the other modules.
+
+* Marker writing: generates JPEG markers (except for RSTn, which is emitted
+ by the entropy encoder when needed).
+
+* Data destination manager: writes the output JPEG datastream to its final
+ destination (e.g., a file). The destination manager supplied with the
+ library knows how to write to a stdio stream; for other behaviors, the
+ surrounding application may provide its own destination manager.
+
+* Memory manager: allocates and releases memory, controls virtual arrays
+ (with backing store management, where required).
+
+* Error handler: performs formatting and output of error and trace messages;
+ determines handling of nonfatal errors. The surrounding application may
+ override some or all of this object's methods to change error handling.
+
+* Progress monitor: supports output of "percent-done" progress reports.
+ This object represents an optional callback to the surrounding application:
+ if wanted, it must be supplied by the application.
+
+The error handler, destination manager, and progress monitor objects are
+defined as separate objects in order to simplify application-specific
+customization of the JPEG library. A surrounding application may override
+individual methods or supply its own all-new implementation of one of these
+objects. The object interfaces for these objects are therefore treated as
+part of the application interface of the library, whereas the other objects
+are internal to the library.
+
+The error handler and memory manager are shared by JPEG compression and
+decompression; the progress monitor, if used, may be shared as well.
+
+
+*** Decompression object structure ***
+
+Here is a sketch of the logical structure of the JPEG decompression library:
+
+ |-- Entropy decoding
+ |-- Coefficient controller --|
+ | |-- Dequantize, Inverse DCT
+Main controller --|
+ | |-- Upsampling
+ |-- Postprocessing controller --| |-- Colorspace conversion
+ |-- Color quantization
+ |-- Color precision reduction
+
+As before, this diagram also represents typical control flow. The objects
+shown are:
+
+* Main controller: buffer controller for the subsampled-data buffer, which
+ holds the output of JPEG decompression proper. This controller's primary
+ task is to feed the postprocessing procedure. Some upsampling algorithms
+ may require context rows above and below the current row group; when this
+ is true, the main controller is responsible for managing its buffer so as
+ to make context rows available. In the current design, the main buffer is
+ always a strip buffer; a full-image buffer is never required.
+
+* Coefficient controller: buffer controller for the DCT-coefficient data.
+ This controller handles MCU disassembly, including deletion of any dummy
+ DCT blocks at the right or bottom edge. When reading a multiscan JPEG
+ file, this controller is responsible for buffering the full image.
+ (Buffering DCT coefficients, rather than samples, is necessary to support
+ progressive JPEG.) The equivalent of one fully interleaved MCU row of
+ subsampled data is processed per call, even when the source JPEG file is
+ noninterleaved.
+
+* Entropy decoding: Read coded data from the data source module and perform
+ Huffman or arithmetic entropy decoding. Works on one MCU per call.
+ For progressive JPEG decoding, the coefficient controller supplies the prior
+ coefficients of each MCU (initially all zeroes), which the entropy decoder
+ modifies in each scan.
+
+* Dequantization and inverse DCT: like it says. Note that the coefficients
+ buffered by the coefficient controller have NOT been dequantized; we
+ merge dequantization and inverse DCT into a single step for speed reasons.
+ When scaled-down output is asked for, simplified DCT algorithms may be used
+ that emit only 1x1, 2x2, or 4x4 samples per DCT block, not the full 8x8.
+ Works on one DCT block at a time.
+
+* Postprocessing controller: buffer controller for the color quantization
+ input buffer, when quantization is in use. (Without quantization, this
+ controller just calls the upsampler.) For two-pass quantization, this
+ controller is responsible for buffering the full-image data.
+
+* Upsampling: restores chroma components to full size. (May support more
+ general output rescaling, too. Note that if undersized DCT outputs have
+ been emitted by the DCT module, this module must adjust so that properly
+ sized outputs are created.) Works on one row group at a time. This module
+ also calls the color conversion module, so its top level is effectively a
+ buffer controller for the upsampling->color conversion buffer. However, in
+ all but the highest-quality operating modes, upsampling and color
+ conversion are likely to be merged into a single step.
+
+* Colorspace conversion: convert from JPEG color space to output color space,
+ and change data layout from separate component planes to pixel-interleaved.
+ Works on one pixel row at a time.
+
+* Color quantization: reduce the data to colormapped form, using either an
+ externally specified colormap or an internally generated one. This module
+ is not used for full-color output. Works on one pixel row at a time; may
+ require two passes to generate a color map. Note that the output will
+ always be a single component representing colormap indexes. In the current
+ design, the output values are JSAMPLEs, so an 8-bit compilation cannot
+ quantize to more than 256 colors. This is unlikely to be a problem in
+ practice.
+
+* Color reduction: this module handles color precision reduction, e.g.,
+ generating 15-bit color (5 bits/primary) from JPEG's 24-bit output.
+ Not quite clear yet how this should be handled... should we merge it with
+ colorspace conversion???
+
+Note that some high-speed operating modes might condense the entire
+postprocessing sequence to a single module (upsample, color convert, and
+quantize in one step).
+
+In addition to the above objects, the decompression library includes these
+objects:
+
+* Master control: determines the number of passes required, controls overall
+ and per-pass initialization of the other modules. This is subdivided into
+ input and output control: jdinput.c controls only input-side processing,
+ while jdmaster.c handles overall initialization and output-side control.
+
+* Marker reading: decodes JPEG markers (except for RSTn).
+
+* Data source manager: supplies the input JPEG datastream. The source
+ manager supplied with the library knows how to read from a stdio stream;
+ for other behaviors, the surrounding application may provide its own source
+ manager.
+
+* Memory manager: same as for compression library.
+
+* Error handler: same as for compression library.
+
+* Progress monitor: same as for compression library.
+
+As with compression, the data source manager, error handler, and progress
+monitor are candidates for replacement by a surrounding application.
+
+
+*** Decompression input and output separation ***
+
+To support efficient incremental display of progressive JPEG files, the
+decompressor is divided into two sections that can run independently:
+
+1. Data input includes marker parsing, entropy decoding, and input into the
+ coefficient controller's DCT coefficient buffer. Note that this
+ processing is relatively cheap and fast.
+
+2. Data output reads from the DCT coefficient buffer and performs the IDCT
+ and all postprocessing steps.
+
+For a progressive JPEG file, the data input processing is allowed to get
+arbitrarily far ahead of the data output processing. (This occurs only
+if the application calls jpeg_consume_input(); otherwise input and output
+run in lockstep, since the input section is called only when the output
+section needs more data.) In this way the application can avoid making
+extra display passes when data is arriving faster than the display pass
+can run. Furthermore, it is possible to abort an output pass without
+losing anything, since the coefficient buffer is read-only as far as the
+output section is concerned. See libjpeg.doc for more detail.
+
+A full-image coefficient array is only created if the JPEG file has multiple
+scans (or if the application specifies buffered-image mode anyway). When
+reading a single-scan file, the coefficient controller normally creates only
+a one-MCU buffer, so input and output processing must run in lockstep in this
+case. jpeg_consume_input() is effectively a no-op in this situation.
+
+The main impact of dividing the decompressor in this fashion is that we must
+be very careful with shared variables in the cinfo data structure. Each
+variable that can change during the course of decompression must be
+classified as belonging to data input or data output, and each section must
+look only at its own variables. For example, the data output section may not
+depend on any of the variables that describe the current scan in the JPEG
+file, because these may change as the data input section advances into a new
+scan.
+
+The progress monitor is (somewhat arbitrarily) defined to treat input of the
+file as one pass when buffered-image mode is not used, and to ignore data
+input work completely when buffered-image mode is used. Note that the
+library has no reliable way to predict the number of passes when dealing
+with a progressive JPEG file, nor can it predict the number of output passes
+in buffered-image mode. So the work estimate is inherently bogus anyway.
+
+No comparable division is currently made in the compression library, because
+there isn't any real need for it.
+
+
+*** Data formats ***
+
+Arrays of pixel sample values use the following data structure:
+
+ typedef something JSAMPLE; a pixel component value, 0..MAXJSAMPLE
+ typedef JSAMPLE *JSAMPROW; ptr to a row of samples
+ typedef JSAMPROW *JSAMPARRAY; ptr to a list of rows
+ typedef JSAMPARRAY *JSAMPIMAGE; ptr to a list of color-component arrays
+
+The basic element type JSAMPLE will typically be one of unsigned char,
+(signed) char, or short. Short will be used if samples wider than 8 bits are
+to be supported (this is a compile-time option). Otherwise, unsigned char is
+used if possible. If the compiler only supports signed chars, then it is
+necessary to mask off the value when reading. Thus, all reads of JSAMPLE
+values must be coded as "GETJSAMPLE(value)", where the macro will be defined
+as "((value) & 0xFF)" on signed-char machines and "((int) (value))" elsewhere.
+
+With these conventions, JSAMPLE values can be assumed to be >= 0. This helps
+simplify correct rounding during downsampling, etc. The JPEG standard's
+specification that sample values run from -128..127 is accommodated by
+subtracting 128 just as the sample value is copied into the source array for
+the DCT step (this will be an array of signed ints). Similarly, during
+decompression the output of the IDCT step will be immediately shifted back to
+0..255. (NB: different values are required when 12-bit samples are in use.
+The code is written in terms of MAXJSAMPLE and CENTERJSAMPLE, which will be
+defined as 255 and 128 respectively in an 8-bit implementation, and as 4095
+and 2048 in a 12-bit implementation.)
+
+We use a pointer per row, rather than a two-dimensional JSAMPLE array. This
+choice costs only a small amount of memory and has several benefits:
+* Code using the data structure doesn't need to know the allocated width of
+ the rows. This simplifies edge expansion/compression, since we can work
+ in an array that's wider than the logical picture width.
+* Indexing doesn't require multiplication; this is a performance win on many
+ machines.
+* Arrays with more than 64K total elements can be supported even on machines
+ where malloc() cannot allocate chunks larger than 64K.
+* The rows forming a component array may be allocated at different times
+ without extra copying. This trick allows some speedups in smoothing steps
+ that need access to the previous and next rows.
+
+Note that each color component is stored in a separate array; we don't use the
+traditional layout in which the components of a pixel are stored together.
+This simplifies coding of modules that work on each component independently,
+because they don't need to know how many components there are. Furthermore,
+we can read or write each component to a temporary file independently, which
+is helpful when dealing with noninterleaved JPEG files.
+
+In general, a specific sample value is accessed by code such as
+ GETJSAMPLE(image[colorcomponent][row][col])
+where col is measured from the image left edge, but row is measured from the
+first sample row currently in memory. Either of the first two indexings can
+be precomputed by copying the relevant pointer.
+
+
+Since most image-processing applications prefer to work on images in which
+the components of a pixel are stored together, the data passed to or from the
+surrounding application uses the traditional convention: a single pixel is
+represented by N consecutive JSAMPLE values, and an image row is an array of
+(# of color components)*(image width) JSAMPLEs. One or more rows of data can
+be represented by a pointer of type JSAMPARRAY in this scheme. This scheme is
+converted to component-wise storage inside the JPEG library. (Applications
+that want to skip JPEG preprocessing or postprocessing will have to contend
+with component-wise storage.)
+
+
+Arrays of DCT-coefficient values use the following data structure:
+
+ typedef short JCOEF; a 16-bit signed integer
+ typedef JCOEF JBLOCK[DCTSIZE2]; an 8x8 block of coefficients
+ typedef JBLOCK *JBLOCKROW; ptr to one horizontal row of 8x8 blocks
+ typedef JBLOCKROW *JBLOCKARRAY; ptr to a list of such rows
+ typedef JBLOCKARRAY *JBLOCKIMAGE; ptr to a list of color component arrays
+
+The underlying type is at least a 16-bit signed integer; while "short" is big
+enough on all machines of interest, on some machines it is preferable to use
+"int" for speed reasons, despite the storage cost. Coefficients are grouped
+into 8x8 blocks (but we always use #defines DCTSIZE and DCTSIZE2 rather than
+"8" and "64").
+
+The contents of a coefficient block may be in either "natural" or zigzagged
+order, and may be true values or divided by the quantization coefficients,
+depending on where the block is in the processing pipeline. In the current
+library, coefficient blocks are kept in natural order everywhere; the entropy
+codecs zigzag or dezigzag the data as it is written or read. The blocks
+contain quantized coefficients everywhere outside the DCT/IDCT subsystems.
+(This latter decision may need to be revisited to support variable
+quantization a la JPEG Part 3.)
+
+Notice that the allocation unit is now a row of 8x8 blocks, corresponding to
+eight rows of samples. Otherwise the structure is much the same as for
+samples, and for the same reasons.
+
+On machines where malloc() can't handle a request bigger than 64Kb, this data
+structure limits us to rows of less than 512 JBLOCKs, or a picture width of
+4000+ pixels. This seems an acceptable restriction.
+
+
+On 80x86 machines, the bottom-level pointer types (JSAMPROW and JBLOCKROW)
+must be declared as "far" pointers, but the upper levels can be "near"
+(implying that the pointer lists are allocated in the DS segment).
+We use a #define symbol FAR, which expands to the "far" keyword when
+compiling on 80x86 machines and to nothing elsewhere.
+
+
+*** Suspendable processing ***
+
+In some applications it is desirable to use the JPEG library as an
+incremental, memory-to-memory filter. In this situation the data source or
+destination may be a limited-size buffer, and we can't rely on being able to
+empty or refill the buffer at arbitrary times. Instead the application would
+like to have control return from the library at buffer overflow/underrun, and
+then resume compression or decompression at a later time.
+
+This scenario is supported for simple cases. (For anything more complex, we
+recommend that the application "bite the bullet" and develop real multitasking
+capability.) The libjpeg.doc file goes into more detail about the usage and
+limitations of this capability; here we address the implications for library
+structure.
+
+The essence of the problem is that the entropy codec (coder or decoder) must
+be prepared to stop at arbitrary times. In turn, the controllers that call
+the entropy codec must be able to stop before having produced or consumed all
+the data that they normally would handle in one call. That part is reasonably
+straightforward: we make the controller call interfaces include "progress
+counters" which indicate the number of data chunks successfully processed, and
+we require callers to test the counter rather than just assume all of the data
+was processed.
+
+Rather than trying to restart at an arbitrary point, the current Huffman
+codecs are designed to restart at the beginning of the current MCU after a
+suspension due to buffer overflow/underrun. At the start of each call, the
+codec's internal state is loaded from permanent storage (in the JPEG object
+structures) into local variables. On successful completion of the MCU, the
+permanent state is updated. (This copying is not very expensive, and may even
+lead to *improved* performance if the local variables can be registerized.)
+If a suspension occurs, the codec simply returns without updating the state,
+thus effectively reverting to the start of the MCU. Note that this implies
+leaving some data unprocessed in the source/destination buffer (ie, the
+compressed partial MCU). The data source/destination module interfaces are
+specified so as to make this possible. This also implies that the data buffer
+must be large enough to hold a worst-case compressed MCU; a couple thousand
+bytes should be enough.
+
+In a successive-approximation AC refinement scan, the progressive Huffman
+decoder has to be able to undo assignments of newly nonzero coefficients if it
+suspends before the MCU is complete, since decoding requires distinguishing
+previously-zero and previously-nonzero coefficients. This is a bit tedious
+but probably won't have much effect on performance. Other variants of Huffman
+decoding need not worry about this, since they will just store the same values
+again if forced to repeat the MCU.
+
+This approach would probably not work for an arithmetic codec, since its
+modifiable state is quite large and couldn't be copied cheaply. Instead it
+would have to suspend and resume exactly at the point of the buffer end.
+
+The JPEG marker reader is designed to cope with suspension at an arbitrary
+point. It does so by backing up to the start of the marker parameter segment,
+so the data buffer must be big enough to hold the largest marker of interest.
+Again, a couple KB should be adequate. (A special "skip" convention is used
+to bypass COM and APPn markers, so these can be larger than the buffer size
+without causing problems; otherwise a 64K buffer would be needed in the worst
+case.)
+
+The JPEG marker writer currently does *not* cope with suspension. I feel that
+this is not necessary; it is much easier simply to require the application to
+ensure there is enough buffer space before starting. (An empty 2K buffer is
+more than sufficient for the header markers; and ensuring there are a dozen or
+two bytes available before calling jpeg_finish_compress() will suffice for the
+trailer.) This would not work for writing multi-scan JPEG files, but
+we simply do not intend to support that capability with suspension.
+
+
+*** Memory manager services ***
+
+The JPEG library's memory manager controls allocation and deallocation of
+memory, and it manages large "virtual" data arrays on machines where the
+operating system does not provide virtual memory. Note that the same
+memory manager serves both compression and decompression operations.
+
+In all cases, allocated objects are tied to a particular compression or
+decompression master record, and they will be released when that master
+record is destroyed.
+
+The memory manager does not provide explicit deallocation of objects.
+Instead, objects are created in "pools" of free storage, and a whole pool
+can be freed at once. This approach helps prevent storage-leak bugs, and
+it speeds up operations whenever malloc/free are slow (as they often are).
+The pools can be regarded as lifetime identifiers for objects. Two
+pools/lifetimes are defined:
+ * JPOOL_PERMANENT lasts until master record is destroyed
+ * JPOOL_IMAGE lasts until done with image (JPEG datastream)
+Permanent lifetime is used for parameters and tables that should be carried
+across from one datastream to another; this includes all application-visible
+parameters. Image lifetime is used for everything else. (A third lifetime,
+JPOOL_PASS = one processing pass, was originally planned. However it was
+dropped as not being worthwhile. The actual usage patterns are such that the
+peak memory usage would be about the same anyway; and having per-pass storage
+substantially complicates the virtual memory allocation rules --- see below.)
+
+The memory manager deals with three kinds of object:
+1. "Small" objects. Typically these require no more than 10K-20K total.
+2. "Large" objects. These may require tens to hundreds of K depending on
+ image size. Semantically they behave the same as small objects, but we
+ distinguish them for two reasons:
+ * On MS-DOS machines, large objects are referenced by FAR pointers,
+ small objects by NEAR pointers.
+ * Pool allocation heuristics may differ for large and small objects.
+ Note that individual "large" objects cannot exceed the size allowed by
+ type size_t, which may be 64K or less on some machines.
+3. "Virtual" objects. These are large 2-D arrays of JSAMPLEs or JBLOCKs
+ (typically large enough for the entire image being processed). The
+ memory manager provides stripwise access to these arrays. On machines
+ without virtual memory, the rest of the array may be swapped out to a
+ temporary file.
+
+(Note: JSAMPARRAY and JBLOCKARRAY data structures are a combination of large
+objects for the data proper and small objects for the row pointers. For
+convenience and speed, the memory manager provides single routines to create
+these structures. Similarly, virtual arrays include a small control block
+and a JSAMPARRAY or JBLOCKARRAY working buffer, all created with one call.)
+
+In the present implementation, virtual arrays are only permitted to have image
+lifespan. (Permanent lifespan would not be reasonable, and pass lifespan is
+not very useful since a virtual array's raison d'etre is to store data for
+multiple passes through the image.) We also expect that only "small" objects
+will be given permanent lifespan, though this restriction is not required by
+the memory manager.
+
+In a non-virtual-memory machine, some performance benefit can be gained by
+making the in-memory buffers for virtual arrays be as large as possible.
+(For small images, the buffers might fit entirely in memory, so blind
+swapping would be very wasteful.) The memory manager will adjust the height
+of the buffers to fit within a prespecified maximum memory usage. In order
+to do this in a reasonably optimal fashion, the manager needs to allocate all
+of the virtual arrays at once. Therefore, there isn't a one-step allocation
+routine for virtual arrays; instead, there is a "request" routine that simply
+allocates the control block, and a "realize" routine (called just once) that
+determines space allocation and creates all of the actual buffers. The
+realize routine must allow for space occupied by non-virtual large objects.
+(We don't bother to factor in the space needed for small objects, on the
+grounds that it isn't worth the trouble.)
+
+To support all this, we establish the following protocol for doing business
+with the memory manager:
+ 1. Modules must request virtual arrays (which may have only image lifespan)
+ during the initial setup phase, i.e., in their jinit_xxx routines.
+ 2. All "large" objects (including JSAMPARRAYs and JBLOCKARRAYs) must also be
+ allocated during initial setup.
+ 3. realize_virt_arrays will be called at the completion of initial setup.
+ The above conventions ensure that sufficient information is available
+ for it to choose a good size for virtual array buffers.
+Small objects of any lifespan may be allocated at any time. We expect that
+the total space used for small objects will be small enough to be negligible
+in the realize_virt_arrays computation.
+
+In a virtual-memory machine, we simply pretend that the available space is
+infinite, thus causing realize_virt_arrays to decide that it can allocate all
+the virtual arrays as full-size in-memory buffers. The overhead of the
+virtual-array access protocol is very small when no swapping occurs.
+
+A virtual array can be specified to be "pre-zeroed"; when this flag is set,
+never-yet-written sections of the array are set to zero before being made
+available to the caller. If this flag is not set, never-written sections
+of the array contain garbage. (This feature exists primarily because the
+equivalent logic would otherwise be needed in jdcoefct.c for progressive
+JPEG mode; we may as well make it available for possible other uses.)
+
+The first write pass on a virtual array is required to occur in top-to-bottom
+order; read passes, as well as any write passes after the first one, may
+access the array in any order. This restriction exists partly to simplify
+the virtual array control logic, and partly because some file systems may not
+support seeking beyond the current end-of-file in a temporary file. The main
+implication of this restriction is that rearrangement of rows (such as
+converting top-to-bottom data order to bottom-to-top) must be handled while
+reading data out of the virtual array, not while putting it in.
+
+
+*** Memory manager internal structure ***
+
+To isolate system dependencies as much as possible, we have broken the
+memory manager into two parts. There is a reasonably system-independent
+"front end" (jmemmgr.c) and a "back end" that contains only the code
+likely to change across systems. All of the memory management methods
+outlined above are implemented by the front end. The back end provides
+the following routines for use by the front end (none of these routines
+are known to the rest of the JPEG code):
+
+jpeg_mem_init, jpeg_mem_term system-dependent initialization/shutdown
+
+jpeg_get_small, jpeg_free_small interface to malloc and free library routines
+ (or their equivalents)
+
+jpeg_get_large, jpeg_free_large interface to FAR malloc/free in MSDOS machines;
+ else usually the same as
+ jpeg_get_small/jpeg_free_small
+
+jpeg_mem_available estimate available memory
+
+jpeg_open_backing_store create a backing-store object
+
+read_backing_store, manipulate a backing-store object
+write_backing_store,
+close_backing_store
+
+On some systems there will be more than one type of backing-store object
+(specifically, in MS-DOS a backing store file might be an area of extended
+memory as well as a disk file). jpeg_open_backing_store is responsible for
+choosing how to implement a given object. The read/write/close routines
+are method pointers in the structure that describes a given object; this
+lets them be different for different object types.
+
+It may be necessary to ensure that backing store objects are explicitly
+released upon abnormal program termination. For example, MS-DOS won't free
+extended memory by itself. To support this, we will expect the main program
+or surrounding application to arrange to call self_destruct (typically via
+jpeg_destroy) upon abnormal termination. This may require a SIGINT signal
+handler or equivalent. We don't want to have the back end module install its
+own signal handler, because that would pre-empt the surrounding application's
+ability to control signal handling.
+
+The IJG distribution includes several memory manager back end implementations.
+Usually the same back end should be suitable for all applications on a given
+system, but it is possible for an application to supply its own back end at
+need.
+
+
+*** Implications of DNL marker ***
+
+Some JPEG files may use a DNL marker to postpone definition of the image
+height (this would be useful for a fax-like scanner's output, for instance).
+In these files the SOF marker claims the image height is 0, and you only
+find out the true image height at the end of the first scan.
+
+We could read these files as follows:
+1. Upon seeing zero image height, replace it by 65535 (the maximum allowed).
+2. When the DNL is found, update the image height in the global image
+ descriptor.
+This implies that control modules must avoid making copies of the image
+height, and must re-test for termination after each MCU row. This would
+be easy enough to do.
+
+In cases where image-size data structures are allocated, this approach will
+result in very inefficient use of virtual memory or much-larger-than-necessary
+temporary files. This seems acceptable for something that probably won't be a
+mainstream usage. People might have to forgo use of memory-hogging options
+(such as two-pass color quantization or noninterleaved JPEG files) if they
+want efficient conversion of such files. (One could improve efficiency by
+demanding a user-supplied upper bound for the height, less than 65536; in most
+cases it could be much less.)
+
+The standard also permits the SOF marker to overestimate the image height,
+with a DNL to give the true, smaller height at the end of the first scan.
+This would solve the space problems if the overestimate wasn't too great.
+However, it implies that you don't even know whether DNL will be used.
+
+This leads to a couple of very serious objections:
+1. Testing for a DNL marker must occur in the inner loop of the decompressor's
+ Huffman decoder; this implies a speed penalty whether the feature is used
+ or not.
+2. There is no way to hide the last-minute change in image height from an
+ application using the decoder. Thus *every* application using the IJG
+ library would suffer a complexity penalty whether it cared about DNL or
+ not.
+We currently do not support DNL because of these problems.
+
+A different approach is to insist that DNL-using files be preprocessed by a
+separate program that reads ahead to the DNL, then goes back and fixes the SOF
+marker. This is a much simpler solution and is probably far more efficient.
+Even if one wants piped input, buffering the first scan of the JPEG file needs
+a lot smaller temp file than is implied by the maximum-height method. For
+this approach we'd simply treat DNL as a no-op in the decompressor (at most,
+check that it matches the SOF image height).
+
+We will not worry about making the compressor capable of outputting DNL.
+Something similar to the first scheme above could be applied if anyone ever
+wants to make that work.
diff --git a/User/lib/lcd/gui/JPEG/Doc/vssver.scc b/User/lib/lcd/gui/JPEG/Doc/vssver.scc
new file mode 100644
index 0000000..a4a8c4f
Binary files /dev/null and b/User/lib/lcd/gui/JPEG/Doc/vssver.scc differ
diff --git a/User/lib/lcd/gui/JPEG/GUI_JPEG.c b/User/lib/lcd/gui/JPEG/GUI_JPEG.c
new file mode 100644
index 0000000..700829c
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/GUI_JPEG.c
@@ -0,0 +1,409 @@
+/*
+*********************************************************************************************************
+* uC/GUI
+* Universal graphic software for embedded applications
+*
+* (c) Copyright 2002, Micrium Inc., Weston, FL
+* (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
+*
+* C/GUI 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 redistributed
+* in any way. We appreciate your understanding and fairness.
+*
+----------------------------------------------------------------------
+File : GUI_JPEG.c
+Purpose : Implementation of GUI_JPEG... functions
+---------------------------END-OF-HEADER------------------------------
+*/
+
+#include
+
+#include "GUI_Private.h"
+#include "jpeglib.h"
+#include "jerror.h"
+#include "jmemsys.h"
+
+
+/*********************************************************************
+*
+* Local defines & data types
+*
+**********************************************************************
+*/
+#define INPUT_BUF_SIZE 4096 /* choose an efficiently fread'able size */
+
+/* Expanded data source object for stdio input */
+
+typedef struct {
+ struct jpeg_source_mgr pub; /* public fields */
+ const U8* pFileData;
+ I32 FileSize;
+ I32 Off;
+ boolean start_of_file; /* have we gotten any data yet? */
+} SOURCE_MANAGER;
+
+static const U8 _abEnd[2] = {
+ 0xFF, JPEG_EOI
+};
+
+/*********************************************************************
+*
+* Static code
+*
+**********************************************************************
+*/
+
+/*
+ * Initialize source --- called by jpeg_read_header
+ * before any data is actually read.
+ */
+
+static void _InitSource (j_decompress_ptr cinfo) {
+ SOURCE_MANAGER* pSrc = (SOURCE_MANAGER*) cinfo->src;
+
+ /* We reset the empty-input-file flag for each image,
+ * but we don't clear the input buffer.
+ * This is correct behavior for reading a series of images from one source.
+ */
+ pSrc->start_of_file = TRUE;
+}
+
+/*
+ * Fill the input buffer --- called whenever buffer is emptied.
+ *
+ * In typical applications, this should read fresh data into the buffer
+ * (ignoring the current state of next_input_byte & bytes_in_buffer),
+ * reset the pointer & count to the start of the buffer, and return TRUE
+ * indicating that the buffer has been reloaded. It is not necessary to
+ * fill the buffer entirely, only to obtain at least one more byte.
+ *
+ * There is no such thing as an EOF return. If the end of the file has been
+ * reached, the routine has a choice of ERREXIT() or inserting fake data into
+ * the buffer. In most cases, generating a warning message and inserting a
+ * fake EOI marker is the best course of action --- this will allow the
+ * decompressor to output however much of the image is there. However,
+ * the resulting error message is misleading if the real problem is an empty
+ * input file, so we handle that case specially.
+ *
+ * In applications that need to be able to suspend compression due to input
+ * not being available yet, a FALSE return indicates that no more data can be
+ * obtained right now, but more may be forthcoming later. In this situation,
+ * the decompressor will return to its caller (with an indication of the
+ * number of scanlines it has read, if any). The application should resume
+ * decompression after it has loaded more data into the input buffer. Note
+ * that there are substantial restrictions on the use of suspension --- see
+ * the documentation.
+ *
+ * When suspending, the decompressor will back up to a convenient restart point
+ * (typically the start of the current MCU). next_input_byte & bytes_in_buffer
+ * indicate where the restart point will be if the current call returns FALSE.
+ * Data beyond this point must be rescanned after resumption, so move it to
+ * the front of the buffer rather than discarding it.
+ */
+
+static boolean _FillInputBuffer(j_decompress_ptr cinfo) {
+ SOURCE_MANAGER* pSrc = (SOURCE_MANAGER*) cinfo->src;
+ size_t nbytes;
+ int RemBytes = pSrc->FileSize - pSrc->Off;
+ if (RemBytes > 0) {
+ nbytes = (RemBytes > INPUT_BUF_SIZE) ? INPUT_BUF_SIZE : RemBytes;
+ pSrc->pub.next_input_byte = pSrc->pFileData + pSrc->Off;
+ pSrc->Off += nbytes;
+ } else {
+ if (pSrc->start_of_file) /* Treat empty input file as fatal error */
+ ERREXIT(cinfo, JERR_INPUT_EMPTY);
+ WARNMS(cinfo, JWRN_JPEG_EOF);
+ /* Insert a fake EOI marker */
+ nbytes = 2;
+ pSrc->pub.next_input_byte = _abEnd;
+ }
+
+ pSrc->pub.bytes_in_buffer = nbytes;
+ pSrc->start_of_file = FALSE;
+ return TRUE;
+}
+
+/*
+ * Skip data --- used to skip over a potentially large amount of
+ * uninteresting data (such as an APPn marker).
+ *
+ * Writers of suspendable-input applications must note that skip_input_data
+ * is not granted the right to give a suspension return. If the skip extends
+ * beyond the data currently in the buffer, the buffer can be marked empty so
+ * that the next read will cause a fill_input_buffer call that can suspend.
+ * Arranging for additional bytes to be discarded before reloading the input
+ * buffer is the application writer's problem.
+ */
+
+static void _SkipInputData (j_decompress_ptr cinfo, long num_bytes) {
+ SOURCE_MANAGER* pSrc = (SOURCE_MANAGER*) cinfo->src;
+ /* Just a dumb implementation for now. Could use fseek() except
+ * it doesn't work on pipes. Not clear that being smart is worth
+ * any trouble anyway --- large skips are infrequent.
+ */
+ if (num_bytes > 0) {
+ while (num_bytes > (long) pSrc->pub.bytes_in_buffer) {
+ num_bytes -= (long) pSrc->pub.bytes_in_buffer;
+ (void) _FillInputBuffer(cinfo);
+ /* note we assume that fill_input_buffer will never return FALSE,
+ * so suspension need not be handled.
+ */
+ }
+ pSrc->pub.next_input_byte += (size_t) num_bytes;
+ pSrc->pub.bytes_in_buffer -= (size_t) num_bytes;
+ }
+}
+/*
+ * An additional method that can be provided by data source modules is the
+ * resync_to_restart method for error recovery in the presence of RST markers.
+ * For the moment, this source module just uses the default resync method
+ * provided by the JPEG library. That method assumes that no backtracking
+ * is possible.
+ */
+
+
+/*
+ * Terminate source --- called by jpeg_finish_decompress
+ * after all data has been read. Often a no-op.
+ *
+ * NB: *not* called by jpeg_abort or jpeg_destroy; surrounding
+ * application must deal with any cleanup that should happen even
+ * for error exit.
+ */
+
+static void _TermSource(j_decompress_ptr cinfo) {
+ /* no work necessary here */
+ GUI_USE_PARA(cinfo);
+}
+
+
+static void _InitSrc(j_decompress_ptr cinfo, const U8* pFileData, I32 FileSize) {
+ SOURCE_MANAGER* pSrc;
+ /* The source object and input buffer are made permanent so that a series
+ * of JPEG images can be read from the same file by calling jpeg_stdio_src
+ * only before the first one. (If we discarded the buffer at the end of
+ * one image, we'd likely lose the start of the next one.)
+ * This makes it unsafe to use this manager and a different source
+ * manager serially with the same JPEG object. Caveat programmer.
+ */
+ if (cinfo->src == NULL) { /* first time for this JPEG object? */
+ cinfo->src = (jpeg_source_mgr *) (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT, sizeof(SOURCE_MANAGER));
+ }
+ pSrc = (SOURCE_MANAGER*) cinfo->src;
+ pSrc->pub.init_source = _InitSource;
+ pSrc->pub.fill_input_buffer = _FillInputBuffer;
+ pSrc->pub.skip_input_data = _SkipInputData;
+ pSrc->pub.resync_to_restart = jpeg_resync_to_restart; /* use default method */
+ pSrc->pub.term_source = _TermSource;
+ pSrc->pub.bytes_in_buffer = 0; /* forces fill_input_buffer on first read */
+ pSrc->pub.next_input_byte = NULL; /* until buffer loaded */
+ /*
+ * Init private part of Source manager
+ */
+ pSrc->FileSize = FileSize;
+ pSrc->pFileData = pFileData;
+ pSrc->Off = 0;
+}
+
+
+/*********************************************************************
+*
+* Memory allocation
+*
+**********************************************************************
+*/
+
+int AllocCnt; /* for debugging only */
+int TotalSize;
+/*
+ * Memory allocation and freeing are controlled by the regular library
+ * routines malloc() and free().
+ */
+
+GLOBAL(void *) jpeg_get_small (j_common_ptr cinfo, size_t sizeofobject) {
+ GUI_USE_PARA(cinfo);
+ AllocCnt++;
+ TotalSize += sizeofobject;
+ return (void *) malloc(sizeofobject);
+}
+
+GLOBAL(void) jpeg_free_small (j_common_ptr cinfo, void * object, size_t sizeofobject) {
+ GUI_USE_PARA(cinfo);
+ GUI_USE_PARA(sizeofobject);
+ if (--AllocCnt) {
+ TotalSize = 0;
+ }
+ free(object);
+}
+
+/*
+ * This routine computes the total memory space available for allocation.
+ * Here we always say, "we got all you want bud!"
+ */
+
+GLOBAL(long) jpeg_mem_available (j_common_ptr cinfo, long min_bytes_needed, long max_bytes_needed, long already_allocated) {
+ GUI_USE_PARA(cinfo);
+ GUI_USE_PARA(min_bytes_needed);
+ GUI_USE_PARA(already_allocated);
+ return max_bytes_needed;
+}
+
+
+/*
+ * These routines take care of any system-dependent initialization and
+ * cleanup required. Here, there isn't any.
+ * just set max_memory_to_use to 0
+ */
+
+GLOBAL(long) jpeg_mem_init (j_common_ptr cinfo) {
+ GUI_USE_PARA(cinfo);
+ return 0;
+}
+
+GLOBAL(void) jpeg_mem_term (j_common_ptr cinfo) {
+ GUI_USE_PARA(cinfo);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+/*********************************************************************
+*
+* _Init
+*/
+static void _Init(struct jpeg_error_mgr* pjerr, struct jpeg_decompress_struct *pcinfo, const void * pFileData, int DataSize) {
+ /* 1. Allocate and initialize a JPEG decompression object. */
+ pcinfo->err = jpeg_std_error(pjerr);
+ jpeg_create_decompress(pcinfo);
+ /* 2. Init the source manager so the library can retrieve data via methods */
+ _InitSrc(pcinfo, (const U8*)pFileData, DataSize);
+ /* 3. Call jpeg_read_header() to obtain image info. */
+ jpeg_read_header(pcinfo, TRUE);
+}
+
+/*********************************************************************
+*
+* _WritePixelsRGB
+*/
+static void _WritePixelsRGB(const U8*p, int x0, int y0, int xSize) {
+ U8 r,g,b;
+ while (xSize) {
+ r = *p++;
+ g = *p++;
+ b = *p++;
+ LCD_SetColor(r | (g << 8) | (U32)((U32)b << 16));
+ LCD_DrawPixel(x0++, y0);
+ xSize--;
+ }
+}
+
+/*********************************************************************
+*
+* _WritePixelsGray
+*/
+static void _WritePixelsGray(const U8*p, int x0, int y0, int xSize) {
+ U8 u;
+ while (xSize) {
+ u = *p++;
+ LCD_SetColor(u * (U32)0x10101);
+ LCD_DrawPixel(x0++, y0);
+ xSize--;
+ }
+}
+
+/*********************************************************************
+*
+* Public code
+*
+**********************************************************************
+*/
+/*********************************************************************
+*
+* GUI_JPEG_GetInfo
+*/
+int GUI_JPEG_GetInfo(const void * pFileData, int DataSize, GUI_JPEG_INFO* pInfo) {
+ struct jpeg_decompress_struct cinfo;
+ struct jpeg_error_mgr jerr;
+ _Init(&jerr, &cinfo, pFileData, DataSize);
+ /*
+ * Release the JPEG decompression object.
+ */
+ jpeg_destroy_decompress(&cinfo);
+ if (pInfo) {
+ pInfo->XSize = cinfo.image_width;
+ pInfo->YSize = cinfo.image_height;
+ }
+ return 0;
+}
+
+
+/*********************************************************************
+*
+* GUI_JPEG_Draw
+*/
+int GUI_JPEG_Draw(const void * pFileData, int DataSize, int x0, int y0) {
+ #if (GUI_WINSUPPORT)
+ GUI_RECT r;
+ #endif
+ int Ret = 0;
+ GUI_HMEM hBuffer = 0;
+ struct jpeg_decompress_struct cinfo;
+ struct jpeg_error_mgr jerr;
+ GUI_LOCK();
+ _Init(&jerr, &cinfo, pFileData, DataSize);
+ #if (GUI_WINSUPPORT)
+ WM_ADDORG(x0,y0);
+ r.x1 = (r.x0 = x0) + cinfo.image_width - 1;
+ r.y1 = (r.y0 = y0) + cinfo.image_height - 1;
+ WM_ITERATE_START(&r) {
+ #endif
+ if (hBuffer) {
+ _Init(&jerr, &cinfo, pFileData, DataSize);
+ }
+ /* 4. Set up parameters for decompression (optional ...) */
+ /* 5. jpeg_start_decompress(...); Should normally return quickly */
+ jpeg_start_decompress(&cinfo);
+ /* 6. while (scan lines remain to be read) */
+ /* jpeg_read_scanlines(...); */
+ if (!hBuffer) {
+ hBuffer = GUI_ALLOC_AllocNoInit(cinfo.image_width * 3);
+ }
+ while (cinfo.output_scanline < cinfo.output_height) {
+ U8* p;
+ p = (U8*)GUI_ALLOC_h2p(hBuffer);
+ jpeg_read_scanlines(&cinfo, &p, 1);
+ if (cinfo.jpeg_color_space == JCS_GRAYSCALE) {
+ _WritePixelsGray(p, x0, y0 + cinfo.output_scanline, cinfo.image_width);
+ } else {
+ _WritePixelsRGB(p, x0, y0 + cinfo.output_scanline, cinfo.image_width);
+ }
+ }
+ /* 7. jpeg_finish_decompress(...); */
+ /* Complete the decompression cycle. This causes working memory associated */
+ /* with the JPEG object to be released. */
+ jpeg_finish_decompress(&cinfo);
+ /* 8. Release the JPEG decompression object. */
+ jpeg_destroy_decompress(&cinfo);
+ #if (GUI_WINSUPPORT)
+ } WM_ITERATE_END();
+ #endif
+ GUI_ALLOC_Free(hBuffer);
+ GUI_UNLOCK();
+ return Ret;
+}
+
+/*************************** End of file ****************************/
+
+
diff --git a/User/lib/lcd/gui/JPEG/Image/testimg.bmp b/User/lib/lcd/gui/JPEG/Image/testimg.bmp
new file mode 100644
index 0000000..8603d15
Binary files /dev/null and b/User/lib/lcd/gui/JPEG/Image/testimg.bmp differ
diff --git a/User/lib/lcd/gui/JPEG/Image/testimg.jpg b/User/lib/lcd/gui/JPEG/Image/testimg.jpg
new file mode 100644
index 0000000..b34ca5d
Binary files /dev/null and b/User/lib/lcd/gui/JPEG/Image/testimg.jpg differ
diff --git a/User/lib/lcd/gui/JPEG/Image/testimgp.jpg b/User/lib/lcd/gui/JPEG/Image/testimgp.jpg
new file mode 100644
index 0000000..8cbb658
Binary files /dev/null and b/User/lib/lcd/gui/JPEG/Image/testimgp.jpg differ
diff --git a/User/lib/lcd/gui/JPEG/Image/testorig.jpg b/User/lib/lcd/gui/JPEG/Image/testorig.jpg
new file mode 100644
index 0000000..9816a0c
Binary files /dev/null and b/User/lib/lcd/gui/JPEG/Image/testorig.jpg differ
diff --git a/User/lib/lcd/gui/JPEG/Image/testprog.jpg b/User/lib/lcd/gui/JPEG/Image/testprog.jpg
new file mode 100644
index 0000000..920fee2
Binary files /dev/null and b/User/lib/lcd/gui/JPEG/Image/testprog.jpg differ
diff --git a/User/lib/lcd/gui/JPEG/Image/vssver.scc b/User/lib/lcd/gui/JPEG/Image/vssver.scc
new file mode 100644
index 0000000..efbc7d1
Binary files /dev/null and b/User/lib/lcd/gui/JPEG/Image/vssver.scc differ
diff --git a/User/lib/lcd/gui/JPEG/jcomapi.c b/User/lib/lcd/gui/JPEG/jcomapi.c
new file mode 100644
index 0000000..2dbd71a
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jcomapi.c
@@ -0,0 +1,97 @@
+/*
+ * jcomapi.c
+ *
+ * Copyright (C) 1994-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains application interface routines that are used for both
+ * compression and decompression.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/*
+ * Abort processing of a JPEG compression or decompression operation,
+ * but don't destroy the object itself.
+ *
+ * For this, we merely clean up all the nonpermanent memory pools.
+ * Note that temp files (virtual arrays) are not allowed to belong to
+ * the permanent pool, so we will be able to close all temp files here.
+ * Closing a data source or destination, if necessary, is the application's
+ * responsibility.
+ */
+
+GLOBAL(void)
+jpeg_abort (j_common_ptr cinfo)
+{
+ int pool;
+
+ /* Do nothing if called on a not-initialized or destroyed JPEG object. */
+ if (cinfo->mem == NULL)
+ return;
+
+ /* Releasing pools in reverse order might help avoid fragmentation
+ * with some (brain-damaged) malloc libraries.
+ */
+ for (pool = JPOOL_NUMPOOLS-1; pool > JPOOL_PERMANENT; pool--) {
+ (*cinfo->mem->free_pool) (cinfo, pool);
+ }
+
+ /* Reset overall state for possible reuse of object */
+ if (cinfo->is_decompressor) {
+ cinfo->global_state = DSTATE_START;
+ /* Try to keep application from accessing now-deleted marker list.
+ * A bit kludgy to do it here, but this is the most central place.
+ */
+ ((j_decompress_ptr) cinfo)->marker_list = NULL;
+ } else {
+ cinfo->global_state = CSTATE_START;
+ }
+}
+
+
+/*
+ * Destruction of a JPEG object.
+ *
+ * Everything gets deallocated except the master jpeg_compress_struct itself
+ * and the error manager struct. Both of these are supplied by the application
+ * and must be freed, if necessary, by the application. (Often they are on
+ * the stack and so don't need to be freed anyway.)
+ * Closing a data source or destination, if necessary, is the application's
+ * responsibility.
+ */
+
+GLOBAL(void) jpeg_destroy (j_common_ptr cinfo) {
+ /* We need only tell the memory manager to release everything. */
+ /* NB: mem pointer is NULL if memory mgr failed to initialize. */
+ if (cinfo->mem != NULL) {
+ (*cinfo->mem->self_destruct) (cinfo);
+ }
+ cinfo->mem = NULL; /* be safe if jpeg_destroy is called twice */
+ cinfo->global_state = 0; /* mark it destroyed */
+}
+
+
+/*
+ * Convenience routines for allocating quantization and Huffman tables.
+ * (Would jutils.c be a more reasonable place to put these?)
+ */
+
+GLOBAL(JQUANT_TBL *) jpeg_alloc_quant_table (j_common_ptr cinfo) {
+ JQUANT_TBL *tbl;
+ tbl = (JQUANT_TBL *) (*cinfo->mem->alloc_small) (cinfo, JPOOL_PERMANENT, SIZEOF(JQUANT_TBL));
+ tbl->sent_table = FALSE; /* make sure this is false in any new table */
+ return tbl;
+}
+
+
+GLOBAL(JHUFF_TBL *) jpeg_alloc_huff_table (j_common_ptr cinfo) {
+ JHUFF_TBL *tbl;
+ tbl = (JHUFF_TBL *) (*cinfo->mem->alloc_small) (cinfo, JPOOL_PERMANENT, SIZEOF(JHUFF_TBL));
+ tbl->sent_table = FALSE; /* make sure this is false in any new table */
+ return tbl;
+}
diff --git a/User/lib/lcd/gui/JPEG/jconfig.h b/User/lib/lcd/gui/JPEG/jconfig.h
new file mode 100644
index 0000000..9f20d29
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jconfig.h
@@ -0,0 +1,100 @@
+
+
+/*
+ * jconfig.doc
+ *
+ * Copyright (C) 1991-1994, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file documents the configuration options that are required to
+ * customize the JPEG software for a particular system.
+ *
+ */
+
+
+#include "GUI.h" /* Only needed for GUI_USE_PARA(xxx) */
+
+/*
+ * These symbols indicate the properties of your machine or compiler.
+ * #define the symbol if yes, #undef it if no.
+ */
+
+
+/* Does your compiler support the declaration "unsigned char" ?
+ * How about "unsigned short" ?
+ */
+#define HAVE_UNSIGNED_CHAR
+
+
+/* Define this if an ordinary "char" type is unsigned.
+ * If you're not sure, leaving it undefined will work at some cost in speed.
+ * If you defined HAVE_UNSIGNED_CHAR then the speed difference is minimal.
+ */
+#ifdef CHAR_IS_UNSIGNED
+ #undef CHAR_IS_UNSIGNED
+#endif
+#define HAVE_STDDEF_H /* Define this if your system has an ANSI-conforming file. */
+#define HAVE_STDLIB_H /* Define this if your system has an ANSI-conforming file. */
+#ifdef NEED_BSD_STRINGS
+ #undef NEED_BSD_STRINGS /* Define this if your system does not have an ANSI/SysV , but does have a BSD-style . */
+#endif
+
+/* Define this if your system does not provide typedef size_t in any of the
+ * ANSI-standard places (stddef.h, stdlib.h, or stdio.h), but places it in
+ * instead.
+ */
+#ifdef NEED_SYS_TYPES_H
+ #undef NEED_SYS_TYPES_H
+#endif
+
+/* For 80x86 machines, you need to define NEED_FAR_POINTERS,
+ * unless you are using a large-data memory model or 80386 flat-memory mode.
+ * On less brain-damaged CPUs this symbol must not be defined.
+ * (Defining this symbol causes large data structures to be referenced through
+ * "far" pointers and to be allocated with a special version of malloc.)
+ */
+#ifdef NEED_SYS_TYPES_H
+ #undef NEED_FAR_POINTERS
+#endif
+
+
+/* Although a real ANSI C compiler can deal perfectly well with pointers to
+ * unspecified structures (see "incomplete types" in the spec), a few pre-ANSI
+ * and pseudo-ANSI compilers get confused. To keep one of these bozos happy,
+ * define INCOMPLETE_TYPES_BROKEN. This is not recommended unless you
+ * actually get "missing structure definition" warnings or errors while
+ * compiling the JPEG code.
+ */
+#ifdef INCOMPLETE_TYPES_BROKEN
+ #undef INCOMPLETE_TYPES_BROKEN
+#endif
+
+
+/*
+ * The following options affect code selection within the JPEG library,
+ * but they don't need to be visible to applications using the library.
+ * To minimize application namespace pollution, the symbols won't be
+ * defined unless JPEG_INTERNALS has been defined.
+ */
+
+#ifdef JPEG_INTERNALS
+
+/* Define this if your compiler implements ">>" on signed values as a logical
+ * (unsigned) shift; leave it undefined if ">>" is a signed (arithmetic) shift,
+ * which is the normal and rational definition.
+ */
+#ifdef RIGHT_SHIFT_IS_UNSIGNED
+ #undef RIGHT_SHIFT_IS_UNSIGNED
+#endif
+
+
+#endif /* JPEG_INTERNALS */
+
+#ifndef GUI_USE_PARA
+ #define GUI_USE_PARA(x)
+#endif
+
+
+
+
diff --git a/User/lib/lcd/gui/JPEG/jdapimin.c b/User/lib/lcd/gui/JPEG/jdapimin.c
new file mode 100644
index 0000000..cadb59f
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdapimin.c
@@ -0,0 +1,395 @@
+/*
+ * jdapimin.c
+ *
+ * Copyright (C) 1994-1998, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains application interface code for the decompression half
+ * of the JPEG library. These are the "minimum" API routines that may be
+ * needed in either the normal full-decompression case or the
+ * transcoding-only case.
+ *
+ * Most of the routines intended to be called directly by an application
+ * are in this file or in jdapistd.c. But also see jcomapi.c for routines
+ * shared by compression and decompression, and jdtrans.c for the transcoding
+ * case.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/*
+ * Initialization of a JPEG decompression object.
+ * The error manager must already be set up (in case memory manager fails).
+ */
+
+GLOBAL(void)
+jpeg_CreateDecompress (j_decompress_ptr cinfo, int version, size_t structsize)
+{
+ int i;
+
+ /* Guard against version mismatches between library and caller. */
+ cinfo->mem = NULL; /* so jpeg_destroy knows mem mgr not called */
+ if (version != JPEG_LIB_VERSION)
+ ERREXIT2(cinfo, JERR_BAD_LIB_VERSION, JPEG_LIB_VERSION, version);
+ if (structsize != SIZEOF(struct jpeg_decompress_struct))
+ ERREXIT2(cinfo, JERR_BAD_STRUCT_SIZE,
+ (int) SIZEOF(struct jpeg_decompress_struct), (int) structsize);
+
+ /* For debugging purposes, we zero the whole master structure.
+ * But the application has already set the err pointer, and may have set
+ * client_data, so we have to save and restore those fields.
+ * Note: if application hasn't set client_data, tools like Purify may
+ * complain here.
+ */
+ {
+ struct jpeg_error_mgr * err = cinfo->err;
+ void * client_data = cinfo->client_data; /* ignore Purify complaint here */
+ MEMZERO(cinfo, SIZEOF(struct jpeg_decompress_struct));
+ cinfo->err = err;
+ cinfo->client_data = client_data;
+ }
+ cinfo->is_decompressor = TRUE;
+
+ /* Initialize a memory manager instance for this object */
+ jinit_memory_mgr((j_common_ptr) cinfo);
+
+ /* Zero out pointers to permanent structures. */
+ cinfo->progress = NULL;
+ cinfo->src = NULL;
+
+ for (i = 0; i < NUM_QUANT_TBLS; i++)
+ cinfo->quant_tbl_ptrs[i] = NULL;
+
+ for (i = 0; i < NUM_HUFF_TBLS; i++) {
+ cinfo->dc_huff_tbl_ptrs[i] = NULL;
+ cinfo->ac_huff_tbl_ptrs[i] = NULL;
+ }
+
+ /* Initialize marker processor so application can override methods
+ * for COM, APPn markers before calling jpeg_read_header.
+ */
+ cinfo->marker_list = NULL;
+ jinit_marker_reader(cinfo);
+
+ /* And initialize the overall input controller. */
+ jinit_input_controller(cinfo);
+
+ /* OK, I'm ready */
+ cinfo->global_state = DSTATE_START;
+}
+
+
+/*
+ * Destruction of a JPEG decompression object
+ */
+
+GLOBAL(void)
+jpeg_destroy_decompress (j_decompress_ptr cinfo)
+{
+ jpeg_destroy((j_common_ptr) cinfo); /* use common routine */
+}
+
+
+/*
+ * Abort processing of a JPEG decompression operation,
+ * but don't destroy the object itself.
+ */
+
+GLOBAL(void)
+jpeg_abort_decompress (j_decompress_ptr cinfo)
+{
+ jpeg_abort((j_common_ptr) cinfo); /* use common routine */
+}
+
+
+/*
+ * Set default decompression parameters.
+ */
+
+LOCAL(void)
+default_decompress_parms (j_decompress_ptr cinfo)
+{
+ /* Guess the input colorspace, and set output colorspace accordingly. */
+ /* (Wish JPEG committee had provided a real way to specify this...) */
+ /* Note application may override our guesses. */
+ switch (cinfo->num_components) {
+ case 1:
+ cinfo->jpeg_color_space = JCS_GRAYSCALE;
+ cinfo->out_color_space = JCS_GRAYSCALE;
+ break;
+
+ case 3:
+ if (cinfo->saw_JFIF_marker) {
+ cinfo->jpeg_color_space = JCS_YCbCr; /* JFIF implies YCbCr */
+ } else if (cinfo->saw_Adobe_marker) {
+ switch (cinfo->Adobe_transform) {
+ case 0:
+ cinfo->jpeg_color_space = JCS_RGB;
+ break;
+ case 1:
+ cinfo->jpeg_color_space = JCS_YCbCr;
+ break;
+ default:
+ WARNMS1(cinfo, JWRN_ADOBE_XFORM, cinfo->Adobe_transform);
+ cinfo->jpeg_color_space = JCS_YCbCr; /* assume it's YCbCr */
+ break;
+ }
+ } else {
+ /* Saw no special markers, try to guess from the component IDs */
+ int cid0 = cinfo->comp_info[0].component_id;
+ int cid1 = cinfo->comp_info[1].component_id;
+ int cid2 = cinfo->comp_info[2].component_id;
+
+ if (cid0 == 1 && cid1 == 2 && cid2 == 3)
+ cinfo->jpeg_color_space = JCS_YCbCr; /* assume JFIF w/out marker */
+ else if (cid0 == 82 && cid1 == 71 && cid2 == 66)
+ cinfo->jpeg_color_space = JCS_RGB; /* ASCII 'R', 'G', 'B' */
+ else {
+ TRACEMS3(cinfo, 1, JTRC_UNKNOWN_IDS, cid0, cid1, cid2);
+ cinfo->jpeg_color_space = JCS_YCbCr; /* assume it's YCbCr */
+ }
+ }
+ /* Always guess RGB is proper output colorspace. */
+ cinfo->out_color_space = JCS_RGB;
+ break;
+
+ case 4:
+ if (cinfo->saw_Adobe_marker) {
+ switch (cinfo->Adobe_transform) {
+ case 0:
+ cinfo->jpeg_color_space = JCS_CMYK;
+ break;
+ case 2:
+ cinfo->jpeg_color_space = JCS_YCCK;
+ break;
+ default:
+ WARNMS1(cinfo, JWRN_ADOBE_XFORM, cinfo->Adobe_transform);
+ cinfo->jpeg_color_space = JCS_YCCK; /* assume it's YCCK */
+ break;
+ }
+ } else {
+ /* No special markers, assume straight CMYK. */
+ cinfo->jpeg_color_space = JCS_CMYK;
+ }
+ cinfo->out_color_space = JCS_CMYK;
+ break;
+
+ default:
+ cinfo->jpeg_color_space = JCS_UNKNOWN;
+ cinfo->out_color_space = JCS_UNKNOWN;
+ break;
+ }
+
+ /* Set defaults for other decompression parameters. */
+ cinfo->scale_num = 1; /* 1:1 scaling */
+ cinfo->scale_denom = 1;
+ cinfo->output_gamma = 1.0;
+ cinfo->buffered_image = FALSE;
+ cinfo->raw_data_out = FALSE;
+ cinfo->dct_method = JDCT_DEFAULT;
+ cinfo->do_fancy_upsampling = TRUE;
+ cinfo->do_block_smoothing = TRUE;
+ cinfo->quantize_colors = FALSE;
+ /* We set these in case application only sets quantize_colors. */
+ cinfo->dither_mode = JDITHER_FS;
+#ifdef QUANT_2PASS_SUPPORTED
+ cinfo->two_pass_quantize = TRUE;
+#else
+ cinfo->two_pass_quantize = FALSE;
+#endif
+ cinfo->desired_number_of_colors = 256;
+ cinfo->colormap = NULL;
+ /* Initialize for no mode change in buffered-image mode. */
+ cinfo->enable_1pass_quant = FALSE;
+ cinfo->enable_external_quant = FALSE;
+ cinfo->enable_2pass_quant = FALSE;
+}
+
+
+/*
+ * Decompression startup: read start of JPEG datastream to see what's there.
+ * Need only initialize JPEG object and supply a data source before calling.
+ *
+ * This routine will read as far as the first SOS marker (ie, actual start of
+ * compressed data), and will save all tables and parameters in the JPEG
+ * object. It will also initialize the decompression parameters to default
+ * values, and finally return JPEG_HEADER_OK. On return, the application may
+ * adjust the decompression parameters and then call jpeg_start_decompress.
+ * (Or, if the application only wanted to determine the image parameters,
+ * the data need not be decompressed. In that case, call jpeg_abort or
+ * jpeg_destroy to release any temporary space.)
+ * If an abbreviated (tables only) datastream is presented, the routine will
+ * return JPEG_HEADER_TABLES_ONLY upon reaching EOI. The application may then
+ * re-use the JPEG object to read the abbreviated image datastream(s).
+ * It is unnecessary (but OK) to call jpeg_abort in this case.
+ * The JPEG_SUSPENDED return code only occurs if the data source module
+ * requests suspension of the decompressor. In this case the application
+ * should load more source data and then re-call jpeg_read_header to resume
+ * processing.
+ * If a non-suspending data source is used and require_image is TRUE, then the
+ * return code need not be inspected since only JPEG_HEADER_OK is possible.
+ *
+ * This routine is now just a front end to jpeg_consume_input, with some
+ * extra error checking.
+ */
+
+GLOBAL(int)
+jpeg_read_header (j_decompress_ptr cinfo, boolean require_image)
+{
+ int retcode;
+
+ if (cinfo->global_state != DSTATE_START &&
+ cinfo->global_state != DSTATE_INHEADER)
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+
+ retcode = jpeg_consume_input(cinfo);
+
+ switch (retcode) {
+ case JPEG_REACHED_SOS:
+ retcode = JPEG_HEADER_OK;
+ break;
+ case JPEG_REACHED_EOI:
+ if (require_image) /* Complain if application wanted an image */
+ ERREXIT(cinfo, JERR_NO_IMAGE);
+ /* Reset to start state; it would be safer to require the application to
+ * call jpeg_abort, but we can't change it now for compatibility reasons.
+ * A side effect is to free any temporary memory (there shouldn't be any).
+ */
+ jpeg_abort((j_common_ptr) cinfo); /* sets state = DSTATE_START */
+ retcode = JPEG_HEADER_TABLES_ONLY;
+ break;
+ case JPEG_SUSPENDED:
+ /* no work */
+ break;
+ }
+
+ return retcode;
+}
+
+
+/*
+ * Consume data in advance of what the decompressor requires.
+ * This can be called at any time once the decompressor object has
+ * been created and a data source has been set up.
+ *
+ * This routine is essentially a state machine that handles a couple
+ * of critical state-transition actions, namely initial setup and
+ * transition from header scanning to ready-for-start_decompress.
+ * All the actual input is done via the input controller's consume_input
+ * method.
+ */
+
+GLOBAL(int)
+jpeg_consume_input (j_decompress_ptr cinfo)
+{
+ int retcode = JPEG_SUSPENDED;
+
+ /* NB: every possible DSTATE value should be listed in this switch */
+ switch (cinfo->global_state) {
+ case DSTATE_START:
+ /* Start-of-datastream actions: reset appropriate modules */
+ (*cinfo->inputctl->reset_input_controller) (cinfo);
+ /* Initialize application's data source module */
+ (*cinfo->src->init_source) (cinfo);
+ cinfo->global_state = DSTATE_INHEADER;
+ /*FALLTHROUGH*/
+ case DSTATE_INHEADER:
+ retcode = (*cinfo->inputctl->consume_input) (cinfo);
+ if (retcode == JPEG_REACHED_SOS) { /* Found SOS, prepare to decompress */
+ /* Set up default parameters based on header data */
+ default_decompress_parms(cinfo);
+ /* Set global state: ready for start_decompress */
+ cinfo->global_state = DSTATE_READY;
+ }
+ break;
+ case DSTATE_READY:
+ /* Can't advance past first SOS until start_decompress is called */
+ retcode = JPEG_REACHED_SOS;
+ break;
+ case DSTATE_PRELOAD:
+ case DSTATE_PRESCAN:
+ case DSTATE_SCANNING:
+ case DSTATE_RAW_OK:
+ case DSTATE_BUFIMAGE:
+ case DSTATE_BUFPOST:
+ case DSTATE_STOPPING:
+ retcode = (*cinfo->inputctl->consume_input) (cinfo);
+ break;
+ default:
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+ }
+ return retcode;
+}
+
+
+/*
+ * Have we finished reading the input file?
+ */
+
+GLOBAL(boolean)
+jpeg_input_complete (j_decompress_ptr cinfo)
+{
+ /* Check for valid jpeg object */
+ if (cinfo->global_state < DSTATE_START ||
+ cinfo->global_state > DSTATE_STOPPING)
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+ return cinfo->inputctl->eoi_reached;
+}
+
+
+/*
+ * Is there more than one scan?
+ */
+
+GLOBAL(boolean)
+jpeg_has_multiple_scans (j_decompress_ptr cinfo)
+{
+ /* Only valid after jpeg_read_header completes */
+ if (cinfo->global_state < DSTATE_READY ||
+ cinfo->global_state > DSTATE_STOPPING)
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+ return cinfo->inputctl->has_multiple_scans;
+}
+
+
+/*
+ * Finish JPEG decompression.
+ *
+ * This will normally just verify the file trailer and release temp storage.
+ *
+ * Returns FALSE if suspended. The return value need be inspected only if
+ * a suspending data source is used.
+ */
+
+GLOBAL(boolean)
+jpeg_finish_decompress (j_decompress_ptr cinfo)
+{
+ if ((cinfo->global_state == DSTATE_SCANNING ||
+ cinfo->global_state == DSTATE_RAW_OK) && ! cinfo->buffered_image) {
+ /* Terminate final pass of non-buffered mode */
+ if (cinfo->output_scanline < cinfo->output_height)
+ ERREXIT(cinfo, JERR_TOO_LITTLE_DATA);
+ (*cinfo->master->finish_output_pass) (cinfo);
+ cinfo->global_state = DSTATE_STOPPING;
+ } else if (cinfo->global_state == DSTATE_BUFIMAGE) {
+ /* Finishing after a buffered-image operation */
+ cinfo->global_state = DSTATE_STOPPING;
+ } else if (cinfo->global_state != DSTATE_STOPPING) {
+ /* STOPPING = repeat call after a suspension, anything else is error */
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+ }
+ /* Read until EOI */
+ while (! cinfo->inputctl->eoi_reached) {
+ if ((*cinfo->inputctl->consume_input) (cinfo) == JPEG_SUSPENDED)
+ return FALSE; /* Suspend, come back later */
+ }
+ /* Do final cleanup */
+ (*cinfo->src->term_source) (cinfo);
+ /* We can use jpeg_abort to release memory and reset global_state */
+ jpeg_abort((j_common_ptr) cinfo);
+ return TRUE;
+}
diff --git a/User/lib/lcd/gui/JPEG/jdapistd.c b/User/lib/lcd/gui/JPEG/jdapistd.c
new file mode 100644
index 0000000..83d7d99
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdapistd.c
@@ -0,0 +1,275 @@
+/*
+ * jdapistd.c
+ *
+ * Copyright (C) 1994-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains application interface code for the decompression half
+ * of the JPEG library. These are the "standard" API routines that are
+ * used in the normal full-decompression case. They are not used by a
+ * transcoding-only application. Note that if an application links in
+ * jpeg_start_decompress, it will end up linking in the entire decompressor.
+ * We thus must separate this file from jdapimin.c to avoid linking the
+ * whole decompression library into a transcoder.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/* Forward declarations */
+LOCAL(boolean) output_pass_setup JPP((j_decompress_ptr cinfo));
+
+
+/*
+ * Decompression initialization.
+ * jpeg_read_header must be completed before calling this.
+ *
+ * If a multipass operating mode was selected, this will do all but the
+ * last pass, and thus may take a great deal of time.
+ *
+ * Returns FALSE if suspended. The return value need be inspected only if
+ * a suspending data source is used.
+ */
+
+GLOBAL(boolean)
+jpeg_start_decompress (j_decompress_ptr cinfo)
+{
+ if (cinfo->global_state == DSTATE_READY) {
+ /* First call: initialize master control, select active modules */
+ jinit_master_decompress(cinfo);
+ if (cinfo->buffered_image) {
+ /* No more work here; expecting jpeg_start_output next */
+ cinfo->global_state = DSTATE_BUFIMAGE;
+ return TRUE;
+ }
+ cinfo->global_state = DSTATE_PRELOAD;
+ }
+ if (cinfo->global_state == DSTATE_PRELOAD) {
+ /* If file has multiple scans, absorb them all into the coef buffer */
+ if (cinfo->inputctl->has_multiple_scans) {
+#ifdef D_MULTISCAN_FILES_SUPPORTED
+ while (1) {
+ int retcode;
+ /* Call progress monitor hook if present */
+ if (cinfo->progress != NULL)
+ (*cinfo->progress->progress_monitor) ((j_common_ptr) cinfo);
+ /* Absorb some more input */
+ retcode = (*cinfo->inputctl->consume_input) (cinfo);
+ if (retcode == JPEG_SUSPENDED)
+ return FALSE;
+ if (retcode == JPEG_REACHED_EOI)
+ break;
+ /* Advance progress counter if appropriate */
+ if (cinfo->progress != NULL &&
+ (retcode == JPEG_ROW_COMPLETED || retcode == JPEG_REACHED_SOS)) {
+ if (++cinfo->progress->pass_counter >= cinfo->progress->pass_limit) {
+ /* jdmaster underestimated number of scans; ratchet up one scan */
+ cinfo->progress->pass_limit += (long) cinfo->total_iMCU_rows;
+ }
+ }
+ }
+#else
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+#endif /* D_MULTISCAN_FILES_SUPPORTED */
+ }
+ cinfo->output_scan_number = cinfo->input_scan_number;
+ } else if (cinfo->global_state != DSTATE_PRESCAN)
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+ /* Perform any dummy output passes, and set up for the final pass */
+ return output_pass_setup(cinfo);
+}
+
+
+/*
+ * Set up for an output pass, and perform any dummy pass(es) needed.
+ * Common subroutine for jpeg_start_decompress and jpeg_start_output.
+ * Entry: global_state = DSTATE_PRESCAN only if previously suspended.
+ * Exit: If done, returns TRUE and sets global_state for proper output mode.
+ * If suspended, returns FALSE and sets global_state = DSTATE_PRESCAN.
+ */
+
+LOCAL(boolean)
+output_pass_setup (j_decompress_ptr cinfo)
+{
+ if (cinfo->global_state != DSTATE_PRESCAN) {
+ /* First call: do pass setup */
+ (*cinfo->master->prepare_for_output_pass) (cinfo);
+ cinfo->output_scanline = 0;
+ cinfo->global_state = DSTATE_PRESCAN;
+ }
+ /* Loop over any required dummy passes */
+ while (cinfo->master->is_dummy_pass) {
+#ifdef QUANT_2PASS_SUPPORTED
+ /* Crank through the dummy pass */
+ while (cinfo->output_scanline < cinfo->output_height) {
+ JDIMENSION last_scanline;
+ /* Call progress monitor hook if present */
+ if (cinfo->progress != NULL) {
+ cinfo->progress->pass_counter = (long) cinfo->output_scanline;
+ cinfo->progress->pass_limit = (long) cinfo->output_height;
+ (*cinfo->progress->progress_monitor) ((j_common_ptr) cinfo);
+ }
+ /* Process some data */
+ last_scanline = cinfo->output_scanline;
+ (*cinfo->main->process_data) (cinfo, (JSAMPARRAY) NULL,
+ &cinfo->output_scanline, (JDIMENSION) 0);
+ if (cinfo->output_scanline == last_scanline)
+ return FALSE; /* No progress made, must suspend */
+ }
+ /* Finish up dummy pass, and set up for another one */
+ (*cinfo->master->finish_output_pass) (cinfo);
+ (*cinfo->master->prepare_for_output_pass) (cinfo);
+ cinfo->output_scanline = 0;
+#else
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+#endif /* QUANT_2PASS_SUPPORTED */
+ }
+ /* Ready for application to drive output pass through
+ * jpeg_read_scanlines or jpeg_read_raw_data.
+ */
+ cinfo->global_state = cinfo->raw_data_out ? DSTATE_RAW_OK : DSTATE_SCANNING;
+ return TRUE;
+}
+
+
+/*
+ * Read some scanlines of data from the JPEG decompressor.
+ *
+ * The return value will be the number of lines actually read.
+ * This may be less than the number requested in several cases,
+ * including bottom of image, data source suspension, and operating
+ * modes that emit multiple scanlines at a time.
+ *
+ * Note: we warn about excess calls to jpeg_read_scanlines() since
+ * this likely signals an application programmer error. However,
+ * an oversize buffer (max_lines > scanlines remaining) is not an error.
+ */
+
+GLOBAL(JDIMENSION)
+jpeg_read_scanlines (j_decompress_ptr cinfo, JSAMPARRAY scanlines,
+ JDIMENSION max_lines)
+{
+ JDIMENSION row_ctr;
+
+ if (cinfo->global_state != DSTATE_SCANNING)
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+ if (cinfo->output_scanline >= cinfo->output_height) {
+ WARNMS(cinfo, JWRN_TOO_MUCH_DATA);
+ return 0;
+ }
+
+ /* Call progress monitor hook if present */
+ if (cinfo->progress != NULL) {
+ cinfo->progress->pass_counter = (long) cinfo->output_scanline;
+ cinfo->progress->pass_limit = (long) cinfo->output_height;
+ (*cinfo->progress->progress_monitor) ((j_common_ptr) cinfo);
+ }
+
+ /* Process some data */
+ row_ctr = 0;
+ (*cinfo->main->process_data) (cinfo, scanlines, &row_ctr, max_lines);
+ cinfo->output_scanline += row_ctr;
+ return row_ctr;
+}
+
+
+/*
+ * Alternate entry point to read raw data.
+ * Processes exactly one iMCU row per call, unless suspended.
+ */
+
+GLOBAL(JDIMENSION)
+jpeg_read_raw_data (j_decompress_ptr cinfo, JSAMPIMAGE data,
+ JDIMENSION max_lines)
+{
+ JDIMENSION lines_per_iMCU_row;
+
+ if (cinfo->global_state != DSTATE_RAW_OK)
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+ if (cinfo->output_scanline >= cinfo->output_height) {
+ WARNMS(cinfo, JWRN_TOO_MUCH_DATA);
+ return 0;
+ }
+
+ /* Call progress monitor hook if present */
+ if (cinfo->progress != NULL) {
+ cinfo->progress->pass_counter = (long) cinfo->output_scanline;
+ cinfo->progress->pass_limit = (long) cinfo->output_height;
+ (*cinfo->progress->progress_monitor) ((j_common_ptr) cinfo);
+ }
+
+ /* Verify that at least one iMCU row can be returned. */
+ lines_per_iMCU_row = cinfo->max_v_samp_factor * cinfo->min_DCT_scaled_size;
+ if (max_lines < lines_per_iMCU_row)
+ ERREXIT(cinfo, JERR_BUFFER_SIZE);
+
+ /* Decompress directly into user's buffer. */
+ if (! (*cinfo->coef->decompress_data) (cinfo, data))
+ return 0; /* suspension forced, can do nothing more */
+
+ /* OK, we processed one iMCU row. */
+ cinfo->output_scanline += lines_per_iMCU_row;
+ return lines_per_iMCU_row;
+}
+
+
+/* Additional entry points for buffered-image mode. */
+
+#ifdef D_MULTISCAN_FILES_SUPPORTED
+
+/*
+ * Initialize for an output pass in buffered-image mode.
+ */
+
+GLOBAL(boolean)
+jpeg_start_output (j_decompress_ptr cinfo, int scan_number)
+{
+ if (cinfo->global_state != DSTATE_BUFIMAGE &&
+ cinfo->global_state != DSTATE_PRESCAN)
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+ /* Limit scan number to valid range */
+ if (scan_number <= 0)
+ scan_number = 1;
+ if (cinfo->inputctl->eoi_reached &&
+ scan_number > cinfo->input_scan_number)
+ scan_number = cinfo->input_scan_number;
+ cinfo->output_scan_number = scan_number;
+ /* Perform any dummy output passes, and set up for the real pass */
+ return output_pass_setup(cinfo);
+}
+
+
+/*
+ * Finish up after an output pass in buffered-image mode.
+ *
+ * Returns FALSE if suspended. The return value need be inspected only if
+ * a suspending data source is used.
+ */
+
+GLOBAL(boolean)
+jpeg_finish_output (j_decompress_ptr cinfo)
+{
+ if ((cinfo->global_state == DSTATE_SCANNING ||
+ cinfo->global_state == DSTATE_RAW_OK) && cinfo->buffered_image) {
+ /* Terminate this pass. */
+ /* We do not require the whole pass to have been completed. */
+ (*cinfo->master->finish_output_pass) (cinfo);
+ cinfo->global_state = DSTATE_BUFPOST;
+ } else if (cinfo->global_state != DSTATE_BUFPOST) {
+ /* BUFPOST = repeat call after a suspension, anything else is error */
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+ }
+ /* Read markers looking for SOS or EOI */
+ while (cinfo->input_scan_number <= cinfo->output_scan_number &&
+ ! cinfo->inputctl->eoi_reached) {
+ if ((*cinfo->inputctl->consume_input) (cinfo) == JPEG_SUSPENDED)
+ return FALSE; /* Suspend, come back later */
+ }
+ cinfo->global_state = DSTATE_BUFIMAGE;
+ return TRUE;
+}
+
+#endif /* D_MULTISCAN_FILES_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jdcoefct.c b/User/lib/lcd/gui/JPEG/jdcoefct.c
new file mode 100644
index 0000000..3197f01
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdcoefct.c
@@ -0,0 +1,737 @@
+/*
+ * jdcoefct.c
+ *
+ * Copyright (C) 1994-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains the coefficient buffer controller for decompression.
+ * This controller is the top level of the JPEG decompressor proper.
+ * The coefficient buffer lies between entropy decoding and inverse-DCT steps.
+ *
+ * In buffered-image mode, this controller is the interface between
+ * input-oriented processing and output-oriented processing.
+ * Also, the input side (only) is used when reading a file for transcoding.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+/* Block smoothing is only applicable for progressive JPEG, so: */
+#ifndef D_PROGRESSIVE_SUPPORTED
+#undef BLOCK_SMOOTHING_SUPPORTED
+#endif
+
+/* Private buffer controller object */
+
+typedef struct {
+ struct jpeg_d_coef_controller pub; /* public fields */
+
+ /* These variables keep track of the current location of the input side. */
+ /* cinfo->input_iMCU_row is also used for this. */
+ JDIMENSION MCU_ctr; /* counts MCUs processed in current row */
+ int MCU_vert_offset; /* counts MCU rows within iMCU row */
+ int MCU_rows_per_iMCU_row; /* number of such rows needed */
+
+ /* The output side's location is represented by cinfo->output_iMCU_row. */
+
+ /* In single-pass modes, it's sufficient to buffer just one MCU.
+ * We allocate a workspace of D_MAX_BLOCKS_IN_MCU coefficient blocks,
+ * and let the entropy decoder write into that workspace each time.
+ * (On 80x86, the workspace is FAR even though it's not really very big;
+ * this is to keep the module interfaces unchanged when a large coefficient
+ * buffer is necessary.)
+ * In multi-pass modes, this array points to the current MCU's blocks
+ * within the virtual arrays; it is used only by the input side.
+ */
+ JBLOCKROW MCU_buffer[D_MAX_BLOCKS_IN_MCU];
+
+#ifdef D_MULTISCAN_FILES_SUPPORTED
+ /* In multi-pass modes, we need a virtual block array for each component. */
+ jvirt_barray_ptr whole_image[MAX_COMPONENTS];
+#endif
+
+#ifdef BLOCK_SMOOTHING_SUPPORTED
+ /* When doing block smoothing, we latch coefficient Al values here */
+ int * coef_bits_latch;
+#define SAVED_COEFS 6 /* we save coef_bits[0..5] */
+#endif
+} my_coef_controller;
+
+typedef my_coef_controller * my_coef_ptr;
+
+/* Forward declarations */
+METHODDEF(int) decompress_onepass
+ JPP((j_decompress_ptr cinfo, JSAMPIMAGE output_buf));
+#ifdef D_MULTISCAN_FILES_SUPPORTED
+METHODDEF(int) decompress_data
+ JPP((j_decompress_ptr cinfo, JSAMPIMAGE output_buf));
+#endif
+#ifdef BLOCK_SMOOTHING_SUPPORTED
+LOCAL(boolean) smoothing_ok JPP((j_decompress_ptr cinfo));
+METHODDEF(int) decompress_smooth_data
+ JPP((j_decompress_ptr cinfo, JSAMPIMAGE output_buf));
+#endif
+
+
+LOCAL(void)
+start_iMCU_row (j_decompress_ptr cinfo)
+/* Reset within-iMCU-row counters for a new row (input side) */
+{
+ my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
+
+ /* In an interleaved scan, an MCU row is the same as an iMCU row.
+ * In a noninterleaved scan, an iMCU row has v_samp_factor MCU rows.
+ * But at the bottom of the image, process only what's left.
+ */
+ if (cinfo->comps_in_scan > 1) {
+ coef->MCU_rows_per_iMCU_row = 1;
+ } else {
+ if (cinfo->input_iMCU_row < (cinfo->total_iMCU_rows-1))
+ coef->MCU_rows_per_iMCU_row = cinfo->cur_comp_info[0]->v_samp_factor;
+ else
+ coef->MCU_rows_per_iMCU_row = cinfo->cur_comp_info[0]->last_row_height;
+ }
+
+ coef->MCU_ctr = 0;
+ coef->MCU_vert_offset = 0;
+}
+
+
+/*
+ * Initialize for an input processing pass.
+ */
+
+METHODDEF(void)
+start_input_pass (j_decompress_ptr cinfo)
+{
+ cinfo->input_iMCU_row = 0;
+ start_iMCU_row(cinfo);
+}
+
+
+/*
+ * Initialize for an output processing pass.
+ */
+
+METHODDEF(void)
+start_output_pass (j_decompress_ptr cinfo)
+{
+#ifdef BLOCK_SMOOTHING_SUPPORTED
+ my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
+
+ /* If multipass, check to see whether to use block smoothing on this pass */
+ if (coef->pub.coef_arrays != NULL) {
+ if (cinfo->do_block_smoothing && smoothing_ok(cinfo))
+ coef->pub.decompress_data = decompress_smooth_data;
+ else
+ coef->pub.decompress_data = decompress_data;
+ }
+#endif
+ cinfo->output_iMCU_row = 0;
+}
+
+
+/*
+ * Decompress and return some data in the single-pass case.
+ * Always attempts to emit one fully interleaved MCU row ("iMCU" row).
+ * Input and output must run in lockstep since we have only a one-MCU buffer.
+ * Return value is JPEG_ROW_COMPLETED, JPEG_SCAN_COMPLETED, or JPEG_SUSPENDED.
+ *
+ * NB: output_buf contains a plane for each component in image,
+ * which we index according to the component's SOF position.
+ */
+
+METHODDEF(int)
+decompress_onepass (j_decompress_ptr cinfo, JSAMPIMAGE output_buf)
+{
+ my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
+ JDIMENSION MCU_col_num; /* index of current MCU within row */
+ JDIMENSION last_MCU_col = cinfo->MCUs_per_row - 1;
+ JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1;
+ int blkn, ci, xindex, yindex, yoffset, useful_width;
+ JSAMPARRAY output_ptr;
+ JDIMENSION start_col, output_col;
+ jpeg_component_info *compptr;
+ inverse_DCT_method_ptr inverse_DCT;
+
+ /* Loop to process as much as one whole iMCU row */
+ for (yoffset = coef->MCU_vert_offset; yoffset < coef->MCU_rows_per_iMCU_row;
+ yoffset++) {
+ for (MCU_col_num = coef->MCU_ctr; MCU_col_num <= last_MCU_col;
+ MCU_col_num++) {
+ /* Try to fetch an MCU. Entropy decoder expects buffer to be zeroed. */
+ jzero_far((void FAR *) coef->MCU_buffer[0],
+ (size_t) (cinfo->blocks_in_MCU * SIZEOF(JBLOCK)));
+ if (! (*cinfo->entropy->decode_mcu) (cinfo, coef->MCU_buffer)) {
+ /* Suspension forced; update state counters and exit */
+ coef->MCU_vert_offset = yoffset;
+ coef->MCU_ctr = MCU_col_num;
+ return JPEG_SUSPENDED;
+ }
+ /* Determine where data should go in output_buf and do the IDCT thing.
+ * We skip dummy blocks at the right and bottom edges (but blkn gets
+ * incremented past them!). Note the inner loop relies on having
+ * allocated the MCU_buffer[] blocks sequentially.
+ */
+ blkn = 0; /* index of current DCT block within MCU */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ /* Don't bother to IDCT an uninteresting component. */
+ if (! compptr->component_needed) {
+ blkn += compptr->MCU_blocks;
+ continue;
+ }
+ inverse_DCT = cinfo->idct->inverse_DCT[compptr->component_index];
+ useful_width = (MCU_col_num < last_MCU_col) ? compptr->MCU_width
+ : compptr->last_col_width;
+ output_ptr = output_buf[compptr->component_index] +
+ yoffset * compptr->DCT_scaled_size;
+ start_col = MCU_col_num * compptr->MCU_sample_width;
+ for (yindex = 0; yindex < compptr->MCU_height; yindex++) {
+ if (cinfo->input_iMCU_row < last_iMCU_row ||
+ yoffset+yindex < compptr->last_row_height) {
+ output_col = start_col;
+ for (xindex = 0; xindex < useful_width; xindex++) {
+ (*inverse_DCT) (cinfo, compptr,
+ (JCOEFPTR) coef->MCU_buffer[blkn+xindex],
+ output_ptr, output_col);
+ output_col += compptr->DCT_scaled_size;
+ }
+ }
+ blkn += compptr->MCU_width;
+ output_ptr += compptr->DCT_scaled_size;
+ }
+ }
+ }
+ /* Completed an MCU row, but perhaps not an iMCU row */
+ coef->MCU_ctr = 0;
+ }
+ /* Completed the iMCU row, advance counters for next one */
+ cinfo->output_iMCU_row++;
+ if (++(cinfo->input_iMCU_row) < cinfo->total_iMCU_rows) {
+ start_iMCU_row(cinfo);
+ return JPEG_ROW_COMPLETED;
+ }
+ /* Completed the scan */
+ (*cinfo->inputctl->finish_input_pass) (cinfo);
+ return JPEG_SCAN_COMPLETED;
+}
+
+
+/*
+ * Dummy consume-input routine for single-pass operation.
+ */
+
+METHODDEF(int)
+dummy_consume_data (j_decompress_ptr cinfo)
+{
+ GUI_USE_PARA(cinfo);
+ return JPEG_SUSPENDED; /* Always indicate nothing was done */
+}
+
+
+#ifdef D_MULTISCAN_FILES_SUPPORTED
+
+/*
+ * Consume input data and store it in the full-image coefficient buffer.
+ * We read as much as one fully interleaved MCU row ("iMCU" row) per call,
+ * ie, v_samp_factor block rows for each component in the scan.
+ * Return value is JPEG_ROW_COMPLETED, JPEG_SCAN_COMPLETED, or JPEG_SUSPENDED.
+ */
+
+METHODDEF(int)
+consume_data (j_decompress_ptr cinfo)
+{
+ my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
+ JDIMENSION MCU_col_num; /* index of current MCU within row */
+ int blkn, ci, xindex, yindex, yoffset;
+ JDIMENSION start_col;
+ JBLOCKARRAY buffer[MAX_COMPS_IN_SCAN];
+ JBLOCKROW buffer_ptr;
+ jpeg_component_info *compptr;
+
+ /* Align the virtual buffers for the components used in this scan. */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ buffer[ci] = (*cinfo->mem->access_virt_barray)
+ ((j_common_ptr) cinfo, coef->whole_image[compptr->component_index],
+ cinfo->input_iMCU_row * compptr->v_samp_factor,
+ (JDIMENSION) compptr->v_samp_factor, TRUE);
+ /* Note: entropy decoder expects buffer to be zeroed,
+ * but this is handled automatically by the memory manager
+ * because we requested a pre-zeroed array.
+ */
+ }
+
+ /* Loop to process one whole iMCU row */
+ for (yoffset = coef->MCU_vert_offset; yoffset < coef->MCU_rows_per_iMCU_row;
+ yoffset++) {
+ for (MCU_col_num = coef->MCU_ctr; MCU_col_num < cinfo->MCUs_per_row;
+ MCU_col_num++) {
+ /* Construct list of pointers to DCT blocks belonging to this MCU */
+ blkn = 0; /* index of current DCT block within MCU */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ start_col = MCU_col_num * compptr->MCU_width;
+ for (yindex = 0; yindex < compptr->MCU_height; yindex++) {
+ buffer_ptr = buffer[ci][yindex+yoffset] + start_col;
+ for (xindex = 0; xindex < compptr->MCU_width; xindex++) {
+ coef->MCU_buffer[blkn++] = buffer_ptr++;
+ }
+ }
+ }
+ /* Try to fetch the MCU. */
+ if (! (*cinfo->entropy->decode_mcu) (cinfo, coef->MCU_buffer)) {
+ /* Suspension forced; update state counters and exit */
+ coef->MCU_vert_offset = yoffset;
+ coef->MCU_ctr = MCU_col_num;
+ return JPEG_SUSPENDED;
+ }
+ }
+ /* Completed an MCU row, but perhaps not an iMCU row */
+ coef->MCU_ctr = 0;
+ }
+ /* Completed the iMCU row, advance counters for next one */
+ if (++(cinfo->input_iMCU_row) < cinfo->total_iMCU_rows) {
+ start_iMCU_row(cinfo);
+ return JPEG_ROW_COMPLETED;
+ }
+ /* Completed the scan */
+ (*cinfo->inputctl->finish_input_pass) (cinfo);
+ return JPEG_SCAN_COMPLETED;
+}
+
+
+/*
+ * Decompress and return some data in the multi-pass case.
+ * Always attempts to emit one fully interleaved MCU row ("iMCU" row).
+ * Return value is JPEG_ROW_COMPLETED, JPEG_SCAN_COMPLETED, or JPEG_SUSPENDED.
+ *
+ * NB: output_buf contains a plane for each component in image.
+ */
+
+METHODDEF(int)
+decompress_data (j_decompress_ptr cinfo, JSAMPIMAGE output_buf)
+{
+ my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
+ JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1;
+ JDIMENSION block_num;
+ int ci, block_row, block_rows;
+ JBLOCKARRAY buffer;
+ JBLOCKROW buffer_ptr;
+ JSAMPARRAY output_ptr;
+ JDIMENSION output_col;
+ jpeg_component_info *compptr;
+ inverse_DCT_method_ptr inverse_DCT;
+
+ /* Force some input to be done if we are getting ahead of the input. */
+ while (cinfo->input_scan_number < cinfo->output_scan_number ||
+ (cinfo->input_scan_number == cinfo->output_scan_number &&
+ cinfo->input_iMCU_row <= cinfo->output_iMCU_row)) {
+ if ((*cinfo->inputctl->consume_input)(cinfo) == JPEG_SUSPENDED)
+ return JPEG_SUSPENDED;
+ }
+
+ /* OK, output from the virtual arrays. */
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ /* Don't bother to IDCT an uninteresting component. */
+ if (! compptr->component_needed)
+ continue;
+ /* Align the virtual buffer for this component. */
+ buffer = (*cinfo->mem->access_virt_barray)
+ ((j_common_ptr) cinfo, coef->whole_image[ci],
+ cinfo->output_iMCU_row * compptr->v_samp_factor,
+ (JDIMENSION) compptr->v_samp_factor, FALSE);
+ /* Count non-dummy DCT block rows in this iMCU row. */
+ if (cinfo->output_iMCU_row < last_iMCU_row)
+ block_rows = compptr->v_samp_factor;
+ else {
+ /* NB: can't use last_row_height here; it is input-side-dependent! */
+ block_rows = (int) (compptr->height_in_blocks % compptr->v_samp_factor);
+ if (block_rows == 0) block_rows = compptr->v_samp_factor;
+ }
+ inverse_DCT = cinfo->idct->inverse_DCT[ci];
+ output_ptr = output_buf[ci];
+ /* Loop over all DCT blocks to be processed. */
+ for (block_row = 0; block_row < block_rows; block_row++) {
+ buffer_ptr = buffer[block_row];
+ output_col = 0;
+ for (block_num = 0; block_num < compptr->width_in_blocks; block_num++) {
+ (*inverse_DCT) (cinfo, compptr, (JCOEFPTR) buffer_ptr,
+ output_ptr, output_col);
+ buffer_ptr++;
+ output_col += compptr->DCT_scaled_size;
+ }
+ output_ptr += compptr->DCT_scaled_size;
+ }
+ }
+
+ if (++(cinfo->output_iMCU_row) < cinfo->total_iMCU_rows)
+ return JPEG_ROW_COMPLETED;
+ return JPEG_SCAN_COMPLETED;
+}
+
+#endif /* D_MULTISCAN_FILES_SUPPORTED */
+
+
+#ifdef BLOCK_SMOOTHING_SUPPORTED
+
+/*
+ * This code applies interblock smoothing as described by section K.8
+ * of the JPEG standard: the first 5 AC coefficients are estimated from
+ * the DC values of a DCT block and its 8 neighboring blocks.
+ * We apply smoothing only for progressive JPEG decoding, and only if
+ * the coefficients it can estimate are not yet known to full precision.
+ */
+
+/* Natural-order array positions of the first 5 zigzag-order coefficients */
+#define Q01_POS 1
+#define Q10_POS 8
+#define Q20_POS 16
+#define Q11_POS 9
+#define Q02_POS 2
+
+/*
+ * Determine whether block smoothing is applicable and safe.
+ * We also latch the current states of the coef_bits[] entries for the
+ * AC coefficients; otherwise, if the input side of the decompressor
+ * advances into a new scan, we might think the coefficients are known
+ * more accurately than they really are.
+ */
+
+LOCAL(boolean)
+smoothing_ok (j_decompress_ptr cinfo)
+{
+ my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
+ boolean smoothing_useful = FALSE;
+ int ci, coefi;
+ jpeg_component_info *compptr;
+ JQUANT_TBL * qtable;
+ int * coef_bits;
+ int * coef_bits_latch;
+
+ if (! cinfo->progressive_mode || cinfo->coef_bits == NULL)
+ return FALSE;
+
+ /* Allocate latch area if not already done */
+ if (coef->coef_bits_latch == NULL)
+ coef->coef_bits_latch = (int *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ cinfo->num_components *
+ (SAVED_COEFS * SIZEOF(int)));
+ coef_bits_latch = coef->coef_bits_latch;
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ /* All components' quantization values must already be latched. */
+ if ((qtable = compptr->quant_table) == NULL)
+ return FALSE;
+ /* Verify DC & first 5 AC quantizers are nonzero to avoid zero-divide. */
+ if (qtable->quantval[0] == 0 ||
+ qtable->quantval[Q01_POS] == 0 ||
+ qtable->quantval[Q10_POS] == 0 ||
+ qtable->quantval[Q20_POS] == 0 ||
+ qtable->quantval[Q11_POS] == 0 ||
+ qtable->quantval[Q02_POS] == 0)
+ return FALSE;
+ /* DC values must be at least partly known for all components. */
+ coef_bits = cinfo->coef_bits[ci];
+ if (coef_bits[0] < 0)
+ return FALSE;
+ /* Block smoothing is helpful if some AC coefficients remain inaccurate. */
+ for (coefi = 1; coefi <= 5; coefi++) {
+ coef_bits_latch[coefi] = coef_bits[coefi];
+ if (coef_bits[coefi] != 0)
+ smoothing_useful = TRUE;
+ }
+ coef_bits_latch += SAVED_COEFS;
+ }
+
+ return smoothing_useful;
+}
+
+
+/*
+ * Variant of decompress_data for use when doing block smoothing.
+ */
+
+METHODDEF(int)
+decompress_smooth_data (j_decompress_ptr cinfo, JSAMPIMAGE output_buf)
+{
+ my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
+ JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1;
+ JDIMENSION block_num, last_block_column;
+ int ci, block_row, block_rows, access_rows;
+ JBLOCKARRAY buffer;
+ JBLOCKROW buffer_ptr, prev_block_row, next_block_row;
+ JSAMPARRAY output_ptr;
+ JDIMENSION output_col;
+ jpeg_component_info *compptr;
+ inverse_DCT_method_ptr inverse_DCT;
+ boolean first_row, last_row;
+ JBLOCK workspace;
+ int *coef_bits;
+ JQUANT_TBL *quanttbl;
+ INT32 Q00,Q01,Q02,Q10,Q11,Q20, num;
+ int DC1,DC2,DC3,DC4,DC5,DC6,DC7,DC8,DC9;
+ int Al, pred;
+
+ /* Force some input to be done if we are getting ahead of the input. */
+ while (cinfo->input_scan_number <= cinfo->output_scan_number &&
+ ! cinfo->inputctl->eoi_reached) {
+ if (cinfo->input_scan_number == cinfo->output_scan_number) {
+ /* If input is working on current scan, we ordinarily want it to
+ * have completed the current row. But if input scan is DC,
+ * we want it to keep one row ahead so that next block row's DC
+ * values are up to date.
+ */
+ JDIMENSION delta = (cinfo->Ss == 0) ? 1 : 0;
+ if (cinfo->input_iMCU_row > cinfo->output_iMCU_row+delta)
+ break;
+ }
+ if ((*cinfo->inputctl->consume_input)(cinfo) == JPEG_SUSPENDED)
+ return JPEG_SUSPENDED;
+ }
+
+ /* OK, output from the virtual arrays. */
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ /* Don't bother to IDCT an uninteresting component. */
+ if (! compptr->component_needed)
+ continue;
+ /* Count non-dummy DCT block rows in this iMCU row. */
+ if (cinfo->output_iMCU_row < last_iMCU_row) {
+ block_rows = compptr->v_samp_factor;
+ access_rows = block_rows * 2; /* this and next iMCU row */
+ last_row = FALSE;
+ } else {
+ /* NB: can't use last_row_height here; it is input-side-dependent! */
+ block_rows = (int) (compptr->height_in_blocks % compptr->v_samp_factor);
+ if (block_rows == 0) block_rows = compptr->v_samp_factor;
+ access_rows = block_rows; /* this iMCU row only */
+ last_row = TRUE;
+ }
+ /* Align the virtual buffer for this component. */
+ if (cinfo->output_iMCU_row > 0) {
+ access_rows += compptr->v_samp_factor; /* prior iMCU row too */
+ buffer = (*cinfo->mem->access_virt_barray)
+ ((j_common_ptr) cinfo, coef->whole_image[ci],
+ (cinfo->output_iMCU_row - 1) * compptr->v_samp_factor,
+ (JDIMENSION) access_rows, FALSE);
+ buffer += compptr->v_samp_factor; /* point to current iMCU row */
+ first_row = FALSE;
+ } else {
+ buffer = (*cinfo->mem->access_virt_barray)
+ ((j_common_ptr) cinfo, coef->whole_image[ci],
+ (JDIMENSION) 0, (JDIMENSION) access_rows, FALSE);
+ first_row = TRUE;
+ }
+ /* Fetch component-dependent info */
+ coef_bits = coef->coef_bits_latch + (ci * SAVED_COEFS);
+ quanttbl = compptr->quant_table;
+ Q00 = quanttbl->quantval[0];
+ Q01 = quanttbl->quantval[Q01_POS];
+ Q10 = quanttbl->quantval[Q10_POS];
+ Q20 = quanttbl->quantval[Q20_POS];
+ Q11 = quanttbl->quantval[Q11_POS];
+ Q02 = quanttbl->quantval[Q02_POS];
+ inverse_DCT = cinfo->idct->inverse_DCT[ci];
+ output_ptr = output_buf[ci];
+ /* Loop over all DCT blocks to be processed. */
+ for (block_row = 0; block_row < block_rows; block_row++) {
+ buffer_ptr = buffer[block_row];
+ if (first_row && block_row == 0)
+ prev_block_row = buffer_ptr;
+ else
+ prev_block_row = buffer[block_row-1];
+ if (last_row && block_row == block_rows-1)
+ next_block_row = buffer_ptr;
+ else
+ next_block_row = buffer[block_row+1];
+ /* We fetch the surrounding DC values using a sliding-register approach.
+ * Initialize all nine here so as to do the right thing on narrow pics.
+ */
+ DC1 = DC2 = DC3 = (int) prev_block_row[0][0];
+ DC4 = DC5 = DC6 = (int) buffer_ptr[0][0];
+ DC7 = DC8 = DC9 = (int) next_block_row[0][0];
+ output_col = 0;
+ last_block_column = compptr->width_in_blocks - 1;
+ for (block_num = 0; block_num <= last_block_column; block_num++) {
+ /* Fetch current DCT block into workspace so we can modify it. */
+ jcopy_block_row(buffer_ptr, (JBLOCKROW) workspace, (JDIMENSION) 1);
+ /* Update DC values */
+ if (block_num < last_block_column) {
+ DC3 = (int) prev_block_row[1][0];
+ DC6 = (int) buffer_ptr[1][0];
+ DC9 = (int) next_block_row[1][0];
+ }
+ /* Compute coefficient estimates per K.8.
+ * An estimate is applied only if coefficient is still zero,
+ * and is not known to be fully accurate.
+ */
+ /* AC01 */
+ if ((Al=coef_bits[1]) != 0 && workspace[1] == 0) {
+ num = 36 * Q00 * (DC4 - DC6);
+ if (num >= 0) {
+ pred = (int) (((Q01<<7) + num) / (Q01<<8));
+ if (Al > 0 && pred >= (1< 0 && pred >= (1<= 0) {
+ pred = (int) (((Q10<<7) + num) / (Q10<<8));
+ if (Al > 0 && pred >= (1< 0 && pred >= (1<= 0) {
+ pred = (int) (((Q20<<7) + num) / (Q20<<8));
+ if (Al > 0 && pred >= (1< 0 && pred >= (1<= 0) {
+ pred = (int) (((Q11<<7) + num) / (Q11<<8));
+ if (Al > 0 && pred >= (1< 0 && pred >= (1<= 0) {
+ pred = (int) (((Q02<<7) + num) / (Q02<<8));
+ if (Al > 0 && pred >= (1< 0 && pred >= (1<DCT_scaled_size;
+ }
+ output_ptr += compptr->DCT_scaled_size;
+ }
+ }
+
+ if (++(cinfo->output_iMCU_row) < cinfo->total_iMCU_rows)
+ return JPEG_ROW_COMPLETED;
+ return JPEG_SCAN_COMPLETED;
+}
+
+#endif /* BLOCK_SMOOTHING_SUPPORTED */
+
+
+/*
+ * Initialize coefficient buffer controller.
+ */
+
+GLOBAL(void)
+jinit_d_coef_controller (j_decompress_ptr cinfo, boolean need_full_buffer)
+{
+ my_coef_ptr coef;
+
+ coef = (my_coef_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(my_coef_controller));
+ cinfo->coef = (struct jpeg_d_coef_controller *) coef;
+ coef->pub.start_input_pass = start_input_pass;
+ coef->pub.start_output_pass = start_output_pass;
+#ifdef BLOCK_SMOOTHING_SUPPORTED
+ coef->coef_bits_latch = NULL;
+#endif
+
+ /* Create the coefficient buffer. */
+ if (need_full_buffer) {
+#ifdef D_MULTISCAN_FILES_SUPPORTED
+ /* Allocate a full-image virtual array for each component, */
+ /* padded to a multiple of samp_factor DCT blocks in each direction. */
+ /* Note we ask for a pre-zeroed array. */
+ int ci, access_rows;
+ jpeg_component_info *compptr;
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ access_rows = compptr->v_samp_factor;
+#ifdef BLOCK_SMOOTHING_SUPPORTED
+ /* If block smoothing could be used, need a bigger window */
+ if (cinfo->progressive_mode)
+ access_rows *= 3;
+#endif
+ coef->whole_image[ci] = (*cinfo->mem->request_virt_barray)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE, TRUE,
+ (JDIMENSION) jround_up((long) compptr->width_in_blocks,
+ (long) compptr->h_samp_factor),
+ (JDIMENSION) jround_up((long) compptr->height_in_blocks,
+ (long) compptr->v_samp_factor),
+ (JDIMENSION) access_rows);
+ }
+ coef->pub.consume_data = consume_data;
+ coef->pub.decompress_data = decompress_data;
+ coef->pub.coef_arrays = coef->whole_image; /* link to virtual arrays */
+#else
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+#endif
+ } else {
+ /* We only need a single-MCU buffer. */
+ JBLOCKROW buffer;
+ int i;
+
+ buffer = (JBLOCKROW)
+ (*cinfo->mem->alloc_large) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ D_MAX_BLOCKS_IN_MCU * SIZEOF(JBLOCK));
+ for (i = 0; i < D_MAX_BLOCKS_IN_MCU; i++) {
+ coef->MCU_buffer[i] = buffer + i;
+ }
+ coef->pub.consume_data = dummy_consume_data;
+ coef->pub.decompress_data = decompress_onepass;
+ coef->pub.coef_arrays = NULL; /* flag for no virtual arrays */
+ }
+}
diff --git a/User/lib/lcd/gui/JPEG/jdcolor.c b/User/lib/lcd/gui/JPEG/jdcolor.c
new file mode 100644
index 0000000..954bf5a
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdcolor.c
@@ -0,0 +1,397 @@
+/*
+ * jdcolor.c
+ *
+ * Copyright (C) 1991-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains output colorspace conversion routines.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/* Private subobject */
+
+typedef struct {
+ struct jpeg_color_deconverter pub; /* public fields */
+
+ /* Private state for YCC->RGB conversion */
+ int * Cr_r_tab; /* => table for Cr to R conversion */
+ int * Cb_b_tab; /* => table for Cb to B conversion */
+ INT32 * Cr_g_tab; /* => table for Cr to G conversion */
+ INT32 * Cb_g_tab; /* => table for Cb to G conversion */
+} my_color_deconverter;
+
+typedef my_color_deconverter * my_cconvert_ptr;
+
+
+/**************** YCbCr -> RGB conversion: most common case **************/
+
+/*
+ * YCbCr is defined per CCIR 601-1, except that Cb and Cr are
+ * normalized to the range 0..MAXJSAMPLE rather than -0.5 .. 0.5.
+ * The conversion equations to be implemented are therefore
+ * R = Y + 1.40200 * Cr
+ * G = Y - 0.34414 * Cb - 0.71414 * Cr
+ * B = Y + 1.77200 * Cb
+ * where Cb and Cr represent the incoming values less CENTERJSAMPLE.
+ * (These numbers are derived from TIFF 6.0 section 21, dated 3-June-92.)
+ *
+ * To avoid floating-point arithmetic, we represent the fractional constants
+ * as integers scaled up by 2^16 (about 4 digits precision); we have to divide
+ * the products by 2^16, with appropriate rounding, to get the correct answer.
+ * Notice that Y, being an integral input, does not contribute any fraction
+ * so it need not participate in the rounding.
+ *
+ * For even more speed, we avoid doing any multiplications in the inner loop
+ * by precalculating the constants times Cb and Cr for all possible values.
+ * For 8-bit JSAMPLEs this is very reasonable (only 256 entries per table);
+ * for 12-bit samples it is still acceptable. It's not very reasonable for
+ * 16-bit samples, but if you want lossless storage you shouldn't be changing
+ * colorspace anyway.
+ * The Cr=>R and Cb=>B values can be rounded to integers in advance; the
+ * values for the G calculation are left scaled up, since we must add them
+ * together before rounding.
+ */
+
+#define SCALEBITS 16 /* speediest right-shift on some machines */
+#define ONE_HALF ((INT32) 1 << (SCALEBITS-1))
+#define FIX(x) ((INT32) ((x) * (1L<RGB colorspace conversion.
+ */
+
+LOCAL(void)
+build_ycc_rgb_table (j_decompress_ptr cinfo)
+{
+ my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
+ int i;
+ INT32 x;
+ SHIFT_TEMPS
+
+ cconvert->Cr_r_tab = (int *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (MAXJSAMPLE+1) * SIZEOF(int));
+ cconvert->Cb_b_tab = (int *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (MAXJSAMPLE+1) * SIZEOF(int));
+ cconvert->Cr_g_tab = (INT32 *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (MAXJSAMPLE+1) * SIZEOF(INT32));
+ cconvert->Cb_g_tab = (INT32 *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (MAXJSAMPLE+1) * SIZEOF(INT32));
+
+ for (i = 0, x = -CENTERJSAMPLE; i <= MAXJSAMPLE; i++, x++) {
+ /* i is the actual input pixel value, in the range 0..MAXJSAMPLE */
+ /* The Cb or Cr value we are thinking of is x = i - CENTERJSAMPLE */
+ /* Cr=>R value is nearest int to 1.40200 * x */
+ cconvert->Cr_r_tab[i] = (int)
+ RIGHT_SHIFT(FIX(1.40200) * x + ONE_HALF, SCALEBITS);
+ /* Cb=>B value is nearest int to 1.77200 * x */
+ cconvert->Cb_b_tab[i] = (int)
+ RIGHT_SHIFT(FIX(1.77200) * x + ONE_HALF, SCALEBITS);
+ /* Cr=>G value is scaled-up -0.71414 * x */
+ cconvert->Cr_g_tab[i] = (- FIX(0.71414)) * x;
+ /* Cb=>G value is scaled-up -0.34414 * x */
+ /* We also add in ONE_HALF so that need not do it in inner loop */
+ cconvert->Cb_g_tab[i] = (- FIX(0.34414)) * x + ONE_HALF;
+ }
+}
+
+
+/*
+ * Convert some rows of samples to the output colorspace.
+ *
+ * Note that we change from noninterleaved, one-plane-per-component format
+ * to interleaved-pixel format. The output buffer is therefore three times
+ * as wide as the input buffer.
+ * A starting row offset is provided only for the input buffer. The caller
+ * can easily adjust the passed output_buf value to accommodate any row
+ * offset required on that side.
+ */
+
+METHODDEF(void)
+ycc_rgb_convert (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
+ JSAMPARRAY output_buf, int num_rows)
+{
+ my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
+ register int y, cb, cr;
+ register JSAMPROW outptr;
+ register JSAMPROW inptr0, inptr1, inptr2;
+ register JDIMENSION col;
+ JDIMENSION num_cols = cinfo->output_width;
+ /* copy these pointers into registers if possible */
+ register JSAMPLE * range_limit = cinfo->sample_range_limit;
+ register int * Crrtab = cconvert->Cr_r_tab;
+ register int * Cbbtab = cconvert->Cb_b_tab;
+ register INT32 * Crgtab = cconvert->Cr_g_tab;
+ register INT32 * Cbgtab = cconvert->Cb_g_tab;
+ SHIFT_TEMPS
+
+ while (--num_rows >= 0) {
+ inptr0 = input_buf[0][input_row];
+ inptr1 = input_buf[1][input_row];
+ inptr2 = input_buf[2][input_row];
+ input_row++;
+ outptr = *output_buf++;
+ for (col = 0; col < num_cols; col++) {
+ y = GETJSAMPLE(inptr0[col]);
+ cb = GETJSAMPLE(inptr1[col]);
+ cr = GETJSAMPLE(inptr2[col]);
+ /* Range-limiting is essential due to noise introduced by DCT losses. */
+ outptr[RGB_RED] = range_limit[y + Crrtab[cr]];
+ outptr[RGB_GREEN] = range_limit[y +
+ ((int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr],
+ SCALEBITS))];
+ outptr[RGB_BLUE] = range_limit[y + Cbbtab[cb]];
+ outptr += RGB_PIXELSIZE;
+ }
+ }
+}
+
+
+/**************** Cases other than YCbCr -> RGB **************/
+
+
+/*
+ * Color conversion for no colorspace change: just copy the data,
+ * converting from separate-planes to interleaved representation.
+ */
+
+METHODDEF(void)
+null_convert (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
+ JSAMPARRAY output_buf, int num_rows)
+{
+ register JSAMPROW inptr, outptr;
+ register JDIMENSION count;
+ register int num_components = cinfo->num_components;
+ JDIMENSION num_cols = cinfo->output_width;
+ int ci;
+
+ while (--num_rows >= 0) {
+ for (ci = 0; ci < num_components; ci++) {
+ inptr = input_buf[ci][input_row];
+ outptr = output_buf[0] + ci;
+ for (count = num_cols; count > 0; count--) {
+ *outptr = *inptr++; /* needn't bother with GETJSAMPLE() here */
+ outptr += num_components;
+ }
+ }
+ input_row++;
+ output_buf++;
+ }
+}
+
+
+/*
+ * Color conversion for grayscale: just copy the data.
+ * This also works for YCbCr -> grayscale conversion, in which
+ * we just copy the Y (luminance) component and ignore chrominance.
+ */
+
+METHODDEF(void)
+grayscale_convert (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
+ JSAMPARRAY output_buf, int num_rows)
+{
+ jcopy_sample_rows(input_buf[0], (int) input_row, output_buf, 0,
+ num_rows, cinfo->output_width);
+}
+
+
+/*
+ * Convert grayscale to RGB: just duplicate the graylevel three times.
+ * This is provided to support applications that don't want to cope
+ * with grayscale as a separate case.
+ */
+
+METHODDEF(void)
+gray_rgb_convert (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
+ JSAMPARRAY output_buf, int num_rows)
+{
+ register JSAMPROW inptr, outptr;
+ register JDIMENSION col;
+ JDIMENSION num_cols = cinfo->output_width;
+
+ while (--num_rows >= 0) {
+ inptr = input_buf[0][input_row++];
+ outptr = *output_buf++;
+ for (col = 0; col < num_cols; col++) {
+ /* We can dispense with GETJSAMPLE() here */
+ outptr[RGB_RED] = outptr[RGB_GREEN] = outptr[RGB_BLUE] = inptr[col];
+ outptr += RGB_PIXELSIZE;
+ }
+ }
+}
+
+
+/*
+ * Adobe-style YCCK->CMYK conversion.
+ * We convert YCbCr to R=1-C, G=1-M, and B=1-Y using the same
+ * conversion as above, while passing K (black) unchanged.
+ * We assume build_ycc_rgb_table has been called.
+ */
+
+METHODDEF(void)
+ycck_cmyk_convert (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
+ JSAMPARRAY output_buf, int num_rows)
+{
+ my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
+ register int y, cb, cr;
+ register JSAMPROW outptr;
+ register JSAMPROW inptr0, inptr1, inptr2, inptr3;
+ register JDIMENSION col;
+ JDIMENSION num_cols = cinfo->output_width;
+ /* copy these pointers into registers if possible */
+ register JSAMPLE * range_limit = cinfo->sample_range_limit;
+ register int * Crrtab = cconvert->Cr_r_tab;
+ register int * Cbbtab = cconvert->Cb_b_tab;
+ register INT32 * Crgtab = cconvert->Cr_g_tab;
+ register INT32 * Cbgtab = cconvert->Cb_g_tab;
+ SHIFT_TEMPS
+
+ while (--num_rows >= 0) {
+ inptr0 = input_buf[0][input_row];
+ inptr1 = input_buf[1][input_row];
+ inptr2 = input_buf[2][input_row];
+ inptr3 = input_buf[3][input_row];
+ input_row++;
+ outptr = *output_buf++;
+ for (col = 0; col < num_cols; col++) {
+ y = GETJSAMPLE(inptr0[col]);
+ cb = GETJSAMPLE(inptr1[col]);
+ cr = GETJSAMPLE(inptr2[col]);
+ /* Range-limiting is essential due to noise introduced by DCT losses. */
+ outptr[0] = range_limit[MAXJSAMPLE - (y + Crrtab[cr])]; /* red */
+ outptr[1] = range_limit[MAXJSAMPLE - (y + /* green */
+ ((int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr],
+ SCALEBITS)))];
+ outptr[2] = range_limit[MAXJSAMPLE - (y + Cbbtab[cb])]; /* blue */
+ /* K passes through unchanged */
+ outptr[3] = inptr3[col]; /* don't need GETJSAMPLE here */
+ outptr += 4;
+ }
+ }
+}
+
+
+/*
+ * Empty method for start_pass.
+ */
+
+METHODDEF(void)
+start_pass_dcolor (j_decompress_ptr cinfo)
+{
+ GUI_USE_PARA(cinfo);
+ /* no work needed */
+}
+
+
+/*
+ * Module initialization routine for output colorspace conversion.
+ */
+
+GLOBAL(void)
+jinit_color_deconverter (j_decompress_ptr cinfo)
+{
+ my_cconvert_ptr cconvert;
+ int ci;
+
+ cconvert = (my_cconvert_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(my_color_deconverter));
+ cinfo->cconvert = (struct jpeg_color_deconverter *) cconvert;
+ cconvert->pub.start_pass = start_pass_dcolor;
+
+ /* Make sure num_components agrees with jpeg_color_space */
+ switch (cinfo->jpeg_color_space) {
+ case JCS_GRAYSCALE:
+ if (cinfo->num_components != 1)
+ ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
+ break;
+
+ case JCS_RGB:
+ case JCS_YCbCr:
+ if (cinfo->num_components != 3)
+ ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
+ break;
+
+ case JCS_CMYK:
+ case JCS_YCCK:
+ if (cinfo->num_components != 4)
+ ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
+ break;
+
+ default: /* JCS_UNKNOWN can be anything */
+ if (cinfo->num_components < 1)
+ ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
+ break;
+ }
+
+ /* Set out_color_components and conversion method based on requested space.
+ * Also clear the component_needed flags for any unused components,
+ * so that earlier pipeline stages can avoid useless computation.
+ */
+
+ switch (cinfo->out_color_space) {
+ case JCS_GRAYSCALE:
+ cinfo->out_color_components = 1;
+ if (cinfo->jpeg_color_space == JCS_GRAYSCALE ||
+ cinfo->jpeg_color_space == JCS_YCbCr) {
+ cconvert->pub.color_convert = grayscale_convert;
+ /* For color->grayscale conversion, only the Y (0) component is needed */
+ for (ci = 1; ci < cinfo->num_components; ci++)
+ cinfo->comp_info[ci].component_needed = FALSE;
+ } else
+ ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
+ break;
+
+ case JCS_RGB:
+ cinfo->out_color_components = RGB_PIXELSIZE;
+ if (cinfo->jpeg_color_space == JCS_YCbCr) {
+ cconvert->pub.color_convert = ycc_rgb_convert;
+ build_ycc_rgb_table(cinfo);
+ } else if (cinfo->jpeg_color_space == JCS_GRAYSCALE) {
+ cconvert->pub.color_convert = gray_rgb_convert;
+ } else if (cinfo->jpeg_color_space == JCS_RGB && RGB_PIXELSIZE == 3) {
+ cconvert->pub.color_convert = null_convert;
+ } else
+ ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
+ break;
+
+ case JCS_CMYK:
+ cinfo->out_color_components = 4;
+ if (cinfo->jpeg_color_space == JCS_YCCK) {
+ cconvert->pub.color_convert = ycck_cmyk_convert;
+ build_ycc_rgb_table(cinfo);
+ } else if (cinfo->jpeg_color_space == JCS_CMYK) {
+ cconvert->pub.color_convert = null_convert;
+ } else
+ ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
+ break;
+
+ default:
+ /* Permit null conversion to same output space */
+ if (cinfo->out_color_space == cinfo->jpeg_color_space) {
+ cinfo->out_color_components = cinfo->num_components;
+ cconvert->pub.color_convert = null_convert;
+ } else /* unsupported non-null conversion */
+ ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
+ break;
+ }
+
+ if (cinfo->quantize_colors)
+ cinfo->output_components = 1; /* single colormapped output component */
+ else
+ cinfo->output_components = cinfo->out_color_components;
+}
diff --git a/User/lib/lcd/gui/JPEG/jdct.h b/User/lib/lcd/gui/JPEG/jdct.h
new file mode 100644
index 0000000..1c4b262
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdct.h
@@ -0,0 +1,163 @@
+/*
+ * jdct.h
+ *
+ * Copyright (C) 1994-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This include file contains common declarations for the forward and
+ * inverse DCT modules. These declarations are private to the DCT managers
+ * (jcdctmgr.c, jddctmgr.c) and the individual DCT algorithms.
+ * The individual DCT algorithms are kept in separate files to ease
+ * machine-dependent tuning (e.g., assembly coding).
+ */
+
+
+/*
+ * A forward DCT routine is given a pointer to a work area of type DCTELEM[];
+ * the DCT is to be performed in-place in that buffer. Type DCTELEM is int
+ * for 8-bit samples, INT32 for 12-bit samples. (NOTE: Floating-point DCT
+ * implementations use an array of type FAST_FLOAT, instead.)
+ * The DCT inputs are expected to be signed (range +-CENTERJSAMPLE).
+ * The DCT outputs are returned scaled up by a factor of 8; they therefore
+ * have a range of +-8K for 8-bit data, +-128K for 12-bit data. This
+ * convention improves accuracy in integer implementations and saves some
+ * work in floating-point ones.
+ * Quantization of the output coefficients is done by jcdctmgr.c.
+ */
+
+#if BITS_IN_JSAMPLE == 8
+typedef int DCTELEM; /* 16 or 32 bits is fine */
+#else
+typedef INT32 DCTELEM; /* must have 32 bits */
+#endif
+
+typedef JMETHOD(void, forward_DCT_method_ptr, (DCTELEM * data));
+typedef JMETHOD(void, float_DCT_method_ptr, (FAST_FLOAT * data));
+
+
+/*
+ * An inverse DCT routine is given a pointer to the input JBLOCK and a pointer
+ * to an output sample array. The routine must dequantize the input data as
+ * well as perform the IDCT; for dequantization, it uses the multiplier table
+ * pointed to by compptr->dct_table. The output data is to be placed into the
+ * sample array starting at a specified column. (Any row offset needed will
+ * be applied to the array pointer before it is passed to the IDCT code.)
+ * Note that the number of samples emitted by the IDCT routine is
+ * DCT_scaled_size * DCT_scaled_size.
+ */
+
+/* typedef inverse_DCT_method_ptr is declared in jpegint.h */
+
+/*
+ * Each IDCT routine has its own ideas about the best dct_table element type.
+ */
+
+typedef MULTIPLIER ISLOW_MULT_TYPE; /* short or int, whichever is faster */
+#if BITS_IN_JSAMPLE == 8
+typedef MULTIPLIER IFAST_MULT_TYPE; /* 16 bits is OK, use short if faster */
+#define IFAST_SCALE_BITS 2 /* fractional bits in scale factors */
+#else
+typedef INT32 IFAST_MULT_TYPE; /* need 32 bits for scaled quantizers */
+#define IFAST_SCALE_BITS 13 /* fractional bits in scale factors */
+#endif
+typedef FAST_FLOAT FLOAT_MULT_TYPE; /* preferred floating type */
+
+
+/*
+ * Each IDCT routine is responsible for range-limiting its results and
+ * converting them to unsigned form (0..MAXJSAMPLE). The raw outputs could
+ * be quite far out of range if the input data is corrupt, so a bulletproof
+ * range-limiting step is required. We use a mask-and-table-lookup method
+ * to do the combined operations quickly. See the comments with
+ * prepare_range_limit_table (in jdmaster.c) for more info.
+ */
+
+#define IDCT_range_limit(cinfo) ((cinfo)->sample_range_limit + CENTERJSAMPLE)
+
+#define RANGE_MASK (MAXJSAMPLE * 4 + 3) /* 2 bits wider than legal samples */
+
+
+
+/* Extern declarations for the forward and inverse DCT routines. */
+
+EXTERN(void) jpeg_fdct_islow JPP((DCTELEM * data));
+EXTERN(void) jpeg_fdct_ifast JPP((DCTELEM * data));
+EXTERN(void) jpeg_fdct_float JPP((FAST_FLOAT * data));
+
+EXTERN(void) jpeg_idct_islow
+ JPP((j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block, JSAMPARRAY output_buf, JDIMENSION output_col));
+EXTERN(void) jpeg_idct_ifast
+ JPP((j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block, JSAMPARRAY output_buf, JDIMENSION output_col));
+EXTERN(void) jpeg_idct_float
+ JPP((j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block, JSAMPARRAY output_buf, JDIMENSION output_col));
+EXTERN(void) jpeg_idct_4x4
+ JPP((j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block, JSAMPARRAY output_buf, JDIMENSION output_col));
+EXTERN(void) jpeg_idct_2x2
+ JPP((j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block, JSAMPARRAY output_buf, JDIMENSION output_col));
+EXTERN(void) jpeg_idct_1x1
+ JPP((j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block, JSAMPARRAY output_buf, JDIMENSION output_col));
+
+
+/*
+ * Macros for handling fixed-point arithmetic; these are used by many
+ * but not all of the DCT/IDCT modules.
+ *
+ * All values are expected to be of type INT32.
+ * Fractional constants are scaled left by CONST_BITS bits.
+ * CONST_BITS is defined within each module using these macros,
+ * and may differ from one module to the next.
+ */
+
+#define ONE ((INT32) 1)
+#define CONST_SCALE (ONE << CONST_BITS)
+
+/* Convert a positive real constant to an integer scaled by CONST_SCALE.
+ * Caution: some C compilers fail to reduce "FIX(constant)" at compile time,
+ * thus causing a lot of useless floating-point operations at run time.
+ */
+
+#define FIX(x) ((INT32) ((x) * CONST_SCALE + 0.5))
+
+/* Descale and correctly round an INT32 value that's scaled by N bits.
+ * We assume RIGHT_SHIFT rounds towards minus infinity, so adding
+ * the fudge factor is correct for either sign of X.
+ */
+
+#define DESCALE(x,n) RIGHT_SHIFT((x) + (ONE << ((n)-1)), n)
+
+/* Multiply an INT32 variable by an INT32 constant to yield an INT32 result.
+ * This macro is used only when the two inputs will actually be no more than
+ * 16 bits wide, so that a 16x16->32 bit multiply can be used instead of a
+ * full 32x32 multiply. This provides a useful speedup on many machines.
+ * Unfortunately there is no way to specify a 16x16->32 multiply portably
+ * in C, but some C compilers will do the right thing if you provide the
+ * correct combination of casts.
+ */
+
+#ifdef SHORTxSHORT_32 /* may work if 'int' is 32 bits */
+#define MULTIPLY16C16(var,const) (((INT16) (var)) * ((INT16) (const)))
+#endif
+#ifdef SHORTxLCONST_32 /* known to work with Microsoft C 6.0 */
+#define MULTIPLY16C16(var,const) (((INT16) (var)) * ((INT32) (const)))
+#endif
+
+#ifndef MULTIPLY16C16 /* default definition */
+#define MULTIPLY16C16(var,const) ((var) * (const))
+#endif
+
+/* Same except both inputs are variables. */
+
+#ifdef SHORTxSHORT_32 /* may work if 'int' is 32 bits */
+#define MULTIPLY16V16(var1,var2) (((INT16) (var1)) * ((INT16) (var2)))
+#endif
+
+#ifndef MULTIPLY16V16 /* default definition */
+#define MULTIPLY16V16(var1,var2) ((var1) * (var2))
+#endif
diff --git a/User/lib/lcd/gui/JPEG/jddctmgr.c b/User/lib/lcd/gui/JPEG/jddctmgr.c
new file mode 100644
index 0000000..160f926
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jddctmgr.c
@@ -0,0 +1,266 @@
+/*
+ * jddctmgr.c
+ *
+ * Copyright (C) 1994-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains the inverse-DCT management logic.
+ * This code selects a particular IDCT implementation to be used,
+ * and it performs related housekeeping chores. No code in this file
+ * is executed per IDCT step, only during output pass setup.
+ *
+ * Note that the IDCT routines are responsible for performing coefficient
+ * dequantization as well as the IDCT proper. This module sets up the
+ * dequantization multiplier table needed by the IDCT routine.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jdct.h" /* Private declarations for DCT subsystem */
+
+
+/*
+ * The decompressor input side (jdinput.c) saves away the appropriate
+ * quantization table for each component at the start of the first scan
+ * involving that component. (This is necessary in order to correctly
+ * decode files that reuse Q-table slots.)
+ * When we are ready to make an output pass, the saved Q-table is converted
+ * to a multiplier table that will actually be used by the IDCT routine.
+ * The multiplier table contents are IDCT-method-dependent. To support
+ * application changes in IDCT method between scans, we can remake the
+ * multiplier tables if necessary.
+ * In buffered-image mode, the first output pass may occur before any data
+ * has been seen for some components, and thus before their Q-tables have
+ * been saved away. To handle this case, multiplier tables are preset
+ * to zeroes; the result of the IDCT will be a neutral gray level.
+ */
+
+
+/* Private subobject for this module */
+
+typedef struct {
+ struct jpeg_inverse_dct pub; /* public fields */
+
+ /* This array contains the IDCT method code that each multiplier table
+ * is currently set up for, or -1 if it's not yet set up.
+ * The actual multiplier tables are pointed to by dct_table in the
+ * per-component comp_info structures.
+ */
+ int cur_method[MAX_COMPONENTS];
+} my_idct_controller;
+
+typedef my_idct_controller * my_idct_ptr;
+
+
+/* Allocated multiplier tables: big enough for any supported variant */
+
+typedef union {
+ ISLOW_MULT_TYPE islow_array[DCTSIZE2];
+#ifdef DCT_IFAST_SUPPORTED
+ IFAST_MULT_TYPE ifast_array[DCTSIZE2];
+#endif
+#ifdef DCT_FLOAT_SUPPORTED
+ FLOAT_MULT_TYPE float_array[DCTSIZE2];
+#endif
+} multiplier_table;
+
+
+/* The current scaled-IDCT routines require ISLOW-style multiplier tables,
+ * so be sure to compile that code if either ISLOW or SCALING is requested.
+ */
+#ifdef DCT_ISLOW_SUPPORTED
+#define PROVIDE_ISLOW_TABLES
+#else
+#ifdef IDCT_SCALING_SUPPORTED
+#define PROVIDE_ISLOW_TABLES
+#endif
+#endif
+
+
+/*
+ * Prepare for an output pass.
+ * Here we select the proper IDCT routine for each component and build
+ * a matching multiplier table.
+ */
+
+METHODDEF(void) start_pass (j_decompress_ptr cinfo) {
+ my_idct_ptr idct = (my_idct_ptr) cinfo->idct;
+ int ci, i;
+ jpeg_component_info *compptr;
+ int method = 0;
+ inverse_DCT_method_ptr method_ptr = NULL;
+ JQUANT_TBL * qtbl;
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components; ci++, compptr++) {
+ /* Select the proper IDCT routine for this component's scaling */
+ switch (compptr->DCT_scaled_size) {
+#ifdef IDCT_SCALING_SUPPORTED
+ case 1:
+ method_ptr = jpeg_idct_1x1;
+ method = JDCT_ISLOW; /* jidctred uses islow-style table */
+ break;
+ case 2:
+ method_ptr = jpeg_idct_2x2;
+ method = JDCT_ISLOW; /* jidctred uses islow-style table */
+ break;
+ case 4:
+ method_ptr = jpeg_idct_4x4;
+ method = JDCT_ISLOW; /* jidctred uses islow-style table */
+ break;
+#endif
+ case DCTSIZE:
+ switch (cinfo->dct_method) {
+#ifdef DCT_ISLOW_SUPPORTED
+ case JDCT_ISLOW:
+ method_ptr = jpeg_idct_islow;
+ method = JDCT_ISLOW;
+ break;
+#endif
+#ifdef DCT_IFAST_SUPPORTED
+ case JDCT_IFAST:
+ method_ptr = jpeg_idct_ifast;
+ method = JDCT_IFAST;
+ break;
+#endif
+#ifdef DCT_FLOAT_SUPPORTED
+ case JDCT_FLOAT:
+ method_ptr = jpeg_idct_float;
+ method = JDCT_FLOAT;
+ break;
+#endif
+ default:
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+ break;
+ }
+ break;
+ default:
+ ERREXIT1(cinfo, JERR_BAD_DCTSIZE, compptr->DCT_scaled_size);
+ break;
+ }
+ idct->pub.inverse_DCT[ci] = method_ptr;
+ /* Create multiplier table from quant table.
+ * However, we can skip this if the component is uninteresting
+ * or if we already built the table. Also, if no quant table
+ * has yet been saved for the component, we leave the
+ * multiplier table all-zero; we'll be reading zeroes from the
+ * coefficient controller's buffer anyway.
+ */
+ if (! compptr->component_needed || idct->cur_method[ci] == method)
+ continue;
+ qtbl = compptr->quant_table;
+ if (qtbl == NULL) /* happens if no data yet for component */
+ continue;
+ idct->cur_method[ci] = method;
+ switch (method) {
+#ifdef PROVIDE_ISLOW_TABLES
+ case JDCT_ISLOW:
+ {
+ /* For LL&M IDCT method, multipliers are equal to raw quantization
+ * coefficients, but are stored as ints to ensure access efficiency.
+ */
+ ISLOW_MULT_TYPE * ismtbl = (ISLOW_MULT_TYPE *) compptr->dct_table;
+ for (i = 0; i < DCTSIZE2; i++) {
+ ismtbl[i] = (ISLOW_MULT_TYPE) qtbl->quantval[i];
+ }
+ }
+ break;
+#endif
+#ifdef DCT_IFAST_SUPPORTED
+ case JDCT_IFAST:
+ {
+ /* For AA&N IDCT method, multipliers are equal to quantization
+ * coefficients scaled by scalefactor[row]*scalefactor[col], where
+ * scalefactor[0] = 1
+ * scalefactor[k] = cos(k*PI/16) * sqrt(2) for k=1..7
+ * For integer operation, the multiplier table is to be scaled by
+ * IFAST_SCALE_BITS.
+ */
+ IFAST_MULT_TYPE * ifmtbl = (IFAST_MULT_TYPE *) compptr->dct_table;
+#define CONST_BITS 14
+ static const INT16 aanscales[DCTSIZE2] = {
+ /* precomputed values scaled up by 14 bits */
+ 16384, 22725, 21407, 19266, 16384, 12873, 8867, 4520,
+ 22725, 31521, 29692, 26722, 22725, 17855, 12299, 6270,
+ 21407, 29692, 27969, 25172, 21407, 16819, 11585, 5906,
+ 19266, 26722, 25172, 22654, 19266, 15137, 10426, 5315,
+ 16384, 22725, 21407, 19266, 16384, 12873, 8867, 4520,
+ 12873, 17855, 16819, 15137, 12873, 10114, 6967, 3552,
+ 8867, 12299, 11585, 10426, 8867, 6967, 4799, 2446,
+ 4520, 6270, 5906, 5315, 4520, 3552, 2446, 1247
+ };
+ SHIFT_TEMPS
+
+ for (i = 0; i < DCTSIZE2; i++) {
+ ifmtbl[i] = (IFAST_MULT_TYPE)
+ DESCALE(MULTIPLY16V16((INT32) qtbl->quantval[i],
+ (INT32) aanscales[i]),
+ CONST_BITS-IFAST_SCALE_BITS);
+ }
+ }
+ break;
+#endif
+#ifdef DCT_FLOAT_SUPPORTED
+ case JDCT_FLOAT:
+ {
+ /* For float AA&N IDCT method, multipliers are equal to quantization
+ * coefficients scaled by scalefactor[row]*scalefactor[col], where
+ * scalefactor[0] = 1
+ * scalefactor[k] = cos(k*PI/16) * sqrt(2) for k=1..7
+ */
+ FLOAT_MULT_TYPE * fmtbl = (FLOAT_MULT_TYPE *) compptr->dct_table;
+ int row, col;
+ static const double aanscalefactor[DCTSIZE] = {
+ 1.0, 1.387039845, 1.306562965, 1.175875602,
+ 1.0, 0.785694958, 0.541196100, 0.275899379
+ };
+
+ i = 0;
+ for (row = 0; row < DCTSIZE; row++) {
+ for (col = 0; col < DCTSIZE; col++) {
+ fmtbl[i] = (FLOAT_MULT_TYPE)
+ ((double) qtbl->quantval[i] *
+ aanscalefactor[row] * aanscalefactor[col]);
+ i++;
+ }
+ }
+ }
+ break;
+#endif
+ default:
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+ break;
+ }
+ }
+}
+
+
+/*
+ * Initialize IDCT manager.
+ */
+
+GLOBAL(void)
+jinit_inverse_dct (j_decompress_ptr cinfo)
+{
+ my_idct_ptr idct;
+ int ci;
+ jpeg_component_info *compptr;
+
+ idct = (my_idct_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(my_idct_controller));
+ cinfo->idct = (struct jpeg_inverse_dct *) idct;
+ idct->pub.start_pass = start_pass;
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ /* Allocate and pre-zero a multiplier table for each component */
+ compptr->dct_table =
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(multiplier_table));
+ MEMZERO(compptr->dct_table, SIZEOF(multiplier_table));
+ /* Mark multiplier table not yet set up for any method */
+ idct->cur_method[ci] = -1;
+ }
+}
diff --git a/User/lib/lcd/gui/JPEG/jdhuff.c b/User/lib/lcd/gui/JPEG/jdhuff.c
new file mode 100644
index 0000000..b5ba39f
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdhuff.c
@@ -0,0 +1,651 @@
+/*
+ * jdhuff.c
+ *
+ * Copyright (C) 1991-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains Huffman entropy decoding routines.
+ *
+ * Much of the complexity here has to do with supporting input suspension.
+ * If the data source module demands suspension, we want to be able to back
+ * up to the start of the current MCU. To do this, we copy state variables
+ * into local working storage, and update them back to the permanent
+ * storage only upon successful completion of an MCU.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jdhuff.h" /* Declarations shared with jdphuff.c */
+
+
+/*
+ * Expanded entropy decoder object for Huffman decoding.
+ *
+ * The savable_state subrecord contains fields that change within an MCU,
+ * but must not be updated permanently until we complete the MCU.
+ */
+
+typedef struct {
+ int last_dc_val[MAX_COMPS_IN_SCAN]; /* last DC coef for each component */
+} savable_state;
+
+/* This macro is to work around compilers with missing or broken
+ * structure assignment. You'll need to fix this code if you have
+ * such a compiler and you change MAX_COMPS_IN_SCAN.
+ */
+
+#ifndef NO_STRUCT_ASSIGN
+#define ASSIGN_STATE(dest,src) ((dest) = (src))
+#else
+#if MAX_COMPS_IN_SCAN == 4
+#define ASSIGN_STATE(dest,src) \
+ ((dest).last_dc_val[0] = (src).last_dc_val[0], \
+ (dest).last_dc_val[1] = (src).last_dc_val[1], \
+ (dest).last_dc_val[2] = (src).last_dc_val[2], \
+ (dest).last_dc_val[3] = (src).last_dc_val[3])
+#endif
+#endif
+
+
+typedef struct {
+ struct jpeg_entropy_decoder pub; /* public fields */
+
+ /* These fields are loaded into local variables at start of each MCU.
+ * In case of suspension, we exit WITHOUT updating them.
+ */
+ bitread_perm_state bitstate; /* Bit buffer at start of MCU */
+ savable_state saved; /* Other state at start of MCU */
+
+ /* These fields are NOT loaded into local working state. */
+ unsigned int restarts_to_go; /* MCUs left in this restart interval */
+
+ /* Pointers to derived tables (these workspaces have image lifespan) */
+ d_derived_tbl * dc_derived_tbls[NUM_HUFF_TBLS];
+ d_derived_tbl * ac_derived_tbls[NUM_HUFF_TBLS];
+
+ /* Precalculated info set up by start_pass for use in decode_mcu: */
+
+ /* Pointers to derived tables to be used for each block within an MCU */
+ d_derived_tbl * dc_cur_tbls[D_MAX_BLOCKS_IN_MCU];
+ d_derived_tbl * ac_cur_tbls[D_MAX_BLOCKS_IN_MCU];
+ /* Whether we care about the DC and AC coefficient values for each block */
+ boolean dc_needed[D_MAX_BLOCKS_IN_MCU];
+ boolean ac_needed[D_MAX_BLOCKS_IN_MCU];
+} huff_entropy_decoder;
+
+typedef huff_entropy_decoder * huff_entropy_ptr;
+
+
+/*
+ * Initialize for a Huffman-compressed scan.
+ */
+
+METHODDEF(void)
+start_pass_huff_decoder (j_decompress_ptr cinfo)
+{
+ huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
+ int ci, blkn, dctbl, actbl;
+ jpeg_component_info * compptr;
+
+ /* Check that the scan parameters Ss, Se, Ah/Al are OK for sequential JPEG.
+ * This ought to be an error condition, but we make it a warning because
+ * there are some baseline files out there with all zeroes in these bytes.
+ */
+ if (cinfo->Ss != 0 || cinfo->Se != DCTSIZE2-1 ||
+ cinfo->Ah != 0 || cinfo->Al != 0)
+ WARNMS(cinfo, JWRN_NOT_SEQUENTIAL);
+
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ dctbl = compptr->dc_tbl_no;
+ actbl = compptr->ac_tbl_no;
+ /* Compute derived values for Huffman tables */
+ /* We may do this more than once for a table, but it's not expensive */
+ jpeg_make_d_derived_tbl(cinfo, TRUE, dctbl,
+ & entropy->dc_derived_tbls[dctbl]);
+ jpeg_make_d_derived_tbl(cinfo, FALSE, actbl,
+ & entropy->ac_derived_tbls[actbl]);
+ /* Initialize DC predictions to 0 */
+ entropy->saved.last_dc_val[ci] = 0;
+ }
+
+ /* Precalculate decoding info for each block in an MCU of this scan */
+ for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
+ ci = cinfo->MCU_membership[blkn];
+ compptr = cinfo->cur_comp_info[ci];
+ /* Precalculate which table to use for each block */
+ entropy->dc_cur_tbls[blkn] = entropy->dc_derived_tbls[compptr->dc_tbl_no];
+ entropy->ac_cur_tbls[blkn] = entropy->ac_derived_tbls[compptr->ac_tbl_no];
+ /* Decide whether we really care about the coefficient values */
+ if (compptr->component_needed) {
+ entropy->dc_needed[blkn] = TRUE;
+ /* we don't need the ACs if producing a 1/8th-size image */
+ entropy->ac_needed[blkn] = (compptr->DCT_scaled_size > 1);
+ } else {
+ entropy->dc_needed[blkn] = entropy->ac_needed[blkn] = FALSE;
+ }
+ }
+
+ /* Initialize bitread state variables */
+ entropy->bitstate.bits_left = 0;
+ entropy->bitstate.get_buffer = 0; /* unnecessary, but keeps Purify quiet */
+ entropy->pub.insufficient_data = FALSE;
+
+ /* Initialize restart counter */
+ entropy->restarts_to_go = cinfo->restart_interval;
+}
+
+
+/*
+ * Compute the derived values for a Huffman table.
+ * This routine also performs some validation checks on the table.
+ *
+ * Note this is also used by jdphuff.c.
+ */
+
+GLOBAL(void)
+jpeg_make_d_derived_tbl (j_decompress_ptr cinfo, boolean isDC, int tblno,
+ d_derived_tbl ** pdtbl)
+{
+ JHUFF_TBL *htbl;
+ d_derived_tbl *dtbl;
+ int p, i, l, si, numsymbols;
+ int lookbits, ctr;
+ char huffsize[257];
+ unsigned int huffcode[257];
+ unsigned int code;
+
+ /* Note that huffsize[] and huffcode[] are filled in code-length order,
+ * paralleling the order of the symbols themselves in htbl->huffval[].
+ */
+
+ /* Find the input Huffman table */
+ if (tblno < 0 || tblno >= NUM_HUFF_TBLS)
+ ERREXIT1(cinfo, JERR_NO_HUFF_TABLE, tblno);
+ htbl =
+ isDC ? cinfo->dc_huff_tbl_ptrs[tblno] : cinfo->ac_huff_tbl_ptrs[tblno];
+ if (htbl == NULL)
+ ERREXIT1(cinfo, JERR_NO_HUFF_TABLE, tblno);
+
+ /* Allocate a workspace if we haven't already done so. */
+ if (*pdtbl == NULL)
+ *pdtbl = (d_derived_tbl *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(d_derived_tbl));
+ dtbl = *pdtbl;
+ dtbl->pub = htbl; /* fill in back link */
+
+ /* Figure C.1: make table of Huffman code length for each symbol */
+
+ p = 0;
+ for (l = 1; l <= 16; l++) {
+ i = (int) htbl->bits[l];
+ if (i < 0 || p + i > 256) /* protect against table overrun */
+ ERREXIT(cinfo, JERR_BAD_HUFF_TABLE);
+ while (i--)
+ huffsize[p++] = (char) l;
+ }
+ huffsize[p] = 0;
+ numsymbols = p;
+
+ /* Figure C.2: generate the codes themselves */
+ /* We also validate that the counts represent a legal Huffman code tree. */
+
+ code = 0;
+ si = huffsize[0];
+ p = 0;
+ while (huffsize[p]) {
+ while (((int) huffsize[p]) == si) {
+ huffcode[p++] = code;
+ code++;
+ }
+ /* code is now 1 more than the last code used for codelength si; but
+ * it must still fit in si bits, since no code is allowed to be all ones.
+ */
+ if (((INT32) code) >= (((INT32) 1) << si))
+ ERREXIT(cinfo, JERR_BAD_HUFF_TABLE);
+ code <<= 1;
+ si++;
+ }
+
+ /* Figure F.15: generate decoding tables for bit-sequential decoding */
+
+ p = 0;
+ for (l = 1; l <= 16; l++) {
+ if (htbl->bits[l]) {
+ /* valoffset[l] = huffval[] index of 1st symbol of code length l,
+ * minus the minimum code of length l
+ */
+ dtbl->valoffset[l] = (INT32) p - (INT32) huffcode[p];
+ p += htbl->bits[l];
+ dtbl->maxcode[l] = huffcode[p-1]; /* maximum code of length l */
+ } else {
+ dtbl->maxcode[l] = -1; /* -1 if no codes of this length */
+ }
+ }
+ dtbl->maxcode[17] = 0xFFFFFL; /* ensures jpeg_huff_decode terminates */
+
+ /* Compute lookahead tables to speed up decoding.
+ * First we set all the table entries to 0, indicating "too long";
+ * then we iterate through the Huffman codes that are short enough and
+ * fill in all the entries that correspond to bit sequences starting
+ * with that code.
+ */
+
+ MEMZERO(dtbl->look_nbits, SIZEOF(dtbl->look_nbits));
+
+ p = 0;
+ for (l = 1; l <= HUFF_LOOKAHEAD; l++) {
+ for (i = 1; i <= (int) htbl->bits[l]; i++, p++) {
+ /* l = current code's length, p = its index in huffcode[] & huffval[]. */
+ /* Generate left-justified code followed by all possible bit sequences */
+ lookbits = huffcode[p] << (HUFF_LOOKAHEAD-l);
+ for (ctr = 1 << (HUFF_LOOKAHEAD-l); ctr > 0; ctr--) {
+ dtbl->look_nbits[lookbits] = l;
+ dtbl->look_sym[lookbits] = htbl->huffval[p];
+ lookbits++;
+ }
+ }
+ }
+
+ /* Validate symbols as being reasonable.
+ * For AC tables, we make no check, but accept all byte values 0..255.
+ * For DC tables, we require the symbols to be in range 0..15.
+ * (Tighter bounds could be applied depending on the data depth and mode,
+ * but this is sufficient to ensure safe decoding.)
+ */
+ if (isDC) {
+ for (i = 0; i < numsymbols; i++) {
+ int sym = htbl->huffval[i];
+ if (sym < 0 || sym > 15)
+ ERREXIT(cinfo, JERR_BAD_HUFF_TABLE);
+ }
+ }
+}
+
+
+/*
+ * Out-of-line code for bit fetching (shared with jdphuff.c).
+ * See jdhuff.h for info about usage.
+ * Note: current values of get_buffer and bits_left are passed as parameters,
+ * but are returned in the corresponding fields of the state struct.
+ *
+ * On most machines MIN_GET_BITS should be 25 to allow the full 32-bit width
+ * of get_buffer to be used. (On machines with wider words, an even larger
+ * buffer could be used.) However, on some machines 32-bit shifts are
+ * quite slow and take time proportional to the number of places shifted.
+ * (This is true with most PC compilers, for instance.) In this case it may
+ * be a win to set MIN_GET_BITS to the minimum value of 15. This reduces the
+ * average shift distance at the cost of more calls to jpeg_fill_bit_buffer.
+ */
+
+#ifdef SLOW_SHIFT_32
+#define MIN_GET_BITS 15 /* minimum allowable value */
+#else
+#define MIN_GET_BITS (BIT_BUF_SIZE-7)
+#endif
+
+
+GLOBAL(boolean)
+jpeg_fill_bit_buffer (bitread_working_state * state,
+ register bit_buf_type get_buffer, register int bits_left,
+ int nbits)
+/* Load up the bit buffer to a depth of at least nbits */
+{
+ /* Copy heavily used state fields into locals (hopefully registers) */
+ register const JOCTET * next_input_byte = state->next_input_byte;
+ register size_t bytes_in_buffer = state->bytes_in_buffer;
+ j_decompress_ptr cinfo = state->cinfo;
+
+ /* Attempt to load at least MIN_GET_BITS bits into get_buffer. */
+ /* (It is assumed that no request will be for more than that many bits.) */
+ /* We fail to do so only if we hit a marker or are forced to suspend. */
+
+ if (cinfo->unread_marker == 0) { /* cannot advance past a marker */
+ while (bits_left < MIN_GET_BITS) {
+ register int c;
+
+ /* Attempt to read a byte */
+ if (bytes_in_buffer == 0) {
+ if (! (*cinfo->src->fill_input_buffer) (cinfo))
+ return FALSE;
+ next_input_byte = cinfo->src->next_input_byte;
+ bytes_in_buffer = cinfo->src->bytes_in_buffer;
+ }
+ bytes_in_buffer--;
+ c = GETJOCTET(*next_input_byte++);
+
+ /* If it's 0xFF, check and discard stuffed zero byte */
+ if (c == 0xFF) {
+ /* Loop here to discard any padding FF's on terminating marker,
+ * so that we can save a valid unread_marker value. NOTE: we will
+ * accept multiple FF's followed by a 0 as meaning a single FF data
+ * byte. This data pattern is not valid according to the standard.
+ */
+ do {
+ if (bytes_in_buffer == 0) {
+ if (! (*cinfo->src->fill_input_buffer) (cinfo))
+ return FALSE;
+ next_input_byte = cinfo->src->next_input_byte;
+ bytes_in_buffer = cinfo->src->bytes_in_buffer;
+ }
+ bytes_in_buffer--;
+ c = GETJOCTET(*next_input_byte++);
+ } while (c == 0xFF);
+
+ if (c == 0) {
+ /* Found FF/00, which represents an FF data byte */
+ c = 0xFF;
+ } else {
+ /* Oops, it's actually a marker indicating end of compressed data.
+ * Save the marker code for later use.
+ * Fine point: it might appear that we should save the marker into
+ * bitread working state, not straight into permanent state. But
+ * once we have hit a marker, we cannot need to suspend within the
+ * current MCU, because we will read no more bytes from the data
+ * source. So it is OK to update permanent state right away.
+ */
+ cinfo->unread_marker = c;
+ /* See if we need to insert some fake zero bits. */
+ goto no_more_bytes;
+ }
+ }
+
+ /* OK, load c into get_buffer */
+ get_buffer = (get_buffer << 8) | c;
+ bits_left += 8;
+ } /* end while */
+ } else {
+ no_more_bytes:
+ /* We get here if we've read the marker that terminates the compressed
+ * data segment. There should be enough bits in the buffer register
+ * to satisfy the request; if so, no problem.
+ */
+ if (nbits > bits_left) {
+ /* Uh-oh. Report corrupted data to user and stuff zeroes into
+ * the data stream, so that we can produce some kind of image.
+ * We use a nonvolatile flag to ensure that only one warning message
+ * appears per data segment.
+ */
+ if (! cinfo->entropy->insufficient_data) {
+ WARNMS(cinfo, JWRN_HIT_MARKER);
+ cinfo->entropy->insufficient_data = TRUE;
+ }
+ /* Fill the buffer with zero bits */
+ get_buffer <<= MIN_GET_BITS - bits_left;
+ bits_left = MIN_GET_BITS;
+ }
+ }
+
+ /* Unload the local registers */
+ state->next_input_byte = next_input_byte;
+ state->bytes_in_buffer = bytes_in_buffer;
+ state->get_buffer = get_buffer;
+ state->bits_left = bits_left;
+
+ return TRUE;
+}
+
+
+/*
+ * Out-of-line code for Huffman code decoding.
+ * See jdhuff.h for info about usage.
+ */
+
+GLOBAL(int)
+jpeg_huff_decode (bitread_working_state * state,
+ register bit_buf_type get_buffer, register int bits_left,
+ d_derived_tbl * htbl, int min_bits)
+{
+ register int l = min_bits;
+ register INT32 code;
+
+ /* HUFF_DECODE has determined that the code is at least min_bits */
+ /* bits long, so fetch that many bits in one swoop. */
+
+ CHECK_BIT_BUFFER(*state, l, return -1);
+ code = GET_BITS(l);
+
+ /* Collect the rest of the Huffman code one bit at a time. */
+ /* This is per Figure F.16 in the JPEG spec. */
+
+ while (code > htbl->maxcode[l]) {
+ code <<= 1;
+ CHECK_BIT_BUFFER(*state, 1, return -1);
+ code |= GET_BITS(1);
+ l++;
+ }
+
+ /* Unload the local registers */
+ state->get_buffer = get_buffer;
+ state->bits_left = bits_left;
+
+ /* With garbage input we may reach the sentinel value l = 17. */
+
+ if (l > 16) {
+ WARNMS(state->cinfo, JWRN_HUFF_BAD_CODE);
+ return 0; /* fake a zero as the safest result */
+ }
+
+ return htbl->pub->huffval[ (int) (code + htbl->valoffset[l]) ];
+}
+
+
+/*
+ * Figure F.12: extend sign bit.
+ * On some machines, a shift and add will be faster than a table lookup.
+ */
+
+#ifdef AVOID_TABLES
+
+#define HUFF_EXTEND(x,s) ((x) < (1<<((s)-1)) ? (x) + (((-1)<<(s)) + 1) : (x))
+
+#else
+
+#define HUFF_EXTEND(x,s) ((x) < extend_test[s] ? (x) + extend_offset[s] : (x))
+
+static const int extend_test[16] = /* entry n is 2**(n-1) */
+ { 0, 0x0001, 0x0002, 0x0004, 0x0008, 0x0010, 0x0020, 0x0040, 0x0080,
+ 0x0100, 0x0200, 0x0400, 0x0800, 0x1000, 0x2000, 0x4000 };
+
+static const int extend_offset[16] = /* entry n is (-1 << n) + 1 */
+ { 0, ((-1)<<1) + 1, ((-1)<<2) + 1, ((-1)<<3) + 1, ((-1)<<4) + 1,
+ ((-1)<<5) + 1, ((-1)<<6) + 1, ((-1)<<7) + 1, ((-1)<<8) + 1,
+ ((-1)<<9) + 1, ((-1)<<10) + 1, ((-1)<<11) + 1, ((-1)<<12) + 1,
+ ((-1)<<13) + 1, ((-1)<<14) + 1, ((-1)<<15) + 1 };
+
+#endif /* AVOID_TABLES */
+
+
+/*
+ * Check for a restart marker & resynchronize decoder.
+ * Returns FALSE if must suspend.
+ */
+
+LOCAL(boolean)
+process_restart (j_decompress_ptr cinfo)
+{
+ huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
+ int ci;
+
+ /* Throw away any unused bits remaining in bit buffer; */
+ /* include any full bytes in next_marker's count of discarded bytes */
+ cinfo->marker->discarded_bytes += entropy->bitstate.bits_left / 8;
+ entropy->bitstate.bits_left = 0;
+
+ /* Advance past the RSTn marker */
+ if (! (*cinfo->marker->read_restart_marker) (cinfo))
+ return FALSE;
+
+ /* Re-initialize DC predictions to 0 */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++)
+ entropy->saved.last_dc_val[ci] = 0;
+
+ /* Reset restart counter */
+ entropy->restarts_to_go = cinfo->restart_interval;
+
+ /* Reset out-of-data flag, unless read_restart_marker left us smack up
+ * against a marker. In that case we will end up treating the next data
+ * segment as empty, and we can avoid producing bogus output pixels by
+ * leaving the flag set.
+ */
+ if (cinfo->unread_marker == 0)
+ entropy->pub.insufficient_data = FALSE;
+
+ return TRUE;
+}
+
+
+/*
+ * Decode and return one MCU's worth of Huffman-compressed coefficients.
+ * The coefficients are reordered from zigzag order into natural array order,
+ * but are not dequantized.
+ *
+ * The i'th block of the MCU is stored into the block pointed to by
+ * MCU_data[i]. WE ASSUME THIS AREA HAS BEEN ZEROED BY THE CALLER.
+ * (Wholesale zeroing is usually a little faster than retail...)
+ *
+ * Returns FALSE if data source requested suspension. In that case no
+ * changes have been made to permanent state. (Exception: some output
+ * coefficients may already have been assigned. This is harmless for
+ * this module, since we'll just re-assign them on the next call.)
+ */
+
+METHODDEF(boolean)
+decode_mcu (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
+ int blkn;
+ BITREAD_STATE_VARS;
+ savable_state state;
+
+ /* Process restart marker if needed; may have to suspend */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0)
+ if (! process_restart(cinfo))
+ return FALSE;
+ }
+
+ /* If we've run out of data, just leave the MCU set to zeroes.
+ * This way, we return uniform gray for the remainder of the segment.
+ */
+ if (! entropy->pub.insufficient_data) {
+
+ /* Load up working state */
+ BITREAD_LOAD_STATE(cinfo,entropy->bitstate);
+ ASSIGN_STATE(state, entropy->saved);
+
+ /* Outer loop handles each block in the MCU */
+
+ for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
+ JBLOCKROW block = MCU_data[blkn];
+ d_derived_tbl * dctbl = entropy->dc_cur_tbls[blkn];
+ d_derived_tbl * actbl = entropy->ac_cur_tbls[blkn];
+ register int s, k, r;
+
+ /* Decode a single block's worth of coefficients */
+
+ /* Section F.2.2.1: decode the DC coefficient difference */
+ HUFF_DECODE(s, br_state, dctbl, return FALSE, label1);
+ if (s) {
+ CHECK_BIT_BUFFER(br_state, s, return FALSE);
+ r = GET_BITS(s);
+ s = HUFF_EXTEND(r, s);
+ }
+
+ if (entropy->dc_needed[blkn]) {
+ /* Convert DC difference to actual value, update last_dc_val */
+ int ci = cinfo->MCU_membership[blkn];
+ s += state.last_dc_val[ci];
+ state.last_dc_val[ci] = s;
+ /* Output the DC coefficient (assumes jpeg_natural_order[0] = 0) */
+ (*block)[0] = (JCOEF) s;
+ }
+
+ if (entropy->ac_needed[blkn]) {
+
+ /* Section F.2.2.2: decode the AC coefficients */
+ /* Since zeroes are skipped, output area must be cleared beforehand */
+ for (k = 1; k < DCTSIZE2; k++) {
+ HUFF_DECODE(s, br_state, actbl, return FALSE, label2);
+
+ r = s >> 4;
+ s &= 15;
+
+ if (s) {
+ k += r;
+ CHECK_BIT_BUFFER(br_state, s, return FALSE);
+ r = GET_BITS(s);
+ s = HUFF_EXTEND(r, s);
+ /* Output coefficient in natural (dezigzagged) order.
+ * Note: the extra entries in jpeg_natural_order[] will save us
+ * if k >= DCTSIZE2, which could happen if the data is corrupted.
+ */
+ (*block)[jpeg_natural_order[k]] = (JCOEF) s;
+ } else {
+ if (r != 15)
+ break;
+ k += 15;
+ }
+ }
+
+ } else {
+
+ /* Section F.2.2.2: decode the AC coefficients */
+ /* In this path we just discard the values */
+ for (k = 1; k < DCTSIZE2; k++) {
+ HUFF_DECODE(s, br_state, actbl, return FALSE, label3);
+
+ r = s >> 4;
+ s &= 15;
+
+ if (s) {
+ k += r;
+ CHECK_BIT_BUFFER(br_state, s, return FALSE);
+ DROP_BITS(s);
+ } else {
+ if (r != 15)
+ break;
+ k += 15;
+ }
+ }
+
+ }
+ }
+
+ /* Completed MCU, so update state */
+ BITREAD_SAVE_STATE(cinfo,entropy->bitstate);
+ ASSIGN_STATE(entropy->saved, state);
+ }
+
+ /* Account for restart interval (no-op if not using restarts) */
+ entropy->restarts_to_go--;
+
+ return TRUE;
+}
+
+
+/*
+ * Module initialization routine for Huffman entropy decoding.
+ */
+
+GLOBAL(void)
+jinit_huff_decoder (j_decompress_ptr cinfo)
+{
+ huff_entropy_ptr entropy;
+ int i;
+
+ entropy = (huff_entropy_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(huff_entropy_decoder));
+ cinfo->entropy = (struct jpeg_entropy_decoder *) entropy;
+ entropy->pub.start_pass = start_pass_huff_decoder;
+ entropy->pub.decode_mcu = decode_mcu;
+
+ /* Mark tables unallocated */
+ for (i = 0; i < NUM_HUFF_TBLS; i++) {
+ entropy->dc_derived_tbls[i] = entropy->ac_derived_tbls[i] = NULL;
+ }
+}
diff --git a/User/lib/lcd/gui/JPEG/jdhuff.h b/User/lib/lcd/gui/JPEG/jdhuff.h
new file mode 100644
index 0000000..4d7ae8b
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdhuff.h
@@ -0,0 +1,193 @@
+/*
+ * jdhuff.h
+ *
+ * Copyright (C) 1991-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains declarations for Huffman entropy decoding routines
+ * that are shared between the sequential decoder (jdhuff.c) and the
+ * progressive decoder (jdphuff.c). No other modules need to see these.
+ */
+
+
+/* Derived data constructed for each Huffman table */
+
+#define HUFF_LOOKAHEAD 8 /* # of bits of lookahead */
+
+typedef struct {
+ /* Basic tables: (element [0] of each array is unused) */
+ INT32 maxcode[18]; /* largest code of length k (-1 if none) */
+ /* (maxcode[17] is a sentinel to ensure jpeg_huff_decode terminates) */
+ INT32 valoffset[17]; /* huffval[] offset for codes of length k */
+ /* valoffset[k] = huffval[] index of 1st symbol of code length k, less
+ * the smallest code of length k; so given a code of length k, the
+ * corresponding symbol is huffval[code + valoffset[k]]
+ */
+
+ /* Link to public Huffman table (needed only in jpeg_huff_decode) */
+ JHUFF_TBL *pub;
+
+ /* Lookahead tables: indexed by the next HUFF_LOOKAHEAD bits of
+ * the input data stream. If the next Huffman code is no more
+ * than HUFF_LOOKAHEAD bits long, we can obtain its length and
+ * the corresponding symbol directly from these tables.
+ */
+ int look_nbits[1< 32 bits on your machine, and shifting/masking longs is
+ * reasonably fast, making bit_buf_type be long and setting BIT_BUF_SIZE
+ * appropriately should be a win. Unfortunately we can't define the size
+ * with something like #define BIT_BUF_SIZE (sizeof(bit_buf_type)*8)
+ * because not all machines measure sizeof in 8-bit bytes.
+ */
+
+typedef struct { /* Bitreading state saved across MCUs */
+ bit_buf_type get_buffer; /* current bit-extraction buffer */
+ int bits_left; /* # of unused bits in it */
+} bitread_perm_state;
+
+typedef struct { /* Bitreading working state within an MCU */
+ /* Current data source location */
+ /* We need a copy, rather than munging the original, in case of suspension */
+ const JOCTET * next_input_byte; /* => next byte to read from source */
+ size_t bytes_in_buffer; /* # of bytes remaining in source buffer */
+ /* Bit input buffer --- note these values are kept in register variables,
+ * not in this struct, inside the inner loops.
+ */
+ bit_buf_type get_buffer; /* current bit-extraction buffer */
+ int bits_left; /* # of unused bits in it */
+ /* Pointer needed by jpeg_fill_bit_buffer. */
+ j_decompress_ptr cinfo; /* back link to decompress master record */
+} bitread_working_state;
+
+/* Macros to declare and load/save bitread local variables. */
+#define BITREAD_STATE_VARS \
+ register bit_buf_type get_buffer; \
+ register int bits_left; \
+ bitread_working_state br_state
+
+#define BITREAD_LOAD_STATE(cinfop,permstate) \
+ br_state.cinfo = cinfop; \
+ br_state.next_input_byte = cinfop->src->next_input_byte; \
+ br_state.bytes_in_buffer = cinfop->src->bytes_in_buffer; \
+ get_buffer = permstate.get_buffer; \
+ bits_left = permstate.bits_left;
+
+#define BITREAD_SAVE_STATE(cinfop,permstate) \
+ cinfop->src->next_input_byte = br_state.next_input_byte; \
+ cinfop->src->bytes_in_buffer = br_state.bytes_in_buffer; \
+ permstate.get_buffer = get_buffer; \
+ permstate.bits_left = bits_left
+
+/*
+ * These macros provide the in-line portion of bit fetching.
+ * Use CHECK_BIT_BUFFER to ensure there are N bits in get_buffer
+ * before using GET_BITS, PEEK_BITS, or DROP_BITS.
+ * The variables get_buffer and bits_left are assumed to be locals,
+ * but the state struct might not be (jpeg_huff_decode needs this).
+ * CHECK_BIT_BUFFER(state,n,action);
+ * Ensure there are N bits in get_buffer; if suspend, take action.
+ * val = GET_BITS(n);
+ * Fetch next N bits.
+ * val = PEEK_BITS(n);
+ * Fetch next N bits without removing them from the buffer.
+ * DROP_BITS(n);
+ * Discard next N bits.
+ * The value N should be a simple variable, not an expression, because it
+ * is evaluated multiple times.
+ */
+
+#define CHECK_BIT_BUFFER(state,nbits,action) \
+ { if (bits_left < (nbits)) { \
+ if (! jpeg_fill_bit_buffer(&(state),get_buffer,bits_left,nbits)) \
+ { action; } \
+ get_buffer = (state).get_buffer; bits_left = (state).bits_left; } }
+
+#define GET_BITS(nbits) \
+ (((int) (get_buffer >> (bits_left -= (nbits)))) & ((1<<(nbits))-1))
+
+#define PEEK_BITS(nbits) \
+ (((int) (get_buffer >> (bits_left - (nbits)))) & ((1<<(nbits))-1))
+
+#define DROP_BITS(nbits) \
+ (bits_left -= (nbits))
+
+/* Load up the bit buffer to a depth of at least nbits */
+EXTERN(boolean) jpeg_fill_bit_buffer
+ JPP((bitread_working_state * state, register bit_buf_type get_buffer,
+ register int bits_left, int nbits));
+
+
+/*
+ * Code for extracting next Huffman-coded symbol from input bit stream.
+ * Again, this is time-critical and we make the main paths be macros.
+ *
+ * We use a lookahead table to process codes of up to HUFF_LOOKAHEAD bits
+ * without looping. Usually, more than 95% of the Huffman codes will be 8
+ * or fewer bits long. The few overlength codes are handled with a loop,
+ * which need not be inline code.
+ *
+ * Notes about the HUFF_DECODE macro:
+ * 1. Near the end of the data segment, we may fail to get enough bits
+ * for a lookahead. In that case, we do it the hard way.
+ * 2. If the lookahead table contains no entry, the next code must be
+ * more than HUFF_LOOKAHEAD bits long.
+ * 3. jpeg_huff_decode returns -1 if forced to suspend.
+ */
+
+#define HUFF_DECODE(result,state,htbl,failaction,slowlabel) \
+{ register int nb, look; \
+ if (bits_left < HUFF_LOOKAHEAD) { \
+ if (! jpeg_fill_bit_buffer(&state,get_buffer,bits_left, 0)) {failaction;} \
+ get_buffer = state.get_buffer; bits_left = state.bits_left; \
+ if (bits_left < HUFF_LOOKAHEAD) { \
+ nb = 1; goto slowlabel; \
+ } \
+ } \
+ look = PEEK_BITS(HUFF_LOOKAHEAD); \
+ if ((nb = htbl->look_nbits[look]) != 0) { \
+ DROP_BITS(nb); \
+ result = htbl->look_sym[look]; \
+ } else { \
+ nb = HUFF_LOOKAHEAD+1; \
+slowlabel: \
+ if ((result=jpeg_huff_decode(&state,get_buffer,bits_left,htbl,nb)) < 0) \
+ { failaction; } \
+ get_buffer = state.get_buffer; bits_left = state.bits_left; \
+ } \
+}
+
+/* Out-of-line case for Huffman code fetching */
+EXTERN(int) jpeg_huff_decode
+ JPP((bitread_working_state * state, register bit_buf_type get_buffer,
+ register int bits_left, d_derived_tbl * htbl, int min_bits));
diff --git a/User/lib/lcd/gui/JPEG/jdinput.c b/User/lib/lcd/gui/JPEG/jdinput.c
new file mode 100644
index 0000000..0c2ac8f
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdinput.c
@@ -0,0 +1,381 @@
+/*
+ * jdinput.c
+ *
+ * Copyright (C) 1991-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains input control logic for the JPEG decompressor.
+ * These routines are concerned with controlling the decompressor's input
+ * processing (marker reading and coefficient decoding). The actual input
+ * reading is done in jdmarker.c, jdhuff.c, and jdphuff.c.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/* Private state */
+
+typedef struct {
+ struct jpeg_input_controller pub; /* public fields */
+
+ boolean inheaders; /* TRUE until first SOS is reached */
+} my_input_controller;
+
+typedef my_input_controller * my_inputctl_ptr;
+
+
+/* Forward declarations */
+METHODDEF(int) consume_markers JPP((j_decompress_ptr cinfo));
+
+
+/*
+ * Routines to calculate various quantities related to the size of the image.
+ */
+
+LOCAL(void)
+initial_setup (j_decompress_ptr cinfo)
+/* Called once, when first SOS marker is reached */
+{
+ int ci;
+ jpeg_component_info *compptr;
+
+ /* Make sure image isn't bigger than I can handle */
+ if ((long) cinfo->image_height > (long) JPEG_MAX_DIMENSION ||
+ (long) cinfo->image_width > (long) JPEG_MAX_DIMENSION)
+ ERREXIT1(cinfo, JERR_IMAGE_TOO_BIG, (unsigned int) JPEG_MAX_DIMENSION);
+
+ /* For now, precision must match compiled-in value... */
+ if (cinfo->data_precision != BITS_IN_JSAMPLE)
+ ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision);
+
+ /* Check that number of components won't exceed internal array sizes */
+ if (cinfo->num_components > MAX_COMPONENTS)
+ ERREXIT2(cinfo, JERR_COMPONENT_COUNT, cinfo->num_components,
+ MAX_COMPONENTS);
+
+ /* Compute maximum sampling factors; check factor validity */
+ cinfo->max_h_samp_factor = 1;
+ cinfo->max_v_samp_factor = 1;
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ if (compptr->h_samp_factor<=0 || compptr->h_samp_factor>MAX_SAMP_FACTOR ||
+ compptr->v_samp_factor<=0 || compptr->v_samp_factor>MAX_SAMP_FACTOR)
+ ERREXIT(cinfo, JERR_BAD_SAMPLING);
+ cinfo->max_h_samp_factor = MAX(cinfo->max_h_samp_factor,
+ compptr->h_samp_factor);
+ cinfo->max_v_samp_factor = MAX(cinfo->max_v_samp_factor,
+ compptr->v_samp_factor);
+ }
+
+ /* We initialize DCT_scaled_size and min_DCT_scaled_size to DCTSIZE.
+ * In the full decompressor, this will be overridden by jdmaster.c;
+ * but in the transcoder, jdmaster.c is not used, so we must do it here.
+ */
+ cinfo->min_DCT_scaled_size = DCTSIZE;
+
+ /* Compute dimensions of components */
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ compptr->DCT_scaled_size = DCTSIZE;
+ /* Size in DCT blocks */
+ compptr->width_in_blocks = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_width * (long) compptr->h_samp_factor,
+ (long) (cinfo->max_h_samp_factor * DCTSIZE));
+ compptr->height_in_blocks = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_height * (long) compptr->v_samp_factor,
+ (long) (cinfo->max_v_samp_factor * DCTSIZE));
+ /* downsampled_width and downsampled_height will also be overridden by
+ * jdmaster.c if we are doing full decompression. The transcoder library
+ * doesn't use these values, but the calling application might.
+ */
+ /* Size in samples */
+ compptr->downsampled_width = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_width * (long) compptr->h_samp_factor,
+ (long) cinfo->max_h_samp_factor);
+ compptr->downsampled_height = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_height * (long) compptr->v_samp_factor,
+ (long) cinfo->max_v_samp_factor);
+ /* Mark component needed, until color conversion says otherwise */
+ compptr->component_needed = TRUE;
+ /* Mark no quantization table yet saved for component */
+ compptr->quant_table = NULL;
+ }
+
+ /* Compute number of fully interleaved MCU rows. */
+ cinfo->total_iMCU_rows = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_height,
+ (long) (cinfo->max_v_samp_factor*DCTSIZE));
+
+ /* Decide whether file contains multiple scans */
+ if (cinfo->comps_in_scan < cinfo->num_components || cinfo->progressive_mode)
+ cinfo->inputctl->has_multiple_scans = TRUE;
+ else
+ cinfo->inputctl->has_multiple_scans = FALSE;
+}
+
+
+LOCAL(void)
+per_scan_setup (j_decompress_ptr cinfo)
+/* Do computations that are needed before processing a JPEG scan */
+/* cinfo->comps_in_scan and cinfo->cur_comp_info[] were set from SOS marker */
+{
+ int ci, mcublks, tmp;
+ jpeg_component_info *compptr;
+
+ if (cinfo->comps_in_scan == 1) {
+
+ /* Noninterleaved (single-component) scan */
+ compptr = cinfo->cur_comp_info[0];
+
+ /* Overall image size in MCUs */
+ cinfo->MCUs_per_row = compptr->width_in_blocks;
+ cinfo->MCU_rows_in_scan = compptr->height_in_blocks;
+
+ /* For noninterleaved scan, always one block per MCU */
+ compptr->MCU_width = 1;
+ compptr->MCU_height = 1;
+ compptr->MCU_blocks = 1;
+ compptr->MCU_sample_width = compptr->DCT_scaled_size;
+ compptr->last_col_width = 1;
+ /* For noninterleaved scans, it is convenient to define last_row_height
+ * as the number of block rows present in the last iMCU row.
+ */
+ tmp = (int) (compptr->height_in_blocks % compptr->v_samp_factor);
+ if (tmp == 0) tmp = compptr->v_samp_factor;
+ compptr->last_row_height = tmp;
+
+ /* Prepare array describing MCU composition */
+ cinfo->blocks_in_MCU = 1;
+ cinfo->MCU_membership[0] = 0;
+
+ } else {
+
+ /* Interleaved (multi-component) scan */
+ if (cinfo->comps_in_scan <= 0 || cinfo->comps_in_scan > MAX_COMPS_IN_SCAN)
+ ERREXIT2(cinfo, JERR_COMPONENT_COUNT, cinfo->comps_in_scan,
+ MAX_COMPS_IN_SCAN);
+
+ /* Overall image size in MCUs */
+ cinfo->MCUs_per_row = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_width,
+ (long) (cinfo->max_h_samp_factor*DCTSIZE));
+ cinfo->MCU_rows_in_scan = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_height,
+ (long) (cinfo->max_v_samp_factor*DCTSIZE));
+
+ cinfo->blocks_in_MCU = 0;
+
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ /* Sampling factors give # of blocks of component in each MCU */
+ compptr->MCU_width = compptr->h_samp_factor;
+ compptr->MCU_height = compptr->v_samp_factor;
+ compptr->MCU_blocks = compptr->MCU_width * compptr->MCU_height;
+ compptr->MCU_sample_width = compptr->MCU_width * compptr->DCT_scaled_size;
+ /* Figure number of non-dummy blocks in last MCU column & row */
+ tmp = (int) (compptr->width_in_blocks % compptr->MCU_width);
+ if (tmp == 0) tmp = compptr->MCU_width;
+ compptr->last_col_width = tmp;
+ tmp = (int) (compptr->height_in_blocks % compptr->MCU_height);
+ if (tmp == 0) tmp = compptr->MCU_height;
+ compptr->last_row_height = tmp;
+ /* Prepare array describing MCU composition */
+ mcublks = compptr->MCU_blocks;
+ if (cinfo->blocks_in_MCU + mcublks > D_MAX_BLOCKS_IN_MCU)
+ ERREXIT(cinfo, JERR_BAD_MCU_SIZE);
+ while (mcublks-- > 0) {
+ cinfo->MCU_membership[cinfo->blocks_in_MCU++] = ci;
+ }
+ }
+
+ }
+}
+
+
+/*
+ * Save away a copy of the Q-table referenced by each component present
+ * in the current scan, unless already saved during a prior scan.
+ *
+ * In a multiple-scan JPEG file, the encoder could assign different components
+ * the same Q-table slot number, but change table definitions between scans
+ * so that each component uses a different Q-table. (The IJG encoder is not
+ * currently capable of doing this, but other encoders might.) Since we want
+ * to be able to dequantize all the components at the end of the file, this
+ * means that we have to save away the table actually used for each component.
+ * We do this by copying the table at the start of the first scan containing
+ * the component.
+ * The JPEG spec prohibits the encoder from changing the contents of a Q-table
+ * slot between scans of a component using that slot. If the encoder does so
+ * anyway, this decoder will simply use the Q-table values that were current
+ * at the start of the first scan for the component.
+ *
+ * The decompressor output side looks only at the saved quant tables,
+ * not at the current Q-table slots.
+ */
+
+LOCAL(void)
+latch_quant_tables (j_decompress_ptr cinfo)
+{
+ int ci, qtblno;
+ jpeg_component_info *compptr;
+ JQUANT_TBL * qtbl;
+
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ /* No work if we already saved Q-table for this component */
+ if (compptr->quant_table != NULL)
+ continue;
+ /* Make sure specified quantization table is present */
+ qtblno = compptr->quant_tbl_no;
+ if (qtblno < 0 || qtblno >= NUM_QUANT_TBLS ||
+ cinfo->quant_tbl_ptrs[qtblno] == NULL)
+ ERREXIT1(cinfo, JERR_NO_QUANT_TABLE, qtblno);
+ /* OK, save away the quantization table */
+ qtbl = (JQUANT_TBL *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(JQUANT_TBL));
+ MEMCOPY(qtbl, cinfo->quant_tbl_ptrs[qtblno], SIZEOF(JQUANT_TBL));
+ compptr->quant_table = qtbl;
+ }
+}
+
+
+/*
+ * Initialize the input modules to read a scan of compressed data.
+ * The first call to this is done by jdmaster.c after initializing
+ * the entire decompressor (during jpeg_start_decompress).
+ * Subsequent calls come from consume_markers, below.
+ */
+
+METHODDEF(void)
+start_input_pass (j_decompress_ptr cinfo)
+{
+ per_scan_setup(cinfo);
+ latch_quant_tables(cinfo);
+ (*cinfo->entropy->start_pass) (cinfo);
+ (*cinfo->coef->start_input_pass) (cinfo);
+ cinfo->inputctl->consume_input = cinfo->coef->consume_data;
+}
+
+
+/*
+ * Finish up after inputting a compressed-data scan.
+ * This is called by the coefficient controller after it's read all
+ * the expected data of the scan.
+ */
+
+METHODDEF(void)
+finish_input_pass (j_decompress_ptr cinfo)
+{
+ cinfo->inputctl->consume_input = consume_markers;
+}
+
+
+/*
+ * Read JPEG markers before, between, or after compressed-data scans.
+ * Change state as necessary when a new scan is reached.
+ * Return value is JPEG_SUSPENDED, JPEG_REACHED_SOS, or JPEG_REACHED_EOI.
+ *
+ * The consume_input method pointer points either here or to the
+ * coefficient controller's consume_data routine, depending on whether
+ * we are reading a compressed data segment or inter-segment markers.
+ */
+
+METHODDEF(int)
+consume_markers (j_decompress_ptr cinfo)
+{
+ my_inputctl_ptr inputctl = (my_inputctl_ptr) cinfo->inputctl;
+ int val;
+
+ if (inputctl->pub.eoi_reached) /* After hitting EOI, read no further */
+ return JPEG_REACHED_EOI;
+
+ val = (*cinfo->marker->read_markers) (cinfo);
+
+ switch (val) {
+ case JPEG_REACHED_SOS: /* Found SOS */
+ if (inputctl->inheaders) { /* 1st SOS */
+ initial_setup(cinfo);
+ inputctl->inheaders = FALSE;
+ /* Note: start_input_pass must be called by jdmaster.c
+ * before any more input can be consumed. jdapimin.c is
+ * responsible for enforcing this sequencing.
+ */
+ } else { /* 2nd or later SOS marker */
+ if (! inputctl->pub.has_multiple_scans)
+ ERREXIT(cinfo, JERR_EOI_EXPECTED); /* Oops, I wasn't expecting this! */
+ start_input_pass(cinfo);
+ }
+ break;
+ case JPEG_REACHED_EOI: /* Found EOI */
+ inputctl->pub.eoi_reached = TRUE;
+ if (inputctl->inheaders) { /* Tables-only datastream, apparently */
+ if (cinfo->marker->saw_SOF)
+ ERREXIT(cinfo, JERR_SOF_NO_SOS);
+ } else {
+ /* Prevent infinite loop in coef ctlr's decompress_data routine
+ * if user set output_scan_number larger than number of scans.
+ */
+ if (cinfo->output_scan_number > cinfo->input_scan_number)
+ cinfo->output_scan_number = cinfo->input_scan_number;
+ }
+ break;
+ case JPEG_SUSPENDED:
+ break;
+ }
+
+ return val;
+}
+
+
+/*
+ * Reset state to begin a fresh datastream.
+ */
+
+METHODDEF(void)
+reset_input_controller (j_decompress_ptr cinfo)
+{
+ my_inputctl_ptr inputctl = (my_inputctl_ptr) cinfo->inputctl;
+
+ inputctl->pub.consume_input = consume_markers;
+ inputctl->pub.has_multiple_scans = FALSE; /* "unknown" would be better */
+ inputctl->pub.eoi_reached = FALSE;
+ inputctl->inheaders = TRUE;
+ /* Reset other modules */
+ (*cinfo->err->reset_error_mgr) ((j_common_ptr) cinfo);
+ (*cinfo->marker->reset_marker_reader) (cinfo);
+ /* Reset progression state -- would be cleaner if entropy decoder did this */
+ cinfo->coef_bits = NULL;
+}
+
+
+/*
+ * Initialize the input controller module.
+ * This is called only once, when the decompression object is created.
+ */
+
+GLOBAL(void)
+jinit_input_controller (j_decompress_ptr cinfo)
+{
+ my_inputctl_ptr inputctl;
+
+ /* Create subobject in permanent pool */
+ inputctl = (my_inputctl_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT,
+ SIZEOF(my_input_controller));
+ cinfo->inputctl = (struct jpeg_input_controller *) inputctl;
+ /* Initialize method pointers */
+ inputctl->pub.consume_input = consume_markers;
+ inputctl->pub.reset_input_controller = reset_input_controller;
+ inputctl->pub.start_input_pass = start_input_pass;
+ inputctl->pub.finish_input_pass = finish_input_pass;
+ /* Initialize state: can't use reset_input_controller since we don't
+ * want to try to reset other modules yet.
+ */
+ inputctl->pub.has_multiple_scans = FALSE; /* "unknown" would be better */
+ inputctl->pub.eoi_reached = FALSE;
+ inputctl->inheaders = TRUE;
+}
diff --git a/User/lib/lcd/gui/JPEG/jdmainct.c b/User/lib/lcd/gui/JPEG/jdmainct.c
new file mode 100644
index 0000000..557d64f
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdmainct.c
@@ -0,0 +1,512 @@
+/*
+ * jdmainct.c
+ *
+ * Copyright (C) 1994-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains the main buffer controller for decompression.
+ * The main buffer lies between the JPEG decompressor proper and the
+ * post-processor; it holds downsampled data in the JPEG colorspace.
+ *
+ * Note that this code is bypassed in raw-data mode, since the application
+ * supplies the equivalent of the main buffer in that case.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/*
+ * In the current system design, the main buffer need never be a full-image
+ * buffer; any full-height buffers will be found inside the coefficient or
+ * postprocessing controllers. Nonetheless, the main controller is not
+ * trivial. Its responsibility is to provide context rows for upsampling/
+ * rescaling, and doing this in an efficient fashion is a bit tricky.
+ *
+ * Postprocessor input data is counted in "row groups". A row group
+ * is defined to be (v_samp_factor * DCT_scaled_size / min_DCT_scaled_size)
+ * sample rows of each component. (We require DCT_scaled_size values to be
+ * chosen such that these numbers are integers. In practice DCT_scaled_size
+ * values will likely be powers of two, so we actually have the stronger
+ * condition that DCT_scaled_size / min_DCT_scaled_size is an integer.)
+ * Upsampling will typically produce max_v_samp_factor pixel rows from each
+ * row group (times any additional scale factor that the upsampler is
+ * applying).
+ *
+ * The coefficient controller will deliver data to us one iMCU row at a time;
+ * each iMCU row contains v_samp_factor * DCT_scaled_size sample rows, or
+ * exactly min_DCT_scaled_size row groups. (This amount of data corresponds
+ * to one row of MCUs when the image is fully interleaved.) Note that the
+ * number of sample rows varies across components, but the number of row
+ * groups does not. Some garbage sample rows may be included in the last iMCU
+ * row at the bottom of the image.
+ *
+ * Depending on the vertical scaling algorithm used, the upsampler may need
+ * access to the sample row(s) above and below its current input row group.
+ * The upsampler is required to set need_context_rows TRUE at global selection
+ * time if so. When need_context_rows is FALSE, this controller can simply
+ * obtain one iMCU row at a time from the coefficient controller and dole it
+ * out as row groups to the postprocessor.
+ *
+ * When need_context_rows is TRUE, this controller guarantees that the buffer
+ * passed to postprocessing contains at least one row group's worth of samples
+ * above and below the row group(s) being processed. Note that the context
+ * rows "above" the first passed row group appear at negative row offsets in
+ * the passed buffer. At the top and bottom of the image, the required
+ * context rows are manufactured by duplicating the first or last real sample
+ * row; this avoids having special cases in the upsampling inner loops.
+ *
+ * The amount of context is fixed at one row group just because that's a
+ * convenient number for this controller to work with. The existing
+ * upsamplers really only need one sample row of context. An upsampler
+ * supporting arbitrary output rescaling might wish for more than one row
+ * group of context when shrinking the image; tough, we don't handle that.
+ * (This is justified by the assumption that downsizing will be handled mostly
+ * by adjusting the DCT_scaled_size values, so that the actual scale factor at
+ * the upsample step needn't be much less than one.)
+ *
+ * To provide the desired context, we have to retain the last two row groups
+ * of one iMCU row while reading in the next iMCU row. (The last row group
+ * can't be processed until we have another row group for its below-context,
+ * and so we have to save the next-to-last group too for its above-context.)
+ * We could do this most simply by copying data around in our buffer, but
+ * that'd be very slow. We can avoid copying any data by creating a rather
+ * strange pointer structure. Here's how it works. We allocate a workspace
+ * consisting of M+2 row groups (where M = min_DCT_scaled_size is the number
+ * of row groups per iMCU row). We create two sets of redundant pointers to
+ * the workspace. Labeling the physical row groups 0 to M+1, the synthesized
+ * pointer lists look like this:
+ * M+1 M-1
+ * master pointer --> 0 master pointer --> 0
+ * 1 1
+ * ... ...
+ * M-3 M-3
+ * M-2 M
+ * M-1 M+1
+ * M M-2
+ * M+1 M-1
+ * 0 0
+ * We read alternate iMCU rows using each master pointer; thus the last two
+ * row groups of the previous iMCU row remain un-overwritten in the workspace.
+ * The pointer lists are set up so that the required context rows appear to
+ * be adjacent to the proper places when we pass the pointer lists to the
+ * upsampler.
+ *
+ * The above pictures describe the normal state of the pointer lists.
+ * At top and bottom of the image, we diddle the pointer lists to duplicate
+ * the first or last sample row as necessary (this is cheaper than copying
+ * sample rows around).
+ *
+ * This scheme breaks down if M < 2, ie, min_DCT_scaled_size is 1. In that
+ * situation each iMCU row provides only one row group so the buffering logic
+ * must be different (eg, we must read two iMCU rows before we can emit the
+ * first row group). For now, we simply do not support providing context
+ * rows when min_DCT_scaled_size is 1. That combination seems unlikely to
+ * be worth providing --- if someone wants a 1/8th-size preview, they probably
+ * want it quick and dirty, so a context-free upsampler is sufficient.
+ */
+
+
+/* Private buffer controller object */
+
+typedef struct {
+ struct jpeg_d_main_controller pub; /* public fields */
+
+ /* Pointer to allocated workspace (M or M+2 row groups). */
+ JSAMPARRAY buffer[MAX_COMPONENTS];
+
+ boolean buffer_full; /* Have we gotten an iMCU row from decoder? */
+ JDIMENSION rowgroup_ctr; /* counts row groups output to postprocessor */
+
+ /* Remaining fields are only used in the context case. */
+
+ /* These are the master pointers to the funny-order pointer lists. */
+ JSAMPIMAGE xbuffer[2]; /* pointers to weird pointer lists */
+
+ int whichptr; /* indicates which pointer set is now in use */
+ int context_state; /* process_data state machine status */
+ JDIMENSION rowgroups_avail; /* row groups available to postprocessor */
+ JDIMENSION iMCU_row_ctr; /* counts iMCU rows to detect image top/bot */
+} my_main_controller;
+
+typedef my_main_controller * my_main_ptr;
+
+/* context_state values: */
+#define CTX_PREPARE_FOR_IMCU 0 /* need to prepare for MCU row */
+#define CTX_PROCESS_IMCU 1 /* feeding iMCU to postprocessor */
+#define CTX_POSTPONED_ROW 2 /* feeding postponed row group */
+
+
+/* Forward declarations */
+METHODDEF(void) process_data_simple_main
+ JPP((j_decompress_ptr cinfo, JSAMPARRAY output_buf,
+ JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail));
+METHODDEF(void) process_data_context_main
+ JPP((j_decompress_ptr cinfo, JSAMPARRAY output_buf,
+ JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail));
+#ifdef QUANT_2PASS_SUPPORTED
+METHODDEF(void) process_data_crank_post
+ JPP((j_decompress_ptr cinfo, JSAMPARRAY output_buf,
+ JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail));
+#endif
+
+
+LOCAL(void)
+alloc_funny_pointers (j_decompress_ptr cinfo)
+/* Allocate space for the funny pointer lists.
+ * This is done only once, not once per pass.
+ */
+{
+ my_main_ptr pMain = (my_main_ptr) cinfo->main;
+ int ci, rgroup;
+ int M = cinfo->min_DCT_scaled_size;
+ jpeg_component_info *compptr;
+ JSAMPARRAY xbuf;
+
+ /* Get top-level space for component array pointers.
+ * We alloc both arrays with one call to save a few cycles.
+ */
+ pMain->xbuffer[0] = (JSAMPIMAGE)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ cinfo->num_components * 2 * SIZEOF(JSAMPARRAY));
+ pMain->xbuffer[1] = pMain->xbuffer[0] + cinfo->num_components;
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ rgroup = (compptr->v_samp_factor * compptr->DCT_scaled_size) /
+ cinfo->min_DCT_scaled_size; /* height of a row group of component */
+ /* Get space for pointer lists --- M+4 row groups in each list.
+ * We alloc both pointer lists with one call to save a few cycles.
+ */
+ xbuf = (JSAMPARRAY)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ 2 * (rgroup * (M + 4)) * SIZEOF(JSAMPROW));
+ xbuf += rgroup; /* want one row group at negative offsets */
+ pMain->xbuffer[0][ci] = xbuf;
+ xbuf += rgroup * (M + 4);
+ pMain->xbuffer[1][ci] = xbuf;
+ }
+}
+
+
+LOCAL(void)
+make_funny_pointers (j_decompress_ptr cinfo)
+/* Create the funny pointer lists discussed in the comments above.
+ * The actual workspace is already allocated (in pMain->buffer),
+ * and the space for the pointer lists is allocated too.
+ * This routine just fills in the curiously ordered lists.
+ * This will be repeated at the beginning of each pass.
+ */
+{
+ my_main_ptr pMain = (my_main_ptr) cinfo->main;
+ int ci, i, rgroup;
+ int M = cinfo->min_DCT_scaled_size;
+ jpeg_component_info *compptr;
+ JSAMPARRAY buf, xbuf0, xbuf1;
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ rgroup = (compptr->v_samp_factor * compptr->DCT_scaled_size) /
+ cinfo->min_DCT_scaled_size; /* height of a row group of component */
+ xbuf0 = pMain->xbuffer[0][ci];
+ xbuf1 = pMain->xbuffer[1][ci];
+ /* First copy the workspace pointers as-is */
+ buf = pMain->buffer[ci];
+ for (i = 0; i < rgroup * (M + 2); i++) {
+ xbuf0[i] = xbuf1[i] = buf[i];
+ }
+ /* In the second list, put the last four row groups in swapped order */
+ for (i = 0; i < rgroup * 2; i++) {
+ xbuf1[rgroup*(M-2) + i] = buf[rgroup*M + i];
+ xbuf1[rgroup*M + i] = buf[rgroup*(M-2) + i];
+ }
+ /* The wraparound pointers at top and bottom will be filled later
+ * (see set_wraparound_pointers, below). Initially we want the "above"
+ * pointers to duplicate the first actual data line. This only needs
+ * to happen in xbuffer[0].
+ */
+ for (i = 0; i < rgroup; i++) {
+ xbuf0[i - rgroup] = xbuf0[0];
+ }
+ }
+}
+
+
+LOCAL(void)
+set_wraparound_pointers (j_decompress_ptr cinfo)
+/* Set up the "wraparound" pointers at top and bottom of the pointer lists.
+ * This changes the pointer list state from top-of-image to the normal state.
+ */
+{
+ my_main_ptr pMain = (my_main_ptr) cinfo->main;
+ int ci, i, rgroup;
+ int M = cinfo->min_DCT_scaled_size;
+ jpeg_component_info *compptr;
+ JSAMPARRAY xbuf0, xbuf1;
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ rgroup = (compptr->v_samp_factor * compptr->DCT_scaled_size) /
+ cinfo->min_DCT_scaled_size; /* height of a row group of component */
+ xbuf0 = pMain->xbuffer[0][ci];
+ xbuf1 = pMain->xbuffer[1][ci];
+ for (i = 0; i < rgroup; i++) {
+ xbuf0[i - rgroup] = xbuf0[rgroup*(M+1) + i];
+ xbuf1[i - rgroup] = xbuf1[rgroup*(M+1) + i];
+ xbuf0[rgroup*(M+2) + i] = xbuf0[i];
+ xbuf1[rgroup*(M+2) + i] = xbuf1[i];
+ }
+ }
+}
+
+
+LOCAL(void)
+set_bottom_pointers (j_decompress_ptr cinfo)
+/* Change the pointer lists to duplicate the last sample row at the bottom
+ * of the image. whichptr indicates which xbuffer holds the final iMCU row.
+ * Also sets rowgroups_avail to indicate number of nondummy row groups in row.
+ */
+{
+ my_main_ptr pMain = (my_main_ptr) cinfo->main;
+ int ci, i, rgroup, iMCUheight, rows_left;
+ jpeg_component_info *compptr;
+ JSAMPARRAY xbuf;
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ /* Count sample rows in one iMCU row and in one row group */
+ iMCUheight = compptr->v_samp_factor * compptr->DCT_scaled_size;
+ rgroup = iMCUheight / cinfo->min_DCT_scaled_size;
+ /* Count nondummy sample rows remaining for this component */
+ rows_left = (int) (compptr->downsampled_height % (JDIMENSION) iMCUheight);
+ if (rows_left == 0) rows_left = iMCUheight;
+ /* Count nondummy row groups. Should get same answer for each component,
+ * so we need only do it once.
+ */
+ if (ci == 0) {
+ pMain->rowgroups_avail = (JDIMENSION) ((rows_left-1) / rgroup + 1);
+ }
+ /* Duplicate the last real sample row rgroup*2 times; this pads out the
+ * last partial rowgroup and ensures at least one full rowgroup of context.
+ */
+ xbuf = pMain->xbuffer[pMain->whichptr][ci];
+ for (i = 0; i < rgroup * 2; i++) {
+ xbuf[rows_left + i] = xbuf[rows_left-1];
+ }
+ }
+}
+
+
+/*
+ * Initialize for a processing pass.
+ */
+
+METHODDEF(void)
+start_pass_main (j_decompress_ptr cinfo, J_BUF_MODE pass_mode)
+{
+ my_main_ptr pMain = (my_main_ptr) cinfo->main;
+
+ switch (pass_mode) {
+ case JBUF_PASS_THRU:
+ if (cinfo->upsample->need_context_rows) {
+ pMain->pub.process_data = process_data_context_main;
+ make_funny_pointers(cinfo); /* Create the xbuffer[] lists */
+ pMain->whichptr = 0; /* Read first iMCU row into xbuffer[0] */
+ pMain->context_state = CTX_PREPARE_FOR_IMCU;
+ pMain->iMCU_row_ctr = 0;
+ } else {
+ /* Simple case with no context needed */
+ pMain->pub.process_data = process_data_simple_main;
+ }
+ pMain->buffer_full = FALSE; /* Mark buffer empty */
+ pMain->rowgroup_ctr = 0;
+ break;
+#ifdef QUANT_2PASS_SUPPORTED
+ case JBUF_CRANK_DEST:
+ /* For last pass of 2-pass quantization, just crank the postprocessor */
+ pMain->pub.process_data = process_data_crank_post;
+ break;
+#endif
+ default:
+ ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
+ break;
+ }
+}
+
+
+/*
+ * Process some data.
+ * This handles the simple case where no context is required.
+ */
+
+METHODDEF(void)
+process_data_simple_main (j_decompress_ptr cinfo,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail)
+{
+ my_main_ptr pMain = (my_main_ptr) cinfo->main;
+ JDIMENSION rowgroups_avail;
+
+ /* Read input data if we haven't filled the main buffer yet */
+ if (! pMain->buffer_full) {
+ if (! (*cinfo->coef->decompress_data) (cinfo, pMain->buffer))
+ return; /* suspension forced, can do nothing more */
+ pMain->buffer_full = TRUE; /* OK, we have an iMCU row to work with */
+ }
+
+ /* There are always min_DCT_scaled_size row groups in an iMCU row. */
+ rowgroups_avail = (JDIMENSION) cinfo->min_DCT_scaled_size;
+ /* Note: at the bottom of the image, we may pass extra garbage row groups
+ * to the postprocessor. The postprocessor has to check for bottom
+ * of image anyway (at row resolution), so no point in us doing it too.
+ */
+
+ /* Feed the postprocessor */
+ (*cinfo->post->post_process_data) (cinfo, pMain->buffer,
+ &pMain->rowgroup_ctr, rowgroups_avail,
+ output_buf, out_row_ctr, out_rows_avail);
+
+ /* Has postprocessor consumed all the data yet? If so, mark buffer empty */
+ if (pMain->rowgroup_ctr >= rowgroups_avail) {
+ pMain->buffer_full = FALSE;
+ pMain->rowgroup_ctr = 0;
+ }
+}
+
+
+/*
+ * Process some data.
+ * This handles the case where context rows must be provided.
+ */
+
+METHODDEF(void)
+process_data_context_main (j_decompress_ptr cinfo,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail)
+{
+ my_main_ptr pMain = (my_main_ptr) cinfo->main;
+
+ /* Read input data if we haven't filled the main buffer yet */
+ if (! pMain->buffer_full) {
+ if (! (*cinfo->coef->decompress_data) (cinfo,
+ pMain->xbuffer[pMain->whichptr]))
+ return; /* suspension forced, can do nothing more */
+ pMain->buffer_full = TRUE; /* OK, we have an iMCU row to work with */
+ pMain->iMCU_row_ctr++; /* count rows received */
+ }
+
+ /* Postprocessor typically will not swallow all the input data it is handed
+ * in one call (due to filling the output buffer first). Must be prepared
+ * to exit and restart. This switch lets us keep track of how far we got.
+ * Note that each case falls through to the next on successful completion.
+ */
+ switch (pMain->context_state) {
+ case CTX_POSTPONED_ROW:
+ /* Call postprocessor using previously set pointers for postponed row */
+ (*cinfo->post->post_process_data) (cinfo, pMain->xbuffer[pMain->whichptr],
+ &pMain->rowgroup_ctr, pMain->rowgroups_avail,
+ output_buf, out_row_ctr, out_rows_avail);
+ if (pMain->rowgroup_ctr < pMain->rowgroups_avail)
+ return; /* Need to suspend */
+ pMain->context_state = CTX_PREPARE_FOR_IMCU;
+ if (*out_row_ctr >= out_rows_avail)
+ return; /* Postprocessor exactly filled output buf */
+ /*FALLTHROUGH*/
+ case CTX_PREPARE_FOR_IMCU:
+ /* Prepare to process first M-1 row groups of this iMCU row */
+ pMain->rowgroup_ctr = 0;
+ pMain->rowgroups_avail = (JDIMENSION) (cinfo->min_DCT_scaled_size - 1);
+ /* Check for bottom of image: if so, tweak pointers to "duplicate"
+ * the last sample row, and adjust rowgroups_avail to ignore padding rows.
+ */
+ if (pMain->iMCU_row_ctr == cinfo->total_iMCU_rows)
+ set_bottom_pointers(cinfo);
+ pMain->context_state = CTX_PROCESS_IMCU;
+ /*FALLTHROUGH*/
+ case CTX_PROCESS_IMCU:
+ /* Call postprocessor using previously set pointers */
+ (*cinfo->post->post_process_data) (cinfo, pMain->xbuffer[pMain->whichptr],
+ &pMain->rowgroup_ctr, pMain->rowgroups_avail,
+ output_buf, out_row_ctr, out_rows_avail);
+ if (pMain->rowgroup_ctr < pMain->rowgroups_avail)
+ return; /* Need to suspend */
+ /* After the first iMCU, change wraparound pointers to normal state */
+ if (pMain->iMCU_row_ctr == 1)
+ set_wraparound_pointers(cinfo);
+ /* Prepare to load new iMCU row using other xbuffer list */
+ pMain->whichptr ^= 1; /* 0=>1 or 1=>0 */
+ pMain->buffer_full = FALSE;
+ /* Still need to process last row group of this iMCU row, */
+ /* which is saved at index M+1 of the other xbuffer */
+ pMain->rowgroup_ctr = (JDIMENSION) (cinfo->min_DCT_scaled_size + 1);
+ pMain->rowgroups_avail = (JDIMENSION) (cinfo->min_DCT_scaled_size + 2);
+ pMain->context_state = CTX_POSTPONED_ROW;
+ }
+}
+
+
+/*
+ * Process some data.
+ * Final pass of two-pass quantization: just call the postprocessor.
+ * Source data will be the postprocessor controller's internal buffer.
+ */
+
+#ifdef QUANT_2PASS_SUPPORTED
+
+METHODDEF(void)
+process_data_crank_post (j_decompress_ptr cinfo,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail)
+{
+ (*cinfo->post->post_process_data) (cinfo, (JSAMPIMAGE) NULL,
+ (JDIMENSION *) NULL, (JDIMENSION) 0,
+ output_buf, out_row_ctr, out_rows_avail);
+}
+
+#endif /* QUANT_2PASS_SUPPORTED */
+
+
+/*
+ * Initialize main buffer controller.
+ */
+
+GLOBAL(void)
+jinit_d_main_controller (j_decompress_ptr cinfo, boolean need_full_buffer)
+{
+ my_main_ptr pMain;
+ int ci, rgroup, ngroups;
+ jpeg_component_info *compptr;
+
+ pMain = (my_main_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(my_main_controller));
+ cinfo->main = (struct jpeg_d_main_controller *) pMain;
+ pMain->pub.start_pass = start_pass_main;
+
+ if (need_full_buffer) /* shouldn't happen */
+ ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
+
+ /* Allocate the workspace.
+ * ngroups is the number of row groups we need.
+ */
+ if (cinfo->upsample->need_context_rows) {
+ if (cinfo->min_DCT_scaled_size < 2) /* unsupported, see comments above */
+ ERREXIT(cinfo, JERR_NOTIMPL);
+ alloc_funny_pointers(cinfo); /* Alloc space for xbuffer[] lists */
+ ngroups = cinfo->min_DCT_scaled_size + 2;
+ } else {
+ ngroups = cinfo->min_DCT_scaled_size;
+ }
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ rgroup = (compptr->v_samp_factor * compptr->DCT_scaled_size) /
+ cinfo->min_DCT_scaled_size; /* height of a row group of component */
+ pMain->buffer[ci] = (*cinfo->mem->alloc_sarray)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ compptr->width_in_blocks * compptr->DCT_scaled_size,
+ (JDIMENSION) (rgroup * ngroups));
+ }
+}
diff --git a/User/lib/lcd/gui/JPEG/jdmarker.c b/User/lib/lcd/gui/JPEG/jdmarker.c
new file mode 100644
index 0000000..087b22e
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdmarker.c
@@ -0,0 +1,1360 @@
+/*
+ * jdmarker.c
+ *
+ * Copyright (C) 1991-1998, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains routines to decode JPEG datastream markers.
+ * Most of the complexity arises from our desire to support input
+ * suspension: if not all of the data for a marker is available,
+ * we must exit back to the application. On resumption, we reprocess
+ * the marker.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+typedef enum { /* JPEG marker codes */
+ M_SOF0 = 0xc0,
+ M_SOF1 = 0xc1,
+ M_SOF2 = 0xc2,
+ M_SOF3 = 0xc3,
+
+ M_SOF5 = 0xc5,
+ M_SOF6 = 0xc6,
+ M_SOF7 = 0xc7,
+
+ M_JPG = 0xc8,
+ M_SOF9 = 0xc9,
+ M_SOF10 = 0xca,
+ M_SOF11 = 0xcb,
+
+ M_SOF13 = 0xcd,
+ M_SOF14 = 0xce,
+ M_SOF15 = 0xcf,
+
+ M_DHT = 0xc4,
+
+ M_DAC = 0xcc,
+
+ M_RST0 = 0xd0,
+ M_RST1 = 0xd1,
+ M_RST2 = 0xd2,
+ M_RST3 = 0xd3,
+ M_RST4 = 0xd4,
+ M_RST5 = 0xd5,
+ M_RST6 = 0xd6,
+ M_RST7 = 0xd7,
+
+ M_SOI = 0xd8,
+ M_EOI = 0xd9,
+ M_SOS = 0xda,
+ M_DQT = 0xdb,
+ M_DNL = 0xdc,
+ M_DRI = 0xdd,
+ M_DHP = 0xde,
+ M_EXP = 0xdf,
+
+ M_APP0 = 0xe0,
+ M_APP1 = 0xe1,
+ M_APP2 = 0xe2,
+ M_APP3 = 0xe3,
+ M_APP4 = 0xe4,
+ M_APP5 = 0xe5,
+ M_APP6 = 0xe6,
+ M_APP7 = 0xe7,
+ M_APP8 = 0xe8,
+ M_APP9 = 0xe9,
+ M_APP10 = 0xea,
+ M_APP11 = 0xeb,
+ M_APP12 = 0xec,
+ M_APP13 = 0xed,
+ M_APP14 = 0xee,
+ M_APP15 = 0xef,
+
+ M_JPG0 = 0xf0,
+ M_JPG13 = 0xfd,
+ M_COM = 0xfe,
+
+ M_TEM = 0x01,
+
+ M_ERROR = 0x100
+} JPEG_MARKER;
+
+
+/* Private state */
+
+typedef struct {
+ struct jpeg_marker_reader pub; /* public fields */
+
+ /* Application-overridable marker processing methods */
+ jpeg_marker_parser_method process_COM;
+ jpeg_marker_parser_method process_APPn[16];
+
+ /* Limit on marker data length to save for each marker type */
+ unsigned int length_limit_COM;
+ unsigned int length_limit_APPn[16];
+
+ /* Status of COM/APPn marker saving */
+ jpeg_saved_marker_ptr cur_marker; /* NULL if not processing a marker */
+ unsigned int bytes_read; /* data bytes read so far in marker */
+ /* Note: cur_marker is not linked into marker_list until it's all read. */
+} my_marker_reader;
+
+typedef my_marker_reader * my_marker_ptr;
+
+
+/*
+ * Macros for fetching data from the data source module.
+ *
+ * At all times, cinfo->src->next_input_byte and ->bytes_in_buffer reflect
+ * the current restart point; we update them only when we have reached a
+ * suitable place to restart if a suspension occurs.
+ */
+
+/* Declare and initialize local copies of input pointer/count */
+#define INPUT_VARS(cinfo) \
+ struct jpeg_source_mgr * datasrc = (cinfo)->src; \
+ const JOCTET * next_input_byte = datasrc->next_input_byte; \
+ size_t bytes_in_buffer = datasrc->bytes_in_buffer
+
+/* Unload the local copies --- do this only at a restart boundary */
+#define INPUT_SYNC(cinfo) \
+ ( datasrc->next_input_byte = next_input_byte, \
+ datasrc->bytes_in_buffer = bytes_in_buffer )
+
+/* Reload the local copies --- used only in MAKE_BYTE_AVAIL */
+#define INPUT_RELOAD(cinfo) \
+ ( next_input_byte = datasrc->next_input_byte, \
+ bytes_in_buffer = datasrc->bytes_in_buffer )
+
+/* Internal macro for INPUT_BYTE and INPUT_2BYTES: make a byte available.
+ * Note we do *not* do INPUT_SYNC before calling fill_input_buffer,
+ * but we must reload the local copies after a successful fill.
+ */
+#define MAKE_BYTE_AVAIL(cinfo,action) \
+ if (bytes_in_buffer == 0) { \
+ if (! (*datasrc->fill_input_buffer) (cinfo)) \
+ { action; } \
+ INPUT_RELOAD(cinfo); \
+ }
+
+/* Read a byte into variable V.
+ * If must suspend, take the specified action (typically "return FALSE").
+ */
+#define INPUT_BYTE(cinfo,V,action) \
+ MAKESTMT( MAKE_BYTE_AVAIL(cinfo,action); \
+ bytes_in_buffer--; \
+ V = GETJOCTET(*next_input_byte++); )
+
+/* As above, but read two bytes interpreted as an unsigned 16-bit integer.
+ * V should be declared unsigned int or perhaps INT32.
+ */
+#define INPUT_2BYTES(cinfo,V,action) \
+ MAKESTMT( MAKE_BYTE_AVAIL(cinfo,action); \
+ bytes_in_buffer--; \
+ V = ((unsigned int) GETJOCTET(*next_input_byte++)) << 8; \
+ MAKE_BYTE_AVAIL(cinfo,action); \
+ bytes_in_buffer--; \
+ V += GETJOCTET(*next_input_byte++); )
+
+
+/*
+ * Routines to process JPEG markers.
+ *
+ * Entry condition: JPEG marker itself has been read and its code saved
+ * in cinfo->unread_marker; input restart point is just after the marker.
+ *
+ * Exit: if return TRUE, have read and processed any parameters, and have
+ * updated the restart point to point after the parameters.
+ * If return FALSE, was forced to suspend before reaching end of
+ * marker parameters; restart point has not been moved. Same routine
+ * will be called again after application supplies more input data.
+ *
+ * This approach to suspension assumes that all of a marker's parameters
+ * can fit into a single input bufferload. This should hold for "normal"
+ * markers. Some COM/APPn markers might have large parameter segments
+ * that might not fit. If we are simply dropping such a marker, we use
+ * skip_input_data to get past it, and thereby put the problem on the
+ * source manager's shoulders. If we are saving the marker's contents
+ * into memory, we use a slightly different convention: when forced to
+ * suspend, the marker processor updates the restart point to the end of
+ * what it's consumed (ie, the end of the buffer) before returning FALSE.
+ * On resumption, cinfo->unread_marker still contains the marker code,
+ * but the data source will point to the next chunk of marker data.
+ * The marker processor must retain internal state to deal with this.
+ *
+ * Note that we don't bother to avoid duplicate trace messages if a
+ * suspension occurs within marker parameters. Other side effects
+ * require more care.
+ */
+
+
+LOCAL(boolean)
+get_soi (j_decompress_ptr cinfo)
+/* Process an SOI marker */
+{
+ int i;
+
+ TRACEMS(cinfo, 1, JTRC_SOI);
+
+ if (cinfo->marker->saw_SOI)
+ ERREXIT(cinfo, JERR_SOI_DUPLICATE);
+
+ /* Reset all parameters that are defined to be reset by SOI */
+
+ for (i = 0; i < NUM_ARITH_TBLS; i++) {
+ cinfo->arith_dc_L[i] = 0;
+ cinfo->arith_dc_U[i] = 1;
+ cinfo->arith_ac_K[i] = 5;
+ }
+ cinfo->restart_interval = 0;
+
+ /* Set initial assumptions for colorspace etc */
+
+ cinfo->jpeg_color_space = JCS_UNKNOWN;
+ cinfo->CCIR601_sampling = FALSE; /* Assume non-CCIR sampling??? */
+
+ cinfo->saw_JFIF_marker = FALSE;
+ cinfo->JFIF_major_version = 1; /* set default JFIF APP0 values */
+ cinfo->JFIF_minor_version = 1;
+ cinfo->density_unit = 0;
+ cinfo->X_density = 1;
+ cinfo->Y_density = 1;
+ cinfo->saw_Adobe_marker = FALSE;
+ cinfo->Adobe_transform = 0;
+
+ cinfo->marker->saw_SOI = TRUE;
+
+ return TRUE;
+}
+
+
+LOCAL(boolean)
+get_sof (j_decompress_ptr cinfo, boolean is_prog, boolean is_arith)
+/* Process a SOFn marker */
+{
+ INT32 length;
+ int c, ci;
+ jpeg_component_info * compptr;
+ INPUT_VARS(cinfo);
+
+ cinfo->progressive_mode = is_prog;
+ cinfo->arith_code = is_arith;
+
+ INPUT_2BYTES(cinfo, length, return FALSE);
+
+ INPUT_BYTE(cinfo, cinfo->data_precision, return FALSE);
+ INPUT_2BYTES(cinfo, cinfo->image_height, return FALSE);
+ INPUT_2BYTES(cinfo, cinfo->image_width, return FALSE);
+ INPUT_BYTE(cinfo, cinfo->num_components, return FALSE);
+
+ length -= 8;
+
+ TRACEMS4(cinfo, 1, JTRC_SOF, cinfo->unread_marker,
+ (int) cinfo->image_width, (int) cinfo->image_height,
+ cinfo->num_components);
+
+ if (cinfo->marker->saw_SOF)
+ ERREXIT(cinfo, JERR_SOF_DUPLICATE);
+
+ /* We don't support files in which the image height is initially specified */
+ /* as 0 and is later redefined by DNL. As long as we have to check that, */
+ /* might as well have a general sanity check. */
+ if (cinfo->image_height <= 0 || cinfo->image_width <= 0
+ || cinfo->num_components <= 0)
+ ERREXIT(cinfo, JERR_EMPTY_IMAGE);
+
+ if (length != (cinfo->num_components * 3))
+ ERREXIT(cinfo, JERR_BAD_LENGTH);
+
+ if (cinfo->comp_info == NULL) /* do only once, even if suspend */
+ cinfo->comp_info = (jpeg_component_info *) (*cinfo->mem->alloc_small)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ cinfo->num_components * SIZEOF(jpeg_component_info));
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ compptr->component_index = ci;
+ INPUT_BYTE(cinfo, compptr->component_id, return FALSE);
+ INPUT_BYTE(cinfo, c, return FALSE);
+ compptr->h_samp_factor = (c >> 4) & 15;
+ compptr->v_samp_factor = (c ) & 15;
+ INPUT_BYTE(cinfo, compptr->quant_tbl_no, return FALSE);
+
+ TRACEMS4(cinfo, 1, JTRC_SOF_COMPONENT,
+ compptr->component_id, compptr->h_samp_factor,
+ compptr->v_samp_factor, compptr->quant_tbl_no);
+ }
+
+ cinfo->marker->saw_SOF = TRUE;
+
+ INPUT_SYNC(cinfo);
+ return TRUE;
+}
+
+
+LOCAL(boolean)
+get_sos (j_decompress_ptr cinfo)
+/* Process a SOS marker */
+{
+ INT32 length;
+ int i, ci, n, c, cc;
+ jpeg_component_info * compptr;
+ INPUT_VARS(cinfo);
+
+ if (! cinfo->marker->saw_SOF)
+ ERREXIT(cinfo, JERR_SOS_NO_SOF);
+
+ INPUT_2BYTES(cinfo, length, return FALSE);
+
+ INPUT_BYTE(cinfo, n, return FALSE); /* Number of components */
+
+ TRACEMS1(cinfo, 1, JTRC_SOS, n);
+
+ if (length != (n * 2 + 6) || n < 1 || n > MAX_COMPS_IN_SCAN)
+ ERREXIT(cinfo, JERR_BAD_LENGTH);
+
+ cinfo->comps_in_scan = n;
+
+ /* Collect the component-spec parameters */
+
+ for (i = 0; i < n; i++) {
+ INPUT_BYTE(cinfo, cc, return FALSE);
+ INPUT_BYTE(cinfo, c, return FALSE);
+
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ if (cc == compptr->component_id)
+ goto id_found;
+ }
+
+ ERREXIT1(cinfo, JERR_BAD_COMPONENT_ID, cc);
+
+ id_found:
+
+ cinfo->cur_comp_info[i] = compptr;
+ compptr->dc_tbl_no = (c >> 4) & 15;
+ compptr->ac_tbl_no = (c ) & 15;
+
+ TRACEMS3(cinfo, 1, JTRC_SOS_COMPONENT, cc,
+ compptr->dc_tbl_no, compptr->ac_tbl_no);
+ }
+
+ /* Collect the additional scan parameters Ss, Se, Ah/Al. */
+ INPUT_BYTE(cinfo, c, return FALSE);
+ cinfo->Ss = c;
+ INPUT_BYTE(cinfo, c, return FALSE);
+ cinfo->Se = c;
+ INPUT_BYTE(cinfo, c, return FALSE);
+ cinfo->Ah = (c >> 4) & 15;
+ cinfo->Al = (c ) & 15;
+
+ TRACEMS4(cinfo, 1, JTRC_SOS_PARAMS, cinfo->Ss, cinfo->Se,
+ cinfo->Ah, cinfo->Al);
+
+ /* Prepare to scan data & restart markers */
+ cinfo->marker->next_restart_num = 0;
+
+ /* Count another SOS marker */
+ cinfo->input_scan_number++;
+
+ INPUT_SYNC(cinfo);
+ return TRUE;
+}
+
+
+#ifdef D_ARITH_CODING_SUPPORTED
+
+LOCAL(boolean)
+get_dac (j_decompress_ptr cinfo)
+/* Process a DAC marker */
+{
+ INT32 length;
+ int index, val;
+ INPUT_VARS(cinfo);
+
+ INPUT_2BYTES(cinfo, length, return FALSE);
+ length -= 2;
+
+ while (length > 0) {
+ INPUT_BYTE(cinfo, index, return FALSE);
+ INPUT_BYTE(cinfo, val, return FALSE);
+
+ length -= 2;
+
+ TRACEMS2(cinfo, 1, JTRC_DAC, index, val);
+
+ if (index < 0 || index >= (2*NUM_ARITH_TBLS))
+ ERREXIT1(cinfo, JERR_DAC_INDEX, index);
+
+ if (index >= NUM_ARITH_TBLS) { /* define AC table */
+ cinfo->arith_ac_K[index-NUM_ARITH_TBLS] = (UINT8) val;
+ } else { /* define DC table */
+ cinfo->arith_dc_L[index] = (UINT8) (val & 0x0F);
+ cinfo->arith_dc_U[index] = (UINT8) (val >> 4);
+ if (cinfo->arith_dc_L[index] > cinfo->arith_dc_U[index])
+ ERREXIT1(cinfo, JERR_DAC_VALUE, val);
+ }
+ }
+
+ if (length != 0)
+ ERREXIT(cinfo, JERR_BAD_LENGTH);
+
+ INPUT_SYNC(cinfo);
+ return TRUE;
+}
+
+#else /* ! D_ARITH_CODING_SUPPORTED */
+
+#define get_dac(cinfo) skip_variable(cinfo)
+
+#endif /* D_ARITH_CODING_SUPPORTED */
+
+
+LOCAL(boolean)
+get_dht (j_decompress_ptr cinfo)
+/* Process a DHT marker */
+{
+ INT32 length;
+ UINT8 bits[17];
+ UINT8 huffval[256];
+ int i, index, count;
+ JHUFF_TBL **htblptr;
+ INPUT_VARS(cinfo);
+
+ INPUT_2BYTES(cinfo, length, return FALSE);
+ length -= 2;
+
+ while (length > 16) {
+ INPUT_BYTE(cinfo, index, return FALSE);
+
+ TRACEMS1(cinfo, 1, JTRC_DHT, index);
+
+ bits[0] = 0;
+ count = 0;
+ for (i = 1; i <= 16; i++) {
+ INPUT_BYTE(cinfo, bits[i], return FALSE);
+ count += bits[i];
+ }
+
+ length -= 1 + 16;
+
+ TRACEMS8(cinfo, 2, JTRC_HUFFBITS,
+ bits[1], bits[2], bits[3], bits[4],
+ bits[5], bits[6], bits[7], bits[8]);
+ TRACEMS8(cinfo, 2, JTRC_HUFFBITS,
+ bits[9], bits[10], bits[11], bits[12],
+ bits[13], bits[14], bits[15], bits[16]);
+
+ /* Here we just do minimal validation of the counts to avoid walking
+ * off the end of our table space. jdhuff.c will check more carefully.
+ */
+ if (count > 256 || ((INT32) count) > length)
+ ERREXIT(cinfo, JERR_BAD_HUFF_TABLE);
+
+ for (i = 0; i < count; i++)
+ INPUT_BYTE(cinfo, huffval[i], return FALSE);
+
+ length -= count;
+
+ if (index & 0x10) { /* AC table definition */
+ index -= 0x10;
+ htblptr = &cinfo->ac_huff_tbl_ptrs[index];
+ } else { /* DC table definition */
+ htblptr = &cinfo->dc_huff_tbl_ptrs[index];
+ }
+
+ if (index < 0 || index >= NUM_HUFF_TBLS)
+ ERREXIT1(cinfo, JERR_DHT_INDEX, index);
+
+ if (*htblptr == NULL)
+ *htblptr = jpeg_alloc_huff_table((j_common_ptr) cinfo);
+
+ MEMCOPY((*htblptr)->bits, bits, SIZEOF((*htblptr)->bits));
+ MEMCOPY((*htblptr)->huffval, huffval, SIZEOF((*htblptr)->huffval));
+ }
+
+ if (length != 0)
+ ERREXIT(cinfo, JERR_BAD_LENGTH);
+
+ INPUT_SYNC(cinfo);
+ return TRUE;
+}
+
+
+LOCAL(boolean)
+get_dqt (j_decompress_ptr cinfo)
+/* Process a DQT marker */
+{
+ INT32 length;
+ int n, i, prec;
+ unsigned int tmp;
+ JQUANT_TBL *quant_ptr;
+ INPUT_VARS(cinfo);
+
+ INPUT_2BYTES(cinfo, length, return FALSE);
+ length -= 2;
+
+ while (length > 0) {
+ INPUT_BYTE(cinfo, n, return FALSE);
+ prec = n >> 4;
+ n &= 0x0F;
+
+ TRACEMS2(cinfo, 1, JTRC_DQT, n, prec);
+
+ if (n >= NUM_QUANT_TBLS)
+ ERREXIT1(cinfo, JERR_DQT_INDEX, n);
+
+ if (cinfo->quant_tbl_ptrs[n] == NULL)
+ cinfo->quant_tbl_ptrs[n] = jpeg_alloc_quant_table((j_common_ptr) cinfo);
+ quant_ptr = cinfo->quant_tbl_ptrs[n];
+
+ for (i = 0; i < DCTSIZE2; i++) {
+ if (prec)
+ INPUT_2BYTES(cinfo, tmp, return FALSE);
+ else
+ INPUT_BYTE(cinfo, tmp, return FALSE);
+ /* We convert the zigzag-order table to natural array order. */
+ quant_ptr->quantval[jpeg_natural_order[i]] = (UINT16) tmp;
+ }
+
+ if (cinfo->err->trace_level >= 2) {
+ for (i = 0; i < DCTSIZE2; i += 8) {
+ TRACEMS8(cinfo, 2, JTRC_QUANTVALS,
+ quant_ptr->quantval[i], quant_ptr->quantval[i+1],
+ quant_ptr->quantval[i+2], quant_ptr->quantval[i+3],
+ quant_ptr->quantval[i+4], quant_ptr->quantval[i+5],
+ quant_ptr->quantval[i+6], quant_ptr->quantval[i+7]);
+ }
+ }
+
+ length -= DCTSIZE2+1;
+ if (prec) length -= DCTSIZE2;
+ }
+
+ if (length != 0)
+ ERREXIT(cinfo, JERR_BAD_LENGTH);
+
+ INPUT_SYNC(cinfo);
+ return TRUE;
+}
+
+
+LOCAL(boolean)
+get_dri (j_decompress_ptr cinfo)
+/* Process a DRI marker */
+{
+ INT32 length;
+ unsigned int tmp;
+ INPUT_VARS(cinfo);
+
+ INPUT_2BYTES(cinfo, length, return FALSE);
+
+ if (length != 4)
+ ERREXIT(cinfo, JERR_BAD_LENGTH);
+
+ INPUT_2BYTES(cinfo, tmp, return FALSE);
+
+ TRACEMS1(cinfo, 1, JTRC_DRI, tmp);
+
+ cinfo->restart_interval = tmp;
+
+ INPUT_SYNC(cinfo);
+ return TRUE;
+}
+
+
+/*
+ * Routines for processing APPn and COM markers.
+ * These are either saved in memory or discarded, per application request.
+ * APP0 and APP14 are specially checked to see if they are
+ * JFIF and Adobe markers, respectively.
+ */
+
+#define APP0_DATA_LEN 14 /* Length of interesting data in APP0 */
+#define APP14_DATA_LEN 12 /* Length of interesting data in APP14 */
+#define APPN_DATA_LEN 14 /* Must be the largest of the above!! */
+
+
+LOCAL(void)
+examine_app0 (j_decompress_ptr cinfo, JOCTET FAR * data,
+ unsigned int datalen, INT32 remaining)
+/* Examine first few bytes from an APP0.
+ * Take appropriate action if it is a JFIF marker.
+ * datalen is # of bytes at data[], remaining is length of rest of marker data.
+ */
+{
+ INT32 totallen = (INT32) datalen + remaining;
+
+ if (datalen >= APP0_DATA_LEN &&
+ GETJOCTET(data[0]) == 0x4A &&
+ GETJOCTET(data[1]) == 0x46 &&
+ GETJOCTET(data[2]) == 0x49 &&
+ GETJOCTET(data[3]) == 0x46 &&
+ GETJOCTET(data[4]) == 0) {
+ /* Found JFIF APP0 marker: save info */
+ cinfo->saw_JFIF_marker = TRUE;
+ cinfo->JFIF_major_version = GETJOCTET(data[5]);
+ cinfo->JFIF_minor_version = GETJOCTET(data[6]);
+ cinfo->density_unit = GETJOCTET(data[7]);
+ cinfo->X_density = (GETJOCTET(data[8]) << 8) + GETJOCTET(data[9]);
+ cinfo->Y_density = (GETJOCTET(data[10]) << 8) + GETJOCTET(data[11]);
+ /* Check version.
+ * Major version must be 1, anything else signals an incompatible change.
+ * (We used to treat this as an error, but now it's a nonfatal warning,
+ * because some bozo at Hijaak couldn't read the spec.)
+ * Minor version should be 0..2, but process anyway if newer.
+ */
+ if (cinfo->JFIF_major_version != 1)
+ WARNMS2(cinfo, JWRN_JFIF_MAJOR,
+ cinfo->JFIF_major_version, cinfo->JFIF_minor_version);
+ /* Generate trace messages */
+ TRACEMS5(cinfo, 1, JTRC_JFIF,
+ cinfo->JFIF_major_version, cinfo->JFIF_minor_version,
+ cinfo->X_density, cinfo->Y_density, cinfo->density_unit);
+ /* Validate thumbnail dimensions and issue appropriate messages */
+ if (GETJOCTET(data[12]) | GETJOCTET(data[13]))
+ TRACEMS2(cinfo, 1, JTRC_JFIF_THUMBNAIL,
+ GETJOCTET(data[12]), GETJOCTET(data[13]));
+ totallen -= APP0_DATA_LEN;
+ if (totallen !=
+ ((INT32)GETJOCTET(data[12]) * (INT32)GETJOCTET(data[13]) * (INT32) 3))
+ TRACEMS1(cinfo, 1, JTRC_JFIF_BADTHUMBNAILSIZE, (int) totallen);
+ } else if (datalen >= 6 &&
+ GETJOCTET(data[0]) == 0x4A &&
+ GETJOCTET(data[1]) == 0x46 &&
+ GETJOCTET(data[2]) == 0x58 &&
+ GETJOCTET(data[3]) == 0x58 &&
+ GETJOCTET(data[4]) == 0) {
+ /* Found JFIF "JFXX" extension APP0 marker */
+ /* The library doesn't actually do anything with these,
+ * but we try to produce a helpful trace message.
+ */
+ switch (GETJOCTET(data[5])) {
+ case 0x10:
+ TRACEMS1(cinfo, 1, JTRC_THUMB_JPEG, (int) totallen);
+ break;
+ case 0x11:
+ TRACEMS1(cinfo, 1, JTRC_THUMB_PALETTE, (int) totallen);
+ break;
+ case 0x13:
+ TRACEMS1(cinfo, 1, JTRC_THUMB_RGB, (int) totallen);
+ break;
+ default:
+ TRACEMS2(cinfo, 1, JTRC_JFIF_EXTENSION,
+ GETJOCTET(data[5]), (int) totallen);
+ break;
+ }
+ } else {
+ /* Start of APP0 does not match "JFIF" or "JFXX", or too short */
+ TRACEMS1(cinfo, 1, JTRC_APP0, (int) totallen);
+ }
+}
+
+
+LOCAL(void)
+examine_app14 (j_decompress_ptr cinfo, JOCTET FAR * data,
+ unsigned int datalen, INT32 remaining)
+/* Examine first few bytes from an APP14.
+ * Take appropriate action if it is an Adobe marker.
+ * datalen is # of bytes at data[], remaining is length of rest of marker data.
+ */
+{
+ unsigned int version, flags0, flags1, transform;
+
+ if (datalen >= APP14_DATA_LEN &&
+ GETJOCTET(data[0]) == 0x41 &&
+ GETJOCTET(data[1]) == 0x64 &&
+ GETJOCTET(data[2]) == 0x6F &&
+ GETJOCTET(data[3]) == 0x62 &&
+ GETJOCTET(data[4]) == 0x65) {
+ /* Found Adobe APP14 marker */
+ version = (GETJOCTET(data[5]) << 8) + GETJOCTET(data[6]);
+ flags0 = (GETJOCTET(data[7]) << 8) + GETJOCTET(data[8]);
+ flags1 = (GETJOCTET(data[9]) << 8) + GETJOCTET(data[10]);
+ transform = GETJOCTET(data[11]);
+ TRACEMS4(cinfo, 1, JTRC_ADOBE, version, flags0, flags1, transform);
+ cinfo->saw_Adobe_marker = TRUE;
+ cinfo->Adobe_transform = (UINT8) transform;
+ } else {
+ /* Start of APP14 does not match "Adobe", or too short */
+ TRACEMS1(cinfo, 1, JTRC_APP14, (int) (datalen + remaining));
+ }
+}
+
+
+METHODDEF(boolean)
+get_interesting_appn (j_decompress_ptr cinfo)
+/* Process an APP0 or APP14 marker without saving it */
+{
+ INT32 length;
+ JOCTET b[APPN_DATA_LEN];
+ unsigned int i, numtoread;
+ INPUT_VARS(cinfo);
+
+ INPUT_2BYTES(cinfo, length, return FALSE);
+ length -= 2;
+
+ /* get the interesting part of the marker data */
+ if (length >= APPN_DATA_LEN)
+ numtoread = APPN_DATA_LEN;
+ else if (length > 0)
+ numtoread = (unsigned int) length;
+ else
+ numtoread = 0;
+ for (i = 0; i < numtoread; i++)
+ INPUT_BYTE(cinfo, b[i], return FALSE);
+ length -= numtoread;
+
+ /* process it */
+ switch (cinfo->unread_marker) {
+ case M_APP0:
+ examine_app0(cinfo, (JOCTET FAR *) b, numtoread, length);
+ break;
+ case M_APP14:
+ examine_app14(cinfo, (JOCTET FAR *) b, numtoread, length);
+ break;
+ default:
+ /* can't get here unless jpeg_save_markers chooses wrong processor */
+ ERREXIT1(cinfo, JERR_UNKNOWN_MARKER, cinfo->unread_marker);
+ break;
+ }
+
+ /* skip any remaining data -- could be lots */
+ INPUT_SYNC(cinfo);
+ if (length > 0)
+ (*cinfo->src->skip_input_data) (cinfo, (long) length);
+
+ return TRUE;
+}
+
+
+#ifdef SAVE_MARKERS_SUPPORTED
+
+METHODDEF(boolean)
+save_marker (j_decompress_ptr cinfo)
+/* Save an APPn or COM marker into the marker list */
+{
+ my_marker_ptr marker = (my_marker_ptr) cinfo->marker;
+ jpeg_saved_marker_ptr cur_marker = marker->cur_marker;
+ unsigned int bytes_read, data_length;
+ JOCTET FAR * data;
+ INT32 length = 0;
+ INPUT_VARS(cinfo);
+
+ if (cur_marker == NULL) {
+ /* begin reading a marker */
+ INPUT_2BYTES(cinfo, length, return FALSE);
+ length -= 2;
+ if (length >= 0) { /* watch out for bogus length word */
+ /* figure out how much we want to save */
+ unsigned int limit;
+ if (cinfo->unread_marker == (int) M_COM)
+ limit = marker->length_limit_COM;
+ else
+ limit = marker->length_limit_APPn[cinfo->unread_marker - (int) M_APP0];
+ if ((unsigned int) length < limit)
+ limit = (unsigned int) length;
+ /* allocate and initialize the marker item */
+ cur_marker = (jpeg_saved_marker_ptr)
+ (*cinfo->mem->alloc_large) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(struct jpeg_marker_struct) + limit);
+ cur_marker->next = NULL;
+ cur_marker->marker = (UINT8) cinfo->unread_marker;
+ cur_marker->original_length = (unsigned int) length;
+ cur_marker->data_length = limit;
+ /* data area is just beyond the jpeg_marker_struct */
+ data = cur_marker->data = (JOCTET FAR *) (cur_marker + 1);
+ marker->cur_marker = cur_marker;
+ marker->bytes_read = 0;
+ bytes_read = 0;
+ data_length = limit;
+ } else {
+ /* deal with bogus length word */
+ bytes_read = data_length = 0;
+ data = NULL;
+ }
+ } else {
+ /* resume reading a marker */
+ bytes_read = marker->bytes_read;
+ data_length = cur_marker->data_length;
+ data = cur_marker->data + bytes_read;
+ }
+
+ while (bytes_read < data_length) {
+ INPUT_SYNC(cinfo); /* move the restart point to here */
+ marker->bytes_read = bytes_read;
+ /* If there's not at least one byte in buffer, suspend */
+ MAKE_BYTE_AVAIL(cinfo, return FALSE);
+ /* Copy bytes with reasonable rapidity */
+ while (bytes_read < data_length && bytes_in_buffer > 0) {
+ *data++ = *next_input_byte++;
+ bytes_in_buffer--;
+ bytes_read++;
+ }
+ }
+
+ /* Done reading what we want to read */
+ if (cur_marker != NULL) { /* will be NULL if bogus length word */
+ /* Add new marker to end of list */
+ if (cinfo->marker_list == NULL) {
+ cinfo->marker_list = cur_marker;
+ } else {
+ jpeg_saved_marker_ptr prev = cinfo->marker_list;
+ while (prev->next != NULL)
+ prev = prev->next;
+ prev->next = cur_marker;
+ }
+ /* Reset pointer & calc remaining data length */
+ data = cur_marker->data;
+ length = cur_marker->original_length - data_length;
+ }
+ /* Reset to initial state for next marker */
+ marker->cur_marker = NULL;
+
+ /* Process the marker if interesting; else just make a generic trace msg */
+ switch (cinfo->unread_marker) {
+ case M_APP0:
+ examine_app0(cinfo, data, data_length, length);
+ break;
+ case M_APP14:
+ examine_app14(cinfo, data, data_length, length);
+ break;
+ default:
+ TRACEMS2(cinfo, 1, JTRC_MISC_MARKER, cinfo->unread_marker,
+ (int) (data_length + length));
+ break;
+ }
+
+ /* skip any remaining data -- could be lots */
+ INPUT_SYNC(cinfo); /* do before skip_input_data */
+ if (length > 0)
+ (*cinfo->src->skip_input_data) (cinfo, (long) length);
+
+ return TRUE;
+}
+
+#endif /* SAVE_MARKERS_SUPPORTED */
+
+
+METHODDEF(boolean)
+skip_variable (j_decompress_ptr cinfo)
+/* Skip over an unknown or uninteresting variable-length marker */
+{
+ INT32 length;
+ INPUT_VARS(cinfo);
+
+ INPUT_2BYTES(cinfo, length, return FALSE);
+ length -= 2;
+
+ TRACEMS2(cinfo, 1, JTRC_MISC_MARKER, cinfo->unread_marker, (int) length);
+
+ INPUT_SYNC(cinfo); /* do before skip_input_data */
+ if (length > 0)
+ (*cinfo->src->skip_input_data) (cinfo, (long) length);
+
+ return TRUE;
+}
+
+
+/*
+ * Find the next JPEG marker, save it in cinfo->unread_marker.
+ * Returns FALSE if had to suspend before reaching a marker;
+ * in that case cinfo->unread_marker is unchanged.
+ *
+ * Note that the result might not be a valid marker code,
+ * but it will never be 0 or FF.
+ */
+
+LOCAL(boolean)
+next_marker (j_decompress_ptr cinfo)
+{
+ int c;
+ INPUT_VARS(cinfo);
+
+ while(1) {
+ INPUT_BYTE(cinfo, c, return FALSE);
+ /* Skip any non-FF bytes.
+ * This may look a bit inefficient, but it will not occur in a valid file.
+ * We sync after each discarded byte so that a suspending data source
+ * can discard the byte from its buffer.
+ */
+ while (c != 0xFF) {
+ cinfo->marker->discarded_bytes++;
+ INPUT_SYNC(cinfo);
+ INPUT_BYTE(cinfo, c, return FALSE);
+ }
+ /* This loop swallows any duplicate FF bytes. Extra FFs are legal as
+ * pad bytes, so don't count them in discarded_bytes. We assume there
+ * will not be so many consecutive FF bytes as to overflow a suspending
+ * data source's input buffer.
+ */
+ do {
+ INPUT_BYTE(cinfo, c, return FALSE);
+ } while (c == 0xFF);
+ if (c != 0)
+ break; /* found a valid marker, exit loop */
+ /* Reach here if we found a stuffed-zero data sequence (FF/00).
+ * Discard it and loop back to try again.
+ */
+ cinfo->marker->discarded_bytes += 2;
+ INPUT_SYNC(cinfo);
+ }
+
+ if (cinfo->marker->discarded_bytes != 0) {
+ WARNMS2(cinfo, JWRN_EXTRANEOUS_DATA, cinfo->marker->discarded_bytes, c);
+ cinfo->marker->discarded_bytes = 0;
+ }
+
+ cinfo->unread_marker = c;
+
+ INPUT_SYNC(cinfo);
+ return TRUE;
+}
+
+
+LOCAL(boolean)
+first_marker (j_decompress_ptr cinfo)
+/* Like next_marker, but used to obtain the initial SOI marker. */
+/* For this marker, we do not allow preceding garbage or fill; otherwise,
+ * we might well scan an entire input file before realizing it ain't JPEG.
+ * If an application wants to process non-JFIF files, it must seek to the
+ * SOI before calling the JPEG library.
+ */
+{
+ int c, c2;
+ INPUT_VARS(cinfo);
+
+ INPUT_BYTE(cinfo, c, return FALSE);
+ INPUT_BYTE(cinfo, c2, return FALSE);
+ if (c != 0xFF || c2 != (int) M_SOI)
+ ERREXIT2(cinfo, JERR_NO_SOI, c, c2);
+
+ cinfo->unread_marker = c2;
+
+ INPUT_SYNC(cinfo);
+ return TRUE;
+}
+
+
+/*
+ * Read markers until SOS or EOI.
+ *
+ * Returns same codes as are defined for jpeg_consume_input:
+ * JPEG_SUSPENDED, JPEG_REACHED_SOS, or JPEG_REACHED_EOI.
+ */
+
+METHODDEF(int)
+read_markers (j_decompress_ptr cinfo)
+{
+ /* Outer loop repeats once for each marker. */
+ while(1) {
+ /* Collect the marker proper, unless we already did. */
+ /* NB: first_marker() enforces the requirement that SOI appear first. */
+ if (cinfo->unread_marker == 0) {
+ if (! cinfo->marker->saw_SOI) {
+ if (! first_marker(cinfo))
+ return JPEG_SUSPENDED;
+ } else {
+ if (! next_marker(cinfo))
+ return JPEG_SUSPENDED;
+ }
+ }
+ /* At this point cinfo->unread_marker contains the marker code and the
+ * input point is just past the marker proper, but before any parameters.
+ * A suspension will cause us to return with this state still true.
+ */
+ switch (cinfo->unread_marker) {
+ case M_SOI:
+ if (! get_soi(cinfo))
+ return JPEG_SUSPENDED;
+ break;
+
+ case M_SOF0: /* Baseline */
+ case M_SOF1: /* Extended sequential, Huffman */
+ if (! get_sof(cinfo, FALSE, FALSE))
+ return JPEG_SUSPENDED;
+ break;
+
+ case M_SOF2: /* Progressive, Huffman */
+ if (! get_sof(cinfo, TRUE, FALSE))
+ return JPEG_SUSPENDED;
+ break;
+
+ case M_SOF9: /* Extended sequential, arithmetic */
+ if (! get_sof(cinfo, FALSE, TRUE))
+ return JPEG_SUSPENDED;
+ break;
+
+ case M_SOF10: /* Progressive, arithmetic */
+ if (! get_sof(cinfo, TRUE, TRUE))
+ return JPEG_SUSPENDED;
+ break;
+
+ /* Currently unsupported SOFn types */
+ case M_SOF3: /* Lossless, Huffman */
+ case M_SOF5: /* Differential sequential, Huffman */
+ case M_SOF6: /* Differential progressive, Huffman */
+ case M_SOF7: /* Differential lossless, Huffman */
+ case M_JPG: /* Reserved for JPEG extensions */
+ case M_SOF11: /* Lossless, arithmetic */
+ case M_SOF13: /* Differential sequential, arithmetic */
+ case M_SOF14: /* Differential progressive, arithmetic */
+ case M_SOF15: /* Differential lossless, arithmetic */
+ ERREXIT1(cinfo, JERR_SOF_UNSUPPORTED, cinfo->unread_marker);
+ break;
+
+ case M_SOS:
+ if (! get_sos(cinfo))
+ return JPEG_SUSPENDED;
+ cinfo->unread_marker = 0; /* processed the marker */
+ return JPEG_REACHED_SOS;
+
+ case M_EOI:
+ TRACEMS(cinfo, 1, JTRC_EOI);
+ cinfo->unread_marker = 0; /* processed the marker */
+ return JPEG_REACHED_EOI;
+
+ case M_DAC:
+ if (! get_dac(cinfo))
+ return JPEG_SUSPENDED;
+ break;
+
+ case M_DHT:
+ if (! get_dht(cinfo))
+ return JPEG_SUSPENDED;
+ break;
+
+ case M_DQT:
+ if (! get_dqt(cinfo))
+ return JPEG_SUSPENDED;
+ break;
+
+ case M_DRI:
+ if (! get_dri(cinfo))
+ return JPEG_SUSPENDED;
+ break;
+
+ case M_APP0:
+ case M_APP1:
+ case M_APP2:
+ case M_APP3:
+ case M_APP4:
+ case M_APP5:
+ case M_APP6:
+ case M_APP7:
+ case M_APP8:
+ case M_APP9:
+ case M_APP10:
+ case M_APP11:
+ case M_APP12:
+ case M_APP13:
+ case M_APP14:
+ case M_APP15:
+ if (! (*((my_marker_ptr) cinfo->marker)->process_APPn[
+ cinfo->unread_marker - (int) M_APP0]) (cinfo))
+ return JPEG_SUSPENDED;
+ break;
+
+ case M_COM:
+ if (! (*((my_marker_ptr) cinfo->marker)->process_COM) (cinfo))
+ return JPEG_SUSPENDED;
+ break;
+
+ case M_RST0: /* these are all parameterless */
+ case M_RST1:
+ case M_RST2:
+ case M_RST3:
+ case M_RST4:
+ case M_RST5:
+ case M_RST6:
+ case M_RST7:
+ case M_TEM:
+ TRACEMS1(cinfo, 1, JTRC_PARMLESS_MARKER, cinfo->unread_marker);
+ break;
+
+ case M_DNL: /* Ignore DNL ... perhaps the wrong thing */
+ if (! skip_variable(cinfo))
+ return JPEG_SUSPENDED;
+ break;
+
+ default: /* must be DHP, EXP, JPGn, or RESn */
+ /* For now, we treat the reserved markers as fatal errors since they are
+ * likely to be used to signal incompatible JPEG Part 3 extensions.
+ * Once the JPEG 3 version-number marker is well defined, this code
+ * ought to change!
+ */
+ ERREXIT1(cinfo, JERR_UNKNOWN_MARKER, cinfo->unread_marker);
+ break;
+ }
+ /* Successfully processed marker, so reset state variable */
+ cinfo->unread_marker = 0;
+ } /* end loop */
+}
+
+
+/*
+ * Read a restart marker, which is expected to appear next in the datastream;
+ * if the marker is not there, take appropriate recovery action.
+ * Returns FALSE if suspension is required.
+ *
+ * This is called by the entropy decoder after it has read an appropriate
+ * number of MCUs. cinfo->unread_marker may be nonzero if the entropy decoder
+ * has already read a marker from the data source. Under normal conditions
+ * cinfo->unread_marker will be reset to 0 before returning; if not reset,
+ * it holds a marker which the decoder will be unable to read past.
+ */
+
+METHODDEF(boolean)
+read_restart_marker (j_decompress_ptr cinfo)
+{
+ /* Obtain a marker unless we already did. */
+ /* Note that next_marker will complain if it skips any data. */
+ if (cinfo->unread_marker == 0) {
+ if (! next_marker(cinfo))
+ return FALSE;
+ }
+
+ if (cinfo->unread_marker ==
+ ((int) M_RST0 + cinfo->marker->next_restart_num)) {
+ /* Normal case --- swallow the marker and let entropy decoder continue */
+ TRACEMS1(cinfo, 3, JTRC_RST, cinfo->marker->next_restart_num);
+ cinfo->unread_marker = 0;
+ } else {
+ /* Uh-oh, the restart markers have been messed up. */
+ /* Let the data source manager determine how to resync. */
+ if (! (*cinfo->src->resync_to_restart) (cinfo,
+ cinfo->marker->next_restart_num))
+ return FALSE;
+ }
+
+ /* Update next-restart state */
+ cinfo->marker->next_restart_num = (cinfo->marker->next_restart_num + 1) & 7;
+
+ return TRUE;
+}
+
+
+/*
+ * This is the default resync_to_restart method for data source managers
+ * to use if they don't have any better approach. Some data source managers
+ * may be able to back up, or may have additional knowledge about the data
+ * which permits a more intelligent recovery strategy; such managers would
+ * presumably supply their own resync method.
+ *
+ * read_restart_marker calls resync_to_restart if it finds a marker other than
+ * the restart marker it was expecting. (This code is *not* used unless
+ * a nonzero restart interval has been declared.) cinfo->unread_marker is
+ * the marker code actually found (might be anything, except 0 or FF).
+ * The desired restart marker number (0..7) is passed as a parameter.
+ * This routine is supposed to apply whatever error recovery strategy seems
+ * appropriate in order to position the input stream to the next data segment.
+ * Note that cinfo->unread_marker is treated as a marker appearing before
+ * the current data-source input point; usually it should be reset to zero
+ * before returning.
+ * Returns FALSE if suspension is required.
+ *
+ * This implementation is substantially constrained by wanting to treat the
+ * input as a data stream; this means we can't back up. Therefore, we have
+ * only the following actions to work with:
+ * 1. Simply discard the marker and let the entropy decoder resume at next
+ * byte of file.
+ * 2. Read forward until we find another marker, discarding intervening
+ * data. (In theory we could look ahead within the current bufferload,
+ * without having to discard data if we don't find the desired marker.
+ * This idea is not implemented here, in part because it makes behavior
+ * dependent on buffer size and chance buffer-boundary positions.)
+ * 3. Leave the marker unread (by failing to zero cinfo->unread_marker).
+ * This will cause the entropy decoder to process an empty data segment,
+ * inserting dummy zeroes, and then we will reprocess the marker.
+ *
+ * #2 is appropriate if we think the desired marker lies ahead, while #3 is
+ * appropriate if the found marker is a future restart marker (indicating
+ * that we have missed the desired restart marker, probably because it got
+ * corrupted).
+ * We apply #2 or #3 if the found marker is a restart marker no more than
+ * two counts behind or ahead of the expected one. We also apply #2 if the
+ * found marker is not a legal JPEG marker code (it's certainly bogus data).
+ * If the found marker is a restart marker more than 2 counts away, we do #1
+ * (too much risk that the marker is erroneous; with luck we will be able to
+ * resync at some future point).
+ * For any valid non-restart JPEG marker, we apply #3. This keeps us from
+ * overrunning the end of a scan. An implementation limited to single-scan
+ * files might find it better to apply #2 for markers other than EOI, since
+ * any other marker would have to be bogus data in that case.
+ */
+
+GLOBAL(boolean)
+jpeg_resync_to_restart (j_decompress_ptr cinfo, int desired)
+{
+ int marker = cinfo->unread_marker;
+ int action;
+
+ /* Always put up a warning. */
+ WARNMS2(cinfo, JWRN_MUST_RESYNC, marker, desired);
+
+ /* Outer loop handles repeated decision after scanning forward. */
+ while(1) {
+ if (marker < (int) M_SOF0)
+ action = 2; /* invalid marker */
+ else if (marker < (int) M_RST0 || marker > (int) M_RST7)
+ action = 3; /* valid non-restart marker */
+ else {
+ if (marker == ((int) M_RST0 + ((desired+1) & 7)) ||
+ marker == ((int) M_RST0 + ((desired+2) & 7)))
+ action = 3; /* one of the next two expected restarts */
+ else if (marker == ((int) M_RST0 + ((desired-1) & 7)) ||
+ marker == ((int) M_RST0 + ((desired-2) & 7)))
+ action = 2; /* a prior restart, so advance */
+ else
+ action = 1; /* desired restart or too far away */
+ }
+ TRACEMS2(cinfo, 4, JTRC_RECOVERY_ACTION, marker, action);
+ switch (action) {
+ case 1:
+ /* Discard marker and let entropy decoder resume processing. */
+ cinfo->unread_marker = 0;
+ return TRUE;
+ case 2:
+ /* Scan to the next marker, and repeat the decision loop. */
+ if (! next_marker(cinfo))
+ return FALSE;
+ marker = cinfo->unread_marker;
+ break;
+ case 3:
+ /* Return without advancing past this marker. */
+ /* Entropy decoder will be forced to process an empty segment. */
+ return TRUE;
+ }
+ } /* end loop */
+}
+
+
+/*
+ * Reset marker processing state to begin a fresh datastream.
+ */
+
+METHODDEF(void)
+reset_marker_reader (j_decompress_ptr cinfo)
+{
+ my_marker_ptr marker = (my_marker_ptr) cinfo->marker;
+
+ cinfo->comp_info = NULL; /* until allocated by get_sof */
+ cinfo->input_scan_number = 0; /* no SOS seen yet */
+ cinfo->unread_marker = 0; /* no pending marker */
+ marker->pub.saw_SOI = FALSE; /* set internal state too */
+ marker->pub.saw_SOF = FALSE;
+ marker->pub.discarded_bytes = 0;
+ marker->cur_marker = NULL;
+}
+
+
+/*
+ * Initialize the marker reader module.
+ * This is called only once, when the decompression object is created.
+ */
+
+GLOBAL(void)
+jinit_marker_reader (j_decompress_ptr cinfo)
+{
+ my_marker_ptr marker;
+ int i;
+
+ /* Create subobject in permanent pool */
+ marker = (my_marker_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT,
+ SIZEOF(my_marker_reader));
+ cinfo->marker = (struct jpeg_marker_reader *) marker;
+ /* Initialize public method pointers */
+ marker->pub.reset_marker_reader = reset_marker_reader;
+ marker->pub.read_markers = read_markers;
+ marker->pub.read_restart_marker = read_restart_marker;
+ /* Initialize COM/APPn processing.
+ * By default, we examine and then discard APP0 and APP14,
+ * but simply discard COM and all other APPn.
+ */
+ marker->process_COM = skip_variable;
+ marker->length_limit_COM = 0;
+ for (i = 0; i < 16; i++) {
+ marker->process_APPn[i] = skip_variable;
+ marker->length_limit_APPn[i] = 0;
+ }
+ marker->process_APPn[0] = get_interesting_appn;
+ marker->process_APPn[14] = get_interesting_appn;
+ /* Reset marker processing state */
+ reset_marker_reader(cinfo);
+}
+
+
+/*
+ * Control saving of COM and APPn markers into marker_list.
+ */
+
+#ifdef SAVE_MARKERS_SUPPORTED
+
+GLOBAL(void)
+jpeg_save_markers (j_decompress_ptr cinfo, int marker_code,
+ unsigned int length_limit)
+{
+ my_marker_ptr marker = (my_marker_ptr) cinfo->marker;
+ long maxlength;
+ jpeg_marker_parser_method processor;
+
+ /* Length limit mustn't be larger than what we can allocate
+ * (should only be a concern in a 16-bit environment).
+ */
+ maxlength = cinfo->mem->max_alloc_chunk - SIZEOF(struct jpeg_marker_struct);
+ if (((long) length_limit) > maxlength)
+ length_limit = (unsigned int) maxlength;
+
+ /* Choose processor routine to use.
+ * APP0/APP14 have special requirements.
+ */
+ if (length_limit) {
+ processor = save_marker;
+ /* If saving APP0/APP14, save at least enough for our internal use. */
+ if (marker_code == (int) M_APP0 && length_limit < APP0_DATA_LEN)
+ length_limit = APP0_DATA_LEN;
+ else if (marker_code == (int) M_APP14 && length_limit < APP14_DATA_LEN)
+ length_limit = APP14_DATA_LEN;
+ } else {
+ processor = skip_variable;
+ /* If discarding APP0/APP14, use our regular on-the-fly processor. */
+ if (marker_code == (int) M_APP0 || marker_code == (int) M_APP14)
+ processor = get_interesting_appn;
+ }
+
+ if (marker_code == (int) M_COM) {
+ marker->process_COM = processor;
+ marker->length_limit_COM = length_limit;
+ } else if (marker_code >= (int) M_APP0 && marker_code <= (int) M_APP15) {
+ marker->process_APPn[marker_code - (int) M_APP0] = processor;
+ marker->length_limit_APPn[marker_code - (int) M_APP0] = length_limit;
+ } else
+ ERREXIT1(cinfo, JERR_UNKNOWN_MARKER, marker_code);
+}
+
+#endif /* SAVE_MARKERS_SUPPORTED */
+
+
+/*
+ * Install a special processing method for COM or APPn markers.
+ */
+
+GLOBAL(void)
+jpeg_set_marker_processor (j_decompress_ptr cinfo, int marker_code,
+ jpeg_marker_parser_method routine)
+{
+ my_marker_ptr marker = (my_marker_ptr) cinfo->marker;
+
+ if (marker_code == (int) M_COM)
+ marker->process_COM = routine;
+ else if (marker_code >= (int) M_APP0 && marker_code <= (int) M_APP15)
+ marker->process_APPn[marker_code - (int) M_APP0] = routine;
+ else
+ ERREXIT1(cinfo, JERR_UNKNOWN_MARKER, marker_code);
+}
diff --git a/User/lib/lcd/gui/JPEG/jdmaster.c b/User/lib/lcd/gui/JPEG/jdmaster.c
new file mode 100644
index 0000000..2802c5b
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdmaster.c
@@ -0,0 +1,557 @@
+/*
+ * jdmaster.c
+ *
+ * Copyright (C) 1991-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains master control logic for the JPEG decompressor.
+ * These routines are concerned with selecting the modules to be executed
+ * and with determining the number of passes and the work to be done in each
+ * pass.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/* Private state */
+
+typedef struct {
+ struct jpeg_decomp_master pub; /* public fields */
+
+ int pass_number; /* # of passes completed */
+
+ boolean using_merged_upsample; /* TRUE if using merged upsample/cconvert */
+
+ /* Saved references to initialized quantizer modules,
+ * in case we need to switch modes.
+ */
+ struct jpeg_color_quantizer * quantizer_1pass;
+ struct jpeg_color_quantizer * quantizer_2pass;
+} my_decomp_master;
+
+typedef my_decomp_master * my_master_ptr;
+
+
+/*
+ * Determine whether merged upsample/color conversion should be used.
+ * CRUCIAL: this must match the actual capabilities of jdmerge.c!
+ */
+
+LOCAL(boolean)
+use_merged_upsample (j_decompress_ptr cinfo)
+{
+#ifdef UPSAMPLE_MERGING_SUPPORTED
+ /* Merging is the equivalent of plain box-filter upsampling */
+ if (cinfo->do_fancy_upsampling || cinfo->CCIR601_sampling)
+ return FALSE;
+ /* jdmerge.c only supports YCC=>RGB color conversion */
+ if (cinfo->jpeg_color_space != JCS_YCbCr || cinfo->num_components != 3 ||
+ cinfo->out_color_space != JCS_RGB ||
+ cinfo->out_color_components != RGB_PIXELSIZE)
+ return FALSE;
+ /* and it only handles 2h1v or 2h2v sampling ratios */
+ if (cinfo->comp_info[0].h_samp_factor != 2 ||
+ cinfo->comp_info[1].h_samp_factor != 1 ||
+ cinfo->comp_info[2].h_samp_factor != 1 ||
+ cinfo->comp_info[0].v_samp_factor > 2 ||
+ cinfo->comp_info[1].v_samp_factor != 1 ||
+ cinfo->comp_info[2].v_samp_factor != 1)
+ return FALSE;
+ /* furthermore, it doesn't work if we've scaled the IDCTs differently */
+ if (cinfo->comp_info[0].DCT_scaled_size != cinfo->min_DCT_scaled_size ||
+ cinfo->comp_info[1].DCT_scaled_size != cinfo->min_DCT_scaled_size ||
+ cinfo->comp_info[2].DCT_scaled_size != cinfo->min_DCT_scaled_size)
+ return FALSE;
+ /* ??? also need to test for upsample-time rescaling, when & if supported */
+ return TRUE; /* by golly, it'll work... */
+#else
+ return FALSE;
+#endif
+}
+
+
+/*
+ * Compute output image dimensions and related values.
+ * NOTE: this is exported for possible use by application.
+ * Hence it mustn't do anything that can't be done twice.
+ * Also note that it may be called before the master module is initialized!
+ */
+
+GLOBAL(void)
+jpeg_calc_output_dimensions (j_decompress_ptr cinfo)
+/* Do computations that are needed before master selection phase */
+{
+#ifdef IDCT_SCALING_SUPPORTED
+ int ci;
+ jpeg_component_info *compptr;
+#endif
+
+ /* Prevent application from calling me at wrong times */
+ if (cinfo->global_state != DSTATE_READY)
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+
+#ifdef IDCT_SCALING_SUPPORTED
+
+ /* Compute actual output image dimensions and DCT scaling choices. */
+ if (cinfo->scale_num * 8 <= cinfo->scale_denom) {
+ /* Provide 1/8 scaling */
+ cinfo->output_width = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_width, 8L);
+ cinfo->output_height = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_height, 8L);
+ cinfo->min_DCT_scaled_size = 1;
+ } else if (cinfo->scale_num * 4 <= cinfo->scale_denom) {
+ /* Provide 1/4 scaling */
+ cinfo->output_width = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_width, 4L);
+ cinfo->output_height = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_height, 4L);
+ cinfo->min_DCT_scaled_size = 2;
+ } else if (cinfo->scale_num * 2 <= cinfo->scale_denom) {
+ /* Provide 1/2 scaling */
+ cinfo->output_width = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_width, 2L);
+ cinfo->output_height = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_height, 2L);
+ cinfo->min_DCT_scaled_size = 4;
+ } else {
+ /* Provide 1/1 scaling */
+ cinfo->output_width = cinfo->image_width;
+ cinfo->output_height = cinfo->image_height;
+ cinfo->min_DCT_scaled_size = DCTSIZE;
+ }
+ /* In selecting the actual DCT scaling for each component, we try to
+ * scale up the chroma components via IDCT scaling rather than upsampling.
+ * This saves time if the upsampler gets to use 1:1 scaling.
+ * Note this code assumes that the supported DCT scalings are powers of 2.
+ */
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ int ssize = cinfo->min_DCT_scaled_size;
+ while (ssize < DCTSIZE &&
+ (compptr->h_samp_factor * ssize * 2 <=
+ cinfo->max_h_samp_factor * cinfo->min_DCT_scaled_size) &&
+ (compptr->v_samp_factor * ssize * 2 <=
+ cinfo->max_v_samp_factor * cinfo->min_DCT_scaled_size)) {
+ ssize = ssize * 2;
+ }
+ compptr->DCT_scaled_size = ssize;
+ }
+
+ /* Recompute downsampled dimensions of components;
+ * application needs to know these if using raw downsampled data.
+ */
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ /* Size in samples, after IDCT scaling */
+ compptr->downsampled_width = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_width *
+ (long) (compptr->h_samp_factor * compptr->DCT_scaled_size),
+ (long) (cinfo->max_h_samp_factor * DCTSIZE));
+ compptr->downsampled_height = (JDIMENSION)
+ jdiv_round_up((long) cinfo->image_height *
+ (long) (compptr->v_samp_factor * compptr->DCT_scaled_size),
+ (long) (cinfo->max_v_samp_factor * DCTSIZE));
+ }
+
+#else /* !IDCT_SCALING_SUPPORTED */
+
+ /* Hardwire it to "no scaling" */
+ cinfo->output_width = cinfo->image_width;
+ cinfo->output_height = cinfo->image_height;
+ /* jdinput.c has already initialized DCT_scaled_size to DCTSIZE,
+ * and has computed unscaled downsampled_width and downsampled_height.
+ */
+
+#endif /* IDCT_SCALING_SUPPORTED */
+
+ /* Report number of components in selected colorspace. */
+ /* Probably this should be in the color conversion module... */
+ switch (cinfo->out_color_space) {
+ case JCS_GRAYSCALE:
+ cinfo->out_color_components = 1;
+ break;
+ case JCS_RGB:
+#if RGB_PIXELSIZE != 3
+ cinfo->out_color_components = RGB_PIXELSIZE;
+ break;
+#endif /* else share code with YCbCr */
+ case JCS_YCbCr:
+ cinfo->out_color_components = 3;
+ break;
+ case JCS_CMYK:
+ case JCS_YCCK:
+ cinfo->out_color_components = 4;
+ break;
+ default: /* else must be same colorspace as in file */
+ cinfo->out_color_components = cinfo->num_components;
+ break;
+ }
+ cinfo->output_components = (cinfo->quantize_colors ? 1 :
+ cinfo->out_color_components);
+
+ /* See if upsampler will want to emit more than one row at a time */
+ if (use_merged_upsample(cinfo))
+ cinfo->rec_outbuf_height = cinfo->max_v_samp_factor;
+ else
+ cinfo->rec_outbuf_height = 1;
+}
+
+
+/*
+ * Several decompression processes need to range-limit values to the range
+ * 0..MAXJSAMPLE; the input value may fall somewhat outside this range
+ * due to noise introduced by quantization, roundoff error, etc. These
+ * processes are inner loops and need to be as fast as possible. On most
+ * machines, particularly CPUs with pipelines or instruction prefetch,
+ * a (subscript-check-less) C table lookup
+ * x = sample_range_limit[x];
+ * is faster than explicit tests
+ * if (x < 0) x = 0;
+ * else if (x > MAXJSAMPLE) x = MAXJSAMPLE;
+ * These processes all use a common table prepared by the routine below.
+ *
+ * For most steps we can mathematically guarantee that the initial value
+ * of x is within MAXJSAMPLE+1 of the legal range, so a table running from
+ * -(MAXJSAMPLE+1) to 2*MAXJSAMPLE+1 is sufficient. But for the initial
+ * limiting step (just after the IDCT), a wildly out-of-range value is
+ * possible if the input data is corrupt. To avoid any chance of indexing
+ * off the end of memory and getting a bad-pointer trap, we perform the
+ * post-IDCT limiting thus:
+ * x = range_limit[x & MASK];
+ * where MASK is 2 bits wider than legal sample data, ie 10 bits for 8-bit
+ * samples. Under normal circumstances this is more than enough range and
+ * a correct output will be generated; with bogus input data the mask will
+ * cause wraparound, and we will safely generate a bogus-but-in-range output.
+ * For the post-IDCT step, we want to convert the data from signed to unsigned
+ * representation by adding CENTERJSAMPLE at the same time that we limit it.
+ * So the post-IDCT limiting table ends up looking like this:
+ * CENTERJSAMPLE,CENTERJSAMPLE+1,...,MAXJSAMPLE,
+ * MAXJSAMPLE (repeat 2*(MAXJSAMPLE+1)-CENTERJSAMPLE times),
+ * 0 (repeat 2*(MAXJSAMPLE+1)-CENTERJSAMPLE times),
+ * 0,1,...,CENTERJSAMPLE-1
+ * Negative inputs select values from the upper half of the table after
+ * masking.
+ *
+ * We can save some space by overlapping the start of the post-IDCT table
+ * with the simpler range limiting table. The post-IDCT table begins at
+ * sample_range_limit + CENTERJSAMPLE.
+ *
+ * Note that the table is allocated in near data space on PCs; it's small
+ * enough and used often enough to justify this.
+ */
+
+LOCAL(void)
+prepare_range_limit_table (j_decompress_ptr cinfo)
+/* Allocate and fill in the sample_range_limit table */
+{
+ JSAMPLE * table;
+ int i;
+
+ table = (JSAMPLE *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (5 * (MAXJSAMPLE+1) + CENTERJSAMPLE) * SIZEOF(JSAMPLE));
+ table += (MAXJSAMPLE+1); /* allow negative subscripts of simple table */
+ cinfo->sample_range_limit = table;
+ /* First segment of "simple" table: limit[x] = 0 for x < 0 */
+ MEMZERO(table - (MAXJSAMPLE+1), (MAXJSAMPLE+1) * SIZEOF(JSAMPLE));
+ /* Main part of "simple" table: limit[x] = x */
+ for (i = 0; i <= MAXJSAMPLE; i++)
+ table[i] = (JSAMPLE) i;
+ table += CENTERJSAMPLE; /* Point to where post-IDCT table starts */
+ /* End of simple table, rest of first half of post-IDCT table */
+ for (i = CENTERJSAMPLE; i < 2*(MAXJSAMPLE+1); i++)
+ table[i] = MAXJSAMPLE;
+ /* Second half of post-IDCT table */
+ MEMZERO(table + (2 * (MAXJSAMPLE+1)),
+ (2 * (MAXJSAMPLE+1) - CENTERJSAMPLE) * SIZEOF(JSAMPLE));
+ MEMCOPY(table + (4 * (MAXJSAMPLE+1) - CENTERJSAMPLE),
+ cinfo->sample_range_limit, CENTERJSAMPLE * SIZEOF(JSAMPLE));
+}
+
+
+/*
+ * Master selection of decompression modules.
+ * This is done once at jpeg_start_decompress time. We determine
+ * which modules will be used and give them appropriate initialization calls.
+ * We also initialize the decompressor input side to begin consuming data.
+ *
+ * Since jpeg_read_header has finished, we know what is in the SOF
+ * and (first) SOS markers. We also have all the application parameter
+ * settings.
+ */
+
+LOCAL(void)
+master_selection (j_decompress_ptr cinfo)
+{
+ my_master_ptr master = (my_master_ptr) cinfo->master;
+ boolean use_c_buffer;
+ long samplesperrow;
+ JDIMENSION jd_samplesperrow;
+
+ /* Initialize dimensions and other stuff */
+ jpeg_calc_output_dimensions(cinfo);
+ prepare_range_limit_table(cinfo);
+
+ /* Width of an output scanline must be representable as JDIMENSION. */
+ samplesperrow = (long) cinfo->output_width * (long) cinfo->out_color_components;
+ jd_samplesperrow = (JDIMENSION) samplesperrow;
+ if ((long) jd_samplesperrow != samplesperrow)
+ ERREXIT(cinfo, JERR_WIDTH_OVERFLOW);
+
+ /* Initialize my private state */
+ master->pass_number = 0;
+ master->using_merged_upsample = use_merged_upsample(cinfo);
+
+ /* Color quantizer selection */
+ master->quantizer_1pass = NULL;
+ master->quantizer_2pass = NULL;
+ /* No mode changes if not using buffered-image mode. */
+ if (! cinfo->quantize_colors || ! cinfo->buffered_image) {
+ cinfo->enable_1pass_quant = FALSE;
+ cinfo->enable_external_quant = FALSE;
+ cinfo->enable_2pass_quant = FALSE;
+ }
+ if (cinfo->quantize_colors) {
+ if (cinfo->raw_data_out)
+ ERREXIT(cinfo, JERR_NOTIMPL);
+ /* 2-pass quantizer only works in 3-component color space. */
+ if (cinfo->out_color_components != 3) {
+ cinfo->enable_1pass_quant = TRUE;
+ cinfo->enable_external_quant = FALSE;
+ cinfo->enable_2pass_quant = FALSE;
+ cinfo->colormap = NULL;
+ } else if (cinfo->colormap != NULL) {
+ cinfo->enable_external_quant = TRUE;
+ } else if (cinfo->two_pass_quantize) {
+ cinfo->enable_2pass_quant = TRUE;
+ } else {
+ cinfo->enable_1pass_quant = TRUE;
+ }
+
+ if (cinfo->enable_1pass_quant) {
+#ifdef QUANT_1PASS_SUPPORTED
+ jinit_1pass_quantizer(cinfo);
+ master->quantizer_1pass = cinfo->cquantize;
+#else
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+#endif
+ }
+
+ /* We use the 2-pass code to map to external colormaps. */
+ if (cinfo->enable_2pass_quant || cinfo->enable_external_quant) {
+#ifdef QUANT_2PASS_SUPPORTED
+ jinit_2pass_quantizer(cinfo);
+ master->quantizer_2pass = cinfo->cquantize;
+#else
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+#endif
+ }
+ /* If both quantizers are initialized, the 2-pass one is left active;
+ * this is necessary for starting with quantization to an external map.
+ */
+ }
+
+ /* Post-processing: in particular, color conversion first */
+ if (! cinfo->raw_data_out) {
+ if (master->using_merged_upsample) {
+#ifdef UPSAMPLE_MERGING_SUPPORTED
+ jinit_merged_upsampler(cinfo); /* does color conversion too */
+#else
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+#endif
+ } else {
+ jinit_color_deconverter(cinfo);
+ jinit_upsampler(cinfo);
+ }
+ jinit_d_post_controller(cinfo, cinfo->enable_2pass_quant);
+ }
+ /* Inverse DCT */
+ jinit_inverse_dct(cinfo);
+ /* Entropy decoding: either Huffman or arithmetic coding. */
+ if (cinfo->arith_code) {
+ ERREXIT(cinfo, JERR_ARITH_NOTIMPL);
+ } else {
+ if (cinfo->progressive_mode) {
+#ifdef D_PROGRESSIVE_SUPPORTED
+ jinit_phuff_decoder(cinfo);
+#else
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+#endif
+ } else
+ jinit_huff_decoder(cinfo);
+ }
+
+ /* Initialize principal buffer controllers. */
+ use_c_buffer = cinfo->inputctl->has_multiple_scans || cinfo->buffered_image;
+ jinit_d_coef_controller(cinfo, use_c_buffer);
+
+ if (! cinfo->raw_data_out)
+ jinit_d_main_controller(cinfo, FALSE /* never need full buffer here */);
+
+ /* We can now tell the memory manager to allocate virtual arrays. */
+ (*cinfo->mem->realize_virt_arrays) ((j_common_ptr) cinfo);
+
+ /* Initialize input side of decompressor to consume first scan. */
+ (*cinfo->inputctl->start_input_pass) (cinfo);
+
+#ifdef D_MULTISCAN_FILES_SUPPORTED
+ /* If jpeg_start_decompress will read the whole file, initialize
+ * progress monitoring appropriately. The input step is counted
+ * as one pass.
+ */
+ if (cinfo->progress != NULL && ! cinfo->buffered_image &&
+ cinfo->inputctl->has_multiple_scans) {
+ int nscans;
+ /* Estimate number of scans to set pass_limit. */
+ if (cinfo->progressive_mode) {
+ /* Arbitrarily estimate 2 interleaved DC scans + 3 AC scans/component. */
+ nscans = 2 + 3 * cinfo->num_components;
+ } else {
+ /* For a nonprogressive multiscan file, estimate 1 scan per component. */
+ nscans = cinfo->num_components;
+ }
+ cinfo->progress->pass_counter = 0L;
+ cinfo->progress->pass_limit = (long) cinfo->total_iMCU_rows * nscans;
+ cinfo->progress->completed_passes = 0;
+ cinfo->progress->total_passes = (cinfo->enable_2pass_quant ? 3 : 2);
+ /* Count the input pass as done */
+ master->pass_number++;
+ }
+#endif /* D_MULTISCAN_FILES_SUPPORTED */
+}
+
+
+/*
+ * Per-pass setup.
+ * This is called at the beginning of each output pass. We determine which
+ * modules will be active during this pass and give them appropriate
+ * start_pass calls. We also set is_dummy_pass to indicate whether this
+ * is a "real" output pass or a dummy pass for color quantization.
+ * (In the latter case, jdapistd.c will crank the pass to completion.)
+ */
+
+METHODDEF(void)
+prepare_for_output_pass (j_decompress_ptr cinfo)
+{
+ my_master_ptr master = (my_master_ptr) cinfo->master;
+
+ if (master->pub.is_dummy_pass) {
+#ifdef QUANT_2PASS_SUPPORTED
+ /* Final pass of 2-pass quantization */
+ master->pub.is_dummy_pass = FALSE;
+ (*cinfo->cquantize->start_pass) (cinfo, FALSE);
+ (*cinfo->post->start_pass) (cinfo, JBUF_CRANK_DEST);
+ (*cinfo->main->start_pass) (cinfo, JBUF_CRANK_DEST);
+#else
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+#endif /* QUANT_2PASS_SUPPORTED */
+ } else {
+ if (cinfo->quantize_colors && cinfo->colormap == NULL) {
+ /* Select new quantization method */
+ if (cinfo->two_pass_quantize && cinfo->enable_2pass_quant) {
+ cinfo->cquantize = master->quantizer_2pass;
+ master->pub.is_dummy_pass = TRUE;
+ } else if (cinfo->enable_1pass_quant) {
+ cinfo->cquantize = master->quantizer_1pass;
+ } else {
+ ERREXIT(cinfo, JERR_MODE_CHANGE);
+ }
+ }
+ (*cinfo->idct->start_pass) (cinfo);
+ (*cinfo->coef->start_output_pass) (cinfo);
+ if (! cinfo->raw_data_out) {
+ if (! master->using_merged_upsample)
+ (*cinfo->cconvert->start_pass) (cinfo);
+ (*cinfo->upsample->start_pass) (cinfo);
+ if (cinfo->quantize_colors)
+ (*cinfo->cquantize->start_pass) (cinfo, master->pub.is_dummy_pass);
+ (*cinfo->post->start_pass) (cinfo,
+ (master->pub.is_dummy_pass ? JBUF_SAVE_AND_PASS : JBUF_PASS_THRU));
+ (*cinfo->main->start_pass) (cinfo, JBUF_PASS_THRU);
+ }
+ }
+
+ /* Set up progress monitor's pass info if present */
+ if (cinfo->progress != NULL) {
+ cinfo->progress->completed_passes = master->pass_number;
+ cinfo->progress->total_passes = master->pass_number +
+ (master->pub.is_dummy_pass ? 2 : 1);
+ /* In buffered-image mode, we assume one more output pass if EOI not
+ * yet reached, but no more passes if EOI has been reached.
+ */
+ if (cinfo->buffered_image && ! cinfo->inputctl->eoi_reached) {
+ cinfo->progress->total_passes += (cinfo->enable_2pass_quant ? 2 : 1);
+ }
+ }
+}
+
+
+/*
+ * Finish up at end of an output pass.
+ */
+
+METHODDEF(void)
+finish_output_pass (j_decompress_ptr cinfo)
+{
+ my_master_ptr master = (my_master_ptr) cinfo->master;
+
+ if (cinfo->quantize_colors)
+ (*cinfo->cquantize->finish_pass) (cinfo);
+ master->pass_number++;
+}
+
+
+#ifdef D_MULTISCAN_FILES_SUPPORTED
+
+/*
+ * Switch to a new external colormap between output passes.
+ */
+
+GLOBAL(void)
+jpeg_new_colormap (j_decompress_ptr cinfo)
+{
+ my_master_ptr master = (my_master_ptr) cinfo->master;
+
+ /* Prevent application from calling me at wrong times */
+ if (cinfo->global_state != DSTATE_BUFIMAGE)
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+
+ if (cinfo->quantize_colors && cinfo->enable_external_quant &&
+ cinfo->colormap != NULL) {
+ /* Select 2-pass quantizer for external colormap use */
+ cinfo->cquantize = master->quantizer_2pass;
+ /* Notify quantizer of colormap change */
+ (*cinfo->cquantize->new_color_map) (cinfo);
+ master->pub.is_dummy_pass = FALSE; /* just in case */
+ } else
+ ERREXIT(cinfo, JERR_MODE_CHANGE);
+}
+
+#endif /* D_MULTISCAN_FILES_SUPPORTED */
+
+
+/*
+ * Initialize master decompression control and select active modules.
+ * This is performed at the start of jpeg_start_decompress.
+ */
+
+GLOBAL(void)
+jinit_master_decompress (j_decompress_ptr cinfo)
+{
+ my_master_ptr master;
+
+ master = (my_master_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(my_decomp_master));
+ cinfo->master = (struct jpeg_decomp_master *) master;
+ master->pub.prepare_for_output_pass = prepare_for_output_pass;
+ master->pub.finish_output_pass = finish_output_pass;
+
+ master->pub.is_dummy_pass = FALSE;
+
+ master_selection(cinfo);
+}
diff --git a/User/lib/lcd/gui/JPEG/jdmerge.c b/User/lib/lcd/gui/JPEG/jdmerge.c
new file mode 100644
index 0000000..4445fde
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdmerge.c
@@ -0,0 +1,403 @@
+/*
+ * jdmerge.c
+ *
+ * Copyright (C) 1994-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains code for merged upsampling/color conversion.
+ *
+ * This file combines functions from jdsample.c and jdcolor.c;
+ * read those files first to understand what's going on.
+ *
+ * When the chroma components are to be upsampled by simple replication
+ * (ie, box filtering), we can save some work in color conversion by
+ * calculating all the output pixels corresponding to a pair of chroma
+ * samples at one time. In the conversion equations
+ * R = Y + K1 * Cr
+ * G = Y + K2 * Cb + K3 * Cr
+ * B = Y + K4 * Cb
+ * only the Y term varies among the group of pixels corresponding to a pair
+ * of chroma samples, so the rest of the terms can be calculated just once.
+ * At typical sampling ratios, this eliminates half or three-quarters of the
+ * multiplications needed for color conversion.
+ *
+ * This file currently provides implementations for the following cases:
+ * YCbCr => RGB color conversion only.
+ * Sampling ratios of 2h1v or 2h2v.
+ * No scaling needed at upsample time.
+ * Corner-aligned (non-CCIR601) sampling alignment.
+ * Other special cases could be added, but in most applications these are
+ * the only common cases. (For uncommon cases we fall back on the more
+ * general code in jdsample.c and jdcolor.c.)
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+#ifdef UPSAMPLE_MERGING_SUPPORTED
+
+
+/* Private subobject */
+
+typedef struct {
+ struct jpeg_upsampler pub; /* public fields */
+
+ /* Pointer to routine to do actual upsampling/conversion of one row group */
+ JMETHOD(void, upmethod, (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION in_row_group_ctr,
+ JSAMPARRAY output_buf));
+
+ /* Private state for YCC->RGB conversion */
+ int * Cr_r_tab; /* => table for Cr to R conversion */
+ int * Cb_b_tab; /* => table for Cb to B conversion */
+ INT32 * Cr_g_tab; /* => table for Cr to G conversion */
+ INT32 * Cb_g_tab; /* => table for Cb to G conversion */
+
+ /* For 2:1 vertical sampling, we produce two output rows at a time.
+ * We need a "spare" row buffer to hold the second output row if the
+ * application provides just a one-row buffer; we also use the spare
+ * to discard the dummy last row if the image height is odd.
+ */
+ JSAMPROW spare_row;
+ boolean spare_full; /* T if spare buffer is occupied */
+
+ JDIMENSION out_row_width; /* samples per output row */
+ JDIMENSION rows_to_go; /* counts rows remaining in image */
+} my_upsampler;
+
+typedef my_upsampler * my_upsample_ptr;
+
+#define SCALEBITS 16 /* speediest right-shift on some machines */
+#define ONE_HALF ((INT32) 1 << (SCALEBITS-1))
+#define FIX(x) ((INT32) ((x) * (1L<RGB colorspace conversion.
+ * This is taken directly from jdcolor.c; see that file for more info.
+ */
+
+LOCAL(void)
+build_ycc_rgb_table (j_decompress_ptr cinfo)
+{
+ my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
+ int i;
+ INT32 x;
+ SHIFT_TEMPS
+
+ upsample->Cr_r_tab = (int *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (MAXJSAMPLE+1) * SIZEOF(int));
+ upsample->Cb_b_tab = (int *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (MAXJSAMPLE+1) * SIZEOF(int));
+ upsample->Cr_g_tab = (INT32 *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (MAXJSAMPLE+1) * SIZEOF(INT32));
+ upsample->Cb_g_tab = (INT32 *)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (MAXJSAMPLE+1) * SIZEOF(INT32));
+
+ for (i = 0, x = -CENTERJSAMPLE; i <= MAXJSAMPLE; i++, x++) {
+ /* i is the actual input pixel value, in the range 0..MAXJSAMPLE */
+ /* The Cb or Cr value we are thinking of is x = i - CENTERJSAMPLE */
+ /* Cr=>R value is nearest int to 1.40200 * x */
+ upsample->Cr_r_tab[i] = (int)
+ RIGHT_SHIFT(FIX(1.40200) * x + ONE_HALF, SCALEBITS);
+ /* Cb=>B value is nearest int to 1.77200 * x */
+ upsample->Cb_b_tab[i] = (int)
+ RIGHT_SHIFT(FIX(1.77200) * x + ONE_HALF, SCALEBITS);
+ /* Cr=>G value is scaled-up -0.71414 * x */
+ upsample->Cr_g_tab[i] = (- FIX(0.71414)) * x;
+ /* Cb=>G value is scaled-up -0.34414 * x */
+ /* We also add in ONE_HALF so that need not do it in inner loop */
+ upsample->Cb_g_tab[i] = (- FIX(0.34414)) * x + ONE_HALF;
+ }
+}
+
+
+/*
+ * Initialize for an upsampling pass.
+ */
+
+METHODDEF(void)
+start_pass_merged_upsample (j_decompress_ptr cinfo)
+{
+ my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
+
+ /* Mark the spare buffer empty */
+ upsample->spare_full = FALSE;
+ /* Initialize total-height counter for detecting bottom of image */
+ upsample->rows_to_go = cinfo->output_height;
+}
+
+
+/*
+ * Control routine to do upsampling (and color conversion).
+ *
+ * The control routine just handles the row buffering considerations.
+ */
+
+METHODDEF(void)
+merged_2v_upsample (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail)
+/* 2:1 vertical sampling case: may need a spare row. */
+{
+ my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
+ JSAMPROW work_ptrs[2];
+ JDIMENSION num_rows; /* number of rows returned to caller */
+
+ GUI_USE_PARA(in_row_groups_avail);
+ if (upsample->spare_full) {
+ /* If we have a spare row saved from a previous cycle, just return it. */
+ jcopy_sample_rows(& upsample->spare_row, 0, output_buf + *out_row_ctr, 0,
+ 1, upsample->out_row_width);
+ num_rows = 1;
+ upsample->spare_full = FALSE;
+ } else {
+ /* Figure number of rows to return to caller. */
+ num_rows = 2;
+ /* Not more than the distance to the end of the image. */
+ if (num_rows > upsample->rows_to_go)
+ num_rows = upsample->rows_to_go;
+ /* And not more than what the client can accept: */
+ out_rows_avail -= *out_row_ctr;
+ if (num_rows > out_rows_avail)
+ num_rows = out_rows_avail;
+ /* Create output pointer array for upsampler. */
+ work_ptrs[0] = output_buf[*out_row_ctr];
+ if (num_rows > 1) {
+ work_ptrs[1] = output_buf[*out_row_ctr + 1];
+ } else {
+ work_ptrs[1] = upsample->spare_row;
+ upsample->spare_full = TRUE;
+ }
+ /* Now do the upsampling. */
+ (*upsample->upmethod) (cinfo, input_buf, *in_row_group_ctr, work_ptrs);
+ }
+
+ /* Adjust counts */
+ *out_row_ctr += num_rows;
+ upsample->rows_to_go -= num_rows;
+ /* When the buffer is emptied, declare this input row group consumed */
+ if (! upsample->spare_full)
+ (*in_row_group_ctr)++;
+}
+
+
+METHODDEF(void)
+merged_1v_upsample (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail)
+/* 1:1 vertical sampling case: much easier, never need a spare row. */
+{
+ my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
+
+ GUI_USE_PARA(out_rows_avail);
+ GUI_USE_PARA(in_row_groups_avail);
+ /* Just do the upsampling. */
+ (*upsample->upmethod) (cinfo, input_buf, *in_row_group_ctr,
+ output_buf + *out_row_ctr);
+ /* Adjust counts */
+ (*out_row_ctr)++;
+ (*in_row_group_ctr)++;
+}
+
+
+/*
+ * These are the routines invoked by the control routines to do
+ * the actual upsampling/conversion. One row group is processed per call.
+ *
+ * Note: since we may be writing directly into application-supplied buffers,
+ * we have to be honest about the output width; we can't assume the buffer
+ * has been rounded up to an even width.
+ */
+
+
+/*
+ * Upsample and color convert for the case of 2:1 horizontal and 1:1 vertical.
+ */
+
+METHODDEF(void)
+h2v1_merged_upsample (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION in_row_group_ctr,
+ JSAMPARRAY output_buf)
+{
+ my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
+ register int y, cred, cgreen, cblue;
+ int cb, cr;
+ register JSAMPROW outptr;
+ JSAMPROW inptr0, inptr1, inptr2;
+ JDIMENSION col;
+ /* copy these pointers into registers if possible */
+ register JSAMPLE * range_limit = cinfo->sample_range_limit;
+ int * Crrtab = upsample->Cr_r_tab;
+ int * Cbbtab = upsample->Cb_b_tab;
+ INT32 * Crgtab = upsample->Cr_g_tab;
+ INT32 * Cbgtab = upsample->Cb_g_tab;
+ SHIFT_TEMPS
+
+ inptr0 = input_buf[0][in_row_group_ctr];
+ inptr1 = input_buf[1][in_row_group_ctr];
+ inptr2 = input_buf[2][in_row_group_ctr];
+ outptr = output_buf[0];
+ /* Loop for each pair of output pixels */
+ for (col = cinfo->output_width >> 1; col > 0; col--) {
+ /* Do the chroma part of the calculation */
+ cb = GETJSAMPLE(*inptr1++);
+ cr = GETJSAMPLE(*inptr2++);
+ cred = Crrtab[cr];
+ cgreen = (int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr], SCALEBITS);
+ cblue = Cbbtab[cb];
+ /* Fetch 2 Y values and emit 2 pixels */
+ y = GETJSAMPLE(*inptr0++);
+ outptr[RGB_RED] = range_limit[y + cred];
+ outptr[RGB_GREEN] = range_limit[y + cgreen];
+ outptr[RGB_BLUE] = range_limit[y + cblue];
+ outptr += RGB_PIXELSIZE;
+ y = GETJSAMPLE(*inptr0++);
+ outptr[RGB_RED] = range_limit[y + cred];
+ outptr[RGB_GREEN] = range_limit[y + cgreen];
+ outptr[RGB_BLUE] = range_limit[y + cblue];
+ outptr += RGB_PIXELSIZE;
+ }
+ /* If image width is odd, do the last output column separately */
+ if (cinfo->output_width & 1) {
+ cb = GETJSAMPLE(*inptr1);
+ cr = GETJSAMPLE(*inptr2);
+ cred = Crrtab[cr];
+ cgreen = (int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr], SCALEBITS);
+ cblue = Cbbtab[cb];
+ y = GETJSAMPLE(*inptr0);
+ outptr[RGB_RED] = range_limit[y + cred];
+ outptr[RGB_GREEN] = range_limit[y + cgreen];
+ outptr[RGB_BLUE] = range_limit[y + cblue];
+ }
+}
+
+
+/*
+ * Upsample and color convert for the case of 2:1 horizontal and 2:1 vertical.
+ */
+
+METHODDEF(void)
+h2v2_merged_upsample (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION in_row_group_ctr,
+ JSAMPARRAY output_buf)
+{
+ my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
+ register int y, cred, cgreen, cblue;
+ int cb, cr;
+ register JSAMPROW outptr0, outptr1;
+ JSAMPROW inptr00, inptr01, inptr1, inptr2;
+ JDIMENSION col;
+ /* copy these pointers into registers if possible */
+ register JSAMPLE * range_limit = cinfo->sample_range_limit;
+ int * Crrtab = upsample->Cr_r_tab;
+ int * Cbbtab = upsample->Cb_b_tab;
+ INT32 * Crgtab = upsample->Cr_g_tab;
+ INT32 * Cbgtab = upsample->Cb_g_tab;
+ SHIFT_TEMPS
+
+ inptr00 = input_buf[0][in_row_group_ctr*2];
+ inptr01 = input_buf[0][in_row_group_ctr*2 + 1];
+ inptr1 = input_buf[1][in_row_group_ctr];
+ inptr2 = input_buf[2][in_row_group_ctr];
+ outptr0 = output_buf[0];
+ outptr1 = output_buf[1];
+ /* Loop for each group of output pixels */
+ for (col = cinfo->output_width >> 1; col > 0; col--) {
+ /* Do the chroma part of the calculation */
+ cb = GETJSAMPLE(*inptr1++);
+ cr = GETJSAMPLE(*inptr2++);
+ cred = Crrtab[cr];
+ cgreen = (int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr], SCALEBITS);
+ cblue = Cbbtab[cb];
+ /* Fetch 4 Y values and emit 4 pixels */
+ y = GETJSAMPLE(*inptr00++);
+ outptr0[RGB_RED] = range_limit[y + cred];
+ outptr0[RGB_GREEN] = range_limit[y + cgreen];
+ outptr0[RGB_BLUE] = range_limit[y + cblue];
+ outptr0 += RGB_PIXELSIZE;
+ y = GETJSAMPLE(*inptr00++);
+ outptr0[RGB_RED] = range_limit[y + cred];
+ outptr0[RGB_GREEN] = range_limit[y + cgreen];
+ outptr0[RGB_BLUE] = range_limit[y + cblue];
+ outptr0 += RGB_PIXELSIZE;
+ y = GETJSAMPLE(*inptr01++);
+ outptr1[RGB_RED] = range_limit[y + cred];
+ outptr1[RGB_GREEN] = range_limit[y + cgreen];
+ outptr1[RGB_BLUE] = range_limit[y + cblue];
+ outptr1 += RGB_PIXELSIZE;
+ y = GETJSAMPLE(*inptr01++);
+ outptr1[RGB_RED] = range_limit[y + cred];
+ outptr1[RGB_GREEN] = range_limit[y + cgreen];
+ outptr1[RGB_BLUE] = range_limit[y + cblue];
+ outptr1 += RGB_PIXELSIZE;
+ }
+ /* If image width is odd, do the last output column separately */
+ if (cinfo->output_width & 1) {
+ cb = GETJSAMPLE(*inptr1);
+ cr = GETJSAMPLE(*inptr2);
+ cred = Crrtab[cr];
+ cgreen = (int) RIGHT_SHIFT(Cbgtab[cb] + Crgtab[cr], SCALEBITS);
+ cblue = Cbbtab[cb];
+ y = GETJSAMPLE(*inptr00);
+ outptr0[RGB_RED] = range_limit[y + cred];
+ outptr0[RGB_GREEN] = range_limit[y + cgreen];
+ outptr0[RGB_BLUE] = range_limit[y + cblue];
+ y = GETJSAMPLE(*inptr01);
+ outptr1[RGB_RED] = range_limit[y + cred];
+ outptr1[RGB_GREEN] = range_limit[y + cgreen];
+ outptr1[RGB_BLUE] = range_limit[y + cblue];
+ }
+}
+
+
+/*
+ * Module initialization routine for merged upsampling/color conversion.
+ *
+ * NB: this is called under the conditions determined by use_merged_upsample()
+ * in jdmaster.c. That routine MUST correspond to the actual capabilities
+ * of this module; no safety checks are made here.
+ */
+
+GLOBAL(void)
+jinit_merged_upsampler (j_decompress_ptr cinfo)
+{
+ my_upsample_ptr upsample;
+
+ upsample = (my_upsample_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(my_upsampler));
+ cinfo->upsample = (struct jpeg_upsampler *) upsample;
+ upsample->pub.start_pass = start_pass_merged_upsample;
+ upsample->pub.need_context_rows = FALSE;
+
+ upsample->out_row_width = cinfo->output_width * cinfo->out_color_components;
+
+ if (cinfo->max_v_samp_factor == 2) {
+ upsample->pub.upsample = merged_2v_upsample;
+ upsample->upmethod = h2v2_merged_upsample;
+ /* Allocate a spare row buffer */
+ upsample->spare_row = (JSAMPROW)
+ (*cinfo->mem->alloc_large) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (size_t) (upsample->out_row_width * SIZEOF(JSAMPLE)));
+ } else {
+ upsample->pub.upsample = merged_1v_upsample;
+ upsample->upmethod = h2v1_merged_upsample;
+ /* No spare row needed */
+ upsample->spare_row = NULL;
+ }
+
+ build_ycc_rgb_table(cinfo);
+}
+
+#endif /* UPSAMPLE_MERGING_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jdphuff.c b/User/lib/lcd/gui/JPEG/jdphuff.c
new file mode 100644
index 0000000..2267809
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdphuff.c
@@ -0,0 +1,668 @@
+/*
+ * jdphuff.c
+ *
+ * Copyright (C) 1995-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains Huffman entropy decoding routines for progressive JPEG.
+ *
+ * Much of the complexity here has to do with supporting input suspension.
+ * If the data source module demands suspension, we want to be able to back
+ * up to the start of the current MCU. To do this, we copy state variables
+ * into local working storage, and update them back to the permanent
+ * storage only upon successful completion of an MCU.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jdhuff.h" /* Declarations shared with jdhuff.c */
+
+
+#ifdef D_PROGRESSIVE_SUPPORTED
+
+/*
+ * Expanded entropy decoder object for progressive Huffman decoding.
+ *
+ * The savable_state subrecord contains fields that change within an MCU,
+ * but must not be updated permanently until we complete the MCU.
+ */
+
+typedef struct {
+ unsigned int EOBRUN; /* remaining EOBs in EOBRUN */
+ int last_dc_val[MAX_COMPS_IN_SCAN]; /* last DC coef for each component */
+} savable_state;
+
+/* This macro is to work around compilers with missing or broken
+ * structure assignment. You'll need to fix this code if you have
+ * such a compiler and you change MAX_COMPS_IN_SCAN.
+ */
+
+#ifndef NO_STRUCT_ASSIGN
+#define ASSIGN_STATE(dest,src) ((dest) = (src))
+#else
+#if MAX_COMPS_IN_SCAN == 4
+#define ASSIGN_STATE(dest,src) \
+ ((dest).EOBRUN = (src).EOBRUN, \
+ (dest).last_dc_val[0] = (src).last_dc_val[0], \
+ (dest).last_dc_val[1] = (src).last_dc_val[1], \
+ (dest).last_dc_val[2] = (src).last_dc_val[2], \
+ (dest).last_dc_val[3] = (src).last_dc_val[3])
+#endif
+#endif
+
+
+typedef struct {
+ struct jpeg_entropy_decoder pub; /* public fields */
+
+ /* These fields are loaded into local variables at start of each MCU.
+ * In case of suspension, we exit WITHOUT updating them.
+ */
+ bitread_perm_state bitstate; /* Bit buffer at start of MCU */
+ savable_state saved; /* Other state at start of MCU */
+
+ /* These fields are NOT loaded into local working state. */
+ unsigned int restarts_to_go; /* MCUs left in this restart interval */
+
+ /* Pointers to derived tables (these workspaces have image lifespan) */
+ d_derived_tbl * derived_tbls[NUM_HUFF_TBLS];
+
+ d_derived_tbl * ac_derived_tbl; /* active table during an AC scan */
+} phuff_entropy_decoder;
+
+typedef phuff_entropy_decoder * phuff_entropy_ptr;
+
+/* Forward declarations */
+METHODDEF(boolean) decode_mcu_DC_first JPP((j_decompress_ptr cinfo,
+ JBLOCKROW *MCU_data));
+METHODDEF(boolean) decode_mcu_AC_first JPP((j_decompress_ptr cinfo,
+ JBLOCKROW *MCU_data));
+METHODDEF(boolean) decode_mcu_DC_refine JPP((j_decompress_ptr cinfo,
+ JBLOCKROW *MCU_data));
+METHODDEF(boolean) decode_mcu_AC_refine JPP((j_decompress_ptr cinfo,
+ JBLOCKROW *MCU_data));
+
+
+/*
+ * Initialize for a Huffman-compressed scan.
+ */
+
+METHODDEF(void)
+start_pass_phuff_decoder (j_decompress_ptr cinfo)
+{
+ phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
+ boolean is_DC_band, bad;
+ int ci, coefi, tbl;
+ int *coef_bit_ptr;
+ jpeg_component_info * compptr;
+
+ is_DC_band = (cinfo->Ss == 0);
+
+ /* Validate scan parameters */
+ bad = FALSE;
+ if (is_DC_band) {
+ if (cinfo->Se != 0)
+ bad = TRUE;
+ } else {
+ /* need not check Ss/Se < 0 since they came from unsigned bytes */
+ if (cinfo->Ss > cinfo->Se || cinfo->Se >= DCTSIZE2)
+ bad = TRUE;
+ /* AC scans may have only one component */
+ if (cinfo->comps_in_scan != 1)
+ bad = TRUE;
+ }
+ if (cinfo->Ah != 0) {
+ /* Successive approximation refinement scan: must have Al = Ah-1. */
+ if (cinfo->Al != cinfo->Ah-1)
+ bad = TRUE;
+ }
+ if (cinfo->Al > 13) /* need not check for < 0 */
+ bad = TRUE;
+ /* Arguably the maximum Al value should be less than 13 for 8-bit precision,
+ * but the spec doesn't say so, and we try to be liberal about what we
+ * accept. Note: large Al values could result in out-of-range DC
+ * coefficients during early scans, leading to bizarre displays due to
+ * overflows in the IDCT math. But we won't crash.
+ */
+ if (bad)
+ ERREXIT4(cinfo, JERR_BAD_PROGRESSION,
+ cinfo->Ss, cinfo->Se, cinfo->Ah, cinfo->Al);
+ /* Update progression status, and verify that scan order is legal.
+ * Note that inter-scan inconsistencies are treated as warnings
+ * not fatal errors ... not clear if this is right way to behave.
+ */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ int cindex = cinfo->cur_comp_info[ci]->component_index;
+ coef_bit_ptr = & cinfo->coef_bits[cindex][0];
+ if (!is_DC_band && coef_bit_ptr[0] < 0) /* AC without prior DC scan */
+ WARNMS2(cinfo, JWRN_BOGUS_PROGRESSION, cindex, 0);
+ for (coefi = cinfo->Ss; coefi <= cinfo->Se; coefi++) {
+ int expected = (coef_bit_ptr[coefi] < 0) ? 0 : coef_bit_ptr[coefi];
+ if (cinfo->Ah != expected)
+ WARNMS2(cinfo, JWRN_BOGUS_PROGRESSION, cindex, coefi);
+ coef_bit_ptr[coefi] = cinfo->Al;
+ }
+ }
+
+ /* Select MCU decoding routine */
+ if (cinfo->Ah == 0) {
+ if (is_DC_band)
+ entropy->pub.decode_mcu = decode_mcu_DC_first;
+ else
+ entropy->pub.decode_mcu = decode_mcu_AC_first;
+ } else {
+ if (is_DC_band)
+ entropy->pub.decode_mcu = decode_mcu_DC_refine;
+ else
+ entropy->pub.decode_mcu = decode_mcu_AC_refine;
+ }
+
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
+ compptr = cinfo->cur_comp_info[ci];
+ /* Make sure requested tables are present, and compute derived tables.
+ * We may build same derived table more than once, but it's not expensive.
+ */
+ if (is_DC_band) {
+ if (cinfo->Ah == 0) { /* DC refinement needs no table */
+ tbl = compptr->dc_tbl_no;
+ jpeg_make_d_derived_tbl(cinfo, TRUE, tbl,
+ & entropy->derived_tbls[tbl]);
+ }
+ } else {
+ tbl = compptr->ac_tbl_no;
+ jpeg_make_d_derived_tbl(cinfo, FALSE, tbl,
+ & entropy->derived_tbls[tbl]);
+ /* remember the single active table */
+ entropy->ac_derived_tbl = entropy->derived_tbls[tbl];
+ }
+ /* Initialize DC predictions to 0 */
+ entropy->saved.last_dc_val[ci] = 0;
+ }
+
+ /* Initialize bitread state variables */
+ entropy->bitstate.bits_left = 0;
+ entropy->bitstate.get_buffer = 0; /* unnecessary, but keeps Purify quiet */
+ entropy->pub.insufficient_data = FALSE;
+
+ /* Initialize private state variables */
+ entropy->saved.EOBRUN = 0;
+
+ /* Initialize restart counter */
+ entropy->restarts_to_go = cinfo->restart_interval;
+}
+
+
+/*
+ * Figure F.12: extend sign bit.
+ * On some machines, a shift and add will be faster than a table lookup.
+ */
+
+#ifdef AVOID_TABLES
+
+#define HUFF_EXTEND(x,s) ((x) < (1<<((s)-1)) ? (x) + (((-1)<<(s)) + 1) : (x))
+
+#else
+
+#define HUFF_EXTEND(x,s) ((x) < extend_test[s] ? (x) + extend_offset[s] : (x))
+
+static const int extend_test[16] = /* entry n is 2**(n-1) */
+ { 0, 0x0001, 0x0002, 0x0004, 0x0008, 0x0010, 0x0020, 0x0040, 0x0080,
+ 0x0100, 0x0200, 0x0400, 0x0800, 0x1000, 0x2000, 0x4000 };
+
+static const int extend_offset[16] = /* entry n is (-1 << n) + 1 */
+ { 0, ((-1)<<1) + 1, ((-1)<<2) + 1, ((-1)<<3) + 1, ((-1)<<4) + 1,
+ ((-1)<<5) + 1, ((-1)<<6) + 1, ((-1)<<7) + 1, ((-1)<<8) + 1,
+ ((-1)<<9) + 1, ((-1)<<10) + 1, ((-1)<<11) + 1, ((-1)<<12) + 1,
+ ((-1)<<13) + 1, ((-1)<<14) + 1, ((-1)<<15) + 1 };
+
+#endif /* AVOID_TABLES */
+
+
+/*
+ * Check for a restart marker & resynchronize decoder.
+ * Returns FALSE if must suspend.
+ */
+
+LOCAL(boolean)
+process_restart (j_decompress_ptr cinfo)
+{
+ phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
+ int ci;
+
+ /* Throw away any unused bits remaining in bit buffer; */
+ /* include any full bytes in next_marker's count of discarded bytes */
+ cinfo->marker->discarded_bytes += entropy->bitstate.bits_left / 8;
+ entropy->bitstate.bits_left = 0;
+
+ /* Advance past the RSTn marker */
+ if (! (*cinfo->marker->read_restart_marker) (cinfo))
+ return FALSE;
+
+ /* Re-initialize DC predictions to 0 */
+ for (ci = 0; ci < cinfo->comps_in_scan; ci++)
+ entropy->saved.last_dc_val[ci] = 0;
+ /* Re-init EOB run count, too */
+ entropy->saved.EOBRUN = 0;
+
+ /* Reset restart counter */
+ entropy->restarts_to_go = cinfo->restart_interval;
+
+ /* Reset out-of-data flag, unless read_restart_marker left us smack up
+ * against a marker. In that case we will end up treating the next data
+ * segment as empty, and we can avoid producing bogus output pixels by
+ * leaving the flag set.
+ */
+ if (cinfo->unread_marker == 0)
+ entropy->pub.insufficient_data = FALSE;
+
+ return TRUE;
+}
+
+
+/*
+ * Huffman MCU decoding.
+ * Each of these routines decodes and returns one MCU's worth of
+ * Huffman-compressed coefficients.
+ * The coefficients are reordered from zigzag order into natural array order,
+ * but are not dequantized.
+ *
+ * The i'th block of the MCU is stored into the block pointed to by
+ * MCU_data[i]. WE ASSUME THIS AREA IS INITIALLY ZEROED BY THE CALLER.
+ *
+ * We return FALSE if data source requested suspension. In that case no
+ * changes have been made to permanent state. (Exception: some output
+ * coefficients may already have been assigned. This is harmless for
+ * spectral selection, since we'll just re-assign them on the next call.
+ * Successive approximation AC refinement has to be more careful, however.)
+ */
+
+/*
+ * MCU decoding for DC initial scan (either spectral selection,
+ * or first pass of successive approximation).
+ */
+
+METHODDEF(boolean)
+decode_mcu_DC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
+ int Al = cinfo->Al;
+ register int s, r;
+ int blkn, ci;
+ JBLOCKROW block;
+ BITREAD_STATE_VARS;
+ savable_state state;
+ d_derived_tbl * tbl;
+ jpeg_component_info * compptr;
+
+ /* Process restart marker if needed; may have to suspend */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0)
+ if (! process_restart(cinfo))
+ return FALSE;
+ }
+
+ /* If we've run out of data, just leave the MCU set to zeroes.
+ * This way, we return uniform gray for the remainder of the segment.
+ */
+ if (! entropy->pub.insufficient_data) {
+
+ /* Load up working state */
+ BITREAD_LOAD_STATE(cinfo,entropy->bitstate);
+ ASSIGN_STATE(state, entropy->saved);
+
+ /* Outer loop handles each block in the MCU */
+
+ for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
+ block = MCU_data[blkn];
+ ci = cinfo->MCU_membership[blkn];
+ compptr = cinfo->cur_comp_info[ci];
+ tbl = entropy->derived_tbls[compptr->dc_tbl_no];
+
+ /* Decode a single block's worth of coefficients */
+
+ /* Section F.2.2.1: decode the DC coefficient difference */
+ HUFF_DECODE(s, br_state, tbl, return FALSE, label1);
+ if (s) {
+ CHECK_BIT_BUFFER(br_state, s, return FALSE);
+ r = GET_BITS(s);
+ s = HUFF_EXTEND(r, s);
+ }
+
+ /* Convert DC difference to actual value, update last_dc_val */
+ s += state.last_dc_val[ci];
+ state.last_dc_val[ci] = s;
+ /* Scale and output the coefficient (assumes jpeg_natural_order[0]=0) */
+ (*block)[0] = (JCOEF) (s << Al);
+ }
+
+ /* Completed MCU, so update state */
+ BITREAD_SAVE_STATE(cinfo,entropy->bitstate);
+ ASSIGN_STATE(entropy->saved, state);
+ }
+
+ /* Account for restart interval (no-op if not using restarts) */
+ entropy->restarts_to_go--;
+
+ return TRUE;
+}
+
+
+/*
+ * MCU decoding for AC initial scan (either spectral selection,
+ * or first pass of successive approximation).
+ */
+
+METHODDEF(boolean)
+decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
+ int Se = cinfo->Se;
+ int Al = cinfo->Al;
+ register int s, k, r;
+ unsigned int EOBRUN;
+ JBLOCKROW block;
+ BITREAD_STATE_VARS;
+ d_derived_tbl * tbl;
+
+ /* Process restart marker if needed; may have to suspend */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0)
+ if (! process_restart(cinfo))
+ return FALSE;
+ }
+
+ /* If we've run out of data, just leave the MCU set to zeroes.
+ * This way, we return uniform gray for the remainder of the segment.
+ */
+ if (! entropy->pub.insufficient_data) {
+
+ /* Load up working state.
+ * We can avoid loading/saving bitread state if in an EOB run.
+ */
+ EOBRUN = entropy->saved.EOBRUN; /* only part of saved state we need */
+
+ /* There is always only one block per MCU */
+
+ if (EOBRUN > 0) /* if it's a band of zeroes... */
+ EOBRUN--; /* ...process it now (we do nothing) */
+ else {
+ BITREAD_LOAD_STATE(cinfo,entropy->bitstate);
+ block = MCU_data[0];
+ tbl = entropy->ac_derived_tbl;
+
+ for (k = cinfo->Ss; k <= Se; k++) {
+ HUFF_DECODE(s, br_state, tbl, return FALSE, label2);
+ r = s >> 4;
+ s &= 15;
+ if (s) {
+ k += r;
+ CHECK_BIT_BUFFER(br_state, s, return FALSE);
+ r = GET_BITS(s);
+ s = HUFF_EXTEND(r, s);
+ /* Scale and output coefficient in natural (dezigzagged) order */
+ (*block)[jpeg_natural_order[k]] = (JCOEF) (s << Al);
+ } else {
+ if (r == 15) { /* ZRL */
+ k += 15; /* skip 15 zeroes in band */
+ } else { /* EOBr, run length is 2^r + appended bits */
+ EOBRUN = 1 << r;
+ if (r) { /* EOBr, r > 0 */
+ CHECK_BIT_BUFFER(br_state, r, return FALSE);
+ r = GET_BITS(r);
+ EOBRUN += r;
+ }
+ EOBRUN--; /* this band is processed at this moment */
+ break; /* force end-of-band */
+ }
+ }
+ }
+
+ BITREAD_SAVE_STATE(cinfo,entropy->bitstate);
+ }
+
+ /* Completed MCU, so update state */
+ entropy->saved.EOBRUN = EOBRUN; /* only part of saved state we need */
+ }
+
+ /* Account for restart interval (no-op if not using restarts) */
+ entropy->restarts_to_go--;
+
+ return TRUE;
+}
+
+
+/*
+ * MCU decoding for DC successive approximation refinement scan.
+ * Note: we assume such scans can be multi-component, although the spec
+ * is not very clear on the point.
+ */
+
+METHODDEF(boolean)
+decode_mcu_DC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
+ int p1 = 1 << cinfo->Al; /* 1 in the bit position being coded */
+ int blkn;
+ JBLOCKROW block;
+ BITREAD_STATE_VARS;
+
+ /* Process restart marker if needed; may have to suspend */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0)
+ if (! process_restart(cinfo))
+ return FALSE;
+ }
+
+ /* Not worth the cycles to check insufficient_data here,
+ * since we will not change the data anyway if we read zeroes.
+ */
+
+ /* Load up working state */
+ BITREAD_LOAD_STATE(cinfo,entropy->bitstate);
+
+ /* Outer loop handles each block in the MCU */
+
+ for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
+ block = MCU_data[blkn];
+
+ /* Encoded data is simply the next bit of the two's-complement DC value */
+ CHECK_BIT_BUFFER(br_state, 1, return FALSE);
+ if (GET_BITS(1))
+ (*block)[0] |= p1;
+ /* Note: since we use |=, repeating the assignment later is safe */
+ }
+
+ /* Completed MCU, so update state */
+ BITREAD_SAVE_STATE(cinfo,entropy->bitstate);
+
+ /* Account for restart interval (no-op if not using restarts) */
+ entropy->restarts_to_go--;
+
+ return TRUE;
+}
+
+
+/*
+ * MCU decoding for AC successive approximation refinement scan.
+ */
+
+METHODDEF(boolean)
+decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
+{
+ phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
+ int Se = cinfo->Se;
+ int p1 = 1 << cinfo->Al; /* 1 in the bit position being coded */
+ int m1 = (-1) << cinfo->Al; /* -1 in the bit position being coded */
+ register int s, k, r;
+ unsigned int EOBRUN;
+ JBLOCKROW block;
+ JCOEFPTR thiscoef;
+ BITREAD_STATE_VARS;
+ d_derived_tbl * tbl;
+ int num_newnz;
+ int newnz_pos[DCTSIZE2];
+
+ /* Process restart marker if needed; may have to suspend */
+ if (cinfo->restart_interval) {
+ if (entropy->restarts_to_go == 0)
+ if (! process_restart(cinfo))
+ return FALSE;
+ }
+
+ /* If we've run out of data, don't modify the MCU.
+ */
+ if (! entropy->pub.insufficient_data) {
+
+ /* Load up working state */
+ BITREAD_LOAD_STATE(cinfo,entropy->bitstate);
+ EOBRUN = entropy->saved.EOBRUN; /* only part of saved state we need */
+
+ /* There is always only one block per MCU */
+ block = MCU_data[0];
+ tbl = entropy->ac_derived_tbl;
+
+ /* If we are forced to suspend, we must undo the assignments to any newly
+ * nonzero coefficients in the block, because otherwise we'd get confused
+ * next time about which coefficients were already nonzero.
+ * But we need not undo addition of bits to already-nonzero coefficients;
+ * instead, we can test the current bit to see if we already did it.
+ */
+ num_newnz = 0;
+
+ /* initialize coefficient loop counter to start of band */
+ k = cinfo->Ss;
+
+ if (EOBRUN == 0) {
+ for (; k <= Se; k++) {
+ HUFF_DECODE(s, br_state, tbl, goto undoit, label3);
+ r = s >> 4;
+ s &= 15;
+ if (s) {
+ if (s != 1) /* size of new coef should always be 1 */
+ WARNMS(cinfo, JWRN_HUFF_BAD_CODE);
+ CHECK_BIT_BUFFER(br_state, 1, goto undoit);
+ if (GET_BITS(1))
+ s = p1; /* newly nonzero coef is positive */
+ else
+ s = m1; /* newly nonzero coef is negative */
+ } else {
+ if (r != 15) {
+ EOBRUN = 1 << r; /* EOBr, run length is 2^r + appended bits */
+ if (r) {
+ CHECK_BIT_BUFFER(br_state, r, goto undoit);
+ r = GET_BITS(r);
+ EOBRUN += r;
+ }
+ break; /* rest of block is handled by EOB logic */
+ }
+ /* note s = 0 for processing ZRL */
+ }
+ /* Advance over already-nonzero coefs and r still-zero coefs,
+ * appending correction bits to the nonzeroes. A correction bit is 1
+ * if the absolute value of the coefficient must be increased.
+ */
+ do {
+ thiscoef = *block + jpeg_natural_order[k];
+ if (*thiscoef != 0) {
+ CHECK_BIT_BUFFER(br_state, 1, goto undoit);
+ if (GET_BITS(1)) {
+ if ((*thiscoef & p1) == 0) { /* do nothing if already set it */
+ if (*thiscoef >= 0)
+ *thiscoef += p1;
+ else
+ *thiscoef += m1;
+ }
+ }
+ } else {
+ if (--r < 0)
+ break; /* reached target zero coefficient */
+ }
+ k++;
+ } while (k <= Se);
+ if (s) {
+ int pos = jpeg_natural_order[k];
+ /* Output newly nonzero coefficient */
+ (*block)[pos] = (JCOEF) s;
+ /* Remember its position in case we have to suspend */
+ newnz_pos[num_newnz++] = pos;
+ }
+ }
+ }
+
+ if (EOBRUN > 0) {
+ /* Scan any remaining coefficient positions after the end-of-band
+ * (the last newly nonzero coefficient, if any). Append a correction
+ * bit to each already-nonzero coefficient. A correction bit is 1
+ * if the absolute value of the coefficient must be increased.
+ */
+ for (; k <= Se; k++) {
+ thiscoef = *block + jpeg_natural_order[k];
+ if (*thiscoef != 0) {
+ CHECK_BIT_BUFFER(br_state, 1, goto undoit);
+ if (GET_BITS(1)) {
+ if ((*thiscoef & p1) == 0) { /* do nothing if already changed it */
+ if (*thiscoef >= 0)
+ *thiscoef += p1;
+ else
+ *thiscoef += m1;
+ }
+ }
+ }
+ }
+ /* Count one block completed in EOB run */
+ EOBRUN--;
+ }
+
+ /* Completed MCU, so update state */
+ BITREAD_SAVE_STATE(cinfo,entropy->bitstate);
+ entropy->saved.EOBRUN = EOBRUN; /* only part of saved state we need */
+ }
+
+ /* Account for restart interval (no-op if not using restarts) */
+ entropy->restarts_to_go--;
+
+ return TRUE;
+
+undoit:
+ /* Re-zero any output coefficients that we made newly nonzero */
+ while (num_newnz > 0)
+ (*block)[newnz_pos[--num_newnz]] = 0;
+
+ return FALSE;
+}
+
+
+/*
+ * Module initialization routine for progressive Huffman entropy decoding.
+ */
+
+GLOBAL(void)
+jinit_phuff_decoder (j_decompress_ptr cinfo)
+{
+ phuff_entropy_ptr entropy;
+ int *coef_bit_ptr;
+ int ci, i;
+
+ entropy = (phuff_entropy_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(phuff_entropy_decoder));
+ cinfo->entropy = (struct jpeg_entropy_decoder *) entropy;
+ entropy->pub.start_pass = start_pass_phuff_decoder;
+
+ /* Mark derived tables unallocated */
+ for (i = 0; i < NUM_HUFF_TBLS; i++) {
+ entropy->derived_tbls[i] = NULL;
+ }
+
+ /* Create progression status table */
+ cinfo->coef_bits = (int (*)[DCTSIZE2])
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ cinfo->num_components*DCTSIZE2*SIZEOF(int));
+ coef_bit_ptr = & cinfo->coef_bits[0][0];
+ for (ci = 0; ci < cinfo->num_components; ci++)
+ for (i = 0; i < DCTSIZE2; i++)
+ *coef_bit_ptr++ = -1;
+}
+
+#endif /* D_PROGRESSIVE_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jdpostct.c b/User/lib/lcd/gui/JPEG/jdpostct.c
new file mode 100644
index 0000000..4359f2d
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdpostct.c
@@ -0,0 +1,295 @@
+/*
+ * jdpostct.c
+ *
+ * Copyright (C) 1994-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains the decompression postprocessing controller.
+ * This controller manages the upsampling, color conversion, and color
+ * quantization/reduction steps; specifically, it controls the buffering
+ * between upsample/color conversion and color quantization/reduction.
+ *
+ * If no color quantization/reduction is required, then this module has no
+ * work to do, and it just hands off to the upsample/color conversion code.
+ * An integrated upsample/convert/quantize process would replace this module
+ * entirely.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/* Private buffer controller object */
+
+typedef struct {
+ struct jpeg_d_post_controller pub; /* public fields */
+
+ /* Color quantization source buffer: this holds output data from
+ * the upsample/color conversion step to be passed to the quantizer.
+ * For two-pass color quantization, we need a full-image buffer;
+ * for one-pass operation, a strip buffer is sufficient.
+ */
+ jvirt_sarray_ptr whole_image; /* virtual array, or NULL if one-pass */
+ JSAMPARRAY buffer; /* strip buffer, or current strip of virtual */
+ JDIMENSION strip_height; /* buffer size in rows */
+ /* for two-pass mode only: */
+ JDIMENSION starting_row; /* row # of first row in current strip */
+ JDIMENSION next_row; /* index of next row to fill/empty in strip */
+} my_post_controller;
+
+typedef my_post_controller * my_post_ptr;
+
+
+/* Forward declarations */
+METHODDEF(void) post_process_1pass
+ JPP((j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail));
+#ifdef QUANT_2PASS_SUPPORTED
+METHODDEF(void) post_process_prepass
+ JPP((j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail));
+METHODDEF(void) post_process_2pass
+ JPP((j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail));
+#endif
+
+
+/*
+ * Initialize for a processing pass.
+ */
+
+METHODDEF(void)
+start_pass_dpost (j_decompress_ptr cinfo, J_BUF_MODE pass_mode)
+{
+ my_post_ptr post = (my_post_ptr) cinfo->post;
+
+ switch (pass_mode) {
+ case JBUF_PASS_THRU:
+ if (cinfo->quantize_colors) {
+ /* Single-pass processing with color quantization. */
+ post->pub.post_process_data = post_process_1pass;
+ /* We could be doing buffered-image output before starting a 2-pass
+ * color quantization; in that case, jinit_d_post_controller did not
+ * allocate a strip buffer. Use the virtual-array buffer as workspace.
+ */
+ if (post->buffer == NULL) {
+ post->buffer = (*cinfo->mem->access_virt_sarray)
+ ((j_common_ptr) cinfo, post->whole_image,
+ (JDIMENSION) 0, post->strip_height, TRUE);
+ }
+ } else {
+ /* For single-pass processing without color quantization,
+ * I have no work to do; just call the upsampler directly.
+ */
+ post->pub.post_process_data = cinfo->upsample->upsample;
+ }
+ break;
+#ifdef QUANT_2PASS_SUPPORTED
+ case JBUF_SAVE_AND_PASS:
+ /* First pass of 2-pass quantization */
+ if (post->whole_image == NULL)
+ ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
+ post->pub.post_process_data = post_process_prepass;
+ break;
+ case JBUF_CRANK_DEST:
+ /* Second pass of 2-pass quantization */
+ if (post->whole_image == NULL)
+ ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
+ post->pub.post_process_data = post_process_2pass;
+ break;
+#endif /* QUANT_2PASS_SUPPORTED */
+ default:
+ ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
+ break;
+ }
+ post->starting_row = post->next_row = 0;
+}
+
+
+/*
+ * Process some data in the one-pass (strip buffer) case.
+ * This is used for color precision reduction as well as one-pass quantization.
+ */
+
+METHODDEF(void)
+post_process_1pass (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail)
+{
+ my_post_ptr post = (my_post_ptr) cinfo->post;
+ JDIMENSION num_rows, max_rows;
+
+ /* Fill the buffer, but not more than what we can dump out in one go. */
+ /* Note we rely on the upsampler to detect bottom of image. */
+ max_rows = out_rows_avail - *out_row_ctr;
+ if (max_rows > post->strip_height)
+ max_rows = post->strip_height;
+ num_rows = 0;
+ (*cinfo->upsample->upsample) (cinfo,
+ input_buf, in_row_group_ctr, in_row_groups_avail,
+ post->buffer, &num_rows, max_rows);
+ /* Quantize and emit data. */
+ (*cinfo->cquantize->color_quantize) (cinfo,
+ post->buffer, output_buf + *out_row_ctr, (int) num_rows);
+ *out_row_ctr += num_rows;
+}
+
+
+#ifdef QUANT_2PASS_SUPPORTED
+
+/*
+ * Process some data in the first pass of 2-pass quantization.
+ */
+
+METHODDEF(void)
+post_process_prepass (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail)
+{
+ my_post_ptr post = (my_post_ptr) cinfo->post;
+ JDIMENSION old_next_row, num_rows;
+
+ GUI_USE_PARA(out_rows_avail);
+ GUI_USE_PARA(output_buf);
+ /* Reposition virtual buffer if at start of strip. */
+ if (post->next_row == 0) {
+ post->buffer = (*cinfo->mem->access_virt_sarray)
+ ((j_common_ptr) cinfo, post->whole_image,
+ post->starting_row, post->strip_height, TRUE);
+ }
+
+ /* Upsample some data (up to a strip height's worth). */
+ old_next_row = post->next_row;
+ (*cinfo->upsample->upsample) (cinfo,
+ input_buf, in_row_group_ctr, in_row_groups_avail,
+ post->buffer, &post->next_row, post->strip_height);
+
+ /* Allow quantizer to scan new data. No data is emitted, */
+ /* but we advance out_row_ctr so outer loop can tell when we're done. */
+ if (post->next_row > old_next_row) {
+ num_rows = post->next_row - old_next_row;
+ (*cinfo->cquantize->color_quantize) (cinfo, post->buffer + old_next_row,
+ (JSAMPARRAY) NULL, (int) num_rows);
+ *out_row_ctr += num_rows;
+ }
+
+ /* Advance if we filled the strip. */
+ if (post->next_row >= post->strip_height) {
+ post->starting_row += post->strip_height;
+ post->next_row = 0;
+ }
+}
+
+
+/*
+ * Process some data in the second pass of 2-pass quantization.
+ */
+
+METHODDEF(void)
+post_process_2pass (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail)
+{
+ my_post_ptr post = (my_post_ptr) cinfo->post;
+ JDIMENSION num_rows, max_rows;
+
+ GUI_USE_PARA(in_row_groups_avail);
+ GUI_USE_PARA(in_row_group_ctr);
+ GUI_USE_PARA(input_buf);
+ /* Reposition virtual buffer if at start of strip. */
+ if (post->next_row == 0) {
+ post->buffer = (*cinfo->mem->access_virt_sarray)
+ ((j_common_ptr) cinfo, post->whole_image,
+ post->starting_row, post->strip_height, FALSE);
+ }
+
+ /* Determine number of rows to emit. */
+ num_rows = post->strip_height - post->next_row; /* available in strip */
+ max_rows = out_rows_avail - *out_row_ctr; /* available in output area */
+ if (num_rows > max_rows)
+ num_rows = max_rows;
+ /* We have to check bottom of image here, can't depend on upsampler. */
+ max_rows = cinfo->output_height - post->starting_row;
+ if (num_rows > max_rows)
+ num_rows = max_rows;
+
+ /* Quantize and emit data. */
+ (*cinfo->cquantize->color_quantize) (cinfo,
+ post->buffer + post->next_row, output_buf + *out_row_ctr,
+ (int) num_rows);
+ *out_row_ctr += num_rows;
+
+ /* Advance if we filled the strip. */
+ post->next_row += num_rows;
+ if (post->next_row >= post->strip_height) {
+ post->starting_row += post->strip_height;
+ post->next_row = 0;
+ }
+}
+
+#endif /* QUANT_2PASS_SUPPORTED */
+
+
+/*
+ * Initialize postprocessing controller.
+ */
+
+GLOBAL(void)
+jinit_d_post_controller (j_decompress_ptr cinfo, boolean need_full_buffer)
+{
+ my_post_ptr post;
+
+ post = (my_post_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(my_post_controller));
+ cinfo->post = (struct jpeg_d_post_controller *) post;
+ post->pub.start_pass = start_pass_dpost;
+ post->whole_image = NULL; /* flag for no virtual arrays */
+ post->buffer = NULL; /* flag for no strip buffer */
+
+ /* Create the quantization buffer, if needed */
+ if (cinfo->quantize_colors) {
+ /* The buffer strip height is max_v_samp_factor, which is typically
+ * an efficient number of rows for upsampling to return.
+ * (In the presence of output rescaling, we might want to be smarter?)
+ */
+ post->strip_height = (JDIMENSION) cinfo->max_v_samp_factor;
+ if (need_full_buffer) {
+ /* Two-pass color quantization: need full-image storage. */
+ /* We round up the number of rows to a multiple of the strip height. */
+#ifdef QUANT_2PASS_SUPPORTED
+ post->whole_image = (*cinfo->mem->request_virt_sarray)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE, FALSE,
+ cinfo->output_width * cinfo->out_color_components,
+ (JDIMENSION) jround_up((long) cinfo->output_height,
+ (long) post->strip_height),
+ post->strip_height);
+#else
+ ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
+#endif /* QUANT_2PASS_SUPPORTED */
+ } else {
+ /* One-pass color quantization: just make a strip buffer. */
+ post->buffer = (*cinfo->mem->alloc_sarray)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ cinfo->output_width * cinfo->out_color_components,
+ post->strip_height);
+ }
+ }
+}
diff --git a/User/lib/lcd/gui/JPEG/jdsample.c b/User/lib/lcd/gui/JPEG/jdsample.c
new file mode 100644
index 0000000..03b4e41
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdsample.c
@@ -0,0 +1,486 @@
+/*
+ * jdsample.c
+ *
+ * Copyright (C) 1991-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains upsampling routines.
+ *
+ * Upsampling input data is counted in "row groups". A row group
+ * is defined to be (v_samp_factor * DCT_scaled_size / min_DCT_scaled_size)
+ * sample rows of each component. Upsampling will normally produce
+ * max_v_samp_factor pixel rows from each row group (but this could vary
+ * if the upsampler is applying a scale factor of its own).
+ *
+ * An excellent reference for image resampling is
+ * Digital Image Warping, George Wolberg, 1990.
+ * Pub. by IEEE Computer Society Press, Los Alamitos, CA. ISBN 0-8186-8944-7.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/* Pointer to routine to upsample a single component */
+typedef JMETHOD(void, upsample1_ptr,
+ (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr));
+
+/* Private subobject */
+
+typedef struct {
+ struct jpeg_upsampler pub; /* public fields */
+
+ /* Color conversion buffer. When using separate upsampling and color
+ * conversion steps, this buffer holds one upsampled row group until it
+ * has been color converted and output.
+ * Note: we do not allocate any storage for component(s) which are full-size,
+ * ie do not need rescaling. The corresponding entry of color_buf[] is
+ * simply set to point to the input data array, thereby avoiding copying.
+ */
+ JSAMPARRAY color_buf[MAX_COMPONENTS];
+
+ /* Per-component upsampling method pointers */
+ upsample1_ptr methods[MAX_COMPONENTS];
+
+ int next_row_out; /* counts rows emitted from color_buf */
+ JDIMENSION rows_to_go; /* counts rows remaining in image */
+
+ /* Height of an input row group for each component. */
+ int rowgroup_height[MAX_COMPONENTS];
+
+ /* These arrays save pixel expansion factors so that int_expand need not
+ * recompute them each time. They are unused for other upsampling methods.
+ */
+ UINT8 h_expand[MAX_COMPONENTS];
+ UINT8 v_expand[MAX_COMPONENTS];
+} my_upsampler;
+
+typedef my_upsampler * my_upsample_ptr;
+
+
+/*
+ * Initialize for an upsampling pass.
+ */
+
+METHODDEF(void)
+start_pass_upsample (j_decompress_ptr cinfo)
+{
+ my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
+
+ /* Mark the conversion buffer empty */
+ upsample->next_row_out = cinfo->max_v_samp_factor;
+ /* Initialize total-height counter for detecting bottom of image */
+ upsample->rows_to_go = cinfo->output_height;
+}
+
+
+/*
+ * Control routine to do upsampling (and color conversion).
+ *
+ * In this version we upsample each component independently.
+ * We upsample one row group into the conversion buffer, then apply
+ * color conversion a row at a time.
+ */
+
+METHODDEF(void)
+sep_upsample (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail)
+{
+ my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
+ int ci;
+ jpeg_component_info * compptr;
+ JDIMENSION num_rows;
+
+ GUI_USE_PARA(in_row_groups_avail);
+ /* Fill the conversion buffer, if it's empty */
+ if (upsample->next_row_out >= cinfo->max_v_samp_factor) {
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ /* Invoke per-component upsample method. Notice we pass a POINTER
+ * to color_buf[ci], so that fullsize_upsample can change it.
+ */
+ (*upsample->methods[ci]) (cinfo, compptr,
+ input_buf[ci] + (*in_row_group_ctr * upsample->rowgroup_height[ci]),
+ upsample->color_buf + ci);
+ }
+ upsample->next_row_out = 0;
+ }
+
+ /* Color-convert and emit rows */
+
+ /* How many we have in the buffer: */
+ num_rows = (JDIMENSION) (cinfo->max_v_samp_factor - upsample->next_row_out);
+ /* Not more than the distance to the end of the image. Need this test
+ * in case the image height is not a multiple of max_v_samp_factor:
+ */
+ if (num_rows > upsample->rows_to_go)
+ num_rows = upsample->rows_to_go;
+ /* And not more than what the client can accept: */
+ out_rows_avail -= *out_row_ctr;
+ if (num_rows > out_rows_avail)
+ num_rows = out_rows_avail;
+
+ (*cinfo->cconvert->color_convert) (cinfo, upsample->color_buf,
+ (JDIMENSION) upsample->next_row_out,
+ output_buf + *out_row_ctr,
+ (int) num_rows);
+
+ /* Adjust counts */
+ *out_row_ctr += num_rows;
+ upsample->rows_to_go -= num_rows;
+ upsample->next_row_out += num_rows;
+ /* When the buffer is emptied, declare this input row group consumed */
+ if (upsample->next_row_out >= cinfo->max_v_samp_factor)
+ (*in_row_group_ctr)++;
+}
+
+
+/*
+ * These are the routines invoked by sep_upsample to upsample pixel values
+ * of a single component. One row group is processed per call.
+ */
+
+
+/*
+ * For full-size components, we just make color_buf[ci] point at the
+ * input buffer, and thus avoid copying any data. Note that this is
+ * safe only because sep_upsample doesn't declare the input row group
+ * "consumed" until we are done color converting and emitting it.
+ */
+
+METHODDEF(void)
+fullsize_upsample (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr)
+{
+ GUI_USE_PARA(compptr);
+ GUI_USE_PARA(cinfo);
+ *output_data_ptr = input_data;
+}
+
+
+/*
+ * This is a no-op version used for "uninteresting" components.
+ * These components will not be referenced by color conversion.
+ */
+
+METHODDEF(void)
+noop_upsample (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr)
+{
+ GUI_USE_PARA(cinfo);
+ GUI_USE_PARA(compptr);
+ GUI_USE_PARA(input_data);
+ *output_data_ptr = NULL; /* safety check */
+}
+
+
+/*
+ * This version handles any integral sampling ratios.
+ * This is not used for typical JPEG files, so it need not be fast.
+ * Nor, for that matter, is it particularly accurate: the algorithm is
+ * simple replication of the input pixel onto the corresponding output
+ * pixels. The hi-falutin sampling literature refers to this as a
+ * "box filter". A box filter tends to introduce visible artifacts,
+ * so if you are actually going to use 3:1 or 4:1 sampling ratios
+ * you would be well advised to improve this code.
+ */
+
+METHODDEF(void)
+int_upsample (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr)
+{
+ my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
+ JSAMPARRAY output_data = *output_data_ptr;
+ register JSAMPROW inptr, outptr;
+ register JSAMPLE invalue;
+ register int h;
+ JSAMPROW outend;
+ int h_expand, v_expand;
+ int inrow, outrow;
+
+ h_expand = upsample->h_expand[compptr->component_index];
+ v_expand = upsample->v_expand[compptr->component_index];
+
+ inrow = outrow = 0;
+ while (outrow < cinfo->max_v_samp_factor) {
+ /* Generate one output row with proper horizontal expansion */
+ inptr = input_data[inrow];
+ outptr = output_data[outrow];
+ outend = outptr + cinfo->output_width;
+ while (outptr < outend) {
+ invalue = *inptr++; /* don't need GETJSAMPLE() here */
+ for (h = h_expand; h > 0; h--) {
+ *outptr++ = invalue;
+ }
+ }
+ /* Generate any additional output rows by duplicating the first one */
+ if (v_expand > 1) {
+ jcopy_sample_rows(output_data, outrow, output_data, outrow+1,
+ v_expand-1, cinfo->output_width);
+ }
+ inrow++;
+ outrow += v_expand;
+ }
+}
+
+
+/*
+ * Fast processing for the common case of 2:1 horizontal and 1:1 vertical.
+ * It's still a box filter.
+ */
+
+METHODDEF(void)
+h2v1_upsample (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr)
+{
+ JSAMPARRAY output_data = *output_data_ptr;
+ register JSAMPROW inptr, outptr;
+ register JSAMPLE invalue;
+ JSAMPROW outend;
+ int inrow;
+
+ GUI_USE_PARA(compptr);
+ for (inrow = 0; inrow < cinfo->max_v_samp_factor; inrow++) {
+ inptr = input_data[inrow];
+ outptr = output_data[inrow];
+ outend = outptr + cinfo->output_width;
+ while (outptr < outend) {
+ invalue = *inptr++; /* don't need GETJSAMPLE() here */
+ *outptr++ = invalue;
+ *outptr++ = invalue;
+ }
+ }
+}
+
+
+/*
+ * Fast processing for the common case of 2:1 horizontal and 2:1 vertical.
+ * It's still a box filter.
+ */
+
+METHODDEF(void)
+h2v2_upsample (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr)
+{
+ JSAMPARRAY output_data = *output_data_ptr;
+ register JSAMPROW inptr, outptr;
+ register JSAMPLE invalue;
+ JSAMPROW outend;
+ int inrow, outrow;
+
+ GUI_USE_PARA(compptr);
+ inrow = outrow = 0;
+ while (outrow < cinfo->max_v_samp_factor) {
+ inptr = input_data[inrow];
+ outptr = output_data[outrow];
+ outend = outptr + cinfo->output_width;
+ while (outptr < outend) {
+ invalue = *inptr++; /* don't need GETJSAMPLE() here */
+ *outptr++ = invalue;
+ *outptr++ = invalue;
+ }
+ jcopy_sample_rows(output_data, outrow, output_data, outrow+1,
+ 1, cinfo->output_width);
+ inrow++;
+ outrow += 2;
+ }
+}
+
+
+/*
+ * Fancy processing for the common case of 2:1 horizontal and 1:1 vertical.
+ *
+ * The upsampling algorithm is linear interpolation between pixel centers,
+ * also known as a "triangle filter". This is a good compromise between
+ * speed and visual quality. The centers of the output pixels are 1/4 and 3/4
+ * of the way between input pixel centers.
+ *
+ * A note about the "bias" calculations: when rounding fractional values to
+ * integer, we do not want to always round 0.5 up to the next integer.
+ * If we did that, we'd introduce a noticeable bias towards larger values.
+ * Instead, this code is arranged so that 0.5 will be rounded up or down at
+ * alternate pixel locations (a simple ordered dither pattern).
+ */
+
+METHODDEF(void)
+h2v1_fancy_upsample (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr)
+{
+ JSAMPARRAY output_data = *output_data_ptr;
+ register JSAMPROW inptr, outptr;
+ register int invalue;
+ register JDIMENSION colctr;
+ int inrow;
+
+ for (inrow = 0; inrow < cinfo->max_v_samp_factor; inrow++) {
+ inptr = input_data[inrow];
+ outptr = output_data[inrow];
+ /* Special case for first column */
+ invalue = GETJSAMPLE(*inptr++);
+ *outptr++ = (JSAMPLE) invalue;
+ *outptr++ = (JSAMPLE) ((invalue * 3 + GETJSAMPLE(*inptr) + 2) >> 2);
+
+ for (colctr = compptr->downsampled_width - 2; colctr > 0; colctr--) {
+ /* General case: 3/4 * nearer pixel + 1/4 * further pixel */
+ invalue = GETJSAMPLE(*inptr++) * 3;
+ *outptr++ = (JSAMPLE) ((invalue + GETJSAMPLE(inptr[-2]) + 1) >> 2);
+ *outptr++ = (JSAMPLE) ((invalue + GETJSAMPLE(*inptr) + 2) >> 2);
+ }
+
+ /* Special case for last column */
+ invalue = GETJSAMPLE(*inptr);
+ *outptr++ = (JSAMPLE) ((invalue * 3 + GETJSAMPLE(inptr[-1]) + 1) >> 2);
+ *outptr = (JSAMPLE) invalue;
+ }
+}
+
+
+/*
+ * Fancy processing for the common case of 2:1 horizontal and 2:1 vertical.
+ * Again a triangle filter; see comments for h2v1 case, above.
+ *
+ * It is OK for us to reference the adjacent input rows because we demanded
+ * context from the main buffer controller (see initialization code).
+ */
+
+METHODDEF(void)
+h2v2_fancy_upsample (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr)
+{
+ JSAMPARRAY output_data = *output_data_ptr;
+ register JSAMPROW inptr0, inptr1, outptr;
+#if BITS_IN_JSAMPLE == 8
+ register int thiscolsum, lastcolsum, nextcolsum;
+#else
+ register INT32 thiscolsum, lastcolsum, nextcolsum;
+#endif
+ register JDIMENSION colctr;
+ int inrow, outrow, v;
+
+ inrow = outrow = 0;
+ while (outrow < cinfo->max_v_samp_factor) {
+ for (v = 0; v < 2; v++) {
+ /* inptr0 points to nearest input row, inptr1 points to next nearest */
+ inptr0 = input_data[inrow];
+ if (v == 0) /* next nearest is row above */
+ inptr1 = input_data[inrow-1];
+ else /* next nearest is row below */
+ inptr1 = input_data[inrow+1];
+ outptr = output_data[outrow++];
+
+ /* Special case for first column */
+ thiscolsum = GETJSAMPLE(*inptr0++) * 3 + GETJSAMPLE(*inptr1++);
+ nextcolsum = GETJSAMPLE(*inptr0++) * 3 + GETJSAMPLE(*inptr1++);
+ *outptr++ = (JSAMPLE) ((thiscolsum * 4 + 8) >> 4);
+ *outptr++ = (JSAMPLE) ((thiscolsum * 3 + nextcolsum + 7) >> 4);
+ lastcolsum = thiscolsum; thiscolsum = nextcolsum;
+
+ for (colctr = compptr->downsampled_width - 2; colctr > 0; colctr--) {
+ /* General case: 3/4 * nearer pixel + 1/4 * further pixel in each */
+ /* dimension, thus 9/16, 3/16, 3/16, 1/16 overall */
+ nextcolsum = GETJSAMPLE(*inptr0++) * 3 + GETJSAMPLE(*inptr1++);
+ *outptr++ = (JSAMPLE) ((thiscolsum * 3 + lastcolsum + 8) >> 4);
+ *outptr++ = (JSAMPLE) ((thiscolsum * 3 + nextcolsum + 7) >> 4);
+ lastcolsum = thiscolsum; thiscolsum = nextcolsum;
+ }
+
+ /* Special case for last column */
+ *outptr++ = (JSAMPLE) ((thiscolsum * 3 + lastcolsum + 8) >> 4);
+ *outptr = (JSAMPLE) ((thiscolsum * 4 + 7) >> 4);
+ }
+ inrow++;
+ }
+}
+
+
+/*
+ * Module initialization routine for upsampling.
+ */
+
+GLOBAL(void)
+jinit_upsampler (j_decompress_ptr cinfo)
+{
+ my_upsample_ptr upsample;
+ int ci;
+ jpeg_component_info * compptr;
+ boolean need_buffer, do_fancy;
+ int h_in_group, v_in_group, h_out_group, v_out_group;
+
+ upsample = (my_upsample_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(my_upsampler));
+ cinfo->upsample = (struct jpeg_upsampler *) upsample;
+ upsample->pub.start_pass = start_pass_upsample;
+ upsample->pub.upsample = sep_upsample;
+ upsample->pub.need_context_rows = FALSE; /* until we find out differently */
+
+ if (cinfo->CCIR601_sampling) /* this isn't supported */
+ ERREXIT(cinfo, JERR_CCIR601_NOTIMPL);
+
+ /* jdmainct.c doesn't support context rows when min_DCT_scaled_size = 1,
+ * so don't ask for it.
+ */
+ do_fancy = cinfo->do_fancy_upsampling && cinfo->min_DCT_scaled_size > 1;
+
+ /* Verify we can handle the sampling factors, select per-component methods,
+ * and create storage as needed.
+ */
+ for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components;
+ ci++, compptr++) {
+ /* Compute size of an "input group" after IDCT scaling. This many samples
+ * are to be converted to max_h_samp_factor * max_v_samp_factor pixels.
+ */
+ h_in_group = (compptr->h_samp_factor * compptr->DCT_scaled_size) /
+ cinfo->min_DCT_scaled_size;
+ v_in_group = (compptr->v_samp_factor * compptr->DCT_scaled_size) /
+ cinfo->min_DCT_scaled_size;
+ h_out_group = cinfo->max_h_samp_factor;
+ v_out_group = cinfo->max_v_samp_factor;
+ upsample->rowgroup_height[ci] = v_in_group; /* save for use later */
+ need_buffer = TRUE;
+ if (! compptr->component_needed) {
+ /* Don't bother to upsample an uninteresting component. */
+ upsample->methods[ci] = noop_upsample;
+ need_buffer = FALSE;
+ } else if (h_in_group == h_out_group && v_in_group == v_out_group) {
+ /* Fullsize components can be processed without any work. */
+ upsample->methods[ci] = fullsize_upsample;
+ need_buffer = FALSE;
+ } else if (h_in_group * 2 == h_out_group &&
+ v_in_group == v_out_group) {
+ /* Special cases for 2h1v upsampling */
+ if (do_fancy && compptr->downsampled_width > 2)
+ upsample->methods[ci] = h2v1_fancy_upsample;
+ else
+ upsample->methods[ci] = h2v1_upsample;
+ } else if (h_in_group * 2 == h_out_group &&
+ v_in_group * 2 == v_out_group) {
+ /* Special cases for 2h2v upsampling */
+ if (do_fancy && compptr->downsampled_width > 2) {
+ upsample->methods[ci] = h2v2_fancy_upsample;
+ upsample->pub.need_context_rows = TRUE;
+ } else
+ upsample->methods[ci] = h2v2_upsample;
+ } else if ((h_out_group % h_in_group) == 0 &&
+ (v_out_group % v_in_group) == 0) {
+ /* Generic integral-factors upsampling method */
+ upsample->methods[ci] = int_upsample;
+ upsample->h_expand[ci] = (UINT8) (h_out_group / h_in_group);
+ upsample->v_expand[ci] = (UINT8) (v_out_group / v_in_group);
+ } else
+ ERREXIT(cinfo, JERR_FRACT_SAMPLE_NOTIMPL);
+ if (need_buffer) {
+ upsample->color_buf[ci] = (*cinfo->mem->alloc_sarray)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (JDIMENSION) jround_up((long) cinfo->output_width,
+ (long) cinfo->max_h_samp_factor),
+ (JDIMENSION) cinfo->max_v_samp_factor);
+ }
+ }
+}
diff --git a/User/lib/lcd/gui/JPEG/jdtrans.c b/User/lib/lcd/gui/JPEG/jdtrans.c
new file mode 100644
index 0000000..e0e3f15
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jdtrans.c
@@ -0,0 +1,143 @@
+/*
+ * jdtrans.c
+ *
+ * Copyright (C) 1995-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains library routines for transcoding decompression,
+ * that is, reading raw DCT coefficient arrays from an input JPEG file.
+ * The routines in jdapimin.c will also be needed by a transcoder.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+
+/* Forward declarations */
+LOCAL(void) transdecode_master_selection JPP((j_decompress_ptr cinfo));
+
+
+/*
+ * Read the coefficient arrays from a JPEG file.
+ * jpeg_read_header must be completed before calling this.
+ *
+ * The entire image is read into a set of virtual coefficient-block arrays,
+ * one per component. The return value is a pointer to the array of
+ * virtual-array descriptors. These can be manipulated directly via the
+ * JPEG memory manager, or handed off to jpeg_write_coefficients().
+ * To release the memory occupied by the virtual arrays, call
+ * jpeg_finish_decompress() when done with the data.
+ *
+ * An alternative usage is to simply obtain access to the coefficient arrays
+ * during a buffered-image-mode decompression operation. This is allowed
+ * after any jpeg_finish_output() call. The arrays can be accessed until
+ * jpeg_finish_decompress() is called. (Note that any call to the library
+ * may reposition the arrays, so don't rely on access_virt_barray() results
+ * to stay valid across library calls.)
+ *
+ * Returns NULL if suspended. This case need be checked only if
+ * a suspending data source is used.
+ */
+
+GLOBAL(jvirt_barray_ptr *)
+jpeg_read_coefficients (j_decompress_ptr cinfo)
+{
+ if (cinfo->global_state == DSTATE_READY) {
+ /* First call: initialize active modules */
+ transdecode_master_selection(cinfo);
+ cinfo->global_state = DSTATE_RDCOEFS;
+ }
+ if (cinfo->global_state == DSTATE_RDCOEFS) {
+ /* Absorb whole file into the coef buffer */
+ while(1) {
+ int retcode;
+ /* Call progress monitor hook if present */
+ if (cinfo->progress != NULL)
+ (*cinfo->progress->progress_monitor) ((j_common_ptr) cinfo);
+ /* Absorb some more input */
+ retcode = (*cinfo->inputctl->consume_input) (cinfo);
+ if (retcode == JPEG_SUSPENDED)
+ return NULL;
+ if (retcode == JPEG_REACHED_EOI)
+ break;
+ /* Advance progress counter if appropriate */
+ if (cinfo->progress != NULL &&
+ (retcode == JPEG_ROW_COMPLETED || retcode == JPEG_REACHED_SOS)) {
+ if (++cinfo->progress->pass_counter >= cinfo->progress->pass_limit) {
+ /* startup underestimated number of scans; ratchet up one scan */
+ cinfo->progress->pass_limit += (long) cinfo->total_iMCU_rows;
+ }
+ }
+ }
+ /* Set state so that jpeg_finish_decompress does the right thing */
+ cinfo->global_state = DSTATE_STOPPING;
+ }
+ /* At this point we should be in state DSTATE_STOPPING if being used
+ * standalone, or in state DSTATE_BUFIMAGE if being invoked to get access
+ * to the coefficients during a full buffered-image-mode decompression.
+ */
+ if ((cinfo->global_state == DSTATE_STOPPING ||
+ cinfo->global_state == DSTATE_BUFIMAGE) && cinfo->buffered_image) {
+ return cinfo->coef->coef_arrays;
+ }
+ /* Oops, improper usage */
+ ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
+ return NULL; /* keep compiler happy */
+}
+
+
+/*
+ * Master selection of decompression modules for transcoding.
+ * This substitutes for jdmaster.c's initialization of the full decompressor.
+ */
+
+LOCAL(void)
+transdecode_master_selection (j_decompress_ptr cinfo)
+{
+ /* This is effectively a buffered-image operation. */
+ cinfo->buffered_image = TRUE;
+
+ /* Entropy decoding: either Huffman or arithmetic coding. */
+ if (cinfo->arith_code) {
+ ERREXIT(cinfo, JERR_ARITH_NOTIMPL);
+ } else {
+ if (cinfo->progressive_mode) {
+#ifdef D_PROGRESSIVE_SUPPORTED
+ jinit_phuff_decoder(cinfo);
+#else
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+#endif
+ } else
+ jinit_huff_decoder(cinfo);
+ }
+
+ /* Always get a full-image coefficient buffer. */
+ jinit_d_coef_controller(cinfo, TRUE);
+
+ /* We can now tell the memory manager to allocate virtual arrays. */
+ (*cinfo->mem->realize_virt_arrays) ((j_common_ptr) cinfo);
+
+ /* Initialize input side of decompressor to consume first scan. */
+ (*cinfo->inputctl->start_input_pass) (cinfo);
+
+ /* Initialize progress monitoring. */
+ if (cinfo->progress != NULL) {
+ int nscans;
+ /* Estimate number of scans to set pass_limit. */
+ if (cinfo->progressive_mode) {
+ /* Arbitrarily estimate 2 interleaved DC scans + 3 AC scans/component. */
+ nscans = 2 + 3 * cinfo->num_components;
+ } else if (cinfo->inputctl->has_multiple_scans) {
+ /* For a nonprogressive multiscan file, estimate 1 scan per component. */
+ nscans = cinfo->num_components;
+ } else {
+ nscans = 1;
+ }
+ cinfo->progress->pass_counter = 0L;
+ cinfo->progress->pass_limit = (long) cinfo->total_iMCU_rows * nscans;
+ cinfo->progress->completed_passes = 0;
+ cinfo->progress->total_passes = 1;
+ }
+}
diff --git a/User/lib/lcd/gui/JPEG/jerror.c b/User/lib/lcd/gui/JPEG/jerror.c
new file mode 100644
index 0000000..d3d1dd9
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jerror.c
@@ -0,0 +1,240 @@
+/*
+ * jerror.c
+ *
+ * Copyright (C) 1991-1998, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains simple error-reporting and trace-message routines.
+ * These are suitable for Unix-like systems and others where writing to
+ * stderr is the right thing to do. Many applications will want to replace
+ * some or all of these routines.
+ *
+ * If you define USE_WINDOWS_MESSAGEBOX in jconfig.h or in the makefile,
+ * you get a Windows-specific hack to display error messages in a dialog box.
+ * It ain't much, but it beats dropping error messages into the bit bucket,
+ * which is what happens to output to stderr under most Windows C compilers.
+ *
+ * These routines are used by both the compression and decompression code.
+ */
+
+/* this is not a core library module, so it doesn't define JPEG_INTERNALS */
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jversion.h"
+#include "jerror.h"
+
+#ifdef USE_WINDOWS_MESSAGEBOX
+#include
+#endif
+
+#ifndef EXIT_FAILURE /* define exit() codes if not provided */
+#define EXIT_FAILURE 1
+#endif
+
+
+/*
+ * Create the message string table.
+ * We do this from the master message list in jerror.h by re-reading
+ * jerror.h with a suitable definition for macro JMESSAGE.
+ * The message table is made an external symbol just in case any applications
+ * want to refer to it directly.
+ */
+
+
+#define JMESSAGE(code,string) string ,
+
+const char * const jpeg_std_message_table[] = {
+#include "jerror.h"
+ NULL
+};
+
+
+/*
+ * Error exit handler: must not return to caller.
+ *
+ * Applications may override this if they want to get control back after
+ * an error. Typically one would longjmp somewhere instead of exiting.
+ * The setjmp buffer can be made a private field within an expanded error
+ * handler object. Note that the info needed to generate an error message
+ * is stored in the error object, so you can generate the message now or
+ * later, at your convenience.
+ * You should make sure that the JPEG object is cleaned up (with jpeg_abort
+ * or jpeg_destroy) at some point.
+ */
+
+METHODDEF(void)
+error_exit (j_common_ptr cinfo)
+{
+ /* Always display the message */
+ (*cinfo->err->output_message) (cinfo);
+
+ /* Let the memory manager delete any temp files before we die */
+ jpeg_destroy(cinfo);
+
+ exit(EXIT_FAILURE);
+}
+
+
+/*
+ * Actual output of an error or trace message.
+ * Applications may override this method to send JPEG messages somewhere
+ * other than stderr.
+ *
+ * On Windows, printing to stderr is generally completely useless,
+ * so we provide optional code to produce an error-dialog popup.
+ * Most Windows applications will still prefer to override this routine,
+ * but if they don't, it'll do something at least marginally useful.
+ *
+ * NOTE: to use the library in an environment that doesn't support the
+ * C stdio library, you may have to delete the call to fprintf() entirely,
+ * not just not use this routine.
+ */
+
+METHODDEF(void)
+output_message (j_common_ptr cinfo)
+{
+ char buffer[JMSG_LENGTH_MAX];
+
+ /* Create the message */
+ (*cinfo->err->format_message) (cinfo, buffer);
+
+#ifdef USE_WINDOWS_MESSAGEBOX
+ /* Display it in a message dialog box */
+ MessageBox(GetActiveWindow(), buffer, "JPEG Library Error",
+ MB_OK | MB_ICONERROR);
+#else
+ /* Send it to stderr, adding a newline */
+ /* RS fprintf(stderr, "%s\n", buffer); */
+#endif
+}
+
+
+/*
+ * Decide whether to emit a trace or warning message.
+ * msg_level is one of:
+ * -1: recoverable corrupt-data warning, may want to abort.
+ * 0: important advisory messages (always display to user).
+ * 1: first level of tracing detail.
+ * 2,3,...: successively more detailed tracing messages.
+ * An application might override this method if it wanted to abort on warnings
+ * or change the policy about which messages to display.
+ */
+
+METHODDEF(void) emit_message (j_common_ptr cinfo, int msg_level) {
+ struct jpeg_error_mgr * err = cinfo->err;
+ if (msg_level < 0) {
+ /* It's a warning message. Since corrupt files may generate many warnings,
+ * the policy implemented here is to show only the first warning,
+ * unless trace_level >= 3.
+ */
+ if (err->num_warnings == 0 || err->trace_level >= 3)
+ (*err->output_message) (cinfo);
+ /* Always count warnings in num_warnings. */
+ err->num_warnings++;
+ } else {
+ /* It's a trace message. Show it if trace_level >= msg_level. */
+ if (err->trace_level >= msg_level)
+ (*err->output_message) (cinfo);
+ }
+}
+
+
+/*
+ * Format a message string for the most recent JPEG error or message.
+ * The message is stored into buffer, which should be at least JMSG_LENGTH_MAX
+ * characters. Note that no '\n' character is added to the string.
+ * Few applications should need to override this method.
+ */
+
+METHODDEF(void) format_message (j_common_ptr cinfo, char * buffer) {
+ struct jpeg_error_mgr * err = cinfo->err;
+ int msg_code = err->msg_code;
+ const char * msgtext = NULL;
+ const char * msgptr;
+ char ch;
+ boolean isstring;
+
+ /* Look up message string in proper table */
+ if (msg_code > 0 && msg_code <= err->last_jpeg_message) {
+ msgtext = err->jpeg_message_table[msg_code];
+ } else if (err->addon_message_table != NULL &&
+ msg_code >= err->first_addon_message &&
+ msg_code <= err->last_addon_message) {
+ msgtext = err->addon_message_table[msg_code - err->first_addon_message];
+ }
+
+ /* Defend against bogus message number */
+ if (msgtext == NULL) {
+ err->msg_parm.i[0] = msg_code;
+ msgtext = err->jpeg_message_table[0];
+ }
+
+ /* Check for string parameter, as indicated by %s in the message text */
+ isstring = FALSE;
+ msgptr = msgtext;
+ while ((ch = *msgptr++) != '\0') {
+ if (ch == '%') {
+ if (*msgptr == 's') isstring = TRUE;
+ break;
+ }
+ }
+
+ /* Format the message into the passed buffer */
+ if (isstring)
+ sprintf(buffer, msgtext, err->msg_parm.s);
+ else
+ sprintf(buffer, msgtext,
+ err->msg_parm.i[0], err->msg_parm.i[1],
+ err->msg_parm.i[2], err->msg_parm.i[3],
+ err->msg_parm.i[4], err->msg_parm.i[5],
+ err->msg_parm.i[6], err->msg_parm.i[7]);
+}
+
+
+/*
+ * Reset error state variables at start of a new image.
+ * This is called during compression startup to reset trace/error
+ * processing to default state, without losing any application-specific
+ * method pointers. An application might possibly want to override
+ * this method if it has additional error processing state.
+ */
+
+METHODDEF(void) reset_error_mgr (j_common_ptr cinfo) {
+ cinfo->err->num_warnings = 0;
+ /* trace_level is not reset since it is an application-supplied parameter */
+ cinfo->err->msg_code = 0; /* may be useful as a flag for "no error" */
+}
+
+
+/*
+ * Fill in the standard error-handling methods in a jpeg_error_mgr object.
+ * Typical call is:
+ * struct jpeg_compress_struct cinfo;
+ * struct jpeg_error_mgr err;
+ *
+ * cinfo.err = jpeg_std_error(&err);
+ * after which the application may override some of the methods.
+ */
+
+GLOBAL(struct jpeg_error_mgr *) jpeg_std_error (struct jpeg_error_mgr * err) {
+ err->error_exit = error_exit;
+ err->emit_message = emit_message;
+ err->output_message = output_message;
+ err->format_message = format_message;
+ err->reset_error_mgr = reset_error_mgr;
+
+ err->trace_level = 0; /* default = no tracing */
+ err->num_warnings = 0; /* no warnings emitted yet */
+ err->msg_code = 0; /* may be useful as a flag for "no error" */
+
+ /* Initialize message table pointers */
+ err->jpeg_message_table = jpeg_std_message_table;
+ err->last_jpeg_message = (int) JMSG_LASTMSGCODE - 1;
+
+ err->addon_message_table = NULL;
+ err->first_addon_message = 0; /* for safety */
+ err->last_addon_message = 0;
+
+ return err;
+}
diff --git a/User/lib/lcd/gui/JPEG/jerror.h b/User/lib/lcd/gui/JPEG/jerror.h
new file mode 100644
index 0000000..fc2fffe
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jerror.h
@@ -0,0 +1,291 @@
+/*
+ * jerror.h
+ *
+ * Copyright (C) 1994-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file defines the error and message codes for the JPEG library.
+ * Edit this file to add new codes, or to translate the message strings to
+ * some other language.
+ * A set of error-reporting macros are defined too. Some applications using
+ * the JPEG library may wish to include this file to get the error codes
+ * and/or the macros.
+ */
+
+/*
+ * To define the enum list of message codes, include this file without
+ * defining macro JMESSAGE. To create a message string table, include it
+ * again with a suitable JMESSAGE definition (see jerror.c for an example).
+ */
+#ifndef JMESSAGE
+#ifndef JERROR_H
+/* First time through, define the enum list */
+#define JMAKE_ENUM_LIST
+#else
+/* Repeated inclusions of this file are no-ops unless JMESSAGE is defined */
+#define JMESSAGE(code,string)
+#endif /* JERROR_H */
+#endif /* JMESSAGE */
+
+#ifdef JMAKE_ENUM_LIST
+
+typedef enum {
+
+#define JMESSAGE(code,string) code ,
+
+#endif /* JMAKE_ENUM_LIST */
+
+JMESSAGE(JMSG_NOMESSAGE, "Bogus message code %d") /* Must be first entry! */
+
+/* For maintenance convenience, list is alphabetical by message code name */
+JMESSAGE(JERR_ARITH_NOTIMPL,
+ "Sorry, there are legal restrictions on arithmetic coding")
+JMESSAGE(JERR_BAD_ALIGN_TYPE, "ALIGN_TYPE is wrong, please fix")
+JMESSAGE(JERR_BAD_ALLOC_CHUNK, "MAX_ALLOC_CHUNK is wrong, please fix")
+JMESSAGE(JERR_BAD_BUFFER_MODE, "Bogus buffer control mode")
+JMESSAGE(JERR_BAD_COMPONENT_ID, "Invalid component ID %d in SOS")
+JMESSAGE(JERR_BAD_DCT_COEF, "DCT coefficient out of range")
+JMESSAGE(JERR_BAD_DCTSIZE, "IDCT output block size %d not supported")
+JMESSAGE(JERR_BAD_HUFF_TABLE, "Bogus Huffman table definition")
+JMESSAGE(JERR_BAD_IN_COLORSPACE, "Bogus input colorspace")
+JMESSAGE(JERR_BAD_J_COLORSPACE, "Bogus JPEG colorspace")
+JMESSAGE(JERR_BAD_LENGTH, "Bogus marker length")
+JMESSAGE(JERR_BAD_LIB_VERSION,
+ "Wrong JPEG library version: library is %d, caller expects %d")
+JMESSAGE(JERR_BAD_MCU_SIZE, "Sampling factors too large for interleaved scan")
+JMESSAGE(JERR_BAD_POOL_ID, "Invalid memory pool code %d")
+JMESSAGE(JERR_BAD_PRECISION, "Unsupported JPEG data precision %d")
+JMESSAGE(JERR_BAD_PROGRESSION,
+ "Invalid progressive parameters Ss=%d Se=%d Ah=%d Al=%d")
+JMESSAGE(JERR_BAD_PROG_SCRIPT,
+ "Invalid progressive parameters at scan script entry %d")
+JMESSAGE(JERR_BAD_SAMPLING, "Bogus sampling factors")
+JMESSAGE(JERR_BAD_SCAN_SCRIPT, "Invalid scan script at entry %d")
+JMESSAGE(JERR_BAD_STATE, "Improper call to JPEG library in state %d")
+JMESSAGE(JERR_BAD_STRUCT_SIZE,
+ "JPEG parameter struct mismatch: library thinks size is %u, caller expects %u")
+JMESSAGE(JERR_BAD_VIRTUAL_ACCESS, "Bogus virtual array access")
+JMESSAGE(JERR_BUFFER_SIZE, "Buffer passed to JPEG library is too small")
+JMESSAGE(JERR_CANT_SUSPEND, "Suspension not allowed here")
+JMESSAGE(JERR_CCIR601_NOTIMPL, "CCIR601 sampling not implemented yet")
+JMESSAGE(JERR_COMPONENT_COUNT, "Too many color components: %d, max %d")
+JMESSAGE(JERR_CONVERSION_NOTIMPL, "Unsupported color conversion request")
+JMESSAGE(JERR_DAC_INDEX, "Bogus DAC index %d")
+JMESSAGE(JERR_DAC_VALUE, "Bogus DAC value 0x%x")
+JMESSAGE(JERR_DHT_INDEX, "Bogus DHT index %d")
+JMESSAGE(JERR_DQT_INDEX, "Bogus DQT index %d")
+JMESSAGE(JERR_EMPTY_IMAGE, "Empty JPEG image (DNL not supported)")
+JMESSAGE(JERR_EMS_READ, "Read from EMS failed")
+JMESSAGE(JERR_EMS_WRITE, "Write to EMS failed")
+JMESSAGE(JERR_EOI_EXPECTED, "Didn't expect more than one scan")
+JMESSAGE(JERR_FILE_READ, "Input file read error")
+JMESSAGE(JERR_FILE_WRITE, "Output file write error --- out of disk space?")
+JMESSAGE(JERR_FRACT_SAMPLE_NOTIMPL, "Fractional sampling not implemented yet")
+JMESSAGE(JERR_HUFF_CLEN_OVERFLOW, "Huffman code size table overflow")
+JMESSAGE(JERR_HUFF_MISSING_CODE, "Missing Huffman code table entry")
+JMESSAGE(JERR_IMAGE_TOO_BIG, "Maximum supported image dimension is %u pixels")
+JMESSAGE(JERR_INPUT_EMPTY, "Empty input file")
+JMESSAGE(JERR_INPUT_EOF, "Premature end of input file")
+JMESSAGE(JERR_MISMATCHED_QUANT_TABLE,
+ "Cannot transcode due to multiple use of quantization table %d")
+JMESSAGE(JERR_MISSING_DATA, "Scan script does not transmit all data")
+JMESSAGE(JERR_MODE_CHANGE, "Invalid color quantization mode change")
+JMESSAGE(JERR_NOTIMPL, "Not implemented yet")
+JMESSAGE(JERR_NOT_COMPILED, "Requested feature was omitted at compile time")
+JMESSAGE(JERR_NO_BACKING_STORE, "Backing store not supported")
+JMESSAGE(JERR_NO_HUFF_TABLE, "Huffman table 0x%02x was not defined")
+JMESSAGE(JERR_NO_IMAGE, "JPEG datastream contains no image")
+JMESSAGE(JERR_NO_QUANT_TABLE, "Quantization table 0x%02x was not defined")
+JMESSAGE(JERR_NO_SOI, "Not a JPEG file: starts with 0x%02x 0x%02x")
+JMESSAGE(JERR_OUT_OF_MEMORY, "Insufficient memory (case %d)")
+JMESSAGE(JERR_QUANT_COMPONENTS,
+ "Cannot quantize more than %d color components")
+JMESSAGE(JERR_QUANT_FEW_COLORS, "Cannot quantize to fewer than %d colors")
+JMESSAGE(JERR_QUANT_MANY_COLORS, "Cannot quantize to more than %d colors")
+JMESSAGE(JERR_SOF_DUPLICATE, "Invalid JPEG file structure: two SOF markers")
+JMESSAGE(JERR_SOF_NO_SOS, "Invalid JPEG file structure: missing SOS marker")
+JMESSAGE(JERR_SOF_UNSUPPORTED, "Unsupported JPEG process: SOF type 0x%02x")
+JMESSAGE(JERR_SOI_DUPLICATE, "Invalid JPEG file structure: two SOI markers")
+JMESSAGE(JERR_SOS_NO_SOF, "Invalid JPEG file structure: SOS before SOF")
+JMESSAGE(JERR_TFILE_CREATE, "Failed to create temporary file %s")
+JMESSAGE(JERR_TFILE_READ, "Read failed on temporary file")
+JMESSAGE(JERR_TFILE_SEEK, "Seek failed on temporary file")
+JMESSAGE(JERR_TFILE_WRITE,
+ "Write failed on temporary file --- out of disk space?")
+JMESSAGE(JERR_TOO_LITTLE_DATA, "Application transferred too few scanlines")
+JMESSAGE(JERR_UNKNOWN_MARKER, "Unsupported marker type 0x%02x")
+JMESSAGE(JERR_VIRTUAL_BUG, "Virtual array controller messed up")
+JMESSAGE(JERR_WIDTH_OVERFLOW, "Image too wide for this implementation")
+JMESSAGE(JERR_XMS_READ, "Read from XMS failed")
+JMESSAGE(JERR_XMS_WRITE, "Write to XMS failed")
+JMESSAGE(JMSG_COPYRIGHT, JCOPYRIGHT)
+JMESSAGE(JMSG_VERSION, JVERSION)
+JMESSAGE(JTRC_16BIT_TABLES,
+ "Caution: quantization tables are too coarse for baseline JPEG")
+JMESSAGE(JTRC_ADOBE,
+ "Adobe APP14 marker: version %d, flags 0x%04x 0x%04x, transform %d")
+JMESSAGE(JTRC_APP0, "Unknown APP0 marker (not JFIF), length %u")
+JMESSAGE(JTRC_APP14, "Unknown APP14 marker (not Adobe), length %u")
+JMESSAGE(JTRC_DAC, "Define Arithmetic Table 0x%02x: 0x%02x")
+JMESSAGE(JTRC_DHT, "Define Huffman Table 0x%02x")
+JMESSAGE(JTRC_DQT, "Define Quantization Table %d precision %d")
+JMESSAGE(JTRC_DRI, "Define Restart Interval %u")
+JMESSAGE(JTRC_EMS_CLOSE, "Freed EMS handle %u")
+JMESSAGE(JTRC_EMS_OPEN, "Obtained EMS handle %u")
+JMESSAGE(JTRC_EOI, "End Of Image")
+JMESSAGE(JTRC_HUFFBITS, " %3d %3d %3d %3d %3d %3d %3d %3d")
+JMESSAGE(JTRC_JFIF, "JFIF APP0 marker: version %d.%02d, density %dx%d %d")
+JMESSAGE(JTRC_JFIF_BADTHUMBNAILSIZE,
+ "Warning: thumbnail image size does not match data length %u")
+JMESSAGE(JTRC_JFIF_EXTENSION,
+ "JFIF extension marker: type 0x%02x, length %u")
+JMESSAGE(JTRC_JFIF_THUMBNAIL, " with %d x %d thumbnail image")
+JMESSAGE(JTRC_MISC_MARKER, "Miscellaneous marker 0x%02x, length %u")
+JMESSAGE(JTRC_PARMLESS_MARKER, "Unexpected marker 0x%02x")
+JMESSAGE(JTRC_QUANTVALS, " %4u %4u %4u %4u %4u %4u %4u %4u")
+JMESSAGE(JTRC_QUANT_3_NCOLORS, "Quantizing to %d = %d*%d*%d colors")
+JMESSAGE(JTRC_QUANT_NCOLORS, "Quantizing to %d colors")
+JMESSAGE(JTRC_QUANT_SELECTED, "Selected %d colors for quantization")
+JMESSAGE(JTRC_RECOVERY_ACTION, "At marker 0x%02x, recovery action %d")
+JMESSAGE(JTRC_RST, "RST%d")
+JMESSAGE(JTRC_SMOOTH_NOTIMPL,
+ "Smoothing not supported with nonstandard sampling ratios")
+JMESSAGE(JTRC_SOF, "Start Of Frame 0x%02x: width=%u, height=%u, components=%d")
+JMESSAGE(JTRC_SOF_COMPONENT, " Component %d: %dhx%dv q=%d")
+JMESSAGE(JTRC_SOI, "Start of Image")
+JMESSAGE(JTRC_SOS, "Start Of Scan: %d components")
+JMESSAGE(JTRC_SOS_COMPONENT, " Component %d: dc=%d ac=%d")
+JMESSAGE(JTRC_SOS_PARAMS, " Ss=%d, Se=%d, Ah=%d, Al=%d")
+JMESSAGE(JTRC_TFILE_CLOSE, "Closed temporary file %s")
+JMESSAGE(JTRC_TFILE_OPEN, "Opened temporary file %s")
+JMESSAGE(JTRC_THUMB_JPEG,
+ "JFIF extension marker: JPEG-compressed thumbnail image, length %u")
+JMESSAGE(JTRC_THUMB_PALETTE,
+ "JFIF extension marker: palette thumbnail image, length %u")
+JMESSAGE(JTRC_THUMB_RGB,
+ "JFIF extension marker: RGB thumbnail image, length %u")
+JMESSAGE(JTRC_UNKNOWN_IDS,
+ "Unrecognized component IDs %d %d %d, assuming YCbCr")
+JMESSAGE(JTRC_XMS_CLOSE, "Freed XMS handle %u")
+JMESSAGE(JTRC_XMS_OPEN, "Obtained XMS handle %u")
+JMESSAGE(JWRN_ADOBE_XFORM, "Unknown Adobe color transform code %d")
+JMESSAGE(JWRN_BOGUS_PROGRESSION,
+ "Inconsistent progression sequence for component %d coefficient %d")
+JMESSAGE(JWRN_EXTRANEOUS_DATA,
+ "Corrupt JPEG data: %u extraneous bytes before marker 0x%02x")
+JMESSAGE(JWRN_HIT_MARKER, "Corrupt JPEG data: premature end of data segment")
+JMESSAGE(JWRN_HUFF_BAD_CODE, "Corrupt JPEG data: bad Huffman code")
+JMESSAGE(JWRN_JFIF_MAJOR, "Warning: unknown JFIF revision number %d.%02d")
+JMESSAGE(JWRN_JPEG_EOF, "Premature end of JPEG file")
+JMESSAGE(JWRN_MUST_RESYNC,
+ "Corrupt JPEG data: found marker 0x%02x instead of RST%d")
+JMESSAGE(JWRN_NOT_SEQUENTIAL, "Invalid SOS parameters for sequential JPEG")
+JMESSAGE(JWRN_TOO_MUCH_DATA, "Application transferred too many scanlines")
+
+#ifdef JMAKE_ENUM_LIST
+
+ JMSG_LASTMSGCODE
+} J_MESSAGE_CODE;
+
+#undef JMAKE_ENUM_LIST
+#endif /* JMAKE_ENUM_LIST */
+
+/* Zap JMESSAGE macro so that future re-inclusions do nothing by default */
+#undef JMESSAGE
+
+
+#ifndef JERROR_H
+#define JERROR_H
+
+/* Macros to simplify using the error and trace message stuff */
+/* The first parameter is either type of cinfo pointer */
+
+/* Fatal errors (print message and exit) */
+#define ERREXIT(cinfo,code) \
+ ((cinfo)->err->msg_code = (code), \
+ (*(cinfo)->err->error_exit) ((j_common_ptr) (cinfo)))
+#define ERREXIT1(cinfo,code,p1) \
+ ((cinfo)->err->msg_code = (code), \
+ (cinfo)->err->msg_parm.i[0] = (p1), \
+ (*(cinfo)->err->error_exit) ((j_common_ptr) (cinfo)))
+#define ERREXIT2(cinfo,code,p1,p2) \
+ ((cinfo)->err->msg_code = (code), \
+ (cinfo)->err->msg_parm.i[0] = (p1), \
+ (cinfo)->err->msg_parm.i[1] = (p2), \
+ (*(cinfo)->err->error_exit) ((j_common_ptr) (cinfo)))
+#define ERREXIT3(cinfo,code,p1,p2,p3) \
+ ((cinfo)->err->msg_code = (code), \
+ (cinfo)->err->msg_parm.i[0] = (p1), \
+ (cinfo)->err->msg_parm.i[1] = (p2), \
+ (cinfo)->err->msg_parm.i[2] = (p3), \
+ (*(cinfo)->err->error_exit) ((j_common_ptr) (cinfo)))
+#define ERREXIT4(cinfo,code,p1,p2,p3,p4) \
+ ((cinfo)->err->msg_code = (code), \
+ (cinfo)->err->msg_parm.i[0] = (p1), \
+ (cinfo)->err->msg_parm.i[1] = (p2), \
+ (cinfo)->err->msg_parm.i[2] = (p3), \
+ (cinfo)->err->msg_parm.i[3] = (p4), \
+ (*(cinfo)->err->error_exit) ((j_common_ptr) (cinfo)))
+#define ERREXITS(cinfo,code,str) \
+ ((cinfo)->err->msg_code = (code), \
+ strncpy((cinfo)->err->msg_parm.s, (str), JMSG_STR_PARM_MAX), \
+ (*(cinfo)->err->error_exit) ((j_common_ptr) (cinfo)))
+
+#define MAKESTMT(stuff) do { stuff } while (0)
+
+/* Nonfatal errors (we can keep going, but the data is probably corrupt) */
+#define WARNMS(cinfo,code) \
+ ((cinfo)->err->msg_code = (code), \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), -1))
+#define WARNMS1(cinfo,code,p1) \
+ ((cinfo)->err->msg_code = (code), \
+ (cinfo)->err->msg_parm.i[0] = (p1), \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), -1))
+#define WARNMS2(cinfo,code,p1,p2) \
+ ((cinfo)->err->msg_code = (code), \
+ (cinfo)->err->msg_parm.i[0] = (p1), \
+ (cinfo)->err->msg_parm.i[1] = (p2), \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), -1))
+
+/* Informational/debugging messages */
+#define TRACEMS(cinfo,lvl,code) \
+ ((cinfo)->err->msg_code = (code), \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), (lvl)))
+#define TRACEMS1(cinfo,lvl,code,p1) \
+ ((cinfo)->err->msg_code = (code), \
+ (cinfo)->err->msg_parm.i[0] = (p1), \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), (lvl)))
+#define TRACEMS2(cinfo,lvl,code,p1,p2) \
+ ((cinfo)->err->msg_code = (code), \
+ (cinfo)->err->msg_parm.i[0] = (p1), \
+ (cinfo)->err->msg_parm.i[1] = (p2), \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), (lvl)))
+#define TRACEMS3(cinfo,lvl,code,p1,p2,p3) \
+ MAKESTMT(int * _mp = (cinfo)->err->msg_parm.i; \
+ _mp[0] = (p1); _mp[1] = (p2); _mp[2] = (p3); \
+ (cinfo)->err->msg_code = (code); \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), (lvl)); )
+#define TRACEMS4(cinfo,lvl,code,p1,p2,p3,p4) \
+ MAKESTMT(int * _mp = (cinfo)->err->msg_parm.i; \
+ _mp[0] = (p1); _mp[1] = (p2); _mp[2] = (p3); _mp[3] = (p4); \
+ (cinfo)->err->msg_code = (code); \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), (lvl)); )
+#define TRACEMS5(cinfo,lvl,code,p1,p2,p3,p4,p5) \
+ MAKESTMT(int * _mp = (cinfo)->err->msg_parm.i; \
+ _mp[0] = (p1); _mp[1] = (p2); _mp[2] = (p3); _mp[3] = (p4); \
+ _mp[4] = (p5); \
+ (cinfo)->err->msg_code = (code); \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), (lvl)); )
+#define TRACEMS8(cinfo,lvl,code,p1,p2,p3,p4,p5,p6,p7,p8) \
+ MAKESTMT(int * _mp = (cinfo)->err->msg_parm.i; \
+ _mp[0] = (p1); _mp[1] = (p2); _mp[2] = (p3); _mp[3] = (p4); \
+ _mp[4] = (p5); _mp[5] = (p6); _mp[6] = (p7); _mp[7] = (p8); \
+ (cinfo)->err->msg_code = (code); \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), (lvl)); )
+#define TRACEMSS(cinfo,lvl,code,str) \
+ ((cinfo)->err->msg_code = (code), \
+ strncpy((cinfo)->err->msg_parm.s, (str), JMSG_STR_PARM_MAX), \
+ (*(cinfo)->err->emit_message) ((j_common_ptr) (cinfo), (lvl)))
+
+#endif /* JERROR_H */
diff --git a/User/lib/lcd/gui/JPEG/jfdctflt.c b/User/lib/lcd/gui/JPEG/jfdctflt.c
new file mode 100644
index 0000000..8a70468
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jfdctflt.c
@@ -0,0 +1,171 @@
+/*
+ * jfdctflt.c
+ *
+ * Copyright (C) 1994-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains a floating-point implementation of the
+ * forward DCT (Discrete Cosine Transform).
+ *
+ * This implementation should be more accurate than either of the integer
+ * DCT implementations. However, it may not give the same results on all
+ * machines because of differences in roundoff behavior. Speed will depend
+ * on the hardware's floating point capacity.
+ *
+ * A 2-D DCT can be done by 1-D DCT on each row followed by 1-D DCT
+ * on each column. Direct algorithms are also available, but they are
+ * much more complex and seem not to be any faster when reduced to code.
+ *
+ * This implementation is based on Arai, Agui, and Nakajima's algorithm for
+ * scaled DCT. Their original paper (Trans. IEICE E-71(11):1095) is in
+ * Japanese, but the algorithm is described in the Pennebaker & Mitchell
+ * JPEG textbook (see REFERENCES section in file README). The following code
+ * is based directly on figure 4-8 in P&M.
+ * While an 8-point DCT cannot be done in less than 11 multiplies, it is
+ * possible to arrange the computation so that many of the multiplies are
+ * simple scalings of the final outputs. These multiplies can then be
+ * folded into the multiplications or divisions by the JPEG quantization
+ * table entries. The AA&N method leaves only 5 multiplies and 29 adds
+ * to be done in the DCT itself.
+ * The primary disadvantage of this method is that with a fixed-point
+ * implementation, accuracy is lost due to imprecise representation of the
+ * scaled quantization values. However, that problem does not arise if
+ * we use floating point arithmetic.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jdct.h" /* Private declarations for DCT subsystem */
+
+#ifdef DCT_FLOAT_SUPPORTED
+
+
+/*
+ * This module is specialized to the case DCTSIZE = 8.
+ */
+
+#if DCTSIZE != 8
+ Sorry, this code only copes with 8x8 DCTs. /* deliberate syntax err */
+#endif
+
+
+/*
+ * Perform the forward DCT on one block of samples.
+ */
+
+GLOBAL(void)
+jpeg_fdct_float (FAST_FLOAT * data)
+{
+ FAST_FLOAT tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
+ FAST_FLOAT tmp10, tmp11, tmp12, tmp13;
+ FAST_FLOAT z1, z2, z3, z4, z5, z11, z13;
+ FAST_FLOAT *dataptr;
+ int ctr;
+
+ /* Pass 1: process rows. */
+
+ dataptr = data;
+ for (ctr = DCTSIZE-1; ctr >= 0; ctr--) {
+ tmp0 = dataptr[0] + dataptr[7];
+ tmp7 = dataptr[0] - dataptr[7];
+ tmp1 = dataptr[1] + dataptr[6];
+ tmp6 = dataptr[1] - dataptr[6];
+ tmp2 = dataptr[2] + dataptr[5];
+ tmp5 = dataptr[2] - dataptr[5];
+ tmp3 = dataptr[3] + dataptr[4];
+ tmp4 = dataptr[3] - dataptr[4];
+
+ /* Even part */
+
+ tmp10 = tmp0 + tmp3; /* phase 2 */
+ tmp13 = tmp0 - tmp3;
+ tmp11 = tmp1 + tmp2;
+ tmp12 = tmp1 - tmp2;
+
+ dataptr[0] = tmp10 + tmp11; /* phase 3 */
+ dataptr[4] = tmp10 - tmp11;
+
+ z1 = (tmp12 + tmp13) * ((FAST_FLOAT) 0.707106781); /* c4 */
+ dataptr[2] = tmp13 + z1; /* phase 5 */
+ dataptr[6] = tmp13 - z1;
+
+ /* Odd part */
+
+ tmp10 = tmp4 + tmp5; /* phase 2 */
+ tmp11 = tmp5 + tmp6;
+ tmp12 = tmp6 + tmp7;
+
+ /* The rotator is modified from fig 4-8 to avoid extra negations. */
+ z5 = (tmp10 - tmp12) * ((FAST_FLOAT) 0.382683433); /* c6 */
+ z2 = ((FAST_FLOAT) 0.541196100) * tmp10 + z5; /* c2-c6 */
+ z4 = ((FAST_FLOAT) 1.306562965) * tmp12 + z5; /* c2+c6 */
+ z3 = tmp11 * ((FAST_FLOAT) 0.707106781); /* c4 */
+
+ z11 = tmp7 + z3; /* phase 5 */
+ z13 = tmp7 - z3;
+
+ dataptr[5] = z13 + z2; /* phase 6 */
+ dataptr[3] = z13 - z2;
+ dataptr[1] = z11 + z4;
+ dataptr[7] = z11 - z4;
+
+ dataptr += DCTSIZE; /* advance pointer to next row */
+ }
+
+ /* Pass 2: process columns. */
+
+ dataptr = data;
+ for (ctr = DCTSIZE-1; ctr >= 0; ctr--) {
+ tmp0 = dataptr[DCTSIZE*0] + dataptr[DCTSIZE*7];
+ tmp7 = dataptr[DCTSIZE*0] - dataptr[DCTSIZE*7];
+ tmp1 = dataptr[DCTSIZE*1] + dataptr[DCTSIZE*6];
+ tmp6 = dataptr[DCTSIZE*1] - dataptr[DCTSIZE*6];
+ tmp2 = dataptr[DCTSIZE*2] + dataptr[DCTSIZE*5];
+ tmp5 = dataptr[DCTSIZE*2] - dataptr[DCTSIZE*5];
+ tmp3 = dataptr[DCTSIZE*3] + dataptr[DCTSIZE*4];
+ tmp4 = dataptr[DCTSIZE*3] - dataptr[DCTSIZE*4];
+
+ /* Even part */
+
+ tmp10 = tmp0 + tmp3; /* phase 2 */
+ tmp13 = tmp0 - tmp3;
+ tmp11 = tmp1 + tmp2;
+ tmp12 = tmp1 - tmp2;
+
+ dataptr[DCTSIZE*0] = tmp10 + tmp11; /* phase 3 */
+ dataptr[DCTSIZE*4] = tmp10 - tmp11;
+
+ z1 = (tmp12 + tmp13) * ((FAST_FLOAT) 0.707106781); /* c4 */
+ dataptr[DCTSIZE*2] = tmp13 + z1; /* phase 5 */
+ dataptr[DCTSIZE*6] = tmp13 - z1;
+
+ /* Odd part */
+
+ tmp10 = tmp4 + tmp5; /* phase 2 */
+ tmp11 = tmp5 + tmp6;
+ tmp12 = tmp6 + tmp7;
+
+ /* The rotator is modified from fig 4-8 to avoid extra negations. */
+ z5 = (tmp10 - tmp12) * ((FAST_FLOAT) 0.382683433); /* c6 */
+ z2 = ((FAST_FLOAT) 0.541196100) * tmp10 + z5; /* c2-c6 */
+ z4 = ((FAST_FLOAT) 1.306562965) * tmp12 + z5; /* c2+c6 */
+ z3 = tmp11 * ((FAST_FLOAT) 0.707106781); /* c4 */
+
+ z11 = tmp7 + z3; /* phase 5 */
+ z13 = tmp7 - z3;
+
+ dataptr[DCTSIZE*5] = z13 + z2; /* phase 6 */
+ dataptr[DCTSIZE*3] = z13 - z2;
+ dataptr[DCTSIZE*1] = z11 + z4;
+ dataptr[DCTSIZE*7] = z11 - z4;
+
+ dataptr++; /* advance pointer to next column */
+ }
+}
+
+#else
+void jfdctflt_C(void);
+void jfdctflt_C(void) {} /* Avoid empty object files */
+#endif /* DCT_FLOAT_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jfdctfst.c b/User/lib/lcd/gui/JPEG/jfdctfst.c
new file mode 100644
index 0000000..ccb378a
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jfdctfst.c
@@ -0,0 +1,224 @@
+/*
+ * jfdctfst.c
+ *
+ * Copyright (C) 1994-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains a fast, not so accurate integer implementation of the
+ * forward DCT (Discrete Cosine Transform).
+ *
+ * A 2-D DCT can be done by 1-D DCT on each row followed by 1-D DCT
+ * on each column. Direct algorithms are also available, but they are
+ * much more complex and seem not to be any faster when reduced to code.
+ *
+ * This implementation is based on Arai, Agui, and Nakajima's algorithm for
+ * scaled DCT. Their original paper (Trans. IEICE E-71(11):1095) is in
+ * Japanese, but the algorithm is described in the Pennebaker & Mitchell
+ * JPEG textbook (see REFERENCES section in file README). The following code
+ * is based directly on figure 4-8 in P&M.
+ * While an 8-point DCT cannot be done in less than 11 multiplies, it is
+ * possible to arrange the computation so that many of the multiplies are
+ * simple scalings of the final outputs. These multiplies can then be
+ * folded into the multiplications or divisions by the JPEG quantization
+ * table entries. The AA&N method leaves only 5 multiplies and 29 adds
+ * to be done in the DCT itself.
+ * The primary disadvantage of this method is that with fixed-point math,
+ * accuracy is lost due to imprecise representation of the scaled
+ * quantization values. The smaller the quantization table entry, the less
+ * precise the scaled value, so this implementation does worse with high-
+ * quality-setting files than with low-quality ones.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jdct.h" /* Private declarations for DCT subsystem */
+
+#ifdef DCT_IFAST_SUPPORTED
+
+
+/*
+ * This module is specialized to the case DCTSIZE = 8.
+ */
+
+#if DCTSIZE != 8
+ Sorry, this code only copes with 8x8 DCTs. /* deliberate syntax err */
+#endif
+
+
+/* Scaling decisions are generally the same as in the LL&M algorithm;
+ * see jfdctint.c for more details. However, we choose to descale
+ * (right shift) multiplication products as soon as they are formed,
+ * rather than carrying additional fractional bits into subsequent additions.
+ * This compromises accuracy slightly, but it lets us save a few shifts.
+ * More importantly, 16-bit arithmetic is then adequate (for 8-bit samples)
+ * everywhere except in the multiplications proper; this saves a good deal
+ * of work on 16-bit-int machines.
+ *
+ * Again to save a few shifts, the intermediate results between pass 1 and
+ * pass 2 are not upscaled, but are represented only to integral precision.
+ *
+ * A final compromise is to represent the multiplicative constants to only
+ * 8 fractional bits, rather than 13. This saves some shifting work on some
+ * machines, and may also reduce the cost of multiplication (since there
+ * are fewer one-bits in the constants).
+ */
+
+#define CONST_BITS 8
+
+
+/* Some C compilers fail to reduce "FIX(constant)" at compile time, thus
+ * causing a lot of useless floating-point operations at run time.
+ * To get around this we use the following pre-calculated constants.
+ * If you change CONST_BITS you may want to add appropriate values.
+ * (With a reasonable C compiler, you can just rely on the FIX() macro...)
+ */
+
+#if CONST_BITS == 8
+#define FIX_0_382683433 ((INT32) 98) /* FIX(0.382683433) */
+#define FIX_0_541196100 ((INT32) 139) /* FIX(0.541196100) */
+#define FIX_0_707106781 ((INT32) 181) /* FIX(0.707106781) */
+#define FIX_1_306562965 ((INT32) 334) /* FIX(1.306562965) */
+#else
+#define FIX_0_382683433 FIX(0.382683433)
+#define FIX_0_541196100 FIX(0.541196100)
+#define FIX_0_707106781 FIX(0.707106781)
+#define FIX_1_306562965 FIX(1.306562965)
+#endif
+
+
+/* We can gain a little more speed, with a further compromise in accuracy,
+ * by omitting the addition in a descaling shift. This yields an incorrectly
+ * rounded result half the time...
+ */
+
+#ifndef USE_ACCURATE_ROUNDING
+#undef DESCALE
+#define DESCALE(x,n) RIGHT_SHIFT(x, n)
+#endif
+
+
+/* Multiply a DCTELEM variable by an INT32 constant, and immediately
+ * descale to yield a DCTELEM result.
+ */
+
+#define MULTIPLY(var,const) ((DCTELEM) DESCALE((var) * (const), CONST_BITS))
+
+
+/*
+ * Perform the forward DCT on one block of samples.
+ */
+
+GLOBAL(void)
+jpeg_fdct_ifast (DCTELEM * data)
+{
+ DCTELEM tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
+ DCTELEM tmp10, tmp11, tmp12, tmp13;
+ DCTELEM z1, z2, z3, z4, z5, z11, z13;
+ DCTELEM *dataptr;
+ int ctr;
+ SHIFT_TEMPS
+
+ /* Pass 1: process rows. */
+
+ dataptr = data;
+ for (ctr = DCTSIZE-1; ctr >= 0; ctr--) {
+ tmp0 = dataptr[0] + dataptr[7];
+ tmp7 = dataptr[0] - dataptr[7];
+ tmp1 = dataptr[1] + dataptr[6];
+ tmp6 = dataptr[1] - dataptr[6];
+ tmp2 = dataptr[2] + dataptr[5];
+ tmp5 = dataptr[2] - dataptr[5];
+ tmp3 = dataptr[3] + dataptr[4];
+ tmp4 = dataptr[3] - dataptr[4];
+
+ /* Even part */
+
+ tmp10 = tmp0 + tmp3; /* phase 2 */
+ tmp13 = tmp0 - tmp3;
+ tmp11 = tmp1 + tmp2;
+ tmp12 = tmp1 - tmp2;
+
+ dataptr[0] = tmp10 + tmp11; /* phase 3 */
+ dataptr[4] = tmp10 - tmp11;
+
+ z1 = MULTIPLY(tmp12 + tmp13, FIX_0_707106781); /* c4 */
+ dataptr[2] = tmp13 + z1; /* phase 5 */
+ dataptr[6] = tmp13 - z1;
+
+ /* Odd part */
+
+ tmp10 = tmp4 + tmp5; /* phase 2 */
+ tmp11 = tmp5 + tmp6;
+ tmp12 = tmp6 + tmp7;
+
+ /* The rotator is modified from fig 4-8 to avoid extra negations. */
+ z5 = MULTIPLY(tmp10 - tmp12, FIX_0_382683433); /* c6 */
+ z2 = MULTIPLY(tmp10, FIX_0_541196100) + z5; /* c2-c6 */
+ z4 = MULTIPLY(tmp12, FIX_1_306562965) + z5; /* c2+c6 */
+ z3 = MULTIPLY(tmp11, FIX_0_707106781); /* c4 */
+
+ z11 = tmp7 + z3; /* phase 5 */
+ z13 = tmp7 - z3;
+
+ dataptr[5] = z13 + z2; /* phase 6 */
+ dataptr[3] = z13 - z2;
+ dataptr[1] = z11 + z4;
+ dataptr[7] = z11 - z4;
+
+ dataptr += DCTSIZE; /* advance pointer to next row */
+ }
+
+ /* Pass 2: process columns. */
+
+ dataptr = data;
+ for (ctr = DCTSIZE-1; ctr >= 0; ctr--) {
+ tmp0 = dataptr[DCTSIZE*0] + dataptr[DCTSIZE*7];
+ tmp7 = dataptr[DCTSIZE*0] - dataptr[DCTSIZE*7];
+ tmp1 = dataptr[DCTSIZE*1] + dataptr[DCTSIZE*6];
+ tmp6 = dataptr[DCTSIZE*1] - dataptr[DCTSIZE*6];
+ tmp2 = dataptr[DCTSIZE*2] + dataptr[DCTSIZE*5];
+ tmp5 = dataptr[DCTSIZE*2] - dataptr[DCTSIZE*5];
+ tmp3 = dataptr[DCTSIZE*3] + dataptr[DCTSIZE*4];
+ tmp4 = dataptr[DCTSIZE*3] - dataptr[DCTSIZE*4];
+
+ /* Even part */
+
+ tmp10 = tmp0 + tmp3; /* phase 2 */
+ tmp13 = tmp0 - tmp3;
+ tmp11 = tmp1 + tmp2;
+ tmp12 = tmp1 - tmp2;
+
+ dataptr[DCTSIZE*0] = tmp10 + tmp11; /* phase 3 */
+ dataptr[DCTSIZE*4] = tmp10 - tmp11;
+
+ z1 = MULTIPLY(tmp12 + tmp13, FIX_0_707106781); /* c4 */
+ dataptr[DCTSIZE*2] = tmp13 + z1; /* phase 5 */
+ dataptr[DCTSIZE*6] = tmp13 - z1;
+
+ /* Odd part */
+
+ tmp10 = tmp4 + tmp5; /* phase 2 */
+ tmp11 = tmp5 + tmp6;
+ tmp12 = tmp6 + tmp7;
+
+ /* The rotator is modified from fig 4-8 to avoid extra negations. */
+ z5 = MULTIPLY(tmp10 - tmp12, FIX_0_382683433); /* c6 */
+ z2 = MULTIPLY(tmp10, FIX_0_541196100) + z5; /* c2-c6 */
+ z4 = MULTIPLY(tmp12, FIX_1_306562965) + z5; /* c2+c6 */
+ z3 = MULTIPLY(tmp11, FIX_0_707106781); /* c4 */
+
+ z11 = tmp7 + z3; /* phase 5 */
+ z13 = tmp7 - z3;
+
+ dataptr[DCTSIZE*5] = z13 + z2; /* phase 6 */
+ dataptr[DCTSIZE*3] = z13 - z2;
+ dataptr[DCTSIZE*1] = z11 + z4;
+ dataptr[DCTSIZE*7] = z11 - z4;
+
+ dataptr++; /* advance pointer to next column */
+ }
+}
+
+#endif /* DCT_IFAST_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jfdctint.c b/User/lib/lcd/gui/JPEG/jfdctint.c
new file mode 100644
index 0000000..0a78b64
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jfdctint.c
@@ -0,0 +1,283 @@
+/*
+ * jfdctint.c
+ *
+ * Copyright (C) 1991-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains a slow-but-accurate integer implementation of the
+ * forward DCT (Discrete Cosine Transform).
+ *
+ * A 2-D DCT can be done by 1-D DCT on each row followed by 1-D DCT
+ * on each column. Direct algorithms are also available, but they are
+ * much more complex and seem not to be any faster when reduced to code.
+ *
+ * This implementation is based on an algorithm described in
+ * C. Loeffler, A. Ligtenberg and G. Moschytz, "Practical Fast 1-D DCT
+ * Algorithms with 11 Multiplications", Proc. Int'l. Conf. on Acoustics,
+ * Speech, and Signal Processing 1989 (ICASSP '89), pp. 988-991.
+ * The primary algorithm described there uses 11 multiplies and 29 adds.
+ * We use their alternate method with 12 multiplies and 32 adds.
+ * The advantage of this method is that no data path contains more than one
+ * multiplication; this allows a very simple and accurate implementation in
+ * scaled fixed-point arithmetic, with a minimal number of shifts.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jdct.h" /* Private declarations for DCT subsystem */
+
+#ifdef DCT_ISLOW_SUPPORTED
+
+
+/*
+ * This module is specialized to the case DCTSIZE = 8.
+ */
+
+#if DCTSIZE != 8
+ Sorry, this code only copes with 8x8 DCTs. /* deliberate syntax err */
+#endif
+
+
+/*
+ * The poop on this scaling stuff is as follows:
+ *
+ * Each 1-D DCT step produces outputs which are a factor of sqrt(N)
+ * larger than the true DCT outputs. The final outputs are therefore
+ * a factor of N larger than desired; since N=8 this can be cured by
+ * a simple right shift at the end of the algorithm. The advantage of
+ * this arrangement is that we save two multiplications per 1-D DCT,
+ * because the y0 and y4 outputs need not be divided by sqrt(N).
+ * In the IJG code, this factor of 8 is removed by the quantization step
+ * (in jcdctmgr.c), NOT in this module.
+ *
+ * We have to do addition and subtraction of the integer inputs, which
+ * is no problem, and multiplication by fractional constants, which is
+ * a problem to do in integer arithmetic. We multiply all the constants
+ * by CONST_SCALE and convert them to integer constants (thus retaining
+ * CONST_BITS bits of precision in the constants). After doing a
+ * multiplication we have to divide the product by CONST_SCALE, with proper
+ * rounding, to produce the correct output. This division can be done
+ * cheaply as a right shift of CONST_BITS bits. We postpone shifting
+ * as long as possible so that partial sums can be added together with
+ * full fractional precision.
+ *
+ * The outputs of the first pass are scaled up by PASS1_BITS bits so that
+ * they are represented to better-than-integral precision. These outputs
+ * require BITS_IN_JSAMPLE + PASS1_BITS + 3 bits; this fits in a 16-bit word
+ * with the recommended scaling. (For 12-bit sample data, the intermediate
+ * array is INT32 anyway.)
+ *
+ * To avoid overflow of the 32-bit intermediate results in pass 2, we must
+ * have BITS_IN_JSAMPLE + CONST_BITS + PASS1_BITS <= 26. Error analysis
+ * shows that the values given below are the most effective.
+ */
+
+#if BITS_IN_JSAMPLE == 8
+#define CONST_BITS 13
+#define PASS1_BITS 2
+#else
+#define CONST_BITS 13
+#define PASS1_BITS 1 /* lose a little precision to avoid overflow */
+#endif
+
+/* Some C compilers fail to reduce "FIX(constant)" at compile time, thus
+ * causing a lot of useless floating-point operations at run time.
+ * To get around this we use the following pre-calculated constants.
+ * If you change CONST_BITS you may want to add appropriate values.
+ * (With a reasonable C compiler, you can just rely on the FIX() macro...)
+ */
+
+#if CONST_BITS == 13
+#define FIX_0_298631336 ((INT32) 2446) /* FIX(0.298631336) */
+#define FIX_0_390180644 ((INT32) 3196) /* FIX(0.390180644) */
+#define FIX_0_541196100 ((INT32) 4433) /* FIX(0.541196100) */
+#define FIX_0_765366865 ((INT32) 6270) /* FIX(0.765366865) */
+#define FIX_0_899976223 ((INT32) 7373) /* FIX(0.899976223) */
+#define FIX_1_175875602 ((INT32) 9633) /* FIX(1.175875602) */
+#define FIX_1_501321110 ((INT32) 12299) /* FIX(1.501321110) */
+#define FIX_1_847759065 ((INT32) 15137) /* FIX(1.847759065) */
+#define FIX_1_961570560 ((INT32) 16069) /* FIX(1.961570560) */
+#define FIX_2_053119869 ((INT32) 16819) /* FIX(2.053119869) */
+#define FIX_2_562915447 ((INT32) 20995) /* FIX(2.562915447) */
+#define FIX_3_072711026 ((INT32) 25172) /* FIX(3.072711026) */
+#else
+#define FIX_0_298631336 FIX(0.298631336)
+#define FIX_0_390180644 FIX(0.390180644)
+#define FIX_0_541196100 FIX(0.541196100)
+#define FIX_0_765366865 FIX(0.765366865)
+#define FIX_0_899976223 FIX(0.899976223)
+#define FIX_1_175875602 FIX(1.175875602)
+#define FIX_1_501321110 FIX(1.501321110)
+#define FIX_1_847759065 FIX(1.847759065)
+#define FIX_1_961570560 FIX(1.961570560)
+#define FIX_2_053119869 FIX(2.053119869)
+#define FIX_2_562915447 FIX(2.562915447)
+#define FIX_3_072711026 FIX(3.072711026)
+#endif
+
+
+/* Multiply an INT32 variable by an INT32 constant to yield an INT32 result.
+ * For 8-bit samples with the recommended scaling, all the variable
+ * and constant values involved are no more than 16 bits wide, so a
+ * 16x16->32 bit multiply can be used instead of a full 32x32 multiply.
+ * For 12-bit samples, a full 32-bit multiplication will be needed.
+ */
+
+#if BITS_IN_JSAMPLE == 8
+#define MULTIPLY(var,const) MULTIPLY16C16(var,const)
+#else
+#define MULTIPLY(var,const) ((var) * (const))
+#endif
+
+
+/*
+ * Perform the forward DCT on one block of samples.
+ */
+
+GLOBAL(void)
+jpeg_fdct_islow (DCTELEM * data)
+{
+ INT32 tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
+ INT32 tmp10, tmp11, tmp12, tmp13;
+ INT32 z1, z2, z3, z4, z5;
+ DCTELEM *dataptr;
+ int ctr;
+ SHIFT_TEMPS
+
+ /* Pass 1: process rows. */
+ /* Note results are scaled up by sqrt(8) compared to a true DCT; */
+ /* furthermore, we scale the results by 2**PASS1_BITS. */
+
+ dataptr = data;
+ for (ctr = DCTSIZE-1; ctr >= 0; ctr--) {
+ tmp0 = dataptr[0] + dataptr[7];
+ tmp7 = dataptr[0] - dataptr[7];
+ tmp1 = dataptr[1] + dataptr[6];
+ tmp6 = dataptr[1] - dataptr[6];
+ tmp2 = dataptr[2] + dataptr[5];
+ tmp5 = dataptr[2] - dataptr[5];
+ tmp3 = dataptr[3] + dataptr[4];
+ tmp4 = dataptr[3] - dataptr[4];
+
+ /* Even part per LL&M figure 1 --- note that published figure is faulty;
+ * rotator "sqrt(2)*c1" should be "sqrt(2)*c6".
+ */
+
+ tmp10 = tmp0 + tmp3;
+ tmp13 = tmp0 - tmp3;
+ tmp11 = tmp1 + tmp2;
+ tmp12 = tmp1 - tmp2;
+
+ dataptr[0] = (DCTELEM) ((tmp10 + tmp11) << PASS1_BITS);
+ dataptr[4] = (DCTELEM) ((tmp10 - tmp11) << PASS1_BITS);
+
+ z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100);
+ dataptr[2] = (DCTELEM) DESCALE(z1 + MULTIPLY(tmp13, FIX_0_765366865),
+ CONST_BITS-PASS1_BITS);
+ dataptr[6] = (DCTELEM) DESCALE(z1 + MULTIPLY(tmp12, - FIX_1_847759065),
+ CONST_BITS-PASS1_BITS);
+
+ /* Odd part per figure 8 --- note paper omits factor of sqrt(2).
+ * cK represents cos(K*pi/16).
+ * i0..i3 in the paper are tmp4..tmp7 here.
+ */
+
+ z1 = tmp4 + tmp7;
+ z2 = tmp5 + tmp6;
+ z3 = tmp4 + tmp6;
+ z4 = tmp5 + tmp7;
+ z5 = MULTIPLY(z3 + z4, FIX_1_175875602); /* sqrt(2) * c3 */
+
+ tmp4 = MULTIPLY(tmp4, FIX_0_298631336); /* sqrt(2) * (-c1+c3+c5-c7) */
+ tmp5 = MULTIPLY(tmp5, FIX_2_053119869); /* sqrt(2) * ( c1+c3-c5+c7) */
+ tmp6 = MULTIPLY(tmp6, FIX_3_072711026); /* sqrt(2) * ( c1+c3+c5-c7) */
+ tmp7 = MULTIPLY(tmp7, FIX_1_501321110); /* sqrt(2) * ( c1+c3-c5-c7) */
+ z1 = MULTIPLY(z1, - FIX_0_899976223); /* sqrt(2) * (c7-c3) */
+ z2 = MULTIPLY(z2, - FIX_2_562915447); /* sqrt(2) * (-c1-c3) */
+ z3 = MULTIPLY(z3, - FIX_1_961570560); /* sqrt(2) * (-c3-c5) */
+ z4 = MULTIPLY(z4, - FIX_0_390180644); /* sqrt(2) * (c5-c3) */
+
+ z3 += z5;
+ z4 += z5;
+
+ dataptr[7] = (DCTELEM) DESCALE(tmp4 + z1 + z3, CONST_BITS-PASS1_BITS);
+ dataptr[5] = (DCTELEM) DESCALE(tmp5 + z2 + z4, CONST_BITS-PASS1_BITS);
+ dataptr[3] = (DCTELEM) DESCALE(tmp6 + z2 + z3, CONST_BITS-PASS1_BITS);
+ dataptr[1] = (DCTELEM) DESCALE(tmp7 + z1 + z4, CONST_BITS-PASS1_BITS);
+
+ dataptr += DCTSIZE; /* advance pointer to next row */
+ }
+
+ /* Pass 2: process columns.
+ * We remove the PASS1_BITS scaling, but leave the results scaled up
+ * by an overall factor of 8.
+ */
+
+ dataptr = data;
+ for (ctr = DCTSIZE-1; ctr >= 0; ctr--) {
+ tmp0 = dataptr[DCTSIZE*0] + dataptr[DCTSIZE*7];
+ tmp7 = dataptr[DCTSIZE*0] - dataptr[DCTSIZE*7];
+ tmp1 = dataptr[DCTSIZE*1] + dataptr[DCTSIZE*6];
+ tmp6 = dataptr[DCTSIZE*1] - dataptr[DCTSIZE*6];
+ tmp2 = dataptr[DCTSIZE*2] + dataptr[DCTSIZE*5];
+ tmp5 = dataptr[DCTSIZE*2] - dataptr[DCTSIZE*5];
+ tmp3 = dataptr[DCTSIZE*3] + dataptr[DCTSIZE*4];
+ tmp4 = dataptr[DCTSIZE*3] - dataptr[DCTSIZE*4];
+
+ /* Even part per LL&M figure 1 --- note that published figure is faulty;
+ * rotator "sqrt(2)*c1" should be "sqrt(2)*c6".
+ */
+
+ tmp10 = tmp0 + tmp3;
+ tmp13 = tmp0 - tmp3;
+ tmp11 = tmp1 + tmp2;
+ tmp12 = tmp1 - tmp2;
+
+ dataptr[DCTSIZE*0] = (DCTELEM) DESCALE(tmp10 + tmp11, PASS1_BITS);
+ dataptr[DCTSIZE*4] = (DCTELEM) DESCALE(tmp10 - tmp11, PASS1_BITS);
+
+ z1 = MULTIPLY(tmp12 + tmp13, FIX_0_541196100);
+ dataptr[DCTSIZE*2] = (DCTELEM) DESCALE(z1 + MULTIPLY(tmp13, FIX_0_765366865),
+ CONST_BITS+PASS1_BITS);
+ dataptr[DCTSIZE*6] = (DCTELEM) DESCALE(z1 + MULTIPLY(tmp12, - FIX_1_847759065),
+ CONST_BITS+PASS1_BITS);
+
+ /* Odd part per figure 8 --- note paper omits factor of sqrt(2).
+ * cK represents cos(K*pi/16).
+ * i0..i3 in the paper are tmp4..tmp7 here.
+ */
+
+ z1 = tmp4 + tmp7;
+ z2 = tmp5 + tmp6;
+ z3 = tmp4 + tmp6;
+ z4 = tmp5 + tmp7;
+ z5 = MULTIPLY(z3 + z4, FIX_1_175875602); /* sqrt(2) * c3 */
+
+ tmp4 = MULTIPLY(tmp4, FIX_0_298631336); /* sqrt(2) * (-c1+c3+c5-c7) */
+ tmp5 = MULTIPLY(tmp5, FIX_2_053119869); /* sqrt(2) * ( c1+c3-c5+c7) */
+ tmp6 = MULTIPLY(tmp6, FIX_3_072711026); /* sqrt(2) * ( c1+c3+c5-c7) */
+ tmp7 = MULTIPLY(tmp7, FIX_1_501321110); /* sqrt(2) * ( c1+c3-c5-c7) */
+ z1 = MULTIPLY(z1, - FIX_0_899976223); /* sqrt(2) * (c7-c3) */
+ z2 = MULTIPLY(z2, - FIX_2_562915447); /* sqrt(2) * (-c1-c3) */
+ z3 = MULTIPLY(z3, - FIX_1_961570560); /* sqrt(2) * (-c3-c5) */
+ z4 = MULTIPLY(z4, - FIX_0_390180644); /* sqrt(2) * (c5-c3) */
+
+ z3 += z5;
+ z4 += z5;
+
+ dataptr[DCTSIZE*7] = (DCTELEM) DESCALE(tmp4 + z1 + z3,
+ CONST_BITS+PASS1_BITS);
+ dataptr[DCTSIZE*5] = (DCTELEM) DESCALE(tmp5 + z2 + z4,
+ CONST_BITS+PASS1_BITS);
+ dataptr[DCTSIZE*3] = (DCTELEM) DESCALE(tmp6 + z2 + z3,
+ CONST_BITS+PASS1_BITS);
+ dataptr[DCTSIZE*1] = (DCTELEM) DESCALE(tmp7 + z1 + z4,
+ CONST_BITS+PASS1_BITS);
+
+ dataptr++; /* advance pointer to next column */
+ }
+}
+
+#endif /* DCT_ISLOW_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jidctflt.c b/User/lib/lcd/gui/JPEG/jidctflt.c
new file mode 100644
index 0000000..ccc505b
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jidctflt.c
@@ -0,0 +1,245 @@
+/*
+ * jidctflt.c
+ *
+ * Copyright (C) 1994-1998, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains a floating-point implementation of the
+ * inverse DCT (Discrete Cosine Transform). In the IJG code, this routine
+ * must also perform dequantization of the input coefficients.
+ *
+ * This implementation should be more accurate than either of the integer
+ * IDCT implementations. However, it may not give the same results on all
+ * machines because of differences in roundoff behavior. Speed will depend
+ * on the hardware's floating point capacity.
+ *
+ * A 2-D IDCT can be done by 1-D IDCT on each column followed by 1-D IDCT
+ * on each row (or vice versa, but it's more convenient to emit a row at
+ * a time). Direct algorithms are also available, but they are much more
+ * complex and seem not to be any faster when reduced to code.
+ *
+ * This implementation is based on Arai, Agui, and Nakajima's algorithm for
+ * scaled DCT. Their original paper (Trans. IEICE E-71(11):1095) is in
+ * Japanese, but the algorithm is described in the Pennebaker & Mitchell
+ * JPEG textbook (see REFERENCES section in file README). The following code
+ * is based directly on figure 4-8 in P&M.
+ * While an 8-point DCT cannot be done in less than 11 multiplies, it is
+ * possible to arrange the computation so that many of the multiplies are
+ * simple scalings of the final outputs. These multiplies can then be
+ * folded into the multiplications or divisions by the JPEG quantization
+ * table entries. The AA&N method leaves only 5 multiplies and 29 adds
+ * to be done in the DCT itself.
+ * The primary disadvantage of this method is that with a fixed-point
+ * implementation, accuracy is lost due to imprecise representation of the
+ * scaled quantization values. However, that problem does not arise if
+ * we use floating point arithmetic.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jdct.h" /* Private declarations for DCT subsystem */
+
+#ifdef DCT_FLOAT_SUPPORTED
+
+
+/*
+ * This module is specialized to the case DCTSIZE = 8.
+ */
+
+#if DCTSIZE != 8
+ Sorry, this code only copes with 8x8 DCTs. /* deliberate syntax err */
+#endif
+
+
+/* Dequantize a coefficient by multiplying it by the multiplier-table
+ * entry; produce a float result.
+ */
+
+#define DEQUANTIZE(coef,quantval) (((FAST_FLOAT) (coef)) * (quantval))
+
+
+/*
+ * Perform dequantization and inverse DCT on one block of coefficients.
+ */
+
+GLOBAL(void)
+jpeg_idct_float (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block,
+ JSAMPARRAY output_buf, JDIMENSION output_col)
+{
+ FAST_FLOAT tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
+ FAST_FLOAT tmp10, tmp11, tmp12, tmp13;
+ FAST_FLOAT z5, z10, z11, z12, z13;
+ JCOEFPTR inptr;
+ FLOAT_MULT_TYPE * quantptr;
+ FAST_FLOAT * wsptr;
+ JSAMPROW outptr;
+ JSAMPLE *range_limit = IDCT_range_limit(cinfo);
+ int ctr;
+ FAST_FLOAT workspace[DCTSIZE2]; /* buffers data between passes */
+ SHIFT_TEMPS
+
+ /* Pass 1: process columns from input, store into work array. */
+
+ inptr = coef_block;
+ quantptr = (FLOAT_MULT_TYPE *) compptr->dct_table;
+ wsptr = workspace;
+ for (ctr = DCTSIZE; ctr > 0; ctr--) {
+ /* Due to quantization, we will usually find that many of the input
+ * coefficients are zero, especially the AC terms. We can exploit this
+ * by short-circuiting the IDCT calculation for any column in which all
+ * the AC terms are zero. In that case each output is equal to the
+ * DC coefficient (with scale factor as needed).
+ * With typical images and quantization tables, half or more of the
+ * column DCT calculations can be simplified this way.
+ */
+
+ if (inptr[DCTSIZE*1] == 0 && inptr[DCTSIZE*2] == 0 &&
+ inptr[DCTSIZE*3] == 0 && inptr[DCTSIZE*4] == 0 &&
+ inptr[DCTSIZE*5] == 0 && inptr[DCTSIZE*6] == 0 &&
+ inptr[DCTSIZE*7] == 0) {
+ /* AC terms all zero */
+ FAST_FLOAT dcval = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]);
+
+ wsptr[DCTSIZE*0] = dcval;
+ wsptr[DCTSIZE*1] = dcval;
+ wsptr[DCTSIZE*2] = dcval;
+ wsptr[DCTSIZE*3] = dcval;
+ wsptr[DCTSIZE*4] = dcval;
+ wsptr[DCTSIZE*5] = dcval;
+ wsptr[DCTSIZE*6] = dcval;
+ wsptr[DCTSIZE*7] = dcval;
+
+ inptr++; /* advance pointers to next column */
+ quantptr++;
+ wsptr++;
+ continue;
+ }
+
+ /* Even part */
+
+ tmp0 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]);
+ tmp1 = DEQUANTIZE(inptr[DCTSIZE*2], quantptr[DCTSIZE*2]);
+ tmp2 = DEQUANTIZE(inptr[DCTSIZE*4], quantptr[DCTSIZE*4]);
+ tmp3 = DEQUANTIZE(inptr[DCTSIZE*6], quantptr[DCTSIZE*6]);
+
+ tmp10 = tmp0 + tmp2; /* phase 3 */
+ tmp11 = tmp0 - tmp2;
+
+ tmp13 = tmp1 + tmp3; /* phases 5-3 */
+ tmp12 = (tmp1 - tmp3) * ((FAST_FLOAT) 1.414213562) - tmp13; /* 2*c4 */
+
+ tmp0 = tmp10 + tmp13; /* phase 2 */
+ tmp3 = tmp10 - tmp13;
+ tmp1 = tmp11 + tmp12;
+ tmp2 = tmp11 - tmp12;
+
+ /* Odd part */
+
+ tmp4 = DEQUANTIZE(inptr[DCTSIZE*1], quantptr[DCTSIZE*1]);
+ tmp5 = DEQUANTIZE(inptr[DCTSIZE*3], quantptr[DCTSIZE*3]);
+ tmp6 = DEQUANTIZE(inptr[DCTSIZE*5], quantptr[DCTSIZE*5]);
+ tmp7 = DEQUANTIZE(inptr[DCTSIZE*7], quantptr[DCTSIZE*7]);
+
+ z13 = tmp6 + tmp5; /* phase 6 */
+ z10 = tmp6 - tmp5;
+ z11 = tmp4 + tmp7;
+ z12 = tmp4 - tmp7;
+
+ tmp7 = z11 + z13; /* phase 5 */
+ tmp11 = (z11 - z13) * ((FAST_FLOAT) 1.414213562); /* 2*c4 */
+
+ z5 = (z10 + z12) * ((FAST_FLOAT) 1.847759065); /* 2*c2 */
+ tmp10 = ((FAST_FLOAT) 1.082392200) * z12 - z5; /* 2*(c2-c6) */
+ tmp12 = ((FAST_FLOAT) -2.613125930) * z10 + z5; /* -2*(c2+c6) */
+
+ tmp6 = tmp12 - tmp7; /* phase 2 */
+ tmp5 = tmp11 - tmp6;
+ tmp4 = tmp10 + tmp5;
+
+ wsptr[DCTSIZE*0] = tmp0 + tmp7;
+ wsptr[DCTSIZE*7] = tmp0 - tmp7;
+ wsptr[DCTSIZE*1] = tmp1 + tmp6;
+ wsptr[DCTSIZE*6] = tmp1 - tmp6;
+ wsptr[DCTSIZE*2] = tmp2 + tmp5;
+ wsptr[DCTSIZE*5] = tmp2 - tmp5;
+ wsptr[DCTSIZE*4] = tmp3 + tmp4;
+ wsptr[DCTSIZE*3] = tmp3 - tmp4;
+
+ inptr++; /* advance pointers to next column */
+ quantptr++;
+ wsptr++;
+ }
+
+ /* Pass 2: process rows from work array, store into output array. */
+ /* Note that we must descale the results by a factor of 8 == 2**3. */
+
+ wsptr = workspace;
+ for (ctr = 0; ctr < DCTSIZE; ctr++) {
+ outptr = output_buf[ctr] + output_col;
+ /* Rows of zeroes can be exploited in the same way as we did with columns.
+ * However, the column calculation has created many nonzero AC terms, so
+ * the simplification applies less often (typically 5% to 10% of the time).
+ * And testing floats for zero is relatively expensive, so we don't bother.
+ */
+
+ /* Even part */
+
+ tmp10 = wsptr[0] + wsptr[4];
+ tmp11 = wsptr[0] - wsptr[4];
+
+ tmp13 = wsptr[2] + wsptr[6];
+ tmp12 = (wsptr[2] - wsptr[6]) * ((FAST_FLOAT) 1.414213562) - tmp13;
+
+ tmp0 = tmp10 + tmp13;
+ tmp3 = tmp10 - tmp13;
+ tmp1 = tmp11 + tmp12;
+ tmp2 = tmp11 - tmp12;
+
+ /* Odd part */
+
+ z13 = wsptr[5] + wsptr[3];
+ z10 = wsptr[5] - wsptr[3];
+ z11 = wsptr[1] + wsptr[7];
+ z12 = wsptr[1] - wsptr[7];
+
+ tmp7 = z11 + z13;
+ tmp11 = (z11 - z13) * ((FAST_FLOAT) 1.414213562);
+
+ z5 = (z10 + z12) * ((FAST_FLOAT) 1.847759065); /* 2*c2 */
+ tmp10 = ((FAST_FLOAT) 1.082392200) * z12 - z5; /* 2*(c2-c6) */
+ tmp12 = ((FAST_FLOAT) -2.613125930) * z10 + z5; /* -2*(c2+c6) */
+
+ tmp6 = tmp12 - tmp7;
+ tmp5 = tmp11 - tmp6;
+ tmp4 = tmp10 + tmp5;
+
+ /* Final output stage: scale down by a factor of 8 and range-limit */
+
+ outptr[0] = range_limit[(int) DESCALE((INT32) (tmp0 + tmp7), 3)
+ & RANGE_MASK];
+ outptr[7] = range_limit[(int) DESCALE((INT32) (tmp0 - tmp7), 3)
+ & RANGE_MASK];
+ outptr[1] = range_limit[(int) DESCALE((INT32) (tmp1 + tmp6), 3)
+ & RANGE_MASK];
+ outptr[6] = range_limit[(int) DESCALE((INT32) (tmp1 - tmp6), 3)
+ & RANGE_MASK];
+ outptr[2] = range_limit[(int) DESCALE((INT32) (tmp2 + tmp5), 3)
+ & RANGE_MASK];
+ outptr[5] = range_limit[(int) DESCALE((INT32) (tmp2 - tmp5), 3)
+ & RANGE_MASK];
+ outptr[4] = range_limit[(int) DESCALE((INT32) (tmp3 + tmp4), 3)
+ & RANGE_MASK];
+ outptr[3] = range_limit[(int) DESCALE((INT32) (tmp3 - tmp4), 3)
+ & RANGE_MASK];
+
+ wsptr += DCTSIZE; /* advance pointer to next row */
+ }
+}
+
+#else
+void jidctflt_C(void);
+void jidctflt_C(void) {} /* Avoid empty object files */
+#endif /* DCT_FLOAT_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jidctfst.c b/User/lib/lcd/gui/JPEG/jidctfst.c
new file mode 100644
index 0000000..dba4216
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jidctfst.c
@@ -0,0 +1,368 @@
+/*
+ * jidctfst.c
+ *
+ * Copyright (C) 1994-1998, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains a fast, not so accurate integer implementation of the
+ * inverse DCT (Discrete Cosine Transform). In the IJG code, this routine
+ * must also perform dequantization of the input coefficients.
+ *
+ * A 2-D IDCT can be done by 1-D IDCT on each column followed by 1-D IDCT
+ * on each row (or vice versa, but it's more convenient to emit a row at
+ * a time). Direct algorithms are also available, but they are much more
+ * complex and seem not to be any faster when reduced to code.
+ *
+ * This implementation is based on Arai, Agui, and Nakajima's algorithm for
+ * scaled DCT. Their original paper (Trans. IEICE E-71(11):1095) is in
+ * Japanese, but the algorithm is described in the Pennebaker & Mitchell
+ * JPEG textbook (see REFERENCES section in file README). The following code
+ * is based directly on figure 4-8 in P&M.
+ * While an 8-point DCT cannot be done in less than 11 multiplies, it is
+ * possible to arrange the computation so that many of the multiplies are
+ * simple scalings of the final outputs. These multiplies can then be
+ * folded into the multiplications or divisions by the JPEG quantization
+ * table entries. The AA&N method leaves only 5 multiplies and 29 adds
+ * to be done in the DCT itself.
+ * The primary disadvantage of this method is that with fixed-point math,
+ * accuracy is lost due to imprecise representation of the scaled
+ * quantization values. The smaller the quantization table entry, the less
+ * precise the scaled value, so this implementation does worse with high-
+ * quality-setting files than with low-quality ones.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jdct.h" /* Private declarations for DCT subsystem */
+
+#ifdef DCT_IFAST_SUPPORTED
+
+
+/*
+ * This module is specialized to the case DCTSIZE = 8.
+ */
+
+#if DCTSIZE != 8
+ Sorry, this code only copes with 8x8 DCTs. /* deliberate syntax err */
+#endif
+
+
+/* Scaling decisions are generally the same as in the LL&M algorithm;
+ * see jidctint.c for more details. However, we choose to descale
+ * (right shift) multiplication products as soon as they are formed,
+ * rather than carrying additional fractional bits into subsequent additions.
+ * This compromises accuracy slightly, but it lets us save a few shifts.
+ * More importantly, 16-bit arithmetic is then adequate (for 8-bit samples)
+ * everywhere except in the multiplications proper; this saves a good deal
+ * of work on 16-bit-int machines.
+ *
+ * The dequantized coefficients are not integers because the AA&N scaling
+ * factors have been incorporated. We represent them scaled up by PASS1_BITS,
+ * so that the first and second IDCT rounds have the same input scaling.
+ * For 8-bit JSAMPLEs, we choose IFAST_SCALE_BITS = PASS1_BITS so as to
+ * avoid a descaling shift; this compromises accuracy rather drastically
+ * for small quantization table entries, but it saves a lot of shifts.
+ * For 12-bit JSAMPLEs, there's no hope of using 16x16 multiplies anyway,
+ * so we use a much larger scaling factor to preserve accuracy.
+ *
+ * A final compromise is to represent the multiplicative constants to only
+ * 8 fractional bits, rather than 13. This saves some shifting work on some
+ * machines, and may also reduce the cost of multiplication (since there
+ * are fewer one-bits in the constants).
+ */
+
+#if BITS_IN_JSAMPLE == 8
+#define CONST_BITS 8
+#define PASS1_BITS 2
+#else
+#define CONST_BITS 8
+#define PASS1_BITS 1 /* lose a little precision to avoid overflow */
+#endif
+
+/* Some C compilers fail to reduce "FIX(constant)" at compile time, thus
+ * causing a lot of useless floating-point operations at run time.
+ * To get around this we use the following pre-calculated constants.
+ * If you change CONST_BITS you may want to add appropriate values.
+ * (With a reasonable C compiler, you can just rely on the FIX() macro...)
+ */
+
+#if CONST_BITS == 8
+#define FIX_1_082392200 ((INT32) 277) /* FIX(1.082392200) */
+#define FIX_1_414213562 ((INT32) 362) /* FIX(1.414213562) */
+#define FIX_1_847759065 ((INT32) 473) /* FIX(1.847759065) */
+#define FIX_2_613125930 ((INT32) 669) /* FIX(2.613125930) */
+#else
+#define FIX_1_082392200 FIX(1.082392200)
+#define FIX_1_414213562 FIX(1.414213562)
+#define FIX_1_847759065 FIX(1.847759065)
+#define FIX_2_613125930 FIX(2.613125930)
+#endif
+
+
+/* We can gain a little more speed, with a further compromise in accuracy,
+ * by omitting the addition in a descaling shift. This yields an incorrectly
+ * rounded result half the time...
+ */
+
+#ifndef USE_ACCURATE_ROUNDING
+#undef DESCALE
+#define DESCALE(x,n) RIGHT_SHIFT(x, n)
+#endif
+
+
+/* Multiply a DCTELEM variable by an INT32 constant, and immediately
+ * descale to yield a DCTELEM result.
+ */
+
+#define MULTIPLY(var,const) ((DCTELEM) DESCALE((var) * (const), CONST_BITS))
+
+
+/* Dequantize a coefficient by multiplying it by the multiplier-table
+ * entry; produce a DCTELEM result. For 8-bit data a 16x16->16
+ * multiplication will do. For 12-bit data, the multiplier table is
+ * declared INT32, so a 32-bit multiply will be used.
+ */
+
+#if BITS_IN_JSAMPLE == 8
+#define DEQUANTIZE(coef,quantval) (((IFAST_MULT_TYPE) (coef)) * (quantval))
+#else
+#define DEQUANTIZE(coef,quantval) \
+ DESCALE((coef)*(quantval), IFAST_SCALE_BITS-PASS1_BITS)
+#endif
+
+
+/* Like DESCALE, but applies to a DCTELEM and produces an int.
+ * We assume that int right shift is unsigned if INT32 right shift is.
+ */
+
+#ifdef RIGHT_SHIFT_IS_UNSIGNED
+#define ISHIFT_TEMPS DCTELEM ishift_temp;
+#if BITS_IN_JSAMPLE == 8
+#define DCTELEMBITS 16 /* DCTELEM may be 16 or 32 bits */
+#else
+#define DCTELEMBITS 32 /* DCTELEM must be 32 bits */
+#endif
+#define IRIGHT_SHIFT(x,shft) \
+ ((ishift_temp = (x)) < 0 ? \
+ (ishift_temp >> (shft)) | ((~((DCTELEM) 0)) << (DCTELEMBITS-(shft))) : \
+ (ishift_temp >> (shft)))
+#else
+#define ISHIFT_TEMPS
+#define IRIGHT_SHIFT(x,shft) ((x) >> (shft))
+#endif
+
+#ifdef USE_ACCURATE_ROUNDING
+#define IDESCALE(x,n) ((int) IRIGHT_SHIFT((x) + (1 << ((n)-1)), n))
+#else
+#define IDESCALE(x,n) ((int) IRIGHT_SHIFT(x, n))
+#endif
+
+
+/*
+ * Perform dequantization and inverse DCT on one block of coefficients.
+ */
+
+GLOBAL(void)
+jpeg_idct_ifast (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block,
+ JSAMPARRAY output_buf, JDIMENSION output_col)
+{
+ DCTELEM tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
+ DCTELEM tmp10, tmp11, tmp12, tmp13;
+ DCTELEM z5, z10, z11, z12, z13;
+ JCOEFPTR inptr;
+ IFAST_MULT_TYPE * quantptr;
+ int * wsptr;
+ JSAMPROW outptr;
+ JSAMPLE *range_limit = IDCT_range_limit(cinfo);
+ int ctr;
+ int workspace[DCTSIZE2]; /* buffers data between passes */
+ SHIFT_TEMPS /* for DESCALE */
+ ISHIFT_TEMPS /* for IDESCALE */
+
+ /* Pass 1: process columns from input, store into work array. */
+
+ inptr = coef_block;
+ quantptr = (IFAST_MULT_TYPE *) compptr->dct_table;
+ wsptr = workspace;
+ for (ctr = DCTSIZE; ctr > 0; ctr--) {
+ /* Due to quantization, we will usually find that many of the input
+ * coefficients are zero, especially the AC terms. We can exploit this
+ * by short-circuiting the IDCT calculation for any column in which all
+ * the AC terms are zero. In that case each output is equal to the
+ * DC coefficient (with scale factor as needed).
+ * With typical images and quantization tables, half or more of the
+ * column DCT calculations can be simplified this way.
+ */
+
+ if (inptr[DCTSIZE*1] == 0 && inptr[DCTSIZE*2] == 0 &&
+ inptr[DCTSIZE*3] == 0 && inptr[DCTSIZE*4] == 0 &&
+ inptr[DCTSIZE*5] == 0 && inptr[DCTSIZE*6] == 0 &&
+ inptr[DCTSIZE*7] == 0) {
+ /* AC terms all zero */
+ int dcval = (int) DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]);
+
+ wsptr[DCTSIZE*0] = dcval;
+ wsptr[DCTSIZE*1] = dcval;
+ wsptr[DCTSIZE*2] = dcval;
+ wsptr[DCTSIZE*3] = dcval;
+ wsptr[DCTSIZE*4] = dcval;
+ wsptr[DCTSIZE*5] = dcval;
+ wsptr[DCTSIZE*6] = dcval;
+ wsptr[DCTSIZE*7] = dcval;
+
+ inptr++; /* advance pointers to next column */
+ quantptr++;
+ wsptr++;
+ continue;
+ }
+
+ /* Even part */
+
+ tmp0 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]);
+ tmp1 = DEQUANTIZE(inptr[DCTSIZE*2], quantptr[DCTSIZE*2]);
+ tmp2 = DEQUANTIZE(inptr[DCTSIZE*4], quantptr[DCTSIZE*4]);
+ tmp3 = DEQUANTIZE(inptr[DCTSIZE*6], quantptr[DCTSIZE*6]);
+
+ tmp10 = tmp0 + tmp2; /* phase 3 */
+ tmp11 = tmp0 - tmp2;
+
+ tmp13 = tmp1 + tmp3; /* phases 5-3 */
+ tmp12 = MULTIPLY(tmp1 - tmp3, FIX_1_414213562) - tmp13; /* 2*c4 */
+
+ tmp0 = tmp10 + tmp13; /* phase 2 */
+ tmp3 = tmp10 - tmp13;
+ tmp1 = tmp11 + tmp12;
+ tmp2 = tmp11 - tmp12;
+
+ /* Odd part */
+
+ tmp4 = DEQUANTIZE(inptr[DCTSIZE*1], quantptr[DCTSIZE*1]);
+ tmp5 = DEQUANTIZE(inptr[DCTSIZE*3], quantptr[DCTSIZE*3]);
+ tmp6 = DEQUANTIZE(inptr[DCTSIZE*5], quantptr[DCTSIZE*5]);
+ tmp7 = DEQUANTIZE(inptr[DCTSIZE*7], quantptr[DCTSIZE*7]);
+
+ z13 = tmp6 + tmp5; /* phase 6 */
+ z10 = tmp6 - tmp5;
+ z11 = tmp4 + tmp7;
+ z12 = tmp4 - tmp7;
+
+ tmp7 = z11 + z13; /* phase 5 */
+ tmp11 = MULTIPLY(z11 - z13, FIX_1_414213562); /* 2*c4 */
+
+ z5 = MULTIPLY(z10 + z12, FIX_1_847759065); /* 2*c2 */
+ tmp10 = MULTIPLY(z12, FIX_1_082392200) - z5; /* 2*(c2-c6) */
+ tmp12 = MULTIPLY(z10, - FIX_2_613125930) + z5; /* -2*(c2+c6) */
+
+ tmp6 = tmp12 - tmp7; /* phase 2 */
+ tmp5 = tmp11 - tmp6;
+ tmp4 = tmp10 + tmp5;
+
+ wsptr[DCTSIZE*0] = (int) (tmp0 + tmp7);
+ wsptr[DCTSIZE*7] = (int) (tmp0 - tmp7);
+ wsptr[DCTSIZE*1] = (int) (tmp1 + tmp6);
+ wsptr[DCTSIZE*6] = (int) (tmp1 - tmp6);
+ wsptr[DCTSIZE*2] = (int) (tmp2 + tmp5);
+ wsptr[DCTSIZE*5] = (int) (tmp2 - tmp5);
+ wsptr[DCTSIZE*4] = (int) (tmp3 + tmp4);
+ wsptr[DCTSIZE*3] = (int) (tmp3 - tmp4);
+
+ inptr++; /* advance pointers to next column */
+ quantptr++;
+ wsptr++;
+ }
+
+ /* Pass 2: process rows from work array, store into output array. */
+ /* Note that we must descale the results by a factor of 8 == 2**3, */
+ /* and also undo the PASS1_BITS scaling. */
+
+ wsptr = workspace;
+ for (ctr = 0; ctr < DCTSIZE; ctr++) {
+ outptr = output_buf[ctr] + output_col;
+ /* Rows of zeroes can be exploited in the same way as we did with columns.
+ * However, the column calculation has created many nonzero AC terms, so
+ * the simplification applies less often (typically 5% to 10% of the time).
+ * On machines with very fast multiplication, it's possible that the
+ * test takes more time than it's worth. In that case this section
+ * may be commented out.
+ */
+
+#ifndef NO_ZERO_ROW_TEST
+ if (wsptr[1] == 0 && wsptr[2] == 0 && wsptr[3] == 0 && wsptr[4] == 0 &&
+ wsptr[5] == 0 && wsptr[6] == 0 && wsptr[7] == 0) {
+ /* AC terms all zero */
+ JSAMPLE dcval = range_limit[IDESCALE(wsptr[0], PASS1_BITS+3)
+ & RANGE_MASK];
+
+ outptr[0] = dcval;
+ outptr[1] = dcval;
+ outptr[2] = dcval;
+ outptr[3] = dcval;
+ outptr[4] = dcval;
+ outptr[5] = dcval;
+ outptr[6] = dcval;
+ outptr[7] = dcval;
+
+ wsptr += DCTSIZE; /* advance pointer to next row */
+ continue;
+ }
+#endif
+
+ /* Even part */
+
+ tmp10 = ((DCTELEM) wsptr[0] + (DCTELEM) wsptr[4]);
+ tmp11 = ((DCTELEM) wsptr[0] - (DCTELEM) wsptr[4]);
+
+ tmp13 = ((DCTELEM) wsptr[2] + (DCTELEM) wsptr[6]);
+ tmp12 = MULTIPLY((DCTELEM) wsptr[2] - (DCTELEM) wsptr[6], FIX_1_414213562)
+ - tmp13;
+
+ tmp0 = tmp10 + tmp13;
+ tmp3 = tmp10 - tmp13;
+ tmp1 = tmp11 + tmp12;
+ tmp2 = tmp11 - tmp12;
+
+ /* Odd part */
+
+ z13 = (DCTELEM) wsptr[5] + (DCTELEM) wsptr[3];
+ z10 = (DCTELEM) wsptr[5] - (DCTELEM) wsptr[3];
+ z11 = (DCTELEM) wsptr[1] + (DCTELEM) wsptr[7];
+ z12 = (DCTELEM) wsptr[1] - (DCTELEM) wsptr[7];
+
+ tmp7 = z11 + z13; /* phase 5 */
+ tmp11 = MULTIPLY(z11 - z13, FIX_1_414213562); /* 2*c4 */
+
+ z5 = MULTIPLY(z10 + z12, FIX_1_847759065); /* 2*c2 */
+ tmp10 = MULTIPLY(z12, FIX_1_082392200) - z5; /* 2*(c2-c6) */
+ tmp12 = MULTIPLY(z10, - FIX_2_613125930) + z5; /* -2*(c2+c6) */
+
+ tmp6 = tmp12 - tmp7; /* phase 2 */
+ tmp5 = tmp11 - tmp6;
+ tmp4 = tmp10 + tmp5;
+
+ /* Final output stage: scale down by a factor of 8 and range-limit */
+
+ outptr[0] = range_limit[IDESCALE(tmp0 + tmp7, PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[7] = range_limit[IDESCALE(tmp0 - tmp7, PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[1] = range_limit[IDESCALE(tmp1 + tmp6, PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[6] = range_limit[IDESCALE(tmp1 - tmp6, PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[2] = range_limit[IDESCALE(tmp2 + tmp5, PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[5] = range_limit[IDESCALE(tmp2 - tmp5, PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[4] = range_limit[IDESCALE(tmp3 + tmp4, PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[3] = range_limit[IDESCALE(tmp3 - tmp4, PASS1_BITS+3)
+ & RANGE_MASK];
+
+ wsptr += DCTSIZE; /* advance pointer to next row */
+ }
+}
+
+#endif /* DCT_IFAST_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jidctint.c b/User/lib/lcd/gui/JPEG/jidctint.c
new file mode 100644
index 0000000..a72b320
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jidctint.c
@@ -0,0 +1,389 @@
+/*
+ * jidctint.c
+ *
+ * Copyright (C) 1991-1998, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains a slow-but-accurate integer implementation of the
+ * inverse DCT (Discrete Cosine Transform). In the IJG code, this routine
+ * must also perform dequantization of the input coefficients.
+ *
+ * A 2-D IDCT can be done by 1-D IDCT on each column followed by 1-D IDCT
+ * on each row (or vice versa, but it's more convenient to emit a row at
+ * a time). Direct algorithms are also available, but they are much more
+ * complex and seem not to be any faster when reduced to code.
+ *
+ * This implementation is based on an algorithm described in
+ * C. Loeffler, A. Ligtenberg and G. Moschytz, "Practical Fast 1-D DCT
+ * Algorithms with 11 Multiplications", Proc. Int'l. Conf. on Acoustics,
+ * Speech, and Signal Processing 1989 (ICASSP '89), pp. 988-991.
+ * The primary algorithm described there uses 11 multiplies and 29 adds.
+ * We use their alternate method with 12 multiplies and 32 adds.
+ * The advantage of this method is that no data path contains more than one
+ * multiplication; this allows a very simple and accurate implementation in
+ * scaled fixed-point arithmetic, with a minimal number of shifts.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jdct.h" /* Private declarations for DCT subsystem */
+
+#ifdef DCT_ISLOW_SUPPORTED
+
+
+/*
+ * This module is specialized to the case DCTSIZE = 8.
+ */
+
+#if DCTSIZE != 8
+ Sorry, this code only copes with 8x8 DCTs. /* deliberate syntax err */
+#endif
+
+
+/*
+ * The poop on this scaling stuff is as follows:
+ *
+ * Each 1-D IDCT step produces outputs which are a factor of sqrt(N)
+ * larger than the true IDCT outputs. The final outputs are therefore
+ * a factor of N larger than desired; since N=8 this can be cured by
+ * a simple right shift at the end of the algorithm. The advantage of
+ * this arrangement is that we save two multiplications per 1-D IDCT,
+ * because the y0 and y4 inputs need not be divided by sqrt(N).
+ *
+ * We have to do addition and subtraction of the integer inputs, which
+ * is no problem, and multiplication by fractional constants, which is
+ * a problem to do in integer arithmetic. We multiply all the constants
+ * by CONST_SCALE and convert them to integer constants (thus retaining
+ * CONST_BITS bits of precision in the constants). After doing a
+ * multiplication we have to divide the product by CONST_SCALE, with proper
+ * rounding, to produce the correct output. This division can be done
+ * cheaply as a right shift of CONST_BITS bits. We postpone shifting
+ * as long as possible so that partial sums can be added together with
+ * full fractional precision.
+ *
+ * The outputs of the first pass are scaled up by PASS1_BITS bits so that
+ * they are represented to better-than-integral precision. These outputs
+ * require BITS_IN_JSAMPLE + PASS1_BITS + 3 bits; this fits in a 16-bit word
+ * with the recommended scaling. (To scale up 12-bit sample data further, an
+ * intermediate INT32 array would be needed.)
+ *
+ * To avoid overflow of the 32-bit intermediate results in pass 2, we must
+ * have BITS_IN_JSAMPLE + CONST_BITS + PASS1_BITS <= 26. Error analysis
+ * shows that the values given below are the most effective.
+ */
+
+#if BITS_IN_JSAMPLE == 8
+#define CONST_BITS 13
+#define PASS1_BITS 2
+#else
+#define CONST_BITS 13
+#define PASS1_BITS 1 /* lose a little precision to avoid overflow */
+#endif
+
+/* Some C compilers fail to reduce "FIX(constant)" at compile time, thus
+ * causing a lot of useless floating-point operations at run time.
+ * To get around this we use the following pre-calculated constants.
+ * If you change CONST_BITS you may want to add appropriate values.
+ * (With a reasonable C compiler, you can just rely on the FIX() macro...)
+ */
+
+#if CONST_BITS == 13
+#define FIX_0_298631336 ((INT32) 2446) /* FIX(0.298631336) */
+#define FIX_0_390180644 ((INT32) 3196) /* FIX(0.390180644) */
+#define FIX_0_541196100 ((INT32) 4433) /* FIX(0.541196100) */
+#define FIX_0_765366865 ((INT32) 6270) /* FIX(0.765366865) */
+#define FIX_0_899976223 ((INT32) 7373) /* FIX(0.899976223) */
+#define FIX_1_175875602 ((INT32) 9633) /* FIX(1.175875602) */
+#define FIX_1_501321110 ((INT32) 12299) /* FIX(1.501321110) */
+#define FIX_1_847759065 ((INT32) 15137) /* FIX(1.847759065) */
+#define FIX_1_961570560 ((INT32) 16069) /* FIX(1.961570560) */
+#define FIX_2_053119869 ((INT32) 16819) /* FIX(2.053119869) */
+#define FIX_2_562915447 ((INT32) 20995) /* FIX(2.562915447) */
+#define FIX_3_072711026 ((INT32) 25172) /* FIX(3.072711026) */
+#else
+#define FIX_0_298631336 FIX(0.298631336)
+#define FIX_0_390180644 FIX(0.390180644)
+#define FIX_0_541196100 FIX(0.541196100)
+#define FIX_0_765366865 FIX(0.765366865)
+#define FIX_0_899976223 FIX(0.899976223)
+#define FIX_1_175875602 FIX(1.175875602)
+#define FIX_1_501321110 FIX(1.501321110)
+#define FIX_1_847759065 FIX(1.847759065)
+#define FIX_1_961570560 FIX(1.961570560)
+#define FIX_2_053119869 FIX(2.053119869)
+#define FIX_2_562915447 FIX(2.562915447)
+#define FIX_3_072711026 FIX(3.072711026)
+#endif
+
+
+/* Multiply an INT32 variable by an INT32 constant to yield an INT32 result.
+ * For 8-bit samples with the recommended scaling, all the variable
+ * and constant values involved are no more than 16 bits wide, so a
+ * 16x16->32 bit multiply can be used instead of a full 32x32 multiply.
+ * For 12-bit samples, a full 32-bit multiplication will be needed.
+ */
+
+#if BITS_IN_JSAMPLE == 8
+#define MULTIPLY(var,const) MULTIPLY16C16(var,const)
+#else
+#define MULTIPLY(var,const) ((var) * (const))
+#endif
+
+
+/* Dequantize a coefficient by multiplying it by the multiplier-table
+ * entry; produce an int result. In this module, both inputs and result
+ * are 16 bits or less, so either int or short multiply will work.
+ */
+
+#define DEQUANTIZE(coef,quantval) (((ISLOW_MULT_TYPE) (coef)) * (quantval))
+
+
+/*
+ * Perform dequantization and inverse DCT on one block of coefficients.
+ */
+
+GLOBAL(void)
+jpeg_idct_islow (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block,
+ JSAMPARRAY output_buf, JDIMENSION output_col)
+{
+ INT32 tmp0, tmp1, tmp2, tmp3;
+ INT32 tmp10, tmp11, tmp12, tmp13;
+ INT32 z1, z2, z3, z4, z5;
+ JCOEFPTR inptr;
+ ISLOW_MULT_TYPE * quantptr;
+ int * wsptr;
+ JSAMPROW outptr;
+ JSAMPLE *range_limit = IDCT_range_limit(cinfo);
+ int ctr;
+ int workspace[DCTSIZE2]; /* buffers data between passes */
+ SHIFT_TEMPS
+
+ /* Pass 1: process columns from input, store into work array. */
+ /* Note results are scaled up by sqrt(8) compared to a true IDCT; */
+ /* furthermore, we scale the results by 2**PASS1_BITS. */
+
+ inptr = coef_block;
+ quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
+ wsptr = workspace;
+ for (ctr = DCTSIZE; ctr > 0; ctr--) {
+ /* Due to quantization, we will usually find that many of the input
+ * coefficients are zero, especially the AC terms. We can exploit this
+ * by short-circuiting the IDCT calculation for any column in which all
+ * the AC terms are zero. In that case each output is equal to the
+ * DC coefficient (with scale factor as needed).
+ * With typical images and quantization tables, half or more of the
+ * column DCT calculations can be simplified this way.
+ */
+
+ if (inptr[DCTSIZE*1] == 0 && inptr[DCTSIZE*2] == 0 &&
+ inptr[DCTSIZE*3] == 0 && inptr[DCTSIZE*4] == 0 &&
+ inptr[DCTSIZE*5] == 0 && inptr[DCTSIZE*6] == 0 &&
+ inptr[DCTSIZE*7] == 0) {
+ /* AC terms all zero */
+ int dcval = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]) << PASS1_BITS;
+
+ wsptr[DCTSIZE*0] = dcval;
+ wsptr[DCTSIZE*1] = dcval;
+ wsptr[DCTSIZE*2] = dcval;
+ wsptr[DCTSIZE*3] = dcval;
+ wsptr[DCTSIZE*4] = dcval;
+ wsptr[DCTSIZE*5] = dcval;
+ wsptr[DCTSIZE*6] = dcval;
+ wsptr[DCTSIZE*7] = dcval;
+
+ inptr++; /* advance pointers to next column */
+ quantptr++;
+ wsptr++;
+ continue;
+ }
+
+ /* Even part: reverse the even part of the forward DCT. */
+ /* The rotator is sqrt(2)*c(-6). */
+
+ z2 = DEQUANTIZE(inptr[DCTSIZE*2], quantptr[DCTSIZE*2]);
+ z3 = DEQUANTIZE(inptr[DCTSIZE*6], quantptr[DCTSIZE*6]);
+
+ z1 = MULTIPLY(z2 + z3, FIX_0_541196100);
+ tmp2 = z1 + MULTIPLY(z3, - FIX_1_847759065);
+ tmp3 = z1 + MULTIPLY(z2, FIX_0_765366865);
+
+ z2 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]);
+ z3 = DEQUANTIZE(inptr[DCTSIZE*4], quantptr[DCTSIZE*4]);
+
+ tmp0 = (z2 + z3) << CONST_BITS;
+ tmp1 = (z2 - z3) << CONST_BITS;
+
+ tmp10 = tmp0 + tmp3;
+ tmp13 = tmp0 - tmp3;
+ tmp11 = tmp1 + tmp2;
+ tmp12 = tmp1 - tmp2;
+
+ /* Odd part per figure 8; the matrix is unitary and hence its
+ * transpose is its inverse. i0..i3 are y7,y5,y3,y1 respectively.
+ */
+
+ tmp0 = DEQUANTIZE(inptr[DCTSIZE*7], quantptr[DCTSIZE*7]);
+ tmp1 = DEQUANTIZE(inptr[DCTSIZE*5], quantptr[DCTSIZE*5]);
+ tmp2 = DEQUANTIZE(inptr[DCTSIZE*3], quantptr[DCTSIZE*3]);
+ tmp3 = DEQUANTIZE(inptr[DCTSIZE*1], quantptr[DCTSIZE*1]);
+
+ z1 = tmp0 + tmp3;
+ z2 = tmp1 + tmp2;
+ z3 = tmp0 + tmp2;
+ z4 = tmp1 + tmp3;
+ z5 = MULTIPLY(z3 + z4, FIX_1_175875602); /* sqrt(2) * c3 */
+
+ tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* sqrt(2) * (-c1+c3+c5-c7) */
+ tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* sqrt(2) * ( c1+c3-c5+c7) */
+ tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* sqrt(2) * ( c1+c3+c5-c7) */
+ tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* sqrt(2) * ( c1+c3-c5-c7) */
+ z1 = MULTIPLY(z1, - FIX_0_899976223); /* sqrt(2) * (c7-c3) */
+ z2 = MULTIPLY(z2, - FIX_2_562915447); /* sqrt(2) * (-c1-c3) */
+ z3 = MULTIPLY(z3, - FIX_1_961570560); /* sqrt(2) * (-c3-c5) */
+ z4 = MULTIPLY(z4, - FIX_0_390180644); /* sqrt(2) * (c5-c3) */
+
+ z3 += z5;
+ z4 += z5;
+
+ tmp0 += z1 + z3;
+ tmp1 += z2 + z4;
+ tmp2 += z2 + z3;
+ tmp3 += z1 + z4;
+
+ /* Final output stage: inputs are tmp10..tmp13, tmp0..tmp3 */
+
+ wsptr[DCTSIZE*0] = (int) DESCALE(tmp10 + tmp3, CONST_BITS-PASS1_BITS);
+ wsptr[DCTSIZE*7] = (int) DESCALE(tmp10 - tmp3, CONST_BITS-PASS1_BITS);
+ wsptr[DCTSIZE*1] = (int) DESCALE(tmp11 + tmp2, CONST_BITS-PASS1_BITS);
+ wsptr[DCTSIZE*6] = (int) DESCALE(tmp11 - tmp2, CONST_BITS-PASS1_BITS);
+ wsptr[DCTSIZE*2] = (int) DESCALE(tmp12 + tmp1, CONST_BITS-PASS1_BITS);
+ wsptr[DCTSIZE*5] = (int) DESCALE(tmp12 - tmp1, CONST_BITS-PASS1_BITS);
+ wsptr[DCTSIZE*3] = (int) DESCALE(tmp13 + tmp0, CONST_BITS-PASS1_BITS);
+ wsptr[DCTSIZE*4] = (int) DESCALE(tmp13 - tmp0, CONST_BITS-PASS1_BITS);
+
+ inptr++; /* advance pointers to next column */
+ quantptr++;
+ wsptr++;
+ }
+
+ /* Pass 2: process rows from work array, store into output array. */
+ /* Note that we must descale the results by a factor of 8 == 2**3, */
+ /* and also undo the PASS1_BITS scaling. */
+
+ wsptr = workspace;
+ for (ctr = 0; ctr < DCTSIZE; ctr++) {
+ outptr = output_buf[ctr] + output_col;
+ /* Rows of zeroes can be exploited in the same way as we did with columns.
+ * However, the column calculation has created many nonzero AC terms, so
+ * the simplification applies less often (typically 5% to 10% of the time).
+ * On machines with very fast multiplication, it's possible that the
+ * test takes more time than it's worth. In that case this section
+ * may be commented out.
+ */
+
+#ifndef NO_ZERO_ROW_TEST
+ if (wsptr[1] == 0 && wsptr[2] == 0 && wsptr[3] == 0 && wsptr[4] == 0 &&
+ wsptr[5] == 0 && wsptr[6] == 0 && wsptr[7] == 0) {
+ /* AC terms all zero */
+ JSAMPLE dcval = range_limit[(int) DESCALE((INT32) wsptr[0], PASS1_BITS+3)
+ & RANGE_MASK];
+
+ outptr[0] = dcval;
+ outptr[1] = dcval;
+ outptr[2] = dcval;
+ outptr[3] = dcval;
+ outptr[4] = dcval;
+ outptr[5] = dcval;
+ outptr[6] = dcval;
+ outptr[7] = dcval;
+
+ wsptr += DCTSIZE; /* advance pointer to next row */
+ continue;
+ }
+#endif
+
+ /* Even part: reverse the even part of the forward DCT. */
+ /* The rotator is sqrt(2)*c(-6). */
+
+ z2 = (INT32) wsptr[2];
+ z3 = (INT32) wsptr[6];
+
+ z1 = MULTIPLY(z2 + z3, FIX_0_541196100);
+ tmp2 = z1 + MULTIPLY(z3, - FIX_1_847759065);
+ tmp3 = z1 + MULTIPLY(z2, FIX_0_765366865);
+
+ tmp0 = ((INT32) wsptr[0] + (INT32) wsptr[4]) << CONST_BITS;
+ tmp1 = ((INT32) wsptr[0] - (INT32) wsptr[4]) << CONST_BITS;
+
+ tmp10 = tmp0 + tmp3;
+ tmp13 = tmp0 - tmp3;
+ tmp11 = tmp1 + tmp2;
+ tmp12 = tmp1 - tmp2;
+
+ /* Odd part per figure 8; the matrix is unitary and hence its
+ * transpose is its inverse. i0..i3 are y7,y5,y3,y1 respectively.
+ */
+
+ tmp0 = (INT32) wsptr[7];
+ tmp1 = (INT32) wsptr[5];
+ tmp2 = (INT32) wsptr[3];
+ tmp3 = (INT32) wsptr[1];
+
+ z1 = tmp0 + tmp3;
+ z2 = tmp1 + tmp2;
+ z3 = tmp0 + tmp2;
+ z4 = tmp1 + tmp3;
+ z5 = MULTIPLY(z3 + z4, FIX_1_175875602); /* sqrt(2) * c3 */
+
+ tmp0 = MULTIPLY(tmp0, FIX_0_298631336); /* sqrt(2) * (-c1+c3+c5-c7) */
+ tmp1 = MULTIPLY(tmp1, FIX_2_053119869); /* sqrt(2) * ( c1+c3-c5+c7) */
+ tmp2 = MULTIPLY(tmp2, FIX_3_072711026); /* sqrt(2) * ( c1+c3+c5-c7) */
+ tmp3 = MULTIPLY(tmp3, FIX_1_501321110); /* sqrt(2) * ( c1+c3-c5-c7) */
+ z1 = MULTIPLY(z1, - FIX_0_899976223); /* sqrt(2) * (c7-c3) */
+ z2 = MULTIPLY(z2, - FIX_2_562915447); /* sqrt(2) * (-c1-c3) */
+ z3 = MULTIPLY(z3, - FIX_1_961570560); /* sqrt(2) * (-c3-c5) */
+ z4 = MULTIPLY(z4, - FIX_0_390180644); /* sqrt(2) * (c5-c3) */
+
+ z3 += z5;
+ z4 += z5;
+
+ tmp0 += z1 + z3;
+ tmp1 += z2 + z4;
+ tmp2 += z2 + z3;
+ tmp3 += z1 + z4;
+
+ /* Final output stage: inputs are tmp10..tmp13, tmp0..tmp3 */
+
+ outptr[0] = range_limit[(int) DESCALE(tmp10 + tmp3,
+ CONST_BITS+PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[7] = range_limit[(int) DESCALE(tmp10 - tmp3,
+ CONST_BITS+PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[1] = range_limit[(int) DESCALE(tmp11 + tmp2,
+ CONST_BITS+PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[6] = range_limit[(int) DESCALE(tmp11 - tmp2,
+ CONST_BITS+PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[2] = range_limit[(int) DESCALE(tmp12 + tmp1,
+ CONST_BITS+PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[5] = range_limit[(int) DESCALE(tmp12 - tmp1,
+ CONST_BITS+PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[3] = range_limit[(int) DESCALE(tmp13 + tmp0,
+ CONST_BITS+PASS1_BITS+3)
+ & RANGE_MASK];
+ outptr[4] = range_limit[(int) DESCALE(tmp13 - tmp0,
+ CONST_BITS+PASS1_BITS+3)
+ & RANGE_MASK];
+
+ wsptr += DCTSIZE; /* advance pointer to next row */
+ }
+}
+
+#endif /* DCT_ISLOW_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jidctred.c b/User/lib/lcd/gui/JPEG/jidctred.c
new file mode 100644
index 0000000..8b45362
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jidctred.c
@@ -0,0 +1,401 @@
+/*
+ * jidctred.c
+ *
+ * Copyright (C) 1994-1998, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains inverse-DCT routines that produce reduced-size output:
+ * either 4x4, 2x2, or 1x1 pixels from an 8x8 DCT block.
+ *
+ * The implementation is based on the Loeffler, Ligtenberg and Moschytz (LL&M)
+ * algorithm used in jidctint.c. We simply replace each 8-to-8 1-D IDCT step
+ * with an 8-to-4 step that produces the four averages of two adjacent outputs
+ * (or an 8-to-2 step producing two averages of four outputs, for 2x2 output).
+ * These steps were derived by computing the corresponding values at the end
+ * of the normal LL&M code, then simplifying as much as possible.
+ *
+ * 1x1 is trivial: just take the DC coefficient divided by 8.
+ *
+ * See jidctint.c for additional comments.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jdct.h" /* Private declarations for DCT subsystem */
+
+#ifdef IDCT_SCALING_SUPPORTED
+
+
+/*
+ * This module is specialized to the case DCTSIZE = 8.
+ */
+
+#if DCTSIZE != 8
+ Sorry, this code only copes with 8x8 DCTs. /* deliberate syntax err */
+#endif
+
+
+/* Scaling is the same as in jidctint.c. */
+
+#if BITS_IN_JSAMPLE == 8
+#define CONST_BITS 13
+#define PASS1_BITS 2
+#else
+#define CONST_BITS 13
+#define PASS1_BITS 1 /* lose a little precision to avoid overflow */
+#endif
+
+/* Some C compilers fail to reduce "FIX(constant)" at compile time, thus
+ * causing a lot of useless floating-point operations at run time.
+ * To get around this we use the following pre-calculated constants.
+ * If you change CONST_BITS you may want to add appropriate values.
+ * (With a reasonable C compiler, you can just rely on the FIX() macro...)
+ */
+
+#if CONST_BITS == 13
+#define FIX_0_211164243 ((INT32) 1730) /* FIX(0.211164243) */
+#define FIX_0_509795579 ((INT32) 4176) /* FIX(0.509795579) */
+#define FIX_0_601344887 ((INT32) 4926) /* FIX(0.601344887) */
+#define FIX_0_720959822 ((INT32) 5906) /* FIX(0.720959822) */
+#define FIX_0_765366865 ((INT32) 6270) /* FIX(0.765366865) */
+#define FIX_0_850430095 ((INT32) 6967) /* FIX(0.850430095) */
+#define FIX_0_899976223 ((INT32) 7373) /* FIX(0.899976223) */
+#define FIX_1_061594337 ((INT32) 8697) /* FIX(1.061594337) */
+#define FIX_1_272758580 ((INT32) 10426) /* FIX(1.272758580) */
+#define FIX_1_451774981 ((INT32) 11893) /* FIX(1.451774981) */
+#define FIX_1_847759065 ((INT32) 15137) /* FIX(1.847759065) */
+#define FIX_2_172734803 ((INT32) 17799) /* FIX(2.172734803) */
+#define FIX_2_562915447 ((INT32) 20995) /* FIX(2.562915447) */
+#define FIX_3_624509785 ((INT32) 29692) /* FIX(3.624509785) */
+#else
+#define FIX_0_211164243 FIX(0.211164243)
+#define FIX_0_509795579 FIX(0.509795579)
+#define FIX_0_601344887 FIX(0.601344887)
+#define FIX_0_720959822 FIX(0.720959822)
+#define FIX_0_765366865 FIX(0.765366865)
+#define FIX_0_850430095 FIX(0.850430095)
+#define FIX_0_899976223 FIX(0.899976223)
+#define FIX_1_061594337 FIX(1.061594337)
+#define FIX_1_272758580 FIX(1.272758580)
+#define FIX_1_451774981 FIX(1.451774981)
+#define FIX_1_847759065 FIX(1.847759065)
+#define FIX_2_172734803 FIX(2.172734803)
+#define FIX_2_562915447 FIX(2.562915447)
+#define FIX_3_624509785 FIX(3.624509785)
+#endif
+
+
+/* Multiply an INT32 variable by an INT32 constant to yield an INT32 result.
+ * For 8-bit samples with the recommended scaling, all the variable
+ * and constant values involved are no more than 16 bits wide, so a
+ * 16x16->32 bit multiply can be used instead of a full 32x32 multiply.
+ * For 12-bit samples, a full 32-bit multiplication will be needed.
+ */
+
+#if BITS_IN_JSAMPLE == 8
+#define MULTIPLY(var,const) MULTIPLY16C16(var,const)
+#else
+#define MULTIPLY(var,const) ((var) * (const))
+#endif
+
+
+/* Dequantize a coefficient by multiplying it by the multiplier-table
+ * entry; produce an int result. In this module, both inputs and result
+ * are 16 bits or less, so either int or short multiply will work.
+ */
+
+#define DEQUANTIZE(coef,quantval) (((ISLOW_MULT_TYPE) (coef)) * (quantval))
+
+
+/*
+ * Perform dequantization and inverse DCT on one block of coefficients,
+ * producing a reduced-size 4x4 output block.
+ */
+
+GLOBAL(void)
+jpeg_idct_4x4 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block,
+ JSAMPARRAY output_buf, JDIMENSION output_col)
+{
+ INT32 tmp0, tmp2, tmp10, tmp12;
+ INT32 z1, z2, z3, z4;
+ JCOEFPTR inptr;
+ ISLOW_MULT_TYPE * quantptr;
+ int * wsptr;
+ JSAMPROW outptr;
+ JSAMPLE *range_limit = IDCT_range_limit(cinfo);
+ int ctr;
+ int workspace[DCTSIZE*4]; /* buffers data between passes */
+ SHIFT_TEMPS
+
+ /* Pass 1: process columns from input, store into work array. */
+
+ inptr = coef_block;
+ quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
+ wsptr = workspace;
+ for (ctr = DCTSIZE; ctr > 0; inptr++, quantptr++, wsptr++, ctr--) {
+ /* Don't bother to process column 4, because second pass won't use it */
+ if (ctr == DCTSIZE-4)
+ continue;
+ if (inptr[DCTSIZE*1] == 0 && inptr[DCTSIZE*2] == 0 &&
+ inptr[DCTSIZE*3] == 0 && inptr[DCTSIZE*5] == 0 &&
+ inptr[DCTSIZE*6] == 0 && inptr[DCTSIZE*7] == 0) {
+ /* AC terms all zero; we need not examine term 4 for 4x4 output */
+ int dcval = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]) << PASS1_BITS;
+
+ wsptr[DCTSIZE*0] = dcval;
+ wsptr[DCTSIZE*1] = dcval;
+ wsptr[DCTSIZE*2] = dcval;
+ wsptr[DCTSIZE*3] = dcval;
+
+ continue;
+ }
+
+ /* Even part */
+
+ tmp0 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]);
+ tmp0 <<= (CONST_BITS+1);
+
+ z2 = DEQUANTIZE(inptr[DCTSIZE*2], quantptr[DCTSIZE*2]);
+ z3 = DEQUANTIZE(inptr[DCTSIZE*6], quantptr[DCTSIZE*6]);
+
+ tmp2 = MULTIPLY(z2, FIX_1_847759065) + MULTIPLY(z3, - FIX_0_765366865);
+
+ tmp10 = tmp0 + tmp2;
+ tmp12 = tmp0 - tmp2;
+
+ /* Odd part */
+
+ z1 = DEQUANTIZE(inptr[DCTSIZE*7], quantptr[DCTSIZE*7]);
+ z2 = DEQUANTIZE(inptr[DCTSIZE*5], quantptr[DCTSIZE*5]);
+ z3 = DEQUANTIZE(inptr[DCTSIZE*3], quantptr[DCTSIZE*3]);
+ z4 = DEQUANTIZE(inptr[DCTSIZE*1], quantptr[DCTSIZE*1]);
+
+ tmp0 = MULTIPLY(z1, - FIX_0_211164243) /* sqrt(2) * (c3-c1) */
+ + MULTIPLY(z2, FIX_1_451774981) /* sqrt(2) * (c3+c7) */
+ + MULTIPLY(z3, - FIX_2_172734803) /* sqrt(2) * (-c1-c5) */
+ + MULTIPLY(z4, FIX_1_061594337); /* sqrt(2) * (c5+c7) */
+
+ tmp2 = MULTIPLY(z1, - FIX_0_509795579) /* sqrt(2) * (c7-c5) */
+ + MULTIPLY(z2, - FIX_0_601344887) /* sqrt(2) * (c5-c1) */
+ + MULTIPLY(z3, FIX_0_899976223) /* sqrt(2) * (c3-c7) */
+ + MULTIPLY(z4, FIX_2_562915447); /* sqrt(2) * (c1+c3) */
+
+ /* Final output stage */
+
+ wsptr[DCTSIZE*0] = (int) DESCALE(tmp10 + tmp2, CONST_BITS-PASS1_BITS+1);
+ wsptr[DCTSIZE*3] = (int) DESCALE(tmp10 - tmp2, CONST_BITS-PASS1_BITS+1);
+ wsptr[DCTSIZE*1] = (int) DESCALE(tmp12 + tmp0, CONST_BITS-PASS1_BITS+1);
+ wsptr[DCTSIZE*2] = (int) DESCALE(tmp12 - tmp0, CONST_BITS-PASS1_BITS+1);
+ }
+
+ /* Pass 2: process 4 rows from work array, store into output array. */
+
+ wsptr = workspace;
+ for (ctr = 0; ctr < 4; ctr++) {
+ outptr = output_buf[ctr] + output_col;
+ /* It's not clear whether a zero row test is worthwhile here ... */
+
+#ifndef NO_ZERO_ROW_TEST
+ if (wsptr[1] == 0 && wsptr[2] == 0 && wsptr[3] == 0 &&
+ wsptr[5] == 0 && wsptr[6] == 0 && wsptr[7] == 0) {
+ /* AC terms all zero */
+ JSAMPLE dcval = range_limit[(int) DESCALE((INT32) wsptr[0], PASS1_BITS+3)
+ & RANGE_MASK];
+
+ outptr[0] = dcval;
+ outptr[1] = dcval;
+ outptr[2] = dcval;
+ outptr[3] = dcval;
+
+ wsptr += DCTSIZE; /* advance pointer to next row */
+ continue;
+ }
+#endif
+
+ /* Even part */
+
+ tmp0 = ((INT32) wsptr[0]) << (CONST_BITS+1);
+
+ tmp2 = MULTIPLY((INT32) wsptr[2], FIX_1_847759065)
+ + MULTIPLY((INT32) wsptr[6], - FIX_0_765366865);
+
+ tmp10 = tmp0 + tmp2;
+ tmp12 = tmp0 - tmp2;
+
+ /* Odd part */
+
+ z1 = (INT32) wsptr[7];
+ z2 = (INT32) wsptr[5];
+ z3 = (INT32) wsptr[3];
+ z4 = (INT32) wsptr[1];
+
+ tmp0 = MULTIPLY(z1, - FIX_0_211164243) /* sqrt(2) * (c3-c1) */
+ + MULTIPLY(z2, FIX_1_451774981) /* sqrt(2) * (c3+c7) */
+ + MULTIPLY(z3, - FIX_2_172734803) /* sqrt(2) * (-c1-c5) */
+ + MULTIPLY(z4, FIX_1_061594337); /* sqrt(2) * (c5+c7) */
+
+ tmp2 = MULTIPLY(z1, - FIX_0_509795579) /* sqrt(2) * (c7-c5) */
+ + MULTIPLY(z2, - FIX_0_601344887) /* sqrt(2) * (c5-c1) */
+ + MULTIPLY(z3, FIX_0_899976223) /* sqrt(2) * (c3-c7) */
+ + MULTIPLY(z4, FIX_2_562915447); /* sqrt(2) * (c1+c3) */
+
+ /* Final output stage */
+
+ outptr[0] = range_limit[(int) DESCALE(tmp10 + tmp2,
+ CONST_BITS+PASS1_BITS+3+1)
+ & RANGE_MASK];
+ outptr[3] = range_limit[(int) DESCALE(tmp10 - tmp2,
+ CONST_BITS+PASS1_BITS+3+1)
+ & RANGE_MASK];
+ outptr[1] = range_limit[(int) DESCALE(tmp12 + tmp0,
+ CONST_BITS+PASS1_BITS+3+1)
+ & RANGE_MASK];
+ outptr[2] = range_limit[(int) DESCALE(tmp12 - tmp0,
+ CONST_BITS+PASS1_BITS+3+1)
+ & RANGE_MASK];
+
+ wsptr += DCTSIZE; /* advance pointer to next row */
+ }
+}
+
+
+/*
+ * Perform dequantization and inverse DCT on one block of coefficients,
+ * producing a reduced-size 2x2 output block.
+ */
+
+GLOBAL(void)
+jpeg_idct_2x2 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block,
+ JSAMPARRAY output_buf, JDIMENSION output_col)
+{
+ INT32 tmp0, tmp10, z1;
+ JCOEFPTR inptr;
+ ISLOW_MULT_TYPE * quantptr;
+ int * wsptr;
+ JSAMPROW outptr;
+ JSAMPLE *range_limit = IDCT_range_limit(cinfo);
+ int ctr;
+ int workspace[DCTSIZE*2]; /* buffers data between passes */
+ SHIFT_TEMPS
+
+ /* Pass 1: process columns from input, store into work array. */
+
+ inptr = coef_block;
+ quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
+ wsptr = workspace;
+ for (ctr = DCTSIZE; ctr > 0; inptr++, quantptr++, wsptr++, ctr--) {
+ /* Don't bother to process columns 2,4,6 */
+ if (ctr == DCTSIZE-2 || ctr == DCTSIZE-4 || ctr == DCTSIZE-6)
+ continue;
+ if (inptr[DCTSIZE*1] == 0 && inptr[DCTSIZE*3] == 0 &&
+ inptr[DCTSIZE*5] == 0 && inptr[DCTSIZE*7] == 0) {
+ /* AC terms all zero; we need not examine terms 2,4,6 for 2x2 output */
+ int dcval = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]) << PASS1_BITS;
+
+ wsptr[DCTSIZE*0] = dcval;
+ wsptr[DCTSIZE*1] = dcval;
+
+ continue;
+ }
+
+ /* Even part */
+
+ z1 = DEQUANTIZE(inptr[DCTSIZE*0], quantptr[DCTSIZE*0]);
+ tmp10 = z1 << (CONST_BITS+2);
+
+ /* Odd part */
+
+ z1 = DEQUANTIZE(inptr[DCTSIZE*7], quantptr[DCTSIZE*7]);
+ tmp0 = MULTIPLY(z1, - FIX_0_720959822); /* sqrt(2) * (c7-c5+c3-c1) */
+ z1 = DEQUANTIZE(inptr[DCTSIZE*5], quantptr[DCTSIZE*5]);
+ tmp0 += MULTIPLY(z1, FIX_0_850430095); /* sqrt(2) * (-c1+c3+c5+c7) */
+ z1 = DEQUANTIZE(inptr[DCTSIZE*3], quantptr[DCTSIZE*3]);
+ tmp0 += MULTIPLY(z1, - FIX_1_272758580); /* sqrt(2) * (-c1+c3-c5-c7) */
+ z1 = DEQUANTIZE(inptr[DCTSIZE*1], quantptr[DCTSIZE*1]);
+ tmp0 += MULTIPLY(z1, FIX_3_624509785); /* sqrt(2) * (c1+c3+c5+c7) */
+
+ /* Final output stage */
+
+ wsptr[DCTSIZE*0] = (int) DESCALE(tmp10 + tmp0, CONST_BITS-PASS1_BITS+2);
+ wsptr[DCTSIZE*1] = (int) DESCALE(tmp10 - tmp0, CONST_BITS-PASS1_BITS+2);
+ }
+
+ /* Pass 2: process 2 rows from work array, store into output array. */
+
+ wsptr = workspace;
+ for (ctr = 0; ctr < 2; ctr++) {
+ outptr = output_buf[ctr] + output_col;
+ /* It's not clear whether a zero row test is worthwhile here ... */
+
+#ifndef NO_ZERO_ROW_TEST
+ if (wsptr[1] == 0 && wsptr[3] == 0 && wsptr[5] == 0 && wsptr[7] == 0) {
+ /* AC terms all zero */
+ JSAMPLE dcval = range_limit[(int) DESCALE((INT32) wsptr[0], PASS1_BITS+3)
+ & RANGE_MASK];
+
+ outptr[0] = dcval;
+ outptr[1] = dcval;
+
+ wsptr += DCTSIZE; /* advance pointer to next row */
+ continue;
+ }
+#endif
+
+ /* Even part */
+
+ tmp10 = ((INT32) wsptr[0]) << (CONST_BITS+2);
+
+ /* Odd part */
+
+ tmp0 = MULTIPLY((INT32) wsptr[7], - FIX_0_720959822) /* sqrt(2) * (c7-c5+c3-c1) */
+ + MULTIPLY((INT32) wsptr[5], FIX_0_850430095) /* sqrt(2) * (-c1+c3+c5+c7) */
+ + MULTIPLY((INT32) wsptr[3], - FIX_1_272758580) /* sqrt(2) * (-c1+c3-c5-c7) */
+ + MULTIPLY((INT32) wsptr[1], FIX_3_624509785); /* sqrt(2) * (c1+c3+c5+c7) */
+
+ /* Final output stage */
+
+ outptr[0] = range_limit[(int) DESCALE(tmp10 + tmp0,
+ CONST_BITS+PASS1_BITS+3+2)
+ & RANGE_MASK];
+ outptr[1] = range_limit[(int) DESCALE(tmp10 - tmp0,
+ CONST_BITS+PASS1_BITS+3+2)
+ & RANGE_MASK];
+
+ wsptr += DCTSIZE; /* advance pointer to next row */
+ }
+}
+
+
+/*
+ * Perform dequantization and inverse DCT on one block of coefficients,
+ * producing a reduced-size 1x1 output block.
+ */
+
+GLOBAL(void)
+jpeg_idct_1x1 (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block,
+ JSAMPARRAY output_buf, JDIMENSION output_col)
+{
+ int dcval;
+ ISLOW_MULT_TYPE * quantptr;
+ JSAMPLE *range_limit = IDCT_range_limit(cinfo);
+ SHIFT_TEMPS
+
+ /* We hardly need an inverse DCT routine for this: just take the
+ * average pixel value, which is one-eighth of the DC coefficient.
+ */
+ quantptr = (ISLOW_MULT_TYPE *) compptr->dct_table;
+ dcval = DEQUANTIZE(coef_block[0], quantptr[0]);
+ dcval = (int) DESCALE((INT32) dcval, 3);
+
+ output_buf[0][output_col] = range_limit[dcval & RANGE_MASK];
+}
+
+#else
+void jidctred_C(void);
+void jidctred_C(void) {} /* Avoid empty object files */
+#endif /* IDCT_SCALING_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jinclude.h b/User/lib/lcd/gui/JPEG/jinclude.h
new file mode 100644
index 0000000..ee832e4
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jinclude.h
@@ -0,0 +1,89 @@
+/*
+ * jinclude.h
+ *
+ * Copyright (C) 1991-1994, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file exists to provide a single place to fix any problems with
+ * including the wrong system include files. (Common problems are taken
+ * care of by the standard jconfig symbols, but on really weird systems
+ * you may have to edit this file.)
+ *
+ * NOTE: this file is NOT intended to be included by applications using the
+ * JPEG library. Most applications need only include jpeglib.h.
+ */
+
+
+/* Include auto-config file to find out which system include files we need. */
+
+#include "jconfig.h" /* auto configuration options */
+#define JCONFIG_INCLUDED /* so that jpeglib.h doesn't do it again */
+
+/*
+ * We need the NULL macro and size_t typedef.
+ * On an ANSI-conforming system it is sufficient to include .
+ * Otherwise, we get them from or ; we may have to
+ * pull in as well.
+ * Note that the core JPEG library does not require ;
+ * only the default error handler and data source/destination modules do.
+ * But we must pull it in because of the references to FILE in jpeglib.h.
+ * You can remove those references if you want to compile without .
+ */
+
+#ifdef HAVE_STDDEF_H
+#include
+#endif
+
+#include
+
+#ifdef NEED_SYS_TYPES_H
+#include
+#endif
+
+#include
+
+/*
+ * We need memory copying and zeroing functions, plus strncpy().
+ * ANSI and System V implementations declare these in .
+ * BSD doesn't have the mem() functions, but it does have bcopy()/bzero().
+ * Some systems may declare memset and memcpy in .
+ *
+ * NOTE: we assume the size parameters to these functions are of type size_t.
+ * Change the casts in these macros if not!
+ */
+
+#ifdef NEED_BSD_STRINGS
+
+#include
+#define MEMZERO(target,size) bzero((void *)(target), (size_t)(size))
+#define MEMCOPY(dest,src,size) bcopy((const void *)(src), (void *)(dest), (size_t)(size))
+
+#else /* not BSD, assume ANSI/SysV string lib */
+
+#include
+#define MEMZERO(target,size) memset((void *)(target), 0, (size_t)(size))
+#define MEMCOPY(dest,src,size) memcpy((void *)(dest), (const void *)(src), (size_t)(size))
+
+#endif
+
+/*
+ * In ANSI C, and indeed any rational implementation, size_t is also the
+ * type returned by sizeof(). However, it seems there are some irrational
+ * implementations out there, in which sizeof() returns an int even though
+ * size_t is defined as long or unsigned long. To ensure consistent results
+ * we always use this SIZEOF() macro in place of using sizeof() directly.
+ */
+
+#define SIZEOF(object) ((size_t) sizeof(object))
+
+/*
+ * The modules that use fread() and fwrite() always invoke them through
+ * these macros. On some systems you may need to twiddle the argument casts.
+ * CAUTION: argument order is different from underlying functions!
+ */
+
+#define JFREAD(file,buf,sizeofbuf) \
+ ((size_t) fread((void *) (buf), (size_t) 1, (size_t) (sizeofbuf), (file)))
+#define JFWRITE(file,buf,sizeofbuf) \
+ ((size_t) fwrite((const void *) (buf), (size_t) 1, (size_t) (sizeofbuf), (file)))
diff --git a/User/lib/lcd/gui/JPEG/jmemmgr.c b/User/lib/lcd/gui/JPEG/jmemmgr.c
new file mode 100644
index 0000000..dab28c4
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jmemmgr.c
@@ -0,0 +1,1071 @@
+/*
+ * jmemmgr.c
+ *
+ * Copyright (C) 1991-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains the JPEG system-independent memory management
+ * routines. This code is usable across a wide variety of machines; most
+ * of the system dependencies have been isolated in a separate file.
+ * The major functions provided here are:
+ * * pool-based allocation and freeing of memory;
+ * * policy decisions about how to divide available memory among the
+ * virtual arrays;
+ * * control logic for swapping virtual arrays between main memory and
+ * backing storage.
+ * The separate system-dependent file provides the actual backing-storage
+ * access code, and it contains the policy decision about how much total
+ * main memory to use.
+ * This file is system-dependent in the sense that some of its functions
+ * are unnecessary in some systems. For example, if there is enough virtual
+ * memory so that backing storage will never be used, much of the virtual
+ * array control logic could be removed. (Of course, if you have that much
+ * memory then you shouldn't care about a little bit of unused code...)
+ */
+
+#define JPEG_INTERNALS
+#define AM_MEMORY_MANAGER /* we define jvirt_Xarray_control structs */
+#include "jinclude.h"
+#include "jpeglib.h"
+#include "jmemsys.h" /* import the system-dependent declarations */
+
+/*
+ * Some important notes:
+ * The allocation routines provided here must never return NULL.
+ * They should exit to error_exit if unsuccessful.
+ *
+ * It's not a good idea to try to merge the sarray and barray routines,
+ * even though they are textually almost the same, because samples are
+ * usually stored as bytes while coefficients are shorts or ints. Thus,
+ * in machines where byte pointers have a different representation from
+ * word pointers, the resulting machine code could not be the same.
+ */
+
+
+/*
+ * Many machines require storage alignment: longs must start on 4-byte
+ * boundaries, doubles on 8-byte boundaries, etc. On such machines, malloc()
+ * always returns pointers that are multiples of the worst-case alignment
+ * requirement, and we had better do so too.
+ * There isn't any really portable way to determine the worst-case alignment
+ * requirement. This module assumes that the alignment requirement is
+ * multiples of sizeof(ALIGN_TYPE).
+ * By default, we define ALIGN_TYPE as double. This is necessary on some
+ * workstations (where doubles really do need 8-byte alignment) and will work
+ * fine on nearly everything. If your machine has lesser alignment needs,
+ * you can save a few bytes by making ALIGN_TYPE smaller.
+ * The only place I know of where this will NOT work is certain Macintosh
+ * 680x0 compilers that define double as a 10-byte IEEE extended float.
+ * Doing 10-byte alignment is counterproductive because longwords won't be
+ * aligned well. Put "#define ALIGN_TYPE long" in jconfig.h if you have
+ * such a compiler.
+ */
+
+#ifndef ALIGN_TYPE /* so can override from jconfig.h */
+#define ALIGN_TYPE double
+#endif
+
+
+/*
+ * We allocate objects from "pools", where each pool is gotten with a single
+ * request to jpeg_get_small() or jpeg_get_large(). There is no per-object
+ * overhead within a pool, except for alignment padding. Each pool has a
+ * header with a link to the next pool of the same class.
+ * Small and large pool headers are identical except that the latter's
+ * link pointer must be FAR on 80x86 machines.
+ * Notice that the "real" header fields are union'ed with a dummy ALIGN_TYPE
+ * field. This forces the compiler to make SIZEOF(small_pool_hdr) a multiple
+ * of the alignment requirement of ALIGN_TYPE.
+ */
+
+typedef union small_pool_struct * small_pool_ptr;
+
+typedef union small_pool_struct {
+ struct {
+ small_pool_ptr next; /* next in list of pools */
+ size_t bytes_used; /* how many bytes already used within pool */
+ size_t bytes_left; /* bytes still available in this pool */
+ } hdr;
+ ALIGN_TYPE dummy; /* included in union to ensure alignment */
+} small_pool_hdr;
+
+typedef union large_pool_struct FAR * large_pool_ptr;
+
+typedef union large_pool_struct {
+ struct {
+ large_pool_ptr next; /* next in list of pools */
+ size_t bytes_used; /* how many bytes already used within pool */
+ size_t bytes_left; /* bytes still available in this pool */
+ } hdr;
+ ALIGN_TYPE dummy; /* included in union to ensure alignment */
+} large_pool_hdr;
+
+
+/*
+ * Here is the full definition of a memory manager object.
+ */
+
+typedef struct {
+ struct jpeg_memory_mgr pub; /* public fields */
+
+ /* Each pool identifier (lifetime class) names a linked list of pools. */
+ small_pool_ptr small_list[JPOOL_NUMPOOLS];
+ large_pool_ptr large_list[JPOOL_NUMPOOLS];
+
+ /* Since we only have one lifetime class of virtual arrays, only one
+ * linked list is necessary (for each datatype). Note that the virtual
+ * array control blocks being linked together are actually stored somewhere
+ * in the small-pool list.
+ */
+ jvirt_sarray_ptr virt_sarray_list;
+ jvirt_barray_ptr virt_barray_list;
+
+ /* This counts total space obtained from jpeg_get_small/large */
+ long total_space_allocated;
+
+ /* alloc_sarray and alloc_barray set this value for use by virtual
+ * array routines.
+ */
+ JDIMENSION last_rowsperchunk; /* from most recent alloc_sarray/barray */
+} my_memory_mgr;
+
+typedef my_memory_mgr * my_mem_ptr;
+
+
+/*
+ * The control blocks for virtual arrays.
+ * Note that these blocks are allocated in the "small" pool area.
+ * System-dependent info for the associated backing store (if any) is hidden
+ * inside the backing_store_info struct.
+ */
+
+struct jvirt_sarray_control {
+ JSAMPARRAY mem_buffer; /* => the in-memory buffer */
+ JDIMENSION rows_in_array; /* total virtual array height */
+ JDIMENSION samplesperrow; /* width of array (and of memory buffer) */
+ JDIMENSION maxaccess; /* max rows accessed by access_virt_sarray */
+ JDIMENSION rows_in_mem; /* height of memory buffer */
+ JDIMENSION rowsperchunk; /* allocation chunk size in mem_buffer */
+ JDIMENSION cur_start_row; /* first logical row # in the buffer */
+ JDIMENSION first_undef_row; /* row # of first uninitialized row */
+ boolean pre_zero; /* pre-zero mode requested? */
+ boolean dirty; /* do current buffer contents need written? */
+ boolean b_s_open; /* is backing-store data valid? */
+ jvirt_sarray_ptr next; /* link to next virtual sarray control block */
+ backing_store_info b_s_info; /* System-dependent control info */
+};
+
+struct jvirt_barray_control {
+ JBLOCKARRAY mem_buffer; /* => the in-memory buffer */
+ JDIMENSION rows_in_array; /* total virtual array height */
+ JDIMENSION blocksperrow; /* width of array (and of memory buffer) */
+ JDIMENSION maxaccess; /* max rows accessed by access_virt_barray */
+ JDIMENSION rows_in_mem; /* height of memory buffer */
+ JDIMENSION rowsperchunk; /* allocation chunk size in mem_buffer */
+ JDIMENSION cur_start_row; /* first logical row # in the buffer */
+ JDIMENSION first_undef_row; /* row # of first uninitialized row */
+ boolean pre_zero; /* pre-zero mode requested? */
+ boolean dirty; /* do current buffer contents need written? */
+ boolean b_s_open; /* is backing-store data valid? */
+ jvirt_barray_ptr next; /* link to next virtual barray control block */
+ backing_store_info b_s_info; /* System-dependent control info */
+};
+
+
+#ifdef MEM_STATS /* optional extra stuff for statistics */
+
+LOCAL(void)
+print_mem_stats (j_common_ptr cinfo, int pool_id)
+{
+ my_mem_ptr mem = (my_mem_ptr) cinfo->mem;
+ small_pool_ptr shdr_ptr;
+ large_pool_ptr lhdr_ptr;
+
+ /* Since this is only a debugging stub, we can cheat a little by using
+ * fprintf directly rather than going through the trace message code.
+ * This is helpful because message parm array can't handle longs.
+ */
+ fprintf(stderr, "Freeing pool %d, total space = %ld\n",
+ pool_id, mem->total_space_allocated);
+
+ for (lhdr_ptr = mem->large_list[pool_id]; lhdr_ptr != NULL;
+ lhdr_ptr = lhdr_ptr->hdr.next) {
+ fprintf(stderr, " Large chunk used %ld\n",
+ (long) lhdr_ptr->hdr.bytes_used);
+ }
+
+ for (shdr_ptr = mem->small_list[pool_id]; shdr_ptr != NULL;
+ shdr_ptr = shdr_ptr->hdr.next) {
+ fprintf(stderr, " Small chunk used %ld free %ld\n",
+ (long) shdr_ptr->hdr.bytes_used,
+ (long) shdr_ptr->hdr.bytes_left);
+ }
+}
+
+#endif /* MEM_STATS */
+
+
+LOCAL(void)
+out_of_memory (j_common_ptr cinfo, int which)
+/* Report an out-of-memory error and stop execution */
+/* If we compiled MEM_STATS support, report alloc requests before dying */
+{
+#ifdef MEM_STATS
+ cinfo->err->trace_level = 2; /* force self_destruct to report stats */
+#endif
+ ERREXIT1(cinfo, JERR_OUT_OF_MEMORY, which);
+}
+
+
+/*
+ * Allocation of "small" objects.
+ *
+ * For these, we use pooled storage. When a new pool must be created,
+ * we try to get enough space for the current request plus a "slop" factor,
+ * where the slop will be the amount of leftover space in the new pool.
+ * The speed vs. space tradeoff is largely determined by the slop values.
+ * A different slop value is provided for each pool class (lifetime),
+ * and we also distinguish the first pool of a class from later ones.
+ * NOTE: the values given work fairly well on both 16- and 32-bit-int
+ * machines, but may be too small if longs are 64 bits or more.
+ */
+
+static const size_t first_pool_slop[JPOOL_NUMPOOLS] =
+{
+ 1600, /* first PERMANENT pool */
+ 16000 /* first IMAGE pool */
+};
+
+static const size_t extra_pool_slop[JPOOL_NUMPOOLS] =
+{
+ 0, /* additional PERMANENT pools */
+ 5000 /* additional IMAGE pools */
+};
+
+#define MIN_SLOP 50 /* greater than 0 to avoid futile looping */
+
+
+METHODDEF(void *) alloc_small (j_common_ptr cinfo, int pool_id, size_t sizeofobject)
+/* Allocate a "small" object */
+{
+ my_mem_ptr mem = (my_mem_ptr) cinfo->mem;
+ small_pool_ptr hdr_ptr, prev_hdr_ptr;
+ char * data_ptr;
+ size_t odd_bytes, min_request, slop;
+
+ /* Check for unsatisfiable request (do now to ensure no overflow below) */
+ if (sizeofobject > (size_t) (MAX_ALLOC_CHUNK-SIZEOF(small_pool_hdr)))
+ out_of_memory(cinfo, 1); /* request exceeds malloc's ability */
+
+ /* Round up the requested size to a multiple of SIZEOF(ALIGN_TYPE) */
+ odd_bytes = sizeofobject % SIZEOF(ALIGN_TYPE);
+ if (odd_bytes > 0)
+ sizeofobject += SIZEOF(ALIGN_TYPE) - odd_bytes;
+
+ /* See if space is available in any existing pool */
+ if (pool_id < 0 || pool_id >= JPOOL_NUMPOOLS)
+ ERREXIT1(cinfo, JERR_BAD_POOL_ID, pool_id); /* safety check */
+ prev_hdr_ptr = NULL;
+ hdr_ptr = mem->small_list[pool_id];
+ while (hdr_ptr != NULL) {
+ if (hdr_ptr->hdr.bytes_left >= sizeofobject)
+ break; /* found pool with enough space */
+ prev_hdr_ptr = hdr_ptr;
+ hdr_ptr = hdr_ptr->hdr.next;
+ }
+
+ /* Time to make a new pool? */
+ if (hdr_ptr == NULL) {
+ /* min_request is what we need now, slop is what will be leftover */
+ min_request = sizeofobject + SIZEOF(small_pool_hdr);
+ if (prev_hdr_ptr == NULL) /* first pool in class? */
+ slop = first_pool_slop[pool_id];
+ else
+ slop = extra_pool_slop[pool_id];
+ /* Don't ask for more than MAX_ALLOC_CHUNK */
+ if (slop > (size_t) (MAX_ALLOC_CHUNK-min_request))
+ slop = (size_t) (MAX_ALLOC_CHUNK-min_request);
+ /* Try to get space, if fail reduce slop and try again */
+ while(1) {
+ hdr_ptr = (small_pool_ptr) jpeg_get_small(cinfo, min_request + slop);
+ if (hdr_ptr != NULL)
+ break;
+ slop /= 2;
+ if (slop < MIN_SLOP) /* give up when it gets real small */
+ out_of_memory(cinfo, 2); /* jpeg_get_small failed */
+ }
+ mem->total_space_allocated += min_request + slop;
+ /* Success, initialize the new pool header and add to end of list */
+ hdr_ptr->hdr.next = NULL;
+ hdr_ptr->hdr.bytes_used = 0;
+ hdr_ptr->hdr.bytes_left = sizeofobject + slop;
+ if (prev_hdr_ptr == NULL) /* first pool in class? */
+ mem->small_list[pool_id] = hdr_ptr;
+ else
+ prev_hdr_ptr->hdr.next = hdr_ptr;
+ }
+
+ /* OK, allocate the object from the current pool */
+ data_ptr = (char *) (hdr_ptr + 1); /* point to first data byte in pool */
+ data_ptr += hdr_ptr->hdr.bytes_used; /* point to place for object */
+ hdr_ptr->hdr.bytes_used += sizeofobject;
+ hdr_ptr->hdr.bytes_left -= sizeofobject;
+
+ return (void *) data_ptr;
+}
+
+
+/*
+ * Allocation of "large" objects.
+ *
+ * The external semantics of these are the same as "small" objects,
+ * except that FAR pointers are used on 80x86. However the pool
+ * management heuristics are quite different. We assume that each
+ * request is large enough that it may as well be passed directly to
+ * jpeg_get_large; the pool management just links everything together
+ * so that we can free it all on demand.
+ * Note: the major use of "large" objects is in JSAMPARRAY and JBLOCKARRAY
+ * structures. The routines that create these structures (see below)
+ * deliberately bunch rows together to ensure a large request size.
+ */
+
+METHODDEF(void FAR *) alloc_large (j_common_ptr cinfo, int pool_id, size_t sizeofobject) /* Allocate a "large" object */ {
+ my_mem_ptr mem = (my_mem_ptr) cinfo->mem;
+ large_pool_ptr hdr_ptr;
+ size_t odd_bytes;
+
+ /* Check for unsatisfiable request (do now to ensure no overflow below) */
+ if (sizeofobject > (size_t) (MAX_ALLOC_CHUNK-SIZEOF(large_pool_hdr))) {
+ out_of_memory(cinfo, 3); /* request exceeds malloc's ability */
+ }
+ /* Round up the requested size to a multiple of SIZEOF(ALIGN_TYPE) */
+ odd_bytes = sizeofobject % SIZEOF(ALIGN_TYPE);
+ if (odd_bytes > 0) {
+ sizeofobject += SIZEOF(ALIGN_TYPE) - odd_bytes;
+ }
+ /* Always make a new pool */
+ if (pool_id < 0 || pool_id >= JPOOL_NUMPOOLS) {
+ ERREXIT1(cinfo, JERR_BAD_POOL_ID, pool_id); /* safety check */
+ }
+
+ hdr_ptr = (large_pool_ptr) jpeg_get_small/*RS: Changed from jpeg_get_large*/ (cinfo, sizeofobject + SIZEOF(large_pool_hdr));
+ if (hdr_ptr == NULL) {
+ out_of_memory(cinfo, 4); /* jpeg_get_large failed */
+ }
+ mem->total_space_allocated += sizeofobject + SIZEOF(large_pool_hdr);
+ /* Success, initialize the new pool header and add to list */
+ hdr_ptr->hdr.next = mem->large_list[pool_id];
+ /* We maintain space counts in each pool header for statistical purposes,
+ * even though they are not needed for allocation.
+ */
+ hdr_ptr->hdr.bytes_used = sizeofobject;
+ hdr_ptr->hdr.bytes_left = 0;
+ mem->large_list[pool_id] = hdr_ptr;
+
+ return (void FAR *) (hdr_ptr + 1); /* point to first data byte in pool */
+}
+
+
+/*
+ * Creation of 2-D sample arrays.
+ * The pointers are in near heap, the samples themselves in FAR heap.
+ *
+ * To minimize allocation overhead and to allow I/O of large contiguous
+ * blocks, we allocate the sample rows in groups of as many rows as possible
+ * without exceeding MAX_ALLOC_CHUNK total bytes per allocation request.
+ * NB: the virtual array control routines, later in this file, know about
+ * this chunking of rows. The rowsperchunk value is left in the mem manager
+ * object so that it can be saved away if this sarray is the workspace for
+ * a virtual array.
+ */
+
+METHODDEF(JSAMPARRAY) alloc_sarray (j_common_ptr cinfo, int pool_id, JDIMENSION samplesperrow, JDIMENSION numrows) {
+/* Allocate a 2-D sample array */
+ my_mem_ptr mem = (my_mem_ptr) cinfo->mem;
+ JSAMPARRAY result;
+ JSAMPROW workspace;
+ JDIMENSION rowsperchunk, currow, i;
+ long ltemp;
+
+ /* Calculate max # of rows allowed in one allocation chunk */
+ ltemp = (MAX_ALLOC_CHUNK-SIZEOF(large_pool_hdr)) /
+ ((long) samplesperrow * SIZEOF(JSAMPLE));
+ if (ltemp <= 0)
+ ERREXIT(cinfo, JERR_WIDTH_OVERFLOW);
+ if (ltemp < (long) numrows)
+ rowsperchunk = (JDIMENSION) ltemp;
+ else
+ rowsperchunk = numrows;
+ mem->last_rowsperchunk = rowsperchunk;
+
+ /* Get space for row pointers (small object) */
+ result = (JSAMPARRAY) alloc_small(cinfo, pool_id, (size_t) (numrows * SIZEOF(JSAMPROW)));
+ /* Get the rows themselves (large objects) */
+ currow = 0;
+ while (currow < numrows) {
+ rowsperchunk = MIN(rowsperchunk, numrows - currow);
+ workspace = (JSAMPROW) alloc_large(cinfo, pool_id,
+ (size_t) ((size_t) rowsperchunk * (size_t) samplesperrow
+ * SIZEOF(JSAMPLE)));
+ for (i = rowsperchunk; i > 0; i--) {
+ result[currow++] = workspace;
+ workspace += samplesperrow;
+ }
+ }
+
+ return result;
+}
+
+
+/*
+ * Creation of 2-D coefficient-block arrays.
+ * This is essentially the same as the code for sample arrays, above.
+ */
+
+METHODDEF(JBLOCKARRAY) alloc_barray (j_common_ptr cinfo, int pool_id, JDIMENSION blocksperrow, JDIMENSION numrows) {
+ /* Allocate a 2-D coefficient-block array */
+ my_mem_ptr mem = (my_mem_ptr) cinfo->mem;
+ JBLOCKARRAY result;
+ JBLOCKROW workspace;
+ JDIMENSION rowsperchunk, currow, i;
+ long ltemp;
+
+ /* Calculate max # of rows allowed in one allocation chunk */
+ ltemp = (MAX_ALLOC_CHUNK-SIZEOF(large_pool_hdr)) /
+ ((long) blocksperrow * SIZEOF(JBLOCK));
+ if (ltemp <= 0)
+ ERREXIT(cinfo, JERR_WIDTH_OVERFLOW);
+ if (ltemp < (long) numrows)
+ rowsperchunk = (JDIMENSION) ltemp;
+ else
+ rowsperchunk = numrows;
+ mem->last_rowsperchunk = rowsperchunk;
+
+ /* Get space for row pointers (small object) */
+ result = (JBLOCKARRAY) alloc_small(cinfo, pool_id,
+ (size_t) (numrows * SIZEOF(JBLOCKROW)));
+
+ /* Get the rows themselves (large objects) */
+ currow = 0;
+ while (currow < numrows) {
+ rowsperchunk = MIN(rowsperchunk, numrows - currow);
+ workspace = (JBLOCKROW) alloc_large(cinfo, pool_id,
+ (size_t) ((size_t) rowsperchunk * (size_t) blocksperrow
+ * SIZEOF(JBLOCK)));
+ for (i = rowsperchunk; i > 0; i--) {
+ result[currow++] = workspace;
+ workspace += blocksperrow;
+ }
+ }
+
+ return result;
+}
+
+
+/*
+ * About virtual array management:
+ *
+ * The above "normal" array routines are only used to allocate strip buffers
+ * (as wide as the image, but just a few rows high). Full-image-sized buffers
+ * are handled as "virtual" arrays. The array is still accessed a strip at a
+ * time, but the memory manager must save the whole array for repeated
+ * accesses. The intended implementation is that there is a strip buffer in
+ * memory (as high as is possible given the desired memory limit), plus a
+ * backing file that holds the rest of the array.
+ *
+ * The request_virt_array routines are told the total size of the image and
+ * the maximum number of rows that will be accessed at once. The in-memory
+ * buffer must be at least as large as the maxaccess value.
+ *
+ * The request routines create control blocks but not the in-memory buffers.
+ * That is postponed until realize_virt_arrays is called. At that time the
+ * total amount of space needed is known (approximately, anyway), so free
+ * memory can be divided up fairly.
+ *
+ * The access_virt_array routines are responsible for making a specific strip
+ * area accessible (after reading or writing the backing file, if necessary).
+ * Note that the access routines are told whether the caller intends to modify
+ * the accessed strip; during a read-only pass this saves having to rewrite
+ * data to disk. The access routines are also responsible for pre-zeroing
+ * any newly accessed rows, if pre-zeroing was requested.
+ *
+ * In current usage, the access requests are usually for nonoverlapping
+ * strips; that is, successive access start_row numbers differ by exactly
+ * num_rows = maxaccess. This means we can get good performance with simple
+ * buffer dump/reload logic, by making the in-memory buffer be a multiple
+ * of the access height; then there will never be accesses across bufferload
+ * boundaries. The code will still work with overlapping access requests,
+ * but it doesn't handle bufferload overlaps very efficiently.
+ */
+
+
+METHODDEF(jvirt_sarray_ptr) request_virt_sarray (j_common_ptr cinfo, int pool_id, boolean pre_zero, JDIMENSION samplesperrow, JDIMENSION numrows, JDIMENSION maxaccess) {
+ /* Request a virtual 2-D sample array */
+ my_mem_ptr mem = (my_mem_ptr) cinfo->mem;
+ jvirt_sarray_ptr result;
+
+ /* Only IMAGE-lifetime virtual arrays are currently supported */
+ if (pool_id != JPOOL_IMAGE) {
+ ERREXIT1(cinfo, JERR_BAD_POOL_ID, pool_id); /* safety check */
+ }
+ /* get control block */
+ result = (jvirt_sarray_ptr) alloc_small(cinfo, pool_id, SIZEOF(struct jvirt_sarray_control));
+ result->mem_buffer = NULL; /* marks array not yet realized */
+ result->rows_in_array = numrows;
+ result->samplesperrow = samplesperrow;
+ result->maxaccess = maxaccess;
+ result->pre_zero = pre_zero;
+ result->b_s_open = FALSE; /* no associated backing-store object */
+ result->next = mem->virt_sarray_list; /* add to list of virtual arrays */
+ mem->virt_sarray_list = result;
+
+ return result;
+}
+
+
+METHODDEF(jvirt_barray_ptr) request_virt_barray (j_common_ptr cinfo, int pool_id, boolean pre_zero, JDIMENSION blocksperrow, JDIMENSION numrows, JDIMENSION maxaccess) {
+ /* Request a virtual 2-D coefficient-block array */
+ my_mem_ptr mem = (my_mem_ptr) cinfo->mem;
+ jvirt_barray_ptr result;
+ /* Only IMAGE-lifetime virtual arrays are currently supported */
+ if (pool_id != JPOOL_IMAGE)
+ ERREXIT1(cinfo, JERR_BAD_POOL_ID, pool_id); /* safety check */
+
+ /* get control block */
+ result = (jvirt_barray_ptr) alloc_small(cinfo, pool_id, SIZEOF(struct jvirt_barray_control));
+ result->mem_buffer = NULL; /* marks array not yet realized */
+ result->rows_in_array = numrows;
+ result->blocksperrow = blocksperrow;
+ result->maxaccess = maxaccess;
+ result->pre_zero = pre_zero;
+ result->b_s_open = FALSE; /* no associated backing-store object */
+ result->next = mem->virt_barray_list; /* add to list of virtual arrays */
+ mem->virt_barray_list = result;
+
+ return result;
+}
+
+
+METHODDEF(void) realize_virt_arrays (j_common_ptr cinfo) {
+/* Allocate the in-memory buffers for any unrealized virtual arrays */
+ my_mem_ptr mem = (my_mem_ptr) cinfo->mem;
+ long space_per_minheight, maximum_space/*, avail_mem*/;
+/* long minheights, max_minheights;*/
+ jvirt_sarray_ptr sptr;
+ jvirt_barray_ptr bptr;
+
+ /* Compute the minimum space needed (maxaccess rows in each buffer)
+ * and the maximum space needed (full image height in each buffer).
+ * These may be of use to the system-dependent jpeg_mem_available routine.
+ */
+ space_per_minheight = 0;
+ maximum_space = 0;
+ for (sptr = mem->virt_sarray_list; sptr != NULL; sptr = sptr->next) {
+ if (sptr->mem_buffer == NULL) { /* if not realized yet */
+ space_per_minheight += (long) sptr->maxaccess *
+ (long) sptr->samplesperrow * SIZEOF(JSAMPLE);
+ maximum_space += (long) sptr->rows_in_array *
+ (long) sptr->samplesperrow * SIZEOF(JSAMPLE);
+ }
+ }
+ for (bptr = mem->virt_barray_list; bptr != NULL; bptr = bptr->next) {
+ if (bptr->mem_buffer == NULL) { /* if not realized yet */
+ space_per_minheight += (long) bptr->maxaccess *
+ (long) bptr->blocksperrow * SIZEOF(JBLOCK);
+ maximum_space += (long) bptr->rows_in_array *
+ (long) bptr->blocksperrow * SIZEOF(JBLOCK);
+ }
+ }
+
+ if (space_per_minheight <= 0)
+ return; /* no unrealized arrays, no work */
+
+#if 0 /*RS*/
+ /* Determine amount of memory to actually use; this is system-dependent. */
+ avail_mem = jpeg_mem_available(cinfo, space_per_minheight, maximum_space, mem->total_space_allocated);
+
+ /* If the maximum space needed is available, make all the buffers full
+ * height; otherwise parcel it out with the same number of minheights
+ * in each buffer.
+ */
+ if (avail_mem >= maximum_space)
+ max_minheights = 1000000000L;
+ else {
+ max_minheights = avail_mem / space_per_minheight;
+ /* If there doesn't seem to be enough space, try to get the minimum
+ * anyway. This allows a "stub" implementation of jpeg_mem_available().
+ */
+ if (max_minheights <= 0)
+ max_minheights = 1;
+ }
+
+ /* Allocate the in-memory buffers and initialize backing store as needed. */
+ for (sptr = mem->virt_sarray_list; sptr != NULL; sptr = sptr->next) {
+ if (sptr->mem_buffer == NULL) { /* if not realized yet */
+ minheights = ((long) sptr->rows_in_array - 1L) / sptr->maxaccess + 1L;
+ if (minheights <= max_minheights) {
+ /* This buffer fits in memory */
+ sptr->rows_in_mem = sptr->rows_in_array;
+ } else {
+ /* It doesn't fit in memory, create backing store. */
+ sptr->rows_in_mem = (JDIMENSION) (max_minheights * sptr->maxaccess);
+ jpeg_open_backing_store(cinfo, & sptr->b_s_info, (long) sptr->rows_in_array * (long) sptr->samplesperrow * (long) SIZEOF(JSAMPLE));
+ sptr->b_s_open = TRUE;
+ }
+ sptr->mem_buffer = alloc_sarray(cinfo, JPOOL_IMAGE,
+ sptr->samplesperrow, sptr->rows_in_mem);
+ sptr->rowsperchunk = mem->last_rowsperchunk;
+ sptr->cur_start_row = 0;
+ sptr->first_undef_row = 0;
+ sptr->dirty = FALSE;
+ }
+ }
+
+ for (bptr = mem->virt_barray_list; bptr != NULL; bptr = bptr->next) {
+ if (bptr->mem_buffer == NULL) { /* if not realized yet */
+ minheights = ((long) bptr->rows_in_array - 1L) / bptr->maxaccess + 1L;
+ if (minheights <= max_minheights) {
+ /* This buffer fits in memory */
+ bptr->rows_in_mem = bptr->rows_in_array;
+ } else {
+ /* It doesn't fit in memory, create backing store. */
+ bptr->rows_in_mem = (JDIMENSION) (max_minheights * bptr->maxaccess);
+ jpeg_open_backing_store(cinfo, & bptr->b_s_info,
+ (long) bptr->rows_in_array *
+ (long) bptr->blocksperrow *
+ (long) SIZEOF(JBLOCK));
+ bptr->b_s_open = TRUE;
+ }
+ bptr->mem_buffer = alloc_barray(cinfo, JPOOL_IMAGE,
+ bptr->blocksperrow, bptr->rows_in_mem);
+ bptr->rowsperchunk = mem->last_rowsperchunk;
+ bptr->cur_start_row = 0;
+ bptr->first_undef_row = 0;
+ bptr->dirty = FALSE;
+ }
+ }
+# else
+ ERREXIT(cinfo, JERR_NO_BACKING_STORE);
+#endif
+}
+
+
+LOCAL(void) do_sarray_io (j_common_ptr cinfo, jvirt_sarray_ptr ptr, boolean writing) {
+/* Do backing store read or write of a virtual sample array */
+ long bytesperrow, file_offset, byte_count, rows, thisrow, i;
+
+ bytesperrow = (long) ptr->samplesperrow * SIZEOF(JSAMPLE);
+ file_offset = ptr->cur_start_row * bytesperrow;
+ /* Loop to read or write each allocation chunk in mem_buffer */
+ for (i = 0; i < (long) ptr->rows_in_mem; i += ptr->rowsperchunk) {
+ /* One chunk, but check for short chunk at end of buffer */
+ rows = MIN((long) ptr->rowsperchunk, (long) ptr->rows_in_mem - i);
+ /* Transfer no more than is currently defined */
+ thisrow = (long) ptr->cur_start_row + i;
+ rows = MIN(rows, (long) ptr->first_undef_row - thisrow);
+ /* Transfer no more than fits in file */
+ rows = MIN(rows, (long) ptr->rows_in_array - thisrow);
+ if (rows <= 0) /* this chunk might be past end of file! */
+ break;
+ byte_count = rows * bytesperrow;
+ if (writing)
+ (*ptr->b_s_info.write_backing_store) (cinfo, & ptr->b_s_info,
+ (void FAR *) ptr->mem_buffer[i],
+ file_offset, byte_count);
+ else
+ (*ptr->b_s_info.read_backing_store) (cinfo, & ptr->b_s_info,
+ (void FAR *) ptr->mem_buffer[i],
+ file_offset, byte_count);
+ file_offset += byte_count;
+ }
+}
+
+
+/* Do backing store read or write of a virtual coefficient-block array */
+LOCAL(void) do_barray_io (j_common_ptr cinfo, jvirt_barray_ptr ptr, boolean writing) {
+ long bytesperrow, file_offset, byte_count, rows, thisrow, i;
+
+ bytesperrow = (long) ptr->blocksperrow * SIZEOF(JBLOCK);
+ file_offset = ptr->cur_start_row * bytesperrow;
+ /* Loop to read or write each allocation chunk in mem_buffer */
+ for (i = 0; i < (long) ptr->rows_in_mem; i += ptr->rowsperchunk) {
+ /* One chunk, but check for short chunk at end of buffer */
+ rows = MIN((long) ptr->rowsperchunk, (long) ptr->rows_in_mem - i);
+ /* Transfer no more than is currently defined */
+ thisrow = (long) ptr->cur_start_row + i;
+ rows = MIN(rows, (long) ptr->first_undef_row - thisrow);
+ /* Transfer no more than fits in file */
+ rows = MIN(rows, (long) ptr->rows_in_array - thisrow);
+ if (rows <= 0) /* this chunk might be past end of file! */
+ break;
+ byte_count = rows * bytesperrow;
+ if (writing)
+ (*ptr->b_s_info.write_backing_store) (cinfo, & ptr->b_s_info,
+ (void FAR *) ptr->mem_buffer[i],
+ file_offset, byte_count);
+ else
+ (*ptr->b_s_info.read_backing_store) (cinfo, & ptr->b_s_info,
+ (void FAR *) ptr->mem_buffer[i],
+ file_offset, byte_count);
+ file_offset += byte_count;
+ }
+}
+
+
+/* Access the part of a virtual sample array starting at start_row */
+/* and extending for num_rows rows. writable is true if */
+/* caller intends to modify the accessed area. */
+METHODDEF(JSAMPARRAY) access_virt_sarray (j_common_ptr cinfo, jvirt_sarray_ptr ptr, JDIMENSION start_row, JDIMENSION num_rows, boolean writable) {
+ JDIMENSION end_row = start_row + num_rows;
+ JDIMENSION undef_row;
+
+ /* debugging check */
+ if (end_row > ptr->rows_in_array || num_rows > ptr->maxaccess ||
+ ptr->mem_buffer == NULL)
+ ERREXIT(cinfo, JERR_BAD_VIRTUAL_ACCESS);
+
+ /* Make the desired part of the virtual array accessible */
+ if (start_row < ptr->cur_start_row ||
+ end_row > ptr->cur_start_row+ptr->rows_in_mem) {
+ if (! ptr->b_s_open)
+ ERREXIT(cinfo, JERR_VIRTUAL_BUG);
+ /* Flush old buffer contents if necessary */
+ if (ptr->dirty) {
+ do_sarray_io(cinfo, ptr, TRUE);
+ ptr->dirty = FALSE;
+ }
+ /* Decide what part of virtual array to access.
+ * Algorithm: if target address > current window, assume forward scan,
+ * load starting at target address. If target address < current window,
+ * assume backward scan, load so that target area is top of window.
+ * Note that when switching from forward write to forward read, will have
+ * start_row = 0, so the limiting case applies and we load from 0 anyway.
+ */
+ if (start_row > ptr->cur_start_row) {
+ ptr->cur_start_row = start_row;
+ } else {
+ /* use long arithmetic here to avoid overflow & unsigned problems */
+ long ltemp;
+
+ ltemp = (long) end_row - (long) ptr->rows_in_mem;
+ if (ltemp < 0)
+ ltemp = 0; /* don't fall off front end of file */
+ ptr->cur_start_row = (JDIMENSION) ltemp;
+ }
+ /* Read in the selected part of the array.
+ * During the initial write pass, we will do no actual read
+ * because the selected part is all undefined.
+ */
+ do_sarray_io(cinfo, ptr, FALSE);
+ }
+ /* Ensure the accessed part of the array is defined; prezero if needed.
+ * To improve locality of access, we only prezero the part of the array
+ * that the caller is about to access, not the entire in-memory array.
+ */
+ if (ptr->first_undef_row < end_row) {
+ if (ptr->first_undef_row < start_row) {
+ if (writable) /* writer skipped over a section of array */
+ ERREXIT(cinfo, JERR_BAD_VIRTUAL_ACCESS);
+ undef_row = start_row; /* but reader is allowed to read ahead */
+ } else {
+ undef_row = ptr->first_undef_row;
+ }
+ if (writable)
+ ptr->first_undef_row = end_row;
+ if (ptr->pre_zero) {
+ size_t bytesperrow = (size_t) ptr->samplesperrow * SIZEOF(JSAMPLE);
+ undef_row -= ptr->cur_start_row; /* make indexes relative to buffer */
+ end_row -= ptr->cur_start_row;
+ while (undef_row < end_row) {
+ jzero_far((void FAR *) ptr->mem_buffer[undef_row], bytesperrow);
+ undef_row++;
+ }
+ } else {
+ if (! writable) /* reader looking at undefined data */
+ ERREXIT(cinfo, JERR_BAD_VIRTUAL_ACCESS);
+ }
+ }
+ /* Flag the buffer dirty if caller will write in it */
+ if (writable)
+ ptr->dirty = TRUE;
+ /* Return address of proper part of the buffer */
+ return ptr->mem_buffer + (start_row - ptr->cur_start_row);
+}
+
+
+/* Access the part of a virtual block array starting at start_row */
+/* and extending for num_rows rows. writable is true if */
+/* caller intends to modify the accessed area. */
+METHODDEF(JBLOCKARRAY) access_virt_barray (j_common_ptr cinfo, jvirt_barray_ptr ptr, JDIMENSION start_row, JDIMENSION num_rows, boolean writable) {
+ JDIMENSION end_row = start_row + num_rows;
+ JDIMENSION undef_row;
+
+ /* debugging check */
+ if (end_row > ptr->rows_in_array || num_rows > ptr->maxaccess ||
+ ptr->mem_buffer == NULL)
+ ERREXIT(cinfo, JERR_BAD_VIRTUAL_ACCESS);
+
+ /* Make the desired part of the virtual array accessible */
+ if (start_row < ptr->cur_start_row ||
+ end_row > ptr->cur_start_row+ptr->rows_in_mem) {
+ if (! ptr->b_s_open)
+ ERREXIT(cinfo, JERR_VIRTUAL_BUG);
+ /* Flush old buffer contents if necessary */
+ if (ptr->dirty) {
+ do_barray_io(cinfo, ptr, TRUE);
+ ptr->dirty = FALSE;
+ }
+ /* Decide what part of virtual array to access.
+ * Algorithm: if target address > current window, assume forward scan,
+ * load starting at target address. If target address < current window,
+ * assume backward scan, load so that target area is top of window.
+ * Note that when switching from forward write to forward read, will have
+ * start_row = 0, so the limiting case applies and we load from 0 anyway.
+ */
+ if (start_row > ptr->cur_start_row) {
+ ptr->cur_start_row = start_row;
+ } else {
+ /* use long arithmetic here to avoid overflow & unsigned problems */
+ long ltemp;
+
+ ltemp = (long) end_row - (long) ptr->rows_in_mem;
+ if (ltemp < 0)
+ ltemp = 0; /* don't fall off front end of file */
+ ptr->cur_start_row = (JDIMENSION) ltemp;
+ }
+ /* Read in the selected part of the array.
+ * During the initial write pass, we will do no actual read
+ * because the selected part is all undefined.
+ */
+ do_barray_io(cinfo, ptr, FALSE);
+ }
+ /* Ensure the accessed part of the array is defined; prezero if needed.
+ * To improve locality of access, we only prezero the part of the array
+ * that the caller is about to access, not the entire in-memory array.
+ */
+ if (ptr->first_undef_row < end_row) {
+ if (ptr->first_undef_row < start_row) {
+ if (writable) /* writer skipped over a section of array */
+ ERREXIT(cinfo, JERR_BAD_VIRTUAL_ACCESS);
+ undef_row = start_row; /* but reader is allowed to read ahead */
+ } else {
+ undef_row = ptr->first_undef_row;
+ }
+ if (writable)
+ ptr->first_undef_row = end_row;
+ if (ptr->pre_zero) {
+ size_t bytesperrow = (size_t) ptr->blocksperrow * SIZEOF(JBLOCK);
+ undef_row -= ptr->cur_start_row; /* make indexes relative to buffer */
+ end_row -= ptr->cur_start_row;
+ while (undef_row < end_row) {
+ jzero_far((void FAR *) ptr->mem_buffer[undef_row], bytesperrow);
+ undef_row++;
+ }
+ } else {
+ if (! writable) /* reader looking at undefined data */
+ ERREXIT(cinfo, JERR_BAD_VIRTUAL_ACCESS);
+ }
+ }
+ /* Flag the buffer dirty if caller will write in it */
+ if (writable)
+ ptr->dirty = TRUE;
+ /* Return address of proper part of the buffer */
+ return ptr->mem_buffer + (start_row - ptr->cur_start_row);
+}
+
+
+/*
+ * Release all objects belonging to a specified pool.
+ */
+
+METHODDEF(void)
+free_pool (j_common_ptr cinfo, int pool_id)
+{
+ my_mem_ptr mem = (my_mem_ptr) cinfo->mem;
+ small_pool_ptr shdr_ptr;
+ large_pool_ptr lhdr_ptr;
+ size_t space_freed;
+
+ if (pool_id < 0 || pool_id >= JPOOL_NUMPOOLS)
+ ERREXIT1(cinfo, JERR_BAD_POOL_ID, pool_id); /* safety check */
+
+#ifdef MEM_STATS
+ if (cinfo->err->trace_level > 1)
+ print_mem_stats(cinfo, pool_id); /* print pool's memory usage statistics */
+#endif
+
+ /* If freeing IMAGE pool, close any virtual arrays first */
+ if (pool_id == JPOOL_IMAGE) {
+ jvirt_sarray_ptr sptr;
+ jvirt_barray_ptr bptr;
+
+ for (sptr = mem->virt_sarray_list; sptr != NULL; sptr = sptr->next) {
+ if (sptr->b_s_open) { /* there may be no backing store */
+ sptr->b_s_open = FALSE; /* prevent recursive close if error */
+ (*sptr->b_s_info.close_backing_store) (cinfo, & sptr->b_s_info);
+ }
+ }
+ mem->virt_sarray_list = NULL;
+ for (bptr = mem->virt_barray_list; bptr != NULL; bptr = bptr->next) {
+ if (bptr->b_s_open) { /* there may be no backing store */
+ bptr->b_s_open = FALSE; /* prevent recursive close if error */
+ (*bptr->b_s_info.close_backing_store) (cinfo, & bptr->b_s_info);
+ }
+ }
+ mem->virt_barray_list = NULL;
+ }
+
+ /* Release large objects */
+ lhdr_ptr = mem->large_list[pool_id];
+ mem->large_list[pool_id] = NULL;
+
+ while (lhdr_ptr != NULL) {
+ large_pool_ptr next_lhdr_ptr = lhdr_ptr->hdr.next;
+ space_freed = lhdr_ptr->hdr.bytes_used +
+ lhdr_ptr->hdr.bytes_left +
+ SIZEOF(large_pool_hdr);
+ jpeg_free_small/*RS: Changed from jpeg_free_large*/(cinfo, (void FAR *) lhdr_ptr, space_freed);
+ mem->total_space_allocated -= space_freed;
+ lhdr_ptr = next_lhdr_ptr;
+ }
+
+ /* Release small objects */
+ shdr_ptr = mem->small_list[pool_id];
+ mem->small_list[pool_id] = NULL;
+
+ while (shdr_ptr != NULL) {
+ small_pool_ptr next_shdr_ptr = shdr_ptr->hdr.next;
+ space_freed = shdr_ptr->hdr.bytes_used +
+ shdr_ptr->hdr.bytes_left +
+ SIZEOF(small_pool_hdr);
+ jpeg_free_small(cinfo, (void *) shdr_ptr, space_freed);
+ mem->total_space_allocated -= space_freed;
+ shdr_ptr = next_shdr_ptr;
+ }
+}
+
+
+/*
+ * Close up shop entirely.
+ * Note that this cannot be called unless cinfo->mem is non-NULL.
+ */
+
+METHODDEF(void)
+self_destruct (j_common_ptr cinfo)
+{
+ int pool;
+
+ /* Close all backing store, release all memory.
+ * Releasing pools in reverse order might help avoid fragmentation
+ * with some (brain-damaged) malloc libraries.
+ */
+ for (pool = JPOOL_NUMPOOLS-1; pool >= JPOOL_PERMANENT; pool--) {
+ free_pool(cinfo, pool);
+ }
+
+ /* Release the memory manager control block too. */
+ jpeg_free_small(cinfo, (void *) cinfo->mem, SIZEOF(my_memory_mgr));
+ cinfo->mem = NULL; /* ensures I will be called only once */
+
+ jpeg_mem_term(cinfo); /* system-dependent cleanup */
+}
+
+
+/*
+ * Memory manager initialization.
+ * When this is called, only the error manager pointer is valid in cinfo!
+ */
+
+GLOBAL(void)
+jinit_memory_mgr (j_common_ptr cinfo)
+{
+ my_mem_ptr mem;
+ long max_to_use;
+ int pool;
+ size_t test_mac;
+
+ cinfo->mem = NULL; /* for safety if init fails */
+
+ /* Check for configuration errors.
+ * SIZEOF(ALIGN_TYPE) should be a power of 2; otherwise, it probably
+ * doesn't reflect any real hardware alignment requirement.
+ * The test is a little tricky: for X>0, X and X-1 have no one-bits
+ * in common if and only if X is a power of 2, ie has only one one-bit.
+ * Some compilers may give an "unreachable code" warning here; ignore it.
+ */
+ if ((SIZEOF(ALIGN_TYPE) & (SIZEOF(ALIGN_TYPE)-1)) != 0)
+ ERREXIT(cinfo, JERR_BAD_ALIGN_TYPE);
+ /* MAX_ALLOC_CHUNK must be representable as type size_t, and must be
+ * a multiple of SIZEOF(ALIGN_TYPE).
+ * Again, an "unreachable code" warning may be ignored here.
+ * But a "constant too large" warning means you need to fix MAX_ALLOC_CHUNK.
+ */
+ test_mac = (size_t) MAX_ALLOC_CHUNK;
+ if ((long) test_mac != MAX_ALLOC_CHUNK ||
+ (MAX_ALLOC_CHUNK % SIZEOF(ALIGN_TYPE)) != 0)
+ ERREXIT(cinfo, JERR_BAD_ALLOC_CHUNK);
+
+ max_to_use = jpeg_mem_init(cinfo); /* system-dependent initialization */
+
+ /* Attempt to allocate memory manager's control block */
+ mem = (my_mem_ptr) jpeg_get_small(cinfo, SIZEOF(my_memory_mgr));
+
+ if (mem == NULL) {
+ jpeg_mem_term(cinfo); /* system-dependent cleanup */
+ ERREXIT1(cinfo, JERR_OUT_OF_MEMORY, 0);
+ }
+
+ /* OK, fill in the method pointers */
+ mem->pub.alloc_small = alloc_small;
+ mem->pub.alloc_large = alloc_large;
+ mem->pub.alloc_sarray = alloc_sarray;
+ mem->pub.alloc_barray = alloc_barray;
+ mem->pub.request_virt_sarray = request_virt_sarray;
+ mem->pub.request_virt_barray = request_virt_barray;
+ mem->pub.realize_virt_arrays = realize_virt_arrays;
+ mem->pub.access_virt_sarray = access_virt_sarray;
+ mem->pub.access_virt_barray = access_virt_barray;
+ mem->pub.free_pool = free_pool;
+ mem->pub.self_destruct = self_destruct;
+
+ /* Make MAX_ALLOC_CHUNK accessible to other modules */
+ mem->pub.max_alloc_chunk = MAX_ALLOC_CHUNK;
+
+ /* Initialize working state */
+ mem->pub.max_memory_to_use = max_to_use;
+
+ for (pool = JPOOL_NUMPOOLS-1; pool >= JPOOL_PERMANENT; pool--) {
+ mem->small_list[pool] = NULL;
+ mem->large_list[pool] = NULL;
+ }
+ mem->virt_sarray_list = NULL;
+ mem->virt_barray_list = NULL;
+
+ mem->total_space_allocated = SIZEOF(my_memory_mgr);
+
+ /* Declare ourselves open for business */
+ cinfo->mem = & mem->pub;
+
+ /* Check for an environment variable JPEGMEM; if found, override the
+ * default max_memory setting from jpeg_mem_init. Note that the
+ * surrounding application may again override this value.
+ * If your system doesn't support getenv(), define NO_GETENV to disable
+ * this feature.
+ */
+#if 0 /* RS ndef NO_GETENV */
+ { char * memenv;
+
+ if ((memenv = getenv("JPEGMEM")) != NULL) {
+ char ch = 'x';
+
+ if (sscanf(memenv, "%ld%c", &max_to_use, &ch) > 0) {
+ if (ch == 'm' || ch == 'M')
+ max_to_use *= 1000L;
+ mem->pub.max_memory_to_use = max_to_use * 1000L;
+ }
+ }
+ }
+#endif
+
+}
diff --git a/User/lib/lcd/gui/JPEG/jmemsys.h b/User/lib/lcd/gui/JPEG/jmemsys.h
new file mode 100644
index 0000000..da6d7ec
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jmemsys.h
@@ -0,0 +1,178 @@
+/*
+ * jmemsys.h
+ *
+ * Copyright (C) 1992-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This include file defines the interface between the system-independent
+ * and system-dependent portions of the JPEG memory manager. No other
+ * modules need include it. (The system-independent portion is jmemmgr.c;
+ * there are several different versions of the system-dependent portion.)
+ *
+ * This file works as-is for the system-dependent memory managers supplied
+ * in the IJG distribution. You may need to modify it if you write a
+ * custom memory manager. If system-dependent changes are needed in
+ * this file, the best method is to #ifdef them based on a configuration
+ * symbol supplied in jconfig.h, as we have done with USE_MSDOS_MEMMGR
+ * and USE_MAC_MEMMGR.
+ */
+
+
+
+/*
+ * These two functions are used to allocate and release small chunks of
+ * memory. (Typically the total amount requested through jpeg_get_small is
+ * no more than 20K or so; this will be requested in chunks of a few K each.)
+ * Behavior should be the same as for the standard library functions malloc
+ * and free; in particular, jpeg_get_small must return NULL on failure.
+ * On most systems, these ARE malloc and free. jpeg_free_small is passed the
+ * size of the object being freed, just in case it's needed.
+ * On an 80x86 machine using small-data memory model, these manage near heap.
+ */
+
+EXTERN(void *) jpeg_get_small JPP((j_common_ptr cinfo, size_t sizeofobject));
+EXTERN(void) jpeg_free_small JPP((j_common_ptr cinfo, void * object,
+ size_t sizeofobject));
+
+/*
+ * These two functions are used to allocate and release large chunks of
+ * memory (up to the total free space designated by jpeg_mem_available).
+ * The interface is the same as above, except that on an 80x86 machine,
+ * far pointers are used. On most other machines these are identical to
+ * the jpeg_get/free_small routines; but we keep them separate anyway,
+ * in case a different allocation strategy is desirable for large chunks.
+ */
+
+EXTERN(void FAR *) jpeg_get_large JPP((j_common_ptr cinfo,
+ size_t sizeofobject));
+EXTERN(void) jpeg_free_large JPP((j_common_ptr cinfo, void FAR * object,
+ size_t sizeofobject));
+
+/*
+ * The macro MAX_ALLOC_CHUNK designates the maximum number of bytes that may
+ * be requested in a single call to jpeg_get_large (and jpeg_get_small for that
+ * matter, but that case should never come into play). This macro is needed
+ * to model the 64Kb-segment-size limit of far addressing on 80x86 machines.
+ * On those machines, we expect that jconfig.h will provide a proper value.
+ * On machines with 32-bit flat address spaces, any large constant may be used.
+ *
+ * NB: jmemmgr.c expects that MAX_ALLOC_CHUNK will be representable as type
+ * size_t and will be a multiple of sizeof(align_type).
+ */
+
+#ifndef MAX_ALLOC_CHUNK /* may be overridden in jconfig.h */
+#define MAX_ALLOC_CHUNK 1000000000L
+#endif
+
+/*
+ * This routine computes the total space still available for allocation by
+ * jpeg_get_large. If more space than this is needed, backing store will be
+ * used. NOTE: any memory already allocated must not be counted.
+ *
+ * There is a minimum space requirement, corresponding to the minimum
+ * feasible buffer sizes; jmemmgr.c will request that much space even if
+ * jpeg_mem_available returns zero. The maximum space needed, enough to hold
+ * all working storage in memory, is also passed in case it is useful.
+ * Finally, the total space already allocated is passed. If no better
+ * method is available, cinfo->mem->max_memory_to_use - already_allocated
+ * is often a suitable calculation.
+ *
+ * It is OK for jpeg_mem_available to underestimate the space available
+ * (that'll just lead to more backing-store access than is really necessary).
+ * However, an overestimate will lead to failure. Hence it's wise to subtract
+ * a slop factor from the true available space. 5% should be enough.
+ *
+ * On machines with lots of virtual memory, any large constant may be returned.
+ * Conversely, zero may be returned to always use the minimum amount of memory.
+ */
+
+EXTERN(long) jpeg_mem_available JPP((j_common_ptr cinfo,
+ long min_bytes_needed,
+ long max_bytes_needed,
+ long already_allocated));
+
+
+/*
+ * This structure holds whatever state is needed to access a single
+ * backing-store object. The read/write/close method pointers are called
+ * by jmemmgr.c to manipulate the backing-store object; all other fields
+ * are private to the system-dependent backing store routines.
+ */
+
+#define TEMP_NAME_LENGTH 64 /* max length of a temporary file's name */
+
+
+#ifdef USE_MSDOS_MEMMGR /* DOS-specific junk */
+
+typedef unsigned short XMSH; /* type of extended-memory handles */
+typedef unsigned short EMSH; /* type of expanded-memory handles */
+
+typedef union {
+ short file_handle; /* DOS file handle if it's a temp file */
+ XMSH xms_handle; /* handle if it's a chunk of XMS */
+ EMSH ems_handle; /* handle if it's a chunk of EMS */
+} handle_union;
+
+#endif /* USE_MSDOS_MEMMGR */
+
+#ifdef USE_MAC_MEMMGR /* Mac-specific junk */
+#include
+#endif /* USE_MAC_MEMMGR */
+
+
+typedef struct backing_store_struct * backing_store_ptr;
+
+typedef struct backing_store_struct {
+ /* Methods for reading/writing/closing this backing-store object */
+ JMETHOD(void, read_backing_store, (j_common_ptr cinfo, backing_store_ptr info, void FAR * buffer_address, long file_offset, long byte_count));
+ JMETHOD(void, write_backing_store, (j_common_ptr cinfo, backing_store_ptr info, void FAR * buffer_address, long file_offset, long byte_count));
+ JMETHOD(void, close_backing_store, (j_common_ptr cinfo, backing_store_ptr info));
+
+ /* Private fields for system-dependent backing-store management */
+#ifdef USE_MSDOS_MEMMGR
+ /* For the MS-DOS manager (jmemdos.c), we need: */
+ handle_union handle; /* reference to backing-store storage object */
+ char temp_name[TEMP_NAME_LENGTH]; /* name if it's a file */
+#else
+#ifdef USE_MAC_MEMMGR
+ /* For the Mac manager (jmemmac.c), we need: */
+ short temp_file; /* file reference number to temp file */
+ FSSpec tempSpec; /* the FSSpec for the temp file */
+ char temp_name[TEMP_NAME_LENGTH]; /* name if it's a file */
+#else
+ /* For a typical implementation with temp files, we need: */
+ /* FILE * temp_file; */ /* stdio reference to temp file */
+ char temp_name[TEMP_NAME_LENGTH]; /* name of temp file */
+#endif
+#endif
+} backing_store_info;
+
+
+/*
+ * Initial opening of a backing-store object. This must fill in the
+ * read/write/close pointers in the object. The read/write routines
+ * may take an error exit if the specified maximum file size is exceeded.
+ * (If jpeg_mem_available always returns a large value, this routine can
+ * just take an error exit.)
+ */
+
+EXTERN(void) jpeg_open_backing_store JPP((j_common_ptr cinfo,
+ backing_store_ptr info,
+ long total_bytes_needed));
+
+
+/*
+ * These routines take care of any system-dependent initialization and
+ * cleanup required. jpeg_mem_init will be called before anything is
+ * allocated (and, therefore, nothing in cinfo is of use except the error
+ * manager pointer). It should return a suitable default value for
+ * max_memory_to_use; this may subsequently be overridden by the surrounding
+ * application. (Note that max_memory_to_use is only important if
+ * jpeg_mem_available chooses to consult it ... no one else will.)
+ * jpeg_mem_term may assume that all requested memory has been freed and that
+ * all opened backing-store objects have been closed.
+ */
+
+EXTERN(long) jpeg_mem_init JPP((j_common_ptr cinfo));
+EXTERN(void) jpeg_mem_term JPP((j_common_ptr cinfo));
diff --git a/User/lib/lcd/gui/JPEG/jmorecfg.h b/User/lib/lcd/gui/JPEG/jmorecfg.h
new file mode 100644
index 0000000..993e79c
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jmorecfg.h
@@ -0,0 +1,312 @@
+/*
+ * jmorecfg.h
+ *
+ * Copyright (C) 1991-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains additional configuration options that customize the
+ * JPEG software for special applications or support machine-dependent
+ * optimizations. Most users will not need to touch this file.
+ */
+
+
+/*
+ * Define BITS_IN_JSAMPLE as either
+ * 8 for 8-bit sample values (the usual setting)
+ * 12 for 12-bit sample values
+ * Only 8 and 12 are legal data precisions for lossy JPEG according to the
+ * JPEG standard, and the IJG code does not support anything else!
+ * We do not support run-time selection of data precision, sorry.
+ */
+
+#define BITS_IN_JSAMPLE 8 /* use 8 or 12 */
+
+
+/*
+ * Maximum number of components (color channels) allowed in JPEG image.
+ * To meet the letter of the JPEG spec, set this to 255. However, darn
+ * few applications need more than 4 channels (maybe 5 for CMYK + alpha
+ * mask). We recommend 10 as a reasonable compromise; use 4 if you are
+ * really short on memory. (Each allowed component costs a hundred or so
+ * bytes of storage, whether actually used in an image or not.)
+ */
+
+#define MAX_COMPONENTS 4 /* maximum number of image components */
+
+
+/*
+ * Basic data types.
+ * You may need to change these if you have a machine with unusual data
+ * type sizes; for example, "char" not 8 bits, "short" not 16 bits,
+ * or "long" not 32 bits. We don't care whether "int" is 16 or 32 bits,
+ * but it had better be at least 16.
+ */
+
+/* Representation of a single sample (pixel element value).
+ * We frequently allocate large arrays of these, so it's important to keep
+ * them small. But if you have memory to burn and access to char or short
+ * arrays is very slow on your hardware, you might want to change these.
+ */
+
+#if BITS_IN_JSAMPLE == 8
+ /* JSAMPLE should be the smallest type that will hold the values 0..255.
+ * You can use a signed char by having GETJSAMPLE mask it with 0xFF.
+ */
+ typedef unsigned char JSAMPLE;
+ #define GETJSAMPLE(value) ((int) (value))
+ #define MAXJSAMPLE 255
+ #define CENTERJSAMPLE 128
+#elif BITS_IN_JSAMPLE == 12
+ /* JSAMPLE should be the smallest type that will hold the values 0..4095.
+ * On nearly all machines "short" will do nicely.
+ */
+ typedef short JSAMPLE;
+ #define GETJSAMPLE(value) ((int) (value))
+ #define MAXJSAMPLE 4095
+ #define CENTERJSAMPLE 2048
+#endif /* BITS_IN_JSAMPLE == 12 */
+
+
+/* Representation of a DCT frequency coefficient.
+ * This should be a signed value of at least 16 bits; "short" is usually OK.
+ * Again, we allocate large arrays of these, but you can change to int
+ * if you have memory to burn and "short" is really slow.
+ */
+
+typedef short JCOEF;
+
+
+/* Compressed datastreams are represented as arrays of JOCTET.
+ * These must be EXACTLY 8 bits wide, at least once they are written to
+ * external storage. Note that when using the stdio data source/destination
+ * managers, this is also the data type passed to fread/fwrite.
+ */
+
+typedef unsigned char JOCTET;
+#define GETJOCTET(value) (value)
+
+
+/* These typedefs are used for various table entries and so forth.
+ * They must be at least as wide as specified; but making them too big
+ * won't cost a huge amount of memory, so we don't provide special
+ * extraction code like we did for JSAMPLE. (In other words, these
+ * typedefs live at a different point on the speed/space tradeoff curve.)
+ */
+
+/* UINT8 must hold at least the values 0..255. */
+typedef unsigned char UINT8;
+
+/* UINT16 must hold at least the values 0..65535. */
+typedef unsigned short UINT16;
+/* INT16 must hold at least the values -32768..32767. */
+typedef short INT16;
+/* INT32 must hold at least signed 32-bit values. */
+typedef long INT32;
+
+/* Datatype used for image dimensions. The JPEG standard only supports
+ * images up to 64K*64K due to 16-bit fields in SOF markers. Therefore
+ * "unsigned int" is sufficient on all machines. However, if you need to
+ * handle larger images and you don't mind deviating from the spec, you
+ * can change this datatype.
+ */
+
+typedef unsigned int JDIMENSION;
+
+#define JPEG_MAX_DIMENSION 65500L /* a tad under 64K to prevent overflows */
+
+
+/* These macros are used in all function definitions and extern declarations.
+ * You could modify them if you need to change function linkage conventions;
+ * in particular, you'll need to do that to make the library a Windows DLL.
+ * Another application is to make all functions global for use with debuggers
+ * or code profilers that require it.
+ */
+
+/* a function called through method pointers: */
+#define METHODDEF(type) static type
+/* a function used only in its module: */
+#define LOCAL(type) static type
+/* a function referenced thru EXTERNs: */
+#define GLOBAL(type) type
+/* a reference to a GLOBAL function: */
+#define EXTERN(type) extern type
+
+
+/* This macro is used to declare a "method", that is, a function pointer.
+ * We want to supply prototype parameters if the compiler can cope.
+ * Note that the arglist parameter must be parenthesized!
+ * Again, you can customize this if you need special linkage keywords.
+ */
+
+#define JMETHOD(type,methodname,arglist) type (*methodname) arglist
+
+
+/* Here is the pseudo-keyword for declaring pointers that must be "far"
+ * on 80x86 machines. Most of the specialized coding for 80x86 is handled
+ * by just saying "FAR *" where such a pointer is needed. In a few places
+ * explicit coding is needed; see uses of the NEED_FAR_POINTERS symbol.
+ */
+
+#ifdef NEED_FAR_POINTERS
+#define FAR far
+#else
+#define FAR
+#endif
+
+
+/*
+ * On a few systems, type boolean and/or its values FALSE, TRUE may appear
+ * in standard header files. Or you may have conflicts with application-
+ * specific header files that you want to include together with these files.
+ * Defining HAVE_BOOLEAN before including jpeglib.h should make it work.
+ */
+
+#ifndef HAVE_BOOLEAN
+typedef int boolean;
+#endif
+#ifndef FALSE /* in case these macros already exist */
+#define FALSE 0 /* values of boolean */
+#endif
+#ifndef TRUE
+#define TRUE 1
+#endif
+
+
+/*
+ * The remaining options affect code selection within the JPEG library,
+ * but they don't need to be visible to most applications using the library.
+ * To minimize application namespace pollution, the symbols won't be
+ * defined unless JPEG_INTERNALS or JPEG_INTERNAL_OPTIONS has been defined.
+ */
+
+#ifdef JPEG_INTERNALS
+#define JPEG_INTERNAL_OPTIONS
+#endif
+
+#ifdef JPEG_INTERNAL_OPTIONS
+
+
+/*
+ * These defines indicate whether to include various optional functions.
+ * Undefining some of these symbols will produce a smaller but less capable
+ * library. Note that you can leave certain source files out of the
+ * compilation/linking process if you've #undef'd the corresponding symbols.
+ * (You may HAVE to do that if your compiler doesn't like null source files.)
+ */
+
+/* Arithmetic coding is unsupported for legal reasons. Complaints to IBM. */
+
+/* Capability options common to encoder and decoder: */
+
+#define DCT_ISLOW_SUPPORTED /* slow but accurate integer algorithm */
+#define DCT_IFAST_SUPPORTED /* faster, less accurate integer method */
+#ifdef DCT_FLOAT_SUPPORTED
+ #undef DCT_FLOAT_SUPPORTED /* floating-point: accurate, fast on fast HW */
+#endif
+
+/* Encoder capability options: */
+
+#ifdef C_ARITH_CODING_SUPPORTED
+ #undef C_ARITH_CODING_SUPPORTED /* Arithmetic coding back end? */
+#endif
+#define C_MULTISCAN_FILES_SUPPORTED /* Multiple-scan JPEG files? */
+#define C_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/
+#define ENTROPY_OPT_SUPPORTED /* Optimization of entropy coding parms? */
+/* Note: if you selected 12-bit data precision, it is dangerous to turn off
+ * ENTROPY_OPT_SUPPORTED. The standard Huffman tables are only good for 8-bit
+ * precision, so jchuff.c normally uses entropy optimization to compute
+ * usable tables for higher precision. If you don't want to do optimization,
+ * you'll have to supply different default Huffman tables.
+ * The exact same statements apply for progressive JPEG: the default tables
+ * don't work for progressive mode. (This may get fixed, however.)
+ */
+#define INPUT_SMOOTHING_SUPPORTED /* Input image smoothing option? */
+
+/* Decoder capability options: */
+
+#ifdef D_ARITH_CODING_SUPPORTED
+ #undef D_ARITH_CODING_SUPPORTED /* Arithmetic coding back end? */
+#endif
+#define D_MULTISCAN_FILES_SUPPORTED /* Multiple-scan JPEG files? */
+#define D_PROGRESSIVE_SUPPORTED /* Progressive JPEG? (Requires MULTISCAN)*/
+#ifdef SAVE_MARKERS_SUPPORTED
+ #undef SAVE_MARKERS_SUPPORTED /* jpeg_save_markers() needed? (Default was on, RS) */
+#endif
+#ifdef BLOCK_SMOOTHING_SUPPORTED
+ #undef BLOCK_SMOOTHING_SUPPORTED /* Block smoothing? (Progressive only) */
+#endif
+#ifdef IDCT_SCALING_SUPPORTED
+ #undef IDCT_SCALING_SUPPORTED /* Output rescaling via IDCT? */
+#endif
+#ifdef UPSAMPLE_SCALING_SUPPORTED
+ #undef UPSAMPLE_SCALING_SUPPORTED /* Output rescaling at upsample stage? */
+#endif
+#define UPSAMPLE_MERGING_SUPPORTED /* Fast path for sloppy upsampling? */
+#define QUANT_1PASS_SUPPORTED /* 1-pass color quantization? */
+#define QUANT_2PASS_SUPPORTED /* 2-pass color quantization? */
+
+/* more capability options later, no doubt */
+
+
+/*
+ * Ordering of RGB data in scanlines passed to or from the application.
+ * If your application wants to deal with data in the order B,G,R, just
+ * change these macros. You can also deal with formats such as R,G,B,X
+ * (one extra byte per pixel) by changing RGB_PIXELSIZE. Note that changing
+ * the offsets will also change the order in which colormap data is organized.
+ * RESTRICTIONS:
+ * 1. The sample applications cjpeg,djpeg do NOT support modified RGB formats.
+ * 2. These macros only affect RGB<=>YCbCr color conversion, so they are not
+ * useful if you are using JPEG color spaces other than YCbCr or grayscale.
+ * 3. The color quantizer modules will not behave desirably if RGB_PIXELSIZE
+ * is not 3 (they don't understand about dummy color components!). So you
+ * can't use color quantization if you change that value.
+ */
+
+#define RGB_RED 0 /* Offset of Red in an RGB scanline element */
+#define RGB_GREEN 1 /* Offset of Green */
+#define RGB_BLUE 2 /* Offset of Blue */
+#define RGB_PIXELSIZE 3 /* JSAMPLEs per RGB scanline element */
+
+
+/* Definitions for speed-related optimizations. */
+
+
+/* If your compiler supports inline functions, define INLINE
+ * as the inline keyword; otherwise define it as empty.
+ */
+
+#ifndef INLINE
+#ifdef __GNUC__ /* for instance, GNU C knows about inline */
+#define INLINE __inline__
+#endif
+#ifndef INLINE
+#define INLINE /* default is to define it as empty */
+#endif
+#endif
+
+
+/* On some machines (notably 68000 series) "int" is 32 bits, but multiplying
+ * two 16-bit shorts is faster than multiplying two ints. Define MULTIPLIER
+ * as short on such a machine. MULTIPLIER must be at least 16 bits wide.
+ */
+
+#ifndef MULTIPLIER
+#define MULTIPLIER int /* type for fastest integer multiply */
+#endif
+
+
+/* FAST_FLOAT should be either float or double, whichever is done faster
+ * by your compiler. (Note that this type is only used in the floating point
+ * DCT routines, so it only matters if you've defined DCT_FLOAT_SUPPORTED.)
+ * Typically, float is faster in ANSI C compilers, while double is faster in
+ * pre-ANSI compilers (because they insist on converting to double anyway).
+ * The code below therefore chooses float if we have ANSI-style prototypes.
+ */
+
+#ifndef FAST_FLOAT
+#define FAST_FLOAT float
+#endif
+
+#endif /* JPEG_INTERNAL_OPTIONS */
diff --git a/User/lib/lcd/gui/JPEG/jpegint.h b/User/lib/lcd/gui/JPEG/jpegint.h
new file mode 100644
index 0000000..61fd034
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jpegint.h
@@ -0,0 +1,357 @@
+/*
+ * jpegint.h
+ *
+ * Copyright (C) 1991-1997, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file provides common declarations for the various JPEG modules.
+ * These declarations are considered internal to the JPEG library; most
+ * applications using the library shouldn't need to include this file.
+ */
+
+
+/* Declarations for both compression & decompression */
+
+typedef enum { /* Operating modes for buffer controllers */
+ JBUF_PASS_THRU, /* Plain stripwise operation */
+ /* Remaining modes require a full-image buffer to have been created */
+ JBUF_SAVE_SOURCE, /* Run source subobject only, save output */
+ JBUF_CRANK_DEST, /* Run dest subobject only, using saved data */
+ JBUF_SAVE_AND_PASS /* Run both subobjects, save output */
+} J_BUF_MODE;
+
+/* Values of global_state field (jdapi.c has some dependencies on ordering!) */
+#define CSTATE_START 100 /* after create_compress */
+#define CSTATE_SCANNING 101 /* start_compress done, write_scanlines OK */
+#define CSTATE_RAW_OK 102 /* start_compress done, write_raw_data OK */
+#define CSTATE_WRCOEFS 103 /* jpeg_write_coefficients done */
+#define DSTATE_START 200 /* after create_decompress */
+#define DSTATE_INHEADER 201 /* reading header markers, no SOS yet */
+#define DSTATE_READY 202 /* found SOS, ready for start_decompress */
+#define DSTATE_PRELOAD 203 /* reading multiscan file in start_decompress*/
+#define DSTATE_PRESCAN 204 /* performing dummy pass for 2-pass quant */
+#define DSTATE_SCANNING 205 /* start_decompress done, read_scanlines OK */
+#define DSTATE_RAW_OK 206 /* start_decompress done, read_raw_data OK */
+#define DSTATE_BUFIMAGE 207 /* expecting jpeg_start_output */
+#define DSTATE_BUFPOST 208 /* looking for SOS/EOI in jpeg_finish_output */
+#define DSTATE_RDCOEFS 209 /* reading file in jpeg_read_coefficients */
+#define DSTATE_STOPPING 210 /* looking for EOI in jpeg_finish_decompress */
+
+
+/* Declarations for compression modules */
+
+/* Master control module */
+struct jpeg_comp_master {
+ JMETHOD(void, prepare_for_pass, (j_compress_ptr cinfo));
+ JMETHOD(void, pass_startup, (j_compress_ptr cinfo));
+ JMETHOD(void, finish_pass, (j_compress_ptr cinfo));
+
+ /* State variables made visible to other modules */
+ boolean call_pass_startup; /* True if pass_startup must be called */
+ boolean is_last_pass; /* True during last pass */
+};
+
+/* Main buffer control (downsampled-data buffer) */
+struct jpeg_c_main_controller {
+ JMETHOD(void, start_pass, (j_compress_ptr cinfo, J_BUF_MODE pass_mode));
+ JMETHOD(void, process_data, (j_compress_ptr cinfo,
+ JSAMPARRAY input_buf, JDIMENSION *in_row_ctr,
+ JDIMENSION in_rows_avail));
+};
+
+/* Compression preprocessing (downsampling input buffer control) */
+struct jpeg_c_prep_controller {
+ JMETHOD(void, start_pass, (j_compress_ptr cinfo, J_BUF_MODE pass_mode));
+ JMETHOD(void, pre_process_data, (j_compress_ptr cinfo,
+ JSAMPARRAY input_buf,
+ JDIMENSION *in_row_ctr,
+ JDIMENSION in_rows_avail,
+ JSAMPIMAGE output_buf,
+ JDIMENSION *out_row_group_ctr,
+ JDIMENSION out_row_groups_avail));
+};
+
+/* Coefficient buffer control */
+struct jpeg_c_coef_controller {
+ JMETHOD(void, start_pass, (j_compress_ptr cinfo, J_BUF_MODE pass_mode));
+ JMETHOD(boolean, compress_data, (j_compress_ptr cinfo,
+ JSAMPIMAGE input_buf));
+};
+
+/* Colorspace conversion */
+struct jpeg_color_converter {
+ JMETHOD(void, start_pass, (j_compress_ptr cinfo));
+ JMETHOD(void, color_convert, (j_compress_ptr cinfo,
+ JSAMPARRAY input_buf, JSAMPIMAGE output_buf,
+ JDIMENSION output_row, int num_rows));
+};
+
+/* Downsampling */
+struct jpeg_downsampler {
+ JMETHOD(void, start_pass, (j_compress_ptr cinfo));
+ JMETHOD(void, downsample, (j_compress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION in_row_index,
+ JSAMPIMAGE output_buf,
+ JDIMENSION out_row_group_index));
+
+ boolean need_context_rows; /* TRUE if need rows above & below */
+};
+
+/* Forward DCT (also controls coefficient quantization) */
+struct jpeg_forward_dct {
+ JMETHOD(void, start_pass, (j_compress_ptr cinfo));
+ /* perhaps this should be an array??? */
+ JMETHOD(void, forward_DCT, (j_compress_ptr cinfo,
+ jpeg_component_info * compptr,
+ JSAMPARRAY sample_data, JBLOCKROW coef_blocks,
+ JDIMENSION start_row, JDIMENSION start_col,
+ JDIMENSION num_blocks));
+};
+
+/* Entropy encoding */
+struct jpeg_entropy_encoder {
+ JMETHOD(void, start_pass, (j_compress_ptr cinfo, boolean gather_statistics));
+ JMETHOD(boolean, encode_mcu, (j_compress_ptr cinfo, JBLOCKROW *MCU_data));
+ JMETHOD(void, finish_pass, (j_compress_ptr cinfo));
+};
+
+/* Marker writing */
+struct jpeg_marker_writer {
+ JMETHOD(void, write_file_header, (j_compress_ptr cinfo));
+ JMETHOD(void, write_frame_header, (j_compress_ptr cinfo));
+ JMETHOD(void, write_scan_header, (j_compress_ptr cinfo));
+ JMETHOD(void, write_file_trailer, (j_compress_ptr cinfo));
+ JMETHOD(void, write_tables_only, (j_compress_ptr cinfo));
+ /* These routines are exported to allow insertion of extra markers */
+ /* Probably only COM and APPn markers should be written this way */
+ JMETHOD(void, write_marker_header, (j_compress_ptr cinfo, int marker,
+ unsigned int datalen));
+ JMETHOD(void, write_marker_byte, (j_compress_ptr cinfo, int val));
+};
+
+
+/* Declarations for decompression modules */
+
+/* Master control module */
+struct jpeg_decomp_master {
+ JMETHOD(void, prepare_for_output_pass, (j_decompress_ptr cinfo));
+ JMETHOD(void, finish_output_pass, (j_decompress_ptr cinfo));
+
+ /* State variables made visible to other modules */
+ boolean is_dummy_pass; /* True during 1st pass for 2-pass quant */
+};
+
+/* Input control module */
+struct jpeg_input_controller {
+ JMETHOD(int, consume_input, (j_decompress_ptr cinfo));
+ JMETHOD(void, reset_input_controller, (j_decompress_ptr cinfo));
+ JMETHOD(void, start_input_pass, (j_decompress_ptr cinfo));
+ JMETHOD(void, finish_input_pass, (j_decompress_ptr cinfo));
+
+ /* State variables made visible to other modules */
+ boolean has_multiple_scans; /* True if file has multiple scans */
+ boolean eoi_reached; /* True when EOI has been consumed */
+};
+
+/* Main buffer control (downsampled-data buffer) */
+struct jpeg_d_main_controller {
+ JMETHOD(void, start_pass, (j_decompress_ptr cinfo, J_BUF_MODE pass_mode));
+ JMETHOD(void, process_data, (j_decompress_ptr cinfo,
+ JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail));
+};
+
+/* Coefficient buffer control */
+struct jpeg_d_coef_controller {
+ JMETHOD(void, start_input_pass, (j_decompress_ptr cinfo));
+ JMETHOD(int, consume_data, (j_decompress_ptr cinfo));
+ JMETHOD(void, start_output_pass, (j_decompress_ptr cinfo));
+ JMETHOD(int, decompress_data, (j_decompress_ptr cinfo,
+ JSAMPIMAGE output_buf));
+ /* Pointer to array of coefficient virtual arrays, or NULL if none */
+ jvirt_barray_ptr *coef_arrays;
+};
+
+/* Decompression postprocessing (color quantization buffer control) */
+struct jpeg_d_post_controller {
+ JMETHOD(void, start_pass, (j_decompress_ptr cinfo, J_BUF_MODE pass_mode));
+ JMETHOD(void, post_process_data, (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf,
+ JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf,
+ JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail));
+};
+
+/* Marker reading & parsing */
+struct jpeg_marker_reader {
+ JMETHOD(void, reset_marker_reader, (j_decompress_ptr cinfo));
+ /* Read markers until SOS or EOI.
+ * Returns same codes as are defined for jpeg_consume_input:
+ * JPEG_SUSPENDED, JPEG_REACHED_SOS, or JPEG_REACHED_EOI.
+ */
+ JMETHOD(int, read_markers, (j_decompress_ptr cinfo));
+ /* Read a restart marker --- exported for use by entropy decoder only */
+ jpeg_marker_parser_method read_restart_marker;
+
+ /* State of marker reader --- nominally internal, but applications
+ * supplying COM or APPn handlers might like to know the state.
+ */
+ boolean saw_SOI; /* found SOI? */
+ boolean saw_SOF; /* found SOF? */
+ int next_restart_num; /* next restart number expected (0-7) */
+ unsigned int discarded_bytes; /* # of bytes skipped looking for a marker */
+};
+
+/* Entropy decoding */
+struct jpeg_entropy_decoder {
+ JMETHOD(void, start_pass, (j_decompress_ptr cinfo));
+ JMETHOD(boolean, decode_mcu, (j_decompress_ptr cinfo,
+ JBLOCKROW *MCU_data));
+
+ /* This is here to share code between baseline and progressive decoders; */
+ /* other modules probably should not use it */
+ boolean insufficient_data; /* set TRUE after emitting warning */
+};
+
+/* Inverse DCT (also performs dequantization) */
+typedef JMETHOD(void, inverse_DCT_method_ptr,
+ (j_decompress_ptr cinfo, jpeg_component_info * compptr,
+ JCOEFPTR coef_block,
+ JSAMPARRAY output_buf, JDIMENSION output_col));
+
+struct jpeg_inverse_dct {
+ JMETHOD(void, start_pass, (j_decompress_ptr cinfo));
+ /* It is useful to allow each component to have a separate IDCT method. */
+ inverse_DCT_method_ptr inverse_DCT[MAX_COMPONENTS];
+};
+
+/* Upsampling (note that upsampler must also call color converter) */
+struct jpeg_upsampler {
+ JMETHOD(void, start_pass, (j_decompress_ptr cinfo));
+ JMETHOD(void, upsample, (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf,
+ JDIMENSION *in_row_group_ctr,
+ JDIMENSION in_row_groups_avail,
+ JSAMPARRAY output_buf,
+ JDIMENSION *out_row_ctr,
+ JDIMENSION out_rows_avail));
+
+ boolean need_context_rows; /* TRUE if need rows above & below */
+};
+
+/* Colorspace conversion */
+struct jpeg_color_deconverter {
+ JMETHOD(void, start_pass, (j_decompress_ptr cinfo));
+ JMETHOD(void, color_convert, (j_decompress_ptr cinfo,
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
+ JSAMPARRAY output_buf, int num_rows));
+};
+
+/* Color quantization or color precision reduction */
+struct jpeg_color_quantizer {
+ JMETHOD(void, start_pass, (j_decompress_ptr cinfo, boolean is_pre_scan));
+ JMETHOD(void, color_quantize, (j_decompress_ptr cinfo,
+ JSAMPARRAY input_buf, JSAMPARRAY output_buf,
+ int num_rows));
+ JMETHOD(void, finish_pass, (j_decompress_ptr cinfo));
+ JMETHOD(void, new_color_map, (j_decompress_ptr cinfo));
+};
+
+
+/* Miscellaneous useful macros */
+
+#ifdef MAX
+ #undef MAX
+#endif
+#define MAX(a,b) ((a) > (b) ? (a) : (b))
+#ifdef MIN
+ #undef MIN
+#endif
+#define MIN(a,b) ((a) < (b) ? (a) : (b))
+
+
+/* We assume that right shift corresponds to signed division by 2 with
+ * rounding towards minus infinity. This is correct for typical "arithmetic
+ * shift" instructions that shift in copies of the sign bit. But some
+ * C compilers implement >> with an unsigned shift. For these machines you
+ * must define RIGHT_SHIFT_IS_UNSIGNED.
+ * RIGHT_SHIFT provides a proper signed right shift of an INT32 quantity.
+ * It is only applied with constant shift counts. SHIFT_TEMPS must be
+ * included in the variables of any routine using RIGHT_SHIFT.
+ */
+
+#ifdef RIGHT_SHIFT_IS_UNSIGNED
+#define SHIFT_TEMPS INT32 shift_temp;
+#define RIGHT_SHIFT(x,shft) \
+ ((shift_temp = (x)) < 0 ? \
+ (shift_temp >> (shft)) | ((~((INT32) 0)) << (32-(shft))) : \
+ (shift_temp >> (shft)))
+#else
+#define SHIFT_TEMPS
+#define RIGHT_SHIFT(x,shft) ((x) >> (shft))
+#endif
+
+
+/* Compression module initialization routines */
+EXTERN(void) jinit_compress_master JPP((j_compress_ptr cinfo));
+EXTERN(void) jinit_c_master_control JPP((j_compress_ptr cinfo,
+ boolean transcode_only));
+EXTERN(void) jinit_c_main_controller JPP((j_compress_ptr cinfo,
+ boolean need_full_buffer));
+EXTERN(void) jinit_c_prep_controller JPP((j_compress_ptr cinfo,
+ boolean need_full_buffer));
+EXTERN(void) jinit_c_coef_controller JPP((j_compress_ptr cinfo,
+ boolean need_full_buffer));
+EXTERN(void) jinit_color_converter JPP((j_compress_ptr cinfo));
+EXTERN(void) jinit_downsampler JPP((j_compress_ptr cinfo));
+EXTERN(void) jinit_forward_dct JPP((j_compress_ptr cinfo));
+EXTERN(void) jinit_huff_encoder JPP((j_compress_ptr cinfo));
+EXTERN(void) jinit_phuff_encoder JPP((j_compress_ptr cinfo));
+EXTERN(void) jinit_marker_writer JPP((j_compress_ptr cinfo));
+/* Decompression module initialization routines */
+EXTERN(void) jinit_master_decompress JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_d_main_controller JPP((j_decompress_ptr cinfo,
+ boolean need_full_buffer));
+EXTERN(void) jinit_d_coef_controller JPP((j_decompress_ptr cinfo,
+ boolean need_full_buffer));
+EXTERN(void) jinit_d_post_controller JPP((j_decompress_ptr cinfo,
+ boolean need_full_buffer));
+EXTERN(void) jinit_input_controller JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_marker_reader JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_huff_decoder JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_phuff_decoder JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_inverse_dct JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_upsampler JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_color_deconverter JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_1pass_quantizer JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_2pass_quantizer JPP((j_decompress_ptr cinfo));
+EXTERN(void) jinit_merged_upsampler JPP((j_decompress_ptr cinfo));
+/* Memory manager initialization */
+EXTERN(void) jinit_memory_mgr JPP((j_common_ptr cinfo));
+
+/* Utility routines in jutils.c */
+EXTERN(long) jdiv_round_up JPP((long a, long b));
+EXTERN(long) jround_up JPP((long a, long b));
+EXTERN(void) jcopy_sample_rows JPP((JSAMPARRAY input_array, int source_row,
+ JSAMPARRAY output_array, int dest_row,
+ int num_rows, JDIMENSION num_cols));
+EXTERN(void) jcopy_block_row JPP((JBLOCKROW input_row, JBLOCKROW output_row,
+ JDIMENSION num_blocks));
+EXTERN(void) jzero_far JPP((void FAR * target, size_t bytestozero));
+/* Constant tables in jutils.c */
+#if 0 /* This table is not actually needed in v6a */
+extern const int jpeg_zigzag_order[]; /* natural coef order to zigzag order */
+#endif
+extern const int jpeg_natural_order[DCTSIZE2+16]; /* zigzag coef order to natural order */
+
+/* Suppress undefined-structure complaints if necessary. */
+
+#ifdef INCOMPLETE_TYPES_BROKEN
+#ifndef AM_MEMORY_MANAGER /* only jmemmgr.c defines these */
+struct jvirt_sarray_control { long dummy; };
+struct jvirt_barray_control { long dummy; };
+#endif
+#endif /* INCOMPLETE_TYPES_BROKEN */
diff --git a/User/lib/lcd/gui/JPEG/jpeglib.h b/User/lib/lcd/gui/JPEG/jpeglib.h
new file mode 100644
index 0000000..de360f2
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jpeglib.h
@@ -0,0 +1,1034 @@
+/*
+ * jpeglib.h
+ *
+ * Copyright (C) 1991-1998, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file defines the application interface for the JPEG library.
+ * Most applications using the library need only include this file,
+ * and perhaps jerror.h if they want to know the exact error codes.
+ */
+
+#ifndef JPEGLIB_H
+#define JPEGLIB_H
+
+/*
+ * First we include the configuration files that record how this
+ * installation of the JPEG library is set up. jconfig.h can be
+ * generated automatically for many systems. jmorecfg.h contains
+ * manual configuration options that most people need not worry about.
+ */
+
+#ifndef JCONFIG_INCLUDED /* in case jinclude.h already did */
+#include "jconfig.h" /* widely used configuration options */
+#endif
+#include "jmorecfg.h" /* seldom changed options */
+
+
+/* Version ID for the JPEG library.
+ * Might be useful for tests like "#if JPEG_LIB_VERSION >= 60".
+ */
+
+#define JPEG_LIB_VERSION 62 /* Version 6b */
+
+
+/* Various constants determining the sizes of things.
+ * All of these are specified by the JPEG standard, so don't change them
+ * if you want to be compatible.
+ */
+
+#define DCTSIZE 8 /* The basic DCT block is 8x8 samples */
+#define DCTSIZE2 64 /* DCTSIZE squared; # of elements in a block */
+#define NUM_QUANT_TBLS 4 /* Quantization tables are numbered 0..3 */
+#define NUM_HUFF_TBLS 4 /* Huffman tables are numbered 0..3 */
+#define NUM_ARITH_TBLS 16 /* Arith-coding tables are numbered 0..15 */
+#define MAX_COMPS_IN_SCAN 4 /* JPEG limit on # of components in one scan */
+#define MAX_SAMP_FACTOR 4 /* JPEG limit on sampling factors */
+/* Unfortunately, some bozo at Adobe saw no reason to be bound by the standard;
+ * the PostScript DCT filter can emit files with many more than 10 blocks/MCU.
+ * If you happen to run across such a file, you can up D_MAX_BLOCKS_IN_MCU
+ * to handle it. We even let you do this from the jconfig.h file. However,
+ * we strongly discourage changing C_MAX_BLOCKS_IN_MCU; just because Adobe
+ * sometimes emits noncompliant files doesn't mean you should too.
+ */
+#define C_MAX_BLOCKS_IN_MCU 10 /* compressor's limit on blocks per MCU */
+#ifndef D_MAX_BLOCKS_IN_MCU
+#define D_MAX_BLOCKS_IN_MCU 10 /* decompressor's limit on blocks per MCU */
+#endif
+
+
+/* Data structures for images (arrays of samples and of DCT coefficients).
+ * On 80x86 machines, the image arrays are too big for near pointers,
+ * but the pointer arrays can fit in near memory.
+ */
+
+typedef JSAMPLE FAR *JSAMPROW; /* ptr to one image row of pixel samples. */
+typedef JSAMPROW *JSAMPARRAY; /* ptr to some rows (a 2-D sample array) */
+typedef JSAMPARRAY *JSAMPIMAGE; /* a 3-D sample array: top index is color */
+
+typedef JCOEF JBLOCK[DCTSIZE2]; /* one block of coefficients */
+typedef JBLOCK FAR *JBLOCKROW; /* pointer to one row of coefficient blocks */
+typedef JBLOCKROW *JBLOCKARRAY; /* a 2-D array of coefficient blocks */
+typedef JBLOCKARRAY *JBLOCKIMAGE; /* a 3-D array of coefficient blocks */
+
+typedef JCOEF FAR *JCOEFPTR; /* useful in a couple of places */
+
+
+/* Types for JPEG compression parameters and working tables. */
+
+
+/* DCT coefficient quantization tables. */
+
+typedef struct {
+ /* This array gives the coefficient quantizers in natural array order
+ * (not the zigzag order in which they are stored in a JPEG DQT marker).
+ * CAUTION: IJG versions prior to v6a kept this array in zigzag order.
+ */
+ UINT16 quantval[DCTSIZE2]; /* quantization step for each coefficient */
+ /* This field is used only during compression. It's initialized FALSE when
+ * the table is created, and set TRUE when it's been output to the file.
+ * You could suppress output of a table by setting this to TRUE.
+ * (See jpeg_suppress_tables for an example.)
+ */
+ boolean sent_table; /* TRUE when table has been output */
+} JQUANT_TBL;
+
+
+/* Huffman coding tables. */
+
+typedef struct {
+ /* These two fields directly represent the contents of a JPEG DHT marker */
+ UINT8 bits[17]; /* bits[k] = # of symbols with codes of */
+ /* length k bits; bits[0] is unused */
+ UINT8 huffval[256]; /* The symbols, in order of incr code length */
+ /* This field is used only during compression. It's initialized FALSE when
+ * the table is created, and set TRUE when it's been output to the file.
+ * You could suppress output of a table by setting this to TRUE.
+ * (See jpeg_suppress_tables for an example.)
+ */
+ boolean sent_table; /* TRUE when table has been output */
+} JHUFF_TBL;
+
+
+/* Basic info about one component (color channel). */
+
+typedef struct {
+ /* These values are fixed over the whole image. */
+ /* For compression, they must be supplied by parameter setup; */
+ /* for decompression, they are read from the SOF marker. */
+ int component_id; /* identifier for this component (0..255) */
+ int component_index; /* its index in SOF or cinfo->comp_info[] */
+ int h_samp_factor; /* horizontal sampling factor (1..4) */
+ int v_samp_factor; /* vertical sampling factor (1..4) */
+ int quant_tbl_no; /* quantization table selector (0..3) */
+ /* These values may vary between scans. */
+ /* For compression, they must be supplied by parameter setup; */
+ /* for decompression, they are read from the SOS marker. */
+ /* The decompressor output side may not use these variables. */
+ int dc_tbl_no; /* DC entropy table selector (0..3) */
+ int ac_tbl_no; /* AC entropy table selector (0..3) */
+
+ /* Remaining fields should be treated as private by applications. */
+
+ /* These values are computed during compression or decompression startup: */
+ /* Component's size in DCT blocks.
+ * Any dummy blocks added to complete an MCU are not counted; therefore
+ * these values do not depend on whether a scan is interleaved or not.
+ */
+ JDIMENSION width_in_blocks;
+ JDIMENSION height_in_blocks;
+ /* Size of a DCT block in samples. Always DCTSIZE for compression.
+ * For decompression this is the size of the output from one DCT block,
+ * reflecting any scaling we choose to apply during the IDCT step.
+ * Values of 1,2,4,8 are likely to be supported. Note that different
+ * components may receive different IDCT scalings.
+ */
+ int DCT_scaled_size;
+ /* The downsampled dimensions are the component's actual, unpadded number
+ * of samples at the main buffer (preprocessing/compression interface), thus
+ * downsampled_width = ceil(image_width * Hi/Hmax)
+ * and similarly for height. For decompression, IDCT scaling is included, so
+ * downsampled_width = ceil(image_width * Hi/Hmax * DCT_scaled_size/DCTSIZE)
+ */
+ JDIMENSION downsampled_width; /* actual width in samples */
+ JDIMENSION downsampled_height; /* actual height in samples */
+ /* This flag is used only for decompression. In cases where some of the
+ * components will be ignored (eg grayscale output from YCbCr image),
+ * we can skip most computations for the unused components.
+ */
+ boolean component_needed; /* do we need the value of this component? */
+
+ /* These values are computed before starting a scan of the component. */
+ /* The decompressor output side may not use these variables. */
+ int MCU_width; /* number of blocks per MCU, horizontally */
+ int MCU_height; /* number of blocks per MCU, vertically */
+ int MCU_blocks; /* MCU_width * MCU_height */
+ int MCU_sample_width; /* MCU width in samples, MCU_width*DCT_scaled_size */
+ int last_col_width; /* # of non-dummy blocks across in last MCU */
+ int last_row_height; /* # of non-dummy blocks down in last MCU */
+
+ /* Saved quantization table for component; NULL if none yet saved.
+ * See jdinput.c comments about the need for this information.
+ * This field is currently used only for decompression.
+ */
+ JQUANT_TBL * quant_table;
+
+ /* Private per-component storage for DCT or IDCT subsystem. */
+ void * dct_table;
+} jpeg_component_info;
+
+
+/* The script for encoding a multiple-scan file is an array of these: */
+
+typedef struct {
+ int comps_in_scan; /* number of components encoded in this scan */
+ int component_index[MAX_COMPS_IN_SCAN]; /* their SOF/comp_info[] indexes */
+ int Ss, Se; /* progressive JPEG spectral selection parms */
+ int Ah, Al; /* progressive JPEG successive approx. parms */
+} jpeg_scan_info;
+
+/* The decompressor can save APPn and COM markers in a list of these: */
+
+typedef struct jpeg_marker_struct FAR * jpeg_saved_marker_ptr;
+
+struct jpeg_marker_struct {
+ jpeg_saved_marker_ptr next; /* next in list, or NULL */
+ UINT8 marker; /* marker code: JPEG_COM, or JPEG_APP0+n */
+ unsigned int original_length; /* # bytes of data in the file */
+ unsigned int data_length; /* # bytes of data saved at data[] */
+ JOCTET FAR * data; /* the data contained in the marker */
+ /* the marker length word is not counted in data_length or original_length */
+};
+
+/* Known color spaces. */
+
+typedef enum {
+ JCS_UNKNOWN, /* error/unspecified */
+ JCS_GRAYSCALE, /* monochrome */
+ JCS_RGB, /* red/green/blue */
+ JCS_YCbCr, /* Y/Cb/Cr (also known as YUV) */
+ JCS_CMYK, /* C/M/Y/K */
+ JCS_YCCK /* Y/Cb/Cr/K */
+} J_COLOR_SPACE;
+
+/* DCT/IDCT algorithm options. */
+
+typedef enum {
+ JDCT_ISLOW, /* slow but accurate integer algorithm */
+ JDCT_IFAST, /* faster, less accurate integer method */
+ JDCT_FLOAT /* floating-point: accurate, fast on fast HW */
+} J_DCT_METHOD;
+
+#ifndef JDCT_DEFAULT /* may be overridden in jconfig.h */
+#define JDCT_DEFAULT JDCT_ISLOW
+#endif
+#ifndef JDCT_FASTEST /* may be overridden in jconfig.h */
+#define JDCT_FASTEST JDCT_IFAST
+#endif
+
+/* Dithering options for decompression. */
+
+typedef enum {
+ JDITHER_NONE, /* no dithering */
+ JDITHER_ORDERED, /* simple ordered dither */
+ JDITHER_FS /* Floyd-Steinberg error diffusion dither */
+} J_DITHER_MODE;
+
+
+/* Common fields between JPEG compression and decompression master structs. */
+
+#define jpeg_common_fields \
+ struct jpeg_error_mgr * err; /* Error handler module */\
+ struct jpeg_memory_mgr * mem; /* Memory manager module */\
+ struct jpeg_progress_mgr * progress; /* Progress monitor, or NULL if none */\
+ void * client_data; /* Available for use by application */\
+ boolean is_decompressor; /* So common code can tell which is which */\
+ int global_state /* For checking call sequence validity */
+
+/* Routines that are to be used by both halves of the library are declared
+ * to receive a pointer to this structure. There are no actual instances of
+ * jpeg_common_struct, only of jpeg_compress_struct and jpeg_decompress_struct.
+ */
+struct jpeg_common_struct {
+ jpeg_common_fields; /* Fields common to both master struct types */
+ /* Additional fields follow in an actual jpeg_compress_struct or
+ * jpeg_decompress_struct. All three structs must agree on these
+ * initial fields! (This would be a lot cleaner in C++.)
+ */
+};
+
+typedef struct jpeg_common_struct * j_common_ptr;
+typedef struct jpeg_compress_struct * j_compress_ptr;
+typedef struct jpeg_decompress_struct * j_decompress_ptr;
+
+
+/* Master record for a compression instance */
+
+struct jpeg_compress_struct {
+ jpeg_common_fields; /* Fields shared with jpeg_decompress_struct */
+
+ /* Destination for compressed data */
+ struct jpeg_destination_mgr * dest;
+
+ /* Description of source image --- these fields must be filled in by
+ * outer application before starting compression. in_color_space must
+ * be correct before you can even call jpeg_set_defaults().
+ */
+
+ JDIMENSION image_width; /* input image width */
+ JDIMENSION image_height; /* input image height */
+ int input_components; /* # of color components in input image */
+ J_COLOR_SPACE in_color_space; /* colorspace of input image */
+
+ double input_gamma; /* image gamma of input image */
+
+ /* Compression parameters --- these fields must be set before calling
+ * jpeg_start_compress(). We recommend calling jpeg_set_defaults() to
+ * initialize everything to reasonable defaults, then changing anything
+ * the application specifically wants to change. That way you won't get
+ * burnt when new parameters are added. Also note that there are several
+ * helper routines to simplify changing parameters.
+ */
+
+ int data_precision; /* bits of precision in image data */
+
+ int num_components; /* # of color components in JPEG image */
+ J_COLOR_SPACE jpeg_color_space; /* colorspace of JPEG image */
+
+ jpeg_component_info * comp_info;
+ /* comp_info[i] describes component that appears i'th in SOF */
+
+ JQUANT_TBL * quant_tbl_ptrs[NUM_QUANT_TBLS];
+ /* ptrs to coefficient quantization tables, or NULL if not defined */
+
+ JHUFF_TBL * dc_huff_tbl_ptrs[NUM_HUFF_TBLS];
+ JHUFF_TBL * ac_huff_tbl_ptrs[NUM_HUFF_TBLS];
+ /* ptrs to Huffman coding tables, or NULL if not defined */
+
+ UINT8 arith_dc_L[NUM_ARITH_TBLS]; /* L values for DC arith-coding tables */
+ UINT8 arith_dc_U[NUM_ARITH_TBLS]; /* U values for DC arith-coding tables */
+ UINT8 arith_ac_K[NUM_ARITH_TBLS]; /* Kx values for AC arith-coding tables */
+
+ int num_scans; /* # of entries in scan_info array */
+ const jpeg_scan_info * scan_info; /* script for multi-scan file, or NULL */
+ /* The default value of scan_info is NULL, which causes a single-scan
+ * sequential JPEG file to be emitted. To create a multi-scan file,
+ * set num_scans and scan_info to point to an array of scan definitions.
+ */
+
+ boolean raw_data_in; /* TRUE=caller supplies downsampled data */
+ boolean arith_code; /* TRUE=arithmetic coding, FALSE=Huffman */
+ boolean optimize_coding; /* TRUE=optimize entropy encoding parms */
+ boolean CCIR601_sampling; /* TRUE=first samples are cosited */
+ int smoothing_factor; /* 1..100, or 0 for no input smoothing */
+ J_DCT_METHOD dct_method; /* DCT algorithm selector */
+
+ /* The restart interval can be specified in absolute MCUs by setting
+ * restart_interval, or in MCU rows by setting restart_in_rows
+ * (in which case the correct restart_interval will be figured
+ * for each scan).
+ */
+ unsigned int restart_interval; /* MCUs per restart, or 0 for no restart */
+ int restart_in_rows; /* if > 0, MCU rows per restart interval */
+
+ /* Parameters controlling emission of special markers. */
+
+ boolean write_JFIF_header; /* should a JFIF marker be written? */
+ UINT8 JFIF_major_version; /* What to write for the JFIF version number */
+ UINT8 JFIF_minor_version;
+ /* These three values are not used by the JPEG code, merely copied */
+ /* into the JFIF APP0 marker. density_unit can be 0 for unknown, */
+ /* 1 for dots/inch, or 2 for dots/cm. Note that the pixel aspect */
+ /* ratio is defined by X_density/Y_density even when density_unit=0. */
+ UINT8 density_unit; /* JFIF code for pixel size units */
+ UINT16 X_density; /* Horizontal pixel density */
+ UINT16 Y_density; /* Vertical pixel density */
+ boolean write_Adobe_marker; /* should an Adobe marker be written? */
+
+ /* State variable: index of next scanline to be written to
+ * jpeg_write_scanlines(). Application may use this to control its
+ * processing loop, e.g., "while (next_scanline < image_height)".
+ */
+
+ JDIMENSION next_scanline; /* 0 .. image_height-1 */
+
+ /* Remaining fields are known throughout compressor, but generally
+ * should not be touched by a surrounding application.
+ */
+
+ /*
+ * These fields are computed during compression startup
+ */
+ boolean progressive_mode; /* TRUE if scan script uses progressive mode */
+ int max_h_samp_factor; /* largest h_samp_factor */
+ int max_v_samp_factor; /* largest v_samp_factor */
+
+ JDIMENSION total_iMCU_rows; /* # of iMCU rows to be input to coef ctlr */
+ /* The coefficient controller receives data in units of MCU rows as defined
+ * for fully interleaved scans (whether the JPEG file is interleaved or not).
+ * There are v_samp_factor * DCTSIZE sample rows of each component in an
+ * "iMCU" (interleaved MCU) row.
+ */
+
+ /*
+ * These fields are valid during any one scan.
+ * They describe the components and MCUs actually appearing in the scan.
+ */
+ int comps_in_scan; /* # of JPEG components in this scan */
+ jpeg_component_info * cur_comp_info[MAX_COMPS_IN_SCAN];
+ /* *cur_comp_info[i] describes component that appears i'th in SOS */
+
+ JDIMENSION MCUs_per_row; /* # of MCUs across the image */
+ JDIMENSION MCU_rows_in_scan; /* # of MCU rows in the image */
+
+ int blocks_in_MCU; /* # of DCT blocks per MCU */
+ int MCU_membership[C_MAX_BLOCKS_IN_MCU];
+ /* MCU_membership[i] is index in cur_comp_info of component owning */
+ /* i'th block in an MCU */
+
+ int Ss, Se, Ah, Al; /* progressive JPEG parameters for scan */
+
+ /*
+ * Links to compression subobjects (methods and private variables of modules)
+ */
+ struct jpeg_comp_master * master;
+ struct jpeg_c_main_controller * main;
+ struct jpeg_c_prep_controller * prep;
+ struct jpeg_c_coef_controller * coef;
+ struct jpeg_marker_writer * marker;
+ struct jpeg_color_converter * cconvert;
+ struct jpeg_downsampler * downsample;
+ struct jpeg_forward_dct * fdct;
+ struct jpeg_entropy_encoder * entropy;
+ jpeg_scan_info * script_space; /* workspace for jpeg_simple_progression */
+ int script_space_size;
+};
+
+
+/* Master record for a decompression instance */
+
+struct jpeg_decompress_struct {
+ jpeg_common_fields; /* Fields shared with jpeg_compress_struct */
+
+ /* Source of compressed data */
+ struct jpeg_source_mgr * src;
+
+ /* Basic description of image --- filled in by jpeg_read_header(). */
+ /* Application may inspect these values to decide how to process image. */
+
+ JDIMENSION image_width; /* nominal image width (from SOF marker) */
+ JDIMENSION image_height; /* nominal image height */
+ int num_components; /* # of color components in JPEG image */
+ J_COLOR_SPACE jpeg_color_space; /* colorspace of JPEG image */
+
+ /* Decompression processing parameters --- these fields must be set before
+ * calling jpeg_start_decompress(). Note that jpeg_read_header() initializes
+ * them to default values.
+ */
+
+ J_COLOR_SPACE out_color_space; /* colorspace for output */
+
+ unsigned int scale_num, scale_denom; /* fraction by which to scale image */
+
+ double output_gamma; /* image gamma wanted in output */
+
+ boolean buffered_image; /* TRUE=multiple output passes */
+ boolean raw_data_out; /* TRUE=downsampled data wanted */
+
+ J_DCT_METHOD dct_method; /* IDCT algorithm selector */
+ boolean do_fancy_upsampling; /* TRUE=apply fancy upsampling */
+ boolean do_block_smoothing; /* TRUE=apply interblock smoothing */
+
+ boolean quantize_colors; /* TRUE=colormapped output wanted */
+ /* the following are ignored if not quantize_colors: */
+ J_DITHER_MODE dither_mode; /* type of color dithering to use */
+ boolean two_pass_quantize; /* TRUE=use two-pass color quantization */
+ int desired_number_of_colors; /* max # colors to use in created colormap */
+ /* these are significant only in buffered-image mode: */
+ boolean enable_1pass_quant; /* enable future use of 1-pass quantizer */
+ boolean enable_external_quant;/* enable future use of external colormap */
+ boolean enable_2pass_quant; /* enable future use of 2-pass quantizer */
+
+ /* Description of actual output image that will be returned to application.
+ * These fields are computed by jpeg_start_decompress().
+ * You can also use jpeg_calc_output_dimensions() to determine these values
+ * in advance of calling jpeg_start_decompress().
+ */
+
+ JDIMENSION output_width; /* scaled image width */
+ JDIMENSION output_height; /* scaled image height */
+ int out_color_components; /* # of color components in out_color_space */
+ int output_components; /* # of color components returned */
+ /* output_components is 1 (a colormap index) when quantizing colors;
+ * otherwise it equals out_color_components.
+ */
+ int rec_outbuf_height; /* min recommended height of scanline buffer */
+ /* If the buffer passed to jpeg_read_scanlines() is less than this many rows
+ * high, space and time will be wasted due to unnecessary data copying.
+ * Usually rec_outbuf_height will be 1 or 2, at most 4.
+ */
+
+ /* When quantizing colors, the output colormap is described by these fields.
+ * The application can supply a colormap by setting colormap non-NULL before
+ * calling jpeg_start_decompress; otherwise a colormap is created during
+ * jpeg_start_decompress or jpeg_start_output.
+ * The map has out_color_components rows and actual_number_of_colors columns.
+ */
+ int actual_number_of_colors; /* number of entries in use */
+ JSAMPARRAY colormap; /* The color map as a 2-D pixel array */
+
+ /* State variables: these variables indicate the progress of decompression.
+ * The application may examine these but must not modify them.
+ */
+
+ /* Row index of next scanline to be read from jpeg_read_scanlines().
+ * Application may use this to control its processing loop, e.g.,
+ * "while (output_scanline < output_height)".
+ */
+ JDIMENSION output_scanline; /* 0 .. output_height-1 */
+
+ /* Current input scan number and number of iMCU rows completed in scan.
+ * These indicate the progress of the decompressor input side.
+ */
+ int input_scan_number; /* Number of SOS markers seen so far */
+ JDIMENSION input_iMCU_row; /* Number of iMCU rows completed */
+
+ /* The "output scan number" is the notional scan being displayed by the
+ * output side. The decompressor will not allow output scan/row number
+ * to get ahead of input scan/row, but it can fall arbitrarily far behind.
+ */
+ int output_scan_number; /* Nominal scan number being displayed */
+ JDIMENSION output_iMCU_row; /* Number of iMCU rows read */
+
+ /* Current progression status. coef_bits[c][i] indicates the precision
+ * with which component c's DCT coefficient i (in zigzag order) is known.
+ * It is -1 when no data has yet been received, otherwise it is the point
+ * transform (shift) value for the most recent scan of the coefficient
+ * (thus, 0 at completion of the progression).
+ * This pointer is NULL when reading a non-progressive file.
+ */
+ int (*coef_bits)[DCTSIZE2]; /* -1 or current Al value for each coef */
+
+ /* Internal JPEG parameters --- the application usually need not look at
+ * these fields. Note that the decompressor output side may not use
+ * any parameters that can change between scans.
+ */
+
+ /* Quantization and Huffman tables are carried forward across input
+ * datastreams when processing abbreviated JPEG datastreams.
+ */
+
+ JQUANT_TBL * quant_tbl_ptrs[NUM_QUANT_TBLS];
+ /* ptrs to coefficient quantization tables, or NULL if not defined */
+
+ JHUFF_TBL * dc_huff_tbl_ptrs[NUM_HUFF_TBLS];
+ JHUFF_TBL * ac_huff_tbl_ptrs[NUM_HUFF_TBLS];
+ /* ptrs to Huffman coding tables, or NULL if not defined */
+
+ /* These parameters are never carried across datastreams, since they
+ * are given in SOF/SOS markers or defined to be reset by SOI.
+ */
+
+ int data_precision; /* bits of precision in image data */
+
+ jpeg_component_info * comp_info;
+ /* comp_info[i] describes component that appears i'th in SOF */
+
+ boolean progressive_mode; /* TRUE if SOFn specifies progressive mode */
+ boolean arith_code; /* TRUE=arithmetic coding, FALSE=Huffman */
+
+ UINT8 arith_dc_L[NUM_ARITH_TBLS]; /* L values for DC arith-coding tables */
+ UINT8 arith_dc_U[NUM_ARITH_TBLS]; /* U values for DC arith-coding tables */
+ UINT8 arith_ac_K[NUM_ARITH_TBLS]; /* Kx values for AC arith-coding tables */
+
+ unsigned int restart_interval; /* MCUs per restart interval, or 0 for no restart */
+
+ /* These fields record data obtained from optional markers recognized by
+ * the JPEG library.
+ */
+ boolean saw_JFIF_marker; /* TRUE iff a JFIF APP0 marker was found */
+ /* Data copied from JFIF marker; only valid if saw_JFIF_marker is TRUE: */
+ UINT8 JFIF_major_version; /* JFIF version number */
+ UINT8 JFIF_minor_version;
+ UINT8 density_unit; /* JFIF code for pixel size units */
+ UINT16 X_density; /* Horizontal pixel density */
+ UINT16 Y_density; /* Vertical pixel density */
+ boolean saw_Adobe_marker; /* TRUE iff an Adobe APP14 marker was found */
+ UINT8 Adobe_transform; /* Color transform code from Adobe marker */
+
+ boolean CCIR601_sampling; /* TRUE=first samples are cosited */
+
+ /* Aside from the specific data retained from APPn markers known to the
+ * library, the uninterpreted contents of any or all APPn and COM markers
+ * can be saved in a list for examination by the application.
+ */
+ jpeg_saved_marker_ptr marker_list; /* Head of list of saved markers */
+
+ /* Remaining fields are known throughout decompressor, but generally
+ * should not be touched by a surrounding application.
+ */
+
+ /*
+ * These fields are computed during decompression startup
+ */
+ int max_h_samp_factor; /* largest h_samp_factor */
+ int max_v_samp_factor; /* largest v_samp_factor */
+
+ int min_DCT_scaled_size; /* smallest DCT_scaled_size of any component */
+
+ JDIMENSION total_iMCU_rows; /* # of iMCU rows in image */
+ /* The coefficient controller's input and output progress is measured in
+ * units of "iMCU" (interleaved MCU) rows. These are the same as MCU rows
+ * in fully interleaved JPEG scans, but are used whether the scan is
+ * interleaved or not. We define an iMCU row as v_samp_factor DCT block
+ * rows of each component. Therefore, the IDCT output contains
+ * v_samp_factor*DCT_scaled_size sample rows of a component per iMCU row.
+ */
+
+ JSAMPLE * sample_range_limit; /* table for fast range-limiting */
+
+ /*
+ * These fields are valid during any one scan.
+ * They describe the components and MCUs actually appearing in the scan.
+ * Note that the decompressor output side must not use these fields.
+ */
+ int comps_in_scan; /* # of JPEG components in this scan */
+ jpeg_component_info * cur_comp_info[MAX_COMPS_IN_SCAN];
+ /* *cur_comp_info[i] describes component that appears i'th in SOS */
+
+ JDIMENSION MCUs_per_row; /* # of MCUs across the image */
+ JDIMENSION MCU_rows_in_scan; /* # of MCU rows in the image */
+
+ int blocks_in_MCU; /* # of DCT blocks per MCU */
+ int MCU_membership[D_MAX_BLOCKS_IN_MCU];
+ /* MCU_membership[i] is index in cur_comp_info of component owning */
+ /* i'th block in an MCU */
+
+ int Ss, Se, Ah, Al; /* progressive JPEG parameters for scan */
+
+ /* This field is shared between entropy decoder and marker parser.
+ * It is either zero or the code of a JPEG marker that has been
+ * read from the data source, but has not yet been processed.
+ */
+ int unread_marker;
+
+ /*
+ * Links to decompression subobjects (methods, private variables of modules)
+ */
+ struct jpeg_decomp_master * master;
+ struct jpeg_d_main_controller * main;
+ struct jpeg_d_coef_controller * coef;
+ struct jpeg_d_post_controller * post;
+ struct jpeg_input_controller * inputctl;
+ struct jpeg_marker_reader * marker;
+ struct jpeg_entropy_decoder * entropy;
+ struct jpeg_inverse_dct * idct;
+ struct jpeg_upsampler * upsample;
+ struct jpeg_color_deconverter * cconvert;
+ struct jpeg_color_quantizer * cquantize;
+};
+
+
+/* "Object" declarations for JPEG modules that may be supplied or called
+ * directly by the surrounding application.
+ * As with all objects in the JPEG library, these structs only define the
+ * publicly visible methods and state variables of a module. Additional
+ * private fields may exist after the public ones.
+ */
+
+
+/* Error handler object */
+
+struct jpeg_error_mgr {
+ /* Error exit handler: does not return to caller */
+ JMETHOD(void, error_exit, (j_common_ptr cinfo));
+ /* Conditionally emit a trace or warning message */
+ JMETHOD(void, emit_message, (j_common_ptr cinfo, int msg_level));
+ /* Routine that actually outputs a trace or error message */
+ JMETHOD(void, output_message, (j_common_ptr cinfo));
+ /* Format a message string for the most recent JPEG error or message */
+ JMETHOD(void, format_message, (j_common_ptr cinfo, char * buffer));
+#define JMSG_LENGTH_MAX 200 /* recommended size of format_message buffer */
+ /* Reset error state variables at start of a new image */
+ JMETHOD(void, reset_error_mgr, (j_common_ptr cinfo));
+
+ /* The message ID code and any parameters are saved here.
+ * A message can have one string parameter or up to 8 int parameters.
+ */
+ int msg_code;
+#define JMSG_STR_PARM_MAX 80
+ union {
+ int i[8];
+ char s[JMSG_STR_PARM_MAX];
+ } msg_parm;
+
+ /* Standard state variables for error facility */
+
+ int trace_level; /* max msg_level that will be displayed */
+
+ /* For recoverable corrupt-data errors, we emit a warning message,
+ * but keep going unless emit_message chooses to abort. emit_message
+ * should count warnings in num_warnings. The surrounding application
+ * can check for bad data by seeing if num_warnings is nonzero at the
+ * end of processing.
+ */
+ long num_warnings; /* number of corrupt-data warnings */
+
+ /* These fields point to the table(s) of error message strings.
+ * An application can change the table pointer to switch to a different
+ * message list (typically, to change the language in which errors are
+ * reported). Some applications may wish to add additional error codes
+ * that will be handled by the JPEG library error mechanism; the second
+ * table pointer is used for this purpose.
+ *
+ * First table includes all errors generated by JPEG library itself.
+ * Error code 0 is reserved for a "no such error string" message.
+ */
+ const char * const * jpeg_message_table; /* Library errors */
+ int last_jpeg_message; /* Table contains strings 0..last_jpeg_message */
+ /* Second table can be added by application (see cjpeg/djpeg for example).
+ * It contains strings numbered first_addon_message..last_addon_message.
+ */
+ const char * const * addon_message_table; /* Non-library errors */
+ int first_addon_message; /* code for first string in addon table */
+ int last_addon_message; /* code for last string in addon table */
+};
+
+
+/* Progress monitor object */
+
+struct jpeg_progress_mgr {
+ JMETHOD(void, progress_monitor, (j_common_ptr cinfo));
+
+ long pass_counter; /* work units completed in this pass */
+ long pass_limit; /* total number of work units in this pass */
+ int completed_passes; /* passes completed so far */
+ int total_passes; /* total number of passes expected */
+};
+
+
+/* Data destination object for compression */
+
+struct jpeg_destination_mgr {
+ JOCTET * next_output_byte; /* => next byte to write in buffer */
+ size_t free_in_buffer; /* # of byte spaces remaining in buffer */
+
+ JMETHOD(void, init_destination, (j_compress_ptr cinfo));
+ JMETHOD(boolean, empty_output_buffer, (j_compress_ptr cinfo));
+ JMETHOD(void, term_destination, (j_compress_ptr cinfo));
+};
+
+
+/* Data source object for decompression */
+
+typedef struct jpeg_source_mgr {
+ const JOCTET * next_input_byte; /* => next byte to read from buffer */
+ size_t bytes_in_buffer; /* # of bytes remaining in buffer */
+
+ JMETHOD(void, init_source, (j_decompress_ptr cinfo));
+ JMETHOD(boolean, fill_input_buffer, (j_decompress_ptr cinfo));
+ JMETHOD(void, skip_input_data, (j_decompress_ptr cinfo, long num_bytes));
+ JMETHOD(boolean, resync_to_restart, (j_decompress_ptr cinfo, int desired));
+ JMETHOD(void, term_source, (j_decompress_ptr cinfo));
+} jpeg_source_mgr;
+
+
+/* Memory manager object.
+ * Allocates "small" objects (a few K total), "large" objects (tens of K),
+ * and "really big" objects (virtual arrays with backing store if needed).
+ * The memory manager does not allow individual objects to be freed; rather,
+ * each created object is assigned to a pool, and whole pools can be freed
+ * at once. This is faster and more convenient than remembering exactly what
+ * to free, especially where malloc()/free() are not too speedy.
+ * NB: alloc routines never return NULL. They exit to error_exit if not
+ * successful.
+ */
+
+#define JPOOL_PERMANENT 0 /* lasts until master record is destroyed */
+#define JPOOL_IMAGE 1 /* lasts until done with image/datastream */
+#define JPOOL_NUMPOOLS 2
+
+typedef struct jvirt_sarray_control * jvirt_sarray_ptr;
+typedef struct jvirt_barray_control * jvirt_barray_ptr;
+
+
+struct jpeg_memory_mgr {
+ /* Method pointers */
+ JMETHOD(void *, alloc_small, (j_common_ptr cinfo, int pool_id,
+ size_t sizeofobject));
+ JMETHOD(void FAR *, alloc_large, (j_common_ptr cinfo, int pool_id,
+ size_t sizeofobject));
+ JMETHOD(JSAMPARRAY, alloc_sarray, (j_common_ptr cinfo, int pool_id,
+ JDIMENSION samplesperrow,
+ JDIMENSION numrows));
+ JMETHOD(JBLOCKARRAY, alloc_barray, (j_common_ptr cinfo, int pool_id,
+ JDIMENSION blocksperrow,
+ JDIMENSION numrows));
+ JMETHOD(jvirt_sarray_ptr, request_virt_sarray, (j_common_ptr cinfo,
+ int pool_id,
+ boolean pre_zero,
+ JDIMENSION samplesperrow,
+ JDIMENSION numrows,
+ JDIMENSION maxaccess));
+ JMETHOD(jvirt_barray_ptr, request_virt_barray, (j_common_ptr cinfo,
+ int pool_id,
+ boolean pre_zero,
+ JDIMENSION blocksperrow,
+ JDIMENSION numrows,
+ JDIMENSION maxaccess));
+ JMETHOD(void, realize_virt_arrays, (j_common_ptr cinfo));
+ JMETHOD(JSAMPARRAY, access_virt_sarray, (j_common_ptr cinfo,
+ jvirt_sarray_ptr ptr,
+ JDIMENSION start_row,
+ JDIMENSION num_rows,
+ boolean writable));
+ JMETHOD(JBLOCKARRAY, access_virt_barray, (j_common_ptr cinfo,
+ jvirt_barray_ptr ptr,
+ JDIMENSION start_row,
+ JDIMENSION num_rows,
+ boolean writable));
+ JMETHOD(void, free_pool, (j_common_ptr cinfo, int pool_id));
+ JMETHOD(void, self_destruct, (j_common_ptr cinfo));
+
+ /* Limit on memory allocation for this JPEG object. (Note that this is
+ * merely advisory, not a guaranteed maximum; it only affects the space
+ * used for virtual-array buffers.) May be changed by outer application
+ * after creating the JPEG object.
+ */
+ long max_memory_to_use;
+
+ /* Maximum allocation request accepted by alloc_large. */
+ long max_alloc_chunk;
+};
+
+
+/* Routine signature for application-supplied marker processing methods.
+ * Need not pass marker code since it is stored in cinfo->unread_marker.
+ */
+typedef JMETHOD(boolean, jpeg_marker_parser_method, (j_decompress_ptr cinfo));
+
+
+/* Declarations for routines called by application.
+ * The JPP macro hides prototype parameters from compilers that can't cope.
+ * Note JPP requires double parentheses.
+ */
+
+#define JPP(arglist) arglist
+
+
+
+/* Default error-management setup */
+EXTERN(struct jpeg_error_mgr *) jpeg_std_error
+ JPP((struct jpeg_error_mgr * err));
+
+/* Initialization of JPEG compression objects.
+ * jpeg_create_compress() and jpeg_create_decompress() are the exported
+ * names that applications should call. These expand to calls on
+ * jpeg_CreateCompress and jpeg_CreateDecompress with additional information
+ * passed for version mismatch checking.
+ * NB: you must set up the error-manager BEFORE calling jpeg_create_xxx.
+ */
+#define jpeg_create_compress(cinfo) \
+ jpeg_CreateCompress((cinfo), JPEG_LIB_VERSION, \
+ (size_t) sizeof(struct jpeg_compress_struct))
+#define jpeg_create_decompress(cinfo) \
+ jpeg_CreateDecompress((cinfo), JPEG_LIB_VERSION, \
+ (size_t) sizeof(struct jpeg_decompress_struct))
+EXTERN(void) jpeg_CreateCompress JPP((j_compress_ptr cinfo,
+ int version, size_t structsize));
+EXTERN(void) jpeg_CreateDecompress JPP((j_decompress_ptr cinfo,
+ int version, size_t structsize));
+/* Destruction of JPEG compression objects */
+EXTERN(void) jpeg_destroy_compress JPP((j_compress_ptr cinfo));
+EXTERN(void) jpeg_destroy_decompress JPP((j_decompress_ptr cinfo));
+
+/* Standard data source and destination managers: stdio streams. */
+/* Caller is responsible for opening the file before and closing after. */
+/* EXTERN(void) jpeg_stdio_dest JPP((j_compress_ptr cinfo, FILE * outfile)); */
+/* EXTERN(void) jpeg_stdio_src JPP((j_decompress_ptr cinfo, FILE * infile)); */
+
+/* Default parameter setup for compression */
+EXTERN(void) jpeg_set_defaults JPP((j_compress_ptr cinfo));
+/* Compression parameter setup aids */
+EXTERN(void) jpeg_set_colorspace JPP((j_compress_ptr cinfo,
+ J_COLOR_SPACE colorspace));
+EXTERN(void) jpeg_default_colorspace JPP((j_compress_ptr cinfo));
+EXTERN(void) jpeg_set_quality JPP((j_compress_ptr cinfo, int quality,
+ boolean force_baseline));
+EXTERN(void) jpeg_set_linear_quality JPP((j_compress_ptr cinfo,
+ int scale_factor,
+ boolean force_baseline));
+EXTERN(void) jpeg_add_quant_table JPP((j_compress_ptr cinfo, int which_tbl,
+ const unsigned int *basic_table,
+ int scale_factor,
+ boolean force_baseline));
+EXTERN(int) jpeg_quality_scaling JPP((int quality));
+EXTERN(void) jpeg_simple_progression JPP((j_compress_ptr cinfo));
+EXTERN(void) jpeg_suppress_tables JPP((j_compress_ptr cinfo,
+ boolean suppress));
+EXTERN(JQUANT_TBL *) jpeg_alloc_quant_table JPP((j_common_ptr cinfo));
+EXTERN(JHUFF_TBL *) jpeg_alloc_huff_table JPP((j_common_ptr cinfo));
+
+/* Main entry points for compression */
+EXTERN(void) jpeg_start_compress JPP((j_compress_ptr cinfo,
+ boolean write_all_tables));
+EXTERN(JDIMENSION) jpeg_write_scanlines JPP((j_compress_ptr cinfo,
+ JSAMPARRAY scanlines,
+ JDIMENSION num_lines));
+EXTERN(void) jpeg_finish_compress JPP((j_compress_ptr cinfo));
+
+/* Replaces jpeg_write_scanlines when writing raw downsampled data. */
+EXTERN(JDIMENSION) jpeg_write_raw_data JPP((j_compress_ptr cinfo,
+ JSAMPIMAGE data,
+ JDIMENSION num_lines));
+
+/* Write a special marker. See libjpeg.doc concerning safe usage. */
+EXTERN(void) jpeg_write_marker
+ JPP((j_compress_ptr cinfo, int marker,
+ const JOCTET * dataptr, unsigned int datalen));
+/* Same, but piecemeal. */
+EXTERN(void) jpeg_write_m_header
+ JPP((j_compress_ptr cinfo, int marker, unsigned int datalen));
+EXTERN(void) jpeg_write_m_byte
+ JPP((j_compress_ptr cinfo, int val));
+
+/* Alternate compression function: just write an abbreviated table file */
+EXTERN(void) jpeg_write_tables JPP((j_compress_ptr cinfo));
+
+/* Decompression startup: read start of JPEG datastream to see what's there */
+EXTERN(int) jpeg_read_header JPP((j_decompress_ptr cinfo,
+ boolean require_image));
+/* Return value is one of: */
+#define JPEG_SUSPENDED 0 /* Suspended due to lack of input data */
+#define JPEG_HEADER_OK 1 /* Found valid image datastream */
+#define JPEG_HEADER_TABLES_ONLY 2 /* Found valid table-specs-only datastream */
+/* If you pass require_image = TRUE (normal case), you need not check for
+ * a TABLES_ONLY return code; an abbreviated file will cause an error exit.
+ * JPEG_SUSPENDED is only possible if you use a data source module that can
+ * give a suspension return (the stdio source module doesn't).
+ */
+
+/* Main entry points for decompression */
+EXTERN(boolean) jpeg_start_decompress JPP((j_decompress_ptr cinfo));
+EXTERN(JDIMENSION) jpeg_read_scanlines JPP((j_decompress_ptr cinfo,
+ JSAMPARRAY scanlines,
+ JDIMENSION max_lines));
+EXTERN(boolean) jpeg_finish_decompress JPP((j_decompress_ptr cinfo));
+
+/* Replaces jpeg_read_scanlines when reading raw downsampled data. */
+EXTERN(JDIMENSION) jpeg_read_raw_data JPP((j_decompress_ptr cinfo,
+ JSAMPIMAGE data,
+ JDIMENSION max_lines));
+
+/* Additional entry points for buffered-image mode. */
+EXTERN(boolean) jpeg_has_multiple_scans JPP((j_decompress_ptr cinfo));
+EXTERN(boolean) jpeg_start_output JPP((j_decompress_ptr cinfo,
+ int scan_number));
+EXTERN(boolean) jpeg_finish_output JPP((j_decompress_ptr cinfo));
+EXTERN(boolean) jpeg_input_complete JPP((j_decompress_ptr cinfo));
+EXTERN(void) jpeg_new_colormap JPP((j_decompress_ptr cinfo));
+EXTERN(int) jpeg_consume_input JPP((j_decompress_ptr cinfo));
+/* Return value is one of: */
+/* #define JPEG_SUSPENDED 0 Suspended due to lack of input data */
+#define JPEG_REACHED_SOS 1 /* Reached start of new scan */
+#define JPEG_REACHED_EOI 2 /* Reached end of image */
+#define JPEG_ROW_COMPLETED 3 /* Completed one iMCU row */
+#define JPEG_SCAN_COMPLETED 4 /* Completed last iMCU row of a scan */
+
+/* Precalculate output dimensions for current decompression parameters. */
+EXTERN(void) jpeg_calc_output_dimensions JPP((j_decompress_ptr cinfo));
+
+/* Control saving of COM and APPn markers into marker_list. */
+EXTERN(void) jpeg_save_markers
+ JPP((j_decompress_ptr cinfo, int marker_code,
+ unsigned int length_limit));
+
+/* Install a special processing method for COM or APPn markers. */
+EXTERN(void) jpeg_set_marker_processor
+ JPP((j_decompress_ptr cinfo, int marker_code,
+ jpeg_marker_parser_method routine));
+
+/* Read or write raw DCT coefficients --- useful for lossless transcoding. */
+EXTERN(jvirt_barray_ptr *) jpeg_read_coefficients JPP((j_decompress_ptr cinfo));
+EXTERN(void) jpeg_write_coefficients JPP((j_compress_ptr cinfo,
+ jvirt_barray_ptr * coef_arrays));
+EXTERN(void) jpeg_copy_critical_parameters JPP((j_decompress_ptr srcinfo,
+ j_compress_ptr dstinfo));
+
+/* If you choose to abort compression or decompression before completing
+ * jpeg_finish_(de)compress, then you need to clean up to release memory,
+ * temporary files, etc. You can just call jpeg_destroy_(de)compress
+ * if you're done with the JPEG object, but if you want to clean it up and
+ * reuse it, call this:
+ */
+EXTERN(void) jpeg_abort_compress JPP((j_compress_ptr cinfo));
+EXTERN(void) jpeg_abort_decompress JPP((j_decompress_ptr cinfo));
+
+/* Generic versions of jpeg_abort and jpeg_destroy that work on either
+ * flavor of JPEG object. These may be more convenient in some places.
+ */
+EXTERN(void) jpeg_abort JPP((j_common_ptr cinfo));
+EXTERN(void) jpeg_destroy JPP((j_common_ptr cinfo));
+
+/* Default restart-marker-resync procedure for use by data source modules */
+EXTERN(boolean) jpeg_resync_to_restart JPP((j_decompress_ptr cinfo,
+ int desired));
+
+
+/* These marker codes are exported since applications and data source modules
+ * are likely to want to use them.
+ */
+
+#define JPEG_RST0 0xD0 /* RST0 marker code */
+#define JPEG_EOI 0xD9 /* EOI marker code */
+#define JPEG_APP0 0xE0 /* APP0 marker code */
+#define JPEG_COM 0xFE /* COM marker code */
+
+
+/* If we have a brain-damaged compiler that emits warnings (or worse, errors)
+ * for structure definitions that are never filled in, keep it quiet by
+ * supplying dummy definitions for the various substructures.
+ */
+
+#ifdef INCOMPLETE_TYPES_BROKEN
+#ifndef JPEG_INTERNALS /* will be defined in jpegint.h */
+struct jvirt_sarray_control { long dummy; };
+struct jvirt_barray_control { long dummy; };
+struct jpeg_comp_master { long dummy; };
+struct jpeg_c_main_controller { long dummy; };
+struct jpeg_c_prep_controller { long dummy; };
+struct jpeg_c_coef_controller { long dummy; };
+struct jpeg_marker_writer { long dummy; };
+struct jpeg_color_converter { long dummy; };
+struct jpeg_downsampler { long dummy; };
+struct jpeg_forward_dct { long dummy; };
+struct jpeg_entropy_encoder { long dummy; };
+struct jpeg_decomp_master { long dummy; };
+struct jpeg_d_main_controller { long dummy; };
+struct jpeg_d_coef_controller { long dummy; };
+struct jpeg_d_post_controller { long dummy; };
+struct jpeg_input_controller { long dummy; };
+struct jpeg_marker_reader { long dummy; };
+struct jpeg_entropy_decoder { long dummy; };
+struct jpeg_inverse_dct { long dummy; };
+struct jpeg_upsampler { long dummy; };
+struct jpeg_color_deconverter { long dummy; };
+struct jpeg_color_quantizer { long dummy; };
+#endif /* JPEG_INTERNALS */
+#endif /* INCOMPLETE_TYPES_BROKEN */
+
+
+/*
+ * The JPEG library modules define JPEG_INTERNALS before including this file.
+ * The internal structure declarations are read only when that is true.
+ * Applications using the library should not include jpegint.h, but may wish
+ * to include jerror.h.
+ */
+
+#ifdef JPEG_INTERNALS
+#include "jpegint.h" /* fetch private declarations */
+#include "jerror.h" /* fetch error codes too */
+#endif
+
+#endif /* JPEGLIB_H */
diff --git a/User/lib/lcd/gui/JPEG/jquant1.c b/User/lib/lcd/gui/JPEG/jquant1.c
new file mode 100644
index 0000000..fb1b400
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jquant1.c
@@ -0,0 +1,862 @@
+/*
+ * jquant1.c
+ *
+ * Copyright (C) 1991-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains 1-pass color quantization (color mapping) routines.
+ * These routines provide mapping to a fixed color map using equally spaced
+ * color values. Optional Floyd-Steinberg or ordered dithering is available.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+#ifdef QUANT_1PASS_SUPPORTED
+
+
+/*
+ * The main purpose of 1-pass quantization is to provide a fast, if not very
+ * high quality, colormapped output capability. A 2-pass quantizer usually
+ * gives better visual quality; however, for quantized grayscale output this
+ * quantizer is perfectly adequate. Dithering is highly recommended with this
+ * quantizer, though you can turn it off if you really want to.
+ *
+ * In 1-pass quantization the colormap must be chosen in advance of seeing the
+ * image. We use a map consisting of all combinations of Ncolors[i] color
+ * values for the i'th component. The Ncolors[] values are chosen so that
+ * their product, the total number of colors, is no more than that requested.
+ * (In most cases, the product will be somewhat less.)
+ *
+ * Since the colormap is orthogonal, the representative value for each color
+ * component can be determined without considering the other components;
+ * then these indexes can be combined into a colormap index by a standard
+ * N-dimensional-array-subscript calculation. Most of the arithmetic involved
+ * can be precalculated and stored in the lookup table colorindex[].
+ * colorindex[i][j] maps pixel value j in component i to the nearest
+ * representative value (grid plane) for that component; this index is
+ * multiplied by the array stride for component i, so that the
+ * index of the colormap entry closest to a given pixel value is just
+ * sum( colorindex[component-number][pixel-component-value] )
+ * Aside from being fast, this scheme allows for variable spacing between
+ * representative values with no additional lookup cost.
+ *
+ * If gamma correction has been applied in color conversion, it might be wise
+ * to adjust the color grid spacing so that the representative colors are
+ * equidistant in linear space. At this writing, gamma correction is not
+ * implemented by jdcolor, so nothing is done here.
+ */
+
+
+/* Declarations for ordered dithering.
+ *
+ * We use a standard 16x16 ordered dither array. The basic concept of ordered
+ * dithering is described in many references, for instance Dale Schumacher's
+ * chapter II.2 of Graphics Gems II (James Arvo, ed. Academic Press, 1991).
+ * In place of Schumacher's comparisons against a "threshold" value, we add a
+ * "dither" value to the input pixel and then round the result to the nearest
+ * output value. The dither value is equivalent to (0.5 - threshold) times
+ * the distance between output values. For ordered dithering, we assume that
+ * the output colors are equally spaced; if not, results will probably be
+ * worse, since the dither may be too much or too little at a given point.
+ *
+ * The normal calculation would be to form pixel value + dither, range-limit
+ * this to 0..MAXJSAMPLE, and then index into the colorindex table as usual.
+ * We can skip the separate range-limiting step by extending the colorindex
+ * table in both directions.
+ */
+
+#define ODITHER_SIZE 16 /* dimension of dither matrix */
+/* NB: if ODITHER_SIZE is not a power of 2, ODITHER_MASK uses will break */
+#define ODITHER_CELLS (ODITHER_SIZE*ODITHER_SIZE) /* # cells in matrix */
+#define ODITHER_MASK (ODITHER_SIZE-1) /* mask for wrapping around counters */
+
+typedef int ODITHER_MATRIX[ODITHER_SIZE][ODITHER_SIZE];
+typedef int (*ODITHER_MATRIX_PTR)[ODITHER_SIZE];
+
+static const UINT8 base_dither_matrix[ODITHER_SIZE][ODITHER_SIZE] = {
+ /* Bayer's order-4 dither array. Generated by the code given in
+ * Stephen Hawley's article "Ordered Dithering" in Graphics Gems I.
+ * The values in this array must range from 0 to ODITHER_CELLS-1.
+ */
+ { 0,192, 48,240, 12,204, 60,252, 3,195, 51,243, 15,207, 63,255 },
+ { 128, 64,176,112,140, 76,188,124,131, 67,179,115,143, 79,191,127 },
+ { 32,224, 16,208, 44,236, 28,220, 35,227, 19,211, 47,239, 31,223 },
+ { 160, 96,144, 80,172,108,156, 92,163, 99,147, 83,175,111,159, 95 },
+ { 8,200, 56,248, 4,196, 52,244, 11,203, 59,251, 7,199, 55,247 },
+ { 136, 72,184,120,132, 68,180,116,139, 75,187,123,135, 71,183,119 },
+ { 40,232, 24,216, 36,228, 20,212, 43,235, 27,219, 39,231, 23,215 },
+ { 168,104,152, 88,164,100,148, 84,171,107,155, 91,167,103,151, 87 },
+ { 2,194, 50,242, 14,206, 62,254, 1,193, 49,241, 13,205, 61,253 },
+ { 130, 66,178,114,142, 78,190,126,129, 65,177,113,141, 77,189,125 },
+ { 34,226, 18,210, 46,238, 30,222, 33,225, 17,209, 45,237, 29,221 },
+ { 162, 98,146, 82,174,110,158, 94,161, 97,145, 81,173,109,157, 93 },
+ { 10,202, 58,250, 6,198, 54,246, 9,201, 57,249, 5,197, 53,245 },
+ { 138, 74,186,122,134, 70,182,118,137, 73,185,121,133, 69,181,117 },
+ { 42,234, 26,218, 38,230, 22,214, 41,233, 25,217, 37,229, 21,213 },
+ { 170,106,154, 90,166,102,150, 86,169,105,153, 89,165,101,149, 85 }
+};
+
+
+/* Declarations for Floyd-Steinberg dithering.
+ *
+ * Errors are accumulated into the array fserrors[], at a resolution of
+ * 1/16th of a pixel count. The error at a given pixel is propagated
+ * to its not-yet-processed neighbors using the standard F-S fractions,
+ * ... (here) 7/16
+ * 3/16 5/16 1/16
+ * We work left-to-right on even rows, right-to-left on odd rows.
+ *
+ * We can get away with a single array (holding one row's worth of errors)
+ * by using it to store the current row's errors at pixel columns not yet
+ * processed, but the next row's errors at columns already processed. We
+ * need only a few extra variables to hold the errors immediately around the
+ * current column. (If we are lucky, those variables are in registers, but
+ * even if not, they're probably cheaper to access than array elements are.)
+ *
+ * The fserrors[] array is indexed [component#][position].
+ * We provide (#columns + 2) entries per component; the extra entry at each
+ * end saves us from special-casing the first and last pixels.
+ *
+ * Note: on a wide image, we might not have enough room in a PC's near data
+ * segment to hold the error array; so it is allocated with alloc_large.
+ */
+
+#if BITS_IN_JSAMPLE == 8
+typedef INT16 FSERROR; /* 16 bits should be enough */
+typedef int LOCFSERROR; /* use 'int' for calculation temps */
+#else
+typedef INT32 FSERROR; /* may need more than 16 bits */
+typedef INT32 LOCFSERROR; /* be sure calculation temps are big enough */
+#endif
+
+typedef FSERROR FAR *FSERRPTR; /* pointer to error array (in FAR storage!) */
+
+
+/* Private subobject */
+
+#define MAX_Q_COMPS 4 /* max components I can handle */
+
+typedef struct {
+ struct jpeg_color_quantizer pub; /* public fields */
+
+ /* Initially allocated colormap is saved here */
+ JSAMPARRAY sv_colormap; /* The color map as a 2-D pixel array */
+ int sv_actual; /* number of entries in use */
+
+ JSAMPARRAY colorindex; /* Precomputed mapping for speed */
+ /* colorindex[i][j] = index of color closest to pixel value j in component i,
+ * premultiplied as described above. Since colormap indexes must fit into
+ * JSAMPLEs, the entries of this array will too.
+ */
+ boolean is_padded; /* is the colorindex padded for odither? */
+
+ int Ncolors[MAX_Q_COMPS]; /* # of values alloced to each component */
+
+ /* Variables for ordered dithering */
+ int row_index; /* cur row's vertical index in dither matrix */
+ ODITHER_MATRIX_PTR odither[MAX_Q_COMPS]; /* one dither array per component */
+
+ /* Variables for Floyd-Steinberg dithering */
+ FSERRPTR fserrors[MAX_Q_COMPS]; /* accumulated errors */
+ boolean on_odd_row; /* flag to remember which row we are on */
+} my_cquantizer;
+
+typedef my_cquantizer * my_cquantize_ptr;
+
+
+/*
+ * Policy-making subroutines for create_colormap and create_colorindex.
+ * These routines determine the colormap to be used. The rest of the module
+ * only assumes that the colormap is orthogonal.
+ *
+ * * select_ncolors decides how to divvy up the available colors
+ * among the components.
+ * * output_value defines the set of representative values for a component.
+ * * largest_input_value defines the mapping from input values to
+ * representative values for a component.
+ * Note that the latter two routines may impose different policies for
+ * different components, though this is not currently done.
+ */
+
+
+LOCAL(int)
+select_ncolors (j_decompress_ptr cinfo, int Ncolors[])
+/* Determine allocation of desired colors to components, */
+/* and fill in Ncolors[] array to indicate choice. */
+/* Return value is total number of colors (product of Ncolors[] values). */
+{
+ int nc = cinfo->out_color_components; /* number of color components */
+ int max_colors = cinfo->desired_number_of_colors;
+ int total_colors, iroot, i, j;
+ boolean changed;
+ long temp;
+ static const int RGB_order[3] = { RGB_GREEN, RGB_RED, RGB_BLUE };
+
+ /* We can allocate at least the nc'th root of max_colors per component. */
+ /* Compute floor(nc'th root of max_colors). */
+ iroot = 1;
+ do {
+ iroot++;
+ temp = iroot; /* set temp = iroot ** nc */
+ for (i = 1; i < nc; i++)
+ temp *= iroot;
+ } while (temp <= (long) max_colors); /* repeat till iroot exceeds root */
+ iroot--; /* now iroot = floor(root) */
+
+ /* Must have at least 2 color values per component */
+ if (iroot < 2)
+ ERREXIT1(cinfo, JERR_QUANT_FEW_COLORS, (int) temp);
+
+ /* Initialize to iroot color values for each component */
+ total_colors = 1;
+ for (i = 0; i < nc; i++) {
+ Ncolors[i] = iroot;
+ total_colors *= iroot;
+ }
+ /* We may be able to increment the count for one or more components without
+ * exceeding max_colors, though we know not all can be incremented.
+ * Sometimes, the first component can be incremented more than once!
+ * (Example: for 16 colors, we start at 2*2*2, go to 3*2*2, then 4*2*2.)
+ * In RGB colorspace, try to increment G first, then R, then B.
+ */
+ do {
+ changed = FALSE;
+ for (i = 0; i < nc; i++) {
+ j = (cinfo->out_color_space == JCS_RGB ? RGB_order[i] : i);
+ /* calculate new total_colors if Ncolors[j] is incremented */
+ temp = total_colors / Ncolors[j];
+ temp *= Ncolors[j]+1; /* done in long arith to avoid oflo */
+ if (temp > (long) max_colors)
+ break; /* won't fit, done with this pass */
+ Ncolors[j]++; /* OK, apply the increment */
+ total_colors = (int) temp;
+ changed = TRUE;
+ }
+ } while (changed);
+
+ return total_colors;
+}
+
+
+LOCAL(int)
+output_value (j_decompress_ptr cinfo, int ci, int j, int maxj)
+/* Return j'th output value, where j will range from 0 to maxj */
+/* The output values must fall in 0..MAXJSAMPLE in increasing order */
+{
+ /* We always provide values 0 and MAXJSAMPLE for each component;
+ * any additional values are equally spaced between these limits.
+ * (Forcing the upper and lower values to the limits ensures that
+ * dithering can't produce a color outside the selected gamut.)
+ */
+ GUI_USE_PARA(cinfo);
+ GUI_USE_PARA(ci);
+ return (int) (((INT32) j * MAXJSAMPLE + maxj/2) / maxj);
+}
+
+
+LOCAL(int)
+largest_input_value (j_decompress_ptr cinfo, int ci, int j, int maxj)
+/* Return largest input value that should map to j'th output value */
+/* Must have largest(j=0) >= 0, and largest(j=maxj) >= MAXJSAMPLE */
+{
+ GUI_USE_PARA(cinfo);
+ GUI_USE_PARA(ci);
+ /* Breakpoints are halfway between values returned by output_value */
+ return (int) (((INT32) (2*j + 1) * MAXJSAMPLE + maxj) / (2*maxj));
+}
+
+
+/*
+ * Create the colormap.
+ */
+
+LOCAL(void)
+create_colormap (j_decompress_ptr cinfo)
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ JSAMPARRAY colormap; /* Created colormap */
+ int total_colors; /* Number of distinct output colors */
+ int i,j,k, nci, blksize, blkdist, ptr, val;
+
+ /* Select number of colors for each component */
+ total_colors = select_ncolors(cinfo, cquantize->Ncolors);
+
+ /* Report selected color counts */
+ if (cinfo->out_color_components == 3)
+ TRACEMS4(cinfo, 1, JTRC_QUANT_3_NCOLORS,
+ total_colors, cquantize->Ncolors[0],
+ cquantize->Ncolors[1], cquantize->Ncolors[2]);
+ else
+ TRACEMS1(cinfo, 1, JTRC_QUANT_NCOLORS, total_colors);
+
+ /* Allocate and fill in the colormap. */
+ /* The colors are ordered in the map in standard row-major order, */
+ /* i.e. rightmost (highest-indexed) color changes most rapidly. */
+
+ colormap = (*cinfo->mem->alloc_sarray)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (JDIMENSION) total_colors, (JDIMENSION) cinfo->out_color_components);
+
+ /* blksize is number of adjacent repeated entries for a component */
+ /* blkdist is distance between groups of identical entries for a component */
+ blkdist = total_colors;
+
+ for (i = 0; i < cinfo->out_color_components; i++) {
+ /* fill in colormap entries for i'th color component */
+ nci = cquantize->Ncolors[i]; /* # of distinct values for this color */
+ blksize = blkdist / nci;
+ for (j = 0; j < nci; j++) {
+ /* Compute j'th output value (out of nci) for component */
+ val = output_value(cinfo, i, j, nci-1);
+ /* Fill in all colormap entries that have this value of this component */
+ for (ptr = j * blksize; ptr < total_colors; ptr += blkdist) {
+ /* fill in blksize entries beginning at ptr */
+ for (k = 0; k < blksize; k++)
+ colormap[i][ptr+k] = (JSAMPLE) val;
+ }
+ }
+ blkdist = blksize; /* blksize of this color is blkdist of next */
+ }
+
+ /* Save the colormap in private storage,
+ * where it will survive color quantization mode changes.
+ */
+ cquantize->sv_colormap = colormap;
+ cquantize->sv_actual = total_colors;
+}
+
+
+/*
+ * Create the color index table.
+ */
+
+LOCAL(void)
+create_colorindex (j_decompress_ptr cinfo)
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ JSAMPROW indexptr;
+ int i,j,k, nci, blksize, val, pad;
+
+ /* For ordered dither, we pad the color index tables by MAXJSAMPLE in
+ * each direction (input index values can be -MAXJSAMPLE .. 2*MAXJSAMPLE).
+ * This is not necessary in the other dithering modes. However, we
+ * flag whether it was done in case user changes dithering mode.
+ */
+ if (cinfo->dither_mode == JDITHER_ORDERED) {
+ pad = MAXJSAMPLE*2;
+ cquantize->is_padded = TRUE;
+ } else {
+ pad = 0;
+ cquantize->is_padded = FALSE;
+ }
+
+ cquantize->colorindex = (*cinfo->mem->alloc_sarray)
+ ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ (JDIMENSION) (MAXJSAMPLE+1 + pad),
+ (JDIMENSION) cinfo->out_color_components);
+
+ /* blksize is number of adjacent repeated entries for a component */
+ blksize = cquantize->sv_actual;
+
+ for (i = 0; i < cinfo->out_color_components; i++) {
+ /* fill in colorindex entries for i'th color component */
+ nci = cquantize->Ncolors[i]; /* # of distinct values for this color */
+ blksize = blksize / nci;
+
+ /* adjust colorindex pointers to provide padding at negative indexes. */
+ if (pad)
+ cquantize->colorindex[i] += MAXJSAMPLE;
+
+ /* in loop, val = index of current output value, */
+ /* and k = largest j that maps to current val */
+ indexptr = cquantize->colorindex[i];
+ val = 0;
+ k = largest_input_value(cinfo, i, 0, nci-1);
+ for (j = 0; j <= MAXJSAMPLE; j++) {
+ while (j > k) /* advance val if past boundary */
+ k = largest_input_value(cinfo, i, ++val, nci-1);
+ /* premultiply so that no multiplication needed in main processing */
+ indexptr[j] = (JSAMPLE) (val * blksize);
+ }
+ /* Pad at both ends if necessary */
+ if (pad)
+ for (j = 1; j <= MAXJSAMPLE; j++) {
+ indexptr[-j] = indexptr[0];
+ indexptr[MAXJSAMPLE+j] = indexptr[MAXJSAMPLE];
+ }
+ }
+}
+
+
+/*
+ * Create an ordered-dither array for a component having ncolors
+ * distinct output values.
+ */
+
+LOCAL(ODITHER_MATRIX_PTR)
+make_odither_array (j_decompress_ptr cinfo, int ncolors)
+{
+ ODITHER_MATRIX_PTR odither;
+ int j,k;
+ INT32 num,den;
+
+ odither = (ODITHER_MATRIX_PTR)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(ODITHER_MATRIX));
+ /* The inter-value distance for this color is MAXJSAMPLE/(ncolors-1).
+ * Hence the dither value for the matrix cell with fill order f
+ * (f=0..N-1) should be (N-1-2*f)/(2*N) * MAXJSAMPLE/(ncolors-1).
+ * On 16-bit-int machine, be careful to avoid overflow.
+ */
+ den = 2 * ODITHER_CELLS * ((INT32) (ncolors - 1));
+ for (j = 0; j < ODITHER_SIZE; j++) {
+ for (k = 0; k < ODITHER_SIZE; k++) {
+ num = ((INT32) (ODITHER_CELLS-1 - 2*((int)base_dither_matrix[j][k])))
+ * MAXJSAMPLE;
+ /* Ensure round towards zero despite C's lack of consistency
+ * about rounding negative values in integer division...
+ */
+ odither[j][k] = (int) (num<0 ? -((-num)/den) : num/den);
+ }
+ }
+ return odither;
+}
+
+
+/*
+ * Create the ordered-dither tables.
+ * Components having the same number of representative colors may
+ * share a dither table.
+ */
+
+LOCAL(void)
+create_odither_tables (j_decompress_ptr cinfo)
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ ODITHER_MATRIX_PTR odither;
+ int i, j, nci;
+
+ for (i = 0; i < cinfo->out_color_components; i++) {
+ nci = cquantize->Ncolors[i]; /* # of distinct values for this color */
+ odither = NULL; /* search for matching prior component */
+ for (j = 0; j < i; j++) {
+ if (nci == cquantize->Ncolors[j]) {
+ odither = cquantize->odither[j];
+ break;
+ }
+ }
+ if (odither == NULL) /* need a new table? */
+ odither = make_odither_array(cinfo, nci);
+ cquantize->odither[i] = odither;
+ }
+}
+
+
+/*
+ * Map some rows of pixels to the output colormapped representation.
+ */
+
+METHODDEF(void)
+color_quantize (j_decompress_ptr cinfo, JSAMPARRAY input_buf,
+ JSAMPARRAY output_buf, int num_rows)
+/* General case, no dithering */
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ JSAMPARRAY colorindex = cquantize->colorindex;
+ register int pixcode, ci;
+ register JSAMPROW ptrin, ptrout;
+ int row;
+ JDIMENSION col;
+ JDIMENSION width = cinfo->output_width;
+ register int nc = cinfo->out_color_components;
+
+ for (row = 0; row < num_rows; row++) {
+ ptrin = input_buf[row];
+ ptrout = output_buf[row];
+ for (col = width; col > 0; col--) {
+ pixcode = 0;
+ for (ci = 0; ci < nc; ci++) {
+ pixcode += GETJSAMPLE(colorindex[ci][GETJSAMPLE(*ptrin++)]);
+ }
+ *ptrout++ = (JSAMPLE) pixcode;
+ }
+ }
+}
+
+
+METHODDEF(void)
+color_quantize3 (j_decompress_ptr cinfo, JSAMPARRAY input_buf,
+ JSAMPARRAY output_buf, int num_rows)
+/* Fast path for out_color_components==3, no dithering */
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ register int pixcode;
+ register JSAMPROW ptrin, ptrout;
+ JSAMPROW colorindex0 = cquantize->colorindex[0];
+ JSAMPROW colorindex1 = cquantize->colorindex[1];
+ JSAMPROW colorindex2 = cquantize->colorindex[2];
+ int row;
+ JDIMENSION col;
+ JDIMENSION width = cinfo->output_width;
+
+ for (row = 0; row < num_rows; row++) {
+ ptrin = input_buf[row];
+ ptrout = output_buf[row];
+ for (col = width; col > 0; col--) {
+ pixcode = GETJSAMPLE(colorindex0[GETJSAMPLE(*ptrin++)]);
+ pixcode += GETJSAMPLE(colorindex1[GETJSAMPLE(*ptrin++)]);
+ pixcode += GETJSAMPLE(colorindex2[GETJSAMPLE(*ptrin++)]);
+ *ptrout++ = (JSAMPLE) pixcode;
+ }
+ }
+}
+
+
+METHODDEF(void)
+quantize_ord_dither (j_decompress_ptr cinfo, JSAMPARRAY input_buf,
+ JSAMPARRAY output_buf, int num_rows)
+/* General case, with ordered dithering */
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ register JSAMPROW input_ptr;
+ register JSAMPROW output_ptr;
+ JSAMPROW colorindex_ci;
+ int * dither; /* points to active row of dither matrix */
+ int row_index, col_index; /* current indexes into dither matrix */
+ int nc = cinfo->out_color_components;
+ int ci;
+ int row;
+ JDIMENSION col;
+ JDIMENSION width = cinfo->output_width;
+
+ for (row = 0; row < num_rows; row++) {
+ /* Initialize output values to 0 so can process components separately */
+ jzero_far((void FAR *) output_buf[row],
+ (size_t) (width * SIZEOF(JSAMPLE)));
+ row_index = cquantize->row_index;
+ for (ci = 0; ci < nc; ci++) {
+ input_ptr = input_buf[row] + ci;
+ output_ptr = output_buf[row];
+ colorindex_ci = cquantize->colorindex[ci];
+ dither = cquantize->odither[ci][row_index];
+ col_index = 0;
+
+ for (col = width; col > 0; col--) {
+ /* Form pixel value + dither, range-limit to 0..MAXJSAMPLE,
+ * select output value, accumulate into output code for this pixel.
+ * Range-limiting need not be done explicitly, as we have extended
+ * the colorindex table to produce the right answers for out-of-range
+ * inputs. The maximum dither is +- MAXJSAMPLE; this sets the
+ * required amount of padding.
+ */
+ *output_ptr += colorindex_ci[GETJSAMPLE(*input_ptr)+dither[col_index]];
+ input_ptr += nc;
+ output_ptr++;
+ col_index = (col_index + 1) & ODITHER_MASK;
+ }
+ }
+ /* Advance row index for next row */
+ row_index = (row_index + 1) & ODITHER_MASK;
+ cquantize->row_index = row_index;
+ }
+}
+
+
+METHODDEF(void)
+quantize3_ord_dither (j_decompress_ptr cinfo, JSAMPARRAY input_buf,
+ JSAMPARRAY output_buf, int num_rows)
+/* Fast path for out_color_components==3, with ordered dithering */
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ register int pixcode;
+ register JSAMPROW input_ptr;
+ register JSAMPROW output_ptr;
+ JSAMPROW colorindex0 = cquantize->colorindex[0];
+ JSAMPROW colorindex1 = cquantize->colorindex[1];
+ JSAMPROW colorindex2 = cquantize->colorindex[2];
+ int * dither0; /* points to active row of dither matrix */
+ int * dither1;
+ int * dither2;
+ int row_index, col_index; /* current indexes into dither matrix */
+ int row;
+ JDIMENSION col;
+ JDIMENSION width = cinfo->output_width;
+
+ for (row = 0; row < num_rows; row++) {
+ row_index = cquantize->row_index;
+ input_ptr = input_buf[row];
+ output_ptr = output_buf[row];
+ dither0 = cquantize->odither[0][row_index];
+ dither1 = cquantize->odither[1][row_index];
+ dither2 = cquantize->odither[2][row_index];
+ col_index = 0;
+
+ for (col = width; col > 0; col--) {
+ pixcode = GETJSAMPLE(colorindex0[GETJSAMPLE(*input_ptr++) +
+ dither0[col_index]]);
+ pixcode += GETJSAMPLE(colorindex1[GETJSAMPLE(*input_ptr++) +
+ dither1[col_index]]);
+ pixcode += GETJSAMPLE(colorindex2[GETJSAMPLE(*input_ptr++) +
+ dither2[col_index]]);
+ *output_ptr++ = (JSAMPLE) pixcode;
+ col_index = (col_index + 1) & ODITHER_MASK;
+ }
+ row_index = (row_index + 1) & ODITHER_MASK;
+ cquantize->row_index = row_index;
+ }
+}
+
+
+METHODDEF(void)
+quantize_fs_dither (j_decompress_ptr cinfo, JSAMPARRAY input_buf,
+ JSAMPARRAY output_buf, int num_rows)
+/* General case, with Floyd-Steinberg dithering */
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ register LOCFSERROR cur; /* current error or pixel value */
+ LOCFSERROR belowerr; /* error for pixel below cur */
+ LOCFSERROR bpreverr; /* error for below/prev col */
+ LOCFSERROR bnexterr; /* error for below/next col */
+ LOCFSERROR delta;
+ register FSERRPTR errorptr; /* => fserrors[] at column before current */
+ register JSAMPROW input_ptr;
+ register JSAMPROW output_ptr;
+ JSAMPROW colorindex_ci;
+ JSAMPROW colormap_ci;
+ int pixcode;
+ int nc = cinfo->out_color_components;
+ int dir; /* 1 for left-to-right, -1 for right-to-left */
+ int dirnc; /* dir * nc */
+ int ci;
+ int row;
+ JDIMENSION col;
+ JDIMENSION width = cinfo->output_width;
+ JSAMPLE *range_limit = cinfo->sample_range_limit;
+ SHIFT_TEMPS
+
+ for (row = 0; row < num_rows; row++) {
+ /* Initialize output values to 0 so can process components separately */
+ jzero_far((void FAR *) output_buf[row],
+ (size_t) (width * SIZEOF(JSAMPLE)));
+ for (ci = 0; ci < nc; ci++) {
+ input_ptr = input_buf[row] + ci;
+ output_ptr = output_buf[row];
+ if (cquantize->on_odd_row) {
+ /* work right to left in this row */
+ input_ptr += (width-1) * nc; /* so point to rightmost pixel */
+ output_ptr += width-1;
+ dir = -1;
+ dirnc = -nc;
+ errorptr = cquantize->fserrors[ci] + (width+1); /* => entry after last column */
+ } else {
+ /* work left to right in this row */
+ dir = 1;
+ dirnc = nc;
+ errorptr = cquantize->fserrors[ci]; /* => entry before first column */
+ }
+ colorindex_ci = cquantize->colorindex[ci];
+ colormap_ci = cquantize->sv_colormap[ci];
+ /* Preset error values: no error propagated to first pixel from left */
+ cur = 0;
+ /* and no error propagated to row below yet */
+ belowerr = bpreverr = 0;
+
+ for (col = width; col > 0; col--) {
+ /* cur holds the error propagated from the previous pixel on the
+ * current line. Add the error propagated from the previous line
+ * to form the complete error correction term for this pixel, and
+ * round the error term (which is expressed * 16) to an integer.
+ * RIGHT_SHIFT rounds towards minus infinity, so adding 8 is correct
+ * for either sign of the error value.
+ * Note: errorptr points to *previous* column's array entry.
+ */
+ cur = RIGHT_SHIFT(cur + errorptr[dir] + 8, 4);
+ /* Form pixel value + error, and range-limit to 0..MAXJSAMPLE.
+ * The maximum error is +- MAXJSAMPLE; this sets the required size
+ * of the range_limit array.
+ */
+ cur += GETJSAMPLE(*input_ptr);
+ cur = GETJSAMPLE(range_limit[cur]);
+ /* Select output value, accumulate into output code for this pixel */
+ pixcode = GETJSAMPLE(colorindex_ci[cur]);
+ *output_ptr += (JSAMPLE) pixcode;
+ /* Compute actual representation error at this pixel */
+ /* Note: we can do this even though we don't have the final */
+ /* pixel code, because the colormap is orthogonal. */
+ cur -= GETJSAMPLE(colormap_ci[pixcode]);
+ /* Compute error fractions to be propagated to adjacent pixels.
+ * Add these into the running sums, and simultaneously shift the
+ * next-line error sums left by 1 column.
+ */
+ bnexterr = cur;
+ delta = cur * 2;
+ cur += delta; /* form error * 3 */
+ errorptr[0] = (FSERROR) (bpreverr + cur);
+ cur += delta; /* form error * 5 */
+ bpreverr = belowerr + cur;
+ belowerr = bnexterr;
+ cur += delta; /* form error * 7 */
+ /* At this point cur contains the 7/16 error value to be propagated
+ * to the next pixel on the current line, and all the errors for the
+ * next line have been shifted over. We are therefore ready to move on.
+ */
+ input_ptr += dirnc; /* advance input ptr to next column */
+ output_ptr += dir; /* advance output ptr to next column */
+ errorptr += dir; /* advance errorptr to current column */
+ }
+ /* Post-loop cleanup: we must unload the final error value into the
+ * final fserrors[] entry. Note we need not unload belowerr because
+ * it is for the dummy column before or after the actual array.
+ */
+ errorptr[0] = (FSERROR) bpreverr; /* unload prev err into array */
+ }
+ cquantize->on_odd_row = (cquantize->on_odd_row ? FALSE : TRUE);
+ }
+}
+
+
+/*
+ * Allocate workspace for Floyd-Steinberg errors.
+ */
+
+LOCAL(void)
+alloc_fs_workspace (j_decompress_ptr cinfo)
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ size_t arraysize;
+ int i;
+
+ arraysize = (size_t) ((cinfo->output_width + 2) * SIZEOF(FSERROR));
+ for (i = 0; i < cinfo->out_color_components; i++) {
+ cquantize->fserrors[i] = (FSERRPTR)
+ (*cinfo->mem->alloc_large)((j_common_ptr) cinfo, JPOOL_IMAGE, arraysize);
+ }
+}
+
+
+/*
+ * Initialize for one-pass color quantization.
+ */
+
+METHODDEF(void)
+start_pass_1_quant (j_decompress_ptr cinfo, boolean is_pre_scan)
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ size_t arraysize;
+ int i;
+
+ GUI_USE_PARA(is_pre_scan);
+ /* Install my colormap. */
+ cinfo->colormap = cquantize->sv_colormap;
+ cinfo->actual_number_of_colors = cquantize->sv_actual;
+
+ /* Initialize for desired dithering mode. */
+ switch (cinfo->dither_mode) {
+ case JDITHER_NONE:
+ if (cinfo->out_color_components == 3)
+ cquantize->pub.color_quantize = color_quantize3;
+ else
+ cquantize->pub.color_quantize = color_quantize;
+ break;
+ case JDITHER_ORDERED:
+ if (cinfo->out_color_components == 3)
+ cquantize->pub.color_quantize = quantize3_ord_dither;
+ else
+ cquantize->pub.color_quantize = quantize_ord_dither;
+ cquantize->row_index = 0; /* initialize state for ordered dither */
+ /* If user changed to ordered dither from another mode,
+ * we must recreate the color index table with padding.
+ * This will cost extra space, but probably isn't very likely.
+ */
+ if (! cquantize->is_padded)
+ create_colorindex(cinfo);
+ /* Create ordered-dither tables if we didn't already. */
+ if (cquantize->odither[0] == NULL)
+ create_odither_tables(cinfo);
+ break;
+ case JDITHER_FS:
+ cquantize->pub.color_quantize = quantize_fs_dither;
+ cquantize->on_odd_row = FALSE; /* initialize state for F-S dither */
+ /* Allocate Floyd-Steinberg workspace if didn't already. */
+ if (cquantize->fserrors[0] == NULL)
+ alloc_fs_workspace(cinfo);
+ /* Initialize the propagated errors to zero. */
+ arraysize = (size_t) ((cinfo->output_width + 2) * SIZEOF(FSERROR));
+ for (i = 0; i < cinfo->out_color_components; i++)
+ jzero_far((void FAR *) cquantize->fserrors[i], arraysize);
+ break;
+ default:
+ ERREXIT(cinfo, JERR_NOT_COMPILED);
+ break;
+ }
+}
+
+
+/*
+ * Finish up at the end of the pass.
+ */
+
+METHODDEF(void)
+finish_pass_1_quant (j_decompress_ptr cinfo)
+{
+ GUI_USE_PARA(cinfo);
+ /* no work in 1-pass case */
+}
+
+
+/*
+ * Switch to a new external colormap between output passes.
+ * Shouldn't get to this module!
+ */
+
+METHODDEF(void)
+new_color_map_1_quant (j_decompress_ptr cinfo)
+{
+ ERREXIT(cinfo, JERR_MODE_CHANGE);
+}
+
+
+/*
+ * Module initialization routine for 1-pass color quantization.
+ */
+
+GLOBAL(void)
+jinit_1pass_quantizer (j_decompress_ptr cinfo)
+{
+ my_cquantize_ptr cquantize;
+
+ cquantize = (my_cquantize_ptr)
+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
+ SIZEOF(my_cquantizer));
+ cinfo->cquantize = (struct jpeg_color_quantizer *) cquantize;
+ cquantize->pub.start_pass = start_pass_1_quant;
+ cquantize->pub.finish_pass = finish_pass_1_quant;
+ cquantize->pub.new_color_map = new_color_map_1_quant;
+ cquantize->fserrors[0] = NULL; /* Flag FS workspace not allocated */
+ cquantize->odither[0] = NULL; /* Also flag odither arrays not allocated */
+
+ /* Make sure my internal arrays won't overflow */
+ if (cinfo->out_color_components > MAX_Q_COMPS)
+ ERREXIT1(cinfo, JERR_QUANT_COMPONENTS, MAX_Q_COMPS);
+ /* Make sure colormap indexes can be represented by JSAMPLEs */
+ if (cinfo->desired_number_of_colors > (MAXJSAMPLE+1))
+ ERREXIT1(cinfo, JERR_QUANT_MANY_COLORS, MAXJSAMPLE+1);
+
+ /* Create the colormap and color index table. */
+ create_colormap(cinfo);
+ create_colorindex(cinfo);
+
+ /* Allocate Floyd-Steinberg workspace now if requested.
+ * We do this now since it is FAR storage and may affect the memory
+ * manager's space calculations. If the user changes to FS dither
+ * mode in a later pass, we will allocate the space then, and will
+ * possibly overrun the max_memory_to_use setting.
+ */
+ if (cinfo->dither_mode == JDITHER_FS)
+ alloc_fs_workspace(cinfo);
+}
+
+#endif /* QUANT_1PASS_SUPPORTED */
diff --git a/User/lib/lcd/gui/JPEG/jquant2.c b/User/lib/lcd/gui/JPEG/jquant2.c
new file mode 100644
index 0000000..c4f9a98
--- /dev/null
+++ b/User/lib/lcd/gui/JPEG/jquant2.c
@@ -0,0 +1,1312 @@
+/*
+ * jquant2.c
+ *
+ * Copyright (C) 1991-1996, Thomas G. Lane.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains 2-pass color quantization (color mapping) routines.
+ * These routines provide selection of a custom color map for an image,
+ * followed by mapping of the image to that color map, with optional
+ * Floyd-Steinberg dithering.
+ * It is also possible to use just the second pass to map to an arbitrary
+ * externally-given color map.
+ *
+ * Note: ordered dithering is not supported, since there isn't any fast
+ * way to compute intercolor distances; it's unclear that ordered dither's
+ * fundamental assumptions even hold with an irregularly spaced color map.
+ */
+
+#define JPEG_INTERNALS
+#include "jinclude.h"
+#include "jpeglib.h"
+
+#ifdef QUANT_2PASS_SUPPORTED
+
+
+/*
+ * This module implements the well-known Heckbert paradigm for color
+ * quantization. Most of the ideas used here can be traced back to
+ * Heckbert's seminal paper
+ * Heckbert, Paul. "Color Image Quantization for Frame Buffer Display",
+ * Proc. SIGGRAPH '82, Computer Graphics v.16 #3 (July 1982), pp 297-304.
+ *
+ * In the first pass over the image, we accumulate a histogram showing the
+ * usage count of each possible color. To keep the histogram to a reasonable
+ * size, we reduce the precision of the input; typical practice is to retain
+ * 5 or 6 bits per color, so that 8 or 4 different input values are counted
+ * in the same histogram cell.
+ *
+ * Next, the color-selection step begins with a box representing the whole
+ * color space, and repeatedly splits the "largest" remaining box until we
+ * have as many boxes as desired colors. Then the mean color in each
+ * remaining box becomes one of the possible output colors.
+ *
+ * The second pass over the image maps each input pixel to the closest output
+ * color (optionally after applying a Floyd-Steinberg dithering correction).
+ * This mapping is logically trivial, but making it go fast enough requires
+ * considerable care.
+ *
+ * Heckbert-style quantizers vary a good deal in their policies for choosing
+ * the "largest" box and deciding where to cut it. The particular policies
+ * used here have proved out well in experimental comparisons, but better ones
+ * may yet be found.
+ *
+ * In earlier versions of the IJG code, this module quantized in YCbCr color
+ * space, processing the raw upsampled data without a color conversion step.
+ * This allowed the color conversion math to be done only once per colormap
+ * entry, not once per pixel. However, that optimization precluded other
+ * useful optimizations (such as merging color conversion with upsampling)
+ * and it also interfered with desired capabilities such as quantizing to an
+ * externally-supplied colormap. We have therefore abandoned that approach.
+ * The present code works in the post-conversion color space, typically RGB.
+ *
+ * To improve the visual quality of the results, we actually work in scaled
+ * RGB space, giving G distances more weight than R, and R in turn more than
+ * B. To do everything in integer math, we must use integer scale factors.
+ * The 2/3/1 scale factors used here correspond loosely to the relative
+ * weights of the colors in the NTSC grayscale equation.
+ * If you want to use this code to quantize a non-RGB color space, you'll
+ * probably need to change these scale factors.
+ */
+
+#define R_SCALE 2 /* scale R distances by this much */
+#define G_SCALE 3 /* scale G distances by this much */
+#define B_SCALE 1 /* and B by this much */
+
+/* Relabel R/G/B as components 0/1/2, respecting the RGB ordering defined
+ * in jmorecfg.h. As the code stands, it will do the right thing for R,G,B
+ * and B,G,R orders. If you define some other weird order in jmorecfg.h,
+ * you'll get compile errors until you extend this logic. In that case
+ * you'll probably want to tweak the histogram sizes too.
+ */
+
+#if RGB_RED == 0
+#define C0_SCALE R_SCALE
+#endif
+#if RGB_BLUE == 0
+#define C0_SCALE B_SCALE
+#endif
+#if RGB_GREEN == 1
+#define C1_SCALE G_SCALE
+#endif
+#if RGB_RED == 2
+#define C2_SCALE R_SCALE
+#endif
+#if RGB_BLUE == 2
+#define C2_SCALE B_SCALE
+#endif
+
+
+/*
+ * First we have the histogram data structure and routines for creating it.
+ *
+ * The number of bits of precision can be adjusted by changing these symbols.
+ * We recommend keeping 6 bits for G and 5 each for R and B.
+ * If you have plenty of memory and cycles, 6 bits all around gives marginally
+ * better results; if you are short of memory, 5 bits all around will save
+ * some space but degrade the results.
+ * To maintain a fully accurate histogram, we'd need to allocate a "long"
+ * (preferably unsigned long) for each cell. In practice this is overkill;
+ * we can get by with 16 bits per cell. Few of the cell counts will overflow,
+ * and clamping those that do overflow to the maximum value will give close-
+ * enough results. This reduces the recommended histogram size from 256Kb
+ * to 128Kb, which is a useful savings on PC-class machines.
+ * (In the second pass the histogram space is re-used for pixel mapping data;
+ * in that capacity, each cell must be able to store zero to the number of
+ * desired colors. 16 bits/cell is plenty for that too.)
+ * Since the JPEG code is intended to run in small memory model on 80x86
+ * machines, we can't just allocate the histogram in one chunk. Instead
+ * of a true 3-D array, we use a row of pointers to 2-D arrays. Each
+ * pointer corresponds to a C0 value (typically 2^5 = 32 pointers) and
+ * each 2-D array has 2^6*2^5 = 2048 or 2^6*2^6 = 4096 entries. Note that
+ * on 80x86 machines, the pointer row is in near memory but the actual
+ * arrays are in far memory (same arrangement as we use for image arrays).
+ */
+
+#define MAXNUMCOLORS (MAXJSAMPLE+1) /* maximum size of colormap */
+
+/* These will do the right thing for either R,G,B or B,G,R color order,
+ * but you may not like the results for other color orders.
+ */
+#define HIST_C0_BITS 5 /* bits of precision in R/B histogram */
+#define HIST_C1_BITS 6 /* bits of precision in G histogram */
+#define HIST_C2_BITS 5 /* bits of precision in B/R histogram */
+
+/* Number of elements along histogram axes. */
+#define HIST_C0_ELEMS (1<cquantize;
+ register JSAMPROW ptr;
+ register histptr histp;
+ register hist3d histogram = cquantize->histogram;
+ int row;
+ JDIMENSION col;
+ JDIMENSION width = cinfo->output_width;
+
+ GUI_USE_PARA(output_buf);
+ for (row = 0; row < num_rows; row++) {
+ ptr = input_buf[row];
+ for (col = width; col > 0; col--) {
+ /* get pixel value and index into the histogram */
+ histp = & histogram[GETJSAMPLE(ptr[0]) >> C0_SHIFT]
+ [GETJSAMPLE(ptr[1]) >> C1_SHIFT]
+ [GETJSAMPLE(ptr[2]) >> C2_SHIFT];
+ /* increment, check for overflow and undo increment if so. */
+ if (++(*histp) <= 0)
+ (*histp)--;
+ ptr += 3;
+ }
+ }
+}
+
+
+/*
+ * Next we have the really interesting routines: selection of a colormap
+ * given the completed histogram.
+ * These routines work with a list of "boxes", each representing a rectangular
+ * subset of the input color space (to histogram precision).
+ */
+
+typedef struct {
+ /* The bounds of the box (inclusive); expressed as histogram indexes */
+ int c0min, c0max;
+ int c1min, c1max;
+ int c2min, c2max;
+ /* The volume (actually 2-norm) of the box */
+ INT32 volume;
+ /* The number of nonzero histogram cells within this box */
+ long colorcount;
+} box;
+
+typedef box * boxptr;
+
+
+LOCAL(boxptr)
+find_biggest_color_pop (boxptr boxlist, int numboxes)
+/* Find the splittable box with the largest color population */
+/* Returns NULL if no splittable boxes remain */
+{
+ register boxptr boxp;
+ register int i;
+ register long maxc = 0;
+ boxptr which = NULL;
+
+ for (i = 0, boxp = boxlist; i < numboxes; i++, boxp++) {
+ if (boxp->colorcount > maxc && boxp->volume > 0) {
+ which = boxp;
+ maxc = boxp->colorcount;
+ }
+ }
+ return which;
+}
+
+
+LOCAL(boxptr)
+find_biggest_volume (boxptr boxlist, int numboxes)
+/* Find the splittable box with the largest (scaled) volume */
+/* Returns NULL if no splittable boxes remain */
+{
+ register boxptr boxp;
+ register int i;
+ register INT32 maxv = 0;
+ boxptr which = NULL;
+
+ for (i = 0, boxp = boxlist; i < numboxes; i++, boxp++) {
+ if (boxp->volume > maxv) {
+ which = boxp;
+ maxv = boxp->volume;
+ }
+ }
+ return which;
+}
+
+
+LOCAL(void)
+update_box (j_decompress_ptr cinfo, boxptr boxp)
+/* Shrink the min/max bounds of a box to enclose only nonzero elements, */
+/* and recompute its volume and population */
+{
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ hist3d histogram = cquantize->histogram;
+ histptr histp;
+ int c0,c1,c2;
+ int c0min,c0max,c1min,c1max,c2min,c2max;
+ INT32 dist0,dist1,dist2;
+ long ccount;
+
+ c0min = boxp->c0min; c0max = boxp->c0max;
+ c1min = boxp->c1min; c1max = boxp->c1max;
+ c2min = boxp->c2min; c2max = boxp->c2max;
+
+ if (c0max > c0min)
+ for (c0 = c0min; c0 <= c0max; c0++)
+ for (c1 = c1min; c1 <= c1max; c1++) {
+ histp = & histogram[c0][c1][c2min];
+ for (c2 = c2min; c2 <= c2max; c2++)
+ if (*histp++ != 0) {
+ boxp->c0min = c0min = c0;
+ goto have_c0min;
+ }
+ }
+ have_c0min:
+ if (c0max > c0min)
+ for (c0 = c0max; c0 >= c0min; c0--)
+ for (c1 = c1min; c1 <= c1max; c1++) {
+ histp = & histogram[c0][c1][c2min];
+ for (c2 = c2min; c2 <= c2max; c2++)
+ if (*histp++ != 0) {
+ boxp->c0max = c0max = c0;
+ goto have_c0max;
+ }
+ }
+ have_c0max:
+ if (c1max > c1min)
+ for (c1 = c1min; c1 <= c1max; c1++)
+ for (c0 = c0min; c0 <= c0max; c0++) {
+ histp = & histogram[c0][c1][c2min];
+ for (c2 = c2min; c2 <= c2max; c2++)
+ if (*histp++ != 0) {
+ boxp->c1min = c1min = c1;
+ goto have_c1min;
+ }
+ }
+ have_c1min:
+ if (c1max > c1min)
+ for (c1 = c1max; c1 >= c1min; c1--)
+ for (c0 = c0min; c0 <= c0max; c0++) {
+ histp = & histogram[c0][c1][c2min];
+ for (c2 = c2min; c2 <= c2max; c2++)
+ if (*histp++ != 0) {
+ boxp->c1max = c1max = c1;
+ goto have_c1max;
+ }
+ }
+ have_c1max:
+ if (c2max > c2min)
+ for (c2 = c2min; c2 <= c2max; c2++)
+ for (c0 = c0min; c0 <= c0max; c0++) {
+ histp = & histogram[c0][c1min][c2];
+ for (c1 = c1min; c1 <= c1max; c1++, histp += HIST_C2_ELEMS)
+ if (*histp != 0) {
+ boxp->c2min = c2min = c2;
+ goto have_c2min;
+ }
+ }
+ have_c2min:
+ if (c2max > c2min)
+ for (c2 = c2max; c2 >= c2min; c2--)
+ for (c0 = c0min; c0 <= c0max; c0++) {
+ histp = & histogram[c0][c1min][c2];
+ for (c1 = c1min; c1 <= c1max; c1++, histp += HIST_C2_ELEMS)
+ if (*histp != 0) {
+ boxp->c2max = c2max = c2;
+ goto have_c2max;
+ }
+ }
+ have_c2max:
+
+ /* Update box volume.
+ * We use 2-norm rather than real volume here; this biases the method
+ * against making long narrow boxes, and it has the side benefit that
+ * a box is splittable iff norm > 0.
+ * Since the differences are expressed in histogram-cell units,
+ * we have to shift back to JSAMPLE units to get consistent distances;
+ * after which, we scale according to the selected distance scale factors.
+ */
+ dist0 = ((c0max - c0min) << C0_SHIFT) * C0_SCALE;
+ dist1 = ((c1max - c1min) << C1_SHIFT) * C1_SCALE;
+ dist2 = ((c2max - c2min) << C2_SHIFT) * C2_SCALE;
+ boxp->volume = dist0*dist0 + dist1*dist1 + dist2*dist2;
+
+ /* Now scan remaining volume of box and compute population */
+ ccount = 0;
+ for (c0 = c0min; c0 <= c0max; c0++)
+ for (c1 = c1min; c1 <= c1max; c1++) {
+ histp = & histogram[c0][c1][c2min];
+ for (c2 = c2min; c2 <= c2max; c2++, histp++)
+ if (*histp != 0) {
+ ccount++;
+ }
+ }
+ boxp->colorcount = ccount;
+}
+
+
+LOCAL(int)
+median_cut (j_decompress_ptr cinfo, boxptr boxlist, int numboxes,
+ int desired_colors)
+/* Repeatedly select and split the largest box until we have enough boxes */
+{
+ int n,lb;
+ int c0,c1,c2,cmax;
+ register boxptr b1,b2;
+
+ while (numboxes < desired_colors) {
+ /* Select box to split.
+ * Current algorithm: by population for first half, then by volume.
+ */
+ if (numboxes*2 <= desired_colors) {
+ b1 = find_biggest_color_pop(boxlist, numboxes);
+ } else {
+ b1 = find_biggest_volume(boxlist, numboxes);
+ }
+ if (b1 == NULL) /* no splittable boxes left! */
+ break;
+ b2 = &boxlist[numboxes]; /* where new box will go */
+ /* Copy the color bounds to the new box. */
+ b2->c0max = b1->c0max; b2->c1max = b1->c1max; b2->c2max = b1->c2max;
+ b2->c0min = b1->c0min; b2->c1min = b1->c1min; b2->c2min = b1->c2min;
+ /* Choose which axis to split the box on.
+ * Current algorithm: longest scaled axis.
+ * See notes in update_box about scaling distances.
+ */
+ c0 = ((b1->c0max - b1->c0min) << C0_SHIFT) * C0_SCALE;
+ c1 = ((b1->c1max - b1->c1min) << C1_SHIFT) * C1_SCALE;
+ c2 = ((b1->c2max - b1->c2min) << C2_SHIFT) * C2_SCALE;
+ /* We want to break any ties in favor of green, then red, blue last.
+ * This code does the right thing for R,G,B or B,G,R color orders only.
+ */
+#if RGB_RED == 0
+ cmax = c1; n = 1;
+ if (c0 > cmax) { cmax = c0; n = 0; }
+ if (c2 > cmax) { n = 2; }
+#else
+ cmax = c1; n = 1;
+ if (c2 > cmax) { cmax = c2; n = 2; }
+ if (c0 > cmax) { n = 0; }
+#endif
+ /* Choose split point along selected axis, and update box bounds.
+ * Current algorithm: split at halfway point.
+ * (Since the box has been shrunk to minimum volume,
+ * any split will produce two nonempty subboxes.)
+ * Note that lb value is max for lower box, so must be < old max.
+ */
+ switch (n) {
+ case 0:
+ lb = (b1->c0max + b1->c0min) / 2;
+ b1->c0max = lb;
+ b2->c0min = lb+1;
+ break;
+ case 1:
+ lb = (b1->c1max + b1->c1min) / 2;
+ b1->c1max = lb;
+ b2->c1min = lb+1;
+ break;
+ case 2:
+ lb = (b1->c2max + b1->c2min) / 2;
+ b1->c2max = lb;
+ b2->c2min = lb+1;
+ break;
+ }
+ /* Update stats for boxes */
+ update_box(cinfo, b1);
+ update_box(cinfo, b2);
+ numboxes++;
+ }
+ return numboxes;
+}
+
+
+LOCAL(void)
+compute_color (j_decompress_ptr cinfo, boxptr boxp, int icolor)
+/* Compute representative color for a box, put it in colormap[icolor] */
+{
+ /* Current algorithm: mean weighted by pixels (not colors) */
+ /* Note it is important to get the rounding correct! */
+ my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
+ hist3d histogram = cquantize->histogram;
+ histptr histp;
+ int c0,c1,c2;
+ int c0min,c0max,c1min,c1max,c2min,c2max;
+ long count;
+ long total = 0;
+ long c0total = 0;
+ long c1total = 0;
+ long c2total = 0;
+
+ c0min = boxp->c0min; c0max = boxp->c0max;
+ c1min = boxp->c1min; c1max = boxp->c1max;
+ c2min = boxp->c2min; c2max = boxp->c2max;
+
+ for (c0 = c0min; c0 <= c0max; c0++)
+ for (c1 = c1min; c1 <= c1max; c1++) {
+ histp = & histogram[c0][c1][c2min];
+ for (c2 = c2min; c2 <= c2max; c2++) {
+ if ((count = *histp++) != 0) {
+ total += count;
+ c0total += ((c0 << C0_SHIFT) + ((1<