diff -ru rockbox-devel/apps/bookmark.c rockbox/apps/bookmark.c --- rockbox-devel/apps/bookmark.c 2006-01-22 10:21:00.000000000 +0900 +++ rockbox/apps/bookmark.c 2006-02-27 07:43:11.047811200 +0900 @@ -449,9 +449,21 @@ { #ifdef HAVE_LCD_BITMAP case BOOKMARK_DOWN: +#ifdef BOOKMARK_RC_DOWN + case BOOKMARK_RC_DOWN: +#endif +#ifdef BOOKMARK_RC_DOWN2 + case BOOKMARK_RC_DOWN2: +#endif return bookmark_load(global_bookmark_file_name, false); #endif case SETTINGS_OK: +#ifdef SETTINGS_RC_OK + case SETTINGS_RC_OK: +#endif +#ifdef SETTINGS_RC_OK3 + case SETTINGS_RC_OK3: +#endif return bookmark_load(global_bookmark_file_name, true); default: @@ -603,6 +615,12 @@ switch(key) { case BOOKMARK_SELECT: +#ifdef BOOKMARK_RC_SELECT + case BOOKMARK_RC_SELECT: +#endif +#ifdef BOOKMARK_RC_SELECT2 + case BOOKMARK_RC_SELECT2: +#endif #ifdef BOOKMARK_SELECT_PRE if (lastkey != BOOKMARK_SELECT_PRE) break; @@ -617,6 +635,12 @@ return bookmark; case BOOKMARK_DELETE: +#ifdef BOOKMARK_RC_DELETE + case BOOKMARK_RC_DELETE: +#endif +#ifdef BOOKMARK_RC_DELETE2 + case BOOKMARK_RC_DELETE2: +#endif /* User wants to delete this bookmark */ delete_bookmark(bookmark_file_name, bookmark_id); bookmark_id_prev=-2; @@ -627,11 +651,27 @@ case SETTINGS_DEC: case SETTINGS_DEC | BUTTON_REPEAT: +#ifdef SETTINGS_RC_DEC + case SETTINGS_RC_DEC: + case SETTINGS_RC_DEC | BUTTON_REPEAT: +#endif +#ifdef SETTINGS_RC_DEC2 + case SETTINGS_RC_DEC2: + case SETTINGS_RC_DEC2 | BUTTON_REPEAT: +#endif bookmark_id--; break; case SETTINGS_INC: case SETTINGS_INC | BUTTON_REPEAT: +#ifdef SETTINGS_RC_INC + case SETTINGS_RC_INC: + case SETTINGS_RC_INC | BUTTON_REPEAT: +#endif +#ifdef SETTINGS_RC_INC2 + case SETTINGS_RC_INC2: + case SETTINGS_RC_INC2 | BUTTON_REPEAT: +#endif bookmark_id++; break; @@ -639,8 +679,11 @@ #ifdef SETTINGS_CANCEL2 case SETTINGS_CANCEL2: #endif -#ifdef SETTINGS_OK2 - case SETTINGS_OK2: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: #endif #ifdef HAVE_LCD_BITMAP lcd_setmargins(x, y); diff -ru rockbox-devel/apps/bookmark.h rockbox/apps/bookmark.h --- rockbox-devel/apps/bookmark.h 2006-02-26 15:45:08.000000000 +0900 +++ rockbox/apps/bookmark.h 2006-02-27 08:29:45.415915200 +0900 @@ -33,6 +33,13 @@ #define BOOKMARK_DELETE (BUTTON_ON | BUTTON_SELECT) #define BOOKMARK_DOWN BUTTON_DOWN +#define BOOKMARK_RC_SELECT BUTTON_RC_MENU /* for H1x0 remote */ +#define BOOKMARK_RC_SELECT2 BUTTON_RC3_MENU /* for H3x0 remote */ +#define BOOKMARK_RC_DELETE (BUTTON_RC_ON | BUTTON_RC_MENU ) /* for H1x0 remote */ +#define BOOKMARK_RC_DELETE2 (BUTTON_RC3_ON | BUTTON_RC3_MENU ) /* for H3x0 remote */ +#define BOOKMARK_RC_DOWN BUTTON_RC_FF /* for H1x0 remote */ +#define BOOKMARK_RC_DOWN2 BUTTON_RC3_VOL_DOWN /* for H3x0 remote */ + #elif (CONFIG_KEYPAD == IPOD_3G_PAD) || (CONFIG_KEYPAD == IPOD_4G_PAD) #define BOOKMARK_SELECT BUTTON_SELECT #define BOOKMARK_DELETE (BUTTON_RIGHT | BUTTON_REPEAT) diff -ru rockbox-devel/apps/debug_menu.c rockbox/apps/debug_menu.c --- rockbox-devel/apps/debug_menu.c 2006-02-21 06:06:16.000000000 +0900 +++ rockbox/apps/debug_menu.c 2006-02-27 08:31:17.328078400 +0900 @@ -104,6 +104,15 @@ switch(button) { case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; } } @@ -132,6 +141,15 @@ switch(button) { case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; case SETTINGS_DEC: @@ -168,6 +186,15 @@ switch(button) { case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; } @@ -248,6 +275,15 @@ audio_prev(); break; case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif done = true; break; } @@ -644,6 +680,15 @@ switch(button) { case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; case SETTINGS_DEC: @@ -692,6 +737,15 @@ { case SETTINGS_OK: case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; case SETTINGS_DEC: @@ -868,6 +922,15 @@ { case SETTINGS_CANCEL: case SETTINGS_OK2: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; } } @@ -931,6 +994,15 @@ switch(button) { case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; } } @@ -1015,6 +1087,15 @@ switch(button) { /* quit on release to allow for reading the cancel button input */ case (SETTINGS_CANCEL|BUTTON_REL): +#ifdef SETTINGS_RC_CANCEL + case (SETTINGS_RC_CANCEL|BUTTON_REL): +#endif +#ifdef SETTINGS_RC_CANCEL2 + case (SETTINGS_RC_CANCEL2|BUTTON_REL): +#endif +#ifdef SETTINGS_RC_CANCEL3 + case (SETTINGS_RC_CANCEL3|BUTTON_REL): +#endif return false; } } @@ -1056,6 +1137,15 @@ switch(button) { case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; } } @@ -1135,6 +1225,15 @@ switch(button) { case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; case SETTINGS_DEC: @@ -1203,6 +1302,15 @@ case SETTINGS_CANCEL: case SETTINGS_OK2: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; } } @@ -1366,6 +1474,15 @@ case SETTINGS_OK: case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; } } @@ -1421,6 +1538,15 @@ key = button_get_w_tmo(HZ); switch(key) { case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif done = true; break; @@ -1544,6 +1670,15 @@ { case SETTINGS_OK: case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif done = true; break; @@ -1704,6 +1839,15 @@ key = button_get_w_tmo(HZ*5); switch(key) { case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif done = true; break; @@ -1779,6 +1923,15 @@ { case SETTINGS_OK: case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif done = true; break; } @@ -1858,6 +2011,15 @@ switch(button) { case SETTINGS_CANCEL: +#ifdef SETTINGS_RC_CANCEL + case SETTINGS_RC_CANCEL: +#endif +#ifdef SETTINGS_RC_CANCEL2 + case SETTINGS_RC_CANCEL2: +#endif +#ifdef SETTINGS_RC_CANCEL3 + case SETTINGS_RC_CANCEL3: +#endif return false; } } diff -ru rockbox-devel/apps/eq_menu.c rockbox/apps/eq_menu.c --- rockbox-devel/apps/eq_menu.c 2006-02-26 15:45:12.000000000 +0900 +++ rockbox/apps/eq_menu.c 2006-02-27 08:32:25.285796800 +0900 @@ -58,6 +58,16 @@ #define EQ_BTN_CHANGE_MODE BUTTON_SELECT #define EQ_BTN_EXIT BUTTON_OFF +//#define EQ_BTN_RC_MODIFIER BUTTON_RC_ON +//#define EQ_BTN_RC_DECREMENT BUTTON_RC_LEFT +//#define EQ_BTN_RC_INCREMENT BUTTON_RC_RIGHT +//#define EQ_BTN_RC_NEXT_BAND BUTTON_RC_DOWN +//#define EQ_BTN_RC_PREV_BAND BUTTON_RC_UP +//#define EQ_BTN_RC_CHANGE_MODE BUTTON_RC_SELECT +#define EQ_BTN_RC_EXIT BUTTON_RC_STOP /* for H1x0/H3x0 remote */ +#define EQ_BTN_RC_EXIT2 (BUTTON_RC_MENU | BUTTON_REPEAT) /* for H1x0 remote */ +#define EQ_BTN_RC_EXIT3 (BUTTON_RC3_ON | BUTTON_REPEAT) /* for H3x0 remote */ + #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) @@ -652,6 +662,15 @@ case EQ_BTN_EXIT: case EQ_BTN_EXIT | BUTTON_REPEAT: +#ifdef EQ_BTN_RC_EXIT + case EQ_BTN_RC_EXIT: +#endif +#ifdef EQ_BTN_RC_EXIT2 + case EQ_BTN_RC_EXIT2: +#endif +#ifdef EQ_BTN_RC_EXIT3 + case EQ_BTN_RC_EXIT3: +#endif exit_request = true; result = false; break; diff -ru rockbox-devel/apps/gui/gwps.c rockbox/apps/gui/gwps.c --- rockbox-devel/apps/gui/gwps.c 2006-02-12 09:22:08.000000000 +0900 +++ rockbox/apps/gui/gwps.c 2006-02-27 08:32:50.451984000 +0900 @@ -238,6 +238,9 @@ #ifdef WPS_RC_CONTEXT case WPS_RC_CONTEXT: #endif +#ifdef WPS_RC_CONTEXT2 + case WPS_RC_CONTEXT2: +#endif #ifdef HAVE_LCD_COLOR lcd_set_backdrop(old_backdrop); #endif @@ -256,18 +259,27 @@ break; #endif + case WPS_BROWSE: +#ifdef WPS_BROWSE_PRE + if ((button == WPS_BROWSE_PRE) && (lastbutton != WPS_BROWSE_PRE)) + break; +#endif + #ifdef WPS_RC_BROWSE case WPS_RC_BROWSE: #endif - case WPS_BROWSE: -#ifdef WPS_BROWSE_PRE - if ((lastbutton != WPS_BROWSE_PRE) #ifdef WPS_RC_BROWSE_PRE - && (lastbutton != WPS_RC_BROWSE_PRE) + if ((button == WPS_RC_BROWSE) && (lastbutton != WPS_RC_BROWSE_PRE)) + break; #endif - ) +#ifdef WPS_RC_BROWSE2 + case WPS_RC_BROWSE2: +#endif +#ifdef WPS_RC_BROWSE2_PRE + if ((button == WPS_RC_BROWSE2) && (lastbutton != WPS_RC_BROWSE2_PRE)) break; #endif + #ifdef HAVE_LCD_CHARCELLS status_set_record(false); status_set_audio(false); @@ -292,8 +304,15 @@ #ifdef WPS_RC_PAUSE case WPS_RC_PAUSE: #ifdef WPS_RC_PAUSE_PRE - if ((button == WPS_RC_PAUSE) && - (lastbutton != WPS_RC_PAUSE_PRE)) + if ((button == WPS_RC_PAUSE) && (lastbutton != WPS_RC_PAUSE_PRE)) + break; +#endif +#endif + +#ifdef WPS_RC_PAUSE2 + case WPS_RC_PAUSE2: +#ifdef WPS_RC_PAUSE2_PRE + if ((button == WPS_RC_PAUSE2) && (lastbutton != WPS_RC_PAUSE2_PRE)) break; #endif #endif @@ -326,6 +345,10 @@ case WPS_RC_INCVOL: case WPS_RC_INCVOL | BUTTON_REPEAT: #endif +#ifdef WPS_RC_INCVOL2 + case WPS_RC_INCVOL2: + case WPS_RC_INCVOL2 | BUTTON_REPEAT: +#endif { global_settings.volume++; bool res = false; @@ -349,6 +372,10 @@ case WPS_RC_DECVOL: case WPS_RC_DECVOL | BUTTON_REPEAT: #endif +#ifdef WPS_RC_DECVOL2 + case WPS_RC_DECVOL2: + case WPS_RC_DECVOL2 | BUTTON_REPEAT: +#endif { global_settings.volume--; setvol(); @@ -369,6 +396,9 @@ #ifdef WPS_RC_FFWD case WPS_RC_FFWD: #endif +#ifdef WPS_RC_FFWD2 + case WPS_RC_FFWD2: +#endif case WPS_FFWD: #ifdef WPS_NEXT_DIR if (current_tick - right_lastclick < HZ) @@ -381,6 +411,9 @@ #ifdef WPS_RC_REW case WPS_RC_REW: #endif +#ifdef WPS_RC_REW2 + case WPS_RC_REW2: +#endif case WPS_REW: #ifdef WPS_PREV_DIR if (current_tick - left_lastclick < HZ) @@ -405,7 +438,14 @@ if ((button == WPS_RC_PREV) && (lastbutton != WPS_RC_PREV_PRE)) break; #endif -#endif +#endif +#ifdef WPS_RC_PREV2 + case WPS_RC_PREV2: +#ifdef WPS_RC_PREV2_PRE + if ((button == WPS_RC_PREV2) && (lastbutton != WPS_RC_PREV2_PRE)) + break; +#endif +#endif left_lastclick = current_tick; update_track = true; @@ -489,6 +529,13 @@ break; #endif #endif +#ifdef WPS_RC_NEXT2 + case WPS_RC_NEXT2: +#ifdef WPS_RC_NEXT2_PRE + if ((button == WPS_RC_NEXT2) && (lastbutton != WPS_RC_NEXT2_PRE)) + break; +#endif +#endif right_lastclick = current_tick; update_track = true; @@ -522,11 +569,11 @@ #endif #ifdef WPS_RC_MENU case WPS_RC_MENU: +#endif #ifdef WPS_RC_MENU_PRE if ((button == WPS_RC_MENU) && (lastbutton != WPS_RC_MENU_PRE)) break; #endif -#endif FOR_NB_SCREENS(i) gui_wps[i].display->stop_scroll(); diff -ru rockbox-devel/apps/gui/gwps.h rockbox/apps/gui/gwps.h --- rockbox-devel/apps/gui/gwps.h 2006-02-26 15:46:10.000000000 +0900 +++ rockbox/apps/gui/gwps.h 2006-02-27 08:32:56.901257600 +0900 @@ -51,15 +51,15 @@ #define WPS_RC_NEXT_DIR BUTTON_RC_BITRATE #define WPS_RC_PREV_DIR BUTTON_RC_SOURCE -#define WPS_RC_NEXT (BUTTON_RC_FF | BUTTON_REL) -#define WPS_RC_NEXT_PRE BUTTON_RC_FF -#define WPS_RC_PREV (BUTTON_RC_REW | BUTTON_REL) -#define WPS_RC_PREV_PRE BUTTON_RC_REW -#define WPS_RC_FFWD (BUTTON_RC_FF | BUTTON_REPEAT) -#define WPS_RC_REW (BUTTON_RC_REW | BUTTON_REPEAT) +#define WPS_RC_NEXT (BUTTON_RC_FF | BUTTON_REL) /* for H1x0 */ +#define WPS_RC_NEXT_PRE BUTTON_RC_FF /* for H1x0 */ +#define WPS_RC_PREV (BUTTON_RC_REW | BUTTON_REL) /* for H1x0 */ +#define WPS_RC_PREV_PRE BUTTON_RC_REW /* for H1x0 */ +#define WPS_RC_FFWD (BUTTON_RC_FF | BUTTON_REPEAT) /* for H1x0 */ +#define WPS_RC_REW (BUTTON_RC_REW | BUTTON_REPEAT) /* for H1x0 */ #define WPS_RC_PAUSE BUTTON_RC_ON -#define WPS_RC_INCVOL BUTTON_RC_VOL_UP -#define WPS_RC_DECVOL BUTTON_RC_VOL_DOWN +#define WPS_RC_INCVOL BUTTON_RC_VOL_UP /* for H1x0 */ +#define WPS_RC_DECVOL BUTTON_RC_VOL_DOWN /* for H1x0 */ #define WPS_RC_EXIT BUTTON_RC_STOP #define WPS_RC_MENU (BUTTON_RC_MODE | BUTTON_REL) #define WPS_RC_MENU_PRE BUTTON_RC_MODE @@ -68,6 +68,20 @@ #define WPS_RC_CONTEXT (BUTTON_RC_MENU | BUTTON_REPEAT) #define WPS_RC_QUICK (BUTTON_RC_MODE | BUTTON_REPEAT) +#define WPS_RC_NEXT2 (BUTTON_RC3_FF | BUTTON_REL) /* for H3x0 */ +#define WPS_RC_NEXT2_PRE BUTTON_RC3_FF /* for H3x0 */ +#define WPS_RC_PREV2 (BUTTON_RC3_REW | BUTTON_REL) /* for H3x0 */ +#define WPS_RC_PREV2_PRE BUTTON_RC3_REW /* for H3x0 */ +#define WPS_RC_FFWD2 (BUTTON_RC3_FF | BUTTON_REPEAT) /* for H3x0 */ +#define WPS_RC_REW2 (BUTTON_RC3_REW | BUTTON_REPEAT) /* for H3x0 */ +#define WPS_RC_INCVOL2 BUTTON_RC3_VOL_UP /* for H3x0 */ +#define WPS_RC_DECVOL2 BUTTON_RC3_VOL_DOWN /* for H3x0 */ +#define WPS_RC_PAUSE2 (BUTTON_RC3_ON | BUTTON_REL) +#define WPS_RC_PAUSE2_PRE BUTTON_RC3_ON +#define WPS_RC_BROWSE2 (BUTTON_RC3_MENU | BUTTON_REL) +#define WPS_RC_BROWSE2_PRE BUTTON_RC3_MENU +#define WPS_RC_CONTEXT2 (BUTTON_RC3_ON | BUTTON_REPEAT) + #ifdef AB_REPEAT_ENABLE #define WPS_AB_SHARE_DIR_BUTTONS #define WPS_AB_RESET_AB_MARKERS (BUTTON_ON | BUTTON_SELECT) diff -ru rockbox-devel/apps/gui/list.c rockbox/apps/gui/list.c --- rockbox-devel/apps/gui/list.c 2006-02-21 06:06:46.000000000 +0900 +++ rockbox/apps/gui/list.c 2006-02-27 08:33:09.579488000 +0900 @@ -596,12 +596,18 @@ #ifdef LIST_RC_PREV case LIST_RC_PREV: #endif +#ifdef LIST_RC_PREV2 + case LIST_RC_PREV2: +#endif gui_synclist_limit_scroll(lists, false); case LIST_PREV | BUTTON_REPEAT: #ifdef LIST_RC_PREV case LIST_RC_PREV | BUTTON_REPEAT: #endif +#ifdef LIST_RC_PREV2 + case LIST_RC_PREV2 | BUTTON_REPEAT: +#endif gui_synclist_select_previous(lists); gui_synclist_draw(lists); yield(); @@ -611,6 +617,9 @@ #ifdef LIST_RC_NEXT case LIST_RC_NEXT: #endif +#ifdef LIST_RC_NEXT2 + case LIST_RC_NEXT2: +#endif gui_synclist_limit_scroll(lists, false); case LIST_NEXT | BUTTON_REPEAT: @@ -618,6 +627,9 @@ case LIST_RC_NEXT | BUTTON_REPEAT: #endif +#ifdef LIST_RC_NEXT2 + case LIST_RC_NEXT2 | BUTTON_REPEAT: +#endif gui_synclist_select_next(lists); gui_synclist_draw(lists); yield(); @@ -630,6 +642,10 @@ case LIST_RC_PGRIGHT: case LIST_RC_PGRIGHT | BUTTON_REPEAT: #endif +#ifdef LIST_RC_PGRIGHT2 + case LIST_RC_PGRIGHT2: + case LIST_RC_PGRIGHT2 | BUTTON_REPEAT: +#endif gui_synclist_scroll_right(lists); gui_synclist_draw(lists); return true; @@ -642,6 +658,10 @@ case LIST_RC_PGLEFT: case LIST_RC_PGLEFT | BUTTON_REPEAT: #endif +#ifdef LIST_RC_PGLEFT2 + case LIST_RC_PGLEFT2: + case LIST_RC_PGLEFT2 | BUTTON_REPEAT: +#endif gui_synclist_scroll_left(lists); gui_synclist_draw(lists); return true; diff -ru rockbox-devel/apps/gui/list.h rockbox/apps/gui/list.h --- rockbox-devel/apps/gui/list.h 2006-02-26 15:46:12.000000000 +0900 +++ rockbox/apps/gui/list.h 2006-02-27 08:33:16.980129600 +0900 @@ -43,6 +43,10 @@ #define LIST_RC_PGDN BUTTON_RC_BITRATE #define LIST_RC_PGRIGHT (BUTTON_RC_VOL_UP) #define LIST_RC_PGLEFT (BUTTON_RC_VOL_DOWN) +#define LIST_RC_NEXT2 BUTTON_RC3_VOL_DOWN +#define LIST_RC_PREV2 BUTTON_RC3_VOL_UP +#define LIST_RC_PGRIGHT2 BUTTON_RC3_FF +#define LIST_RC_PGLEFT2 BUTTON_RC3_REW #endif /* CONFIG_REMOTE_KEYPAD */ #elif CONFIG_KEYPAD == RECORDER_PAD diff -ru rockbox-devel/apps/gui/quickscreen.c rockbox/apps/gui/quickscreen.c --- rockbox-devel/apps/gui/quickscreen.c 2006-01-22 10:21:36.000000000 +0900 +++ rockbox/apps/gui/quickscreen.c 2006-02-27 08:33:34.625502400 +0900 @@ -117,6 +117,10 @@ case QUICKSCREEN_RC_LEFT : case QUICKSCREEN_RC_LEFT | BUTTON_REPEAT : #endif +#ifdef QUICKSCREEN_RC_LEFT2 + case QUICKSCREEN_RC_LEFT2 : + case QUICKSCREEN_RC_LEFT2 | BUTTON_REPEAT : +#endif option_select_next(qs->left_option); return(true); @@ -126,6 +130,10 @@ case QUICKSCREEN_RC_BOTTOM : case QUICKSCREEN_RC_BOTTOM | BUTTON_REPEAT : #endif +#ifdef QUICKSCREEN_RC_BOTTOM2 + case QUICKSCREEN_RC_BOTTOM2 : + case QUICKSCREEN_RC_BOTTOM2 | BUTTON_REPEAT : +#endif option_select_next(qs->bottom_option); return(true); @@ -135,6 +143,10 @@ case QUICKSCREEN_RC_RIGHT : case QUICKSCREEN_RC_RIGHT | BUTTON_REPEAT : #endif +#ifdef QUICKSCREEN_RC_RIGHT2 + case QUICKSCREEN_RC_RIGHT2 : + case QUICKSCREEN_RC_RIGHT2 | BUTTON_REPEAT : +#endif option_select_next(qs->right_option); return(true); @@ -144,6 +156,10 @@ case QUICKSCREEN_RC_BOTTOM_INV : case QUICKSCREEN_RC_BOTTOM_INV | BUTTON_REPEAT : #endif +#ifdef QUICKSCREEN_RC_BOTTOM_INV2 + case QUICKSCREEN_RC_BOTTOM_INV2 : + case QUICKSCREEN_RC_BOTTOM_INV2 | BUTTON_REPEAT : +#endif option_select_prev(qs->bottom_option); return(true); } diff -ru rockbox-devel/apps/gui/quickscreen.h rockbox/apps/gui/quickscreen.h --- rockbox-devel/apps/gui/quickscreen.h 2005-11-23 06:55:04.000000000 +0900 +++ rockbox/apps/gui/quickscreen.h 2006-02-27 08:33:41.996100800 +0900 @@ -44,6 +44,10 @@ #define QUICKSCREEN_RC_BOTTOM BUTTON_RC_VOL_DOWN #define QUICKSCREEN_RC_BOTTOM_INV BUTTON_RC_VOL_UP #define QUICKSCREEN_RC_RIGHT BUTTON_RC_FF +#define QUICKSCREEN_RC_LEFT2 BUTTON_RC3_REW +#define QUICKSCREEN_RC_BOTTOM2 BUTTON_RC3_VOL_DOWN +#define QUICKSCREEN_RC_BOTTOM_INV2 BUTTON_RC3_VOL_UP +#define QUICKSCREEN_RC_RIGHT2 BUTTON_RC3_FF #endif #endif diff -ru rockbox-devel/apps/gui/select.c rockbox/apps/gui/select.c --- rockbox-devel/apps/gui/select.c 2005-12-08 00:37:22.000000000 +0900 +++ rockbox/apps/gui/select.c 2006-02-27 08:33:52.421091200 +0900 @@ -88,6 +88,9 @@ #ifdef SELECT_RC_INC case SELECT_RC_INC : #endif +#ifdef SELECT_RC_INC2 + case SELECT_RC_INC2 : +#endif option_select_next(&select->options); return(true); @@ -95,11 +98,17 @@ #ifdef SELECT_RC_DEC case SELECT_RC_DEC | BUTTON_REPEAT : #endif +#ifdef SELECT_RC_DEC2 + case SELECT_RC_DEC2 | BUTTON_REPEAT : +#endif select->options.limit_loop = true; case SELECT_DEC : #ifdef SELECT_RC_DEC case SELECT_RC_DEC : #endif +#ifdef SELECT_RC_DEC2 + case SELECT_RC_DEC2 : +#endif option_select_prev(&select->options); return(true); @@ -110,6 +119,12 @@ #ifdef SELECT_RC_OK2 case SELECT_RC_OK2 : #endif +#ifdef SELECT_RC_OK3 + case SELECT_RC_OK3 : +#endif +#ifdef SELECT_RC_OK4 + case SELECT_RC_OK4 : +#endif #ifdef SELECT_OK2 case SELECT_OK2 : #endif diff -ru rockbox-devel/apps/gui/select.h rockbox/apps/gui/select.h --- rockbox-devel/apps/gui/select.h 2006-02-26 15:46:14.000000000 +0900 +++ rockbox/apps/gui/select.h 2006-02-27 08:33:57.818852800 +0900 @@ -35,9 +35,13 @@ #define SELECT_RC_INC BUTTON_RC_FF #define SELECT_RC_DEC BUTTON_RC_REW #define SELECT_RC_OK BUTTON_RC_ON -#define SELECT_RC_OK2 BUTTON_RC_MENU +#define SELECT_RC_OK2 BUTTON_RC3_ON +#define SELECT_RC_OK3 BUTTON_RC_MENU +#define SELECT_RC_OK4 BUTTON_RC3_MENU #define SELECT_RC_CANCEL BUTTON_RC_STOP #define SELECT_RC_CANCEL2 BUTTON_RC_MODE +#define SELECT_RC_INC2 BUTTON_RC3_VOL_UP +#define SELECT_RC_DEC2 BUTTON_RC3_VOL_DOWN #elif CONFIG_KEYPAD == RECORDER_PAD #define SELECT_INC BUTTON_UP diff -ru rockbox-devel/apps/menu.c rockbox/apps/menu.c --- rockbox-devel/apps/menu.c 2005-12-06 07:44:42.000000000 +0900 +++ rockbox/apps/menu.c 2006-02-27 08:37:04.387124800 +0900 @@ -64,6 +64,9 @@ static struct menu menus[MAX_MENUS]; static bool inuse[MAX_MENUS] = { false }; +static int lastkey = BUTTON_NONE; + + char * menu_get_itemname(int selected_item, void * data, char *buffer) { struct menu *local_menus=(struct menu *)data; @@ -153,6 +156,26 @@ #ifdef MENU_RC_ENTER2 case MENU_RC_ENTER2: #endif +#ifdef MENU_RC_ENTER3 + case MENU_RC_ENTER3: +#endif +#ifdef MENU_RC_ENTER4 + case MENU_RC_ENTER4: +#endif +#ifdef MENU_RC_ENTER5 + case MENU_RC_ENTER5: +#endif +#ifdef MENU_RC_ENTER6 + case MENU_RC_ENTER6: +#endif +#ifdef MENU_RC_ENTER3_PRE + if ((key == MENU_RC_ENTER3) && (lastkey != MENU_RC_ENTER3_PRE)) + break; +#endif +#ifdef MENU_RC_ENTER4_PRE + if ((key == MENU_RC_ENTER4) && (lastkey != MENU_RC_ENTER4_PRE)) + break; +#endif return gui_synclist_get_sel_pos(&(menus[m].synclist)); @@ -169,6 +192,17 @@ #ifdef MENU_RC_EXIT_MENU case MENU_RC_EXIT_MENU: #endif +#ifdef MENU_RC_EXIT2 + case MENU_RC_EXIT2: +#endif +#ifdef MENU_RC_EXIT4 + case MENU_RC_EXIT4: +#endif +#ifdef MENU_RC_EXIT3 + case MENU_RC_EXIT3: + if (lastkey == MENU_RC_EXIT3) + break; +#endif exit = true; break; @@ -177,6 +211,8 @@ return MENU_ATTACHED_USB; break; } + if ( key ) + lastkey = key; gui_syncstatusbar_draw(&statusbars, false); } return MENU_SELECTED_EXIT; diff -ru rockbox-devel/apps/menu.h rockbox/apps/menu.h --- rockbox-devel/apps/menu.h 2006-02-26 15:45:14.000000000 +0900 +++ rockbox/apps/menu.h 2006-02-27 08:36:56.716094400 +0900 @@ -31,11 +31,19 @@ #define MENU_ENTER BUTTON_RIGHT #define MENU_ENTER2 BUTTON_SELECT +#define MENU_RC_ENTER BUTTON_RC_ON +#define MENU_RC_ENTER2 BUTTON_RC3_ON +#define MENU_RC_ENTER3 (BUTTON_RC_MENU | BUTTON_REL) +#define MENU_RC_ENTER3_PRE BUTTON_RC_MENU +#define MENU_RC_ENTER4 (BUTTON_RC3_MENU | BUTTON_REL) +#define MENU_RC_ENTER4_PRE BUTTON_RC3_MENU +#define MENU_RC_ENTER5 BUTTON_RC_VOL_UP +#define MENU_RC_ENTER6 BUTTON_RC3_FF #define MENU_RC_EXIT BUTTON_RC_STOP #define MENU_RC_EXIT_MENU BUTTON_RC_MODE -#define MENU_RC_ENTER BUTTON_RC_ON -#define MENU_RC_ENTER2 BUTTON_RC_MENU - +#define MENU_RC_EXIT2 BUTTON_RC_VOL_DOWN +#define MENU_RC_EXIT3 (BUTTON_RC_MENU | BUTTON_REPEAT) +#define MENU_RC_EXIT4 BUTTON_RC3_REW #elif CONFIG_KEYPAD == RECORDER_PAD diff -ru rockbox-devel/apps/settings.h rockbox/apps/settings.h --- rockbox-devel/apps/settings.h 2006-02-26 15:45:22.000000000 +0900 +++ rockbox/apps/settings.h 2006-02-27 08:34:26.700382400 +0900 @@ -56,6 +56,25 @@ #define SETTINGS_NEXT BUTTON_RIGHT #define SETTINGS_ACCEPT BUTTON_ON +#define SETTINGS_RC_INC BUTTON_RC_FF /* for H1x0 remote */ +#define SETTINGS_RC_INC2 BUTTON_RC3_VOL_UP /* for H3x0 remote */ +#define SETTINGS_RC_DEC BUTTON_RC_REW /* for H1x0 remote */ +#define SETTINGS_RC_DEC2 BUTTON_RC3_VOL_DOWN /* for H3x0 remote */ +#define SETTINGS_RC_OK BUTTON_RC_ON /* for H1x0 remote */ +#define SETTINGS_RC_OK2 (BUTTON_RC_MENU | BUTTON_REL) /* for H1x0 remote */ +#define SETTINGS_RC_OK2_PRE BUTTON_RC_MENU /* for H1x0 remote */ +#define SETTINGS_RC_OK3 BUTTON_RC3_MENU /* for H3x0 remote */ +#define SETTINGS_RC_OK4 (BUTTON_RC3_ON | BUTTON_REL) /* for H3x0 remote */ +#define SETTINGS_RC_OK4_PRE BUTTON_RC3_ON /* for H3x0 remote */ +#define SETTINGS_RC_CANCEL BUTTON_RC_STOP /* for H1x0/H3x0 remote */ +#define SETTINGS_RC_CANCEL2 (BUTTON_RC_MENU | BUTTON_REPEAT) /* for H1x0 remote */ +#define SETTINGS_RC_CANCEL3 (BUTTON_RC3_ON | BUTTON_REPEAT) /* for H3x0 remote */ +#define SETTINGS_RC_PREV BUTTON_RC_REW /* for H1x0 remote */ +#define SETTINGS_RC_PREV2 BUTTON_RC3_REW /* for H3x0 remote */ +#define SETTINGS_RC_NEXT BUTTON_RC_FF /* for H1x0 remote */ +#define SETTINGS_RC_NEXT2 BUTTON_RC3_FF /* for H3x0 remote */ +//#define SETTINGS_RC_ACCEPT BUTTON_ + #elif CONFIG_KEYPAD == RECORDER_PAD #define SETTINGS_INC BUTTON_UP #define SETTINGS_DEC BUTTON_DOWN @@ -396,6 +415,7 @@ then according to timeout_values[] */ int remote_backlight_timeout_plugged; bool remote_caption_backlight; /* turn on backlight at end and start of track */ + int remote_type; /* remote type 0=H1x0, 1=H3x0 LCD, 2=H3x0 nonLCD, 3=other */ #ifdef HAVE_REMOTE_LCD_TICKING bool remote_reduce_ticking; /* 0=normal operation, 1=EMI reduce on with cost more CPU. */ diff -ru rockbox-devel/apps/tree.c rockbox/apps/tree.c --- rockbox-devel/apps/tree.c 2006-02-08 07:19:08.000000000 +0900 +++ rockbox/apps/tree.c 2006-02-27 08:34:52.547548800 +0900 @@ -581,19 +581,31 @@ switch ( button ) { #ifdef TREE_ENTER case TREE_ENTER: - case TREE_ENTER | BUTTON_REPEAT: +// case TREE_ENTER | BUTTON_REPEAT: #endif #ifdef TREE_RC_RUN case TREE_RC_RUN: #endif +#ifdef TREE_RC_RUN2 + case TREE_RC_RUN2: +#endif +#ifdef TREE_RC_ENTER + case TREE_RC_ENTER: +#endif +#ifdef TREE_RC_ENTER2 + case TREE_RC_ENTER2: +#endif case TREE_RUN: #ifdef TREE_RUN_PRE - if (((button == TREE_RUN) + if ((button == TREE_RUN) && (lastbutton != TREE_RUN_PRE)) + break; +#endif #ifdef TREE_RC_RUN_PRE - || (button == TREE_RC_RUN)) - && ((lastbutton != TREE_RC_RUN_PRE) + if ((button == TREE_RC_RUN) && (lastbutton != TREE_RC_RUN_PRE)) + break; #endif - && (lastbutton != TREE_RUN_PRE))) +#ifdef TREE_RC_RUN2_PRE + if ((button == TREE_RC_RUN2) && (lastbutton != TREE_RC_RUN2_PRE)) break; #endif /* nothing to do if no files to display */ @@ -611,17 +623,38 @@ break; case TREE_EXIT: - case TREE_EXIT | BUTTON_REPEAT: +// case TREE_EXIT | BUTTON_REPEAT: #ifdef TREE_RC_EXIT case TREE_RC_EXIT: #endif +#ifdef TREE_RC_EXIT1 + case TREE_RC_EXIT1: +#endif +#ifdef TREE_RC_EXIT2 + case TREE_RC_EXIT2: +#endif +#ifdef TREE_RC_EXIT3 + case TREE_RC_EXIT3: + if (lastbutton == TREE_RC_EXIT3) + break; +#endif +#ifdef TREE_RC_EXIT4 + case TREE_RC_EXIT4: + if (lastbutton == TREE_RC_EXIT4) + break; +#endif if (*tc.dirfilter > NUM_FILTER_MODES && tc.dirlevel < 1) { exit_func = true; break; } /* if we are in /, nothing to do */ if (tc.dirlevel == 0) + { + if (audio_status() & AUDIO_STATUS_PLAY) + start_wps=true; + while(button_get_w_tmo(HZ/5)) {} break; + } if (id3db) db_exit(&tc); @@ -694,13 +727,17 @@ #ifdef TREE_RC_WPS case TREE_RC_WPS: #endif +#ifdef TREE_RC_WPS2 + case TREE_RC_WPS2: +#endif #ifdef TREE_WPS_PRE - if ((lastbutton != TREE_WPS_PRE) -#ifdef TREE_RC_WPS - && (lastbutton != TREE_RC_WPS_PRE) + if ((button == TREE_WPS) && (lastbutton != TREE_WPS_PRE)) break; #endif - ) - break; +#ifdef TREE_RC_WPS_PRE + if ((button == TREE_RC_WPS) && (lastbutton != TREE_RC_WPS_PRE)) break; +#endif +#ifdef TREE_RC_WPS2_PRE + if ((button == TREE_RC_WPS2) && (lastbutton != TREE_RC_WPS2_PRE)) break; #endif /* don't enter wps from plugin browser etc */ if (*tc.dirfilter < NUM_FILTER_MODES) @@ -751,6 +788,9 @@ #ifdef TREE_RC_CONTEXT case TREE_RC_CONTEXT: #endif +#ifdef TREE_RC_CONTEXT2 + case TREE_RC_CONTEXT2: +#endif #ifdef TREE_CONTEXT2 case TREE_CONTEXT2: #endif diff -ru rockbox-devel/apps/tree.h rockbox/apps/tree.h --- rockbox-devel/apps/tree.h 2006-02-26 15:45:26.000000000 +0900 +++ rockbox/apps/tree.h 2006-02-27 08:34:56.623409600 +0900 @@ -45,14 +45,27 @@ #define TREE_RC_PREV BUTTON_RC_REW #define TREE_RC_PGUP BUTTON_RC_SOURCE #define TREE_RC_PGDN BUTTON_RC_BITRATE -#define TREE_RC_EXIT BUTTON_RC_STOP +#define TREE_RC_ENTER BUTTON_RC_VOL_UP +#define TREE_RC_ENTER2 BUTTON_RC3_FF +#define TREE_RC_OFF BUTTON_RC_STOP +#define TREE_RC_EXIT1 BUTTON_RC_VOL_DOWN +#define TREE_RC_EXIT2 BUTTON_RC3_REW +#define TREE_RC_EXIT3 (BUTTON_RC_MENU | BUTTON_REPEAT) +#define TREE_RC_EXIT4 (BUTTON_RC3_ON | BUTTON_REPEAT) #define TREE_RC_RUN (BUTTON_RC_MENU | BUTTON_REL) #define TREE_RC_RUN_PRE BUTTON_RC_MENU +#define TREE_RC_RUN2 (BUTTON_RC3_MENU | BUTTON_REL) +#define TREE_RC_RUN2_PRE BUTTON_RC3_MENU #define TREE_RC_MENU (BUTTON_RC_MODE | BUTTON_REL) #define TREE_RC_MENU_PRE BUTTON_RC_MODE #define TREE_RC_WPS (BUTTON_RC_ON | BUTTON_REL) #define TREE_RC_WPS_PRE BUTTON_RC_ON +#define TREE_RC_WPS2 (BUTTON_RC3_ON | BUTTON_REL) +#define TREE_RC_WPS2_PRE BUTTON_RC3_ON + #define TREE_RC_CONTEXT (BUTTON_RC_ON | BUTTON_REPEAT) +#define TREE_RC_CONTEXT2 (BUTTON_RC3_MENU | BUTTON_REPEAT) + #define TREE_RC_QUICK (BUTTON_RC_MODE | BUTTON_REPEAT) #elif CONFIG_KEYPAD == RECORDER_PAD diff -ru rockbox-devel/firmware/drivers/button.c rockbox/firmware/drivers/button.c --- rockbox-devel/firmware/drivers/button.c 2006-02-26 15:48:22.000000000 +0900 +++ rockbox/firmware/drivers/button.c 2006-02-27 08:38:02.741033600 +0900 @@ -900,9 +900,9 @@ if (data < 0x42) if (data < 0x27) if(data < 0x0c) - btn = BUTTON_RC_VOL_DOWN; + btn = BUTTON_RC3_VOL_DOWN; else - btn = BUTTON_RC_FF; + btn = BUTTON_RC3_FF; else btn = BUTTON_RC_STOP; else @@ -913,7 +913,7 @@ else if (data < 0xab) if (data < 0x8e) - btn = BUTTON_RC_ON; + btn = BUTTON_RC3_ON; else btn = BUTTON_RC_BITRATE; else @@ -921,23 +921,23 @@ if(data < 0xc5) btn = BUTTON_RC_SOURCE; else - btn = BUTTON_RC_VOL_UP; + btn = BUTTON_RC3_VOL_UP; else if (data < 0xf5) - btn = BUTTON_RC_REW; + btn = BUTTON_RC3_REW; break; case REMOTETYPE_H300_NONLCD: if(data<0x7d) if(data<0x25) - btn = BUTTON_RC_FF; + btn = BUTTON_RC3_FF; else - btn = BUTTON_RC_REW; + btn = BUTTON_RC3_REW; else if(data<0xd5) - btn = BUTTON_RC_VOL_DOWN; + btn = BUTTON_RC3_VOL_DOWN; else if(data<0xf1) /* 0xff no button pressed */ - btn = BUTTON_RC_VOL_UP; + btn = BUTTON_RC3_VOL_UP; break; } } @@ -961,11 +961,13 @@ switch(remote_type()) { case REMOTETYPE_H100_LCD: - case REMOTETYPE_H300_NONLCD: btn |= BUTTON_RC_ON; break; + case REMOTETYPE_H300_NONLCD: + btn |= BUTTON_RC3_ON; + break; case REMOTETYPE_H300_LCD: - btn |= BUTTON_RC_MENU; + btn |= BUTTON_RC3_MENU; break; } diff -ru rockbox-devel/firmware/export/button.h rockbox/firmware/export/button.h --- rockbox-devel/firmware/export/button.h 2006-02-26 15:48:28.000000000 +0900 +++ rockbox/firmware/export/button.h 2006-02-27 08:35:15.190107200 +0900 @@ -49,6 +49,8 @@ bool remote_button_hold(void); #endif +extern void set_remote_type(int type); + #if CONFIG_KEYPAD == IRIVER_IFP7XX_PAD bool button_hold(void); #endif @@ -63,6 +65,7 @@ #define BUTTON_REMOTE 0x2000 #define BUTTON_REPEAT 0x4000 #define BUTTON_REL 0x8000 +#define BUTTON_REMOTE3 0x1000 /* for H3x0 remote */ /* remote control buttons */ #define BUTTON_RC_VOL_UP (0x0008 | BUTTON_REMOTE) @@ -70,6 +73,11 @@ #define BUTTON_RC_LEFT (BUTTON_LEFT | BUTTON_REMOTE) #define BUTTON_RC_RIGHT (BUTTON_RIGHT| BUTTON_REMOTE) +#define RC_TYPE_H100 0 +#define RC_TYPE_H300_LCD 1 +#define RC_TYPE_H300 2 +#define RC_TYPE_OTHER 3 + #if CONFIG_KEYPAD == IRIVER_H100_PAD /* iRiver H100 specific button codes */ @@ -90,6 +98,12 @@ #define BUTTON_RC_MENU (BUTTON_REMOTE | 0x01000000) #define BUTTON_RC_FF (BUTTON_REMOTE | 0x02000000) #define BUTTON_RC_REW (BUTTON_REMOTE | 0x04000000) +#define BUTTON_RC3_ON (BUTTON_REMOTE3 | 0x00010000) +#define BUTTON_RC3_MENU (BUTTON_REMOTE3 | 0x01000000) +#define BUTTON_RC3_VOL_UP (BUTTON_REMOTE3 | 0x00000008) +#define BUTTON_RC3_VOL_DOWN (BUTTON_REMOTE3 | 0x00000800) +#define BUTTON_RC3_FF (BUTTON_REMOTE3 | 0x02000000) +#define BUTTON_RC3_REW (BUTTON_REMOTE3 | 0x04000000) #elif CONFIG_KEYPAD == IRIVER_H300_PAD @@ -101,6 +115,8 @@ #define BUTTON_OFF 0x0002 #define BUTTON_UP 0x0010 #define BUTTON_DOWN 0x0020 +#define BUTTON_QUICK BUTTON_ON +#define BUTTON_QUICK_LONG (BUTTON_ON | BUTTON_REPEAT) #define BUTTON_RC_ON (BUTTON_REMOTE | 0x00010000) #define BUTTON_RC_STOP (BUTTON_REMOTE | 0x00020000) @@ -111,6 +127,12 @@ #define BUTTON_RC_MENU (BUTTON_REMOTE | 0x01000000) #define BUTTON_RC_FF (BUTTON_REMOTE | 0x02000000) #define BUTTON_RC_REW (BUTTON_REMOTE | 0x04000000) +#define BUTTON_RC3_ON (BUTTON_REMOTE3 | 0x00010000) +#define BUTTON_RC3_MENU (BUTTON_REMOTE3 | 0x01000000) +#define BUTTON_RC3_VOL_UP (BUTTON_REMOTE3 | 0x00000008) +#define BUTTON_RC3_VOL_DOWN (BUTTON_REMOTE3 | 0x00000800) +#define BUTTON_RC3_FF (BUTTON_REMOTE3 | 0x02000000) +#define BUTTON_RC3_REW (BUTTON_REMOTE3 | 0x04000000) #elif CONFIG_KEYPAD == RECORDER_PAD @@ -215,4 +237,3 @@ #endif /* RECORDER/PLAYER/ONDIO/GMINI KEYPAD */ #endif /* _BUTTON_H_ */ -