Tetris C64
Basic
Actualizado el 8 de Febrero del 2020 por Adelino (27 códigos) (Publicado el 25 de Noviembre del 2019)
10.145 visualizaciones desde el 25 de Noviembre del 2019
Juego de tipo tetris para Commodore 64.


100 POKE 53280,0: POKE 53281,0
110 PRINT CHR$(0) CHR$(147)
120 DIM A(2,7,3,3),C(7,3,3)
130 DIM D(279),H(279),Q(279)
140 DIM E(255),F(27),Y(27)
150 G(0)=1: G(1)=2: G(2)=3
160 X(0)=10: X(1)=1: X(2)=-1
170 E(29)=1: E(157)=2: E(145)=3
180 C=10: Q=55200
190 FOR Y=1 TO 27
200 A=11: F(Y)=C
210 N=N+10: Q=Q+30: IF Y<3 GOTO 230
220 POKE Q+10,11: POKE Q-54262,207
230 FOR X=0 TO 9
240 IF Y<3 THEN Q(C)=2: GOTO 260
250 Q(C)=Q: POKE Q,A: POKE Q-54272,207
260 IF A THEN D(C)=A: IF Y<27 THEN A=0
270 H(C)=Y: C=C+1: Q=Q+1
280 NEXT X,Y
290 FOR G=0 TO 3: C=G<1
300 FOR A=1 TO 7: N=0
310 FOR Y=-C TO 3+C
320 FOR X=0 TO 3
330 IF C THEN READ Q
340 IF G THEN Q=A(G-1,A,Y,X)
350 IF Q THEN C(A,G,N)=X+F(Y): N=N+1
360 IF Q>G THEN A(G,A,X,3-Y)=3
370 NEXT X,Y,A,G
380 P=INT(RND(0)*7)+1
390 REM ***** Inicio *****
400 FOR N=0 TO 3
410 C=14+C(P,0,N)
420 IF D(C) GOTO 420
430 POKE Q(C),P: POKE Q(N),0
440 V(N)=C: D(C)=-1
450 NEXT
460 A=P: C=14: G=0
470 P=INT(RND(0)*7)+1
480 FOR N=0 TO 3
490 Q(N)=Q(C(P,0,N)+80)+176
500 POKE Q(N),P: POKE Q(N)-54272,207
510 NEXT
520 REM ***** Rutina *****
530 GET E$
540 IF E$<>"" THEN N=ASC(E$): GOTO 530
550 X=X(E(N)): C=C+X: N=3
560 Y=G: IF X=0 THEN G=G(Y)
570 W(N)=C+C(A,G,N)
580 IF D(W(N))>0 GOTO 710
590 IF N THEN N=N-1: GOTO 570
600 FOR N=0 TO 3
610 Y=W(N): IF D(Y)=0 THEN POKE Q(Y),A
620 D(Y)=D(Y)-1
630 NEXT
640 FOR N=0 TO 3
650 Y=V(N): D(Y)=D(Y)+1
660 IF D(Y)=0 THEN POKE Q(Y),0
670 V(N)=W(N)
680 NEXT
690 GOTO 530
700 REM ***** Lineas *****
710 IF X<10 THEN C=C-X: G=Y: GOTO 530
720 FOR N=0 TO 3
730 Y=H(V(N)): IF Y(Y)>7 GOTO 750
740 D(V(N))=A: Y(Y)=Y(Y)+1: GOTO 810
750 FOR C=F(Y)+1 TO F(Y)+9
760 D(C)=D(C-10)
770 POKE Q(C),D(C)
780 NEXT
790 Y(Y)=Y(Y-1): Y=Y-1
800 IF Y(Y) GOTO 750
810 NEXT
820 GOTO 400
830 REM ***** Datos *****
840 DATA 0,0,0,0,1,1,1,1
850 DATA 0,1,0,0,0,1,1,1
860 DATA 0,0,1,0,1,1,1,0
870 DATA 0,1,1,0,0,0,1,1
880 DATA 0,1,1,0,1,1,0,0
890 DATA 0,1,0,0,1,1,1,0
900 DATA 0,1,1,0,0,1,1,0
No hay comentarios