Entrega 1 de tetris

Dependencies:   mbed

Committer:
Mateom0104
Date:
Thu Sep 13 11:46:46 2018 +0000
Revision:
0:d1aba6605d0b
Child:
2:2ca73be1a865
Matriz ; Tetris

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Mateom0104 0:d1aba6605d0b 1 #include "mbed.h"
Mateom0104 0:d1aba6605d0b 2
Mateom0104 0:d1aba6605d0b 3 uint8_t start[8]={0,0,0,0,0,0,0,0};
Mateom0104 0:d1aba6605d0b 4 int tamano;
Mateom0104 0:d1aba6605d0b 5 int posicion;
Mateom0104 0:d1aba6605d0b 6 int posicion_original;
Mateom0104 0:d1aba6605d0b 7 void start0()
Mateom0104 0:d1aba6605d0b 8 {
Mateom0104 0:d1aba6605d0b 9 int i;
Mateom0104 0:d1aba6605d0b 10 for (i=0;i<7;i++)
Mateom0104 0:d1aba6605d0b 11 {
Mateom0104 0:d1aba6605d0b 12 start[i]=0;
Mateom0104 0:d1aba6605d0b 13 }
Mateom0104 0:d1aba6605d0b 14 }
Mateom0104 0:d1aba6605d0b 15
Mateom0104 0:d1aba6605d0b 16 void a(uint8_t giro)
Mateom0104 0:d1aba6605d0b 17 {
Mateom0104 0:d1aba6605d0b 18 start0();
Mateom0104 0:d1aba6605d0b 19 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 20 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 21 switch(giro)
Mateom0104 0:d1aba6605d0b 22 {
Mateom0104 0:d1aba6605d0b 23 case 0:
Mateom0104 0:d1aba6605d0b 24 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 25 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 26 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 27 tamano=3;
Mateom0104 0:d1aba6605d0b 28 break;
Mateom0104 0:d1aba6605d0b 29
Mateom0104 0:d1aba6605d0b 30
Mateom0104 0:d1aba6605d0b 31 case 1:
Mateom0104 0:d1aba6605d0b 32 start[posicion-1]=0b01000000;
Mateom0104 0:d1aba6605d0b 33 start[posicion-0]=0b11100000;
Mateom0104 0:d1aba6605d0b 34 tamano=2;
Mateom0104 0:d1aba6605d0b 35 break;
Mateom0104 0:d1aba6605d0b 36
Mateom0104 0:d1aba6605d0b 37
Mateom0104 0:d1aba6605d0b 38 case 2:
Mateom0104 0:d1aba6605d0b 39 start[posicion-2]=0b01000000;
Mateom0104 0:d1aba6605d0b 40 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 41 start[posicion-0]=0b01000000;
Mateom0104 0:d1aba6605d0b 42 tamano=3;
Mateom0104 0:d1aba6605d0b 43 break;
Mateom0104 0:d1aba6605d0b 44
Mateom0104 0:d1aba6605d0b 45
Mateom0104 0:d1aba6605d0b 46 case 3:
Mateom0104 0:d1aba6605d0b 47 start[posicion-1]=0b11100000;
Mateom0104 0:d1aba6605d0b 48 start[posicion-0]=0b01000000;
Mateom0104 0:d1aba6605d0b 49 tamano=2;
Mateom0104 0:d1aba6605d0b 50 break;
Mateom0104 0:d1aba6605d0b 51
Mateom0104 0:d1aba6605d0b 52 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 53
Mateom0104 0:d1aba6605d0b 54 }
Mateom0104 0:d1aba6605d0b 55
Mateom0104 0:d1aba6605d0b 56
Mateom0104 0:d1aba6605d0b 57 }
Mateom0104 0:d1aba6605d0b 58 void b(uint8_t giro)
Mateom0104 0:d1aba6605d0b 59 {
Mateom0104 0:d1aba6605d0b 60 start0();
Mateom0104 0:d1aba6605d0b 61 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 62 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 63
Mateom0104 0:d1aba6605d0b 64 switch(giro)
Mateom0104 0:d1aba6605d0b 65 {
Mateom0104 0:d1aba6605d0b 66 case 0:
Mateom0104 0:d1aba6605d0b 67 start[posicion-0]=0b11100000;
Mateom0104 0:d1aba6605d0b 68 tamano=1;
Mateom0104 0:d1aba6605d0b 69 break;
Mateom0104 0:d1aba6605d0b 70
Mateom0104 0:d1aba6605d0b 71
Mateom0104 0:d1aba6605d0b 72 case 1:
Mateom0104 0:d1aba6605d0b 73
Mateom0104 0:d1aba6605d0b 74 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 75 start[posicion-1]=0b10000000;
Mateom0104 0:d1aba6605d0b 76 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 77 tamano=3;
Mateom0104 0:d1aba6605d0b 78 break;
Mateom0104 0:d1aba6605d0b 79
Mateom0104 0:d1aba6605d0b 80
Mateom0104 0:d1aba6605d0b 81 case 2:
Mateom0104 0:d1aba6605d0b 82 start[posicion-0]=0b11100000;
Mateom0104 0:d1aba6605d0b 83 tamano=3;
Mateom0104 0:d1aba6605d0b 84 break;
Mateom0104 0:d1aba6605d0b 85
Mateom0104 0:d1aba6605d0b 86
Mateom0104 0:d1aba6605d0b 87 case 3:
Mateom0104 0:d1aba6605d0b 88 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 89 start[posicion-1]=0b10000000;
Mateom0104 0:d1aba6605d0b 90 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 91 tamano=3;
Mateom0104 0:d1aba6605d0b 92 break;
Mateom0104 0:d1aba6605d0b 93
Mateom0104 0:d1aba6605d0b 94 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 95
Mateom0104 0:d1aba6605d0b 96 }
Mateom0104 0:d1aba6605d0b 97
Mateom0104 0:d1aba6605d0b 98 }
Mateom0104 0:d1aba6605d0b 99
Mateom0104 0:d1aba6605d0b 100 void c(uint8_t giro)
Mateom0104 0:d1aba6605d0b 101 {
Mateom0104 0:d1aba6605d0b 102 start0();
Mateom0104 0:d1aba6605d0b 103 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 104 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 105 switch(giro)
Mateom0104 0:d1aba6605d0b 106 {
Mateom0104 0:d1aba6605d0b 107 case 0:
Mateom0104 0:d1aba6605d0b 108 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 109 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 110 tamano=2;
Mateom0104 0:d1aba6605d0b 111 break;
Mateom0104 0:d1aba6605d0b 112
Mateom0104 0:d1aba6605d0b 113
Mateom0104 0:d1aba6605d0b 114 case 1:
Mateom0104 0:d1aba6605d0b 115 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 116 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 117 tamano=2;
Mateom0104 0:d1aba6605d0b 118 break;
Mateom0104 0:d1aba6605d0b 119
Mateom0104 0:d1aba6605d0b 120
Mateom0104 0:d1aba6605d0b 121 case 2:
Mateom0104 0:d1aba6605d0b 122 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 123 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 124 tamano=2;
Mateom0104 0:d1aba6605d0b 125 break;
Mateom0104 0:d1aba6605d0b 126
Mateom0104 0:d1aba6605d0b 127
Mateom0104 0:d1aba6605d0b 128 case 3:
Mateom0104 0:d1aba6605d0b 129 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 130 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 131 tamano=2;
Mateom0104 0:d1aba6605d0b 132 break;
Mateom0104 0:d1aba6605d0b 133
Mateom0104 0:d1aba6605d0b 134 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 135
Mateom0104 0:d1aba6605d0b 136 }
Mateom0104 0:d1aba6605d0b 137
Mateom0104 0:d1aba6605d0b 138 }
Mateom0104 0:d1aba6605d0b 139
Mateom0104 0:d1aba6605d0b 140 void d(uint8_t giro)
Mateom0104 0:d1aba6605d0b 141 {
Mateom0104 0:d1aba6605d0b 142 start0();
Mateom0104 0:d1aba6605d0b 143 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 144 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 145 switch(giro)
Mateom0104 0:d1aba6605d0b 146 {
Mateom0104 0:d1aba6605d0b 147 case 0:
Mateom0104 0:d1aba6605d0b 148 start[posicion-1]=0b11100000;
Mateom0104 0:d1aba6605d0b 149 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 150 tamano=2;
Mateom0104 0:d1aba6605d0b 151 break;
Mateom0104 0:d1aba6605d0b 152
Mateom0104 0:d1aba6605d0b 153
Mateom0104 0:d1aba6605d0b 154 case 1:
Mateom0104 0:d1aba6605d0b 155 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 156 start[posicion-1]=0b10000000;
Mateom0104 0:d1aba6605d0b 157 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 158 tamano=3;
Mateom0104 0:d1aba6605d0b 159 break;
Mateom0104 0:d1aba6605d0b 160
Mateom0104 0:d1aba6605d0b 161
Mateom0104 0:d1aba6605d0b 162 case 2:
Mateom0104 0:d1aba6605d0b 163 start[posicion-1]=0b00100000;
Mateom0104 0:d1aba6605d0b 164 start[posicion-0]=0b11100000;
Mateom0104 0:d1aba6605d0b 165 tamano=2;
Mateom0104 0:d1aba6605d0b 166 break;
Mateom0104 0:d1aba6605d0b 167
Mateom0104 0:d1aba6605d0b 168
Mateom0104 0:d1aba6605d0b 169 case 3:
Mateom0104 0:d1aba6605d0b 170 start[posicion-2]=0b11000000;
Mateom0104 0:d1aba6605d0b 171 start[posicion-1]=0b01000000;
Mateom0104 0:d1aba6605d0b 172 start[posicion-0]=0b01000000;
Mateom0104 0:d1aba6605d0b 173 tamano=3;
Mateom0104 0:d1aba6605d0b 174 break;
Mateom0104 0:d1aba6605d0b 175 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 176
Mateom0104 0:d1aba6605d0b 177
Mateom0104 0:d1aba6605d0b 178 }
Mateom0104 0:d1aba6605d0b 179
Mateom0104 0:d1aba6605d0b 180 }
Mateom0104 0:d1aba6605d0b 181
Mateom0104 0:d1aba6605d0b 182 void e(uint8_t giro)
Mateom0104 0:d1aba6605d0b 183 {
Mateom0104 0:d1aba6605d0b 184 start0();
Mateom0104 0:d1aba6605d0b 185 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 186 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 187 switch(giro)
Mateom0104 0:d1aba6605d0b 188 {
Mateom0104 0:d1aba6605d0b 189 case 0:
Mateom0104 0:d1aba6605d0b 190 start[posicion-1]=0b10000000;
Mateom0104 0:d1aba6605d0b 191 start[posicion-0]=0b11100000;
Mateom0104 0:d1aba6605d0b 192 tamano=2;
Mateom0104 0:d1aba6605d0b 193 break;
Mateom0104 0:d1aba6605d0b 194
Mateom0104 0:d1aba6605d0b 195
Mateom0104 0:d1aba6605d0b 196 case 1:
Mateom0104 0:d1aba6605d0b 197 start[posicion-2]=0b01000000;
Mateom0104 0:d1aba6605d0b 198 start[posicion-1]=0b01000000;
Mateom0104 0:d1aba6605d0b 199 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 200 tamano=3;
Mateom0104 0:d1aba6605d0b 201 break;
Mateom0104 0:d1aba6605d0b 202
Mateom0104 0:d1aba6605d0b 203
Mateom0104 0:d1aba6605d0b 204 case 2:
Mateom0104 0:d1aba6605d0b 205 start[posicion-1]=0b11100000;
Mateom0104 0:d1aba6605d0b 206 start[posicion-0]=0b00100000;
Mateom0104 0:d1aba6605d0b 207 tamano=2;
Mateom0104 0:d1aba6605d0b 208 break;
Mateom0104 0:d1aba6605d0b 209
Mateom0104 0:d1aba6605d0b 210
Mateom0104 0:d1aba6605d0b 211 case 3:
Mateom0104 0:d1aba6605d0b 212 start[posicion-2]=0b11000000;
Mateom0104 0:d1aba6605d0b 213 start[posicion-1]=0b10000000;
Mateom0104 0:d1aba6605d0b 214 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 215 tamano=3;
Mateom0104 0:d1aba6605d0b 216 break;
Mateom0104 0:d1aba6605d0b 217
Mateom0104 0:d1aba6605d0b 218 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 219
Mateom0104 0:d1aba6605d0b 220 }
Mateom0104 0:d1aba6605d0b 221
Mateom0104 0:d1aba6605d0b 222 }
Mateom0104 0:d1aba6605d0b 223
Mateom0104 0:d1aba6605d0b 224 void f (uint8_t giro)
Mateom0104 0:d1aba6605d0b 225 {
Mateom0104 0:d1aba6605d0b 226 start0();
Mateom0104 0:d1aba6605d0b 227 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 228 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 229 switch(giro)
Mateom0104 0:d1aba6605d0b 230 {
Mateom0104 0:d1aba6605d0b 231 case 0:
Mateom0104 0:d1aba6605d0b 232 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 233 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 234 start[posicion-0]=0b01000000;
Mateom0104 0:d1aba6605d0b 235 tamano=3;
Mateom0104 0:d1aba6605d0b 236 break;
Mateom0104 0:d1aba6605d0b 237
Mateom0104 0:d1aba6605d0b 238
Mateom0104 0:d1aba6605d0b 239 case 1:
Mateom0104 0:d1aba6605d0b 240 start[posicion-1]=0b01100000;
Mateom0104 0:d1aba6605d0b 241 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 242 tamano=2;
Mateom0104 0:d1aba6605d0b 243 break;
Mateom0104 0:d1aba6605d0b 244
Mateom0104 0:d1aba6605d0b 245
Mateom0104 0:d1aba6605d0b 246 case 2:
Mateom0104 0:d1aba6605d0b 247 start[posicion-2]=0b10000000;
Mateom0104 0:d1aba6605d0b 248 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 249 start[posicion-0]=0b01000000;
Mateom0104 0:d1aba6605d0b 250 tamano=3;
Mateom0104 0:d1aba6605d0b 251 break;
Mateom0104 0:d1aba6605d0b 252
Mateom0104 0:d1aba6605d0b 253
Mateom0104 0:d1aba6605d0b 254 case 3:
Mateom0104 0:d1aba6605d0b 255 start[posicion-1]=0b01100000;
Mateom0104 0:d1aba6605d0b 256 start[posicion-0]=0b11000000;
Mateom0104 0:d1aba6605d0b 257 tamano=2;
Mateom0104 0:d1aba6605d0b 258 break;
Mateom0104 0:d1aba6605d0b 259
Mateom0104 0:d1aba6605d0b 260 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 261
Mateom0104 0:d1aba6605d0b 262 }
Mateom0104 0:d1aba6605d0b 263
Mateom0104 0:d1aba6605d0b 264 }
Mateom0104 0:d1aba6605d0b 265
Mateom0104 0:d1aba6605d0b 266
Mateom0104 0:d1aba6605d0b 267 void g (uint8_t giro)
Mateom0104 0:d1aba6605d0b 268 {
Mateom0104 0:d1aba6605d0b 269 start0();
Mateom0104 0:d1aba6605d0b 270 posicion_original=posicion;
Mateom0104 0:d1aba6605d0b 271 posicion=7-posicion;
Mateom0104 0:d1aba6605d0b 272 switch(giro)
Mateom0104 0:d1aba6605d0b 273 {
Mateom0104 0:d1aba6605d0b 274 case 0:
Mateom0104 0:d1aba6605d0b 275 start[posicion-2]=0b01000000;
Mateom0104 0:d1aba6605d0b 276 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 277 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 278 tamano=3;
Mateom0104 0:d1aba6605d0b 279 break;
Mateom0104 0:d1aba6605d0b 280
Mateom0104 0:d1aba6605d0b 281
Mateom0104 0:d1aba6605d0b 282 case 1:
Mateom0104 0:d1aba6605d0b 283 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 284 start[posicion-0]=0b01100000;
Mateom0104 0:d1aba6605d0b 285 tamano=2;
Mateom0104 0:d1aba6605d0b 286 break;
Mateom0104 0:d1aba6605d0b 287
Mateom0104 0:d1aba6605d0b 288
Mateom0104 0:d1aba6605d0b 289
Mateom0104 0:d1aba6605d0b 290 case 2:
Mateom0104 0:d1aba6605d0b 291 start[posicion-2]=0b01000000;
Mateom0104 0:d1aba6605d0b 292 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 293 start[posicion-0]=0b10000000;
Mateom0104 0:d1aba6605d0b 294 tamano=3;
Mateom0104 0:d1aba6605d0b 295 break;
Mateom0104 0:d1aba6605d0b 296
Mateom0104 0:d1aba6605d0b 297
Mateom0104 0:d1aba6605d0b 298 case 3:
Mateom0104 0:d1aba6605d0b 299 start[posicion-1]=0b11000000;
Mateom0104 0:d1aba6605d0b 300 start[posicion-0]=0b01100000;
Mateom0104 0:d1aba6605d0b 301 tamano=2;
Mateom0104 0:d1aba6605d0b 302 break;
Mateom0104 0:d1aba6605d0b 303
Mateom0104 0:d1aba6605d0b 304 default: posicion_original=20;
Mateom0104 0:d1aba6605d0b 305
Mateom0104 0:d1aba6605d0b 306 }
Mateom0104 0:d1aba6605d0b 307
Mateom0104 0:d1aba6605d0b 308 }