plugins: Improve usability of iPod keymaps

- Reduce need to press multiple buttons at
the same time to quit a plugin

- Have "Menu" be default way to quit plugins or
to access plugin menu

- Fall back to (Long) "Select" or Long "Menu"
in cases where Menu button isn't available
(e.g. in ImageViewer and many games)

out of scope:
boomshine, lua_scripts, Rockpaint,
Doom, Duke3D, Pacbox, Quake,
Sgt-Puzzles, Wolf3D, XWorld,
Minesweeper, Pixel Painter, Spacerocks

Change-Id: I6d4dc7174695fe4b8ee9cbaccb21bdbfe6af5c48
This commit is contained in:
Christian Soffke 2022-12-18 21:13:15 +01:00
parent 52f59f637d
commit faa2cb9942
94 changed files with 439 additions and 149 deletions

View file

@ -91,9 +91,16 @@ static const int BACKGROUND_Y = (BASE_Y-MIN_SPACE);
#define KEY_DOWN PLA_DOWN #define KEY_DOWN PLA_DOWN
#define KEY_LEFT PLA_LEFT #define KEY_LEFT PLA_LEFT
#define KEY_RIGHT PLA_RIGHT #define KEY_RIGHT PLA_RIGHT
#define KEY_EXIT PLA_CANCEL
#define KEY_UNDO PLA_SELECT #define KEY_UNDO PLA_SELECT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define KEY_EXIT PLA_SELECT_REPEAT
#else
#define KEY_EXIT PLA_CANCEL
#endif
/* notice how "color" is spelled :P */ /* notice how "color" is spelled :P */
#ifdef HAVE_LCD_COLOR #ifdef HAVE_LCD_COLOR

View file

