summaryrefslogtreecommitdiff
path: root/apps/plugins/nim.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/nim.c')
-rw-r--r--apps/plugins/nim.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/apps/plugins/nim.c b/apps/plugins/nim.c
index 9089cad00a..b13cfe415b 100644
--- a/apps/plugins/nim.c
+++ b/apps/plugins/nim.c
@@ -66,6 +66,7 @@ static struct plugin_api* rb;
66static void impossible(void) 66static void impossible(void)
67{ 67{
68 rb->lcd_puts(0,1,"Impossible!"); 68 rb->lcd_puts(0,1,"Impossible!");
69 rb->lcd_update();
69 rb->sleep(HZ); 70 rb->sleep(HZ);
70 return; 71 return;
71} 72}
@@ -76,6 +77,7 @@ static void lose(void)
76 rb->lcd_define_pattern(hsmile,smile); 77 rb->lcd_define_pattern(hsmile,smile);
77 rb->lcd_puts(0,1,"You Win!!"); 78 rb->lcd_puts(0,1,"You Win!!");
78 rb->lcd_putc(8,1,hsmile); 79 rb->lcd_putc(8,1,hsmile);
80 rb->lcd_update();
79 end=true; 81 end=true;
80 rb->sleep(HZ*2); 82 rb->sleep(HZ*2);
81 return; 83 return;
@@ -88,6 +90,7 @@ static void win(void)
88 rb->lcd_define_pattern(hcry,cry); 90 rb->lcd_define_pattern(hcry,cry);
89 rb->lcd_puts(0,1,"You Lose!!"); 91 rb->lcd_puts(0,1,"You Lose!!");
90 rb->lcd_putc(9,1,hcry); 92 rb->lcd_putc(9,1,hcry);
93 rb->lcd_update();
91 end=true; 94 end=true;
92 rb->sleep(HZ*2); 95 rb->sleep(HZ*2);
93 return; 96 return;
@@ -103,7 +106,7 @@ static void display_first_line(int x)
103 rb->lcd_puts(0,0,str); 106 rb->lcd_puts(0,0,str);
104 107
105 rb->lcd_define_pattern(h1,pattern3); 108 rb->lcd_define_pattern(h1,pattern3);
106 for (i=0;i<x/3;i++) 109 for (i=0;i<x/3;i++)
107 rb->lcd_putc(i,0,h1); 110 rb->lcd_putc(i,0,h1);
108 111
109 if (x%3==2) 112 if (x%3==2)
@@ -131,6 +134,7 @@ static void nim_exit(void *parameter)
131 134
132 /*Clear the screen*/ 135 /*Clear the screen*/
133 rb->lcd_clear_display(); 136 rb->lcd_clear_display();
137 rb->lcd_update();
134} 138}
135 139
136/* this is the plugin entry point */ 140/* this is the plugin entry point */
@@ -183,6 +187,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
183 187
184 rb->snprintf(str,sizeof(str),"[%d..%d]?=%d",min,v,y); 188 rb->snprintf(str,sizeof(str),"[%d..%d]?=%d",min,v,y);
185 rb->lcd_puts(0,1,str); 189 rb->lcd_puts(0,1,str);
190 rb->lcd_update();
186 191
187 go=false; 192 go=false;
188 while (!go) 193 while (!go)
@@ -221,6 +226,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
221 display_first_line(x); 226 display_first_line(x);
222 rb->snprintf(str,sizeof(str),"[%d..%d]?=%d",min,v,y); 227 rb->snprintf(str,sizeof(str),"[%d..%d]?=%d",min,v,y);
223 rb->lcd_puts(0,1,str); 228 rb->lcd_puts(0,1,str);
229 rb->lcd_update();
224 } 230 }
225 231
226 if ( (y==0) && (x<21)) 232 if ( (y==0) && (x<21))
@@ -281,6 +287,7 @@ enum plugin_status plugin_start(struct plugin_api* api, void* parameter)
281 x-=y; 287 x-=y;
282 rb->snprintf(str,sizeof(str),"I take=%d",y); 288 rb->snprintf(str,sizeof(str),"I take=%d",y);
283 rb->lcd_puts(0,1,str); 289 rb->lcd_puts(0,1,str);
290 rb->lcd_update();
284 rb->sleep(HZ); 291 rb->sleep(HZ);
285 } 292 }
286 if ((x==1)&&(!end)) 293 if ((x==1)&&(!end))