diff options
author | Dave Chapman <dave@dchapman.com> | 2006-02-05 01:58:10 +0000 |
---|---|---|
committer | Dave Chapman <dave@dchapman.com> | 2006-02-05 01:58:10 +0000 |
commit | f9df934d9066488357c2020f0fda3a659b4b0a3b (patch) | |
tree | 8000bf0d76d6cc175a31857871c20358aa888fd7 | |
parent | f3857abf6bdc9b2d570150b98c56e239ac4ebd1b (diff) | |
download | rockbox-f9df934d9066488357c2020f0fda3a659b4b0a3b.tar.gz rockbox-f9df934d9066488357c2020f0fda3a659b4b0a3b.zip |
Minor cleaning - move card back bitmap to external bmp file, and define card size based on LCD size, not keypad type
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8576 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | apps/plugins/bitmaps/native/SOURCES | 5 | ||||
-rw-r--r-- | apps/plugins/bitmaps/native/solitaire_cardback.220x176x16.bmp | bin | 0 -> 2694 bytes | |||
-rw-r--r-- | apps/plugins/solitaire.c | 121 |
3 files changed, 19 insertions, 107 deletions
diff --git a/apps/plugins/bitmaps/native/SOURCES b/apps/plugins/bitmaps/native/SOURCES index 15b1c46237..163482a6ae 100644 --- a/apps/plugins/bitmaps/native/SOURCES +++ b/apps/plugins/bitmaps/native/SOURCES | |||
@@ -1,5 +1,10 @@ | |||
1 | #ifdef HAVE_LCD_BITMAP | 1 | #ifdef HAVE_LCD_BITMAP |
2 | 2 | ||
3 | /* Solitaire */ | ||
4 | #ifdef HAVE_LCD_COLOR | ||
5 | solitaire_cardback.220x176x16.bmp | ||
6 | #endif | ||
7 | |||
3 | /* Sudoku */ | 8 | /* Sudoku */ |
4 | #if (LCD_WIDTH == 112) && (LCD_HEIGHT==64) && (LCD_DEPTH == 1) | 9 | #if (LCD_WIDTH == 112) && (LCD_HEIGHT==64) && (LCD_DEPTH == 1) |
5 | sudoku_start.112x64x1.bmp | 10 | sudoku_start.112x64x1.bmp |
diff --git a/apps/plugins/bitmaps/native/solitaire_cardback.220x176x16.bmp b/apps/plugins/bitmaps/native/solitaire_cardback.220x176x16.bmp new file mode 100644 index 0000000000..1810d18ce3 --- /dev/null +++ b/apps/plugins/bitmaps/native/solitaire_cardback.220x176x16.bmp | |||
Binary files differ | |||
diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c index 33ac536267..83f203c4aa 100644 --- a/apps/plugins/solitaire.c +++ b/apps/plugins/solitaire.c | |||
@@ -196,109 +196,13 @@ static const unsigned colors[4] = { | |||
196 | 196 | ||
197 | #define BMPHEIGHT_c 10 | 197 | #define BMPHEIGHT_c 10 |
198 | #define BMPWIDTH_c 8 | 198 | #define BMPWIDTH_c 8 |
199 | #define BMPHEIGHT_BACKSIDE 33 | 199 | |
200 | #define BMPWIDTH_BACKSIDE 26 | 200 | #ifdef HAVE_LCD_COLOR |
201 | 201 | #define BMPHEIGHT_CARDBACK 33 | |
202 | static const unsigned short backside[33*26] = { | 202 | #define BMPWIDTH_CARDBACK 26 |
203 | 0x9572, 0xdf3a, 0xdf3a, 0xdf39, 0xdf39, 0xdf39, 0xdf39, 0xdf39, 0xdf39, 0xdf39, | 203 | |
204 | 0xdf3a, 0xdf3a, 0xdf39, 0xdf39, 0xdf39, 0xdf39, 0xdf39, 0xdf39, 0xdf39, 0xdf39, | 204 | extern const fb_data solitaire_cardback[]; |
205 | 0xdf39, 0xdf39, 0xdf39, 0xdf3a, 0xdf3a, 0x9572, | 205 | #endif |
206 | 0xe77b, 0xfffc, 0xffbc, 0xfffd, 0xfffd, 0xfffc, 0xfffc, 0xfffd, 0xfffd, 0xfffc, | ||
207 | 0xfffc, 0xfffc, 0xfffd, 0xfffc, 0xfffc, 0xfffd, 0xfffc, 0xfffc, 0xfffc, 0xfffd, | ||
208 | 0xfffd, 0xfffd, 0xfffd, 0xffbc, 0xfffc, 0xe73a, | ||
209 | 0xdf3a, 0xfffb, 0xf7bc, 0xc639, 0xbdf9, 0xc63a, 0xc67a, 0xc67b, 0xc63a, 0xbe3a, | ||
210 | 0xc639, 0xbe39, 0xbe3a, 0xbe3a, 0xbe3a, 0xc63b, 0xbe3a, 0xc63a, 0xc63a, 0xb5fa, | ||
211 | 0xb5f9, 0xb5f9, 0xc63b, 0xf77c, 0xf7fc, 0xe6fa, | ||
212 | 0xdefa, 0xfffc, 0xc679, 0x6bd4, 0x5b54, 0x6394, 0x5b54, 0x6c34, 0x7433, 0x7435, | ||
213 | 0x7c34, 0x9536, 0x7c35, 0x7c35, 0x8cb5, 0x7434, 0x8474, 0x7c74, 0x8cf5, 0x7434, | ||
214 | 0x8475, 0x7c75, 0x6b93, 0xc63a, 0xfffc, 0xe6f9, | ||
215 | 0xdefa, 0xfffd, 0xc6ba, 0x6395, 0x42d3, 0x7c77, 0x7436, 0x73d5, 0x5b11, 0x8cb6, | ||
216 | 0xa578, 0x7c35, 0xadb9, 0xadb8, 0x6bd4, 0x9537, 0x84b6, 0x5312, 0x5b53, 0x7436, | ||
217 | 0x9538, 0x7436, 0x5b94, 0xc67b, 0xfffd, 0xdefa, | ||
218 | 0xdefa, 0xfffc, 0xce7a, 0x6bd5, 0x5311, 0x73d4, 0x94f7, 0xa5b8, 0x7435, 0x9538, | ||
219 | 0x84b6, 0x190d, 0x7c35, 0x94f7, 0x088d, 0x7c76, 0x84b7, 0x7c75, 0x8cb6, 0xadb9, | ||
220 | 0x7c35, 0x7436, 0x6bd3, 0xce7b, 0xfffd, 0xdefa, | ||
221 | 0xdf39, 0xfffd, 0xceba, 0x63d5, 0x6bd5, 0x31cf, 0x8476, 0xa577, 0x84b7, 0x5b54, | ||
222 | 0x7436, 0x6b94, 0x84b5, 0x9d38, 0x7394, 0x7c37, 0x84b7, 0x84b7, 0xa578, 0x9d77, | ||
223 | 0x31cf, 0x6bd5, 0x6bd4, 0xcebb, 0xfffc, 0xdefa, | ||
224 | 0xdf3a, 0xfffc, 0xce7a, 0x6c35, 0x7c76, 0x9537, 0xa5b9, 0x6b94, 0x5291, 0x4ad2, | ||
225 | 0x7c35, 0x9537, 0x6394, 0x5353, 0x9578, 0x8cb6, 0x5b13, 0x3a11, 0x5b13, 0x9538, | ||
226 | 0x9539, 0x7434, 0x7434, 0xce7a, 0xfffc, 0xe6fa, | ||
227 | 0xdf3a, 0xfffd, 0xc67a, 0x6394, 0x84b7, 0x7c75, 0xa578, 0x94f7, 0x8cb6, 0x94f6, | ||
228 | 0xa5b8, 0x5b12, 0x4b13, 0x4b13, 0x4291, 0xa5b9, 0x6bd4, 0x73d5, 0x7c34, 0xa578, | ||
229 | 0x6bd5, 0x7c75, 0x6b94, 0xc67a, 0xfffd, 0xdefa, | ||
230 | 0xdf3a, 0xfffd, 0xc67a, 0x63d4, 0x7c76, 0x320f, 0xc67b, 0xadf9, 0x5b52, 0xadba, | ||
231 | 0x5b53, 0x6bd4, 0x4b13, 0x6bd5, 0x6bd5, 0x52d2, 0xbe7b, 0x4a91, 0x94f7, 0xbe7b, | ||
232 | 0x320f, 0x7c35, 0x6b94, 0xc67a, 0xfffd, 0xdefa, | ||
233 | 0xdf3a, 0xfffd, 0xbe39, 0x6bd5, 0x84b7, 0x9537, 0xb5f9, 0x6352, 0xbe3b, 0x6393, | ||
234 | 0x4ad4, 0x73d5, 0x6395, 0x6bd5, 0x84b6, 0x52d3, 0x7c76, 0xbe3a, 0x5ad2, 0x8477, | ||
235 | 0x6bd5, 0x84b6, 0x73d5, 0xbe39, 0xfffd, 0xdefa, | ||
236 | 0xdf3a, 0xfffc, 0xc639, 0x7cb6, 0x8cf6, 0xa578, 0x4ad0, 0xc63a, 0x7c74, 0x7475, | ||
237 | 0x84b8, 0x3a51, 0x3210, 0x4292, 0x4250, 0x9d79, 0x7c77, 0x7435, 0xbe3a, 0x424f, | ||
238 | 0x84b8, 0x84b6, 0x84b6, 0xc63a, 0xfffd, 0xdefb, | ||
239 | 0xdf3a, 0xfffd, 0xc63a, 0x6bd5, 0x7c75, 0x4ad0, 0xb5fa, 0x9d38, 0x8cf6, 0x6353, | ||
240 | 0x5313, 0x6395, 0x7c77, 0x7c76, 0x7436, 0x6bd4, 0x5b52, 0xa5b9, 0xb5fa, 0xbdf9, | ||
241 | 0x4a91, 0x7435, 0x6c34, 0xc63a, 0xfffe, 0xdefb, | ||
242 | 0xdf3a, 0xfffd, 0xbe39, 0x7c76, 0x8cb6, 0xb639, 0x9d78, 0x7c35, 0x52d2, 0x2990, | ||
243 | 0x9538, 0xbe3b, 0x9d78, 0xadfa, 0xb63c, 0xadb9, 0x73d5, 0x5b13, 0x6353, 0x9d38, | ||
244 | 0xadf9, 0x8cb5, 0x7c75, 0xbe39, 0xfffd, 0xdefb, | ||
245 | 0xdf3b, 0xfffe, 0xbdf9, 0x5312, 0xadfa, 0x9d78, 0x3a51, 0x9d78, 0x4251, 0x84b8, | ||
246 | 0x7c75, 0x8d37, 0x7cb7, 0x7476, 0x84f7, 0x9d37, 0xcebc, 0x6bd4, 0x94f7, 0x5b53, | ||
247 | 0x94f6, 0xadf8, 0x5b13, 0xb5f9, 0xfffd, 0xdefa, | ||
248 | 0xdf3b, 0xffff, 0xb5f9, 0x63d5, 0x8cf8, 0x4ad2, 0x4ad4, 0x6c35, 0x4293, 0x9d78, | ||
249 | 0x7cb7, 0x6435, 0x5b55, 0x4b13, 0x63d4, 0x9537, 0x9d37, 0x84b7, 0x63d4, 0x84b7, | ||
250 | 0x4292, 0x8cb6, 0x6bd4, 0xb5f9, 0xfffd, 0xdefa, | ||
251 | 0xdf3b, 0xffff, 0xadf9, 0x5b54, 0x7c77, 0x6c35, 0x42d4, 0x218f, 0x4292, 0x9537, | ||
252 | 0x8d38, 0x5354, 0x7475, 0x9538, 0x5b94, 0x7c76, 0x9537, 0x84b8, 0x114e, 0x4b13, | ||
253 | 0x5315, 0x7c76, 0x6353, 0xb5b9, 0xfffd, 0xdefa, | ||
254 | 0xdf3b, 0xffff, 0xb5f9, 0x6395, 0x8cf8, 0x6bd4, 0x5313, 0x7cb6, 0x4ad3, 0xb63b, | ||
255 | 0x8cf7, 0x7436, 0x6c35, 0x6bd6, 0x7cb7, 0xadba, 0xadb8, 0x8477, 0x7435, 0x7435, | ||
256 | 0x4ad2, 0x7cb6, 0x6b95, 0xb5fa, 0xfffc, 0xdefa, | ||
257 | 0xdf3b, 0xffff, 0xadb8, 0x5b53, 0xadfa, 0xb63a, 0x42d2, 0x8cf7, 0x29cf, 0x7c77, | ||
258 | 0x8cb6, 0x7cb6, 0x7436, 0x7435, 0x9538, 0x84b6, 0xa5ba, 0x4a91, 0x84b7, 0x4b12, | ||
259 | 0x8cf7, 0xb63a, 0x5b53, 0xadb8, 0xfffd, 0xdefa, | ||
260 | 0xdf3b, 0xffff, 0xadf9, 0x5353, 0x7cb6, 0x9d36, 0xadfa, 0x6393, 0x5b53, 0x194f, | ||
261 | 0x6395, 0x8d38, 0x9538, 0x9537, 0xa5b9, 0x9539, 0x4a92, 0x4291, 0x6352, 0x8476, | ||
262 | 0xa578, 0x7435, 0x5b53, 0xadb9, 0xfffd, 0xdefa, | ||
263 | 0xdf3b, 0xffff, 0xb5f9, 0x6394, 0x8cf7, 0x4ad1, 0xadb9, 0xa5f9, 0x84b6, 0x6b94, | ||
264 | 0x4a92, 0x31d0, 0x5b55, 0x5314, 0x4252, 0x4a92, 0x52d2, 0x94f8, 0x9d78, 0xb5f9, | ||
265 | 0x5ad2, 0x8477, 0x6b95, 0xb5b9, 0xfffc, 0xdefa, | ||
266 | 0xdf3b, 0xffff, 0xadb9, 0x5354, 0x84f8, 0x7435, 0x4292, 0xadb8, 0x8475, 0x5b53, | ||
267 | 0x7c77, 0x3a93, 0x29d1, 0x4b13, 0x3a51, 0x6bd5, 0x6355, 0x5312, 0xa5b8, 0x4a91, | ||
268 | 0x84b7, 0x7cb6, 0x5b54, 0xadb9, 0xfffc, 0xdefa, | ||
269 | 0xdf3b, 0xffff, 0xadb8, 0x6394, 0x8cf8, 0x6393, 0xa57a, 0x6352, 0xbe7b, 0x7c75, | ||
270 | 0x2a10, 0x5b54, 0x4ad4, 0x5353, 0x5b54, 0x4292, 0x6354, 0xadb9, 0x5b12, 0xa5b9, | ||
271 | 0x6394, 0x7c76, 0x6394, 0xadb8, 0xfffd, 0xdefa, | ||
272 | 0xdf3b, 0xffff, 0xb5f9, 0x6c35, 0x8cf7, 0x31cf, 0x9578, 0x84b7, 0x4a91, 0xadf9, | ||
273 | 0x5b53, 0x5b94, 0x4293, 0x4b53, 0x5b55, 0x4291, 0xa5b8, 0x6352, 0x7c36, 0xc6bb, | ||
274 | 0x4a91, 0x6b95, 0x7436, 0xb5b9, 0xfffd, 0xdefa, | ||
275 | 0xdf3b, 0xffff, 0xb5f8, 0x5b53, 0x9539, 0x7435, 0x6bd5, 0x6bd5, 0x7c75, 0x6b94, | ||
276 | 0xadb9, 0x6bd4, 0x2a11, 0x2a11, 0x3a51, 0x84b6, 0x7434, 0x8476, 0x73d4, 0xa5b9, | ||
277 | 0x7435, 0x7476, 0x6394, 0xadb9, 0xfffd, 0xdefa, | ||
278 | 0xdf3b, 0xffff, 0xb5f9, 0x6bd4, 0x9539, 0x9d38, 0x6bd6, 0x5313, 0x4291, 0x4ad2, | ||
279 | 0x94f6, 0xd6fd, 0x5b52, 0x5353, 0x8cb7, 0x9538, 0x5b53, 0x4292, 0x5b52, 0x9537, | ||
280 | 0xb5fa, 0x7c36, 0x6c35, 0xb5f9, 0xfffd, 0xdefa, | ||
281 | 0xdf3b, 0xffff, 0xb5f8, 0x7434, 0x84b7, 0x298e, 0x8cf6, 0xadf9, 0x9538, 0xadf9, | ||
282 | 0x9d78, 0x5312, 0xadb9, 0xadf9, 0x6bd4, 0x6395, 0x8cf7, 0x7435, 0x9d77, 0xa578, | ||
283 | 0x3a10, 0x6394, 0x7c75, 0xb5f9, 0xfffd, 0xdefa, | ||
284 | 0xdf3b, 0xffff, 0xbe39, 0x63d5, 0x6394, 0x84b6, 0xa5b8, 0x84b7, 0x6353, 0xa5b8, | ||
285 | 0x8cf7, 0x008c, 0x6b93, 0xadb9, 0x190d, 0x7476, 0xadfa, 0x6c35, 0x8cf7, 0xbe3a, | ||
286 | 0x6393, 0x7c75, 0x63d5, 0xb63a, 0xfffd, 0xdefa, | ||
287 | 0xdf3b, 0xffff, 0xb5f9, 0x5354, 0x6354, 0x94f8, 0x5b54, 0x63d4, 0x5b93, 0x84b7, | ||
288 | 0xa578, 0x7434, 0xadb9, 0xb5f9, 0x8cb6, 0x9d78, 0x9537, 0x5b93, 0x6bd5, 0x84b6, | ||
289 | 0x8cf7, 0x84b6, 0x5353, 0xb639, 0xfffd, 0xdefa, | ||
290 | 0xdf3a, 0xfffe, 0xbdf8, 0x63d4, 0x5b53, 0x6394, 0x6354, 0x7434, 0x7433, 0x7435, | ||
291 | 0x7433, 0x9537, 0x7c35, 0x7c34, 0x84b4, 0x7433, 0x7c74, 0x7474, 0x84b5, 0x73d4, | ||
292 | 0x8476, 0x7c35, 0x6393, 0xbe38, 0xfffd, 0xdefa, | ||
293 | 0xdf3a, 0xffbc, 0xf7bc, 0xc67a, 0xbe3a, 0xc67a, 0xc67b, 0xce7a, 0xc67a, 0xc63a, | ||
294 | 0xc67a, 0xc67a, 0xc63a, 0xc63b, 0xc67a, 0xc67a, 0xc63a, 0xc67a, 0xc63a, 0xbdf9, | ||
295 | 0xbdf9, 0xb5f9, 0xc67a, 0xf7bc, 0xfffc, 0xdefa, | ||
296 | 0xdf7b, 0xfffc, 0xffbc, 0xfffc, 0xfffd, 0xfffc, 0xfffc, 0xfffc, 0xfffd, 0xfffd, | ||
297 | 0xfffd, 0xfffc, 0xfffc, 0xfffc, 0xfffc, 0xfffd, 0xfffc, 0xfffb, 0xfffd, 0xfffd, | ||
298 | 0xfffc, 0xfffc, 0xfffd, 0xfffc, 0xfffc, 0xdefa, | ||
299 | 0x9572, 0xe73b, 0xdefa, 0xdefa, 0xdefa, 0xdefa, 0xdefa, 0xdefa, 0xdefa, 0xdefa, | ||
300 | 0xdefa, 0xdefa, 0xe6fa, 0xe6fa, 0xdefa, 0xdefa, 0xdefa, 0xdefa, 0xdefa, 0xdefa, | ||
301 | 0xdefa, 0xdefa, 0xdefa, 0xdefa, 0xe73a, 0xd6b9}; | ||
302 | 206 | ||
303 | static const unsigned char suitsi[4][30] = { | 207 | static const unsigned char suitsi[4][30] = { |
304 | {0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x07, 0x0f, 0x1f, 0x1f, 0x0f, 0x7f, 0x7f, 0x7f, 0x0f, 0x1f, 0x1f, 0x0f, 0x07, 0x00}, | 208 | {0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x07, 0x0f, 0x1f, 0x1f, 0x0f, 0x7f, 0x7f, 0x7f, 0x0f, 0x1f, 0x1f, 0x0f, 0x07, 0x00}, |
@@ -371,7 +275,7 @@ static unsigned char numbers[13][16] = { | |||
371 | 275 | ||
372 | 276 | ||
373 | /* size of a card on the screen */ | 277 | /* size of a card on the screen */ |
374 | #if (CONFIG_KEYPAD == IRIVER_H300_PAD) | 278 | #if (LCD_WIDTH >= 220) && (LCD_HEIGHT >= 176) |
375 | #define CARD_WIDTH 26 | 279 | #define CARD_WIDTH 26 |
376 | #define CARD_HEIGHT 34 | 280 | #define CARD_HEIGHT 34 |
377 | #else | 281 | #else |
@@ -382,7 +286,7 @@ static unsigned char numbers[13][16] = { | |||
382 | /* where the cards start */ | 286 | /* where the cards start */ |
383 | #define CARD_START CARD_HEIGHT +4 | 287 | #define CARD_START CARD_HEIGHT +4 |
384 | 288 | ||
385 | #if (CONFIG_KEYPAD == IRIVER_H300_PAD) | 289 | #if (LCD_WIDTH >= 220) && (LCD_HEIGHT >= 176) |
386 | #define KNOWN_CARD 23 | 290 | #define KNOWN_CARD 23 |
387 | #define NOT_KNOWN_CARD 30 | 291 | #define NOT_KNOWN_CARD 30 |
388 | #else | 292 | #else |
@@ -1061,7 +965,9 @@ int solitaire(void){ | |||
1061 | #endif | 965 | #endif |
1062 | } else { | 966 | } else { |
1063 | #ifdef HAVE_LCD_COLOR | 967 | #ifdef HAVE_LCD_COLOR |
1064 | rb->lcd_bitmap(backside, 1+i*(LCD_WIDTH - 2)/COL_NUM+1, j+1, BMPWIDTH_BACKSIDE, BMPHEIGHT_BACKSIDE); | 968 | rb->lcd_bitmap(solitaire_cardback, |
969 | 1+i*(LCD_WIDTH - 2)/COL_NUM+1, j+1, | ||
970 | BMPWIDTH_CARDBACK, BMPHEIGHT_CARDBACK); | ||
1065 | #endif | 971 | #endif |
1066 | } | 972 | } |
1067 | /* draw top line of the card */ | 973 | /* draw top line of the card */ |
@@ -1276,7 +1182,8 @@ int solitaire(void){ | |||
1276 | } | 1182 | } |
1277 | if(rem != NOT_A_CARD){ | 1183 | if(rem != NOT_A_CARD){ |
1278 | #ifdef HAVE_LCD_COLOR | 1184 | #ifdef HAVE_LCD_COLOR |
1279 | rb->lcd_bitmap(backside, 2, 2, BMPWIDTH_BACKSIDE, BMPHEIGHT_BACKSIDE); | 1185 | rb->lcd_bitmap(solitaire_cardback, 2, 2, |
1186 | BMPWIDTH_CARDBACK, BMPHEIGHT_CARDBACK); | ||
1280 | #endif | 1187 | #endif |
1281 | } | 1188 | } |
1282 | } | 1189 | } |