@ -138,7 +138,13 @@ enum plugin_status plugin_start(const void* parameter)
while(!quit) { while(!quit) {
button = get_button(); button = get_button();
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
if (button == PLA_EXIT || button == PLA_CANCEL || button == PLA_UP)
#else
if (button == PLA_EXIT || button == PLA_CANCEL) if (button == PLA_EXIT || button == PLA_CANCEL)
#endif
quit = true; quit = true;
FOR_NB_SCREENS(i) { FOR_NB_SCREENS(i) {

View file

@ -34,10 +34,6 @@
static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
/* We set button maping with PLA */ /* We set button maping with PLA */
#define BOUNCE_UP PLA_UP
#define BOUNCE_UP_REPEAT PLA_UP_REPEAT
#define BOUNCE_DOWN PLA_DOWN
#define BOUNCE_DOWN_REPEAT PLA_DOWN_REPEAT
#ifdef HAVE_SCROLLWHEEL #ifdef HAVE_SCROLLWHEEL
#define BOUNCE_LEFT PLA_SCROLL_BACK #define BOUNCE_LEFT PLA_SCROLL_BACK
@ -52,7 +48,22 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
#endif #endif
#define BOUNCE_QUIT PLA_EXIT #define BOUNCE_QUIT PLA_EXIT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define BOUNCE_QUIT2 PLA_UP
#define BOUNCE_DOWN PLA_LEFT
#define BOUNCE_DOWN_REPEAT PLA_LEFT_REPEAT
#define BOUNCE_UP PLA_RIGHT
#define BOUNCE_UP_REPEAT PLA_RIGHT_REPEAT
#else
#define BOUNCE_QUIT2 PLA_CANCEL #define BOUNCE_QUIT2 PLA_CANCEL
#define BOUNCE_DOWN PLA_DOWN
#define BOUNCE_DOWN_REPEAT PLA_DOWN_REPEAT
#define BOUNCE_UP PLA_UP
#define BOUNCE_UP_REPEAT PLA_UP_REPEAT
#endif
#define BOUNCE_MODE PLA_SELECT #define BOUNCE_MODE PLA_SELECT
#define LETTER_WIDTH 11 #define LETTER_WIDTH 11
@ -471,6 +482,10 @@ enum plugin_status plugin_start(const void* parameter)
#if (CONFIG_KEYPAD == SAMSUNG_YH92X_PAD) || \ #if (CONFIG_KEYPAD == SAMSUNG_YH92X_PAD) || \
(CONFIG_KEYPAD == SAMSUNG_YH820_PAD) (CONFIG_KEYPAD == SAMSUNG_YH820_PAD)
"[Rew] to stop"; "[Rew] to stop";
#elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
"[Menu] to stop";
#else #else
"[Off] to stop"; "[Off] to stop";
#endif #endif

View file

@ -79,7 +79,6 @@ enum {
#define ANGLE_STEP_REP 6 #define ANGLE_STEP_REP 6
#define BUBBLES_QUIT1 PLA_EXIT #define BUBBLES_QUIT1 PLA_EXIT
#define BUBBLES_QUIT2 PLA_CANCEL
/* these are better off shooting with up */ /* these are better off shooting with up */
#if (CONFIG_KEYPAD == SAMSUNG_YH820_PAD) \ #if (CONFIG_KEYPAD == SAMSUNG_YH820_PAD) \
@ -92,10 +91,19 @@ enum {
#define BUBBLES_FIRE PLA_UP #define BUBBLES_FIRE PLA_UP
#define BUBBLES_FIRE_REPEAT PLA_UP_REPEAT #define BUBBLES_FIRE_REPEAT PLA_UP_REPEAT
#define BUBBLES_PAUSE PLA_SELECT #define BUBBLES_PAUSE PLA_SELECT
#define BUBBLES_QUIT2 PLA_CANCEL
#elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define BUBBLES_FIRE PLA_SELECT
#define BUBBLES_FIRE_REPEAT PLA_SELECT_REPEAT
#define BUBBLES_PAUSE PLA_DOWN
#define BUBBLES_QUIT2 PLA_UP
#else #else
#define BUBBLES_FIRE PLA_SELECT #define BUBBLES_FIRE PLA_SELECT
#define BUBBLES_FIRE_REPEAT PLA_SELECT_REPEAT #define BUBBLES_FIRE_REPEAT PLA_SELECT_REPEAT
#define BUBBLES_PAUSE PLA_UP #define BUBBLES_PAUSE PLA_UP
#define BUBBLES_QUIT2 PLA_CANCEL
#endif #endif
/* external bitmaps */ /* external bitmaps */

View file

@ -39,14 +39,12 @@
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define CALENDAR_QUIT (BUTTON_SELECT|BUTTON_MENU) #define CALENDAR_QUIT (BUTTON_MENU|BUTTON_REL)
#define CALENDAR_SELECT (BUTTON_SELECT|BUTTON_REL) #define CALENDAR_SELECT (BUTTON_SELECT|BUTTON_REL)
#define CALENDAR_NEXT_WEEK BUTTON_SCROLL_FWD #define CALENDAR_NEXT_WEEK BUTTON_SCROLL_FWD
#define CALENDAR_PREV_WEEK BUTTON_SCROLL_BACK #define CALENDAR_PREV_WEEK BUTTON_SCROLL_BACK
#define CALENDAR_NEXT_DAY BUTTON_RIGHT #define CALENDAR_NEXT_DAY BUTTON_RIGHT
#define CALENDAR_PREV_DAY BUTTON_LEFT #define CALENDAR_PREV_DAY BUTTON_LEFT
#define CALENDAR_NEXT_MONTH BUTTON_PLAY
#define CALENDAR_PREV_MONTH (BUTTON_MENU|BUTTON_REL)
#elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD)
#define CALENDAR_QUIT BUTTON_POWER #define CALENDAR_QUIT BUTTON_POWER
@ -1095,17 +1093,18 @@ enum plugin_status plugin_start(const void* parameter)
case CALENDAR_QUIT: case CALENDAR_QUIT:
exit = true; exit = true;
break; break;
#ifdef CALENDAR_NEXT_MONTH
case CALENDAR_NEXT_MONTH: case CALENDAR_NEXT_MONTH:
case CALENDAR_NEXT_MONTH | BUTTON_REPEAT: case CALENDAR_NEXT_MONTH | BUTTON_REPEAT:
next_month(&shown, 0); next_month(&shown, 0);
break; break;
#endif
#ifdef CALENDAR_PREV_MONTH
case CALENDAR_PREV_MONTH: case CALENDAR_PREV_MONTH:
case CALENDAR_PREV_MONTH | BUTTON_REPEAT: case CALENDAR_PREV_MONTH | BUTTON_REPEAT:
prev_month(&shown, 0); prev_month(&shown, 0);
break; break;
#endif
case CALENDAR_NEXT_WEEK: case CALENDAR_NEXT_WEEK:
case CALENDAR_NEXT_WEEK | BUTTON_REPEAT: case CALENDAR_NEXT_WEEK | BUTTON_REPEAT:
next_day(&shown, 7); next_day(&shown, 7);

View file

@ -33,7 +33,7 @@
#define CB_PLAY (BUTTON_SELECT | BUTTON_PLAY) #define CB_PLAY (BUTTON_SELECT | BUTTON_PLAY)
#define CB_LEVEL (BUTTON_SELECT | BUTTON_RIGHT) #define CB_LEVEL (BUTTON_SELECT | BUTTON_RIGHT)
#define CB_RESTART (BUTTON_SELECT | BUTTON_LEFT) #define CB_RESTART (BUTTON_SELECT | BUTTON_LEFT)
#define CB_MENU (BUTTON_SELECT | BUTTON_MENU) #define CB_MENU (BUTTON_SELECT | BUTTON_REPEAT)
#define CB_SCROLL_UP (BUTTON_SCROLL_FWD|BUTTON_REPEAT) #define CB_SCROLL_UP (BUTTON_SCROLL_FWD|BUTTON_REPEAT)
#define CB_SCROLL_DOWN (BUTTON_SCROLL_BACK|BUTTON_REPEAT) #define CB_SCROLL_DOWN (BUTTON_SCROLL_BACK|BUTTON_REPEAT)
#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT) #define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT)

View file

@ -66,9 +66,7 @@
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define CLIX_BUTTON_QUIT (BUTTON_SELECT | BUTTON_MENU) #define CLIX_BUTTON_QUIT BUTTON_MENU
#define CLIX_BUTTON_UP BUTTON_MENU
#define CLIX_BUTTON_DOWN BUTTON_PLAY
#define CLIX_BUTTON_SCROLL_FWD BUTTON_SCROLL_FWD #define CLIX_BUTTON_SCROLL_FWD BUTTON_SCROLL_FWD
#define CLIX_BUTTON_SCROLL_BACK BUTTON_SCROLL_BACK #define CLIX_BUTTON_SCROLL_BACK BUTTON_SCROLL_BACK
#define CLIX_BUTTON_CLICK BUTTON_SELECT #define CLIX_BUTTON_CLICK BUTTON_SELECT
@ -921,8 +919,10 @@ static int clix_handle_game(struct clix_game_state_t* state)
case CLIX_BUTTON_SCROLL_BACK: case CLIX_BUTTON_SCROLL_BACK:
case CLIX_BUTTON_SCROLL_BACK|BUTTON_REPEAT: case CLIX_BUTTON_SCROLL_BACK|BUTTON_REPEAT:
#endif #endif
#ifdef CLIX_BUTTON_UP
case CLIX_BUTTON_UP: case CLIX_BUTTON_UP:
case CLIX_BUTTON_UP|BUTTON_REPEAT: case CLIX_BUTTON_UP|BUTTON_REPEAT:
#endif
if( state->y == 0 || if( state->y == 0 ||
state->board[ XYPOS( state->x, state->y - 1)] == state->board[ XYPOS( state->x, state->y - 1)] ==
CC_BLACK CC_BLACK
@ -938,8 +938,10 @@ static int clix_handle_game(struct clix_game_state_t* state)
case CLIX_BUTTON_SCROLL_FWD: case CLIX_BUTTON_SCROLL_FWD:
case CLIX_BUTTON_SCROLL_FWD|BUTTON_REPEAT: case CLIX_BUTTON_SCROLL_FWD|BUTTON_REPEAT:
#endif #endif
#ifdef CLIX_BUTTON_DOWN
case CLIX_BUTTON_DOWN: case CLIX_BUTTON_DOWN:
case CLIX_BUTTON_DOWN|BUTTON_REPEAT: case CLIX_BUTTON_DOWN|BUTTON_REPEAT:
#endif
if( state->y == (BOARD_HEIGHT - 1)) if( state->y == (BOARD_HEIGHT - 1))
state->y = 0; state->y = 0;
else else

View file

@ -44,13 +44,19 @@ const struct button_mapping* plugin_contexts[]={
#define ACTION_COUNTER_TOGGLE PLA_SELECT #define ACTION_COUNTER_TOGGLE PLA_SELECT
#define ACTION_COUNTER_RESET PLA_SELECT_REPEAT #define ACTION_COUNTER_RESET PLA_SELECT_REPEAT
#define ACTION_MENU PLA_CANCEL
#define ACTION_MODE_NEXT PLA_RIGHT #define ACTION_MODE_NEXT PLA_RIGHT
#define ACTION_MODE_NEXT_REPEAT PLA_RIGHT_REPEAT #define ACTION_MODE_NEXT_REPEAT PLA_RIGHT_REPEAT
#define ACTION_MODE_PREV PLA_LEFT #define ACTION_MODE_PREV PLA_LEFT
#define ACTION_MODE_PREV_REPEAT PLA_LEFT_REPEAT #define ACTION_MODE_PREV_REPEAT PLA_LEFT_REPEAT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define ACTION_MENU PLA_UP
#else
#define ACTION_MENU PLA_CANCEL
#define ACTION_SKIN_NEXT PLA_UP #define ACTION_SKIN_NEXT PLA_UP
#define ACTION_SKIN_NEXT_REPEAT PLA_UP_REPEAT #define ACTION_SKIN_NEXT_REPEAT PLA_UP_REPEAT
#endif
#define ACTION_SKIN_PREV PLA_DOWN #define ACTION_SKIN_PREV PLA_DOWN
#define ACTION_SKIN_PREV_REPEAT PLA_DOWN_REPEAT #define ACTION_SKIN_PREV_REPEAT PLA_DOWN_REPEAT
@ -165,10 +171,12 @@ enum plugin_status plugin_start(const void* parameter){
case ACTION_SKIN_PREV: case ACTION_SKIN_PREV:
clock_settings_skin_next(&clock_settings); clock_settings_skin_next(&clock_settings);
break; break;
#if defined(ACTION_SKIN_NEXT) && defined(ACTION_SKIN_NEXT_REPEAT)
case ACTION_SKIN_NEXT_REPEAT: case ACTION_SKIN_NEXT_REPEAT:
case ACTION_SKIN_NEXT: case ACTION_SKIN_NEXT:
clock_settings_skin_previous(&clock_settings); clock_settings_skin_previous(&clock_settings);
break; break;
#endif
case ACTION_MENU: case ACTION_MENU:
clock_draw_restore_colors(); clock_draw_restore_colors();
exit_clock=main_menu(); exit_clock=main_menu();

View file

@ -438,6 +438,13 @@ enum plugin_status plugin_start(const void* parameter) {
if (button == PLA_SELECT) if (button == PLA_SELECT)
break; break;
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
if (button == PLA_UP) /* Menu button */
button = PLA_CANCEL;
#endif
switch (button) { switch (button) {
/* Exit */ /* Exit */

View file

@ -52,12 +52,14 @@
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define CUBE_QUIT (BUTTON_SELECT | BUTTON_MENU) #define CUBE_QUIT_PRE BUTTON_MENU
#define CUBE_QUIT (BUTTON_MENU | BUTTON_REL)
#define CUBE_NEXT BUTTON_RIGHT #define CUBE_NEXT BUTTON_RIGHT
#define CUBE_PREV BUTTON_LEFT #define CUBE_PREV BUTTON_LEFT
#define CUBE_INC BUTTON_SCROLL_FWD #define CUBE_INC BUTTON_SCROLL_FWD
#define CUBE_DEC BUTTON_SCROLL_BACK #define CUBE_DEC BUTTON_SCROLL_BACK
#define CUBE_MODE BUTTON_MENU #define CUBE_MODE_PRE BUTTON_MENU
#define CUBE_MODE (BUTTON_MENU | BUTTON_REPEAT)
#define CUBE_PAUSE BUTTON_PLAY #define CUBE_PAUSE BUTTON_PLAY
#define CUBE_HIGHSPEED_PRE BUTTON_SELECT #define CUBE_HIGHSPEED_PRE BUTTON_SELECT
#define CUBE_HIGHSPEED (BUTTON_SELECT | BUTTON_REL) #define CUBE_HIGHSPEED (BUTTON_SELECT | BUTTON_REL)
@ -729,6 +731,7 @@ enum plugin_status plugin_start(const void* parameter)
int button; int button;
#if defined(CUBE_MODE_PRE) || \ #if defined(CUBE_MODE_PRE) || \
defined(CUBE_QUIT_PRE) || \
defined(CUBE_PAUSE_PRE) || \ defined(CUBE_PAUSE_PRE) || \
defined(CUBE_HIGHSPEED_PRE) defined(CUBE_HIGHSPEED_PRE)
int lastbutton = BUTTON_NONE; int lastbutton = BUTTON_NONE;
@ -903,6 +906,10 @@ enum plugin_status plugin_start(const void* parameter)
case CUBE_RC_QUIT: case CUBE_RC_QUIT:
#endif #endif
case CUBE_QUIT: case CUBE_QUIT:
#ifdef CUBE_QUIT_PRE
if (lastbutton != CUBE_QUIT_PRE)
break;
#endif
quit = true; quit = true;
break; break;
@ -911,6 +918,7 @@ enum plugin_status plugin_start(const void* parameter)
break; break;
} }
#if defined(CUBE_MODE_PRE) || \ #if defined(CUBE_MODE_PRE) || \
defined(CUBE_QUIT_PRE) || \
defined(CUBE_PAUSE_PRE) || \ defined(CUBE_PAUSE_PRE) || \
defined(CUBE_HIGHSPEED_PRE) defined(CUBE_HIGHSPEED_PRE)
if (button != BUTTON_NONE) if (button != BUTTON_NONE)

View file

@ -37,26 +37,42 @@
#define MIN_POLYGONS 1 #define MIN_POLYGONS 1
/* Key assignement */ /* Key assignement */
#define DEMYSTIFY_QUIT PLA_CANCEL
#ifdef HAVE_SCROLLWHEEL #ifdef HAVE_SCROLLWHEEL
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define DEMYSTIFY_QUIT PLA_UP
#else
#define DEMYSTIFY_QUIT PLA_CANCEL
#endif
#define DEMYSTIFY_INCREASE_SPEED PLA_SCROLL_FWD #define DEMYSTIFY_INCREASE_SPEED PLA_SCROLL_FWD
#define DEMYSTIFY_DECREASE_SPEED PLA_SCROLL_BACK #define DEMYSTIFY_DECREASE_SPEED PLA_SCROLL_BACK
#define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_SCROLL_FWD_REPEAT #define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_SCROLL_FWD_REPEAT
#define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_SCROLL_BACK_REPEAT #define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_SCROLL_BACK_REPEAT
#define DEMYSTIFY_ADD_POLYGON PLA_RIGHT
#define DEMYSTIFY_REMOVE_POLYGON PLA_LEFT
#define DEMYSTIFY_ADD_POLYGON_REPEAT PLA_RIGHT_REPEAT
#define DEMYSTIFY_REMOVE_POLYGON_REPEAT PLA_LEFT_REPEAT
#else #else
#define DEMYSTIFY_QUIT PLA_CANCEL
#define DEMYSTIFY_INCREASE_SPEED PLA_RIGHT #define DEMYSTIFY_INCREASE_SPEED PLA_RIGHT
#define DEMYSTIFY_DECREASE_SPEED PLA_LEFT #define DEMYSTIFY_DECREASE_SPEED PLA_LEFT
#define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_RIGHT_REPEAT #define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_RIGHT_REPEAT
#define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_LEFT_REPEAT #define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_LEFT_REPEAT
#endif
#define DEMYSTIFY_ADD_POLYGON PLA_UP #define DEMYSTIFY_ADD_POLYGON PLA_UP
#define DEMYSTIFY_REMOVE_POLYGON PLA_DOWN #define DEMYSTIFY_REMOVE_POLYGON PLA_DOWN
#define DEMYSTIFY_ADD_POLYGON_REPEAT PLA_UP_REPEAT #define DEMYSTIFY_ADD_POLYGON_REPEAT PLA_UP_REPEAT
#define DEMYSTIFY_REMOVE_POLYGON_REPEAT PLA_DOWN_REPEAT #define DEMYSTIFY_REMOVE_POLYGON_REPEAT PLA_DOWN_REPEAT
#endif
const struct button_mapping *plugin_contexts[] const struct button_mapping *plugin_contexts[]
= {pla_main_ctx, = {pla_main_ctx,
#if defined(HAVE_REMOTE_LCD) #if defined(HAVE_REMOTE_LCD)

View file

@ -28,7 +28,14 @@
#define INITIAL_NB_DICES 1 #define INITIAL_NB_DICES 1
#define INITIAL_NB_SIDES 2 /* corresponds to 6 sides in the array */ #define INITIAL_NB_SIDES 2 /* corresponds to 6 sides in the array */
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define DICE_QUIT PLA_UP
#else
#define DICE_QUIT PLA_CANCEL #define DICE_QUIT PLA_CANCEL
#endif
#define DICE_ROLL PLA_SELECT #define DICE_ROLL PLA_SELECT

View file

@ -40,13 +40,22 @@ GREY_INFO_STRUCT
/* this set the context to use with PLA */ /* this set the context to use with PLA */
static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
#define FFT_PREV_GRAPH PLA_LEFT #define FFT_PREV_GRAPH PLA_LEFT
#define FFT_NEXT_GRAPH PLA_RIGHT #define FFT_NEXT_GRAPH PLA_RIGHT
#define FFT_ORIENTATION PLA_CANCEL #define FFT_ORIENTATION PLA_CANCEL
#define FFT_WINDOW PLA_SELECT #define FFT_WINDOW PLA_SELECT_REL
#define FFT_AMP_SCALE PLA_UP #define FFT_AMP_SCALE PLA_SELECT_REPEAT
#define FFT_FREQ_SCALE PLA_DOWN #define FFT_AMP_SCALE_PRE PLA_SELECT
#define FFT_QUIT PLA_EXIT #define FFT_FREQ_SCALE PLA_DOWN
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define FFT_QUIT PLA_UP
#else
#define FFT_QUIT PLA_EXIT
#endif
#ifdef HAVE_LCD_COLOR #ifdef HAVE_LCD_COLOR
#include "pluginbitmaps/fft_colors.h" #include "pluginbitmaps/fft_colors.h"
@ -1257,6 +1266,10 @@ enum plugin_status plugin_start(const void* parameter)
if(!fft_setup()) if(!fft_setup())
return PLUGIN_ERROR; return PLUGIN_ERROR;
#if defined(FFT_AMP_SCALE_PRE)
int lastbutton = BUTTON_NONE;
#endif
while(run) while(run)
{ {
long delay = fft_draw(); long delay = fft_draw();
@ -1300,6 +1313,10 @@ enum plugin_status plugin_start(const void* parameter)
break; break;
case FFT_AMP_SCALE: case FFT_AMP_SCALE:
#ifdef FFT_AMP_SCALE_PRE
if (lastbutton != FFT_AMP_SCALE_PRE)
break;
#endif
if (++fft.amp_scale >= FFT_MAX_AS) if (++fft.amp_scale >= FFT_MAX_AS)
fft.amp_scale = FFT_MIN_AS; fft.amp_scale = FFT_MIN_AS;
@ -1328,6 +1345,11 @@ enum plugin_status plugin_start(const void* parameter)
exit_on_usb(button); exit_on_usb(button);
break; break;
} }
#if defined(FFT_AMP_SCALE_PRE)
if (button != BUTTON_NONE)
lastbutton = button;
#endif
} }
return PLUGIN_OK; return PLUGIN_OK;

View file

@ -56,10 +56,17 @@ const struct button_mapping* plugin_contexts[]= {
}; };
#define FIRE_QUIT PLA_CANCEL #define FIRE_QUIT PLA_CANCEL
#define FIRE_QUIT2 PLA_EXIT
#define FIRE_SWITCH_FLAMES_TYPE PLA_LEFT #define FIRE_SWITCH_FLAMES_TYPE PLA_LEFT
#define FIRE_SWITCH_FLAMES_MOVING PLA_RIGHT #define FIRE_SWITCH_FLAMES_MOVING PLA_RIGHT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define FIRE_QUIT2 PLA_UP
#else
#define FIRE_QUIT2 PLA_EXIT
#endif
#ifdef HAVE_SCROLLWHEEL #ifdef HAVE_SCROLLWHEEL
#define FIRE_INCREASE_MULT PLA_SCROLL_FWD #define FIRE_INCREASE_MULT PLA_SCROLL_FWD
#define FIRE_INCREASE_MULT_REP PLA_SCROLL_FWD_REPEAT #define FIRE_INCREASE_MULT_REP PLA_SCROLL_FWD_REPEAT

View file

@ -35,10 +35,17 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
/* We use PLA */ /* We use PLA */
#define BTN_EXIT PLA_EXIT #define BTN_EXIT PLA_EXIT
#define BTN_MENU PLA_CANCEL
#define BTN_FIRE PLA_SELECT #define BTN_FIRE PLA_SELECT
#define BTN_FIRE_REPEAT PLA_SELECT_REPEAT #define BTN_FIRE_REPEAT PLA_SELECT_REPEAT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define BTN_MENU PLA_UP
#else
#define BTN_MENU PLA_CANCEL
#endif
/* The lowdown on source terminology: /* The lowdown on source terminology:
* a ROCKET is launched from the LCD bottom. * a ROCKET is launched from the LCD bottom.
* FIREWORKs are ejected from the rocket when it explodes. */ * FIREWORKs are ejected from the rocket when it explodes. */

View file

@ -49,7 +49,7 @@
#define FLIPIT_DOWN BUTTON_PLAY #define FLIPIT_DOWN BUTTON_PLAY
#define FLIPIT_NEXT BUTTON_SCROLL_FWD #define FLIPIT_NEXT BUTTON_SCROLL_FWD
#define FLIPIT_PREV BUTTON_SCROLL_BACK #define FLIPIT_PREV BUTTON_SCROLL_BACK
#define FLIPIT_QUIT (BUTTON_SELECT | BUTTON_MENU) #define FLIPIT_QUIT (BUTTON_SELECT | BUTTON_REPEAT)
#define FLIPIT_SHUFFLE (BUTTON_SELECT | BUTTON_LEFT) #define FLIPIT_SHUFFLE (BUTTON_SELECT | BUTTON_LEFT)
#define FLIPIT_SOLVE (BUTTON_SELECT | BUTTON_PLAY) #define FLIPIT_SOLVE (BUTTON_SELECT | BUTTON_PLAY)
#define FLIPIT_STEP_BY_STEP (BUTTON_SELECT | BUTTON_RIGHT) #define FLIPIT_STEP_BY_STEP (BUTTON_SELECT | BUTTON_RIGHT)
@ -841,7 +841,7 @@ enum plugin_status plugin_start(const void* parameter)
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
rb->lcd_putsxy(2, 8, "[S-MENU] to stop"); rb->lcd_putsxy(2, 8, "Long [SELECT] to stop");
rb->lcd_putsxy(2, 18, "[SELECT] toggle"); rb->lcd_putsxy(2, 18, "[SELECT] toggle");
rb->lcd_putsxy(2, 28, "[S-LEFT] shuffle"); rb->lcd_putsxy(2, 28, "[S-LEFT] shuffle");
rb->lcd_putsxy(2, 38, "[S-PLAY] solution"); rb->lcd_putsxy(2, 38, "[S-PLAY] solution");

View file

@ -40,7 +40,7 @@
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define FRACTAL_QUIT (BUTTON_SELECT | BUTTON_MENU) #define FRACTAL_QUIT (BUTTON_SELECT | BUTTON_REPEAT)
#define FRACTAL_UP BUTTON_MENU #define FRACTAL_UP BUTTON_MENU
#define FRACTAL_DOWN BUTTON_PLAY #define FRACTAL_DOWN BUTTON_PLAY
#define FRACTAL_LEFT BUTTON_LEFT #define FRACTAL_LEFT BUTTON_LEFT

View file

@ -353,7 +353,7 @@ static int show_menu(void) /* return 1 to quit */
static int ask_and_get_audio_buffer(const char *filename) static int ask_and_get_audio_buffer(const char *filename)
{ {
int button; int button;
#if defined(IMGVIEW_ZOOM_PRE) #if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_QUIT_PRE)
int lastbutton = BUTTON_NONE; int lastbutton = BUTTON_NONE;
#endif #endif
rb->lcd_setfont(FONT_SYSFIXED); rb->lcd_setfont(FONT_SYSFIXED);
@ -392,6 +392,10 @@ static int ask_and_get_audio_buffer(const char *filename)
#endif #endif
#ifdef IMGVIEW_QUIT #ifdef IMGVIEW_QUIT
case IMGVIEW_QUIT: case IMGVIEW_QUIT:
#ifdef IMGVIEW_QUIT_PRE
if (lastbutton != IMGVIEW_QUIT_PRE)
break;
#endif
#endif #endif
case IMGVIEW_MENU: case IMGVIEW_MENU:
return PLUGIN_OK; return PLUGIN_OK;
@ -424,7 +428,7 @@ static int ask_and_get_audio_buffer(const char *filename)
== SYS_USB_CONNECTED) == SYS_USB_CONNECTED)
return PLUGIN_USB_CONNECTED; return PLUGIN_USB_CONNECTED;
} }
#if defined(IMGVIEW_ZOOM_PRE) #if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_QUIT_PRE)
if (button != BUTTON_NONE) if (button != BUTTON_NONE)
lastbutton = button; lastbutton = button;
#endif #endif
@ -572,14 +576,19 @@ static void pan_view_down(struct image_info *info)
} }
/* interactively scroll around the image */ /* interactively scroll around the image */
static int scroll_bmp(struct image_info *info) static int scroll_bmp(struct image_info *info, bool initial_frame)
{ {
static long ss_timeout = 0; static long ss_timeout = 0;
int button; int button;
#if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_MENU_PRE) \ #if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_MENU_PRE) \
|| defined(IMGVIEW_SLIDE_SHOW_PRE) || defined(IMGVIEW_SLIDE_SHOW_PRE) || defined(IMGVIEW_QUIT_PRE)
int lastbutton = BUTTON_NONE; static int lastbutton;
if (initial_frame)
lastbutton = BUTTON_NONE;
#else
(void) initial_frame;
#endif #endif
if (!ss_timeout && iv_api.slideshow_enabled) if (!ss_timeout && iv_api.slideshow_enabled)
@ -745,6 +754,10 @@ static int scroll_bmp(struct image_info *info)
#ifdef IMGVIEW_QUIT #ifdef IMGVIEW_QUIT
case IMGVIEW_QUIT: case IMGVIEW_QUIT:
#ifdef IMGVIEW_QUIT_PRE
if (lastbutton != IMGVIEW_QUIT_PRE)
break;
#endif
return PLUGIN_OK; return PLUGIN_OK;
break; break;
#endif #endif
@ -756,7 +769,8 @@ static int scroll_bmp(struct image_info *info)
break; break;
} /* switch */ } /* switch */
#if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_MENU_PRE) || defined(IMGVIEW_SLIDE_SHOW_PRE) #if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_MENU_PRE) ||\
defined(IMGVIEW_SLIDE_SHOW_PRE) || defined(IMGVIEW_QUIT_PRE)
if (button != BUTTON_NONE) if (button != BUTTON_NONE)
lastbutton = button; lastbutton = button;
#endif #endif
@ -922,6 +936,7 @@ static int load_and_show(char* filename, struct image_info *info)
/* used to loop through subimages in animated gifs */ /* used to loop through subimages in animated gifs */
int frame = 0; int frame = 0;
bool initial_frame = true;
do /* loop the image prepare and decoding when zoomed */ do /* loop the image prepare and decoding when zoomed */
{ {
status = imgdec->get_image(info, frame, ds); /* decode or fetch from cache */ status = imgdec->get_image(info, frame, ds); /* decode or fetch from cache */
@ -954,7 +969,8 @@ static int load_and_show(char* filename, struct image_info *info)
*/ */
while (1) while (1)
{ {
status = scroll_bmp(info); status = scroll_bmp(info, initial_frame);
initial_frame = false;
if (status == ZOOM_IN) if (status == ZOOM_IN)
{ {

View file

@ -53,8 +53,10 @@
#define IMGVIEW_RIGHT BUTTON_RIGHT #define IMGVIEW_RIGHT BUTTON_RIGHT
#define IMGVIEW_NEXT (BUTTON_SELECT | BUTTON_RIGHT) #define IMGVIEW_NEXT (BUTTON_SELECT | BUTTON_RIGHT)
#define IMGVIEW_PREVIOUS (BUTTON_SELECT | BUTTON_LEFT) #define IMGVIEW_PREVIOUS (BUTTON_SELECT | BUTTON_LEFT)
#define IMGVIEW_MENU (BUTTON_SELECT | BUTTON_MENU) #define IMGVIEW_MENU_PRE BUTTON_SELECT
#define IMGVIEW_QUIT (BUTTON_SELECT | BUTTON_PLAY) #define IMGVIEW_MENU (BUTTON_SELECT | BUTTON_REPEAT)
#define IMGVIEW_QUIT_PRE BUTTON_SELECT
#define IMGVIEW_QUIT (BUTTON_SELECT | BUTTON_REL)
#elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD #elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD
#define IMGVIEW_ZOOM_PRE BUTTON_SELECT #define IMGVIEW_ZOOM_PRE BUTTON_SELECT

View file

@ -25,6 +25,13 @@
#include "lib/pluginlib_exit.h" #include "lib/pluginlib_exit.h"
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define JACKPOT_QUIT PLA_UP
#else
#define JACKPOT_QUIT PLA_CANCEL
#endif
const struct button_mapping* plugin_contexts[]={pla_main_ctx}; const struct button_mapping* plugin_contexts[]={pla_main_ctx};
#define NB_PICTURES 9 #define NB_PICTURES 9
@ -248,7 +255,7 @@ enum plugin_status plugin_start(const void* parameter)
plugin_contexts, ARRAYLEN(plugin_contexts)); plugin_contexts, ARRAYLEN(plugin_contexts));
switch ( action ) switch ( action )
{ {
case PLA_CANCEL: case JACKPOT_QUIT:
return PLUGIN_OK; return PLUGIN_OK;
case PLA_SELECT: case PLA_SELECT:
jackpot_play_turn(&game); jackpot_play_turn(&game);

View file

@ -49,9 +49,9 @@
#define JEWELS_PREV BUTTON_SCROLL_BACK #define JEWELS_PREV BUTTON_SCROLL_BACK
#define JEWELS_NEXT BUTTON_SCROLL_FWD #define JEWELS_NEXT BUTTON_SCROLL_FWD
#define JEWELS_SELECT BUTTON_SELECT #define JEWELS_SELECT BUTTON_SELECT
#define JEWELS_CANCEL (BUTTON_SELECT | BUTTON_MENU) #define JEWELS_CANCEL (BUTTON_SELECT | BUTTON_REPEAT)
#define HK_SELECT "SELECT" #define HK_SELECT "SELECT"
#define HK_CANCEL "SEL + MENU" #define HK_CANCEL "Long SELECT"
#elif (CONFIG_KEYPAD == IPOD_3G_PAD) #elif (CONFIG_KEYPAD == IPOD_3G_PAD)
#define JEWELS_LEFT BUTTON_LEFT #define JEWELS_LEFT BUTTON_LEFT

View file

@ -58,7 +58,14 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
#define LAMP_EXIT PLA_EXIT #define LAMP_EXIT PLA_EXIT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define LAMP_EXIT2 PLA_UP
#else
#define LAMP_EXIT2 PLA_CANCEL #define LAMP_EXIT2 PLA_CANCEL
#endif
#ifdef HAVE_LCD_COLOR #ifdef HAVE_LCD_COLOR

View file

@ -49,15 +49,27 @@ static const struct button_mapping *plugin_contexts[]
/* We use PLA */ /* We use PLA */
#define LP_QUIT PLA_EXIT #define LP_QUIT PLA_EXIT
#define LP_QUIT2 PLA_CANCEL
#define LP_DEC_X PLA_LEFT #define LP_DEC_X PLA_LEFT
#define LP_DEC_X_REPEAT PLA_LEFT_REPEAT #define LP_DEC_X_REPEAT PLA_LEFT_REPEAT
#define LP_INC_X PLA_RIGHT #define LP_INC_X PLA_RIGHT
#define LP_INC_X_REPEAT PLA_RIGHT_REPEAT #define LP_INC_X_REPEAT PLA_RIGHT_REPEAT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define LP_QUIT2 PLA_UP
#define LP_DEC_Y PLA_SCROLL_BACK
#define LP_DEC_Y_REPEAT PLA_SCROLL_BACK_REPEAT
#define LP_INC_Y PLA_SCROLL_FWD
#define LP_INC_Y_REPEAT PLA_SCROLL_FWD_REPEAT
#else
#define LP_QUIT2 PLA_CANCEL
#define LP_DEC_Y PLA_DOWN #define LP_DEC_Y PLA_DOWN
#define LP_DEC_Y_REPEAT PLA_DOWN_REPEAT #define LP_DEC_Y_REPEAT PLA_DOWN_REPEAT
#define LP_INC_Y PLA_UP #define LP_INC_Y PLA_UP
#define LP_INC_Y_REPEAT PLA_UP_REPEAT #define LP_INC_Y_REPEAT PLA_UP_REPEAT
#endif
enum plugin_status plugin_start(const void* parameter) { enum plugin_status plugin_start(const void* parameter) {
int button; int button;

View file

@ -52,6 +52,14 @@
/* this set the context to use with PLA */ /* this set the context to use with PLA */
static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define MATRIX_EXIT2 PLA_UP
#else
#define MATRIX_EXIT2 PLA_CANCEL
#endif
#ifdef HAVE_SCROLLWHEEL #ifdef HAVE_SCROLLWHEEL
#define MATRIX_SLEEP_MORE PLA_SCROLL_BACK #define MATRIX_SLEEP_MORE PLA_SCROLL_BACK
#define MATRIX_SLEEP_MORE_REPEAT PLA_SCROLL_BACK_REPEAT #define MATRIX_SLEEP_MORE_REPEAT PLA_SCROLL_BACK_REPEAT
@ -65,7 +73,6 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
#endif /* HAVE_SCROLLWHEEL */ #endif /* HAVE_SCROLLWHEEL */
#define MATRIX_PAUSE PLA_SELECT #define MATRIX_PAUSE PLA_SELECT
#define MATRIX_EXIT PLA_EXIT #define MATRIX_EXIT PLA_EXIT
#define MATRIX_EXIT2 PLA_CANCEL
#define SLEEP HZ/50 #define SLEEP HZ/50

View file

@ -37,11 +37,14 @@
/* key assignments */ /* key assignments */
#if (CONFIG_KEYPAD == IPOD_3G_PAD) #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
# define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT) # define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT)
# define MAZE_NEW_PRE BUTTON_SELECT # define MAZE_NEW_PRE BUTTON_SELECT
# define MAZE_QUIT BUTTON_MENU # define MAZE_QUIT BUTTON_MENU
# define MAZE_SOLVE (BUTTON_SELECT | BUTTON_PLAY) # define MAZE_SOLVE (BUTTON_SELECT | BUTTON_REL)
# define MAZE_SOLVE_PRE BUTTON_SELECT
# define MAZE_RIGHT BUTTON_RIGHT # define MAZE_RIGHT BUTTON_RIGHT
# define MAZE_RIGHT_REPEAT BUTTON_RIGHT|BUTTON_REPEAT # define MAZE_RIGHT_REPEAT BUTTON_RIGHT|BUTTON_REPEAT
# define MAZE_LEFT BUTTON_LEFT # define MAZE_LEFT BUTTON_LEFT
@ -491,7 +494,7 @@ static void maze_move_player_left(struct maze* maze)
enum plugin_status plugin_start(const void* parameter) enum plugin_status plugin_start(const void* parameter)
{ {
int button; int button;
#ifdef MAZE_NEW_PRE #if defined(MAZE_NEW_PRE) || defined(MAZE_SOLVE_PRE)
int lastbutton = BUTTON_NONE; int lastbutton = BUTTON_NONE;
#endif #endif
int quit = 0; int quit = 0;
@ -544,6 +547,10 @@ enum plugin_status plugin_start(const void* parameter)
maze_draw(&maze, rb->screens[i]); maze_draw(&maze, rb->screens[i]);
break; break;
case MAZE_SOLVE: case MAZE_SOLVE:
#ifdef MAZE_SOLVE_PRE
if(lastbutton != MAZE_SOLVE_PRE)
break;
#endif
maze_solve(&maze); maze_solve(&maze);
FOR_NB_SCREENS(i) FOR_NB_SCREENS(i)
maze_draw(&maze, rb->screens[i]); maze_draw(&maze, rb->screens[i]);
@ -583,7 +590,7 @@ enum plugin_status plugin_start(const void* parameter)
} }
break; break;
} }
#ifdef MAZE_NEW_PRE #if defined(MAZE_NEW_PRE) || defined(MAZE_SOLVE_PRE)
if( button != BUTTON_NONE ) if( button != BUTTON_NONE )
lastbutton = button; lastbutton = button;
#endif #endif

View file

@ -27,7 +27,9 @@
/* Include standard plugin macro */ /* Include standard plugin macro */
#if (CONFIG_KEYPAD == IPOD_3G_PAD) #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
# define MAZEZAM_MENU BUTTON_MENU # define MAZEZAM_MENU BUTTON_MENU
# define MAZEZAM_RIGHT BUTTON_RIGHT # define MAZEZAM_RIGHT BUTTON_RIGHT
# define MAZEZAM_LEFT BUTTON_LEFT # define MAZEZAM_LEFT BUTTON_LEFT

View file

@ -82,7 +82,13 @@ enum metronome_errors
#define MET_SYNC #define MET_SYNC
#endif #endif
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define METRONOME_QUIT PLA_UP
#else
#define METRONOME_QUIT PLA_EXIT #define METRONOME_QUIT PLA_EXIT
#endif
#ifdef HAVE_SCROLLWHEEL #ifdef HAVE_SCROLLWHEEL
#define METRONOME_VOL_UP PLA_SCROLL_FWD #define METRONOME_VOL_UP PLA_SCROLL_FWD

View file

@ -37,10 +37,17 @@
static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
#define MOSAIQUE_QUIT PLA_EXIT #define MOSAIQUE_QUIT PLA_EXIT
#define MOSAIQUE_QUIT2 PLA_CANCEL #define MOSAIQUE_SPEED PLA_RIGHT
#define MOSAIQUE_SPEED PLA_UP
#define MOSAIQUE_RESTART PLA_SELECT #define MOSAIQUE_RESTART PLA_SELECT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define MOSAIQUE_QUIT2 PLA_UP
#else
#define MOSAIQUE_QUIT2 PLA_CANCEL
#endif
enum plugin_status plugin_start(const void* parameter) enum plugin_status plugin_start(const void* parameter)
{ {
int button; int button;

View file

@ -904,6 +904,7 @@ reopen_datfile:
} }
break; break;
case ACTION_STD_CANCEL: case ACTION_STD_CANCEL:
case ACTION_STD_MENU:
{ {
selection = -2; selection = -2;
exit = true; exit = true;

View file

@ -47,12 +47,14 @@
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \ #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define OSCILLOSCOPE_QUIT (BUTTON_SELECT | BUTTON_MENU) #define OSCILLOSCOPE_QUIT BUTTON_MENU
#define OSCILLOSCOPE_DRAWMODE (BUTTON_SELECT | BUTTON_PLAY) #define OSCILLOSCOPE_GRAPHMODE_PRE BUTTON_SELECT
#define OSCILLOSCOPE_GRAPHMODE (BUTTON_SELECT | BUTTON_REL)
#define OSCILLOSCOPE_DRAWMODE_PRE BUTTON_SELECT
#define OSCILLOSCOPE_DRAWMODE (BUTTON_SELECT | BUTTON_REPEAT)
#define OSCILLOSCOPE_ADVMODE (BUTTON_SELECT | BUTTON_RIGHT) #define OSCILLOSCOPE_ADVMODE (BUTTON_SELECT | BUTTON_RIGHT)
#define OSCILLOSCOPE_ORIENTATION (BUTTON_SELECT | BUTTON_LEFT) #define OSCILLOSCOPE_ORIENTATION (BUTTON_SELECT | BUTTON_LEFT)
#define OSCILLOSCOPE_GRAPHMODE BUTTON_MENU #define OSCILLOSCOPE_PAUSE BUTTON_PLAY | BUTTON_REL
#define OSCILLOSCOPE_PAUSE BUTTON_PLAY
#define OSCILLOSCOPE_SPEED_UP BUTTON_RIGHT #define OSCILLOSCOPE_SPEED_UP BUTTON_RIGHT
#define OSCILLOSCOPE_SPEED_DOWN BUTTON_LEFT #define OSCILLOSCOPE_SPEED_DOWN BUTTON_LEFT
#define OSCILLOSCOPE_VOL_UP BUTTON_SCROLL_FWD #define OSCILLOSCOPE_VOL_UP BUTTON_SCROLL_FWD

View file

@ -65,7 +65,7 @@
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define PEGBOX_SELECT (BUTTON_SELECT|BUTTON_RIGHT) #define PEGBOX_SELECT (BUTTON_SELECT|BUTTON_RIGHT)
#define PEGBOX_QUIT (BUTTON_SELECT|BUTTON_PLAY) #define PEGBOX_QUIT (BUTTON_SELECT|BUTTON_REPEAT)
#define PEGBOX_RESTART (BUTTON_SELECT|BUTTON_LEFT) #define PEGBOX_RESTART (BUTTON_SELECT|BUTTON_LEFT)
#define PEGBOX_LVL_UP (BUTTON_SELECT|BUTTON_MENU) #define PEGBOX_LVL_UP (BUTTON_SELECT|BUTTON_MENU)
#define PEGBOX_UP BUTTON_MENU #define PEGBOX_UP BUTTON_MENU
@ -74,7 +74,7 @@
#define PEGBOX_LEFT BUTTON_LEFT #define PEGBOX_LEFT BUTTON_LEFT
#define SELECT_TEXT "SELECT+RIGHT" #define SELECT_TEXT "SELECT+RIGHT"
#define QUIT_TEXT "SELECT+PLAY" #define QUIT_TEXT "Long SELECT"
#define RESTART_TEXT "SELECT+LEFT" #define RESTART_TEXT "SELECT+LEFT"
#define LVL_UP_TEXT "SELECT+MENU" #define LVL_UP_TEXT "SELECT+MENU"
#define LVL_DOWN_TEXT "-" #define LVL_DOWN_TEXT "-"

View file

@ -619,7 +619,6 @@ enum plugin_status plugin_start(const void* parameter)
switch (button) switch (button)
{ {
case PERIODIC_KEY_SELECT: case PERIODIC_KEY_SELECT:
break;
case PERIODIC_KEY_MENU: case PERIODIC_KEY_MENU:
return PLUGIN_OK; return PLUGIN_OK;
break; break;

View file

@ -152,7 +152,8 @@ const struct button_mapping pf_context_buttons[] =
#elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \ || (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_4G_PAD)
{PF_QUIT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU}, {PF_MENU, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU},
{PF_QUIT, BUTTON_MENU|BUTTON_REL, BUTTON_MENU},
{PF_SORTING_NEXT, BUTTON_SELECT|BUTTON_MENU, BUTTON_NONE}, {PF_SORTING_NEXT, BUTTON_SELECT|BUTTON_MENU, BUTTON_NONE},
{PF_SORTING_PREV, BUTTON_SELECT|BUTTON_PLAY, BUTTON_NONE}, {PF_SORTING_PREV, BUTTON_SELECT|BUTTON_PLAY, BUTTON_NONE},
#elif CONFIG_KEYPAD == MPIO_HD300_PAD #elif CONFIG_KEYPAD == MPIO_HD300_PAD

View file

@ -1013,6 +1013,11 @@ static void record_and_get_pitch(void)
break; break;
case PLA_CANCEL: case PLA_CANCEL:
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
case PLA_UP:
#endif
rb->pcm_stop_recording(); rb->pcm_stop_recording();
quit = main_menu(); quit = main_menu();
if(!quit) if(!quit)

View file

@ -268,6 +268,11 @@ int main(void)
switch(action) switch(action)
{ {
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
case PLA_UP:
#endif
case PLA_EXIT: case PLA_EXIT:
case PLA_CANCEL: case PLA_CANCEL:
return PLUGIN_OK; return PLUGIN_OK;
@ -277,7 +282,11 @@ int main(void)
case PLA_SCROLL_FWD: case PLA_SCROLL_FWD:
case PLA_SCROLL_FWD_REPEAT: case PLA_SCROLL_FWD_REPEAT:
#endif #endif
#if (CONFIG_KEYPAD != IPOD_1G2G_PAD) \
&& (CONFIG_KEYPAD != IPOD_3G_PAD) \
&& (CONFIG_KEYPAD != IPOD_4G_PAD)
case PLA_UP: case PLA_UP:
#endif
case PLA_UP_REPEAT: case PLA_UP_REPEAT:
++plasma_frequency; ++plasma_frequency;
wave_table_generate(); wave_table_generate();

View file

@ -469,7 +469,13 @@ static char* messages[] =
#define RFK_VERSION "v1.4142135.406" #define RFK_VERSION "v1.4142135.406"
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
# define RFK_QUIT PLA_SELECT_REPEAT
#else
# define RFK_QUIT PLA_CANCEL # define RFK_QUIT PLA_CANCEL
#endif
# define RFK_RIGHT PLA_RIGHT # define RFK_RIGHT PLA_RIGHT
# define RFK_LEFT PLA_LEFT # define RFK_LEFT PLA_LEFT
# define RFK_UP PLA_UP # define RFK_UP PLA_UP

View file

@ -33,7 +33,7 @@
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define ROCKBLOX_OFF (BUTTON_MENU | BUTTON_SELECT) #define ROCKBLOX_OFF (BUTTON_SELECT | BUTTON_REPEAT)
#define ROCKBLOX_ROTATE_CCW BUTTON_SCROLL_BACK #define ROCKBLOX_ROTATE_CCW BUTTON_SCROLL_BACK
#define ROCKBLOX_ROTATE_CCW2 (BUTTON_MENU | BUTTON_REL) #define ROCKBLOX_ROTATE_CCW2 (BUTTON_MENU | BUTTON_REL)
#define ROCKBLOX_ROTATE_CW BUTTON_SCROLL_FWD #define ROCKBLOX_ROTATE_CW BUTTON_SCROLL_FWD
@ -41,6 +41,7 @@
#define ROCKBLOX_RIGHT BUTTON_RIGHT #define ROCKBLOX_RIGHT BUTTON_RIGHT
#define ROCKBLOX_DOWN BUTTON_PLAY #define ROCKBLOX_DOWN BUTTON_PLAY
#define ROCKBLOX_RESTART (BUTTON_SELECT | BUTTON_PLAY) #define ROCKBLOX_RESTART (BUTTON_SELECT | BUTTON_PLAY)
#define ROCKBLOX_DROP_PRE BUTTON_SELECT
#define ROCKBLOX_DROP (BUTTON_SELECT | BUTTON_REL) #define ROCKBLOX_DROP (BUTTON_SELECT | BUTTON_REL)
#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \

View file

@ -28,7 +28,14 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
#define ONEDROCKBLOX_DOWN PLA_DOWN #define ONEDROCKBLOX_DOWN PLA_DOWN
#define ONEDROCKBLOX_DOWN_REPEAT PLA_DOWN_REPEAT #define ONEDROCKBLOX_DOWN_REPEAT PLA_DOWN_REPEAT
#define ONEDROCKBLOX_QUIT PLA_EXIT #define ONEDROCKBLOX_QUIT PLA_EXIT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define ONEDROCKBLOX_QUIT2 PLA_UP
#else
#define ONEDROCKBLOX_QUIT2 PLA_CANCEL #define ONEDROCKBLOX_QUIT2 PLA_CANCEL
#endif
#define mrand(max) (short)(rb->rand()%max) #define mrand(max) (short)(rb->rand()%max)

View file

@ -70,7 +70,13 @@
#define ROCKLIFE_INIT PLA_DOWN #define ROCKLIFE_INIT PLA_DOWN
#define ROCKLIFE_NEXT PLA_RIGHT #define ROCKLIFE_NEXT PLA_RIGHT
#define ROCKLIFE_NEXT_REP PLA_RIGHT_REPEAT #define ROCKLIFE_NEXT_REP PLA_RIGHT_REPEAT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define ROCKLIFE_QUIT PLA_UP
#else
#define ROCKLIFE_QUIT PLA_CANCEL #define ROCKLIFE_QUIT PLA_CANCEL
#endif
#define ROCKLIFE_STATUS PLA_LEFT #define ROCKLIFE_STATUS PLA_LEFT
#define PATTERN_RANDOM 0 #define PATTERN_RANDOM 0

View file

@ -36,7 +36,7 @@
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define PUZZLE_QUIT (BUTTON_SELECT | BUTTON_MENU) #define PUZZLE_QUIT (BUTTON_SELECT | BUTTON_REPEAT)
#define PUZZLE_LEFT BUTTON_LEFT #define PUZZLE_LEFT BUTTON_LEFT
#define PUZZLE_RIGHT BUTTON_RIGHT #define PUZZLE_RIGHT BUTTON_RIGHT
#define PUZZLE_UP BUTTON_MENU #define PUZZLE_UP BUTTON_MENU
@ -848,7 +848,7 @@ enum plugin_status plugin_start(
#if (CONFIG_KEYPAD == IPOD_4G_PAD) || \ #if (CONFIG_KEYPAD == IPOD_4G_PAD) || \
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
rb->lcd_putsxy(0, 18, "[S-MENU] to stop"); rb->lcd_putsxy(0, 18, "Long [SELECT] to stop");
rb->lcd_putsxy(0, 28, "[S-LEFT] shuffle"); rb->lcd_putsxy(0, 28, "[S-LEFT] shuffle");
rb->lcd_putsxy(0, 38, "[S-RIGHT] change pic"); rb->lcd_putsxy(0, 38, "[S-RIGHT] change pic");
#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \

View file

@ -55,12 +55,12 @@ dir is the current direction of the snake - 0=up, 1=right, 2=down, 3=left;
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define SNAKE_QUIT (BUTTON_SELECT|BUTTON_MENU) #define SNAKE_QUIT (BUTTON_SELECT|BUTTON_REPEAT)
#define SNAKE_LEFT BUTTON_LEFT #define SNAKE_LEFT BUTTON_LEFT
#define SNAKE_RIGHT BUTTON_RIGHT #define SNAKE_RIGHT BUTTON_RIGHT
#define SNAKE_UP BUTTON_MENU #define SNAKE_UP BUTTON_MENU
#define SNAKE_DOWN BUTTON_PLAY #define SNAKE_DOWN BUTTON_PLAY
#define SNAKE_PLAYPAUSE BUTTON_SELECT #define SNAKE_PLAYPAUSE (BUTTON_SELECT|BUTTON_REL)
#elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD)
#define SNAKE_QUIT BUTTON_POWER #define SNAKE_QUIT BUTTON_POWER

View file

@ -181,8 +181,8 @@ Head and Tail are stored
#define SNAKE2_RIGHT BUTTON_RIGHT #define SNAKE2_RIGHT BUTTON_RIGHT
#define SNAKE2_UP BUTTON_MENU #define SNAKE2_UP BUTTON_MENU
#define SNAKE2_DOWN BUTTON_PLAY #define SNAKE2_DOWN BUTTON_PLAY
#define SNAKE2_QUIT (BUTTON_SELECT | BUTTON_MENU) #define SNAKE2_QUIT (BUTTON_SELECT | BUTTON_REPEAT)
#define SNAKE2_PLAYPAUSE BUTTON_SELECT #define SNAKE2_PLAYPAUSE (BUTTON_SELECT | BUTTON_REL)
#define SNAKE2_PLAYPAUSE_TEXT "Select" #define SNAKE2_PLAYPAUSE_TEXT "Select"
#elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD)

View file

@ -30,8 +30,14 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
/* PLA definitions */ /* PLA definitions */
#define SNOW_QUIT PLA_EXIT #define SNOW_QUIT PLA_EXIT
#define SNOW_QUIT2 PLA_CANCEL
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define SNOW_QUIT2 PLA_UP
#else
#define SNOW_QUIT2 PLA_CANCEL
#endif
static short particles[NUM_PARTICLES][2]; static short particles[NUM_PARTICLES][2];
#if LCD_WIDTH >= 160 #if LCD_WIDTH >= 160

View file

@ -125,7 +125,7 @@
#define SOKOBAN_RIGHT BUTTON_RIGHT #define SOKOBAN_RIGHT BUTTON_RIGHT
#define SOKOBAN_UP BUTTON_MENU #define SOKOBAN_UP BUTTON_MENU
#define SOKOBAN_DOWN BUTTON_PLAY #define SOKOBAN_DOWN BUTTON_PLAY
#define SOKOBAN_MENU (BUTTON_SELECT | BUTTON_MENU) #define SOKOBAN_MENU (BUTTON_SELECT | BUTTON_REPEAT)
#define SOKOBAN_UNDO_PRE BUTTON_SELECT #define SOKOBAN_UNDO_PRE BUTTON_SELECT
#define SOKOBAN_UNDO (BUTTON_SELECT | BUTTON_REL) #define SOKOBAN_UNDO (BUTTON_SELECT | BUTTON_REL)
#define SOKOBAN_REDO (BUTTON_SELECT | BUTTON_PLAY) #define SOKOBAN_REDO (BUTTON_SELECT | BUTTON_PLAY)

View file

@ -56,7 +56,7 @@
#elif (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \ #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
# define SOL_QUIT (BUTTON_SELECT | BUTTON_MENU) # define SOL_QUIT (BUTTON_SELECT | BUTTON_REPEAT)
# define SOL_UP BUTTON_SCROLL_BACK # define SOL_UP BUTTON_SCROLL_BACK
# define SOL_DOWN BUTTON_SCROLL_FWD # define SOL_DOWN BUTTON_SCROLL_FWD
# define SOL_LEFT_PRE BUTTON_LEFT # define SOL_LEFT_PRE BUTTON_LEFT

View file

@ -80,7 +80,7 @@
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define STAR_QUIT (BUTTON_SELECT | BUTTON_MENU) #define STAR_QUIT (BUTTON_SELECT | BUTTON_REPEAT)
#define STAR_LEFT BUTTON_LEFT #define STAR_LEFT BUTTON_LEFT
#define STAR_RIGHT BUTTON_RIGHT #define STAR_RIGHT BUTTON_RIGHT
#define STAR_UP BUTTON_MENU #define STAR_UP BUTTON_MENU
@ -91,7 +91,7 @@
#define STAR_LEVEL_DOWN (BUTTON_SELECT | BUTTON_LEFT) #define STAR_LEVEL_DOWN (BUTTON_SELECT | BUTTON_LEFT)
#define STAR_LEVEL_REPEAT (BUTTON_SELECT | BUTTON_PLAY) #define STAR_LEVEL_REPEAT (BUTTON_SELECT | BUTTON_PLAY)
#define STAR_TOGGLE_CONTROL_NAME "SELECT" #define STAR_TOGGLE_CONTROL_NAME "SELECT"
#define STAR_QUIT_NAME "S + MENU" #define STAR_QUIT_NAME "Long SELECT"
#define STAR_LEVEL_UP_NAME "S >" #define STAR_LEVEL_UP_NAME "S >"
#define STAR_LEVEL_DOWN_NAME "S <" #define STAR_LEVEL_DOWN_NAME "S <"
#define STAR_LEVEL_REPEAT_NAME "S + PLAY" #define STAR_LEVEL_REPEAT_NAME "S + PLAY"

View file

@ -27,11 +27,21 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
/* Key assignement */ /* Key assignement */
#define STARFIELD_QUIT PLA_EXIT #define STARFIELD_QUIT PLA_EXIT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define STARFIELD_QUIT2 PLA_UP
#define STARFIELD_INCREASE_ZMOVE PLA_SCROLL_FWD
#define STARFIELD_INCREASE_ZMOVE_REPEAT PLA_SCROLL_FWD_REPEAT
#define STARFIELD_DECREASE_ZMOVE PLA_SCROLL_BACK
#define STARFIELD_DECREASE_ZMOVE_REPEAT PLA_SCROLL_BACK_REPEAT
#else
#define STARFIELD_QUIT2 PLA_CANCEL #define STARFIELD_QUIT2 PLA_CANCEL
#define STARFIELD_INCREASE_ZMOVE PLA_UP #define STARFIELD_INCREASE_ZMOVE PLA_UP
#define STARFIELD_INCREASE_ZMOVE_REPEAT PLA_UP_REPEAT #define STARFIELD_INCREASE_ZMOVE_REPEAT PLA_UP_REPEAT
#define STARFIELD_DECREASE_ZMOVE PLA_DOWN #define STARFIELD_DECREASE_ZMOVE PLA_DOWN
#define STARFIELD_DECREASE_ZMOVE_REPEAT PLA_DOWN_REPEAT #define STARFIELD_DECREASE_ZMOVE_REPEAT PLA_DOWN_REPEAT
#endif
#define STARFIELD_INCREASE_NB_STARS PLA_RIGHT #define STARFIELD_INCREASE_NB_STARS PLA_RIGHT
#define STARFIELD_INCREASE_NB_STARS_REPEAT PLA_RIGHT_REPEAT #define STARFIELD_INCREASE_NB_STARS_REPEAT PLA_RIGHT_REPEAT
#define STARFIELD_DECREASE_NB_STARS PLA_LEFT #define STARFIELD_DECREASE_NB_STARS PLA_LEFT

View file

@ -29,7 +29,15 @@ static bool cancel;
/* we use PLA */ /* we use PLA */
#define STATS_STOP PLA_EXIT #define STATS_STOP PLA_EXIT
#if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
|| (CONFIG_KEYPAD == IPOD_3G_PAD) \
|| (CONFIG_KEYPAD == IPOD_4G_PAD)
#define STATS_STOP2 PLA_UP
#else
#define STATS_STOP2 PLA_CANCEL #define STATS_STOP2 PLA_CANCEL
#endif
/* this set the context to use with PLA */ /* this set the context to use with PLA */
static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; static const struct button_mapping *plugin_contexts[] = { pla_main_ctx };
@ -149,7 +157,7 @@ static void traversedir(char* location, char* name)
lasttick = *rb->current_tick; lasttick = *rb->current_tick;
button = pluginlib_getaction(TIMEOUT_NOBLOCK, plugin_contexts, button = pluginlib_getaction(TIMEOUT_NOBLOCK, plugin_contexts,
ARRAYLEN(plugin_contexts)); ARRAYLEN(plugin_contexts));
if (button == STATS_STOP) { if (button == STATS_STOP || button == STATS_STOP2) {
cancel = true; cancel = true;
break; break;
} }

View file

@ -54,7 +54,7 @@ static long max_cycle;
#define BTN_DIR_LEFT BUTTON_LEFT #define BTN_DIR_LEFT BUTTON_LEFT
#define BTN_DIR_RIGHT BUTTON_RIGHT #define BTN_DIR_RIGHT BUTTON_RIGHT
#define BTN_STARTPAUSE (BUTTON_SELECT|BUTTON_REL) #define BTN_STARTPAUSE (BUTTON_SELECT|BUTTON_REL)
#define BTN_QUIT (BUTTON_SELECT|BUTTON_MENU) #define BTN_QUIT (BUTTON_SELECT|BUTTON_REPEAT)
#define BTN_STOPRESET (BUTTON_SELECT|BUTTON_PLAY) #define BTN_STOPRESET (BUTTON_SELECT|BUTTON_PLAY)
#elif (CONFIG_KEYPAD == IRIVER_H300_PAD) || (CONFIG_KEYPAD == IRIVER_H100_PAD) #elif (CONFIG_KEYPAD == IRIVER_H300_PAD) || (CONFIG_KEYPAD == IRIVER_H100_PAD)

View file

@ -42,10 +42,10 @@
(CONFIG_KEYPAD == IPOD_3G_PAD) || \ (CONFIG_KEYPAD == IPOD_3G_PAD) || \
(CONFIG_KEYPAD == IPOD_1G2G_PAD) (CONFIG_KEYPAD == IPOD_1G2G_PAD)
#define QUIT (BUTTON_SELECT | BUTTON_MENU) #define QUIT (BUTTON_SELECT | BUTTON_REPEAT)
#define LEFT BUTTON_LEFT #define LEFT BUTTON_LEFT
#define RIGHT BUTTON_RIGHT #define RIGHT BUTTON_RIGHT
#define PAUSE BUTTON_SELECT #define PAUSE (BUTTON_SELECT | BUTTON_REL)
#define MENU_UP BUTTON_SCROLL_FWD #define MENU_UP BUTTON_SCROLL_FWD
#define MENU_DOWN BUTTON_SCROLL_BACK #define MENU_DOWN BUTTON_SCROLL_BACK
#define UP BUTTON_MENU #define UP BUTTON_MENU

View file

@ -14,7 +14,8 @@ which -- in computer talk -- means a multiple of 1024).}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCUp, \PluginRCDown, \PluginRCLeft, \PluginRCRight} \opt{HAVEREMOTEKEYMAP}{& \PluginRCUp, \PluginRCDown, \PluginRCLeft, \PluginRCRight}
& Slide tiles\\ & Slide tiles\\
\PluginCancel \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Go to menu\\ & Go to menu\\
\end{btnmap} \end{btnmap}

View file

@ -9,7 +9,8 @@ This plugin is an alarm clock, which resumes a paused song at a given time.
& Switch between hours/minutes selection \\ & Switch between hours/minutes selection \\
\opt{scrollwheel}{\PluginScrollBack{} / \PluginScrollFwd{} or} \opt{scrollwheel}{\PluginScrollBack{} / \PluginScrollFwd{} or}
\PluginUp{} / \PluginDown \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp{} / \PluginDown}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginDown}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCUp{} / \PluginRCDown} \opt{HAVEREMOTEKEYMAP}{& \PluginRCUp{} / \PluginRCDown}
& Increase/Decrease hours/minutes \\ & Increase/Decrease hours/minutes \\
@ -17,7 +18,8 @@ This plugin is an alarm clock, which resumes a paused song at a given time.
\opt{HAVEREMOTEKEYMAP}{& \PluginRCSelect} \opt{HAVEREMOTEKEYMAP}{& \PluginRCSelect}
& Set the alarm \\ & Set the alarm \\
\PluginCancel \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Exit \\ & Exit \\
\end{btnmap} \end{btnmap}

View file

@ -6,7 +6,8 @@ In \setting{Scroll mode} the bouncing text is replaced by a different one
scrolling from right to left. scrolling from right to left.
\begin{btnmap} \begin{btnmap}
\PluginUp / \PluginDown \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp{} / \PluginDown}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginLeft{} / \PluginRight}
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Moves to next/previous option\\ & Moves to next/previous option\\
\nopt{scrollwheel} { \nopt{scrollwheel} {
@ -20,7 +21,8 @@ scrolling from right to left.
\PluginSelect \PluginSelect
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Toggles Scroll mode\\ & Toggles Scroll mode\\
\PluginCancel{} or \PluginExit \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel{} or \PluginExit}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp}
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Exits bounce demo\\ & Exits bounce demo\\
\end{btnmap} \end{btnmap}

View file

@ -10,7 +10,8 @@ fired. Points are awarded depending on how quickly the level was completed.
\begin{btnmap} \begin{btnmap}
\opt{IRIVER_H10_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\PluginSelect} \opt{IRIVER_H10_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\PluginSelect}
\nopt{IRIVER_H10_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\PluginUp} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonPlay}
\nopt{IRIVER_H10_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD,IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCUp} \opt{HAVEREMOTEKEYMAP}{& \PluginRCUp}
& Pause game\\ & Pause game\\
@ -24,7 +25,8 @@ fired. Points are awarded depending on how quickly the level was completed.
\opt{HAVEREMOTEKEYMAP}{& \PluginRCSelect} \opt{HAVEREMOTEKEYMAP}{& \PluginRCSelect}
& Fire bubble\\ & Fire bubble\\
\PluginCancel{} or \PluginExit \nopt{IRIVER_H10_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD,IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel{} or \PluginExit}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Exit to menu\\ & Exit to menu\\
\end{btnmap} \end{btnmap}

View file

@ -37,9 +37,9 @@ You can select what day is first day of week by the setting \setting{First Day o
\opt{MPIO_HD300_PAD}{\ButtonRew / \ButtonFF \opt{MPIO_HD300_PAD}{\ButtonRew / \ButtonFF
& Previous / Next week\\} & Previous / Next week\\}
% %
\nopt{IPOD_4G_PAD,IPOD_3G_PAD}{
\opt{MROBE100_PAD}{\ButtonMenu{} + \ButtonUp{} / \ButtonDown} \opt{MROBE100_PAD}{\ButtonMenu{} + \ButtonUp{} / \ButtonDown}
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonMode{} / \ButtonRec} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonMode{} / \ButtonRec}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonPlay{} / \ButtonMenu}
\opt{IAUDIO_X5_PAD}{\ButtonRec{} / \ButtonPlay} \opt{IAUDIO_X5_PAD}{\ButtonRec{} / \ButtonPlay}
\opt{GIGABEAT_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonVolUp{} / \ButtonVolDown} \opt{GIGABEAT_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonVolUp{} / \ButtonVolDown}
\opt{GIGABEAT_S_PAD}{\ButtonNext{} / \ButtonPrev} \opt{GIGABEAT_S_PAD}{\ButtonNext{} / \ButtonPrev}
@ -52,10 +52,10 @@ You can select what day is first day of week by the setting \setting{First Day o
\opt{MPIO_HD300_PAD}{\ButtonRec{} / \ButtonPlay} \opt{MPIO_HD300_PAD}{\ButtonRec{} / \ButtonPlay}
\opt{SANSA_FUZEPLUS_PAD}{\ButtonBack{} / \ButtonPlay} \opt{SANSA_FUZEPLUS_PAD}{\ButtonBack{} / \ButtonPlay}
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Previous / Next month\\ & Previous / Next month\\}
% %
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu{} + \ButtonSelect} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{GIGABEAT_S_PAD}{\ButtonBack} \opt{GIGABEAT_S_PAD}{\ButtonBack}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,MROBE100_PAD}{\ButtonPower} \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,MROBE100_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}

View file

@ -74,7 +74,7 @@ the game.
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Force play\\ & Force play\\
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD%
,MROBE100_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower} ,MROBE100_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}

View file

@ -17,7 +17,7 @@ The more blocks you remove per turn, the more points you get.
,SANSA_FUZE_PAD,PBELL_VIBE500_PAD,SANSA_FUZEPLUS_PAD,SAMSUNG_YH92X_PAD% ,SANSA_FUZE_PAD,PBELL_VIBE500_PAD,SANSA_FUZEPLUS_PAD,SAMSUNG_YH92X_PAD%
,SAMSUNG_YH820_PAD} ,SAMSUNG_YH820_PAD}
{\ButtonUp/\ButtonDown} {\ButtonUp/\ButtonDown}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu/\ButtonPlay} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonScrollFwd{} / \ButtonScrollBack}
\opt{IRIVER_H10_PAD}{\ButtonScrollUp/\ButtonScrollDown} \opt{IRIVER_H10_PAD}{\ButtonScrollUp/\ButtonScrollDown}
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Move the cursor around the blocks \\ & Move the cursor around the blocks \\
@ -32,6 +32,7 @@ The more blocks you remove per turn, the more points you get.
} }
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}
{\ButtonOff} {\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,MROBE100_PAD% \opt{IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,MROBE100_PAD%
,IAUDIO_X5_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower} ,IAUDIO_X5_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{\ButtonHome} \opt{SANSA_FUZE_PAD}{\ButtonHome}

View file

@ -10,11 +10,13 @@ This is a fully featured analogue and digital clock plugin.
\opt{HAVEREMOTEKEYMAP}{& \PluginRCLeft{} / \PluginRCRight} \opt{HAVEREMOTEKEYMAP}{& \PluginRCLeft{} / \PluginRCRight}
& Cycle through modes \\ & Cycle through modes \\
\PluginUp{} / \PluginDown \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp{} / \PluginDown}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginDown}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCUp{} / \PluginRCDown} \opt{HAVEREMOTEKEYMAP}{& \PluginRCUp{} / \PluginRCDown}
& Cycle through skins \\ & Cycle through skins \\
\PluginCancel \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Main Menu \\ & Main Menu \\

