Shoot the aliens.
Appears on
One of a series of library tapes. Programs on these tapes were renamed to a number series. This tape contained programs 20083 to 20120. These tapes were compiled by Tony Willing.
Source Code
200 DIM a$(4,32) 220 LET n=15 230 LET tm=0 240 LET s$=" " 245 PAPER 1: BRIGHT 1 250 FOR j=0 TO 21 260 PRINT AT j,0;s$;s$ 270 NEXT j 280 LET pr=0 290 INK 7: PRINT AT 21,11;"Score " 300 LET limit=800 500 POKE USR "a",BIN 00011000 510 POKE USR "a"+1,BIN 00011000 520 POKE USR "a"+2,BIN 00111100 530 POKE USR "a"+3,BIN 00111100 540 POKE USR "a"+4,BIN 01111110 550 POKE USR "a"+5,BIN 01100110 560 POKE USR "a"+6,BIN 11000011 570 POKE USR "a"+7,BIN 11000011 600 POKE USR "b",BIN 00011000 610 POKE USR "b"+1,BIN 00011000 620 POKE USR "b"+2,BIN 00011000 630 POKE USR "b"+3,BIN 00011000 640 POKE USR "b"+4,BIN 00011000 650 POKE USR "b"+5,BIN 00011000 660 POKE USR "b"+6,BIN 00100100 670 POKE USR "b"+7,BIN 00000000 700 POKE USR "c",BIN 00000000 710 POKE USR "c"+1,BIN 011111110 720 POKE USR "c"+2,BIN 11111111 730 POKE USR "c"+3,BIN 00011000 740 POKE USR "c"+4,BIN 00111100 750 POKE USR "c"+5,BIN 01111110 760 POKE USR "c"+6,BIN 11111111 770 POKE USR "c"+7,BIN 00011000 900 LET sta=15 910 FOR i=1 TO 4 930 FOR j=1 TO 32 940 LET a$(i,j)=" " 950 NEXT j 960 NEXT i 970 LET scr=0 980 GO SUB 3000 985 GO SUB 4000 1010 IF |(1,1)=4 THEN GO TO 1100 1020 IF |(1,1)=8 THEN GO TO 1150 1030 IF |(2,1)=1 THEN GO TO 1060 1050 GO TO 1200 1060 LET pr=1: LET s=19: LET c=sta 1070 GO TO 1200 1100 IF sta-1<0 THEN GO TO 1200 1110 PRINT AT 20,sta;" " 1120 LET sta=sta-1 1130 GO TO 1200 1150 IF sta+1>31 THEN GO TO 1200 1160 PRINT AT 20,sta;" " 1170 LET sta=sta+1 1180 GO TO 1200 1200 INK 6: PRINT AT 20,sta;"\a" 1210 IF pr=0 THEN GO TO 1260 1220 IF s<=7 AND s/2<>INT (s/2) THEN GO SUB 6000 1230 INK 6: PRINT AT s,c;"\b" 1240 PAUSE 3: PRINT AT s,c;" " 1250 LET s=s-2 1260 LET tm=tm+8 1265 IF tm/50=INT (tm/50) THEN GO SUB 5000 1270 IF tm=limit THEN GO TO 9000 1280 IF left=0 THEN GO TO 1300 1290 GO TO 1010 1300 GO TO 1010 1310 GO SUB 4000 1320 GO TO 1010 3000 IF n<100 THEN LET n=n+5 3005 LET limit=limit+500: LET left=n 3010 FOR k=1 TO n 3020 LET x=INT (RND*4)+1 3030 LET y=INT (RND*32)+1 3040 IF a$(x,y)<>" " THEN GO TO 3020 3050 LET a$(x,y)="\c" 3060 NEXT k 3070 RETURN 4000 FOR k=1 TO 4 4010 INK 7: PRINT AT (k-1)*2+1,0;a$(k,1 TO 32) 4020 NEXT k 4030 RETURN 5000 FOR k=1 TO 4 5010 LET h$=a$(k,1 TO k) 5020 LET a$(k,1 TO 32-k)=a$(k,k+1 TO 32) 5030 LET a$(k,32-k+1 TO )=h$ 5040 NEXT k 5050 GO SUB 4000 5080 RETURN 6000 FOR k=4 TO 1 STEP -1 6010 IF a$(k,c+1)="\c" AND s=(k-1)*2+1 THEN GO TO 6100 6020 NEXT k 6030 IF s>0 THEN RETURN 6040 GO TO 6120 6100 LET a$(k,c+1)=" " 6103 PRINT AT (k-1)*2+1,c;" " 6105 LET left=left-1 6110 LET scr=scr+100 6115 GO SUB 7000 6120 LET pr=0 6130 RETURN 7000 BEEP 0.01,2 7010 PRINT AT 21,17;scr 7020 FLASH 0 7030 RETURN 9000 BRIGHT 0 9010 INK 0 9020 GO TO 200 9997 SAVE "star blast" 9998 STOP