diff options
Diffstat (limited to 'apps')
50 files changed, 523 insertions, 7 deletions
diff --git a/apps/SOURCES b/apps/SOURCES index 1aa4955205..6118438b40 100644 --- a/apps/SOURCES +++ b/apps/SOURCES @@ -100,7 +100,7 @@ gui/statusbar.c #ifdef HAVE_LCD_BITMAP gui/statusbar-skinned.c #endif -#if (CONFIG_PLATFORM&PLATFORM_ANDROID) +#if (CONFIG_PLATFORM&PLATFORM_ANDROID) && !defined (DX50) && !defined(DX90) hosted/android/yesno.c hosted/android/notification.c #else @@ -129,7 +129,7 @@ player/keyboard.c #ifdef HAVE_LCD_BITMAP recorder/bmp.c recorder/icons.c -#if (CONFIG_PLATFORM&PLATFORM_ANDROID) +#if (CONFIG_PLATFORM&PLATFORM_ANDROID) && !defined (DX50) && !defined(DX90) hosted/android/keyboard.c #else recorder/keyboard.c @@ -305,4 +305,6 @@ keymaps/keymap-ypz5.c keymaps/keymap-ihifi.c #elif CONFIG_KEYPAD == SAMSUNG_YPR1_PAD keymaps/keymap-ypr1.c +#elif CONFIG_KEYPAD == DX50_PAD +keymaps/keymap-dx50.c #endif diff --git a/apps/keymaps/keymap-dx50.c b/apps/keymaps/keymap-dx50.c new file mode 100644 index 0000000000..ee3b32005a --- /dev/null +++ b/apps/keymaps/keymap-dx50.c @@ -0,0 +1,219 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 2010 Maurus Cuelenaere + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ + +/* Button Code Definitions for iBasso DX50 & DX90 */ + +#include <stdio.h> +#include <string.h> +#include <stdlib.h> + +#include "config.h" +#include "action.h" +#include "button.h" +#include "settings.h" + +/* + * The format of the list is as follows + * { Action Code, Button code, Prereq button code } + * if there's no need to check the previous button's value, use BUTTON_NONE + * Insert LAST_ITEM_IN_LIST at the end of each mapping + */ + +static const struct button_mapping button_context_standard[] = { + { ACTION_STD_PREV, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_STD_NEXT, BUTTON_RIGHT, BUTTON_NONE }, + { ACTION_STD_PREVREPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_STD_NEXTREPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, + { ACTION_STD_CANCEL, BUTTON_POWER, BUTTON_NONE }, + { ACTION_STD_CONTEXT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, + + LAST_ITEM_IN_LIST +}; /* button_context_standard */ + +static const struct button_mapping button_context_wps[] = { + { ACTION_WPS_MENU, BUTTON_POWER, BUTTON_NONE }, + { ACTION_WPS_CONTEXT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_WPS_PLAY, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE }, + { ACTION_WPS_SKIPNEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_NONE }, + { ACTION_WPS_SKIPPREV, BUTTON_LEFT|BUTTON_REL, BUTTON_NONE }, + { ACTION_WPS_SEEKBACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_WPS_SEEKFWD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_WPS_STOPSEEK, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT|BUTTON_REPEAT }, + { ACTION_WPS_STOPSEEK, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT|BUTTON_REPEAT }, + { ACTION_WPS_VOLUP, BUTTON_VOL_UP, BUTTON_NONE }, + { ACTION_WPS_VOLUP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_WPS_VOLDOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, + { ACTION_WPS_VOLDOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, + LAST_ITEM_IN_LIST +}; /* button_context_wps */ + +static const struct button_mapping button_context_list[] = { +#ifdef HAVE_VOLUME_IN_LIST + { ACTION_LIST_VOLUP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_LIST_VOLUP, BUTTON_VOL_UP, BUTTON_NONE }, + { ACTION_LIST_VOLDOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, + { ACTION_LIST_VOLDOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, +#endif + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD), +}; /* button_context_list */ + +static const struct button_mapping button_context_tree[] = { + + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_LIST), +}; /* button_context_tree */ + +static const struct button_mapping button_context_listtree_scroll_with_combo[] = { + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_TREE), +}; + +static const struct button_mapping button_context_listtree_scroll_without_combo[] = { + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_TREE), +}; + +static const struct button_mapping button_context_settings[] = { + { ACTION_SETTINGS_INC, BUTTON_VOL_UP|BUTTON_REL, BUTTON_NONE }, + { ACTION_SETTINGS_INCREPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_SETTINGS_DEC, BUTTON_VOL_DOWN|BUTTON_REL, BUTTON_NONE }, + { ACTION_SETTINGS_DECREPEAT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD), +}; /* button_context_settings */ + +static const struct button_mapping button_context_settings_right_is_inc[] = { + + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD), +}; /* button_context_settingsgraphical */ + +static const struct button_mapping button_context_mainmenu[] = { + + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_TREE), +}; /* button_context_mainmenu */ + +static const struct button_mapping button_context_yesno[] = { + { ACTION_YESNO_ACCEPT, BUTTON_PLAY, BUTTON_NONE }, + + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD), +}; /* button_context_settings_yesno */ + +static const struct button_mapping button_context_colorchooser[] = { + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS), +}; /* button_context_colorchooser */ + +static const struct button_mapping button_context_eq[] = { + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS), +}; /* button_context_eq */ + +static const struct button_mapping button_context_keyboard[] = { + { ACTION_KBD_LEFT, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_KBD_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_KBD_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, + { ACTION_KBD_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, + + { ACTION_KBD_CURSOR_LEFT, BUTTON_PLAY|BUTTON_LEFT, BUTTON_NONE }, + { ACTION_KBD_CURSOR_LEFT, BUTTON_PLAY|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_KBD_CURSOR_RIGHT, BUTTON_PLAY|BUTTON_RIGHT, BUTTON_NONE }, + { ACTION_KBD_CURSOR_RIGHT, BUTTON_PLAY|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_KBD_SELECT, BUTTON_PLAY, BUTTON_NONE }, + + { ACTION_KBD_UP, BUTTON_VOL_UP, BUTTON_NONE }, + { ACTION_KBD_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_KBD_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, + { ACTION_KBD_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, + + LAST_ITEM_IN_LIST +}; /* button_context_keyboard */ + +/** Bookmark Screen **/ +static const struct button_mapping button_context_bmark[] = { + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_LIST), +}; /* button_context_bmark */ + +static const struct button_mapping button_context_time[] = { + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS), +}; /* button_context_time */ + +static const struct button_mapping button_context_quickscreen[] = { + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) +}; /* button_context_quickscreen */ + +static const struct button_mapping button_context_pitchscreen[] = { + + { ACTION_PS_INC_SMALL, BUTTON_VOL_UP|BUTTON_REL, BUTTON_NONE }, + { ACTION_PS_DEC_SMALL, BUTTON_VOL_DOWN|BUTTON_REL, BUTTON_NONE }, + { ACTION_PS_EXIT, BUTTON_POWER, BUTTON_NONE }, + + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) +}; /* button_context_pitchcreen */ + + +static const struct button_mapping button_context_radio[] = { + LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS) +}; /* button_context_radio */ + +const struct button_mapping* target_get_context_mapping(int context) +{ + switch (context) + { + case CONTEXT_STD: + return button_context_standard; + case CONTEXT_WPS: + return button_context_wps; + + case CONTEXT_LIST: + return button_context_list; + case CONTEXT_MAINMENU: + return button_context_mainmenu; + case CONTEXT_TREE: + if (global_settings.hold_lr_for_scroll_in_list) + return button_context_listtree_scroll_without_combo; + else + return button_context_listtree_scroll_with_combo; + case CONTEXT_CUSTOM|CONTEXT_TREE: + return button_context_tree; + + case CONTEXT_SETTINGS: + return button_context_settings; + case CONTEXT_CUSTOM|CONTEXT_SETTINGS: + case CONTEXT_SETTINGS_RECTRIGGER: + return button_context_settings_right_is_inc; + + case CONTEXT_SETTINGS_COLOURCHOOSER: + return button_context_colorchooser; + case CONTEXT_SETTINGS_EQ: + return button_context_eq; + + case CONTEXT_SETTINGS_TIME: + return button_context_time; + + case CONTEXT_KEYBOARD: + return button_context_keyboard; + + case CONTEXT_FM: + return button_context_radio; + case CONTEXT_BOOKMARKSCREEN: + return button_context_bmark; + case CONTEXT_QUICKSCREEN: + return button_context_quickscreen; + case CONTEXT_PITCHSCREEN: + return button_context_pitchscreen; + } + return button_context_standard; +} diff --git a/apps/main.c b/apps/main.c index 9098180fb8..60164515fa 100644 --- a/apps/main.c +++ b/apps/main.c @@ -340,7 +340,7 @@ static void init(void) #ifdef SIMULATOR sim_tasks_init(); #endif -#if (CONFIG_PLATFORM & PLATFORM_ANDROID) +#if (CONFIG_PLATFORM & PLATFORM_ANDROID) && !defined(DX50) && !defined(DX90) notification_init(); #endif lang_init(core_language_builtin, language_strings, diff --git a/apps/plugins/battery_bench.c b/apps/plugins/battery_bench.c index 930d56f29a..b0976d5e10 100644 --- a/apps/plugins/battery_bench.c +++ b/apps/plugins/battery_bench.c @@ -261,6 +261,12 @@ #define BATTERY_ON_TXT "PLAY - start" #define BATTERY_OFF_TXT "Power" +#elif CONFIG_KEYPAD == DX50_PAD +#define BATTERY_ON BUTTON_PLAY +#define BATTERY_OFF BUTTON_POWER +#define BATTERY_OFF_TXT "POWER" +#define BATTERY_ON_TXT "PLAY - start" + #else #error No keymap defined! #endif diff --git a/apps/plugins/blackjack.c b/apps/plugins/blackjack.c index 2211f88620..4022696a1f 100644 --- a/apps/plugins/blackjack.c +++ b/apps/plugins/blackjack.c @@ -541,6 +541,20 @@ enum { #define BJACK_QUIT_NAME "Back" #define BJACK_DOUBLE_NAME "Shortcut" +#elif CONFIG_KEYPAD == DX50_PAD +#define BJACK_QUIT BUTTON_POWER +#define BJACK_DOUBLEDOWN BUTTON_RIGHT +#define BJACK_SELECT BUTTON_PLAY +#define BJACK_QUIT BUTTON_POWER +#define BJACK_STAY BUTTON_LEFT +#define BJACK_UP BUTTON_VOL_UP +#define BJACK_DOWN BUTTON_VOL_DOWN +#define BJACK_LEFT BUTTON_LEFT +#define BJACK_SELECT_NAME "Play" +#define BJACK_STAY_NAME "Left" +#define BJACK_QUIT_NAME "Power" +#define BJACK_DOUBLE_NAME "Right" + #else #error No keymap defined! #endif diff --git a/apps/plugins/brickmania.c b/apps/plugins/brickmania.c index ee72e0bf37..0c9223d398 100644 --- a/apps/plugins/brickmania.c +++ b/apps/plugins/brickmania.c @@ -311,6 +311,13 @@ CONFIG_KEYPAD == SANSA_CONNECT_PAD #define UP BUTTON_UP #define DOWN BUTTON_DOWN +#elif CONFIG_KEYPAD == DX50_PAD +#define QUIT BUTTON_POWER +#define LEFT BUTTON_LEFT +#define RIGHT BUTTON_RIGHT +#define SELECT BUTTON_PLAY +#define UP BUTTON_VOL_UP +#define DOWN BUTTON_VOL_DOWN #else #error No keymap defined! diff --git a/apps/plugins/calculator.c b/apps/plugins/calculator.c index 6c75595f9e..c378ecbb81 100644 --- a/apps/plugins/calculator.c +++ b/apps/plugins/calculator.c @@ -497,6 +497,9 @@ F3: equal to "=" #define CALCULATOR_CALC BUTTON_PLAYPAUSE #define CALCULATOR_CLEAR BUTTON_SHORTCUT +#elif CONFIG_KEYPAD == DX50_PAD +#define CALCULATOR_QUIT BUTTON_POWER + #else #error No keymap defined! #endif diff --git a/apps/plugins/calendar.c b/apps/plugins/calendar.c index 2e0577fc73..91613fcf88 100644 --- a/apps/plugins/calendar.c +++ b/apps/plugins/calendar.c @@ -369,6 +369,16 @@ #define CALENDAR_NEXT_MONTH BUTTON_SHORTCUT #define CALENDAR_PREV_MONTH BUTTON_MENU +#elif CONFIG_KEYPAD == DX50_PAD +#define CALENDAR_QUIT (BUTTON_POWER|BUTTON_REL) +#define CALENDAR_SELECT BUTTON_PLAY +#define CALENDAR_NEXT_WEEK BUTTON_VOL_DOWN +#define CALENDAR_PREV_WEEK BUTTON_VOL_UP +#define CALENDAR_NEXT_DAY BUTTON_RIGHT +#define CALENDAR_PREV_DAY BUTTON_LEFT +#define CALENDAR_NEXT_MONTH BUTTON_BOTTOMRIGHT +#define CALENDAR_PREV_MONTH BUTTON_BOTTOMLEFT + #else #error "No keypad setting." #endif diff --git a/apps/plugins/chessbox/chessbox_pgn.h b/apps/plugins/chessbox/chessbox_pgn.h index c7aca0f939..df6a01c891 100644 --- a/apps/plugins/chessbox/chessbox_pgn.h +++ b/apps/plugins/chessbox/chessbox_pgn.h @@ -485,6 +485,19 @@ #define CB_MENU BUTTON_MENU #define CB_LEVEL BUTTON_BACK +#elif CONFIG_KEYPAD == DX50_PAD +#define CB_SELECT BUTTON_PLAY +#define CB_UP BUTTON_VOL_UP +#define CB_DOWN BUTTON_VOL_DOWN +#define CB_LEFT BUTTON_LEFT +#define CB_RIGHT BUTTON_RIGHT +#define CB_PLAY (BUTTON_PLAY|BUTTON_REPEAT) +#define CB_MENU BUTTON_POWER +#define CB_SCROLL_UP (BUTTON_VOL_UP|BUTTON_REPEAT) +#define CB_SCROLL_DOWN (BUTTON_VOL_DOWN|BUTTON_REPEAT) +#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT) +#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT) + #else #error No keymap defined! #endif diff --git a/apps/plugins/chessclock.c b/apps/plugins/chessclock.c index cacfbbe939..01895d20f8 100644 --- a/apps/plugins/chessclock.c +++ b/apps/plugins/chessclock.c @@ -387,6 +387,15 @@ #define CHC_SETTINGS_OK BUTTON_SELECT #define CHC_SETTINGS_CANCEL BUTTON_BACK +#elif CONFIG_KEYPAD == DX50_PAD +#define CHC_QUIT (BUTTON_POWER|BUTTON_REPEAT) +#define CHC_RESET (BUTTON_PLAY|BUTTON_REPEAT) +#define CHC_MENU BUTTON_RIGHT +#define CHC_STARTSTOP BUTTON_PLAY +#define CHC_SETTINGS_INC BUTTON_VOL_UP +#define CHC_SETTINGS_DEC BUTTON_VOL_DOWN +#define CHC_SETTINGS_CANCEL BUTTON_RIGHT + #else #error No keymap defined! #endif diff --git a/apps/plugins/chip8.c b/apps/plugins/chip8.c index d1a8285ace..efb62eb27e 100644 --- a/apps/plugins/chip8.c +++ b/apps/plugins/chip8.c @@ -1259,6 +1259,9 @@ CONFIG_KEYPAD == MROBE500_PAD #define CHIP8_KEY8 BUTTON_PLAY #define CHIP8_KEY9 BUTTON_POWER +#elif (CONFIG_KEYPAD == DX50_PAD) +#define CHIP8_OFF BUTTON_POWER + #else #error No keymap defined! #endif diff --git a/apps/plugins/clix.c b/apps/plugins/clix.c index c204663cf5..ffbb01abb8 100644 --- a/apps/plugins/clix.c +++ b/apps/plugins/clix.c @@ -253,6 +253,9 @@ #elif (CONFIG_KEYPAD == SAMSUNG_YPR1_PAD) #define CLIX_BUTTON_QUIT BUTTON_POWER +#elif (CONFIG_KEYPAD == DX50_PAD) +#define CLIX_BUTTON_QUIT BUTTON_POWER + #else #error "no keymap" #endif diff --git a/apps/plugins/cube.c b/apps/plugins/cube.c index 5331d531db..09993204cd 100644 --- a/apps/plugins/cube.c +++ b/apps/plugins/cube.c @@ -390,6 +390,14 @@ #define CUBE_PAUSE BUTTON_PLAYPAUSE #define CUBE_HIGHSPEED BUTTON_SHORTCUT +#elif (CONFIG_KEYPAD == DX50_PAD) +#define CUBE_QUIT (BUTTON_POWER|BUTTON_REL) +#define CUBE_NEXT BUTTON_RIGHT +#define CUBE_PREV BUTTON_LEFT +#define CUBE_INC BUTTON_VOL_UP +#define CUBE_DEC BUTTON_VOL_DOWN +#define CUBE_MODE BUTTON_PLAY + #else #error No keymap defined! #endif diff --git a/apps/plugins/doom/i_video.c b/apps/plugins/doom/i_video.c index c285215e50..11aa712d33 100644 --- a/apps/plugins/doom/i_video.c +++ b/apps/plugins/doom/i_video.c @@ -523,6 +523,12 @@ void I_ShutdownGraphics(void) #define DOOMBUTTON_WEAPON BUTTON_SHORTCUT #define DOOMBUTTON_MAP BUTTON_MENU +#elif CONFIG_KEYPAD == DX50_PAD +#define DOOMBUTTON_ESC BUTTON_POWER +#define DOOMBUTTON_SHOOT BUTTON_VOL_UP +#define DOOMBUTTON_WEAPON BUTTON_VOL_DOWN +#define DOOMBUTTON_MAP BUTTON_PLAY + #else #error Keymap not defined! #endif diff --git a/apps/plugins/fft/fft.c b/apps/plugins/fft/fft.c index d4b79b2ea7..9871c31eb9 100644 --- a/apps/plugins/fft/fft.c +++ b/apps/plugins/fft/fft.c @@ -320,6 +320,11 @@ GREY_INFO_STRUCT # define FFT_ORIENTATION BUTTON_SELECT # define FFT_WINDOW BUTTON_MENU +#elif (CONFIG_KEYPAD == DX50_PAD) +# define FFT_QUIT (BUTTON_POWER|BUTTON_REL) +# define FFT_PREV_GRAPH BUTTON_VOL_UP +# define FFT_NEXT_GRAPH BUTTON_VOL_DOWN + #elif !defined(HAVE_TOUCHSCREEN) #error No keymap defined! #endif diff --git a/apps/plugins/flipit.c b/apps/plugins/flipit.c index 6274af4f1d..d3dc98aa54 100644 --- a/apps/plugins/flipit.c +++ b/apps/plugins/flipit.c @@ -453,6 +453,18 @@ #define FLIPIT_STEP_BY_STEP BUTTON_PLAY #define FLIPIT_TOGGLE BUTTON_SELECT +#elif CONFIG_KEYPAD == DX50_PAD + +#define FLIPIT_LEFT BUTTON_LEFT +#define FLIPIT_RIGHT BUTTON_RIGHT +#define FLIPIT_UP BUTTON_VOL_UP +#define FLIPIT_DOWN BUTTON_VOL_DOWN +#define FLIPIT_QUIT (BUTTON_POWER|BUTTON_REL) +#define FLIPIT_SHUFFLE (BUTTON_VOL_UP|BUTTON_POWER) +#define FLIPIT_SOLVE (BUTTON_VOL_DOWN|BUTTON_POWER) +#define FLIPIT_STEP_BY_STEP (BUTTON_LEFT|BUTTON_POWER) +#define FLIPIT_TOGGLE BUTTON_PLAY + #else #error No keymap defined! #endif diff --git a/apps/plugins/fractals/fractal.h b/apps/plugins/fractals/fractal.h index b5ab0d31c9..7e13657595 100644 --- a/apps/plugins/fractals/fractal.h +++ b/apps/plugins/fractals/fractal.h @@ -451,6 +451,9 @@ #define FRACTAL_PRECISION_DEC (BUTTON_POWER|BUTTON_MENU) #define FRACTAL_RESET BUTTON_SHORTCUT +#elif CONFIG_KEYPAD == DX50_PAD +#define FRACTAL_QUIT (BUTTON_POWER|BUTTON_REL) + #else #error No keymap defined! #endif diff --git a/apps/plugins/goban/goban.h b/apps/plugins/goban/goban.h index c709df3281..531b137556 100644 --- a/apps/plugins/goban/goban.h +++ b/apps/plugins/goban/goban.h @@ -432,6 +432,9 @@ #define GBN_BUTTON_CONTEXT BUTTON_PLAY #define GBN_BUTTON_NEXT_VAR BUTTON_NEXT +#elif (CONFIG_KEYPAD == DX50_PAD) +#define GBN_BUTTON_MENU (BUTTON_POWER|BUTTON_REL) + #else #error Unsupported keypad #endif diff --git a/apps/plugins/imageviewer/imageviewer_button.h b/apps/plugins/imageviewer/imageviewer_button.h index dd3b35041f..c5fb9730c1 100644 --- a/apps/plugins/imageviewer/imageviewer_button.h +++ b/apps/plugins/imageviewer/imageviewer_button.h @@ -452,6 +452,14 @@ #define IMGVIEW_PREVIOUS BUTTON_BACK #define IMGVIEW_MENU BUTTON_MENU +#elif CONFIG_KEYPAD == DX50_PAD +#define IMGVIEW_ZOOM_IN BUTTON_VOL_UP +#define IMGVIEW_ZOOM_OUT BUTTON_VOL_DOWN +#define IMGVIEW_NEXT BUTTON_RIGHT +#define IMGVIEW_PREVIOUS BUTTON_LEFT +#define IMGVIEW_QUIT (BUTTON_POWER|BUTTON_REL) +#define IMGVIEW_MENU (BUTTON_PLAY|BUTTON_REL) + #else #error No keymap defined! #endif diff --git a/apps/plugins/invadrox.c b/apps/plugins/invadrox.c index e77fe1e4a6..c1da3a6338 100644 --- a/apps/plugins/invadrox.c +++ b/apps/plugins/invadrox.c @@ -259,6 +259,13 @@ CONFIG_KEYPAD == MROBE500_PAD #define RIGHT BUTTON_RIGHT #define FIRE BUTTON_SELECT +#elif CONFIG_KEYPAD == DX50_PAD + +#define QUIT (BUTTON_POWER|BUTTON_REL) +#define LEFT BUTTON_LEFT +#define RIGHT BUTTON_PLAY +#define FIRE BUTTON_RIGHT + #else #error INVADROX: Unsupported keypad #endif diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c index b4c53a96c4..d8a3cc39b5 100644 --- a/apps/plugins/jewels.c +++ b/apps/plugins/jewels.c @@ -359,6 +359,10 @@ CONFIG_KEYPAD == MROBE500_PAD #define HK_SELECT "SELECT" #define HK_CANCEL "POWER" +#elif CONFIG_KEYPAD == DX50_PAD +#define JEWELS_CANCEL BUTTON_POWER +#define HK_CANCEL "Power" + #else #error No keymap defined! #endif diff --git a/apps/plugins/lib/pluginlib_actions.c b/apps/plugins/lib/pluginlib_actions.c index 97dde57fbe..3113f64667 100644 --- a/apps/plugins/lib/pluginlib_actions.c +++ b/apps/plugins/lib/pluginlib_actions.c @@ -434,6 +434,13 @@ const struct button_mapping pla_main_ctx[] = {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE}, {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY}, {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, +#elif (CONFIG_KEYPAD == DX50_PAD) + {PLA_CANCEL, BUTTON_LEFT|BUTTON_REL, BUTTON_NONE}, + {PLA_EXIT, BUTTON_POWER|BUTTON_REL, BUTTON_NONE}, + {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE}, + {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE}, + {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, + #else # ifndef HAVE_TOUCHSCREEN # error pluginlib_actions: No actions defined diff --git a/apps/plugins/midi/midiplay.c b/apps/plugins/midi/midiplay.c index f5edc83f9a..2f4a698fad 100644 --- a/apps/plugins/midi/midiplay.c +++ b/apps/plugins/midi/midiplay.c @@ -275,6 +275,13 @@ #define BTN_DOWN BUTTON_DOWN #define BTN_PLAY BUTTON_PLAYPAUSE +#elif CONFIG_KEYPAD == DX50_PAD +#define BTN_QUIT BUTTON_POWER +#define BTN_RIGHT BUTTON_RIGHT +#define BTN_LEFT BUTTON_LEFT +#define BTN_UP BUTTON_VOL_UP +#define BTN_DOWN BUTTON_VOL_DOWN + #else #error No keymap defined! #endif diff --git a/apps/plugins/minesweeper.c b/apps/plugins/minesweeper.c index 4758a1f911..982bb8b67c 100644 --- a/apps/plugins/minesweeper.c +++ b/apps/plugins/minesweeper.c @@ -377,6 +377,9 @@ CONFIG_KEYPAD == MROBE500_PAD #define MINESWP_DISCOVER BUTTON_SELECT #define MINESWP_INFO BUTTON_MENU +#elif (CONFIG_KEYPAD == DX50_PAD) +# define MINESWP_QUIT (BUTTON_POWER|BUTTON_REL) + #else #error No keymap defined! #endif diff --git a/apps/plugins/mp3_encoder.c b/apps/plugins/mp3_encoder.c index 7b3c18bea2..7da00ad23b 100644 --- a/apps/plugins/mp3_encoder.c +++ b/apps/plugins/mp3_encoder.c @@ -2540,6 +2540,11 @@ CONFIG_KEYPAD == MROBE500_PAD #define MP3ENC_DONE BUTTON_PLAYPAUSE #define MP3ENC_SELECT BUTTON_SELECT +#elif (CONFIG_KEYPAD == DX50_PAD) +#define MP3ENC_PREV BUTTON_LEFT +#define MP3ENC_NEXT BUTTON_RIGHT +#define MP3ENC_DONE BUTTON_POWER +#define MP3ENC_SELECT BUTTON_PLAY #else #error No keymap defined! diff --git a/apps/plugins/mpegplayer/mpeg_settings.c b/apps/plugins/mpegplayer/mpeg_settings.c index 7b259395b9..1a9636e8d8 100644 --- a/apps/plugins/mpegplayer/mpeg_settings.c +++ b/apps/plugins/mpegplayer/mpeg_settings.c @@ -289,6 +289,14 @@ struct mpeg_settings settings; #define MPEG_START_TIME_DOWN BUTTON_DOWN #define MPEG_START_TIME_EXIT BUTTON_BACK +#elif CONFIG_KEYPAD == DX50_PAD +#define MPEG_START_TIME_EXIT BUTTON_POWER +#define MPEG_START_TIME_SELECT BUTTON_PLAY +#define MPEG_START_TIME_LEFT BUTTON_LEFT +#define MPEG_START_TIME_RIGHT BUTTON_RIGHT +#define MPEG_START_TIME_UP BUTTON_VOL_UP +#define MPEG_START_TIME_DOWN BUTTON_VOL_DOWN + #else #error No keymap defined! #endif diff --git a/apps/plugins/mpegplayer/mpegplayer.c b/apps/plugins/mpegplayer/mpegplayer.c index b041094e25..945d906d8b 100644 --- a/apps/plugins/mpegplayer/mpegplayer.c +++ b/apps/plugins/mpegplayer/mpegplayer.c @@ -417,6 +417,15 @@ CONFIG_KEYPAD == SANSA_M200_PAD #define MPEG_RW BUTTON_LEFT #define MPEG_FF BUTTON_RIGHT +#elif CONFIG_KEYPAD == DX50_PAD +#define MPEG_MENU BUTTON_POWER +#define MPEG_VOLDOWN BUTTON_VOL_DOWN +#define MPEG_VOLUP BUTTON_VOL_UP +#define MPEG_RW BUTTON_LEFT +#define MPEG_FF BUTTON_RIGHT +#define MPEG_PAUSE BUTTON_PLAY +#define MPEG_STOP (BUTTON_PLAY|BUTTON_REPEAT) + #else #error No keymap defined! #endif diff --git a/apps/plugins/oscilloscope.c b/apps/plugins/oscilloscope.c index 559d52ea06..a0b976f466 100644 --- a/apps/plugins/oscilloscope.c +++ b/apps/plugins/oscilloscope.c @@ -486,6 +486,11 @@ #define OSCILLOSCOPE_VOL_UP BUTTON_UP #define OSCILLOSCOPE_VOL_DOWN BUTTON_DOWN +#elif CONFIG_KEYPAD == DX50_PAD +#define OSCILLOSCOPE_QUIT (BUTTON_POWER|BUTTON_REL) +#define OSCILLOSCOPE_VOL_UP BUTTON_VOL_UP +#define OSCILLOSCOPE_VOL_DOWN BUTTON_VOL_DOWN + #else #error No keymap defined! #endif diff --git a/apps/plugins/pacbox/pacbox.h b/apps/plugins/pacbox/pacbox.h index 1854006a91..5da7a8b099 100644 --- a/apps/plugins/pacbox/pacbox.h +++ b/apps/plugins/pacbox/pacbox.h @@ -328,6 +328,9 @@ #define PACMAN_1UP BUTTON_SELECT #define PACMAN_COIN BUTTON_PLAYPAUSE +#elif CONFIG_KEYPAD == DX50_PAD +#define PACMAN_MENU BUTTON_POWER + #else #error Keymap not defined! diff --git a/apps/plugins/pegbox.c b/apps/plugins/pegbox.c index fc0019fc26..1048138136 100644 --- a/apps/plugins/pegbox.c +++ b/apps/plugins/pegbox.c @@ -616,6 +616,11 @@ CONFIG_KEYPAD == MROBE500_PAD #define LVL_DOWN_TEXT "PLAY/PAUSE" #define SELECT_TEXT "SELECT" +#elif CONFIG_KEYPAD == DX50_PAD +#define PEGBOX_QUIT BUTTON_POWER + +#define QUIT_TEXT "Power" + #else #error Unsupported keymap! #endif diff --git a/apps/plugins/plugins.make b/apps/plugins/plugins.make index 92769d770a..1edbd37306 100644 --- a/apps/plugins/plugins.make +++ b/apps/plugins/plugins.make @@ -11,7 +11,9 @@ is_app_build = ifdef APP_TYPE ifneq ($(APP_TYPE),sdl-sim) - is_app_build = yes +ifeq (,$(findstring standalone, $(APP_TYPE))) + is_app_build = yes +endif endif endif diff --git a/apps/plugins/pong.c b/apps/plugins/pong.c index eb5adb3351..4ec62e01be 100644 --- a/apps/plugins/pong.c +++ b/apps/plugins/pong.c @@ -287,6 +287,9 @@ CONFIG_KEYPAD == MROBE500_PAD #define PONG_RIGHT_UP BUTTON_RIGHT #define PONG_RIGHT_DOWN BUTTON_LEFT +#elif (CONFIG_KEYPAD == DX50_PAD) +#define PONG_QUIT (BUTTON_POWER|BUTTON_REL) + #else #error No keymap defined! #endif diff --git a/apps/plugins/reversi/reversi-gui.h b/apps/plugins/reversi/reversi-gui.h index 5c43ce2373..3932b688ef 100644 --- a/apps/plugins/reversi/reversi-gui.h +++ b/apps/plugins/reversi/reversi-gui.h @@ -312,6 +312,10 @@ #define REVERSI_BUTTON_MAKE_MOVE BUTTON_SELECT #define REVERSI_BUTTON_MENU BUTTON_MENU +#elif CONFIG_KEYPAD == DX50_PAD +#define REVERSI_BUTTON_QUIT BUTTON_POWER +#define REVERSI_BUTTON_MENU BUTTON_PLAY + #else #error No keymap defined! #endif diff --git a/apps/plugins/rockblox.c b/apps/plugins/rockblox.c index 5647b0a719..cde542a1c0 100644 --- a/apps/plugins/rockblox.c +++ b/apps/plugins/rockblox.c @@ -449,6 +449,14 @@ #define ROCKBLOX_DROP BUTTON_SELECT #define ROCKBLOX_RESTART BUTTON_SHORTCUT +#elif CONFIG_KEYPAD == DX50_PAD +#define ROCKBLOX_OFF BUTTON_POWER +#define ROCKBLOX_ROTATE BUTTON_RIGHT +#define ROCKBLOX_LEFT BUTTON_LEFT +#define ROCKBLOX_RIGHT BUTTON_PLAY +#define ROCKBLOX_DROP BUTTON_VOL_DOWN +#define ROCKBLOX_RESTART BUTTON_VOL_UP + #else #error No keymap defined! #endif diff --git a/apps/plugins/rockboy/rockboy.c b/apps/plugins/rockboy/rockboy.c index c12df07140..12feabb8e1 100644 --- a/apps/plugins/rockboy/rockboy.c +++ b/apps/plugins/rockboy/rockboy.c @@ -402,6 +402,13 @@ static void setoptions (void) options.A = BUTTON_SHORTCUT; options.B = BUTTON_PLAYPAUSE; +#elif CONFIG_KEYPAD == DX50_PAD + options.A = BUTTON_VOL_UP; + options.B = BUTTON_VOL_DOWN; + options.MENU = BUTTON_POWER; + options.START = BUTTON_LEFT; + options.SELECT = BUTTON_RIGHT; + #else #error No Keymap Defined! #endif @@ -414,7 +421,7 @@ static void setoptions (void) #if CONFIG_KEYPAD == MROBE500_PAD options.A = BUTTON_BOTTOMLEFT; options.B = BUTTON_BOTTOMRIGHT; -#elif CONFIG_KEYPAD != COWON_D2_PAD +#elif (CONFIG_KEYPAD != COWON_D2_PAD ) || (CONFIG_KEYPAD != DX50_PAD ) options.A = BUTTON_BOTTOMLEFT; options.B = BUTTON_BOTTOMRIGHT; options.MENU = BUTTON_TOPLEFT; diff --git a/apps/plugins/rockpaint.c b/apps/plugins/rockpaint.c index af6ce20eec..f3647c6024 100644 --- a/apps/plugins/rockpaint.c +++ b/apps/plugins/rockpaint.c @@ -310,6 +310,9 @@ #define ROCKPAINT_TOOLBAR BUTTON_SHORTCUT #define ROCKPAINT_TOOLBAR2 BUTTON_PLAYPAUSE +#elif ( CONFIG_KEYPAD == DX50_PAD ) +#define ROCKPAINT_QUIT (BUTTON_POWER|BUTTON_REL) + #else #error "Please define keys for this keypad" #endif diff --git a/apps/plugins/sliding_puzzle.c b/apps/plugins/sliding_puzzle.c index 39c60628c7..d4dd01f948 100644 --- a/apps/plugins/sliding_puzzle.c +++ b/apps/plugins/sliding_puzzle.c @@ -310,6 +310,12 @@ CONFIG_KEYPAD == MROBE500_PAD #define PUZZLE_SHUFFLE BUTTON_SHORTCUT #define PUZZLE_PICTURE BUTTON_PLAYPAUSE +#elif (CONFIG_KEYPAD == DX50_PAD) +#define PUZZLE_QUIT (BUTTON_POWER|BUTTON_REL) +#define PUZZLE_SHUFFLE BUTTON_PLAY +#define PUZZLE_PICTURE BUTTON_RIGHT +#define PUZZLE_QUIT_TEXT "[Power]" + #else #error No keymap defined! #endif diff --git a/apps/plugins/snake.c b/apps/plugins/snake.c index 55d91cb5f9..a22ecf4c70 100644 --- a/apps/plugins/snake.c +++ b/apps/plugins/snake.c @@ -269,6 +269,14 @@ dir is the current direction of the snake - 0=up, 1=right, 2=down, 3=left; #define SNAKE_DOWN BUTTON_DOWN #define SNAKE_PLAYPAUSE BUTTON_PLAYPAUSE +#elif CONFIG_KEYPAD == DX50_PAD +#define SNAKE_QUIT BUTTON_POWER +#define SNAKE_LEFT BUTTON_LEFT +#define SNAKE_RIGHT BUTTON_PLAY +#define SNAKE_UP BUTTON_VOL_UP +#define SNAKE_DOWN BUTTON_VOL_DOWN +#define SNAKE_PLAYPAUSE BUTTON_RIGHT + #else #error No keymap defined! #endif diff --git a/apps/plugins/snake2.c b/apps/plugins/snake2.c index 2fb5521a79..b695dc9abd 100644 --- a/apps/plugins/snake2.c +++ b/apps/plugins/snake2.c @@ -383,6 +383,15 @@ CONFIG_KEYPAD == MROBE500_PAD #define SNAKE2_PLAYPAUSE BUTTON_PLAYPAUSE #define SNAKE2_PLAYPAUSE_TEXT "Play/Pause" +#elif (CONFIG_KEYPAD == DX50_PAD) +#define SNAKE2_QUIT (BUTTON_POWER|BUTTON_REL) +#define SNAKE2_LEFT BUTTON_LEFT +#define SNAKE2_RIGHT BUTTON_PLAY +#define SNAKE2_UP BUTTON_VOL_UP +#define SNAKE2_DOWN BUTTON_VOL_DOWN +#define SNAKE2_PLAYPAUSE BUTTON_RIGHT +#define SNAKE2_PLAYPAUSE_TEXT "Right" + #else #error No keymap defined! #endif diff --git a/apps/plugins/sokoban.c b/apps/plugins/sokoban.c index 07b5856240..f3c4f9c8f6 100644 --- a/apps/plugins/sokoban.c +++ b/apps/plugins/sokoban.c @@ -611,6 +611,14 @@ #define BUTTON_SAVE (BUTTON_POWER | BUTTON_PLAY) #define BUTTON_SAVE_NAME "POWER + PLAY" +#elif CONFIG_KEYPAD == DX50_PAD +#define SOKOBAN_MENU (BUTTON_POWER|BUTTON_REL) +#define SOKOBAN_PAUSE BUTTON_PLAY +#define SOKOBAN_LEVEL_DOWN BUTTON_LEFT +#define SOKOBAN_LEVEL_UP BUTTON_RIGHT +#define SOKOBAN_MENU_NAME "Power" +#define SOKOBAN_PAUSE_NAME "Play" + #else #error No keymap defined! #endif diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c index 04e3c15d56..541b42de42 100644 --- a/apps/plugins/solitaire.c +++ b/apps/plugins/solitaire.c @@ -651,6 +651,9 @@ CONFIG_KEYPAD == MROBE500_PAD #define HK_CUR2STACK "Menu" #define HK_REM2STACK "Shortcut" +#elif (CONFIG_KEYPAD == DX50_PAD) +# define SOL_QUIT (BUTTON_POWER | BUTTON_REL) + #else #error No keymap defined! #endif diff --git a/apps/plugins/spacerocks.c b/apps/plugins/spacerocks.c index 68f47caa4a..a7e9912cf4 100644 --- a/apps/plugins/spacerocks.c +++ b/apps/plugins/spacerocks.c @@ -333,6 +333,14 @@ #define AST_RIGHT BUTTON_RIGHT #define AST_FIRE BUTTON_SELECT +#elif (CONFIG_KEYPAD == DX50_PAD) +#define AST_QUIT BUTTON_POWER +#define AST_THRUST BUTTON_VOL_UP +#define AST_HYPERSPACE BUTTON_VOL_DOWN +#define AST_LEFT BUTTON_LEFT +#define AST_RIGHT BUTTON_PLAY +#define AST_FIRE BUTTON_RIGHT + #else #error No keymap defined! #endif diff --git a/apps/plugins/star.c b/apps/plugins/star.c index b43c05ebf5..a1367e9044 100644 --- a/apps/plugins/star.c +++ b/apps/plugins/star.c @@ -581,6 +581,10 @@ #define STAR_TOGGLE_CONTROL_NAME "Select" #define STAR_QUIT_NAME "Back" +#elif (CONFIG_KEYPAD == DX50_PAD) +#define STAR_QUIT BUTTON_POWER +#define STAR_QUIT_NAME "Power" + #else #error No keymap defined! #endif diff --git a/apps/plugins/sudoku/sudoku.h b/apps/plugins/sudoku/sudoku.h index 2bc65eeaa7..2caa75fbbe 100644 --- a/apps/plugins/sudoku/sudoku.h +++ b/apps/plugins/sudoku/sudoku.h @@ -398,6 +398,9 @@ #define SUDOKU_BUTTON_TOGGLE BUTTON_SELECT #define SUDOKU_BUTTON_POSSIBLE BUTTON_SHORTCUT +#elif CONFIG_KEYPAD == DX50_PAD +#define SUDOKU_BUTTON_QUIT (BUTTON_POWER|BUTTON_REL) + #else #error No keymap defined! #endif diff --git a/apps/plugins/text_viewer/tv_button.h b/apps/plugins/text_viewer/tv_button.h index bcaa593cea..7c0cfab519 100644 --- a/apps/plugins/text_viewer/tv_button.h +++ b/apps/plugins/text_viewer/tv_button.h @@ -506,6 +506,16 @@ #define TV_AUTOSCROLL BUTTON_PLAYPAUSE #define TV_BOOKMARK BUTTON_SHORTCUT +#elif CONFIG_KEYPAD == DX50_PAD +#define TV_QUIT (BUTTON_POWER | BUTTON_REL) +#define TV_SCROLL_UP BUTTON_VOL_UP +#define TV_SCROLL_DOWN BUTTON_VOL_DOWN +#define TV_SCREEN_LEFT BUTTON_LEFT +#define TV_SCREEN_RIGHT BUTTON_RIGHT +#define TV_MENU (BUTTON_PLAY | BUTTON_REL) +#define TV_AUTOSCROLL (BUTTON_POWER | BUTTON_PLAY) +#define TV_BOOKMARK (BUTTON_POWER | BUTTON_VOL_UP) + #else #error No keymap defined! #endif diff --git a/apps/plugins/vu_meter.c b/apps/plugins/vu_meter.c index 6d8922cd4b..43a7b917a9 100644 --- a/apps/plugins/vu_meter.c +++ b/apps/plugins/vu_meter.c @@ -395,6 +395,14 @@ #define LABEL_MENU "Menu" #define LABEL_VOLUME "Up/Down" +#elif CONFIG_KEYPAD == DX50_PAD +#define VUMETER_QUIT (BUTTON_POWER|BUTTON_REL) +#define VUMETER_MENU BUTTON_PLAY +#define VUMETER_UP BUTTON_RIGHT +#define VUMETER_DOWN BUTTON_LEFT +#define LABEL_QUIT "Power" +#define LABEL_MENU "Play" + #else #error No keymap defined! #endif diff --git a/apps/plugins/wormlet.c b/apps/plugins/wormlet.c index 51021dfac4..26b97c7748 100644 --- a/apps/plugins/wormlet.c +++ b/apps/plugins/wormlet.c @@ -370,6 +370,15 @@ CONFIG_KEYPAD == MROBE500_PAD #define BTN_QUIT BUTTON_BACK #define BTN_STOPRESET BUTTON_SHORTCUT +#elif CONFIG_KEYPAD == DX50_PAD +#define BTN_DIR_UP BUTTON_VOL_UP +#define BTN_DIR_DOWN BUTTON_VOL_DOWN +#define BTN_DIR_LEFT BUTTON_LEFT +#define BTN_DIR_RIGHT BUTTON_RIGHT +#define BTN_STARTPAUSE BUTTON_PLAY +#define BTN_QUIT BUTTON_POWER +#define BTN_STOPRESET (BUTTON_PLAY|BUTTON_REPEAT) + #else #error No keymap defined! #endif diff --git a/apps/plugins/xobox.c b/apps/plugins/xobox.c index 3cf3b2a434..f3ed96f282 100644 --- a/apps/plugins/xobox.c +++ b/apps/plugins/xobox.c @@ -322,6 +322,14 @@ CONFIG_KEYPAD == MROBE500_PAD #define DOWN BUTTON_DOWN #define PAUSE BUTTON_PLAYPAUSE +#elif CONFIG_KEYPAD == DX50_PAD +#define QUIT BUTTON_POWER +#define LEFT BUTTON_LEFT +#define RIGHT BUTTON_RIGHT +#define UP BUTTON_VOL_UP +#define DOWN BUTTON_VOL_DOWN +#define PAUSE BUTTON_PLAY + #else #error No keymap defined! #endif diff --git a/apps/plugins/zxbox/keymaps.h b/apps/plugins/zxbox/keymaps.h index d8be7f832b..bdbe4f93ad 100644 --- a/apps/plugins/zxbox/keymaps.h +++ b/apps/plugins/zxbox/keymaps.h @@ -262,6 +262,14 @@ #define ZX_RIGHT BUTTON_RIGHT #define ZX_SELECT BUTTON_SELECT +#elif CONFIG_KEYPAD == DX50_PAD +#define ZX_MENU BUTTON_POWER +#define ZX_UP BUTTON_VOL_UP +#define ZX_DOWN BUTTON_VOL_DOWN +#define ZX_SELECT BUTTON_PLAY +#define ZX_LEFT BUTTON_LEFT +#define ZX_RIGHT BUTTON_RIGHT + #else #error Keymap not defined! diff --git a/apps/root_menu.c b/apps/root_menu.c index 7ec803f585..f1b5017751 100644 --- a/apps/root_menu.c +++ b/apps/root_menu.c @@ -792,13 +792,13 @@ void root_menu(void) case GO_TO_ROOT: if (last_screen != GO_TO_ROOT) selected = get_selection(last_screen); -#if (CONFIG_PLATFORM&PLATFORM_ANDROID) +#if (CONFIG_PLATFORM&PLATFORM_ANDROID) && !defined(DX50) && !defined(DX90) /* When we are in the main menu we want the hardware BACK * button to be handled by Android instead of rockbox */ android_ignore_back_button(true); #endif next_screen = do_menu(&root_menu_, &selected, NULL, false); -#if (CONFIG_PLATFORM&PLATFORM_ANDROID) +#if (CONFIG_PLATFORM&PLATFORM_ANDROID) && !defined(DX50) && !defined(DX90) android_ignore_back_button(false); #endif if (next_screen != GO_TO_PREVIOUS) |