Clint Koehn - 2017-11-11

This code uses LCD Assistant for images and MikroElektronika Font Creator for fonts up to 16 pixels high..

'-------------------------------------------------------------------
'                             My GLCD routine
'
'                             saved as MyGLCD.h
'                        Needs GLCD.h for PSet command
'-------------------------------------------------------------------
Sub GLCDPrintCustom (In PrintLocX as word, In PrintLocY as word, in LCDPrintData as string, In FID as byte )
  Dim GLCDPrintLoc as word
  GLCDPrintLen = LCDPrintData(0)
  If GLCDPrintLen = 0 Then Exit Sub

  GLCDPrintLoc = PrintLocX
  'Write Data
  For GLCDPrint_String_Counter = 1 To GLCDPrintLen
    GLCDPrintCustomChar GLCDPrintLoc, PrintLocY, LCDPrintData(GLCDPrint_String_Counter), FID
  Next

End Sub

Sub GLCDPrintCustomChar (CharLocX as word, In CharLocY as word, In CharCode, In FontID as byte )
  dim CharCol, CharRow, CharLoc, CharVal, CurFont as Word
  dim CharHeight, CharWidth, MaxCharWidth, CharValLow, CharValHigh as Byte

  CharCode -= 32  'codes are from 32 -127, this is needed for the computations below

  MaxCharWidth = TableValue ( FontID, 1 )
  CharHeight = TableValue ( FontID, 2 )

  if CharHeight>16 Then
    Exit sub
  end if

  if CharHeight>8 Then
    CharLoc = [word]CharCode * ((MaxCharWidth * 2) + 1) + 3 ' compute for word
  Else
    CharLoc = [word]CharCode * (MaxCharWidth + 1) + 3       ' computer for byte
  End If

  CharWidth = TableValue ( FontID, CharLoc )
  CharLoc++

  For CharCol = 0 to CharWidth
    CharValLow = TableValue ( FontID, CharLoc )
    CharLoc++

    CharValHigh = 0
    if CharHeight>8 Then
      CharValHigh = TableValue ( FontID, CharLoc )
      CharLoc++
    end if
    CharVal = [word]CharValHigh * 256 + CharValLow

    For CharRow = 0 to CharHeight-1
      Pset CharLocX + CharCol, CharLocY + CharRow, CharVal.0
      Rotate CharVal Right
    Next
  Next
  'Make font with one blank line on the right to clear last char
  CharLocX += CharWidth
end Sub

Function TableValue ( in TableNum, in loc as Word ) as byte
  dim tvalue as Byte

  Select Case TableNum
    case 1
      ReadTable Font1, loc, tvalue
    case Else
      ReadTable Font2, loc, tvalue
  end Select
  TableValue = tvalue
end Function

sub ShowImage(In LocX, In LocY )
  dim xinc, width, height as Byte
  dim CurrValue, row, col as Byte
  dim CurrLoc as word

  ReadTable Image, 1, width
  ReadTable Image, 2, height
  CurrLoc = 3

  for row = 0 to height/8-1
    for col = 0 to width-1
      ReadTable Image, CurrLoc, CurrValue
      for xinc = 0 to 7
        Pset locx+col, locy+(row *8) + xinc, CurrValue.0
        Rotate CurrValue Right
      Next
      CurrLoc++
    Next
  Next

end sub

Table Image as Byte
    85,64 'image size, enter this manually.  Table generated by LCD Assistant. Ending commas need removing
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0, 0xC0, 0xC0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0
0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xC0, 0xC0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x80, 0xC0, 0xF0, 0xF8, 0xFC, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x03, 0x03, 0x01, 0x81, 0xC0, 0xC0, 0xC0, 0xE0, 0xE0, 0xE0
0xE0, 0xE0, 0xF0, 0xF8, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x3F, 0x1F, 0x0F, 0x00, 0x00, 0x00, 0x07, 0x03, 0x03
0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x80, 0xC0, 0xE0, 0xF8, 0xFE, 0xF8, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0
0xE0, 0xE0, 0xF0, 0xF0, 0xF0, 0xE0, 0xE0, 0xC0, 0xC0, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xFF
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x80, 0xE0
0xF0, 0xF8, 0xF8, 0xFC, 0xFC, 0xFC, 0xFC, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF
0xFF, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x1F, 0x3F, 0x7F, 0xFF, 0xFF, 0xFC, 0x7C, 0x38, 0x00, 0x01, 0x0F, 0x3F, 0x7C
0xF0, 0xC0, 0x81, 0x07, 0x1F, 0x3F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE
0xF8, 0xF0, 0xE0, 0xEF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x1F, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x80, 0x40, 0x10, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0
0xF8, 0x0C, 0x06, 0x02, 0x23, 0x33, 0x33, 0x32, 0x32, 0x62, 0xE0, 0xC0, 0xC0, 0x80, 0x00, 0x00
0x00, 0x01, 0x06, 0x0C, 0x18, 0x30, 0x61, 0xC3, 0x86, 0x8C, 0x18, 0x10, 0x30, 0x21, 0x43, 0x47
0x87, 0x8F, 0x0F, 0x1F, 0x1F, 0x1F, 0x1F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x1F, 0x1F, 0x1F
0x1F, 0x0F, 0x0F, 0x87, 0x07, 0x03, 0x01, 0x01, 0x00, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x04, 0x02
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0C, 0x18, 0x38, 0x38, 0x3E, 0x3F, 0x3E, 0x0C, 0x00, 0x00
0x63, 0x47, 0xC7, 0x8F, 0x8E, 0x1C, 0x18, 0x38, 0x30, 0x20, 0x40, 0x40, 0x00, 0x01, 0x03, 0x03
0x07, 0x06, 0x0C, 0x0C, 0x1C, 0x18, 0x38, 0x39, 0x31, 0x31, 0x70, 0x72, 0x72, 0x72, 0x62, 0x62
0x62, 0x72, 0x72, 0x72, 0x70, 0x31, 0x31, 0x38, 0x18, 0x18, 0x0C, 0x06, 0x06, 0x03, 0x01, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x02, 0x02, 0x06
0x04, 0x04, 0x04, 0x0C, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
End Table

