- switch (keycode) {
- case KEY_UP: return PBTN_UP;
- case KEY_DOWN: return PBTN_DOWN;
- case KEY_LEFT: return PBTN_LEFT;
- case KEY_RIGHT: return PBTN_RIGHT;
- case KEY_ENTER:
- case BTN_A:
- case BTN_TRIGGER: return PBTN_MOK;
- case KEY_ESC:
- case BTN_B:
- case BTN_THUMB: return PBTN_MBACK;
- case KEY_MENU: return PBTN_MENU;
- default: return 0;
- }
-}
+ { KEY_UP, PBTN_UP },
+ { KEY_DOWN, PBTN_DOWN },
+ { KEY_LEFT, PBTN_LEFT },
+ { KEY_RIGHT, PBTN_RIGHT },
+ /* XXX: maybe better set this from it's plat code somehow */
+ /* Pandora */
+ { KEY_END, PBTN_MOK },
+ { KEY_PAGEDOWN, PBTN_MBACK },
+ { KEY_HOME, PBTN_MA2 },
+ { KEY_PAGEUP, PBTN_MA3 },
+ { KEY_LEFTCTRL, PBTN_MENU },
+ { KEY_RIGHTSHIFT, PBTN_L },
+ { KEY_RIGHTCTRL, PBTN_R },
+ /* Caanoo */
+ { BTN_THUMB2, PBTN_MOK },
+ { BTN_THUMB, PBTN_MBACK },
+ { BTN_TRIGGER, PBTN_MA2 },
+ { BTN_TOP, PBTN_MA3 },
+ { BTN_BASE, PBTN_MENU },
+ { BTN_TOP2, PBTN_L },
+ { BTN_PINKIE, PBTN_R },
+ /* "normal" keyboards */
+ { KEY_ENTER, PBTN_MOK },
+ { KEY_ESC, PBTN_MBACK },
+ { KEY_A, PBTN_MA2 },
+ { KEY_S, PBTN_MA3 },
+ { KEY_BACKSLASH, PBTN_MENU },
+ { KEY_LEFTBRACE, PBTN_L },
+ { KEY_RIGHTBRACE, PBTN_R },
+};