   }
 };
 int Controller::active_player = NONE;
-int Controller::interrupt_fired = NONE;
+volatile int Controller::interrupt_fired = NONE;
 
 Controller controller;
 
-void Button::handle_button_interrupt(int button) {
-  controller.handle_button_interrupt(button);
-};
+void handle_interrupt_0() {
+  Controller::handle_interrupt(0);
+}
+void handle_interrupt_1() {
+  Controller::handle_interrupt(1);
+}
 
 void setup(void) {
   Serial.begin(115200);

  };

  // called from the actual interrupt handler. be quick.
  void handle_button_interrupt(int interrupt_number) {
    interrupt_fired = interrupt_number;
  };


  static inline void handle_button_interrupt(int button);
};

class Screen {
private:
  char prev_text[12];