MyFont1:
Table Font1 as Byte
        16,16 'width,height of font. Enter this manually. Table generated by MikroElektronika GLCD Font Creator.  Ending commas need removing and $ changed to 0x
        '      Needs to start at 32 (space) or you need to modify above code
        0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char
        0x04, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x1B, 0xFC, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char !
        0x07, 0x00, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char "
        0x08, 0x60, 0x03, 0x60, 0x1F, 0xF8, 0x07, 0x7C, 0x03, 0x60, 0x1F, 0xF0, 0x0F, 0x7C, 0x03, 0x60, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char #
        0x09, 0x00, 0x00, 0x78, 0x0E, 0xFC, 0x1E, 0xC4, 0x10, 0xFF, 0xFF, 0xC6, 0x10, 0x8C, 0x19, 0x9C, 0x0F, 0x18, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 0x
        0x0E, 0x38, 0x00, 0x7C, 0x00, 0x44, 0x00, 0x44, 0x10, 0x7C, 0x1C, 0x38, 0x06, 0x80, 0x01, 0xC0, 0x00, 0x30, 0x0F, 0x98, 0x1F, 0x84, 0x10, 0x80, 0x10, 0x80, 0x1F, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00  ' Code for char %
        0x0C, 0x00, 0x00, 0x00, 0x07, 0x10, 0x0F, 0xF8, 0x1D, 0xFC, 0x18, 0xCC, 0x19, 0xCC, 0x1B, 0x7C, 0x0F, 0x38, 0x0E, 0x00, 0x0F, 0x80, 0x1D, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char &
        0x03, 0x00, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char '
        0x05, 0x00, 0x00, 0xC0, 0x0F, 0xF0, 0x3F, 0x3C, 0xF0, 0x04, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char (
        0x05, 0x00, 0x00, 0x04, 0x80, 0x3C, 0xF0, 0xF0, 0x3F, 0xC0, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char )
        0x08, 0x04, 0x00, 0x4C, 0x00, 0x68, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x68, 0x00, 0x4C, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char *
        0x09, 0x00, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xF8, 0x07, 0xF8, 0x07, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char +
        0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char ,
        0x05, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char -
        0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char .
        0x04, 0x00, 0x1C, 0xC0, 0x1F, 0xFC, 0x01, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char /
        0x09, 0x00, 0x00, 0xE0, 0x03, 0xF8, 0x0F, 0x1C, 0x1C, 0x0C, 0x18, 0x0C, 0x18, 0x1C, 0x1C, 0xF8, 0x0F, 0xF0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 0
        0x07, 0x00, 0x00, 0x20, 0x00, 0x30, 0x00, 0x30, 0x00, 0x18, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 1
        0x09, 0x00, 0x00, 0x30, 0x08, 0x38, 0x1C, 0x1C, 0x1E, 0x0C, 0x1B, 0x0C, 0x19, 0x8C, 0x19, 0xF8, 0x18, 0x78, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 2
        0x09, 0x00, 0x00, 0x10, 0x04, 0x18, 0x0E, 0xCC, 0x1C, 0xCC, 0x18, 0xCC, 0x18, 0xFC, 0x18, 0xF8, 0x0F, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 3
        0x0A, 0x00, 0x00, 0x00, 0x07, 0x80, 0x07, 0xC0, 0x06, 0x30, 0x06, 0x18, 0x06, 0xFC, 0x1F, 0xFC, 0x1F, 0x00, 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 4
        0x09, 0x00, 0x00, 0x80, 0x06, 0xFC, 0x0E, 0xFC, 0x1C, 0x6C, 0x18, 0x6C, 0x18, 0xEC, 0x1C, 0xCC, 0x0F, 0x8C, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 5
        0x09, 0x00, 0x00, 0xE0, 0x07, 0xF8, 0x0F, 0xDC, 0x1C, 0x6C, 0x18, 0x6C, 0x18, 0xEC, 0x1C, 0xCC, 0x0F, 0x88, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 6
        0x09, 0x00, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x1E, 0x8C, 0x1F, 0xEC, 0x01, 0x7C, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 7
        0x09, 0x00, 0x00, 0x30, 0x07, 0xF8, 0x0F, 0xCC, 0x18, 0xCC, 0x18, 0xCC, 0x18, 0xDC, 0x18, 0xF8, 0x0F, 0x10, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 8
        0x09, 0x00, 0x00, 0x70, 0x04, 0xF8, 0x0C, 0x8C, 0x1D, 0x8C, 0x19, 0x8C, 0x19, 0x9C, 0x1C, 0xF8, 0x0F, 0xF0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 9
        0x04, 0x00, 0x00, 0x00, 0x00, 0x60, 0x18, 0x60, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char :
        0x04, 0x00, 0x00, 0x00, 0x00, 0x60, 0x58, 0x60, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char ;
        0x09, 0x00, 0x00, 0xC0, 0x01, 0xC0, 0x01, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0x30, 0x06, 0x30, 0x06, 0x18, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char <
        0x09, 0x00, 0x00, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char =
        0x09, 0x00, 0x00, 0x18, 0x0C, 0x30, 0x06, 0x30, 0x06, 0x60, 0x03, 0x60, 0x03, 0x60, 0x03, 0xC0, 0x01, 0xC0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char >
        0x08, 0x30, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x0C, 0x1B, 0xCC, 0x1B, 0xF8, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char ?
        0x0F, 0x80, 0x0F, 0xE0, 0x3F, 0x70, 0x30, 0xB8, 0x47, 0xD8, 0x4F, 0xEC, 0x98, 0x6C, 0x98, 0x6C, 0x88, 0xCC, 0x9E, 0xEC, 0x9F, 0xEC, 0x99, 0x18, 0xDC, 0x38, 0x4E, 0xF0, 0x67, 0xE0, 0x23, 0x00, 0x00  ' Code for char @
        0x0B, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x1F, 0xE0, 0x07, 0xF8, 0x03, 0x1C, 0x03, 0x1C, 0x03, 0xF8, 0x03, 0xC0, 0x07, 0x00, 0x1F, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char A
        0x0B, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0xCC, 0x18, 0xCC, 0x18, 0xCC, 0x18, 0xCC, 0x18, 0xCC, 0x18, 0xFC, 0x1C, 0xF8, 0x1F, 0x10, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char B
        0x0B, 0x00, 0x00, 0xE0, 0x03, 0xF8, 0x0F, 0x18, 0x0C, 0x0C, 0x18, 0x0C, 0x18, 0x0C, 0x18, 0x0C, 0x18, 0x1C, 0x1C, 0x38, 0x0F, 0x30, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char C
        0x0B, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x0C, 0x18, 0x0C, 0x18, 0x0C, 0x18, 0x0C, 0x18, 0x0C, 0x18, 0x1C, 0x1C, 0xF8, 0x0F, 0xE0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char D
        0x0A, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0xCC, 0x18, 0xCC, 0x18, 0xCC, 0x18, 0xCC, 0x18, 0xCC, 0x18, 0xCC, 0x18, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char E
        0x09, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0xCC, 0x00, 0xCC, 0x00, 0xCC, 0x00, 0xCC, 0x00, 0xCC, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char F
        0x0C, 0x00, 0x00, 0xE0, 0x03, 0xF0, 0x07, 0x38, 0x0E, 0x1C, 0x1C, 0x0C, 0x18, 0x0C, 0x18, 0x8C, 0x19, 0x8C, 0x19, 0x9C, 0x19, 0x98, 0x0F, 0x90, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char G
        0x0B, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char H
        0x04, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char I
        0x08, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x1F, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0xFC, 0x1F, 0xFC, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char J
        0x0A, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x01, 0xF0, 0x03, 0x18, 0x0F, 0x1C, 0x1E, 0x0C, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char K
        0x09, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char L
        0x0C, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x3C, 0x00, 0xF8, 0x03, 0xC0, 0x1F, 0x00, 0x1E, 0xC0, 0x1F, 0xFC, 0x03, 0x3C, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char M
        0x0B, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x00, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0F, 0xFC, 0x1F, 0xFC, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char N
        0x0C, 0x00, 0x00, 0xE0, 0x03, 0xF8, 0x0F, 0x18, 0x0E, 0x0C, 0x1C, 0x0C, 0x18, 0x0C, 0x18, 0x0C, 0x18, 0x1C, 0x1C, 0x18, 0x0E, 0xF8, 0x0F, 0xE0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char O
        0x0A, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x8C, 0x01, 0x8C, 0x01, 0x8C, 0x01, 0x8C, 0x01, 0xCC, 0x01, 0xFC, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char P
        0x0D, 0x00, 0x00, 0xE0, 0x03, 0xF8, 0x07, 0x18, 0x0E, 0x0C, 0x1C, 0x0C, 0x18, 0x0C, 0x1A, 0x0C, 0x1E, 0x0C, 0x1C, 0x18, 0x0E, 0xF8, 0x1F, 0xE0, 0x33, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char Q
        0x0A, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0xCC, 0x00, 0xCC, 0x00, 0xCC, 0x00, 0xCC, 0x03, 0xCC, 0x07, 0x7C, 0x1E, 0x78, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char R
        0x0A, 0x00, 0x00, 0x38, 0x06, 0x78, 0x0E, 0xCC, 0x1C, 0xCC, 0x18, 0xCC, 0x18, 0x8C, 0x18, 0x9C, 0x1D, 0xB8, 0x0F, 0x10, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char S
        0x0A, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char T
        0x0B, 0x00, 0x00, 0xFC, 0x07, 0xFC, 0x0F, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x1C, 0xFC, 0x0F, 0xFC, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char U
        0x0B, 0x00, 0x00, 0x1C, 0x00, 0x7C, 0x00, 0xF0, 0x03, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x1C, 0x80, 0x0F, 0xF0, 0x03, 0x7C, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char V
        0x0F, 0x00, 0x00, 0x1C, 0x00, 0xFC, 0x01, 0xE0, 0x0F, 0x00, 0x1E, 0x80, 0x1F, 0xF8, 0x03, 0x3C, 0x00, 0x3C, 0x00, 0xF8, 0x03, 0x80, 0x1F, 0x00, 0x1E, 0xE0, 0x0F, 0xFC, 0x01, 0x1C, 0x00, 0x00, 0x00  ' Code for char W
        0x09, 0x04, 0x18, 0x1C, 0x1C, 0x78, 0x0F, 0xF0, 0x03, 0xC0, 0x01, 0xE0, 0x03, 0x78, 0x0F, 0x1C, 0x1C, 0x0C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char X
        0x0A, 0x00, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0xF0, 0x00, 0xE0, 0x1F, 0xE0, 0x1F, 0xF0, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char Y
        0x0A, 0x00, 0x18, 0x0C, 0x1E, 0x0C, 0x1F, 0x8C, 0x1B, 0xCC, 0x19, 0xEC, 0x18, 0x7C, 0x18, 0x3C, 0x18, 0x1C, 0x18, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char Z
        0x05, 0x00, 0x00, 0xFC, 0xFF, 0xFC, 0xFF, 0x0C, 0xC0, 0x0C, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char [
        0x04, 0x0C, 0x00, 0xFC, 0x00, 0xE0, 0x0F, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char BackSlash
        0x05, 0x00, 0x00, 0x0C, 0xC0, 0x0C, 0xC0, 0xFC, 0xFF, 0xFC, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char ]
        0x08, 0x00, 0x00, 0x80, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0xF0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char ^
        0x08, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char _
        0x04, 0x00, 0x00, 0x04, 0x00, 0x0C, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char `
        0x08, 0x00, 0x00, 0x40, 0x0E, 0x60, 0x1F, 0x60, 0x1B, 0x60, 0x19, 0xE0, 0x09, 0xE0, 0x0F, 0xC0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char a
        0x09, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0xC0, 0x0C, 0x60, 0x18, 0x60, 0x18, 0xE0, 0x1C, 0xC0, 0x0F, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char b
        0x09, 0x00, 0x00, 0x80, 0x07, 0xC0, 0x0F, 0xE0, 0x1C, 0x60, 0x18, 0x60, 0x18, 0x60, 0x18, 0xC0, 0x0C, 0x80, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char c
        0x09, 0x00, 0x00, 0x80, 0x07, 0xC0, 0x0F, 0xE0, 0x1C, 0x60, 0x18, 0x60, 0x18, 0xC0, 0x0C, 0xFC, 0x1F, 0xFC, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char d
        0x09, 0x00, 0x00, 0x80, 0x07, 0xC0, 0x0F, 0x60, 0x1D, 0x60, 0x19, 0x60, 0x19, 0x60, 0x19, 0xC0, 0x0D, 0x80, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char e
        0x07, 0x40, 0x00, 0x60, 0x00, 0xF8, 0x1F, 0xFC, 0x1F, 0x6C, 0x00, 0x6C, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char f
        0x09, 0x00, 0x00, 0x80, 0x67, 0xC0, 0x6F, 0xE0, 0xDC, 0x60, 0xD8, 0x60, 0xD8, 0xC0, 0xCC, 0xE0, 0xFF, 0xE0, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char g
        0x09, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0xC0, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0xE0, 0x1F, 0xC0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char h
        0x03, 0x00, 0x00, 0xEC, 0x1F, 0xEC, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char i
        0x03, 0x00, 0xC0, 0xEC, 0xFF, 0xEC, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char j
        0x08, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x00, 0x03, 0x80, 0x03, 0xC0, 0x07, 0x60, 0x1E, 0x20, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char k
        0x03, 0x00, 0x00, 0xFC, 0x1F, 0xFC, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char l
        0x0D, 0x00, 0x00, 0xE0, 0x1F, 0xE0, 0x1F, 0x40, 0x00, 0x60, 0x00, 0x60, 0x00, 0xE0, 0x1F, 0xC0, 0x1F, 0x40, 0x00, 0x60, 0x00, 0x60, 0x00, 0xE0, 0x1F, 0xC0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char m
        0x09, 0x00, 0x00, 0xE0, 0x1F, 0xE0, 0x1F, 0xC0, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0xE0, 0x1F, 0xC0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char n
        0x09, 0x00, 0x00, 0x80, 0x07, 0xC0, 0x0F, 0xE0, 0x1C, 0x60, 0x18, 0x60, 0x18, 0xE0, 0x1C, 0xC0, 0x0F, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char o
        0x09, 0x00, 0x00, 0xE0, 0xFF, 0xE0, 0xFF, 0xC0, 0x0C, 0x60, 0x18, 0x60, 0x18, 0xE0, 0x1C, 0xC0, 0x0F, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char p
        0x09, 0x00, 0x00, 0x80, 0x07, 0xC0, 0x0F, 0xE0, 0x1C, 0x60, 0x18, 0x60, 0x18, 0xC0, 0x0C, 0xE0, 0xFF, 0xE0, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char q
        0x07, 0x00, 0x00, 0xE0, 0x1F, 0xE0, 0x1F, 0x40, 0x00, 0x60, 0x00, 0x60, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char r
        0x08, 0x00, 0x00, 0xC0, 0x0C, 0xE0, 0x1D, 0x60, 0x19, 0x60, 0x1B, 0x60, 0x1B, 0xC0, 0x1E, 0x80, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char s
        0x06, 0x00, 0x00, 0x60, 0x00, 0xFC, 0x0F, 0xFC, 0x1F, 0x60, 0x18, 0x60, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char t
        0x09, 0x00, 0x00, 0xE0, 0x0F, 0xE0, 0x1F, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x0C, 0xE0, 0x1F, 0xE0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char u
        0x08, 0x60, 0x00, 0xE0, 0x01, 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x1C, 0x80, 0x0F, 0xE0, 0x01, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char v
        0x0D, 0x00, 0x00, 0x60, 0x00, 0xE0, 0x03, 0x00, 0x1F, 0x00, 0x18, 0x80, 0x0F, 0xE0, 0x01, 0xE0, 0x01, 0x80, 0x0F, 0x00, 0x18, 0x00, 0x1F, 0xE0, 0x03, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char w
        0x08, 0x00, 0x00, 0x20, 0x18, 0xE0, 0x1C, 0xC0, 0x07, 0x80, 0x03, 0xC0, 0x07, 0xE0, 0x1C, 0x20, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char x
        0x08, 0x60, 0xC0, 0xE0, 0xC1, 0x80, 0xEF, 0x00, 0xFC, 0x00, 0x3C, 0x80, 0x0F, 0xE0, 0x03, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char y
        0x08, 0x60, 0x18, 0x60, 0x1C, 0x60, 0x1E, 0x60, 0x1B, 0xE0, 0x1B, 0xE0, 0x19, 0xE0, 0x18, 0x40, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char z
        0x06, 0x00, 0x03, 0x00, 0x03, 0xF8, 0x7F, 0xFC, 0xFC, 0x0C, 0xC0, 0x04, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char {
        0x03, 0x00, 0x00, 0xFC, 0xFF, 0xFC, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char |
        0x06, 0x04, 0x80, 0x0C, 0xC0, 0xFC, 0xFC, 0xF8, 0x7F, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char }
        0x09, 0x00, 0x00, 0x80, 0x01, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char ~
        0x04, 0xFE, 0x0F, 0x02, 0x08, 0x02, 0x08, 0xFE, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00   ' Code for char 
End Table

MyFont2:
Table Font2 as Byte
        7,8 'width,height of font
        0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char
        0x02, 0x00, 0x5E, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char !
        0x03, 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00  ' Code for char "
        0x04, 0x68, 0x3E, 0x78, 0x2E, 0x00, 0x00, 0x00  ' Code for char #
        0x04, 0x28, 0x54, 0x7C, 0x60, 0x00, 0x00, 0x00  ' Code for char 0x
        0x07, 0x0C, 0x12, 0x6C, 0x18, 0x36, 0x48, 0x30  ' Code for char %
        0x05, 0x30, 0x4E, 0x7A, 0x66, 0x40, 0x00, 0x00  ' Code for char &
        0x02, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char '
        0x03, 0x00, 0xFC, 0x02, 0x00, 0x00, 0x00, 0x00  ' Code for char (
        0x02, 0x02, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char )
        0x03, 0x08, 0x06, 0x08, 0x00, 0x00, 0x00, 0x00  ' Code for char *
        0x04, 0x00, 0x10, 0x7C, 0x10, 0x00, 0x00, 0x00  ' Code for char +
        0x02, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char ,
        0x03, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00  ' Code for char -
        0x02, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char .
        0x02, 0x70, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char /
        0x04, 0x3C, 0x42, 0x42, 0x3C, 0x00, 0x00, 0x00  ' Code for char 0
        0x04, 0x00, 0x42, 0x7E, 0x40, 0x00, 0x00, 0x00  ' Code for char 1
        0x04, 0x64, 0x52, 0x4A, 0x44, 0x00, 0x00, 0x00  ' Code for char 2
        0x04, 0x22, 0x4A, 0x4A, 0x34, 0x00, 0x00, 0x00  ' Code for char 3
        0x04, 0x18, 0x14, 0x7E, 0x10, 0x00, 0x00, 0x00  ' Code for char 4
        0x04, 0x2E, 0x4A, 0x4A, 0x32, 0x00, 0x00, 0x00  ' Code for char 5
        0x04, 0x3C, 0x4A, 0x4A, 0x30, 0x00, 0x00, 0x00  ' Code for char 6
        0x04, 0x02, 0x62, 0x1A, 0x06, 0x00, 0x00, 0x00  ' Code for char 7
        0x04, 0x34, 0x4A, 0x4A, 0x34, 0x00, 0x00, 0x00  ' Code for char 8
        0x04, 0x0C, 0x52, 0x52, 0x3C, 0x00, 0x00, 0x00  ' Code for char 9
        0x02, 0x00, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char :
        0x02, 0x00, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char ;
        0x05, 0x10, 0x28, 0x28, 0x44, 0x44, 0x00, 0x00  ' Code for char <
        0x05, 0x28, 0x28, 0x28, 0x28, 0x28, 0x00, 0x00  ' Code for char =
        0x05, 0x44, 0x44, 0x28, 0x28, 0x10, 0x00, 0x00  ' Code for char >
        0x04, 0x04, 0x02, 0x0A, 0x04, 0x00, 0x00, 0x00  ' Code for char ?
        0x07, 0x00, 0x7C, 0xB2, 0xAA, 0xAA, 0xBA, 0x3C  ' Code for char @
        0x05, 0x60, 0x1C, 0x12, 0x1C, 0x60, 0x00, 0x00  ' Code for char A
        0x05, 0x00, 0x7E, 0x52, 0x5E, 0x20, 0x00, 0x00  ' Code for char B
        0x06, 0x18, 0x26, 0x42, 0x42, 0x42, 0x24, 0x00  ' Code for char C
        0x06, 0x00, 0x7E, 0x42, 0x42, 0x24, 0x18, 0x00  ' Code for char D
        0x05, 0x00, 0x7E, 0x4A, 0x4A, 0x42, 0x00, 0x00  ' Code for char E
        0x05, 0x00, 0x3E, 0x0A, 0x0A, 0x0A, 0x00, 0x00  ' Code for char F
        0x05, 0x18, 0x66, 0x42, 0x52, 0x76, 0x00, 0x00  ' Code for char G
        0x05, 0x00, 0x3C, 0x08, 0x08, 0x3C, 0x00, 0x00  ' Code for char H
        0x02, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char I
        0x03, 0x20, 0x40, 0x7E, 0x00, 0x00, 0x00, 0x00  ' Code for char J
        0x05, 0x7E, 0x08, 0x1C, 0x22, 0x40, 0x00, 0x00  ' Code for char K
        0x04, 0x00, 0x7C, 0x40, 0x40, 0x00, 0x00, 0x00  ' Code for char L
        0x07, 0x7E, 0x06, 0x18, 0x70, 0x18, 0x06, 0x7E  ' Code for char M
        0x06, 0x7E, 0x04, 0x08, 0x10, 0x20, 0x7E, 0x00  ' Code for char N
        0x06, 0x18, 0x24, 0x42, 0x42, 0x24, 0x18, 0x00  ' Code for char O
        0x05, 0x00, 0x3E, 0x0A, 0x0A, 0x04, 0x00, 0x00  ' Code for char P
        0x06, 0x18, 0x24, 0x42, 0x52, 0x64, 0x98, 0x00  ' Code for char Q
        0x05, 0x00, 0x7E, 0x12, 0x12, 0x6C, 0x00, 0x00  ' Code for char R
        0x05, 0x24, 0x4A, 0x4A, 0x52, 0x24, 0x00, 0x00  ' Code for char S
        0x05, 0x02, 0x02, 0x7E, 0x02, 0x02, 0x00, 0x00  ' Code for char T
        0x05, 0x00, 0x7C, 0x40, 0x40, 0x7C, 0x00, 0x00  ' Code for char U
        0x05, 0x06, 0x38, 0x40, 0x38, 0x06, 0x00, 0x00  ' Code for char V
        0x07, 0x1E, 0x60, 0x38, 0x06, 0x38, 0x60, 0x1E  ' Code for char W
        0x05, 0x42, 0x24, 0x18, 0x24, 0x42, 0x00, 0x00  ' Code for char X
        0x05, 0x02, 0x0C, 0x70, 0x0C, 0x02, 0x00, 0x00  ' Code for char Y
        0x05, 0x62, 0x52, 0x4A, 0x46, 0x42, 0x00, 0x00  ' Code for char Z
        0x02, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char [
        0x02, 0x0E, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char BackSlash
        0x01, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char ]
        0x03, 0x0C, 0x02, 0x0C, 0x00, 0x00, 0x00, 0x00  ' Code for char ^
        0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char _
        0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char `
        0x04, 0x20, 0x54, 0x54, 0x78, 0x00, 0x00, 0x00  ' Code for char a
        0x04, 0x7E, 0x48, 0x48, 0x30, 0x00, 0x00, 0x00  ' Code for char b
        0x04, 0x30, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00  ' Code for char c
        0x04, 0x30, 0x48, 0x48, 0x7E, 0x00, 0x00, 0x00  ' Code for char d
        0x04, 0x38, 0x54, 0x54, 0x58, 0x00, 0x00, 0x00  ' Code for char e
        0x03, 0x3C, 0x0A, 0x0A, 0x00, 0x00, 0x00, 0x00  ' Code for char f
        0x04, 0xB8, 0xA4, 0xA4, 0x7C, 0x00, 0x00, 0x00  ' Code for char g
        0x04, 0x7E, 0x08, 0x08, 0x70, 0x00, 0x00, 0x00  ' Code for char h
        0x02, 0x00, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char i
        0x01, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char j
        0x03, 0x7E, 0x30, 0x48, 0x00, 0x00, 0x00, 0x00  ' Code for char k
        0x02, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char l
        0x06, 0x78, 0x08, 0x08, 0x78, 0x08, 0x70, 0x00  ' Code for char m
        0x04, 0x78, 0x08, 0x08, 0x70, 0x00, 0x00, 0x00  ' Code for char n
        0x04, 0x30, 0x48, 0x48, 0x30, 0x00, 0x00, 0x00  ' Code for char o
        0x04, 0xF8, 0x48, 0x48, 0x30, 0x00, 0x00, 0x00  ' Code for char p
        0x04, 0x18, 0x24, 0x24, 0xFC, 0x00, 0x00, 0x00  ' Code for char q
        0x05, 0x00, 0x3E, 0x04, 0x04, 0x08, 0x00, 0x00  ' Code for char r
        0x03, 0x48, 0x54, 0x24, 0x00, 0x00, 0x00, 0x00  ' Code for char s
        0x02, 0x3C, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char t
        0x04, 0x38, 0x40, 0x40, 0x78, 0x00, 0x00, 0x00  ' Code for char u
        0x03, 0x38, 0x40, 0x38, 0x00, 0x00, 0x00, 0x00  ' Code for char v
        0x05, 0x38, 0x60, 0x18, 0x60, 0x18, 0x00, 0x00  ' Code for char w
        0x03, 0x48, 0x30, 0x48, 0x00, 0x00, 0x00, 0x00  ' Code for char x
        0x03, 0x18, 0xE0, 0x18, 0x00, 0x00, 0x00, 0x00  ' Code for char y
        0x04, 0x48, 0x68, 0x58, 0x48, 0x00, 0x00, 0x00  ' Code for char z
        0x03, 0x20, 0xDE, 0x02, 0x00, 0x00, 0x00, 0x00  ' Code for char {
        0x02, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char |
        0x03, 0x02, 0xDE, 0x20, 0x00, 0x00, 0x00, 0x00  ' Code for char }
        0x05, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00  ' Code for char ~
        0x02, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00  ' Code for char 
