 void dispShowNumber(byte num) {
   byte i = num % 10;
   byte j = (num - i) / 10;
-      digitalWrite(DISP_LATCH, LOW);
-      shiftOut(DISP_DATA, DISP_CLK, MSBFIRST, digitOne[i]); // digitTwo
-      shiftOut(DISP_DATA, DISP_CLK, MSBFIRST, digitOne[j]); // digitOne
-      digitalWrite(DISP_LATCH, HIGH);
-  
+  digitalWrite(DISP_LATCH, LOW);
+  shiftOut(DISP_DATA, DISP_CLK, MSBFIRST, SevenSegChar[i]); // digitTwo
+  shiftOut(DISP_DATA, DISP_CLK, MSBFIRST, SevenSegChar[j]); // digitOne
+  digitalWrite(DISP_LATCH, HIGH);
 }
+
+void dispMessage(byte offset) {
+  digitalWrite(DISP_LATCH, LOW);
+  shiftOut(DISP_DATA, DISP_CLK, MSBFIRST, SevenSegChar[offset+1]);
+  shiftOut(DISP_DATA, DISP_CLK, MSBFIRST, SevenSegChar[offset]);
+  digitalWrite(DISP_LATCH, HIGH);
+}

#define SD_CS          4  // Chip Select for SD card
#define LED           13

#define DISP_OE A2        // 7-segment display
#define DISP_LATCH A3     // 7-segment display
#define DISP_CLK A4       // 7-segment display
#define DISP_DATA A5      // 7-segment display


// Miscellaneous other defines
#define NOKEY           0

#define SELECTKEY       3
#define MAX_ROMS       99
#define MAX_ROM_SIZE 6144
#define GO_MSG          9  // 7-segment Message offset
#define ER_MSG         11  // 7-segment Message offset

// Global variables
byte lastkey = NOKEY;
byte message = GO_MSG;
byte romNumber = 1;
char romName[] = { 0, 0, 0, 0, 0, 0, 0 };
File romFile;

byte SevenSegChar[]= {
  0x3f,  // 0
  0x06,  // 1
  0x5b,  // 2
  0x4f,  // 3
  0x66,  // 4
  0x6d,  // 5
  0x7d,  // 6
  0x07,  // 7
  0x7f,  // 8
  0x6f,  // 9
  0x63,  // o
  0x79,  // E
  0x50   // r
};

void setup() {
  pinMode(SD_CS, OUTPUT);
