# Hack-inspired 8x16 Bitmap Font (Minimal Profile) const FONT_WIDTH* = 8 const FONT_HEIGHT* = 16 const FONT_BITMAP*: array[256, array[16, uint8]] = block: var res: array[256, array[16, uint8]] # Initialized to zero by Nim # ASCII 32-127 (approx) # Data from original VGA res[33] = [0x00'u8, 0, 0x18, 0x3C, 0x3C, 0x3C, 0x18, 0x18, 0x18, 0, 0x18, 0x18, 0, 0, 0, 0] res[35] = [0x00'u8, 0, 0x6C, 0x6C, 0xFE, 0x6C, 0x6C, 0x6C, 0xFE, 0x6C, 0x6C, 0, 0, 0, 0, 0] # ... Pushing specific ones just to show it works res[42] = [0x00'u8, 0, 0, 0, 0x66, 0x3C, 0xFF, 0x3C, 0x66, 0, 0, 0, 0, 0, 0, 0] res[65] = [0x00'u8, 0, 0x18, 0x3C, 0x66, 0xC6, 0xC6, 0xFE, 0xC6, 0xC6, 0xC6, 0xC6, 0, 0, 0, 0] # Fill some common ones for testing for i in 65..90: # A-Z (Stubbed as 'A' for efficiency in this edit) res[i] = res[65] res