diff options
Diffstat (limited to 'apps/plugins/snake2.c')
-rw-r--r-- | apps/plugins/snake2.c | 111 |
1 files changed, 51 insertions, 60 deletions
diff --git a/apps/plugins/snake2.c b/apps/plugins/snake2.c index bae520b9ac..07e3991c3b 100644 --- a/apps/plugins/snake2.c +++ b/apps/plugins/snake2.c | |||
@@ -35,6 +35,17 @@ PLUGIN_HEADER | |||
35 | #define WIDTH 28 | 35 | #define WIDTH 28 |
36 | #define HEIGHT 16 | 36 | #define HEIGHT 16 |
37 | 37 | ||
38 | #if (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 1) | ||
39 | #include "snake2_header1.h" | ||
40 | #include "snake2_header2.h" | ||
41 | #include "snake2_left.h" | ||
42 | #include "snake2_right.h" | ||
43 | #include "snake2_bottom.h" | ||
44 | #define BMPHEIGHT_snake2_header BMPHEIGHT_snake2_header1 | ||
45 | #define BMPWIDTH_snake2_header BMPWIDTH_snake2_header1 | ||
46 | #endif | ||
47 | |||
48 | |||
38 | #if (LCD_WIDTH >= 320) && (LCD_HEIGHT >= 240) | 49 | #if (LCD_WIDTH >= 320) && (LCD_HEIGHT >= 240) |
39 | #define MULTIPLIER 10 /*Modifier for porting on other screens*/ | 50 | #define MULTIPLIER 10 /*Modifier for porting on other screens*/ |
40 | #define MODIFIER_1 10 | 51 | #define MODIFIER_1 10 |
@@ -47,14 +58,6 @@ PLUGIN_HEADER | |||
47 | #define TOP_X4 274 /* x-coord of the lowerright item (hi-score) */ | 58 | #define TOP_X4 274 /* x-coord of the lowerright item (hi-score) */ |
48 | #define TOP_Y1 4 /* y-coord of the top row of items */ | 59 | #define TOP_Y1 4 /* y-coord of the top row of items */ |
49 | #define TOP_Y2 25 /* y-coord of the bottom row of items */ | 60 | #define TOP_Y2 25 /* y-coord of the bottom row of items */ |
50 | #define BMPHEIGHT_snake2_header 38 | ||
51 | #define BMPWIDTH_snake2_header 320 | ||
52 | #define BMPHEIGHT_snake2_right 192 | ||
53 | #define BMPWIDTH_snake2_right 10 | ||
54 | #define BMPHEIGHT_snake2_left 192 | ||
55 | #define BMPWIDTH_snake2_left 10 | ||
56 | #define BMPHEIGHT_snake2_bottom 10 | ||
57 | #define BMPWIDTH_snake2_bottom 320 | ||
58 | #elif (LCD_WIDTH >= 240) && (LCD_HEIGHT >= 168) | 61 | #elif (LCD_WIDTH >= 240) && (LCD_HEIGHT >= 168) |
59 | #define MULTIPLIER 8 | 62 | #define MULTIPLIER 8 |
60 | #define MODIFIER_1 8 | 63 | #define MODIFIER_1 8 |
@@ -67,14 +70,6 @@ PLUGIN_HEADER | |||
67 | #define TOP_X4 194 | 70 | #define TOP_X4 194 |
68 | #define TOP_Y1 4 | 71 | #define TOP_Y1 4 |
69 | #define TOP_Y2 25 | 72 | #define TOP_Y2 25 |
70 | #define BMPHEIGHT_snake2_header 38 | ||
71 | #define BMPWIDTH_snake2_header 240 | ||
72 | #define BMPHEIGHT_snake2_right 120 | ||
73 | #define BMPWIDTH_snake2_right 10 | ||
74 | #define BMPHEIGHT_snake2_left 120 | ||
75 | #define BMPWIDTH_snake2_left 10 | ||
76 | #define BMPHEIGHT_snake2_bottom 10 | ||
77 | #define BMPWIDTH_snake2_bottom 240 | ||
78 | #elif (LCD_WIDTH >= 220) && (LCD_HEIGHT >= 176) | 73 | #elif (LCD_WIDTH >= 220) && (LCD_HEIGHT >= 176) |
79 | #define MULTIPLIER 7 | 74 | #define MULTIPLIER 7 |
80 | #define MODIFIER_1 7 | 75 | #define MODIFIER_1 7 |
@@ -87,14 +82,6 @@ PLUGIN_HEADER | |||
87 | #define TOP_X4 174 | 82 | #define TOP_X4 174 |
88 | #define TOP_Y1 4 | 83 | #define TOP_Y1 4 |
89 | #define TOP_Y2 25 | 84 | #define TOP_Y2 25 |
90 | #define BMPHEIGHT_snake2_header 38 | ||
91 | #define BMPWIDTH_snake2_header 220 | ||
92 | #define BMPHEIGHT_snake2_right 128 | ||
93 | #define BMPWIDTH_snake2_right 10 | ||
94 | #define BMPHEIGHT_snake2_left 128 | ||
95 | #define BMPWIDTH_snake2_left 10 | ||
96 | #define BMPHEIGHT_snake2_bottom 10 | ||
97 | #define BMPWIDTH_snake2_bottom 220 | ||
98 | #elif (LCD_WIDTH >= 176) && (LCD_HEIGHT >= 132) | 85 | #elif (LCD_WIDTH >= 176) && (LCD_HEIGHT >= 132) |
99 | #define MULTIPLIER 5 | 86 | #define MULTIPLIER 5 |
100 | #define MODIFIER_1 5 | 87 | #define MODIFIER_1 5 |
@@ -107,14 +94,6 @@ PLUGIN_HEADER | |||
107 | #define TOP_X4 130 | 94 | #define TOP_X4 130 |
108 | #define TOP_Y1 4 | 95 | #define TOP_Y1 4 |
109 | #define TOP_Y2 25 | 96 | #define TOP_Y2 25 |
110 | #define BMPHEIGHT_snake2_header 38 | ||
111 | #define BMPWIDTH_snake2_header 176 | ||
112 | #define BMPHEIGHT_snake2_right 84 | ||
113 | #define BMPWIDTH_snake2_right 10 | ||
114 | #define BMPHEIGHT_snake2_left 84 | ||
115 | #define BMPWIDTH_snake2_left 10 | ||
116 | #define BMPHEIGHT_snake2_bottom 10 | ||
117 | #define BMPWIDTH_snake2_bottom 176 | ||
118 | #elif (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128) | 97 | #elif (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128) |
119 | #define MULTIPLIER 5 | 98 | #define MULTIPLIER 5 |
120 | #define MODIFIER_1 5 | 99 | #define MODIFIER_1 5 |
@@ -127,14 +106,6 @@ PLUGIN_HEADER | |||
127 | #define TOP_X4 114 | 106 | #define TOP_X4 114 |
128 | #define TOP_Y1 4 | 107 | #define TOP_Y1 4 |
129 | #define TOP_Y2 25 | 108 | #define TOP_Y2 25 |
130 | #define BMPHEIGHT_snake2_header 38 | ||
131 | #define BMPWIDTH_snake2_header 160 | ||
132 | #define BMPHEIGHT_snake2_right 80 | ||
133 | #define BMPWIDTH_snake2_right 10 | ||
134 | #define BMPHEIGHT_snake2_left 80 | ||
135 | #define BMPWIDTH_snake2_left 10 | ||
136 | #define BMPHEIGHT_snake2_bottom 10 | ||
137 | #define BMPWIDTH_snake2_bottom 160 | ||
138 | #else | 109 | #else |
139 | #define MULTIPLIER 4 | 110 | #define MULTIPLIER 4 |
140 | #define MODIFIER_1 4 | 111 | #define MODIFIER_1 4 |
@@ -146,6 +117,8 @@ PLUGIN_HEADER | |||
146 | 117 | ||
147 | /* variable button definitions */ | 118 | /* variable button definitions */ |
148 | #if CONFIG_KEYPAD == RECORDER_PAD | 119 | #if CONFIG_KEYPAD == RECORDER_PAD |
120 | #define SNAKE2_LEFT BUTTON_LEFT | ||
121 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
149 | #define SNAKE2_UP BUTTON_UP | 122 | #define SNAKE2_UP BUTTON_UP |
150 | #define SNAKE2_DOWN BUTTON_DOWN | 123 | #define SNAKE2_DOWN BUTTON_DOWN |
151 | #define SNAKE2_QUIT BUTTON_OFF | 124 | #define SNAKE2_QUIT BUTTON_OFF |
@@ -158,6 +131,8 @@ PLUGIN_HEADER | |||
158 | #define SNAKE2_PLAYPAUSE_TEXT "Play" | 131 | #define SNAKE2_PLAYPAUSE_TEXT "Play" |
159 | 132 | ||
160 | #elif CONFIG_KEYPAD == ARCHOS_AV300_PAD | 133 | #elif CONFIG_KEYPAD == ARCHOS_AV300_PAD |
134 | #define SNAKE2_LEFT BUTTON_LEFT | ||
135 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
161 | #define SNAKE2_UP BUTTON_UP | 136 | #define SNAKE2_UP BUTTON_UP |
162 | #define SNAKE2_DOWN BUTTON_DOWN | 137 | #define SNAKE2_DOWN BUTTON_DOWN |
163 | #define SNAKE2_QUIT BUTTON_OFF | 138 | #define SNAKE2_QUIT BUTTON_OFF |
@@ -170,6 +145,8 @@ PLUGIN_HEADER | |||
170 | #define SNAKE2_PLAYPAUSE_TEXT "Select" | 145 | #define SNAKE2_PLAYPAUSE_TEXT "Select" |
171 | 146 | ||
172 | #elif CONFIG_KEYPAD == ONDIO_PAD | 147 | #elif CONFIG_KEYPAD == ONDIO_PAD |
148 | #define SNAKE2_LEFT BUTTON_LEFT | ||
149 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
173 | #define SNAKE2_UP BUTTON_UP | 150 | #define SNAKE2_UP BUTTON_UP |
174 | #define SNAKE2_DOWN BUTTON_DOWN | 151 | #define SNAKE2_DOWN BUTTON_DOWN |
175 | #define SNAKE2_QUIT BUTTON_OFF | 152 | #define SNAKE2_QUIT BUTTON_OFF |
@@ -182,6 +159,8 @@ PLUGIN_HEADER | |||
182 | 159 | ||
183 | #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ | 160 | #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ |
184 | (CONFIG_KEYPAD == IRIVER_H300_PAD) | 161 | (CONFIG_KEYPAD == IRIVER_H300_PAD) |
162 | #define SNAKE2_LEFT BUTTON_LEFT | ||
163 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
185 | #define SNAKE2_UP BUTTON_UP | 164 | #define SNAKE2_UP BUTTON_UP |
186 | #define SNAKE2_DOWN BUTTON_DOWN | 165 | #define SNAKE2_DOWN BUTTON_DOWN |
187 | #define SNAKE2_QUIT BUTTON_OFF | 166 | #define SNAKE2_QUIT BUTTON_OFF |
@@ -197,6 +176,8 @@ PLUGIN_HEADER | |||
197 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 176 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ |
198 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 177 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
199 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 178 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
179 | #define SNAKE2_LEFT BUTTON_LEFT | ||
180 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
200 | #define SNAKE2_UP BUTTON_MENU | 181 | #define SNAKE2_UP BUTTON_MENU |
201 | #define SNAKE2_DOWN BUTTON_PLAY | 182 | #define SNAKE2_DOWN BUTTON_PLAY |
202 | #define SNAKE2_QUIT (BUTTON_SELECT | BUTTON_MENU) | 183 | #define SNAKE2_QUIT (BUTTON_SELECT | BUTTON_MENU) |
@@ -209,6 +190,8 @@ PLUGIN_HEADER | |||
209 | #define SNAKE2_PLAYPAUSE_TEXT "Select" | 190 | #define SNAKE2_PLAYPAUSE_TEXT "Select" |
210 | 191 | ||
211 | #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) | 192 | #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) |
193 | #define SNAKE2_LEFT BUTTON_LEFT | ||
194 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
212 | #define SNAKE2_UP BUTTON_UP | 195 | #define SNAKE2_UP BUTTON_UP |
213 | #define SNAKE2_DOWN BUTTON_DOWN | 196 | #define SNAKE2_DOWN BUTTON_DOWN |
214 | #define SNAKE2_QUIT BUTTON_POWER | 197 | #define SNAKE2_QUIT BUTTON_POWER |
@@ -221,6 +204,8 @@ PLUGIN_HEADER | |||
221 | #define SNAKE2_PLAYPAUSE_TEXT "Select" | 204 | #define SNAKE2_PLAYPAUSE_TEXT "Select" |
222 | 205 | ||
223 | #elif (CONFIG_KEYPAD == GIGABEAT_PAD) | 206 | #elif (CONFIG_KEYPAD == GIGABEAT_PAD) |
207 | #define SNAKE2_LEFT BUTTON_LEFT | ||
208 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
224 | #define SNAKE2_UP BUTTON_UP | 209 | #define SNAKE2_UP BUTTON_UP |
225 | #define SNAKE2_DOWN BUTTON_DOWN | 210 | #define SNAKE2_DOWN BUTTON_DOWN |
226 | #define SNAKE2_QUIT BUTTON_POWER | 211 | #define SNAKE2_QUIT BUTTON_POWER |
@@ -234,6 +219,8 @@ PLUGIN_HEADER | |||
234 | 219 | ||
235 | #elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ | 220 | #elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ |
236 | (CONFIG_KEYPAD == SANSA_C200_PAD) | 221 | (CONFIG_KEYPAD == SANSA_C200_PAD) |
222 | #define SNAKE2_LEFT BUTTON_LEFT | ||
223 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
237 | #define SNAKE2_UP BUTTON_UP | 224 | #define SNAKE2_UP BUTTON_UP |
238 | #define SNAKE2_DOWN BUTTON_DOWN | 225 | #define SNAKE2_DOWN BUTTON_DOWN |
239 | #define SNAKE2_QUIT BUTTON_POWER | 226 | #define SNAKE2_QUIT BUTTON_POWER |
@@ -246,6 +233,8 @@ PLUGIN_HEADER | |||
246 | #define SNAKE2_PLAYPAUSE_TEXT "Select" | 233 | #define SNAKE2_PLAYPAUSE_TEXT "Select" |
247 | 234 | ||
248 | #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) | 235 | #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) |
236 | #define SNAKE2_LEFT BUTTON_LEFT | ||
237 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
249 | #define SNAKE2_UP BUTTON_SCROLL_UP | 238 | #define SNAKE2_UP BUTTON_SCROLL_UP |
250 | #define SNAKE2_DOWN BUTTON_SCROLL_DOWN | 239 | #define SNAKE2_DOWN BUTTON_SCROLL_DOWN |
251 | #define SNAKE2_QUIT BUTTON_POWER | 240 | #define SNAKE2_QUIT BUTTON_POWER |
@@ -258,6 +247,8 @@ PLUGIN_HEADER | |||
258 | #define SNAKE2_PLAYPAUSE_TEXT "FF" | 247 | #define SNAKE2_PLAYPAUSE_TEXT "FF" |
259 | 248 | ||
260 | #elif (CONFIG_KEYPAD == GIGABEAT_S_PAD) | 249 | #elif (CONFIG_KEYPAD == GIGABEAT_S_PAD) |
250 | #define SNAKE2_LEFT BUTTON_LEFT | ||
251 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
261 | #define SNAKE2_UP BUTTON_UP | 252 | #define SNAKE2_UP BUTTON_UP |
262 | #define SNAKE2_DOWN BUTTON_DOWN | 253 | #define SNAKE2_DOWN BUTTON_DOWN |
263 | #define SNAKE2_QUIT BUTTON_BACK | 254 | #define SNAKE2_QUIT BUTTON_BACK |
@@ -270,6 +261,8 @@ PLUGIN_HEADER | |||
270 | #define SNAKE2_PLAYPAUSE_TEXT "Select" | 261 | #define SNAKE2_PLAYPAUSE_TEXT "Select" |
271 | 262 | ||
272 | #elif (CONFIG_KEYPAD == MROBE100_PAD) | 263 | #elif (CONFIG_KEYPAD == MROBE100_PAD) |
264 | #define SNAKE2_LEFT BUTTON_LEFT | ||
265 | #define SNAKE2_RIGHT BUTTON_RIGHT | ||
273 | #define SNAKE2_UP BUTTON_UP | 266 | #define SNAKE2_UP BUTTON_UP |
274 | #define SNAKE2_DOWN BUTTON_DOWN | 267 | #define SNAKE2_DOWN BUTTON_DOWN |
275 | #define SNAKE2_QUIT BUTTON_POWER | 268 | #define SNAKE2_QUIT BUTTON_POWER |
@@ -281,6 +274,20 @@ PLUGIN_HEADER | |||
281 | #define SNAKE2_PLAYPAUSE BUTTON_SELECT | 274 | #define SNAKE2_PLAYPAUSE BUTTON_SELECT |
282 | #define SNAKE2_PLAYPAUSE_TEXT "Select" | 275 | #define SNAKE2_PLAYPAUSE_TEXT "Select" |
283 | 276 | ||
277 | #elif CONFIG_KEYPAD == IAUDIO_M3_PAD | ||
278 | #define SNAKE2_LEFT BUTTON_RC_REW | ||
279 | #define SNAKE2_RIGHT BUTTON_RC_FF | ||
280 | #define SNAKE2_UP BUTTON_RC_VOL_UP | ||
281 | #define SNAKE2_DOWN BUTTON_RC_VOL_DOWN | ||
282 | #define SNAKE2_QUIT BUTTON_RC_REC | ||
283 | #define SNAKE2_LEVEL_UP BUTTON_RC_VOL_UP | ||
284 | #define SNAKE2_LEVEL_DOWN BUTTON_RC_VOL_DOWN | ||
285 | #define SNAKE2_MAZE_NEXT BUTTON_RC_FF | ||
286 | #define SNAKE2_MAZE_LAST BUTTON_RC_REW | ||
287 | #define SNAKE2_SELECT_TYPE BUTTON_RC_MODE | ||
288 | #define SNAKE2_PLAYPAUSE BUTTON_RC_PLAY | ||
289 | #define SNAKE2_PLAYPAUSE_TEXT "Play" | ||
290 | |||
284 | #else | 291 | #else |
285 | #error No keymap defined! | 292 | #error No keymap defined! |
286 | #endif | 293 | #endif |
@@ -314,22 +321,6 @@ static int game_b_level=0; | |||
314 | static int applecount=0; | 321 | static int applecount=0; |
315 | static char phscore[30]; | 322 | static char phscore[30]; |
316 | 323 | ||
317 | #if (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128) | ||
318 | #ifdef HAVE_LCD_COLOR | ||
319 | extern const unsigned short snake2_header1[]; | ||
320 | extern const unsigned short snake2_header2[]; | ||
321 | extern const unsigned short snake2_left[]; | ||
322 | extern const unsigned short snake2_right[]; | ||
323 | extern const unsigned short snake2_bottom[]; | ||
324 | #else | ||
325 | extern const unsigned char snake2_header1[]; | ||
326 | extern const unsigned char snake2_header2[]; | ||
327 | extern const unsigned char snake2_left[]; | ||
328 | extern const unsigned char snake2_right[]; | ||
329 | extern const unsigned char snake2_bottom[]; | ||
330 | #endif | ||
331 | #endif | ||
332 | |||
333 | #define NORTH 1 | 324 | #define NORTH 1 |
334 | #define EAST 2 | 325 | #define EAST 2 |
335 | #define SOUTH 4 | 326 | #define SOUTH 4 |
@@ -1196,8 +1187,8 @@ void game (void) | |||
1196 | if (dir != SOUTH) set_direction(NORTH); | 1187 | if (dir != SOUTH) set_direction(NORTH); |
1197 | break; | 1188 | break; |
1198 | 1189 | ||
1199 | case BUTTON_RIGHT: | 1190 | case SNAKE2_RIGHT: |
1200 | case BUTTON_RIGHT | BUTTON_REPEAT: | 1191 | case SNAKE2_RIGHT | BUTTON_REPEAT: |
1201 | if (dir != WEST) set_direction(EAST); | 1192 | if (dir != WEST) set_direction(EAST); |
1202 | break; | 1193 | break; |
1203 | 1194 | ||
@@ -1206,8 +1197,8 @@ void game (void) | |||
1206 | if (dir != NORTH) set_direction(SOUTH); | 1197 | if (dir != NORTH) set_direction(SOUTH); |
1207 | break; | 1198 | break; |
1208 | 1199 | ||
1209 | case BUTTON_LEFT: | 1200 | case SNAKE2_LEFT: |
1210 | case BUTTON_LEFT | BUTTON_REPEAT: | 1201 | case SNAKE2_LEFT | BUTTON_REPEAT: |
1211 | if (dir != EAST) set_direction(WEST); | 1202 | if (dir != EAST) set_direction(WEST); |
1212 | break; | 1203 | break; |
1213 | 1204 | ||