X-Git-Url: https://hackdaworld.org/cgi-bin/gitweb.cgi?p=my-code%2Farm.git;a=blobdiff_plain;f=betty%2Fbuttons.h;fp=betty%2Fbuttons.h;h=3c69ad028b2b860f1cc5de8dd995bfa73096368b;hp=e4016b1efc7fca68ccf3543ef2c95d094ca5061a;hb=98d1a9b9cbb24b2b182cf86ed2520d398959ec44;hpb=3e71335a4e10e6588b6541e8d26276ba9e5289d4 diff --git a/betty/buttons.h b/betty/buttons.h index e4016b1..3c69ad0 100644 --- a/betty/buttons.h +++ b/betty/buttons.h @@ -11,8 +11,66 @@ /* includes */ #include "betty.h" +/* defines */ +#define BUTTON_MAX 8 +#define BUTTON_INT (1<<0) +#define BUTTON_POLL (1<<1) + +/* typedefs */ +typedef struct s_button { + unsigned char mode; // mode of the button api + int retries; // amount of retries per event capture + unsigned char cnt; // amount of recognized key presses + unsigned char key[BUTTON_MAX]; // pressed keys +} t_button; + /* function prototypes */ -void button_init(void); -unsigned char button_get_event(unsigned long long int *keys,int retries); +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 #endif