summaryrefslogtreecommitdiff
path: root/apps/plugins/flipit.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/flipit.c')
-rw-r--r--apps/plugins/flipit.c56
1 files changed, 16 insertions, 40 deletions
diff --git a/apps/plugins/flipit.c b/apps/plugins/flipit.c
index 4fe0681417..a4d59fff3d 100644
--- a/apps/plugins/flipit.c
+++ b/apps/plugins/flipit.c
@@ -436,31 +436,7 @@
436#define FLIPIT_STEP_BY_STEP (BUTTON_LEFT|BUTTON_VOLUP) 436#define FLIPIT_STEP_BY_STEP (BUTTON_LEFT|BUTTON_VOLUP)
437#define FLIPIT_TOGGLE BUTTON_SELECT 437#define FLIPIT_TOGGLE BUTTON_SELECT
438 438
439#elif CONFIG_KEYPAD == XDUOO_X3_PAD 439#elif CONFIG_KEYPAD == XDUOO_X3_PAD || CONFIG_KEYPAD == XDUOO_X3II_PAD || CONFIG_KEYPAD == XDUOO_X20_PAD
440
441#define FLIPIT_LEFT BUTTON_PREV
442#define FLIPIT_RIGHT BUTTON_NEXT
443#define FLIPIT_UP BUTTON_HOME
444#define FLIPIT_DOWN BUTTON_OPTION
445#define FLIPIT_QUIT BUTTON_POWER
446#define FLIPIT_SHUFFLE (BUTTON_HOME | BUTTON_PREV)
447#define FLIPIT_SOLVE (BUTTON_HOME | BUTTON_NEXT)
448#define FLIPIT_STEP_BY_STEP (BUTTON_HOME | BUTTON_PLAY)
449#define FLIPIT_TOGGLE BUTTON_PLAY
450
451#elif CONFIG_KEYPAD == XDUOO_X3II_PAD
452
453#define FLIPIT_LEFT BUTTON_PREV
454#define FLIPIT_RIGHT BUTTON_NEXT
455#define FLIPIT_UP BUTTON_HOME
456#define FLIPIT_DOWN BUTTON_OPTION
457#define FLIPIT_QUIT BUTTON_POWER
458#define FLIPIT_SHUFFLE (BUTTON_HOME | BUTTON_PREV)
459#define FLIPIT_SOLVE (BUTTON_HOME | BUTTON_NEXT)
460#define FLIPIT_STEP_BY_STEP (BUTTON_HOME | BUTTON_PLAY)
461#define FLIPIT_TOGGLE BUTTON_PLAY
462
463#elif CONFIG_KEYPAD == XDUOO_X20_PAD
464 440
465#define FLIPIT_LEFT BUTTON_PREV 441#define FLIPIT_LEFT BUTTON_PREV
466#define FLIPIT_RIGHT BUTTON_NEXT 442#define FLIPIT_RIGHT BUTTON_NEXT
@@ -484,7 +460,7 @@
484#define FLIPIT_STEP_BY_STEP (BUTTON_HOME | BUTTON_PLAY) 460#define FLIPIT_STEP_BY_STEP (BUTTON_HOME | BUTTON_PLAY)
485#define FLIPIT_TOGGLE BUTTON_PLAY 461#define FLIPIT_TOGGLE BUTTON_PLAY
486 462
487#elif CONFIG_KEYPAD == IHIFI_770_PAD 463#elif CONFIG_KEYPAD == IHIFI_770_PAD || CONFIG_KEYPAD == IHIFI_800_PAD
488 464
489#define FLIPIT_LEFT BUTTON_HOME 465#define FLIPIT_LEFT BUTTON_HOME
490#define FLIPIT_RIGHT BUTTON_VOL_DOWN 466#define FLIPIT_RIGHT BUTTON_VOL_DOWN
@@ -496,16 +472,16 @@
496#define FLIPIT_STEP_BY_STEP (BUTTON_POWER | BUTTON_PLAY) 472#define FLIPIT_STEP_BY_STEP (BUTTON_POWER | BUTTON_PLAY)
497#define FLIPIT_TOGGLE BUTTON_PLAY 473#define FLIPIT_TOGGLE BUTTON_PLAY
498 474
499#elif CONFIG_KEYPAD == IHIFI_800_PAD 475#elif CONFIG_KEYPAD == EROSQ_PAD
500 476
501#define FLIPIT_LEFT BUTTON_HOME 477#define FLIPIT_LEFT BUTTON_SCROLL_BACK
502#define FLIPIT_RIGHT BUTTON_VOL_DOWN 478#define FLIPIT_RIGHT BUTTON_SCROLL_FWD
503#define FLIPIT_UP BUTTON_PREV 479#define FLIPIT_UP BUTTON_PREV
504#define FLIPIT_DOWN BUTTON_NEXT 480#define FLIPIT_DOWN BUTTON_NEXT
505#define FLIPIT_QUIT BUTTON_POWER 481#define FLIPIT_QUIT BUTTON_POWER
506#define FLIPIT_SHUFFLE (BUTTON_POWER | BUTTON_PREV) 482#define FLIPIT_SHUFFLE BUTTON_MENU
507#define FLIPIT_SOLVE (BUTTON_POWER | BUTTON_NEXT) 483#define FLIPIT_SOLVE BUTTON_VOL_DOWN
508#define FLIPIT_STEP_BY_STEP (BUTTON_POWER | BUTTON_PLAY) 484#define FLIPIT_STEP_BY_STEP BUTTON_VOL_UP
509#define FLIPIT_TOGGLE BUTTON_PLAY 485#define FLIPIT_TOGGLE BUTTON_PLAY
510 486
511#else 487#else
@@ -562,8 +538,8 @@ static int cursor_pos, moves;
562/* draw a spot at the coordinates (x,y), range of p is 0-19 */ 538/* draw a spot at the coordinates (x,y), range of p is 0-19 */
563static void draw_spot(int p) 539static void draw_spot(int p)
564{ 540{
565 rb->lcd_bitmap_part( flipit_tokens, 0, spots[p] * TK_HEIGHT, 541 rb->lcd_bitmap_part( flipit_tokens, 0, spots[p] * TK_HEIGHT,
566 STRIDE(SCREEN_MAIN, BMPWIDTH_flipit_tokens, 542 STRIDE(SCREEN_MAIN, BMPWIDTH_flipit_tokens,
567 BMPHEIGHT_flipit_tokens), 543 BMPHEIGHT_flipit_tokens),
568 GRID_LEFT + (p%5) * (TK_WIDTH+TK_SPACE), 544 GRID_LEFT + (p%5) * (TK_WIDTH+TK_SPACE),
569 GRID_TOP + (p/5) * (TK_HEIGHT+TK_SPACE), 545 GRID_TOP + (p/5) * (TK_HEIGHT+TK_SPACE),
@@ -571,7 +547,7 @@ static void draw_spot(int p)
571} 547}
572 548
573/* draw the cursor at the current cursor position */ 549/* draw the cursor at the current cursor position */
574static void draw_cursor(void) 550static void draw_cursor(void)
575{ 551{
576#ifdef HAVE_LCD_COLOR 552#ifdef HAVE_LCD_COLOR
577 rb->lcd_bitmap_transparent( flipit_cursor, 553 rb->lcd_bitmap_transparent( flipit_cursor,
@@ -612,7 +588,7 @@ static inline void clear_cursor(void)
612} 588}
613 589
614/* check if the puzzle is finished */ 590/* check if the puzzle is finished */
615static bool flipit_finished(void) 591static bool flipit_finished(void)
616{ 592{
617 int i; 593 int i;
618 for (i=0; i<20; i++) 594 for (i=0; i<20; i++)
@@ -653,7 +629,7 @@ static void flipit_toggle(void)
653} 629}
654 630
655/* move the cursor in any direction */ 631/* move the cursor in any direction */
656static void move_cursor(int x, int y) 632static void move_cursor(int x, int y)
657{ 633{
658 if (!(flipit_finished())) { 634 if (!(flipit_finished())) {
659 clear_cursor(); 635 clear_cursor();
@@ -665,7 +641,7 @@ static void move_cursor(int x, int y)
665} 641}
666 642
667/* initialize the board */ 643/* initialize the board */
668static void flipit_init(void) 644static void flipit_init(void)
669{ 645{
670 int i; 646 int i;
671 647
@@ -690,7 +666,7 @@ static void flipit_init(void)
690} 666}
691 667
692/* the main game loop */ 668/* the main game loop */
693static bool flipit_loop(void) 669static bool flipit_loop(void)
694{ 670{
695 int i; 671 int i;
696 int button; 672 int button;
@@ -775,7 +751,7 @@ static bool flipit_loop(void)
775 /*move cursor though the entire field*/ 751 /*move cursor though the entire field*/
776#ifdef FLIPIT_SCROLLWHEEL 752#ifdef FLIPIT_SCROLLWHEEL
777 case FLIPIT_PREV: 753 case FLIPIT_PREV:
778 case FLIPIT_PREV|BUTTON_REPEAT: 754 case FLIPIT_PREV|BUTTON_REPEAT:
779 if ((cursor_pos)%5 == 0) { 755 if ((cursor_pos)%5 == 0) {
780 move_cursor(-1, -1); 756 move_cursor(-1, -1);
781 } 757 }