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


10 POKE 53280,0: POKE 53281,0
20 PRINT CHR$(0) CHR$(147)
30 DIM A(2,6,3,3),I(6,3),E(255)
40 DIM H(250),Q(250),F(25),Y(24)
50 C0=49152: C1=49408: C2=49664
60 C3=49920: C4=50176: C5=50432
70 E(29)=1: E(157)=2: E(145)=3
80 G(0)=1: G(1)=2: G(2)=3
90 X(0)=10: X(1)=1: X(2)=-1
100 FOR X=828 TO 930
110 READ Y: POKE X,Y: NEXT
120 Q=55279: P=INT(RND(0)*7)
130 FOR Y=0 TO 24
140 A=12: Q=Q+30
150 F(Y+1)=F(Y)+10
160 POKE Q+11,11: POKE Q-54261,207
170 FOR X=0 TO 9
180 C=C+1: Q=Q+1
190 POKE Q,A-1: POKE Q-54272,207
200 POKE C0+C,A: IF Y>23 GOTO 240
210 A=1: IF Y<1 THEN POKE Q,11: GOTO 240
220 G=INT(Q/256): H(C)=Y: Q(C)=Q
230 POKE C4+C,G: POKE C3+C,Q-256*G
240 NEXT X,Y
250 FOR G=0 TO 3: C=G<1
260 FOR A=0 TO 6: I(A,G)=N+3
270 FOR Y=-C TO 3+C
280 FOR X=0 TO 3
290 IF C THEN READ Q
300 IF G THEN Q=A(G-1,A,Y,X)
310 IF Q THEN POKE C5+N,X+F(Y): N=N+1
320 IF Q>G THEN A(G,A,X,3-Y)=3
330 NEXT X,Y,A,G
340 REM ***** Inicio *****
350 FOR Y=0 TO 1
360 IF Y THEN A=P: G=0: P=INT(RND(0)*7)
370 X=C5+I(P,0)-3
380 FOR N=0 TO 3
390 C=5+PEEK(X): Q=Q(C)+172: X=X+1
400 POKE Q-54272,207
410 IF Y THEN POKE Q,P+1: GOTO 450
420 IF PEEK(C0+C)>1 GOTO 420
430 POKE Q,0: POKE Q-172,P+1
440 POKE C0+C,0: POKE C1+N,C
450 NEXT N,Y
460 POKE 251,A+1: POKE 252,5
470 REM ***** Rutina *****
480 T=TI: C=PEEK(252)
490 E$=" ": IF TI-T<8 THEN GET E$
500 IF E$="" GOTO 490
510 X=E(ASC(E$)): Y=G
520 IF X>2 THEN IF H(C) THEN G=G(Y)
530 POKE 252,C+X(X): POKE 253,I(A,G)
540 SYS 828
550 IF PEEK(253)<1 GOTO 480
560 REM ***** Lineas *****
570 IF X THEN G=Y: GOTO 490
580 FOR N=0 TO 3
590 POKE C0+PEEK(C1+N),A+2
600 Y=H(PEEK(C1+N)): Y(Y)=Y(Y)+1
610 IF Y(Y)<9 GOTO 680
620 FOR C=F(Y)+2 TO F(Y+1)
630 Q=C0+C: X=PEEK(Q-10)
640 POKE Q,X: POKE Q(C),X-1
650 NEXT
660 Y(Y)=Y(Y-1): Y=Y-1
670 IF Y(Y) GOTO 620
680 NEXT
690 GOTO 350
700 REM ***** Ensamblador *****
710 DATA 162,4,164,253,202,134,254,24
720 DATA 165,252,121,0,197,157,0,194
730 DATA 170,189,0,192,233,1,16,78
740 DATA 136,166,254,208,231,134,253,160
750 DATA 4,136,132,254,190,0,194,222
760 DATA 0,192,208,16,189,0,195,133
770 DATA 178,189,0,196,133,179,165,251
780 DATA 160,0,145,178,164,254,208,225
790 DATA 160,4,136,132,254,190,0,193
800 DATA 185,0,194,153,0,193,254,0
810 DATA 192,240,15,189,0,195,133,178
820 DATA 189,0,196,133,179,169,0,168
830 DATA 145,178,164,254,208,220,96
840 REM ***** Datos *****
850 DATA 1,1,1,1,0,0,0,0
860 DATA 0,1,0,0,0,1,1,1
870 DATA 0,0,1,0,1,1,1,0
880 DATA 0,1,1,0,0,0,1,1
890 DATA 0,1,1,0,1,1,0,0
900 DATA 0,1,0,0,1,1,1,0
910 DATA 0,1,1,0,0,1,1,0
No hay comentarios