10 PRINT:PRINT:PRINT"STARFIGHTER 20 PRINT"COPYRIGHT R. OLSEN 1979 30 PRINT"1)PHASERS 2)TORPS 3)MISSLES":PRINT"RPT)FORWARD RSHT)REVERSE 35 PRINT"LSFT)ESC SPEED ESC)END MISSION 50 PRINT:PRINT:INPUT"HOW TOUGH DO YOU WANT THEM (1-10)";DF 60 PL=53795:PR=53821 80 AP=53616:SC=53156:LC=32:P1=254:P2=127:POKE530,1 90 MP=53352:RT=53946:LT=RT-20 100 T=15:M=15:P=35:DE=0:AS=1:KA=0:BS=INT(10*RND(8)+1):S=6 105 CR=INT(10*RND(8))+1:SE=AP-105 110 RC=100:R=9101:AD=0:NF=.4:IFAS=BSTHENNF=5 115 IFAS=CRTHENNF=NF+3 120 NF=NF*(DF/2) 130 D$=STR$(KA)+" KILLS":PRINT:PRINT:PRINTD$ 140 FORX=1TO23:PRINT"=";:NEXT:PRINT"=" 150 FORX=1TO10:PRINT:NEXT 160 PRINT"=D. EAGLE ALIEN 170 FORX=1TO23:PRINT"=";:NEXT:PRINT"=" 180 PRINT"CLOSING RANGE 190 PRINT"SHIELDS PHASERS 200 PRINT"MISSLES TORPS 210 FORX=1TO23:PRINT"=";:NEXT:PRINT"=":PRINT:PRINT 230 FORX=53412TO53796STEP6:POKEX,46:NEXT 240 D$=" ":D=AP-4:GOSUB970 242 POKE53895,79:POKE53802,65:POKE53814,78 245 DR=ABS(R):IFDR>14999THENPOKEAP,46 248 FORZZ=AP-1TOAP+2:POKEZZ,96:NEXTZZ 249 IFDR<14999THENPOKEAP,46 250 IFDR<9999THENPOKEAP,111 260 IFDR<6000THENPOKEAP,79 265 IFDR<4000THENPOKEAP,226 270 IFDR<2500THENPOKEAP-1,227:POKEAP,228 272 IFDR<1500THENPOKEAP-2,204:POKEAP+1,205 280 IFR<0THEND$=" *REAR SCREEN*":D=53704:GOSUB970 300 X=RC:IFR<0THENX=-X 310 D$=" "+STR$(X):D=53898:GOSUB970 313 IFAS<>BSORAS<>CRTHEN320 315 IFR<6000+600*RND(8)THEND$=" HEAVY CRUISER":D=SE:GOSUB970:GOTO330 320 IFAS=BSANDR<7000+999*RND(8)THEND$=" BATTLEWAGON":D=SE:GOSUB970 325 IFAS=CRANDR<7000+999*RND(8)THEND$=" CRUISER":D=SE:GOSUB970 330 D$=STR$(DR):D=53909:GOSUB970:POKE53933,S+48 350 D$=STR$(P):D=53944:GOSUB970:D$=STR$(M):D=53963:GOSUB970 370 D$=STR$(T):D=D+11:GOSUB970:D$=" SENSORS":D=SE-68:GOSUB970 380 POKE57088,P1:PK=255-PEEK(57088) 390 IFPK=3THENRC=RC-100 400 IFPK=129THENRC=RC+100 410 IFPK=33ANDR>16000THEN900 420 IFPK=5THENRC=RC-500:IFR<0THENRC=RC+1000 430 POKE57088,P2:PK=255-PEEK(57088) 440 IFPK=128ORPK=129THEN490 450 IFPK=64THEN550 460 IFPK=2THENPOKE530,0:END 470 IFPK=32THEN610 474 IF PK=16 THEN AP=AP-1 476 IF PK=8 THEN AP=AP+1 480 GOTO735 490 P=P-1:IFP<0THENP=0:GOTO730 500 FORY=1TO3:FORX=1TO6:IFX=6THENGOSUB990 510 POKEPL+X*(-30),196:POKEPR+X*(-34),198 530 NEXTX:FORX=1TO6:POKEPL+X*(-30),32:POKEPR+X*(-34),32 540 NEXTX:NEXTY:GOTO680 550 M=M-1:IFM<0THENM=0:GOTO730 560 FORX=1TO8:POKEMP+33*X,198:FORA=1TO15:NEXT 570 POKEMP+33*X,32:NEXT 580 IFDR<4999ANDRND(8)>2000/DRTHENAD=AD+(10000/DR*RND(8)*.5) 590 AD=AD+(9500/DR)*RND(8):IFDR<2500THENAD=AD+40*(RND(8)+1) 600 GOTO680 610 T=T-1:IFT<0THENT=0:GOTO730 620 IFRND(8)<.9THENAD=AD+25000/DR*(RND(8)+1) 630 FORY=1TO2:FORX=1TO10:IFX<5THENPOKERT-X*33,42:POKELT-X*31,42 635 IFX>4ANDX<8THENPOKERT-X*33,43:POKELT-X*31,43 640 IFX>7THENPOKERT-X*33,46:POKELT-X*31,46 645 FORA=1TOX*4:NEXTA 650 POKERT-X*33,32:POKELT-X*31,32:NEXT 660 IFR<6000ANDRND(8)<.8THENAD=AD+((100-AD)/2)*RND(8) 680 C=42:IFAD<100GOTO730 690 FORX=1TO5:POKEAP,C:POKEAP+X,C:POKEAP-X,C:POKEAP+X*LC,C 700 POKEAP-X*31,C:POKEAP+X*31,C:POKEAP-X*31,C 710 NEXTX:IFC=42THENC=35:GOTO690 720 IFC=35THENC=32:GOTO690 730 S=INT(6-(DE/25)) 735 IFAS=CRANDAD>13+13*RND(8)THENRC=RC+200:IFR<0THENRC=RC-400 736 IFAS=CRANDAD>70THENRC=RC-250:IFR<0THENRC=RC+500 737 IFAS=BSANDRND(8)<.75THENRC=RC+100:IFR<0THENRC=RC-200 738 IFAS=BSANDAD>80THENRC=RC-150:IFR<0THENRC=RC+250 740 R=R-RC 750 IFDR>20000THENPRINT"AUTOMATIC DISENGAGE":AS=AS+1:GOTO110 760 IFRND(8)<.5ORAD>100THEN780 765 Z0=DE 770 DE=DE+((10000/DR)*RND(1)*NF*((100-AD)/100)*(5/S)) 772 IFINT(Z0)=INT(DE)GOTO780 773 FORZ0=1TO5:Z1=AP+31*Z0:Z2=AP+33*Z0:Z(Z0)=PEEK(Z1):Z(Z0+5)=PEEK(Z2) 774 POKE Z1,189:POKE Z2,190:NEXT Z0 775 FOR Z0=1 TO 20:NEXT Z0 776 FORZ0=1TO5:Z1=AP+31*Z0:Z2=AP+33*Z0:POKEZ1,Z(Z0):POKEZ2,Z(Z0+5) 777 NEXT Z0 778 Z(1)=PEEK(Z1+31):Z(2)=PEEK(Z2+33):POKEZ1+31,230:POKEZ2+33,230 779 FORZ0=1TO10:NEXTZ0:POKEZ1+31,Z(1):POKEZ2+33,Z(2) 780 D$=STR$(INT(DE)) 790 D=53805:GOSUB970:D$=STR$(INT(AD)):D=D+9:GOSUB970 810 IFAD>100THENKA=KA+1:AS=AS+1:GOTO840 812 Z2=INT(RND(1)+.25):IF Z2=0 GOTO 820 814 Z2=RND(1) 816 IF Z2<.5 THEN AP=AP-1 818 IF Z2>.5 THEN AP=AP+1 820 IFDE<100THEN240 830 GOTO900 840 RA=RA+1:IFAS=CRTHENRA=RA+2 842 IFAS=BSTHENRA=RA+3 843 IFAS>10THEN900 850 PRINT" GOING HYPERLIGHT 860 GOSUB890 870 PRINT" ALIEN DETECTED":GOSUB890 :PRINT" GOING SUBLIGHT 880 GOSUB890 :GOTO110 890 FORX=1TO15:PRINTTAB(8)"= =":NEXT:RETURN 900 FORX=1TO15:PRINT:NEXT:PRINT"YOU DESTROYED"KA" ALIEN SHIPS" 910 PRINT" RATING "RA*10:RA=0:IFKA<4THEN950 920 IFKA<7THENPRINT"GOOD SHOOTING":GOTO950 930 PRINT"YOU ARE HEREBY AWARDED":PRINT"THE RANK OF COMMODORE" 940 IFKA>8THENPRINT"AND A TICKER TAPE PARADE" 950 IFDE>100THENPRINT"UNFORTUNATELY YOU LOST YOUR SHIP" 960 INPUT"HOW TOUGH DO YOU WANT THEM THIS TIME";DF:GOTO100 970 FORY=2TOLEN(D$):POKED+Y,ASC(MID$(D$,Y,1)):NEXT 980 POKED+Y,32:RETURN 990 ZZ=PL+X*(-30):FORI=0TO2:PK=PEEK(I+ZZ) 991 IFY<>3GOTO994 992 IFPK<>32THENAD=AD+5*RND(8)+5*RND(8) 994 NEXTI:RETURN