View file

@ -10,7 +10,8 @@ a correct peg in the correct position, and a white peg signifies a correct
peg in the wrong position. peg in the wrong position.
\begin{btnmap} \begin{btnmap}
\PluginCancel \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Show menu \\ & Show menu \\

View file

@ -4,7 +4,7 @@ This is a rotating cube screen saver in 3D.
\begin{btnmap} \begin{btnmap}
\opt{IAUDIO_X5_PAD,SANSA_E200_PAD,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD% \opt{IAUDIO_X5_PAD,SANSA_E200_PAD,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD%
,IRIVER_H100_PAD,IRIVER_H300_PAD,GIGABEAT_S_PAD}{\ButtonSelect} ,IRIVER_H100_PAD,IRIVER_H300_PAD,GIGABEAT_S_PAD}{\ButtonSelect}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonPlay} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect}
\opt{IRIVER_H10_PAD}{\ButtonFF} \opt{IRIVER_H10_PAD}{\ButtonFF}
\opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{Long \ButtonFF} \opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{Long \ButtonFF}
\opt{GIGABEAT_PAD}{\ButtonA} \opt{GIGABEAT_PAD}{\ButtonA}
@ -30,7 +30,7 @@ This is a rotating cube screen saver in 3D.
\opt{GIGABEAT_PAD,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD} \opt{GIGABEAT_PAD,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD}
{\ButtonMenu} {\ButtonMenu}
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonMode} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonMode}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonMenu}
\opt{IAUDIO_X5_PAD,SANSA_FUZEPLUS_PAD}{\ButtonSelect} \opt{IAUDIO_X5_PAD,SANSA_FUZEPLUS_PAD}{\ButtonSelect}
\opt{IRIVER_H10_PAD}{\ButtonRew} \opt{IRIVER_H10_PAD}{\ButtonRew}
\opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonFF} \opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonFF}

