diff options
Diffstat (limited to 'uisimulator/tetris.c')
-rw-r--r-- | uisimulator/tetris.c | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/uisimulator/tetris.c b/uisimulator/tetris.c index 8884fd8964..24090eb67e 100644 --- a/uisimulator/tetris.c +++ b/uisimulator/tetris.c | |||
@@ -20,8 +20,7 @@ | |||
20 | ****************************************************************************/ | 20 | ****************************************************************************/ |
21 | 21 | ||
22 | #ifdef HAVE_LCD_BITMAP | 22 | #ifdef HAVE_LCD_BITMAP |
23 | 23 | #include <stdbool.h> | |
24 | #include "types.h" | ||
25 | #include "lcd.h" | 24 | #include "lcd.h" |
26 | #include "button.h" | 25 | #include "button.h" |
27 | #include "kernel.h" | 26 | #include "kernel.h" |
@@ -121,7 +120,7 @@ void draw_frame(int fstart_x,int fstop_x,int fstart_y,int fstop_y) | |||
121 | lcd_drawline(fstop_x, fstart_y, fstop_x, fstop_y); | 120 | lcd_drawline(fstop_x, fstart_y, fstop_x, fstop_y); |
122 | } | 121 | } |
123 | 122 | ||
124 | void draw_block(int x,int y,int block,int frame,int clear) | 123 | void draw_block(int x,int y,int block,int frame,bool clear) |
125 | { | 124 | { |
126 | int i; | 125 | int i; |
127 | for(i=0;i < 4;i++) { | 126 | for(i=0;i < 4;i++) { |
@@ -143,7 +142,7 @@ void to_virtual() | |||
143 | (current_x+block_data[current_b][current_f][0][i])) = current_b+1; | 142 | (current_x+block_data[current_b][current_f][0][i])) = current_b+1; |
144 | } | 143 | } |
145 | 144 | ||
146 | int gameover() | 145 | bool gameover() |
147 | { | 146 | { |
148 | int i; | 147 | int i; |
149 | int frame, block, y, x; | 148 | int frame, block, y, x; |
@@ -162,14 +161,14 @@ int gameover() | |||
162 | if(y+block_data[block][frame][1][i] < start_y) | 161 | if(y+block_data[block][frame][1][i] < start_y) |
163 | { | 162 | { |
164 | /* Game over ;) */ | 163 | /* Game over ;) */ |
165 | return TRUE; | 164 | return true; |
166 | } | 165 | } |
167 | } | 166 | } |
168 | } | 167 | } |
169 | return FALSE; | 168 | return false; |
170 | } | 169 | } |
171 | 170 | ||
172 | int valid_position(int x,int y,int block,int frame) | 171 | bool valid_position(int x,int y,int block,int frame) |
173 | { | 172 | { |
174 | int i; | 173 | int i; |
175 | for(i=0;i < 4;i++) | 174 | for(i=0;i < 4;i++) |
@@ -179,8 +178,8 @@ int valid_position(int x,int y,int block,int frame) | |||
179 | (x+block_data[block][frame][0][i] > max_x-1) || | 178 | (x+block_data[block][frame][0][i] > max_x-1) || |
180 | (y+block_data[block][frame][1][i] < 0) || | 179 | (y+block_data[block][frame][1][i] < 0) || |
181 | (y+block_data[block][frame][1][i] > max_y-1)) | 180 | (y+block_data[block][frame][1][i] > max_y-1)) |
182 | return FALSE; | 181 | return false; |
183 | return TRUE; | 182 | return true; |
184 | } | 183 | } |
185 | 184 | ||
186 | void from_virtual() | 185 | void from_virtual() |
@@ -207,10 +206,10 @@ void move_block(int x,int y,int f) | |||
207 | } | 206 | } |
208 | if(valid_position(current_x+x,current_y+y,current_b,current_f)) | 207 | if(valid_position(current_x+x,current_y+y,current_b,current_f)) |
209 | { | 208 | { |
210 | draw_block(current_x,current_y,current_b,last_frame,TRUE); | 209 | draw_block(current_x,current_y,current_b,last_frame,true); |
211 | current_x += x; | 210 | current_x += x; |
212 | current_y += y; | 211 | current_y += y; |
213 | draw_block(current_x,current_y,current_b,current_f,FALSE); | 212 | draw_block(current_x,current_y,current_b,current_f,false); |
214 | lcd_update(); | 213 | lcd_update(); |
215 | } | 214 | } |
216 | else | 215 | else |
@@ -225,27 +224,28 @@ void new_block() | |||
225 | current_y = 0; | 224 | current_y = 0; |
226 | next_b = t_rand(blocks); | 225 | next_b = t_rand(blocks); |
227 | next_f = t_rand(block_frames[next_b]); | 226 | next_f = t_rand(block_frames[next_b]); |
228 | draw_block(max_x+2,start_y-1,current_b,current_f,TRUE); | 227 | draw_block(max_x+2,start_y-1,current_b,current_f,true); |
229 | draw_block(max_x+2,start_y-1,next_b,next_f,FALSE); | 228 | draw_block(max_x+2,start_y-1,next_b,next_f,false); |
230 | if(!valid_position(current_x,current_y,current_b,current_f)) | 229 | if(!valid_position(current_x,current_y,current_b,current_f)) |
231 | { | 230 | { |
232 | draw_block(current_x,current_y,current_b,current_f,FALSE); | 231 | draw_block(current_x,current_y,current_b,current_f,false); |
233 | lcd_update(); | 232 | lcd_update(); |
234 | } | 233 | } |
235 | else | 234 | else |
236 | draw_block(current_x,current_y,current_b,current_f,FALSE); | 235 | draw_block(current_x,current_y,current_b,current_f,false); |
237 | } | 236 | } |
238 | 237 | ||
239 | int check_lines() | 238 | int check_lines() |
240 | { | 239 | { |
241 | int x,y,line,i; | 240 | int x,y,i; |
241 | bool line; | ||
242 | int lines = 0; | 242 | int lines = 0; |
243 | for(y=0;y < max_y;y++) | 243 | for(y=0;y < max_y;y++) |
244 | { | 244 | { |
245 | line = TRUE; | 245 | line = true; |
246 | for(x=0;x < max_x;x++) | 246 | for(x=0;x < max_x;x++) |
247 | if(virtual[y*max_x+x] == 0) | 247 | if(virtual[y*max_x+x] == 0) |
248 | line = FALSE; | 248 | line = false; |
249 | if(line) | 249 | if(line) |
250 | { | 250 | { |
251 | lines++; | 251 | lines++; |