1 CLS:SCREEN,0:PRINTCHR$(27)"V":CLEAR256,61584!:POKE 65215!,145:POKE 65216!,240 2 DATA93,127,127,107,8,8,220,254,29,29,254,220,0,80,120,28,120,80 3 FORX=61585!TO61602!:READA:POKEX,A:NEXTX 4 LOCATE0,3:PRINT"Do you want playing instructions (Y/N)?" 5 A$=INKEY$:IFA$=""THEN5ELSEIFA$<>"Y"ANDA$<>"y"THEN12 6 LOCATE0,0:PRINT" COMBATANTS"SPACE$(12)"YOUR MOVES"; 7 LOCATE0,1:PRINT"YOUR STARSHIP "CHR$(131)" |MOVE ONE SPACE:CURSOR"SPACE$(18)"| ARROWS"; 8 LOCATE0,3:PRINT"ENEMY SCOUT "CHR$(133)" |JUMPS:>=AHEAD 5:<=BACK"SPACE$(17)"| 5:?=RETURN TO START" 9 LOCATE0,5:PRINT"ENEMY STARSHIP "CHR$(132)" |FIRE CONTROL:"SPACE$(26)"| AHEAD,Space: DOWN,"CHR$(129); 10 LOCATE9,7:PRINT"Press Any Key to Play" 11 A$=INKEY$:IFA$=""THEN11 12 OUT240,56:MAXFILES=1:GOSUB9000 13 DEFINTB-Y:DEFSTRA,Z,K,M:Z=CHR$(27)+"p":Z1=CHR$(27)+"q":DIME(7,1),M(7),H(2),K(2) 14 ONERRORGOTO91:GOTO20 15 S=S-10:GOSUB33:LOCATE15,7:PRINTS;:RETURN 16 E(I,0)=39:E(I,1)=INT(RND(3)*7):RETURN 17 FORJ=0TO9:LOCATEGMOD40,G\40:PRINTCHR$(130);:LOCATEPMOD40,P\40:PRINT" ";:NEXT:SOUND3000,1:RETURN 18 GOTO19 19 DATA???,0,???,0,???,0 20 RESTORE18:FORI=0TO2:READK(I),H(I):NEXT 21 CLS:LOCATE3,1:PRINT"M i c r o - S t a r f i g h t e r":LINE(15,6)-(218,16),1,B:LOCATE0,6:PRINT"NEC Ver.2.1":PRINT"Jan. 1999" 22 LOCATE0,5:PRINT"Prev Score = ";:PRINTUSING"#####,";S:LINE(74,38)-(116,48),1,B 23 LOCATE27,4:PRINT"High Scores";: FORI=0TO2:LOCATE(227+I*40)MOD40,(227+I*40)\40:PRINTK(I); 24 LOCATE(231+I*40)MOD40,(231+I*40)\40:PRINT"= ";:PRINTUSING"#####,";H(I);:NEXT 25 POKE65128,0:IFQ=0THEN27ELSEII=1:LOCATE0,3:PRINT"Enter three initials...":LOCATE(225+D*40)MOD40,(225+D*40)\40:INPUTK(D) 26 Q=0:LOCATE(225+D*40)MOD40,(225+D*40)\40:PRINT" "; 27 LOCATE0,3:PRINT"Are you ready to play (Y/N)?":OUT240,57: 28 A=INKEY$:C=RND(1):IFA=""THEN28ELSEIFA<>"y"ANDA<>"Y"THEN88ELSEX=0:Y=3:P=0:D=0:S=0:H=H(0) 29 FORI=0TO7:M(I)=CHR$(133):GOSUB16:NEXT:FORI=5TO7:M(I)=CHR$(132):NEXT 30 U=2:T=226 31 CLS:LOCATE0,7:PRINTZSPACE$(40);:LOCATE1,7:PRINT"Hi =";H;:LOCATE11,7:PRINT"SC =" 32 LOCATE21,7:PRINT"Lvl ="Z1" 0 ":LOCATE32,7:PRINTZ"Tm="Z1:GOSUB33:GOTO39 33 O=INT(S/100):IFU=O+2THENRETURNELSEIFU<6THEN34ELSEIFU=7THEN35ELSEIFS>1000THEN36ELSEIFS<400THEN37ELSERETURN 34 IFU>O+2THEN37ELSE36 35 IFS>1000THENRETURNELSE37 36 U=U+1:GOSUB16:LOCATE26,7:PRINTU-2:SOUND1000,1:RETURN 37 LOCATE(E(U,1)*40+E(U,0))MOD40,(E(U,1)*40+E(U,0))\40:PRINT" ";:U=U-1:IFU<2THENU=2 38 LOCATE26,7:PRINTU-2;:SOUND16300,1:RETURN 39 PRESET(X*6,Y*8):T=T-1:LOCATE35,7:PRINTT;:IFT=0THEN80ELSELOCATEPMOD40,P\40:PRINT" ":P=Y*40+X:IFD>0THEND=D-1 40 IFD=0THENLOCATEPMOD40,P\40:PRINTCHR$(131) 41 I=0 42 IFI<5THENQ=1ELSEIFI>5THENQ=3ELSEQ=2 43 IFE(I,0)>-1THENLOCATE(E(I,1)*40+E(I,0))MOD40,(E(I,1)*40+E(I,0))\40 :PRINT" "; 44 IFE(I,0)=0THENGOSUB15:IFI>UTHEN58 45 E(I,0)=E(I,0)-1 46 IFE(I,0)<0THENGOSUB16:GOTO48 47 IFU>3ANDRND(1)<.08THENIFRND(1)<.5ANDE(I,1)>0THENE(I,1)=E(I,1)-1ELSEIFE(I,1)<6THENE(I,1)=E(I,1)+1 48 LOCATE(E(I,1)*40+E(I,0))MOD40,(E(I,1)*40+E(I,0))\40:PRINTM(I);:SOUND1,1 49 IFD>0THEN58ELSEIFRND(1)>.2THEN51ELSEIFU<3ORE(I,1)<>0ORE(I,0)<>XTHEN51 50 FORC1=1TO0STEP-1:LINE(X*6+3,3)-(X*6+3,Y*8+3),C1:FORCC=1TO5:NEXT:NEXT:SOUND6000,1:GOTO55 51 IFE(I,1)<>YTHEN58 52 IFE(I,0)=XTHEN57 53 IFRND(1)>.2THEN58ELSEIFI<5THEN58ELSEIFE(I,0)>XTHEN58 54 FORC=1TO0STEP-1:LINE(X*6+3,Y*8+3)-(E(I,0)*6+2,E(I,1)*8+3),C:NEXT:SOUND4000,1 55 G=P:GOSUB17:GOSUB15:D=3 56 LOCATE(E(I,1)*40+E(I,0))MOD40,(E(I,1)*40+E(I,0))\40:PRINT" ";:GOTO58 57 G=Y*40+X:GOSUB15:GOSUB17:GOSUB33:D=3:GOTO59 58 Q=Q-1:IFQ<>0THEN43 59 I=I+1:IFI<=UTHEN42ELSEIFI<7THEN59 60 A=INKEY$:IFD>0ORA=""THEN39ELSEAB=INKEY$:IFA<>" "ANDASC(A)<>13THEN71 61 E1=1:E2=0:YY=Y:XX=X:IFASC(A)=13THENE1=0:E2=1:YY=X:XX=Y 62 J=0:E=50:FORI=0TOU:IFE(I,E1)<>YYTHEN63ELSEIFE(I,E2)27ANDB<32THENB=B-26ELSEIFB=47ORB=63THENB=1ELSEIFB=44ORB=60THENB=6ELSEIFB=46ORB=62THENB=7ELSE39 72 ONBGOTO77,76,75,73,74,78,79 73 Y=Y-1:GOTO39 74 IFY<6THENY=Y+1:GOTO39ELSE39 75 X=X-1:GOTO39 76 X=X+1:GOTO39 77 X=0:GOTO39 78 X=X-5:GOTO39 79 X=X+5:GOTO39 80 LOCATE11,3:PRINT">>> Game Over <<<" 81 LINE(0,0)-(239,63),1,BF 82 Q=0:IFS<=H(2)THEN21ELSEQ=1:IFS<=H(1)THENI=2:GOTO84 83 IFS<=H(0)THENI=1ELSEI=0 84 IFI=2THEN86 85 FORJ=2TOI+1STEP-1:H(J)=H(J-1):K(J)=K(J-1):NEXT 86 D=I:H(D)=S:K(D)=" " 87 GOTO21 88 IFII=0THEN8000ELSECLS:LOCATE3,4:PRINT"Saving high scores...":POKE65128,6:POKE65129,82:POKE65131,117:POKE65133,110:POKE65135,57:POKE65137,52:POKE65139,13 89 IFII=0THEN8000ELSEOPEN"ZQ"FOROUTPUTAS1 90 Z="18 DATA":FORI=0TO2:Z=Z+K(I)+","+STR$(H(I))+",":NEXT:PRINT#1,Z:CLOSE:MERGE"ZQ" 91 IFERR<>5THENCLS:PRINTERR" "ERL:END 92 IFX>39THENX=39ELSEIFX<0THENX=0ELSEIFY<0THENY=0 93 RESUME 94 CLS:KILL"ZQ.DO":GOTO8000 8000 IFPEEK(64082!)=192ANDPEEK(64083!)=251THENPOKE64082!,135:POKE64083!,11 8010 MENU 9000 IFPEEK(64082!)=192ANDPEEK(64083!)=251THEN9010ELSEIFPEEK(64082!)<>135ORPEEK(64083!)<>11THENRETURN 9010 GOSUB20000:X=21496!:GOSUB10000:IFPEEK(63911!)=76THENX=X+1:GOSUB10000:IFPEEK(63911!)=105THENX=X+1:GOSUB10000:IFPEEK(63911!)=110THENPOKE63911!,10:EXEC62394!:RESTORE:RETURN 9020 OUT240,57:PRINT"Program requires LINE to run properly!":BEEP:BEEP:MENU 10000 POKE63913!,X\256:POKE63912!,X-(X\256)*256:EXEC64448!:RETURN 20000 RESTORE20010:FORA=0TO14:READB:POKE64448!+A,B:NEXT:RETURN 20010 DATA 243,219,160,79,246,1,211,161,70,121,211,161,120,251,201