diff options
author | Sebastian Leonhardt <sebastian.leonhardt@web.de> | 2015-07-20 01:50:26 +0200 |
---|---|---|
committer | Gerrit Rockbox <gerrit@rockbox.org> | 2015-11-15 23:46:39 +0100 |
commit | a507bb283782ee3adb1fc9ba0c6f094108ef558c (patch) | |
tree | acae6cf04f8e34172375061b6fbdc11b6ffb84cb /apps/plugins/doom/i_video.c | |
parent | a8758c953d50fb020b245d5739c41de113638b49 (diff) | |
download | rockbox-a507bb283782ee3adb1fc9ba0c6f094108ef558c.tar.gz rockbox-a507bb283782ee3adb1fc9ba0c6f094108ef558c.zip |
YH8xx,YH9xx: Keymap improvement
The main "innovation" in this patch are two "virtual buttons"
for the record switch on YH92x targets. When the switch state
changes, a single BUTTON_REC_SW_ON or .._OFF button event will
be generated. Thus keymap code can react on switching, but
not on the actual state of the switch.
Wherever sensible, the following user scheme is applied:
- use PLAY as confirm button
- use REW button or Long REW to exit
- use REC (YH820) or FFWD (YH92X) as modifier key for button combos
Change-Id: Ic8d1db9cc6869daed8dda98990dfdf7f6fd5d5a1
Diffstat (limited to 'apps/plugins/doom/i_video.c')
-rw-r--r-- | apps/plugins/doom/i_video.c | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/apps/plugins/doom/i_video.c b/apps/plugins/doom/i_video.c index 7ec768f1d3..c97dce9821 100644 --- a/apps/plugins/doom/i_video.c +++ b/apps/plugins/doom/i_video.c @@ -395,8 +395,19 @@ void I_ShutdownGraphics(void) #elif CONFIG_KEYPAD == ONDAVX777_PAD #define DOOMBUTTON_ESC BUTTON_POWER -#elif (CONFIG_KEYPAD == SAMSUNG_YH820_PAD) || \ - (CONFIG_KEYPAD == SAMSUNG_YH920_PAD) +#elif CONFIG_KEYPAD == SAMSUNG_YH920_PAD +#define DOOMBUTTON_UP BUTTON_UP +#define DOOMBUTTON_DOWN BUTTON_DOWN +#define DOOMBUTTON_LEFT BUTTON_LEFT +#define DOOMBUTTON_RIGHT BUTTON_RIGHT +#define DOOMBUTTON_SHOOT BUTTON_PLAY +#define DOOMBUTTON_OPEN BUTTON_REW +#define DOOMBUTTON_ESC BUTTON_REC_SW_ON +#define DOOMBUTTON_ESC2 BUTTON_REC_SW_OFF +#define DOOMBUTTON_ENTER BUTTON_PLAY +#define DOOMBUTTON_WEAPON BUTTON_FFWD + +#elif CONFIG_KEYPAD == SAMSUNG_YH820_PAD #define DOOMBUTTON_UP BUTTON_UP #define DOOMBUTTON_DOWN BUTTON_DOWN #define DOOMBUTTON_LEFT BUTTON_LEFT @@ -404,7 +415,7 @@ void I_ShutdownGraphics(void) #define DOOMBUTTON_SHOOT BUTTON_PLAY #define DOOMBUTTON_OPEN BUTTON_REW #define DOOMBUTTON_ESC BUTTON_REC -#define DOOMBUTTON_ENTER BUTTON_FFWD +#define DOOMBUTTON_ENTER BUTTON_PLAY #define DOOMBUTTON_WEAPON BUTTON_FFWD #elif CONFIG_KEYPAD == PBELL_VIBE500_PAD @@ -685,7 +696,11 @@ static inline void getkey() D_PostEvent(&event); } #ifdef DOOMBUTTON_ESC - if(released & DOOMBUTTON_ESC) + if(released & DOOMBUTTON_ESC +#ifdef DOOMBUTTON_ESC2 + || released & DOOMBUTTON_ESC2 +#endif + ) { event.data1=KEY_ESCAPE; D_PostEvent(&event); @@ -747,7 +762,11 @@ static inline void getkey() D_PostEvent(&event); } #ifdef DOOMBUTTON_ESC - if(pressed & DOOMBUTTON_ESC) + if(pressed & DOOMBUTTON_ESC +#ifdef DOOMBUTTON_ESC2 + || pressed & DOOMBUTTON_ESC2 +#endif + ) { event.data1=KEY_ESCAPE; D_PostEvent(&event); |