' Include "Font_01.bas"
' Font_01 5x7
' Const UC1609C_WIDTH_FONT  = 5   // Font width in pixels
' Const UC1609C_HEIGHT_FONT = 7   // Font height in pixels
Function Font_01(char As Byte, index As Byte) As Byte
    Symbol mask = Font_01
    Select Case char
        Case " "
            mask = LookUp(0x00, 0x00, 0x00, 0x00, 0x00), index ' Space
        Case "!"
            mask = LookUp(0x00, 0x00, 0x5F, 0x00, 0x00), index ' !
        Case 34
            mask = LookUp(0x00, 0x07, 0x00, 0x07, 0x00), index ' "
        Case "#"
            mask = LookUp(0x14, 0x7F, 0x14, 0x7F, 0x14), index ' #
        Case "$"
            mask = LookUp(0x24, 0x2A, 0x7F, 0x2A, 0x12), index ' $
        Case "%"
            mask = LookUp(0x23, 0x13, 0x08, 0x64, 0x62), index ' %
        Case "&"
            mask = LookUp(0x36, 0x49, 0x56, 0x20, 0x50), index ' &
        Case "'"
            mask = LookUp(0x00, 0x08, 0x07, 0x03, 0x00), index ' "
        Case "("
            mask = LookUp(0x00, 0x1C, 0x22, 0x41, 0x00), index ' (
        Case ")"
            mask = LookUp(0x00, 0x41, 0x22, 0x1C, 0x00), index ' )
        Case "*"
            mask = LookUp(0x2A, 0x1C, 0x7F, 0x1C, 0x2A), index ' *
        Case "+"
            mask = LookUp(0x08, 0x08, 0x3E, 0x08, 0x08), index ' +
        Case ","
            mask = LookUp(0x00, 0x80, 0x70, 0x30, 0x00), index ' ,
        Case "-"
            mask = LookUp(0x08, 0x08, 0x08, 0x08, 0x08), index ' -
        Case "."
            mask = LookUp(0x00, 0x00, 0x60, 0x60, 0x00), index ' .
        Case "/"
            mask = LookUp(0x20, 0x10, 0x08, 0x04, 0x02), index ' /
        Case "0"
            mask = LookUp(0x3E, 0x51, 0x49, 0x45, 0x3E), index ' 0
        Case "1"
            mask = LookUp(0x00, 0x42, 0x7F, 0x40, 0x00), index ' 1
        Case "2"
            mask = LookUp(0x72, 0x49, 0x49, 0x49, 0x46), index ' 2
        Case "3"
            mask = LookUp(0x21, 0x41, 0x49, 0x4D, 0x33), index ' 3
        Case "4"
            mask = LookUp(0x18, 0x14, 0x12, 0x7F, 0x10), index ' 4
        Case "5"
            mask = LookUp(0x27, 0x45, 0x45, 0x45, 0x39), index ' 5
        Case "6"
            mask = LookUp(0x3C, 0x4A, 0x49, 0x49, 0x31), index ' 6
        Case "7"
            mask = LookUp(0x41, 0x21, 0x11, 0x09, 0x07), index ' 7
        Case "8"
            mask = LookUp(0x36, 0x49, 0x49, 0x49, 0x36), index ' 8
        Case "9"
            mask = LookUp(0x46, 0x49, 0x49, 0x29, 0x1E), index ' 9
        Case ":"
            mask = LookUp(0x00, 0x36, 0x36, 0x00, 0x00), index ' :
        Case ";"
            mask = LookUp(0x00, 0x56, 0x36, 0x00, 0x00), index ' ;
        Case "<"
            mask = LookUp(0x08, 0x14, 0x22, 0x41, 0x00), index ' <
        Case "="
            mask = LookUp(0x14, 0x14, 0x14, 0x14, 0x14), index ' =
        Case ">"
            mask = LookUp(0x41, 0x22, 0x14, 0x08, 0x00), index ' >
        Case "?"
            mask = LookUp(0x02, 0x01, 0x59, 0x09, 0x06), index ' ?
        Case "@"
            mask = LookUp(0x3E, 0x41, 0x5D, 0x59, 0x4E), index ' @
        Case "A"
            mask = LookUp(0x7C, 0x12, 0x11, 0x12, 0x7C), index ' A
        Case "B"
            mask = LookUp(0x7F, 0x49, 0x49, 0x49, 0x36), index ' B
        Case "C"
            mask = LookUp(0x3E, 0x41, 0x41, 0x41, 0x22), index ' C
        Case "D"
            mask = LookUp(0x7F, 0x41, 0x41, 0x41, 0x3E), index ' D
        Case "E"
            mask = LookUp(0x7F, 0x49, 0x49, 0x49, 0x41), index ' E
        Case "F"
            mask = LookUp(0x7F, 0x09, 0x09, 0x09, 0x01), index ' F
        Case "G"
            mask = LookUp(0x3E, 0x41, 0x41, 0x51, 0x73), index ' G
        Case "H"
            mask = LookUp(0x7F, 0x08, 0x08, 0x08, 0x7F), index ' H
        Case "I"
            mask = LookUp(0x00, 0x41, 0x7F, 0x41, 0x00), index ' I
        Case "J"
            mask = LookUp(0x20, 0x40, 0x41, 0x3F, 0x01), index ' J
        Case "K"
            mask = LookUp(0x7F, 0x08, 0x14, 0x22, 0x41), index ' K
        Case "L"
            mask = LookUp(0x7F, 0x40, 0x40, 0x40, 0x40), index ' L
        Case "M"
            mask = LookUp(0x7F, 0x02, 0x1C, 0x02, 0x7F), index ' M
        Case "N"
            mask = LookUp(0x7F, 0x04, 0x08, 0x10, 0x7F), index ' N
        Case "O"
            mask = LookUp(0x3E, 0x41, 0x41, 0x41, 0x3E), index ' O
        Case "P"
            mask = LookUp(0x7F, 0x09, 0x09, 0x09, 0x06), index ' P
        Case "Q"
            mask = LookUp(0x3E, 0x41, 0x51, 0x21, 0x5E), index ' Q
        Case "R"
            mask = LookUp(0x7F, 0x09, 0x19, 0x29, 0x46), index ' R
        Case "S"
            mask = LookUp(0x26, 0x49, 0x49, 0x49, 0x32), index ' S
        Case "T"
            mask = LookUp(0x03, 0x01, 0x7F, 0x01, 0x03), index ' T
        Case "U"
            mask = LookUp(0x3F, 0x40, 0x40, 0x40, 0x3F), index ' U
        Case "V"
            mask = LookUp(0x1F, 0x20, 0x40, 0x20, 0x1F), index ' V
        Case "W"
            mask = LookUp(0x3F, 0x40, 0x38, 0x40, 0x3F), index ' W
        Case "X"
            mask = LookUp(0x63, 0x14, 0x08, 0x14, 0x63), index ' X
        Case "Y"
            mask = LookUp(0x03, 0x04, 0x78, 0x04, 0x03), index ' Y
        Case "Z"
            mask = LookUp(0x61, 0x59, 0x49, 0x4D, 0x43), index ' Z
        Case "["
            mask = LookUp(0x00, 0x7F, 0x41, 0x41, 0x41), index ' [
        Case "\"
            mask = LookUp(0x02, 0x04, 0x08, 0x10, 0x20), index ' \
        Case "]"
            mask = LookUp(0x00, 0x41, 0x41, 0x41, 0x7F), index ' ]
        Case "^"
            mask = LookUp(0x04, 0x02, 0x01, 0x02, 0x04), index ' ^
        Case "_"
            mask = LookUp(0x40, 0x40, 0x40, 0x40, 0x40), index ' _
        Case "`"
            mask = LookUp(0x00, 0x03, 0x07, 0x08, 0x00), index ' `
        Case "a"
            mask = LookUp(0x20, 0x54, 0x54, 0x78, 0x40), index ' a
        Case "b"
            mask = LookUp(0x7F, 0x28, 0x44, 0x44, 0x38), index ' b
        Case "c"
            mask = LookUp(0x38, 0x44, 0x44, 0x44, 0x28), index ' c
        Case "d"
            mask = LookUp(0x38, 0x44, 0x44, 0x28, 0x7F), index ' d
        Case "e"
            mask = LookUp(0x38, 0x54, 0x54, 0x54, 0x18), index ' e
        Case "f"
            mask = LookUp(0x00, 0x08, 0x7E, 0x09, 0x02), index ' f
        Case "g"
            mask = LookUp(0x18, 0xA4, 0xA4, 0x9C, 0x78), index ' g
        Case "h"
            mask = LookUp(0x7F, 0x08, 0x04, 0x04, 0x78), index ' h
        Case "i"
            mask = LookUp(0x00, 0x44, 0x7D, 0x40, 0x00), index ' i
        Case "j"
            mask = LookUp(0x20, 0x40, 0x40, 0x3D, 0x00), index ' j
        Case "k"
            mask = LookUp(0x7F, 0x10, 0x28, 0x44, 0x00), index ' k
        Case "l"
            mask = LookUp(0x00, 0x41, 0x7F, 0x40, 0x00), index ' l
        Case "m"
            mask = LookUp(0x7C, 0x04, 0x78, 0x04, 0x78), index ' m
        Case "n"
            mask = LookUp(0x7C, 0x08, 0x04, 0x04, 0x78), index ' n
        Case "o"
            mask = LookUp(0x38, 0x44, 0x44, 0x44, 0x38), index ' o
        Case "p"
            mask = LookUp(0xFC, 0x18, 0x24, 0x24, 0x18), index ' p
        Case "q"
            mask = LookUp(0x18, 0x24, 0x24, 0x18, 0xFC), index ' q
        Case "r"
            mask = LookUp(0x7C, 0x08, 0x04, 0x04, 0x08), index ' r
        Case "s"
            mask = LookUp(0x48, 0x54, 0x54, 0x54, 0x24), index ' s
        Case "t"
            mask = LookUp(0x04, 0x04, 0x3F, 0x44, 0x24), index ' t
        Case "u"
            mask = LookUp(0x3C, 0x40, 0x40, 0x20, 0x7C), index ' u
        Case "v"
            mask = LookUp(0x1C, 0x20, 0x40, 0x20, 0x1C), index ' v
        Case "w"
            mask = LookUp(0x3C, 0x40, 0x30, 0x40, 0x3C), index ' w
        Case "x"
            mask = LookUp(0x44, 0x28, 0x10, 0x28, 0x44), index ' x
        Case "y"
            mask = LookUp(0x4C, 0x90, 0x90, 0x90, 0x7C), index ' y
        Case "z"
            mask = LookUp(0x44, 0x64, 0x54, 0x4C, 0x44), index ' z
        Case "{"
            mask = LookUp(0x00, 0x08, 0x36, 0x41, 0x00), index ' {
        Case "|"
            mask = LookUp(0x00, 0x00, 0x7F, 0x00, 0x00), index ' |
        Case "}"
            mask = LookUp(0x00, 0x41, 0x36, 0x08, 0x00), index ' }
        Case "~"
            mask = LookUp(0x02, 0x01, 0x02, 0x04, 0x02), index ' ~
        Case "ñ"
            mask = LookUp(0x7C, 0x09, 0x05, 0x05, 0x78), index ' ñ
        Case "Ñ"
            mask = LookUp(0x7E, 0x05, 0x09, 0x11, 0x7E), index ' Ñ
        Case Else
            mask = LookUp(0x00, 0x00, 0x00, 0x00, 0x00), index
    EndSelect
End Function