View file

@ -9,11 +9,13 @@ Demystify is a screen saver like demo.\\
\opt{HAVEREMOTEKEYMAP}{& \PluginRCLeft{} / \PluginRCRight} \opt{HAVEREMOTEKEYMAP}{& \PluginRCLeft{} / \PluginRCRight}
& Increase / decrease speed\\ & Increase / decrease speed\\
\PluginUp{} / \PluginDown \nopt{scrollwheel}{\PluginUp{} / \PluginDown}
\opt{scrollwheel}{\PluginLeft{} / \PluginRight}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCUp{} / \PluginRCDown} \opt{HAVEREMOTEKEYMAP}{& \PluginRCUp{} / \PluginRCDown}
& Add / remove polygon\\ & Add / remove polygon\\
\PluginCancel \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Quit\\ & Quit\\
\end{btnmap} \end{btnmap}

View file

@ -8,7 +8,8 @@ numbers as well as the total of the rolled dice.
\opt{HAVEREMOTEKEYMAP}{& \PluginRCSelect} \opt{HAVEREMOTEKEYMAP}{& \PluginRCSelect}
& Roll dice again\\ & Roll dice again\\
\PluginCancel \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Quit\\ & Quit\\
\end{btnmap} \end{btnmap}

View file

@ -16,7 +16,8 @@ Fire is a demo displaying a fire effect.
\opt{HAVEREMOTEKEYMAP}{& \PluginRCRight} \opt{HAVEREMOTEKEYMAP}{& \PluginRCRight}
& Toggle moving flames\\ & Toggle moving flames\\
\PluginCancel \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Quit\\ & Quit\\
\end{btnmap} \end{btnmap}

