10 REM ---INVADER--- 20 DIM X(60),Y(60),F(60),A(10),B(10) 30 CLS 100 FOR I=0 TO 59 110 X(I)=(I MOD 12)*2+1:Y(I)=INT(I/12)*2+1:F(I)=0:LOCATE X(I),Y(I):PRINT"H" 120 NEXT:V=1:T=0 130 X=5:Y=22:W=0:M=0:T=0:S=0:Z=60:U=0 140 COLOR 7:FOR I=19 TO 20:LOCATE 2,I:PRINT"33333 33333 33333 33333":NEXT 200 REM---MAIN--- 210 REM 500 L=40:R=0:D=0 510 FOR I=0 TO 59 512 IF F(I) THEN GOTO 545 515 P=PEEK(X(I),Y(I)):IF P=ASC("*") THEN F(I)=1:LOCATE X(I),Y(I):PRINT" ":Z=Z-1:GOTO 545 520 LOCATE X(I),Y(I):PRINT" " 530 IF T=0 THEN X(I)=X(I)+V ELSE Y(I)=Y(I)+1 540 LOCATE X(I),Y(I):COLOR 3+INT(I/24):PRINT"H":IF Y(I)>20 THEN END 542 IF X(I)R THEN R=X(I) 544 IF Y(I)>D THEN D=Y(I) 545 IF I MOD 10=0 THEN GOSUB 1000 547 IF I MOD 5=0 THEN GOSUB 1300 548 IF I MOD 20=0 THEN GOSUB 2000 549 IF I MOD 20=0 THEN GOSUB 2500 550 GOTO 570 555 E=ZTIME:F=INT(ZTIME/5)*5+5 560 IF ZTIME>E AND ZTIME39 THEN W=0 1060 X=X+W 1070 LOCATE X,Y:COLOR 6:PRINT"A"; 1080 IF I$=" " THEN IF M=0 THEN M=1:A=X:B=Y-1 1081 GOTO 1090 1082 E=ZTIME:F=INT(ZTIME/100)*100+100 1084 IF ZTIME>E AND ZTIME0 THEN K=K-1:LOCATE A,B:COLOR 7:PRINT K:M=0:IF K>0 THEN RETURN 1370 LOCATE A,B:COLOR 7:IF M THEN PRINT"i" ELSE PRINT"*" 1380 RETURN 2000 REM---TEKITAMA--- 2010 IF S=0 THEN RETURN 2020 J=1 2030 P=PEEK(A(J),B(J)+1):IF P=ASC("A") THEN GOTO 3000 2040 LOCATE A(J),B(J):PRINT" " 2050 B(J)=B(J)+1:IF B(J)>Y THEN GOSUB 2200 2055 K=VAL(CHR$(P)):IF K>0 THEN LOCATE A(J),B(J):COLOR 7:PRINT CHR$(P-1+16*(K=1)):GOSUB 2200:GOTO 2070 2060 LOCATE A(J),B(J):COLOR 6:PRINT"|"; 2070 J=J+1:IF J<=S THEN GOTO 2030 2080 RETURN 2200 S=S-1:FOR K=J TO S:A(K)=A(K+1):B(K)=B(K+1):NEXT:J=J-1 2210 RETURN 2500 REM---UFO--- 2502 IF U=0 THEN RETURN 2504 P=PEEK(Q,0) 2510 LOCATE Q,0:PRINT" " 2515 IF P=ASC("*") THEN U=0:RETURN 2520 Q=Q+U:IF Q>36 OR Q<0 THEN U=0:RETURN 2530 LOCATE Q,0:COLOR Q MOD 3+5:PRINT"UFO" 2540 RETURN 3000 REM---GAME OVER--- 3010 LOCATE X,Y:COLOR 2:PRINT"*" 3020 LOCATE 15,10:COLOR 7:PRINT"GAME OVER!" 3030 IF INKEY$<>CHR$(13) THEN GOTO 3030 3040 GOTO 30 4000 REM---CLEAR--- 4010 LOCATE 11,10:COLOR RND*7:PRINT"CONGRATURATIONS!" 4020 IF INKEY$<>CHR$(13) THEN GOTO 4010 4030 GOTO 30