end Table

.
.
.
I have a New Haven Display that uses NT7108 controller. I had to make some modifications to
KS0108 to make it work. I renamed "glcd_KS0108.h" to "glcd_KS0108 Backup.h" and saved the code below to "glcd_KS0108.h". If someone would want to include it in the GLCD files would be nice. I currently don't have time. Everything that is KS0108 in the files should have a duplicate named NT7108.
.
.
.

'    Graphical LCD routines for the GCBASIC compiler
'    Copyright (C) 2012 - 2017 Hugh Considine and Evan Venn

'    This library is free software; you can redistribute it and/or
'    modify it under the terms of the GNU Lesser General Public
'    License as published by the Free Software Foundation; either
'    version 2.1 of the License, or (at your option) any later version.

'    This library 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
'    Lesser General Public License for more details.

'    You should have received a copy of the GNU Lesser General Public
'    License along with this library; if not, write to the Free Software
'    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

'Notes:
' Supports KS0108 controller only.

'Changes
' 14/4/2014: Fixed KS0108 GLCDCLS CS1/CS2 line set correctly.
' 05/5/2014: Revised Line, and added Circle and FilledCircle
' 05/5/2014: Revised KS0108 read sub... timing was incorrect
' 05/5/2014: Revised GLCD to ensure the screen is cleared properly
' 08/5/2014: Revised to comply with documentation requirements
' 09/5/2014: Fixed circle and line to ensure cross device compatibility
' 11/5/2014: Revided to expose old line drawing routines
' 17/6/2014: Revised to correct error in KS0108 PSET routine.
' 28/6/2014: Revised GLCDDrawString.  Xpos was always 1 extra pixel to right.
' 14/8/2014: Removed GLCDTimeDelay to improve timing and a tidy up.
' 1/11/2014: Revised to support single controller.
'
' 9/11/14 New revised version.  Requires GLCD.H.  Do not call directly.  Always load via GLCD.H
' 31/7/15 Added GLCDDirection test to invert display
' 17/10/15 Corrected KS0108ClockDelay was KS0108_Clock_Delay and the other waits were not implemented - most odd. Erv
'Hardware settings
'Type
'''@hardware All; Controller Type; GLCD_TYPE; "GLCD_TYPE_KS0108"
'Parallel lines (KS0108 only)
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Data Bus 0; GLCD_DB0; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Data Bus 1; GLCD_DB1; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Data Bus 2; GLCD_DB2; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Data Bus 3; GLCD_DB3; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Data Bus 4; GLCD_DB4; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Data Bus 5; GLCD_DB5; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Data Bus 6; GLCD_DB6; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Data Bus 7; GLCD_DB7; IO_Pin
'Control lines (KS0108 only)
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Chip Select 1; GLCD_CS1; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Chip Select 2; GLCD_CS2; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Register Select; GLCD_RS; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Read/Write; GLCD_RW; IO_Pin
'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Enable; GLCD_ENABLE; IO_Pin

'''@hardware GLCD_TYPE GLCD_TYPE_KS0108; Reset; GLCD_RESET; IO_Pin

