mirror of
https://github.com/eddyem/stm32samples.git
synced 2026-02-28 03:44:30 +03:00
add simple work with fonts (too small for this screen), still have some bugs with sprites in lower right corner
This commit is contained in:
786
F3:F303/NitrogenFlooding/fontNumb8.h
Normal file
786
F3:F303/NitrogenFlooding/fontNumb8.h
Normal file
@@ -0,0 +1,786 @@
|
||||
/*
|
||||
* This file is part of the nitrogen project.
|
||||
* Copyright 2023 Edward V. Emelianov <edward.emelianoff@gmail.com>.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
// numbers and base symbols up to Z
|
||||
|
||||
// this file should be included JUST ONCE!
|
||||
// only in fonts.c
|
||||
|
||||
#define FONTNUMB8BYTES 10
|
||||
#define FONTNUMB8HEIGHT 10
|
||||
#define FONTNUMB8BASELINE 2
|
||||
|
||||
// this array shows position of every koi8-r symbol in font10_table
|
||||
const uint8_t fontNumb8_encoding[256] = {
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, // 0..31
|
||||
// 0 1 2 3 4 5 6 7 8 9 A B C D E F
|
||||
/*20*/1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, // 47
|
||||
/*30*/2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 29, 30, 31, 32, 33, 34, // 63
|
||||
/*40*/35, 12, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 13, // 79
|
||||
/*50*/49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 0, 0, 0, 0, 0, // 95
|
||||
/*60*/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 111
|
||||
/*70*/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 127
|
||||
/*80*/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 143
|
||||
/*90*/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 159
|
||||
/*A0*/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 175
|
||||
/*B0*/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 191
|
||||
/*C0*/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 207
|
||||
/*D0*/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 223
|
||||
/*E0*/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 239
|
||||
/*F0*/0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 255
|
||||
};
|
||||
|
||||
const uint8_t fontNumb8_table[] = {
|
||||
// 0 0x00 - empty
|
||||
0,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 1 0x20 - ' '
|
||||
4,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 2 0x30 - '0'
|
||||
6,
|
||||
_XXX____,
|
||||
XX_XX___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
XX_XX___,
|
||||
_XXX____,
|
||||
________,
|
||||
________,
|
||||
// 3 0x31 - '1'
|
||||
6,
|
||||
_XX_____,
|
||||
X_X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
XXXXX___,
|
||||
________,
|
||||
________,
|
||||
// 4 0x32 - '2'
|
||||
6,
|
||||
_XXX____,
|
||||
X___X___,
|
||||
____X___,
|
||||
____X___,
|
||||
___X____,
|
||||
__X_____,
|
||||
_X______,
|
||||
XXXXX___,
|
||||
________,
|
||||
________,
|
||||
// 5 0x33 - '3'
|
||||
6,
|
||||
XXXX____,
|
||||
____X___,
|
||||
____X___,
|
||||
_XXX____,
|
||||
____X___,
|
||||
____X___,
|
||||
____X___,
|
||||
XXXX____,
|
||||
________,
|
||||
________,
|
||||
// 6 0x34 - '4'
|
||||
7,
|
||||
___XX___,
|
||||
___XX___,
|
||||
__X_X___,
|
||||
_X__X___,
|
||||
_X__X___,
|
||||
XXXXXX__,
|
||||
____X___,
|
||||
____X___,
|
||||
________,
|
||||
________,
|
||||
// 7 0x35 - '5'
|
||||
5,
|
||||
XXXX____,
|
||||
X_______,
|
||||
X_______,
|
||||
XXX_____,
|
||||
___X____,
|
||||
___X____,
|
||||
___X____,
|
||||
XXX_____,
|
||||
________,
|
||||
________,
|
||||
// 8 0x36 - '6'
|
||||
6,
|
||||
_XXX____,
|
||||
X___X___,
|
||||
X_______,
|
||||
XXXX____,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
_XXX____,
|
||||
________,
|
||||
________,
|
||||
// 9 0x37 - '7'
|
||||
5,
|
||||
XXXX____,
|
||||
___X____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
_X______,
|
||||
_X______,
|
||||
_X______,
|
||||
________,
|
||||
________,
|
||||
// 10 0x38 - '8'
|
||||
6,
|
||||
_XXX____,
|
||||
X___X___,
|
||||
X___X___,
|
||||
_XXX____,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
_XXX____,
|
||||
________,
|
||||
________,
|
||||
// 11 0x39 - '9'
|
||||
6,
|
||||
_XXX____,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
_XXXX___,
|
||||
____X___,
|
||||
X___X___,
|
||||
_XXX____,
|
||||
________,
|
||||
________,
|
||||
// 12 0x41 - 'A'
|
||||
6,
|
||||
__X_____,
|
||||
_X_X____,
|
||||
_X_X____,
|
||||
_X_X____,
|
||||
X___X___,
|
||||
XXXXX___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
________,
|
||||
________,
|
||||
// 13 0x4f - 'O'
|
||||
7,
|
||||
__XX____,
|
||||
_X__X___,
|
||||
X____X__,
|
||||
X____X__,
|
||||
X____X__,
|
||||
X____X__,
|
||||
_X__X___,
|
||||
__XX____,
|
||||
________,
|
||||
________,
|
||||
// 14 0x21 - '!'
|
||||
2,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
________,
|
||||
X_______,
|
||||
________,
|
||||
________,
|
||||
// 15 0x22 - '"'
|
||||
4,
|
||||
________,
|
||||
X_X_____,
|
||||
X_X_____,
|
||||
X_X_____,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 16 0x23 - '#'
|
||||
7,
|
||||
________,
|
||||
____X_X_,
|
||||
___X_X__,
|
||||
XXXXXXX_,
|
||||
__X_X___,
|
||||
XXXXXXX_,
|
||||
_X_X____,
|
||||
X_X_____,
|
||||
________,
|
||||
________,
|
||||
// 17 0x24 - '$'
|
||||
6,
|
||||
__X_____,
|
||||
_XXX____,
|
||||
X_X_X___,
|
||||
X_X_____,
|
||||
_XXX____,
|
||||
__X_X___,
|
||||
X_X_X___,
|
||||
XXXX____,
|
||||
__X_____,
|
||||
________,
|
||||
// 18 0x25 - '%'
|
||||
8,
|
||||
________,
|
||||
_XX___X_,
|
||||
X__X_X__,
|
||||
_XX_X___,
|
||||
___X____,
|
||||
__X_XX__,
|
||||
_X_X__X_,
|
||||
X___XX__,
|
||||
________,
|
||||
________,
|
||||
// 19 0x26 - '&'
|
||||
7,
|
||||
________,
|
||||
_X______,
|
||||
X_X_____,
|
||||
X_X_____,
|
||||
_X__XX__,
|
||||
X_XXX___,
|
||||
X__X____,
|
||||
_XX_XX__,
|
||||
________,
|
||||
________,
|
||||
// 20 0x27 - '''
|
||||
2,
|
||||
________,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 21 0x28 - '('
|
||||
4,
|
||||
__XX____,
|
||||
_X______,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
_X______,
|
||||
__XX____,
|
||||
________,
|
||||
// 22 0x29 - ')'
|
||||
4,
|
||||
XX______,
|
||||
__X_____,
|
||||
___X____,
|
||||
___X____,
|
||||
___X____,
|
||||
___X____,
|
||||
___X____,
|
||||
__X_____,
|
||||
XX______,
|
||||
________,
|
||||
// 23 0x2A - '*'
|
||||
6,
|
||||
________,
|
||||
________,
|
||||
__X_____,
|
||||
XXXXX___,
|
||||
_XXX____,
|
||||
X___X___,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 24 0x2B - '+'
|
||||
6,
|
||||
________,
|
||||
________,
|
||||
__X_____,
|
||||
__X_____,
|
||||
XXXXX___,
|
||||
__X_____,
|
||||
__X_____,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 25 0x2C - ','
|
||||
3,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
XX______,
|
||||
_X______,
|
||||
X_______,
|
||||
________,
|
||||
// 26 0x2D - '-'
|
||||
6,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
XXXXX___,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 27 0x2E - '.'
|
||||
3,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
XX______,
|
||||
XX______,
|
||||
________,
|
||||
________,
|
||||
// 28 0x2F - '/'
|
||||
6,
|
||||
____X___,
|
||||
___X____,
|
||||
___X____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
_X______,
|
||||
_X______,
|
||||
_X______,
|
||||
X_______,
|
||||
________,
|
||||
// 29 0x3A - ':'
|
||||
3,
|
||||
________,
|
||||
________,
|
||||
XX______,
|
||||
XX______,
|
||||
________,
|
||||
XX______,
|
||||
XX______,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 30 0x3B - ';'
|
||||
3,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
XX______,
|
||||
XX______,
|
||||
________,
|
||||
XX______,
|
||||
_X______,
|
||||
X_______,
|
||||
________,
|
||||
// 31 0x3C - '<'
|
||||
4,
|
||||
________,
|
||||
________,
|
||||
__X_____,
|
||||
_X______,
|
||||
X_______,
|
||||
_X______,
|
||||
__X_____,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 32 0x3D - '='
|
||||
5,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
XXXX____,
|
||||
________,
|
||||
XXXX____,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 33 0x3E - '>'
|
||||
4,
|
||||
________,
|
||||
________,
|
||||
X_______,
|
||||
_X______,
|
||||
__X_____,
|
||||
_X______,
|
||||
X_______,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
// 34 0x3F - '?'
|
||||
5,
|
||||
_XX_____,
|
||||
X__X____,
|
||||
___X____,
|
||||
__X_____,
|
||||
_X______,
|
||||
_X______,
|
||||
________,
|
||||
_X______,
|
||||
________,
|
||||
________,
|
||||
// 35 0x40 - '@'
|
||||
8,
|
||||
___XXX__,
|
||||
__X__X__,
|
||||
_X_XXXX_,
|
||||
X__X_XX_,
|
||||
X_X_X_X_,
|
||||
X_X_X_X_,
|
||||
X__X_X__,
|
||||
_X______,
|
||||
__XXXX__,
|
||||
________,
|
||||
// 36 0x42 - 'B'
|
||||
6,
|
||||
XXX_____,
|
||||
X__X____,
|
||||
X_X_____,
|
||||
XXXX____,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
XXXX____,
|
||||
________,
|
||||
________,
|
||||
// 37 0x43 - 'C'
|
||||
7,
|
||||
__XXX___,
|
||||
_X___X__,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
_X___X__,
|
||||
__XXX___,
|
||||
________,
|
||||
________,
|
||||
// 38 0x44 - 'D'
|
||||
6,
|
||||
XXX_____,
|
||||
X__X____,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X__X____,
|
||||
XXX_____,
|
||||
________,
|
||||
________,
|
||||
// 39 0x45 - 'E'
|
||||
6,
|
||||
XXXXX___,
|
||||
X_______,
|
||||
X_______,
|
||||
XXX_____,
|
||||
X_______,
|
||||
X_______,
|
||||
X___X___,
|
||||
XXXXX___,
|
||||
________,
|
||||
________,
|
||||
// 40 0x46 - 'F'
|
||||
6,
|
||||
XXXXX___,
|
||||
X___X___,
|
||||
X_______,
|
||||
X_______,
|
||||
XXX_____,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
________,
|
||||
________,
|
||||
// 41 0x47 - 'G'
|
||||
7,
|
||||
__XXX___,
|
||||
_X___X__,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X__XXX__,
|
||||
_X___X__,
|
||||
__XXX___,
|
||||
________,
|
||||
________,
|
||||
// 42 0x48 - 'H'
|
||||
6,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
XXXXX___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
________,
|
||||
________,
|
||||
// 43 0x49 - 'I'
|
||||
4,
|
||||
XXX_____,
|
||||
_X______,
|
||||
_X______,
|
||||
_X______,
|
||||
_X______,
|
||||
_X______,
|
||||
_X______,
|
||||
XXX_____,
|
||||
________,
|
||||
________,
|
||||
// 44 0x4A - 'J'
|
||||
5,
|
||||
XXXX____,
|
||||
X__X____,
|
||||
___X____,
|
||||
___X____,
|
||||
___X____,
|
||||
___X____,
|
||||
X_XX____,
|
||||
_X______,
|
||||
________,
|
||||
________,
|
||||
// 45 0x4B - 'K'
|
||||
6,
|
||||
X___X___,
|
||||
X__X____,
|
||||
X_X_____,
|
||||
XXX_____,
|
||||
X__X____,
|
||||
X__X____,
|
||||
X___X___,
|
||||
X___X___,
|
||||
________,
|
||||
________,
|
||||
// 46 0x4C - 'L'
|
||||
6,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
X___X___,
|
||||
XXXXX___,
|
||||
________,
|
||||
________,
|
||||
// 47 0x4D - 'M'
|
||||
8,
|
||||
X_____X_,
|
||||
XX___XX_,
|
||||
X_X_X_X_,
|
||||
X_X_X_X_,
|
||||
X__X__X_,
|
||||
X_____X_,
|
||||
X_____X_,
|
||||
X_____X_,
|
||||
________,
|
||||
________,
|
||||
// 48 0x4E - 'N'
|
||||
6,
|
||||
X___X___,
|
||||
XX__X___,
|
||||
XX__X___,
|
||||
X_X_X___,
|
||||
X_X_X___,
|
||||
X__XX___,
|
||||
X__XX___,
|
||||
X___X___,
|
||||
________,
|
||||
________,
|
||||
// 49 0x50 - 'P'
|
||||
6,
|
||||
XXXX____,
|
||||
X__XX___,
|
||||
X___X___,
|
||||
X__XX___,
|
||||
XXXX____,
|
||||
X_______,
|
||||
X_______,
|
||||
X_______,
|
||||
________,
|
||||
________,
|
||||
// 50 0x51 - 'Q'
|
||||
7,
|
||||
__XX____,
|
||||
_X__X___,
|
||||
X____X__,
|
||||
X____X__,
|
||||
X____X__,
|
||||
X____X__,
|
||||
_X_XX___,
|
||||
__XX____,
|
||||
___XXX__,
|
||||
________,
|
||||
// 51 0x52 - 'R'
|
||||
6,
|
||||
XXXX____,
|
||||
X__XX___,
|
||||
X___X___,
|
||||
X__XX___,
|
||||
XXXX____,
|
||||
X_X_____,
|
||||
X__X____,
|
||||
X__XX___,
|
||||
________,
|
||||
________,
|
||||
// 52 0x53 - 'S'
|
||||
6,
|
||||
_XX_____,
|
||||
X__X____,
|
||||
X_______,
|
||||
_XX_____,
|
||||
__XX____,
|
||||
____X___,
|
||||
XX_XX___,
|
||||
_XXX____,
|
||||
________,
|
||||
________,
|
||||
// 53 0x54 - 'T'
|
||||
6,
|
||||
XXXXX___,
|
||||
__X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
________,
|
||||
________,
|
||||
// 54 0x55 - 'U'
|
||||
7,
|
||||
X____X__,
|
||||
X____X__,
|
||||
X____X__,
|
||||
X____X__,
|
||||
X____X__,
|
||||
X____X__,
|
||||
_X__X___,
|
||||
__XX____,
|
||||
________,
|
||||
________,
|
||||
// 55 0x56 - 'V'
|
||||
6,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
_X_X____,
|
||||
_X_X____,
|
||||
__X_____,
|
||||
________,
|
||||
________,
|
||||
// 56 0x57 - 'W'
|
||||
8,
|
||||
X_____X_,
|
||||
X_____X_,
|
||||
X_____X_,
|
||||
X__X__X_,
|
||||
X__X__X_,
|
||||
_X_X_X__,
|
||||
_X_X_X__,
|
||||
__X_X___,
|
||||
________,
|
||||
________,
|
||||
// 57 0x58 - 'X'
|
||||
6,
|
||||
X___X___,
|
||||
X___X___,
|
||||
_X_X____,
|
||||
_X_X____,
|
||||
__X_____,
|
||||
_X_X____,
|
||||
X___X___,
|
||||
X___X___,
|
||||
________,
|
||||
________,
|
||||
// 58 0x59 - 'Y'
|
||||
6,
|
||||
X___X___,
|
||||
X___X___,
|
||||
X___X___,
|
||||
_X_X____,
|
||||
_XXX____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
________,
|
||||
________,
|
||||
// 59 0x5A - 'Z'
|
||||
6,
|
||||
XXXXX___,
|
||||
____X___,
|
||||
___X____,
|
||||
__X_____,
|
||||
__X_____,
|
||||
_X______,
|
||||
X_______,
|
||||
XXXXX___,
|
||||
________,
|
||||
________,
|
||||
};
|
||||
|
||||
|
||||
#if 0
|
||||
// 14 0x21 - '!'
|
||||
0,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
________,
|
||||
#endif
|
||||
Reference in New Issue
Block a user