View file

@ -76,7 +76,7 @@ a screen containing tokens of only one colour.
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Solve step by step \\ & Solve step by step \\
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,GIGABEAT_PAD,MROBE100_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,GIGABEAT_PAD,MROBE100_PAD%
,SANSA_C200_PAD,SANSA_CLIP_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower} ,SANSA_C200_PAD,SANSA_CLIP_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}

View file

@ -92,7 +92,7 @@ This demonstration draws fractal images from the Mandelbrot set%
& Reset and return to the default image\\ & Reset and return to the default image\\
% %
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD%
,GIGABEAT_PAD,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD}{\ButtonPower} ,GIGABEAT_PAD,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}

View file

@ -113,7 +113,7 @@ view a bigger file you may need to stop playback.}
& Toggle slide show mode\\ & Toggle slide show mode\\
} }
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonPower} \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}
\opt{GIGABEAT_PAD,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD}{\ButtonMenu} \opt{GIGABEAT_PAD,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD}{\ButtonMenu}
@ -128,7 +128,7 @@ view a bigger file you may need to stop playback.}
& Show menu / Abort \\ & Show menu / Abort \\
\opt{IPOD_4G_PAD,IPOD_3G_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD% \opt{IPOD_4G_PAD,IPOD_3G_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD,MROBE100_PAD,PBELL_VIBE500_PAD%
,SAMSUNG_YH820_PAD}{ ,SAMSUNG_YH820_PAD}{
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonPlay} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect}
\opt{GIGABEAT_PAD,MROBE100_PAD}{\ButtonPower} \opt{GIGABEAT_PAD,MROBE100_PAD}{\ButtonPower}
\opt{GIGABEAT_S_PAD}{\ButtonBack} \opt{GIGABEAT_S_PAD}{\ButtonBack}
\opt{PBELL_VIBE500_PAD}{\ButtonCancel} \opt{PBELL_VIBE500_PAD}{\ButtonCancel}

