0 'Club 100 library - 415/939-1246 BBS 937-5039 NEWSLETTER, 932-8856 VOICE 1 KEY(1)ON:ON KEY GOSUB65000: CLS:BEEP:BEEP:'LOADED 2/10/85 WITH OPENING BY STAN KENDALL AS 'A-DUEL'. 2 ' WORKS AS OF 8/20/85 10 FORC=2TO120STEP4:D=D+2:LINE(C,30)-(C-2,D-2),1,B:NEXT:FORC=120TO239STEP4:D=D-2:LINE(C,30)-(C-2,D+2),1,B:NEXT 20 PRINT@49,"ARTILLERY DUEL ":PRINT@89,"(C) JOHN D PERKINS 1983":PRINT@204,"uit":PRINT@230,"

LAY" 25 Z$=INKEY$:IFZ$="Q"ORZ$="q"THENMENU 30 IFZ$="P"ORZ$="p"THEN40 35 GOTO25 39 GOTO39 40 CLEAR:DEFINT A-Z:DIMTR(239),GN(2,29),SC(2,2),EX(2,8,2):XC=-83:FOR HT=1TO7STEP3:XC=XC+VAL(MID$(TIME$,HT,2))+VAL(MID$(DATE$,HT,2)):NEXT HT:CLS:FOR PL=0TO1:PRINT@PL*80+45,USING"\ \##\ \";"PLAYER";PL+1;" SKILL LEVEL "; 50 KB$=INPUT$(1):IF KB$<"1" OR KB$>"3" THEN PL=PL-1:ELSE SC(PL,0)=VAL(KB$):PRINT KB$;:FOR HT=0TO7:AR!=HT*.8:EX(PL,HT*3MOD8,0)=SIN(AR!)*(5-SC(PL,0))*1.1:EX(PL,HT*3MOD8,1)=COS(AR!)*(5-SC(PL,0))*1.1:NEXT HT 60 NEXTPL:CLS:LV=32:GOSUB300:LV=25:GOSUB300:LV=-16:GOSUB300:FORTC=1TO35:XB=RND(1)*214+15:YB=TR(XB) 70 IFYB>0THENFORHT=YBTOYB-RND(1)*9STEP-5:XC=XB+RND(1)*2-1:LINE(XC,HT)-(XC,HT-5),1:LINE(XC,HT-2)-(XC-2,HT-4),1:LINE(XC,HT-2)-(XC+2,HT-4),1:LINE(XC-1,HT)-(XC-3,HT-2),1:LINE(XC,HT)-(XC+3,HT-3),1:TR(XC)=-HT+5:NEXTHT 80 NEXTTC:GOSUB300:FOR PL=0TO1:BI=1-PL*2:FOR XB=PL*239+BI*(RND(1)*30+35)TO PL*230+5STEP-BI:FOR XC=XB-5TOXB+5:IF TR(XC)>0THENNEXTXC:GOTO90:ELSENEXTXB 90 XC=XB-BI*1:GN(PL,0)=XC:GN(PL,1)=TR(XC)-1:GN(PL,2)=70:GN(PL,3)=45:FOR HT=4TO29:GN(PL,HT)=1:NEXT HT:FORXB=XC+BI*5TOXC-BI*4STEP-BI:IFTR(XC)>TR(XB)THEN LINE(XB,TR(XC)-1)-(XB,TR(XB)),0:TR(XB)=TR(XC)-1 100 NEXT XB:FOR YB=TR(XC)-1TOTR(XC)-6STEP-1:FORHT=0TO30*(TR(XC)-YB):NEXTHT:LINE(XC-BI*3,YB)-(XC+BI,YB),1:SOUND450,1:NEXTYB:YB=TR(XC)-1:LINE(XC=BI*3,YB)-(XC-BI*2,YB),0:PRESET(XC+BI,YB):XB=XC:HT=1:GOSUB240 110 LINE(XC-BI*2,YB+1)-(XC+BI,YB+1),1:FORXB=XC+BITOXC-BI*3STEP-BI:TR(XB)=YB-6:NEXTXB:GOSUB300:NEXTPL:FORTC=10TO229:IFTR(TC)<0THENTR(TC)=-TR(TC) 120 NEXTTC:WD=RND(1)*51-26:GV=RND(1)*3+3:PL=(SC(0,1)30ANDKY=31))THENGN(PL,2)=GN(PL,2)-KY*2+61:SOUND1200-GN(PL,2)*10,1 170 IFXC=65AND((GN(PL,3)<90ANDKY=30)OR(GN(PL,3)>0ANDKY=31))THENAR!=GN(PL,3)/57.3:HT=0:GOSUB240:GN(PL,3)=GN(PL,3)-KY*10+305:HT=1:GOSUB240:SOUND1000-GN(PL,3)*5,1 180 IFKY<>13THEN140 190 LINE(XB-BI*2,YB-4)-(XB,YB-4),1:LINE(4,6)-(235,16),0,BF:DX!=(GN(PL,2)*BI*COS(AR!)+WD/2)/20:DY!=(GN(PL,2)*SIN(AR!))/20:XX!=BX:XY!=BY:BX=0:BY=0:HT=0:SOUND16383,2 200 XX!=XX!+DX!:XY!=XY!-DY!:DY!=DY!-GV/50:XB=XX!+.5:YB=XY!+.5:IFXB<0ORXB>239THENPRESET(BX,BY):GOTO280 210 YB=-63*(YB>63)-YB*(YB<64):IFYB=63OR(HT>20-SC(PL,0)*5ANDTR(XB)<=YB)THEN250 220 PRESET(BX,BY):IFYB>=0ANDTR(XB)>YBTHENPSET(XB,YB):BX=XB:BY=YB:ELSEBX=0:BY=0 230 HT=HT+1:GOTO200 240 AR!=GN(PL,3)/57.3:BX=XB+BI*(2+4*COS(AR!))+.5:BY=YB-2.7-3.3*SIN(AR!):LINE(XB+BI*2+.5,YB-3)-(BX,BY),HT:RETURN 250 PRESET(BX,BY):FORHT=0TO7:BX=XB+EX(PL,HT,0):BY=YB+EX(PL,HT,1):SOUND16383,1:IFBX<0ORBX>239ORBY>63THEN270 260 LINE(XB,YB)-(BX,BY),1:LINE(XB,YB)-(BX,BY),0:IFTR(BX)<=BYTHENTR(BX)=BY+1 270 NEXTHT 280 WD=WD+RND(1)*(SC(PL,0)*4-1)-SC(PL,0)*2-1:XC=PL:PL=(PL=1)+1:HT=0:BI=PL*2-1:BX=GN(PL,0):BY=GN(PL,1):FORXB=BX-BITOBX+BI*3STEPBI:HT=HT+BY-TR(XB)-1:NEXTXB:IFHT>20THEN130:ELSEFORHT=BY-15TOYB:LINE(BX-BI,HT)-(BX+BI*3,HT),0 290 XB=BX-5+RND(1)*9:LINE(BX,BY)-(XB,BY-10),1:SOUND16383,3:LINE(BX,BY)-(XB,BY-10),0:NEXTHT:SC(XC,1)=SC(XC,1)+1:PRINT13,"GUN DESTROYED":FORXC=0TO1:PRINT@XC*25+45,SC(XC,1);:NEXTXC:FORPL=PL=0TO2999:GOTO60 300 FORXC=VAL(RIGHT$(TIME$,2))TO0STEP-1:HT=RND(1)*32+LV:NEXTXC:IFLV<0THENRETURN:ELSEBI=RND(1)*9:XB=0:YB=HT 310 XC=XC+INT(RND(1)*15)+3:HT=HT-RND(1)*9+BI:IFHT>LV+31THENHT=LV+31:BI=5 320 IFHT5)*2-RND(1)*3:IFXC>239THEN XC=239 340 IFLV<>32THENLINE(XB,YB)-(XC,HT),1:XB=XC:GOTO360 350 DY!=(HT-YB)/(XC-XB+1):YC!=YB:FORXB=XBTOXC:TR(XB)=YC!:LINE(XB,YC!)-(XB,63),1:YC!=YC!+DY!:NEXTXB 360 YB=HT:IFXC<>239THEN310 370 RETURN 65000 LPRINTCHR$(27);"a";CHR$(8); 65005 'SCREEN DUMP FROM PCM MAG. PP 43-46 JAN 85 65010 PRINTCHR$(27);"p"; 65020 FORZR%=0TO7 65030 FORZH%=0TO1 65040 LPRINTCHR$(27);"k";CHR$(224);CHR$(1); 65050 FORZC%=0TO39 65060 PRINT@40*ZR%+ZC%,""; 65070 FORZM!=65516TO65521 65080 ZV%=NOT PEEK(ZM!) 65090 IF ZH% THEN ZV%=(ZV% AND 240)/16 ELSE ZV%=ZV% AND 15 65100 ZV%=VAL(MID$("000192048240012204060252003195051243015207063255",3*ZV%+1,3)) 65110 FORZP%=1TO2 65120 LPRINTCHR$(ZV%); 65130 NEXT 65140 NEXT 65150 NEXT 65160 LPRINT 65170 NEXT 65180 NEXT 65190 LPRINTCHR$(27);"2" 65200 PRINTCHR$(27);"q"; 65210 RETURN