summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/plugin.c7
-rw-r--r--apps/plugin.h2
-rw-r--r--apps/plugins/bounce.c1
-rwxr-xr-xapps/plugins/bubbles.c1
-rw-r--r--apps/plugins/chessbox/chessbox.c3
-rw-r--r--apps/plugins/clock.c5
-rw-r--r--apps/plugins/cube.c1
-rw-r--r--apps/plugins/demystify.c1
-rw-r--r--apps/plugins/doom/rockdoom.c2
-rw-r--r--apps/plugins/fire.c1
-rw-r--r--apps/plugins/flipit.c2
-rw-r--r--apps/plugins/jewels.c1
-rw-r--r--apps/plugins/mandelbrot.c2
-rw-r--r--apps/plugins/minesweeper.c1
-rw-r--r--apps/plugins/oscilloscope.c1
-rw-r--r--apps/plugins/pacbox/pacbox.c2
-rw-r--r--apps/plugins/plasma.c1
-rw-r--r--apps/plugins/rockblox.c1
-rw-r--r--apps/plugins/rockboy/rockboy.c1
-rw-r--r--apps/plugins/rockpaint.c1
-rw-r--r--apps/plugins/snake2.c4
-rw-r--r--apps/plugins/solitaire.c18
-rwxr-xr-xapps/plugins/spacerocks.c1
-rw-r--r--apps/plugins/star.c1
-rw-r--r--apps/plugins/starfield.c5
-rw-r--r--apps/plugins/sudoku/sudoku.c2
-rw-r--r--apps/plugins/wormlet.c2
-rw-r--r--apps/plugins/xobox.c1
-rw-r--r--apps/plugins/zxbox/zxbox.c1
29 files changed, 39 insertions, 33 deletions
diff --git a/apps/plugin.c b/apps/plugin.c
index 4827476545..c6481e8eae 100644
--- a/apps/plugin.c
+++ b/apps/plugin.c
@@ -466,6 +466,9 @@ static const struct plugin_api rockbox_api = {
466#endif 466#endif
467#endif /* HAVE_RECORDING */ 467#endif /* HAVE_RECORDING */
468#endif /* CONFIG_CODEC == SWCODEC */ 468#endif /* CONFIG_CODEC == SWCODEC */
469
470 lcd_set_backdrop,
471
469}; 472};
470 473
471int plugin_load(const char* plugin, void* parameter) 474int plugin_load(const char* plugin, void* parameter)
@@ -485,6 +488,7 @@ int plugin_load(const char* plugin, void* parameter)
485#ifdef HAVE_REMOTE_LCD 488#ifdef HAVE_REMOTE_LCD
486 int rxm, rym; 489 int rxm, rym;
487#endif 490#endif
491
488#if LCD_DEPTH > 1 492#if LCD_DEPTH > 1
489 fb_data* old_backdrop; 493 fb_data* old_backdrop;
490#endif 494#endif
@@ -567,10 +571,11 @@ int plugin_load(const char* plugin, void* parameter)
567 xm = lcd_getxmargin(); 571 xm = lcd_getxmargin();
568 ym = lcd_getymargin(); 572 ym = lcd_getymargin();
569 lcd_setmargins(0,0); 573 lcd_setmargins(0,0);
574
570#if LCD_DEPTH > 1 575#if LCD_DEPTH > 1
571 old_backdrop = lcd_get_backdrop(); 576 old_backdrop = lcd_get_backdrop();
572 lcd_set_backdrop(NULL);
573#endif 577#endif
578
574 lcd_clear_display(); 579 lcd_clear_display();
575 lcd_update(); 580 lcd_update();
576#else /* !HAVE_LCD_BITMAP */ 581#else /* !HAVE_LCD_BITMAP */
diff --git a/apps/plugin.h b/apps/plugin.h
index bfb02b9e67..2fcd52198c 100644
--- a/apps/plugin.h
+++ b/apps/plugin.h
@@ -578,6 +578,8 @@ struct plugin_api {
578#endif 578#endif
579#endif /* HAVE_RECORDING */ 579#endif /* HAVE_RECORDING */
580#endif /* CONFIG_CODEC == SWCODEC */ 580#endif /* CONFIG_CODEC == SWCODEC */
581
582 void (*lcd_set_backdrop)(fb_data* backdrop);
581}; 583};
582 584
583/* plugin header */ 585/* plugin header */
diff --git a/apps/plugins/bounce.c b/apps/plugins/bounce.c
index 002c913d77..e3e90468cc 100644
--- a/apps/plugins/bounce.c
+++ b/apps/plugins/bounce.c
@@ -480,6 +480,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
480 rb = api; 480 rb = api;
481 481
482 len = rb->strlen(SS_TITLE); 482 len = rb->strlen(SS_TITLE);
483 rb->lcd_set_backdrop(NULL);
483 rb->lcd_setfont(FONT_SYSFIXED); 484 rb->lcd_setfont(FONT_SYSFIXED);
484 rb->lcd_getstringsize((unsigned char *)SS_TITLE, &w, &h); 485 rb->lcd_getstringsize((unsigned char *)SS_TITLE, &w, &h);
485 486
diff --git a/apps/plugins/bubbles.c b/apps/plugins/bubbles.c
index 2afbaba011..4a3f1c6962 100755
--- a/apps/plugins/bubbles.c
+++ b/apps/plugins/bubbles.c
@@ -2699,6 +2699,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter) {
2699 rb->lcd_clear_display(); 2699 rb->lcd_clear_display();
2700 2700
2701 /* start app */ 2701 /* start app */
2702 rb->lcd_set_backdrop(NULL);
2702 rb->lcd_setfont(FONT_SYSFIXED); 2703 rb->lcd_setfont(FONT_SYSFIXED);
2703 2704
2704 while(!exit) { 2705 while(!exit) {
diff --git a/apps/plugins/chessbox/chessbox.c b/apps/plugins/chessbox/chessbox.c
index fdab570bc2..d82ac9e181 100644
--- a/apps/plugins/chessbox/chessbox.c
+++ b/apps/plugins/chessbox/chessbox.c
@@ -643,10 +643,11 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter) {
643 /* plugin init */ 643 /* plugin init */
644 (void)parameter; 644 (void)parameter;
645 rb = api; 645 rb = api;
646 rb->lcd_set_backdrop(NULL);
646 /* end of plugin init */ 647 /* end of plugin init */
647 648
648 /* load opening book, soon */ 649 /* load opening book, soon */
649 650
650 /* init board */ 651 /* init board */
651 GNUChess_Initialize(); 652 GNUChess_Initialize();
652 653
diff --git a/apps/plugins/clock.c b/apps/plugins/clock.c
index a01a6eb608..032344263a 100644
--- a/apps/plugins/clock.c
+++ b/apps/plugins/clock.c
@@ -3101,11 +3101,6 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
3101 3101
3102 draw_extras(year, day, month, temphour, minute, second); 3102 draw_extras(year, day, month, temphour, minute, second);
3103 3103
3104#if (CONFIG_KEYPAD == IPOD_4G_PAD)
3105 rb->lcd_drawline (113, 0, 113, 65);
3106 rb->lcd_drawline (0, 65, 113, 65);
3107#endif
3108
3109 if(!idle_poweroff) 3104 if(!idle_poweroff)
3110 rb->reset_poweroff_timer(); 3105 rb->reset_poweroff_timer();
3111 3106
diff --git a/apps/plugins/cube.c b/apps/plugins/cube.c
index 1dd981bb56..02f7b45770 100644
--- a/apps/plugins/cube.c
+++ b/apps/plugins/cube.c
@@ -558,6 +558,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
558 558
559#ifdef HAVE_LCD_BITMAP 559#ifdef HAVE_LCD_BITMAP
560#if LCD_DEPTH > 1 560#if LCD_DEPTH > 1
561 rb->lcd_set_backdrop(NULL);
561 xlcd_init(rb); 562 xlcd_init(rb);
562#elif defined(USE_GSLIB) 563#elif defined(USE_GSLIB)
563 gbuf = (unsigned char *)rb->plugin_get_buffer(&gbuf_size); 564 gbuf = (unsigned char *)rb->plugin_get_buffer(&gbuf_size);
diff --git a/apps/plugins/demystify.c b/apps/plugins/demystify.c
index 44b658e878..36e41a2a73 100644
--- a/apps/plugins/demystify.c
+++ b/apps/plugins/demystify.c
@@ -445,6 +445,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
445 int ret; 445 int ret;
446 446
447 rb = api; /* copy to global api pointer */ 447 rb = api; /* copy to global api pointer */
448 rb->lcd_set_backdrop(NULL);
448 (void)parameter; 449 (void)parameter;
449 if (rb->global_settings->backlight_timeout > 0) 450 if (rb->global_settings->backlight_timeout > 0)
450 { 451 {
diff --git a/apps/plugins/doom/rockdoom.c b/apps/plugins/doom/rockdoom.c
index 718a7b9f47..2b42322daa 100644
--- a/apps/plugins/doom/rockdoom.c
+++ b/apps/plugins/doom/rockdoom.c
@@ -849,6 +849,8 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
849 rb->profile_thread(); 849 rb->profile_thread();
850#endif 850#endif
851 851
852 rb->lcd_set_backdrop(NULL);
853
852 D_DoomMain (); 854 D_DoomMain ();
853 855
854#ifdef RB_PROFILE 856#ifdef RB_PROFILE
diff --git a/apps/plugins/fire.c b/apps/plugins/fire.c
index df46eb918e..6f20609e62 100644
--- a/apps/plugins/fire.c
+++ b/apps/plugins/fire.c
@@ -409,6 +409,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
409 409
410 rb = api; // copy to global api pointer 410 rb = api; // copy to global api pointer
411 (void)parameter; 411 (void)parameter;
412 rb->lcd_set_backdrop(NULL);
412 if (rb->global_settings->backlight_timeout > 0) 413 if (rb->global_settings->backlight_timeout > 0)
413 rb->backlight_set_timeout(1);/* keep the light on */ 414 rb->backlight_set_timeout(1);/* keep the light on */
414 415
diff --git a/apps/plugins/flipit.c b/apps/plugins/flipit.c
index 0712e32563..b44a54d1da 100644
--- a/apps/plugins/flipit.c
+++ b/apps/plugins/flipit.c
@@ -469,6 +469,8 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
469 rb->lcd_set_foreground(LCD_BLACK); 469 rb->lcd_set_foreground(LCD_BLACK);
470#endif 470#endif
471 471
472 rb->lcd_set_backdrop(NULL);
473
472 rb->splash(HZ, true, "FlipIt!"); 474 rb->splash(HZ, true, "FlipIt!");
473 475
474#ifdef HAVE_LCD_BITMAP 476#ifdef HAVE_LCD_BITMAP
diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c
index 90544202a6..1982d77db1 100644
--- a/apps/plugins/jewels.c
+++ b/apps/plugins/jewels.c
@@ -1562,6 +1562,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter) {
1562 jewels_loadscores(&bj); 1562 jewels_loadscores(&bj);
1563 1563
1564 rb->lcd_setfont(FONT_SYSFIXED); 1564 rb->lcd_setfont(FONT_SYSFIXED);
1565 rb->lcd_set_backdrop(NULL);
1565 jewels_setcolors(); 1566 jewels_setcolors();
1566 1567
1567 while(!exit) { 1568 while(!exit) {
diff --git a/apps/plugins/mandelbrot.c b/apps/plugins/mandelbrot.c
index 4c7c4bbc9b..7e6c4f3d48 100644
--- a/apps/plugins/mandelbrot.c
+++ b/apps/plugins/mandelbrot.c
@@ -546,6 +546,8 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
546 xlcd_init(rb); 546 xlcd_init(rb);
547#endif 547#endif
548 548
549 rb->lcd_set_backdrop(NULL);
550
549 init_mandelbrot_set(); 551 init_mandelbrot_set();
550 552
551 /* main loop */ 553 /* main loop */
diff --git a/apps/plugins/minesweeper.c b/apps/plugins/minesweeper.c
index fe24e44a77..143908e040 100644
--- a/apps/plugins/minesweeper.c
+++ b/apps/plugins/minesweeper.c
@@ -657,6 +657,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
657 657
658 (void)parameter; 658 (void)parameter;
659 rb = api; 659 rb = api;
660 rb->lcd_set_backdrop(NULL);
660 661
661 while( !exit ) 662 while( !exit )
662 { 663 {
diff --git a/apps/plugins/oscilloscope.c b/apps/plugins/oscilloscope.c
index 7df43e7271..f8564b211a 100644
--- a/apps/plugins/oscilloscope.c
+++ b/apps/plugins/oscilloscope.c
@@ -575,6 +575,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
575#if LCD_DEPTH > 1 575#if LCD_DEPTH > 1
576 rb->lcd_set_foreground(GRAPH_COLOR); 576 rb->lcd_set_foreground(GRAPH_COLOR);
577 rb->lcd_set_background(BACKG_COLOR); 577 rb->lcd_set_background(BACKG_COLOR);
578 rb->lcd_set_backdrop(NULL);
578 rb->lcd_clear_display(); 579 rb->lcd_clear_display();
579 rb->lcd_update(); 580 rb->lcd_update();
580#endif 581#endif
diff --git a/apps/plugins/pacbox/pacbox.c b/apps/plugins/pacbox/pacbox.c
index 8acc06ae1d..7c2d1e21ca 100644
--- a/apps/plugins/pacbox/pacbox.c
+++ b/apps/plugins/pacbox/pacbox.c
@@ -389,7 +389,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
389#ifdef HAVE_ADJUSTABLE_CPU_FREQ 389#ifdef HAVE_ADJUSTABLE_CPU_FREQ
390 rb->cpu_boost(true); 390 rb->cpu_boost(true);
391#endif 391#endif
392 392 rb->lcd_set_backdrop(NULL);
393 rb->lcd_set_foreground(LCD_WHITE); 393 rb->lcd_set_foreground(LCD_WHITE);
394 rb->lcd_set_background(LCD_BLACK); 394 rb->lcd_set_background(LCD_BLACK);
395 rb->lcd_clear_display(); 395 rb->lcd_clear_display();
diff --git a/apps/plugins/plasma.c b/apps/plugins/plasma.c
index c48235ecf8..927b290e12 100644
--- a/apps/plugins/plasma.c
+++ b/apps/plugins/plasma.c
@@ -348,6 +348,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
348 348
349 rb = api; /* copy to global api pointer */ 349 rb = api; /* copy to global api pointer */
350 (void)parameter; 350 (void)parameter;
351 rb->lcd_set_backdrop(NULL);
351 if (rb->global_settings->backlight_timeout > 0) 352 if (rb->global_settings->backlight_timeout > 0)
352 rb->backlight_set_timeout(1);/* keep the light on */ 353 rb->backlight_set_timeout(1);/* keep the light on */
353 354
diff --git a/apps/plugins/rockblox.c b/apps/plugins/rockblox.c
index a9fd89db16..34754bfd78 100644
--- a/apps/plugins/rockblox.c
+++ b/apps/plugins/rockblox.c
@@ -910,6 +910,7 @@ enum plugin_status plugin_start (struct plugin_api *api, void *parameter)
910 rb = api; 910 rb = api;
911 911
912 rb->srand (*rb->current_tick); 912 rb->srand (*rb->current_tick);
913 rb->lcd_set_backdrop(NULL);
913 914
914#ifdef HAVE_LCD_BITMAP 915#ifdef HAVE_LCD_BITMAP
915 rb->lcd_setfont (FONT_SYSFIXED); 916 rb->lcd_setfont (FONT_SYSFIXED);
diff --git a/apps/plugins/rockboy/rockboy.c b/apps/plugins/rockboy/rockboy.c
index d070fc09bb..5ef47b5813 100644
--- a/apps/plugins/rockboy/rockboy.c
+++ b/apps/plugins/rockboy/rockboy.c
@@ -170,6 +170,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
170 170
171 rb->lcd_setfont(0); 171 rb->lcd_setfont(0);
172 172
173 rb->lcd_set_backdrop(NULL);
173#if defined(HAVE_LCD_COLOR) 174#if defined(HAVE_LCD_COLOR)
174 rb->lcd_set_foreground(LCD_WHITE); 175 rb->lcd_set_foreground(LCD_WHITE);
175 rb->lcd_set_background(LCD_BLACK); 176 rb->lcd_set_background(LCD_BLACK);
diff --git a/apps/plugins/rockpaint.c b/apps/plugins/rockpaint.c
index 8fd75755d6..27df31092a 100644
--- a/apps/plugins/rockpaint.c
+++ b/apps/plugins/rockpaint.c
@@ -2941,6 +2941,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
2941 rb = api; 2941 rb = api;
2942 2942
2943 rb->lcd_set_foreground(COLOR_WHITE); 2943 rb->lcd_set_foreground(COLOR_WHITE);
2944 rb->lcd_set_backdrop(NULL);
2944 rb->lcd_fillrect(0,0,LCD_WIDTH,LCD_HEIGHT); 2945 rb->lcd_fillrect(0,0,LCD_WIDTH,LCD_HEIGHT);
2945 rb->splash( HZ/2, true, "Rock Paint"); 2946 rb->splash( HZ/2, true, "Rock Paint");
2946 2947
diff --git a/apps/plugins/snake2.c b/apps/plugins/snake2.c
index c2357967f5..39ffec2dda 100644
--- a/apps/plugins/snake2.c
+++ b/apps/plugins/snake2.c
@@ -1134,7 +1134,7 @@ void game (void)
1134 1134
1135 draw_apple(); 1135 draw_apple();
1136 1136
1137 rb->sleep(HZ/speed); 1137 rb->sleep(HZ/speed); /* Make snake more addaptive for frequency shifts */
1138 1138
1139 button = rb->button_get(false); 1139 button = rb->button_get(false);
1140 1140
@@ -1326,7 +1326,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
1326 1326
1327 /* Lets use the default font */ 1327 /* Lets use the default font */
1328 rb->lcd_setfont(FONT_SYSFIXED); 1328 rb->lcd_setfont(FONT_SYSFIXED);
1329 1329 rb->lcd_set_backdrop(NULL);
1330#ifdef HAVE_LCD_COLOR 1330#ifdef HAVE_LCD_COLOR
1331 rb->lcd_set_foreground(LCD_BLACK); 1331 rb->lcd_set_foreground(LCD_BLACK);
1332 rb->lcd_set_background(LCD_WHITE); 1332 rb->lcd_set_background(LCD_WHITE);
diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c
index d72cea9a96..fe72d823b5 100644
--- a/apps/plugins/solitaire.c
+++ b/apps/plugins/solitaire.c
@@ -362,17 +362,11 @@ static void draw_card_ext( int x, int y, bool selected, bool cursor )
362 362
363 if( selected ) 363 if( selected )
364 { 364 {
365#if LCD_DEPTH > 1
366 rb->lcd_set_foreground( FRAME_COLOR );
367#endif
368 rb->lcd_drawrect( x+1, y+1, CARD_WIDTH-2, CARD_HEIGHT-2 ); 365 rb->lcd_drawrect( x+1, y+1, CARD_WIDTH-2, CARD_HEIGHT-2 );
369#ifdef LARGE_CARD 366#ifdef LARGE_CARD
370 rb->lcd_drawrect( x+2, y+2, CARD_WIDTH-4, CARD_HEIGHT-4 ); 367 rb->lcd_drawrect( x+2, y+2, CARD_WIDTH-4, CARD_HEIGHT-4 );
371#endif 368#endif
372 } 369 }
373#if LCD_DEPTH > 1
374 rb->lcd_set_foreground( LCD_BLACK );
375#endif
376 370
377 if( cursor ) 371 if( cursor )
378 { 372 {
@@ -575,11 +569,6 @@ int solitaire_menu(bool in_game)
575 569
576 struct menu_item items[5]; 570 struct menu_item items[5];
577 571
578#if LCD_DEPTH > 1
579 rb->lcd_set_background(LCD_DEFAULT_BG);
580 rb->lcd_set_foreground(LCD_DEFAULT_FG);
581#endif
582
583 if (in_game) 572 if (in_game)
584 { 573 {
585 items[i++].desc = "Resume Game"; 574 items[i++].desc = "Resume Game";
@@ -1098,15 +1087,8 @@ int solitaire( void )
1098 1087
1099 while( true ) 1088 while( true )
1100 { 1089 {
1101#if LCD_DEPTH>1
1102 rb->lcd_set_background(BACKGROUND_COLOR);
1103#endif
1104 rb->lcd_clear_display(); 1090 rb->lcd_clear_display();
1105 1091
1106#if LCD_DEPTH > 1
1107 rb->lcd_set_foreground(LCD_BLACK);
1108#endif
1109
1110 /* get the biggest column length so that display can be "optimized" */ 1092 /* get the biggest column length so that display can be "optimized" */
1111 biggest_col_length = 0; 1093 biggest_col_length = 0;
1112 1094
diff --git a/apps/plugins/spacerocks.c b/apps/plugins/spacerocks.c
index 1406643395..c1daa94fa5 100755
--- a/apps/plugins/spacerocks.c
+++ b/apps/plugins/spacerocks.c
@@ -1675,6 +1675,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
1675 game_state = ATTRACT_MODE; 1675 game_state = ATTRACT_MODE;
1676 1676
1677 /* universal font */ 1677 /* universal font */
1678 rb->lcd_set_backdrop(NULL);
1678 rb->lcd_setfont(FONT_SYSFIXED); 1679 rb->lcd_setfont(FONT_SYSFIXED);
1679 rb->backlight_set_timeout(1); 1680 rb->backlight_set_timeout(1);
1680 iohiscore(); 1681 iohiscore();
diff --git a/apps/plugins/star.c b/apps/plugins/star.c
index 2bf2902bc6..2f5814d8c8 100644
--- a/apps/plugins/star.c
+++ b/apps/plugins/star.c
@@ -1115,6 +1115,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
1115 rb->lcd_getstringsize("a", &char_width, &char_height); 1115 rb->lcd_getstringsize("a", &char_width, &char_height);
1116 1116
1117#if LCD_DEPTH > 1 1117#if LCD_DEPTH > 1
1118 rb->lcd_set_backdrop(NULL);
1118 rb->lcd_set_background( LCD_BLACK ); 1119 rb->lcd_set_background( LCD_BLACK );
1119 rb->lcd_set_foreground( LCD_WHITE ); 1120 rb->lcd_set_foreground( LCD_WHITE );
1120#endif 1121#endif
diff --git a/apps/plugins/starfield.c b/apps/plugins/starfield.c
index 0d87ea7fff..b236a21c21 100644
--- a/apps/plugins/starfield.c
+++ b/apps/plugins/starfield.c
@@ -223,11 +223,6 @@ int plugin_main(void)
223 starfield_init(&starfield); 223 starfield_init(&starfield);
224 starfield_add_stars(&starfield, INIT_STARS); 224 starfield_add_stars(&starfield, INIT_STARS);
225 225
226#ifdef HAVE_LCD_COLOR
227 rb->lcd_set_background(LCD_BLACK);
228 rb->lcd_set_foreground(LCD_WHITE);
229#endif
230
231 while (true) 226 while (true)
232 { 227 {
233 rb->sleep(1); 228 rb->sleep(1);
diff --git a/apps/plugins/sudoku/sudoku.c b/apps/plugins/sudoku/sudoku.c
index e1e99bf444..d280688a8d 100644
--- a/apps/plugins/sudoku/sudoku.c
+++ b/apps/plugins/sudoku/sudoku.c
@@ -1125,6 +1125,8 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
1125 /* plugin init */ 1125 /* plugin init */
1126 rb = api; 1126 rb = api;
1127 /* end of plugin init */ 1127 /* end of plugin init */
1128
1129 rb->lcd_set_backdrop(NULL);
1128 1130
1129 clear_state(&state); 1131 clear_state(&state);
1130 1132
diff --git a/apps/plugins/wormlet.c b/apps/plugins/wormlet.c
index f108b4d518..3d3cd4f25c 100644
--- a/apps/plugins/wormlet.c
+++ b/apps/plugins/wormlet.c
@@ -2355,6 +2355,8 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
2355 rb->lcd_set_background(COLOR_BG); 2355 rb->lcd_set_background(COLOR_BG);
2356#endif 2356#endif
2357 2357
2358 rb->lcd_set_backdrop(NULL);
2359
2358#ifdef DEBUG_WORMLET 2360#ifdef DEBUG_WORMLET
2359 testline_in_rect(); 2361 testline_in_rect();
2360 test_worm_argh_collision_in_moves(); 2362 test_worm_argh_collision_in_moves();
diff --git a/apps/plugins/xobox.c b/apps/plugins/xobox.c
index abfd2a53b4..e6b66b3ab5 100644
--- a/apps/plugins/xobox.c
+++ b/apps/plugins/xobox.c
@@ -861,6 +861,7 @@ enum plugin_status plugin_start (struct plugin_api *api, void *parameter)
861 rb = api; 861 rb = api;
862 862
863 rb->lcd_setfont (FONT_SYSFIXED); 863 rb->lcd_setfont (FONT_SYSFIXED);
864 rb->lcd_set_backdrop(NULL);
864 865
865 /* Permanently enable the backlight (unless the user has turned it off) */ 866 /* Permanently enable the backlight (unless the user has turned it off) */
866 if (rb->global_settings->backlight_timeout > 0) 867 if (rb->global_settings->backlight_timeout > 0)
diff --git a/apps/plugins/zxbox/zxbox.c b/apps/plugins/zxbox/zxbox.c
index eb177a090e..54a11d010e 100644
--- a/apps/plugins/zxbox/zxbox.c
+++ b/apps/plugins/zxbox/zxbox.c
@@ -72,6 +72,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
72#if CODEC == SWCODEC && !defined SIMULATOR 72#if CODEC == SWCODEC && !defined SIMULATOR
73 rb->pcm_play_stop(); 73 rb->pcm_play_stop();
74#endif 74#endif
75 rb->lcd_set_backdrop(NULL);
75 rb->splash(HZ, true, "Welcome to ZXBox"); 76 rb->splash(HZ, true, "Welcome to ZXBox");
76 77
77#ifdef USE_IRAM 78#ifdef USE_IRAM