View file

@ -9,7 +9,8 @@ have 20\$. Payouts are given when three matching symbols come up.
\opt{HAVEREMOTEKEYMAP}{& \PluginRCSelect} \opt{HAVEREMOTEKEYMAP}{& \PluginRCSelect}
& Play\\ & Play\\
\PluginCancel \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Exit the game \\ & Exit the game \\
\end{btnmap} \end{btnmap}

View file

@ -46,8 +46,8 @@ skillfully swapping pairs of jewels.
,IAUDIO_X5_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower} ,IAUDIO_X5_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}
\opt{GIGABEAT_S_PAD}{\ButtonBack} \opt{GIGABEAT_S_PAD}{\ButtonBack}
\opt{IPOD_3G_PAD,MPIO_HD300_PAD}{\ButtonMenu} \opt{MPIO_HD300_PAD}{\ButtonMenu}
\opt{IPOD_4G_PAD}{\ButtonSelect+ \ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{PBELL_VIBE500_PAD}{\ButtonRec} \opt{PBELL_VIBE500_PAD}{\ButtonRec}
\opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonRew} \opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonRew}

View file

@ -28,6 +28,7 @@ You get an empty screen with maximum brightness.
Toggle the button light Toggle the button light
\\ \\
} }
\PluginCancel{} or \PluginExit \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel{} or \PluginExit}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
& Exit to menu\\ & Exit to menu\\
\end{btnmap} \end{btnmap}

