   
     state = PLAY_SELECTED;
     playingAlbum = index;
+    playAlbumNew(index);
    
     Serial.print("Playing album #"); Serial.println(index);
   }
 }
 
+void playAlbumNew(byte index) {
+  switch (index) {
+    case 0: player.startPlayingFile("track001.mp3"); break;
+    case 1: player.startPlayingFile("track002.mp3"); break;
+    case 2: player.startPlayingFile("track003.mp3"); break;
+    case 3: player.sineTest(0x44, 500); break;
+  }
+}
+
+void stopPlayingAlbum() {
+  player.stopPlaying();
+  delay(20);
+}
+

 ****************************************************/

#include <Wire.h>
#include <Adafruit_Trellis.h>

#define NUMKEYS 4
#define BLINK_DELAY 100
#define READ_DELAY   50

// Trellis wiring
#define INTPIN 1

// States
#define IDLE_LIGHT_UP 1


  state = IDLE_LIGHT_UP;
  nextLED = 0;
  nextIdleTick = millis() + delay;
}

void initializeCard() {
  if (!SD.begin(CARD_CS)) {
    Serial.println(F("SD failed, or not present"));
    while (1);  // don't do anything more
  }
  Serial.println("SD OK!");
}

void initializePlayer() {
  if (!player.begin()) { 
     Serial.println(F("Couldn't find VS1053"));
     while (1);
  }
  Serial.println(F("VS1053 found"));
  player.softReset();
  player.sineTest(0x44, 500);    // Make a tone to indicate VS1053 is working

  // Set volume for left, right channels. lower numbers == louder volume!
  player.setVolume(64,64);

  // Timer interrupts are not suggested, better to use DREQ interrupt!
  // but we don't have them on the 32u4 feather...
  player.useInterrupt(VS1053_FILEPLAYER_TIMER0_INT); // timer int
}

void loop() {
