diff options
Diffstat (limited to 'apps/plugins/flipit.c')
-rw-r--r-- | apps/plugins/flipit.c | 52 |
1 files changed, 49 insertions, 3 deletions
diff --git a/apps/plugins/flipit.c b/apps/plugins/flipit.c index 4292ef8e4f..831cc857ec 100644 --- a/apps/plugins/flipit.c +++ b/apps/plugins/flipit.c | |||
@@ -22,6 +22,8 @@ PLUGIN_HEADER | |||
22 | 22 | ||
23 | /* variable button definitions */ | 23 | /* variable button definitions */ |
24 | #if CONFIG_KEYPAD == RECORDER_PAD | 24 | #if CONFIG_KEYPAD == RECORDER_PAD |
25 | #define FLIPIT_LEFT BUTTON_LEFT | ||
26 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
25 | #define FLIPIT_UP BUTTON_UP | 27 | #define FLIPIT_UP BUTTON_UP |
26 | #define FLIPIT_DOWN BUTTON_DOWN | 28 | #define FLIPIT_DOWN BUTTON_DOWN |
27 | #define FLIPIT_QUIT BUTTON_OFF | 29 | #define FLIPIT_QUIT BUTTON_OFF |
@@ -31,6 +33,8 @@ PLUGIN_HEADER | |||
31 | #define FLIPIT_TOGGLE BUTTON_PLAY | 33 | #define FLIPIT_TOGGLE BUTTON_PLAY |
32 | 34 | ||
33 | #elif CONFIG_KEYPAD == ARCHOS_AV300_PAD | 35 | #elif CONFIG_KEYPAD == ARCHOS_AV300_PAD |
36 | #define FLIPIT_LEFT BUTTON_LEFT | ||
37 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
34 | #define FLIPIT_UP BUTTON_UP | 38 | #define FLIPIT_UP BUTTON_UP |
35 | #define FLIPIT_DOWN BUTTON_DOWN | 39 | #define FLIPIT_DOWN BUTTON_DOWN |
36 | #define FLIPIT_QUIT BUTTON_OFF | 40 | #define FLIPIT_QUIT BUTTON_OFF |
@@ -40,6 +44,8 @@ PLUGIN_HEADER | |||
40 | #define FLIPIT_TOGGLE BUTTON_SELECT | 44 | #define FLIPIT_TOGGLE BUTTON_SELECT |
41 | 45 | ||
42 | #elif CONFIG_KEYPAD == PLAYER_PAD | 46 | #elif CONFIG_KEYPAD == PLAYER_PAD |
47 | #define FLIPIT_LEFT BUTTON_LEFT | ||
48 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
43 | #define FLIPIT_UP_PRE BUTTON_ON | 49 | #define FLIPIT_UP_PRE BUTTON_ON |
44 | #define FLIPIT_UP (BUTTON_ON | BUTTON_REL) | 50 | #define FLIPIT_UP (BUTTON_ON | BUTTON_REL) |
45 | #define FLIPIT_DOWN BUTTON_MENU | 51 | #define FLIPIT_DOWN BUTTON_MENU |
@@ -50,6 +56,8 @@ PLUGIN_HEADER | |||
50 | #define FLIPIT_TOGGLE BUTTON_PLAY | 56 | #define FLIPIT_TOGGLE BUTTON_PLAY |
51 | 57 | ||
52 | #elif CONFIG_KEYPAD == ONDIO_PAD | 58 | #elif CONFIG_KEYPAD == ONDIO_PAD |
59 | #define FLIPIT_LEFT BUTTON_LEFT | ||
60 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
53 | #define FLIPIT_UP BUTTON_UP | 61 | #define FLIPIT_UP BUTTON_UP |
54 | #define FLIPIT_DOWN BUTTON_DOWN | 62 | #define FLIPIT_DOWN BUTTON_DOWN |
55 | #define FLIPIT_QUIT BUTTON_OFF | 63 | #define FLIPIT_QUIT BUTTON_OFF |
@@ -61,6 +69,8 @@ PLUGIN_HEADER | |||
61 | 69 | ||
62 | #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ | 70 | #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ |
63 | (CONFIG_KEYPAD == IRIVER_H300_PAD) | 71 | (CONFIG_KEYPAD == IRIVER_H300_PAD) |
72 | #define FLIPIT_LEFT BUTTON_LEFT | ||
73 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
64 | #define FLIPIT_UP BUTTON_UP | 74 | #define FLIPIT_UP BUTTON_UP |
65 | #define FLIPIT_DOWN BUTTON_DOWN | 75 | #define FLIPIT_DOWN BUTTON_DOWN |
66 | #define FLIPIT_QUIT BUTTON_OFF | 76 | #define FLIPIT_QUIT BUTTON_OFF |
@@ -76,6 +86,8 @@ PLUGIN_HEADER | |||
76 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 86 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
77 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 87 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
78 | 88 | ||
89 | #define FLIPIT_LEFT BUTTON_LEFT | ||
90 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
79 | #define FLIPIT_UP BUTTON_MENU | 91 | #define FLIPIT_UP BUTTON_MENU |
80 | #define FLIPIT_DOWN BUTTON_PLAY | 92 | #define FLIPIT_DOWN BUTTON_PLAY |
81 | #define FLIPIT_QUIT (BUTTON_SELECT | BUTTON_MENU) | 93 | #define FLIPIT_QUIT (BUTTON_SELECT | BUTTON_MENU) |
@@ -87,6 +99,8 @@ PLUGIN_HEADER | |||
87 | 99 | ||
88 | #elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD | 100 | #elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD |
89 | 101 | ||
102 | #define FLIPIT_LEFT BUTTON_LEFT | ||
103 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
90 | #define FLIPIT_UP BUTTON_UP | 104 | #define FLIPIT_UP BUTTON_UP |
91 | #define FLIPIT_DOWN BUTTON_DOWN | 105 | #define FLIPIT_DOWN BUTTON_DOWN |
92 | #define FLIPIT_QUIT BUTTON_POWER | 106 | #define FLIPIT_QUIT BUTTON_POWER |
@@ -99,6 +113,8 @@ PLUGIN_HEADER | |||
99 | 113 | ||
100 | #elif CONFIG_KEYPAD == GIGABEAT_PAD | 114 | #elif CONFIG_KEYPAD == GIGABEAT_PAD |
101 | 115 | ||
116 | #define FLIPIT_LEFT BUTTON_LEFT | ||
117 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
102 | #define FLIPIT_UP BUTTON_UP | 118 | #define FLIPIT_UP BUTTON_UP |
103 | #define FLIPIT_DOWN BUTTON_DOWN | 119 | #define FLIPIT_DOWN BUTTON_DOWN |
104 | #define FLIPIT_QUIT BUTTON_POWER | 120 | #define FLIPIT_QUIT BUTTON_POWER |
@@ -110,6 +126,8 @@ PLUGIN_HEADER | |||
110 | #elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ | 126 | #elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ |
111 | (CONFIG_KEYPAD == SANSA_C200_PAD) | 127 | (CONFIG_KEYPAD == SANSA_C200_PAD) |
112 | 128 | ||
129 | #define FLIPIT_LEFT BUTTON_LEFT | ||
130 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
113 | #define FLIPIT_UP BUTTON_UP | 131 | #define FLIPIT_UP BUTTON_UP |
114 | #define FLIPIT_DOWN BUTTON_DOWN | 132 | #define FLIPIT_DOWN BUTTON_DOWN |
115 | #define FLIPIT_QUIT BUTTON_POWER | 133 | #define FLIPIT_QUIT BUTTON_POWER |
@@ -120,6 +138,8 @@ PLUGIN_HEADER | |||
120 | 138 | ||
121 | #elif CONFIG_KEYPAD == IRIVER_H10_PAD | 139 | #elif CONFIG_KEYPAD == IRIVER_H10_PAD |
122 | 140 | ||
141 | #define FLIPIT_LEFT BUTTON_LEFT | ||
142 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
123 | #define FLIPIT_UP BUTTON_SCROLL_UP | 143 | #define FLIPIT_UP BUTTON_SCROLL_UP |
124 | #define FLIPIT_DOWN BUTTON_SCROLL_DOWN | 144 | #define FLIPIT_DOWN BUTTON_SCROLL_DOWN |
125 | #define FLIPIT_QUIT BUTTON_POWER | 145 | #define FLIPIT_QUIT BUTTON_POWER |
@@ -131,6 +151,8 @@ PLUGIN_HEADER | |||
131 | 151 | ||
132 | #elif CONFIG_KEYPAD == GIGABEAT_S_PAD | 152 | #elif CONFIG_KEYPAD == GIGABEAT_S_PAD |
133 | 153 | ||
154 | #define FLIPIT_LEFT BUTTON_LEFT | ||
155 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
134 | #define FLIPIT_UP BUTTON_UP | 156 | #define FLIPIT_UP BUTTON_UP |
135 | #define FLIPIT_DOWN BUTTON_DOWN | 157 | #define FLIPIT_DOWN BUTTON_DOWN |
136 | #define FLIPIT_QUIT BUTTON_BACK | 158 | #define FLIPIT_QUIT BUTTON_BACK |
@@ -141,6 +163,8 @@ PLUGIN_HEADER | |||
141 | 163 | ||
142 | #elif CONFIG_KEYPAD == MROBE100_PAD | 164 | #elif CONFIG_KEYPAD == MROBE100_PAD |
143 | 165 | ||
166 | #define FLIPIT_LEFT BUTTON_LEFT | ||
167 | #define FLIPIT_RIGHT BUTTON_RIGHT | ||
144 | #define FLIPIT_UP BUTTON_UP | 168 | #define FLIPIT_UP BUTTON_UP |
145 | #define FLIPIT_DOWN BUTTON_DOWN | 169 | #define FLIPIT_DOWN BUTTON_DOWN |
146 | #define FLIPIT_QUIT BUTTON_POWER | 170 | #define FLIPIT_QUIT BUTTON_POWER |
@@ -149,6 +173,22 @@ PLUGIN_HEADER | |||
149 | #define FLIPIT_STEP_BY_STEP BUTTON_DISPLAY | 173 | #define FLIPIT_STEP_BY_STEP BUTTON_DISPLAY |
150 | #define FLIPIT_TOGGLE BUTTON_SELECT | 174 | #define FLIPIT_TOGGLE BUTTON_SELECT |
151 | 175 | ||
176 | #elif CONFIG_KEYPAD == IAUDIO_M3_PAD | ||
177 | |||
178 | #define FLIPIT_LEFT BUTTON_RC_REW | ||
179 | #define FLIPIT_RIGHT BUTTON_RC_FF | ||
180 | #define FLIPIT_UP BUTTON_RC_VOL_UP | ||
181 | #define FLIPIT_DOWN BUTTON_RC_VOL_DOWN | ||
182 | #define FLIPIT_QUIT BUTTON_RC_REC | ||
183 | #define FLIPIT_SHUFFLE BUTTON_RC_MODE | ||
184 | #define FLIPIT_SOLVE_PRE BUTTON_RC_MENU | ||
185 | #define FLIPIT_SOLVE (BUTTON_RC_MENU|BUTTON_REPEAT) | ||
186 | #define FLIPIT_STEP_PRE BUTTON_RC_MENU | ||
187 | #define FLIPIT_STEP_BY_STEP (BUTTON_RC_MENU|BUTTON_REL) | ||
188 | #define FLIPIT_TOGGLE BUTTON_RC_PLAY | ||
189 | |||
190 | #define FLIPIT_RC_QUIT BUTTON_REC | ||
191 | |||
152 | #else | 192 | #else |
153 | #error No keymap defined! | 193 | #error No keymap defined! |
154 | #endif | 194 | #endif |
@@ -174,7 +214,7 @@ static int cursor_pos, moves; | |||
174 | #define GRID_TOP MAX(0, ((LCD_HEIGHT - PANEL_HEIGHT - GRID_HEIGHT)/2)) | 214 | #define GRID_TOP MAX(0, ((LCD_HEIGHT - PANEL_HEIGHT - GRID_HEIGHT)/2)) |
175 | 215 | ||
176 | /* draw a spot at the coordinates (x,y), range of p is 0-19 */ | 216 | /* draw a spot at the coordinates (x,y), range of p is 0-19 */ |
177 | static void draw_spot(int p) | 217 | static void draw_spot(int p) |
178 | { | 218 | { |
179 | rb->lcd_bitmap_part( flipit_tokens, 0, spots[p] * TK_HEIGHT, TK_WIDTH, | 219 | rb->lcd_bitmap_part( flipit_tokens, 0, spots[p] * TK_HEIGHT, TK_WIDTH, |
180 | GRID_LEFT + (p%5) * (TK_WIDTH+TK_SPACE), | 220 | GRID_LEFT + (p%5) * (TK_WIDTH+TK_SPACE), |
@@ -448,11 +488,11 @@ static bool flipit_loop(void) | |||
448 | } | 488 | } |
449 | break; | 489 | break; |
450 | 490 | ||
451 | case BUTTON_LEFT: | 491 | case FLIPIT_LEFT: |
452 | move_cursor(-1, 0); | 492 | move_cursor(-1, 0); |
453 | break; | 493 | break; |
454 | 494 | ||
455 | case BUTTON_RIGHT: | 495 | case FLIPIT_RIGHT: |
456 | move_cursor(1, 0); | 496 | move_cursor(1, 0); |
457 | break; | 497 | break; |
458 | 498 | ||
@@ -553,6 +593,12 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter) | |||
553 | rb->lcd_putsxy(2, 28, "[REC-LEFT] shuffle"); | 593 | rb->lcd_putsxy(2, 28, "[REC-LEFT] shuffle"); |
554 | rb->lcd_putsxy(2, 38, "[REC-RIGHT] solution"); | 594 | rb->lcd_putsxy(2, 38, "[REC-RIGHT] solution"); |
555 | rb->lcd_putsxy(2, 48, "[REC-SEL] step by step"); | 595 | rb->lcd_putsxy(2, 48, "[REC-SEL] step by step"); |
596 | #elif CONFIG_KEYPAD == IAUDIO_M3_PAD | ||
597 | rb->lcd_putsxy(2, 8, "[REC] to stop"); | ||
598 | rb->lcd_putsxy(2, 18, "[PLAY] toggle"); | ||
599 | rb->lcd_putsxy(2, 28, "[MODE] shuffle"); | ||
600 | rb->lcd_putsxy(2, 38, "[MENU..] solution"); | ||
601 | rb->lcd_putsxy(2, 48, "[MENU] step by step"); | ||
556 | #endif | 602 | #endif |
557 | rb->lcd_update(); | 603 | rb->lcd_update(); |
558 | #else /* HAVE_LCD_CHARCELLS */ | 604 | #else /* HAVE_LCD_CHARCELLS */ |