View file

@ -9,14 +9,16 @@ Demo showing the Rockbox logo bouncing around the screen.
Increase / decrease speed on the x-axis Increase / decrease speed on the x-axis
\\ \\
\PluginUp{} / \PluginDown \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp{} / \PluginDown}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonScrollFwd{} / \ButtonScrollBack}
& &
\opt{HAVEREMOTEKEYMAP}{ \opt{HAVEREMOTEKEYMAP}{
&} &}
Increase / decrease speed on the y-axis Increase / decrease speed on the y-axis
\\ \\
\PluginCancel{} or \PluginExit \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel{} or \PluginExit}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
& &
\opt{HAVEREMOTEKEYMAP}{ \opt{HAVEREMOTEKEYMAP}{
&} &}

View file

@ -4,8 +4,8 @@ This is a simple maze generator that creates perfect mazes that have only
one solution. one solution.
\begin{btnmap} \begin{btnmap}
\opt{IPOD_3G_PAD}{\ButtonScrollBack/\ButtonScrollFwd/\ButtonLeft/\ButtonRight} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonScrollBack/\ButtonScrollFwd/\ButtonLeft/\ButtonRight}
\nopt{IPOD_3G_PAD}{\PluginUp/\PluginDown/\PluginLeft/\PluginRight} \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp/\PluginDown/\PluginLeft/\PluginRight}
& &
\opt{HAVEREMOTEKEYMAP}{ \opt{HAVEREMOTEKEYMAP}{
\PluginRCUp, \PluginRCDown, \PluginRCLeft, \PluginRCRight \PluginRCUp, \PluginRCDown, \PluginRCLeft, \PluginRCRight
@ -13,24 +13,24 @@ one solution.
Navigate maze Navigate maze
\\ \\
\opt{IPOD_3G_PAD}{\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\nopt{IPOD_3G_PAD}{\PluginCancel} \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
& &
\opt{HAVEREMOTEKEYMAP}{\PluginRCCancel \opt{HAVEREMOTEKEYMAP}{\PluginRCCancel
&} &}
Exit plugin Exit plugin
\\ \\
\opt{IPOD_3G_PAD}{Long \ButtonSelect} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\nopt{IPOD_3G_PAD}{\PluginSelectRepeat} \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginSelectRepeat}
& &
\opt{HAVEREMOTEKEYMAP}{\PluginRCSelectRepeat \opt{HAVEREMOTEKEYMAP}{\PluginRCSelectRepeat
&} &}
New Maze New Maze
\\ \\
\opt{IPOD_3G_PAD}{\ButtonSelect} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect}
\nopt{IPOD_3G_PAD}{\PluginSelect} \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginSelect}
& &
\opt{HAVEREMOTEKEYMAP}{\PluginRCSelect \opt{HAVEREMOTEKEYMAP}{\PluginRCSelect
&} &}

View file

@ -13,8 +13,8 @@ You start the game with three lives.
Luckily, there are checkpoints at levels four and eight. Luckily, there are checkpoints at levels four and eight.
\begin{btnmap} \begin{btnmap}
\opt{IPOD_3G_PAD}{\ButtonScrollBack, \ButtonScrollFwd, \ButtonLeft, \ButtonRight} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonScrollBack, \ButtonScrollFwd, \ButtonLeft, \ButtonRight}
\nopt{IPOD_3G_PAD}{\PluginUp, \PluginDown, \PluginLeft, \PluginRight} \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp, \PluginDown, \PluginLeft, \PluginRight}
& &
\opt{HAVEREMOTEKEYMAP}{ \opt{HAVEREMOTEKEYMAP}{
\PluginRCUp, \PluginRCDown, \PluginRCLeft, \PluginRCRight \PluginRCUp, \PluginRCDown, \PluginRCLeft, \PluginRCRight
@ -22,8 +22,8 @@ Luckily, there are checkpoints at levels four and eight.
Move Character Move Character
\\ \\
\opt{IPOD_3G_PAD}{\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\nopt{IPOD_3G_PAD}{\PluginCancel} \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
& &
\opt{HAVEREMOTEKEYMAP}{\PluginRCCancel \opt{HAVEREMOTEKEYMAP}{\PluginRCCancel
&} &}

View file

@ -21,7 +21,8 @@ You can adjust the tempo through the interface or by tapping it out
on the appropriate button. on the appropriate button.
\begin{btnmap} \begin{btnmap}
\PluginExit \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginExit}
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Exit plugin \\ & Exit plugin \\

View file

@ -6,10 +6,11 @@
This simple graphics demo draws a mosaic picture on the screen of the \dap. This simple graphics demo draws a mosaic picture on the screen of the \dap.
\begin{btnmap} \begin{btnmap}
\PluginUp \PluginRight
& Change the gap between the drawing lines.\\ & Adjust the speed.\\
\PluginSelect \PluginSelect
& Restart the drawing process.\\ & Restart the drawing process.\\
\PluginCancel{} or \PluginExit \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel{} or \PluginExit}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
& Exits Mosaique demo\\ & Exits Mosaique demo\\
\end{btnmap} \end{btnmap}

View file

@ -14,7 +14,7 @@ to user input and music may start to skip.
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD,SANSA_E200_PAD% \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD,SANSA_E200_PAD%
,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,MROBE100_PAD% ,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,MROBE100_PAD%
,SANSA_FUZEPLUS_PAD}{\ButtonSelect} ,SANSA_FUZEPLUS_PAD}{\ButtonSelect}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonPlay} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IRIVER_H10_PAD}{\ButtonRew} \opt{IRIVER_H10_PAD}{\ButtonRew}
\opt{GIGABEAT_S_PAD}{\ButtonPrev} \opt{GIGABEAT_S_PAD}{\ButtonPrev}
\opt{COWON_D2_PAD}{\TouchTopMiddle} \opt{COWON_D2_PAD}{\TouchTopMiddle}
@ -92,7 +92,7 @@ to user input and music may start to skip.
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Increase / decrease speed\\ & Increase / decrease speed\\
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD%
,GIGABEAT_PAD,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD} ,GIGABEAT_PAD,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD}
{\ButtonPower} {\ButtonPower}

