summaryrefslogtreecommitdiff
path: root/apps/plugins/maze.c
diff options
context:
space:
mode:
authorJohannes Schwarz <ubuntuxer@rockbox.org>2009-06-27 11:14:47 +0000
committerJohannes Schwarz <ubuntuxer@rockbox.org>2009-06-27 11:14:47 +0000
commit959d07df5c7790502ee51cbca905849e1f022546 (patch)
tree26ed59c87bd431e01b2d0310580556fc0bfd29bc /apps/plugins/maze.c
parent89eb14ea5623a984bc57befc1b8e581871e51699 (diff)
downloadrockbox-959d07df5c7790502ee51cbca905849e1f022546.zip
rockbox-959d07df5c7790502ee51cbca905849e1f022546.tar.gz
rockbox-959d07df5c7790502ee51cbca905849e1f022546.tar.bz2
rockbox-959d07df5c7790502ee51cbca905849e1f022546.tar.xz
FS#10294: reform the weird buttons in maze and mazezam for Fuze, E200 and ipod3G
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21529 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/maze.c')
-rw-r--r--apps/plugins/maze.c46
1 files changed, 32 insertions, 14 deletions
diff --git a/apps/plugins/maze.c b/apps/plugins/maze.c
index 881d804..307f14d 100644
--- a/apps/plugins/maze.c
+++ b/apps/plugins/maze.c
@@ -38,7 +38,6 @@ PLUGIN_HEADER
/* key assignments */
#if (CONFIG_KEYPAD == IPOD_4G_PAD) || \
- (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD)
# define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT)
# define MAZE_NEW_PRE BUTTON_SELECT
@@ -48,10 +47,34 @@ PLUGIN_HEADER
# define MAZE_LEFT BUTTON_LEFT
# define MAZE_UP BUTTON_MENU
# define MAZE_DOWN BUTTON_PLAY
-# define MAZE_RRIGHT (BUTTON_RIGHT | BUTTON_REPEAT)
-# define MAZE_RLEFT (BUTTON_LEFT | BUTTON_REPEAT)
-# define MAZE_RUP (BUTTON_MENU | BUTTON_REPEAT)
-# define MAZE_RDOWN (BUTTON_PLAY | BUTTON_REPEAT)
+
+#elif (CONFIG_KEYPAD == IPOD_3G_PAD)
+# define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT)
+# define MAZE_NEW_PRE BUTTON_SELECT
+# define MAZE_QUIT BUTTON_MENU
+# define MAZE_SOLVE (BUTTON_SELECT | BUTTON_PLAY)
+# define MAZE_RIGHT BUTTON_RIGHT
+# define MAZE_LEFT BUTTON_LEFT
+# define MAZE_UP BUTTON_SCROLL_BACK
+# define MAZE_DOWN BUTTON_SCROLL_FWD
+
+#elif (CONFIG_KEYPAD == SANSA_FUZE_PAD)
+# define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT)
+# define MAZE_QUIT (BUTTON_HOME | BUTTON_REPEAT)
+# define MAZE_SOLVE BUTTON_SELECT
+# define MAZE_RIGHT BUTTON_RIGHT
+# define MAZE_LEFT BUTTON_LEFT
+# define MAZE_UP BUTTON_UP
+# define MAZE_DOWN BUTTON_DOWN
+
+#elif (CONFIG_KEYPAD == SANSA_E200_PAD)
+# define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT)
+# define MAZE_QUIT BUTTON_POWER
+# define MAZE_SOLVE BUTTON_SELECT
+# define MAZE_RIGHT BUTTON_RIGHT
+# define MAZE_LEFT BUTTON_LEFT
+# define MAZE_UP BUTTON_UP
+# define MAZE_DOWN BUTTON_DOWN
#else
# include "lib/pluginlib_actions.h"
@@ -62,10 +85,6 @@ PLUGIN_HEADER
# define MAZE_LEFT PLA_LEFT
# define MAZE_UP PLA_UP
# define MAZE_DOWN PLA_DOWN
-# define MAZE_RRIGHT PLA_RIGHT_REPEAT
-# define MAZE_RLEFT PLA_LEFT_REPEAT
-# define MAZE_RUP PLA_UP_REPEAT
-# define MAZE_RDOWN PLA_DOWN_REPEAT
static const struct button_mapping *plugin_contexts[]
= {generic_directions, generic_actions};
@@ -548,25 +567,25 @@ enum plugin_status plugin_start(const void* parameter)
maze_draw(&maze, rb->screens[i]);
break;
case MAZE_UP:
- case MAZE_RUP:
+ case (MAZE_UP|BUTTON_REPEAT):
maze_move_player_up(&maze);
FOR_NB_SCREENS(i)
maze_draw(&maze, rb->screens[i]);
break;
case MAZE_RIGHT:
- case MAZE_RRIGHT:
+ case (MAZE_RIGHT|BUTTON_REPEAT):
maze_move_player_right(&maze);
FOR_NB_SCREENS(i)
maze_draw(&maze, rb->screens[i]);
break;
case MAZE_DOWN:
- case MAZE_RDOWN:
+ case (MAZE_DOWN|BUTTON_REPEAT):
maze_move_player_down(&maze);
FOR_NB_SCREENS(i)
maze_draw(&maze, rb->screens[i]);
break;
case MAZE_LEFT:
- case MAZE_RLEFT:
+ case (MAZE_LEFT|BUTTON_REPEAT):
maze_move_player_left(&maze);
FOR_NB_SCREENS(i)
maze_draw(&maze, rb->screens[i]);
@@ -584,7 +603,6 @@ enum plugin_status plugin_start(const void* parameter)
}
if( button != BUTTON_NONE )
lastbutton = button;
-
}
/* Turn on backlight timeout (revert to settings) */
backlight_use_settings(); /* backlight control in lib/helper.c */