summaryrefslogtreecommitdiff
path: root/apps/plugins/sliding_puzzle.c
diff options
context:
space:
mode:
authorAndrew Mahone <andrew.mahone@gmail.com>2009-05-20 09:47:11 +0000
committerAndrew Mahone <andrew.mahone@gmail.com>2009-05-20 09:47:11 +0000
commit6cae42fccae3202834dcfcb9ac430f7f432edaca (patch)
tree89612dd94f9febb67688d7987b8d5acf0fb90872 /apps/plugins/sliding_puzzle.c
parent132176e120a72dae053dc5d56c67a1a50485053c (diff)
downloadrockbox-6cae42fccae3202834dcfcb9ac430f7f432edaca.tar.gz
rockbox-6cae42fccae3202834dcfcb9ac430f7f432edaca.zip
Support JPEG album art in sliding_puzzle.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20993 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/sliding_puzzle.c')
-rw-r--r--apps/plugins/sliding_puzzle.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/apps/plugins/sliding_puzzle.c b/apps/plugins/sliding_puzzle.c
index 7df303df2d..7087fd64a5 100644
--- a/apps/plugins/sliding_puzzle.c
+++ b/apps/plugins/sliding_puzzle.c
@@ -229,6 +229,13 @@ PLUGIN_HEADER
229#endif 229#endif
230#endif 230#endif
231 231
232#ifdef HAVE_ALBUMART
233#include "lib/read_image.h"
234#define READ_IMAGE read_image_file
235#else
236#define READ_IMAGE rb->read_bmp_file
237#endif
238
232#include "pluginbitmaps/sliding_puzzle.h" 239#include "pluginbitmaps/sliding_puzzle.h"
233#define IMAGE_WIDTH BMPWIDTH_sliding_puzzle 240#define IMAGE_WIDTH BMPWIDTH_sliding_puzzle
234#define IMAGE_HEIGHT BMPHEIGHT_sliding_puzzle 241#define IMAGE_HEIGHT BMPHEIGHT_sliding_puzzle
@@ -277,9 +284,8 @@ static int num_font = FONT_UI;
277static int moves_font = FONT_UI; 284static int moves_font = FONT_UI;
278static int moves_y = 0; 285static int moves_y = 0;
279 286
280static unsigned char img_buf 287static unsigned char *img_buf;
281 [BM_SCALED_SIZE(IMAGE_WIDTH,IMAGE_HEIGHT,FORMAT_NATIVE,0)] 288static size_t img_buf_len;
282 __attribute__ ((aligned(16)));
283#ifdef HAVE_ALBUMART 289#ifdef HAVE_ALBUMART
284static char albumart_path[MAX_PATH+1]; 290static char albumart_path[MAX_PATH+1];
285#endif 291#endif
@@ -358,10 +364,10 @@ static bool load_resize_bitmap(void)
358 main_bitmap.width = IMAGE_WIDTH; 364 main_bitmap.width = IMAGE_WIDTH;
359 main_bitmap.height = IMAGE_HEIGHT; 365 main_bitmap.height = IMAGE_HEIGHT;
360 366
361 rc = rb->read_bmp_file( filename, &main_bitmap, 367 rc = READ_IMAGE( filename, &main_bitmap,
362 sizeof(img_buf), 368 img_buf_len,
363 FORMAT_NATIVE|FORMAT_RESIZE|FORMAT_DITHER, 369 FORMAT_NATIVE|FORMAT_RESIZE|FORMAT_DITHER,
364 NULL); 370 NULL);
365 if( rc > 0 ) 371 if( rc > 0 )
366 { 372 {
367 puzzle_bmp_ptr = (const fb_data *)img_buf; 373 puzzle_bmp_ptr = (const fb_data *)img_buf;
@@ -637,6 +643,7 @@ enum plugin_status plugin_start(
637 int i, w, h; 643 int i, w, h;
638 644
639 initial_bmp_path=(const char *)parameter; 645 initial_bmp_path=(const char *)parameter;
646 img_buf = rb->plugin_get_buffer(&img_buf_len);
640 picmode = PICMODE_INITIAL_PICTURE; 647 picmode = PICMODE_INITIAL_PICTURE;
641 img_buf_path[0] = '\0'; 648 img_buf_path[0] = '\0';
642 649