summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorMarcin Bukat <marcin.bukat@gmail.com>2012-02-02 14:42:42 +0100
committerMarcin Bukat <marcin.bukat@gmail.com>2012-02-02 14:55:51 +0100
commit5863361fbfcef39c2b3d9a3b5520e7a770fa04cb (patch)
tree1ebff817c2bcb8558ae5253454b3043eda57997e /apps
parent3511435ee321b38c0d9d86d88d0c6e6a25a1c427 (diff)
downloadrockbox-5863361fbfcef39c2b3d9a3b5520e7a770fa04cb.tar.gz
rockbox-5863361fbfcef39c2b3d9a3b5520e7a770fa04cb.tar.bz2
rockbox-5863361fbfcef39c2b3d9a3b5520e7a770fa04cb.zip
MPIOs: keymap tweaks
Change-Id: Ic96900c83ffb90df4f6c68a26238f0543cba61cd
Diffstat (limited to 'apps')
-rw-r--r--apps/plugins/blackjack.c12
-rw-r--r--apps/plugins/bounce.c4
-rw-r--r--apps/plugins/brickmania.c2
-rw-r--r--apps/plugins/calculator.c3
-rw-r--r--apps/plugins/calendar.c4
-rw-r--r--apps/plugins/chessbox/chessbox_pgn.h2
-rw-r--r--apps/plugins/chessclock.c30
-rw-r--r--apps/plugins/chip8.c21
-rw-r--r--apps/plugins/chopper.c2
-rw-r--r--apps/plugins/cube.c2
-rw-r--r--apps/plugins/doom/i_video.c4
-rw-r--r--apps/plugins/flipit.c2
-rw-r--r--apps/plugins/fractals/fractal.h12
-rw-r--r--apps/plugins/goban/goban.h18
-rw-r--r--apps/plugins/imageviewer/imageviewer_button.h28
-rw-r--r--apps/plugins/invadrox.c8
-rw-r--r--apps/plugins/lib/pluginlib_actions.c2
-rw-r--r--apps/plugins/logo.c2
-rw-r--r--apps/plugins/midi/midiplay.c10
-rw-r--r--apps/plugins/minesweeper.c12
-rw-r--r--apps/plugins/oscilloscope.c2
-rw-r--r--apps/plugins/pegbox.c27
-rw-r--r--apps/plugins/pictureflow/pictureflow.c5
-rw-r--r--apps/plugins/pong.c10
-rw-r--r--apps/plugins/rockblox.c12
-rw-r--r--apps/plugins/rockblox1d.c4
-rw-r--r--apps/plugins/rockboy/rockboy.c10
-rw-r--r--apps/plugins/sliding_puzzle.c10
-rw-r--r--apps/plugins/snake.c20
-rw-r--r--apps/plugins/snake2.c10
-rw-r--r--apps/plugins/sokoban.c16
-rw-r--r--apps/plugins/solitaire.c24
-rw-r--r--apps/plugins/spacerocks.c10
-rw-r--r--apps/plugins/star.c22
-rw-r--r--apps/plugins/starfield.c2
-rw-r--r--apps/plugins/stopwatch.c2
-rw-r--r--apps/plugins/sudoku/sudoku.h16
-rw-r--r--apps/plugins/text_viewer/tv_button.h22
-rw-r--r--apps/plugins/vu_meter.c6
-rw-r--r--apps/plugins/wormlet.c16
-rw-r--r--apps/plugins/xobox.c6
-rw-r--r--apps/plugins/zxbox/keymaps.h2
42 files changed, 225 insertions, 209 deletions
diff --git a/apps/plugins/blackjack.c b/apps/plugins/blackjack.c
index ab4da37b0a..039acb0d39 100644
--- a/apps/plugins/blackjack.c
+++ b/apps/plugins/blackjack.c
@@ -437,13 +437,13 @@ enum {
#define BJACK_LEFT BUTTON_VOL_DOWN
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define BJACK_SELECT_NAME "FUNC"
-#define BJACK_STAY_NAME "VOL +"
-#define BJACK_RESUME_NAME "PLAY"
-#define BJACK_QUIT_NAME "REC+PLAY"
-#define BJACK_DOUBLE_NAME "VOL -"
+#define BJACK_SELECT_NAME "ENTER"
+#define BJACK_STAY_NAME "PLAY"
+#define BJACK_RESUME_NAME ""
+#define BJACK_QUIT_NAME "Long MENU"
+#define BJACK_DOUBLE_NAME "REC"
#define BJACK_SELECT BUTTON_ENTER
-#define BJACK_QUIT (BUTTON_REC|BUTTON_REPEAT)
+#define BJACK_QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define BJACK_STAY BUTTON_PLAY
#define BJACK_DOUBLEDOWN BUTTON_REC
#define BJACK_UP BUTTON_UP
diff --git a/apps/plugins/bounce.c b/apps/plugins/bounce.c
index 5bd81b7fed..21bec53fa7 100644
--- a/apps/plugins/bounce.c
+++ b/apps/plugins/bounce.c
@@ -227,8 +227,8 @@
#define BOUNCE_RIGHT BUTTON_FF
#define BOUNCE_UP BUTTON_UP
#define BOUNCE_DOWN BUTTON_DOWN
-#define BOUNCE_QUIT (BUTTON_REC | BUTTON_REPEAT)
-#define BOUNCE_MODE BUTTON_MENU
+#define BOUNCE_QUIT (BUTTON_MENU | BUTTON_REPEAT)
+#define BOUNCE_MODE BUTTON_PLAY
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
#define BOUNCE_LEFT BUTTON_LEFT
diff --git a/apps/plugins/brickmania.c b/apps/plugins/brickmania.c
index dd3903eb26..e741b56976 100644
--- a/apps/plugins/brickmania.c
+++ b/apps/plugins/brickmania.c
@@ -262,7 +262,7 @@ CONFIG_KEYPAD == SANSA_CONNECT_PAD
#define DOWN BUTTON_FF
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define QUIT (BUTTON_REC|BUTTON_REPEAT)
+#define QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define LEFT BUTTON_REW
#define RIGHT BUTTON_FF
#define SELECT BUTTON_ENTER
diff --git a/apps/plugins/calculator.c b/apps/plugins/calculator.c
index 77c7a5588d..b8d7d85e61 100644
--- a/apps/plugins/calculator.c
+++ b/apps/plugins/calculator.c
@@ -397,13 +397,14 @@ F3: equal to "="
#define CALCULATOR_QUIT (BUTTON_REC|BUTTON_PLAY)
#define CALCULATOR_INPUT BUTTON_FUNC
#define CALCULATOR_CALC BUTTON_PLAY
+#define CALCULATOR_CLEAR BUTTON_REC
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
#define CALCULATOR_LEFT BUTTON_REW
#define CALCULATOR_RIGHT BUTTON_FF
#define CALCULATOR_UP BUTTON_UP
#define CALCULATOR_DOWN BUTTON_DOWN
-#define CALCULATOR_QUIT (BUTTON_REC|BUTTON_REPEAT)
+#define CALCULATOR_QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define CALCULATOR_INPUT BUTTON_ENTER
#define CALCULATOR_CALC BUTTON_PLAY
#define CALCULATOR_CLEAR BUTTON_MENU
diff --git a/apps/plugins/calendar.c b/apps/plugins/calendar.c
index d498b97ffb..d0caef399f 100644
--- a/apps/plugins/calendar.c
+++ b/apps/plugins/calendar.c
@@ -279,14 +279,14 @@
#define CALENDAR_PREV_MONTH BUTTON_REC
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define CALENDAR_QUIT BUTTON_REC
+#define CALENDAR_QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define CALENDAR_SELECT BUTTON_ENTER
#define CALENDAR_NEXT_WEEK BUTTON_FF
#define CALENDAR_PREV_WEEK BUTTON_REW
#define CALENDAR_NEXT_DAY BUTTON_UP
#define CALENDAR_PREV_DAY BUTTON_DOWN
#define CALENDAR_NEXT_MONTH BUTTON_PLAY
-#define CALENDAR_PREV_MONTH BUTTON_MENU
+#define CALENDAR_PREV_MONTH BUTTON_REC
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
#define CALENDAR_QUIT BUTTON_POWER
diff --git a/apps/plugins/chessbox/chessbox_pgn.h b/apps/plugins/chessbox/chessbox_pgn.h
index 765e52ec8c..ec5e642e06 100644
--- a/apps/plugins/chessbox/chessbox_pgn.h
+++ b/apps/plugins/chessbox/chessbox_pgn.h
@@ -394,7 +394,7 @@
#define CB_RIGHT BUTTON_FF
#define CB_PLAY BUTTON_PLAY
#define CB_LEVEL BUTTON_REC
-#define CB_MENU (BUTTON_MENU | BUTTON_REPEAT)
+#define CB_MENU BUTTON_MENU
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
#define CB_SELECT BUTTON_SELECT
diff --git a/apps/plugins/chessclock.c b/apps/plugins/chessclock.c
index 94f069d0a0..64a851b6c0 100644
--- a/apps/plugins/chessclock.c
+++ b/apps/plugins/chessclock.c
@@ -287,24 +287,24 @@
#define CHC_SETTINGS_CANCEL BUTTON_CANCEL
#elif CONFIG_KEYPAD == MPIO_HD200_PAD
-#define CHC_QUIT (BUTTON_REC|BUTTON_PLAY)
-#define CHC_STARTSTOP BUTTON_PLAY
-#define CHC_RESET BUTTON_REW
-#define CHC_MENU BUTTON_FUNC
-#define CHC_SETTINGS_INC BUTTON_VOL_UP
-#define CHC_SETTINGS_DEC BUTTON_VOL_DOWN
-#define CHC_SETTINGS_OK BUTTON_FUNC
+#define CHC_QUIT (BUTTON_REC|BUTTON_PLAY)
+#define CHC_STARTSTOP BUTTON_PLAY
+#define CHC_RESET BUTTON_REW
+#define CHC_MENU (BUTTON_FUNC|BUTTON_REPEAT)
+#define CHC_SETTINGS_INC BUTTON_VOL_UP
+#define CHC_SETTINGS_DEC BUTTON_VOL_DOWN
+#define CHC_SETTINGS_OK BUTTON_FUNC
#define CHC_SETTINGS_CANCEL BUTTON_REC
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define CHC_QUIT (BUTTON_REC|BUTTON_REPEAT)
-#define CHC_STARTSTOP BUTTON_PLAY
-#define CHC_RESET BUTTON_REW
-#define CHC_MENU BUTTON_MENU
-#define CHC_SETTINGS_INC BUTTON_UP
-#define CHC_SETTINGS_DEC BUTTON_DOWN
-#define CHC_SETTINGS_OK BUTTON_ENTER
-#define CHC_SETTINGS_CANCEL BUTTON_MENU
+#define CHC_QUIT (BUTTON_MENU|BUTTON_REPEAT)
+#define CHC_STARTSTOP BUTTON_PLAY
+#define CHC_RESET BUTTON_REW
+#define CHC_MENU BUTTON_MENU
+#define CHC_SETTINGS_INC BUTTON_UP
+#define CHC_SETTINGS_DEC BUTTON_DOWN
+#define CHC_SETTINGS_OK BUTTON_ENTER
+#define CHC_SETTINGS_CANCEL BUTTON_REC
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
#define CHC_QUIT BUTTON_POWER
diff --git a/apps/plugins/chip8.c b/apps/plugins/chip8.c
index 470a8e4c89..0e1b9c5213 100644
--- a/apps/plugins/chip8.c
+++ b/apps/plugins/chip8.c
@@ -1152,20 +1152,25 @@ CONFIG_KEYPAD == MROBE500_PAD
#elif CONFIG_KEYPAD == MPIO_HD200_PAD
#define CHIP8_OFF (BUTTON_REC|BUTTON_PLAY)
-#define CHIP8_KEY2 BUTTON_REW
-#define CHIP8_KEY4 BUTTON_FF
+#define CHIP8_KEY1 BUTTON_REW
+#define CHIP8_KEY2 BUTTON_FF
+#define CHIP8_KEY3 BUTTON_FUNC
+#define CHIP8_KEY4 BUTTON_REC
#define CHIP8_KEY5 BUTTON_PLAY
#define CHIP8_KEY6 BUTTON_VOL_DOWN
#define CHIP8_KEY8 BUTTON_VOL_UP
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define CHIP8_OFF (BUTTON_REC|BUTTON_REPEAT)
-#define CHIP8_KEY2 BUTTON_REW
-#define CHIP8_KEY4 BUTTON_FF
-#define CHIP8_KEY5 BUTTON_PLAY
-#define CHIP8_KEY6 BUTTON_DOWN
-#define CHIP8_KEY8 BUTTON_UP
+#define CHIP8_OFF (BUTTON_MENU|BUTTON_REPEAT)
+#define CHIP8_KEY1 BUTTON_REW
+#define CHIP8_KEY2 BUTTON_FF
+#define CHIP8_KEY3 BUTTON_MENU
+#define CHIP8_KEY4 BUTTON_ENTER
+#define CHIP8_KEY5 BUTTON_REC
+#define CHIP8_KEY6 BUTTON_PLAY
+#define CHIP8_KEY7 BUTTON_UP
+#define CHIP8_KEY8 BUTTON_DOWN
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
diff --git a/apps/plugins/chopper.c b/apps/plugins/chopper.c
index b2c3653aeb..29c91407c2 100644
--- a/apps/plugins/chopper.c
+++ b/apps/plugins/chopper.c
@@ -171,7 +171,7 @@ CONFIG_KEYPAD == MROBE500_PAD
#define ACTIONTEXT "FUNC"
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define QUIT BUTTON_REC
+#define QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define ACTION BUTTON_ENTER
#define ACTIONTEXT "ENTER"
diff --git a/apps/plugins/cube.c b/apps/plugins/cube.c
index cecb10e1f2..1e80bda63a 100644
--- a/apps/plugins/cube.c
+++ b/apps/plugins/cube.c
@@ -300,7 +300,7 @@
#define CUBE_HIGHSPEED BUTTON_FUNC
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define CUBE_QUIT BUTTON_REC
+#define CUBE_QUIT (BUTTON_MENU | BUTTON_REPEAT)
#define CUBE_NEXT BUTTON_FF
#define CUBE_PREV BUTTON_REW
#define CUBE_INC BUTTON_UP
diff --git a/apps/plugins/doom/i_video.c b/apps/plugins/doom/i_video.c
index 9009acc67f..eda611ffd2 100644
--- a/apps/plugins/doom/i_video.c
+++ b/apps/plugins/doom/i_video.c
@@ -401,8 +401,8 @@ void I_ShutdownGraphics(void)
#define DOOMBUTTON_SHOOT BUTTON_ENTER
#define DOOMBUTTON_OPEN BUTTON_MENU
#define DOOMBUTTON_ESC BUTTON_REC
-#define DOOMBUTTON_ENTER BUTTON_PLAY
-#define DOOMBUTTON_WEAPON (BUTTON_PLAY|BUTTON_REPEAT)
+#define DOOMBUTTON_ENTER (BUTTON_PLAY|BUTTON_REPEAT)
+#define DOOMBUTTON_WEAPON BUTTON_PLAY
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
#define DOOMBUTTON_UP BUTTON_UP
#define DOOMBUTTON_DOWN BUTTON_DOWN
diff --git a/apps/plugins/flipit.c b/apps/plugins/flipit.c
index da5a9e8c6b..2408bde5d6 100644
--- a/apps/plugins/flipit.c
+++ b/apps/plugins/flipit.c
@@ -350,7 +350,7 @@
#define FLIPIT_RIGHT BUTTON_FF
#define FLIPIT_UP BUTTON_UP
#define FLIPIT_DOWN BUTTON_DOWN
-#define FLIPIT_QUIT (BUTTON_REC|BUTTON_REPEAT)
+#define FLIPIT_QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define FLIPIT_SHUFFLE BUTTON_PLAY
#define FLIPIT_SOLVE BUTTON_MENU
#define FLIPIT_STEP_BY_STEP BUTTON_REC
diff --git a/apps/plugins/fractals/fractal.h b/apps/plugins/fractals/fractal.h
index 0d1aff3078..027f4698dc 100644
--- a/apps/plugins/fractals/fractal.h
+++ b/apps/plugins/fractals/fractal.h
@@ -343,16 +343,16 @@
#define FRACTAL_RESET BUTTON_REC
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define FRACTAL_QUIT BUTTON_REC
+#define FRACTAL_QUIT BUTTON_MENU
#define FRACTAL_UP BUTTON_UP
#define FRACTAL_DOWN BUTTON_DOWN
-#define FRACTAL_LEFT BUTTON_MENU
-#define FRACTAL_RIGHT BUTTON_ENTER
-#define FRACTAL_ZOOM_IN (BUTTON_PLAY|BUTTON_UP)
-#define FRACTAL_ZOOM_OUT (BUTTON_PLAY|BUTTON_DOWN)
+#define FRACTAL_LEFT BUTTON_REW
+#define FRACTAL_RIGHT BUTTON_FF
+#define FRACTAL_ZOOM_IN (BUTTON_PLAY | BUTTON_UP)
+#define FRACTAL_ZOOM_OUT (BUTTON_PLAY | BUTTON_DOWN)
#define FRACTAL_PRECISION_INC (BUTTON_PLAY | BUTTON_FF)
#define FRACTAL_PRECISION_DEC (BUTTON_PLAY | BUTTON_REW)
-#define FRACTAL_RESET (BUTTON_PLAY | BUTTON_REC)
+#define FRACTAL_RESET BUTTON_REC
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
#define FRACTAL_QUIT BUTTON_POWER
diff --git a/apps/plugins/goban/goban.h b/apps/plugins/goban/goban.h
index 20940d74f0..bb2c980f12 100644
--- a/apps/plugins/goban/goban.h
+++ b/apps/plugins/goban/goban.h
@@ -339,20 +339,24 @@
#define GBN_BUTTON_DOWN BUTTON_FF
#define GBN_BUTTON_LEFT BUTTON_VOL_DOWN
#define GBN_BUTTON_RIGHT BUTTON_VOL_UP
-#define GBN_BUTTON_RETREAT BUTTON_REC
-#define GBN_BUTTON_ADVANCE BUTTON_PLAY
-#define GBN_BUTTON_PLAY BUTTON_FUNC | BUTTON_REL
-#define GBN_BUTTON_MENU BUTTON_FUNC | BUTTON_REPEAT
+#define GBN_BUTTON_RETREAT (BUTTON_REC | BUTTON_REW)
+#define GBN_BUTTON_ADVANCE (BUTTON_REC | BUTTON_FF)
+#define GBN_BUTTON_PLAY (BUTTON_FUNC | BUTTON_REL)
+#define GBN_BUTTON_MENU BUTTON_PLAY
+#define GBN_BUTTON_CONTEXT (BUTTON_FUNC | BUTTON_REPEATE)
+#define GBN_BUTTON_NEXT_VAR BUTTON_REC
#elif (CONFIG_KEYPAD == MPIO_HD300_PAD)
#define GBN_BUTTON_UP BUTTON_UP
#define GBN_BUTTON_DOWN BUTTON_DOWN
#define GBN_BUTTON_LEFT BUTTON_REW
#define GBN_BUTTON_RIGHT BUTTON_FF
-#define GBN_BUTTON_RETREAT BUTTON_REC
-#define GBN_BUTTON_ADVANCE BUTTON_PLAY
-#define GBN_BUTTON_PLAY BUTTON_ENTER
+#define GBN_BUTTON_RETREAT (BUTTON_REC | BUTTON_REW)
+#define GBN_BUTTON_ADVANCE (BUTTON_REC | BUTTON_FF)
+#define GBN_BUTTON_PLAY (BUTTON_ENTER | BUTTON_REL)
+#define GBN_BUTTON_CONTEXT (BUTTON_ENTER | BUTTON_REPEAT)
#define GBN_BUTTON_MENU BUTTON_MENU
+#define GBN_BUTTON_NEXT_VAR BUTTON_REC
#elif (CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD)
#define GBN_BUTTON_UP BUTTON_UP
diff --git a/apps/plugins/imageviewer/imageviewer_button.h b/apps/plugins/imageviewer/imageviewer_button.h
index 10d239922e..37f5f404b6 100644
--- a/apps/plugins/imageviewer/imageviewer_button.h
+++ b/apps/plugins/imageviewer/imageviewer_button.h
@@ -329,28 +329,28 @@
#define IMGVIEW_QUIT BUTTON_CANCEL
#elif CONFIG_KEYPAD == MPIO_HD200_PAD
-#define IMGVIEW_ZOOM_IN (BUTTON_REC|BUTTON_VOL_UP)
-#define IMGVIEW_ZOOM_OUT (BUTTON_REC|BUTTON_VOL_DOWN)
-#define IMGVIEW_UP BUTTON_REW
-#define IMGVIEW_DOWN BUTTON_FF
+#define IMGVIEW_ZOOM_IN BUTTON_PLAY
+#define IMGVIEW_ZOOM_OUT BUTTON_REC
+#define IMGVIEW_UP (BUTTON_REC | BUTTON_REW)
+#define IMGVIEW_DOWN (BUTTON_REC | BUTTON_FF)
#define IMGVIEW_LEFT BUTTON_VOL_DOWN
#define IMGVIEW_RIGHT BUTTON_VOL_UP
-#define IMGVIEW_NEXT (BUTTON_REC | BUTTON_FF)
-#define IMGVIEW_PREVIOUS (BUTTON_REC | BUTTON_REW)
+#define IMGVIEW_NEXT BUTTON_FF
+#define IMGVIEW_PREVIOUS BUTTON_REW
#define IMGVIEW_MENU BUTTON_FUNC
#define IMGVIEW_QUIT (BUTTON_REC | BUTTON_PLAY)
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define IMGVIEW_ZOOM_IN (BUTTON_ENTER | BUTTON_UP)
-#define IMGVIEW_ZOOM_OUT (BUTTON_ENTER | BUTTON_DOWN)
-#define IMGVIEW_UP BUTTON_UP
-#define IMGVIEW_DOWN BUTTON_DOWN
+#define IMGVIEW_ZOOM_IN (BUTTON_PLAY | BUTTON_REL)
+#define IMGVIEW_ZOOM_OUT BUTTON_REC
+#define IMGVIEW_UP (BUTTON_PLAY | BUTTON_UP)
+#define IMGVIEW_DOWN (BUTTON_PLAY | BUTTON_DOWN)
#define IMGVIEW_LEFT BUTTON_REW
#define IMGVIEW_RIGHT BUTTON_FF
-#define IMGVIEW_NEXT (BUTTON_FF | BUTTON_ENTER)
-#define IMGVIEW_PREVIOUS (BUTTON_REW | BUTTON_ENTER)
-#define IMGVIEW_MENU (BUTTON_ENTER | BUTTON_REPEAT)
-#define IMGVIEW_QUIT BUTTON_REC
+#define IMGVIEW_NEXT BUTTON_DOWN
+#define IMGVIEW_PREVIOUS BUTTON_UP
+#define IMGVIEW_MENU BUTTON_ENTER
+#define IMGVIEW_QUIT (BUTTON_MENU | BUTTON_REPEAT)
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
#define IMGVIEW_ZOOM_IN BUTTON_VOL_UP
diff --git a/apps/plugins/invadrox.c b/apps/plugins/invadrox.c
index c52208d3c6..0cbbe9ddb6 100644
--- a/apps/plugins/invadrox.c
+++ b/apps/plugins/invadrox.c
@@ -217,10 +217,10 @@ CONFIG_KEYPAD == MROBE500_PAD
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define QUIT BUTTON_REC
-#define LEFT BUTTON_MENU
-#define RIGHT BUTTON_ENTER
-#define FIRE BUTTON_PLAY
+#define QUIT BUTTON_MENU
+#define LEFT BUTTON_REW
+#define RIGHT BUTTON_FF
+#define FIRE BUTTON_ENTER
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
diff --git a/apps/plugins/lib/pluginlib_actions.c b/apps/plugins/lib/pluginlib_actions.c
index be148bd533..7f8c11a34e 100644
--- a/apps/plugins/lib/pluginlib_actions.c
+++ b/apps/plugins/lib/pluginlib_actions.c
@@ -397,7 +397,7 @@ const struct button_mapping pla_main_ctx[] =
{PLA_SELECT_REPEAT, BUTTON_FUNC|BUTTON_REPEAT, BUTTON_NONE},
#elif (CONFIG_KEYPAD == MPIO_HD300_PAD)
{PLA_CANCEL, BUTTON_MENU, BUTTON_NONE},
- {PLA_EXIT, BUTTON_REC|BUTTON_REPEAT, BUTTON_NONE},
+ {PLA_EXIT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE},
{PLA_SELECT, BUTTON_ENTER, BUTTON_NONE},
{PLA_SELECT_REL, BUTTON_ENTER|BUTTON_REL, BUTTON_ENTER},
{PLA_SELECT_REPEAT, BUTTON_ENTER|BUTTON_REPEAT, BUTTON_NONE},
diff --git a/apps/plugins/logo.c b/apps/plugins/logo.c
index be163f566e..14360b4845 100644
--- a/apps/plugins/logo.c
+++ b/apps/plugins/logo.c
@@ -210,7 +210,7 @@ const unsigned char rockbox16x7[] = {
#define LP_INC_Y BUTTON_FF
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define LP_QUIT (BUTTON_REC|BUTTON_REPEAT)
+#define LP_QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define LP_DEC_X BUTTON_REW
#define LP_INC_X BUTTON_FF
#define LP_DEC_Y BUTTON_DOWN
diff --git a/apps/plugins/midi/midiplay.c b/apps/plugins/midi/midiplay.c
index ace7290a12..6ef3439ffd 100644
--- a/apps/plugins/midi/midiplay.c
+++ b/apps/plugins/midi/midiplay.c
@@ -203,14 +203,14 @@
#elif CONFIG_KEYPAD == MPIO_HD200_PAD
#define BTN_QUIT (BUTTON_REC | BUTTON_PLAY)
-#define BTN_RIGHT BUTTON_VOL_DOWN
-#define BTN_LEFT BUTTON_VOL_UP
-#define BTN_UP BUTTON_REW
-#define BTN_DOWN BUTTON_FF
+#define BTN_RIGHT BUTTON_FF
+#define BTN_LEFT BUTTON_REW
+#define BTN_UP BUTTON_VOL_UP
+#define BTN_DOWN BUTTON_VOL_DOWN
#define BTN_PLAY BUTTON_PLAY
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define BTN_QUIT (BUTTON_REC | BUTTON_REPEAT)
+#define BTN_QUIT (BUTTON_MENU | BUTTON_REPEAT)
#define BTN_RIGHT BUTTON_FF
#define BTN_LEFT BUTTON_REW
#define BTN_UP BUTTON_UP
diff --git a/apps/plugins/minesweeper.c b/apps/plugins/minesweeper.c
index e0da928b02..9c9b949bed 100644
--- a/apps/plugins/minesweeper.c
+++ b/apps/plugins/minesweeper.c
@@ -278,14 +278,14 @@ CONFIG_KEYPAD == MROBE500_PAD
# define MINESWP_INFO BUTTON_REC
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-# define MINESWP_LEFT BUTTON_MENU
-# define MINESWP_RIGHT BUTTON_ENTER
+# define MINESWP_LEFT BUTTON_REW
+# define MINESWP_RIGHT BUTTON_FF
# define MINESWP_UP BUTTON_UP
# define MINESWP_DOWN BUTTON_DOWN
-# define MINESWP_QUIT BUTTON_REC
-# define MINESWP_TOGGLE BUTTON_PLAY
-# define MINESWP_DISCOVER BUTTON_FF
-# define MINESWP_INFO BUTTON_REW
+# define MINESWP_QUIT (BUTTON_MENU|BUTTON_REPEAT)
+# define MINESWP_TOGGLE BUTTON_ENTER
+# define MINESWP_DISCOVER BUTTON_PLAY
+# define MINESWP_INFO (BUTTON_MENU|BUTTON_REL)
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
# define MINESWP_LEFT BUTTON_LEFT
diff --git a/apps/plugins/oscilloscope.c b/apps/plugins/oscilloscope.c
index 0b1687da5c..0a0164ed13 100644
--- a/apps/plugins/oscilloscope.c
+++ b/apps/plugins/oscilloscope.c
@@ -310,7 +310,7 @@
#define OSCILLOSCOPE_VOL_DOWN BUTTON_VOL_DOWN
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define OSCILLOSCOPE_QUIT (BUTTON_REC | BUTTON_REPEAT)
+#define OSCILLOSCOPE_QUIT (BUTTON_MENU | BUTTON_REPEAT)
#define OSCILLOSCOPE_DRAWMODE BUTTON_ENTER
#define OSCILLOSCOPE_ADVMODE BUTTON_REC
#define OSCILLOSCOPE_ORIENTATION BUTTON_MENU
diff --git a/apps/plugins/pegbox.c b/apps/plugins/pegbox.c
index 479f7c5ec2..9f68fc3e31 100644
--- a/apps/plugins/pegbox.c
+++ b/apps/plugins/pegbox.c
@@ -455,22 +455,23 @@ CONFIG_KEYPAD == MROBE500_PAD
#define SELECT_TEXT "FUNC"
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define PEGBOX_QUIT BUTTON_REC
-#define PEGBOX_RESTART (BUTTON_MENU | BUTTON_REC)
-#define PEGBOX_LVL_UP BUTTON_REW
-#define PEGBOX_LVL_DOWN BUTTON_FF
+#define PEGBOX_SAVE (BUTTON_ENTER | BUTTON_REPEAT)
+#define PEGBOX_QUIT (BUTTON_MENU | BUTTON_REPEAT)
+#define PEGBOX_RESTART (BUTTON_MENU | BUTTON_REL)
+#define PEGBOX_LVL_UP BUTTON_PLAY
+#define PEGBOX_LVL_DOWN BUTTON_REC
#define PEGBOX_UP BUTTON_UP
#define PEGBOX_DOWN BUTTON_DOWN
-#define PEGBOX_RIGHT BUTTON_ENTER
-#define PEGBOX_LEFT BUTTON_MENU
-#define PEGBOX_SELECT BUTTON_PLAY
+#define PEGBOX_RIGHT BUTTON_FF
+#define PEGBOX_LEFT BUTTON_REW
+#define PEGBOX_SELECT (BUTTON_ENTER | BUTTON_REL)
-#define SAVE_TEXT "PLAY + FUNC"
-#define QUIT_TEXT "REC + PLAY"
-#define RESTART_TEXT "REC"
-#define LVL_UP_TEXT "REW"
-#define LVL_DOWN_TEXT "FF"
-#define SELECT_TEXT "FUNC"
+#define SAVE_TEXT "Long ENTER"
+#define QUIT_TEXT "Long MENU"
+#define RESTART_TEXT "MENU"
+#define LVL_UP_TEXT "PLAY"
+#define LVL_DOWN_TEXT "REC"
+#define SELECT_TEXT "ENTER"
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
#define PEGBOX_QUIT BUTTON_POWER
diff --git a/apps/plugins/pictureflow/pictureflow.c b/apps/plugins/pictureflow/pictureflow.c
index 224dc81667..ef18f53ffe 100644
--- a/apps/plugins/pictureflow/pictureflow.c
+++ b/apps/plugins/pictureflow/pictureflow.c
@@ -61,7 +61,7 @@
#define PF_TRACKLIST (LAST_ACTION_PLACEHOLDER + 2)
#if defined(HAVE_SCROLLWHEEL) || CONFIG_KEYPAD == IRIVER_H10_PAD || \
- CONFIG_KEYPAD == SAMSUNG_YH_PAD
+ CONFIG_KEYPAD == SAMSUNG_YH_PAD || CONFIG_KEYPAD == MPIO_HD300_PAD
#define USE_CORE_PREVNEXT
#endif
@@ -137,7 +137,8 @@ const struct button_mapping pf_context_buttons[] =
{PF_QUIT, BUTTON_EQ, BUTTON_NONE},
#elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
- || (CONFIG_KEYPAD == IPOD_4G_PAD)
+ || (CONFIG_KEYPAD == IPOD_4G_PAD) \
+ || (CONFIG_KEYPAD == MPIO_HD300_PAD)
{PF_QUIT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU},
#elif CONFIG_KEYPAD == LOGIK_DAX_PAD
{PF_QUIT, BUTTON_POWERPLAY|BUTTON_REPEAT, BUTTON_POWERPLAY},
diff --git a/apps/plugins/pong.c b/apps/plugins/pong.c
index 430b688f1f..00bd99c156 100644
--- a/apps/plugins/pong.c
+++ b/apps/plugins/pong.c
@@ -231,11 +231,11 @@ CONFIG_KEYPAD == MROBE500_PAD
#define PONG_RIGHT_DOWN BUTTON_VOL_DOWN
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define PONG_QUIT (BUTTON_REC|BUTTON_REPEAT)
-#define PONG_LEFT_UP BUTTON_FF
-#define PONG_LEFT_DOWN BUTTON_REW
-#define PONG_RIGHT_UP BUTTON_UP
-#define PONG_RIGHT_DOWN BUTTON_DOWN
+#define PONG_QUIT (BUTTON_MENU|BUTTON_REPEAT)
+#define PONG_LEFT_UP BUTTON_REW
+#define PONG_LEFT_DOWN BUTTON_REC
+#define PONG_RIGHT_UP BUTTON_FF
+#define PONG_RIGHT_DOWN BUTTON_PLAY
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
#define PONG_QUIT BUTTON_POWER
diff --git a/apps/plugins/rockblox.c b/apps/plugins/rockblox.c
index c23c6b11cb..273c45c920 100644
--- a/apps/plugins/rockblox.c
+++ b/apps/plugins/rockblox.c
@@ -350,12 +350,12 @@
#define ROCKBLOX_RESTART BUTTON_REC
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define ROCKBLOX_OFF (BUTTON_REC|BUTTON_REPEAT)
-#define ROCKBLOX_ROTATE_CCW BUTTON_REW
-#define ROCKBLOX_ROTATE_CW BUTTON_FF
-#define ROCKBLOX_DOWN BUTTON_DOWN
-#define ROCKBLOX_LEFT BUTTON_MENU
-#define ROCKBLOX_RIGHT BUTTON_ENTER
+#define ROCKBLOX_OFF (BUTTON_MENU|BUTTON_REPEAT)
+#define ROCKBLOX_ROTATE_CCW BUTTON_UP
+#define ROCKBLOX_ROTATE_CW BUTTON_DOWN
+#define ROCKBLOX_DOWN (BUTTON_ENTER | BUTTON_REL)
+#define ROCKBLOX_LEFT BUTTON_REW
+#define ROCKBLOX_RIGHT BUTTON_FF
#define ROCKBLOX_DROP BUTTON_PLAY
#define ROCKBLOX_RESTART BUTTON_REC
diff --git a/apps/plugins/rockblox1d.c b/apps/plugins/rockblox1d.c
index 5b6e812abf..7a50030596 100644
--- a/apps/plugins/rockblox1d.c
+++ b/apps/plugins/rockblox1d.c
@@ -123,8 +123,8 @@
#define ONEDROCKBLOX_QUIT (BUTTON_REC | BUTTON_PLAY)
#elif (CONFIG_KEYPAD == MPIO_HD300_PAD)
-#define ONEDROCKBLOX_DOWN BUTTON_DOWN
-#define ONEDROCKBLOX_QUIT (BUTTON_REC | BUTTON_REPEAT)
+#define ONEDROCKBLOX_DOWN BUTTON_ENTER
+#define ONEDROCKBLOX_QUIT BUTTON_MENU
#elif (CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD)
#define ONEDROCKBLOX_DOWN BUTTON_DOWN
diff --git a/apps/plugins/rockboy/rockboy.c b/apps/plugins/rockboy/rockboy.c
index bc73abee92..ec2135af46 100644
--- a/apps/plugins/rockboy/rockboy.c
+++ b/apps/plugins/rockboy/rockboy.c
@@ -312,11 +312,11 @@ static void setoptions (void)
options.LEFT = BUTTON_REW;
options.RIGHT = BUTTON_FF;
- options.A = BUTTON_MENU;
- options.B = BUTTON_ENTER;
- options.START = BUTTON_PLAY;
- options.SELECT = (BUTTON_ENTER | BUTTON_REPEAT);
- options.MENU = (BUTTON_MENU | BUTTON_REPEAT);
+ options.A = BUTTON_PLAY;
+ options.B = BUTTON_REC;
+ options.START = (BUTTON_PLAY | BUTTON_REPEAT);
+ options.SELECT = BUTTON_ENTER;
+ options.MENU = BUTTON_MENU;
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
options.UP = BUTTON_UP;
diff --git a/apps/plugins/sliding_puzzle.c b/apps/plugins/sliding_puzzle.c
index a176f75c91..fe30ba2594 100644
--- a/apps/plugins/sliding_puzzle.c
+++ b/apps/plugins/sliding_puzzle.c
@@ -238,11 +238,11 @@ CONFIG_KEYPAD == MROBE500_PAD
#define PUZZLE_PICTURE BUTTON_PLAY
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define PUZZLE_QUIT (BUTTON_REC | BUTTON_REPEAT)
-#define PUZZLE_LEFT BUTTON_REW
-#define PUZZLE_RIGHT BUTTON_FF
-#define PUZZLE_UP BUTTON_UP
-#define PUZZLE_DOWN BUTTON_DOWN
+#define PUZZLE_QUIT (BUTTON_MENU | BUTTON_REPEAT)
+#define PUZZLE_LEFT BUTTON_FF
+#define PUZZLE_RIGHT BUTTON_REW
+#define PUZZLE_UP BUTTON_DOWN
+#define PUZZLE_DOWN BUTTON_UP
#define PUZZLE_SHUFFLE BUTTON_ENTER
#define PUZZLE_PICTURE BUTTON_PLAY
diff --git a/apps/plugins/snake.c b/apps/plugins/snake.c
index a20376742f..21d5977a99 100644
--- a/apps/plugins/snake.c
+++ b/apps/plugins/snake.c
@@ -212,19 +212,19 @@ dir is the current direction of the snake - 0=up, 1=right, 2=down, 3=left;
#define SNAKE_PLAYPAUSE BUTTON_PLAY
#elif CONFIG_KEYPAD == MPIO_HD200_PAD
-#define SNAKE_QUIT (BUTTON_REC|BUTTON_PLAY)
-#define SNAKE_LEFT BUTTON_VOL_DOWN
-#define SNAKE_RIGHT BUTTON_VOL_UP
-#define SNAKE_UP BUTTON_REW
-#define SNAKE_DOWN BUTTON_FF
+#define SNAKE_QUIT (BUTTON_REC|BUTTON_PLAY)
+#define SNAKE_LEFT BUTTON_VOL_DOWN
+#define SNAKE_RIGHT BUTTON_VOL_UP
+#define SNAKE_UP BUTTON_REW
+#define SNAKE_DOWN BUTTON_FF
#define SNAKE_PLAYPAUSE BUTTON_PLAY
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define SNAKE_QUIT (BUTTON_REC|BUTTON_REPEAT)
-#define SNAKE_LEFT BUTTON_REW
-#define SNAKE_RIGHT BUTTON_FF
-#define SNAKE_UP BUTTON_UP
-#define SNAKE_DOWN BUTTON_DOWN
+#define SNAKE_QUIT (BUTTON_MENU|BUTTON_REPEAT)
+#define SNAKE_LEFT BUTTON_REW
+#define SNAKE_RIGHT BUTTON_FF
+#define SNAKE_UP BUTTON_UP
+#define SNAKE_DOWN BUTTON_DOWN
#define SNAKE_PLAYPAUSE BUTTON_PLAY
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
diff --git a/apps/plugins/snake2.c b/apps/plugins/snake2.c
index bd0257d2be..6e82b3ffe2 100644
--- a/apps/plugins/snake2.c
+++ b/apps/plugins/snake2.c
@@ -330,11 +330,11 @@ CONFIG_KEYPAD == MROBE500_PAD
#define SNAKE2_PLAYPAUSE_TEXT "Play"
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define SNAKE2_LEFT BUTTON_MENU
-#define SNAKE2_RIGHT BUTTON_ENTER
-#define SNAKE2_UP BUTTON_UP
-#define SNAKE2_DOWN BUTTON_DOWN
-#define SNAKE2_QUIT (BUTTON_REC|BUTTON_REPEAT)
+#define SNAKE2_LEFT BUTTON_REW
+#define SNAKE2_RIGHT BUTTON_FF
+#define SNAKE2_UP BUTTON_UP
+#define SNAKE2_DOWN BUTTON_DOWN
+#define SNAKE2_QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define SNAKE2_PLAYPAUSE BUTTON_PLAY
#define SNAKE2_PLAYPAUSE_TEXT "Play"
diff --git a/apps/plugins/sokoban.c b/apps/plugins/sokoban.c
index 942b101d4c..4d3bab2b6c 100644
--- a/apps/plugins/sokoban.c
+++ b/apps/plugins/sokoban.c
@@ -486,15 +486,15 @@
#define SOKOBAN_RIGHT BUTTON_FF
#define SOKOBAN_UP BUTTON_UP
#define SOKOBAN_DOWN BUTTON_DOWN
-#define SOKOBAN_MENU BUTTON_MENU
-#define SOKOBAN_UNDO (BUTTON_PLAY | BUTTON_REW)
-#define SOKOBAN_REDO (BUTTON_PLAY | BUTTON_FF)
-#define SOKOBAN_LEVEL_DOWN (BUTTON_PLAY | BUTTON_DOWN)
-#define SOKOBAN_LEVEL_REPEAT BUTTON_REC
-#define SOKOBAN_LEVEL_UP (BUTTON_PLAY | BUTTON_UP)
+#define SOKOBAN_MENU (BUTTON_MENU | BUTTON_REPEAT)
+#define SOKOBAN_UNDO BUTTON_REC
+#define SOKOBAN_REDO BUTTON_PLAY
+#define SOKOBAN_LEVEL_DOWN (BUTTON_PLAY | BUTTON_REW)
+#define SOKOBAN_LEVEL_REPEAT (BUTTON_PLAY | BUTTON_ENTER)
+#define SOKOBAN_LEVEL_UP (BUTTON_PLAY | BUTTON_FF)
#define SOKOBAN_PAUSE BUTTON_PLAY
-#define BUTTON_SAVE (BUTTON_PLAY|BUTTON_ENTER)
-#define BUTTON_SAVE_NAME "PLAY+ENTER"
+#define BUTTON_SAVE (BUTTON_ENTER | BUTTON_REL)
+#define BUTTON_SAVE_NAME "ENTER"
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
#define SOKOBAN_LEFT BUTTON_LEFT
diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c
index a1e8b7694b..e9671dd62d 100644
--- a/apps/plugins/solitaire.c
+++ b/apps/plugins/solitaire.c
@@ -490,21 +490,21 @@ CONFIG_KEYPAD == MROBE500_PAD
# define HK_REM2STACK "PLAY...."
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-# define SOL_QUIT BUTTON_REC
+# define SOL_QUIT (BUTTON_MENU | BUTTON_REPEAT)
# define SOL_UP BUTTON_UP
# define SOL_DOWN BUTTON_DOWN
-# define SOL_LEFT BUTTON_MENU
-# define SOL_RIGHT BUTTON_ENTER
-# define SOL_MOVE_PRE BUTTON_REW
-# define SOL_MOVE BUTTON_FF
-# define SOL_DRAW (BUTTON_ENTER | BUTTON_PLAY)
-# define SOL_REM2CUR (BUTTON_MENU | BUTTON_REPEAT)
-# define SOL_CUR2STACK BUTTON_PLAY
+# define SOL_LEFT BUTTON_REW
+# define SOL_RIGHT BUTTON_FF
+# define SOL_MOVE_PRE BUTTON_ENTER
+# define SOL_MOVE (BUTTON_ENTER | BUTTON_REL)
+# define SOL_DRAW BUTTON_MENU
+# define SOL_REM2CUR (BUTTON_PLAY | BUTTON_REL)
+# define SOL_CUR2STACK BUTTON_REC
# define SOL_REM2STACK (BUTTON_PLAY | BUTTON_REPEAT)
-# define HK_MOVE "FF"
-# define HK_DRAW "ENTER + PLAY"
-# define HK_REM2CUR "EMNU.."
-# define HK_CUR2STACK "PLAY"
+# define HK_MOVE "ENTER"
+# define HK_DRAW "MENU"
+# define HK_REM2CUR "PLAY"
+# define HK_CUR2STACK "ENTER..."
# define HK_REM2STACK "PLAY...."
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
diff --git a/apps/plugins/spacerocks.c b/apps/plugins/spacerocks.c
index 946d97d075..5be527f045 100644
--- a/apps/plugins/spacerocks.c
+++ b/apps/plugins/spacerocks.c
@@ -250,12 +250,12 @@
#elif (CONFIG_KEYPAD == MPIO_HD300_PAD)
-#define AST_PAUSE BUTTON_PLAY
-#define AST_QUIT (BUTTON_REC|BUTTON_REPEAT)
-#define AST_THRUST BUTTON_MENU
+#define AST_PAUSE (BUTTON_PLAY|BUTTON_REL)
+#define AST_QUIT (BUTTON_MENU|BUTTON_REPEAT)
+#define AST_THRUST BUTTON_REC
#define AST_HYPERSPACE (BUTTON_PLAY|BUTTON_REPEAT)
-#define AST_LEFT BUTTON_REW
-#define AST_RIGHT BUTTON_FF
+#define AST_LEFT BUTTON_UP
+#define AST_RIGHT BUTTON_DOWN
#define AST_FIRE BUTTON_ENTER
#elif (CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD)
diff --git a/apps/plugins/star.c b/apps/plugins/star.c
index cf04e02edc..80170e667f 100644
--- a/apps/plugins/star.c
+++ b/apps/plugins/star.c
@@ -430,21 +430,21 @@
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define STAR_QUIT (BUTTON_REC | BUTTON_REPEAT)
+#define STAR_QUIT (BUTTON_MENU | BUTTON_REPEAT)
#define STAR_LEFT BUTTON_REW
#define STAR_RIGHT BUTTON_FF
#define STAR_UP BUTTON_UP
#define STAR_DOWN BUTTON_DOWN
-#define STAR_TOGGLE_CONTROL_PRE BUTTON_MENU
-#define STAR_TOGGLE_CONTROL (BUTTON_MENU | BUTTON_REL)
-#define STAR_LEVEL_UP BUTTON_PLAY
-#define STAR_LEVEL_DOWN BUTTON_REC
-#define STAR_LEVEL_REPEAT (BUTTON_MENU | BUTTON_REPEAT)
-#define STAR_TOGGLE_CONTROL_NAME "MENU"
-#define STAR_QUIT_NAME "REC LONG"
-#define STAR_LEVEL_UP_NAME "PLAY"
-#define STAR_LEVEL_DOWN_NAME "REC"
-#define STAR_LEVEL_REPEAT_NAME "MENU LONG"
+#define STAR_TOGGLE_CONTROL_PRE BUTTON_ENTER
+#define STAR_TOGGLE_CONTROL (BUTTON_ENTER | BUTTON_REL)
+#define STAR_LEVEL_UP (BUTTON_PLAY | BUTTON_FF)
+#define STAR_LEVEL_DOWN (BUTTON_PLAY | BUTTON_REW)
+#define STAR_LEVEL_REPEAT (BUTTON_PLAY | BUTTON_REPEAT)
+#define STAR_TOGGLE_CONTROL_NAME "ENTER"
+#define STAR_QUIT_NAME "LONG MENU"
+#define STAR_LEVEL_UP_NAME "PLAY + FF"
+#define STAR_LEVEL_DOWN_NAME "PLAY + REW"
+#define STAR_LEVEL_REPEAT_NAME "LONG PLAY"
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
diff --git a/apps/plugins/starfield.c b/apps/plugins/starfield.c
index c996da9234..b410c4134a 100644
--- a/apps/plugins/starfield.c
+++ b/apps/plugins/starfield.c
@@ -174,7 +174,7 @@
#define STARFIELD_TOGGLE_COLOR BUTTON_PLAY
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define STARFIELD_QUIT (BUTTON_REC|BUTTON_REPEAT)
+#define STARFIELD_QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define STARFIELD_INCREASE_ZMOVE BUTTON_UP
#define STARFIELD_DECREASE_ZMOVE BUTTON_DOWN
#define STARFIELD_INCREASE_NB_STARS BUTTON_FF
diff --git a/apps/plugins/stopwatch.c b/apps/plugins/stopwatch.c
index fd33bb7c03..a676816a50 100644
--- a/apps/plugins/stopwatch.c
+++ b/apps/plugins/stopwatch.c
@@ -240,7 +240,7 @@
#define STOPWATCH_SCROLL_DOWN BUTTON_VOL_DOWN
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define STOPWATCH_QUIT (BUTTON_REC|BUTTON_REPEAT)
+#define STOPWATCH_QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define STOPWATCH_START_STOP BUTTON_PLAY
#define STOPWATCH_RESET_TIMER BUTTON_REW
#define STOPWATCH_LAP_TIMER BUTTON_FF
diff --git a/apps/plugins/sudoku/sudoku.h b/apps/plugins/sudoku/sudoku.h
index 07147185ae..655d8e36fe 100644
--- a/apps/plugins/sudoku/sudoku.h
+++ b/apps/plugins/sudoku/sudoku.h
@@ -292,21 +292,23 @@
#define SUDOKU_BUTTON_POSSIBLE BUTTON_PLAY
#elif CONFIG_KEYPAD == MPIO_HD200_PAD
+#define SUDOKU_BUTTON_QUIT (BUTTON_REC | BUTTON_PLAY)
#define SUDOKU_BUTTON_MENU BUTTON_REC
+#define SUDOKU_BUTTON_UP BUTTON_FF
+#define SUDOKU_BUTTON_DOWN BUTTON_REW
#define SUDOKU_BUTTON_LEFT BUTTON_VOL_DOWN
#define SUDOKU_BUTTON_RIGHT BUTTON_VOL_UP
-#define SUDOKU_BUTTON_CHANGEDIR BUTTON_FUNC
-#define SUDOKU_BUTTON_TOGGLE BUTTON_FF
-#define SUDOKU_BUTTON_TOGGLEBACK BUTTON_REW
+#define SUDOKU_BUTTON_TOGGLE BUTTON_FUNC
#define SUDOKU_BUTTON_POSSIBLE BUTTON_PLAY
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define SUDOKU_BUTTON_MENU BUTTON_MENU
+#define SUDOKU_BUTTON_QUIT (BUTTON_MENU | BUTTON_REPEAT)
+#define SUDOKU_BUTTON_MENU (BUTTON_MENU | BUTTON_REL)
+#define SUDOKU_BUTTON_UP BUTTON_UP
+#define SUDOKU_BUTTON_DOWN BUTTON_DOWN
#define SUDOKU_BUTTON_LEFT BUTTON_REW
#define SUDOKU_BUTTON_RIGHT BUTTON_FF
-#define SUDOKU_BUTTON_CHANGEDIR BUTTON_ENTER
-#define SUDOKU_BUTTON_TOGGLE BUTTON_UP
-#define SUDOKU_BUTTON_TOGGLEBACK BUTTON_DOWN
+#define SUDOKU_BUTTON_TOGGLE BUTTON_ENTER
#define SUDOKU_BUTTON_POSSIBLE BUTTON_PLAY
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
diff --git a/apps/plugins/text_viewer/tv_button.h b/apps/plugins/text_viewer/tv_button.h
index d81bed3a40..e8526e78b5 100644
--- a/apps/plugins/text_viewer/tv_button.h
+++ b/apps/plugins/text_viewer/tv_button.h
@@ -394,8 +394,8 @@
/* MPIO HD200 keys */
#elif CONFIG_KEYPAD == MPIO_HD200_PAD
#define TV_QUIT (BUTTON_REC | BUTTON_PLAY)
-#define TV_SCROLL_UP BUTTON_REW
-#define TV_SCROLL_DOWN BUTTON_FF
+#define TV_SCROLL_UP BUTTON_REW
+#define TV_SCROLL_DOWN BUTTON_FF
#define TV_SCREEN_LEFT BUTTON_VOL_DOWN
#define TV_SCREEN_RIGHT BUTTON_VOL_UP
#define TV_MENU BUTTON_FUNC
@@ -404,14 +404,16 @@
/* MPIO HD300 keys */
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define TV_QUIT BUTTON_REC
-#define TV_SCROLL_UP BUTTON_UP
-#define TV_SCROLL_DOWN BUTTON_DOWN
-#define TV_SCREEN_LEFT BUTTON_REW
-#define TV_SCREEN_RIGHT BUTTON_FF
-#define TV_MENU (BUTTON_MENU | BUTTON_REPEAT)
-#define TV_AUTOSCROLL BUTTON_ENTER
-#define TV_BOOKMARK BUTTON_PLAY
+#define TV_QUIT (BUTTON_MENU | BUTTON_REPEAT)
+#define TV_SCROLL_UP BUTTON_REW
+#define TV_SCROLL_DOWN BUTTON_FF
+#define TV_LINE_UP BUTTON_UP
+#define TV_LINE_DOWN BUTTON_DOWN
+#define TV_SCREEN_LEFT (BUTTON_REW | BUTTON_PLAY)
+#define TV_SCREEN_RIGHT (BUTTON_FF | BUTTON_PLAY)
+#define TV_MENU (BUTTON_MENU | BUTTON_REL)
+#define TV_AUTOSCROLL BUTTON_REC
+#define TV_BOOKMARK BUTTON_ENTER
/* Sansa Fuze+ keys */
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
diff --git a/apps/plugins/vu_meter.c b/apps/plugins/vu_meter.c
index 7ca7b43726..a1c96707a1 100644
--- a/apps/plugins/vu_meter.c
+++ b/apps/plugins/vu_meter.c
@@ -301,18 +301,18 @@
#define VUMETER_UP BUTTON_VOL_UP
#define VUMETER_DOWN BUTTON_VOL_DOWN
#define LABEL_HELP "PLAY"
-#define LABEL_QUIT "MENU"
+#define LABEL_QUIT "REC+PLAY"
#define LABEL_MENU "FUNC"
#define LABEL_VOLUME "UP/DOWN"
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define VUMETER_QUIT (BUTTON_REC|BUTTON_REPEAT)
+#define VUMETER_QUIT (BUTTON_MENU|BUTTON_REPEAT)
#define VUMETER_HELP BUTTON_PLAY
#define VUMETER_MENU BUTTON_MENU
#define VUMETER_UP BUTTON_UP
#define VUMETER_DOWN BUTTON_DOWN
#define LABEL_HELP "PLAY"
-#define LABEL_QUIT "REC..."
+#define LABEL_QUIT "LONG MENU"
#define LABEL_MENU "MENU"
#define LABEL_VOLUME "UP/DOWN"
diff --git a/apps/plugins/wormlet.c b/apps/plugins/wormlet.c
index f1834aade5..28f854ba69 100644
--- a/apps/plugins/wormlet.c
+++ b/apps/plugins/wormlet.c
@@ -283,10 +283,10 @@ CONFIG_KEYPAD == MROBE500_PAD
#elif CONFIG_KEYPAD == MPIO_HD200_PAD
-#define BTN_DIR_UP BUTTON_REC
-#define BTN_DIR_DOWN BUTTON_PLAY
-#define BTN_DIR_LEFT BUTTON_REW
-#define BTN_DIR_RIGHT BUTTON_FF
+#define BTN_DIR_UP BUTTON_REW
+#define BTN_DIR_DOWN BUTTON_FF
+#define BTN_DIR_LEFT BUTTON_VOL_DOWN
+#define BTN_DIR_RIGHT BUTTON_VOL_UP
#define BTN_STARTPAUSE BUTTON_FUNC
#define BTN_QUIT (BUTTON_REC|BUTTON_PLAY)
#define BTN_STOPRESET (BUTTON_FUNC|BUTTON_REPEAT)
@@ -295,11 +295,11 @@ CONFIG_KEYPAD == MROBE500_PAD
#define BTN_DIR_UP BUTTON_UP
#define BTN_DIR_DOWN BUTTON_DOWN
-#define BTN_DIR_LEFT BUTTON_MENU
-#define BTN_DIR_RIGHT BUTTON_ENTER
+#define BTN_DIR_LEFT BUTTON_REW
+#define BTN_DIR_RIGHT BUTTON_FF
#define BTN_STARTPAUSE BUTTON_PLAY
-#define BTN_QUIT BUTTON_REC
-#define BTN_STOPRESET (BUTTON_MENU | BUTTON_REPEAT)
+#define BTN_QUIT (BUTTON_MENU | BUTTON_REPEAT)
+#define BTN_STOPRESET (BUTTON_PLAY | BUTTON_REPEAT)
#elif CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD
diff --git a/apps/plugins/xobox.c b/apps/plugins/xobox.c
index 30fd5fde13..344e3d60a8 100644
--- a/apps/plugins/xobox.c
+++ b/apps/plugins/xobox.c
@@ -252,9 +252,9 @@ CONFIG_KEYPAD == MROBE500_PAD
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define QUIT BUTTON_REC
-#define LEFT BUTTON_MENU
-#define RIGHT BUTTON_ENTER
+#define QUIT (BUTTON_MENU | BUTTON_REPEAT)
+#define LEFT BUTTON_REW
+#define RIGHT BUTTON_FF
#define UP BUTTON_UP
#define DOWN BUTTON_DOWN
#define PAUSE BUTTON_PLAY
diff --git a/apps/plugins/zxbox/keymaps.h b/apps/plugins/zxbox/keymaps.h
index 831c6d8e69..9075ae7bbb 100644
--- a/apps/plugins/zxbox/keymaps.h
+++ b/apps/plugins/zxbox/keymaps.h
@@ -211,7 +211,7 @@
#elif CONFIG_KEYPAD == MPIO_HD300_PAD
-#define ZX_MENU (BUTTON_REC|BUTTON_REPEAT)
+#define ZX_MENU (BUTTON_MENU|BUTTON_REPEAT)
#define ZX_UP BUTTON_UP
#define ZX_DOWN BUTTON_DOWN
#define ZX_SELECT BUTTON_ENTER