#startup InitGLCD_KS0108

Sub InitGLCD_KS0108

  'Setup code for KS0108 controllers
  #if GLCD_TYPE = GLCD_TYPE_KS0108
                   #define KS0108ReadDelay   9     ; 2 normal usage, 3 for 32 mhz!
                   #define KS0108WriteDelay  1     ; 1 normal usage, 0 works
                   #define KS0108ClockDelay  1     ; 1 normal usage, 0 works
                   #define GLCDDirection     0     ; 0 normal mode

    'Set pin directions
    Dir GLCD_RS Out
    Dir GLCD_RW Out
    Dir GLCD_ENABLE Out
    Dir GLCD_CS1 Out
    Dir GLCD_CS2 Out
    Dir GLCD_RESET Out

    'Reset
    Set GLCD_RESET Off
    Wait 1 ms
    Set GLCD_RESET On
    Wait 1 ms

    'Select both chips
    Set GLCD_CS1 Off
    Set GLCD_CS2 Off

    'Set on
    Set GLCD_RS Off
    GLCDWriteByte 63

    'Set Z to 0
    GLCDWriteByte 192

    'Deselect chips
    Set GLCD_CS1 On
    Set GLCD_CS2 On

    'Colours
    GLCDBackground = 0
    GLCDForeground = 1
    GLCDFontWidth = 5
    GLCDfntDefault = 0
    GLCDfntDefaultsize = 1

  #endif

  'Clear screen
  GLCDCLS_KS0108

