     // bit shift through the byte, set it in the buffer
     for (int row=0; row<7; row++) {
       if (b & (1 << row)) {        
-        bitSet(screenbuffer[activebuffer][row][bufferpointer], 31-charCol-bufferpos);
+        bitSet(screenbuffer[bufferpointer][row][bufferbyte], 31-charCol-bufferpos);
       }
       else {
-        bitClear(screenbuffer[activebuffer][row][bufferpointer], 31-charCol-bufferpos);
+        bitClear(screenbuffer[bufferpointer][row][bufferbyte], 31-charCol-bufferpos);
       }
     }
   }
 }
 
-void printString(char* source, byte pos, char bufferpointer) {
+void printString(char* source, byte pos, byte bufferpointer) {
   int i;
   for (i = 0; i < strlen(source); i++){
     printChar(source[i], pos+i*5, bufferpointer);

    previousMillis = currentMillis;   
    // if the LED is off turn it on and vice-versa:
    //updatebuffer();

  }  
  updatescreen();


  for (int charCol=0; charCol<5; charCol++) {
    byte b = font[ch][charCol];

    byte bufferbyte = (charCol+charPos)/32;
    bufferpos = charPos - (32 * bufferbyte);
        
    //  0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
    // 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0 
