summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/plugins/battery_bench.c7
-rw-r--r--apps/plugins/blackjack.c15
-rw-r--r--apps/plugins/bounce.c8
-rw-r--r--apps/plugins/brickmania.c9
-rw-r--r--apps/plugins/calculator.c11
-rw-r--r--apps/plugins/chessbox/chessbox_pgn.h11
-rw-r--r--apps/plugins/chessclock.c10
-rw-r--r--apps/plugins/chip8.c12
-rw-r--r--apps/plugins/chopper.c6
-rw-r--r--apps/plugins/cube.c10
-rw-r--r--apps/plugins/dict.c2
-rw-r--r--apps/plugins/doom/i_video.c11
-rw-r--r--apps/plugins/fireworks.c3
-rw-r--r--apps/plugins/flipit.c12
-rw-r--r--apps/plugins/invadrox.c7
-rw-r--r--apps/plugins/jewels.c10
-rw-r--r--apps/plugins/jpeg/jpeg.h12
-rw-r--r--apps/plugins/lib/pluginlib_actions.c19
-rw-r--r--apps/plugins/logo.c7
-rw-r--r--apps/plugins/mandelbrot.c12
-rw-r--r--apps/plugins/matrix.c5
-rw-r--r--apps/plugins/midi/midiplay.c8
-rw-r--r--apps/plugins/minesweeper.c10
-rw-r--r--apps/plugins/mosaique.c5
-rw-r--r--apps/plugins/mp3_encoder.c5
-rw-r--r--apps/plugins/mpegplayer/mpeg_settings.c10
-rw-r--r--apps/plugins/mpegplayer/mpegplayer.c9
-rw-r--r--apps/plugins/oscilloscope.c11
-rw-r--r--apps/plugins/pacbox/pacbox.h11
-rw-r--r--apps/plugins/pegbox.c18
-rw-r--r--apps/plugins/plasma.c6
-rw-r--r--apps/plugins/pong.c7
-rw-r--r--apps/plugins/reversi/reversi-gui.h9
-rw-r--r--apps/plugins/rockblox.c10
-rw-r--r--apps/plugins/rockblox1d.c4
-rw-r--r--apps/plugins/rockboy/rockboy.c9
-rw-r--r--apps/plugins/rockpaint.c11
-rw-r--r--apps/plugins/sliding_puzzle.c9
-rw-r--r--apps/plugins/snake.c8
-rw-r--r--apps/plugins/snake2.c14
-rw-r--r--apps/plugins/snow.c2
-rw-r--r--apps/plugins/sokoban.c15
-rw-r--r--apps/plugins/solitaire.c18
-rw-r--r--apps/plugins/spacerocks.c13
-rw-r--r--apps/plugins/star.c13
-rw-r--r--apps/plugins/starfield.c7
-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/superdom.c8
-rw-r--r--apps/plugins/viewer.c10
-rw-r--r--apps/plugins/vu_meter.c12
-rw-r--r--apps/plugins/wormlet.c13
-rw-r--r--apps/plugins/xobox.c9
-rw-r--r--apps/plugins/zxbox/keymaps.h8
-rw-r--r--apps/plugins/zxbox/zxbox_keyb.c10
-rw-r--r--firmware/test/fat/Makefile9
-rwxr-xr-xtools/configure4
58 files changed, 538 insertions, 6 deletions
diff --git a/apps/plugins/battery_bench.c b/apps/plugins/battery_bench.c
index a74a1cf328..b951b01432 100644
--- a/apps/plugins/battery_bench.c
+++ b/apps/plugins/battery_bench.c
@@ -160,6 +160,13 @@ PLUGIN_HEADER
160#define BATTERY_OFF_TXT "POWER" 160#define BATTERY_OFF_TXT "POWER"
161#define BATTERY_ON BUTTON_PLAY 161#define BATTERY_ON BUTTON_PLAY
162#define BATTERY_ON_TXT "PLAY - start" 162#define BATTERY_ON_TXT "PLAY - start"
163
164#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
165#define BATTERY_ON BUTTON_PLAY
166#define BATTERY_ON_TXT "PLAY - start"
167#define BATTERY_OFF BUTTON_BACK
168#define BATTERY_OFF_TXT "BACK"
169
163#else 170#else
164#error No keymap defined! 171#error No keymap defined!
165#endif 172#endif
diff --git a/apps/plugins/blackjack.c b/apps/plugins/blackjack.c
index ef90a8fed4..6536745f38 100644
--- a/apps/plugins/blackjack.c
+++ b/apps/plugins/blackjack.c
@@ -272,6 +272,21 @@ PLUGIN_HEADER
272#define BJACK_DOUBLEDOWN BUTTON_MINUS 272#define BJACK_DOUBLEDOWN BUTTON_MINUS
273#define BJACK_SCORES BUTTON_MENU 273#define BJACK_SCORES BUTTON_MENU
274 274
275#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
276#define BJACK_START BUTTON_SELECT
277#define BJACK_QUIT BUTTON_BACK
278#define BJACK_MAX (BUTTON_SELECT|BUTTON_UP)
279#define BJACK_MIN (BUTTON_SELECT|BUTTON_DOWN)
280#define BJACK_HIT BUTTON_LEFT
281#define BJACK_STAY BUTTON_RIGHT
282#define BJACK_DOUBLEDOWN BUTTON_CUSTOM
283#define BJACK_SCORES BUTTON_RIGHT
284#define BJACK_RESUME BUTTON_MENU
285#define BJACK_UP BUTTON_UP
286#define BJACK_DOWN BUTTON_DOWN
287#define BJACK_RIGHT BUTTON_RIGHT
288#define BJACK_LEFT BUTTON_LEFT
289
275#else 290#else
276#error No keymap defined! 291#error No keymap defined!
277#endif 292#endif
diff --git a/apps/plugins/bounce.c b/apps/plugins/bounce.c
index c93d1a082a..2164636b7d 100644
--- a/apps/plugins/bounce.c
+++ b/apps/plugins/bounce.c
@@ -144,6 +144,14 @@ PLUGIN_HEADER
144#define BOUNCE_QUIT BUTTON_POWER 144#define BOUNCE_QUIT BUTTON_POWER
145#define BOUNCE_MODE BUTTON_MENU 145#define BOUNCE_MODE BUTTON_MENU
146 146
147#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
148#define BOUNCE_LEFT BUTTON_LEFT
149#define BOUNCE_RIGHT BUTTON_RIGHT
150#define BOUNCE_UP BUTTON_UP
151#define BOUNCE_DOWN BUTTON_DOWN
152#define BOUNCE_QUIT BUTTON_BACK
153#define BOUNCE_MODE BUTTON_MENU
154
147#else 155#else
148#error No keymap defined! 156#error No keymap defined!
149#endif 157#endif
diff --git a/apps/plugins/brickmania.c b/apps/plugins/brickmania.c
index 0df7b32fa6..1a9db8acbb 100644
--- a/apps/plugins/brickmania.c
+++ b/apps/plugins/brickmania.c
@@ -169,6 +169,15 @@ PLUGIN_HEADER
169#elif CONFIG_KEYPAD == COWOND2_PAD 169#elif CONFIG_KEYPAD == COWOND2_PAD
170#define QUIT BUTTON_POWER 170#define QUIT BUTTON_POWER
171 171
172#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
173
174#define QUIT BUTTON_BACK
175#define LEFT BUTTON_LEFT
176#define RIGHT BUTTON_RIGHT
177#define SELECT BUTTON_SELECT
178#define UP BUTTON_UP
179#define DOWN BUTTON_DOWN
180
172#else 181#else
173#error No keymap defined! 182#error No keymap defined!
174#endif 183#endif
diff --git a/apps/plugins/calculator.c b/apps/plugins/calculator.c
index 0207688c6d..c7722e3777 100644
--- a/apps/plugins/calculator.c
+++ b/apps/plugins/calculator.c
@@ -285,6 +285,17 @@ PLUGIN_HEADER
285 285
286#define CALCULATOR_RC_QUIT (BUTTON_MENU|BUTTON_PLAY) 286#define CALCULATOR_RC_QUIT (BUTTON_MENU|BUTTON_PLAY)
287 287
288#elif (CONFIG_KEYPAD == CREATIVEZVM_PAD)
289
290#define CALCULATOR_LEFT BUTTON_LEFT
291#define CALCULATOR_RIGHT BUTTON_RIGHT
292#define CALCULATOR_UP BUTTON_UP
293#define CALCULATOR_DOWN BUTTON_DOWN
294#define CALCULATOR_QUIT BUTTON_BACK
295#define CALCULATOR_INPUT BUTTON_SELECT
296#define CALCULATOR_CALC BUTTON_MENU
297#define CALCULATOR_CLEAR BUTTON_PLAY
298
288#else 299#else
289#error No keymap defined! 300#error No keymap defined!
290#endif 301#endif
diff --git a/apps/plugins/chessbox/chessbox_pgn.h b/apps/plugins/chessbox/chessbox_pgn.h
index 88d12c787f..35ac8daaf7 100644
--- a/apps/plugins/chessbox/chessbox_pgn.h
+++ b/apps/plugins/chessbox/chessbox_pgn.h
@@ -284,6 +284,17 @@
284#define CB_RESTART BUTTON_MINUS 284#define CB_RESTART BUTTON_MINUS
285#define CB_MENU (BUTTON_MENU|BUTTON_REL) 285#define CB_MENU (BUTTON_MENU|BUTTON_REL)
286 286
287#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
288
289#define CB_SELECT BUTTON_PLAY
290#define CB_UP BUTTON_UP
291#define CB_DOWN BUTTON_DOWN
292#define CB_LEFT BUTTON_LEFT
293#define CB_RIGHT BUTTON_RIGHT
294#define CB_PLAY BUTTON_SELECT
295#define CB_LEVEL BUTTON_CUSTOM
296#define CB_MENU BUTTON_MENU
297
287 298
288#else 299#else
289#error No keymap defined! 300#error No keymap defined!
diff --git a/apps/plugins/chessclock.c b/apps/plugins/chessclock.c
index 3e22676d8b..47d8345edf 100644
--- a/apps/plugins/chessclock.c
+++ b/apps/plugins/chessclock.c
@@ -202,6 +202,16 @@ PLUGIN_HEADER
202#define CHC_SETTINGS_OK2 BUTTON_LEFT 202#define CHC_SETTINGS_OK2 BUTTON_LEFT
203#define CHC_SETTINGS_CANCEL BUTTON_POWER 203#define CHC_SETTINGS_CANCEL BUTTON_POWER
204 204
205#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
206#define CHC_QUIT BUTTON_BACK
207#define CHC_STARTSTOP BUTTON_SELECT
208#define CHC_RESET BUTTON_CUSTOM
209#define CHC_MENU BUTTON_MENU
210#define CHC_SETTINGS_INC BUTTON_UP
211#define CHC_SETTINGS_DEC BUTTON_DOWN
212#define CHC_SETTINGS_OK BUTTON_PLAY
213#define CHC_SETTINGS_CANCEL BUTTON_BACK
214
205#else 215#else
206#error No keymap defined! 216#error No keymap defined!
207#endif 217#endif
diff --git a/apps/plugins/chip8.c b/apps/plugins/chip8.c
index 9ce18b582b..c5c46d54b2 100644
--- a/apps/plugins/chip8.c
+++ b/apps/plugins/chip8.c
@@ -1082,6 +1082,18 @@ STATIC void chip8 (void)
1082#elif (CONFIG_KEYPAD == COWOND2_PAD) 1082#elif (CONFIG_KEYPAD == COWOND2_PAD)
1083#define CHIP8_OFF BUTTON_POWER 1083#define CHIP8_OFF BUTTON_POWER
1084 1084
1085#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
1086#define CHIP8_OFF BUTTON_POWER
1087#define CHIP8_KEY1 BUTTON_MENU
1088#define CHIP8_KEY2 BUTTON_UP
1089#define CHIP8_KEY3 BUTTON_BACK
1090#define CHIP8_KEY4 BUTTON_LEFT
1091#define CHIP8_KEY5 BUTTON_SELECT
1092#define CHIP8_KEY6 BUTTON_RIGHT
1093#define CHIP8_KEY7 BUTTON_CUSTOM
1094#define CHIP8_KEY8 BUTTON_DOWN
1095#define CHIP8_KEY9 BUTTON_PLAY
1096
1085#else 1097#else
1086#error No keymap defined! 1098#error No keymap defined!
1087#endif 1099#endif
diff --git a/apps/plugins/chopper.c b/apps/plugins/chopper.c
index b2fab7e07a..b827c7125a 100644
--- a/apps/plugins/chopper.c
+++ b/apps/plugins/chopper.c
@@ -114,6 +114,12 @@ Still To do:
114#define ACTION2 BUTTON_STOP 114#define ACTION2 BUTTON_STOP
115#define ACTIONTEXT "PLAY" 115#define ACTIONTEXT "PLAY"
116 116
117#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
118#define QUIT BUTTON_BACK
119#define ACTION BUTTON_UP
120#define ACTION2 BUTTON_MENU
121#define ACTIONTEXT "UP"
122
117#else 123#else
118#error No keymap defined! 124#error No keymap defined!
119#endif 125#endif
diff --git a/apps/plugins/cube.c b/apps/plugins/cube.c
index fde3b7583c..3e27cbb053 100644
--- a/apps/plugins/cube.c
+++ b/apps/plugins/cube.c
@@ -215,6 +215,16 @@ PLUGIN_HEADER
215#define CUBE_PAUSE BUTTON_PLAY 215#define CUBE_PAUSE BUTTON_PLAY
216#define CUBE_HIGHSPEED BUTTON_STOP 216#define CUBE_HIGHSPEED BUTTON_STOP
217 217
218#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
219#define CUBE_QUIT BUTTON_BACK
220#define CUBE_NEXT BUTTON_RIGHT
221#define CUBE_PREV BUTTON_LEFT
222#define CUBE_INC BUTTON_UP
223#define CUBE_DEC BUTTON_DOWN
224#define CUBE_MODE BUTTON_MENU
225#define CUBE_PAUSE BUTTON_PLAY
226#define CUBE_HIGHSPEED BUTTON_SELECT
227
218#else 228#else
219#error No keymap defined! 229#error No keymap defined!
220#endif 230#endif
diff --git a/apps/plugins/dict.c b/apps/plugins/dict.c
index eb1f3df5db..3004218f23 100644
--- a/apps/plugins/dict.c
+++ b/apps/plugins/dict.c
@@ -135,6 +135,8 @@ long reverse (long N) {
135#define LP_QUIT BUTTON_POWER 135#define LP_QUIT BUTTON_POWER
136#elif CONFIG_KEYPAD == IAUDIO67_PAD 136#elif CONFIG_KEYPAD == IAUDIO67_PAD
137#define LP_QUIT BUTTON_POWER 137#define LP_QUIT BUTTON_POWER
138#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
139#define LP_QUIT BUTTON_BACK
138#else 140#else
139#define LP_QUIT BUTTON_OFF 141#define LP_QUIT BUTTON_OFF
140#endif 142#endif
diff --git a/apps/plugins/doom/i_video.c b/apps/plugins/doom/i_video.c
index 7713fe19f2..58edcbd3fc 100644
--- a/apps/plugins/doom/i_video.c
+++ b/apps/plugins/doom/i_video.c
@@ -277,6 +277,17 @@ void I_ShutdownGraphics(void)
277#define DOOMBUTTON_SHOOT BUTTON_VOLUP 277#define DOOMBUTTON_SHOOT BUTTON_VOLUP
278#define DOOMBUTTON_OPEN BUTTON_VOLDOWN 278#define DOOMBUTTON_OPEN BUTTON_VOLDOWN
279#define DOOMBUTTON_ENTER BUTTON_MENU 279#define DOOMBUTTON_ENTER BUTTON_MENU
280#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
281#define DOOMBUTTON_UP BUTTON_UP
282#define DOOMBUTTON_DOWN BUTTON_DOWN
283#define DOOMBUTTON_LEFT BUTTON_LEFT
284#define DOOMBUTTON_RIGHT BUTTON_RIGHT
285#define DOOMBUTTON_SHOOT BUTTON_PLAY
286#define DOOMBUTTON_OPEN BUTTON_SELECT
287#define DOOMBUTTON_ESC BUTTON_POWER
288#define DOOMBUTTON_ENTER BUTTON_CUSTOM
289#define DOOMBUTTON_WEAPON BUTTON_MENU
290#define DOOMBUTTON_MAP BUTTON_BACK
280#else 291#else
281#error Keymap not defined! 292#error Keymap not defined!
282#endif 293#endif
diff --git a/apps/plugins/fireworks.c b/apps/plugins/fireworks.c
index 5134d01538..aeb49a272f 100644
--- a/apps/plugins/fireworks.c
+++ b/apps/plugins/fireworks.c
@@ -76,6 +76,9 @@ static const struct plugin_api* rb;
76#elif CONFIG_KEYPAD == IAUDIO67_PAD 76#elif CONFIG_KEYPAD == IAUDIO67_PAD
77#define BTN_MENU BUTTON_MENU 77#define BTN_MENU BUTTON_MENU
78#define BTN_FIRE BUTTON_PLAY 78#define BTN_FIRE BUTTON_PLAY
79#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
80#define BTN_MENU BUTTON_MENU
81#define BTN_FIRE BUTTON_PLAY
79#else 82#else
80#error No keymap defined! 83#error No keymap defined!
81#endif 84#endif
diff --git a/apps/plugins/flipit.c b/apps/plugins/flipit.c
index 23f4675fae..f95644e064 100644
--- a/apps/plugins/flipit.c
+++ b/apps/plugins/flipit.c
@@ -224,6 +224,18 @@ PLUGIN_HEADER
224 224
225#define FLIPIT_QUIT BUTTON_POWER 225#define FLIPIT_QUIT BUTTON_POWER
226 226
227#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
228
229#define FLIPIT_LEFT BUTTON_LEFT
230#define FLIPIT_RIGHT BUTTON_RIGHT
231#define FLIPIT_UP BUTTON_UP
232#define FLIPIT_DOWN BUTTON_DOWN
233#define FLIPIT_QUIT BUTTON_BACK
234#define FLIPIT_SHUFFLE BUTTON_CUSTOM
235#define FLIPIT_SOLVE BUTTON_SELECT
236#define FLIPIT_STEP_BY_STEP BUTTON_MENU
237#define FLIPIT_TOGGLE BUTTON_PLAY
238
227#else 239#else
228#error No keymap defined! 240#error No keymap defined!
229#endif 241#endif
diff --git a/apps/plugins/invadrox.c b/apps/plugins/invadrox.c
index 8b73221331..3dbe5c539d 100644
--- a/apps/plugins/invadrox.c
+++ b/apps/plugins/invadrox.c
@@ -127,6 +127,13 @@ PLUGIN_HEADER
127#define RIGHT BUTTON_RIGHT 127#define RIGHT BUTTON_RIGHT
128#define FIRE BUTTON_PLAY 128#define FIRE BUTTON_PLAY
129 129
130#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
131
132#define QUIT BUTTON_BACK
133#define LEFT BUTTON_LEFT
134#define RIGHT BUTTON_RIGHT
135#define FIRE BUTTON_PLAY
136
130#else 137#else
131 #error INVADROX: Unsupported keypad 138 #error INVADROX: Unsupported keypad
132#endif 139#endif
diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c
index 9d6400c9a9..c4ddcdf1c8 100644
--- a/apps/plugins/jewels.c
+++ b/apps/plugins/jewels.c
@@ -161,6 +161,14 @@ PLUGIN_HEADER
161#define JEWELS_SELECT BUTTON_MENU 161#define JEWELS_SELECT BUTTON_MENU
162#define JEWELS_CANCEL BUTTON_POWER 162#define JEWELS_CANCEL BUTTON_POWER
163 163
164#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
165#define JEWELS_UP BUTTON_UP
166#define JEWELS_DOWN BUTTON_DOWN
167#define JEWELS_LEFT BUTTON_LEFT
168#define JEWELS_RIGHT BUTTON_RIGHT
169#define JEWELS_SELECT BUTTON_SELECT
170#define JEWELS_CANCEL BUTTON_BACK
171
164#else 172#else
165#error No keymap defined! 173#error No keymap defined!
166#endif 174#endif
@@ -1604,7 +1612,7 @@ static int jewels_main(struct game_context* bj) {
1604 rb->lcd_puts(0, 12, "REC to cancel"); 1612 rb->lcd_puts(0, 12, "REC to cancel");
1605#elif CONFIG_KEYPAD == COWOND2_PAD 1613#elif CONFIG_KEYPAD == COWOND2_PAD
1606 rb->lcd_puts(0, 11, "POWER to cancel"); 1614 rb->lcd_puts(0, 11, "POWER to cancel");
1607#elif CONFIG_KEYPAD == GIGABEAT_S_PAD 1615#elif CONFIG_KEYPAD == GIGABEAT_S_PAD || CREATIVEZVM_PAD
1608 rb->lcd_puts(0, 2, "Swap pairs of jewels to"); 1616 rb->lcd_puts(0, 2, "Swap pairs of jewels to");
1609 rb->lcd_puts(0, 3, "form connected segments"); 1617 rb->lcd_puts(0, 3, "form connected segments");
1610 rb->lcd_puts(0, 4, "of three or more of the"); 1618 rb->lcd_puts(0, 4, "of three or more of the");
diff --git a/apps/plugins/jpeg/jpeg.h b/apps/plugins/jpeg/jpeg.h
index 154e2dd68a..db07b12b1f 100644
--- a/apps/plugins/jpeg/jpeg.h
+++ b/apps/plugins/jpeg/jpeg.h
@@ -233,6 +233,18 @@
233#define JPEG_NEXT (BUTTON_PLAY|BUTTON_VOLUP) 233#define JPEG_NEXT (BUTTON_PLAY|BUTTON_VOLUP)
234#define JPEG_PREVIOUS (BUTTON_PLAY|BUTTON_VOLDOWN) 234#define JPEG_PREVIOUS (BUTTON_PLAY|BUTTON_VOLDOWN)
235 235
236#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
237
238#define JPEG_ZOOM_IN BUTTON_PLAY
239#define JPEG_ZOOM_OUT BUTTON_SELECT
240#define JPEG_UP BUTTON_UP
241#define JPEG_DOWN BUTTON_DOWN
242#define JPEG_LEFT BUTTON_LEFT
243#define JPEG_RIGHT BUTTON_RIGHT
244#define JPEG_MENU BUTTON_MENU
245#define JPEG_NEXT BUTTON_CUSTOM
246#define JPEG_PREVIOUS BUTTON_BACK
247
236#else 248#else
237#error No keymap defined! 249#error No keymap defined!
238#endif 250#endif
diff --git a/apps/plugins/lib/pluginlib_actions.c b/apps/plugins/lib/pluginlib_actions.c
index a8a4e9c2c3..62b264d0b8 100644
--- a/apps/plugins/lib/pluginlib_actions.c
+++ b/apps/plugins/lib/pluginlib_actions.c
@@ -88,7 +88,8 @@ const struct button_mapping generic_directions[] =
88 || (CONFIG_KEYPAD == GIGABEAT_S_PAD) \ 88 || (CONFIG_KEYPAD == GIGABEAT_S_PAD) \
89 || (CONFIG_KEYPAD == MROBE100_PAD) \ 89 || (CONFIG_KEYPAD == MROBE100_PAD) \
90 || (CONFIG_KEYPAD == PHILIPS_SA9200_PAD) \ 90 || (CONFIG_KEYPAD == PHILIPS_SA9200_PAD) \
91 || (CONFIG_KEYPAD == SANSA_CLIP_PAD) 91 || (CONFIG_KEYPAD == SANSA_CLIP_PAD) \
92 || (CONFIG_KEYPAD == CREATIVEZVM_PAD)
92 { PLA_UP, BUTTON_UP, BUTTON_NONE}, 93 { PLA_UP, BUTTON_UP, BUTTON_NONE},
93 { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE}, 94 { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE},
94 { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, 95 { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE},
@@ -275,6 +276,13 @@ const struct button_mapping generic_left_right_fire[] =
275 { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, 276 { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE},
276 { PLA_FIRE, BUTTON_MENU, BUTTON_NONE}, 277 { PLA_FIRE, BUTTON_MENU, BUTTON_NONE},
277 { PLA_FIRE_REPEAT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE}, 278 { PLA_FIRE_REPEAT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE},
279#elif (CONFIG_KEYPAD == CREATIVEZVM_PAD)
280 { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE},
281 { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE},
282 { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE},
283 { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE},
284 { PLA_FIRE, BUTTON_PLAY, BUTTON_NONE},
285 { PLA_FIRE_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE},
278#else 286#else
279 #error pluginlib_actions: Unsupported keypad 287 #error pluginlib_actions: Unsupported keypad
280#endif 288#endif
@@ -415,6 +423,12 @@ const struct button_mapping generic_actions[] =
415 {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, 423 {PLA_MENU, BUTTON_MENU, BUTTON_NONE},
416 {PLA_FIRE, BUTTON_VOLUP, BUTTON_NONE}, 424 {PLA_FIRE, BUTTON_VOLUP, BUTTON_NONE},
417 {PLA_FIRE_REPEAT, BUTTON_VOLUP|BUTTON_REPEAT, BUTTON_NONE}, 425 {PLA_FIRE_REPEAT, BUTTON_VOLUP|BUTTON_REPEAT, BUTTON_NONE},
426#elif (CONFIG_KEYPAD == CREATIVEZVM_PAD)
427 {PLA_QUIT, BUTTON_BACK, BUTTON_NONE},
428 {PLA_START, BUTTON_PLAY, BUTTON_NONE},
429 {PLA_MENU, BUTTON_MENU, BUTTON_NONE},
430 {PLA_FIRE, BUTTON_PLAY, BUTTON_NONE},
431 {PLA_FIRE_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE},
418#else 432#else
419 #error pluginlib_actions: Unsupported keypad 433 #error pluginlib_actions: Unsupported keypad
420#endif 434#endif
@@ -440,7 +454,8 @@ const struct button_mapping generic_increase_decrease[] =
440 || (CONFIG_KEYPAD == GIGABEAT_S_PAD) \ 454 || (CONFIG_KEYPAD == GIGABEAT_S_PAD) \
441 || (CONFIG_KEYPAD == MROBE100_PAD) \ 455 || (CONFIG_KEYPAD == MROBE100_PAD) \
442 || (CONFIG_KEYPAD == PHILIPS_SA9200_PAD) \ 456 || (CONFIG_KEYPAD == PHILIPS_SA9200_PAD) \
443 || (CONFIG_KEYPAD == SANSA_CLIP_PAD) 457 || (CONFIG_KEYPAD == SANSA_CLIP_PAD) \
458 || (CONFIG_KEYPAD == CREATIVEZVM_PAD)
444 {PLA_INC, BUTTON_UP, BUTTON_NONE}, 459 {PLA_INC, BUTTON_UP, BUTTON_NONE},
445 {PLA_DEC, BUTTON_DOWN, BUTTON_NONE}, 460 {PLA_DEC, BUTTON_DOWN, BUTTON_NONE},
446 {PLA_INC_REPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE}, 461 {PLA_INC_REPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE},
diff --git a/apps/plugins/logo.c b/apps/plugins/logo.c
index 756a12b289..846d3214df 100644
--- a/apps/plugins/logo.c
+++ b/apps/plugins/logo.c
@@ -148,6 +148,13 @@ const unsigned char rockbox16x7[] = {
148#define LP_DEC_Y BUTTON_PLAY 148#define LP_DEC_Y BUTTON_PLAY
149#define LP_INC_Y BUTTON_STOP 149#define LP_INC_Y BUTTON_STOP
150 150
151#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
152#define LP_QUIT BUTTON_BACK
153#define LP_DEC_X BUTTON_LEFT
154#define LP_INC_X BUTTON_RIGHT
155#define LP_DEC_Y BUTTON_DOWN
156#define LP_INC_Y BUTTON_UP
157
151#else 158#else
152#define LP_QUIT BUTTON_OFF 159#define LP_QUIT BUTTON_OFF
153#define LP_DEC_X BUTTON_LEFT 160#define LP_DEC_X BUTTON_LEFT
diff --git a/apps/plugins/mandelbrot.c b/apps/plugins/mandelbrot.c
index 0ded230d92..9389d05fca 100644
--- a/apps/plugins/mandelbrot.c
+++ b/apps/plugins/mandelbrot.c
@@ -235,6 +235,18 @@ PLUGIN_HEADER
235#elif CONFIG_KEYPAD == COWOND2_PAD 235#elif CONFIG_KEYPAD == COWOND2_PAD
236#define MANDELBROT_QUIT BUTTON_POWER 236#define MANDELBROT_QUIT BUTTON_POWER
237 237
238#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
239#define MANDELBROT_QUIT BUTTON_POWER
240#define MANDELBROT_UP BUTTON_UP
241#define MANDELBROT_DOWN BUTTON_DOWN
242#define MANDELBROT_LEFT BUTTON_LEFT
243#define MANDELBROT_RIGHT BUTTON_RIGHT
244#define MANDELBROT_ZOOM_IN BUTTON_SELECT
245#define MANDELBROT_ZOOM_OUT BUTTON_MENU
246#define MANDELBROT_MAXITER_INC BUTTON_CUSTOM
247#define MANDELBROT_MAXITER_DEC BUTTON_BACK
248#define MANDELBROT_RESET BUTTON_PLAY
249
238#else 250#else
239#error No keymap defined! 251#error No keymap defined!
240#endif 252#endif
diff --git a/apps/plugins/matrix.c b/apps/plugins/matrix.c
index 93565596dd..99b731d937 100644
--- a/apps/plugins/matrix.c
+++ b/apps/plugins/matrix.c
@@ -104,6 +104,11 @@ extern const fb_data matrix_normal[];
104#define MATRIX_SLEEP_MORE BUTTON_VOLUP 104#define MATRIX_SLEEP_MORE BUTTON_VOLUP
105#define MATRIX_SLEEP_LESS BUTTON_VOLDOWN 105#define MATRIX_SLEEP_LESS BUTTON_VOLDOWN
106#define MATRIX_PAUSE BUTTON_PLAY 106#define MATRIX_PAUSE BUTTON_PLAY
107#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
108#define MATRIX_EXIT BUTTON_BACK
109#define MATRIX_SLEEP_MORE BUTTON_UP
110#define MATRIX_SLEEP_LESS BUTTON_DOWN
111#define MATRIX_PAUSE BUTTON_PLAY
107#else 112#else
108#error Unsupported keypad 113#error Unsupported keypad
109#endif 114#endif
diff --git a/apps/plugins/midi/midiplay.c b/apps/plugins/midi/midiplay.c
index c33ff3e725..4ecc477ac4 100644
--- a/apps/plugins/midi/midiplay.c
+++ b/apps/plugins/midi/midiplay.c
@@ -157,6 +157,14 @@ PLUGIN_IRAM_DECLARE
157#define BTN_DOWN BUTTON_PLAY 157#define BTN_DOWN BUTTON_PLAY
158#define BTN_PLAY BUTTON_MENU 158#define BTN_PLAY BUTTON_MENU
159 159
160#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
161#define BTN_QUIT BUTTON_BACK
162#define BTN_RIGHT BUTTON_RIGHT
163#define BTN_LEFT BUTTON_LEFT
164#define BTN_UP BUTTON_UP
165#define BTN_DOWN BUTTON_DOWN
166#define BTN_PLAY BUTTON_SELECT
167
160#else 168#else
161#error No keymap defined! 169#error No keymap defined!
162#endif 170#endif
diff --git a/apps/plugins/minesweeper.c b/apps/plugins/minesweeper.c
index 683084921b..870fb18af6 100644
--- a/apps/plugins/minesweeper.c
+++ b/apps/plugins/minesweeper.c
@@ -188,6 +188,16 @@ enum minesweeper_status {
188#elif (CONFIG_KEYPAD == COWOND2_PAD) 188#elif (CONFIG_KEYPAD == COWOND2_PAD)
189# define MINESWP_QUIT BUTTON_POWER 189# define MINESWP_QUIT BUTTON_POWER
190 190
191#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
192# define MINESWP_LEFT BUTTON_LEFT
193# define MINESWP_RIGHT BUTTON_RIGHT
194# define MINESWP_UP BUTTON_UP
195# define MINESWP_DOWN BUTTON_DOWN
196# define MINESWP_QUIT BUTTON_BACK
197# define MINESWP_TOGGLE BUTTON_PLAY
198# define MINESWP_DISCOVER BUTTON_SELECT
199# define MINESWP_INFO BUTTON_MENU
200
191#else 201#else
192#error No keymap defined! 202#error No keymap defined!
193#endif 203#endif
diff --git a/apps/plugins/mosaique.c b/apps/plugins/mosaique.c
index 6a27641f84..294d7931f4 100644
--- a/apps/plugins/mosaique.c
+++ b/apps/plugins/mosaique.c
@@ -132,6 +132,11 @@ PLUGIN_HEADER
132#define MOSAIQUE_SPEED BUTTON_PLAY 132#define MOSAIQUE_SPEED BUTTON_PLAY
133#define MOSAIQUE_RESTART BUTTON_MENU 133#define MOSAIQUE_RESTART BUTTON_MENU
134 134
135#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
136#define MOSAIQUE_QUIT BUTTON_BACK
137#define MOSAIQUE_SPEED BUTTON_MENU
138#define MOSAIQUE_RESTART BUTTON_SELECT
139
135#else 140#else
136#error No keymap defined! 141#error No keymap defined!
137#endif 142#endif
diff --git a/apps/plugins/mp3_encoder.c b/apps/plugins/mp3_encoder.c
index adc557a534..406ab9a079 100644
--- a/apps/plugins/mp3_encoder.c
+++ b/apps/plugins/mp3_encoder.c
@@ -2462,6 +2462,11 @@ void get_mp3_filename(const char *wav_name)
2462#define MP3ENC_NEXT BUTTON_RIGHT 2462#define MP3ENC_NEXT BUTTON_RIGHT
2463#define MP3ENC_DONE BUTTON_POWER 2463#define MP3ENC_DONE BUTTON_POWER
2464#define MP3ENC_SELECT BUTTON_PLAY 2464#define MP3ENC_SELECT BUTTON_PLAY
2465#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
2466#define MP3ENC_PREV BUTTON_UP
2467#define MP3ENC_NEXT BUTTON_DOWN
2468#define MP3ENC_DONE BUTTON_BACK
2469#define MP3ENC_SELECT BUTTON_PLAY
2465#else 2470#else
2466#error No keymap defined! 2471#error No keymap defined!
2467#endif 2472#endif
diff --git a/apps/plugins/mpegplayer/mpeg_settings.c b/apps/plugins/mpegplayer/mpeg_settings.c
index dbb2c1e030..0ab710e578 100644
--- a/apps/plugins/mpegplayer/mpeg_settings.c
+++ b/apps/plugins/mpegplayer/mpeg_settings.c
@@ -132,6 +132,16 @@ struct mpeg_settings settings;
132#define MPEG_START_TIME_DOWN BUTTON_PLAY 132#define MPEG_START_TIME_DOWN BUTTON_PLAY
133#define MPEG_START_TIME_EXIT BUTTON_POWER 133#define MPEG_START_TIME_EXIT BUTTON_POWER
134 134
135#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
136#define MPEG_START_TIME_SELECT BUTTON_PLAY
137#define MPEG_START_TIME_SCROLL_UP BUTTON_SELECT
138#define MPEG_START_TIME_SCROLL_DOWN BUTTON_MENU
139#define MPEG_START_TIME_LEFT BUTTON_LEFT
140#define MPEG_START_TIME_RIGHT BUTTON_RIGHT
141#define MPEG_START_TIME_UP BUTTON_UP
142#define MPEG_START_TIME_DOWN BUTTON_DOWN
143#define MPEG_START_TIME_EXIT BUTTON_BACK
144
135#else 145#else
136#error No keymap defined! 146#error No keymap defined!
137#endif 147#endif
diff --git a/apps/plugins/mpegplayer/mpegplayer.c b/apps/plugins/mpegplayer/mpegplayer.c
index 578c783072..faa25e3e7b 100644
--- a/apps/plugins/mpegplayer/mpegplayer.c
+++ b/apps/plugins/mpegplayer/mpegplayer.c
@@ -240,6 +240,15 @@ PLUGIN_IRAM_DECLARE
240#define MPEG_RW BUTTON_LEFT 240#define MPEG_RW BUTTON_LEFT
241#define MPEG_FF BUTTON_RIGHT 241#define MPEG_FF BUTTON_RIGHT
242 242
243#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
244#define MPEG_MENU BUTTON_MENU
245#define MPEG_STOP BUTTON_BACK
246#define MPEG_PAUSE BUTTON_SELECT
247#define MPEG_VOLDOWN BUTTON_UP
248#define MPEG_VOLUP BUTTON_DOWN
249#define MPEG_RW BUTTON_LEFT
250#define MPEG_FF BUTTON_RIGHT
251
243#else 252#else
244#error No keymap defined! 253#error No keymap defined!
245#endif 254#endif
diff --git a/apps/plugins/oscilloscope.c b/apps/plugins/oscilloscope.c
index 9c25dc3a64..b3a48bb67e 100644
--- a/apps/plugins/oscilloscope.c
+++ b/apps/plugins/oscilloscope.c
@@ -199,6 +199,17 @@ PLUGIN_HEADER
199#define OSCILLOSCOPE_VOL_UP BUTTON_PLUS 199#define OSCILLOSCOPE_VOL_UP BUTTON_PLUS
200#define OSCILLOSCOPE_VOL_DOWN BUTTON_MINUS 200#define OSCILLOSCOPE_VOL_DOWN BUTTON_MINUS
201 201
202#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
203#define OSCILLOSCOPE_QUIT BUTTON_BACK
204#define OSCILLOSCOPE_DRAWMODE BUTTON_PLAY
205#define OSCILLOSCOPE_ADVMODE BUTTON_CUSTOM
206#define OSCILLOSCOPE_ORIENTATION BUTTON_MENU
207#define OSCILLOSCOPE_PAUSE BUTTON_SELECT
208#define OSCILLOSCOPE_SPEED_UP BUTTON_RIGHT
209#define OSCILLOSCOPE_SPEED_DOWN BUTTON_LEFT
210#define OSCILLOSCOPE_VOL_UP BUTTON_UP
211#define OSCILLOSCOPE_VOL_DOWN BUTTON_DOWN
212
202#else 213#else
203#error No keymap defined! 214#error No keymap defined!
204#endif 215#endif
diff --git a/apps/plugins/pacbox/pacbox.h b/apps/plugins/pacbox/pacbox.h
index f38831e608..e84f8d8318 100644
--- a/apps/plugins/pacbox/pacbox.h
+++ b/apps/plugins/pacbox/pacbox.h
@@ -159,6 +159,17 @@
159#define PACMAN_COIN (BUTTON_MENU | BUTTON_PLAY) 159#define PACMAN_COIN (BUTTON_MENU | BUTTON_PLAY)
160#define PACMAN_MENU BUTTON_POWER 160#define PACMAN_MENU BUTTON_POWER
161 161
162#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
163
164#define PACMAN_UP BUTTON_UP
165#define PACMAN_DOWN BUTTON_DOWN
166#define PACMAN_LEFT BUTTON_LEFT
167#define PACMAN_RIGHT BUTTON_RIGHT
168#define PACMAN_1UP BUTTON_CUSTOM
169#define PACMAN_2UP BUTTON_SELECT
170#define PACMAN_COIN BUTTON_PLAY
171#define PACMAN_MENU BUTTON_MENU
172
162#else 173#else
163 174
164#error Keymap not defined! 175#error Keymap not defined!
diff --git a/apps/plugins/pegbox.c b/apps/plugins/pegbox.c
index 4a98426e77..414e431a4d 100644
--- a/apps/plugins/pegbox.c
+++ b/apps/plugins/pegbox.c
@@ -300,6 +300,24 @@ PLUGIN_HEADER
300#define PEGBOX_QUIT BUTTON_POWER 300#define PEGBOX_QUIT BUTTON_POWER
301 301
302#define QUIT_TEXT "POWER" 302#define QUIT_TEXT "POWER"
303
304#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
305#define PEGBOX_SAVE BUTTON_CUSTOM
306#define PEGBOX_QUIT BUTTON_BACK
307#define PEGBOX_RESTART BUTTON_PLAY
308#define PEGBOX_LVL_UP BUTTON_SELECT
309#define PEGBOX_LVL_DOWN BUTTON_MENU
310#define PEGBOX_UP BUTTON_UP
311#define PEGBOX_DOWN BUTTON_DOWN
312#define PEGBOX_RIGHT BUTTON_RIGHT
313#define PEGBOX_LEFT BUTTON_LEFT
314
315#define SAVE_TEXT "CUSTOM"
316#define QUIT_TEXT "BACK"
317#define RESTART_TEXT "MIDDLE"
318#define LVL_UP_TEXT "SELECT"
319#define LVL_DOWN_TEXT "MENU"
320
303#else 321#else
304#error Unsupported keymap! 322#error Unsupported keymap!
305#endif 323#endif
diff --git a/apps/plugins/plasma.c b/apps/plugins/plasma.c
index a304058d20..036dbb474c 100644
--- a/apps/plugins/plasma.c
+++ b/apps/plugins/plasma.c
@@ -109,6 +109,12 @@ static int plasma_frequency;
109#define PLASMA_RC_QUIT BUTTON_STOP 109#define PLASMA_RC_QUIT BUTTON_STOP
110#define PLASMA_REGEN_COLORS BUTTON_PLAY 110#define PLASMA_REGEN_COLORS BUTTON_PLAY
111 111
112#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
113#define PLASMA_QUIT BUTTON_BACK
114#define PLASMA_INCREASE_FREQUENCY BUTTON_UP
115#define PLASMA_DECREASE_FREQUENCY BUTTON_DOWN
116#define PLASMA_REGEN_COLORS BUTTON_PLAY
117
112#endif 118#endif
113 119
114#ifdef HAVE_TOUCHSCREEN 120#ifdef HAVE_TOUCHSCREEN
diff --git a/apps/plugins/pong.c b/apps/plugins/pong.c
index 13a51c4ab4..63ae02b344 100644
--- a/apps/plugins/pong.c
+++ b/apps/plugins/pong.c
@@ -159,6 +159,13 @@ PLUGIN_HEADER
159#define PONG_RIGHT_UP BUTTON_RIGHT 159#define PONG_RIGHT_UP BUTTON_RIGHT
160#define PONG_RIGHT_DOWN BUTTON_LEFT 160#define PONG_RIGHT_DOWN BUTTON_LEFT
161 161
162#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
163#define PONG_QUIT BUTTON_BACK
164#define PONG_LEFT_UP BUTTON_UP
165#define PONG_LEFT_DOWN BUTTON_DOWN
166#define PONG_RIGHT_UP BUTTON_SELECT
167#define PONG_RIGHT_DOWN BUTTON_MENU
168
162#else 169#else
163#error No keymap defined! 170#error No keymap defined!
164#endif 171#endif
diff --git a/apps/plugins/reversi/reversi-gui.h b/apps/plugins/reversi/reversi-gui.h
index 69d29d4f68..2aa949d40b 100644
--- a/apps/plugins/reversi/reversi-gui.h
+++ b/apps/plugins/reversi/reversi-gui.h
@@ -156,6 +156,15 @@
156#define REVERSI_BUTTON_MAKE_MOVE BUTTON_VOLUP 156#define REVERSI_BUTTON_MAKE_MOVE BUTTON_VOLUP
157#define REVERSI_BUTTON_MENU BUTTON_MENU 157#define REVERSI_BUTTON_MENU BUTTON_MENU
158 158
159#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
160#define REVERSI_BUTTON_QUIT BUTTON_BACK
161#define REVERSI_BUTTON_UP BUTTON_UP
162#define REVERSI_BUTTON_DOWN BUTTON_DOWN
163#define REVERSI_BUTTON_LEFT BUTTON_LEFT
164#define REVERSI_BUTTON_RIGHT BUTTON_RIGHT
165#define REVERSI_BUTTON_MAKE_MOVE BUTTON_PLAY
166#define REVERSI_BUTTON_MENU BUTTON_MENU
167
159#else 168#else
160#error No keymap defined! 169#error No keymap defined!
161#endif 170#endif
diff --git a/apps/plugins/rockblox.c b/apps/plugins/rockblox.c
index 5170ab94d9..e88ee58401 100644
--- a/apps/plugins/rockblox.c
+++ b/apps/plugins/rockblox.c
@@ -240,6 +240,16 @@ PLUGIN_HEADER
240#define ROCKBLOX_DROP BUTTON_PLAY 240#define ROCKBLOX_DROP BUTTON_PLAY
241#define ROCKBLOX_RESTART BUTTON_MENU 241#define ROCKBLOX_RESTART BUTTON_MENU
242 242
243#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
244#define ROCKBLOX_OFF BUTTON_BACK
245#define ROCKBLOX_ROTATE_RIGHT BUTTON_UP
246#define ROCKBLOX_ROTATE_LEFT BUTTON_SELECT
247#define ROCKBLOX_DOWN BUTTON_DOWN
248#define ROCKBLOX_LEFT BUTTON_LEFT
249#define ROCKBLOX_RIGHT BUTTON_RIGHT
250#define ROCKBLOX_DROP BUTTON_PLAY
251#define ROCKBLOX_RESTART BUTTON_CUSTOM
252
243#else 253#else
244#error No keymap defined! 254#error No keymap defined!
245#endif 255#endif
diff --git a/apps/plugins/rockblox1d.c b/apps/plugins/rockblox1d.c
index dd28e460f6..9978ed0816 100644
--- a/apps/plugins/rockblox1d.c
+++ b/apps/plugins/rockblox1d.c
@@ -86,6 +86,10 @@ CONFIG_KEYPAD == SANSA_CLIP_PAD
86#define ONEDROCKBLOX_DOWN BUTTON_MENU 86#define ONEDROCKBLOX_DOWN BUTTON_MENU
87#define ONEDROCKBLOX_QUIT BUTTON_POWER 87#define ONEDROCKBLOX_QUIT BUTTON_POWER
88 88
89#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
90#define ONEDROCKBLOX_DOWN BUTTON_PLAY
91#define ONEDROCKBLOX_QUIT BUTTON_BACK
92
89#else 93#else
90#error No keymap defined! 94#error No keymap defined!
91#endif 95#endif
diff --git a/apps/plugins/rockboy/rockboy.c b/apps/plugins/rockboy/rockboy.c
index 1addef2e44..baec042031 100644
--- a/apps/plugins/rockboy/rockboy.c
+++ b/apps/plugins/rockboy/rockboy.c
@@ -220,6 +220,15 @@ static void setoptions (void)
220 options.START=BUTTON_PLAY; 220 options.START=BUTTON_PLAY;
221 options.SELECT=BUTTON_SELECT; 221 options.SELECT=BUTTON_SELECT;
222 options.MENU=BUTTON_MENU; 222 options.MENU=BUTTON_MENU;
223#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
224 options.UP=BUTTON_UP;
225 options.DOWN=BUTTON_DOWN;
226
227 options.A=BUTTON_CUSTOM;
228 options.B=BUTTON_SELECT;
229 options.START=BUTTON_BACK;
230 options.SELECT=BUTTON_PLAY;
231 options.MENU=BUTTON_MENU;
223#else 232#else
224#error No Keymap Defined! 233#error No Keymap Defined!
225#endif 234#endif
diff --git a/apps/plugins/rockpaint.c b/apps/plugins/rockpaint.c
index c9a0c6a840..a91bdc4e88 100644
--- a/apps/plugins/rockpaint.c
+++ b/apps/plugins/rockpaint.c
@@ -121,6 +121,17 @@ PLUGIN_HEADER
121#define ROCKPAINT_QUIT BUTTON_POWER 121#define ROCKPAINT_QUIT BUTTON_POWER
122#define ROCKPAINT_MENU BUTTON_MENU 122#define ROCKPAINT_MENU BUTTON_MENU
123 123
124#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
125#define ROCKPAINT_QUIT BUTTON_BACK
126#define ROCKPAINT_DRAW BUTTON_PLAY
127#define ROCKPAINT_MENU BUTTON_MENU
128#define ROCKPAINT_TOOLBAR BUTTON_SELECT
129#define ROCKPAINT_TOOLBAR2 ( BUTTON_SELECT | BUTTON_LEFT )
130#define ROCKPAINT_UP BUTTON_UP
131#define ROCKPAINT_DOWN BUTTON_DOWN
132#define ROCKPAINT_LEFT BUTTON_LEFT
133#define ROCKPAINT_RIGHT BUTTON_RIGHT
134
124#else 135#else
125#error "Please define keys for this keypad" 136#error "Please define keys for this keypad"
126#endif 137#endif
diff --git a/apps/plugins/sliding_puzzle.c b/apps/plugins/sliding_puzzle.c
index fa5ba274a5..44c4c3a1b2 100644
--- a/apps/plugins/sliding_puzzle.c
+++ b/apps/plugins/sliding_puzzle.c
@@ -153,6 +153,15 @@ PLUGIN_HEADER
153#define PUZZLE_QUIT BUTTON_POWER 153#define PUZZLE_QUIT BUTTON_POWER
154#define PUZZLE_QUIT_TEXT "[POWER]" 154#define PUZZLE_QUIT_TEXT "[POWER]"
155 155
156#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
157#define PUZZLE_QUIT BUTTON_BACK
158#define PUZZLE_LEFT BUTTON_LEFT
159#define PUZZLE_RIGHT BUTTON_RIGHT
160#define PUZZLE_UP BUTTON_UP
161#define PUZZLE_DOWN BUTTON_DOWN
162#define PUZZLE_SHUFFLE BUTTON_SELECT
163#define PUZZLE_PICTURE BUTTON_MENU
164
156#else 165#else
157#error No keymap defined! 166#error No keymap defined!
158#endif 167#endif
diff --git a/apps/plugins/snake.c b/apps/plugins/snake.c
index 584d9371b3..cbe50c8c12 100644
--- a/apps/plugins/snake.c
+++ b/apps/plugins/snake.c
@@ -146,6 +146,14 @@ PLUGIN_HEADER
146#elif (CONFIG_KEYPAD == COWOND2_PAD) 146#elif (CONFIG_KEYPAD == COWOND2_PAD)
147#define SNAKE_QUIT BUTTON_POWER 147#define SNAKE_QUIT BUTTON_POWER
148 148
149#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
150#define SNAKE_QUIT BUTTON_BACK
151#define SNAKE_LEFT BUTTON_LEFT
152#define SNAKE_RIGHT BUTTON_RIGHT
153#define SNAKE_UP BUTTON_UP
154#define SNAKE_DOWN BUTTON_DOWN
155#define SNAKE_PLAYPAUSE BUTTON_SELECT
156
149#else 157#else
150#error No keymap defined! 158#error No keymap defined!
151#endif 159#endif
diff --git a/apps/plugins/snake2.c b/apps/plugins/snake2.c
index 82ef41732d..50d2bb2388 100644
--- a/apps/plugins/snake2.c
+++ b/apps/plugins/snake2.c
@@ -307,6 +307,20 @@ PLUGIN_HEADER
307#elif (CONFIG_KEYPAD == COWOND2_PAD) 307#elif (CONFIG_KEYPAD == COWOND2_PAD)
308#define SNAKE2_QUIT BUTTON_POWER 308#define SNAKE2_QUIT BUTTON_POWER
309 309
310#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
311#define SNAKE2_LEFT BUTTON_LEFT
312#define SNAKE2_RIGHT BUTTON_RIGHT
313#define SNAKE2_UP BUTTON_UP
314#define SNAKE2_DOWN BUTTON_DOWN
315#define SNAKE2_QUIT BUTTON_BACK
316#define SNAKE2_LEVEL_UP BUTTON_UP
317#define SNAKE2_LEVEL_DOWN BUTTON_DOWN
318#define SNAKE2_MAZE_NEXT BUTTON_RIGHT
319#define SNAKE2_MAZE_LAST BUTTON_LEFT
320#define SNAKE2_SELECT_TYPE BUTTON_MENU
321#define SNAKE2_PLAYPAUSE BUTTON_SELECT
322#define SNAKE2_PLAYPAUSE_TEXT "Play"
323
310#else 324#else
311#error No keymap defined! 325#error No keymap defined!
312#endif 326#endif
diff --git a/apps/plugins/snow.c b/apps/plugins/snow.c
index 2f88875050..4f8c3dce12 100644
--- a/apps/plugins/snow.c
+++ b/apps/plugins/snow.c
@@ -66,6 +66,8 @@ PLUGIN_HEADER
66#define SNOW_QUIT BUTTON_POWER 66#define SNOW_QUIT BUTTON_POWER
67#elif CONFIG_KEYPAD == IAUDIO67_PAD 67#elif CONFIG_KEYPAD == IAUDIO67_PAD
68#define SNOW_QUIT BUTTON_POWER 68#define SNOW_QUIT BUTTON_POWER
69#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
70#define SNOW_QUIT BUTTON_BACK
69#else 71#else
70#define SNOW_QUIT BUTTON_OFF 72#define SNOW_QUIT BUTTON_OFF
71#if (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD) 73#if (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD)
diff --git a/apps/plugins/sokoban.c b/apps/plugins/sokoban.c
index 9a166a3fb4..4940ac24ab 100644
--- a/apps/plugins/sokoban.c
+++ b/apps/plugins/sokoban.c
@@ -314,6 +314,21 @@ PLUGIN_HEADER
314 314
315#define SOKOBAN_RC_MENU (BUTTON_MENU|BUTTON_STOP) 315#define SOKOBAN_RC_MENU (BUTTON_MENU|BUTTON_STOP)
316 316
317#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
318#define SOKOBAN_LEFT BUTTON_LEFT
319#define SOKOBAN_RIGHT BUTTON_RIGHT
320#define SOKOBAN_UP BUTTON_UP
321#define SOKOBAN_DOWN BUTTON_DOWN
322#define SOKOBAN_MENU BUTTON_MENU
323#define SOKOBAN_UNDO BUTTON_BACK
324#define SOKOBAN_REDO (BUTTON_BACK | BUTTON_PLAY)
325#define SOKOBAN_LEVEL_DOWN (BUTTON_SELECT | BUTTON_DOWN)
326#define SOKOBAN_LEVEL_REPEAT (BUTTON_SELECT | BUTTON_RIGHT)
327#define SOKOBAN_LEVEL_UP (BUTTON_SELECT | BUTTON_UP)
328#define SOKOBAN_PAUSE BUTTON_PLAY
329#define BUTTON_SAVE BUTTON_CUSTOM
330#define BUTTON_SAVE_NAME "CUSTOM"
331
317#else 332#else
318#error No keymap defined! 333#error No keymap defined!
319#endif 334#endif
diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c
index 92f647303a..d1016ac59b 100644
--- a/apps/plugins/solitaire.c
+++ b/apps/plugins/solitaire.c
@@ -322,6 +322,24 @@ static const struct plugin_api* rb;
322#elif (CONFIG_KEYPAD == COWOND2_PAD) 322#elif (CONFIG_KEYPAD == COWOND2_PAD)
323# define SOL_QUIT BUTTON_POWER 323# define SOL_QUIT BUTTON_POWER
324 324
325#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
326# define SOL_QUIT BUTTON_BACK
327# define SOL_UP BUTTON_UP
328# define SOL_DOWN BUTTON_DOWN
329# define SOL_LEFT BUTTON_LEFT
330# define SOL_RIGHT BUTTON_RIGHT
331# define SOL_MOVE_PRE BUTTON_SELECT
332# define SOL_MOVE (BUTTON_SELECT | BUTTON_REL)
333# define SOL_DRAW BUTTON_MENU
334# define SOL_REM2CUR (BUTTON_LEFT | BUTTON_SELECT)
335# define SOL_CUR2STACK (BUTTON_SELECT | BUTTON_REPEAT)
336# define SOL_REM2STACK (BUTTON_RIGHT | BUTTON_SELECT)
337# define HK_MOVE "PLAY"
338# define HK_DRAW "MENU"
339# define HK_REM2CUR "PLAY+LEFT"
340# define HK_CUR2STACK "PLAY.."
341# define HK_REM2STACK "PLAY+RIGHT"
342
325#else 343#else
326#error No keymap defined! 344#error No keymap defined!
327#endif 345#endif
diff --git a/apps/plugins/spacerocks.c b/apps/plugins/spacerocks.c
index be80a2d8d7..8fea76d41b 100644
--- a/apps/plugins/spacerocks.c
+++ b/apps/plugins/spacerocks.c
@@ -216,6 +216,19 @@ static const struct plugin_api* rb; /* global api struct pointer */
216#elif (CONFIG_KEYPAD == COWOND2_PAD) 216#elif (CONFIG_KEYPAD == COWOND2_PAD)
217#define AST_QUIT BUTTON_POWER 217#define AST_QUIT BUTTON_POWER
218 218
219#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
220#define AST_PAUSE BUTTON_SELECT
221#define AST_QUIT BUTTON_BACK
222#define AST_THRUST_REP BUTTON_UP | BUTTON_REPEAT
223#define AST_THRUST BUTTON_UP
224#define AST_HYPERSPACE BUTTON_DOWN
225#define AST_LEFT BUTTON_LEFT
226#define AST_LEFT_REP BUTTON_LEFT | BUTTON_REPEAT
227#define AST_RIGHT BUTTON_RIGHT
228#define AST_RIGHT_REP (BUTTON_RIGHT | BUTTON_REPEAT)
229#define AST_FIRE BUTTON_PLAY
230#define AST_FIRE_REP BUTTON_PLAY | BUTTON_REPEAT
231
219#else 232#else
220#error No keymap defined! 233#error No keymap defined!
221#endif 234#endif
diff --git a/apps/plugins/star.c b/apps/plugins/star.c
index 104a43301f..0ba6f73f8b 100644
--- a/apps/plugins/star.c
+++ b/apps/plugins/star.c
@@ -233,6 +233,19 @@ PLUGIN_HEADER
233#define STAR_QUIT_NAME "[POWER]" 233#define STAR_QUIT_NAME "[POWER]"
234#define STAR_MENU_RUN BUTTON_MENU 234#define STAR_MENU_RUN BUTTON_MENU
235 235
236#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
237
238#define STAR_QUIT BUTTON_BACK
239#define STAR_LEFT BUTTON_LEFT
240#define STAR_RIGHT BUTTON_RIGHT
241#define STAR_UP BUTTON_UP
242#define STAR_DOWN BUTTON_DOWN
243#define STAR_TOGGLE_CONTROL BUTTON_PLAY
244#define STAR_LEVEL_UP (BUTTON_CUSTOM | BUTTON_UP)
245#define STAR_LEVEL_DOWN (BUTTON_CUSTOM | BUTTON_DOWN)
246#define STAR_LEVEL_REPEAT (BUTTON_CUSTOM | BUTTON_RIGHT)
247#define STAR_MENU_RUN BUTTON_MENU
248
236#else 249#else
237#error No keymap defined! 250#error No keymap defined!
238#endif 251#endif
diff --git a/apps/plugins/starfield.c b/apps/plugins/starfield.c
index 6756539c98..b0555f722f 100644
--- a/apps/plugins/starfield.c
+++ b/apps/plugins/starfield.c
@@ -98,6 +98,13 @@ static const struct plugin_api* rb; /* global api struct pointer */
98#define STARFIELD_TOGGLE_COLOR BUTTON_MENU 98#define STARFIELD_TOGGLE_COLOR BUTTON_MENU
99#elif (CONFIG_KEYPAD == COWOND2_PAD) 99#elif (CONFIG_KEYPAD == COWOND2_PAD)
100#define STARFIELD_QUIT BUTTON_POWER 100#define STARFIELD_QUIT BUTTON_POWER
101#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
102#define STARFIELD_QUIT BUTTON_BACK
103#define STARFIELD_INCREASE_ZMOVE BUTTON_UP
104#define STARFIELD_DECREASE_ZMOVE BUTTON_DOWN
105#define STARFIELD_INCREASE_NB_STARS BUTTON_RIGHT
106#define STARFIELD_DECREASE_NB_STARS BUTTON_LEFT
107#define STARFIELD_TOGGLE_COLOR BUTTON_SELECT
101#endif 108#endif
102 109
103#ifdef HAVE_TOUCHSCREEN 110#ifdef HAVE_TOUCHSCREEN
diff --git a/apps/plugins/stats.c b/apps/plugins/stats.c
index ca9499befb..9dfd3ec96c 100644
--- a/apps/plugins/stats.c
+++ b/apps/plugins/stats.c
@@ -81,6 +81,9 @@ static bool abort;
81#elif CONFIG_KEYPAD == IAUDIO67_PAD 81#elif CONFIG_KEYPAD == IAUDIO67_PAD
82#define STATS_STOP BUTTON_POWER 82#define STATS_STOP BUTTON_POWER
83 83
84#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
85#define STATS_STOP BUTTON_BACK
86
84#else 87#else
85#error No keymap defined! 88#error No keymap defined!
86#endif 89#endif
diff --git a/apps/plugins/stopwatch.c b/apps/plugins/stopwatch.c
index 2803e52440..9725c6dc67 100644
--- a/apps/plugins/stopwatch.c
+++ b/apps/plugins/stopwatch.c
@@ -158,6 +158,13 @@ PLUGIN_HEADER
158#define STOPWATCH_SCROLL_UP BUTTON_VOLUP 158#define STOPWATCH_SCROLL_UP BUTTON_VOLUP
159#define STOPWATCH_SCROLL_DOWN BUTTON_VOLDOWN 159#define STOPWATCH_SCROLL_DOWN BUTTON_VOLDOWN
160#define STOPWATCH_RC_QUIT BUTTON_POWER 160#define STOPWATCH_RC_QUIT BUTTON_POWER
161#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
162#define STOPWATCH_QUIT BUTTON_BACK
163#define STOPWATCH_START_STOP BUTTON_PLAY
164#define STOPWATCH_RESET_TIMER BUTTON_CUSTOM
165#define STOPWATCH_LAP_TIMER BUTTON_SELECT
166#define STOPWATCH_SCROLL_UP BUTTON_UP
167#define STOPWATCH_SCROLL_DOWN BUTTON_DOWN
161#else 168#else
162#error No keymap defined! 169#error No keymap defined!
163#endif 170#endif
diff --git a/apps/plugins/sudoku/sudoku.h b/apps/plugins/sudoku/sudoku.h
index c33a8ea9c4..7fc6a4f09b 100644
--- a/apps/plugins/sudoku/sudoku.h
+++ b/apps/plugins/sudoku/sudoku.h
@@ -210,6 +210,16 @@
210#define SUDOKU_BUTTON_MENU BUTTON_MENU 210#define SUDOKU_BUTTON_MENU BUTTON_MENU
211#define SUDOKU_BUTTON_POSSIBLE BUTTON_VOLDOWN 211#define SUDOKU_BUTTON_POSSIBLE BUTTON_VOLDOWN
212 212
213#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
214#define SUDOKU_BUTTON_QUIT BUTTON_BACK
215#define SUDOKU_BUTTON_UP BUTTON_UP
216#define SUDOKU_BUTTON_DOWN BUTTON_DOWN
217#define SUDOKU_BUTTON_LEFT BUTTON_LEFT
218#define SUDOKU_BUTTON_RIGHT BUTTON_RIGHT
219#define SUDOKU_BUTTON_TOGGLE BUTTON_PLAY
220#define SUDOKU_BUTTON_MENU BUTTON_MENU
221#define SUDOKU_BUTTON_POSSIBLE BUTTON_SELECT
222
213#else 223#else
214#error No keymap defined! 224#error No keymap defined!
215#endif 225#endif
diff --git a/apps/plugins/superdom.c b/apps/plugins/superdom.c
index 088cdaea33..4a571491dd 100644
--- a/apps/plugins/superdom.c
+++ b/apps/plugins/superdom.c
@@ -132,6 +132,14 @@ char buf[255];
132#elif CONFIG_KEYPAD == COWOND2_PAD 132#elif CONFIG_KEYPAD == COWOND2_PAD
133#define SUPERDOM_CANCEL BUTTON_POWER 133#define SUPERDOM_CANCEL BUTTON_POWER
134 134
135#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
136#define SUPERDOM_OK BUTTON_PLAY
137#define SUPERDOM_UP BUTTON_UP
138#define SUPERDOM_DOWN BUTTON_DOWN
139#define SUPERDOM_LEFT BUTTON_LEFT
140#define SUPERDOM_RIGHT BUTTON_RIGHT
141#define SUPERDOM_CANCEL BUTTON_BACK
142
135#endif 143#endif
136 144
137#ifdef HAVE_TOUCHSCREEN 145#ifdef HAVE_TOUCHSCREEN
diff --git a/apps/plugins/viewer.c b/apps/plugins/viewer.c
index b75059ffc0..76c1d93c1c 100644
--- a/apps/plugins/viewer.c
+++ b/apps/plugins/viewer.c
@@ -280,6 +280,16 @@ PLUGIN_HEADER
280#define VIEWER_AUTOSCROLL BUTTON_PLAY 280#define VIEWER_AUTOSCROLL BUTTON_PLAY
281#define VIEWER_RC_QUIT BUTTON_STOP 281#define VIEWER_RC_QUIT BUTTON_STOP
282 282
283/* Creative Zen Vision:M keys */
284#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
285#define VIEWER_QUIT BUTTON_BACK
286#define VIEWER_PAGE_UP BUTTON_UP
287#define VIEWER_PAGE_DOWN BUTTON_DOWN
288#define VIEWER_SCREEN_LEFT BUTTON_LEFT
289#define VIEWER_SCREEN_RIGHT BUTTON_RIGHT
290#define VIEWER_MENU BUTTON_MENU
291#define VIEWER_AUTOSCROLL BUTTON_SELECT
292
283#else 293#else
284#error No keymap defined! 294#error No keymap defined!
285#endif 295#endif
diff --git a/apps/plugins/vu_meter.c b/apps/plugins/vu_meter.c
index 65556ab2ec..67ac024c62 100644
--- a/apps/plugins/vu_meter.c
+++ b/apps/plugins/vu_meter.c
@@ -222,6 +222,18 @@ PLUGIN_HEADER
222#define LABEL_QUIT "POWER" 222#define LABEL_QUIT "POWER"
223#define LABEL_MENU "MENU" 223#define LABEL_MENU "MENU"
224 224
225#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
226#define VUMETER_QUIT BUTTON_BACK
227#define VUMETER_HELP BUTTON_SELECT
228#define VUMETER_MENU BUTTON_MENU
229#define VUMETER_MENU_EXIT BUTTON_MENU
230#define VUMETER_UP BUTTON_UP
231#define VUMETER_DOWN BUTTON_DOWN
232#define LABEL_HELP "PLAY"
233#define LABEL_QUIT "BACK"
234#define LABEL_MENU "MENU"
235#define LABEL_VOLUME "UP/DOWN"
236
225#else 237#else
226#error No keymap defined! 238#error No keymap defined!
227#endif 239#endif
diff --git a/apps/plugins/wormlet.c b/apps/plugins/wormlet.c
index 91f8f05c53..534fc48d43 100644
--- a/apps/plugins/wormlet.c
+++ b/apps/plugins/wormlet.c
@@ -235,6 +235,19 @@ PLUGIN_HEADER
235 235
236#define BTN_QUIT BUTTON_POWER 236#define BTN_QUIT BUTTON_POWER
237 237
238#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
239
240#define BTN_DIR_UP BUTTON_UP
241#define BTN_DIR_DOWN BUTTON_DOWN
242#define BTN_DIR_LEFT BUTTON_LEFT
243#define BTN_DIR_RIGHT BUTTON_RIGHT
244#define BTN_STARTPAUSE BUTTON_SELECT
245#define BTN_QUIT BUTTON_BACK
246#define BTN_STOPRESET BUTTON_MENU
247
248#define PLAYERS_TEXT "Up/Down"
249#define WORMS_TEXT "Left/Right"
250
238#else 251#else
239#error No keymap defined! 252#error No keymap defined!
240#endif 253#endif
diff --git a/apps/plugins/xobox.c b/apps/plugins/xobox.c
index df6bb7d871..cd9c7f29ce 100644
--- a/apps/plugins/xobox.c
+++ b/apps/plugins/xobox.c
@@ -164,6 +164,15 @@ PLUGIN_HEADER
164#define DOWN BUTTON_PLAY 164#define DOWN BUTTON_PLAY
165#define PAUSE BUTTON_MENU 165#define PAUSE BUTTON_MENU
166 166
167#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
168
169#define QUIT BUTTON_BACK
170#define LEFT BUTTON_LEFT
171#define RIGHT BUTTON_RIGHT
172#define UP BUTTON_UP
173#define DOWN BUTTON_DOWN
174#define PAUSE BUTTON_SELECT
175
167#else 176#else
168#error No keymap defined! 177#error No keymap defined!
169#endif 178#endif
diff --git a/apps/plugins/zxbox/keymaps.h b/apps/plugins/zxbox/keymaps.h
index ae04649c72..d6b37f7bb7 100644
--- a/apps/plugins/zxbox/keymaps.h
+++ b/apps/plugins/zxbox/keymaps.h
@@ -130,6 +130,14 @@
130#define ZX_SELECT BUTTON_VOLUP 130#define ZX_SELECT BUTTON_VOLUP
131#define ZX_MENU BUTTON_MENU 131#define ZX_MENU BUTTON_MENU
132 132
133#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
134#define ZX_UP BUTTON_UP
135#define ZX_DOWN BUTTON_DOWN
136#define ZX_LEFT BUTTON_LEFT
137#define ZX_RIGHT BUTTON_RIGHT
138#define ZX_SELECT BUTTON_PLAY
139#define ZX_MENU BUTTON_MENU
140
133#else 141#else
134#error Keymap not defined! 142#error Keymap not defined!
135 143
diff --git a/apps/plugins/zxbox/zxbox_keyb.c b/apps/plugins/zxbox/zxbox_keyb.c
index 920cf8ce06..f7526e2334 100644
--- a/apps/plugins/zxbox/zxbox_keyb.c
+++ b/apps/plugins/zxbox/zxbox_keyb.c
@@ -145,6 +145,16 @@
145#define KBD_RIGHT BUTTON_RIGHT 145#define KBD_RIGHT BUTTON_RIGHT
146#define KBD_UP BUTTON_STOP 146#define KBD_UP BUTTON_STOP
147#define KBD_DOWN BUTTON_PLAY 147#define KBD_DOWN BUTTON_PLAY
148
149#elif CONFIG_KEYPAD == CREATIVEZVM_PAD
150
151#define KBD_SELECT BUTTON_PLAY
152#define KBD_ABORT BUTTON_BACK
153#define KBD_LEFT BUTTON_LEFT
154#define KBD_RIGHT BUTTON_RIGHT
155#define KBD_UP BUTTON_UP
156#define KBD_DOWN BUTTON_DOWN
157
148#endif 158#endif
149 159
150#ifdef HAVE_TOUCHSCREEN 160#ifdef HAVE_TOUCHSCREEN
diff --git a/firmware/test/fat/Makefile b/firmware/test/fat/Makefile
index 2bb5babe64..cb7d1a70ee 100644
--- a/firmware/test/fat/Makefile
+++ b/firmware/test/fat/Makefile
@@ -1,4 +1,10 @@
1FIRMWARE = ../.. 1FIRMWARE = ../..
2
3export BUILDDATE=$(shell date -u +'-DYEAR=%Y -DMONTH=%m -DDAY=%d')
4export CPU=arm
5export TARGET=-DIPOD_VIDEO
6export TARGET_INC=-I$(FIRMWARE)/target/arm/ipod/video -I$(FIRMWARE)/target/arm/ipod -I$(FIRMWARE)/target/arm
7
2DRIVERS = ../../drivers 8DRIVERS = ../../drivers
3EXPORT = ../../export 9EXPORT = ../../export
4 10
@@ -7,11 +13,12 @@ INCLUDE = -I$(EXPORT)
7RINCLUDE = -I$(FIRMWARE)/include 13RINCLUDE = -I$(FIRMWARE)/include
8DEFINES = -DTEST_FAT -DDEBUG -DCRT_DISPLAY -DDISK_WRITE -DHAVE_FAT16SUPPORT 14DEFINES = -DTEST_FAT -DDEBUG -DCRT_DISPLAY -DDISK_WRITE -DHAVE_FAT16SUPPORT
9 15
10CFLAGS = -g -Wall $(DEFINES) -I. $(INCLUDE) $(RINCLUDE) -DLITTLE_ENDIAN 16CFLAGS = -g -Wall $(DEFINES) -I. $(INCLUDE) $(RINCLUDE) $(BUILDDATE)
11SIMFLAGS = -g -Wall $(DEFINES) -I. $(INCLUDE) 17SIMFLAGS = -g -Wall $(DEFINES) -I. $(INCLUDE)
12 18
13TARGET = fat 19TARGET = fat
14 20
21
15$(TARGET): fat.o ata-sim.o main.o disk.o debug.o dir.o file.o ctype.o 22$(TARGET): fat.o ata-sim.o main.o disk.o debug.o dir.o file.o ctype.o
16 gcc -g -o fat $+ -lfl 23 gcc -g -o fat $+ -lfl
17 24
diff --git a/tools/configure b/tools/configure
index 53e596c882..7f02f97314 100755
--- a/tools/configure
+++ b/tools/configure
@@ -1494,7 +1494,7 @@ fi
1494 USE_ELF="yes" 1494 USE_ELF="yes"
1495 output="rockbox.zvm" 1495 output="rockbox.zvm"
1496 appextra="recorder:gui" 1496 appextra="recorder:gui"
1497 plugins="" 1497 plugins="yes"
1498 swcodec="yes" 1498 swcodec="yes"
1499 toolset=$ipodbitmaptools 1499 toolset=$ipodbitmaptools
1500 boottool="$rootdir/tools/scramble -creative=zvm -no-ciff" 1500 boottool="$rootdir/tools/scramble -creative=zvm -no-ciff"
@@ -1517,7 +1517,7 @@ fi
1517 USE_ELF="yes" 1517 USE_ELF="yes"
1518 output="rockbox.zvm60" 1518 output="rockbox.zvm60"
1519 appextra="recorder:gui" 1519 appextra="recorder:gui"
1520 plugins="" 1520 plugins="yes"
1521 swcodec="yes" 1521 swcodec="yes"
1522 toolset=$ipodbitmaptools 1522 toolset=$ipodbitmaptools
1523 boottool="$rootdir/tools/scramble -creative=zvm60" 1523 boottool="$rootdir/tools/scramble -creative=zvm60"