From 2a471e288c16b91a7186a60b3fb84dd55a494c7a Mon Sep 17 00:00:00 2001 From: Solomon Peachy Date: Thu, 8 Oct 2020 09:47:40 -0400 Subject: New port: AIGO EROS Q / EROS K The Q and K have a slightly different case, but the hardware under the shell is completely identical. These models are rebadged versions: * Hifiwalker H2 (== Q) * AGPTek H3 (== K) * Surfans F20 (== K) Other notes: * Significant improvements in the shared Hiby-platform launcher/loader * SD card can theoretically be hot-swapped now * Support external USB mass storage! * Some consolidation of Hiby-platform targets * Some consolidation of plugin keymaps Todo/known issues: * Keymaps need to be gone over properly * Convert to HAVE_SCROLLWHEEL? Change-Id: I5a8a4f22c38a5b69392ca7c0a8ad8c4e07d9523c --- apps/plugins/pegbox.c | 57 ++++++++++++++++++++++++--------------------------- 1 file changed, 27 insertions(+), 30 deletions(-) (limited to 'apps/plugins/pegbox.c') diff --git a/apps/plugins/pegbox.c b/apps/plugins/pegbox.c index 5f947fe5f2..b700051081 100644 --- a/apps/plugins/pegbox.c +++ b/apps/plugins/pegbox.c @@ -626,7 +626,7 @@ CONFIG_KEYPAD == MROBE500_PAD #define LVL_UP_TEXT "VOL+" #define LVL_DOWN_TEXT "VOL-" -#elif CONFIG_KEYPAD == XDUOO_X3II_PAD +#elif CONFIG_KEYPAD == XDUOO_X3II_PAD || CONFIG_KEYPAD == XDUOO_X20_PAD #define PEGBOX_SELECT BUTTON_PLAY #define PEGBOX_QUIT BUTTON_POWER #define PEGBOX_RESTART (BUTTON_POWER | BUTTON_HOME) @@ -643,7 +643,7 @@ CONFIG_KEYPAD == MROBE500_PAD #define LVL_UP_TEXT "VOL+" #define LVL_DOWN_TEXT "VOL-" -#elif CONFIG_KEYPAD == XDUOO_X20_PAD +#elif CONFIG_KEYPAD == FIIO_M3K_PAD #define PEGBOX_SELECT BUTTON_PLAY #define PEGBOX_QUIT BUTTON_POWER #define PEGBOX_RESTART (BUTTON_POWER | BUTTON_HOME) @@ -660,16 +660,16 @@ CONFIG_KEYPAD == MROBE500_PAD #define LVL_UP_TEXT "VOL+" #define LVL_DOWN_TEXT "VOL-" -#elif CONFIG_KEYPAD == FIIO_M3K_PAD +#elif CONFIG_KEYPAD == IHIFI_770_PAD || CONFIG_KEYPAD == IHIFI_800_PAD #define PEGBOX_SELECT BUTTON_PLAY #define PEGBOX_QUIT BUTTON_POWER #define PEGBOX_RESTART (BUTTON_POWER | BUTTON_HOME) -#define PEGBOX_LVL_UP BUTTON_VOL_UP -#define PEGBOX_LVL_DOWN BUTTON_VOL_DOWN -#define PEGBOX_UP BUTTON_HOME -#define PEGBOX_DOWN BUTTON_OPTION -#define PEGBOX_RIGHT BUTTON_NEXT -#define PEGBOX_LEFT BUTTON_PREV +#define PEGBOX_LVL_UP (BUTTON_POWER | BUTTON_VOL_UP) +#define PEGBOX_LVL_DOWN (BUTTON_POWER | BUTTON_VOL_DOWN) +#define PEGBOX_UP BUTTON_PREV +#define PEGBOX_DOWN BUTTON_NEXT +#define PEGBOX_RIGHT BUTTON_HOME +#define PEGBOX_LEFT BUTTON_VOL_DOWN #define SELECT_TEXT "PLAY" #define QUIT_TEXT "POWER" @@ -677,16 +677,16 @@ CONFIG_KEYPAD == MROBE500_PAD #define LVL_UP_TEXT "VOL+" #define LVL_DOWN_TEXT "VOL-" -#elif CONFIG_KEYPAD == IHIFI_770_PAD +#elif CONFIG_KEYPAD == FIIO_M3K_PAD #define PEGBOX_SELECT BUTTON_PLAY #define PEGBOX_QUIT BUTTON_POWER #define PEGBOX_RESTART (BUTTON_POWER | BUTTON_HOME) -#define PEGBOX_LVL_UP (BUTTON_POWER | BUTTON_VOL_UP) -#define PEGBOX_LVL_DOWN (BUTTON_POWER | BUTTON_VOL_DOWN) -#define PEGBOX_UP BUTTON_PREV -#define PEGBOX_DOWN BUTTON_NEXT -#define PEGBOX_RIGHT BUTTON_HOME -#define PEGBOX_LEFT BUTTON_VOL_DOWN +#define PEGBOX_LVL_UP BUTTON_VOL_UP +#define PEGBOX_LVL_DOWN BUTTON_VOL_DOWN +#define PEGBOX_UP BUTTON_HOME +#define PEGBOX_DOWN BUTTON_OPTION +#define PEGBOX_RIGHT BUTTON_NEXT +#define PEGBOX_LEFT BUTTON_PREV #define SELECT_TEXT "PLAY" #define QUIT_TEXT "POWER" @@ -694,28 +694,24 @@ CONFIG_KEYPAD == MROBE500_PAD #define LVL_UP_TEXT "VOL+" #define LVL_DOWN_TEXT "VOL-" -#elif CONFIG_KEYPAD == IHIFI_800_PAD +#elif CONFIG_KEYPAD == EROSQ_PAD #define PEGBOX_SELECT BUTTON_PLAY #define PEGBOX_QUIT BUTTON_POWER -#define PEGBOX_RESTART (BUTTON_POWER | BUTTON_HOME) -#define PEGBOX_LVL_UP (BUTTON_POWER | BUTTON_VOL_UP) -#define PEGBOX_LVL_DOWN (BUTTON_POWER | BUTTON_VOL_DOWN) +#define PEGBOX_RESTART BUTTON_BACK +#define PEGBOX_LVL_UP BUTTON_VOL_UP +#define PEGBOX_LVL_DOWN BUTTON_VOL_DOWN #define PEGBOX_UP BUTTON_PREV #define PEGBOX_DOWN BUTTON_NEXT -#define PEGBOX_RIGHT BUTTON_HOME -#define PEGBOX_LEFT BUTTON_VOL_DOWN +#define PEGBOX_RIGHT BUTTON_SCROLL_FWD +#define PEGBOX_LEFT BUTTON_SCROLL_BACK #define SELECT_TEXT "PLAY" #define QUIT_TEXT "POWER" -#define RESTART_TEXT "HOME" +#define RESTART_TEXT "BACK" #define LVL_UP_TEXT "VOL+" #define LVL_DOWN_TEXT "VOL-" -#else -#error Unsupported keymap! -#endif - -#ifdef HAVE_TOUCHSCREEN +#elif defined(HAVE_TOUCHSCREEN) #ifndef PEGBOX_QUIT #define PEGBOX_QUIT BUTTON_TOPLEFT #endif @@ -758,9 +754,10 @@ CONFIG_KEYPAD == MROBE500_PAD #ifndef LVL_DOWN_TEXT #define LVL_DOWN_TEXT "BOTTOMRIGHT" #endif +#else +#error Unsupported keymap! #endif - /* get several sizes from the bitmaps */ #ifdef BMPWIDTH_pegbox_pieces #define PIECE_WIDTH BMPWIDTH_pegbox_pieces @@ -1083,7 +1080,7 @@ static void pegbox_draw_board(struct game_context* pb) if(type != SPACE) { rb->lcd_bitmap_part(pegbox_pieces, 0, (type-1)*PIECE_HEIGHT, - STRIDE( SCREEN_MAIN, + STRIDE( SCREEN_MAIN, BMPWIDTH_pegbox_pieces,BMPHEIGHT_pegbox_pieces), c * PIECE_WIDTH + BOARD_X, r * PIECE_HEIGHT + BOARD_Y, PIECE_WIDTH, -- cgit v1.2.3