View file

@ -101,7 +101,7 @@ block and crosses which allow you to choose a replacement block.
} }
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect{} + \ButtonPlay} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,GIGABEAT_PAD,MROBE100_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,GIGABEAT_PAD,MROBE100_PAD%
,SANSA_C200_PAD,SANSA_CLIP_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower} ,SANSA_C200_PAD,SANSA_CLIP_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}

View file

@ -7,7 +7,8 @@ The periodic table plugin allows easy browsing and viewing of details of element
\opt{HAVEREMOTEKEYMAP}{& \PluginRCUp, \PluginRCDown, \PluginRCLeft, \PluginRCRight} \opt{HAVEREMOTEKEYMAP}{& \PluginRCUp, \PluginRCDown, \PluginRCLeft, \PluginRCRight}
& Move cursor\\ & Move cursor\\
\PluginCancel \PluginCancel{}
or \PluginSelect
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Quit\\ & Quit\\
\end{btnmap} \end{btnmap}

View file

@ -157,8 +157,10 @@ reduces the time it takes for cover art to be displayed.}}
Enter context menu Enter context menu
\\ \\
\nopt{IAUDIO_M3_PAD,SANSA_FUZEPLUS_PAD,FIIO_M3K_PAD}{\ActionStdMenu} \nopt{IAUDIO_M3_PAD,SANSA_FUZEPLUS_PAD,FIIO_M3K_PAD%
,IPOD_4G_PAD,IPOD_3G_PAD}{\ActionStdMenu}
\opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{or \ButtonRew} \opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{or \ButtonRew}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonMenu}
\opt{SANSA_FUZEPLUS_PAD}{Long \ButtonSelect} \opt{SANSA_FUZEPLUS_PAD}{Long \ButtonSelect}
\opt{FIIO_M3K_PAD}{\ButtonPower} \opt{FIIO_M3K_PAD}{\ButtonPower}
& &
@ -173,7 +175,7 @@ reduces the time it takes for cover art to be displayed.}}
\opt{IAUDIO_X5_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD,SANSA_E200_PAD,SANSA_CLIP_PAD% \opt{IAUDIO_X5_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD,SANSA_E200_PAD,SANSA_CLIP_PAD%
,MROBE100_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower} ,MROBE100_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower}
\opt{SANSA_C200_PAD,IRIVER_H10_PAD}{Long \ButtonPower} \opt{SANSA_C200_PAD,IRIVER_H10_PAD}{Long \ButtonPower}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ActionStdMenu}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}
\opt{PBELL_VIBE500_PAD}{\ButtonRec} \opt{PBELL_VIBE500_PAD}{\ButtonRec}
\opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{long \ButtonRew} \opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{long \ButtonRew}

View file

@ -4,7 +4,7 @@
Plasma is a demo displaying a 80's style retro plasma effect. Plasma is a demo displaying a 80's style retro plasma effect.
\begin{btnmap} \begin{btnmap}
\PluginUp{} / \PluginDown \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp{} / \PluginDown}
\opt{scrollwheel}{/ \PluginScrollFwd{} / \PluginScrollBack} \opt{scrollwheel}{/ \PluginScrollFwd{} / \PluginScrollBack}
& &
\opt{HAVEREMOTEKEYMAP}{\PluginRCUp{} / \PluginRCDown \opt{HAVEREMOTEKEYMAP}{\PluginRCUp{} / \PluginRCDown
@ -21,7 +21,8 @@ Plasma is a demo displaying a 80's style retro plasma effect.
\\ \\
}% }%
\PluginCancel{} / \PluginExit \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel{} / \PluginExit}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
& &
\opt{HAVEREMOTEKEYMAP}{\PluginRCCancel \opt{HAVEREMOTEKEYMAP}{\PluginRCCancel
\opt{IAUDIO_RC_PAD}{ / \PluginRCExit} \opt{IAUDIO_RC_PAD}{ / \PluginRCExit}

View file

@ -11,7 +11,8 @@ ends when robotfindskitten.
\opt{HAVEREMOTEKEYMAP}{& \PluginRCUp, \PluginRCDown, \PluginRCLeft, \PluginRCRight} \opt{HAVEREMOTEKEYMAP}{& \PluginRCUp, \PluginRCDown, \PluginRCLeft, \PluginRCRight}
& Move robot\\ & Move robot\\
\PluginCancel \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Quit\\ & Quit\\
\end{btnmap} \end{btnmap}

View file

@ -101,7 +101,7 @@ the blocks fall faster. If the pile of blocks reaches the ceiling, the game is o
& Pause\\ & Pause\\
} }
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu+\ButtonSelect} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,MROBE100_PAD}{\ButtonPower} \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD,MROBE100_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}
\opt{GIGABEAT_S_PAD}{\ButtonBack} \opt{GIGABEAT_S_PAD}{\ButtonBack}

View file

@ -10,7 +10,8 @@ horizontal moving anymore and no need to rotate the brick!
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Move down faster\\ & Move down faster\\
\PluginCancel{} or \PluginExit \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel{} or \PluginExit}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Quit\\ & Quit\\
\end{btnmap} \end{btnmap}

View file

@ -30,7 +30,8 @@ ignored.
\opt{HAVEREMOTEKEYMAP}{& \PluginRCLeft} \opt{HAVEREMOTEKEYMAP}{& \PluginRCLeft}
& Status (only when paused)\\ & Status (only when paused)\\
\PluginCancel \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel} \opt{HAVEREMOTEKEYMAP}{& \PluginRCCancel}
& Exit\\ & Exit\\
\end{btnmap} \end{btnmap}

View file

@ -59,7 +59,7 @@ launched via Open With), and numbered tiles \\
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_PAD%
,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower} ,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{GIGABEAT_S_PAD}{\ButtonBack} \opt{GIGABEAT_S_PAD}{\ButtonBack}
\opt{PBELL_VIBE500_PAD}{\ButtonRec} \opt{PBELL_VIBE500_PAD}{\ButtonRec}
\opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonRew} \opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonRew}

View file

@ -29,6 +29,7 @@ end when the snake touches either the borders of the screen or itself.
& Toggle Play/Pause\\ & Toggle Play/Pause\\
% %
\opt{SANSA_FUZEPLUS_PAD.XDUOO_X3_PAD}{\ButtonPower} \opt{SANSA_FUZEPLUS_PAD.XDUOO_X3_PAD}{\ButtonPower}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonRew} \opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonRew}
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Go to the plugin's menu\\ & Go to the plugin's menu\\

View file

@ -31,7 +31,7 @@ into itself.
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Pause and resume the game\\ & Pause and resume the game\\
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,SANSA_M200_PAD,GIGABEAT_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,SANSA_M200_PAD,GIGABEAT_PAD%
,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD}{\ButtonPower} ,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}

View file

@ -2,5 +2,8 @@
\screenshot{plugins/images/ss-snow}{Have you ever seen snow falling?}{img:snow} \screenshot{plugins/images/ss-snow}{Have you ever seen snow falling?}{img:snow}
This demo replicates snow falling on your screen. If you love winter, This demo replicates snow falling on your screen. If you love winter,
you will love this demo. Or maybe not. you will love this demo. Or maybe not.
Press \PluginCancel{} or \PluginExit{} to quit. Press
\nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel{} or \PluginExit{}}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
to quit.

View file

@ -33,7 +33,7 @@ information about the level format, see
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Move the ``sokoban'' up, down, left, or right\\ & Move the ``sokoban'' up, down, left, or right\\
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,GIGABEAT_PAD,MROBE100_PAD,SANSA_E200_PAD,SANSA_C200_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,GIGABEAT_PAD,MROBE100_PAD,SANSA_E200_PAD,SANSA_C200_PAD%
,SANSA_CLIP_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower} ,SANSA_CLIP_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}

View file

@ -111,7 +111,7 @@ visit
& Put the card on top of the remains stack on one of the final colour stacks.\\ & Put the card on top of the remains stack on one of the final colour stacks.\\
% %
\opt{IRIVER_H300_PAD,IRIVER_H100_PAD}{\ButtonOff} \opt{IRIVER_H300_PAD,IRIVER_H100_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu{} + \ButtonSelect} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD%
,GIGABEAT_PAD,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower} ,GIGABEAT_PAD,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}

View file

@ -107,7 +107,7 @@ could not otherwise reach. The block cannot take ``o''s.
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Next level \\ & Next level \\
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD%
,GIGABEAT_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD}{\ButtonPower} ,GIGABEAT_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}

View file

@ -8,7 +8,8 @@ Starfield simulation (like the classic screensaver).
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Increase / decrease number of stars\\ & Increase / decrease number of stars\\
\PluginUp{} / \PluginDown \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginUp{} / \PluginDown}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonScrollFwd{} / \ButtonScrollBack}
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Increase / decrease speed\\ & Increase / decrease speed\\
\opt{lcd_color}{% \opt{lcd_color}{%
@ -16,7 +17,8 @@ Starfield simulation (like the classic screensaver).
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Change colours\\% & Change colours\\%
}% }%
\PluginCancel{} or \PluginExit \nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel{} or \PluginExit}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Quit\\ & Quit\\
\end{btnmap} \end{btnmap}

View file

@ -5,6 +5,9 @@ The stats plugin counts the directories and files
(the total number as well as the number (the total number as well as the number
of audio, playlist, image and video files) of audio, playlist, image and video files)
on your \dap{}. on your \dap{}.
Press \PluginCancel{} or \PluginExit{} to abort counting and Press
\nopt{IPOD_4G_PAD,IPOD_3G_PAD}{\PluginCancel{} or \PluginExit{}}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu}
to abort counting and
exit the plugin. Press it again to quit after counting has exit the plugin. Press it again to quit after counting has
finished. finished.

View file

@ -152,7 +152,7 @@ There are two ways to stop a running game.
\begin{itemize} \begin{itemize}
\item If you want to quit Wormlet entirely simply hit \item If you want to quit Wormlet entirely simply hit
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}% \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}%
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu+\ButtonSelect}% \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}%
\opt{IAUDIO_X5_PAD,SANSA_E200_PAD,GIGABEAT_PAD,XDUOO_X3_PAD}{\ButtonPower}% \opt{IAUDIO_X5_PAD,SANSA_E200_PAD,GIGABEAT_PAD,XDUOO_X3_PAD}{\ButtonPower}%
\opt{SANSA_FUZE_PAD}{Long \ButtonHome}% \opt{SANSA_FUZE_PAD}{Long \ButtonHome}%
\opt{PBELL_VIBE500_PAD}{\ButtonRec}% \opt{PBELL_VIBE500_PAD}{\ButtonRec}%
@ -188,7 +188,7 @@ This freezes the game. If you hit
button again a new game starts with the same configuration. To return to the button again a new game starts with the same configuration. To return to the
games menu you can hit games menu you can hit
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}% \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}%
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonMenu+\ButtonSelect}% \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}%
\opt{IAUDIO_X5_PAD,SANSA_E200_PAD,GIGABEAT_PAD,XDUOO_X3_PAD}{\ButtonPower}% \opt{IAUDIO_X5_PAD,SANSA_E200_PAD,GIGABEAT_PAD,XDUOO_X3_PAD}{\ButtonPower}%
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}
\opt{PBELL_VIBE500_PAD}{\ButtonRec}% \opt{PBELL_VIBE500_PAD}{\ButtonRec}%

View file

@ -36,7 +36,7 @@ To finish a level you have to section off more than 75\%.
\opt{HAVEREMOTEKEYMAP}{& } \opt{HAVEREMOTEKEYMAP}{& }
& Pause\\ & Pause\\
\opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff}
\opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect{} + \ButtonMenu} \opt{IPOD_4G_PAD,IPOD_3G_PAD}{Long \ButtonSelect}
\opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD% \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD%
,GIGABEAT_PAD,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD}{\ButtonPower} ,GIGABEAT_PAD,MROBE100_PAD,COWON_D2_PAD,SANSA_FUZEPLUS_PAD,XDUOO_X3_PAD}{\ButtonPower}
\opt{SANSA_FUZE_PAD}{Long \ButtonHome} \opt{SANSA_FUZE_PAD}{Long \ButtonHome}