Entrega 1 de tetris

Dependencies:   mbed

Revision:
0:d1aba6605d0b
Child:
2:2ca73be1a865
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/datos.h	Thu Sep 13 11:46:46 2018 +0000
@@ -0,0 +1,308 @@
+#include "mbed.h"
+
+uint8_t start[8]={0,0,0,0,0,0,0,0};
+int tamano;
+int posicion;
+int posicion_original;
+void start0()
+{
+  int i;
+  for (i=0;i<7;i++)
+  {
+      start[i]=0;
+  }
+}
+       
+void a(uint8_t giro)
+{
+      start0();
+      posicion_original=posicion;
+      posicion=7-posicion;
+      switch(giro)
+      { 
+        case 0:
+         start[posicion-2]=0b10000000;
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b10000000;
+         tamano=3;
+        break;
+        
+        
+        case 1:
+         start[posicion-1]=0b01000000;
+         start[posicion-0]=0b11100000;
+         tamano=2;
+        break;
+        
+        
+        case 2:
+         start[posicion-2]=0b01000000;
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b01000000;
+         tamano=3;
+        break;
+        
+        
+        case 3:
+         start[posicion-1]=0b11100000;
+         start[posicion-0]=0b01000000;
+         tamano=2;
+        break;
+        
+        default: posicion_original=20;
+      
+      }
+      
+      
+}
+void b(uint8_t giro)
+{
+      start0();
+      posicion_original=posicion;
+      posicion=7-posicion;
+      
+      switch(giro)
+      { 
+        case 0:
+         start[posicion-0]=0b11100000;
+         tamano=1;
+        break;
+        
+        
+        case 1:
+ 
+         start[posicion-2]=0b10000000;
+         start[posicion-1]=0b10000000;
+         start[posicion-0]=0b10000000;
+         tamano=3;
+        break;
+        
+        
+        case 2:
+         start[posicion-0]=0b11100000;
+         tamano=3;
+        break;
+        
+        
+        case 3:
+         start[posicion-2]=0b10000000;
+         start[posicion-1]=0b10000000;
+         start[posicion-0]=0b10000000;
+         tamano=3;
+        break;
+
+        default: posicion_original=20;
+        
+      }
+      
+}
+
+void c(uint8_t giro)
+{
+      start0();
+      posicion_original=posicion;
+      posicion=7-posicion;
+      switch(giro)
+      { 
+        case 0:
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b11000000;
+         tamano=2;
+        break;
+        
+        
+        case 1:
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b11000000;
+         tamano=2;
+        break;
+        
+        
+        case 2:
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b11000000;
+         tamano=2;
+        break;
+        
+        
+        case 3:
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b11000000;
+         tamano=2;
+        break;
+        
+        default: posicion_original=20;
+      
+      }
+      
+}
+
+void d(uint8_t giro)
+{
+      start0();
+      posicion_original=posicion;
+      posicion=7-posicion;
+      switch(giro)
+      { 
+        case 0:
+         start[posicion-1]=0b11100000;
+         start[posicion-0]=0b10000000;
+         tamano=2;
+        break;
+        
+        
+        case 1:
+         start[posicion-2]=0b10000000;
+         start[posicion-1]=0b10000000;
+         start[posicion-0]=0b11000000;
+         tamano=3;
+        break;
+        
+        
+        case 2:
+         start[posicion-1]=0b00100000;
+         start[posicion-0]=0b11100000;
+         tamano=2;
+        break;
+        
+        
+        case 3:
+         start[posicion-2]=0b11000000;
+         start[posicion-1]=0b01000000;
+         start[posicion-0]=0b01000000;
+         tamano=3;
+        break;
+        default: posicion_original=20;
+        
+      
+      }
+      
+      }
+
+void e(uint8_t giro)
+{
+      start0();
+      posicion_original=posicion;
+      posicion=7-posicion;
+      switch(giro)
+      { 
+        case 0:
+         start[posicion-1]=0b10000000;
+         start[posicion-0]=0b11100000;
+         tamano=2;
+        break;
+        
+        
+        case 1:
+         start[posicion-2]=0b01000000;
+         start[posicion-1]=0b01000000;
+         start[posicion-0]=0b11000000;
+         tamano=3;
+        break;
+        
+        
+        case 2:
+         start[posicion-1]=0b11100000;
+         start[posicion-0]=0b00100000;
+         tamano=2;
+        break;
+        
+        
+        case 3:
+         start[posicion-2]=0b11000000;
+         start[posicion-1]=0b10000000;
+         start[posicion-0]=0b10000000;
+         tamano=3;
+        break;
+        
+        default: posicion_original=20;
+      
+      }
+      
+      }
+
+void f (uint8_t giro)
+{
+      start0();
+      posicion_original=posicion;
+      posicion=7-posicion;
+      switch(giro)
+      { 
+        case 0:
+         start[posicion-2]=0b10000000;
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b01000000;
+         tamano=3;
+        break;
+        
+        
+        case 1:
+         start[posicion-1]=0b01100000;
+         start[posicion-0]=0b11000000;
+         tamano=2;
+        break;
+        
+        
+        case 2:
+         start[posicion-2]=0b10000000;
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b01000000;
+         tamano=3;
+        break;
+        
+        
+        case 3:
+         start[posicion-1]=0b01100000;
+         start[posicion-0]=0b11000000;
+         tamano=2;
+        break;
+        
+        default: posicion_original=20;
+      
+      }
+      
+      }
+        
+
+void g (uint8_t giro)
+{
+      start0();
+      posicion_original=posicion;
+      posicion=7-posicion;
+      switch(giro)
+      { 
+        case 0:
+         start[posicion-2]=0b01000000;
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b10000000;
+         tamano=3;
+        break;
+        
+        
+        case 1:
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b01100000;
+         tamano=2;
+        break;
+        
+        
+        
+        case 2:
+         start[posicion-2]=0b01000000;
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b10000000;
+         tamano=3;
+        break;
+        
+        
+        case 3:
+         start[posicion-1]=0b11000000;
+         start[posicion-0]=0b01100000;
+         tamano=2;
+        break;
+        
+        default: posicion_original=20;
+      
+      }
+      
+}
\ No newline at end of file