diff options
author | Linus Nielsen Feltzing <linus@haxx.se> | 2006-02-24 15:06:25 +0000 |
---|---|---|
committer | Linus Nielsen Feltzing <linus@haxx.se> | 2006-02-24 15:06:25 +0000 |
commit | 568ac3eb2130eb3c8075d6e1de5402647b5c2ebc (patch) | |
tree | 15c3a6a31d51a648a62408a7556c04f7ded04186 | |
parent | f16c1f341a479a61e2cdf1f54de7106ac8d5fc36 (diff) | |
download | rockbox-568ac3eb2130eb3c8075d6e1de5402647b5c2ebc.tar.gz rockbox-568ac3eb2130eb3c8075d6e1de5402647b5c2ebc.zip |
Button driver for iAudio X5
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8828 a1c6a512-1295-4272-9138-f99709370657
32 files changed, 98 insertions, 56 deletions
diff --git a/apps/bookmark.h b/apps/bookmark.h index f6f6bc8019..2d1dc3e27f 100644 --- a/apps/bookmark.h +++ b/apps/bookmark.h | |||
@@ -44,7 +44,7 @@ | |||
44 | #define BOOKMARK_DOWN BUTTON_DOWN | 44 | #define BOOKMARK_DOWN BUTTON_DOWN |
45 | 45 | ||
46 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD | 46 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD |
47 | #define BOOKMARK_SELECT BUTTON_MENU | 47 | #define BOOKMARK_SELECT BUTTON_SELECT |
48 | #define BOOKMARK_DELETE BUTTON_REC | BUTTON_REPEAT | 48 | #define BOOKMARK_DELETE BUTTON_REC | BUTTON_REPEAT |
49 | #define BOOKMARK_DOWN BUTTON_DOWN | 49 | #define BOOKMARK_DOWN BUTTON_DOWN |
50 | 50 | ||
diff --git a/apps/eq_menu.c b/apps/eq_menu.c index 80cdec3f65..0e754dd979 100644 --- a/apps/eq_menu.c +++ b/apps/eq_menu.c | |||
@@ -74,7 +74,7 @@ | |||
74 | #define EQ_BTN_NEXT_BAND BUTTON_DOWN | 74 | #define EQ_BTN_NEXT_BAND BUTTON_DOWN |
75 | #define EQ_BTN_PREV_BAND BUTTON_UP | 75 | #define EQ_BTN_PREV_BAND BUTTON_UP |
76 | #define EQ_BTN_CHANGE_MODE BUTTON_REC | 76 | #define EQ_BTN_CHANGE_MODE BUTTON_REC |
77 | #define EQ_BTN_EXIT BUTTON_MENU | 77 | #define EQ_BTN_EXIT BUTTON_SELECT |
78 | 78 | ||
79 | #elif (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) | 79 | #elif (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) |
80 | 80 | ||
diff --git a/apps/gui/gwps.h b/apps/gui/gwps.h index 2f63a4d1e4..dc6841b881 100644 --- a/apps/gui/gwps.h +++ b/apps/gui/gwps.h | |||
@@ -228,10 +228,10 @@ | |||
228 | #define WPS_DECVOL BUTTON_DOWN | 228 | #define WPS_DECVOL BUTTON_DOWN |
229 | #define WPS_PAUSE BUTTON_PLAY | 229 | #define WPS_PAUSE BUTTON_PLAY |
230 | /* #define WPS_MENU iAudioX5 can't have both main menu and context menu in wps (unless we use BUTTON_REC?) */ | 230 | /* #define WPS_MENU iAudioX5 can't have both main menu and context menu in wps (unless we use BUTTON_REC?) */ |
231 | #define WPS_BROWSE (BUTTON_MENU | BUTTON_REL) | 231 | #define WPS_BROWSE (BUTTON_SELECT | BUTTON_REL) |
232 | #define WPS_BROWSE_PRE BUTTON_MENU | 232 | #define WPS_BROWSE_PRE BUTTON_SELECT |
233 | #define WPS_EXIT (BUTTON_PLAY | BUTTON_REPEAT) | 233 | #define WPS_EXIT (BUTTON_PLAY | BUTTON_REPEAT) |
234 | #define WPS_CONTEXT (BUTTON_MENU | BUTTON_REPEAT) | 234 | #define WPS_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) |
235 | 235 | ||
236 | #endif | 236 | #endif |
237 | 237 | ||
diff --git a/apps/gui/select.h b/apps/gui/select.h index d0e545bd51..ff552950d7 100644 --- a/apps/gui/select.h +++ b/apps/gui/select.h | |||
@@ -88,7 +88,7 @@ | |||
88 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD | 88 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD |
89 | #define SELECT_INC BUTTON_UP | 89 | #define SELECT_INC BUTTON_UP |
90 | #define SELECT_DEC BUTTON_DOWN | 90 | #define SELECT_DEC BUTTON_DOWN |
91 | #define SELECT_OK BUTTON_MENU | 91 | #define SELECT_OK BUTTON_SELECT |
92 | #define SELECT_OK2 BUTTON_LEFT | 92 | #define SELECT_OK2 BUTTON_LEFT |
93 | #define SELECT_CANCEL BUTTON_PLAY | 93 | #define SELECT_CANCEL BUTTON_PLAY |
94 | #define SELECT_CANCEL2 BUTTON_POWER | 94 | #define SELECT_CANCEL2 BUTTON_POWER |
diff --git a/apps/menu.h b/apps/menu.h index 2130a00683..31e8730831 100644 --- a/apps/menu.h +++ b/apps/menu.h | |||
@@ -92,7 +92,7 @@ | |||
92 | #define MENU_NEXT BUTTON_DOWN | 92 | #define MENU_NEXT BUTTON_DOWN |
93 | #define MENU_PREV BUTTON_UP | 93 | #define MENU_PREV BUTTON_UP |
94 | #define MENU_EXIT BUTTON_LEFT | 94 | #define MENU_EXIT BUTTON_LEFT |
95 | #define MENU_EXIT_MENU BUTTON_MENU | 95 | #define MENU_EXIT_MENU BUTTON_REC |
96 | #define MENU_ENTER BUTTON_RIGHT | 96 | #define MENU_ENTER BUTTON_RIGHT |
97 | 97 | ||
98 | #endif | 98 | #endif |
diff --git a/apps/plugins/calculator.c b/apps/plugins/calculator.c index 2584062fd7..fb31d3d516 100644 --- a/apps/plugins/calculator.c +++ b/apps/plugins/calculator.c | |||
@@ -148,8 +148,8 @@ PLUGIN_HEADER | |||
148 | #define CALCULATOR_UP BUTTON_UP | 148 | #define CALCULATOR_UP BUTTON_UP |
149 | #define CALCULATOR_DOWN BUTTON_DOWN | 149 | #define CALCULATOR_DOWN BUTTON_DOWN |
150 | #define CALCULATOR_QUIT BUTTON_POWER | 150 | #define CALCULATOR_QUIT BUTTON_POWER |
151 | #define CALCULATOR_INPUT_CALC_PRE BUTTON_MENU | 151 | #define CALCULATOR_INPUT_CALC_PRE BUTTON_SELECT |
152 | #define CALCULATOR_INPUT (BUTTON_MENU | BUTTON_REL) | 152 | #define CALCULATOR_INPUT (BUTTON_SELECT | BUTTON_REL) |
153 | #define CALCULATOR_CALC BUTTON_PLAY | 153 | #define CALCULATOR_CALC BUTTON_PLAY |
154 | #define CALCULATOR_CLEAR BUTTON_REC | 154 | #define CALCULATOR_CLEAR BUTTON_REC |
155 | 155 | ||
diff --git a/apps/plugins/chessclock.c b/apps/plugins/chessclock.c index 6f1837ca2b..84979ab401 100644 --- a/apps/plugins/chessclock.c +++ b/apps/plugins/chessclock.c | |||
@@ -90,10 +90,10 @@ PLUGIN_HEADER | |||
90 | #define CHC_QUIT BUTTON_REC | 90 | #define CHC_QUIT BUTTON_REC |
91 | #define CHC_STARTSTOP BUTTON_PLAY | 91 | #define CHC_STARTSTOP BUTTON_PLAY |
92 | #define CHC_RESET BUTTON_POWER | 92 | #define CHC_RESET BUTTON_POWER |
93 | #define CHC_MENU BUTTON_MENU | 93 | #define CHC_MENU BUTTON_SELECT |
94 | #define CHC_SETTINGS_INC BUTTON_RIGHT | 94 | #define CHC_SETTINGS_INC BUTTON_RIGHT |
95 | #define CHC_SETTINGS_DEC BUTTON_LEFT | 95 | #define CHC_SETTINGS_DEC BUTTON_LEFT |
96 | #define CHC_SETTINGS_OK BUTTON_MENU | 96 | #define CHC_SETTINGS_OK BUTTON_SELECT |
97 | #define CHC_SETTINGS_CANCEL BUTTON_REC | 97 | #define CHC_SETTINGS_CANCEL BUTTON_REC |
98 | 98 | ||
99 | #endif | 99 | #endif |
diff --git a/apps/plugins/chip8.c b/apps/plugins/chip8.c index 66a2bfd70e..1be48823ed 100644 --- a/apps/plugins/chip8.c +++ b/apps/plugins/chip8.c | |||
@@ -988,7 +988,7 @@ STATIC void chip8 (void) | |||
988 | #define CHIP8_OFF BUTTON_POWER | 988 | #define CHIP8_OFF BUTTON_POWER |
989 | #define CHIP8_KEY2 BUTTON_UP | 989 | #define CHIP8_KEY2 BUTTON_UP |
990 | #define CHIP8_KEY4 BUTTON_LEFT | 990 | #define CHIP8_KEY4 BUTTON_LEFT |
991 | #define CHIP8_KEY5 BUTTON_MENU | 991 | #define CHIP8_KEY5 BUTTON_SELECT |
992 | #define CHIP8_KEY6 BUTTON_RIGHT | 992 | #define CHIP8_KEY6 BUTTON_RIGHT |
993 | #define CHIP8_KEY8 BUTTON_DOWN | 993 | #define CHIP8_KEY8 BUTTON_DOWN |
994 | 994 | ||
diff --git a/apps/plugins/cube.c b/apps/plugins/cube.c index d37eb41c09..63dcce4c33 100644 --- a/apps/plugins/cube.c +++ b/apps/plugins/cube.c | |||
@@ -115,7 +115,7 @@ PLUGIN_HEADER | |||
115 | #define CUBE_Y_DEC BUTTON_DOWN | 115 | #define CUBE_Y_DEC BUTTON_DOWN |
116 | #define CUBE_Z_INC (BUTTON_PLAY | BUTTON_UP) | 116 | #define CUBE_Z_INC (BUTTON_PLAY | BUTTON_UP) |
117 | #define CUBE_Z_DEC (BUTTON_PLAY | BUTTON_DOWN) | 117 | #define CUBE_Z_DEC (BUTTON_PLAY | BUTTON_DOWN) |
118 | #define CUBE_MODE BUTTON_MENU | 118 | #define CUBE_MODE BUTTON_SELECT |
119 | #define CUBE_PAUSE_PRE BUTTON_PLAY | 119 | #define CUBE_PAUSE_PRE BUTTON_PLAY |
120 | #define CUBE_PAUSE (BUTTON_PLAY | BUTTON_REL) | 120 | #define CUBE_PAUSE (BUTTON_PLAY | BUTTON_REL) |
121 | #define CUBE_HIGHSPEED (BUTTON_REC | BUTTON_REL) | 121 | #define CUBE_HIGHSPEED (BUTTON_REC | BUTTON_REL) |
diff --git a/apps/plugins/databox/databox.c b/apps/plugins/databox/databox.c index 996134d37d..d7e6f28ccb 100644 --- a/apps/plugins/databox/databox.c +++ b/apps/plugins/databox/databox.c | |||
@@ -41,7 +41,7 @@ PLUGIN_HEADER | |||
41 | #define DBX_SELECT BUTTON_SELECT | 41 | #define DBX_SELECT BUTTON_SELECT |
42 | #define DBX_STOP BUTTON_PLAY | 42 | #define DBX_STOP BUTTON_PLAY |
43 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD | 43 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD |
44 | #define DBX_SELECT BUTTON_MENU | 44 | #define DBX_SELECT BUTTON_SELECT |
45 | #define DBX_STOP BUTTON_PLAY | 45 | #define DBX_STOP BUTTON_PLAY |
46 | #endif | 46 | #endif |
47 | 47 | ||
diff --git a/apps/plugins/flipit.c b/apps/plugins/flipit.c index 13efac18a1..4b7ef42376 100644 --- a/apps/plugins/flipit.c +++ b/apps/plugins/flipit.c | |||
@@ -71,8 +71,8 @@ PLUGIN_HEADER | |||
71 | #define FLIPIT_SHUFFLE (BUTTON_PLAY | BUTTON_LEFT) | 71 | #define FLIPIT_SHUFFLE (BUTTON_PLAY | BUTTON_LEFT) |
72 | #define FLIPIT_SOLVE (BUTTON_PLAY | BUTTON_RIGHT) | 72 | #define FLIPIT_SOLVE (BUTTON_PLAY | BUTTON_RIGHT) |
73 | #define FLIPIT_STEP_BY_STEP (BUTTON_PLAY | BUTTON_UP) | 73 | #define FLIPIT_STEP_BY_STEP (BUTTON_PLAY | BUTTON_UP) |
74 | #define FLIPIT_TOGGLE_PRE BUTTON_MENU | 74 | #define FLIPIT_TOGGLE_PRE BUTTON_SELECT |
75 | #define FLIPIT_TOGGLE (BUTTON_MENU | BUTTON_REL) | 75 | #define FLIPIT_TOGGLE (BUTTON_SELECT | BUTTON_REL) |
76 | 76 | ||
77 | #endif | 77 | #endif |
78 | 78 | ||
diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c index eb44e4bd81..9e4ab66cbf 100644 --- a/apps/plugins/jewels.c +++ b/apps/plugins/jewels.c | |||
@@ -73,7 +73,7 @@ PLUGIN_HEADER | |||
73 | #define BEJEWELED_DOWN BUTTON_DOWN | 73 | #define BEJEWELED_DOWN BUTTON_DOWN |
74 | #define BEJEWELED_LEFT BUTTON_LEFT | 74 | #define BEJEWELED_LEFT BUTTON_LEFT |
75 | #define BEJEWELED_RIGHT BUTTON_RIGHT | 75 | #define BEJEWELED_RIGHT BUTTON_RIGHT |
76 | #define BEJEWELED_SELECT BUTTON_MENU | 76 | #define BEJEWELED_SELECT BUTTON_SELECT |
77 | #define BEJEWELED_CANCEL BUTTON_PLAY | 77 | #define BEJEWELED_CANCEL BUTTON_PLAY |
78 | 78 | ||
79 | #else | 79 | #else |
diff --git a/apps/plugins/jpeg.c b/apps/plugins/jpeg.c index d574bdada8..ecd42b6234 100644 --- a/apps/plugins/jpeg.c +++ b/apps/plugins/jpeg.c | |||
@@ -86,9 +86,9 @@ PLUGIN_HEADER | |||
86 | #define JPEG_PREVIOUS (BUTTON_SELECT |BUTTON_LEFT) | 86 | #define JPEG_PREVIOUS (BUTTON_SELECT |BUTTON_LEFT) |
87 | 87 | ||
88 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD | 88 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD |
89 | #define JPEG_ZOOM_IN_PRE BUTTON_MENU | 89 | #define JPEG_ZOOM_IN_PRE BUTTON_SELECT |
90 | #define JPEG_ZOOM_IN (BUTTON_MENU | BUTTON_REL) | 90 | #define JPEG_ZOOM_IN (BUTTON_SELECT | BUTTON_REL) |
91 | #define JPEG_ZOOM_OUT (BUTTON_MENU | BUTTON_REPEAT) | 91 | #define JPEG_ZOOM_OUT (BUTTON_SELECT | BUTTON_REPEAT) |
92 | #define JPEG_UP BUTTON_UP | 92 | #define JPEG_UP BUTTON_UP |
93 | #define JPEG_DOWN BUTTON_DOWN | 93 | #define JPEG_DOWN BUTTON_DOWN |
94 | #define JPEG_LEFT BUTTON_LEFT | 94 | #define JPEG_LEFT BUTTON_LEFT |
diff --git a/apps/plugins/logo.c b/apps/plugins/logo.c index 7fa00ee3b8..1a16e5d2a3 100644 --- a/apps/plugins/logo.c +++ b/apps/plugins/logo.c | |||
@@ -196,13 +196,7 @@ const unsigned char rockbox16x7[] = { | |||
196 | #define LP_DEC_Y BUTTON_DOWN | 196 | #define LP_DEC_Y BUTTON_DOWN |
197 | #define LP_INC_Y BUTTON_UP | 197 | #define LP_INC_Y BUTTON_UP |
198 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD | 198 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD |
199 | #define LP_QUIT BUTTON_MENU | 199 | #define LP_QUIT BUTTON_SELECT |
200 | #define LP_DEC_X BUTTON_LEFT | ||
201 | #define LP_INC_X BUTTON_RIGHT | ||
202 | #define LP_DEC_Y BUTTON_DOWN | ||
203 | #define LP_INC_Y BUTTON_UP | ||
204 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD | ||
205 | #define LP_QUIT BUTTON_MENU | ||
206 | #define LP_DEC_X BUTTON_LEFT | 200 | #define LP_DEC_X BUTTON_LEFT |
207 | #define LP_INC_X BUTTON_RIGHT | 201 | #define LP_INC_X BUTTON_RIGHT |
208 | #define LP_DEC_Y BUTTON_DOWN | 202 | #define LP_DEC_Y BUTTON_DOWN |
diff --git a/apps/plugins/mandelbrot.c b/apps/plugins/mandelbrot.c index db478d5e25..4054ef35d9 100644 --- a/apps/plugins/mandelbrot.c +++ b/apps/plugins/mandelbrot.c | |||
@@ -84,9 +84,9 @@ PLUGIN_HEADER | |||
84 | #define MANDELBROT_DOWN BUTTON_DOWN | 84 | #define MANDELBROT_DOWN BUTTON_DOWN |
85 | #define MANDELBROT_LEFT BUTTON_LEFT | 85 | #define MANDELBROT_LEFT BUTTON_LEFT |
86 | #define MANDELBROT_RIGHT BUTTON_RIGHT | 86 | #define MANDELBROT_RIGHT BUTTON_RIGHT |
87 | #define MANDELBROT_ZOOM_IN_PRE BUTTON_MENU | 87 | #define MANDELBROT_ZOOM_IN_PRE BUTTON_SELECT |
88 | #define MANDELBROT_ZOOM_IN (BUTTON_MENU | BUTTON_REL) | 88 | #define MANDELBROT_ZOOM_IN (BUTTON_SELECT | BUTTON_REL) |
89 | #define MANDELBROT_ZOOM_OUT (BUTTON_MENU | BUTTON_REPEAT) | 89 | #define MANDELBROT_ZOOM_OUT (BUTTON_SELECT | BUTTON_REPEAT) |
90 | #define MANDELBROT_MAXITER_INC (BUTTON_PLAY | BUTTON_RIGHT) | 90 | #define MANDELBROT_MAXITER_INC (BUTTON_PLAY | BUTTON_RIGHT) |
91 | #define MANDELBROT_MAXITER_DEC (BUTTON_PLAY | BUTTON_LEFT) | 91 | #define MANDELBROT_MAXITER_DEC (BUTTON_PLAY | BUTTON_LEFT) |
92 | #define MANDELBROT_RESET BUTTON_REC | 92 | #define MANDELBROT_RESET BUTTON_REC |
diff --git a/apps/plugins/minesweeper.c b/apps/plugins/minesweeper.c index b6a6172f51..149bf92ed6 100644 --- a/apps/plugins/minesweeper.c +++ b/apps/plugins/minesweeper.c | |||
@@ -86,7 +86,7 @@ PLUGIN_HEADER | |||
86 | #define MINESWP_QUIT BUTTON_POWER | 86 | #define MINESWP_QUIT BUTTON_POWER |
87 | #define MINESWP_START BUTTON_REC | 87 | #define MINESWP_START BUTTON_REC |
88 | #define MINESWP_TOGGLE BUTTON_PLAY | 88 | #define MINESWP_TOGGLE BUTTON_PLAY |
89 | #define MINESWP_DISCOVER BUTTON_MENU | 89 | #define MINESWP_DISCOVER BUTTON_SELECT |
90 | #define MINESWP_INFO (BUTTON_REC | BUTTON_PLAY) | 90 | #define MINESWP_INFO (BUTTON_REC | BUTTON_PLAY) |
91 | 91 | ||
92 | #endif | 92 | #endif |
diff --git a/apps/plugins/mosaique.c b/apps/plugins/mosaique.c index 56c6a18921..12f35e40c8 100644 --- a/apps/plugins/mosaique.c +++ b/apps/plugins/mosaique.c | |||
@@ -65,7 +65,7 @@ PLUGIN_HEADER | |||
65 | 65 | ||
66 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD | 66 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD |
67 | #define MOSAIQUE_QUIT BUTTON_POWER | 67 | #define MOSAIQUE_QUIT BUTTON_POWER |
68 | #define MOSAIQUE_SPEED BUTTON_MENU | 68 | #define MOSAIQUE_SPEED BUTTON_SELECT |
69 | #define MOSAIQUE_RESTART BUTTON_PLAY | 69 | #define MOSAIQUE_RESTART BUTTON_PLAY |
70 | 70 | ||
71 | #endif | 71 | #endif |
diff --git a/apps/plugins/mp3_encoder.c b/apps/plugins/mp3_encoder.c index 6e3a6e375e..d1a967b1a3 100644 --- a/apps/plugins/mp3_encoder.c +++ b/apps/plugins/mp3_encoder.c | |||
@@ -1889,7 +1889,7 @@ char *get_mp3_filename(char *wav_name) | |||
1889 | #define MP3ENC_PREV BUTTON_UP | 1889 | #define MP3ENC_PREV BUTTON_UP |
1890 | #define MP3ENC_NEXT BUTTON_DOWN | 1890 | #define MP3ENC_NEXT BUTTON_DOWN |
1891 | #define MP3ENC_DONE BUTTON_POWER | 1891 | #define MP3ENC_DONE BUTTON_POWER |
1892 | #define MP3ENC_SELECT BUTTON_MENU | 1892 | #define MP3ENC_SELECT BUTTON_SELECT |
1893 | #endif | 1893 | #endif |
1894 | 1894 | ||
1895 | enum plugin_status plugin_start(struct plugin_api* api, void* parameter) | 1895 | enum plugin_status plugin_start(struct plugin_api* api, void* parameter) |
diff --git a/apps/plugins/plasma.c b/apps/plugins/plasma.c index 71039f8bb2..83aef91890 100644 --- a/apps/plugins/plasma.c +++ b/apps/plugins/plasma.c | |||
@@ -55,6 +55,10 @@ static int plasma_frequency; | |||
55 | #define PLASMA_QUIT BUTTON_MENU | 55 | #define PLASMA_QUIT BUTTON_MENU |
56 | #define PLASMA_INCREASE_FREQUENCY BUTTON_SCROLL_FWD | 56 | #define PLASMA_INCREASE_FREQUENCY BUTTON_SCROLL_FWD |
57 | #define PLASMA_DECREASE_FREQUENCY BUTTON_SCROLL_BACK | 57 | #define PLASMA_DECREASE_FREQUENCY BUTTON_SCROLL_BACK |
58 | #elif (CONFIG_KEYPAD == IAUDIO_X5_PAD) | ||
59 | #define PLASMA_QUIT BUTTON_REC | ||
60 | #define PLASMA_INCREASE_FREQUENCY BUTTON_UP | ||
61 | #define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN | ||
58 | #else | 62 | #else |
59 | #define PLASMA_QUIT BUTTON_OFF | 63 | #define PLASMA_QUIT BUTTON_OFF |
60 | #define PLASMA_INCREASE_FREQUENCY BUTTON_UP | 64 | #define PLASMA_INCREASE_FREQUENCY BUTTON_UP |
diff --git a/apps/plugins/snake2.c b/apps/plugins/snake2.c index 6093da0f7e..23b60734df 100644 --- a/apps/plugins/snake2.c +++ b/apps/plugins/snake2.c | |||
@@ -111,7 +111,7 @@ PLUGIN_HEADER | |||
111 | #define SNAKE2_LEVEL_DOWN BUTTON_PLAY | 111 | #define SNAKE2_LEVEL_DOWN BUTTON_PLAY |
112 | #define SNAKE2_SELECT_MAZE BUTTON_LEFT | 112 | #define SNAKE2_SELECT_MAZE BUTTON_LEFT |
113 | #define SNAKE2_SELECT_TYPE BUTTON_RIGHT | 113 | #define SNAKE2_SELECT_TYPE BUTTON_RIGHT |
114 | #define SNAKE2_PLAYPAUSE BUTTON_MENU | 114 | #define SNAKE2_PLAYPAUSE BUTTON_SELECT |
115 | 115 | ||
116 | #else | 116 | #else |
117 | #error "lacks keymapping" | 117 | #error "lacks keymapping" |
diff --git a/apps/plugins/sokoban.c b/apps/plugins/sokoban.c index 31b74ec2a2..73b014f457 100644 --- a/apps/plugins/sokoban.c +++ b/apps/plugins/sokoban.c | |||
@@ -80,8 +80,8 @@ PLUGIN_HEADER | |||
80 | #define SOKOBAN_UP BUTTON_UP | 80 | #define SOKOBAN_UP BUTTON_UP |
81 | #define SOKOBAN_DOWN BUTTON_DOWN | 81 | #define SOKOBAN_DOWN BUTTON_DOWN |
82 | #define SOKOBAN_QUIT BUTTON_POWER | 82 | #define SOKOBAN_QUIT BUTTON_POWER |
83 | #define SOKOBAN_UNDO_PRE BUTTON_MENU | 83 | #define SOKOBAN_UNDO_PRE BUTTON_SELECT |
84 | #define SOKOBAN_UNDO (BUTTON_MENU | BUTTON_REL) | 84 | #define SOKOBAN_UNDO (BUTTON_SELECT | BUTTON_REL) |
85 | #define SOKOBAN_LEVEL_UP (BUTTON_PLAY | BUTTON_UP) | 85 | #define SOKOBAN_LEVEL_UP (BUTTON_PLAY | BUTTON_UP) |
86 | #define SOKOBAN_LEVEL_DOWN (BUTTON_PLAY | BUTTON_DOWN) | 86 | #define SOKOBAN_LEVEL_DOWN (BUTTON_PLAY | BUTTON_DOWN) |
87 | #define SOKOBAN_LEVEL_REPEAT BUTTON_REC | 87 | #define SOKOBAN_LEVEL_REPEAT BUTTON_REC |
diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c index 83f203c4aa..9dc6c52b62 100644 --- a/apps/plugins/solitaire.c +++ b/apps/plugins/solitaire.c | |||
@@ -129,12 +129,12 @@ static struct plugin_api* rb; | |||
129 | #define SOL_DOWN BUTTON_DOWN | 129 | #define SOL_DOWN BUTTON_DOWN |
130 | #define SOL_LEFT BUTTON_LEFT | 130 | #define SOL_LEFT BUTTON_LEFT |
131 | #define SOL_RIGHT BUTTON_RIGHT | 131 | #define SOL_RIGHT BUTTON_RIGHT |
132 | #define SOL_MOVE BUTTON_MENU | 132 | #define SOL_MOVE BUTTON_SELECT |
133 | #define SOL_DRAW BUTTON_PLAY | 133 | #define SOL_DRAW BUTTON_PLAY |
134 | #define SOL_REM2CUR (BUTTON_REC | BUTTON_LEFT) | 134 | #define SOL_REM2CUR (BUTTON_REC | BUTTON_LEFT) |
135 | #define SOL_CUR2STACK (BUTTON_REC | BUTTON_UP) | 135 | #define SOL_CUR2STACK (BUTTON_REC | BUTTON_UP) |
136 | #define SOL_REM2STACK (BUTTON_REC | BUTTON_DOWN) | 136 | #define SOL_REM2STACK (BUTTON_REC | BUTTON_DOWN) |
137 | #define SOL_MENU_RUN BUTTON_MENU | 137 | #define SOL_MENU_RUN BUTTON_SELECT |
138 | #define SOL_MENU_INFO BUTTON_PLAY | 138 | #define SOL_MENU_INFO BUTTON_PLAY |
139 | 139 | ||
140 | #endif | 140 | #endif |
diff --git a/apps/plugins/star.c b/apps/plugins/star.c index ddacfbcae2..a6d30eefec 100644 --- a/apps/plugins/star.c +++ b/apps/plugins/star.c | |||
@@ -115,8 +115,8 @@ PLUGIN_HEADER | |||
115 | #define STAR_QUIT BUTTON_POWER | 115 | #define STAR_QUIT BUTTON_POWER |
116 | #define STAR_UP BUTTON_UP | 116 | #define STAR_UP BUTTON_UP |
117 | #define STAR_DOWN BUTTON_DOWN | 117 | #define STAR_DOWN BUTTON_DOWN |
118 | #define STAR_TOGGLE_CONTROL_PRE BUTTON_MENU | 118 | #define STAR_TOGGLE_CONTROL_PRE BUTTON_SELECT |
119 | #define STAR_TOGGLE_CONTROL (BUTTON_MENU | BUTTON_REL) | 119 | #define STAR_TOGGLE_CONTROL (BUTTON_SELECT | BUTTON_REL) |
120 | #define STAR_LEVEL_UP (BUTTON_PLAY | BUTTON_UP) | 120 | #define STAR_LEVEL_UP (BUTTON_PLAY | BUTTON_UP) |
121 | #define STAR_LEVEL_DOWN (BUTTON_PLAY | BUTTON_DOWN) | 121 | #define STAR_LEVEL_DOWN (BUTTON_PLAY | BUTTON_DOWN) |
122 | #define STAR_LEVEL_REPEAT (BUTTON_PLAY | BUTTON_RIGHT) | 122 | #define STAR_LEVEL_REPEAT (BUTTON_PLAY | BUTTON_RIGHT) |
diff --git a/apps/plugins/stopwatch.c b/apps/plugins/stopwatch.c index bccca7ea36..c5b22404ed 100644 --- a/apps/plugins/stopwatch.c +++ b/apps/plugins/stopwatch.c | |||
@@ -81,7 +81,7 @@ PLUGIN_HEADER | |||
81 | #define STOPWATCH_QUIT BUTTON_POWER | 81 | #define STOPWATCH_QUIT BUTTON_POWER |
82 | #define STOPWATCH_START_STOP BUTTON_PLAY | 82 | #define STOPWATCH_START_STOP BUTTON_PLAY |
83 | #define STOPWATCH_RESET_TIMER BUTTON_REC | 83 | #define STOPWATCH_RESET_TIMER BUTTON_REC |
84 | #define STOPWATCH_LAP_TIMER BUTTON_MENU | 84 | #define STOPWATCH_LAP_TIMER BUTTON_SELECT |
85 | #define STOPWATCH_SCROLL_UP BUTTON_UP | 85 | #define STOPWATCH_SCROLL_UP BUTTON_UP |
86 | #define STOPWATCH_SCROLL_DOWN BUTTON_DOWN | 86 | #define STOPWATCH_SCROLL_DOWN BUTTON_DOWN |
87 | #endif | 87 | #endif |
diff --git a/apps/plugins/sudoku.c b/apps/plugins/sudoku.c index 767a33fec7..7894877e23 100644 --- a/apps/plugins/sudoku.c +++ b/apps/plugins/sudoku.c | |||
@@ -107,7 +107,7 @@ PLUGIN_HEADER | |||
107 | #define SUDOKU_BUTTON_QUIT BUTTON_POWER | 107 | #define SUDOKU_BUTTON_QUIT BUTTON_POWER |
108 | #define SUDOKU_BUTTON_UP BUTTON_UP | 108 | #define SUDOKU_BUTTON_UP BUTTON_UP |
109 | #define SUDOKU_BUTTON_DOWN BUTTON_DOWN | 109 | #define SUDOKU_BUTTON_DOWN BUTTON_DOWN |
110 | #define SUDOKU_BUTTON_TOGGLE BUTTON_MENU | 110 | #define SUDOKU_BUTTON_TOGGLE BUTTON_SELECT |
111 | #define SUDOKU_BUTTON_MENU BUTTON_PLAY | 111 | #define SUDOKU_BUTTON_MENU BUTTON_PLAY |
112 | #define SUDOKU_BUTTON_POSSIBLE BUTTON_REC | 112 | #define SUDOKU_BUTTON_POSSIBLE BUTTON_REC |
113 | 113 | ||
diff --git a/apps/plugins/viewer.c b/apps/plugins/viewer.c index 7ab0d39447..8e72229c5a 100644 --- a/apps/plugins/viewer.c +++ b/apps/plugins/viewer.c | |||
@@ -150,7 +150,7 @@ PLUGIN_HEADER | |||
150 | #define VIEWER_SCREEN_RIGHT BUTTON_RIGHT | 150 | #define VIEWER_SCREEN_RIGHT BUTTON_RIGHT |
151 | #define VIEWER_MODE_WRAP (BUTTON_PLAY | BUTTON_REL) | 151 | #define VIEWER_MODE_WRAP (BUTTON_PLAY | BUTTON_REL) |
152 | #define VIEWER_MODE_LINE (BUTTON_PLAY | BUTTON_REPEAT) | 152 | #define VIEWER_MODE_LINE (BUTTON_PLAY | BUTTON_REPEAT) |
153 | #define VIEWER_MODE_WIDTH BUTTON_MENU | 153 | #define VIEWER_MODE_WIDTH BUTTON_SELECT |
154 | 154 | ||
155 | #endif | 155 | #endif |
156 | 156 | ||
diff --git a/apps/recorder/keyboard.c b/apps/recorder/keyboard.c index 13e7625bc4..d45717c6dd 100644 --- a/apps/recorder/keyboard.c +++ b/apps/recorder/keyboard.c | |||
@@ -133,8 +133,8 @@ | |||
133 | /* TODO: Check keyboard mappings */ | 133 | /* TODO: Check keyboard mappings */ |
134 | 134 | ||
135 | #define KBD_MODES /* iAudio X5 uses 2 modes, picker and line edit */ | 135 | #define KBD_MODES /* iAudio X5 uses 2 modes, picker and line edit */ |
136 | #define KBD_SELECT (BUTTON_MENU | BUTTON_REL) /* backspace in line edit */ | 136 | #define KBD_SELECT (BUTTON_SELECT | BUTTON_REL) /* backspace in line edit */ |
137 | #define KBD_SELECT_PRE BUTTON_MENU | 137 | #define KBD_SELECT_PRE BUTTON_SELECT |
138 | #define KBD_DONE BUTTON_PLAY | 138 | #define KBD_DONE BUTTON_PLAY |
139 | #define KBD_ABORT BUTTON_REC | 139 | #define KBD_ABORT BUTTON_REC |
140 | #define KBD_LEFT BUTTON_LEFT | 140 | #define KBD_LEFT BUTTON_LEFT |
diff --git a/apps/settings.h b/apps/settings.h index 9220f79595..c7f70c3a19 100644 --- a/apps/settings.h +++ b/apps/settings.h | |||
@@ -113,7 +113,7 @@ | |||
113 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD | 113 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD |
114 | #define SETTINGS_INC BUTTON_UP | 114 | #define SETTINGS_INC BUTTON_UP |
115 | #define SETTINGS_DEC BUTTON_DOWN | 115 | #define SETTINGS_DEC BUTTON_DOWN |
116 | #define SETTINGS_OK BUTTON_MENU | 116 | #define SETTINGS_OK BUTTON_SELECT |
117 | #define SETTINGS_CANCEL BUTTON_REC | 117 | #define SETTINGS_CANCEL BUTTON_REC |
118 | #define SETTINGS_PREV BUTTON_LEFT | 118 | #define SETTINGS_PREV BUTTON_LEFT |
119 | #define SETTINGS_NEXT BUTTON_RIGHT | 119 | #define SETTINGS_NEXT BUTTON_RIGHT |
diff --git a/apps/tree.h b/apps/tree.h index d1b57d6991..92a2fcf770 100644 --- a/apps/tree.h +++ b/apps/tree.h | |||
@@ -149,11 +149,11 @@ | |||
149 | #define TREE_ABORT BUTTON_PLAY | 149 | #define TREE_ABORT BUTTON_PLAY |
150 | #define TREE_RUN (BUTTON_RIGHT | BUTTON_REL) | 150 | #define TREE_RUN (BUTTON_RIGHT | BUTTON_REL) |
151 | #define TREE_RUN_PRE BUTTON_RIGHT | 151 | #define TREE_RUN_PRE BUTTON_RIGHT |
152 | #define TREE_MENU (BUTTON_MENU | BUTTON_REPEAT) | 152 | #define TREE_MENU (BUTTON_REC | BUTTON_REPEAT) |
153 | #define TREE_MENU_PRE BUTTON_MENU | 153 | #define TREE_MENU_PRE BUTTON_REC |
154 | #define TREE_WPS (BUTTON_MENU | BUTTON_REL) | 154 | #define TREE_WPS (BUTTON_REC | BUTTON_REL) |
155 | #define TREE_WPS_PRE BUTTON_MENU | 155 | #define TREE_WPS_PRE BUTTON_REC |
156 | #define TREE_CONTEXT (BUTTON_RIGHT | BUTTON_REPEAT) | 156 | #define TREE_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) |
157 | #define TREE_POWER_BTN (BUTTON_PLAY | BUTTON_REPEAT) | 157 | #define TREE_POWER_BTN (BUTTON_PLAY | BUTTON_REPEAT) |
158 | #endif | 158 | #endif |
159 | 159 | ||
diff --git a/firmware/drivers/button.c b/firmware/drivers/button.c index 3d14eb147c..f47df82e8c 100644 --- a/firmware/drivers/button.c +++ b/firmware/drivers/button.c | |||
@@ -70,6 +70,9 @@ static bool flipped; /* buttons can be flipped to match the LCD flip */ | |||
70 | (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) | 70 | (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) |
71 | #define POWEROFF_BUTTON BUTTON_PLAY | 71 | #define POWEROFF_BUTTON BUTTON_PLAY |
72 | #define POWEROFF_COUNT 40 | 72 | #define POWEROFF_COUNT 40 |
73 | #elif (CONFIG_KEYPAD == IAUDIO_X5_PAD) | ||
74 | #define POWEROFF_BUTTON BUTTON_POWER | ||
75 | #define POWEROFF_COUNT 10 | ||
73 | #else | 76 | #else |
74 | #define POWEROFF_BUTTON BUTTON_OFF | 77 | #define POWEROFF_BUTTON BUTTON_OFF |
75 | #define POWEROFF_COUNT 10 | 78 | #define POWEROFF_COUNT 10 |
@@ -530,6 +533,11 @@ void button_init(void) | |||
530 | /* Set GPIO33, GPIO37, GPIO38 and GPIO52 as general purpose inputs */ | 533 | /* Set GPIO33, GPIO37, GPIO38 and GPIO52 as general purpose inputs */ |
531 | GPIO1_ENABLE &= ~0x00100060; | 534 | GPIO1_ENABLE &= ~0x00100060; |
532 | GPIO1_FUNCTION |= 0x00100062; | 535 | GPIO1_FUNCTION |= 0x00100062; |
536 | #elif CONFIG_KEYPAD == IAUDIO_X5_PAD | ||
537 | /* Hold switch */ | ||
538 | GPIO_FUNCTION |= 0x08000000; | ||
539 | GPIO_ENABLE &= ~0x08000000; | ||
540 | |||
533 | #elif CONFIG_KEYPAD == RECORDER_PAD | 541 | #elif CONFIG_KEYPAD == RECORDER_PAD |
534 | /* Set PB4 and PB8 as input pins */ | 542 | /* Set PB4 and PB8 as input pins */ |
535 | PBCR1 &= 0xfffc; /* PB8MD = 00 */ | 543 | PBCR1 &= 0xfffc; /* PB8MD = 00 */ |
@@ -698,6 +706,7 @@ void button_set_flip(bool flip) | |||
698 | 706 | ||
699 | #endif /* CONFIG_KEYPAD */ | 707 | #endif /* CONFIG_KEYPAD */ |
700 | 708 | ||
709 | int counter; | ||
701 | /* | 710 | /* |
702 | * Get button pressed from hardware | 711 | * Get button pressed from hardware |
703 | */ | 712 | */ |
@@ -1039,6 +1048,40 @@ static int button_read(void) | |||
1039 | (void)data; | 1048 | (void)data; |
1040 | /* The int_btn variable is set in the button interrupt handler */ | 1049 | /* The int_btn variable is set in the button interrupt handler */ |
1041 | btn = int_btn; | 1050 | btn = int_btn; |
1051 | #elif (CONFIG_KEYPAD == IAUDIO_X5_PAD) | ||
1052 | static bool hold_button = false; | ||
1053 | static bool remote_hold_button = false; | ||
1054 | |||
1055 | counter ++; | ||
1056 | |||
1057 | hold_button = button_hold(); | ||
1058 | remote_hold_button = remote_button_hold(); | ||
1059 | |||
1060 | /* normal buttons */ | ||
1061 | if (!hold_button) | ||
1062 | { | ||
1063 | data = adc_scan(ADC_BUTTONS); | ||
1064 | if(data < 0x7c) | ||
1065 | if(data < 0x42) | ||
1066 | btn = BUTTON_LEFT; | ||
1067 | else | ||
1068 | if(data < 0x62) | ||
1069 | btn = BUTTON_RIGHT; | ||
1070 | else | ||
1071 | btn = BUTTON_SELECT; | ||
1072 | else | ||
1073 | if(data < 0xb6) | ||
1074 | if(data < 0x98) | ||
1075 | btn = BUTTON_PLAY; | ||
1076 | else | ||
1077 | btn = BUTTON_REC; | ||
1078 | else | ||
1079 | if(data < 0xd3) | ||
1080 | btn = BUTTON_DOWN; | ||
1081 | else | ||
1082 | if(data < 0xf0) | ||
1083 | btn = BUTTON_UP; | ||
1084 | } | ||
1042 | #endif /* CONFIG_KEYPAD */ | 1085 | #endif /* CONFIG_KEYPAD */ |
1043 | 1086 | ||
1044 | 1087 | ||
@@ -1100,7 +1143,7 @@ bool button_hold(void) | |||
1100 | #if (CONFIG_KEYPAD == IAUDIO_X5_PAD) | 1143 | #if (CONFIG_KEYPAD == IAUDIO_X5_PAD) |
1101 | bool button_hold(void) | 1144 | bool button_hold(void) |
1102 | { | 1145 | { |
1103 | return (GPIO_READ & 0x08000000)?true:false; | 1146 | return (GPIO_READ & 0x08000000)?false:true; |
1104 | } | 1147 | } |
1105 | 1148 | ||
1106 | bool remote_button_hold(void) | 1149 | bool remote_button_hold(void) |
diff --git a/firmware/export/adc.h b/firmware/export/adc.h index 027c7154f0..454c102403 100644 --- a/firmware/export/adc.h +++ b/firmware/export/adc.h | |||
@@ -92,7 +92,8 @@ | |||
92 | unsigned short adc_read(int channel); | 92 | unsigned short adc_read(int channel); |
93 | void adc_init(void); | 93 | void adc_init(void); |
94 | 94 | ||
95 | #if defined(IRIVER_H100_SERIES) || defined(IRIVER_H300_SERIES) | 95 | #if defined(IRIVER_H100_SERIES) || defined(IRIVER_H300_SERIES)\ |
96 | || defined(IAUDIO_X5) | ||
96 | unsigned char adc_scan(int channel); | 97 | unsigned char adc_scan(int channel); |
97 | #endif | 98 | #endif |
98 | 99 | ||
diff --git a/firmware/export/button.h b/firmware/export/button.h index 1d6acfa275..484698e492 100644 --- a/firmware/export/button.h +++ b/firmware/export/button.h | |||
@@ -23,7 +23,8 @@ | |||
23 | #include <stdbool.h> | 23 | #include <stdbool.h> |
24 | #include "config.h" | 24 | #include "config.h" |
25 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ | 25 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ |
26 | (CONFIG_KEYPAD == IRIVER_H300_PAD) | 26 | (CONFIG_KEYPAD == IRIVER_H300_PAD) || \ |
27 | (CONFIG_KEYPAD == IAUDIO_X5_PAD) | ||
27 | #define HAS_BUTTON_HOLD | 28 | #define HAS_BUTTON_HOLD |
28 | #define HAS_REMOTE_BUTTON_HOLD | 29 | #define HAS_REMOTE_BUTTON_HOLD |
29 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) | 30 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) |
@@ -192,8 +193,7 @@ bool button_hold(void); | |||
192 | #define BUTTON_POWER 0x0004 | 193 | #define BUTTON_POWER 0x0004 |
193 | #define BUTTON_UP 0x0008 | 194 | #define BUTTON_UP 0x0008 |
194 | #define BUTTON_DOWN 0x0010 | 195 | #define BUTTON_DOWN 0x0010 |
195 | #define BUTTON_MENU 0x0020 | 196 | #define BUTTON_SELECT 0x0020 |
196 | #define BUTTON_OFF 0x0040 /* DOES NOT EXIST!!! */ | ||
197 | 197 | ||
198 | #define BUTTON_RC_REC (BUTTON_REMOTE | 0x00400000) | 198 | #define BUTTON_RC_REC (BUTTON_REMOTE | 0x00400000) |
199 | 199 | ||