From a96e0840cc5fd420eaad50e88f6e8462598cf291 Mon Sep 17 00:00:00 2001 From: b0hoon Date: Thu, 11 Feb 2010 20:04:09 +0000 Subject: [PATCH] Packard Bell Vibe 500: correct main keymaps, enable full keyboard editing, enable morse input. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24600 a1c6a512-1295-4272-9138-f99709370657 --- apps/keymaps/keymap-vibe500.c | 161 ++++++++++++++++++--------------------- apps/recorder/keyboard.c | 6 +- firmware/export/config/vibe500.h | 3 + 3 files changed, 83 insertions(+), 87 deletions(-) diff --git a/apps/keymaps/keymap-vibe500.c b/apps/keymaps/keymap-vibe500.c index 5a779d284..0a4cf8392 100644 --- a/apps/keymaps/keymap-vibe500.c +++ b/apps/keymaps/keymap-vibe500.c @@ -47,8 +47,8 @@ static const struct button_mapping button_context_standard[] = { { ACTION_STD_OK, BUTTON_NEXT, BUTTON_NONE }, { ACTION_STD_OK, BUTTON_OK|BUTTON_REL, BUTTON_OK }, { ACTION_STD_MENU, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, - { ACTION_STD_QUICKSCREEN, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, - { ACTION_STD_CONTEXT, BUTTON_OK|BUTTON_REPEAT, BUTTON_OK }, + { ACTION_STD_QUICKSCREEN, BUTTON_OK|BUTTON_REPEAT, BUTTON_OK }, + { ACTION_STD_CONTEXT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, LAST_ITEM_IN_LIST }; /* button_context_standard */ @@ -62,16 +62,13 @@ static const struct button_mapping button_context_wps[] = { { ACTION_WPS_SKIPNEXT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, { ACTION_WPS_SEEKFWD, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_WPS_STOPSEEK, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT|BUTTON_REPEAT }, - { ACTION_WPS_VOLDOWN, BUTTON_UP, BUTTON_NONE }, - { ACTION_WPS_VOLDOWN, BUTTON_UP, BUTTON_NONE }, - { ACTION_WPS_VOLUP, BUTTON_DOWN, BUTTON_NONE }, - { ACTION_WPS_VOLUP, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_WPS_VOLDOWN, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_WPS_VOLUP, BUTTON_UP, BUTTON_NONE }, { ACTION_WPS_BROWSE, BUTTON_OK|BUTTON_REL, BUTTON_OK }, - { ACTION_WPS_CONTEXT, BUTTON_OK|BUTTON_REPEAT, BUTTON_OK }, - { ACTION_WPS_VIEW_PLAYLIST, BUTTON_OK|BUTTON_PLAY, BUTTON_NONE }, + { ACTION_WPS_CONTEXT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, + { ACTION_WPS_VIEW_PLAYLIST, BUTTON_CANCEL, BUTTON_NONE }, { ACTION_WPS_MENU, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, - { ACTION_WPS_MENU, BUTTON_CANCEL|BUTTON_REL, BUTTON_MENU }, - { ACTION_WPS_QUICKSCREEN, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, + { ACTION_WPS_QUICKSCREEN, BUTTON_OK|BUTTON_REPEAT, BUTTON_OK }, LAST_ITEM_IN_LIST }; /* button_context_wps */ @@ -93,6 +90,7 @@ static const struct button_mapping button_context_tree_scroll_lr[] = { { ACTION_STD_OK, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, { ACTION_TREE_PGRIGHT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_TREE_PGRIGHT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT|BUTTON_REPEAT }, + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_TREE), }; /* button_context_tree_scroll_lr */ @@ -122,15 +120,13 @@ static const struct button_mapping button_context_bmark[] = { }; /* button_context_bmark */ static const struct button_mapping button_context_quickscreen[] = { - { ACTION_QS_TOP, BUTTON_MENU, BUTTON_NONE }, - { ACTION_QS_TOP, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_QS_DOWN, BUTTON_PLAY, BUTTON_NONE }, - { ACTION_QS_DOWN, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_QS_TOP, BUTTON_UP, BUTTON_NONE }, + { ACTION_QS_DOWN, BUTTON_DOWN, BUTTON_NONE }, { ACTION_QS_LEFT, BUTTON_PREV, BUTTON_NONE }, { ACTION_QS_LEFT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_NEXT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_CANCEL, BUTTON_NONE }, + { ACTION_STD_CANCEL, BUTTON_OK, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ @@ -146,7 +142,7 @@ static const struct button_mapping button_context_pitchscreen[] = { { ACTION_PS_NUDGE_RIGHTOFF, BUTTON_NEXT|BUTTON_REL, BUTTON_NONE }, { ACTION_PS_TOGGLE_MODE, BUTTON_PLAY, BUTTON_NONE }, { ACTION_PS_RESET, BUTTON_MENU, BUTTON_NONE }, - { ACTION_PS_EXIT, BUTTON_CANCEL, BUTTON_NONE }, + { ACTION_PS_EXIT, BUTTON_OK, BUTTON_NONE }, { ACTION_PS_SLOWER, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_PS_FASTER, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, @@ -155,18 +151,18 @@ static const struct button_mapping button_context_pitchscreen[] = { static const struct button_mapping button_context_keyboard[] = { { ACTION_KBD_LEFT, BUTTON_PREV, BUTTON_NONE }, - { ACTION_KBD_LEFT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_KBD_LEFT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_KBD_RIGHT, BUTTON_NEXT, BUTTON_NONE }, { ACTION_KBD_RIGHT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_KBD_SELECT, BUTTON_OK, BUTTON_NONE }, - { ACTION_KBD_DONE, BUTTON_PLAY, BUTTON_NONE }, + { ACTION_KBD_SELECT, BUTTON_PLAY, BUTTON_NONE }, + { ACTION_KBD_DONE, BUTTON_OK, BUTTON_NONE }, { ACTION_KBD_ABORT, BUTTON_CANCEL|BUTTON_REL, BUTTON_CANCEL }, { ACTION_KBD_UP, BUTTON_UP, BUTTON_NONE }, - { ACTION_KBD_UP, BUTTON_UP, BUTTON_NONE }, - { ACTION_KBD_DOWN, BUTTON_DOWN, BUTTON_NONE }, { ACTION_KBD_DOWN, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_KBD_BACKSPACE, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, { ACTION_KBD_MORSE_INPUT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, - { ACTION_KBD_MORSE_SELECT, BUTTON_OK|BUTTON_REL, BUTTON_NONE }, + { ACTION_KBD_MORSE_SELECT, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE }, + LAST_ITEM_IN_LIST }; /* button_context_keyboard */ @@ -174,17 +170,15 @@ static const struct button_mapping button_context_keyboard[] = { const struct button_mapping button_context_recscreen[] = { { ACTION_REC_NEWFILE, BUTTON_REC|BUTTON_REL, BUTTON_REC }, - { ACTION_STD_MENU, BUTTON_OK|BUTTON_REPEAT, BUTTON_OK }, + { ACTION_STD_MENU, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, { ACTION_REC_PAUSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, { ACTION_STD_CANCEL, BUTTON_CANCEL, BUTTON_NONE }, - { ACTION_STD_NEXT, BUTTON_UP, BUTTON_NONE }, - { ACTION_STD_NEXT, BUTTON_UP, BUTTON_NONE }, - { ACTION_STD_PREV, BUTTON_DOWN, BUTTON_NONE }, - { ACTION_STD_PREV, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_STD_NEXT, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_STD_PREV, BUTTON_UP, BUTTON_NONE }, { ACTION_SETTINGS_INC, BUTTON_NEXT, BUTTON_NONE }, { ACTION_SETTINGS_INCREPEAT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_SETTINGS_DEC, BUTTON_PREV, BUTTON_NONE }, - { ACTION_SETTINGS_DECREPEAT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_SETTINGS_DECREPEAT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, LAST_ITEM_IN_LIST }; /* button_context_recscreen */ @@ -192,84 +186,80 @@ const struct button_mapping button_context_recscreen[] = { #ifdef USB_ENABLE_HID static const struct button_mapping button_context_usb_hid[] = { - { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_REC|BUTTON_NEXT|BUTTON_REL, BUTTON_REC|BUTTON_NEXT }, - { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_REC|BUTTON_NEXT|BUTTON_REPEAT, BUTTON_REC|BUTTON_NEXT }, - { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_REC|BUTTON_PREV|BUTTON_REL, BUTTON_REC|BUTTON_PREV }, - { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_REC|BUTTON_PREV|BUTTON_REPEAT, BUTTON_REC|BUTTON_PREV }, + { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_OK|BUTTON_NEXT|BUTTON_REL, BUTTON_OK|BUTTON_NEXT }, + { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_OK|BUTTON_NEXT|BUTTON_REPEAT, BUTTON_OK|BUTTON_NEXT }, + { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_OK|BUTTON_PREV|BUTTON_REL, BUTTON_OK|BUTTON_PREV }, + { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_OK|BUTTON_PREV|BUTTON_REPEAT, BUTTON_OK|BUTTON_PREV }, LAST_ITEM_IN_LIST }; /* button_context_usb_hid */ static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { - { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_UP, BUTTON_NONE }, - { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_UP, BUTTON_NONE }, - { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_DOWN, BUTTON_NONE }, - { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_DOWN, BUTTON_NONE }, - { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_CANCEL|BUTTON_REL, BUTTON_CANCEL }, - { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, - { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, - { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, - { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, - { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, + { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP, BUTTON_NONE }, + { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, + { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, + { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_CANCEL|BUTTON_REL, BUTTON_CANCEL }, + { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, + { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, + { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) }; /* button_context_usb_hid_mode_multimedia */ static const struct button_mapping button_context_usb_hid_mode_presentation[] = { - { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, - { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, - { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, - { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, - { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_PREV|BUTTON_REPEAT, BUTTON_PREV }, - { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NEXT }, - { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_CANCEL|BUTTON_REL, BUTTON_CANCEL }, - { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, - { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP, BUTTON_NONE }, - { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP, BUTTON_NONE }, - { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN, BUTTON_NONE }, - { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN, BUTTON_NONE }, - { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_OK|BUTTON_REL, BUTTON_OK }, - { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_OK|BUTTON_REPEAT, BUTTON_OK }, + { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, + { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, + { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, + { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, + { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_PREV|BUTTON_REPEAT, BUTTON_PREV }, + { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NEXT }, + { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_CANCEL|BUTTON_REL, BUTTON_CANCEL }, + { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, + { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP, BUTTON_NONE }, + { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_OK|BUTTON_REL, BUTTON_OK }, + { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_OK|BUTTON_REPEAT, BUTTON_OK }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) }; /* button_context_usb_hid_mode_presentation */ static const struct button_mapping button_context_usb_hid_mode_browser[] = { - { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP, BUTTON_NONE }, - { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP, BUTTON_NONE }, - { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE }, - { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE }, - { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, - { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, - { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, - { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, - { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_CANCEL|BUTTON_REL, BUTTON_CANCEL }, - { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, - { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, - { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_CANCEL|BUTTON_REL, BUTTON_CANCEL }, - { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_PREV|BUTTON_REPEAT, BUTTON_PREV }, - { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NEXT }, - { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_OK|BUTTON_REL, BUTTON_OK }, + { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP, BUTTON_NONE }, + { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_OK|BUTTON_REL, BUTTON_OK }, + { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_CANCEL|BUTTON_REL, BUTTON_CANCEL }, + { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, + { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, + { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, + { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, + { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, + { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_CANCEL|BUTTON_REPEAT, BUTTON_CANCEL }, + { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_PREV|BUTTON_REPEAT, BUTTON_PREV }, + { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NEXT }, + { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_REC|BUTTON_REL, BUTTON_REC }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) }; /* button_context_usb_hid_mode_browser */ #ifdef HAVE_USB_HID_MOUSE static const struct button_mapping button_context_usb_hid_mode_mouse[] = { - { ACTION_USB_HID_MOUSE_UP, BUTTON_OK, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_OK|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_DOWN, BUTTON_CANCEL, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_DOWN_REP, BUTTON_CANCEL|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_LEFT, BUTTON_PREV, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_NEXT, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_MENU, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_MENU|BUTTON_REL, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_UP, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_UP, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE }, - { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_DOWN_REP, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_LEFT, BUTTON_PREV, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_NEXT, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_MENU, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_MENU|BUTTON_REL, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_BUTTON_RIGHT, BUTTON_PLAY, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_BUTTON_RIGHT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_OK, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_OK|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_CANCEL, BUTTON_NONE }, + { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_CANCEL|BUTTON_REPEAT, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) }; /* button_context_usb_hid_mode_mouse */ @@ -312,6 +302,7 @@ const struct button_mapping* get_context_mapping(int context) case CONTEXT_PITCHSCREEN: return button_context_pitchscreen; case CONTEXT_KEYBOARD: + case CONTEXT_MORSE_INPUT: return button_context_keyboard; #ifdef HAVE_RECORDING case CONTEXT_RECSCREEN: diff --git a/apps/recorder/keyboard.c b/apps/recorder/keyboard.c index 76e7df050..fdf1f3a43 100644 --- a/apps/recorder/keyboard.c +++ b/apps/recorder/keyboard.c @@ -54,7 +54,8 @@ || (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) \ || (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) \ || (CONFIG_KEYPAD == IAUDIO_M3_PAD) \ - || (CONFIG_KEYPAD == IRIVER_H10_PAD) + || (CONFIG_KEYPAD == IRIVER_H10_PAD) \ + || (CONFIG_KEYPAD == PBELL_VIBE500_PAD) \ /* no key combos to move the cursor if not in line edit mode */ #define KBD_MODES /* uses 2 modes, picker and line edit */ @@ -85,7 +86,8 @@ || (CONFIG_KEYPAD == MROBE100_PAD) \ || (CONFIG_KEYPAD == SANSA_E200_PAD) \ || (CONFIG_KEYPAD == PHILIPS_HDD1630_PAD) \ - || (CONFIG_KEYPAD == PHILIPS_SA9200_PAD) + || (CONFIG_KEYPAD == PHILIPS_SA9200_PAD) \ + || (CONFIG_KEYPAD == PBELL_VIBE500_PAD) /* certain key combos toggle input mode between keyboard input and Morse input */ #define KBD_TOGGLE_INPUT #endif diff --git a/firmware/export/config/vibe500.h b/firmware/export/config/vibe500.h index b63bfa744..76ec17a11 100644 --- a/firmware/export/config/vibe500.h +++ b/firmware/export/config/vibe500.h @@ -72,6 +72,9 @@ #define CONFIG_KEYPAD PBELL_VIBE500_PAD +/* Define this to enable morse code input */ +#define HAVE_MORSE_INPUT + /* Define this if you do software codec */ #define CONFIG_CODEC SWCODEC -- 2.11.4.GIT