updated version

This commit is contained in:
2026-02-11 14:04:00 -07:00
parent b934f79878
commit d2d0a508ec
8 changed files with 295 additions and 185 deletions

View File

@@ -3,21 +3,25 @@
#define FONT_PACK_H
#include <stdint.h>
#define FONT_WIDTH 16
#define FONT_WIDTH 16
#define FONT_HEIGHT 16
#define FONT_BITMAP_SIZE ((FONT_WIDTH * FONT_HEIGHT) / 8) // 32 bytes per character
#define FONT_BITMAP_SIZE \
((FONT_WIDTH * FONT_HEIGHT) / 8) // 32 bytes per character
static const uint8_t empty_char_16x16[32] = {0};
typedef struct {
const uint8_t *bitmaps[26]; // Pointers to each 16x16 bitmap
const uint8_t *bitmaps[26]; // Pointers to each 16x16 bitmap
} FontPack;
extern const FontPack basic_font_pack;
static inline const uint8_t *font_get_char_bitmap(const FontPack *pack, char c) {
if (c >= 'A' && c <= 'Z')
return pack->bitmaps[c - 'A'];
return empty_char_16x16; // Or point to empty_char_16x16
static inline const uint8_t *font_get_char_bitmap(const FontPack *pack,
char c) {
if (c >= 'a' && c <= 'z') // convert to uppercase
c = c - 'a' + 'A';
if (c >= 'A' && c <= 'Z')
return pack->bitmaps[c - 'A'];
return empty_char_16x16; // fallback for other characters
}
#endif // FONT_PACK_H