summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2006-08-03 20:17:25 +0000
committerDaniel Stenberg <daniel@haxx.se>2006-08-03 20:17:25 +0000
commit1e88be518adafe146704a506aad7f895fffbb240 (patch)
tree59de8c14bcec054d32b82890f73391301ad152aa
parent364e892050c5d03895d27ad290180f7a82d0ecbf (diff)
downloadrockbox-1e88be518adafe146704a506aad7f895fffbb240.tar.gz
rockbox-1e88be518adafe146704a506aad7f895fffbb240.zip
Barry Wardell's keymappings for H10
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10446 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/bookmark.h5
-rw-r--r--apps/eq_menu.c9
-rw-r--r--apps/gui/color_picker.c8
-rw-r--r--apps/gui/gwps.h23
-rw-r--r--apps/gui/list.h4
-rw-r--r--apps/gui/quickscreen.h5
-rw-r--r--apps/gui/select.h8
-rw-r--r--apps/gui/yesno.h3
-rw-r--r--apps/menu.h9
-rw-r--r--apps/plugins/bounce.c6
-rw-r--r--apps/plugins/brickmania.c9
-rw-r--r--apps/plugins/calculator.c10
-rw-r--r--apps/plugins/chessbox/chessbox.c11
-rw-r--r--apps/plugins/chessclock.c10
-rw-r--r--apps/plugins/chip8.c8
-rw-r--r--apps/plugins/clock.c18
-rw-r--r--apps/plugins/cube.c13
-rw-r--r--apps/plugins/databox/databox.c3
-rw-r--r--apps/plugins/demystify.c6
-rw-r--r--apps/plugins/dice.c9
-rw-r--r--apps/plugins/dict.c2
-rw-r--r--apps/plugins/doom/i_video.c15
-rw-r--r--apps/plugins/fire.c7
-rw-r--r--apps/plugins/flipit.c11
-rw-r--r--apps/plugins/jewels.c8
-rw-r--r--apps/plugins/jpeg.c12
-rw-r--r--apps/plugins/logo.c6
-rw-r--r--apps/plugins/mandelbrot.c14
-rw-r--r--apps/plugins/midiplay.c6
-rw-r--r--apps/plugins/minesweeper.c11
-rw-r--r--apps/plugins/mosaique.c5
-rw-r--r--apps/plugins/mp3_encoder.c5
-rw-r--r--apps/plugins/oscilloscope.c12
-rw-r--r--apps/plugins/pacbox/pacbox.h11
-rw-r--r--apps/plugins/plasma.c6
-rw-r--r--apps/plugins/pong.c7
-rw-r--r--apps/plugins/rockpaint.c11
-rw-r--r--apps/plugins/sliding_puzzle.c7
-rw-r--r--apps/plugins/snake.c6
-rw-r--r--apps/plugins/snake2.c12
-rw-r--r--apps/plugins/snow.c2
-rw-r--r--apps/plugins/sokoban.c10
-rw-r--r--apps/plugins/solitaire.c7
-rwxr-xr-xapps/plugins/spacerocks.c17
-rw-r--r--apps/plugins/star.c12
-rw-r--r--apps/plugins/starfield.c6
-rw-r--r--apps/plugins/stats.c3
-rw-r--r--apps/plugins/stopwatch.c7
-rw-r--r--apps/plugins/sudoku/sudoku.h10
-rw-r--r--apps/plugins/text_editor.c5
-rw-r--r--apps/plugins/viewer.c10
-rw-r--r--apps/plugins/vu_meter.c11
-rw-r--r--apps/plugins/wormlet.c13
-rw-r--r--apps/plugins/xobox.c10
-rw-r--r--apps/recorder/keyboard.c14
-rw-r--r--apps/screens.h7
-rw-r--r--apps/settings.h10
-rw-r--r--apps/tree.h14
58 files changed, 517 insertions, 2 deletions
diff --git a/apps/bookmark.h b/apps/bookmark.h
index a5ee3b4c0d..72453aaf7f 100644
--- a/apps/bookmark.h
+++ b/apps/bookmark.h
@@ -57,6 +57,11 @@
57#define BOOKMARK_DELETE BUTTON_POWER 57#define BOOKMARK_DELETE BUTTON_POWER
58#define BOOKMARK_DOWN BUTTON_A 58#define BOOKMARK_DOWN BUTTON_A
59 59
60#elif CONFIG_KEYPAD == IRIVER_H10_PAD
61#define BOOKMARK_SELECT BUTTON_PLAY
62#define BOOKMARK_DELETE (BUTTON_FF | BUTTON_REPEAT)
63#define BOOKMARK_DOWN BUTTON_SCROLL_DOWN
64
60#else /* player, recorder, gmini */ 65#else /* player, recorder, gmini */
61#define BOOKMARK_SELECT BUTTON_PLAY 66#define BOOKMARK_SELECT BUTTON_PLAY
62#define BOOKMARK_DELETE (BUTTON_ON | BUTTON_PLAY) 67#define BOOKMARK_DELETE (BUTTON_ON | BUTTON_PLAY)
diff --git a/apps/eq_menu.c b/apps/eq_menu.c
index c78890de15..f3031bf8ff 100644
--- a/apps/eq_menu.c
+++ b/apps/eq_menu.c
@@ -102,6 +102,15 @@
102#define EQ_BTN_CHANGE_MODE BUTTON_SELECT 102#define EQ_BTN_CHANGE_MODE BUTTON_SELECT
103#define EQ_BTN_EXIT BUTTON_A 103#define EQ_BTN_EXIT BUTTON_A
104 104
105#elif CONFIG_KEYPAD == IRIVER_H10_PAD
106
107#define EQ_BTN_DECREMENT BUTTON_LEFT
108#define EQ_BTN_INCREMENT BUTTON_RIGHT
109#define EQ_BTN_NEXT_BAND BUTTON_SCROLL_DOWN
110#define EQ_BTN_PREV_BAND BUTTON_SCROLL_UP
111#define EQ_BTN_CHANGE_MODE BUTTON_PLAY
112#define EQ_BTN_EXIT BUTTON_POWER
113
105#endif 114#endif
106 115
107/* Various user interface limits and sizes */ 116/* Various user interface limits and sizes */
diff --git a/apps/gui/color_picker.c b/apps/gui/color_picker.c
index f2e482c651..4618cb6bc0 100644
--- a/apps/gui/color_picker.c
+++ b/apps/gui/color_picker.c
@@ -77,6 +77,14 @@
77#define SLIDER_RC_OK BUTTON_RC_PLAY 77#define SLIDER_RC_OK BUTTON_RC_PLAY
78#define SLIDER_RC_CANCEL BUTTON_RC_REC 78#define SLIDER_RC_CANCEL BUTTON_RC_REC
79 79
80#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
81#define SLIDER_UP BUTTON_SCROLL_UP
82#define SLIDER_DOWN BUTTON_SCROLL_DOWN
83#define SLIDER_LEFT BUTTON_LEFT
84#define SLIDER_RIGHT BUTTON_RIGHT
85#define SLIDER_OK BUTTON_PLAY
86#define SLIDER_CANCEL BUTTON_POWER
87
80#endif 88#endif
81 89
82static const int max_val[3] = {LCD_MAX_RED,LCD_MAX_GREEN,LCD_MAX_BLUE}; 90static const int max_val[3] = {LCD_MAX_RED,LCD_MAX_GREEN,LCD_MAX_BLUE};
diff --git a/apps/gui/gwps.h b/apps/gui/gwps.h
index 3911ad1825..5b27696dd8 100644
--- a/apps/gui/gwps.h
+++ b/apps/gui/gwps.h
@@ -278,6 +278,29 @@
278 278
279#define HAVE_DIR_NAVIGATION 279#define HAVE_DIR_NAVIGATION
280 280
281#elif CONFIG_KEYPAD == IRIVER_H10_PAD
282
283/* TODO: Check WPS button assignments */
284
285#define WPS_NEXT (BUTTON_FF | BUTTON_REL)
286#define WPS_NEXT_PRE BUTTON_FF
287#define WPS_PREV (BUTTON_REW | BUTTON_REL)
288#define WPS_PREV_PRE BUTTON_REW
289#define WPS_FFWD (BUTTON_FF | BUTTON_REPEAT)
290#define WPS_REW (BUTTON_REW | BUTTON_REPEAT)
291#define WPS_INCVOL BUTTON_SCROLL_UP
292#define WPS_DECVOL BUTTON_SCROLL_DOWN
293#define WPS_PAUSE BUTTON_PLAY
294#define WPS_MENU (BUTTON_RIGHT | BUTTON_REL)
295#define WPS_MENU_PRE BUTTON_RIGHT
296#define WPS_BROWSE (BUTTON_LEFT | BUTTON_REL)
297#define WPS_BROWSE_PRE BUTTON_LEFT
298#define WPS_EXIT (BUTTON_PLAY | BUTTON_REPEAT)
299#define WPS_CONTEXT (BUTTON_LEFT | BUTTON_REPEAT)
300#define WPS_QUICK (BUTTON_RIGHT | BUTTON_REPEAT)
301
302#define HAVE_DIR_NAVIGATION
303
281#endif 304#endif
282 305
283/* constants used in line_type and as refresh_mode for wps_refresh */ 306/* constants used in line_type and as refresh_mode for wps_refresh */
diff --git a/apps/gui/list.h b/apps/gui/list.h
index 60a3651259..b898e14f37 100644
--- a/apps/gui/list.h
+++ b/apps/gui/list.h
@@ -93,6 +93,10 @@
93#define LIST_NEXT BUTTON_DOWN 93#define LIST_NEXT BUTTON_DOWN
94#define LIST_PREV BUTTON_UP 94#define LIST_PREV BUTTON_UP
95 95
96#elif CONFIG_KEYPAD == IRIVER_H10_PAD
97#define LIST_NEXT BUTTON_SCROLL_DOWN
98#define LIST_PREV BUTTON_SCROLL_UP
99
96#endif 100#endif
97 101
98/* 102/*
diff --git a/apps/gui/quickscreen.h b/apps/gui/quickscreen.h
index 8a55506929..63214f3c22 100644
--- a/apps/gui/quickscreen.h
+++ b/apps/gui/quickscreen.h
@@ -56,6 +56,11 @@
56#define QUICKSCREEN_BOTTOM_INV BUTTON_UP 56#define QUICKSCREEN_BOTTOM_INV BUTTON_UP
57#define QUICKSCREEN_QUIT BUTTON_REC 57#define QUICKSCREEN_QUIT BUTTON_REC
58#define QUICKSCREEN_QUIT2 BUTTON_POWER 58#define QUICKSCREEN_QUIT2 BUTTON_POWER
59#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
60#define QUICKSCREEN_BOTTOM BUTTON_SCROLL_DOWN
61#define QUICKSCREEN_BOTTOM_INV BUTTON_SCROLL_UP
62#define QUICKSCREEN_QUIT BUTTON_REW
63#define QUICKSCREEN_QUIT2 BUTTON_POWER
59#endif 64#endif
60 65
61struct gui_quickscreen; 66struct gui_quickscreen;
diff --git a/apps/gui/select.h b/apps/gui/select.h
index 822318f37c..9270214d61 100644
--- a/apps/gui/select.h
+++ b/apps/gui/select.h
@@ -111,6 +111,14 @@
111#define SELECT_CANCEL BUTTON_A 111#define SELECT_CANCEL BUTTON_A
112#define SELECT_CANCEL2 BUTTON_POWER 112#define SELECT_CANCEL2 BUTTON_POWER
113 113
114#elif CONFIG_KEYPAD == IRIVER_H10_PAD
115#define SELECT_INC BUTTON_SCROLL_UP
116#define SELECT_DEC BUTTON_SCROLL_DOWN
117#define SELECT_OK BUTTON_PLAY
118#define SELECT_OK2 BUTTON_RIGHT
119#define SELECT_CANCEL BUTTON_POWER
120#define SELECT_CANCEL2 BUTTON_LEFT
121
114#endif 122#endif
115 123
116struct gui_select 124struct gui_select
diff --git a/apps/gui/yesno.h b/apps/gui/yesno.h
index 5fcd1a62e3..71658a5217 100644
--- a/apps/gui/yesno.h
+++ b/apps/gui/yesno.h
@@ -35,6 +35,9 @@
35#elif (CONFIG_KEYPAD == GIGABEAT_PAD) 35#elif (CONFIG_KEYPAD == GIGABEAT_PAD)
36#define YESNO_OK BUTTON_RIGHT 36#define YESNO_OK BUTTON_RIGHT
37 37
38#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
39#define YESNO_OK BUTTON_RIGHT
40
38#endif 41#endif
39enum yesno_res 42enum yesno_res
40{ 43{
diff --git a/apps/menu.h b/apps/menu.h
index f8b425ee01..c43889b217 100644
--- a/apps/menu.h
+++ b/apps/menu.h
@@ -106,6 +106,15 @@
106#define MENU_NEXT BUTTON_DOWN 106#define MENU_NEXT BUTTON_DOWN
107#define MENU_PREV BUTTON_UP 107#define MENU_PREV BUTTON_UP
108 108
109#elif CONFIG_KEYPAD == IRIVER_H10_PAD
110
111#define MENU_NEXT BUTTON_SCROLL_DOWN
112#define MENU_PREV BUTTON_SCROLL_UP
113#define MENU_EXIT BUTTON_LEFT
114#define MENU_EXIT_MENU BUTTON_REW
115#define MENU_ENTER BUTTON_RIGHT
116#define MENU_ENTER2 BUTTON_FF
117
109#endif 118#endif
110 119
111struct menu_item { 120struct menu_item {
diff --git a/apps/plugins/bounce.c b/apps/plugins/bounce.c
index c0c757c009..151a61b07b 100644
--- a/apps/plugins/bounce.c
+++ b/apps/plugins/bounce.c
@@ -73,6 +73,12 @@ PLUGIN_HEADER
73#define BOUNCE_QUIT BUTTON_A 73#define BOUNCE_QUIT BUTTON_A
74#define BOUNCE_MODE BUTTON_POWER 74#define BOUNCE_MODE BUTTON_POWER
75 75
76#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
77#define BOUNCE_UP BUTTON_SCROLL_UP
78#define BOUNCE_DOWN BUTTON_SCROLL_DOWN
79#define BOUNCE_QUIT BUTTON_POWER
80#define BOUNCE_MODE BUTTON_PLAY
81
76#endif 82#endif
77 83
78static struct plugin_api* rb; 84static struct plugin_api* rb;
diff --git a/apps/plugins/brickmania.c b/apps/plugins/brickmania.c
index 6eb21fe4f8..0743c16055 100644
--- a/apps/plugins/brickmania.c
+++ b/apps/plugins/brickmania.c
@@ -98,6 +98,15 @@ PLUGIN_HEADER
98#define UP BUTTON_UP 98#define UP BUTTON_UP
99#define DOWN BUTTON_DOWN 99#define DOWN BUTTON_DOWN
100 100
101#elif CONFIG_KEYPAD == IRIVER_H10_PAD /* grayscale at the moment */
102
103#define QUIT BUTTON_POWER
104#define LEFT BUTTON_LEFT
105#define RIGHT BUTTON_RIGHT
106#define SELECT BUTTON_PLAY
107#define UP BUTTON_SCROLL_UP
108#define DOWN BUTTON_SCROLL_DOWN
109
101/* Only iPod have scroll events */ 110/* Only iPod have scroll events */
102#define SCROLL_FWD(x) (0) 111#define SCROLL_FWD(x) (0)
103#define SCROLL_BACK(x) (0) 112#define SCROLL_BACK(x) (0)
diff --git a/apps/plugins/calculator.c b/apps/plugins/calculator.c
index 5194f9127b..79b948a055 100644
--- a/apps/plugins/calculator.c
+++ b/apps/plugins/calculator.c
@@ -166,6 +166,16 @@ PLUGIN_HEADER
166#define CALCULATOR_CALC BUTTON_SELECT 166#define CALCULATOR_CALC BUTTON_SELECT
167#define CALCULATOR_CLEAR BUTTON_POWER 167#define CALCULATOR_CLEAR BUTTON_POWER
168 168
169#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
170
171#define CALCULATOR_UP BUTTON_SCROLL_UP
172#define CALCULATOR_DOWN BUTTON_SCROLL_DOWN
173#define CALCULATOR_QUIT BUTTON_POWER
174#define CALCULATOR_INPUT_CALC_PRE BUTTON_PLAY
175#define CALCULATOR_INPUT (BUTTON_PLAY | BUTTON_REL)
176#define CALCULATOR_CALC BUTTON_PLAY
177#define CALCULATOR_CLEAR BUTTON_REW
178
169#endif 179#endif
170 180
171static struct plugin_api* rb; 181static struct plugin_api* rb;
diff --git a/apps/plugins/chessbox/chessbox.c b/apps/plugins/chessbox/chessbox.c
index 5f2ed9a467..aea89817e6 100644
--- a/apps/plugins/chessbox/chessbox.c
+++ b/apps/plugins/chessbox/chessbox.c
@@ -119,6 +119,17 @@ PLUGIN_HEADER
119#define CB_LEVEL BUTTON_MENU 119#define CB_LEVEL BUTTON_MENU
120#define CB_QUIT BUTTON_A 120#define CB_QUIT BUTTON_A
121 121
122#elif CONFIG_KEYPAD == IRIVER_H10_PAD
123#define CB_SELECT BUTTON_REW
124#define CB_UP BUTTON_SCROLL_UP
125#define CB_DOWN BUTTON_SCROLL_DOWN
126#define CB_LEFT BUTTON_LEFT
127#define CB_RIGHT BUTTON_RIGHT
128#define CB_PLAY BUTTON_PLAY
129#define CB_LEVEL BUTTON_FF
130#define CB_RESTART (BUTTON_REW | BUTTON_PLAY)
131#define CB_QUIT BUTTON_POWER
132
122#else 133#else
123 #error CHESSBOX: Unsupported keypad 134 #error CHESSBOX: Unsupported keypad
124#endif 135#endif
diff --git a/apps/plugins/chessclock.c b/apps/plugins/chessclock.c
index d2850211d1..2e2ad4cb7e 100644
--- a/apps/plugins/chessclock.c
+++ b/apps/plugins/chessclock.c
@@ -107,6 +107,16 @@ PLUGIN_HEADER
107#define CHC_SETTINGS_OK BUTTON_MENU 107#define CHC_SETTINGS_OK BUTTON_MENU
108#define CHC_SETTINGS_CANCEL BUTTON_A 108#define CHC_SETTINGS_CANCEL BUTTON_A
109 109
110#elif CONFIG_KEYPAD == IRIVER_H10_PAD
111#define CHC_QUIT BUTTON_POWER
112#define CHC_STARTSTOP BUTTON_PLAY
113#define CHC_RESET BUTTON_FF
114#define CHC_MENU BUTTON_REW
115#define CHC_SETTINGS_INC BUTTON_RIGHT
116#define CHC_SETTINGS_DEC BUTTON_LEFT
117#define CHC_SETTINGS_OK BUTTON_PLAY
118#define CHC_SETTINGS_CANCEL BUTTON_POWER
119
110#endif 120#endif
111 121
112 122
diff --git a/apps/plugins/chip8.c b/apps/plugins/chip8.c
index 3facd04be1..09dcad5fd0 100644
--- a/apps/plugins/chip8.c
+++ b/apps/plugins/chip8.c
@@ -1003,6 +1003,14 @@ STATIC void chip8 (void)
1003#define CHIP8_KEY6 BUTTON_RIGHT 1003#define CHIP8_KEY6 BUTTON_RIGHT
1004#define CHIP8_KEY8 BUTTON_DOWN 1004#define CHIP8_KEY8 BUTTON_DOWN
1005 1005
1006#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
1007#define CHIP8_OFF BUTTON_POWER
1008#define CHIP8_KEY2 BUTTON_SCROLL_UP
1009#define CHIP8_KEY4 BUTTON_LEFT
1010#define CHIP8_KEY5 BUTTON_PLAY
1011#define CHIP8_KEY6 BUTTON_RIGHT
1012#define CHIP8_KEY8 BUTTON_SCROLL_DOWN
1013
1006#endif 1014#endif
1007 1015
1008static byte chip8_virtual_keys[16]; 1016static byte chip8_virtual_keys[16];
diff --git a/apps/plugins/clock.c b/apps/plugins/clock.c
index d86a41ad59..ff07e44e0c 100644
--- a/apps/plugins/clock.c
+++ b/apps/plugins/clock.c
@@ -182,6 +182,24 @@ PLUGIN_HEADER
182#define MENU_BUTTON_TEXT "SELECT" 182#define MENU_BUTTON_TEXT "SELECT"
183#define COUNTER_BUTTON_TEXT "PLAY" 183#define COUNTER_BUTTON_TEXT "PLAY"
184 184
185#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
186
187#define COUNTER_TOGGLE_BUTTON (BUTTON_PLAY|BUTTON_REL)
188#define COUNTER_RESET_BUTTON (BUTTON_PLAY|BUTTON_REPEAT)
189#define MENU_BUTTON BUTTON_REW
190#define EXIT_BUTTON BUTTON_POWER
191#define MOVE_UP_BUTTON BUTTON_SCROLL_UP
192#define MOVE_DOWN_BUTTON BUTTON_SCROLL_DOWN
193#define CHANGE_UP_BUTTON BUTTON_RIGHT
194#define CHANGE_DOWN_BUTTON BUTTON_LEFT
195
196#define YESTEXT "Select"
197#define NAVI_BUTTON_TEXT_LEFT "LEFT"
198#define NAVI_BUTTON_TEXT_RIGHT "RIGHT"
199#define EXIT_BUTTON_TEXT "POWER"
200#define MENU_BUTTON_TEXT "PLAY"
201#define COUNTER_BUTTON_TEXT "PLAY"
202
185#endif 203#endif
186 204
187/************ 205/************
diff --git a/apps/plugins/cube.c b/apps/plugins/cube.c
index 3e7e7f1ce2..f9a0218154 100644
--- a/apps/plugins/cube.c
+++ b/apps/plugins/cube.c
@@ -135,6 +135,19 @@ PLUGIN_HEADER
135#define CUBE_PAUSE (BUTTON_SELECT | BUTTON_REL) 135#define CUBE_PAUSE (BUTTON_SELECT | BUTTON_REL)
136#define CUBE_HIGHSPEED (BUTTON_POWER | BUTTON_REL) 136#define CUBE_HIGHSPEED (BUTTON_POWER | BUTTON_REL)
137 137
138#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
139#define CUBE_QUIT BUTTON_POWER
140#define CUBE_X_INC BUTTON_LEFT
141#define CUBE_X_DEC BUTTON_RIGHT
142#define CUBE_Y_INC BUTTON_SCROLL_UP
143#define CUBE_Y_DEC BUTTON_SCROLL_DOWN
144#define CUBE_Z_INC (BUTTON_PLAY | BUTTON_SCROLL_UP)
145#define CUBE_Z_DEC (BUTTON_PLAY | BUTTON_SCROLL_DOWN)
146#define CUBE_MODE BUTTON_REW
147#define CUBE_PAUSE_PRE BUTTON_PLAY
148#define CUBE_PAUSE (BUTTON_PLAY | BUTTON_REL)
149#define CUBE_HIGHSPEED (BUTTON_FF | BUTTON_REL)
150
138#endif 151#endif
139 152
140#ifdef HAVE_LCD_BITMAP 153#ifdef HAVE_LCD_BITMAP
diff --git a/apps/plugins/databox/databox.c b/apps/plugins/databox/databox.c
index ea35960e41..194ad66b51 100644
--- a/apps/plugins/databox/databox.c
+++ b/apps/plugins/databox/databox.c
@@ -47,6 +47,9 @@ PLUGIN_HEADER
47#elif CONFIG_KEYPAD == GIGABEAT_PAD 47#elif CONFIG_KEYPAD == GIGABEAT_PAD
48#define DBX_SELECT BUTTON_SELECT 48#define DBX_SELECT BUTTON_SELECT
49#define DBX_STOP BUTTON_A 49#define DBX_STOP BUTTON_A
50#elif CONFIG_KEYPAD == IRIVER_H10_PAD
51#define DBX_SELECT BUTTON_REW
52#define DBX_STOP BUTTON_PLAY
50#endif 53#endif
51 54
52#define MAX_TOKENS 70 55#define MAX_TOKENS 70
diff --git a/apps/plugins/demystify.c b/apps/plugins/demystify.c
index bfcbd2fa25..da3edeeb1b 100644
--- a/apps/plugins/demystify.c
+++ b/apps/plugins/demystify.c
@@ -33,6 +33,12 @@ PLUGIN_HEADER
33#define DEMYSTIFY_REMOVE_POLYGON BUTTON_LEFT 33#define DEMYSTIFY_REMOVE_POLYGON BUTTON_LEFT
34#define DEMYSTIFY_INCREASE_SPEED BUTTON_SCROLL_FWD 34#define DEMYSTIFY_INCREASE_SPEED BUTTON_SCROLL_FWD
35#define DEMYSTIFY_DECREASE_SPEED BUTTON_SCROLL_BACK 35#define DEMYSTIFY_DECREASE_SPEED BUTTON_SCROLL_BACK
36#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
37#define DEMYSTIFY_QUIT BUTTON_POWER
38#define DEMYSTIFY_ADD_POLYGON BUTTON_RIGHT
39#define DEMYSTIFY_REMOVE_POLYGON BUTTON_LEFT
40#define DEMYSTIFY_INCREASE_SPEED BUTTON_SCROLL_UP
41#define DEMYSTIFY_DECREASE_SPEED BUTTON_SCROLL_DOWN
36#elif (CONFIG_KEYPAD == IAUDIO_X5_PAD) 42#elif (CONFIG_KEYPAD == IAUDIO_X5_PAD)
37#define DEMYSTIFY_QUIT BUTTON_POWER 43#define DEMYSTIFY_QUIT BUTTON_POWER
38#define DEMYSTIFY_ADD_POLYGON BUTTON_RIGHT 44#define DEMYSTIFY_ADD_POLYGON BUTTON_RIGHT
diff --git a/apps/plugins/dice.c b/apps/plugins/dice.c
index c20b3853a8..8351498aad 100644
--- a/apps/plugins/dice.c
+++ b/apps/plugins/dice.c
@@ -125,6 +125,15 @@ use stop to exit
125#define DICE_BUTTON_ON BUTTON_POWER 125#define DICE_BUTTON_ON BUTTON_POWER
126#define DICE_BUTTON_OFF BUTTON_A 126#define DICE_BUTTON_OFF BUTTON_A
127 127
128#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
129#define DICE_BUTTON_UP BUTTON_SCROLL_UP
130#define DICE_BUTTON_DOWN BUTTON_SCROLL_DOWN
131#define DICE_BUTTON_LEFT BUTTON_LEFT
132#define DICE_BUTTON_RIGHT BUTTON_RIGHT
133#define DICE_BUTTON_SELECT BUTTON_REW
134#define DICE_BUTTON_ON BUTTON_PLAY
135#define DICE_BUTTON_OFF BUTTON_POWER
136
128#else 137#else
129 #error DICE: Unsupported keypad 138 #error DICE: Unsupported keypad
130#endif 139#endif
diff --git a/apps/plugins/dict.c b/apps/plugins/dict.c
index 6d626d403c..31c1b6363e 100644
--- a/apps/plugins/dict.c
+++ b/apps/plugins/dict.c
@@ -113,6 +113,8 @@ long reverse (long N) {
113#define LP_QUIT BUTTON_POWER 113#define LP_QUIT BUTTON_POWER
114#elif CONFIG_KEYPAD == GIGABEAT_PAD 114#elif CONFIG_KEYPAD == GIGABEAT_PAD
115#define LP_QUIT BUTTON_A 115#define LP_QUIT BUTTON_A
116#elif CONFIG_KEYPAD == IRIVER_H10_PAD
117#define LP_QUIT BUTTON_POWER
116#else 118#else
117#define LP_QUIT BUTTON_OFF 119#define LP_QUIT BUTTON_OFF
118#endif 120#endif
diff --git a/apps/plugins/doom/i_video.c b/apps/plugins/doom/i_video.c
index f90f7cd82f..d8ed74ce62 100644
--- a/apps/plugins/doom/i_video.c
+++ b/apps/plugins/doom/i_video.c
@@ -16,7 +16,10 @@
16 * GNU General Public License for more details. 16 * GNU General Public License for more details.
17 * 17 *
18 * $Log$ 18 * $Log$
19 * Revision 1.18 2006/08/02 00:21:59 amiconn 19 * Revision 1.19 2006/08/03 20:17:22 bagder
20 * Barry Wardell's keymappings for H10
21 *
22 * Revision 1.18 2006-08-02 00:21:59 amiconn
20 * Grayscale library: LCD linearisation and gamma correction. 23 * Grayscale library: LCD linearisation and gamma correction.
21 * 24 *
22 * Revision 1.17 2006-04-22 03:48:15 kkurbjun 25 * Revision 1.17 2006-04-22 03:48:15 kkurbjun
@@ -139,6 +142,16 @@ void I_ShutdownGraphics(void)
139#define DOOMBUTTON_ESC BUTTON_POWER 142#define DOOMBUTTON_ESC BUTTON_POWER
140#define DOOMBUTTON_ENTER BUTTON_SELECT 143#define DOOMBUTTON_ENTER BUTTON_SELECT
141#define DOOMBUTTON_WEAPON BUTTON_REC 144#define DOOMBUTTON_WEAPON BUTTON_REC
145#elif CONFIG_KEYPAD == IRIVER_H10_PAD
146#define DOOMBUTTON_UP BUTTON_SCROLL_UP
147#define DOOMBUTTON_DOWN BUTTON_SCROLL_DOWN
148#define DOOMBUTTON_LEFT BUTTON_LEFT
149#define DOOMBUTTON_RIGHT BUTTON_RIGHT
150#define DOOMBUTTON_SHOOT BUTTON_REW
151#define DOOMBUTTON_OPEN BUTTON_PLAY
152#define DOOMBUTTON_ESC BUTTON_POWER
153#define DOOMBUTTON_ENTER BUTTON_PLAY
154#define DOOMBUTTON_WEAPON BUTTON_FF
142#else 155#else
143#define DOOMBUTTON_UP BUTTON_UP 156#define DOOMBUTTON_UP BUTTON_UP
144#define DOOMBUTTON_DOWN BUTTON_DOWN 157#define DOOMBUTTON_DOWN BUTTON_DOWN
diff --git a/apps/plugins/fire.c b/apps/plugins/fire.c
index 6207a8894e..544b7d15c5 100644
--- a/apps/plugins/fire.c
+++ b/apps/plugins/fire.c
@@ -86,6 +86,13 @@ static unsigned char draw_buffer[8*LCD_WIDTH];
86#define FIRE_INCREASE_MULT BUTTON_UP 86#define FIRE_INCREASE_MULT BUTTON_UP
87#define FIRE_DECREASE_MULT BUTTON_DOWN 87#define FIRE_DECREASE_MULT BUTTON_DOWN
88 88
89#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
90#define FIRE_QUIT BUTTON_POWER
91#define FIRE_SWITCH_FLAMES_TYPE BUTTON_LEFT
92#define FIRE_SWITCH_FLAMES_MOVING BUTTON_RIGHT
93#define FIRE_INCREASE_MULT BUTTON_SCROLL_UP
94#define FIRE_DECREASE_MULT BUTTON_SCROLL_DOWN
95
89#endif 96#endif
90 97
91#define MIN_FLAME_VALUE 0 98#define MIN_FLAME_VALUE 0
diff --git a/apps/plugins/flipit.c b/apps/plugins/flipit.c
index 4cc7959349..7d423335d3 100644
--- a/apps/plugins/flipit.c
+++ b/apps/plugins/flipit.c
@@ -88,6 +88,17 @@ PLUGIN_HEADER
88#define FLIPIT_TOGGLE_PRE BUTTON_MENU 88#define FLIPIT_TOGGLE_PRE BUTTON_MENU
89#define FLIPIT_TOGGLE (BUTTON_MENU | BUTTON_REL) 89#define FLIPIT_TOGGLE (BUTTON_MENU | BUTTON_REL)
90 90
91#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
92
93#define FLIPIT_UP BUTTON_SCROLL_UP
94#define FLIPIT_DOWN BUTTON_SCROLL_DOWN
95#define FLIPIT_QUIT BUTTON_POWER
96#define FLIPIT_SHUFFLE (BUTTON_PLAY | BUTTON_LEFT)
97#define FLIPIT_SOLVE (BUTTON_PLAY | BUTTON_RIGHT)
98#define FLIPIT_STEP_BY_STEP (BUTTON_PLAY | BUTTON_SCROLL_UP)
99#define FLIPIT_TOGGLE_PRE BUTTON_REW
100#define FLIPIT_TOGGLE (BUTTON_REW | BUTTON_REL)
101
91#endif 102#endif
92 103
93static struct plugin_api* rb; 104static struct plugin_api* rb;
diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c
index 02516d72e9..00f871febf 100644
--- a/apps/plugins/jewels.c
+++ b/apps/plugins/jewels.c
@@ -86,6 +86,14 @@ PLUGIN_HEADER
86#define JEWELS_SELECT BUTTON_SELECT 86#define JEWELS_SELECT BUTTON_SELECT
87#define JEWELS_CANCEL BUTTON_A 87#define JEWELS_CANCEL BUTTON_A
88 88
89#elif CONFIG_KEYPAD == IRIVER_H10_PAD
90#define JEWELS_UP BUTTON_SCROLL_UP
91#define JEWELS_DOWN BUTTON_SCROLL_DOWN
92#define JEWELS_LEFT BUTTON_LEFT
93#define JEWELS_RIGHT BUTTON_RIGHT
94#define JEWELS_SELECT BUTTON_PLAY
95#define JEWELS_CANCEL BUTTON_POWER
96
89#else 97#else
90 #error JEWELS: Unsupported keypad 98 #error JEWELS: Unsupported keypad
91#endif 99#endif
diff --git a/apps/plugins/jpeg.c b/apps/plugins/jpeg.c
index 34640d8b92..b3a0b463b7 100644
--- a/apps/plugins/jpeg.c
+++ b/apps/plugins/jpeg.c
@@ -111,6 +111,18 @@ PLUGIN_HEADER
111#define JPEG_NEXT (BUTTON_POWER | BUTTON_RIGHT) 111#define JPEG_NEXT (BUTTON_POWER | BUTTON_RIGHT)
112#define JPEG_PREVIOUS (BUTTON_POWER | BUTTON_LEFT) 112#define JPEG_PREVIOUS (BUTTON_POWER | BUTTON_LEFT)
113 113
114#elif CONFIG_KEYPAD == IRIVER_H10_PAD
115#define JPEG_ZOOM_PRE BUTTON_PLAY
116#define JPEG_ZOOM_IN (BUTTON_PLAY | BUTTON_REL)
117#define JPEG_ZOOM_OUT (BUTTON_PLAY | BUTTON_REPEAT)
118#define JPEG_UP BUTTON_SCROLL_UP
119#define JPEG_DOWN BUTTON_SCROLL_DOWN
120#define JPEG_LEFT BUTTON_LEFT
121#define JPEG_RIGHT BUTTON_RIGHT
122#define JPEG_MENU BUTTON_POWER
123#define JPEG_NEXT BUTTON_FF
124#define JPEG_PREVIOUS BUTTON_REW
125
114#endif 126#endif
115 127
116/* different graphics libraries */ 128/* different graphics libraries */
diff --git a/apps/plugins/logo.c b/apps/plugins/logo.c
index d2d2d56e75..34696073dd 100644
--- a/apps/plugins/logo.c
+++ b/apps/plugins/logo.c
@@ -208,6 +208,12 @@ const unsigned char rockbox16x7[] = {
208#define LP_INC_X BUTTON_RIGHT 208#define LP_INC_X BUTTON_RIGHT
209#define LP_DEC_Y BUTTON_DOWN 209#define LP_DEC_Y BUTTON_DOWN
210#define LP_INC_Y BUTTON_UP 210#define LP_INC_Y BUTTON_UP
211#elif CONFIG_KEYPAD == IRIVER_H10_PAD
212#define LP_QUIT BUTTON_POWER
213#define LP_DEC_X BUTTON_LEFT
214#define LP_INC_X BUTTON_RIGHT
215#define LP_DEC_Y BUTTON_SCROLL_DOWN
216#define LP_INC_Y BUTTON_SCROLL_UP
211#else 217#else
212#define LP_QUIT BUTTON_OFF 218#define LP_QUIT BUTTON_OFF
213#define LP_DEC_X BUTTON_LEFT 219#define LP_DEC_X BUTTON_LEFT
diff --git a/apps/plugins/mandelbrot.c b/apps/plugins/mandelbrot.c
index 3841e2625a..dbcf08fa62 100644
--- a/apps/plugins/mandelbrot.c
+++ b/apps/plugins/mandelbrot.c
@@ -106,6 +106,20 @@ PLUGIN_HEADER
106#define MANDELBROT_MAXITER_INC (BUTTON_POWER | BUTTON_RIGHT) 106#define MANDELBROT_MAXITER_INC (BUTTON_POWER | BUTTON_RIGHT)
107#define MANDELBROT_MAXITER_DEC (BUTTON_POWER | BUTTON_LEFT) 107#define MANDELBROT_MAXITER_DEC (BUTTON_POWER | BUTTON_LEFT)
108#define MANDELBROT_RESET BUTTON_SELECT 108#define MANDELBROT_RESET BUTTON_SELECT
109
110#elif CONFIG_KEYPAD == IRIVER_H10_PAD
111#define MANDELBROT_QUIT BUTTON_POWER
112#define MANDELBROT_UP BUTTON_SCROLL_UP
113#define MANDELBROT_DOWN BUTTON_SCROLL_DOWN
114#define MANDELBROT_LEFT BUTTON_LEFT
115#define MANDELBROT_RIGHT BUTTON_RIGHT
116#define MANDELBROT_ZOOM_IN_PRE BUTTON_PLAY
117#define MANDELBROT_ZOOM_IN (BUTTON_PLAY | BUTTON_REL)
118#define MANDELBROT_ZOOM_OUT (BUTTON_PLAY | BUTTON_REPEAT)
119#define MANDELBROT_MAXITER_INC BUTTON_FF
120#define MANDELBROT_MAXITER_DEC BUTTON_REW
121#define MANDELBROT_RESET (BUTTON_PLAY | BUTTON_REW)
122
109#endif 123#endif
110 124
111#if LCD_DEPTH < 8 125#if LCD_DEPTH < 8
diff --git a/apps/plugins/midiplay.c b/apps/plugins/midiplay.c
index 1cdc438d88..e0b89cf860 100644
--- a/apps/plugins/midiplay.c
+++ b/apps/plugins/midiplay.c
@@ -60,6 +60,12 @@ PLUGIN_HEADER
60#define BTN_UP BUTTON_UP 60#define BTN_UP BUTTON_UP
61#define BTN_DOWN BUTTON_DOWN 61#define BTN_DOWN BUTTON_DOWN
62 62
63#elif CONFIG_KEYPAD == IRIVER_H10_PAD
64#define BTN_QUIT BUTTON_POWER
65#define BTN_RIGHT BUTTON_RIGHT
66#define BTN_UP BUTTON_SCROLL_UP
67#define BTN_DOWN BUTTON_SCROLL_DOWN
68
63#endif 69#endif
64 70
65 71
diff --git a/apps/plugins/minesweeper.c b/apps/plugins/minesweeper.c
index 5a47b03292..21e655671f 100644
--- a/apps/plugins/minesweeper.c
+++ b/apps/plugins/minesweeper.c
@@ -107,6 +107,17 @@ PLUGIN_HEADER
107#define MINESWP_RIGHT (BUTTON_SELECT | BUTTON_RIGHT) 107#define MINESWP_RIGHT (BUTTON_SELECT | BUTTON_RIGHT)
108#define MINESWP_LEFT (BUTTON_SELECT | BUTTON_LEFT) 108#define MINESWP_LEFT (BUTTON_SELECT | BUTTON_LEFT)
109 109
110#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
111#define MINESWP_UP BUTTON_SCROLL_UP
112#define MINESWP_DOWN BUTTON_SCROLL_DOWN
113#define MINESWP_QUIT BUTTON_POWER
114#define MINESWP_START BUTTON_FF
115#define MINESWP_TOGGLE BUTTON_PLAY
116#define MINESWP_DISCOVER BUTTON_REW
117#define MINESWP_INFO (BUTTON_REW | BUTTON_PLAY)
118#define MINESWP_RIGHT (BUTTON_RIGHT | BUTTON_PLAY)
119#define MINESWP_LEFT (BUTTON_LEFT | BUTTON_PLAY)
120
110#endif 121#endif
111 122
112/* here is a global api struct pointer. while not strictly necessary, 123/* here is a global api struct pointer. while not strictly necessary,
diff --git a/apps/plugins/mosaique.c b/apps/plugins/mosaique.c
index b1f148100b..08cbaef0bd 100644
--- a/apps/plugins/mosaique.c
+++ b/apps/plugins/mosaique.c
@@ -76,6 +76,11 @@ PLUGIN_HEADER
76#define MOSAIQUE_SPEED BUTTON_MENU 76#define MOSAIQUE_SPEED BUTTON_MENU
77#define MOSAIQUE_RESTART BUTTON_SELECT 77#define MOSAIQUE_RESTART BUTTON_SELECT
78 78
79#elif CONFIG_KEYPAD == IRIVER_H10_PAD
80#define MOSAIQUE_QUIT BUTTON_POWER
81#define MOSAIQUE_SPEED BUTTON_FF
82#define MOSAIQUE_RESTART BUTTON_PLAY
83
79#endif 84#endif
80 85
81enum plugin_status plugin_start(struct plugin_api* api, void* parameter) 86enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
diff --git a/apps/plugins/mp3_encoder.c b/apps/plugins/mp3_encoder.c
index b31f428496..d1eef7b23b 100644
--- a/apps/plugins/mp3_encoder.c
+++ b/apps/plugins/mp3_encoder.c
@@ -2348,6 +2348,11 @@ void get_mp3_filename(char *wav_name)
2348#define MP3ENC_NEXT BUTTON_DOWN 2348#define MP3ENC_NEXT BUTTON_DOWN
2349#define MP3ENC_DONE BUTTON_A 2349#define MP3ENC_DONE BUTTON_A
2350#define MP3ENC_SELECT BUTTON_SELECT 2350#define MP3ENC_SELECT BUTTON_SELECT
2351#elif CONFIG_KEYPAD == IRIVER_H10_PAD
2352#define MP3ENC_PREV BUTTON_SCROLL_UP
2353#define MP3ENC_NEXT BUTTON_SCROLL_DOWN
2354#define MP3ENC_DONE BUTTON_POWER
2355#define MP3ENC_SELECT BUTTON_PLAY
2351#endif 2356#endif
2352 2357
2353enum plugin_status plugin_start(struct plugin_api* api, void* parameter) 2358enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
diff --git a/apps/plugins/oscilloscope.c b/apps/plugins/oscilloscope.c
index bd8b949ec6..7f212bf690 100644
--- a/apps/plugins/oscilloscope.c
+++ b/apps/plugins/oscilloscope.c
@@ -97,6 +97,18 @@ PLUGIN_HEADER
97#define OSCILLOSCOPE_VOL_UP BUTTON_UP 97#define OSCILLOSCOPE_VOL_UP BUTTON_UP
98#define OSCILLOSCOPE_VOL_DOWN BUTTON_DOWN 98#define OSCILLOSCOPE_VOL_DOWN BUTTON_DOWN
99 99
100#elif CONFIG_KEYPAD == IRIVER_H10_PAD
101#define OSCILLOSCOPE_QUIT BUTTON_POWER
102#define OSCILLOSCOPE_DRAWMODE_PRE BUTTON_REW
103#define OSCILLOSCOPE_DRAWMODE (BUTTON_REW | BUTTON_REL)
104#define OSCILLOSCOPE_ADVMODE BUTTON_FF
105#define OSCILLOSCOPE_ORIENTATION (BUTTON_REW | BUTTON_REPEAT)
106#define OSCILLOSCOPE_PAUSE BUTTON_PLAY
107#define OSCILLOSCOPE_SPEED_UP BUTTON_RIGHT
108#define OSCILLOSCOPE_SPEED_DOWN BUTTON_LEFT
109#define OSCILLOSCOPE_VOL_UP BUTTON_SCROLL_UP
110#define OSCILLOSCOPE_VOL_DOWN BUTTON_SCROLL_DOWN
111
100#endif 112#endif
101 113
102/* colours */ 114/* colours */
diff --git a/apps/plugins/pacbox/pacbox.h b/apps/plugins/pacbox/pacbox.h
index 8712448b5b..d0b0bce303 100644
--- a/apps/plugins/pacbox/pacbox.h
+++ b/apps/plugins/pacbox/pacbox.h
@@ -87,6 +87,17 @@
87#define PACMAN_COIN BUTTON_REC 87#define PACMAN_COIN BUTTON_REC
88#define PACMAN_MENU BUTTON_PLAY 88#define PACMAN_MENU BUTTON_PLAY
89 89
90#elif CONFIG_KEYPAD == IRIVER_H10_PAD
91
92#define PACMAN_UP BUTTON_RIGHT
93#define PACMAN_DOWN BUTTON_LEFT
94#define PACMAN_LEFT BUTTON_SCROLL_UP
95#define PACMAN_RIGHT BUTTON_SCROLL_DOWN
96#define PACMAN_1UP BUTTON_REW
97#define PACMAN_2UP BUTTON_POWER
98#define PACMAN_COIN BUTTON_FF
99#define PACMAN_MENU BUTTON_PLAY
100
90#endif 101#endif
91 102
92#if (LCD_HEIGHT >= 288) 103#if (LCD_HEIGHT >= 288)
diff --git a/apps/plugins/plasma.c b/apps/plugins/plasma.c
index 4e8b38db05..676dba9a54 100644
--- a/apps/plugins/plasma.c
+++ b/apps/plugins/plasma.c
@@ -63,6 +63,10 @@ static int plasma_frequency;
63#define PLASMA_QUIT BUTTON_POWER 63#define PLASMA_QUIT BUTTON_POWER
64#define PLASMA_INCREASE_FREQUENCY BUTTON_UP 64#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
65#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN 65#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
66#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
67#define PLASMA_QUIT BUTTON_POWER
68#define PLASMA_INCREASE_FREQUENCY BUTTON_SCROLL_UP
69#define PLASMA_DECREASE_FREQUENCY BUTTON_SCROLL_DOWN
66#else 70#else
67#define PLASMA_QUIT BUTTON_OFF 71#define PLASMA_QUIT BUTTON_OFF
68#define PLASMA_INCREASE_FREQUENCY BUTTON_UP 72#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
@@ -75,6 +79,8 @@ static int plasma_frequency;
75#ifdef HAVE_LCD_COLOR 79#ifdef HAVE_LCD_COLOR
76#if CONFIG_KEYPAD == IAUDIO_X5_PAD 80#if CONFIG_KEYPAD == IAUDIO_X5_PAD
77#define PLASMA_REGEN_COLORS BUTTON_PLAY 81#define PLASMA_REGEN_COLORS BUTTON_PLAY
82#elif CONFIG_KEYPAD == IRIVER_H10_PAD
83#define PLASMA_REGEN_COLORS BUTTON_PLAY
78#elif CONFIG_KEYPAD == IPOD_4G_PAD 84#elif CONFIG_KEYPAD == IPOD_4G_PAD
79#define PLASMA_REGEN_COLORS BUTTON_SELECT 85#define PLASMA_REGEN_COLORS BUTTON_SELECT
80#elif CONFIG_KEYPAD == IRIVER_H300_PAD 86#elif CONFIG_KEYPAD == IRIVER_H300_PAD
diff --git a/apps/plugins/pong.c b/apps/plugins/pong.c
index 421ae0295c..dfa2a22fd4 100644
--- a/apps/plugins/pong.c
+++ b/apps/plugins/pong.c
@@ -81,6 +81,13 @@ PLUGIN_HEADER
81#define PONG_RIGHT_UP BUTTON_POWER 81#define PONG_RIGHT_UP BUTTON_POWER
82#define PONG_RIGHT_DOWN BUTTON_MENU 82#define PONG_RIGHT_DOWN BUTTON_MENU
83 83
84#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
85#define PONG_QUIT BUTTON_POWER
86#define PONG_LEFT_UP BUTTON_SCROLL_UP
87#define PONG_LEFT_DOWN BUTTON_SCROLL_DOWN
88#define PONG_RIGHT_UP BUTTON_REW
89#define PONG_RIGHT_DOWN BUTTON_FF
90
84#endif 91#endif
85 92
86static struct plugin_api* rb; 93static struct plugin_api* rb;
diff --git a/apps/plugins/rockpaint.c b/apps/plugins/rockpaint.c
index bedec839c5..95c1a0c253 100644
--- a/apps/plugins/rockpaint.c
+++ b/apps/plugins/rockpaint.c
@@ -70,6 +70,17 @@ PLUGIN_HEADER
70#define ROCKPAINT_LEFT BUTTON_LEFT 70#define ROCKPAINT_LEFT BUTTON_LEFT
71#define ROCKPAINT_RIGHT BUTTON_RIGHT 71#define ROCKPAINT_RIGHT BUTTON_RIGHT
72 72
73#elif ( CONFIG_KEYPAD == IRIVER_H10_PAD )
74#define ROCKPAINT_QUIT BUTTON_POWER
75#define ROCKPAINT_DRAW BUTTON_FF
76#define ROCKPAINT_MENU BUTTON_PLAY
77#define ROCKPAINT_TOOLBAR BUTTON_REW
78#define ROCKPAINT_TOOLBAR2 ( BUTTON_REW | BUTTON_LEFT )
79#define ROCKPAINT_UP BUTTON_SCROLL_UP
80#define ROCKPAINT_DOWN BUTTON_SCROLL_DOWN
81#define ROCKPAINT_LEFT BUTTON_LEFT
82#define ROCKPAINT_RIGHT BUTTON_RIGHT
83
73#else 84#else
74#error "Please define keys for this keypad" 85#error "Please define keys for this keypad"
75#endif 86#endif
diff --git a/apps/plugins/sliding_puzzle.c b/apps/plugins/sliding_puzzle.c
index 085db8708d..d9ddba1332 100644
--- a/apps/plugins/sliding_puzzle.c
+++ b/apps/plugins/sliding_puzzle.c
@@ -69,6 +69,13 @@ PLUGIN_HEADER
69#define PUZZLE_SHUFFLE BUTTON_SELECT 69#define PUZZLE_SHUFFLE BUTTON_SELECT
70#define PUZZLE_PICTURE BUTTON_POWER 70#define PUZZLE_PICTURE BUTTON_POWER
71 71
72#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
73#define PUZZLE_QUIT BUTTON_POWER
74#define PUZZLE_UP BUTTON_SCROLL_UP
75#define PUZZLE_DOWN BUTTON_SCROLL_DOWN
76#define PUZZLE_SHUFFLE BUTTON_REW
77#define PUZZLE_PICTURE BUTTON_PLAY
78
72#endif 79#endif
73 80
74static struct plugin_api* rb; 81static struct plugin_api* rb;
diff --git a/apps/plugins/snake.c b/apps/plugins/snake.c
index ab8e5f327e..b1e9e10a55 100644
--- a/apps/plugins/snake.c
+++ b/apps/plugins/snake.c
@@ -76,6 +76,12 @@ PLUGIN_HEADER
76#define SNAKE_DOWN BUTTON_DOWN 76#define SNAKE_DOWN BUTTON_DOWN
77#define SNAKE_PLAYPAUSE BUTTON_SELECT 77#define SNAKE_PLAYPAUSE BUTTON_SELECT
78 78
79#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
80#define SNAKE_QUIT BUTTON_POWER
81#define SNAKE_UP BUTTON_SCROLL_UP
82#define SNAKE_DOWN BUTTON_SCROLL_DOWN
83#define SNAKE_PLAYPAUSE BUTTON_PLAY
84
79#else 85#else
80#error "lacks keymapping" 86#error "lacks keymapping"
81#endif 87#endif
diff --git a/apps/plugins/snake2.c b/apps/plugins/snake2.c
index bb89d86cf5..30660c0f89 100644
--- a/apps/plugins/snake2.c
+++ b/apps/plugins/snake2.c
@@ -219,6 +219,18 @@ PLUGIN_HEADER
219#define SNAKE2_PLAYPAUSE BUTTON_SELECT 219#define SNAKE2_PLAYPAUSE BUTTON_SELECT
220#define SNAKE2_PLAYPAUSE_TEXT "Select" 220#define SNAKE2_PLAYPAUSE_TEXT "Select"
221 221
222#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
223#define SNAKE2_UP BUTTON_SCROLL_UP
224#define SNAKE2_DOWN BUTTON_SCROLL_DOWN
225#define SNAKE2_QUIT BUTTON_POWER
226#define SNAKE2_LEVEL_UP BUTTON_SCROLL_UP
227#define SNAKE2_LEVEL_DOWN BUTTON_SCROLL_DOWN
228#define SNAKE2_MAZE_NEXT BUTTON_RIGHT
229#define SNAKE2_MAZE_LAST BUTTON_LEFT
230#define SNAKE2_SELECT_TYPE BUTTON_PLAY
231#define SNAKE2_PLAYPAUSE BUTTON_FF
232#define SNAKE2_PLAYPAUSE_TEXT "FF"
233
222#else 234#else
223#error "lacks keymapping" 235#error "lacks keymapping"
224#endif 236#endif
diff --git a/apps/plugins/snow.c b/apps/plugins/snow.c
index 35efad70da..8f907a7ec6 100644
--- a/apps/plugins/snow.c
+++ b/apps/plugins/snow.c
@@ -45,6 +45,8 @@ PLUGIN_HEADER
45#define SNOW_QUIT BUTTON_POWER 45#define SNOW_QUIT BUTTON_POWER
46#elif CONFIG_KEYPAD == GIGABEAT_PAD 46#elif CONFIG_KEYPAD == GIGABEAT_PAD
47#define SNOW_QUIT BUTTON_A 47#define SNOW_QUIT BUTTON_A
48#elif CONFIG_KEYPAD == IRIVER_H10_PAD
49#define SNOW_QUIT BUTTON_POWER
48#else 50#else
49#define SNOW_QUIT BUTTON_OFF 51#define SNOW_QUIT BUTTON_OFF
50#if (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD) 52#if (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD)
diff --git a/apps/plugins/sokoban.c b/apps/plugins/sokoban.c
index 6dfbdc6df6..06788d4806 100644
--- a/apps/plugins/sokoban.c
+++ b/apps/plugins/sokoban.c
@@ -102,6 +102,16 @@ extern const fb_data sokoban_tiles[];
102#define SOKOBAN_LEVEL_DOWN (BUTTON_POWER | BUTTON_DOWN) 102#define SOKOBAN_LEVEL_DOWN (BUTTON_POWER | BUTTON_DOWN)
103#define SOKOBAN_LEVEL_REPEAT BUTTON_SELECT 103#define SOKOBAN_LEVEL_REPEAT BUTTON_SELECT
104 104
105#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
106#define SOKOBAN_UP BUTTON_SCROLL_UP
107#define SOKOBAN_DOWN BUTTON_SCROLL_DOWN
108#define SOKOBAN_QUIT BUTTON_POWER
109#define SOKOBAN_UNDO_PRE BUTTON_REW
110#define SOKOBAN_UNDO (BUTTON_REW | BUTTON_REL)
111#define SOKOBAN_LEVEL_UP (BUTTON_PLAY | BUTTON_SCROLL_UP)
112#define SOKOBAN_LEVEL_DOWN (BUTTON_PLAY | BUTTON_SCROLL_DOWN)
113#define SOKOBAN_LEVEL_REPEAT BUTTON_FF
114
105#endif 115#endif
106 116
107#ifdef HAVE_LCD_COLOR 117#ifdef HAVE_LCD_COLOR
diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c
index 3253eb2bd4..c4a5445364 100644
--- a/apps/plugins/solitaire.c
+++ b/apps/plugins/solitaire.c
@@ -1557,4 +1557,11 @@ enum plugin_status plugin_start( struct plugin_api* api, void* parameter )
1557 return ( result == SOLITAIRE_USB ) ? PLUGIN_USB_CONNECTED : PLUGIN_OK; 1557 return ( result == SOLITAIRE_USB ) ? PLUGIN_USB_CONNECTED : PLUGIN_OK;
1558} 1558}
1559 1559
1560#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
1561#define HELP_SOL_MOVE "REW: Select cards, Move cards, reveal hidden cards ..."
1562#define HELP_SOL_DRAW "PLAY: Un-select a card if it was selected. Else, draw 3 new cards out of the remains' stack."
1563#define HELP_SOL_REM2CUR "REW+LEFT: Put the card on top of the remains' stack on top of the cursor."
1564#define HELP_SOL_CUR2STACK "REW+UP..: Put the card under the cursor on one of the 4 final stacks."
1565#define HELP_SOL_REM2STACK "REW+DOWN: Put the card on top of the remains' stack on one of the 4 final stacks."
1566
1560#endif 1567#endif
diff --git a/apps/plugins/spacerocks.c b/apps/plugins/spacerocks.c
index 2cc3db9161..aeac49b92f 100755
--- a/apps/plugins/spacerocks.c
+++ b/apps/plugins/spacerocks.c
@@ -105,6 +105,20 @@ static struct plugin_api* rb; /* global api struct pointer */
105#define AST_RIGHT_REP (BUTTON_RIGHT | BUTTON_REPEAT) 105#define AST_RIGHT_REP (BUTTON_RIGHT | BUTTON_REPEAT)
106#define AST_FIRE BUTTON_SELECT 106#define AST_FIRE BUTTON_SELECT
107#define AST_FIRE_REP BUTTON_SELECT | BUTTON_REPEAT 107#define AST_FIRE_REP BUTTON_SELECT | BUTTON_REPEAT
108
109#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
110#define AST_PAUSE BUTTON_PLAY
111#define AST_QUIT BUTTON_POWER
112#define AST_THRUST_REP BUTTON_SCROLL_UP | BUTTON_REPEAT
113#define AST_THRUST BUTTON_SCROLL_UP
114#define AST_HYPERSPACE BUTTON_SCROLL_DOWN
115#define AST_LEFT BUTTON_LEFT
116#define AST_LEFT_REP BUTTON_LEFT | BUTTON_REPEAT
117#define AST_RIGHT BUTTON_RIGHT
118#define AST_RIGHT_REP (BUTTON_RIGHT | BUTTON_REPEAT)
119#define AST_FIRE BUTTON_REW
120#define AST_FIRE_REP BUTTON_REW | BUTTON_REPEAT
121
108#endif 122#endif
109 123
110#define SHOW_COL 0 124#define SHOW_COL 0
@@ -127,7 +141,8 @@ static struct plugin_api* rb; /* global api struct pointer */
127 (CONFIG_KEYPAD == IAUDIO_X5_PAD) || \ 141 (CONFIG_KEYPAD == IAUDIO_X5_PAD) || \
128 (CONFIG_KEYPAD == IPOD_3G_PAD) || \ 142 (CONFIG_KEYPAD == IPOD_3G_PAD) || \
129 (CONFIG_KEYPAD == IPOD_4G_PAD) || \ 143 (CONFIG_KEYPAD == IPOD_4G_PAD) || \
130 (CONFIG_KEYPAD == GIGABEAT_PAD) 144 (CONFIG_KEYPAD == GIGABEAT_PAD)|| \
145 (CONFIG_KEYPAD == IRIVER_H10_PAD)
131 #define ENEMY_MISSILE_SURVIVAL_LENGTH 120 146 #define ENEMY_MISSILE_SURVIVAL_LENGTH 120
132 #define MISSILE_SURVIVAL_LENGTH 80 147 #define MISSILE_SURVIVAL_LENGTH 80
133#endif 148#endif
diff --git a/apps/plugins/star.c b/apps/plugins/star.c
index c6d533f96f..0848b3398e 100644
--- a/apps/plugins/star.c
+++ b/apps/plugins/star.c
@@ -136,6 +136,18 @@ PLUGIN_HEADER
136#define STAR_LEVEL_REPEAT (BUTTON_POWER | BUTTON_RIGHT) 136#define STAR_LEVEL_REPEAT (BUTTON_POWER | BUTTON_RIGHT)
137#define STAR_MENU_RUN BUTTON_RIGHT 137#define STAR_MENU_RUN BUTTON_RIGHT
138 138
139#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
140
141#define STAR_QUIT BUTTON_POWER
142#define STAR_UP BUTTON_SCROLL_UP
143#define STAR_DOWN BUTTON_SCROLL_DOWN
144#define STAR_TOGGLE_CONTROL_PRE BUTTON_REW
145#define STAR_TOGGLE_CONTROL (BUTTON_REW | BUTTON_REL)
146#define STAR_LEVEL_UP (BUTTON_PLAY | BUTTON_SCROLL_UP)
147#define STAR_LEVEL_DOWN (BUTTON_PLAY | BUTTON_SCROLL_DOWN)
148#define STAR_LEVEL_REPEAT (BUTTON_PLAY | BUTTON_RIGHT)
149#define STAR_MENU_RUN BUTTON_FF
150
139#endif 151#endif
140 152
141/* function returns because of USB? */ 153/* function returns because of USB? */
diff --git a/apps/plugins/starfield.c b/apps/plugins/starfield.c
index 64c2b34588..ef3fd688e8 100644
--- a/apps/plugins/starfield.c
+++ b/apps/plugins/starfield.c
@@ -39,6 +39,12 @@ static struct plugin_api* rb; /* global api struct pointer */
39#define STARFIELD_DECREASE_ZMOVE BUTTON_DOWN 39#define STARFIELD_DECREASE_ZMOVE BUTTON_DOWN
40#define STARFIELD_INCREASE_NB_STARS BUTTON_RIGHT 40#define STARFIELD_INCREASE_NB_STARS BUTTON_RIGHT
41#define STARFIELD_DECREASE_NB_STARS BUTTON_LEFT 41#define STARFIELD_DECREASE_NB_STARS BUTTON_LEFT
42#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
43#define STARFIELD_QUIT BUTTON_POWER
44#define STARFIELD_INCREASE_ZMOVE BUTTON_SCROLL_UP
45#define STARFIELD_DECREASE_ZMOVE BUTTON_SCROLL_DOWN
46#define STARFIELD_INCREASE_NB_STARS BUTTON_RIGHT
47#define STARFIELD_DECREASE_NB_STARS BUTTON_LEFT
42#elif (CONFIG_KEYPAD == GIGABEAT_PAD) 48#elif (CONFIG_KEYPAD == GIGABEAT_PAD)
43#define STARFIELD_QUIT BUTTON_A 49#define STARFIELD_QUIT BUTTON_A
44#define STARFIELD_INCREASE_ZMOVE BUTTON_UP 50#define STARFIELD_INCREASE_ZMOVE BUTTON_UP
diff --git a/apps/plugins/stats.c b/apps/plugins/stats.c
index c6ed928de5..20d17c75b2 100644
--- a/apps/plugins/stats.c
+++ b/apps/plugins/stats.c
@@ -54,6 +54,9 @@ static int fontwidth, fontheight;
54#elif CONFIG_KEYPAD == GIGABEAT_PAD 54#elif CONFIG_KEYPAD == GIGABEAT_PAD
55#define STATS_STOP BUTTON_A 55#define STATS_STOP BUTTON_A
56 56
57#elif CONFIG_KEYPAD == IRIVER_H10_PAD
58#define STATS_STOP BUTTON_POWER
59
57#endif 60#endif
58 61
59/* TODO: Better get the exts from the filetypes var in tree.c */ 62/* TODO: Better get the exts from the filetypes var in tree.c */
diff --git a/apps/plugins/stopwatch.c b/apps/plugins/stopwatch.c
index d8204e4082..849ff687ce 100644
--- a/apps/plugins/stopwatch.c
+++ b/apps/plugins/stopwatch.c
@@ -95,6 +95,13 @@ PLUGIN_HEADER
95#define STOPWATCH_LAP_TIMER BUTTON_MENU 95#define STOPWATCH_LAP_TIMER BUTTON_MENU
96#define STOPWATCH_SCROLL_UP BUTTON_UP 96#define STOPWATCH_SCROLL_UP BUTTON_UP
97#define STOPWATCH_SCROLL_DOWN BUTTON_DOWN 97#define STOPWATCH_SCROLL_DOWN BUTTON_DOWN
98#elif CONFIG_KEYPAD == IRIVER_H10_PAD
99#define STOPWATCH_QUIT BUTTON_POWER
100#define STOPWATCH_START_STOP BUTTON_PLAY
101#define STOPWATCH_RESET_TIMER BUTTON_REW
102#define STOPWATCH_LAP_TIMER BUTTON_FF
103#define STOPWATCH_SCROLL_UP BUTTON_SCROLL_UP
104#define STOPWATCH_SCROLL_DOWN BUTTON_SCROLL_DOWN
98#endif 105#endif
99 106
100static struct plugin_api* rb; 107static struct plugin_api* rb;
diff --git a/apps/plugins/sudoku/sudoku.h b/apps/plugins/sudoku/sudoku.h
index 0985ff5710..761be3a988 100644
--- a/apps/plugins/sudoku/sudoku.h
+++ b/apps/plugins/sudoku/sudoku.h
@@ -90,6 +90,16 @@
90#define SUDOKU_BUTTON_MENU BUTTON_MENU 90#define SUDOKU_BUTTON_MENU BUTTON_MENU
91#define SUDOKU_BUTTON_POSSIBLE BUTTON_POWER 91#define SUDOKU_BUTTON_POSSIBLE BUTTON_POWER
92 92
93#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
94#define SUDOKU_BUTTON_QUIT BUTTON_POWER
95#define SUDOKU_BUTTON_UP BUTTON_SCROLL_UP
96#define SUDOKU_BUTTON_DOWN BUTTON_SCROLL_DOWN
97#define SUDOKU_BUTTON_LEFT BUTTON_LEFT
98#define SUDOKU_BUTTON_RIGHT BUTTON_RIGHT
99#define SUDOKU_BUTTON_TOGGLE BUTTON_REW
100#define SUDOKU_BUTTON_MENU BUTTON_PLAY
101#define SUDOKU_BUTTON_POSSIBLE BUTTON_FF
102
93#elif 103#elif
94 #error SUDOKU: Unsupported keypad 104 #error SUDOKU: Unsupported keypad
95#endif 105#endif
diff --git a/apps/plugins/text_editor.c b/apps/plugins/text_editor.c
index 01af458654..f983dd30a3 100644
--- a/apps/plugins/text_editor.c
+++ b/apps/plugins/text_editor.c
@@ -57,6 +57,11 @@
57#define TEXT_EDITOR_CANCEL BUTTON_A 57#define TEXT_EDITOR_CANCEL BUTTON_A
58#define TEXT_EDITOR_ITEM_MENU BUTTON_MENU 58#define TEXT_EDITOR_ITEM_MENU BUTTON_MENU
59 59
60#elif CONFIG_KEYPAD == IRIVER_H10_PAD
61#define TEXT_EDITOR_SELECT BUTTON_REW
62#define TEXT_EDITOR_CANCEL BUTTON_POWER
63#define TEXT_EDITOR_ITEM_MENU BUTTON_PLAY
64
60#else 65#else
61 #error TEXT_EDITOR: Unsupported keypad 66 #error TEXT_EDITOR: Unsupported keypad
62#endif 67#endif
diff --git a/apps/plugins/viewer.c b/apps/plugins/viewer.c
index e30f08defb..9180fa6dcd 100644
--- a/apps/plugins/viewer.c
+++ b/apps/plugins/viewer.c
@@ -154,6 +154,16 @@ PLUGIN_HEADER
154#define VIEWER_MENU BUTTON_MENU 154#define VIEWER_MENU BUTTON_MENU
155#define VIEWER_AUTOSCROLL BUTTON_A 155#define VIEWER_AUTOSCROLL BUTTON_A
156 156
157/* iriver H10 keys */
158#elif CONFIG_KEYPAD == IRIVER_H10_PAD
159#define VIEWER_QUIT BUTTON_POWER
160#define VIEWER_PAGE_UP BUTTON_SCROLL_UP
161#define VIEWER_PAGE_DOWN BUTTON_SCROLL_DOWN
162#define VIEWER_SCREEN_LEFT BUTTON_LEFT
163#define VIEWER_SCREEN_RIGHT BUTTON_RIGHT
164#define VIEWER_MENU BUTTON_REW
165#define VIEWER_AUTOSCROLL BUTTON_PLAY
166
157#endif 167#endif
158 168
159struct preferences { 169struct preferences {
diff --git a/apps/plugins/vu_meter.c b/apps/plugins/vu_meter.c
index e3d56c9d5c..559aafabc1 100644
--- a/apps/plugins/vu_meter.c
+++ b/apps/plugins/vu_meter.c
@@ -94,6 +94,17 @@ PLUGIN_HEADER
94#define VUMETER_UP BUTTON_UP 94#define VUMETER_UP BUTTON_UP
95#define VUMETER_DOWN BUTTON_DOWN 95#define VUMETER_DOWN BUTTON_DOWN
96 96
97#elif CONFIG_KEYPAD == IRIVER_H10_PAD
98#define VUMETER_QUIT BUTTON_POWER
99#define VUMETER_HELP BUTTON_PLAY
100#define VUMETER_MENU BUTTON_REW
101#define VUMETER_MENU_EXIT BUTTON_REW
102#define VUMETER_MENU_EXIT2 BUTTON_POWER
103#define VUMETER_LEFT BUTTON_LEFT
104#define VUMETER_RIGHT BUTTON_RIGHT
105#define VUMETER_UP BUTTON_SCROLL_UP
106#define VUMETER_DOWN BUTTON_SCROLL_DOWN
107
97#endif 108#endif
98 109
99const struct plugin_api* rb; 110const struct plugin_api* rb;
diff --git a/apps/plugins/wormlet.c b/apps/plugins/wormlet.c
index 7dc0ecdf90..3ea063f16c 100644
--- a/apps/plugins/wormlet.c
+++ b/apps/plugins/wormlet.c
@@ -127,6 +127,19 @@ PLUGIN_HEADER
127#define PLAYERS_TEXT "Up/Down" 127#define PLAYERS_TEXT "Up/Down"
128#define WORMS_TEXT "Left/Right" 128#define WORMS_TEXT "Left/Right"
129 129
130#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
131
132#define BTN_DIR_UP BUTTON_SCROLL_UP
133#define BTN_DIR_DOWN BUTTON_SCROLL_DOWN
134#define BTN_DIR_LEFT BUTTON_LEFT
135#define BTN_DIR_RIGHT BUTTON_RIGHT
136#define BTN_STARTPAUSE BUTTON_PLAY
137#define BTN_QUIT BUTTON_POWER
138#define BTN_STOPRESET BUTTON_REW
139
140#define PLAYERS_TEXT "Up/Down"
141#define WORMS_TEXT "Left/Right"
142
130#endif 143#endif
131 144
132#if (LCD_WIDTH == 112) && (LCD_HEIGHT == 64) 145#if (LCD_WIDTH == 112) && (LCD_HEIGHT == 64)
diff --git a/apps/plugins/xobox.c b/apps/plugins/xobox.c
index bf2d96e743..76172ad7ca 100644
--- a/apps/plugins/xobox.c
+++ b/apps/plugins/xobox.c
@@ -66,6 +66,16 @@ PLUGIN_HEADER
66#define DOWN BUTTON_DOWN 66#define DOWN BUTTON_DOWN
67#define PAUSE BUTTON_MENU 67#define PAUSE BUTTON_MENU
68 68
69#elif CONFIG_KEYPAD == IRIVER_H10_PAD
70
71#define QUIT BUTTON_POWER
72#define LEFT BUTTON_LEFT
73#define RIGHT BUTTON_RIGHT
74#define SELECT BUTTON_REW
75#define UP BUTTON_SCROLL_UP
76#define DOWN BUTTON_SCROLL_DOWN
77#define PAUSE BUTTON_PLAY
78
69#else 79#else
70#error Unsupported keypad 80#error Unsupported keypad
71#endif 81#endif
diff --git a/apps/recorder/keyboard.c b/apps/recorder/keyboard.c
index f335028bef..23a1102c3d 100644
--- a/apps/recorder/keyboard.c
+++ b/apps/recorder/keyboard.c
@@ -174,6 +174,20 @@
174#define KBD_UP BUTTON_UP 174#define KBD_UP BUTTON_UP
175#define KBD_DOWN BUTTON_DOWN 175#define KBD_DOWN BUTTON_DOWN
176 176
177#elif CONFIG_KEYPAD == IRIVER_H10_PAD
178
179/* TODO: Check keyboard mappings */
180
181#define KBD_MODES /* iriver H10 uses 2 modes, picker and line edit */
182#define KBD_SELECT (BUTTON_REW | BUTTON_REL) /* backspace in line edit */
183#define KBD_SELECT_PRE BUTTON_REW
184#define KBD_DONE BUTTON_PLAY
185#define KBD_ABORT BUTTON_FF
186#define KBD_LEFT BUTTON_LEFT
187#define KBD_RIGHT BUTTON_RIGHT
188#define KBD_UP BUTTON_SCROLL_UP
189#define KBD_DOWN BUTTON_SCROLL_DOWN
190
177#endif 191#endif
178 192
179struct keyboard_parameters { 193struct keyboard_parameters {
diff --git a/apps/screens.h b/apps/screens.h
index 4b4f4fe725..34e7c9f603 100644
--- a/apps/screens.h
+++ b/apps/screens.h
@@ -58,6 +58,13 @@
58#define PITCH_LEFT BUTTON_LEFT 58#define PITCH_LEFT BUTTON_LEFT
59#define PITCH_EXIT BUTTON_PLAY 59#define PITCH_EXIT BUTTON_PLAY
60#define PITCH_RESET BUTTON_POWER 60#define PITCH_RESET BUTTON_POWER
61#elif (CONFIG_KEYPAD == IRIVER_H10_PAD)
62#define PITCH_UP BUTTON_SCROLL_UP
63#define PITCH_DOWN BUTTON_SCROLL_DOWN
64#define PITCH_RIGHT BUTTON_RIGHT
65#define PITCH_LEFT BUTTON_LEFT
66#define PITCH_EXIT BUTTON_PLAY
67#define PITCH_RESET BUTTON_POWER
61#endif 68#endif
62 69
63struct screen; 70struct screen;
diff --git a/apps/settings.h b/apps/settings.h
index 983e58911d..4ab290914a 100644
--- a/apps/settings.h
+++ b/apps/settings.h
@@ -142,6 +142,16 @@
142#define SETTINGS_NEXT BUTTON_RIGHT 142#define SETTINGS_NEXT BUTTON_RIGHT
143#define SETTINGS_ACCEPT BUTTON_SELECT 143#define SETTINGS_ACCEPT BUTTON_SELECT
144 144
145#elif CONFIG_KEYPAD == IRIVER_H10_PAD
146#define SETTINGS_INC BUTTON_SCROLL_UP
147#define SETTINGS_DEC BUTTON_SCROLL_DOWN
148#define SETTINGS_OK BUTTON_PLAY
149#define SETTINGS_OK2 BUTTON_LEFT
150#define SETTINGS_CANCEL BUTTON_REW
151#define SETTINGS_PREV BUTTON_LEFT
152#define SETTINGS_NEXT BUTTON_RIGHT
153#define SETTINGS_ACCEPT BUTTON_FF
154
145#endif 155#endif
146 156
147/* data structures */ 157/* data structures */
diff --git a/apps/tree.h b/apps/tree.h
index 29532b5304..43242d6633 100644
--- a/apps/tree.h
+++ b/apps/tree.h
@@ -167,6 +167,20 @@
167#define TREE_WPS_PRE BUTTON_POWER 167#define TREE_WPS_PRE BUTTON_POWER
168#define TREE_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) 168#define TREE_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT)
169 169
170#elif CONFIG_KEYPAD == IRIVER_H10_PAD
171
172#define TREE_EXIT BUTTON_LEFT
173#define TREE_ABORT BUTTON_LEFT
174#define TREE_ENTER BUTTON_RIGHT
175#define TREE_RUN (BUTTON_PLAY | BUTTON_REL)
176#define TREE_RUN_PRE BUTTON_PLAY
177#define TREE_MENU (BUTTON_REW | BUTTON_REL)
178#define TREE_MENU_PRE BUTTON_REW
179#define TREE_WPS (BUTTON_FF | BUTTON_REL)
180#define TREE_WPS_PRE BUTTON_FF
181#define TREE_CONTEXT (BUTTON_PLAY | BUTTON_SCROLL_UP)
182#define TREE_QUICK (BUTTON_PLAY | BUTTON_SCROLL_DOWN)
183
170#endif 184#endif
171 185
172struct entry { 186struct entry {