diff --git a/STM32Make.make b/STM32Make.make
index be9397b..34a24d9 100644
--- a/STM32Make.make
+++ b/STM32Make.make
@@ -369,6 +369,7 @@ TouchGFX/generated/texts/src/Texts.cpp \
TouchGFX/generated/texts/src/TypedTextDatabase.cpp \
TouchGFX/gui/src/ami_screen/AMIPresenter.cpp \
TouchGFX/gui/src/ami_screen/AMIView.cpp \
+TouchGFX/gui/src/common/DataField.cpp \
TouchGFX/gui/src/common/FrontendApplication.cpp \
TouchGFX/gui/src/containers/DriverViewField.cpp \
TouchGFX/gui/src/containers/MissionSelectElement.cpp \
diff --git a/TouchGFX/assets/texts/texts.xml b/TouchGFX/assets/texts/texts.xml
index 0031597..16bb9f9 100644
--- a/TouchGFX/assets/texts/texts.xml
+++ b/TouchGFX/assets/texts/texts.xml
@@ -5,6 +5,72 @@
+
+ BBAL
+
+
+ TSVVEH
+
+
+ TSVBAT
+
+
+ LVSOC
+
+
+ TSSOC
+
+
+ TMAX
+
+
+ TTFL
+
+
+ TTFR
+
+
+ TTRL
+
+
+ TTRR
+
+
+ LAPS
+
+
+ ICSTATE
+
+
+ ERROR
+
+
+ SDC
+
+
+ INVRRDY
+
+
+ INVLRDY
+
+
+ R2DPROG
+
+
+ MISSION
+
+
+ ASSTATE
+
+
+ TSSTATE
+
+
+ <value>
+
+
+ <value>
+
ITS
@@ -62,9 +128,6 @@
-
- <value>
-
FIELD
@@ -92,7 +155,7 @@
-
+
diff --git a/TouchGFX/generated/fonts/UnicodeListCHINN____20_4.txt b/TouchGFX/generated/fonts/UnicodeListCHINN____20_4.txt
index 8f3dbf2..f500b1d 100644
--- a/TouchGFX/generated/fonts/UnicodeListCHINN____20_4.txt
+++ b/TouchGFX/generated/fonts/UnicodeListCHINN____20_4.txt
@@ -1,19 +1,26 @@
32
+50
63
65
66
+67
68
69
70
+71
+72
73
76
77
78
+79
80
82
83
84
86
+88
+89
97
99
100
diff --git a/TouchGFX/generated/fonts/UnicodeListverdana_20_4.txt b/TouchGFX/generated/fonts/UnicodeListverdana_20_4.txt
index 4e9e288..fc45366 100644
--- a/TouchGFX/generated/fonts/UnicodeListverdana_20_4.txt
+++ b/TouchGFX/generated/fonts/UnicodeListverdana_20_4.txt
@@ -1 +1,95 @@
-63
\ No newline at end of file
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
\ No newline at end of file
diff --git a/TouchGFX/generated/fonts/cache/Font_CHINN____20_4bppCpp.cache b/TouchGFX/generated/fonts/cache/Font_CHINN____20_4bppCpp.cache
index 061beb3..f634ef2 100644
--- a/TouchGFX/generated/fonts/cache/Font_CHINN____20_4bppCpp.cache
+++ b/TouchGFX/generated/fonts/cache/Font_CHINN____20_4bppCpp.cache
@@ -1,20 +1,27 @@
AH:0 BA:1 FC:63 EC:0 FF:0 CF:1
32
+50
63
65
66
+67
68
69
70
+71
+72
73
76
77
78
+79
80
82
83
84
86
+88
+89
97
99
100
diff --git a/TouchGFX/generated/fonts/cache/Font_verdana_20_4bppCpp.cache b/TouchGFX/generated/fonts/cache/Font_verdana_20_4bppCpp.cache
index 939eb42..e672411 100644
--- a/TouchGFX/generated/fonts/cache/Font_verdana_20_4bppCpp.cache
+++ b/TouchGFX/generated/fonts/cache/Font_verdana_20_4bppCpp.cache
@@ -1,2 +1,96 @@
AH:0 BA:1 FC:63 EC:0 FF:0 CF:1
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
diff --git a/TouchGFX/generated/fonts/src/Font_CHINN____20_4bpp_0.cpp b/TouchGFX/generated/fonts/src/Font_CHINN____20_4bpp_0.cpp
index 6ab832e..aa39efa 100644
--- a/TouchGFX/generated/fonts/src/Font_CHINN____20_4bpp_0.cpp
+++ b/TouchGFX/generated/fonts/src/Font_CHINN____20_4bpp_0.cpp
@@ -4,6 +4,16 @@ FONT_GLYPH_LOCATION_FLASH_PRAGMA
KEEP extern const uint8_t unicodes_CHINN____20_4bpp_0[] FONT_GLYPH_LOCATION_FLASH_ATTRIBUTE = {
// Unicode: [0x0020, space]
// (Has no glyph data)
+ // Unicode: [0x0032, two]
+ 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xAE, 0x01, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x0B, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x32, 0x33,
+ 0x33, 0x33, 0x33, 0x33, 0x33, 0x53, 0xFF, 0x4F, 0x00, 0x20, 0x33, 0x33, 0x33, 0x33, 0x33, 0x53,
+ 0xFF, 0x4F, 0x20, 0xFD, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2F, 0xC0, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0A, 0xF4, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xAF, 0x01,
+ 0xF6, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF6, 0xFF, 0x34, 0x33, 0x33, 0x33,
+ 0x33, 0x33, 0x33, 0x03, 0xF6, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF6, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF6, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0x0F,
// Unicode: [0x003F, question]
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7D, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0x1C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x8F, 0x44, 0x44,
@@ -34,6 +44,16 @@ KEEP extern const uint8_t unicodes_CHINN____20_4bpp_0[] FONT_GLYPH_LOCATION_FLAS
0x44, 0x44, 0xFB, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xF7, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2E, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0x9E, 0x02,
+ // Unicode: [0x0043, C]
+ 0x00, 0xB5, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0x70, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xCF, 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0xF5, 0xFF,
+ 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x34, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF7, 0xFF, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF6, 0xFF, 0x44, 0x44, 0x44, 0x44,
+ 0x44, 0x44, 0x44, 0x34, 0xF2, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0x70, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0x00, 0xC5, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xCF,
// Unicode: [0x0044, D]
0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xEF, 0x5C, 0x00, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0x08, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x4F, 0xF7, 0xFF,
@@ -64,6 +84,26 @@ KEEP extern const uint8_t unicodes_CHINN____20_4bpp_0[] FONT_GLYPH_LOCATION_FLAS
0x00, 0x00, 0x00, 0x00, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF7, 0xFF,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00,
+ // Unicode: [0x0047, G]
+ 0x00, 0x93, 0xFD, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0x70, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xCF, 0xF3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0xF6, 0xFF,
+ 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x34, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x43, 0x44, 0x44,
+ 0x44, 0x34, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0xFF, 0xCF, 0xF7, 0xFF, 0x00, 0x00,
+ 0x00, 0xFC, 0xFF, 0xFF, 0xFF, 0xCF, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0xFF, 0xCF,
+ 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFB, 0xBF, 0xF6, 0xFF, 0x44, 0x44, 0x44, 0x44,
+ 0x44, 0x44, 0xFC, 0xAF, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x6F, 0x50, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0A, 0x00, 0xA3, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xEF,
+ 0x6C, 0x00,
+ // Unicode: [0x0048, H]
+ 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xDF, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xF9, 0xDF, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xDF, 0xF7, 0xFF,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xDF, 0xF7, 0xFF, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
+ 0xFB, 0xDF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xF7, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF,
+ 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xDF, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xF9, 0xDF, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xDF, 0xF7, 0xFF,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF9, 0xDF, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xF9, 0xDF,
// Unicode: [0x0049, I]
0xF7, 0xFF, 0xF7, 0xFF, 0xF7, 0xFF, 0xF7, 0xFF, 0xF7, 0xFF, 0xF7, 0xFF, 0xF7, 0xFF, 0xF7, 0xFF,
0xF7, 0xFF, 0xF7, 0xFF, 0xF7, 0xFF, 0xF7, 0xFF, 0xF7, 0xFF,
@@ -97,6 +137,16 @@ KEEP extern const uint8_t unicodes_CHINN____20_4bpp_0[] FONT_GLYPH_LOCATION_FLAS
0xFF, 0x9F, 0xFF, 0x6F, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x40, 0xFE, 0xFF, 0xFF, 0x4F, 0xF7, 0xFF,
0x00, 0x00, 0x00, 0x00, 0xE3, 0xFF, 0xFF, 0x0C, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x20, 0xEA,
0xAE, 0x02,
+ // Unicode: [0x004F, O]
+ 0x00, 0xB3, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x5C, 0x00, 0x60, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x07, 0xF2, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2F, 0xF6, 0xFF,
+ 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0xFE, 0x7F, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xFE, 0x8F, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x8F, 0xF7, 0xFF, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFE, 0x8F, 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x8F,
+ 0xF7, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x8F, 0xF6, 0xFF, 0x44, 0x44, 0x44, 0x44,
+ 0x44, 0x44, 0xFE, 0x7F, 0xF2, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x70, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x08, 0x00, 0xC5, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x5C, 0x00,
// Unicode: [0x0050, P]
0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x9D, 0x02, 0x00, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0x3E, 0x00, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF,
@@ -147,6 +197,26 @@ KEEP extern const uint8_t unicodes_CHINN____20_4bpp_0[] FONT_GLYPH_LOCATION_FLAS
0xDF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC1, 0xFF, 0xFF, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xE9, 0x7D, 0x00, 0x00,
0x00, 0x00,
+ // Unicode: [0x0058, X]
+ 0xFA, 0xFF, 0x1C, 0x00, 0x00, 0x00, 0x30, 0xFE, 0xFF, 0x06, 0xB0, 0xFF, 0xBF, 0x00, 0x00, 0x00,
+ 0xE2, 0xFF, 0x6F, 0x00, 0x00, 0xFB, 0xFF, 0x09, 0x00, 0x10, 0xFD, 0xFF, 0x07, 0x00, 0x00, 0xC1,
+ 0xFF, 0x8F, 0x00, 0xC1, 0xFF, 0x8F, 0x00, 0x00, 0x00, 0x10, 0xFD, 0xFF, 0x06, 0xFA, 0xFF, 0x09,
+ 0x00, 0x00, 0x00, 0x00, 0xD2, 0xFF, 0x9F, 0xFF, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0xFF,
+ 0xFF, 0xFF, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD2, 0xFF, 0x9F, 0xFF, 0xAF, 0x00, 0x00, 0x00,
+ 0x00, 0x10, 0xFC, 0xFF, 0x07, 0xFB, 0xFF, 0x09, 0x00, 0x00, 0x00, 0xB0, 0xFF, 0x9F, 0x00, 0xD1,
+ 0xFF, 0x7F, 0x00, 0x00, 0x00, 0xFA, 0xFF, 0x0B, 0x00, 0x20, 0xFE, 0xFF, 0x05, 0x00, 0x80, 0xFF,
+ 0xDF, 0x01, 0x00, 0x00, 0xF4, 0xFF, 0x4F, 0x00, 0xF6, 0xFF, 0x2E, 0x00, 0x00, 0x00, 0x50, 0xFF,
+ 0xEF, 0x03,
+ // Unicode: [0x0059, Y]
+ 0xD1, 0xFF, 0x5F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0x0B, 0x30, 0xFE, 0xFF, 0x03, 0x00, 0x00,
+ 0x60, 0xFF, 0xDF, 0x01, 0x00, 0xF5, 0xFF, 0x2E, 0x00, 0x00, 0xF4, 0xFF, 0x2E, 0x00, 0x00, 0x70,
+ 0xFF, 0xCF, 0x01, 0x20, 0xFE, 0xFF, 0x05, 0x00, 0x00, 0x00, 0xF9, 0xFF, 0x0A, 0xD1, 0xFF, 0x7F,
+ 0x00, 0x00, 0x00, 0x00, 0xB0, 0xFF, 0x8F, 0xFB, 0xFF, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x10, 0xFD,
+ 0xFF, 0xFF, 0xCF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE2, 0xFF, 0xFF, 0x2E, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x40, 0xFF, 0xFF, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFB, 0xBF,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFB, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xFB, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFB, 0xBF, 0x00, 0x00,
+ 0x00, 0x00,
// Unicode: [0x0061, a]
0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x9E, 0x01, 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0x0B, 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x6F, 0x40, 0x44,
diff --git a/TouchGFX/generated/fonts/src/Font_verdana_20_4bpp_0.cpp b/TouchGFX/generated/fonts/src/Font_verdana_20_4bpp_0.cpp
index f5b46f0..b94fd0c 100644
--- a/TouchGFX/generated/fonts/src/Font_verdana_20_4bpp_0.cpp
+++ b/TouchGFX/generated/fonts/src/Font_verdana_20_4bpp_0.cpp
@@ -2,10 +2,584 @@
FONT_GLYPH_LOCATION_FLASH_PRAGMA
KEEP extern const uint8_t unicodes_verdana_20_4bpp_0[] FONT_GLYPH_LOCATION_FLASH_ATTRIBUTE = {
+ // Unicode: [0x0020]
+ // (Has no glyph data)
+ // Unicode: [0x0021]
+ 0xF2, 0x0F, 0xF2, 0x0F, 0xF1, 0x0F, 0xF1, 0x0E, 0xF1, 0x0E, 0xF0, 0x0D, 0xF0, 0x0D, 0xF0, 0x0D,
+ 0xE0, 0x0C, 0xE0, 0x0C, 0x40, 0x04, 0x00, 0x00, 0xF1, 0x0E, 0xF1, 0x0E,
+ // Unicode: [0x0022]
+ 0xF5, 0x0B, 0xF8, 0x08, 0xF4, 0x0A, 0xF7, 0x06, 0xF3, 0x09, 0xF6, 0x05, 0xF1, 0x07, 0xF5, 0x04,
+ 0xF0, 0x06, 0xF4, 0x03, 0x80, 0x03, 0x82, 0x01,
+ // Unicode: [0x0023]
+ 0x00, 0x00, 0x00, 0x8B, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x4E, 0x10, 0x3F, 0x00, 0x00, 0x00,
+ 0x30, 0x1F, 0x50, 0x0E, 0x00, 0x00, 0x11, 0x81, 0x1C, 0x91, 0x1A, 0x01, 0x00, 0xFE, 0xFF, 0xFF,
+ 0xFF, 0xFF, 0x7F, 0x00, 0x43, 0xF4, 0x46, 0xF5, 0x45, 0x24, 0x00, 0x00, 0xF4, 0x00, 0xE5, 0x00,
+ 0x00, 0x00, 0x00, 0xB7, 0x00, 0xA9, 0x00, 0x00, 0x10, 0x11, 0x8B, 0x11, 0x7C, 0x11, 0x00, 0xF1,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0x40, 0x74, 0x4F, 0x84, 0x4D, 0x44, 0x01, 0x00, 0x80, 0x0B,
+ 0x90, 0x09, 0x00, 0x00, 0x00, 0xC0, 0x07, 0xD0, 0x05, 0x00, 0x00, 0x00, 0xF1, 0x03, 0xF2, 0x01,
+ 0x00, 0x00,
+ // Unicode: [0x0024]
+ 0x00, 0x00, 0xF1, 0x01, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x01, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x02,
+ 0x00, 0x00, 0x00, 0xD6, 0xFF, 0xEF, 0x7C, 0x00, 0xB0, 0xAF, 0xF6, 0x76, 0xCC, 0x00, 0xF4, 0x09,
+ 0xF1, 0x01, 0x30, 0x00, 0xF6, 0x08, 0xF1, 0x01, 0x00, 0x00, 0xF2, 0x6E, 0xF2, 0x01, 0x00, 0x00,
+ 0x50, 0xFE, 0xFF, 0x7B, 0x02, 0x00, 0x00, 0x50, 0xF9, 0xFE, 0x7F, 0x00, 0x00, 0x00, 0xF1, 0x31,
+ 0xFE, 0x02, 0x00, 0x00, 0xF1, 0x01, 0xF9, 0x04, 0x44, 0x00, 0xF1, 0x01, 0xFC, 0x02, 0xF7, 0x9D,
+ 0xF8, 0xD8, 0x7F, 0x00, 0x82, 0xDB, 0xFE, 0xAD, 0x03, 0x00, 0x00, 0x00, 0xF1, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0xF1, 0x01, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x81, 0x00,
+ 0x00, 0x00,
+ // Unicode: [0x0025]
+ 0x30, 0xEB, 0xBE, 0x03, 0x00, 0x00, 0xF8, 0x02, 0x00, 0x00, 0xE1, 0x6D, 0xC5, 0x2E, 0x00, 0x10,
+ 0x8E, 0x00, 0x00, 0x00, 0xF6, 0x05, 0x40, 0x7F, 0x00, 0x90, 0x1E, 0x00, 0x00, 0x00, 0xF8, 0x03,
+ 0x20, 0x9F, 0x00, 0xF2, 0x07, 0x00, 0x00, 0x00, 0xF6, 0x04, 0x30, 0x8F, 0x00, 0xDA, 0x01, 0x00,
+ 0x00, 0x00, 0xF2, 0x2B, 0xA2, 0x3F, 0x30, 0x6F, 0x00, 0x00, 0x00, 0x00, 0x50, 0xFE, 0xEF, 0x06,
+ 0xC0, 0x0C, 0x70, 0xFD, 0x7D, 0x00, 0x00, 0x20, 0x02, 0x00, 0xF5, 0x04, 0xF8, 0x48, 0xF8, 0x08,
+ 0x00, 0x00, 0x00, 0x00, 0xBD, 0x00, 0xCE, 0x00, 0xD0, 0x0D, 0x00, 0x00, 0x00, 0x60, 0x3F, 0x10,
+ 0xAF, 0x00, 0xB0, 0x0F, 0x00, 0x00, 0x00, 0xE1, 0x0A, 0x10, 0xAF, 0x00, 0xB0, 0x0F, 0x00, 0x00,
+ 0x00, 0xF7, 0x02, 0x00, 0xCE, 0x00, 0xD0, 0x0D, 0x00, 0x00, 0x10, 0x9E, 0x00, 0x00, 0xF8, 0x59,
+ 0xF9, 0x07, 0x00, 0x00, 0x90, 0x1E, 0x00, 0x00, 0x70, 0xED, 0x7D, 0x00,
+ // Unicode: [0x0026]
+ 0x00, 0xC7, 0xEF, 0x4B, 0x00, 0x00, 0x00, 0x80, 0xAF, 0x54, 0xFD, 0x04, 0x00, 0x00, 0xF1, 0x0D,
+ 0x00, 0xF6, 0x09, 0x00, 0x00, 0xF2, 0x0C, 0x00, 0xF5, 0x08, 0x00, 0x00, 0xC0, 0x6F, 0x00, 0xFB,
+ 0x02, 0x00, 0x00, 0x20, 0xFC, 0xDB, 0x3C, 0x20, 0x47, 0x00, 0x10, 0xDB, 0xEE, 0x04, 0x50, 0x8F,
+ 0x00, 0xD1, 0x1C, 0xE3, 0x5F, 0x50, 0x6F, 0x00, 0xF8, 0x05, 0x20, 0xFD, 0x66, 0x4F, 0x00, 0xFC,
+ 0x02, 0x00, 0xC1, 0xEF, 0x0D, 0x00, 0xFC, 0x05, 0x00, 0x10, 0xFB, 0x0B, 0x00, 0xF8, 0x1C, 0x00,
+ 0x30, 0xDD, 0xAF, 0x00, 0xD1, 0xEF, 0x9A, 0xFB, 0x0A, 0xF9, 0x0A, 0x10, 0xD8, 0xEF, 0x5B, 0x00,
+ 0xA0, 0xAF,
+ // Unicode: [0x0027]
+ 0xF5, 0x0B, 0xF4, 0x0A, 0xF3, 0x09, 0xF2, 0x07, 0xF1, 0x06, 0x80, 0x03,
+ // Unicode: [0x0028]
+ 0x00, 0x10, 0xFD, 0x04, 0x00, 0xB0, 0x5F, 0x00, 0x00, 0xF5, 0x09, 0x00, 0x00, 0xED, 0x01, 0x00,
+ 0x50, 0x9F, 0x00, 0x00, 0xA0, 0x3F, 0x00, 0x00, 0xE0, 0x0D, 0x00, 0x00, 0xF1, 0x0A, 0x00, 0x00,
+ 0xF2, 0x08, 0x00, 0x00, 0xF3, 0x07, 0x00, 0x00, 0xF2, 0x08, 0x00, 0x00, 0xF1, 0x0A, 0x00, 0x00,
+ 0xE0, 0x0D, 0x00, 0x00, 0xA0, 0x3F, 0x00, 0x00, 0x50, 0x8F, 0x00, 0x00, 0x00, 0xED, 0x01, 0x00,
+ 0x00, 0xF5, 0x09, 0x00, 0x00, 0xB0, 0x4F, 0x00, 0x00, 0x10, 0xED, 0x03,
+ // Unicode: [0x0029]
+ 0xE3, 0x2E, 0x00, 0x00, 0x30, 0xCF, 0x00, 0x00, 0x00, 0xF7, 0x07, 0x00, 0x00, 0xD0, 0x1E, 0x00,
+ 0x00, 0x70, 0x6F, 0x00, 0x00, 0x20, 0xBF, 0x00, 0x00, 0x00, 0xEC, 0x00, 0x00, 0x00, 0xF9, 0x02,
+ 0x00, 0x00, 0xF7, 0x03, 0x00, 0x00, 0xF6, 0x04, 0x00, 0x00, 0xF7, 0x03, 0x00, 0x00, 0xF9, 0x02,
+ 0x00, 0x00, 0xFC, 0x00, 0x00, 0x10, 0xBF, 0x00, 0x00, 0x70, 0x6F, 0x00, 0x00, 0xD1, 0x1E, 0x00,
+ 0x00, 0xF9, 0x07, 0x00, 0x40, 0xCF, 0x00, 0x00, 0xE3, 0x2E, 0x00, 0x00,
+ // Unicode: [0x002A]
+ 0x00, 0x00, 0xF4, 0x00, 0x00, 0x60, 0x00, 0xF3, 0x00, 0x51, 0xD2, 0x5D, 0xE3, 0x70, 0xBE, 0x00,
+ 0xE7, 0xFD, 0xCD, 0x05, 0x00, 0x30, 0xFE, 0x1C, 0x00, 0x10, 0xE9, 0xFB, 0xEB, 0x07, 0xE2, 0x3B,
+ 0xE3, 0x50, 0xDD, 0x40, 0x00, 0xF3, 0x00, 0x30, 0x00, 0x00, 0xD3, 0x00, 0x00,
+ // Unicode: [0x002B]
+ 0x00, 0x00, 0x90, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x90, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0F,
+ 0x00, 0x00, 0x00, 0x88, 0x88, 0xC8, 0x8F, 0x88, 0x88, 0x02, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x05, 0x00, 0x00, 0x90, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0F, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x90, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90,
+ 0x0F, 0x00, 0x00, 0x00,
+ // Unicode: [0x002C]
+ 0x00, 0x87, 0x04, 0x20, 0xFF, 0x03, 0x60, 0xBF, 0x00, 0xA0, 0x5F, 0x00, 0xE0, 0x0D, 0x00, 0xF3,
+ 0x07, 0x00, 0xF6, 0x01, 0x00,
+ // Unicode: [0x002D]
+ 0xB6, 0xBB, 0xBB, 0x07, 0xF8, 0xFF, 0xFF, 0x09,
+ // Unicode: [0x002E]
+ 0xB6, 0x09, 0xF8, 0x0C, 0xF8, 0x0C,
+ // Unicode: [0x002F]
+ 0x00, 0x00, 0x00, 0x80, 0x3F, 0x00, 0x00, 0x00, 0xD0, 0x0C, 0x00, 0x00, 0x00, 0xF4, 0x06, 0x00,
+ 0x00, 0x00, 0xFA, 0x01, 0x00, 0x00, 0x10, 0xAF, 0x00, 0x00, 0x00, 0x70, 0x4F, 0x00, 0x00, 0x00,
+ 0xD0, 0x0D, 0x00, 0x00, 0x00, 0xF3, 0x07, 0x00, 0x00, 0x00, 0xF9, 0x02, 0x00, 0x00, 0x10, 0xBE,
+ 0x00, 0x00, 0x00, 0x60, 0x5F, 0x00, 0x00, 0x00, 0xC0, 0x0E, 0x00, 0x00, 0x00, 0xF2, 0x08, 0x00,
+ 0x00, 0x00, 0xF8, 0x02, 0x00, 0x00, 0x00, 0xBE, 0x00, 0x00, 0x00, 0x50, 0x5F, 0x00, 0x00, 0x00,
+ 0xB0, 0x1E, 0x00, 0x00, 0x00, 0xF2, 0x09, 0x00, 0x00, 0x00,
+ // Unicode: [0x0030]
+ 0x00, 0xA3, 0xFE, 0x9D, 0x01, 0x00, 0x40, 0xFF, 0x9B, 0xFC, 0x1D, 0x00, 0xD0, 0x4F, 0x00, 0x80,
+ 0x9F, 0x00, 0xF3, 0x0B, 0x00, 0x10, 0xEE, 0x00, 0xF7, 0x07, 0x00, 0x00, 0xFB, 0x03, 0xF9, 0x06,
+ 0x00, 0x00, 0xFA, 0x05, 0xFA, 0x05, 0x00, 0x00, 0xF9, 0x05, 0xFA, 0x05, 0x00, 0x00, 0xF9, 0x05,
+ 0xF9, 0x06, 0x00, 0x00, 0xFA, 0x05, 0xF7, 0x07, 0x00, 0x00, 0xFB, 0x03, 0xF3, 0x0B, 0x00, 0x10,
+ 0xEF, 0x00, 0xD0, 0x4F, 0x00, 0x80, 0x9F, 0x00, 0x40, 0xFF, 0x9B, 0xFC, 0x1D, 0x00, 0x00, 0xA3,
+ 0xFE, 0x9D, 0x01, 0x00,
+ // Unicode: [0x0031]
+ 0x00, 0x10, 0x9F, 0x00, 0x00, 0x20, 0xB4, 0x9F, 0x00, 0x00, 0xF4, 0xFF, 0x9F, 0x00, 0x00, 0x41,
+ 0x64, 0x9F, 0x00, 0x00, 0x00, 0x40, 0x9F, 0x00, 0x00, 0x00, 0x40, 0x9F, 0x00, 0x00, 0x00, 0x40,
+ 0x9F, 0x00, 0x00, 0x00, 0x40, 0x9F, 0x00, 0x00, 0x00, 0x40, 0x9F, 0x00, 0x00, 0x00, 0x40, 0x9F,
+ 0x00, 0x00, 0x00, 0x40, 0x9F, 0x00, 0x00, 0x00, 0x40, 0x9F, 0x00, 0x00, 0x72, 0x97, 0xCF, 0x77,
+ 0x04, 0xF4, 0xFF, 0xFF, 0xFF, 0x09,
+ // Unicode: [0x0032]
+ 0x50, 0xDA, 0xFF, 0x8D, 0x01, 0x00, 0xF1, 0xDF, 0xBA, 0xFE, 0x1D, 0x00, 0x91, 0x02, 0x00, 0xB1,
+ 0x9F, 0x00, 0x00, 0x00, 0x00, 0x40, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x40, 0xAF, 0x00, 0x00, 0x00,
+ 0x00, 0x90, 0x6F, 0x00, 0x00, 0x00, 0x00, 0xF4, 0x1D, 0x00, 0x00, 0x00, 0x30, 0xEE, 0x03, 0x00,
+ 0x00, 0x00, 0xE4, 0x3E, 0x00, 0x00, 0x00, 0x50, 0xDF, 0x03, 0x00, 0x00, 0x00, 0xF8, 0x1C, 0x00,
+ 0x00, 0x00, 0xB1, 0x9F, 0x00, 0x00, 0x00, 0x00, 0xF6, 0xAE, 0xAA, 0xAA, 0xAA, 0x04, 0xF6, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x06,
+ // Unicode: [0x0033]
+ 0x40, 0xC9, 0xFE, 0xAD, 0x04, 0x00, 0xE0, 0xDF, 0xAB, 0xFC, 0x6F, 0x00, 0x70, 0x02, 0x00, 0x60,
+ 0xDF, 0x00, 0x00, 0x00, 0x00, 0x30, 0xBF, 0x00, 0x00, 0x00, 0x10, 0xC4, 0x3E, 0x00, 0x00, 0x00,
+ 0xFF, 0x9F, 0x01, 0x00, 0x00, 0x00, 0xA9, 0xFC, 0x1A, 0x00, 0x00, 0x00, 0x00, 0x60, 0xBF, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFD, 0x02, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x10,
+ 0xFE, 0x01, 0x85, 0x02, 0x00, 0xA1, 0xAF, 0x00, 0xF6, 0xCF, 0xBA, 0xFE, 0x1D, 0x00, 0x61, 0xDA,
+ 0xEF, 0x7C, 0x01, 0x00,
+ // Unicode: [0x0034]
+ 0x00, 0x00, 0x00, 0xA0, 0x9F, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x9F, 0x00, 0x00, 0x00, 0x70, 0xBF,
+ 0x9F, 0x00, 0x00, 0x00, 0xF5, 0x48, 0x9F, 0x00, 0x00, 0x40, 0xAF, 0x40, 0x9F, 0x00, 0x00, 0xE3,
+ 0x0B, 0x40, 0x9F, 0x00, 0x20, 0xCE, 0x01, 0x40, 0x9F, 0x00, 0xD1, 0x1D, 0x00, 0x40, 0x9F, 0x00,
+ 0xF4, 0x8A, 0x88, 0xA8, 0xCF, 0x68, 0xF4, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x00, 0x00, 0x00, 0x40,
+ 0x9F, 0x00, 0x00, 0x00, 0x00, 0x40, 0x9F, 0x00, 0x00, 0x00, 0x00, 0x40, 0x9F, 0x00, 0x00, 0x00,
+ 0x00, 0x40, 0x9F, 0x00,
+ // Unicode: [0x0035]
+ 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x80, 0xCF, 0xAA, 0xAA, 0xAA, 0x02, 0x80, 0x5F, 0x00, 0x00,
+ 0x00, 0x00, 0x80, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x80, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF,
+ 0xFF, 0xAD, 0x03, 0x00, 0x70, 0xAB, 0xA9, 0xFD, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x70, 0xEF, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x00, 0x00, 0x00, 0x00, 0xFB, 0x04, 0x00, 0x00, 0x00, 0x00,
+ 0xFE, 0x02, 0x82, 0x02, 0x00, 0x90, 0xBF, 0x00, 0xF3, 0xDF, 0xBA, 0xFE, 0x2D, 0x00, 0x61, 0xDB,
+ 0xFE, 0x8D, 0x01, 0x00,
+ // Unicode: [0x0036]
+ 0x00, 0x10, 0xC7, 0xFE, 0x3E, 0x00, 0x00, 0xE4, 0xDF, 0xAB, 0x3C, 0x00, 0x30, 0xDF, 0x04, 0x00,
+ 0x00, 0x00, 0xB0, 0x2E, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x29, 0x86, 0x58, 0x01, 0x00, 0xF6, 0xFD,
+ 0xFF, 0xFF, 0x3E, 0x00, 0xF9, 0x5C, 0x02, 0x92, 0xEF, 0x01, 0xFA, 0x05, 0x00, 0x00, 0xFA, 0x06,
+ 0xF9, 0x05, 0x00, 0x00, 0xF6, 0x09, 0xF8, 0x07, 0x00, 0x00, 0xF6, 0x09, 0xF4, 0x0C, 0x00, 0x00,
+ 0xF9, 0x06, 0xD0, 0x7F, 0x00, 0x30, 0xEF, 0x01, 0x30, 0xFE, 0x9C, 0xFB, 0x4E, 0x00, 0x00, 0x92,
+ 0xFD, 0xAE, 0x02, 0x00,
+ // Unicode: [0x0037]
+ 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xA5, 0xAA, 0xAA, 0xAA, 0xFC, 0x07, 0x00, 0x00, 0x00, 0x00,
+ 0xFA, 0x04, 0x00, 0x00, 0x00, 0x40, 0xAF, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00,
+ 0x00, 0xF6, 0x09, 0x00, 0x00, 0x00, 0x10, 0xEE, 0x01, 0x00, 0x00, 0x00, 0x80, 0x7F, 0x00, 0x00,
+ 0x00, 0x00, 0xF2, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xFA, 0x06, 0x00, 0x00, 0x00, 0x30, 0xCF, 0x00,
+ 0x00, 0x00, 0x00, 0xC0, 0x4F, 0x00, 0x00, 0x00, 0x00, 0xF6, 0x0B, 0x00, 0x00, 0x00, 0x10, 0xFD,
+ 0x02, 0x00, 0x00, 0x00,
+ // Unicode: [0x0038]
+ 0x00, 0xB5, 0xFE, 0xAD, 0x03, 0x00, 0x90, 0xDF, 0x78, 0xE9, 0x6F, 0x00, 0xF3, 0x1C, 0x00, 0x30,
+ 0xEF, 0x00, 0xF6, 0x09, 0x00, 0x00, 0xFD, 0x01, 0xF3, 0x2E, 0x00, 0x10, 0xDE, 0x00, 0x80, 0xEF,
+ 0x38, 0xA1, 0x4F, 0x00, 0x00, 0xF8, 0xFF, 0xEE, 0x03, 0x00, 0x90, 0x6F, 0x62, 0xFC, 0x4E, 0x00,
+ 0xF6, 0x08, 0x00, 0x50, 0xFE, 0x02, 0xFB, 0x03, 0x00, 0x00, 0xF9, 0x07, 0xFB, 0x05, 0x00, 0x00,
+ 0xF9, 0x07, 0xF7, 0x1C, 0x00, 0x20, 0xFE, 0x02, 0xB0, 0xEF, 0x78, 0xE9, 0x6F, 0x00, 0x00, 0xC6,
+ 0xFE, 0xAE, 0x03, 0x00,
+ // Unicode: [0x0039]
+ 0x00, 0xB5, 0xFE, 0x8D, 0x01, 0x00, 0xA0, 0xEF, 0x9A, 0xFD, 0x1D, 0x00, 0xF6, 0x1C, 0x00, 0x80,
+ 0x9F, 0x00, 0xFB, 0x04, 0x00, 0x00, 0xFD, 0x01, 0xFD, 0x02, 0x00, 0x00, 0xFA, 0x04, 0xFB, 0x04,
+ 0x00, 0x00, 0xF9, 0x05, 0xF6, 0x5E, 0x01, 0x62, 0xFD, 0x06, 0x80, 0xFF, 0xFF, 0xEF, 0xFD, 0x05,
+ 0x00, 0x72, 0x88, 0x15, 0xFC, 0x02, 0x00, 0x00, 0x00, 0x10, 0xDF, 0x00, 0x00, 0x00, 0x00, 0x90,
+ 0x7F, 0x00, 0x00, 0x00, 0x10, 0xF8, 0x1D, 0x00, 0x70, 0xAC, 0xEB, 0xCF, 0x02, 0x00, 0x60, 0xFE,
+ 0xBE, 0x06, 0x00, 0x00,
+ // Unicode: [0x003A]
+ 0xF9, 0x0B, 0xF9, 0x0B, 0xB7, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xB7, 0x08, 0xF9, 0x0B, 0xF9, 0x0B,
+ // Unicode: [0x003B]
+ 0x90, 0xBF, 0x00, 0x90, 0xBF, 0x00, 0x70, 0x8B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xAA, 0x03, 0x50, 0xEF, 0x00, 0x90, 0x8F,
+ 0x00, 0xD0, 0x2F, 0x00, 0xF2, 0x0A, 0x00, 0xF6, 0x04, 0x00, 0xD9, 0x00, 0x00,
+ // Unicode: [0x003C]
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x73, 0x00, 0x00, 0x00, 0x00, 0xC5, 0xBF, 0x00, 0x00, 0x10, 0xD7,
+ 0xEF, 0x18, 0x00, 0x20, 0xE9, 0xCF, 0x05, 0x00, 0x40, 0xFB, 0x9F, 0x03, 0x00, 0x00, 0xF7, 0x8F,
+ 0x01, 0x00, 0x00, 0x00, 0xC4, 0xEF, 0x28, 0x00, 0x00, 0x00, 0x00, 0xA3, 0xFF, 0x4A, 0x00, 0x00,
+ 0x00, 0x00, 0x82, 0xFE, 0x6D, 0x01, 0x00, 0x00, 0x00, 0x61, 0xFD, 0x7E, 0x00, 0x00, 0x00, 0x00,
+ 0x40, 0xBB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
+ // Unicode: [0x003D]
+ 0x85, 0x88, 0x88, 0x88, 0x88, 0x88, 0xF9, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x85, 0x88, 0x88, 0x88, 0x88, 0x88, 0xF9, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0xFF,
+ // Unicode: [0x003E]
+ 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF6, 0x7E, 0x01, 0x00, 0x00, 0x00, 0x50, 0xFC, 0x9F, 0x03,
+ 0x00, 0x00, 0x00, 0x30, 0xF9, 0xBF, 0x05, 0x00, 0x00, 0x00, 0x10, 0xD7, 0xDF, 0x17, 0x00, 0x00,
+ 0x00, 0x00, 0xD5, 0xDF, 0x00, 0x00, 0x00, 0x61, 0xFC, 0x7E, 0x00, 0x00, 0x82, 0xFE, 0x6C, 0x00,
+ 0x00, 0xA4, 0xFF, 0x4B, 0x00, 0x00, 0xC3, 0xEF, 0x29, 0x00, 0x00, 0x00, 0xD6, 0x17, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
// Unicode: [0x003F]
0x93, 0xEC, 0xDE, 0x29, 0x00, 0xF7, 0xAD, 0xDA, 0xEF, 0x02, 0x33, 0x00, 0x00, 0xF9, 0x0A, 0x00,
0x00, 0x00, 0xF3, 0x0C, 0x00, 0x00, 0x00, 0xF5, 0x0A, 0x00, 0x00, 0x10, 0xFD, 0x03, 0x00, 0x00,
0xD5, 0x6F, 0x00, 0x00, 0xB0, 0xCF, 0x03, 0x00, 0x00, 0xE0, 0x0C, 0x00, 0x00, 0x00, 0xE0, 0x0C,
0x00, 0x00, 0x00, 0x40, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x0E, 0x00,
- 0x00, 0x00, 0xF0, 0x0E, 0x00, 0x00
+ 0x00, 0x00, 0xF0, 0x0E, 0x00, 0x00,
+ // Unicode: [0x0040]
+ 0x00, 0x00, 0x30, 0xC8, 0xFE, 0xBD, 0x17, 0x00, 0x00, 0x00, 0x10, 0xFA, 0x7C, 0x55, 0x96, 0xEE,
+ 0x06, 0x00, 0x00, 0xD1, 0x4D, 0x00, 0x00, 0x00, 0x81, 0x7F, 0x00, 0x00, 0xDC, 0x01, 0xC4, 0xEF,
+ 0xDA, 0x0B, 0xF6, 0x03, 0x60, 0x2F, 0x50, 0xDF, 0x78, 0xFA, 0x0B, 0xC0, 0x0A, 0xC0, 0x09, 0xD0,
+ 0x1D, 0x00, 0xD0, 0x0B, 0x60, 0x0E, 0xF1, 0x05, 0xF3, 0x07, 0x00, 0xD0, 0x0B, 0x20, 0x3F, 0xF3,
+ 0x02, 0xF5, 0x05, 0x00, 0xD0, 0x0B, 0x10, 0x4F, 0xF4, 0x02, 0xF3, 0x06, 0x00, 0xD0, 0x0B, 0x30,
+ 0x3F, 0xF2, 0x03, 0xF1, 0x0B, 0x00, 0xD0, 0x0B, 0x50, 0x0E, 0xE0, 0x07, 0x90, 0x9F, 0x65, 0xFD,
+ 0x0B, 0x90, 0x0A, 0x90, 0x0D, 0x10, 0xFA, 0xEF, 0xB6, 0xEF, 0xFE, 0x02, 0x20, 0x8E, 0x00, 0x10,
+ 0x01, 0x10, 0x22, 0x12, 0x00, 0x00, 0xF5, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50,
+ 0xDE, 0x37, 0x11, 0x42, 0x04, 0x00, 0x00, 0x00, 0x00, 0x81, 0xFD, 0xFF, 0xFF, 0x08, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x10, 0x33, 0x12, 0x00, 0x00, 0x00,
+ // Unicode: [0x0041]
+ 0x00, 0x00, 0xA0, 0xFF, 0x05, 0x00, 0x00, 0x00, 0x00, 0xE1, 0xFE, 0x0A, 0x00, 0x00, 0x00, 0x00,
+ 0xF6, 0xD7, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x81, 0x7F, 0x00, 0x00, 0x00, 0x20, 0xAF, 0x20,
+ 0xCF, 0x00, 0x00, 0x00, 0x80, 0x5F, 0x00, 0xFB, 0x03, 0x00, 0x00, 0xE0, 0x0E, 0x00, 0xF6, 0x09,
+ 0x00, 0x00, 0xF4, 0x08, 0x00, 0xE1, 0x0E, 0x00, 0x00, 0xFA, 0x9B, 0x99, 0xD9, 0x5F, 0x00, 0x10,
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x00, 0x60, 0x7F, 0x00, 0x00, 0x00, 0xFD, 0x02, 0xC0, 0x2F, 0x00,
+ 0x00, 0x00, 0xF8, 0x07, 0xF3, 0x0B, 0x00, 0x00, 0x00, 0xF3, 0x0D, 0xF8, 0x06, 0x00, 0x00, 0x00,
+ 0xC0, 0x3F,
+ // Unicode: [0x0042]
+ 0xF1, 0xFF, 0xFF, 0xDF, 0x3A, 0x00, 0xF1, 0x9E, 0x99, 0xDA, 0xFF, 0x03, 0xF1, 0x0D, 0x00, 0x00,
+ 0xF9, 0x09, 0xF1, 0x0D, 0x00, 0x00, 0xF6, 0x09, 0xF1, 0x0D, 0x00, 0x00, 0xFB, 0x03, 0xF1, 0x9E,
+ 0x99, 0xEA, 0x4E, 0x00, 0xF1, 0xFF, 0xFF, 0xFF, 0xEF, 0x05, 0xF1, 0x0D, 0x00, 0x10, 0xE5, 0x4F,
+ 0xF1, 0x0D, 0x00, 0x00, 0x40, 0xBF, 0xF1, 0x0D, 0x00, 0x00, 0x20, 0xDF, 0xF1, 0x0D, 0x00, 0x00,
+ 0x30, 0xCF, 0xF1, 0x0D, 0x00, 0x00, 0xC1, 0x7F, 0xF1, 0x9E, 0x99, 0xBA, 0xFF, 0x0A, 0xF1, 0xFF,
+ 0xFF, 0xEF, 0x5B, 0x00,
+ // Unicode: [0x0043]
+ 0x00, 0x20, 0xC8, 0xFE, 0xBE, 0x16, 0x00, 0x00, 0xF7, 0xDF, 0xAA, 0xFC, 0xEF, 0x02, 0x70, 0xEF,
+ 0x04, 0x00, 0x10, 0xE6, 0x03, 0xF2, 0x3F, 0x00, 0x00, 0x00, 0x10, 0x01, 0xF8, 0x09, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xFB, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFD, 0x03, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0xFD, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFB, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8,
+ 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x3F, 0x00, 0x00, 0x00, 0x10, 0x01, 0x80, 0xEF, 0x05,
+ 0x00, 0x10, 0xE6, 0x03, 0x00, 0xF9, 0xDF, 0xAA, 0xFC, 0xEF, 0x02, 0x00, 0x30, 0xD9, 0xFE, 0xAD,
+ 0x16, 0x00,
+ // Unicode: [0x0044]
+ 0xF1, 0xFF, 0xEF, 0xCE, 0x38, 0x00, 0x00, 0xF1, 0x9E, 0xA9, 0xEB, 0xFF, 0x09, 0x00, 0xF1, 0x0D,
+ 0x00, 0x00, 0xD5, 0xAF, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x10, 0xFD, 0x06, 0xF1, 0x0D, 0x00, 0x00,
+ 0x00, 0xF4, 0x0C, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xE0, 0x1F, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xC0,
+ 0x3F, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xC0, 0x3F, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xE0, 0x1F, 0xF1,
+ 0x0D, 0x00, 0x00, 0x00, 0xF4, 0x0B, 0xF1, 0x0D, 0x00, 0x00, 0x10, 0xFD, 0x05, 0xF1, 0x0D, 0x00,
+ 0x00, 0xD4, 0x9F, 0x00, 0xF1, 0x9E, 0xA9, 0xEB, 0xFF, 0x08, 0x00, 0xF1, 0xFF, 0xFF, 0xCE, 0x38,
+ 0x00, 0x00,
+ // Unicode: [0x0045]
+ 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0x08, 0xF1, 0xAE, 0xAA, 0xAA, 0xAA, 0x05, 0xF1, 0x0D, 0x00, 0x00,
+ 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0xAF,
+ 0xAA, 0xAA, 0xAA, 0x05, 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0x08, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00,
+ 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00,
+ 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0xAF, 0xAA, 0xAA, 0xAA, 0x05, 0xF1, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x08,
+ // Unicode: [0x0046]
+ 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0x04, 0xF1, 0xAE, 0xAA, 0xAA, 0xAA, 0x02, 0xF1, 0x0D, 0x00, 0x00,
+ 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0xAF,
+ 0xAA, 0xAA, 0x2A, 0x00, 0xF1, 0xFF, 0xFF, 0xFF, 0x3F, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00,
+ 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00,
+ 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D,
+ 0x00, 0x00, 0x00, 0x00,
+ // Unicode: [0x0047]
+ 0x00, 0x10, 0xB7, 0xFE, 0xDE, 0x5A, 0x00, 0x00, 0xE6, 0xEF, 0xAB, 0xDB, 0xFF, 0x1E, 0x60, 0xEF,
+ 0x05, 0x00, 0x00, 0x71, 0x1E, 0xE1, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF7, 0x09, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xFB, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFD, 0x03, 0x00, 0x70, 0xAA, 0xAA,
+ 0x1A, 0xFD, 0x03, 0x00, 0xB0, 0xFF, 0xFF, 0x1F, 0xFB, 0x05, 0x00, 0x00, 0x00, 0xC0, 0x1F, 0xF7,
+ 0x0A, 0x00, 0x00, 0x00, 0xC0, 0x1F, 0xF2, 0x4F, 0x00, 0x00, 0x00, 0xC0, 0x1F, 0x70, 0xFF, 0x07,
+ 0x00, 0x00, 0xD2, 0x1F, 0x00, 0xF7, 0xEF, 0xAB, 0xDB, 0xFF, 0x1D, 0x00, 0x20, 0xB7, 0xFE, 0xCE,
+ 0x49, 0x00,
+ // Unicode: [0x0048]
+ 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xFD, 0x01, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xFD, 0x01, 0xF1, 0x0D,
+ 0x00, 0x00, 0x00, 0xFD, 0x01, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xFD, 0x01, 0xF1, 0x0D, 0x00, 0x00,
+ 0x00, 0xFD, 0x01, 0xF1, 0xAF, 0xAA, 0xAA, 0xAA, 0xFE, 0x01, 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
+ 0x01, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xFD, 0x01, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xFD, 0x01, 0xF1,
+ 0x0D, 0x00, 0x00, 0x00, 0xFD, 0x01, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xFD, 0x01, 0xF1, 0x0D, 0x00,
+ 0x00, 0x00, 0xFD, 0x01, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0xFD, 0x01, 0xF1, 0x0D, 0x00, 0x00, 0x00,
+ 0xFD, 0x01,
+ // Unicode: [0x0049]
+ 0xFA, 0xFF, 0xFF, 0x01, 0x74, 0xFD, 0x78, 0x01, 0x00, 0xFB, 0x03, 0x00, 0x00, 0xFB, 0x03, 0x00,
+ 0x00, 0xFB, 0x03, 0x00, 0x00, 0xFB, 0x03, 0x00, 0x00, 0xFB, 0x03, 0x00, 0x00, 0xFB, 0x03, 0x00,
+ 0x00, 0xFB, 0x03, 0x00, 0x00, 0xFB, 0x03, 0x00, 0x00, 0xFB, 0x03, 0x00, 0x00, 0xFB, 0x03, 0x00,
+ 0x74, 0xFD, 0x78, 0x01, 0xFA, 0xFF, 0xFF, 0x01,
+ // Unicode: [0x004A]
+ 0x00, 0xFB, 0xFF, 0x4F, 0x00, 0x85, 0xC8, 0x4F, 0x00, 0x00, 0xA0, 0x4F, 0x00, 0x00, 0xA0, 0x4F,
+ 0x00, 0x00, 0xA0, 0x4F, 0x00, 0x00, 0xA0, 0x4F, 0x00, 0x00, 0xA0, 0x4F, 0x00, 0x00, 0xA0, 0x4F,
+ 0x00, 0x00, 0xA0, 0x4F, 0x00, 0x00, 0xA0, 0x4F, 0x00, 0x00, 0xB0, 0x4F, 0x00, 0x00, 0xE1, 0x1F,
+ 0xC8, 0xAA, 0xFE, 0x08, 0xD7, 0xEF, 0x5C, 0x00,
+ // Unicode: [0x004B]
+ 0xEF, 0x00, 0x00, 0x00, 0xF7, 0x1C, 0xEF, 0x00, 0x00, 0x70, 0xCF, 0x01, 0xEF, 0x00, 0x00, 0xF6,
+ 0x1C, 0x00, 0xEF, 0x00, 0x60, 0xCF, 0x01, 0x00, 0xEF, 0x00, 0xF5, 0x1C, 0x00, 0x00, 0xEF, 0x50,
+ 0xCF, 0x01, 0x00, 0x00, 0xEF, 0xF4, 0x2F, 0x00, 0x00, 0x00, 0xFF, 0xEF, 0xAF, 0x00, 0x00, 0x00,
+ 0xFF, 0x2A, 0xFD, 0x09, 0x00, 0x00, 0xEF, 0x00, 0xD2, 0x8F, 0x00, 0x00, 0xEF, 0x00, 0x30, 0xFE,
+ 0x06, 0x00, 0xEF, 0x00, 0x00, 0xE3, 0x5F, 0x00, 0xEF, 0x00, 0x00, 0x40, 0xFF, 0x04, 0xEF, 0x00,
+ 0x00, 0x00, 0xF5, 0x3E,
+ // Unicode: [0x004C]
+ 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00,
+ 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D,
+ 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00,
+ 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00,
+ 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0xAF, 0xAA, 0xAA, 0xAA, 0x02, 0xF1, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x02,
+ // Unicode: [0x004D]
+ 0xF1, 0xCF, 0x00, 0x00, 0x00, 0xE1, 0xEF, 0xF1, 0xFF, 0x05, 0x00, 0x00, 0xF8, 0xEF, 0xF1, 0xEC,
+ 0x0C, 0x00, 0x10, 0xBE, 0xEF, 0xF1, 0x7C, 0x5F, 0x00, 0x70, 0x3F, 0xEF, 0xF1, 0x1C, 0xCE, 0x00,
+ 0xE1, 0x0B, 0xEF, 0xF1, 0x0C, 0xF7, 0x05, 0xF6, 0x03, 0xEF, 0xF1, 0x0C, 0xE1, 0x0C, 0xBD, 0x00,
+ 0xEF, 0xF1, 0x0C, 0x80, 0xAF, 0x3F, 0x00, 0xEF, 0xF1, 0x0C, 0x10, 0xFE, 0x0B, 0x00, 0xEF, 0xF1,
+ 0x0C, 0x00, 0xF8, 0x04, 0x00, 0xEF, 0xF1, 0x0C, 0x00, 0x21, 0x00, 0x00, 0xEF, 0xF1, 0x0C, 0x00,
+ 0x00, 0x00, 0x00, 0xEF, 0xF1, 0x0C, 0x00, 0x00, 0x00, 0x00, 0xEF, 0xF1, 0x0C, 0x00, 0x00, 0x00,
+ 0x00, 0xEF,
+ // Unicode: [0x004E]
+ 0xF1, 0xFF, 0x03, 0x00, 0x00, 0xFC, 0x01, 0xF1, 0xFE, 0x0C, 0x00, 0x00, 0xFC, 0x01, 0xF1, 0xAC,
+ 0x5F, 0x00, 0x00, 0xFC, 0x01, 0xF1, 0x2C, 0xDF, 0x00, 0x00, 0xFC, 0x01, 0xF1, 0x0C, 0xF9, 0x06,
+ 0x00, 0xFC, 0x01, 0xF1, 0x0C, 0xE1, 0x1E, 0x00, 0xFC, 0x01, 0xF1, 0x0C, 0x70, 0x8F, 0x00, 0xFC,
+ 0x01, 0xF1, 0x0C, 0x00, 0xED, 0x02, 0xFC, 0x01, 0xF1, 0x0C, 0x00, 0xF6, 0x09, 0xFC, 0x01, 0xF1,
+ 0x0C, 0x00, 0xC0, 0x3F, 0xFC, 0x01, 0xF1, 0x0C, 0x00, 0x40, 0xBF, 0xFC, 0x01, 0xF1, 0x0C, 0x00,
+ 0x00, 0xFB, 0xFE, 0x01, 0xF1, 0x0C, 0x00, 0x00, 0xF3, 0xFF, 0x01, 0xF1, 0x0C, 0x00, 0x00, 0x90,
+ 0xFF, 0x01,
+ // Unicode: [0x004F]
+ 0x00, 0x40, 0xDA, 0xEF, 0x8C, 0x02, 0x00, 0x00, 0xF9, 0xCF, 0xAA, 0xFD, 0x6F, 0x00, 0x90, 0xDF,
+ 0x03, 0x00, 0x50, 0xFE, 0x05, 0xF2, 0x2E, 0x00, 0x00, 0x00, 0xF5, 0x0D, 0xF8, 0x08, 0x00, 0x00,
+ 0x00, 0xC0, 0x4F, 0xFB, 0x04, 0x00, 0x00, 0x00, 0x80, 0x7F, 0xFD, 0x03, 0x00, 0x00, 0x00, 0x60,
+ 0x9F, 0xFD, 0x03, 0x00, 0x00, 0x00, 0x60, 0x9F, 0xFB, 0x04, 0x00, 0x00, 0x00, 0x80, 0x7F, 0xF8,
+ 0x08, 0x00, 0x00, 0x00, 0xC0, 0x4F, 0xF2, 0x2E, 0x00, 0x00, 0x00, 0xF5, 0x0D, 0x90, 0xDF, 0x03,
+ 0x00, 0x50, 0xFE, 0x05, 0x00, 0xF9, 0xCF, 0xAA, 0xFD, 0x6F, 0x00, 0x00, 0x40, 0xDA, 0xEF, 0x9D,
+ 0x02, 0x00,
+ // Unicode: [0x0050]
+ 0xF1, 0xFF, 0xFF, 0xAD, 0x03, 0x00, 0xF1, 0x9E, 0xA9, 0xFC, 0x7F, 0x00, 0xF1, 0x0D, 0x00, 0x40,
+ 0xFF, 0x02, 0xF1, 0x0D, 0x00, 0x00, 0xFA, 0x06, 0xF1, 0x0D, 0x00, 0x00, 0xF9, 0x06, 0xF1, 0x0D,
+ 0x00, 0x00, 0xFD, 0x03, 0xF1, 0x0D, 0x10, 0xB4, 0xBF, 0x00, 0xF1, 0xFF, 0xFF, 0xFF, 0x1B, 0x00,
+ 0xF1, 0x9E, 0x99, 0x37, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00,
+ 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x00, 0x00, 0xF1, 0x0D,
+ 0x00, 0x00, 0x00, 0x00,
+ // Unicode: [0x0051]
+ 0x00, 0x40, 0xDA, 0xEF, 0x8C, 0x02, 0x00, 0x00, 0xF9, 0xCF, 0xAA, 0xFD, 0x6F, 0x00, 0x90, 0xDF,
+ 0x03, 0x00, 0x50, 0xFE, 0x05, 0xF2, 0x2E, 0x00, 0x00, 0x00, 0xF5, 0x0D, 0xF8, 0x08, 0x00, 0x00,
+ 0x00, 0xC0, 0x4F, 0xFB, 0x04, 0x00, 0x00, 0x00, 0x80, 0x7F, 0xFD, 0x03, 0x00, 0x00, 0x00, 0x60,
+ 0x9F, 0xFD, 0x03, 0x00, 0x00, 0x00, 0x60, 0x9F, 0xFB, 0x04, 0x00, 0x00, 0x00, 0x80, 0x7F, 0xF8,
+ 0x08, 0x00, 0x00, 0x00, 0xC0, 0x4F, 0xF2, 0x2E, 0x00, 0x00, 0x00, 0xF5, 0x0D, 0x90, 0xDF, 0x03,
+ 0x00, 0x50, 0xFE, 0x04, 0x00, 0xF9, 0xCF, 0xAA, 0xFD, 0x5E, 0x00, 0x00, 0x40, 0xDA, 0xFF, 0xCF,
+ 0x02, 0x00, 0x00, 0x00, 0x00, 0x20, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x03, 0x10,
+ 0x00, 0x00, 0x00, 0x00, 0xF6, 0xBE, 0xDC, 0x00, 0x00, 0x00, 0x00, 0x60, 0xFD, 0xBE,
+ // Unicode: [0x0052]
+ 0xF1, 0xFF, 0xFF, 0xBE, 0x06, 0x00, 0x00, 0xF1, 0x9E, 0xA9, 0xFC, 0x9F, 0x00, 0x00, 0xF1, 0x0D,
+ 0x00, 0x30, 0xFE, 0x03, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0xFA, 0x07, 0x00, 0xF1, 0x0D, 0x00, 0x00,
+ 0xF9, 0x06, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0xFD, 0x02, 0x00, 0xF1, 0x0D, 0x10, 0xA3, 0x9F, 0x00,
+ 0x00, 0xF1, 0xFF, 0xFF, 0xEF, 0x07, 0x00, 0x00, 0xF1, 0x9E, 0xA9, 0xDF, 0x01, 0x00, 0x00, 0xF1,
+ 0x0D, 0x00, 0xF8, 0x1C, 0x00, 0x00, 0xF1, 0x0D, 0x00, 0xA0, 0xBF, 0x00, 0x00, 0xF1, 0x0D, 0x00,
+ 0x00, 0xFB, 0x0A, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0xC1, 0x9F, 0x00, 0xF1, 0x0D, 0x00, 0x00, 0x20,
+ 0xFD, 0x08,
+ // Unicode: [0x0053]
+ 0x00, 0xA4, 0xFD, 0xDF, 0x7B, 0x02, 0x80, 0xFF, 0xAC, 0xCA, 0xFF, 0x0E, 0xF4, 0x3E, 0x00, 0x00,
+ 0x61, 0x0C, 0xF9, 0x07, 0x00, 0x00, 0x00, 0x00, 0xF7, 0x09, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x8F,
+ 0x03, 0x00, 0x00, 0x00, 0x50, 0xFE, 0xFF, 0xAD, 0x17, 0x00, 0x00, 0x50, 0xB8, 0xFE, 0xFF, 0x06,
+ 0x00, 0x00, 0x00, 0x20, 0xF7, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x90, 0x7F, 0x03, 0x00, 0x00, 0x00,
+ 0x90, 0x6F, 0xBA, 0x04, 0x00, 0x00, 0xE5, 0x2E, 0xFA, 0xEF, 0xAB, 0xDB, 0xEF, 0x05, 0x50, 0xC9,
+ 0xFE, 0xCE, 0x28, 0x00,
+ // Unicode: [0x0054]
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x05, 0xAA, 0xAA, 0xEA, 0xBF, 0xAA, 0xAA, 0x03, 0x00, 0x00,
+ 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
+ 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00,
+ 0x00, 0x00,
+ // Unicode: [0x0055]
+ 0xF4, 0x0A, 0x00, 0x00, 0x00, 0xEF, 0xF4, 0x0A, 0x00, 0x00, 0x00, 0xEF, 0xF4, 0x0A, 0x00, 0x00,
+ 0x00, 0xEF, 0xF4, 0x0A, 0x00, 0x00, 0x00, 0xEF, 0xF4, 0x0A, 0x00, 0x00, 0x00, 0xEF, 0xF4, 0x0A,
+ 0x00, 0x00, 0x00, 0xEF, 0xF4, 0x0A, 0x00, 0x00, 0x00, 0xEF, 0xF4, 0x0A, 0x00, 0x00, 0x00, 0xEF,
+ 0xF4, 0x0A, 0x00, 0x00, 0x10, 0xDF, 0xF3, 0x0B, 0x00, 0x00, 0x20, 0xCF, 0xF0, 0x1F, 0x00, 0x00,
+ 0x70, 0x9F, 0x90, 0xAF, 0x01, 0x00, 0xE3, 0x4F, 0x10, 0xFC, 0xBE, 0xCA, 0xFF, 0x08, 0x00, 0x71,
+ 0xEC, 0xEF, 0x4B, 0x00,
+ // Unicode: [0x0056]
+ 0xF8, 0x08, 0x00, 0x00, 0x00, 0xB0, 0x3F, 0xF3, 0x0D, 0x00, 0x00, 0x00, 0xF2, 0x0D, 0xC0, 0x4F,
+ 0x00, 0x00, 0x00, 0xF7, 0x07, 0x60, 0x9F, 0x00, 0x00, 0x00, 0xFD, 0x02, 0x10, 0xEF, 0x01, 0x00,
+ 0x30, 0xBF, 0x00, 0x00, 0xFA, 0x05, 0x00, 0x90, 0x5F, 0x00, 0x00, 0xF4, 0x0B, 0x00, 0xE0, 0x0E,
+ 0x00, 0x00, 0xE0, 0x2F, 0x00, 0xF5, 0x09, 0x00, 0x00, 0x80, 0x7F, 0x00, 0xFA, 0x03, 0x00, 0x00,
+ 0x20, 0xDF, 0x10, 0xCF, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x73, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xF6,
+ 0xC9, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xE1, 0xFE, 0x0A, 0x00, 0x00, 0x00, 0x00, 0xA0, 0xFF, 0x05,
+ 0x00, 0x00,
+ // Unicode: [0x0057]
+ 0xFE, 0x01, 0x00, 0x30, 0xFF, 0x01, 0x00, 0x20, 0xBF, 0xFA, 0x04, 0x00, 0x70, 0xFF, 0x04, 0x00,
+ 0x60, 0x7F, 0xF6, 0x08, 0x00, 0xA0, 0xFE, 0x08, 0x00, 0xA0, 0x3F, 0xF2, 0x0C, 0x00, 0xE0, 0xD9,
+ 0x0C, 0x00, 0xE0, 0x0E, 0xD0, 0x1F, 0x00, 0xF3, 0x95, 0x1F, 0x00, 0xF3, 0x0A, 0x90, 0x5F, 0x00,
+ 0xF7, 0x51, 0x5F, 0x00, 0xF7, 0x06, 0x50, 0x9F, 0x00, 0xCB, 0x10, 0x9F, 0x00, 0xFA, 0x02, 0x10,
+ 0xDF, 0x00, 0x8E, 0x00, 0xDC, 0x00, 0xDE, 0x00, 0x00, 0xFB, 0x42, 0x4F, 0x00, 0xF8, 0x32, 0x9F,
+ 0x00, 0x00, 0xF7, 0x86, 0x1F, 0x00, 0xF4, 0x76, 0x5F, 0x00, 0x00, 0xF3, 0xCA, 0x0C, 0x00, 0xF0,
+ 0xB9, 0x1F, 0x00, 0x00, 0xE0, 0xFE, 0x08, 0x00, 0xB0, 0xED, 0x0C, 0x00, 0x00, 0xA0, 0xFF, 0x04,
+ 0x00, 0x70, 0xFF, 0x07, 0x00, 0x00, 0x60, 0xFF, 0x00, 0x00, 0x30, 0xFF, 0x03, 0x00,
+ // Unicode: [0x0058]
+ 0xD0, 0x5F, 0x00, 0x00, 0x00, 0xF7, 0x0A, 0x30, 0xEF, 0x02, 0x00, 0x20, 0xDF, 0x01, 0x00, 0xF7,
+ 0x0B, 0x00, 0xC0, 0x4F, 0x00, 0x00, 0xB0, 0x6F, 0x00, 0xF8, 0x08, 0x00, 0x00, 0x20, 0xEE, 0x42,
+ 0xCF, 0x00, 0x00, 0x00, 0x00, 0xF5, 0xDC, 0x2E, 0x00, 0x00, 0x00, 0x00, 0x90, 0xFF, 0x05, 0x00,
+ 0x00, 0x00, 0x00, 0x90, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0xF5, 0xEA, 0x3F, 0x00, 0x00, 0x00,
+ 0x20, 0xDE, 0x41, 0xCF, 0x00, 0x00, 0x00, 0xC0, 0x4F, 0x00, 0xF9, 0x08, 0x00, 0x00, 0xF8, 0x08,
+ 0x00, 0xD1, 0x4F, 0x00, 0x40, 0xCF, 0x00, 0x00, 0x40, 0xDF, 0x01, 0xD1, 0x2F, 0x00, 0x00, 0x00,
+ 0xF8, 0x0A,
+ // Unicode: [0x0059]
+ 0xF9, 0x08, 0x00, 0x00, 0x20, 0xDF, 0x01, 0xE1, 0x3F, 0x00, 0x00, 0xC0, 0x4F, 0x00, 0x50, 0xCF,
+ 0x00, 0x00, 0xF6, 0x09, 0x00, 0x00, 0xFB, 0x06, 0x20, 0xEE, 0x01, 0x00, 0x00, 0xE2, 0x2E, 0xA0,
+ 0x5F, 0x00, 0x00, 0x00, 0x60, 0xAF, 0xF5, 0x0A, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xEE, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0xF3, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
+ 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x2F, 0x00,
+ 0x00, 0x00,
+ // Unicode: [0x005A]
+ 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0x5F, 0xA4, 0xAA, 0xAA, 0xAA, 0xFA, 0x5F, 0x00, 0x00, 0x00, 0x00,
+ 0xF8, 0x0A, 0x00, 0x00, 0x00, 0x60, 0xCF, 0x01, 0x00, 0x00, 0x00, 0xF4, 0x1D, 0x00, 0x00, 0x00,
+ 0x20, 0xEE, 0x03, 0x00, 0x00, 0x00, 0xD1, 0x4F, 0x00, 0x00, 0x00, 0x00, 0xFB, 0x07, 0x00, 0x00,
+ 0x00, 0x90, 0x9F, 0x00, 0x00, 0x00, 0x00, 0xF7, 0x0B, 0x00, 0x00, 0x00, 0x50, 0xDF, 0x01, 0x00,
+ 0x00, 0x00, 0xE3, 0x2E, 0x00, 0x00, 0x00, 0x00, 0xFB, 0xAD, 0xAA, 0xAA, 0xAA, 0x6A, 0xFC, 0xFF,
+ 0xFF, 0xFF, 0xFF, 0x9F,
+ // Unicode: [0x005B]
+ 0xFA, 0xFF, 0x6F, 0xFA, 0x66, 0x26, 0xFA, 0x00, 0x00, 0xFA, 0x00, 0x00, 0xFA, 0x00, 0x00, 0xFA,
+ 0x00, 0x00, 0xFA, 0x00, 0x00, 0xFA, 0x00, 0x00, 0xFA, 0x00, 0x00, 0xFA, 0x00, 0x00, 0xFA, 0x00,
+ 0x00, 0xFA, 0x00, 0x00, 0xFA, 0x00, 0x00, 0xFA, 0x00, 0x00, 0xFA, 0x00, 0x00, 0xFA, 0x00, 0x00,
+ 0xFA, 0x00, 0x00, 0xFA, 0x56, 0x25, 0xFA, 0xFF, 0x6F,
+ // Unicode: [0x005C]
+ 0xF2, 0x09, 0x00, 0x00, 0x00, 0xB0, 0x1E, 0x00, 0x00, 0x00, 0x50, 0x6F, 0x00, 0x00, 0x00, 0x00,
+ 0xBE, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x02, 0x00, 0x00, 0x00, 0xF3, 0x08, 0x00, 0x00, 0x00, 0xC0,
+ 0x0E, 0x00, 0x00, 0x00, 0x60, 0x5F, 0x00, 0x00, 0x00, 0x10, 0xAE, 0x00, 0x00, 0x00, 0x00, 0xF9,
+ 0x01, 0x00, 0x00, 0x00, 0xF3, 0x07, 0x00, 0x00, 0x00, 0xD0, 0x0D, 0x00, 0x00, 0x00, 0x70, 0x4F,
+ 0x00, 0x00, 0x00, 0x10, 0x9F, 0x00, 0x00, 0x00, 0x00, 0xEA, 0x01, 0x00, 0x00, 0x00, 0xF4, 0x06,
+ 0x00, 0x00, 0x00, 0xD0, 0x0C, 0x00, 0x00, 0x00, 0x80, 0x3F,
+ // Unicode: [0x005D]
+ 0xF5, 0xFF, 0xBF, 0x62, 0x66, 0xBF, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xBE, 0x00,
+ 0x00, 0xBE, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xBE, 0x00, 0x00,
+ 0xBE, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xBE,
+ 0x00, 0x00, 0xBE, 0x52, 0x55, 0xBF, 0xF5, 0xFF, 0xBF,
+ // Unicode: [0x005E]
+ 0x00, 0x00, 0x50, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x10,
+ 0xDD, 0xF9, 0x05, 0x00, 0x00, 0x00, 0xB0, 0x3F, 0xC0, 0x2E, 0x00, 0x00, 0x00, 0xF8, 0x06, 0x20,
+ 0xCE, 0x01, 0x00, 0x40, 0x9F, 0x00, 0x00, 0xF4, 0x09, 0x00, 0xE2, 0x1C, 0x00, 0x00, 0x80, 0x6F,
+ 0x00, 0xEC, 0x02, 0x00, 0x00, 0x00, 0xFB, 0x03,
+ // Unicode: [0x005F]
+ 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x30, 0x33, 0x33, 0x33, 0x33, 0x33, 0x23,
+ // Unicode: [0x0060]
+ 0x84, 0x06, 0x00, 0xD1, 0x3F, 0x00, 0x30, 0xAF, 0x00, 0x00, 0xF6, 0x03,
+ // Unicode: [0x0061]
+ 0x90, 0xEC, 0xEF, 0x7C, 0x00, 0xF0, 0xBD, 0xA9, 0xFE, 0x0A, 0x30, 0x00, 0x00, 0xD1, 0x2F, 0x00,
+ 0x00, 0x00, 0xA1, 0x4F, 0x20, 0xC8, 0xFE, 0xFF, 0x4F, 0xE3, 0xBF, 0x68, 0xA5, 0x4F, 0xFC, 0x05,
+ 0x00, 0x80, 0x4F, 0xEE, 0x00, 0x00, 0x80, 0x4F, 0xFD, 0x03, 0x00, 0xD5, 0x4F, 0xF6, 0xBF, 0xDB,
+ 0xEF, 0x4F, 0x50, 0xFC, 0xAE, 0x83, 0x4F,
+ // Unicode: [0x0062]
+ 0xF3, 0x0A, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00,
+ 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x2A, 0xEA, 0xCF, 0x04, 0x00, 0xF3, 0xFD,
+ 0xBE, 0xFD, 0x5F, 0x00, 0xF3, 0x6E, 0x00, 0x60, 0xDF, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0xFC, 0x03,
+ 0xF3, 0x0A, 0x00, 0x00, 0xF9, 0x05, 0xF3, 0x0A, 0x00, 0x00, 0xF8, 0x06, 0xF3, 0x0A, 0x00, 0x00,
+ 0xF9, 0x05, 0xF3, 0x0A, 0x00, 0x00, 0xFC, 0x01, 0xF3, 0x0A, 0x00, 0x80, 0xAF, 0x00, 0xF3, 0xEF,
+ 0xAA, 0xFD, 0x1D, 0x00, 0xF3, 0xAC, 0xFD, 0x9E, 0x01, 0x00,
+ // Unicode: [0x0063]
+ 0x00, 0xB4, 0xFE, 0xAD, 0x04, 0x70, 0xEF, 0x9A, 0xFB, 0x0D, 0xF4, 0x1D, 0x00, 0x20, 0x08, 0xFA,
+ 0x05, 0x00, 0x00, 0x00, 0xFD, 0x01, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0xFD, 0x01,
+ 0x00, 0x00, 0x00, 0xFA, 0x05, 0x00, 0x00, 0x00, 0xF5, 0x1D, 0x00, 0x20, 0x08, 0x90, 0xEF, 0x9A,
+ 0xFB, 0x0D, 0x00, 0xB5, 0xFE, 0x9D, 0x03,
+ // Unicode: [0x0064]
+ 0x00, 0x00, 0x00, 0x30, 0xAF, 0x00, 0x00, 0x00, 0x30, 0xAF, 0x00, 0x00, 0x00, 0x30, 0xAF, 0x00,
+ 0x00, 0x00, 0x30, 0xAF, 0x00, 0xB4, 0xEE, 0x8B, 0xAF, 0x70, 0xFF, 0xAB, 0xFC, 0xAF, 0xF3, 0x2D,
+ 0x00, 0x40, 0xAF, 0xF9, 0x06, 0x00, 0x30, 0xAF, 0xFD, 0x01, 0x00, 0x30, 0xAF, 0xFE, 0x00, 0x00,
+ 0x30, 0xAF, 0xFD, 0x01, 0x00, 0x30, 0xAF, 0xFB, 0x04, 0x00, 0x30, 0xAF, 0xF6, 0x1C, 0x00, 0xB2,
+ 0xAF, 0xC0, 0xEF, 0xCC, 0xEF, 0xAF, 0x10, 0xE9, 0xDF, 0x37, 0xAF,
+ // Unicode: [0x0065]
+ 0x00, 0xB4, 0xFE, 0x9D, 0x02, 0x70, 0xDF, 0x89, 0xFA, 0x2E, 0xF3, 0x09, 0x00, 0x50, 0x9F, 0xFA,
+ 0x12, 0x11, 0x11, 0xDE, 0xFD, 0xFF, 0xFF, 0xFF, 0xEF, 0xEE, 0x44, 0x44, 0x44, 0x44, 0xFD, 0x01,
+ 0x00, 0x00, 0x00, 0xFA, 0x06, 0x00, 0x00, 0x00, 0xF4, 0x4E, 0x00, 0x00, 0x84, 0x70, 0xFF, 0x9C,
+ 0xDA, 0xBF, 0x00, 0xA4, 0xFD, 0xCE, 0x28,
+ // Unicode: [0x0066]
+ 0x00, 0x60, 0xEC, 0x9E, 0x00, 0xF7, 0x9D, 0x8A, 0x00, 0xEE, 0x01, 0x00, 0x10, 0xBF, 0x00, 0x00,
+ 0xF5, 0xFF, 0xFF, 0x0F, 0x83, 0xDF, 0x88, 0x08, 0x10, 0xBF, 0x00, 0x00, 0x10, 0xBF, 0x00, 0x00,
+ 0x10, 0xBF, 0x00, 0x00, 0x10, 0xBF, 0x00, 0x00, 0x10, 0xBF, 0x00, 0x00, 0x10, 0xBF, 0x00, 0x00,
+ 0x10, 0xBF, 0x00, 0x00, 0x10, 0xBF, 0x00, 0x00, 0x10, 0xBF, 0x00, 0x00,
+ // Unicode: [0x0067]
+ 0x00, 0xB4, 0xFE, 0x9C, 0xAF, 0x70, 0xFF, 0xAB, 0xFC, 0xAF, 0xF3, 0x2D, 0x00, 0x40, 0xAF, 0xF9,
+ 0x06, 0x00, 0x30, 0xAF, 0xFD, 0x01, 0x00, 0x30, 0xAF, 0xFE, 0x00, 0x00, 0x30, 0xAF, 0xFD, 0x01,
+ 0x00, 0x30, 0xAF, 0xFB, 0x04, 0x00, 0x30, 0xAF, 0xF6, 0x1B, 0x00, 0xA2, 0xAF, 0xC0, 0xEF, 0xCB,
+ 0xEF, 0xAF, 0x10, 0xE9, 0xDF, 0x48, 0x9F, 0x00, 0x00, 0x00, 0x50, 0x7F, 0x20, 0x00, 0x00, 0xC1,
+ 0x2F, 0xC0, 0xBE, 0xAA, 0xFE, 0x08, 0x80, 0xEC, 0xEF, 0x5B, 0x00,
+ // Unicode: [0x0068]
+ 0xF3, 0x0A, 0x00, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0x00, 0xF3,
+ 0x0A, 0x00, 0x00, 0x00, 0xF3, 0x2A, 0xE9, 0xDF, 0x05, 0xF3, 0xED, 0xBE, 0xFC, 0x4F, 0xF3, 0x8F,
+ 0x01, 0x60, 0xAF, 0xF3, 0x0A, 0x00, 0x00, 0xDF, 0xF3, 0x0A, 0x00, 0x00, 0xEE, 0xF3, 0x0A, 0x00,
+ 0x00, 0xEE, 0xF3, 0x0A, 0x00, 0x00, 0xEE, 0xF3, 0x0A, 0x00, 0x00, 0xEE, 0xF3, 0x0A, 0x00, 0x00,
+ 0xEE, 0xF3, 0x0A, 0x00, 0x00, 0xEE, 0xF3, 0x0A, 0x00, 0x00, 0xEE,
+ // Unicode: [0x0069]
+ 0xF4, 0x0C, 0xD4, 0x0A, 0x00, 0x00, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A,
+ 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A,
+ // Unicode: [0x006A]
+ 0x00, 0x00, 0xFD, 0x03, 0x00, 0x00, 0xDB, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x01,
+ 0x00, 0x88, 0xFD, 0x01, 0x00, 0x00, 0xFB, 0x01, 0x00, 0x00, 0xFB, 0x01, 0x00, 0x00, 0xFB, 0x01,
+ 0x00, 0x00, 0xFB, 0x01, 0x00, 0x00, 0xFB, 0x01, 0x00, 0x00, 0xFB, 0x01, 0x00, 0x00, 0xFB, 0x01,
+ 0x00, 0x00, 0xFB, 0x01, 0x00, 0x00, 0xFB, 0x01, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x20, 0xDF, 0x00,
+ 0xB8, 0xEA, 0x6F, 0x00, 0xE7, 0xDF, 0x06, 0x00,
+ // Unicode: [0x006B]
+ 0xF2, 0x0B, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x0B, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x0B, 0x00, 0x00,
+ 0x00, 0x00, 0xF2, 0x0B, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x0B, 0x00, 0x70, 0xCF, 0x01, 0xF2, 0x0B,
+ 0x00, 0xF6, 0x1C, 0x00, 0xF2, 0x0B, 0x60, 0xCF, 0x01, 0x00, 0xF2, 0x0B, 0xF5, 0x1C, 0x00, 0x00,
+ 0xF2, 0x5B, 0xCF, 0x01, 0x00, 0x00, 0xF2, 0xFE, 0xAF, 0x00, 0x00, 0x00, 0xF2, 0x9F, 0xFC, 0x09,
+ 0x00, 0x00, 0xF2, 0x0C, 0xD1, 0x7F, 0x00, 0x00, 0xF2, 0x0B, 0x20, 0xFD, 0x06, 0x00, 0xF2, 0x0B,
+ 0x00, 0xE2, 0x5F, 0x00, 0xF2, 0x0B, 0x00, 0x30, 0xFE, 0x04,
+ // Unicode: [0x006C]
+ 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A,
+ 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A, 0xF3, 0x0A,
+ // Unicode: [0x006D]
+ 0xF3, 0x2A, 0xEA, 0xBE, 0x03, 0xA3, 0xFE, 0x4C, 0x00, 0xF3, 0xFD, 0xBE, 0xFD, 0x8E, 0xEF, 0xCB,
+ 0xFF, 0x02, 0xF3, 0x7F, 0x00, 0x90, 0xFF, 0x18, 0x00, 0xF9, 0x07, 0xF3, 0x0A, 0x00, 0x40, 0xAF,
+ 0x00, 0x00, 0xF3, 0x0A, 0xF3, 0x0A, 0x00, 0x30, 0xAF, 0x00, 0x00, 0xF2, 0x0B, 0xF3, 0x0A, 0x00,
+ 0x20, 0xAF, 0x00, 0x00, 0xF2, 0x0B, 0xF3, 0x0A, 0x00, 0x20, 0xAF, 0x00, 0x00, 0xF2, 0x0B, 0xF3,
+ 0x0A, 0x00, 0x20, 0xAF, 0x00, 0x00, 0xF2, 0x0B, 0xF3, 0x0A, 0x00, 0x20, 0xAF, 0x00, 0x00, 0xF2,
+ 0x0B, 0xF3, 0x0A, 0x00, 0x20, 0xAF, 0x00, 0x00, 0xF2, 0x0B, 0xF3, 0x0A, 0x00, 0x20, 0xAF, 0x00,
+ 0x00, 0xF2, 0x0B,
+ // Unicode: [0x006E]
+ 0xF3, 0x2A, 0xE9, 0xDF, 0x05, 0xF3, 0xFD, 0xBE, 0xFC, 0x4F, 0xF3, 0x8F, 0x01, 0x60, 0xAF, 0xF3,
+ 0x0A, 0x00, 0x00, 0xDF, 0xF3, 0x0A, 0x00, 0x00, 0xEE, 0xF3, 0x0A, 0x00, 0x00, 0xEE, 0xF3, 0x0A,
+ 0x00, 0x00, 0xEE, 0xF3, 0x0A, 0x00, 0x00, 0xEE, 0xF3, 0x0A, 0x00, 0x00, 0xEE, 0xF3, 0x0A, 0x00,
+ 0x00, 0xEE, 0xF3, 0x0A, 0x00, 0x00, 0xEE,
+ // Unicode: [0x006F]
+ 0x00, 0xC5, 0xEE, 0x6C, 0x00, 0x00, 0x90, 0xEF, 0xAA, 0xFD, 0x0A, 0x00, 0xF4, 0x1C, 0x00, 0xB1,
+ 0x6F, 0x00, 0xFA, 0x04, 0x00, 0x20, 0xCF, 0x00, 0xFD, 0x00, 0x00, 0x00, 0xFD, 0x00, 0xEE, 0x00,
+ 0x00, 0x00, 0xFC, 0x01, 0xFD, 0x01, 0x00, 0x00, 0xFE, 0x00, 0xFA, 0x04, 0x00, 0x20, 0xCF, 0x00,
+ 0xF4, 0x1C, 0x00, 0xB1, 0x6F, 0x00, 0x90, 0xEF, 0x9A, 0xFD, 0x0B, 0x00, 0x00, 0xC5, 0xFE, 0x7C,
+ 0x00, 0x00,
+ // Unicode: [0x0070]
+ 0xF3, 0x2A, 0xEA, 0xCF, 0x05, 0x00, 0xF3, 0xFE, 0xBE, 0xFD, 0x5F, 0x00, 0xF3, 0x6E, 0x00, 0x60,
+ 0xDF, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0xFC, 0x03, 0xF3, 0x0A, 0x00, 0x00, 0xF9, 0x05, 0xF3, 0x0A,
+ 0x00, 0x00, 0xF8, 0x06, 0xF3, 0x0A, 0x00, 0x00, 0xF9, 0x05, 0xF3, 0x0A, 0x00, 0x00, 0xFD, 0x01,
+ 0xF3, 0x0A, 0x00, 0x80, 0xAF, 0x00, 0xF3, 0xDF, 0xAA, 0xFD, 0x1D, 0x00, 0xF3, 0x9B, 0xFD, 0x9D,
+ 0x01, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x0A,
+ 0x00, 0x00, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0x00, 0x00,
+ // Unicode: [0x0071]
+ 0x00, 0xB5, 0xEE, 0x9C, 0xAF, 0x70, 0xEF, 0xAB, 0xFC, 0xAF, 0xF3, 0x2D, 0x00, 0x40, 0xAF, 0xF9,
+ 0x05, 0x00, 0x30, 0xAF, 0xFD, 0x01, 0x00, 0x30, 0xAF, 0xFE, 0x00, 0x00, 0x30, 0xAF, 0xFD, 0x01,
+ 0x00, 0x30, 0xAF, 0xFB, 0x04, 0x00, 0x30, 0xAF, 0xF6, 0x1C, 0x00, 0xB2, 0xAF, 0xC0, 0xEF, 0xCB,
+ 0xDF, 0xAF, 0x10, 0xE9, 0xDF, 0x37, 0xAF, 0x00, 0x00, 0x00, 0x30, 0xAF, 0x00, 0x00, 0x00, 0x30,
+ 0xAF, 0x00, 0x00, 0x00, 0x30, 0xAF, 0x00, 0x00, 0x00, 0x30, 0xAF,
+ // Unicode: [0x0072]
+ 0xF3, 0x1A, 0xE9, 0x8F, 0xF3, 0xED, 0xCF, 0x9C, 0xF3, 0x9F, 0x01, 0x00, 0xF3, 0x0A, 0x00, 0x00,
+ 0xF3, 0x0A, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00,
+ 0xF3, 0x0A, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00, 0xF3, 0x0A, 0x00, 0x00,
+ // Unicode: [0x0073]
+ 0x30, 0xEA, 0xDF, 0x7B, 0x01, 0xF4, 0xAE, 0xA8, 0xFE, 0x03, 0xFB, 0x03, 0x00, 0x50, 0x02, 0xFC,
+ 0x02, 0x00, 0x00, 0x00, 0xF8, 0x9E, 0x25, 0x00, 0x00, 0x70, 0xFD, 0xFF, 0x6D, 0x00, 0x00, 0x20,
+ 0x95, 0xFE, 0x04, 0x00, 0x00, 0x00, 0xF6, 0x08, 0x3A, 0x00, 0x00, 0xF7, 0x07, 0xFE, 0x9C, 0xB8,
+ 0xDF, 0x01, 0x94, 0xFD, 0xCE, 0x17, 0x00,
+ // Unicode: [0x0074]
+ 0x20, 0xAF, 0x00, 0x00, 0x20, 0xAF, 0x00, 0x00, 0x20, 0xAF, 0x00, 0x00, 0xF6, 0xFF, 0xFF, 0x7F,
+ 0x93, 0xDF, 0x88, 0x48, 0x20, 0xAF, 0x00, 0x00, 0x20, 0xAF, 0x00, 0x00, 0x20, 0xAF, 0x00, 0x00,
+ 0x20, 0xAF, 0x00, 0x00, 0x20, 0xAF, 0x00, 0x00, 0x20, 0xBF, 0x00, 0x00, 0x10, 0xEF, 0x01, 0x00,
+ 0x00, 0xFA, 0x9D, 0x6A, 0x00, 0x91, 0xFD, 0x5D,
+ // Unicode: [0x0075]
+ 0xF4, 0x08, 0x00, 0x00, 0xDF, 0xF4, 0x08, 0x00, 0x00, 0xDF, 0xF4, 0x08, 0x00, 0x00, 0xDF, 0xF4,
+ 0x08, 0x00, 0x00, 0xDF, 0xF4, 0x08, 0x00, 0x00, 0xDF, 0xF4, 0x08, 0x00, 0x00, 0xDF, 0xF4, 0x09,
+ 0x00, 0x00, 0xDF, 0xF3, 0x0A, 0x00, 0x00, 0xDF, 0xF1, 0x2E, 0x00, 0xB2, 0xDF, 0x90, 0xEF, 0xCB,
+ 0xDF, 0xDF, 0x00, 0xE8, 0xDF, 0x17, 0xDF,
+ // Unicode: [0x0076]
+ 0xF3, 0x0C, 0x00, 0x00, 0xD0, 0x1F, 0xC0, 0x3F, 0x00, 0x00, 0xF4, 0x09, 0x60, 0x8F, 0x00, 0x00,
+ 0xFA, 0x03, 0x10, 0xEE, 0x00, 0x10, 0xCE, 0x00, 0x00, 0xF9, 0x05, 0x60, 0x6F, 0x00, 0x00, 0xF3,
+ 0x0B, 0xC0, 0x1E, 0x00, 0x00, 0xC0, 0x2F, 0xF3, 0x09, 0x00, 0x00, 0x60, 0x7F, 0xF8, 0x03, 0x00,
+ 0x00, 0x10, 0xDE, 0xCE, 0x00, 0x00, 0x00, 0x00, 0xF9, 0x6F, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x1E,
+ 0x00, 0x00,
+ // Unicode: [0x0077]
+ 0xF1, 0x0D, 0x00, 0xA0, 0x2F, 0x00, 0x60, 0x6F, 0xC0, 0x2F, 0x00, 0xE1, 0x7F, 0x00, 0xA0, 0x2F,
+ 0x80, 0x5F, 0x00, 0xF5, 0xCE, 0x00, 0xD0, 0x0D, 0x40, 0x9F, 0x00, 0xDA, 0xF7, 0x02, 0xF1, 0x09,
+ 0x00, 0xCE, 0x00, 0x8E, 0xF2, 0x07, 0xF5, 0x06, 0x00, 0xFB, 0x41, 0x3F, 0xC0, 0x0C, 0xF8, 0x02,
+ 0x00, 0xF7, 0x94, 0x0D, 0x80, 0x2F, 0xDC, 0x00, 0x00, 0xF3, 0xE8, 0x08, 0x30, 0x7F, 0x9F, 0x00,
+ 0x00, 0xE0, 0xFE, 0x03, 0x00, 0xED, 0x5F, 0x00, 0x00, 0xA0, 0xDF, 0x00, 0x00, 0xF8, 0x1F, 0x00,
+ 0x00, 0x60, 0x9F, 0x00, 0x00, 0xF3, 0x0C, 0x00,
+ // Unicode: [0x0078]
+ 0xE1, 0x5F, 0x00, 0x00, 0xF4, 0x1C, 0x40, 0xEF, 0x02, 0x10, 0xEE, 0x02, 0x00, 0xF7, 0x0C, 0xB0,
+ 0x4F, 0x00, 0x00, 0xA0, 0x8F, 0xF7, 0x07, 0x00, 0x00, 0x10, 0xFD, 0xAF, 0x00, 0x00, 0x00, 0x00,
+ 0xF5, 0x2F, 0x00, 0x00, 0x00, 0x10, 0xED, 0xCF, 0x00, 0x00, 0x00, 0xA0, 0x5F, 0xF9, 0x08, 0x00,
+ 0x00, 0xF7, 0x09, 0xD1, 0x5F, 0x00, 0x40, 0xCF, 0x00, 0x30, 0xEF, 0x02, 0xE2, 0x2E, 0x00, 0x00,
+ 0xF6, 0x1C,
+ // Unicode: [0x0079]
+ 0xF3, 0x0C, 0x00, 0x00, 0xD0, 0x1E, 0xC0, 0x3F, 0x00, 0x00, 0xF5, 0x09, 0x50, 0x9F, 0x00, 0x00,
+ 0xFB, 0x03, 0x00, 0xEE, 0x01, 0x20, 0xBF, 0x00, 0x00, 0xF8, 0x07, 0x80, 0x5F, 0x00, 0x00, 0xF2,
+ 0x0D, 0xE1, 0x0D, 0x00, 0x00, 0xB0, 0x4F, 0xF6, 0x07, 0x00, 0x00, 0x40, 0xAF, 0xFC, 0x01, 0x00,
+ 0x00, 0x00, 0xFD, 0x9F, 0x00, 0x00, 0x00, 0x00, 0xF7, 0x3F, 0x00, 0x00, 0x00, 0x00, 0xF3, 0x0C,
+ 0x00, 0x00, 0x00, 0x00, 0xF8, 0x05, 0x00, 0x00, 0x00, 0x10, 0xEE, 0x00, 0x00, 0x00, 0x00, 0x60,
+ 0x8F, 0x00, 0x00, 0x00, 0x00, 0xD0, 0x2F, 0x00, 0x00, 0x00,
+ // Unicode: [0x007A]
+ 0xE0, 0xFF, 0xFF, 0xFF, 0x8F, 0x70, 0x88, 0x88, 0xE8, 0x5F, 0x00, 0x00, 0x00, 0xF8, 0x09, 0x00,
+ 0x00, 0x40, 0xCF, 0x00, 0x00, 0x00, 0xE2, 0x2E, 0x00, 0x00, 0x00, 0xFC, 0x04, 0x00, 0x00, 0x90,
+ 0x7F, 0x00, 0x00, 0x00, 0xF6, 0x0B, 0x00, 0x00, 0x30, 0xDF, 0x01, 0x00, 0x00, 0xD1, 0xAF, 0x88,
+ 0x88, 0x68, 0xF1, 0xFF, 0xFF, 0xFF, 0xBF,
+ // Unicode: [0x007B]
+ 0x00, 0x00, 0x10, 0xD8, 0xDF, 0x00, 0x00, 0xC0, 0x9F, 0x46, 0x00, 0x00, 0xF5, 0x08, 0x00, 0x00,
+ 0x00, 0xF7, 0x04, 0x00, 0x00, 0x00, 0xF8, 0x04, 0x00, 0x00, 0x00, 0xF8, 0x03, 0x00, 0x00, 0x00,
+ 0xFA, 0x02, 0x00, 0x00, 0x20, 0xBF, 0x00, 0x00, 0x31, 0xD6, 0x2C, 0x00, 0x00, 0xF5, 0xAF, 0x00,
+ 0x00, 0x00, 0x62, 0xF9, 0x1A, 0x00, 0x00, 0x00, 0x30, 0xAF, 0x00, 0x00, 0x00, 0x00, 0xFB, 0x01,
+ 0x00, 0x00, 0x00, 0xF8, 0x03, 0x00, 0x00, 0x00, 0xF8, 0x04, 0x00, 0x00, 0x00, 0xF7, 0x04, 0x00,
+ 0x00, 0x00, 0xF5, 0x08, 0x00, 0x00, 0x00, 0xD0, 0x8F, 0x45, 0x00, 0x00, 0x10, 0xD9, 0xDF,
+ // Unicode: [0x007C]
+ 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06,
+ 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06,
+ 0xF5, 0x06, 0xF5, 0x06, 0xF5, 0x06,
+ // Unicode: [0x007D]
+ 0xF3, 0xCE, 0x06, 0x00, 0x00, 0x51, 0xB6, 0x8F, 0x00, 0x00, 0x00, 0x00, 0xFD, 0x01, 0x00, 0x00,
+ 0x00, 0xF9, 0x03, 0x00, 0x00, 0x00, 0xF8, 0x03, 0x00, 0x00, 0x00, 0xF8, 0x04, 0x00, 0x00, 0x00,
+ 0xF6, 0x06, 0x00, 0x00, 0x00, 0xE1, 0x0C, 0x00, 0x00, 0x00, 0x40, 0xBE, 0x25, 0x00, 0x00, 0x00,
+ 0xD2, 0xFF, 0x00, 0x00, 0x30, 0xDD, 0x57, 0x00, 0x00, 0xE1, 0x1D, 0x00, 0x00, 0x00, 0xF6, 0x06,
+ 0x00, 0x00, 0x00, 0xF8, 0x04, 0x00, 0x00, 0x00, 0xF8, 0x03, 0x00, 0x00, 0x00, 0xF9, 0x03, 0x00,
+ 0x00, 0x00, 0xFC, 0x01, 0x00, 0x51, 0xB6, 0x8F, 0x00, 0x00, 0xF3, 0xCE, 0x06, 0x00, 0x00,
+ // Unicode: [0x007E]
+ 0x00, 0xD5, 0xCF, 0x04, 0x00, 0x20, 0x7F, 0x40, 0xDF, 0xD9, 0x6F, 0x00, 0x40, 0x5F, 0xA0, 0x1E,
+ 0x10, 0xFC, 0x05, 0xA0, 0x1F, 0xF0, 0x0A, 0x00, 0xD2, 0xAF, 0xFB, 0x09, 0xF2, 0x07, 0x00, 0x20,
+ 0xEA, 0x9E, 0x01
};
diff --git a/TouchGFX/generated/fonts/src/Kerning_verdana_20_4bpp.cpp b/TouchGFX/generated/fonts/src/Kerning_verdana_20_4bpp.cpp
index 0556409..eadc5e5 100644
--- a/TouchGFX/generated/fonts/src/Kerning_verdana_20_4bpp.cpp
+++ b/TouchGFX/generated/fonts/src/Kerning_verdana_20_4bpp.cpp
@@ -2,5 +2,109 @@
FONT_KERNING_LOCATION_FLASH_PRAGMA
KEEP extern const touchgfx::KerningNode kerning_verdana_20_4bpp[] FONT_KERNING_LOCATION_FLASH_ATTRIBUTE = {
- { 0, 0 }
+ { 0x004C, -1 }, // (First char = [0x004C, L], Second char = [0x0027, '], Kerning dist = -1)
+ { 0x0066, 1 }, // (First char = [0x0066, f], Second char = [0x0029, )], Kerning dist = 1)
+ { 0x002E, -1 }, // (First char = [0x002E, .], Second char = [0x002C, ,], Kerning dist = -1)
+ { 0x0046, -2 }, // (First char = [0x0046, F], Second char = [0x002C, ,], Kerning dist = -2)
+ { 0x0050, -2 }, // (First char = [0x0050, P], Second char = [0x002C, ,], Kerning dist = -2)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x002C, ,], Kerning dist = -2)
+ { 0x0056, -2 }, // (First char = [0x0056, V], Second char = [0x002C, ,], Kerning dist = -2)
+ { 0x0057, -2 }, // (First char = [0x0057, W], Second char = [0x002C, ,], Kerning dist = -2)
+ { 0x0059, -2 }, // (First char = [0x0059, Y], Second char = [0x002C, ,], Kerning dist = -2)
+ { 0x0066, -1 }, // (First char = [0x0066, f], Second char = [0x002C, ,], Kerning dist = -1)
+ { 0x0072, -2 }, // (First char = [0x0072, r], Second char = [0x002C, ,], Kerning dist = -2)
+ { 0x0076, -1 }, // (First char = [0x0076, v], Second char = [0x002C, ,], Kerning dist = -1)
+ { 0x0077, -1 }, // (First char = [0x0077, w], Second char = [0x002C, ,], Kerning dist = -1)
+ { 0x0079, -1 }, // (First char = [0x0079, y], Second char = [0x002C, ,], Kerning dist = -1)
+ { 0x002E, -1 }, // (First char = [0x002E, .], Second char = [0x002D, -], Kerning dist = -1)
+ { 0x004B, -1 }, // (First char = [0x004B, K], Second char = [0x002D, -], Kerning dist = -1)
+ { 0x004C, -1 }, // (First char = [0x004C, L], Second char = [0x002D, -], Kerning dist = -1)
+ { 0x0052, -1 }, // (First char = [0x0052, R], Second char = [0x002D, -], Kerning dist = -1)
+ { 0x0054, -1 }, // (First char = [0x0054, T], Second char = [0x002D, -], Kerning dist = -1)
+ { 0x0058, -1 }, // (First char = [0x0058, X], Second char = [0x002D, -], Kerning dist = -1)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x002D, -], Kerning dist = -1)
+ { 0x006B, -1 }, // (First char = [0x006B, k], Second char = [0x002D, -], Kerning dist = -1)
+ { 0x0046, -2 }, // (First char = [0x0046, F], Second char = [0x002E, .], Kerning dist = -2)
+ { 0x0050, -2 }, // (First char = [0x0050, P], Second char = [0x002E, .], Kerning dist = -2)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x002E, .], Kerning dist = -2)
+ { 0x0056, -2 }, // (First char = [0x0056, V], Second char = [0x002E, .], Kerning dist = -2)
+ { 0x0057, -2 }, // (First char = [0x0057, W], Second char = [0x002E, .], Kerning dist = -2)
+ { 0x0059, -2 }, // (First char = [0x0059, Y], Second char = [0x002E, .], Kerning dist = -2)
+ { 0x0066, -1 }, // (First char = [0x0066, f], Second char = [0x002E, .], Kerning dist = -1)
+ { 0x0072, -2 }, // (First char = [0x0072, r], Second char = [0x002E, .], Kerning dist = -2)
+ { 0x0076, -1 }, // (First char = [0x0076, v], Second char = [0x002E, .], Kerning dist = -1)
+ { 0x0077, -1 }, // (First char = [0x0077, w], Second char = [0x002E, .], Kerning dist = -1)
+ { 0x0079, -1 }, // (First char = [0x0079, y], Second char = [0x002E, .], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x003A, :], Kerning dist = -2)
+ { 0x0056, -1 }, // (First char = [0x0056, V], Second char = [0x003A, :], Kerning dist = -1)
+ { 0x0057, -1 }, // (First char = [0x0057, W], Second char = [0x003A, :], Kerning dist = -1)
+ { 0x0059, -2 }, // (First char = [0x0059, Y], Second char = [0x003A, :], Kerning dist = -2)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x003B, ;], Kerning dist = -2)
+ { 0x0056, -1 }, // (First char = [0x0056, V], Second char = [0x003B, ;], Kerning dist = -1)
+ { 0x0057, -1 }, // (First char = [0x0057, W], Second char = [0x003B, ;], Kerning dist = -1)
+ { 0x0059, -2 }, // (First char = [0x0059, Y], Second char = [0x003B, ;], Kerning dist = -2)
+ { 0x0066, 1 }, // (First char = [0x0066, f], Second char = [0x003F, ?], Kerning dist = 1)
+ { 0x0027, -1 }, // (First char = [0x0027, '], Second char = [0x0041, A], Kerning dist = -1)
+ { 0x0046, -1 }, // (First char = [0x0046, F], Second char = [0x0041, A], Kerning dist = -1)
+ { 0x0054, -1 }, // (First char = [0x0054, T], Second char = [0x0041, A], Kerning dist = -1)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0041, A], Kerning dist = -1)
+ { 0x002D, -1 }, // (First char = [0x002D, -], Second char = [0x004A, J], Kerning dist = -1)
+ { 0x004C, 1 }, // (First char = [0x004C, L], Second char = [0x004A, J], Kerning dist = 1)
+ { 0x002D, -1 }, // (First char = [0x002D, -], Second char = [0x0054, T], Kerning dist = -1)
+ { 0x0041, -1 }, // (First char = [0x0041, A], Second char = [0x0054, T], Kerning dist = -1)
+ { 0x004C, -1 }, // (First char = [0x004C, L], Second char = [0x0054, T], Kerning dist = -1)
+ { 0x0054, -1 }, // (First char = [0x0054, T], Second char = [0x0054, T], Kerning dist = -1)
+ { 0x0065, -1 }, // (First char = [0x0065, e], Second char = [0x0054, T], Kerning dist = -1)
+ { 0x004C, -1 }, // (First char = [0x004C, L], Second char = [0x0056, V], Kerning dist = -1)
+ { 0x004C, -1 }, // (First char = [0x004C, L], Second char = [0x0057, W], Kerning dist = -1)
+ { 0x002D, -1 }, // (First char = [0x002D, -], Second char = [0x0058, X], Kerning dist = -1)
+ { 0x002D, -1 }, // (First char = [0x002D, -], Second char = [0x0059, Y], Kerning dist = -1)
+ { 0x0041, -1 }, // (First char = [0x0041, A], Second char = [0x0059, Y], Kerning dist = -1)
+ { 0x004C, -1 }, // (First char = [0x004C, L], Second char = [0x0059, Y], Kerning dist = -1)
+ { 0x0066, 1 }, // (First char = [0x0066, f], Second char = [0x005C, \], Kerning dist = 1)
+ { 0x0066, 1 }, // (First char = [0x0066, f], Second char = [0x005D, ]], Kerning dist = 1)
+ { 0x0046, -1 }, // (First char = [0x0046, F], Second char = [0x0061, a], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x0061, a], Kerning dist = -2)
+ { 0x0056, -1 }, // (First char = [0x0056, V], Second char = [0x0061, a], Kerning dist = -1)
+ { 0x0057, -1 }, // (First char = [0x0057, W], Second char = [0x0061, a], Kerning dist = -1)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0061, a], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x0063, c], Kerning dist = -2)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0064, d], Kerning dist = -1)
+ { 0x004B, -1 }, // (First char = [0x004B, K], Second char = [0x0065, e], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x0065, e], Kerning dist = -2)
+ { 0x0056, -1 }, // (First char = [0x0056, V], Second char = [0x0065, e], Kerning dist = -1)
+ { 0x0057, -1 }, // (First char = [0x0057, W], Second char = [0x0065, e], Kerning dist = -1)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0065, e], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x0067, g], Kerning dist = -2)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0067, g], Kerning dist = -1)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x006D, m], Kerning dist = -1)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x006E, n], Kerning dist = -1)
+ { 0x004B, -1 }, // (First char = [0x004B, K], Second char = [0x006F, o], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x006F, o], Kerning dist = -2)
+ { 0x0056, -1 }, // (First char = [0x0056, V], Second char = [0x006F, o], Kerning dist = -1)
+ { 0x0057, -1 }, // (First char = [0x0057, W], Second char = [0x006F, o], Kerning dist = -1)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x006F, o], Kerning dist = -1)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0070, p], Kerning dist = -1)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0071, q], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x0072, r], Kerning dist = -2)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0072, r], Kerning dist = -1)
+ { 0x0054, -1 }, // (First char = [0x0054, T], Second char = [0x0073, s], Kerning dist = -1)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0073, s], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x0075, u], Kerning dist = -2)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0075, u], Kerning dist = -1)
+ { 0x004B, -1 }, // (First char = [0x004B, K], Second char = [0x0076, v], Kerning dist = -1)
+ { 0x004C, -1 }, // (First char = [0x004C, L], Second char = [0x0076, v], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x0076, v], Kerning dist = -2)
+ { 0x0059, -1 }, // (First char = [0x0059, Y], Second char = [0x0076, v], Kerning dist = -1)
+ { 0x004B, -1 }, // (First char = [0x004B, K], Second char = [0x0077, w], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x0077, w], Kerning dist = -2)
+ { 0x004B, -1 }, // (First char = [0x004B, K], Second char = [0x0079, y], Kerning dist = -1)
+ { 0x004C, -1 }, // (First char = [0x004C, L], Second char = [0x0079, y], Kerning dist = -1)
+ { 0x0054, -2 }, // (First char = [0x0054, T], Second char = [0x0079, y], Kerning dist = -2)
+ { 0x0056, -1 }, // (First char = [0x0056, V], Second char = [0x0079, y], Kerning dist = -1)
+ { 0x0057, -1 }, // (First char = [0x0057, W], Second char = [0x0079, y], Kerning dist = -1)
+ { 0x0058, -1 }, // (First char = [0x0058, X], Second char = [0x0079, y], Kerning dist = -1)
+ { 0x005A, -1 }, // (First char = [0x005A, Z], Second char = [0x0079, y], Kerning dist = -1)
+ { 0x0054, -1 }, // (First char = [0x0054, T], Second char = [0x007A, z], Kerning dist = -1)
+ { 0x0066, 1 }, // (First char = [0x0066, f], Second char = [0x007D, }], Kerning dist = 1)
};
diff --git a/TouchGFX/generated/fonts/src/Table_CHINN____20_4bpp.cpp b/TouchGFX/generated/fonts/src/Table_CHINN____20_4bpp.cpp
index 9a9e9ba..1bbd871 100644
--- a/TouchGFX/generated/fonts/src/Table_CHINN____20_4bpp.cpp
+++ b/TouchGFX/generated/fonts/src/Table_CHINN____20_4bpp.cpp
@@ -5,37 +5,44 @@
FONT_TABLE_LOCATION_FLASH_PRAGMA
KEEP extern const touchgfx::GlyphNode glyphs_CHINN____20_4bpp[] FONT_TABLE_LOCATION_FLASH_ATTRIBUTE = {
{ 0, 0x0020, 0, 0, 0, 0, 5, 0, 0, 0x00 }, // space
- { 0, 0x003F, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // question
- { 130, 0x0041, 20, 13, 13, -1, 18, 0, 0, 0x00 }, // A
- { 260, 0x0042, 20, 13, 13, 0, 21, 0, 0, 0x00 }, // B
- { 390, 0x0044, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // D
- { 520, 0x0045, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // E
- { 650, 0x0046, 20, 13, 13, 0, 19, 0, 0, 0x00 }, // F
- { 780, 0x0049, 4, 13, 13, 0, 5, 0, 0, 0x00 }, // I
- { 806, 0x004C, 20, 13, 13, 0, 19, 0, 0, 0x00 }, // L
- { 936, 0x004D, 21, 13, 13, 0, 21, 0, 0, 0x00 }, // M
- { 1079, 0x004E, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // N
- { 1209, 0x0050, 21, 13, 13, 0, 20, 0, 0, 0x00 }, // P
- { 1352, 0x0052, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // R
- { 1482, 0x0053, 22, 13, 13, 0, 22, 0, 0, 0x00 }, // S
- { 1625, 0x0054, 20, 13, 13, -1, 19, 0, 0, 0x00 }, // T
- { 1755, 0x0056, 20, 13, 13, -1, 18, 0, 0, 0x00 }, // V
- { 1885, 0x0061, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // a
- { 2015, 0x0063, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // c
- { 2145, 0x0064, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // d
- { 2275, 0x0065, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // e
- { 2405, 0x0067, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // g
- { 2535, 0x0069, 4, 13, 13, 0, 5, 0, 0, 0x00 }, // i
- { 2561, 0x006B, 20, 13, 13, 0, 19, 0, 0, 0x00 }, // k
- { 2691, 0x006C, 15, 13, 13, 0, 14, 0, 0, 0x00 }, // l
- { 2795, 0x006E, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // n
- { 2925, 0x006F, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // o
- { 3055, 0x0070, 20, 13, 13, 0, 19, 0, 0, 0x00 }, // p
- { 3185, 0x0072, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // r
- { 3315, 0x0073, 22, 13, 13, 0, 22, 0, 0, 0x00 }, // s
- { 3458, 0x0074, 20, 13, 13, -1, 19, 0, 0, 0x00 }, // t
- { 3588, 0x0075, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // u
- { 3718, 0x0076, 20, 13, 13, -1, 18, 0, 0, 0x00 } // v
+ { 0, 0x0032, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // two
+ { 130, 0x003F, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // question
+ { 260, 0x0041, 20, 13, 13, -1, 18, 0, 0, 0x00 }, // A
+ { 390, 0x0042, 20, 13, 13, 0, 21, 0, 0, 0x00 }, // B
+ { 520, 0x0043, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // C
+ { 650, 0x0044, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // D
+ { 780, 0x0045, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // E
+ { 910, 0x0046, 20, 13, 13, 0, 19, 0, 0, 0x00 }, // F
+ { 1040, 0x0047, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // G
+ { 1170, 0x0048, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // H
+ { 1300, 0x0049, 4, 13, 13, 0, 5, 0, 0, 0x00 }, // I
+ { 1326, 0x004C, 20, 13, 13, 0, 19, 0, 0, 0x00 }, // L
+ { 1456, 0x004D, 21, 13, 13, 0, 21, 0, 0, 0x00 }, // M
+ { 1599, 0x004E, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // N
+ { 1729, 0x004F, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // O
+ { 1859, 0x0050, 21, 13, 13, 0, 20, 0, 0, 0x00 }, // P
+ { 2002, 0x0052, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // R
+ { 2132, 0x0053, 22, 13, 13, 0, 22, 0, 0, 0x00 }, // S
+ { 2275, 0x0054, 20, 13, 13, -1, 19, 0, 0, 0x00 }, // T
+ { 2405, 0x0056, 20, 13, 13, -1, 18, 0, 0, 0x00 }, // V
+ { 2535, 0x0058, 19, 13, 13, 0, 19, 0, 0, 0x00 }, // X
+ { 2665, 0x0059, 19, 13, 13, -1, 18, 0, 0, 0x00 }, // Y
+ { 2795, 0x0061, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // a
+ { 2925, 0x0063, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // c
+ { 3055, 0x0064, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // d
+ { 3185, 0x0065, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // e
+ { 3315, 0x0067, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // g
+ { 3445, 0x0069, 4, 13, 13, 0, 5, 0, 0, 0x00 }, // i
+ { 3471, 0x006B, 20, 13, 13, 0, 19, 0, 0, 0x00 }, // k
+ { 3601, 0x006C, 15, 13, 13, 0, 14, 0, 0, 0x00 }, // l
+ { 3705, 0x006E, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // n
+ { 3835, 0x006F, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // o
+ { 3965, 0x0070, 20, 13, 13, 0, 19, 0, 0, 0x00 }, // p
+ { 4095, 0x0072, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // r
+ { 4225, 0x0073, 22, 13, 13, 0, 22, 0, 0, 0x00 }, // s
+ { 4368, 0x0074, 20, 13, 13, -1, 19, 0, 0, 0x00 }, // t
+ { 4498, 0x0075, 20, 13, 13, 0, 20, 0, 0, 0x00 }, // u
+ { 4628, 0x0076, 20, 13, 13, -1, 18, 0, 0, 0x00 } // v
};
// CHINN____20_4bpp
@@ -53,6 +60,6 @@ touchgfx::GeneratedFont& getFont_CHINN____20_4bpp();
touchgfx::GeneratedFont& getFont_CHINN____20_4bpp()
{
- static touchgfx::GeneratedFont CHINN____20_4bpp(glyphs_CHINN____20_4bpp, 32, 20, 20, 0, 0, 4, 1, 1, 1, unicodes_CHINN____20_4bpp, kerning_CHINN____20_4bpp, 63, 0, 0, 0);
+ static touchgfx::GeneratedFont CHINN____20_4bpp(glyphs_CHINN____20_4bpp, 39, 20, 20, 0, 0, 4, 1, 1, 1, unicodes_CHINN____20_4bpp, kerning_CHINN____20_4bpp, 63, 0, 0, 0);
return CHINN____20_4bpp;
}
diff --git a/TouchGFX/generated/fonts/src/Table_verdana_20_4bpp.cpp b/TouchGFX/generated/fonts/src/Table_verdana_20_4bpp.cpp
index 142ae91..9d6ecb5 100644
--- a/TouchGFX/generated/fonts/src/Table_verdana_20_4bpp.cpp
+++ b/TouchGFX/generated/fonts/src/Table_verdana_20_4bpp.cpp
@@ -4,7 +4,101 @@
FONT_TABLE_LOCATION_FLASH_PRAGMA
KEEP extern const touchgfx::GlyphNode glyphs_verdana_20_4bpp[] FONT_TABLE_LOCATION_FLASH_ATTRIBUTE = {
- { 0, 0x003F, 9, 14, 14, 1, 11, 0, 0, 0x00 }
+ { 0, 0x0020, 0, 0, 0, 0, 7, 0, 0, 0x00 },
+ { 0, 0x0021, 3, 14, 14, 2, 8, 0, 0, 0x00 },
+ { 28, 0x0022, 7, 6, 15, 1, 9, 0, 0, 0x00 },
+ { 52, 0x0023, 14, 14, 14, 1, 16, 0, 0, 0x00 },
+ { 150, 0x0024, 11, 19, 15, 1, 13, 0, 0, 0x00 },
+ { 264, 0x0025, 19, 14, 14, 1, 22, 0, 0, 0x00 },
+ { 404, 0x0026, 14, 14, 14, 1, 15, 0, 0, 0x00 },
+ { 502, 0x0027, 3, 6, 15, 1, 5, 0, 1, 0x00 },
+ { 514, 0x0028, 7, 19, 15, 1, 9, 0, 0, 0x00 },
+ { 590, 0x0029, 7, 19, 15, 1, 9, 1, 1, 0x00 },
+ { 666, 0x002A, 10, 9, 15, 1, 13, 0, 0, 0x00 },
+ { 711, 0x002B, 13, 12, 12, 2, 16, 0, 0, 0x00 },
+ { 795, 0x002C, 5, 7, 3, 1, 7, 2, 12, 0x00 },
+ { 816, 0x002D, 7, 2, 7, 1, 9, 14, 8, 0x00 },
+ { 824, 0x002E, 3, 3, 3, 2, 7, 22, 11, 0x00 },
+ { 830, 0x002F, 10, 18, 15, -1, 9, 0, 0, 0x00 },
+ { 920, 0x0030, 11, 14, 14, 1, 13, 0, 0, 0x00 },
+ { 1004, 0x0031, 9, 14, 14, 2, 13, 0, 0, 0x00 },
+ { 1074, 0x0032, 11, 14, 14, 1, 13, 0, 0, 0x00 },
+ { 1158, 0x0033, 11, 14, 14, 1, 13, 0, 0, 0x00 },
+ { 1242, 0x0034, 12, 14, 14, 0, 13, 0, 0, 0x00 },
+ { 1326, 0x0035, 11, 14, 14, 1, 13, 0, 0, 0x00 },
+ { 1410, 0x0036, 11, 14, 14, 1, 13, 0, 0, 0x00 },
+ { 1494, 0x0037, 11, 14, 14, 1, 13, 0, 0, 0x00 },
+ { 1578, 0x0038, 11, 14, 14, 1, 13, 0, 0, 0x00 },
+ { 1662, 0x0039, 11, 14, 14, 1, 13, 0, 0, 0x00 },
+ { 1746, 0x003A, 3, 11, 11, 3, 9, 33, 4, 0x00 },
+ { 1768, 0x003B, 5, 15, 11, 2, 9, 37, 4, 0x00 },
+ { 1813, 0x003C, 12, 12, 12, 2, 16, 0, 0, 0x00 },
+ { 1885, 0x003D, 12, 6, 9, 2, 16, 0, 0, 0x00 },
+ { 1921, 0x003E, 12, 12, 12, 2, 16, 0, 0, 0x00 },
+ { 1993, 0x003F, 9, 14, 14, 1, 11, 41, 1, 0x00 },
+ { 2063, 0x0040, 18, 17, 14, 1, 20, 0, 0, 0x00 },
+ { 2216, 0x0041, 14, 14, 14, 0, 14, 42, 4, 0x00 },
+ { 2314, 0x0042, 12, 14, 14, 1, 14, 0, 0, 0x00 },
+ { 2398, 0x0043, 13, 14, 14, 1, 14, 0, 0, 0x00 },
+ { 2496, 0x0044, 14, 14, 14, 1, 15, 0, 0, 0x00 },
+ { 2594, 0x0045, 11, 14, 14, 1, 13, 0, 0, 0x00 },
+ { 2678, 0x0046, 11, 14, 14, 1, 12, 0, 0, 0x00 },
+ { 2762, 0x0047, 14, 14, 14, 1, 16, 0, 0, 0x00 },
+ { 2860, 0x0048, 13, 14, 14, 1, 15, 0, 0, 0x00 },
+ { 2958, 0x0049, 7, 14, 14, 1, 8, 0, 0, 0x00 },
+ { 3014, 0x004A, 8, 14, 14, 0, 9, 46, 2, 0x00 },
+ { 3070, 0x004B, 12, 14, 14, 2, 14, 0, 0, 0x00 },
+ { 3154, 0x004C, 11, 14, 14, 1, 11, 0, 0, 0x00 },
+ { 3238, 0x004D, 14, 14, 14, 1, 17, 0, 0, 0x00 },
+ { 3336, 0x004E, 13, 14, 14, 1, 15, 0, 0, 0x00 },
+ { 3434, 0x004F, 14, 14, 14, 1, 16, 0, 0, 0x00 },
+ { 3532, 0x0050, 11, 14, 14, 1, 12, 0, 0, 0x00 },
+ { 3616, 0x0051, 14, 18, 14, 1, 16, 0, 0, 0x00 },
+ { 3742, 0x0052, 13, 14, 14, 1, 14, 0, 0, 0x00 },
+ { 3840, 0x0053, 12, 14, 14, 1, 14, 0, 0, 0x00 },
+ { 3924, 0x0054, 13, 14, 14, 0, 12, 48, 5, 0x00 },
+ { 4022, 0x0055, 12, 14, 14, 1, 15, 0, 0, 0x00 },
+ { 4106, 0x0056, 14, 14, 14, 0, 14, 53, 1, 0x00 },
+ { 4204, 0x0057, 18, 14, 14, 1, 20, 54, 1, 0x00 },
+ { 4330, 0x0058, 13, 14, 14, 0, 14, 55, 1, 0x00 },
+ { 4428, 0x0059, 13, 14, 14, 0, 12, 56, 3, 0x00 },
+ { 4526, 0x005A, 12, 14, 14, 1, 14, 0, 0, 0x00 },
+ { 4610, 0x005B, 6, 19, 15, 2, 9, 0, 0, 0x00 },
+ { 4667, 0x005C, 10, 18, 15, 0, 9, 59, 1, 0x00 },
+ { 4757, 0x005D, 6, 19, 15, 1, 9, 60, 1, 0x00 },
+ { 4814, 0x005E, 13, 8, 15, 2, 16, 0, 0, 0x00 },
+ { 4870, 0x005F, 14, 2, 254, -1, 13, 0, 0, 0x60 },
+ { 4884, 0x0060, 5, 4, 16, 3, 13, 0, 0, 0x00 },
+ { 4896, 0x0061, 10, 11, 11, 1, 12, 61, 5, 0x00 },
+ { 4951, 0x0062, 11, 15, 15, 1, 12, 0, 0, 0x00 },
+ { 5041, 0x0063, 9, 11, 11, 1, 10, 66, 1, 0x00 },
+ { 5096, 0x0064, 10, 15, 15, 1, 12, 67, 1, 0x00 },
+ { 5171, 0x0065, 10, 11, 11, 1, 12, 68, 5, 0x00 },
+ { 5226, 0x0066, 8, 15, 15, 0, 7, 0, 0, 0x00 },
+ { 5286, 0x0067, 10, 15, 11, 1, 12, 73, 2, 0x00 },
+ { 5361, 0x0068, 10, 15, 15, 1, 13, 0, 0, 0x00 },
+ { 5436, 0x0069, 3, 14, 14, 1, 5, 0, 0, 0x00 },
+ { 5464, 0x006A, 7, 18, 14, -1, 7, 0, 0, 0x00 },
+ { 5536, 0x006B, 11, 15, 15, 1, 12, 0, 0, 0x00 },
+ { 5626, 0x006C, 3, 15, 15, 1, 5, 0, 0, 0x00 },
+ { 5656, 0x006D, 17, 11, 11, 1, 19, 75, 1, 0x00 },
+ { 5755, 0x006E, 10, 11, 11, 1, 13, 76, 1, 0x00 },
+ { 5810, 0x006F, 11, 11, 11, 1, 12, 77, 5, 0x00 },
+ { 5876, 0x0070, 11, 15, 11, 1, 12, 82, 1, 0x00 },
+ { 5966, 0x0071, 10, 15, 11, 1, 12, 83, 1, 0x00 },
+ { 6041, 0x0072, 8, 11, 11, 1, 9, 84, 2, 0x00 },
+ { 6085, 0x0073, 9, 11, 11, 1, 10, 86, 2, 0x00 },
+ { 6140, 0x0074, 8, 14, 14, 0, 8, 0, 0, 0x00 },
+ { 6196, 0x0075, 10, 11, 11, 1, 13, 88, 2, 0x00 },
+ { 6251, 0x0076, 12, 11, 11, 0, 12, 90, 4, 0x00 },
+ { 6317, 0x0077, 16, 11, 11, 0, 16, 94, 2, 0x00 },
+ { 6405, 0x0078, 12, 11, 11, 0, 12, 0, 0, 0x00 },
+ { 6471, 0x0079, 12, 15, 11, 0, 12, 96, 7, 0x00 },
+ { 6561, 0x007A, 10, 11, 11, 0, 11, 103, 1, 0x00 },
+ { 6616, 0x007B, 10, 19, 15, 1, 13, 0, 0, 0x00 },
+ { 6711, 0x007C, 3, 19, 15, 3, 9, 0, 0, 0x00 },
+ { 6749, 0x007D, 10, 19, 15, 1, 13, 104, 1, 0x00 },
+ { 6844, 0x007E, 14, 5, 9, 1, 16, 0, 0, 0x00 }
};
// verdana_20_4bpp
@@ -22,6 +116,6 @@ touchgfx::GeneratedFont& getFont_verdana_20_4bpp();
touchgfx::GeneratedFont& getFont_verdana_20_4bpp()
{
- static touchgfx::GeneratedFont verdana_20_4bpp(glyphs_verdana_20_4bpp, 1, 20, 20, 0, 0, 4, 1, 0, 0, unicodes_verdana_20_4bpp, kerning_verdana_20_4bpp, 63, 0, 0, 0);
+ static touchgfx::GeneratedFont verdana_20_4bpp(glyphs_verdana_20_4bpp, 95, 24, 20, 0, 0, 4, 1, 1, 1, unicodes_verdana_20_4bpp, kerning_verdana_20_4bpp, 63, 0, 0, 0);
return verdana_20_4bpp;
}
diff --git a/TouchGFX/generated/gui_generated/src/containers/DriverViewFieldBase.cpp b/TouchGFX/generated/gui_generated/src/containers/DriverViewFieldBase.cpp
index f83faaa..b9b226c 100644
--- a/TouchGFX/generated/gui_generated/src/containers/DriverViewFieldBase.cpp
+++ b/TouchGFX/generated/gui_generated/src/containers/DriverViewFieldBase.cpp
@@ -24,7 +24,7 @@ DriverViewFieldBase::DriverViewFieldBase()
value.setPosition(0, 20, 160, 57);
value.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
value.setLinespacing(0);
- value.setTypedText(touchgfx::TypedText(T___SINGLEUSE_K26P));
+ value.setTypedText(touchgfx::TypedText(T_NUMBERWILDCARD));
add(value);
}
diff --git a/TouchGFX/generated/texts/cache/LanguageCpp_Gb.cache b/TouchGFX/generated/texts/cache/LanguageCpp_Gb.cache
index 7408108..8fa622c 100644
--- a/TouchGFX/generated/texts/cache/LanguageCpp_Gb.cache
+++ b/TouchGFX/generated/texts/cache/LanguageCpp_Gb.cache
@@ -1 +1 @@
-{"remap":"yes","language":"GB","language_index":0,"indices":[["169","T_FIELD_TSCURRENT"],["164","T_FIELD_MINCELLVOLT"],["152","T_FIELD_SPEED"],["95","T_INSPECTION_HUGE"],["127","T_EBS_HUGE"],["106","T_TRACKDRIVE_HUGE"],["117","T_AUTOX_HUGE"],["138","T_SKIDPAD_HUGE"],["82","T_ACCEL_HUGE"],["34","T_INVALID_HUGE"],["67","T_MANUAL"],["95","T_INSPECTION"],["127","T_EBS"],["106","T_TRACKDRIVE"],["117","T_AUTOX"],["138","T_SKIDPAD"],["82","T_ACCEL"],["136","T___SINGLEUSE_K26P"],["146","T___SINGLEUSE_0FBJ"],["173","T___SINGLEUSE_4OBM"],["170","T___SINGLEUSE_PHFD"],["158","T___SINGLEUSE_H6UX"],["136","T___SINGLEUSE_20H3"],["17","T___SINGLEUSE_SDGP"],["51","T___SINGLEUSE_M5X7"],["0","T___SINGLEUSE_6GPV"]]}
\ No newline at end of file
+{"remap":"yes","language":"GB","language_index":0,"indices":[["252","T_FIELD_BBAL"],["209","T_FIELD_TSVOLTVEH"],["202","T_FIELD_TSVOLTBAT"],["228","T_FIELD_LVSOC"],["246","T_FIELD_TSSOC"],["262","T_FIELD_MAXCELLTEMP"],["267","T_FIELD_TIREFL"],["272","T_FIELD_TIREFR"],["277","T_FIELD_TIRERL"],["282","T_FIELD_TIRERR"],["257","T_FIELD_LAPCOUNT"],["146","T_FIELD_INICHKSTATE"],["216","T_FIELD_ERR"],["296","T_FIELD_SDC"],["162","T_FIELD_INVRREADY"],["154","T_FIELD_INVLREADY"],["178","T_FIELD_R2DPROGRESS"],["170","T_FIELD_ACTIVEMISSION"],["138","T_FIELD_ASSTATE"],["194","T_FIELD_TSSTATE"],["136","T_NUMBERWILDCARD"],["136","T_DEFAULTWILDCARD"],["292","T_FIELD_TSCURRENT"],["287","T_FIELD_MINCELLVOLT"],["234","T_FIELD_SPEED"],["95","T_INSPECTION_HUGE"],["127","T_EBS_HUGE"],["106","T_TRACKDRIVE_HUGE"],["117","T_AUTOX_HUGE"],["186","T_SKIDPAD_HUGE"],["82","T_ACCEL_HUGE"],["34","T_INVALID_HUGE"],["67","T_MANUAL"],["95","T_INSPECTION"],["127","T_EBS"],["106","T_TRACKDRIVE"],["117","T_AUTOX"],["186","T_SKIDPAD"],["82","T_ACCEL"],["222","T___SINGLEUSE_0FBJ"],["300","T___SINGLEUSE_4OBM"],["293","T___SINGLEUSE_PHFD"],["240","T___SINGLEUSE_H6UX"],["136","T___SINGLEUSE_20H3"],["17","T___SINGLEUSE_SDGP"],["51","T___SINGLEUSE_M5X7"],["0","T___SINGLEUSE_6GPV"]]}
\ No newline at end of file
diff --git a/TouchGFX/generated/texts/cache/TextKeysAndLanguages.cache b/TouchGFX/generated/texts/cache/TextKeysAndLanguages.cache
index 3029629..e8251ef 100644
--- a/TouchGFX/generated/texts/cache/TextKeysAndLanguages.cache
+++ b/TouchGFX/generated/texts/cache/TextKeysAndLanguages.cache
@@ -1 +1 @@
-{"languages":["GB"],"textids":["T_FIELD_TSCURRENT","T_FIELD_MINCELLVOLT","T_FIELD_SPEED","T_INSPECTION_HUGE","T_EBS_HUGE","T_TRACKDRIVE_HUGE","T_AUTOX_HUGE","T_SKIDPAD_HUGE","T_ACCEL_HUGE","T_INVALID_HUGE","T_MANUAL","T_INSPECTION","T_EBS","T_TRACKDRIVE","T_AUTOX","T_SKIDPAD","T_ACCEL","T___SINGLEUSE_K26P","T___SINGLEUSE_0FBJ","T___SINGLEUSE_4OBM","T___SINGLEUSE_PHFD","T___SINGLEUSE_H6UX","T___SINGLEUSE_20H3","T___SINGLEUSE_SDGP","T___SINGLEUSE_M5X7","T___SINGLEUSE_6GPV"]}
\ No newline at end of file
+{"languages":["GB"],"textids":["T_FIELD_BBAL","T_FIELD_TSVOLTVEH","T_FIELD_TSVOLTBAT","T_FIELD_LVSOC","T_FIELD_TSSOC","T_FIELD_MAXCELLTEMP","T_FIELD_TIREFL","T_FIELD_TIREFR","T_FIELD_TIRERL","T_FIELD_TIRERR","T_FIELD_LAPCOUNT","T_FIELD_INICHKSTATE","T_FIELD_ERR","T_FIELD_SDC","T_FIELD_INVRREADY","T_FIELD_INVLREADY","T_FIELD_R2DPROGRESS","T_FIELD_ACTIVEMISSION","T_FIELD_ASSTATE","T_FIELD_TSSTATE","T_NUMBERWILDCARD","T_DEFAULTWILDCARD","T_FIELD_TSCURRENT","T_FIELD_MINCELLVOLT","T_FIELD_SPEED","T_INSPECTION_HUGE","T_EBS_HUGE","T_TRACKDRIVE_HUGE","T_AUTOX_HUGE","T_SKIDPAD_HUGE","T_ACCEL_HUGE","T_INVALID_HUGE","T_MANUAL","T_INSPECTION","T_EBS","T_TRACKDRIVE","T_AUTOX","T_SKIDPAD","T_ACCEL","T___SINGLEUSE_0FBJ","T___SINGLEUSE_4OBM","T___SINGLEUSE_PHFD","T___SINGLEUSE_H6UX","T___SINGLEUSE_20H3","T___SINGLEUSE_SDGP","T___SINGLEUSE_M5X7","T___SINGLEUSE_6GPV"]}
\ No newline at end of file
diff --git a/TouchGFX/generated/texts/cache/TextsCpp.cache b/TouchGFX/generated/texts/cache/TextsCpp.cache
index 774f7ce..21c236a 100644
--- a/TouchGFX/generated/texts/cache/TextsCpp.cache
+++ b/TouchGFX/generated/texts/cache/TextsCpp.cache
@@ -1 +1 @@
-{"remap":"yes","languages":["Gb"],"characters":[67,104,111,111,115,101,32,97,32,109,105,115,115,105,111,110,0,67,117,114,114,101,110,116,32,77,105,115,115,105,111,110,58,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,33,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,0,77,97,110,117,97,108,32,68,114,105,118,105,110,103,0,65,99,99,101,108,101,114,97,116,105,111,110,0,73,110,115,112,101,99,116,105,111,110,0,84,114,97,99,107,100,114,105,118,101,0,65,117,116,111,99,114,111,115,115,0,69,66,83,32,84,101,115,116,0,2,0,83,107,105,100,112,97,100,0,70,73,69,76,68,0,83,80,69,69,68,0,84,73,82,69,83,0,86,77,73,78,0,73,84,83,0,76,86,0]}
\ No newline at end of file
+{"remap":"yes","languages":["Gb"],"characters":[67,104,111,111,115,101,32,97,32,109,105,115,115,105,111,110,0,67,117,114,114,101,110,116,32,77,105,115,115,105,111,110,58,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,33,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,0,77,97,110,117,97,108,32,68,114,105,118,105,110,103,0,65,99,99,101,108,101,114,97,116,105,111,110,0,73,110,115,112,101,99,116,105,111,110,0,84,114,97,99,107,100,114,105,118,101,0,65,117,116,111,99,114,111,115,115,0,69,66,83,32,84,101,115,116,0,2,0,65,83,83,84,65,84,69,0,73,67,83,84,65,84,69,0,73,78,86,76,82,68,89,0,73,78,86,82,82,68,89,0,77,73,83,83,73,79,78,0,82,50,68,80,82,79,71,0,83,107,105,100,112,97,100,0,84,83,83,84,65,84,69,0,84,83,86,66,65,84,0,84,83,86,86,69,72,0,69,82,82,79,82,0,70,73,69,76,68,0,76,86,83,79,67,0,83,80,69,69,68,0,84,73,82,69,83,0,84,83,83,79,67,0,66,66,65,76,0,76,65,80,83,0,84,77,65,88,0,84,84,70,76,0,84,84,70,82,0,84,84,82,76,0,84,84,82,82,0,86,77,73,78,0,73,84,83,0,83,68,67,0,76,86,0]}
\ No newline at end of file
diff --git a/TouchGFX/generated/texts/cache/TypedTextDatabaseCpp.cache b/TouchGFX/generated/texts/cache/TypedTextDatabaseCpp.cache
index 282a296..1a32109 100644
--- a/TouchGFX/generated/texts/cache/TypedTextDatabaseCpp.cache
+++ b/TouchGFX/generated/texts/cache/TypedTextDatabaseCpp.cache
@@ -1 +1 @@
-{"databases":{"DEFAULT":[[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[1,"LEFT","LTR"]]},"database_list":["DEFAULT"],"fonts":{"getFont_verdana_20_4bpp":0,"getFont_CHINN____30_4bpp":1,"getFont_CHINN____20_4bpp":2,"getFont_CHINN____40_4bpp":3,"getFont_lucon_TTF_50_4bpp":4},"generate_font_format":"0"}
\ No newline at end of file
+{"databases":{"DEFAULT":[[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[0,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[1,"LEFT","LTR"]]},"database_list":["DEFAULT"],"fonts":{"getFont_verdana_20_4bpp":0,"getFont_CHINN____30_4bpp":1,"getFont_CHINN____20_4bpp":2,"getFont_CHINN____40_4bpp":3,"getFont_lucon_TTF_50_4bpp":4},"generate_font_format":"0"}
\ No newline at end of file
diff --git a/TouchGFX/generated/texts/include/texts/TextKeysAndLanguages.hpp b/TouchGFX/generated/texts/include/texts/TextKeysAndLanguages.hpp
index 040bf99..9532398 100644
--- a/TouchGFX/generated/texts/include/texts/TextKeysAndLanguages.hpp
+++ b/TouchGFX/generated/texts/include/texts/TextKeysAndLanguages.hpp
@@ -12,6 +12,28 @@ enum LANGUAGES
enum TEXTS
{
+ T_FIELD_BBAL,
+ T_FIELD_TSVOLTVEH,
+ T_FIELD_TSVOLTBAT,
+ T_FIELD_LVSOC,
+ T_FIELD_TSSOC,
+ T_FIELD_MAXCELLTEMP,
+ T_FIELD_TIREFL,
+ T_FIELD_TIREFR,
+ T_FIELD_TIRERL,
+ T_FIELD_TIRERR,
+ T_FIELD_LAPCOUNT,
+ T_FIELD_INICHKSTATE,
+ T_FIELD_ERR,
+ T_FIELD_SDC,
+ T_FIELD_INVRREADY,
+ T_FIELD_INVLREADY,
+ T_FIELD_R2DPROGRESS,
+ T_FIELD_ACTIVEMISSION,
+ T_FIELD_ASSTATE,
+ T_FIELD_TSSTATE,
+ T_NUMBERWILDCARD,
+ T_DEFAULTWILDCARD,
T_FIELD_TSCURRENT,
T_FIELD_MINCELLVOLT,
T_FIELD_SPEED,
@@ -29,7 +51,6 @@ enum TEXTS
T_AUTOX,
T_SKIDPAD,
T_ACCEL,
- T___SINGLEUSE_K26P,
T___SINGLEUSE_0FBJ,
T___SINGLEUSE_4OBM,
T___SINGLEUSE_PHFD,
diff --git a/TouchGFX/generated/texts/src/LanguageGb.cpp b/TouchGFX/generated/texts/src/LanguageGb.cpp
index 28173f8..f9f510e 100644
--- a/TouchGFX/generated/texts/src/LanguageGb.cpp
+++ b/TouchGFX/generated/texts/src/LanguageGb.cpp
@@ -10,14 +10,36 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE;
// Remap all strings
TEXT_LOCATION_FLASH_PRAGMA
KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
- 169, // T_FIELD_TSCURRENT: "ITS"
- 164, // T_FIELD_MINCELLVOLT: "VMIN"
- 152, // T_FIELD_SPEED: "SPEED"
+ 252, // T_FIELD_BBAL: "BBAL"
+ 209, // T_FIELD_TSVOLTVEH: "TSVVEH"
+ 202, // T_FIELD_TSVOLTBAT: "TSVBAT"
+ 228, // T_FIELD_LVSOC: "LVSOC"
+ 246, // T_FIELD_TSSOC: "TSSOC"
+ 262, // T_FIELD_MAXCELLTEMP: "TMAX"
+ 267, // T_FIELD_TIREFL: "TTFL"
+ 272, // T_FIELD_TIREFR: "TTFR"
+ 277, // T_FIELD_TIRERL: "TTRL"
+ 282, // T_FIELD_TIRERR: "TTRR"
+ 257, // T_FIELD_LAPCOUNT: "LAPS"
+ 146, // T_FIELD_INICHKSTATE: "ICSTATE"
+ 216, // T_FIELD_ERR: "ERROR"
+ 296, // T_FIELD_SDC: "SDC"
+ 162, // T_FIELD_INVRREADY: "INVRRDY"
+ 154, // T_FIELD_INVLREADY: "INVLRDY"
+ 178, // T_FIELD_R2DPROGRESS: "R2DPROG"
+ 170, // T_FIELD_ACTIVEMISSION: "MISSION"
+ 138, // T_FIELD_ASSTATE: "ASSTATE"
+ 194, // T_FIELD_TSSTATE: "TSSTATE"
+ 136, // T_NUMBERWILDCARD: "<>"
+ 136, // T_DEFAULTWILDCARD: "<>"
+ 292, // T_FIELD_TSCURRENT: "ITS"
+ 287, // T_FIELD_MINCELLVOLT: "VMIN"
+ 234, // T_FIELD_SPEED: "SPEED"
95, // T_INSPECTION_HUGE: "Inspection"
127, // T_EBS_HUGE: "EBS Test"
106, // T_TRACKDRIVE_HUGE: "Trackdrive"
117, // T_AUTOX_HUGE: "Autocross"
- 138, // T_SKIDPAD_HUGE: "Skidpad"
+ 186, // T_SKIDPAD_HUGE: "Skidpad"
82, // T_ACCEL_HUGE: "Acceleration"
34, // T_INVALID_HUGE: "Invalid Mission!"
67, // T_MANUAL: "Manual Driving"
@@ -25,13 +47,12 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
127, // T_EBS: "EBS Test"
106, // T_TRACKDRIVE: "Trackdrive"
117, // T_AUTOX: "Autocross"
- 138, // T_SKIDPAD: "Skidpad"
+ 186, // T_SKIDPAD: "Skidpad"
82, // T_ACCEL: "Acceleration"
- 136, // T___SINGLEUSE_K26P: "<>"
- 146, // T___SINGLEUSE_0FBJ: "FIELD"
- 173, // T___SINGLEUSE_4OBM: "LV"
- 170, // T___SINGLEUSE_PHFD: "TS"
- 158, // T___SINGLEUSE_H6UX: "TIRES"
+ 222, // T___SINGLEUSE_0FBJ: "FIELD"
+ 300, // T___SINGLEUSE_4OBM: "LV"
+ 293, // T___SINGLEUSE_PHFD: "TS"
+ 240, // T___SINGLEUSE_H6UX: "TIRES"
136, // T___SINGLEUSE_20H3: "<>"
17, // T___SINGLEUSE_SDGP: "Current Mission:"
51, // T___SINGLEUSE_M5X7: "Invalid Mission"
diff --git a/TouchGFX/generated/texts/src/Texts.cpp b/TouchGFX/generated/texts/src/Texts.cpp
index 316c6e6..5cf2c0a 100644
--- a/TouchGFX/generated/texts/src/Texts.cpp
+++ b/TouchGFX/generated/texts/src/Texts.cpp
@@ -71,13 +71,33 @@ KEEP extern const touchgfx::Unicode::UnicodeChar texts_all_languages[] TEXT_LOCA
0x41, 0x75, 0x74, 0x6f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x0, // @117 "Autocross"
0x45, 0x42, 0x53, 0x20, 0x54, 0x65, 0x73, 0x74, 0x0, // @127 "EBS Test"
0x2, 0x0, // @136 "<>"
- 0x53, 0x6b, 0x69, 0x64, 0x70, 0x61, 0x64, 0x0, // @138 "Skidpad"
- 0x46, 0x49, 0x45, 0x4c, 0x44, 0x0, // @146 "FIELD"
- 0x53, 0x50, 0x45, 0x45, 0x44, 0x0, // @152 "SPEED"
- 0x54, 0x49, 0x52, 0x45, 0x53, 0x0, // @158 "TIRES"
- 0x56, 0x4d, 0x49, 0x4e, 0x0, // @164 "VMIN"
- 0x49, 0x54, 0x53, 0x0, // @169 "ITS"
- 0x4c, 0x56, 0x0 // @173 "LV"
+ 0x41, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x0, // @138 "ASSTATE"
+ 0x49, 0x43, 0x53, 0x54, 0x41, 0x54, 0x45, 0x0, // @146 "ICSTATE"
+ 0x49, 0x4e, 0x56, 0x4c, 0x52, 0x44, 0x59, 0x0, // @154 "INVLRDY"
+ 0x49, 0x4e, 0x56, 0x52, 0x52, 0x44, 0x59, 0x0, // @162 "INVRRDY"
+ 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x0, // @170 "MISSION"
+ 0x52, 0x32, 0x44, 0x50, 0x52, 0x4f, 0x47, 0x0, // @178 "R2DPROG"
+ 0x53, 0x6b, 0x69, 0x64, 0x70, 0x61, 0x64, 0x0, // @186 "Skidpad"
+ 0x54, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x0, // @194 "TSSTATE"
+ 0x54, 0x53, 0x56, 0x42, 0x41, 0x54, 0x0, // @202 "TSVBAT"
+ 0x54, 0x53, 0x56, 0x56, 0x45, 0x48, 0x0, // @209 "TSVVEH"
+ 0x45, 0x52, 0x52, 0x4f, 0x52, 0x0, // @216 "ERROR"
+ 0x46, 0x49, 0x45, 0x4c, 0x44, 0x0, // @222 "FIELD"
+ 0x4c, 0x56, 0x53, 0x4f, 0x43, 0x0, // @228 "LVSOC"
+ 0x53, 0x50, 0x45, 0x45, 0x44, 0x0, // @234 "SPEED"
+ 0x54, 0x49, 0x52, 0x45, 0x53, 0x0, // @240 "TIRES"
+ 0x54, 0x53, 0x53, 0x4f, 0x43, 0x0, // @246 "TSSOC"
+ 0x42, 0x42, 0x41, 0x4c, 0x0, // @252 "BBAL"
+ 0x4c, 0x41, 0x50, 0x53, 0x0, // @257 "LAPS"
+ 0x54, 0x4d, 0x41, 0x58, 0x0, // @262 "TMAX"
+ 0x54, 0x54, 0x46, 0x4c, 0x0, // @267 "TTFL"
+ 0x54, 0x54, 0x46, 0x52, 0x0, // @272 "TTFR"
+ 0x54, 0x54, 0x52, 0x4c, 0x0, // @277 "TTRL"
+ 0x54, 0x54, 0x52, 0x52, 0x0, // @282 "TTRR"
+ 0x56, 0x4d, 0x49, 0x4e, 0x0, // @287 "VMIN"
+ 0x49, 0x54, 0x53, 0x0, // @292 "ITS"
+ 0x53, 0x44, 0x43, 0x0, // @296 "SDC"
+ 0x4c, 0x56, 0x0 // @300 "LV"
};
TEXT_LOCATION_FLASH_PRAGMA
diff --git a/TouchGFX/generated/texts/src/TypedTextDatabase.cpp b/TouchGFX/generated/texts/src/TypedTextDatabase.cpp
index f68db93..b43a37b 100644
--- a/TouchGFX/generated/texts/src/TypedTextDatabase.cpp
+++ b/TouchGFX/generated/texts/src/TypedTextDatabase.cpp
@@ -27,13 +27,16 @@ const touchgfx::TypedText::TypedTextData typedText_database_DEFAULT[] TEXT_LOCAT
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
- { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
- { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
- { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
- { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
- { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
- { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
- { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
@@ -42,6 +45,24 @@ const touchgfx::TypedText::TypedTextData typedText_database_DEFAULT[] TEXT_LOCAT
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 4, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 0, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
+ { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
diff --git a/TouchGFX/gui/include/gui/common/DataField.hpp b/TouchGFX/gui/include/gui/common/DataField.hpp
new file mode 100644
index 0000000..f975d0f
--- /dev/null
+++ b/TouchGFX/gui/include/gui/common/DataField.hpp
@@ -0,0 +1,36 @@
+#ifndef DATAFIELD_HPP
+#define DATAFIELD_HPP
+
+#include "touchgfx/TypedText.hpp"
+#include
+#include
+
+// We want to automatically count the number of data field types for the
+// description array. This is wacky preprocessor magic that allows us to do just
+// that. Unfortunately, it doesn't work with enum classes, so we have to use
+// C-style enums.
+#define CountedEnum(NAME, TYPE, ...) \
+ enum NAME : TYPE { __VA_ARGS__ }; \
+ constexpr size_t NAME##_COUNT = sizeof((int[]){__VA_ARGS__}) / sizeof(int);
+
+CountedEnum(DataFieldType, size_t, DF_TSState, DF_ASState, DF_ActiveMission,
+ DF_R2DProgress, DF_INVLReady, DF_INVRReady, DF_SDC, DF_ERR,
+ DF_IniChkState, DF_LapCount, DF_TireTempFL, DF_TireTempFR,
+ DF_TireTempRL, DF_TireTempRR, DF_MinCellVolt, DF_MaxCellTemp,
+ DF_TSSoC, DF_LVSoC, DF_TSCurrent, DF_TSVoltageBat, DF_TSVoltageVeh,
+ DF_Speed, DF_BBal);
+
+enum class DataFieldKind { Numeric, Bool, Text };
+
+struct DataFieldDescription {
+ DataFieldKind kind;
+ touchgfx::TypedText title;
+ size_t int_digits;
+ size_t decimal_digits;
+
+ void* (*getValue)(void);
+};
+
+extern DataFieldDescription dataFieldDescs[];
+
+#endif // DATAFIELD_HPP
diff --git a/TouchGFX/gui/include/gui/containers/DriverViewField.hpp b/TouchGFX/gui/include/gui/containers/DriverViewField.hpp
index b18be17..4b93e34 100644
--- a/TouchGFX/gui/include/gui/containers/DriverViewField.hpp
+++ b/TouchGFX/gui/include/gui/containers/DriverViewField.hpp
@@ -5,6 +5,8 @@
#include "touchgfx/Unicode.hpp"
#include
+#include "gui/common/DataField.hpp"
+
class DriverViewField : public DriverViewFieldBase {
public:
DriverViewField();
@@ -12,16 +14,20 @@ public:
virtual void initialize();
- void setName(const touchgfx::TypedText &text);
+ void setType(const DataFieldDescription &desc);
void setValue(float newValue);
- void setPrecision(size_t intDigits, size_t decimalDigits);
+ void setValue(const char *str);
+ void setValue(int boolValue);
protected:
private:
Unicode::UnicodeChar valueBuffer[16];
+
+ DataFieldKind fieldKind;
size_t intDigits;
size_t decimalDigits;
- float fieldValue;
+ float floatValue;
+ int boolValue;
void updateValueBuffer();
};
diff --git a/TouchGFX/gui/include/gui/driverview_screen/DriverViewPresenter.hpp b/TouchGFX/gui/include/gui/driverview_screen/DriverViewPresenter.hpp
index 951e4cb..34ccdb4 100644
--- a/TouchGFX/gui/include/gui/driverview_screen/DriverViewPresenter.hpp
+++ b/TouchGFX/gui/include/gui/driverview_screen/DriverViewPresenter.hpp
@@ -4,6 +4,8 @@
#include
#include
+#include "gui/common/DataField.hpp"
+
using namespace touchgfx;
class DriverViewView;
@@ -33,6 +35,8 @@ private:
DriverViewPresenter();
DriverViewView &view;
+
+ DataFieldType fields[3];
};
#endif // DRIVERVIEWPRESENTER_HPP
diff --git a/TouchGFX/gui/include/gui/driverview_screen/DriverViewView.hpp b/TouchGFX/gui/include/gui/driverview_screen/DriverViewView.hpp
index d727a02..d83e121 100644
--- a/TouchGFX/gui/include/gui/driverview_screen/DriverViewView.hpp
+++ b/TouchGFX/gui/include/gui/driverview_screen/DriverViewView.hpp
@@ -1,6 +1,7 @@
#ifndef DRIVERVIEWVIEW_HPP
#define DRIVERVIEWVIEW_HPP
+#include "gui/common/DataField.hpp"
#include "vehicle.h"
#include
#include
@@ -12,11 +13,17 @@ public:
virtual void setupScreen();
virtual void tearDownScreen();
+ void setFieldType(size_t i, const DataFieldDescription &desc);
+ void setFieldValue(size_t i, float value);
+ void setFieldValue(size_t i, const char *value);
+ void setFieldValue(size_t i, int value);
+
void setTireTemps(const TireTemps &temps);
void setTSSoC(uint8_t soc);
- void setMinCellVolt(float v);
protected:
+private:
+ DriverViewField &getField(size_t i);
};
#endif // DRIVERVIEWVIEW_HPP
diff --git a/TouchGFX/gui/src/common/DataField.cpp b/TouchGFX/gui/src/common/DataField.cpp
new file mode 100644
index 0000000..12009c3
--- /dev/null
+++ b/TouchGFX/gui/src/common/DataField.cpp
@@ -0,0 +1,110 @@
+#include "gui/common/DataField.hpp"
+#include "texts/TextKeysAndLanguages.hpp"
+
+#include "vehicle.h"
+
+#define VEH_FIELD(FIELD) []() { return (void *)&vehicle_state.FIELD; }
+#define VEH_BIT_FIELD(FIELD) \
+ []() { \
+ static int x; \
+ x = vehicle_state.FIELD; \
+ return (void *)&x; \
+ }
+
+void *get_sdc_text() {
+ if (vehicle_state.errors.sdc_bfl) {
+ return (void *)"BFL";
+ } else if (vehicle_state.errors.sdc_brl) {
+ return (void *)"BRL";
+ } else if (vehicle_state.errors.sdc_acc) {
+ return (void *)"ACC";
+ } else if (vehicle_state.errors.sdc_hvb) {
+ return (void *)"HVB";
+ } else {
+ return (void *)"CLOSED";
+ }
+}
+
+void *get_err_text() {
+ if (vehicle_state.errors.err_sdc) {
+ return (void *)"SDC";
+ } else if (vehicle_state.errors.err_ams) {
+ return (void *)"AMS";
+ } else if (vehicle_state.errors.err_pdu) {
+ return (void *)"PDU";
+ } else if (vehicle_state.errors.err_ini_chk) {
+ return (void *)"IniChk";
+ } else if (vehicle_state.errors.err_con_mon) {
+ return (void *)"ConMon";
+ } else if (vehicle_state.errors.err_scs) {
+ return (void *)"SCS";
+ } else if (vehicle_state.errors.err_sbspd) {
+ return (void *)"sBSPD";
+ } else if (vehicle_state.errors.err_appsp) {
+ return (void *)"APPSp";
+ } else if (vehicle_state.errors.err_as) {
+ return (void *)"AS";
+ } else if (vehicle_state.errors.err_ros) {
+ return (void *)"ROS";
+ } else if (vehicle_state.errors.err_res) {
+ return (void *)"RES";
+ } else if (vehicle_state.errors.err_invl) {
+ return (void *)"INVL";
+ } else if (vehicle_state.errors.err_invr) {
+ return (void *)"INVR";
+ } else {
+ return (void *)"NONE";
+ }
+}
+
+void *get_zero() {
+ static float zero = 0.0f;
+ return &zero;
+}
+
+DataFieldDescription dataFieldDescs[] = {
+ [DF_TSState] = {DataFieldKind::Numeric, T_FIELD_TSSTATE, 1, 0,
+ VEH_FIELD(ts_state)},
+ [DF_ASState] = {DataFieldKind::Numeric, T_FIELD_ASSTATE, 1, 0,
+ VEH_FIELD(as_state)},
+ [DF_ActiveMission] = {DataFieldKind::Numeric, T_FIELD_ACTIVEMISSION, 1, 0,
+ VEH_FIELD(active_mission)},
+ [DF_R2DProgress] = {DataFieldKind::Numeric, T_FIELD_R2DPROGRESS, 1, 0,
+ VEH_FIELD(r2d_progress)},
+ [DF_INVLReady] = {DataFieldKind::Bool, T_FIELD_INVLREADY, 0, 0,
+ VEH_BIT_FIELD(errors.invl_ready)},
+ [DF_INVRReady] = {DataFieldKind::Bool, T_FIELD_INVRREADY, 0, 0,
+ VEH_BIT_FIELD(errors.invr_ready)},
+ [DF_SDC] = {DataFieldKind::Text, T_FIELD_SDC, 0, 0, get_sdc_text},
+ [DF_ERR] = {DataFieldKind::Text, T_FIELD_ERR, 0, 0, get_err_text},
+ [DF_IniChkState] = {DataFieldKind::Numeric, T_FIELD_INICHKSTATE, 1, 0,
+ VEH_FIELD(ini_chk_state)},
+ [DF_LapCount] = {DataFieldKind::Numeric, T_FIELD_LAPCOUNT, 3, 0,
+ VEH_FIELD(lap_count)},
+ [DF_TireTempFL] = {DataFieldKind::Numeric, T_FIELD_TIREFL, 2, 1,
+ VEH_FIELD(tire_temps.fl)},
+ [DF_TireTempFR] = {DataFieldKind::Numeric, T_FIELD_TIREFR, 2, 1,
+ VEH_FIELD(tire_temps.fr)},
+ [DF_TireTempRL] = {DataFieldKind::Numeric, T_FIELD_TIRERL, 2, 1,
+ VEH_FIELD(tire_temps.rl)},
+ [DF_TireTempRR] = {DataFieldKind::Numeric, T_FIELD_TIRERR, 2, 1,
+ VEH_FIELD(tire_temps.rr)},
+ [DF_MinCellVolt] = {DataFieldKind::Numeric, T_FIELD_MINCELLVOLT, 1, 2,
+ VEH_FIELD(min_cell_volt)},
+ [DF_MaxCellTemp] = {DataFieldKind::Numeric, T_FIELD_MAXCELLTEMP, 2, 1,
+ VEH_FIELD(max_cell_temp)},
+ [DF_TSSoC] = {DataFieldKind::Numeric, T_FIELD_TSSOC, 3, 0, VEH_FIELD(soc)},
+ [DF_LVSoC] = {DataFieldKind::Numeric, T_FIELD_LVSOC, 3, 0, get_zero},
+ [DF_TSCurrent] = {DataFieldKind::Numeric, T_FIELD_TSCURRENT, 3, 0,
+ VEH_FIELD(ts_current)},
+ [DF_TSVoltageBat] = {DataFieldKind::Numeric, T_FIELD_TSVOLTBAT, 3, 1,
+ VEH_FIELD(ts_voltage_bat)},
+ [DF_TSVoltageVeh] = {DataFieldKind::Numeric, T_FIELD_TSVOLTVEH, 3, 1,
+ VEH_FIELD(ts_voltage_veh)},
+ [DF_Speed] = {DataFieldKind::Numeric, T_FIELD_SPEED, 3, 0, get_zero},
+ [DF_BBal] = {DataFieldKind::Numeric, T_FIELD_BBAL, 3, 1, get_zero},
+};
+
+static_assert(sizeof(dataFieldDescs) / sizeof(dataFieldDescs[0]) ==
+ DataFieldType_COUNT,
+ "Incorrect number of data field descriptions");
diff --git a/TouchGFX/gui/src/containers/DriverViewField.cpp b/TouchGFX/gui/src/containers/DriverViewField.cpp
index 2f5fd33..5945e1a 100644
--- a/TouchGFX/gui/src/containers/DriverViewField.cpp
+++ b/TouchGFX/gui/src/containers/DriverViewField.cpp
@@ -1,35 +1,72 @@
+#include "gui/common/DataField.hpp"
+#include "texts/TextKeysAndLanguages.hpp"
#include "touchgfx/Unicode.hpp"
#include
DriverViewField::DriverViewField()
- : intDigits{0}, decimalDigits{0}, fieldValue{0} {}
+ : intDigits{0}, decimalDigits{0}, floatValue{0}, boolValue{0} {}
void DriverViewField::initialize() { DriverViewFieldBase::initialize(); }
-void DriverViewField::setName(const touchgfx::TypedText &text) {
- title.setTypedText(text);
+void DriverViewField::setType(const DataFieldDescription &desc) {
+ title.setTypedText(desc.title);
title.invalidate();
-}
-
-void DriverViewField::setValue(float newValue) {
- fieldValue = newValue;
+ fieldKind = desc.kind;
+ switch (desc.kind) {
+ case DataFieldKind::Numeric:
+ value.setTypedText(T_NUMBERWILDCARD);
+ break;
+ case DataFieldKind::Bool:
+ case DataFieldKind::Text:
+ value.setTypedText(T_DEFAULTWILDCARD);
+ break;
+ }
+ intDigits = desc.int_digits;
+ decimalDigits = desc.decimal_digits;
updateValueBuffer();
}
-void DriverViewField::setPrecision(size_t intDigits, size_t decimalDigits) {
- this->intDigits = intDigits;
- this->decimalDigits = decimalDigits;
+void DriverViewField::setValue(float newValue) {
+ floatValue = newValue;
+ updateValueBuffer();
+}
+
+void DriverViewField::setValue(const char *str) {
+ Unicode::strncpy(valueBuffer, str,
+ sizeof(valueBuffer) / sizeof(Unicode::UnicodeChar));
+ value.setWildcard(valueBuffer);
+ value.invalidate();
+}
+
+void DriverViewField::setValue(int boolValue) {
+ this->boolValue = boolValue;
updateValueBuffer();
}
void DriverViewField::updateValueBuffer() {
- size_t width = intDigits;
- if (decimalDigits != 0) {
- width += decimalDigits + 1; // 1 digit for the decimal point
+ switch (fieldKind) {
+ case DataFieldKind::Numeric: {
+ size_t width = intDigits;
+ if (decimalDigits != 0) {
+ width += decimalDigits + 1; // 1 digit for the decimal point
+ }
+ float params[3] = {(float)width, (float)decimalDigits, floatValue};
+ Unicode::snprintfFloats(valueBuffer,
+ sizeof(valueBuffer) / sizeof(Unicode::UnicodeChar),
+ "%*.*f", params);
+ value.setWildcard(valueBuffer);
+ break;
}
- float params[3] = {(float)width, (float)decimalDigits, fieldValue};
- Unicode::snprintfFloats(valueBuffer,
- sizeof(valueBuffer) / sizeof(Unicode::UnicodeChar),
- "%*.*f", params);
- value.setWildcard(valueBuffer);
+ case DataFieldKind::Bool: {
+ const char *str = boolValue ? "YES" : "NO";
+ Unicode::strncpy(valueBuffer, str,
+ sizeof(valueBuffer) / sizeof(valueBuffer[0]));
+ value.setWildcard(valueBuffer);
+ break;
+ }
+ case DataFieldKind::Text:
+ // This is updated directly in setValue()
+ break;
+ }
+ value.invalidate();
}
diff --git a/TouchGFX/gui/src/driverview_screen/DriverViewPresenter.cpp b/TouchGFX/gui/src/driverview_screen/DriverViewPresenter.cpp
index daa4ece..4355607 100644
--- a/TouchGFX/gui/src/driverview_screen/DriverViewPresenter.cpp
+++ b/TouchGFX/gui/src/driverview_screen/DriverViewPresenter.cpp
@@ -1,15 +1,37 @@
#include
#include
+#include "gui/common/DataField.hpp"
#include "vehicle.h"
-DriverViewPresenter::DriverViewPresenter(DriverViewView &v) : view(v) {}
+DriverViewPresenter::DriverViewPresenter(DriverViewView &v)
+ : view(v), fields{DF_MinCellVolt, DF_Speed, DF_TSCurrent} {}
-void DriverViewPresenter::activate() {}
+void DriverViewPresenter::activate() {
+ for (size_t i = 0; i < 3; i++) {
+ view.setFieldType(i, dataFieldDescs[fields[i]]);
+ }
+}
void DriverViewPresenter::deactivate() {}
void DriverViewPresenter::vehicleStateUpdated() {
+ view.setTireTemps(vehicle_state.tire_temps);
view.setTSSoC(vehicle_state.soc);
- view.setMinCellVolt(vehicle_state.min_cell_volt);
+
+ for (size_t i = 0; i < 3; i++) {
+ DataFieldType field = fields[i];
+ void *val = dataFieldDescs[field].getValue();
+ switch (dataFieldDescs[field].kind) {
+ case DataFieldKind::Numeric:
+ view.setFieldValue(i, *((float *)val));
+ break;
+ case DataFieldKind::Bool:
+ view.setFieldValue(i, *((int *)val));
+ break;
+ case DataFieldKind::Text:
+ view.setFieldValue(i, (const char *)val);
+ break;
+ }
+ }
}
diff --git a/TouchGFX/gui/src/driverview_screen/DriverViewView.cpp b/TouchGFX/gui/src/driverview_screen/DriverViewView.cpp
index 8963bca..9eea9a7 100644
--- a/TouchGFX/gui/src/driverview_screen/DriverViewView.cpp
+++ b/TouchGFX/gui/src/driverview_screen/DriverViewView.cpp
@@ -1,3 +1,4 @@
+#include "gui/common/DataField.hpp"
#include "texts/TextKeysAndLanguages.hpp"
#include
@@ -5,19 +6,29 @@ DriverViewView::DriverViewView() {}
void DriverViewView::setupScreen() {
DriverViewViewBase::setupScreen();
- field1.setName(T_FIELD_MINCELLVOLT);
- field1.setValue(3.21);
- field1.setPrecision(1, 2);
- field2.setName(T_FIELD_SPEED);
- field2.setValue(42.0);
- field2.setPrecision(3, 0);
- field3.setName(T_FIELD_TSCURRENT);
- field3.setValue(131.0);
- field3.setPrecision(3, 0);
+ field1.setType(dataFieldDescs[DF_MinCellVolt]);
+ field2.setType(dataFieldDescs[DF_Speed]);
+ field3.setType(dataFieldDescs[DF_TSCurrent]);
}
void DriverViewView::tearDownScreen() { DriverViewViewBase::tearDownScreen(); }
+void DriverViewView::setFieldType(size_t i, const DataFieldDescription &desc) {
+ getField(i).setType(desc);
+}
+
+void DriverViewView::setFieldValue(size_t i, float value) {
+ getField(i).setValue(value);
+}
+
+void DriverViewView::setFieldValue(size_t i, const char *value) {
+ getField(i).setValue(value);
+}
+
+void DriverViewView::setFieldValue(size_t i, int value) {
+ getField(i).setValue(value);
+}
+
void DriverViewView::setTireTemps(const TireTemps &temps) {
tireTempFL.setTemp(temps.fl);
tireTempFR.setTemp(temps.fr);
@@ -30,7 +41,13 @@ void DriverViewView::setTSSoC(uint8_t soc) {
tsSoC.invalidate();
}
-void DriverViewView::setMinCellVolt(float v) {
- field1.setValue(v);
- field1.invalidate();
+DriverViewField &DriverViewView::getField(size_t i) {
+ switch (i) {
+ case 0:
+ return field1;
+ case 1:
+ return field2;
+ default:
+ return field3;
+ }
}
diff --git a/TouchGFX/simulator/msvs/Application.vcxproj b/TouchGFX/simulator/msvs/Application.vcxproj
index 5ad2a2a..4b5521f 100644
--- a/TouchGFX/simulator/msvs/Application.vcxproj
+++ b/TouchGFX/simulator/msvs/Application.vcxproj
@@ -36,6 +36,7 @@
+
@@ -201,6 +202,7 @@
+
diff --git a/TouchGFX/simulator/msvs/Application.vcxproj.filters b/TouchGFX/simulator/msvs/Application.vcxproj.filters
index e7364b4..64de93c 100644
--- a/TouchGFX/simulator/msvs/Application.vcxproj.filters
+++ b/TouchGFX/simulator/msvs/Application.vcxproj.filters
@@ -297,6 +297,9 @@
Source Files\generated\gui_generated\containers
+
+ Source Files\gui\common
+
@@ -784,6 +787,9 @@
Header Files\generated\gui_generated\containers
+
+ Header Files\gui\common
+
diff --git a/TouchGFX/steering-wheel.touchgfx b/TouchGFX/steering-wheel.touchgfx
index f829109..ec96fcf 100644
--- a/TouchGFX/steering-wheel.touchgfx
+++ b/TouchGFX/steering-wheel.touchgfx
@@ -526,7 +526,7 @@
"Y": 20,
"Width": 160,
"Height": 57,
- "TextId": "__SingleUse_K26P",
+ "TextId": "NumberWildcard",
"TextRotation": "0",
"Color": {
"Red": 255,