Okay another question, more like a favor.
Could you comment your code a bit with reasons behind the code bits?
I don't quite get why you have frame addresses when you have them defined in a Frames array.
I don't understand this:
//12x11 rectangle
0b00000111, 0b11111111, //CS0 Frame 0
0b00000100, 0b00000001, //CS1
0b00000100, 0b00000001, //CS2
0b00000100, 0b00000001, //CS3
0b00000100, 0b00000001, //CS4
0b00000100, 0b00000001, //CS5
0b00000100, 0b00000001, //CS6
0b00000100, 0b00000001, //CS7
0b00000100, 0b00000001, //CS8
0b00000100, 0b00000001, //CS9
0b00000100, 0b00000001, //CS10
0b00000111, 0b11111111, //CS11
And I also don't get why it seems like you do all your animations in the setup() method rather than the loop() method.