From 69bc442c90423c7b244651bf28440bc726ee7b84 Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Mon, 3 Apr 2023 12:03:39 +0200 Subject: [PATCH] fix(core/ui): replace RobotoMono Regular with RobotoMono Medium [no changelog] --- core/SConscript.bootloader_ci | 2 +- core/SConscript.firmware | 2 +- core/SConscript.unix | 2 +- .../fonts/font_robotomono_medium_20.c | 203 ++++++++++++++++++ .../fonts/font_robotomono_medium_20.h | 10 + .../fonts/font_robotomono_regular_20.c | 203 ------------------ .../fonts/font_robotomono_regular_20.h | 10 - .../tools/codegen/fonts/RobotoMono-Medium.ttf | Bin 0 -> 86820 bytes core/tools/codegen/gen_font.py | 2 +- 9 files changed, 217 insertions(+), 217 deletions(-) create mode 100644 core/embed/extmod/modtrezorui/fonts/font_robotomono_medium_20.c create mode 100644 core/embed/extmod/modtrezorui/fonts/font_robotomono_medium_20.h delete mode 100644 core/embed/extmod/modtrezorui/fonts/font_robotomono_regular_20.c delete mode 100644 core/embed/extmod/modtrezorui/fonts/font_robotomono_regular_20.h create mode 100644 core/tools/codegen/fonts/RobotoMono-Medium.ttf diff --git a/core/SConscript.bootloader_ci b/core/SConscript.bootloader_ci index 1d01b32939..af69f00199 100644 --- a/core/SConscript.bootloader_ci +++ b/core/SConscript.bootloader_ci @@ -34,7 +34,7 @@ if TREZOR_MODEL in ('T', ): FONT_NORMAL='Font_Roboto_Regular_20' FONT_DEMIBOLD=None FONT_BOLD=None - FONT_MONO='Font_RobotoMono_Regular_20' + FONT_MONO='Font_RobotoMono_Medium_20' # modtrezorcrypto CCFLAGS_MOD += '-Wno-sequence-point ' diff --git a/core/SConscript.firmware b/core/SConscript.firmware index 2d873f4900..3b5254df4b 100644 --- a/core/SConscript.firmware +++ b/core/SConscript.firmware @@ -38,7 +38,7 @@ if TREZOR_MODEL in ('T', ): FONT_NORMAL='Font_TTHoves_Regular_21' FONT_DEMIBOLD='Font_TTHoves_DemiBold_21' FONT_BOLD='Font_TTHoves_Bold_17' - FONT_MONO='Font_RobotoMono_Regular_20' + FONT_MONO='Font_RobotoMono_Medium_20' # modtrezorconfig CPPPATH_MOD += [ diff --git a/core/SConscript.unix b/core/SConscript.unix index babae416f3..0228040aba 100644 --- a/core/SConscript.unix +++ b/core/SConscript.unix @@ -34,7 +34,7 @@ if TREZOR_MODEL in ('T', ): FONT_NORMAL='Font_TTHoves_Regular_21' FONT_DEMIBOLD='Font_TTHoves_DemiBold_21' FONT_BOLD='Font_TTHoves_Bold_17' - FONT_MONO='Font_RobotoMono_Regular_20' + FONT_MONO='Font_RobotoMono_Medium_20' # modtrezorconfig CPPPATH_MOD += [ diff --git a/core/embed/extmod/modtrezorui/fonts/font_robotomono_medium_20.c b/core/embed/extmod/modtrezorui/fonts/font_robotomono_medium_20.c new file mode 100644 index 0000000000..cd78379921 --- /dev/null +++ b/core/embed/extmod/modtrezorui/fonts/font_robotomono_medium_20.c @@ -0,0 +1,203 @@ +#include + +// clang-format off + +// - the first two bytes are width and height of the glyph +// - the third, fourth and fifth bytes are advance, bearingX and bearingY of the horizontal metrics of the glyph +// - the rest is packed 4-bit glyph data + +/* */ static const uint8_t Font_RobotoMono_Medium_20_glyph_32[] = { 0, 0, 12, 0, 0 }; +/* ! */ static const uint8_t Font_RobotoMono_Medium_20_glyph_33[] = { 4, 16, 12, 4, 15, 3, 48, 79, 241, 79, 241, 63, 241, 63, 241, 63, 241, 63, 241, 63, 240, 63, 240, 47, 240, 3, 48, 0, 0, 6, 80, 111, 244, 63, 242, 1, 0 }; +/* " */ static const uint8_t Font_RobotoMono_Medium_20_glyph_34[] = { 6, 5, 12, 3, 15, 253, 2, 250, 252, 2, 249, 251, 2, 248, 250, 2, 247, 233, 2, 246 }; +/* # */ static const uint8_t Font_RobotoMono_Medium_20_glyph_35[] = { 12, 15, 12, 0, 15, 0, 0, 19, 0, 19, 0, 0, 0, 127, 16, 174, 0, 0, 0, 174, 0, 219, 0, 0, 0, 219, 0, 248, 0, 1, 34, 250, 37, 247, 32, 12, 255, 255, 255, 255, 246, 4, 106, 247, 108, 246, 98, 0, 9, 240, 12, 208, 0, 0, 12, 192, 15, 160, 0, 72, 143, 216, 159, 200, 80, 143, 255, 255, 255, 255, 160, 0, 95, 64, 143, 16, 0, 0, 143, 16, 190, 0, 0, 0, 190, 0, 235, 0, 0, 0, 235, 1, 248, 0, 0 }; +/* $ */ static const uint8_t Font_RobotoMono_Medium_20_glyph_36[] = { 10, 20, 12, 1, 17, 0, 0, 40, 16, 0, 0, 0, 79, 48, 0, 0, 1, 143, 112, 0, 0, 159, 255, 255, 80, 8, 255, 168, 223, 243, 14, 248, 0, 13, 250, 15, 244, 0, 8, 253, 15, 249, 0, 1, 34, 8, 255, 163, 0, 0, 0, 159, 255, 213, 0, 0, 3, 175, 255, 176, 0, 0, 1, 143, 248, 53, 48, 0, 9, 253, 143, 208, 0, 6, 254, 79, 245, 0, 12, 252, 12, 255, 220, 255, 244, 0, 143, 255, 253, 64, 0, 0, 143, 16, 0, 0, 0, 127, 0, 0, 0, 0, 1, 0, 0 }; +/* % */ static const uint8_t Font_RobotoMono_Medium_20_glyph_37[] = { 12, 16, 12, 0, 15, 0, 86, 16, 0, 0, 0, 30, 255, 243, 0, 0, 0, 143, 66, 250, 0, 96, 0, 159, 0, 220, 5, 243, 0, 159, 16, 236, 13, 160, 0, 79, 203, 246, 111, 32, 0, 5, 188, 113, 233, 0, 0, 0, 0, 8, 241, 0, 0, 0, 0, 31, 128, 0, 0, 0, 0, 158, 27, 255, 128, 0, 2, 246, 159, 122, 245, 0, 11, 208, 205, 1, 249, 0, 29, 80, 221, 0, 249, 0, 0, 0, 175, 87, 246, 0, 0, 0, 29, 255, 176, 0, 0, 0, 0, 34, 0 }; +/* & */ static const uint8_t Font_RobotoMono_Medium_20_glyph_38[] = { 12, 16, 12, 0, 15, 0, 0, 54, 80, 0, 0, 0, 11, 255, 254, 32, 0, 0, 143, 248, 207, 176, 0, 0, 207, 112, 31, 240, 0, 0, 223, 96, 47, 224, 0, 0, 159, 178, 223, 96, 0, 0, 47, 255, 247, 0, 0, 0, 12, 255, 96, 0, 0, 0, 207, 255, 208, 6, 198, 9, 253, 46, 250, 10, 246, 15, 245, 4, 255, 126, 243, 47, 243, 0, 127, 255, 208, 15, 249, 0, 14, 255, 64, 7, 255, 219, 239, 255, 176, 0, 127, 255, 250, 95, 248, 0, 0, 34, 0, 0, 0 }; +/* ' */ static const uint8_t Font_RobotoMono_Medium_20_glyph_39[] = { 3, 6, 12, 4, 15, 111, 118, 247, 111, 102, 245, 111, 64, 0 }; +/* ( */ static const uint8_t Font_RobotoMono_Medium_20_glyph_40[] = { 6, 21, 12, 3, 16, 0, 0, 101, 0, 8, 248, 0, 95, 160, 0, 239, 16, 7, 248, 0, 13, 243, 0, 47, 224, 0, 95, 176, 0, 127, 144, 0, 143, 128, 0, 159, 128, 0, 143, 144, 0, 127, 160, 0, 79, 192, 0, 15, 240, 0, 11, 245, 0, 4, 251, 0, 0, 191, 48, 0, 30, 225, 0, 3, 233, 0, 0, 18 }; +/* ) */ static const uint8_t Font_RobotoMono_Medium_20_glyph_41[] = { 6, 21, 12, 3, 16, 116, 0, 0, 175, 80, 0, 13, 243, 0, 3, 252, 0, 0, 207, 80, 0, 111, 176, 0, 31, 240, 0, 14, 243, 0, 12, 246, 0, 11, 247, 0, 11, 247, 0, 12, 246, 0, 13, 245, 0, 15, 242, 0, 63, 224, 0, 127, 128, 0, 223, 32, 6, 249, 0, 63, 208, 0, 205, 16, 0, 48, 0, 0 }; +/* * */ static const uint8_t Font_RobotoMono_Medium_20_glyph_42[] = { 11, 11, 12, 1, 15, 0, 0, 19, 16, 0, 0, 0, 8, 245, 0, 0, 0, 0, 111, 64, 0, 0, 96, 5, 243, 1, 64, 63, 249, 127, 73, 255, 2, 140, 255, 255, 252, 145, 0, 1, 255, 192, 0, 0, 0, 207, 143, 96, 0, 0, 159, 112, 223, 64, 0, 30, 208, 4, 251, 0, 0, 19, 0, 5, 0, 0 }; +/* + */ static const uint8_t Font_RobotoMono_Medium_20_glyph_43[] = { 10, 11, 12, 1, 12, 0, 2, 204, 0, 0, 0, 3, 255, 0, 0, 0, 3, 255, 0, 0, 0, 3, 255, 0, 0, 204, 205, 255, 204, 202, 255, 255, 255, 255, 252, 86, 104, 255, 102, 101, 0, 3, 255, 0, 0, 0, 3, 255, 0, 0, 0, 3, 255, 0, 0, 0, 1, 153, 0, 0 }; +/* , */ static const uint8_t Font_RobotoMono_Medium_20_glyph_44[] = { 4, 7, 12, 3, 3, 2, 66, 10, 250, 10, 250, 11, 249, 14, 244, 79, 192, 23, 16 }; +/* - */ static const uint8_t Font_RobotoMono_Medium_20_glyph_45[] = { 9, 3, 12, 2, 8, 19, 51, 51, 51, 24, 255, 255, 255, 245, 91, 187, 187, 187, 64 }; +/* . */ static const uint8_t Font_RobotoMono_Medium_20_glyph_46[] = { 4, 5, 12, 4, 4, 0, 0, 62, 246, 143, 252, 79, 247, 1, 32 }; +/* / */ static const uint8_t Font_RobotoMono_Medium_20_glyph_47[] = { 8, 17, 12, 2, 15, 0, 0, 0, 51, 0, 0, 6, 251, 0, 0, 12, 246, 0, 0, 47, 240, 0, 0, 127, 160, 0, 0, 223, 64, 0, 3, 254, 0, 0, 9, 249, 0, 0, 14, 243, 0, 0, 79, 208, 0, 0, 175, 112, 0, 0, 255, 32, 0, 6, 252, 0, 0, 11, 246, 0, 0, 31, 241, 0, 0, 127, 160, 0, 0, 35, 16, 0, 0 }; +/* 0 */ static const uint8_t Font_RobotoMono_Medium_20_glyph_48[] = { 10, 16, 12, 1, 15, 0, 3, 102, 48, 0, 1, 191, 255, 251, 16, 11, 254, 136, 239, 176, 47, 243, 0, 63, 243, 127, 208, 0, 13, 247, 159, 176, 0, 46, 249, 159, 176, 5, 255, 250, 159, 176, 159, 188, 250, 159, 220, 247, 11, 250, 159, 254, 48, 11, 250, 159, 225, 0, 11, 249, 111, 224, 0, 14, 247, 31, 246, 0, 95, 242, 8, 255, 204, 255, 144, 0, 127, 255, 248, 0, 0, 0, 34, 0, 0 }; +/* 1 */ static const uint8_t Font_RobotoMono_Medium_20_glyph_49[] = { 7, 15, 12, 1, 15, 0, 0, 0, 16, 0, 22, 205, 4, 175, 255, 210, 255, 254, 253, 44, 97, 143, 208, 0, 8, 253, 0, 0, 143, 208, 0, 8, 253, 0, 0, 143, 208, 0, 8, 253, 0, 0, 143, 208, 0, 8, 253, 0, 0, 143, 208, 0, 8, 253, 0, 0, 143, 208 }; +/* 2 */ static const uint8_t Font_RobotoMono_Medium_20_glyph_50[] = { 11, 15, 12, 0, 15, 0, 0, 70, 81, 0, 0, 6, 255, 255, 248, 0, 6, 255, 184, 191, 246, 0, 239, 128, 0, 175, 208, 63, 242, 0, 5, 255, 0, 17, 0, 0, 111, 224, 0, 0, 0, 13, 248, 0, 0, 0, 9, 254, 16, 0, 0, 7, 255, 48, 0, 0, 6, 255, 80, 0, 0, 5, 255, 96, 0, 0, 4, 255, 112, 0, 0, 3, 255, 128, 0, 0, 0, 239, 254, 238, 238, 232, 15, 255, 255, 255, 255, 144 }; +/* 3 */ static const uint8_t Font_RobotoMono_Medium_20_glyph_51[] = { 11, 16, 12, 0, 15, 0, 0, 70, 81, 0, 0, 6, 255, 255, 250, 0, 4, 255, 200, 159, 249, 0, 207, 176, 0, 127, 240, 7, 115, 0, 3, 255, 32, 0, 0, 0, 95, 240, 0, 0, 34, 110, 248, 0, 0, 15, 255, 248, 0, 0, 0, 170, 223, 245, 0, 0, 0, 0, 127, 241, 0, 0, 0, 0, 255, 80, 221, 64, 0, 15, 245, 13, 251, 0, 7, 255, 16, 79, 254, 189, 255, 144, 0, 77, 255, 254, 112, 0, 0, 1, 50, 0, 0 }; +/* 4 */ static const uint8_t Font_RobotoMono_Medium_20_glyph_52[] = { 11, 15, 12, 0, 15, 0, 0, 0, 19, 48, 0, 0, 0, 10, 255, 48, 0, 0, 5, 255, 243, 0, 0, 0, 239, 255, 48, 0, 0, 159, 175, 243, 0, 0, 63, 210, 255, 48, 0, 13, 243, 47, 243, 0, 8, 249, 2, 255, 48, 2, 254, 0, 47, 243, 0, 207, 81, 19, 255, 49, 79, 255, 255, 255, 255, 244, 221, 221, 221, 255, 221, 0, 0, 0, 47, 243, 0, 0, 0, 2, 255, 48, 0, 0, 0, 47, 243, 0 }; +/* 5 */ static const uint8_t Font_RobotoMono_Medium_20_glyph_53[] = { 10, 16, 12, 1, 15, 1, 51, 51, 51, 49, 7, 255, 255, 255, 244, 8, 254, 221, 221, 211, 10, 248, 0, 0, 0, 12, 246, 0, 0, 0, 14, 244, 52, 48, 0, 15, 255, 255, 253, 48, 31, 253, 154, 255, 224, 1, 64, 0, 63, 246, 0, 0, 0, 11, 250, 0, 0, 0, 10, 251, 125, 160, 0, 12, 250, 79, 244, 0, 63, 245, 11, 255, 203, 255, 192, 0, 143, 255, 250, 16, 0, 0, 34, 0, 0 }; +/* 6 */ static const uint8_t Font_RobotoMono_Medium_20_glyph_54[] = { 10, 16, 12, 1, 15, 0, 0, 1, 50, 0, 0, 6, 223, 247, 0, 0, 175, 254, 181, 0, 7, 255, 96, 0, 0, 31, 246, 0, 0, 0, 111, 208, 70, 64, 0, 175, 188, 255, 254, 32, 207, 254, 137, 255, 208, 223, 209, 0, 79, 244, 223, 128, 0, 13, 247, 207, 144, 0, 12, 248, 159, 192, 0, 14, 247, 63, 245, 0, 111, 242, 9, 255, 204, 255, 144, 0, 127, 255, 247, 0, 0, 0, 34, 0, 0 }; +/* 7 */ static const uint8_t Font_RobotoMono_Medium_20_glyph_55[] = { 11, 15, 12, 0, 15, 3, 51, 51, 51, 51, 34, 255, 255, 255, 255, 251, 27, 187, 187, 187, 255, 128, 0, 0, 0, 47, 241, 0, 0, 0, 9, 250, 0, 0, 0, 1, 255, 48, 0, 0, 0, 143, 176, 0, 0, 0, 14, 244, 0, 0, 0, 7, 253, 0, 0, 0, 0, 239, 96, 0, 0, 0, 111, 224, 0, 0, 0, 13, 248, 0, 0, 0, 4, 255, 16, 0, 0, 0, 207, 160, 0, 0, 0, 63, 243, 0, 0, 0 }; +/* 8 */ static const uint8_t Font_RobotoMono_Medium_20_glyph_56[] = { 10, 16, 12, 1, 15, 0, 3, 102, 48, 0, 1, 207, 255, 252, 32, 12, 255, 153, 255, 208, 63, 244, 0, 79, 243, 95, 240, 0, 15, 245, 47, 242, 0, 47, 243, 11, 253, 85, 223, 176, 0, 207, 255, 252, 0, 8, 255, 187, 255, 128, 79, 243, 0, 63, 244, 159, 192, 0, 11, 249, 175, 192, 0, 11, 250, 111, 243, 0, 63, 247, 13, 255, 204, 255, 208, 1, 175, 255, 250, 16, 0, 0, 34, 0, 0 }; +/* 9 */ static const uint8_t Font_RobotoMono_Medium_20_glyph_57[] = { 10, 16, 12, 1, 15, 0, 4, 101, 16, 0, 2, 223, 255, 247, 0, 14, 254, 138, 255, 96, 127, 225, 0, 143, 224, 191, 144, 0, 31, 243, 223, 112, 0, 14, 246, 207, 144, 0, 14, 246, 143, 225, 0, 95, 246, 31, 254, 138, 255, 245, 4, 239, 255, 175, 243, 0, 4, 82, 63, 240, 0, 0, 0, 191, 160, 0, 0, 59, 255, 32, 0, 191, 255, 228, 0, 0, 207, 216, 16, 0, 0, 0, 0, 0, 0 }; +/* : */ static const uint8_t Font_RobotoMono_Medium_20_glyph_58[] = { 5, 13, 12, 4, 12, 0, 0, 0, 207, 144, 79, 255, 17, 239, 192, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 207, 144, 79, 255, 17, 239, 192, 0, 32, 0 }; +/* ; */ static const uint8_t Font_RobotoMono_Medium_20_glyph_59[] = { 5, 16, 12, 4, 12, 0, 0, 0, 175, 192, 31, 255, 64, 207, 225, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 32, 10, 250, 0, 175, 160, 11, 248, 0, 239, 64, 79, 192, 1, 129, 0 }; +/* < */ static const uint8_t Font_RobotoMono_Medium_20_glyph_60[] = { 10, 10, 12, 1, 11, 0, 0, 0, 1, 128, 0, 0, 3, 175, 241, 0, 5, 207, 255, 192, 24, 239, 253, 130, 0, 111, 249, 48, 0, 0, 95, 254, 147, 0, 0, 2, 159, 255, 216, 32, 0, 0, 109, 255, 240, 0, 0, 0, 75, 241, 0, 0, 0, 0, 32 }; +/* = */ static const uint8_t Font_RobotoMono_Medium_20_glyph_61[] = { 10, 7, 12, 1, 10, 19, 51, 51, 51, 50, 111, 255, 255, 255, 250, 76, 204, 204, 204, 199, 0, 0, 0, 0, 0, 1, 17, 17, 17, 16, 111, 255, 255, 255, 250, 94, 238, 238, 238, 232 }; +/* > */ static const uint8_t Font_RobotoMono_Medium_20_glyph_62[] = { 10, 10, 12, 1, 11, 70, 0, 0, 0, 0, 95, 249, 32, 0, 0, 61, 255, 251, 80, 0, 0, 56, 239, 254, 113, 0, 0, 3, 175, 245, 0, 0, 74, 255, 244, 3, 158, 255, 232, 16, 95, 255, 197, 0, 0, 95, 147, 0, 0, 0, 16, 0, 0, 0, 0 }; +/* ? */ static const uint8_t Font_RobotoMono_Medium_20_glyph_63[] = { 10, 16, 12, 1, 15, 0, 3, 102, 64, 0, 1, 207, 255, 254, 80, 13, 255, 153, 223, 242, 63, 244, 0, 31, 247, 21, 80, 0, 13, 248, 0, 0, 0, 47, 245, 0, 0, 0, 207, 208, 0, 0, 11, 254, 32, 0, 0, 175, 226, 0, 0, 0, 255, 64, 0, 0, 0, 221, 16, 0, 0, 0, 0, 0, 0, 0, 0, 102, 0, 0, 0, 5, 255, 80, 0, 0, 3, 255, 32, 0, 0, 0, 0, 0, 0 }; +/* @ */ static const uint8_t Font_RobotoMono_Medium_20_glyph_64[] = { 12, 16, 12, 0, 15, 0, 0, 0, 32, 0, 0, 0, 3, 191, 255, 178, 0, 0, 79, 197, 70, 206, 32, 1, 250, 0, 33, 12, 176, 9, 224, 62, 255, 100, 241, 15, 112, 236, 61, 144, 244, 79, 37, 242, 14, 112, 245, 111, 9, 224, 15, 96, 245, 127, 11, 192, 15, 64, 243, 127, 11, 208, 47, 52, 240, 95, 40, 249, 223, 140, 144, 31, 113, 190, 104, 235, 0, 11, 226, 0, 0, 0, 0, 1, 239, 133, 89, 64, 0, 0, 25, 239, 253, 64, 0, 0, 0, 0, 0, 0, 0 }; +/* A */ static const uint8_t Font_RobotoMono_Medium_20_glyph_65[] = { 12, 15, 12, 0, 15, 0, 0, 3, 48, 0, 0, 0, 0, 31, 246, 0, 0, 0, 0, 111, 252, 0, 0, 0, 0, 207, 255, 16, 0, 0, 1, 255, 207, 96, 0, 0, 6, 251, 127, 176, 0, 0, 11, 247, 47, 240, 0, 0, 31, 242, 13, 245, 0, 0, 111, 208, 9, 250, 0, 0, 191, 180, 72, 255, 0, 1, 255, 255, 255, 255, 64, 6, 255, 187, 187, 239, 160, 11, 250, 0, 0, 111, 224, 15, 246, 0, 0, 47, 244, 95, 241, 0, 0, 13, 249 }; +/* B */ static const uint8_t Font_RobotoMono_Medium_20_glyph_66[] = { 11, 15, 12, 1, 15, 19, 51, 51, 16, 0, 9, 255, 255, 255, 196, 0, 159, 251, 188, 255, 244, 9, 252, 0, 1, 223, 192, 159, 192, 0, 7, 254, 9, 252, 0, 0, 159, 192, 159, 211, 52, 159, 244, 9, 255, 255, 255, 245, 0, 159, 233, 153, 207, 245, 9, 252, 0, 0, 143, 240, 159, 192, 0, 2, 255, 57, 252, 0, 0, 63, 243, 159, 192, 0, 44, 254, 9, 255, 255, 255, 255, 80, 159, 255, 255, 234, 48, 0 }; +/* C */ static const uint8_t Font_RobotoMono_Medium_20_glyph_67[] = { 12, 16, 12, 0, 15, 0, 0, 38, 100, 0, 0, 0, 27, 255, 255, 227, 0, 0, 207, 249, 141, 255, 32, 6, 255, 32, 0, 223, 160, 12, 249, 0, 0, 111, 224, 15, 246, 0, 0, 20, 64, 31, 244, 0, 0, 0, 0, 31, 244, 0, 0, 0, 0, 31, 244, 0, 0, 0, 0, 31, 244, 0, 0, 0, 0, 15, 246, 0, 0, 38, 96, 11, 250, 0, 0, 127, 224, 4, 255, 64, 2, 239, 128, 0, 175, 252, 207, 253, 16, 0, 8, 255, 255, 161, 0, 0, 0, 2, 32, 0, 0 }; +/* D */ static const uint8_t Font_RobotoMono_Medium_20_glyph_68[] = { 11, 15, 12, 1, 15, 35, 51, 32, 0, 0, 10, 255, 255, 250, 32, 0, 175, 235, 207, 255, 64, 10, 251, 0, 27, 255, 32, 175, 176, 0, 14, 249, 10, 251, 0, 0, 143, 224, 175, 176, 0, 5, 255, 10, 251, 0, 0, 79, 241, 175, 176, 0, 4, 255, 26, 251, 0, 0, 95, 240, 175, 176, 0, 9, 253, 10, 251, 0, 1, 255, 128, 175, 176, 3, 223, 224, 10, 255, 239, 255, 226, 0, 175, 255, 253, 113, 0, 0 }; +/* E */ static const uint8_t Font_RobotoMono_Medium_20_glyph_69[] = { 10, 15, 12, 1, 15, 19, 51, 51, 51, 50, 111, 255, 255, 255, 252, 111, 251, 187, 187, 184, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 244, 68, 68, 48, 111, 255, 255, 255, 208, 111, 250, 170, 170, 128, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 255, 255, 255, 251, 111, 255, 255, 255, 252 }; +/* F */ static const uint8_t Font_RobotoMono_Medium_20_glyph_70[] = { 10, 15, 12, 1, 15, 19, 51, 51, 51, 51, 111, 255, 255, 255, 254, 111, 251, 187, 187, 186, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 255, 255, 255, 240, 111, 255, 255, 255, 240, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0, 111, 240, 0, 0, 0 }; +/* G */ static const uint8_t Font_RobotoMono_Medium_20_glyph_71[] = { 11, 16, 12, 0, 15, 0, 0, 38, 100, 0, 0, 0, 175, 255, 254, 64, 0, 191, 250, 141, 255, 32, 95, 243, 0, 13, 250, 11, 250, 0, 0, 127, 224, 255, 96, 0, 0, 0, 31, 244, 0, 0, 0, 1, 255, 64, 2, 51, 50, 31, 244, 0, 239, 255, 240, 255, 64, 9, 172, 255, 14, 247, 0, 0, 95, 240, 175, 192, 0, 5, 255, 3, 255, 112, 0, 143, 240, 8, 255, 220, 239, 251, 0, 6, 239, 255, 214, 0, 0, 0, 35, 16, 0 }; +/* H */ static const uint8_t Font_RobotoMono_Medium_20_glyph_72[] = { 10, 15, 12, 1, 15, 35, 16, 0, 2, 50, 191, 144, 0, 10, 250, 191, 144, 0, 10, 250, 191, 144, 0, 10, 250, 191, 144, 0, 10, 250, 191, 144, 0, 10, 250, 191, 164, 68, 75, 250, 191, 255, 255, 255, 250, 191, 218, 170, 174, 250, 191, 144, 0, 10, 250, 191, 144, 0, 10, 250, 191, 144, 0, 10, 250, 191, 144, 0, 10, 250, 191, 144, 0, 10, 250, 191, 144, 0, 10, 250 }; +/* I */ static const uint8_t Font_RobotoMono_Medium_20_glyph_73[] = { 10, 15, 12, 1, 15, 3, 51, 51, 51, 48, 63, 255, 255, 255, 243, 43, 188, 255, 203, 178, 0, 3, 255, 32, 0, 0, 3, 255, 32, 0, 0, 3, 255, 32, 0, 0, 3, 255, 32, 0, 0, 3, 255, 32, 0, 0, 3, 255, 32, 0, 0, 3, 255, 32, 0, 0, 3, 255, 32, 0, 0, 3, 255, 32, 0, 0, 3, 255, 32, 0, 47, 255, 255, 255, 242, 63, 255, 255, 255, 243 }; +/* J */ static const uint8_t Font_RobotoMono_Medium_20_glyph_74[] = { 10, 16, 12, 1, 15, 0, 0, 0, 3, 49, 0, 0, 0, 13, 248, 0, 0, 0, 13, 248, 0, 0, 0, 13, 248, 0, 0, 0, 13, 248, 0, 0, 0, 13, 248, 0, 0, 0, 13, 248, 0, 0, 0, 13, 248, 0, 0, 0, 13, 248, 0, 0, 0, 13, 248, 34, 16, 0, 13, 248, 239, 112, 0, 15, 246, 175, 225, 0, 143, 242, 47, 255, 205, 255, 112, 3, 207, 255, 230, 0, 0, 1, 50, 0, 0 }; +/* K */ static const uint8_t Font_RobotoMono_Medium_20_glyph_75[] = { 11, 15, 12, 1, 15, 19, 32, 0, 0, 51, 41, 253, 0, 0, 175, 243, 159, 208, 0, 111, 246, 9, 253, 0, 63, 250, 0, 159, 208, 13, 253, 0, 9, 253, 10, 255, 32, 0, 159, 215, 255, 80, 0, 9, 254, 255, 243, 0, 0, 159, 255, 255, 192, 0, 9, 255, 180, 255, 112, 0, 159, 224, 10, 255, 32, 9, 253, 0, 30, 251, 0, 159, 208, 0, 111, 246, 9, 253, 0, 0, 191, 241, 159, 208, 0, 2, 255, 160 }; +/* L */ static const uint8_t Font_RobotoMono_Medium_20_glyph_76[] = { 10, 15, 12, 1, 15, 19, 48, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 240, 0, 0, 0, 95, 255, 255, 255, 251, 95, 255, 255, 255, 252 }; +/* M */ static const uint8_t Font_RobotoMono_Medium_20_glyph_77[] = { 10, 15, 12, 1, 15, 35, 48, 0, 3, 51, 175, 247, 0, 79, 253, 175, 251, 0, 159, 253, 175, 255, 0, 239, 253, 175, 239, 83, 252, 253, 175, 159, 153, 248, 253, 175, 125, 238, 228, 253, 175, 121, 255, 148, 253, 175, 116, 255, 68, 253, 175, 128, 255, 5, 253, 175, 128, 118, 5, 253, 175, 128, 0, 5, 253, 175, 128, 0, 5, 253, 175, 128, 0, 5, 253, 175, 128, 0, 5, 253 }; +/* N */ static const uint8_t Font_RobotoMono_Medium_20_glyph_78[] = { 10, 15, 12, 1, 15, 35, 32, 0, 2, 50, 191, 240, 0, 11, 250, 191, 247, 0, 11, 250, 191, 254, 0, 11, 250, 191, 255, 96, 11, 250, 191, 223, 208, 11, 250, 191, 171, 245, 12, 250, 191, 164, 253, 12, 250, 191, 160, 207, 76, 250, 191, 160, 95, 204, 250, 191, 160, 13, 254, 250, 191, 160, 6, 255, 250, 191, 160, 0, 239, 250, 191, 160, 0, 111, 250, 191, 160, 0, 14, 250 }; +/* O */ static const uint8_t Font_RobotoMono_Medium_20_glyph_79[] = { 12, 16, 12, 0, 15, 0, 0, 54, 98, 0, 0, 0, 27, 255, 255, 177, 0, 0, 207, 250, 175, 252, 0, 6, 255, 32, 3, 255, 80, 12, 249, 0, 0, 175, 176, 15, 245, 0, 0, 111, 240, 31, 244, 0, 0, 79, 241, 31, 244, 0, 0, 79, 241, 31, 244, 0, 0, 79, 241, 31, 244, 0, 0, 79, 240, 15, 246, 0, 0, 127, 240, 11, 251, 0, 0, 191, 160, 4, 255, 80, 6, 255, 64, 0, 175, 253, 223, 249, 0, 0, 8, 255, 254, 112, 0, 0, 0, 2, 32, 0, 0 }; +/* P */ static const uint8_t Font_RobotoMono_Medium_20_glyph_80[] = { 11, 15, 12, 1, 15, 19, 51, 51, 16, 0, 6, 255, 255, 255, 212, 0, 111, 251, 187, 239, 246, 6, 255, 0, 0, 191, 224, 111, 240, 0, 2, 255, 54, 255, 0, 0, 31, 244, 111, 240, 0, 6, 255, 22, 255, 85, 89, 255, 160, 111, 255, 255, 255, 160, 6, 255, 153, 151, 48, 0, 111, 240, 0, 0, 0, 6, 255, 0, 0, 0, 0, 111, 240, 0, 0, 0, 6, 255, 0, 0, 0, 0, 111, 240, 0, 0, 0, 0 }; +/* Q */ static const uint8_t Font_RobotoMono_Medium_20_glyph_81[] = { 12, 18, 12, 0, 15, 0, 0, 38, 98, 0, 0, 0, 27, 255, 255, 177, 0, 0, 207, 250, 175, 252, 0, 6, 255, 32, 2, 255, 112, 12, 249, 0, 0, 143, 208, 15, 245, 0, 0, 79, 240, 31, 244, 0, 0, 63, 242, 47, 243, 0, 0, 47, 243, 47, 243, 0, 0, 47, 243, 31, 244, 0, 0, 63, 242, 15, 246, 0, 0, 95, 240, 11, 250, 0, 0, 175, 192, 4, 255, 80, 5, 255, 80, 0, 175, 253, 223, 251, 0, 0, 8, 255, 255, 252, 16, 0, 0, 2, 35, 239, 226, 0, 0, 0, 0, 29, 243, 0, 0, 0, 0, 1, 32 }; +/* R */ static const uint8_t Font_RobotoMono_Medium_20_glyph_82[] = { 11, 15, 12, 1, 15, 19, 51, 51, 0, 0, 8, 255, 255, 255, 195, 0, 143, 251, 187, 255, 243, 8, 253, 0, 1, 223, 192, 143, 208, 0, 6, 255, 8, 253, 0, 0, 95, 240, 143, 208, 0, 11, 252, 8, 254, 119, 124, 255, 64, 143, 255, 255, 253, 64, 8, 254, 119, 223, 176, 0, 143, 208, 4, 255, 48, 8, 253, 0, 12, 251, 0, 143, 208, 0, 79, 244, 8, 253, 0, 0, 207, 192, 143, 208, 0, 4, 255, 64 }; +/* S */ static const uint8_t Font_RobotoMono_Medium_20_glyph_83[] = { 12, 16, 12, 0, 15, 0, 0, 37, 100, 0, 0, 0, 44, 255, 255, 230, 0, 0, 239, 233, 140, 255, 96, 6, 255, 32, 0, 175, 224, 9, 252, 0, 0, 62, 226, 6, 255, 48, 0, 0, 0, 0, 239, 249, 48, 0, 0, 0, 44, 255, 254, 112, 0, 0, 0, 74, 255, 253, 16, 0, 0, 0, 6, 255, 176, 4, 65, 0, 0, 95, 241, 14, 248, 0, 0, 47, 243, 9, 255, 48, 0, 159, 240, 1, 223, 253, 190, 255, 112, 0, 8, 239, 255, 213, 0, 0, 0, 2, 33, 0, 0 }; +/* T */ static const uint8_t Font_RobotoMono_Medium_20_glyph_84[] = { 12, 15, 12, 0, 15, 19, 51, 51, 51, 51, 49, 143, 255, 255, 255, 255, 248, 107, 187, 207, 252, 187, 182, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0 }; +/* U */ static const uint8_t Font_RobotoMono_Medium_20_glyph_85[] = { 10, 16, 12, 1, 15, 35, 32, 0, 2, 50, 191, 144, 0, 9, 251, 191, 144, 0, 9, 251, 191, 144, 0, 9, 251, 191, 160, 0, 9, 251, 191, 160, 0, 9, 251, 191, 160, 0, 10, 251, 191, 160, 0, 10, 251, 191, 160, 0, 10, 251, 191, 160, 0, 10, 251, 191, 160, 0, 10, 251, 159, 192, 0, 13, 249, 79, 245, 0, 95, 244, 11, 255, 205, 255, 176, 0, 159, 255, 248, 0, 0, 0, 34, 0, 0 }; +/* V */ static const uint8_t Font_RobotoMono_Medium_20_glyph_86[] = { 12, 15, 12, 0, 15, 19, 48, 0, 0, 3, 49, 79, 243, 0, 0, 63, 244, 15, 248, 0, 0, 143, 240, 11, 252, 0, 0, 207, 160, 6, 255, 16, 1, 255, 80, 1, 255, 80, 5, 255, 16, 0, 207, 144, 10, 251, 0, 0, 127, 224, 14, 246, 0, 0, 47, 242, 63, 241, 0, 0, 13, 247, 127, 208, 0, 0, 8, 251, 207, 128, 0, 0, 3, 255, 255, 48, 0, 0, 0, 239, 254, 0, 0, 0, 0, 159, 249, 0, 0, 0, 0, 79, 244, 0, 0 }; +/* W */ static const uint8_t Font_RobotoMono_Medium_20_glyph_87[] = { 12, 15, 12, 0, 15, 19, 32, 3, 48, 1, 50, 127, 176, 15, 240, 9, 249, 95, 208, 47, 243, 11, 247, 63, 224, 79, 246, 12, 245, 31, 240, 127, 248, 14, 243, 14, 242, 159, 251, 15, 241, 12, 244, 206, 221, 47, 240, 10, 246, 236, 175, 79, 192, 8, 249, 249, 127, 143, 160, 6, 253, 246, 95, 223, 128, 4, 255, 244, 47, 255, 96, 2, 255, 241, 15, 255, 64, 0, 255, 224, 13, 255, 32, 0, 239, 192, 10, 255, 0, 0, 207, 144, 7, 254, 0 }; +/* X */ static const uint8_t Font_RobotoMono_Medium_20_glyph_88[] = { 12, 15, 12, 0, 15, 19, 49, 0, 0, 3, 49, 14, 251, 0, 0, 143, 243, 5, 255, 64, 1, 255, 144, 0, 207, 192, 8, 255, 16, 0, 63, 244, 31, 247, 0, 0, 10, 252, 159, 208, 0, 0, 1, 255, 255, 80, 0, 0, 0, 143, 252, 0, 0, 0, 0, 191, 254, 0, 0, 0, 4, 255, 239, 128, 0, 0, 13, 250, 111, 242, 0, 0, 127, 242, 13, 250, 0, 1, 255, 144, 5, 255, 64, 9, 255, 16, 0, 223, 208, 63, 248, 0, 0, 79, 246 }; +/* Y */ static const uint8_t Font_RobotoMono_Medium_20_glyph_89[] = { 12, 15, 12, 0, 15, 19, 48, 0, 0, 3, 50, 63, 245, 0, 0, 79, 244, 11, 252, 0, 0, 191, 192, 3, 255, 48, 2, 255, 64, 0, 207, 160, 9, 252, 0, 0, 79, 242, 31, 245, 0, 0, 12, 248, 127, 208, 0, 0, 4, 255, 239, 80, 0, 0, 0, 207, 253, 0, 0, 0, 0, 95, 246, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0, 0, 0, 47, 242, 0, 0 }; +/* Z */ static const uint8_t Font_RobotoMono_Medium_20_glyph_90[] = { 11, 15, 12, 0, 15, 3, 51, 51, 51, 51, 32, 255, 255, 255, 255, 251, 11, 187, 187, 188, 255, 144, 0, 0, 0, 159, 225, 0, 0, 0, 63, 245, 0, 0, 0, 13, 250, 0, 0, 0, 8, 254, 16, 0, 0, 3, 255, 80, 0, 0, 0, 207, 176, 0, 0, 0, 127, 241, 0, 0, 0, 47, 246, 0, 0, 0, 12, 252, 0, 0, 0, 6, 255, 32, 0, 0, 0, 255, 255, 255, 255, 254, 15, 255, 255, 255, 255, 240 }; +/* [ */ static const uint8_t Font_RobotoMono_Medium_20_glyph_91[] = { 5, 21, 12, 4, 17, 102, 102, 31, 255, 242, 255, 151, 31, 244, 0, 255, 64, 15, 244, 0, 255, 64, 15, 244, 0, 255, 64, 15, 244, 0, 255, 64, 15, 244, 0, 255, 64, 15, 244, 0, 255, 64, 15, 244, 0, 255, 64, 15, 244, 0, 255, 202, 31, 255, 242, 34, 34, 0 }; +/* \ */ static const uint8_t Font_RobotoMono_Medium_20_glyph_92[] = { 9, 17, 12, 2, 15, 35, 16, 0, 0, 6, 251, 0, 0, 0, 31, 241, 0, 0, 0, 191, 112, 0, 0, 5, 253, 0, 0, 0, 15, 242, 0, 0, 0, 159, 128, 0, 0, 4, 254, 0, 0, 0, 14, 244, 0, 0, 0, 143, 144, 0, 0, 2, 255, 0, 0, 0, 13, 245, 0, 0, 0, 127, 176, 0, 0, 1, 255, 16, 0, 0, 11, 246, 0, 0, 0, 95, 192, 0, 0, 0, 51, 0 }; +/* ] */ static const uint8_t Font_RobotoMono_Medium_20_glyph_93[] = { 6, 21, 12, 3, 17, 6, 102, 96, 31, 255, 241, 7, 143, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 0, 63, 241, 10, 191, 241, 31, 255, 241, 2, 34, 32 }; +/* ^ */ static const uint8_t Font_RobotoMono_Medium_20_glyph_94[] = { 9, 9, 12, 2, 15, 0, 2, 48, 0, 0, 0, 255, 48, 0, 0, 111, 250, 0, 0, 13, 252, 241, 0, 4, 249, 127, 112, 0, 175, 49, 253, 0, 31, 208, 10, 244, 8, 247, 0, 79, 176, 69, 16, 0, 85, 0 }; +/* _ */ static const uint8_t Font_RobotoMono_Medium_20_glyph_95[] = { 10, 2, 12, 1, 0, 143, 255, 255, 255, 246, 125, 221, 221, 221, 213 }; +/* ` */ static const uint8_t Font_RobotoMono_Medium_20_glyph_96[] = { 5, 4, 12, 4, 15, 87, 80, 2, 239, 64, 3, 254, 0, 2, 49 }; +/* a */ static const uint8_t Font_RobotoMono_Medium_20_glyph_97[] = { 10, 12, 12, 1, 11, 0, 73, 187, 130, 0, 9, 255, 255, 255, 80, 79, 246, 18, 191, 240, 55, 96, 0, 47, 243, 0, 4, 103, 127, 244, 7, 255, 255, 255, 244, 95, 246, 16, 31, 244, 175, 160, 0, 31, 244, 175, 192, 0, 143, 244, 79, 253, 190, 255, 245, 6, 239, 254, 94, 248, 0, 2, 32, 0, 0 }; +/* b */ static const uint8_t Font_RobotoMono_Medium_20_glyph_98[] = { 10, 16, 12, 1, 15, 127, 224, 0, 0, 0, 127, 224, 0, 0, 0, 127, 224, 0, 0, 0, 127, 224, 0, 0, 0, 127, 226, 156, 164, 0, 127, 255, 255, 255, 128, 127, 251, 51, 191, 242, 127, 240, 0, 14, 248, 127, 224, 0, 10, 251, 127, 224, 0, 8, 252, 127, 224, 0, 9, 252, 127, 224, 0, 12, 250, 127, 245, 0, 79, 245, 127, 255, 204, 255, 208, 127, 184, 255, 251, 16, 0, 0, 3, 16, 0 }; +/* c */ static const uint8_t Font_RobotoMono_Medium_20_glyph_99[] = { 10, 12, 12, 1, 11, 0, 24, 187, 147, 0, 3, 255, 255, 255, 96, 30, 252, 50, 159, 242, 127, 240, 0, 13, 247, 175, 160, 0, 2, 49, 191, 144, 0, 0, 0, 191, 144, 0, 0, 0, 143, 208, 0, 5, 132, 63, 245, 0, 46, 245, 9, 255, 203, 255, 192, 0, 127, 255, 249, 0, 0, 0, 34, 0, 0 }; +/* d */ static const uint8_t Font_RobotoMono_Medium_20_glyph_100[] = { 10, 16, 12, 1, 15, 0, 0, 0, 14, 247, 0, 0, 0, 14, 247, 0, 0, 0, 14, 247, 0, 0, 0, 14, 247, 0, 74, 201, 46, 247, 7, 255, 255, 255, 247, 47, 251, 51, 191, 247, 143, 224, 0, 15, 247, 191, 160, 0, 14, 247, 207, 128, 0, 14, 247, 207, 144, 0, 14, 247, 159, 192, 0, 14, 247, 95, 245, 0, 95, 247, 12, 255, 204, 255, 247, 1, 191, 255, 139, 247, 0, 1, 48, 0, 0 }; +/* e */ static const uint8_t Font_RobotoMono_Medium_20_glyph_101[] = { 10, 12, 12, 1, 11, 0, 7, 187, 147, 0, 3, 239, 255, 255, 112, 14, 252, 50, 143, 243, 111, 241, 0, 11, 249, 191, 196, 68, 73, 253, 207, 255, 255, 255, 253, 207, 199, 119, 119, 118, 159, 208, 0, 0, 0, 63, 248, 0, 3, 177, 8, 255, 235, 207, 246, 0, 109, 255, 253, 80, 0, 0, 19, 16, 0 }; +/* f */ static const uint8_t Font_RobotoMono_Medium_20_glyph_102[] = { 11, 16, 12, 1, 16, 0, 0, 1, 86, 83, 0, 0, 6, 255, 255, 241, 0, 4, 255, 216, 138, 0, 0, 175, 208, 0, 0, 0, 13, 248, 0, 0, 5, 153, 239, 201, 153, 48, 175, 255, 255, 255, 247, 1, 51, 223, 147, 51, 16, 0, 13, 248, 0, 0, 0, 0, 223, 128, 0, 0, 0, 13, 248, 0, 0, 0, 0, 223, 128, 0, 0, 0, 13, 248, 0, 0, 0, 0, 223, 128, 0, 0, 0, 13, 248, 0, 0, 0, 0, 223, 128, 0, 0 }; +/* g */ static const uint8_t Font_RobotoMono_Medium_20_glyph_103[] = { 10, 16, 12, 1, 11, 0, 58, 202, 53, 148, 6, 255, 255, 254, 248, 47, 252, 51, 175, 248, 127, 241, 0, 13, 248, 191, 160, 0, 13, 248, 207, 144, 0, 13, 248, 191, 144, 0, 13, 248, 159, 208, 0, 13, 248, 79, 246, 0, 63, 248, 11, 255, 204, 255, 248, 0, 175, 255, 157, 248, 0, 1, 49, 14, 247, 7, 112, 0, 111, 243, 14, 254, 189, 255, 160, 2, 175, 255, 231, 0, 0, 0, 33, 0, 0 }; +/* h */ static const uint8_t Font_RobotoMono_Medium_20_glyph_104[] = { 10, 15, 12, 1, 15, 127, 208, 0, 0, 0, 127, 208, 0, 0, 0, 127, 208, 0, 0, 0, 127, 208, 0, 0, 0, 127, 208, 123, 183, 0, 127, 220, 255, 255, 192, 127, 251, 51, 143, 245, 127, 224, 0, 13, 249, 127, 208, 0, 10, 250, 127, 208, 0, 10, 250, 127, 208, 0, 10, 250, 127, 208, 0, 10, 250, 127, 208, 0, 10, 250, 127, 208, 0, 10, 250, 127, 208, 0, 10, 250 }; +/* i */ static const uint8_t Font_RobotoMono_Medium_20_glyph_105[] = { 9, 15, 12, 2, 15, 0, 3, 146, 0, 0, 0, 223, 160, 0, 0, 7, 179, 0, 0, 0, 0, 0, 0, 137, 153, 149, 0, 15, 255, 255, 160, 0, 86, 109, 250, 0, 0, 0, 191, 160, 0, 0, 11, 250, 0, 0, 0, 191, 160, 0, 0, 11, 250, 0, 0, 0, 191, 160, 0, 0, 11, 250, 0, 14, 255, 255, 255, 251, 255, 255, 255, 255, 192 }; +/* j */ static const uint8_t Font_RobotoMono_Medium_20_glyph_106[] = { 7, 20, 12, 2, 15, 0, 0, 104, 0, 0, 47, 247, 0, 0, 206, 48, 0, 0, 0, 9, 153, 153, 48, 255, 255, 245, 6, 102, 255, 80, 0, 15, 245, 0, 0, 255, 80, 0, 15, 245, 0, 0, 255, 80, 0, 15, 245, 0, 0, 255, 80, 0, 15, 245, 0, 0, 255, 80, 0, 15, 245, 0, 5, 255, 41, 188, 255, 192, 223, 255, 177, 2, 67, 16, 0 }; +/* k */ static const uint8_t Font_RobotoMono_Medium_20_glyph_107[] = { 11, 15, 12, 1, 15, 127, 224, 0, 0, 0, 7, 254, 0, 0, 0, 0, 127, 224, 0, 0, 0, 7, 254, 0, 0, 0, 0, 127, 224, 0, 41, 149, 7, 254, 0, 46, 252, 0, 127, 224, 29, 253, 16, 7, 254, 29, 253, 16, 0, 127, 236, 254, 32, 0, 7, 255, 255, 243, 0, 0, 127, 254, 207, 225, 0, 7, 255, 17, 239, 176, 0, 127, 224, 5, 255, 128, 7, 254, 0, 9, 255, 64, 127, 224, 0, 13, 254, 16 }; +/* l */ static const uint8_t Font_RobotoMono_Medium_20_glyph_108[] = { 10, 15, 12, 1, 15, 15, 255, 255, 160, 0, 15, 255, 255, 160, 0, 0, 0, 191, 160, 0, 0, 0, 191, 160, 0, 0, 0, 191, 160, 0, 0, 0, 191, 160, 0, 0, 0, 191, 160, 0, 0, 0, 191, 160, 0, 0, 0, 191, 160, 0, 0, 0, 191, 160, 0, 0, 0, 191, 160, 0, 0, 0, 191, 160, 0, 0, 0, 191, 160, 0, 15, 255, 255, 255, 252, 15, 255, 255, 255, 253 }; +/* m */ static const uint8_t Font_RobotoMono_Medium_20_glyph_109[] = { 12, 11, 12, 0, 11, 25, 115, 187, 53, 186, 32, 63, 255, 255, 239, 255, 192, 63, 245, 111, 245, 95, 241, 63, 240, 31, 240, 15, 242, 63, 240, 31, 240, 15, 242, 63, 240, 31, 240, 15, 242, 63, 240, 31, 240, 15, 242, 63, 240, 31, 240, 15, 242, 63, 240, 31, 240, 15, 242, 63, 240, 31, 240, 15, 242, 63, 240, 31, 240, 15, 242 }; +/* n */ static const uint8_t Font_RobotoMono_Medium_20_glyph_110[] = { 10, 11, 12, 1, 11, 73, 80, 123, 184, 0, 127, 204, 255, 255, 192, 127, 251, 51, 143, 245, 127, 224, 0, 13, 249, 127, 208, 0, 11, 250, 127, 208, 0, 11, 250, 127, 208, 0, 11, 250, 127, 208, 0, 11, 250, 127, 208, 0, 11, 250, 127, 208, 0, 11, 250, 127, 208, 0, 11, 250 }; +/* o */ static const uint8_t Font_RobotoMono_Medium_20_glyph_111[] = { 10, 12, 12, 1, 11, 0, 40, 187, 130, 0, 5, 255, 255, 255, 80, 47, 251, 51, 191, 242, 159, 208, 0, 13, 249, 223, 128, 0, 8, 252, 239, 96, 0, 7, 254, 239, 112, 0, 7, 253, 191, 176, 0, 11, 251, 95, 244, 0, 79, 245, 11, 255, 204, 255, 176, 0, 159, 255, 249, 0, 0, 0, 34, 0, 0 }; +/* p */ static const uint8_t Font_RobotoMono_Medium_20_glyph_112[] = { 10, 16, 12, 1, 11, 73, 98, 156, 164, 0, 127, 239, 255, 255, 112, 127, 250, 51, 207, 242, 127, 224, 0, 15, 247, 127, 224, 0, 11, 251, 127, 224, 0, 9, 252, 127, 224, 0, 10, 251, 127, 224, 0, 13, 249, 127, 243, 0, 95, 244, 127, 255, 204, 255, 192, 127, 233, 255, 251, 16, 127, 224, 3, 16, 0, 127, 224, 0, 0, 0, 127, 224, 0, 0, 0, 127, 224, 0, 0, 0, 1, 0, 0, 0, 0 }; +/* q */ static const uint8_t Font_RobotoMono_Medium_20_glyph_113[] = { 10, 16, 12, 1, 11, 0, 74, 201, 38, 147, 7, 255, 255, 254, 247, 47, 251, 51, 175, 247, 143, 224, 0, 14, 247, 191, 160, 0, 14, 247, 207, 128, 0, 14, 247, 191, 144, 0, 14, 247, 159, 192, 0, 14, 247, 79, 245, 0, 63, 247, 12, 255, 204, 255, 247, 1, 191, 255, 158, 247, 0, 1, 49, 14, 247, 0, 0, 0, 14, 247, 0, 0, 0, 14, 247, 0, 0, 0, 14, 247, 0, 0, 0, 0, 16 }; +/* r */ static const uint8_t Font_RobotoMono_Medium_20_glyph_114[] = { 9, 11, 12, 2, 11, 9, 145, 24, 187, 96, 255, 126, 255, 249, 15, 255, 250, 154, 80, 255, 209, 0, 0, 15, 245, 0, 0, 0, 255, 80, 0, 0, 15, 245, 0, 0, 0, 255, 80, 0, 0, 15, 245, 0, 0, 0, 255, 80, 0, 0, 15, 245, 0, 0, 0 }; +/* s */ static const uint8_t Font_RobotoMono_Medium_20_glyph_115[] = { 10, 12, 12, 1, 11, 0, 40, 187, 164, 0, 6, 255, 255, 255, 176, 31, 248, 16, 95, 246, 63, 241, 0, 7, 149, 14, 252, 98, 0, 0, 3, 223, 255, 250, 32, 0, 3, 140, 255, 243, 37, 48, 0, 29, 250, 127, 225, 0, 11, 250, 29, 254, 153, 207, 243, 1, 175, 255, 252, 64, 0, 0, 34, 16, 0 }; +/* t */ static const uint8_t Font_RobotoMono_Medium_20_glyph_116[] = { 10, 15, 12, 1, 14, 0, 2, 32, 0, 0, 0, 47, 243, 0, 0, 0, 47, 243, 0, 0, 105, 175, 250, 153, 145, 191, 255, 255, 255, 242, 35, 79, 245, 51, 48, 0, 47, 243, 0, 0, 0, 47, 243, 0, 0, 0, 47, 243, 0, 0, 0, 47, 243, 0, 0, 0, 47, 243, 0, 0, 0, 15, 248, 0, 0, 0, 11, 255, 220, 214, 0, 1, 191, 255, 246, 0, 0, 1, 50, 0 }; +/* u */ static const uint8_t Font_RobotoMono_Medium_20_glyph_117[] = { 10, 12, 12, 1, 11, 57, 128, 0, 7, 149, 111, 224, 0, 12, 249, 111, 224, 0, 12, 249, 111, 224, 0, 12, 249, 111, 224, 0, 12, 249, 111, 224, 0, 12, 249, 111, 224, 0, 12, 249, 95, 240, 0, 12, 249, 63, 244, 0, 63, 249, 13, 255, 204, 254, 249, 2, 207, 255, 105, 249, 0, 2, 48, 0, 0 }; +/* v */ static const uint8_t Font_RobotoMono_Medium_20_glyph_118[] = { 12, 11, 12, 0, 11, 9, 147, 0, 0, 57, 128, 12, 249, 0, 0, 159, 192, 6, 254, 0, 0, 239, 80, 0, 255, 64, 4, 255, 0, 0, 159, 144, 10, 249, 0, 0, 63, 224, 15, 243, 0, 0, 12, 244, 79, 192, 0, 0, 6, 250, 175, 96, 0, 0, 0, 254, 239, 0, 0, 0, 0, 175, 249, 0, 0, 0, 0, 63, 243, 0, 0 }; +/* w */ static const uint8_t Font_RobotoMono_Medium_20_glyph_119[] = { 12, 11, 12, 0, 11, 89, 64, 7, 112, 5, 148, 111, 160, 15, 240, 11, 245, 63, 192, 63, 242, 13, 242, 15, 224, 127, 246, 15, 240, 13, 241, 172, 233, 47, 192, 10, 243, 233, 189, 79, 144, 7, 247, 246, 127, 127, 96, 4, 252, 242, 63, 207, 48, 1, 255, 224, 15, 255, 0, 0, 239, 176, 12, 253, 0, 0, 191, 112, 8, 250, 0 }; +/* x */ static const uint8_t Font_RobotoMono_Medium_20_glyph_120[] = { 12, 11, 12, 0, 11, 6, 151, 0, 0, 73, 128, 3, 255, 96, 2, 255, 128, 0, 127, 242, 12, 252, 0, 0, 11, 252, 143, 242, 0, 0, 1, 239, 255, 80, 0, 0, 0, 111, 252, 0, 0, 0, 0, 207, 255, 48, 0, 0, 8, 254, 191, 208, 0, 0, 79, 245, 30, 249, 0, 1, 239, 144, 4, 255, 80, 11, 253, 0, 0, 143, 225 }; +/* y */ static const uint8_t Font_RobotoMono_Medium_20_glyph_121[] = { 12, 16, 12, 0, 11, 41, 146, 0, 0, 8, 149, 14, 249, 0, 0, 79, 243, 8, 255, 0, 0, 175, 192, 1, 255, 96, 1, 255, 80, 0, 159, 192, 7, 254, 0, 0, 47, 243, 13, 247, 0, 0, 11, 249, 79, 241, 0, 0, 4, 255, 175, 144, 0, 0, 0, 223, 255, 32, 0, 0, 0, 111, 251, 0, 0, 0, 0, 15, 244, 0, 0, 0, 0, 111, 208, 0, 0, 0, 1, 239, 96, 0, 0, 1, 190, 253, 0, 0, 0, 4, 255, 194, 0, 0, 0, 0, 51, 0, 0, 0, 0 }; +/* z */ static const uint8_t Font_RobotoMono_Medium_20_glyph_122[] = { 10, 11, 12, 1, 11, 73, 153, 153, 153, 149, 143, 255, 255, 255, 249, 53, 85, 85, 239, 242, 0, 0, 9, 255, 64, 0, 0, 111, 246, 0, 0, 4, 255, 128, 0, 0, 63, 250, 0, 0, 1, 239, 192, 0, 0, 12, 254, 16, 0, 0, 159, 255, 238, 238, 236, 175, 255, 255, 255, 254 }; +/* { */ static const uint8_t Font_RobotoMono_Medium_20_glyph_123[] = { 7, 20, 12, 3, 16, 0, 0, 39, 48, 0, 63, 246, 0, 13, 244, 0, 2, 254, 0, 0, 95, 208, 0, 5, 253, 0, 0, 95, 208, 0, 7, 251, 0, 2, 239, 80, 13, 255, 96, 0, 207, 247, 0, 0, 46, 245, 0, 0, 127, 176, 0, 5, 253, 0, 0, 95, 208, 0, 5, 253, 0, 0, 47, 240, 0, 0, 207, 96, 0, 2, 239, 112, 0, 1, 99 }; +/* | */ static const uint8_t Font_RobotoMono_Medium_20_glyph_124[] = { 2, 19, 12, 5, 15, 34, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 188 }; +/* } */ static const uint8_t Font_RobotoMono_Medium_20_glyph_125[] = { 7, 20, 12, 3, 16, 87, 16, 0, 9, 254, 16, 0, 7, 250, 0, 0, 31, 240, 0, 0, 255, 32, 0, 15, 243, 0, 0, 255, 48, 0, 14, 244, 0, 0, 143, 193, 0, 0, 159, 251, 0, 9, 255, 160, 8, 252, 16, 0, 239, 64, 0, 15, 243, 0, 0, 255, 48, 0, 15, 242, 0, 2, 255, 0, 0, 159, 144, 0, 175, 209, 0, 4, 96, 0, 0 }; +/* ~ */ static const uint8_t Font_RobotoMono_Medium_20_glyph_126[] = { 12, 5, 12, 0, 8, 4, 222, 196, 0, 2, 97, 47, 255, 255, 128, 9, 243, 143, 96, 94, 254, 223, 224, 89, 0, 2, 191, 254, 48, 0, 0, 0, 1, 32, 0 }; + +const uint8_t Font_RobotoMono_Medium_20_glyph_nonprintable[] = { 10, 16, 12, 1, 15, 255, 252, 153, 191, 255, 254, 48, 0, 1, 175, 242, 0, 102, 32, 13, 192, 11, 255, 224, 8, 234, 175, 255, 242, 7, 255, 255, 255, 208, 10, 255, 255, 255, 48, 47, 255, 255, 244, 1, 223, 255, 255, 80, 29, 255, 255, 255, 0, 191, 255, 255, 255, 34, 239, 255, 255, 255, 255, 255, 255, 255, 255, 153, 255, 255, 255, 250, 0, 175, 255, 255, 252, 0, 223, 255, 255, 255, 255, 255, 255 }; + +const uint8_t * const Font_RobotoMono_Medium_20[126 + 1 - 32] = { + Font_RobotoMono_Medium_20_glyph_32, + Font_RobotoMono_Medium_20_glyph_33, + Font_RobotoMono_Medium_20_glyph_34, + Font_RobotoMono_Medium_20_glyph_35, + Font_RobotoMono_Medium_20_glyph_36, + Font_RobotoMono_Medium_20_glyph_37, + Font_RobotoMono_Medium_20_glyph_38, + Font_RobotoMono_Medium_20_glyph_39, + Font_RobotoMono_Medium_20_glyph_40, + Font_RobotoMono_Medium_20_glyph_41, + Font_RobotoMono_Medium_20_glyph_42, + Font_RobotoMono_Medium_20_glyph_43, + Font_RobotoMono_Medium_20_glyph_44, + Font_RobotoMono_Medium_20_glyph_45, + Font_RobotoMono_Medium_20_glyph_46, + Font_RobotoMono_Medium_20_glyph_47, + Font_RobotoMono_Medium_20_glyph_48, + Font_RobotoMono_Medium_20_glyph_49, + Font_RobotoMono_Medium_20_glyph_50, + Font_RobotoMono_Medium_20_glyph_51, + Font_RobotoMono_Medium_20_glyph_52, + Font_RobotoMono_Medium_20_glyph_53, + Font_RobotoMono_Medium_20_glyph_54, + Font_RobotoMono_Medium_20_glyph_55, + Font_RobotoMono_Medium_20_glyph_56, + Font_RobotoMono_Medium_20_glyph_57, + Font_RobotoMono_Medium_20_glyph_58, + Font_RobotoMono_Medium_20_glyph_59, + Font_RobotoMono_Medium_20_glyph_60, + Font_RobotoMono_Medium_20_glyph_61, + Font_RobotoMono_Medium_20_glyph_62, + Font_RobotoMono_Medium_20_glyph_63, + Font_RobotoMono_Medium_20_glyph_64, + Font_RobotoMono_Medium_20_glyph_65, + Font_RobotoMono_Medium_20_glyph_66, + Font_RobotoMono_Medium_20_glyph_67, + Font_RobotoMono_Medium_20_glyph_68, + Font_RobotoMono_Medium_20_glyph_69, + Font_RobotoMono_Medium_20_glyph_70, + Font_RobotoMono_Medium_20_glyph_71, + Font_RobotoMono_Medium_20_glyph_72, + Font_RobotoMono_Medium_20_glyph_73, + Font_RobotoMono_Medium_20_glyph_74, + Font_RobotoMono_Medium_20_glyph_75, + Font_RobotoMono_Medium_20_glyph_76, + Font_RobotoMono_Medium_20_glyph_77, + Font_RobotoMono_Medium_20_glyph_78, + Font_RobotoMono_Medium_20_glyph_79, + Font_RobotoMono_Medium_20_glyph_80, + Font_RobotoMono_Medium_20_glyph_81, + Font_RobotoMono_Medium_20_glyph_82, + Font_RobotoMono_Medium_20_glyph_83, + Font_RobotoMono_Medium_20_glyph_84, + Font_RobotoMono_Medium_20_glyph_85, + Font_RobotoMono_Medium_20_glyph_86, + Font_RobotoMono_Medium_20_glyph_87, + Font_RobotoMono_Medium_20_glyph_88, + Font_RobotoMono_Medium_20_glyph_89, + Font_RobotoMono_Medium_20_glyph_90, + Font_RobotoMono_Medium_20_glyph_91, + Font_RobotoMono_Medium_20_glyph_92, + Font_RobotoMono_Medium_20_glyph_93, + Font_RobotoMono_Medium_20_glyph_94, + Font_RobotoMono_Medium_20_glyph_95, + Font_RobotoMono_Medium_20_glyph_96, + Font_RobotoMono_Medium_20_glyph_97, + Font_RobotoMono_Medium_20_glyph_98, + Font_RobotoMono_Medium_20_glyph_99, + Font_RobotoMono_Medium_20_glyph_100, + Font_RobotoMono_Medium_20_glyph_101, + Font_RobotoMono_Medium_20_glyph_102, + Font_RobotoMono_Medium_20_glyph_103, + Font_RobotoMono_Medium_20_glyph_104, + Font_RobotoMono_Medium_20_glyph_105, + Font_RobotoMono_Medium_20_glyph_106, + Font_RobotoMono_Medium_20_glyph_107, + Font_RobotoMono_Medium_20_glyph_108, + Font_RobotoMono_Medium_20_glyph_109, + Font_RobotoMono_Medium_20_glyph_110, + Font_RobotoMono_Medium_20_glyph_111, + Font_RobotoMono_Medium_20_glyph_112, + Font_RobotoMono_Medium_20_glyph_113, + Font_RobotoMono_Medium_20_glyph_114, + Font_RobotoMono_Medium_20_glyph_115, + Font_RobotoMono_Medium_20_glyph_116, + Font_RobotoMono_Medium_20_glyph_117, + Font_RobotoMono_Medium_20_glyph_118, + Font_RobotoMono_Medium_20_glyph_119, + Font_RobotoMono_Medium_20_glyph_120, + Font_RobotoMono_Medium_20_glyph_121, + Font_RobotoMono_Medium_20_glyph_122, + Font_RobotoMono_Medium_20_glyph_123, + Font_RobotoMono_Medium_20_glyph_124, + Font_RobotoMono_Medium_20_glyph_125, + Font_RobotoMono_Medium_20_glyph_126, +}; diff --git a/core/embed/extmod/modtrezorui/fonts/font_robotomono_medium_20.h b/core/embed/extmod/modtrezorui/fonts/font_robotomono_medium_20.h new file mode 100644 index 0000000000..b371bca009 --- /dev/null +++ b/core/embed/extmod/modtrezorui/fonts/font_robotomono_medium_20.h @@ -0,0 +1,10 @@ +#include + +#if TREZOR_FONT_BPP != 4 +#error Wrong TREZOR_FONT_BPP (expected 4) +#endif +#define Font_RobotoMono_Medium_20_HEIGHT 20 +#define Font_RobotoMono_Medium_20_MAX_HEIGHT 22 +#define Font_RobotoMono_Medium_20_BASELINE 5 +extern const uint8_t* const Font_RobotoMono_Medium_20[126 + 1 - 32]; +extern const uint8_t Font_RobotoMono_Medium_20_glyph_nonprintable[]; diff --git a/core/embed/extmod/modtrezorui/fonts/font_robotomono_regular_20.c b/core/embed/extmod/modtrezorui/fonts/font_robotomono_regular_20.c deleted file mode 100644 index 162b9a6f9d..0000000000 --- a/core/embed/extmod/modtrezorui/fonts/font_robotomono_regular_20.c +++ /dev/null @@ -1,203 +0,0 @@ -#include - -// clang-format off - -// - the first two bytes are width and height of the glyph -// - the third, fourth and fifth bytes are advance, bearingX and bearingY of the horizontal metrics of the glyph -// - the rest is packed 4-bit glyph data - -/* */ static const uint8_t Font_RobotoMono_Regular_20_glyph_32[] = { 0, 0, 12, 0, 0 }; -/* ! */ static const uint8_t Font_RobotoMono_Regular_20_glyph_33[] = { 3, 16, 12, 4, 15, 3, 33, 251, 31, 177, 251, 31, 177, 251, 31, 177, 251, 31, 177, 251, 6, 64, 0, 0, 1, 252, 47, 208, 0 }; -/* " */ static const uint8_t Font_RobotoMono_Regular_20_glyph_34[] = { 6, 5, 12, 3, 15, 143, 0, 246, 142, 0, 246, 141, 0, 245, 140, 0, 244, 88, 0, 162 }; -/* # */ static const uint8_t Font_RobotoMono_Regular_20_glyph_35[] = { 12, 15, 12, 0, 15, 0, 0, 3, 16, 3, 0, 0, 0, 63, 32, 79, 32, 0, 0, 111, 0, 127, 0, 0, 0, 156, 0, 172, 0, 1, 34, 218, 34, 218, 33, 10, 255, 255, 255, 255, 248, 2, 54, 245, 54, 245, 49, 0, 6, 240, 6, 240, 0, 0, 9, 192, 9, 192, 0, 37, 93, 197, 93, 197, 64, 111, 255, 255, 255, 255, 192, 0, 47, 48, 63, 48, 0, 0, 95, 0, 111, 0, 0, 0, 141, 0, 156, 0, 0, 0, 186, 0, 201, 0, 0 }; -/* $ */ static const uint8_t Font_RobotoMono_Regular_20_glyph_36[] = { 10, 20, 12, 1, 17, 0, 0, 56, 0, 0, 0, 0, 111, 16, 0, 0, 1, 159, 80, 0, 0, 143, 255, 254, 48, 6, 252, 66, 127, 224, 12, 242, 0, 9, 245, 13, 240, 0, 5, 248, 11, 243, 0, 0, 33, 4, 254, 96, 0, 0, 0, 111, 255, 146, 0, 0, 1, 125, 255, 112, 0, 0, 0, 94, 243, 19, 16, 0, 5, 249, 95, 112, 0, 2, 250, 47, 208, 0, 7, 248, 10, 252, 118, 175, 225, 0, 143, 255, 251, 32, 0, 0, 158, 0, 0, 0, 0, 142, 0, 0, 0, 0, 0, 0, 0 }; -/* % */ static const uint8_t Font_RobotoMono_Regular_20_glyph_37[] = { 12, 16, 12, 0, 15, 0, 85, 16, 0, 0, 0, 29, 237, 225, 0, 0, 0, 126, 0, 216, 0, 80, 0, 140, 0, 186, 3, 242, 0, 141, 0, 186, 12, 144, 0, 63, 135, 245, 95, 16, 0, 5, 204, 96, 216, 0, 0, 0, 0, 6, 224, 0, 0, 0, 0, 14, 96, 0, 0, 0, 0, 141, 10, 255, 128, 0, 1, 245, 126, 53, 244, 0, 9, 192, 170, 0, 216, 0, 14, 64, 186, 0, 216, 0, 0, 0, 142, 18, 245, 0, 0, 0, 28, 255, 160, 0, 0, 0, 0, 34, 0 }; -/* & */ static const uint8_t Font_RobotoMono_Regular_20_glyph_38[] = { 11, 16, 12, 1, 15, 0, 3, 101, 0, 0, 0, 11, 255, 254, 16, 0, 6, 251, 21, 249, 0, 0, 175, 32, 13, 208, 0, 10, 242, 1, 250, 0, 0, 111, 130, 223, 32, 0, 0, 223, 238, 32, 0, 0, 9, 255, 32, 0, 0, 10, 252, 251, 0, 57, 39, 250, 10, 247, 7, 243, 223, 16, 13, 243, 191, 15, 224, 0, 47, 239, 144, 207, 32, 0, 127, 241, 4, 253, 100, 142, 255, 128, 5, 239, 255, 162, 223, 64, 0, 35, 0, 0, 0 }; -/* ' */ static const uint8_t Font_RobotoMono_Regular_20_glyph_39[] = { 3, 5, 12, 4, 15, 47, 98, 245, 47, 66, 243, 26, 32 }; -/* ( */ static const uint8_t Font_RobotoMono_Regular_20_glyph_40[] = { 6, 22, 12, 3, 17, 0, 0, 0, 0, 0, 118, 0, 8, 244, 0, 79, 96, 0, 220, 0, 5, 244, 0, 12, 224, 0, 31, 176, 0, 79, 128, 0, 111, 96, 0, 127, 80, 0, 143, 64, 0, 127, 80, 0, 95, 96, 0, 47, 144, 0, 14, 192, 0, 9, 241, 0, 3, 247, 0, 0, 174, 16, 0, 30, 160, 0, 3, 231, 0, 0, 35 }; -/* ) */ static const uint8_t Font_RobotoMono_Regular_20_glyph_41[] = { 6, 22, 12, 3, 17, 0, 0, 0, 165, 0, 0, 111, 64, 0, 9, 241, 0, 1, 250, 0, 0, 143, 32, 0, 63, 128, 0, 14, 208, 0, 11, 240, 0, 9, 243, 0, 8, 244, 0, 8, 244, 0, 9, 243, 0, 10, 242, 0, 12, 240, 0, 15, 176, 0, 79, 80, 0, 190, 0, 3, 246, 0, 13, 176, 0, 188, 16, 0, 64, 0, 0 }; -/* * */ static const uint8_t Font_RobotoMono_Regular_20_glyph_42[] = { 10, 11, 12, 1, 15, 0, 0, 35, 0, 0, 0, 0, 143, 16, 0, 0, 0, 127, 0, 0, 6, 0, 111, 0, 35, 63, 249, 142, 75, 251, 21, 158, 255, 253, 148, 0, 2, 255, 128, 0, 0, 13, 198, 244, 0, 0, 191, 48, 222, 32, 1, 201, 0, 63, 80, 0, 1, 0, 2, 0 }; -/* + */ static const uint8_t Font_RobotoMono_Regular_20_glyph_43[] = { 10, 11, 12, 1, 12, 0, 0, 171, 0, 0, 0, 0, 239, 0, 0, 0, 0, 239, 0, 0, 0, 0, 239, 0, 0, 138, 170, 255, 170, 169, 223, 255, 255, 255, 254, 34, 34, 239, 34, 34, 0, 0, 239, 0, 0, 0, 0, 239, 0, 0, 0, 0, 239, 0, 0, 0, 0, 136, 0, 0 }; -/* , */ static const uint8_t Font_RobotoMono_Regular_20_glyph_44[] = { 4, 7, 12, 3, 3, 1, 32, 11, 244, 11, 244, 12, 242, 15, 208, 95, 64, 1, 0 }; -/* - */ static const uint8_t Font_RobotoMono_Regular_20_glyph_45[] = { 8, 2, 12, 2, 7, 223, 255, 255, 249, 120, 136, 136, 132 }; -/* . */ static const uint8_t Font_RobotoMono_Regular_20_glyph_46[] = { 4, 4, 12, 4, 3, 5, 129, 31, 250, 14, 247, 0, 32 }; -/* / */ static const uint8_t Font_RobotoMono_Regular_20_glyph_47[] = { 9, 17, 12, 2, 15, 0, 0, 0, 35, 0, 0, 0, 13, 176, 0, 0, 4, 245, 0, 0, 0, 175, 0, 0, 0, 31, 144, 0, 0, 6, 243, 0, 0, 0, 205, 0, 0, 0, 47, 96, 0, 0, 9, 241, 0, 0, 0, 234, 0, 0, 0, 95, 64, 0, 0, 11, 224, 0, 0, 1, 248, 0, 0, 0, 127, 32, 0, 0, 13, 176, 0, 0, 4, 245, 0, 0, 0, 19, 0, 0, 0, 0 }; -/* 0 */ static const uint8_t Font_RobotoMono_Regular_20_glyph_48[] = { 10, 16, 12, 1, 15, 0, 3, 102, 48, 0, 0, 191, 255, 251, 16, 10, 248, 17, 127, 176, 47, 160, 0, 9, 243, 111, 80, 0, 5, 247, 143, 64, 0, 44, 249, 159, 48, 5, 254, 250, 159, 48, 143, 163, 250, 159, 92, 247, 3, 250, 159, 254, 48, 3, 249, 143, 177, 0, 3, 249, 111, 96, 0, 5, 246, 31, 192, 0, 11, 242, 8, 251, 85, 175, 144, 0, 127, 255, 248, 0, 0, 0, 34, 0, 0 }; -/* 1 */ static const uint8_t Font_RobotoMono_Regular_20_glyph_49[] = { 6, 15, 12, 2, 15, 0, 0, 1, 0, 23, 217, 91, 255, 249, 254, 134, 249, 64, 4, 249, 0, 4, 249, 0, 4, 249, 0, 4, 249, 0, 4, 249, 0, 4, 249, 0, 4, 249, 0, 4, 249, 0, 4, 249, 0, 4, 249, 0, 4, 249 }; -/* 2 */ static const uint8_t Font_RobotoMono_Regular_20_glyph_50[] = { 11, 15, 12, 0, 15, 0, 1, 86, 80, 0, 0, 7, 255, 255, 245, 0, 6, 251, 49, 78, 243, 0, 238, 0, 0, 79, 160, 47, 160, 0, 1, 252, 0, 0, 0, 0, 63, 160, 0, 0, 0, 10, 243, 0, 0, 0, 5, 250, 0, 0, 0, 3, 253, 0, 0, 0, 2, 238, 16, 0, 0, 1, 238, 32, 0, 0, 1, 223, 48, 0, 0, 0, 207, 64, 0, 0, 0, 175, 183, 119, 119, 115, 14, 255, 255, 255, 255, 96 }; -/* 3 */ static const uint8_t Font_RobotoMono_Regular_20_glyph_51[] = { 10, 16, 12, 0, 15, 0, 1, 86, 80, 0, 0, 127, 255, 255, 80, 5, 252, 49, 77, 243, 13, 241, 0, 4, 249, 7, 112, 0, 1, 251, 0, 0, 0, 4, 249, 0, 0, 0, 78, 225, 0, 2, 255, 254, 32, 0, 1, 120, 191, 193, 0, 0, 0, 6, 249, 0, 0, 0, 0, 254, 12, 144, 0, 0, 238, 14, 241, 0, 3, 251, 5, 253, 100, 126, 243, 0, 93, 255, 252, 48, 0, 0, 19, 16, 0 }; -/* 4 */ static const uint8_t Font_RobotoMono_Regular_20_glyph_52[] = { 11, 15, 12, 0, 15, 0, 0, 0, 3, 48, 0, 0, 0, 5, 255, 0, 0, 0, 1, 239, 240, 0, 0, 0, 175, 223, 0, 0, 0, 79, 108, 240, 0, 0, 14, 192, 207, 0, 0, 9, 242, 12, 240, 0, 3, 247, 0, 207, 0, 0, 221, 0, 12, 240, 0, 143, 48, 0, 207, 0, 47, 252, 204, 207, 252, 195, 187, 187, 187, 239, 187, 0, 0, 0, 12, 240, 0, 0, 0, 0, 207, 0, 0, 0, 0, 12, 240, 0 }; -/* 5 */ static const uint8_t Font_RobotoMono_Regular_20_glyph_53[] = { 10, 16, 12, 1, 15, 0, 51, 51, 51, 49, 0, 255, 255, 255, 245, 1, 252, 136, 136, 131, 3, 247, 0, 0, 0, 5, 246, 0, 0, 0, 6, 244, 36, 32, 0, 8, 254, 255, 253, 48, 9, 251, 101, 191, 225, 0, 32, 0, 9, 247, 0, 0, 0, 2, 251, 0, 0, 0, 0, 252, 27, 112, 0, 2, 250, 14, 225, 0, 8, 246, 5, 253, 100, 159, 208, 0, 93, 255, 251, 32, 0, 0, 35, 16, 0 }; -/* 6 */ static const uint8_t Font_RobotoMono_Regular_20_glyph_54[] = { 10, 16, 12, 1, 15, 0, 0, 1, 49, 0, 0, 5, 207, 245, 0, 0, 159, 249, 98, 0, 6, 251, 16, 0, 0, 14, 225, 0, 0, 0, 63, 128, 53, 32, 0, 111, 141, 255, 250, 0, 143, 250, 51, 191, 144, 159, 144, 0, 13, 241, 175, 48, 0, 8, 244, 159, 64, 0, 7, 245, 111, 112, 0, 8, 244, 31, 224, 0, 14, 240, 6, 253, 86, 207, 96, 0, 110, 255, 231, 0, 0, 0, 34, 0, 0 }; -/* 7 */ static const uint8_t Font_RobotoMono_Regular_20_glyph_55[] = { 10, 15, 12, 1, 15, 51, 51, 51, 51, 50, 239, 255, 255, 255, 251, 85, 85, 85, 89, 246, 0, 0, 0, 11, 224, 0, 0, 0, 63, 112, 0, 0, 0, 175, 16, 0, 0, 2, 249, 0, 0, 0, 9, 242, 0, 0, 0, 31, 176, 0, 0, 0, 143, 64, 0, 0, 0, 237, 0, 0, 0, 7, 245, 0, 0, 0, 14, 224, 0, 0, 0, 111, 112, 0, 0, 0, 223, 16, 0, 0 }; -/* 8 */ static const uint8_t Font_RobotoMono_Regular_20_glyph_56[] = { 10, 16, 12, 1, 15, 0, 1, 86, 64, 0, 0, 159, 255, 253, 48, 6, 252, 49, 111, 224, 13, 241, 0, 9, 245, 14, 224, 0, 6, 246, 12, 241, 0, 8, 244, 4, 252, 49, 111, 176, 0, 95, 255, 252, 0, 3, 238, 135, 191, 144, 13, 241, 0, 9, 245, 63, 160, 0, 1, 251, 63, 144, 0, 1, 251, 31, 208, 0, 6, 248, 8, 252, 101, 143, 225, 0, 126, 255, 251, 32, 0, 0, 35, 16, 0 }; -/* 9 */ static const uint8_t Font_RobotoMono_Regular_20_glyph_57[] = { 10, 16, 12, 1, 15, 0, 3, 101, 32, 0, 1, 207, 255, 248, 0, 11, 248, 35, 207, 96, 63, 160, 0, 30, 224, 127, 80, 0, 9, 243, 143, 64, 0, 6, 245, 127, 96, 0, 6, 246, 63, 192, 0, 13, 246, 11, 251, 69, 223, 245, 1, 191, 255, 185, 243, 0, 1, 50, 11, 240, 0, 0, 0, 47, 160, 0, 0, 3, 223, 32, 0, 90, 223, 245, 0, 0, 143, 217, 32, 0, 0, 0, 0, 0, 0 }; -/* : */ static const uint8_t Font_RobotoMono_Regular_20_glyph_58[] = { 4, 13, 12, 5, 12, 24, 80, 159, 242, 127, 224, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 80, 159, 242, 127, 224, 2, 0 }; -/* ; */ static const uint8_t Font_RobotoMono_Regular_20_glyph_59[] = { 5, 16, 12, 4, 12, 2, 132, 0, 191, 241, 8, 253, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 16, 6, 249, 0, 111, 144, 7, 247, 0, 191, 32, 31, 144, 0, 16, 0 }; -/* < */ static const uint8_t Font_RobotoMono_Regular_20_glyph_60[] = { 9, 10, 12, 1, 11, 0, 0, 0, 1, 112, 0, 0, 58, 255, 0, 4, 207, 252, 80, 109, 254, 130, 0, 95, 229, 0, 0, 2, 207, 232, 32, 0, 0, 58, 255, 198, 0, 0, 1, 143, 254, 0, 0, 0, 7, 192, 0, 0, 0, 0 }; -/* = */ static const uint8_t Font_RobotoMono_Regular_20_glyph_61[] = { 10, 7, 12, 1, 10, 3, 51, 51, 51, 49, 95, 255, 255, 255, 246, 22, 102, 102, 102, 98, 0, 0, 0, 0, 0, 2, 34, 34, 34, 32, 95, 255, 255, 255, 246, 39, 119, 119, 119, 114 }; -/* > */ static const uint8_t Font_RobotoMono_Regular_20_glyph_62[] = { 10, 10, 12, 1, 11, 38, 0, 0, 0, 0, 79, 248, 32, 0, 0, 6, 207, 251, 64, 0, 0, 2, 142, 253, 96, 0, 0, 0, 78, 245, 0, 0, 57, 255, 178, 1, 125, 255, 146, 0, 63, 254, 113, 0, 0, 76, 80, 0, 0, 0, 0, 0, 0, 0, 0 }; -/* ? */ static const uint8_t Font_RobotoMono_Regular_20_glyph_63[] = { 10, 16, 12, 1, 15, 0, 2, 102, 48, 0, 1, 191, 255, 253, 32, 11, 249, 51, 143, 208, 31, 192, 0, 11, 243, 1, 16, 0, 9, 243, 0, 0, 0, 13, 241, 0, 0, 0, 143, 128, 0, 0, 7, 252, 0, 0, 0, 111, 192, 0, 0, 0, 239, 16, 0, 0, 0, 253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 237, 0, 0, 0, 1, 254, 0, 0, 0, 0, 0, 0, 0 }; -/* @ */ static const uint8_t Font_RobotoMono_Regular_20_glyph_64[] = { 12, 16, 12, 0, 15, 0, 0, 2, 49, 0, 0, 0, 3, 207, 255, 194, 0, 0, 79, 129, 2, 174, 32, 1, 230, 0, 66, 10, 160, 8, 176, 46, 255, 82, 240, 13, 80, 217, 10, 96, 211, 31, 19, 240, 12, 80, 196, 78, 7, 176, 13, 64, 196, 93, 9, 144, 14, 32, 211, 78, 9, 160, 31, 17, 240, 47, 6, 248, 223, 106, 144, 14, 80, 189, 86, 218, 0, 8, 209, 0, 0, 0, 0, 0, 206, 99, 55, 64, 0, 0, 8, 239, 253, 64, 0, 0, 0, 0, 0, 0, 0 }; -/* A */ static const uint8_t Font_RobotoMono_Regular_20_glyph_65[] = { 12, 15, 12, 0, 15, 0, 0, 2, 48, 0, 0, 0, 0, 13, 241, 0, 0, 0, 0, 47, 246, 0, 0, 0, 0, 143, 252, 0, 0, 0, 0, 221, 159, 16, 0, 0, 2, 248, 79, 96, 0, 0, 7, 243, 15, 176, 0, 0, 12, 224, 10, 240, 0, 0, 31, 144, 5, 245, 0, 0, 111, 132, 69, 250, 0, 0, 207, 255, 255, 255, 0, 1, 251, 85, 85, 159, 64, 6, 245, 0, 0, 47, 144, 11, 241, 0, 0, 13, 224, 31, 176, 0, 0, 8, 243 }; -/* B */ static const uint8_t Font_RobotoMono_Regular_20_glyph_66[] = { 10, 15, 12, 1, 15, 19, 51, 50, 0, 0, 95, 255, 255, 250, 16, 95, 165, 86, 175, 208, 95, 128, 0, 9, 246, 95, 128, 0, 4, 248, 95, 128, 0, 8, 246, 95, 146, 35, 143, 192, 95, 255, 255, 252, 16, 95, 165, 85, 159, 209, 95, 128, 0, 5, 249, 95, 128, 0, 0, 254, 95, 128, 0, 0, 254, 95, 128, 0, 8, 249, 95, 200, 137, 207, 209, 95, 255, 255, 215, 0 }; -/* C */ static const uint8_t Font_RobotoMono_Regular_20_glyph_67[] = { 10, 16, 12, 1, 15, 0, 2, 86, 48, 0, 0, 175, 255, 253, 32, 10, 249, 33, 111, 225, 63, 160, 0, 6, 248, 159, 48, 0, 0, 252, 223, 0, 0, 0, 34, 238, 0, 0, 0, 0, 253, 0, 0, 0, 0, 253, 0, 0, 0, 0, 238, 0, 0, 0, 0, 207, 0, 0, 0, 67, 143, 64, 0, 1, 251, 47, 192, 0, 8, 246, 7, 252, 84, 159, 192, 0, 110, 255, 249, 0, 0, 0, 34, 0, 0 }; -/* D */ static const uint8_t Font_RobotoMono_Regular_20_glyph_68[] = { 11, 15, 12, 1, 15, 19, 51, 32, 0, 0, 7, 255, 255, 250, 32, 0, 127, 132, 89, 255, 64, 7, 245, 0, 2, 239, 32, 127, 80, 0, 5, 249, 7, 245, 0, 0, 15, 208, 127, 80, 0, 0, 207, 7, 245, 0, 0, 11, 241, 127, 80, 0, 0, 191, 23, 245, 0, 0, 12, 240, 127, 80, 0, 0, 253, 7, 245, 0, 0, 127, 112, 127, 80, 0, 95, 224, 7, 250, 120, 207, 210, 0, 127, 255, 252, 112, 0, 0 }; -/* E */ static const uint8_t Font_RobotoMono_Regular_20_glyph_69[] = { 10, 15, 12, 1, 15, 3, 51, 51, 51, 49, 63, 255, 255, 255, 246, 63, 181, 85, 85, 82, 63, 144, 0, 0, 0, 63, 144, 0, 0, 0, 63, 144, 0, 0, 0, 63, 161, 17, 17, 0, 63, 255, 255, 255, 128, 63, 198, 102, 102, 48, 63, 144, 0, 0, 0, 63, 144, 0, 0, 0, 63, 144, 0, 0, 0, 63, 144, 0, 0, 0, 63, 200, 136, 136, 132, 63, 255, 255, 255, 248 }; -/* F */ static const uint8_t Font_RobotoMono_Regular_20_glyph_70[] = { 10, 15, 12, 1, 15, 3, 51, 51, 51, 50, 47, 255, 255, 255, 249, 47, 197, 85, 85, 83, 47, 176, 0, 0, 0, 47, 176, 0, 0, 0, 47, 176, 0, 0, 0, 47, 176, 0, 0, 0, 47, 253, 221, 221, 112, 47, 235, 187, 187, 112, 47, 176, 0, 0, 0, 47, 176, 0, 0, 0, 47, 176, 0, 0, 0, 47, 176, 0, 0, 0, 47, 176, 0, 0, 0, 47, 176, 0, 0, 0 }; -/* G */ static const uint8_t Font_RobotoMono_Regular_20_glyph_71[] = { 11, 16, 12, 0, 15, 0, 0, 38, 99, 0, 0, 0, 175, 255, 253, 32, 0, 175, 163, 39, 254, 16, 79, 160, 0, 6, 248, 10, 243, 0, 0, 14, 192, 239, 0, 0, 0, 0, 15, 208, 0, 0, 0, 0, 252, 0, 0, 17, 17, 15, 192, 0, 191, 255, 224, 253, 0, 5, 119, 238, 12, 240, 0, 0, 13, 224, 143, 80, 0, 0, 222, 1, 254, 16, 0, 14, 224, 6, 254, 117, 125, 248, 0, 4, 223, 255, 197, 0, 0, 0, 19, 16, 0 }; -/* H */ static const uint8_t Font_RobotoMono_Regular_20_glyph_72[] = { 10, 15, 12, 1, 15, 35, 0, 0, 0, 50, 175, 16, 0, 1, 249, 175, 16, 0, 1, 249, 175, 16, 0, 1, 249, 175, 16, 0, 1, 249, 175, 16, 0, 1, 249, 175, 33, 17, 19, 249, 175, 255, 255, 255, 249, 175, 118, 102, 103, 249, 175, 16, 0, 1, 249, 175, 16, 0, 1, 249, 175, 16, 0, 1, 249, 175, 16, 0, 1, 249, 175, 16, 0, 1, 249, 175, 16, 0, 1, 249 }; -/* I */ static const uint8_t Font_RobotoMono_Regular_20_glyph_73[] = { 10, 15, 12, 1, 15, 19, 51, 51, 51, 49, 79, 255, 255, 255, 244, 21, 85, 254, 85, 81, 0, 0, 254, 0, 0, 0, 0, 254, 0, 0, 0, 0, 254, 0, 0, 0, 0, 254, 0, 0, 0, 0, 254, 0, 0, 0, 0, 254, 0, 0, 0, 0, 254, 0, 0, 0, 0, 254, 0, 0, 0, 0, 254, 0, 0, 0, 0, 254, 0, 0, 41, 153, 255, 153, 146, 79, 255, 255, 255, 244 }; -/* J */ static const uint8_t Font_RobotoMono_Regular_20_glyph_74[] = { 11, 16, 12, 0, 15, 0, 0, 0, 0, 35, 0, 0, 0, 0, 10, 243, 0, 0, 0, 0, 175, 48, 0, 0, 0, 10, 243, 0, 0, 0, 0, 175, 48, 0, 0, 0, 10, 243, 0, 0, 0, 0, 175, 48, 0, 0, 0, 10, 243, 0, 0, 0, 0, 175, 48, 0, 0, 0, 10, 243, 1, 16, 0, 0, 175, 48, 254, 0, 0, 12, 242, 10, 245, 0, 3, 253, 0, 46, 248, 88, 255, 48, 0, 44, 255, 252, 48, 0, 0, 1, 49, 0, 0 }; -/* K */ static const uint8_t Font_RobotoMono_Regular_20_glyph_75[] = { 11, 15, 12, 1, 15, 19, 16, 0, 0, 51, 5, 248, 0, 0, 127, 160, 95, 128, 0, 79, 208, 5, 248, 0, 47, 242, 0, 95, 128, 13, 244, 0, 5, 248, 10, 247, 0, 0, 95, 135, 251, 0, 0, 5, 252, 255, 160, 0, 0, 95, 254, 223, 64, 0, 5, 255, 51, 254, 16, 0, 95, 128, 8, 250, 0, 5, 248, 0, 13, 244, 0, 95, 128, 0, 63, 224, 5, 248, 0, 0, 159, 144, 95, 128, 0, 0, 239, 64 }; -/* L */ static const uint8_t Font_RobotoMono_Regular_20_glyph_76[] = { 10, 15, 12, 1, 15, 3, 32, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 176, 0, 0, 0, 31, 232, 136, 136, 133, 31, 255, 255, 255, 251 }; -/* M */ static const uint8_t Font_RobotoMono_Regular_20_glyph_77[] = { 10, 15, 12, 1, 15, 19, 32, 0, 1, 50, 143, 224, 0, 12, 252, 143, 243, 0, 31, 252, 143, 249, 0, 127, 252, 143, 190, 0, 203, 236, 143, 111, 50, 246, 236, 143, 47, 136, 241, 252, 143, 42, 221, 176, 252, 143, 37, 255, 96, 252, 143, 48, 255, 0, 252, 143, 48, 187, 0, 252, 143, 48, 0, 0, 252, 143, 48, 0, 0, 252, 143, 48, 0, 0, 252, 143, 48, 0, 0, 252 }; -/* N */ static const uint8_t Font_RobotoMono_Regular_20_glyph_78[] = { 10, 15, 12, 1, 15, 35, 16, 0, 0, 50, 159, 144, 0, 3, 249, 159, 242, 0, 3, 249, 159, 250, 0, 3, 249, 159, 239, 32, 3, 249, 159, 111, 176, 3, 249, 159, 58, 243, 3, 249, 159, 50, 251, 3, 249, 159, 48, 159, 51, 249, 159, 48, 31, 196, 249, 159, 48, 9, 248, 249, 159, 48, 1, 255, 249, 159, 48, 0, 143, 249, 159, 48, 0, 31, 249, 159, 48, 0, 7, 249 }; -/* O */ static const uint8_t Font_RobotoMono_Regular_20_glyph_79[] = { 10, 16, 12, 1, 15, 0, 2, 102, 32, 0, 0, 175, 255, 250, 0, 10, 250, 68, 175, 160, 63, 176, 0, 11, 243, 159, 48, 0, 3, 249, 223, 0, 0, 0, 252, 237, 0, 0, 0, 238, 253, 0, 0, 0, 223, 253, 0, 0, 0, 223, 237, 0, 0, 0, 238, 207, 0, 0, 0, 252, 143, 80, 0, 4, 248, 47, 208, 0, 13, 242, 7, 253, 119, 223, 112, 0, 110, 255, 230, 0, 0, 0, 34, 0, 0 }; -/* P */ static const uint8_t Font_RobotoMono_Regular_20_glyph_80[] = { 11, 15, 12, 1, 15, 3, 51, 51, 16, 0, 2, 255, 255, 255, 212, 0, 47, 196, 68, 126, 245, 2, 250, 0, 0, 47, 224, 47, 160, 0, 0, 191, 34, 250, 0, 0, 10, 242, 47, 160, 0, 1, 254, 2, 251, 51, 53, 223, 96, 47, 255, 255, 254, 80, 2, 252, 68, 67, 0, 0, 47, 160, 0, 0, 0, 2, 250, 0, 0, 0, 0, 47, 160, 0, 0, 0, 2, 250, 0, 0, 0, 0, 47, 160, 0, 0, 0, 0 }; -/* Q */ static const uint8_t Font_RobotoMono_Regular_20_glyph_81[] = { 12, 18, 12, 0, 15, 0, 0, 38, 98, 0, 0, 0, 10, 255, 255, 160, 0, 0, 191, 164, 74, 251, 0, 4, 250, 0, 0, 175, 64, 10, 242, 0, 0, 47, 160, 14, 224, 0, 0, 14, 224, 15, 192, 0, 0, 12, 240, 31, 176, 0, 0, 11, 241, 31, 176, 0, 0, 11, 241, 15, 192, 0, 0, 12, 240, 13, 224, 0, 0, 14, 208, 9, 243, 0, 0, 63, 144, 2, 252, 0, 0, 207, 48, 0, 143, 215, 124, 248, 0, 0, 7, 239, 255, 245, 0, 0, 0, 2, 35, 239, 128, 0, 0, 0, 0, 29, 225, 0, 0, 0, 0, 0, 32 }; -/* R */ static const uint8_t Font_RobotoMono_Regular_20_glyph_82[] = { 11, 15, 12, 1, 15, 3, 51, 50, 0, 0, 3, 255, 255, 255, 161, 0, 63, 164, 69, 159, 225, 3, 249, 0, 0, 127, 128, 63, 144, 0, 1, 251, 3, 249, 0, 0, 31, 176, 63, 144, 0, 8, 247, 3, 250, 68, 90, 253, 0, 63, 255, 255, 249, 0, 3, 250, 51, 143, 112, 0, 63, 144, 0, 238, 0, 3, 249, 0, 7, 246, 0, 63, 144, 0, 31, 224, 3, 249, 0, 0, 143, 96, 63, 144, 0, 1, 254, 0 }; -/* S */ static const uint8_t Font_RobotoMono_Regular_20_glyph_83[] = { 11, 16, 12, 1, 15, 0, 2, 86, 48, 0, 0, 26, 255, 255, 211, 0, 12, 249, 50, 111, 243, 4, 251, 0, 0, 95, 176, 111, 112, 0, 0, 221, 3, 252, 0, 0, 0, 0, 10, 253, 80, 0, 0, 0, 8, 255, 250, 48, 0, 0, 1, 125, 255, 128, 0, 0, 0, 3, 223, 112, 17, 0, 0, 1, 254, 12, 242, 0, 0, 14, 240, 127, 160, 0, 3, 253, 0, 191, 198, 88, 255, 64, 0, 126, 255, 252, 48, 0, 0, 2, 33, 0, 0 }; -/* T */ static const uint8_t Font_RobotoMono_Regular_20_glyph_84[] = { 12, 15, 12, 0, 15, 3, 51, 51, 51, 51, 49, 79, 255, 255, 255, 255, 244, 21, 85, 94, 229, 85, 81, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0, 0, 0, 13, 224, 0, 0 }; -/* U */ static const uint8_t Font_RobotoMono_Regular_20_glyph_85[] = { 10, 16, 12, 1, 15, 35, 0, 0, 0, 50, 175, 16, 0, 2, 250, 175, 16, 0, 2, 250, 175, 16, 0, 2, 250, 175, 16, 0, 2, 250, 175, 16, 0, 2, 250, 175, 32, 0, 2, 250, 175, 32, 0, 2, 250, 175, 32, 0, 2, 250, 175, 32, 0, 2, 250, 175, 32, 0, 2, 250, 143, 80, 0, 5, 248, 63, 192, 0, 12, 242, 9, 252, 102, 207, 128, 0, 127, 255, 231, 0, 0, 0, 34, 0, 0 }; -/* V */ static const uint8_t Font_RobotoMono_Regular_20_glyph_86[] = { 12, 15, 12, 0, 15, 19, 32, 0, 0, 2, 48, 31, 208, 0, 0, 14, 240, 12, 242, 0, 0, 63, 176, 7, 246, 0, 0, 127, 96, 2, 251, 0, 0, 207, 16, 0, 223, 0, 1, 252, 0, 0, 143, 80, 6, 246, 0, 0, 47, 144, 10, 241, 0, 0, 13, 224, 15, 192, 0, 0, 8, 243, 79, 112, 0, 0, 3, 247, 159, 32, 0, 0, 0, 236, 221, 0, 0, 0, 0, 159, 248, 0, 0, 0, 0, 79, 243, 0, 0, 0, 0, 15, 224, 0, 0 }; -/* W */ static const uint8_t Font_RobotoMono_Regular_20_glyph_87[] = { 12, 15, 12, 0, 15, 3, 16, 2, 48, 0, 49, 63, 128, 12, 240, 3, 247, 31, 144, 15, 243, 5, 245, 15, 176, 47, 246, 7, 243, 13, 208, 79, 233, 8, 241, 11, 224, 126, 172, 10, 240, 9, 240, 172, 126, 12, 208, 7, 242, 217, 95, 29, 176, 5, 244, 246, 47, 79, 144, 3, 248, 243, 15, 143, 112, 1, 253, 241, 12, 223, 80, 0, 255, 224, 10, 255, 48, 0, 223, 176, 7, 255, 16, 0, 207, 128, 4, 255, 0, 0, 175, 96, 1, 254, 0 }; -/* X */ static const uint8_t Font_RobotoMono_Regular_20_glyph_88[] = { 12, 15, 12, 0, 15, 3, 48, 0, 0, 3, 48, 10, 247, 0, 0, 63, 208, 1, 255, 16, 0, 207, 64, 0, 127, 128, 5, 251, 0, 0, 13, 242, 13, 242, 0, 0, 4, 250, 111, 128, 0, 0, 0, 191, 238, 0, 0, 0, 0, 47, 246, 0, 0, 0, 0, 79, 249, 0, 0, 0, 0, 223, 207, 32, 0, 0, 7, 247, 63, 176, 0, 0, 31, 224, 10, 245, 0, 0, 175, 80, 2, 254, 0, 4, 253, 0, 0, 143, 128, 13, 244, 0, 0, 30, 242 }; -/* Y */ static const uint8_t Font_RobotoMono_Regular_20_glyph_89[] = { 12, 15, 12, 0, 15, 19, 32, 0, 0, 3, 48, 31, 224, 0, 0, 63, 208, 8, 247, 0, 0, 175, 80, 1, 253, 0, 1, 253, 0, 0, 159, 80, 8, 245, 0, 0, 31, 192, 31, 208, 0, 0, 9, 243, 127, 80, 0, 0, 1, 251, 237, 0, 0, 0, 0, 159, 245, 0, 0, 0, 0, 31, 224, 0, 0, 0, 0, 15, 192, 0, 0, 0, 0, 15, 192, 0, 0, 0, 0, 15, 192, 0, 0, 0, 0, 15, 176, 0, 0, 0, 0, 15, 176, 0, 0 }; -/* Z */ static const uint8_t Font_RobotoMono_Regular_20_glyph_90[] = { 10, 15, 12, 1, 15, 35, 51, 51, 51, 48, 207, 255, 255, 255, 244, 69, 85, 85, 95, 241, 0, 0, 0, 143, 112, 0, 0, 3, 252, 0, 0, 0, 12, 243, 0, 0, 0, 127, 128, 0, 0, 1, 254, 0, 0, 0, 11, 244, 0, 0, 0, 95, 160, 0, 0, 0, 239, 16, 0, 0, 9, 246, 0, 0, 0, 63, 192, 0, 0, 0, 207, 168, 136, 136, 132, 223, 255, 255, 255, 248 }; -/* [ */ static const uint8_t Font_RobotoMono_Regular_20_glyph_91[] = { 5, 21, 12, 4, 17, 52, 68, 13, 255, 240, 222, 51, 13, 224, 0, 222, 0, 13, 224, 0, 222, 0, 13, 224, 0, 222, 0, 13, 224, 0, 222, 0, 13, 224, 0, 222, 0, 13, 224, 0, 222, 0, 13, 224, 0, 222, 0, 13, 224, 0, 222, 119, 13, 255, 240, 0, 0, 0 }; -/* \ */ static const uint8_t Font_RobotoMono_Regular_20_glyph_92[] = { 8, 17, 12, 2, 15, 35, 0, 0, 0, 127, 32, 0, 0, 31, 128, 0, 0, 11, 224, 0, 0, 5, 245, 0, 0, 0, 235, 0, 0, 0, 143, 16, 0, 0, 47, 112, 0, 0, 12, 208, 0, 0, 6, 243, 0, 0, 0, 250, 0, 0, 0, 175, 0, 0, 0, 63, 96, 0, 0, 13, 192, 0, 0, 7, 242, 0, 0, 1, 248, 0, 0, 0, 50 }; -/* ] */ static const uint8_t Font_RobotoMono_Regular_20_glyph_93[] = { 5, 21, 12, 3, 17, 4, 68, 48, 255, 253, 3, 62, 208, 0, 237, 0, 14, 208, 0, 237, 0, 14, 208, 0, 237, 0, 14, 208, 0, 237, 0, 14, 208, 0, 237, 0, 14, 208, 0, 237, 0, 14, 208, 0, 237, 0, 14, 208, 0, 237, 7, 126, 208, 255, 253, 0, 0, 0 }; -/* ^ */ static const uint8_t Font_RobotoMono_Regular_20_glyph_94[] = { 8, 9, 12, 2, 15, 0, 2, 32, 0, 0, 14, 224, 0, 0, 95, 245, 0, 0, 189, 235, 0, 2, 248, 143, 32, 9, 241, 31, 128, 14, 176, 11, 224, 111, 64, 4, 245, 70, 0, 0, 100 }; -/* _ */ static const uint8_t Font_RobotoMono_Regular_20_glyph_95[] = { 10, 2, 12, 1, 0, 127, 255, 255, 255, 247, 55, 119, 119, 119, 115 }; -/* ` */ static const uint8_t Font_RobotoMono_Regular_20_glyph_96[] = { 4, 4, 12, 4, 15, 87, 32, 46, 208, 3, 248, 0, 18 }; -/* a */ static const uint8_t Font_RobotoMono_Regular_20_glyph_97[] = { 10, 12, 12, 1, 11, 0, 41, 187, 130, 0, 6, 255, 188, 255, 80, 31, 209, 0, 47, 224, 21, 48, 0, 11, 242, 0, 3, 86, 108, 242, 4, 239, 254, 239, 242, 31, 211, 0, 10, 242, 111, 96, 0, 10, 242, 111, 112, 0, 30, 242, 31, 248, 104, 239, 243, 4, 223, 255, 136, 246, 0, 2, 32, 0, 0 }; -/* b */ static const uint8_t Font_RobotoMono_Regular_20_glyph_98[] = { 10, 16, 12, 1, 15, 79, 128, 0, 0, 0, 79, 128, 0, 0, 0, 79, 128, 0, 0, 0, 79, 128, 0, 0, 0, 79, 132, 172, 163, 0, 79, 223, 221, 255, 80, 79, 244, 0, 63, 241, 79, 144, 0, 8, 246, 79, 128, 0, 4, 249, 79, 128, 0, 2, 250, 79, 128, 0, 3, 250, 79, 128, 0, 6, 247, 79, 192, 0, 12, 242, 79, 252, 102, 207, 160, 79, 122, 255, 250, 0, 0, 0, 18, 16, 0 }; -/* c */ static const uint8_t Font_RobotoMono_Regular_20_glyph_99[] = { 10, 12, 12, 1, 11, 0, 23, 188, 147, 0, 2, 239, 204, 255, 96, 13, 244, 0, 29, 242, 79, 144, 0, 5, 247, 143, 80, 0, 0, 16, 159, 48, 0, 0, 0, 159, 64, 0, 0, 0, 111, 112, 0, 1, 82, 31, 208, 0, 7, 245, 7, 252, 84, 159, 192, 0, 110, 255, 249, 0, 0, 0, 35, 0, 0 }; -/* d */ static const uint8_t Font_RobotoMono_Regular_20_glyph_100[] = { 10, 16, 12, 1, 15, 0, 0, 0, 8, 244, 0, 0, 0, 8, 244, 0, 0, 0, 8, 244, 0, 0, 0, 8, 244, 0, 41, 202, 72, 244, 4, 255, 221, 254, 244, 14, 244, 0, 63, 244, 95, 144, 0, 8, 244, 143, 64, 0, 8, 244, 175, 32, 0, 8, 244, 159, 48, 0, 8, 244, 127, 96, 0, 8, 244, 47, 208, 0, 12, 244, 9, 252, 102, 207, 244, 0, 159, 255, 184, 244, 0, 1, 49, 0, 0 }; -/* e */ static const uint8_t Font_RobotoMono_Regular_20_glyph_101[] = { 10, 12, 12, 1, 11, 0, 6, 187, 146, 0, 1, 223, 220, 255, 80, 12, 244, 0, 46, 241, 79, 144, 0, 5, 246, 159, 116, 68, 69, 249, 175, 255, 255, 255, 250, 175, 83, 51, 51, 50, 143, 96, 0, 0, 0, 47, 225, 0, 0, 112, 7, 254, 100, 109, 243, 0, 93, 255, 252, 48, 0, 0, 35, 16, 0 }; -/* f */ static const uint8_t Font_RobotoMono_Regular_20_glyph_102[] = { 11, 16, 12, 1, 16, 0, 0, 0, 86, 82, 0, 0, 5, 255, 255, 240, 0, 2, 254, 82, 36, 0, 0, 127, 96, 0, 0, 0, 9, 243, 0, 0, 4, 153, 223, 169, 153, 32, 109, 222, 253, 221, 211, 0, 0, 159, 48, 0, 0, 0, 9, 243, 0, 0, 0, 0, 159, 48, 0, 0, 0, 9, 243, 0, 0, 0, 0, 159, 48, 0, 0, 0, 9, 243, 0, 0, 0, 0, 159, 48, 0, 0, 0, 9, 243, 0, 0, 0, 0, 159, 48, 0, 0 }; -/* g */ static const uint8_t Font_RobotoMono_Regular_20_glyph_103[] = { 10, 16, 12, 1, 11, 0, 41, 202, 67, 146, 4, 255, 221, 253, 244, 14, 244, 0, 62, 244, 95, 144, 0, 8, 244, 143, 64, 0, 8, 244, 159, 32, 0, 8, 244, 159, 48, 0, 8, 244, 127, 96, 0, 8, 244, 47, 208, 0, 12, 244, 9, 252, 102, 207, 244, 0, 159, 255, 185, 244, 0, 1, 49, 9, 243, 5, 32, 0, 30, 240, 13, 248, 86, 223, 112, 1, 159, 255, 230, 0, 0, 0, 33, 0, 0 }; -/* h */ static const uint8_t Font_RobotoMono_Regular_20_glyph_104[] = { 10, 15, 12, 1, 15, 79, 128, 0, 0, 0, 79, 128, 0, 0, 0, 79, 128, 0, 0, 0, 79, 128, 0, 0, 0, 79, 129, 139, 182, 0, 79, 174, 220, 255, 160, 79, 245, 0, 29, 242, 79, 128, 0, 7, 246, 79, 128, 0, 6, 246, 79, 128, 0, 6, 247, 79, 128, 0, 6, 247, 79, 128, 0, 6, 247, 79, 128, 0, 6, 247, 79, 128, 0, 6, 247, 79, 128, 0, 6, 247 }; -/* i */ static const uint8_t Font_RobotoMono_Regular_20_glyph_105[] = { 10, 15, 12, 1, 15, 0, 0, 22, 0, 0, 0, 0, 159, 112, 0, 0, 0, 74, 32, 0, 0, 0, 0, 0, 0, 9, 153, 153, 48, 0, 15, 255, 255, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 9, 153, 191, 185, 151, 15, 255, 255, 255, 253 }; -/* j */ static const uint8_t Font_RobotoMono_Regular_20_glyph_106[] = { 7, 20, 12, 2, 15, 0, 0, 37, 0, 0, 12, 245, 0, 0, 90, 16, 0, 0, 0, 9, 153, 153, 33, 255, 255, 244, 0, 0, 143, 64, 0, 8, 244, 0, 0, 143, 64, 0, 8, 244, 0, 0, 143, 64, 0, 8, 244, 0, 0, 143, 64, 0, 8, 244, 0, 0, 143, 64, 0, 9, 243, 0, 0, 223, 20, 69, 191, 160, 239, 255, 160, 2, 67, 16, 0 }; -/* k */ static const uint8_t Font_RobotoMono_Regular_20_glyph_107[] = { 11, 15, 12, 1, 15, 79, 128, 0, 0, 0, 4, 248, 0, 0, 0, 0, 79, 128, 0, 0, 0, 4, 248, 0, 0, 0, 0, 79, 128, 0, 24, 129, 4, 248, 0, 28, 245, 0, 79, 128, 28, 246, 0, 4, 248, 28, 246, 0, 0, 79, 156, 247, 0, 0, 4, 255, 255, 160, 0, 0, 79, 246, 207, 96, 0, 4, 249, 1, 239, 48, 0, 79, 128, 3, 254, 16, 4, 248, 0, 7, 252, 0, 79, 128, 0, 10, 250, 0 }; -/* l */ static const uint8_t Font_RobotoMono_Regular_20_glyph_108[] = { 10, 15, 12, 1, 15, 15, 255, 255, 96, 0, 9, 153, 207, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 0, 0, 111, 96, 0, 9, 153, 191, 185, 151, 15, 255, 255, 255, 253 }; -/* m */ static const uint8_t Font_RobotoMono_Regular_20_glyph_109[] = { 12, 11, 12, 0, 11, 9, 86, 186, 22, 186, 32, 31, 237, 239, 238, 223, 192, 31, 176, 15, 241, 11, 241, 31, 160, 13, 208, 9, 241, 31, 160, 13, 208, 9, 241, 31, 160, 13, 208, 9, 241, 31, 160, 13, 208, 9, 241, 31, 160, 13, 208, 9, 241, 31, 160, 13, 208, 9, 241, 31, 160, 13, 208, 9, 241, 31, 160, 13, 208, 9, 241 }; -/* n */ static const uint8_t Font_RobotoMono_Regular_20_glyph_110[] = { 10, 11, 12, 1, 11, 41, 49, 139, 182, 0, 79, 158, 220, 255, 160, 79, 245, 0, 29, 242, 79, 144, 0, 7, 245, 79, 128, 0, 6, 246, 79, 128, 0, 6, 246, 79, 128, 0, 6, 246, 79, 128, 0, 6, 246, 79, 128, 0, 6, 246, 79, 128, 0, 6, 246, 79, 128, 0, 6, 246 }; -/* o */ static const uint8_t Font_RobotoMono_Regular_20_glyph_111[] = { 10, 12, 12, 1, 11, 0, 24, 187, 129, 0, 4, 255, 204, 255, 64, 30, 227, 0, 62, 225, 127, 112, 0, 7, 247, 191, 16, 0, 1, 251, 207, 0, 0, 0, 252, 207, 0, 0, 0, 252, 159, 64, 0, 4, 249, 63, 176, 0, 11, 243, 9, 251, 85, 191, 144, 0, 143, 255, 248, 0, 0, 0, 34, 0, 0 }; -/* p */ static const uint8_t Font_RobotoMono_Regular_20_glyph_112[] = { 10, 16, 12, 1, 11, 41, 52, 172, 163, 0, 95, 223, 205, 255, 80, 95, 226, 0, 95, 224, 95, 128, 0, 9, 245, 95, 128, 0, 4, 248, 95, 128, 0, 3, 249, 95, 128, 0, 3, 249, 95, 128, 0, 6, 247, 95, 160, 0, 13, 242, 95, 250, 85, 207, 144, 95, 155, 255, 249, 0, 95, 128, 19, 16, 0, 95, 128, 0, 0, 0, 95, 128, 0, 0, 0, 95, 128, 0, 0, 0, 1, 0, 0, 0, 0 }; -/* q */ static const uint8_t Font_RobotoMono_Regular_20_glyph_113[] = { 10, 16, 12, 1, 11, 0, 41, 202, 83, 146, 4, 255, 204, 253, 244, 14, 244, 0, 46, 244, 95, 144, 0, 8, 244, 143, 64, 0, 8, 244, 159, 32, 0, 8, 244, 159, 48, 0, 8, 244, 127, 96, 0, 8, 244, 47, 208, 0, 11, 244, 9, 252, 85, 191, 244, 0, 159, 255, 202, 244, 0, 1, 49, 8, 244, 0, 0, 0, 8, 244, 0, 0, 0, 8, 244, 0, 0, 0, 8, 244, 0, 0, 0, 0, 16 }; -/* r */ static const uint8_t Font_RobotoMono_Regular_20_glyph_114[] = { 8, 11, 12, 3, 11, 120, 3, 156, 180, 207, 111, 255, 245, 207, 247, 16, 32, 207, 96, 0, 0, 207, 0, 0, 0, 207, 0, 0, 0, 207, 0, 0, 0, 207, 0, 0, 0, 207, 0, 0, 0, 207, 0, 0, 0, 207, 0, 0, 0 }; -/* s */ static const uint8_t Font_RobotoMono_Regular_20_glyph_115[] = { 10, 12, 12, 1, 11, 0, 23, 188, 148, 0, 3, 239, 204, 255, 144, 12, 243, 0, 29, 243, 14, 224, 0, 3, 131, 9, 251, 64, 0, 0, 0, 143, 255, 199, 0, 0, 0, 72, 223, 209, 20, 32, 0, 8, 247, 47, 192, 0, 5, 247, 10, 251, 84, 126, 242, 0, 143, 255, 252, 48, 0, 0, 34, 16, 0 }; -/* t */ static const uint8_t Font_RobotoMono_Regular_20_glyph_116[] = { 10, 15, 12, 1, 14, 0, 1, 16, 0, 0, 0, 13, 240, 0, 0, 0, 13, 240, 0, 0, 89, 158, 249, 153, 144, 141, 223, 253, 221, 208, 0, 13, 240, 0, 0, 0, 13, 240, 0, 0, 0, 13, 240, 0, 0, 0, 13, 240, 0, 0, 0, 13, 240, 0, 0, 0, 13, 240, 0, 0, 0, 12, 242, 0, 0, 0, 7, 253, 102, 130, 0, 0, 175, 255, 244, 0, 0, 1, 50, 0 }; -/* u */ static const uint8_t Font_RobotoMono_Regular_20_glyph_117[] = { 10, 12, 12, 1, 11, 41, 80, 0, 4, 146, 63, 144, 0, 8, 244, 63, 144, 0, 8, 244, 63, 144, 0, 8, 244, 63, 144, 0, 8, 244, 63, 144, 0, 8, 244, 63, 144, 0, 8, 244, 63, 144, 0, 8, 244, 15, 208, 0, 12, 244, 10, 250, 86, 206, 244, 1, 191, 255, 150, 244, 0, 1, 49, 0, 0 }; -/* v */ static const uint8_t Font_RobotoMono_Regular_20_glyph_118[] = { 11, 11, 12, 0, 11, 8, 128, 0, 0, 8, 112, 159, 48, 0, 4, 248, 3, 249, 0, 0, 175, 32, 12, 240, 0, 15, 176, 0, 111, 80, 5, 245, 0, 0, 235, 0, 190, 0, 0, 8, 242, 31, 128, 0, 0, 47, 135, 241, 0, 0, 0, 189, 219, 0, 0, 0, 5, 255, 64, 0, 0, 0, 14, 224, 0, 0 }; -/* w */ static const uint8_t Font_RobotoMono_Regular_20_glyph_119[] = { 12, 11, 12, 0, 11, 73, 16, 5, 96, 0, 149, 79, 64, 12, 224, 2, 246, 31, 112, 15, 242, 5, 243, 14, 160, 78, 214, 8, 240, 10, 192, 140, 170, 10, 192, 7, 240, 200, 126, 13, 128, 3, 243, 244, 63, 47, 80, 0, 249, 240, 14, 143, 32, 0, 222, 192, 11, 238, 0, 0, 159, 128, 6, 251, 0, 0, 111, 64, 2, 247, 0 }; -/* x */ static const uint8_t Font_RobotoMono_Regular_20_glyph_120[] = { 11, 11, 12, 1, 11, 89, 64, 0, 2, 151, 1, 238, 16, 0, 223, 48, 4, 251, 0, 159, 112, 0, 8, 247, 95, 176, 0, 0, 11, 255, 225, 0, 0, 0, 31, 244, 0, 0, 0, 8, 255, 176, 0, 0, 4, 251, 143, 112, 0, 1, 238, 16, 207, 48, 0, 207, 64, 1, 238, 16, 143, 128, 0, 5, 251, 0 }; -/* y */ static const uint8_t Font_RobotoMono_Regular_20_glyph_121[] = { 12, 16, 12, 0, 11, 25, 112, 0, 0, 7, 145, 13, 242, 0, 0, 47, 208, 6, 249, 0, 0, 143, 96, 0, 239, 0, 0, 238, 0, 0, 127, 96, 5, 248, 0, 0, 31, 208, 11, 241, 0, 0, 9, 244, 47, 160, 0, 0, 2, 251, 143, 48, 0, 0, 0, 191, 236, 0, 0, 0, 0, 63, 244, 0, 0, 0, 0, 14, 208, 0, 0, 0, 0, 79, 112, 0, 0, 0, 0, 223, 0, 0, 0, 1, 91, 247, 0, 0, 0, 7, 255, 128, 0, 0, 0, 1, 65, 0, 0, 0, 0 }; -/* z */ static const uint8_t Font_RobotoMono_Regular_20_glyph_122[] = { 10, 11, 12, 1, 11, 57, 153, 153, 153, 146, 94, 238, 238, 239, 243, 0, 0, 0, 159, 144, 0, 0, 6, 252, 0, 0, 0, 63, 225, 0, 0, 1, 239, 48, 0, 0, 13, 245, 0, 0, 0, 175, 128, 0, 0, 7, 251, 0, 0, 0, 79, 248, 119, 119, 116, 127, 255, 255, 255, 249 }; -/* { */ static const uint8_t Font_RobotoMono_Regular_20_glyph_123[] = { 7, 20, 12, 3, 16, 0, 0, 6, 80, 0, 29, 230, 0, 9, 242, 0, 0, 236, 0, 0, 31, 176, 0, 2, 251, 0, 0, 47, 160, 0, 3, 249, 0, 0, 191, 48, 10, 238, 80, 0, 158, 229, 0, 0, 11, 243, 0, 0, 63, 144, 0, 2, 250, 0, 0, 47, 176, 0, 1, 251, 0, 0, 14, 208, 0, 0, 143, 64, 0, 0, 207, 96, 0, 0, 101 }; -/* | */ static const uint8_t Font_RobotoMono_Regular_20_glyph_124[] = { 2, 19, 12, 5, 15, 34, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 170 }; -/* } */ static const uint8_t Font_RobotoMono_Regular_20_glyph_125[] = { 7, 20, 12, 3, 16, 102, 0, 0, 7, 236, 0, 0, 3, 248, 0, 0, 14, 208, 0, 0, 207, 0, 0, 12, 240, 0, 0, 207, 0, 0, 10, 242, 0, 0, 79, 144, 0, 0, 111, 233, 0, 7, 254, 128, 5, 249, 0, 0, 175, 32, 0, 12, 240, 0, 0, 207, 0, 0, 12, 240, 0, 0, 237, 0, 0, 95, 112, 0, 127, 176, 0, 6, 80, 0, 0 }; -/* ~ */ static const uint8_t Font_RobotoMono_Regular_20_glyph_126[] = { 12, 5, 12, 0, 8, 2, 173, 163, 0, 0, 66, 30, 252, 255, 112, 1, 246, 111, 32, 27, 252, 141, 241, 54, 0, 0, 126, 254, 64, 0, 0, 0, 0, 16, 0 }; - -const uint8_t Font_RobotoMono_Regular_20_glyph_nonprintable[] = { 10, 16, 12, 1, 15, 255, 253, 153, 207, 255, 254, 64, 0, 2, 223, 244, 6, 204, 112, 47, 224, 63, 255, 244, 12, 254, 239, 255, 246, 12, 255, 255, 255, 242, 14, 255, 255, 255, 112, 127, 255, 255, 248, 3, 255, 255, 255, 144, 63, 255, 255, 255, 16, 239, 255, 255, 255, 2, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 18, 255, 255, 255, 254, 1, 255, 255, 255, 255, 255, 255, 255 }; - -const uint8_t * const Font_RobotoMono_Regular_20[126 + 1 - 32] = { - Font_RobotoMono_Regular_20_glyph_32, - Font_RobotoMono_Regular_20_glyph_33, - Font_RobotoMono_Regular_20_glyph_34, - Font_RobotoMono_Regular_20_glyph_35, - Font_RobotoMono_Regular_20_glyph_36, - Font_RobotoMono_Regular_20_glyph_37, - Font_RobotoMono_Regular_20_glyph_38, - Font_RobotoMono_Regular_20_glyph_39, - Font_RobotoMono_Regular_20_glyph_40, - Font_RobotoMono_Regular_20_glyph_41, - Font_RobotoMono_Regular_20_glyph_42, - Font_RobotoMono_Regular_20_glyph_43, - Font_RobotoMono_Regular_20_glyph_44, - Font_RobotoMono_Regular_20_glyph_45, - Font_RobotoMono_Regular_20_glyph_46, - Font_RobotoMono_Regular_20_glyph_47, - Font_RobotoMono_Regular_20_glyph_48, - Font_RobotoMono_Regular_20_glyph_49, - Font_RobotoMono_Regular_20_glyph_50, - Font_RobotoMono_Regular_20_glyph_51, - Font_RobotoMono_Regular_20_glyph_52, - Font_RobotoMono_Regular_20_glyph_53, - Font_RobotoMono_Regular_20_glyph_54, - Font_RobotoMono_Regular_20_glyph_55, - Font_RobotoMono_Regular_20_glyph_56, - Font_RobotoMono_Regular_20_glyph_57, - Font_RobotoMono_Regular_20_glyph_58, - Font_RobotoMono_Regular_20_glyph_59, - Font_RobotoMono_Regular_20_glyph_60, - Font_RobotoMono_Regular_20_glyph_61, - Font_RobotoMono_Regular_20_glyph_62, - Font_RobotoMono_Regular_20_glyph_63, - Font_RobotoMono_Regular_20_glyph_64, - Font_RobotoMono_Regular_20_glyph_65, - Font_RobotoMono_Regular_20_glyph_66, - Font_RobotoMono_Regular_20_glyph_67, - Font_RobotoMono_Regular_20_glyph_68, - Font_RobotoMono_Regular_20_glyph_69, - Font_RobotoMono_Regular_20_glyph_70, - Font_RobotoMono_Regular_20_glyph_71, - Font_RobotoMono_Regular_20_glyph_72, - Font_RobotoMono_Regular_20_glyph_73, - Font_RobotoMono_Regular_20_glyph_74, - Font_RobotoMono_Regular_20_glyph_75, - Font_RobotoMono_Regular_20_glyph_76, - Font_RobotoMono_Regular_20_glyph_77, - Font_RobotoMono_Regular_20_glyph_78, - Font_RobotoMono_Regular_20_glyph_79, - Font_RobotoMono_Regular_20_glyph_80, - Font_RobotoMono_Regular_20_glyph_81, - Font_RobotoMono_Regular_20_glyph_82, - Font_RobotoMono_Regular_20_glyph_83, - Font_RobotoMono_Regular_20_glyph_84, - Font_RobotoMono_Regular_20_glyph_85, - Font_RobotoMono_Regular_20_glyph_86, - Font_RobotoMono_Regular_20_glyph_87, - Font_RobotoMono_Regular_20_glyph_88, - Font_RobotoMono_Regular_20_glyph_89, - Font_RobotoMono_Regular_20_glyph_90, - Font_RobotoMono_Regular_20_glyph_91, - Font_RobotoMono_Regular_20_glyph_92, - Font_RobotoMono_Regular_20_glyph_93, - Font_RobotoMono_Regular_20_glyph_94, - Font_RobotoMono_Regular_20_glyph_95, - Font_RobotoMono_Regular_20_glyph_96, - Font_RobotoMono_Regular_20_glyph_97, - Font_RobotoMono_Regular_20_glyph_98, - Font_RobotoMono_Regular_20_glyph_99, - Font_RobotoMono_Regular_20_glyph_100, - Font_RobotoMono_Regular_20_glyph_101, - Font_RobotoMono_Regular_20_glyph_102, - Font_RobotoMono_Regular_20_glyph_103, - Font_RobotoMono_Regular_20_glyph_104, - Font_RobotoMono_Regular_20_glyph_105, - Font_RobotoMono_Regular_20_glyph_106, - Font_RobotoMono_Regular_20_glyph_107, - Font_RobotoMono_Regular_20_glyph_108, - Font_RobotoMono_Regular_20_glyph_109, - Font_RobotoMono_Regular_20_glyph_110, - Font_RobotoMono_Regular_20_glyph_111, - Font_RobotoMono_Regular_20_glyph_112, - Font_RobotoMono_Regular_20_glyph_113, - Font_RobotoMono_Regular_20_glyph_114, - Font_RobotoMono_Regular_20_glyph_115, - Font_RobotoMono_Regular_20_glyph_116, - Font_RobotoMono_Regular_20_glyph_117, - Font_RobotoMono_Regular_20_glyph_118, - Font_RobotoMono_Regular_20_glyph_119, - Font_RobotoMono_Regular_20_glyph_120, - Font_RobotoMono_Regular_20_glyph_121, - Font_RobotoMono_Regular_20_glyph_122, - Font_RobotoMono_Regular_20_glyph_123, - Font_RobotoMono_Regular_20_glyph_124, - Font_RobotoMono_Regular_20_glyph_125, - Font_RobotoMono_Regular_20_glyph_126, -}; diff --git a/core/embed/extmod/modtrezorui/fonts/font_robotomono_regular_20.h b/core/embed/extmod/modtrezorui/fonts/font_robotomono_regular_20.h deleted file mode 100644 index 94a5b273e7..0000000000 --- a/core/embed/extmod/modtrezorui/fonts/font_robotomono_regular_20.h +++ /dev/null @@ -1,10 +0,0 @@ -#include - -#if TREZOR_FONT_BPP != 4 -#error Wrong TREZOR_FONT_BPP (expected 4) -#endif -#define Font_RobotoMono_Regular_20_HEIGHT 20 -#define Font_RobotoMono_Regular_20_MAX_HEIGHT 22 -#define Font_RobotoMono_Regular_20_BASELINE 5 -extern const uint8_t* const Font_RobotoMono_Regular_20[126 + 1 - 32]; -extern const uint8_t Font_RobotoMono_Regular_20_glyph_nonprintable[]; diff --git a/core/tools/codegen/fonts/RobotoMono-Medium.ttf b/core/tools/codegen/fonts/RobotoMono-Medium.ttf new file mode 100644 index 0000000000000000000000000000000000000000..752d0fab788b03c162f7aec80b8e39fa7711b900 GIT binary patch literal 86820 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 z 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 z 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 F{vUrGuebmJ literal 0 HcmV?d00001 diff --git a/core/tools/codegen/gen_font.py b/core/tools/codegen/gen_font.py index be401a58ee..16c9dfd3d9 100755 --- a/core/tools/codegen/gen_font.py +++ b/core/tools/codegen/gen_font.py @@ -200,7 +200,7 @@ process_face("Roboto", "Bold", 20) process_face("TTHoves", "Regular", 21, ext="otf") process_face("TTHoves", "DemiBold", 21, ext="otf") process_face("TTHoves", "Bold", 17, ext="otf") -process_face("RobotoMono", "Regular", 20) +process_face("RobotoMono", "Medium", 20) process_face("PixelOperator", "Regular", 8, bpp=1, shaveX=1) process_face("PixelOperator", "Bold", 8, bpp=1, shaveX=1)