End Sub

'Subs
'''Clears the GLCD screen
Sub GLCDCLS_KS0108
          ' initialise global variable. Required variable for Circle in all DEVICE DRIVERS- DO NOT DELETE
          GLCD_yordinate = 0

  #if GLCD_TYPE = GLCD_TYPE_KS0108
    ' fix for  not clearing screen
                    Set GLCD_CS1 Off
                    Set GLCD_CS2 Off
                    for GLCD_Count = 1 to 2

                        For CurrPage = 0 to 7
                                  'Set page
                                  Set GLCD_RS Off

                                  GLCDWriteByte b'10111000' Or CurrPage

                                  'Clear columns
                                  For CurrCol = 0 to 63
                                            'Select column
                                            Set GLCD_RS Off
                                            GLCDWriteByte 64 Or CurrCol
                                            'Clear
                                            Set GLCD_RS On
                                            GLCDWriteByte 0
                                  Next
                        Next

                    Set GLCD_CS1 Off
                    Set GLCD_CS2 On
                    next

                    Set GLCD_CS1 OFF
                    Set GLCD_CS2 Off
  #endif

End Sub

'''Draws a filled box on the GLCD screen
'''@param LineX1 Top left corner X location
'''@param LineY1 Top left corner Y location
'''@param LineX2 Bottom right corner X location
'''@param LineY2 Bottom right corner Y location
'''@param LineColour Colour of box (0 = erase, 1 = draw, default is 1)
Sub FilledBox_KS0108(In LineX1, In LineY1, In LineX2, In LineY2, Optional In LineColour As Word = GLCDForeground)

  'Make sure that starting point (1) is always less than end point (2)
  If LineX1 > LineX2 Then
    GLCDTemp = LineX1
    LineX1 = LineX2
    LineX2 = GLCDTemp
  End If
  If LineY1 > LineY2 Then
    GLCDTemp = LineY1
    LineY1 = LineY2
    LineY2 = GLCDTemp
  End If

  #if GLCD_TYPE = GLCD_TYPE_KS0108
    'Draw lines going across
    For DrawLine = LineX1 To LineX2
      For GLCDTemp = LineY1 To LineY2
        PSet DrawLine, GLCDTemp, LineColour
      Next
    Next
  #endif

End Sub

'''Draws a pixel on the GLCD
'''@param GLCDX X coordinate of pixel
'''@param GLCDY Y coordinate of pixel
'''@param GLCDColour State of pixel (0 = erase, 1 = display)
Sub PSet_KS0108(In GLCDX, In GLCDY, In GLCDColour As Word)

  #if GLCD_TYPE = GLCD_TYPE_KS0108
    'Set pixel at X, Y on LCD to State
    'X is 0 to 127
    'Y is 0 to 63
    'Origin in top left

    #ifdef  GLCDDirection
      if GLCDDirection=1 then
        GLCDX=127-GLCDX
        GLCDY=63-GLCDY
      end if
    #endif

    'Select screen half
    If GLCDX.6 = Off Then Set GLCD_CS2 On:Set GLCD_CS1 off
    If GLCDX.6 = On Then Set GLCD_CS1 On: GLCDX -= 64: Set GLCD_CS2 off

    'Select page
    CurrPage = GLCDY / 8
    Set GLCD_RS Off
    GLCDWriteByte b'10111000' Or CurrPage

    'Select column
    Set GLCD_RS Off
    GLCDWriteByte 64 Or GLCDX
    'Dummy read first
    Set GLCD_RS On
    GLCDDataTemp = GLCDReadByte
    'Read current data
    Set GLCD_RS On
    GLCDDataTemp = GLCDReadByte

    'Change data to set/clear pixel
    GLCDBitNo = GLCDY And 7
    If GLCDColour.0 = 0 Then
      GLCDChange = 254
      Set C On
    Else
      GLCDChange = 1
      Set C Off
    End If
    Repeat GLCDBitNo
      Rotate GLCDChange Left
    End Repeat

    If GLCDColour.0 = 0 Then
      GLCDDataTemp = GLCDDataTemp And GLCDChange
    Else
      GLCDDataTemp = GLCDDataTemp Or GLCDChange
    End If

    'Select correct column again
    Set GLCD_RS Off
    GLCDWriteByte 64 Or GLCDX
    'Write data back
    Set GLCD_RS On
    GLCDWriteByte GLCDDataTemp

    Set GLCD_CS1 Off
    Set GLCD_CS2 Off
  #endif

End Sub

#define GLCDWriteByte GLCDWriteByte_KS0108
'''Write byte to LCD
'''@hide
Sub GLCDWriteByte_KS0108 (In LCDByte)

  Dim GLCDSaveRS As Bit
  Dim GLCDSaveCS2 As Bit

  'Wait until LCD is available
  GLCDSaveRS = GLCD_RS
  GLCDSaveCS2 = GLCD_CS2
  If GLCD_CS1 = 1 Then
    GLCD_CS2 = 0
  End If
  Set GLCD_RS Off
  Wait Until GLCDReadByte.7 = Off
  GLCD_RS = GLCDSaveRS
  GLCD_CS2 = GLCDSaveCS2

  'Set LCD data direction
  Set GLCD_RW Off

  'Set data pin directions
          #IFNDEF GLCD_LAT
              DIR GLCD_DB0 OUT
              DIR GLCD_DB1 OUT
              DIR GLCD_DB2 OUT
              DIR GLCD_DB3 OUT
              DIR GLCD_DB4 OUT
              DIR GLCD_DB5 OUT
              DIR GLCD_DB6 OUT
              DIR GLCD_DB7 OUT
          #ENDIF
          #IFDEF GLCD_LAT
              DIR _GLCD_DB0 OUT
              DIR _GLCD_DB1 OUT
              DIR _GLCD_DB2 OUT
              DIR _GLCD_DB3 OUT
              DIR _GLCD_DB4 OUT
              DIR _GLCD_DB5 OUT
              DIR _GLCD_DB6 OUT
              DIR _GLCD_DB7 OUT
  #ENDIF

  'Set output data
  GLCD_DB7 = LCDByte.7
  GLCD_DB6 = LCDByte.6
  GLCD_DB5 = LCDByte.5
  GLCD_DB4 = LCDByte.4
  GLCD_DB3 = LCDByte.3
  GLCD_DB2 = LCDByte.2
  GLCD_DB1 = LCDByte.1
  GLCD_DB0 = LCDByte.0

  'Write
  Wait KS0108WriteDelay us
  Set GLCD_ENABLE On
  Wait KS0108ClockDelay us
  Set GLCD_ENABLE Off
  Wait KS0108WriteDelay us
End Sub

#define GLCDReadByte GLCDReadByte_KS0108
'''Read byte from LCD
'''@hide
Function GLCDReadByte_KS0108

  'Set data pin directions
  Dir GLCD_DB7 In
  Dir GLCD_DB6 In
  Dir GLCD_DB5 In
  Dir GLCD_DB4 In
  Dir GLCD_DB3 In
  Dir GLCD_DB2 In
  Dir GLCD_DB1 In
  Dir GLCD_DB0 In

  'Set LCD data direction
  Set GLCD_RW On

  'Read
  Set GLCD_ENABLE On
  Wait KS0108ReadDelay us
  'Get input data
          ' corrected 7/05/2014
  GLCDReadByte.7 = GLCD_DB7
  GLCDReadByte.6 = GLCD_DB6
  GLCDReadByte.5 = GLCD_DB5
  GLCDReadByte.4 = GLCD_DB4
  GLCDReadByte.3 = GLCD_DB3
  GLCDReadByte.2 = GLCD_DB2
  GLCDReadByte.1 = GLCD_DB1
  GLCDReadByte.0 = GLCD_DB0
  Set GLCD_ENABLE Off
  Wait KS0108ReadDelay us

End Function

Later,
Clint

 

Last edit: Clint Koehn 2017-11-14