diff options
Diffstat (limited to 'apps/plugins/snow.c')
-rw-r--r-- | apps/plugins/snow.c | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/apps/plugins/snow.c b/apps/plugins/snow.c index b3d3b14c46..75c561427a 100644 --- a/apps/plugins/snow.c +++ b/apps/plugins/snow.c | |||
@@ -23,10 +23,12 @@ | |||
23 | #define NUM_PARTICLES (LCD_WIDTH * LCD_HEIGHT / 72) | 23 | #define NUM_PARTICLES (LCD_WIDTH * LCD_HEIGHT / 72) |
24 | #define SNOW_HEIGHT LCD_HEIGHT | 24 | #define SNOW_HEIGHT LCD_HEIGHT |
25 | #define SNOW_WIDTH LCD_WIDTH | 25 | #define SNOW_WIDTH LCD_WIDTH |
26 | #define MYLCD(fn) rb->lcd_ ## fn | ||
26 | #else | 27 | #else |
27 | #define NUM_PARTICLES 10 | 28 | #define NUM_PARTICLES 10 |
28 | #define SNOW_HEIGHT 14 | 29 | #define SNOW_HEIGHT 14 |
29 | #define SNOW_WIDTH 20 | 30 | #define SNOW_WIDTH 20 |
31 | #define MYLCD(fn) pgfx_ ## fn | ||
30 | #endif | 32 | #endif |
31 | 33 | ||
32 | /* variable button definitions */ | 34 | /* variable button definitions */ |
@@ -81,14 +83,14 @@ static void snow_move(void) | |||
81 | 83 | ||
82 | for (i=0; i<NUM_PARTICLES; i++) { | 84 | for (i=0; i<NUM_PARTICLES; i++) { |
83 | if (particle_exists(i)) { | 85 | if (particle_exists(i)) { |
86 | MYLCD(set_drawmode)(DRMODE_SOLID|DRMODE_INVERSEVID); | ||
84 | #ifdef HAVE_LCD_BITMAP | 87 | #ifdef HAVE_LCD_BITMAP |
85 | rb->lcd_set_drawmode(DRMODE_SOLID|DRMODE_INVERSEVID); | ||
86 | rb->lcd_fillrect(particles[i][0],particles[i][1], | 88 | rb->lcd_fillrect(particles[i][0],particles[i][1], |
87 | FLAKE_WIDTH,FLAKE_WIDTH); | 89 | FLAKE_WIDTH,FLAKE_WIDTH); |
88 | rb->lcd_set_drawmode(DRMODE_SOLID); | ||
89 | #else | 90 | #else |
90 | pgfx_clearpixel(particles[i][0],particles[i][1]); | 91 | pgfx_drawpixel(particles[i][0],particles[i][1]); |
91 | #endif | 92 | #endif |
93 | MYLCD(set_drawmode)(DRMODE_SOLID); | ||
92 | #ifdef HAVE_REMOTE_LCD | 94 | #ifdef HAVE_REMOTE_LCD |
93 | if (particles[i][0] <= LCD_REMOTE_WIDTH | 95 | if (particles[i][0] <= LCD_REMOTE_WIDTH |
94 | && particles[i][1] <= LCD_REMOTE_HEIGHT) { | 96 | && particles[i][1] <= LCD_REMOTE_HEIGHT) { |
@@ -141,14 +143,12 @@ static void snow_init(void) | |||
141 | particles[i][0]=-1; | 143 | particles[i][0]=-1; |
142 | particles[i][1]=-1; | 144 | particles[i][1]=-1; |
143 | } | 145 | } |
144 | #ifdef HAVE_LCD_BITMAP | 146 | #ifdef HAVE_LCD_CHARCELLS |
145 | rb->lcd_clear_display(); | ||
146 | #else | ||
147 | pgfx_display(0, 0); /* display three times */ | 147 | pgfx_display(0, 0); /* display three times */ |
148 | pgfx_display(4, 0); | 148 | pgfx_display(4, 0); |
149 | pgfx_display(8, 0); | 149 | pgfx_display(8, 0); |
150 | pgfx_clear_display(); | ||
151 | #endif | 150 | #endif |
151 | MYLCD(clear_display)(); | ||
152 | #ifdef HAVE_REMOTE_LCD | 152 | #ifdef HAVE_REMOTE_LCD |
153 | rb->lcd_remote_clear_display(); | 153 | rb->lcd_remote_clear_display(); |
154 | #endif | 154 | #endif |
@@ -171,11 +171,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter) | |||
171 | snow_init(); | 171 | snow_init(); |
172 | while (1) { | 172 | while (1) { |
173 | snow_move(); | 173 | snow_move(); |
174 | #ifdef HAVE_LCD_BITMAP | 174 | MYLCD(update)(); |
175 | rb->lcd_update(); | ||
176 | #else | ||
177 | pgfx_update(); | ||
178 | #endif | ||
179 | #ifdef HAVE_REMOTE_LCD | 175 | #ifdef HAVE_REMOTE_LCD |
180 | rb->lcd_remote_update(); | 176 | rb->lcd_remote_update(); |
181 | #endif | 177 | #endif |