Mateo Morales / Mbed 2 deprecated Tetris_2

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers datos.h Source File

datos.h

00001 #include "mbed.h"
00002 
00003 uint8_t start[8]={0,0,0,0,0,0,0,0};
00004 int tamano;
00005 int posicion;
00006 int posicion_original;
00007 int verificar2;
00008 void start0()
00009 {
00010   int i;
00011   for (i=0;i<7;i++)
00012   {
00013       start[i]=0;
00014   }
00015 }
00016        
00017 void a(uint8_t giro)
00018 {
00019       start0();
00020       posicion_original=posicion;
00021       posicion=7-posicion;
00022       switch(giro)
00023       { 
00024         case 0:
00025          start[posicion-2]=0b10000000;
00026          start[posicion-1]=0b11000000;
00027          start[posicion-0]=0b10000000;
00028          tamano=3;
00029         break;
00030         
00031         
00032         case 1:
00033          start[posicion-1]=0b01000000;
00034          start[posicion-0]=0b11100000;
00035          tamano=2;
00036         break;
00037         
00038         
00039         case 2:
00040          start[posicion-2]=0b01000000;
00041          start[posicion-1]=0b11000000;
00042          start[posicion-0]=0b01000000;
00043          tamano=3;
00044         break;
00045         
00046         
00047         case 3:
00048          start[posicion-1]=0b11100000;
00049          start[posicion-0]=0b01000000;
00050          tamano=2;
00051         break;
00052         
00053         default: posicion_original=20;
00054       
00055       }
00056       
00057       
00058 }
00059 void b(uint8_t giro)
00060 {
00061       start0();
00062       posicion_original=posicion;
00063       posicion=7-posicion;
00064       
00065       switch(giro)
00066       { 
00067         case 0:
00068          start[posicion-0]=0b11100000;
00069          tamano=1;
00070         break;
00071         
00072         
00073         case 1:
00074  
00075          start[posicion-2]=0b10000000;
00076          start[posicion-1]=0b10000000;
00077          start[posicion-0]=0b10000000;
00078          tamano=3;
00079         break;
00080         
00081         
00082         case 2:
00083          start[posicion-0]=0b11100000;
00084          tamano=3;
00085         break;
00086         
00087         
00088         case 3:
00089          start[posicion-2]=0b10000000;
00090          start[posicion-1]=0b10000000;
00091          start[posicion-0]=0b10000000;
00092          tamano=3;
00093         break;
00094 
00095         default: posicion_original=20;
00096         
00097       }
00098       
00099 }
00100 
00101 void c(uint8_t giro)
00102 {
00103       start0();
00104       posicion_original=posicion;
00105       posicion=7-posicion;
00106       switch(giro)
00107       { 
00108         case 0:
00109          start[posicion-1]=0b11000000;
00110          start[posicion-0]=0b11000000;
00111          tamano=2;
00112         break;
00113         
00114         
00115         case 1:
00116          start[posicion-1]=0b11000000;
00117          start[posicion-0]=0b11000000;
00118          tamano=2;
00119         break;
00120         
00121         
00122         case 2:
00123          start[posicion-1]=0b11000000;
00124          start[posicion-0]=0b11000000;
00125          tamano=2;
00126         break;
00127         
00128         
00129         case 3:
00130          start[posicion-1]=0b11000000;
00131          start[posicion-0]=0b11000000;
00132          tamano=2;
00133         break;
00134         
00135         default: posicion_original=20;
00136       
00137       }
00138       
00139 }
00140 
00141 void d(uint8_t giro)
00142 {
00143       start0();
00144       posicion_original=posicion;
00145       posicion=7-posicion;
00146       switch(giro)
00147       { 
00148         case 0:
00149          start[posicion-1]=0b11100000;
00150          start[posicion-0]=0b10000000;
00151          tamano=2;
00152         break;
00153         
00154         
00155         case 1:
00156          start[posicion-2]=0b10000000;
00157          start[posicion-1]=0b10000000;
00158          start[posicion-0]=0b11000000;
00159          tamano=3;
00160         break;
00161         
00162         
00163         case 2:
00164          start[posicion-1]=0b00100000;
00165          start[posicion-0]=0b11100000;
00166          tamano=2;
00167          verificar2=1;
00168         break;
00169         
00170         
00171         case 3:
00172          start[posicion-2]=0b11000000;
00173          start[posicion-1]=0b01000000;
00174          start[posicion-0]=0b01000000;
00175          tamano=3;
00176         break;
00177         default: posicion_original=20;
00178         
00179       
00180       }
00181       
00182       }
00183 
00184 void e(uint8_t giro)
00185 {
00186       start0();
00187       posicion_original=posicion;
00188       posicion=7-posicion;
00189       switch(giro)
00190       { 
00191         case 0:
00192          start[posicion-1]=0b10000000;
00193          start[posicion-0]=0b11100000;
00194          tamano=2;
00195         break;
00196         
00197         
00198         case 1:
00199          start[posicion-2]=0b01000000;
00200          start[posicion-1]=0b01000000;
00201          start[posicion-0]=0b11000000;
00202          tamano=3;
00203         break;
00204         
00205         
00206         case 2:
00207          start[posicion-1]=0b11100000;
00208          start[posicion-0]=0b00100000;
00209          tamano=2;
00210          verificar2=1;
00211         break;
00212         
00213         
00214         case 3:
00215          start[posicion-2]=0b11000000;
00216          start[posicion-1]=0b10000000;
00217          start[posicion-0]=0b10000000;
00218          tamano=3;
00219         break;
00220         
00221         default: posicion_original=20;
00222       
00223       }
00224       
00225       }
00226 
00227 void f (uint8_t giro)
00228 {
00229       start0();
00230       posicion_original=posicion;
00231       posicion=7-posicion;
00232       switch(giro)
00233       { 
00234         case 0:
00235          start[posicion-2]=0b10000000;
00236          start[posicion-1]=0b11000000;
00237          start[posicion-0]=0b01000000;
00238          tamano=3;
00239         break;
00240         
00241         
00242         case 1:
00243          start[posicion-1]=0b01100000;
00244          start[posicion-0]=0b11000000;
00245          tamano=2;
00246         break;
00247         
00248         
00249         case 2:
00250          start[posicion-2]=0b10000000;
00251          start[posicion-1]=0b11000000;
00252          start[posicion-0]=0b01000000;
00253          tamano=3;
00254         break;
00255         
00256         
00257         case 3:
00258          start[posicion-1]=0b01100000;
00259          start[posicion-0]=0b11000000;
00260          tamano=2;
00261         break;
00262         
00263         default: posicion_original=20;
00264       
00265       }
00266       
00267       }
00268         
00269 
00270 void g (uint8_t giro)
00271 {
00272       start0();
00273       posicion_original=posicion;
00274       posicion=7-posicion;
00275       switch(giro)
00276       { 
00277         case 0:
00278          start[posicion-2]=0b01000000;
00279          start[posicion-1]=0b11000000;
00280          start[posicion-0]=0b10000000;
00281          tamano=3;
00282         break;
00283         
00284         
00285         case 1:
00286          start[posicion-1]=0b11000000;
00287          start[posicion-0]=0b01100000;
00288          tamano=2;
00289         break;
00290         
00291         
00292         
00293         case 2:
00294          start[posicion-2]=0b01000000;
00295          start[posicion-1]=0b11000000;
00296          start[posicion-0]=0b10000000;
00297          tamano=3;
00298         break;
00299         
00300         
00301         case 3:
00302          start[posicion-1]=0b11000000;
00303          start[posicion-0]=0b01100000;
00304          tamano=2;
00305         break;
00306         
00307         default: posicion_original=20;
00308       
00309       }
00310       
00311 }