 
  pinMode(13, OUTPUT);
  pinMode(12, OUTPUT);
+ 
+
+
+ // Spells initialization
+
+ spell_length = new int[NUM_SPELLS];
+ spell_sequence = new int*[NUM_SPELLS];
+ spell_name = new char*[NUM_SPELLS];
+ for(int i=0;i<NUM_SPELLS;i++)
+ {
+  spell_length[i]=0;
+  spell_sequence[i] = NULL;
+  spell_name[i] = NULL;
+ }
+
+ make_spell(0, "Red Led", "CDEC");
+ make_spell(1, "Green Led", "FGFG");
+ Serial.println("setup done");
 }
 
 int sound_buffer[FHT_N];

           else
             pin12_state=LOW;
           digitalWrite(12, pin12_state);
         }
        for(int j=0;j<10;j++)
        {
          Serial.print(sequence[j]);
          if(j==(10+seq_index-1)%10)
            Serial.print("< ");
          else
            Serial.print("  ");
        }
        Serial.println("");
    }
    
     //Serial.print(current_note);

             pin13_state=LOW;
           digitalWrite(13, pin13_state);
         }
      if((abs(cur_sequence[(10+seq_index-4)%10]-19)<=1) &&
         (abs(cur_sequence[(10+seq_index-3)%10]-17)<=1) &&
         (abs(cur_sequence[(10+seq_index-2)%10]-19)<=1) &&
         (abs(cur_sequence[(10+seq_index-1)%10]-17)<=1))
         {
           Serial.println("SPELL!");
           if(pin12_state==LOW)
