diff options
Diffstat (limited to 'apps/plugins/fire.c')
-rw-r--r-- | apps/plugins/fire.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/apps/plugins/fire.c b/apps/plugins/fire.c index 95edbf37c4..f3e6fb35e4 100644 --- a/apps/plugins/fire.c +++ b/apps/plugins/fire.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #ifndef HAVE_LCD_COLOR | 30 | #ifndef HAVE_LCD_COLOR |
31 | #include "lib/grey.h" | 31 | #include "lib/grey.h" |
32 | #endif | 32 | #endif |
33 | static fb_data *lcd_fb = NULL; | ||
33 | 34 | ||
34 | #if (LCD_WIDTH == 112) && (LCD_HEIGHT == 64) | 35 | #if (LCD_WIDTH == 112) && (LCD_HEIGHT == 64) |
35 | /* Archos has not enough plugin RAM for full-width fire :( */ | 36 | /* Archos has not enough plugin RAM for full-width fire :( */ |
@@ -251,7 +252,7 @@ static inline void fire_draw(struct fire* fire) | |||
251 | #ifndef HAVE_LCD_COLOR | 252 | #ifndef HAVE_LCD_COLOR |
252 | dest = draw_buffer; | 253 | dest = draw_buffer; |
253 | #else | 254 | #else |
254 | dest = *rb->lcd_framebuffer + LCD_WIDTH * y + FIRE_XPOS; | 255 | dest = lcd_fb + LCD_WIDTH * y + FIRE_XPOS; |
255 | #endif | 256 | #endif |
256 | end = dest + FIRE_WIDTH; | 257 | end = dest + FIRE_WIDTH; |
257 | 258 | ||
@@ -379,6 +380,8 @@ enum plugin_status plugin_start(const void* parameter) | |||
379 | rb->lcd_set_mode(LCD_MODE_PAL256); | 380 | rb->lcd_set_mode(LCD_MODE_PAL256); |
380 | #endif | 381 | #endif |
381 | 382 | ||
383 | struct viewport *vp_main = rb->lcd_set_viewport(NULL); | ||
384 | lcd_fb = vp_main->buffer->fb_ptr; | ||
382 | ret = main(); | 385 | ret = main(); |
383 | 386 | ||
384 | #if defined(HAVE_LCD_MODES) && (HAVE_LCD_MODES & LCD_MODE_PAL256) | 387 | #if defined(HAVE_LCD_MODES) && (HAVE_LCD_MODES & LCD_MODE_PAL256) |