+void button_init(t_button *button);
+void button_set_retries(t_button *button,int retries);
+unsigned char button_get_event(t_button *button);
+
+/* button definitions */
+#define BUTTON_A 0x04
+#define BUTTON_B 0x03
+#define BUTTON_C 0x02
+#define BUTTON_D 0x08
+#define BUTTON_BETTY 0x0a
+#define BUTTON_EXIT 0x14
+#define BUTTON_UP 0x09
+#define BUTTON_DOWN 0x1b
+#define BUTTON_RIGHT 0x0e
+#define BUTTON_LEFT 0x0f
+#define BUTTON_OK 0x15
+#define BUTTON_VOL_UP 0x10
+#define BUTTON_VOL_DOWN 0x16
+#define BUTTON_PRG_UP 0x1a
+#define BUTTON_PRG_DOWN 0x20
+#define BUTTON_MUTE 0x21
+#define BUTTON_1 0x05
+#define BUTTON_2 0x27
+#define BUTTON_3 0x26
+#define BUTTON_4 0x0b
+#define BUTTON_5 0x00
+#define BUTTON_6 0x01
+#define BUTTON_7 0x11
+#define BUTTON_8 0x06
+#define BUTTON_9 0x07
+#define BUTTON_SHIFT 0x17
+#define BUTTON_0 0x0c
+#define BUTTON_AV 0x0d
+#define BUTTON_MENU 0x1c
+#define BUTTON_PIP 0x1d
+#define BUTTON_A_B 0x12
+#define BUTTON_16_9 0x13
+#define BUTTON_INFO 0x22
+#define BUTTON_TV1 0x23
+#define BUTTON_TV2 0x18
+#define BUTTON_TV3 0x19
+#define BUTTON_RED 0x28
+#define BUTTON_GREEN 0x29
+#define BUTTON_YELLOW 0x1e
+#define BUTTON_BLUE 0x1f
+#define BUTTON_TV 0x24
+#define BUTTON_POWER 0x25